acdr-ui/dist/dev/mp-weixin/modules/mall/sheep/components/s-custom-navbar/s-custom-navbar.js

115 lines
3.9 KiB
JavaScript
Raw Normal View History

2024-09-19 07:20:14 +08:00
"use strict";
2024-10-01 09:15:35 +08:00
const common_vendor = require("../../../../../common/vendor.js");
const modules_mall_sheep_index = require("../../index.js");
const modules_mall_sheep_hooks_useModal = require("../../hooks/useModal.js");
2024-09-19 07:20:14 +08:00
if (!Math) {
(NavbarItem + Navbar)();
}
const Navbar = () => "./components/navbar.js";
const NavbarItem = () => "./components/navbar-item.js";
const _sfc_main = {
__name: "s-custom-navbar",
props: {
data: {
type: Object,
default: () => ({})
},
showLeftButton: {
type: Boolean,
default: false
}
},
setup(__props) {
const props = __props;
2024-10-01 09:15:35 +08:00
const hasHistory = modules_mall_sheep_index.sheep.$router.hasHistory();
2024-09-19 07:20:14 +08:00
const sticky = common_vendor.computed(() => {
if (props.data.styleType === "inner") {
if (props.data.alwaysShow) {
return false;
}
}
if (props.data.styleType === "normal") {
return false;
}
});
const navList = common_vendor.computed(() => {
return props.data.mapCells || [];
});
2024-10-01 09:15:35 +08:00
const windowWidth = modules_mall_sheep_index.sheep.$platform.device.windowWidth;
2024-09-19 07:20:14 +08:00
const cell = common_vendor.computed(() => {
if (common_vendor.unref(navList).length) {
let cell2 = (windowWidth - 90) / 8;
2024-10-01 09:15:35 +08:00
cell2 = (windowWidth - 80 - common_vendor.unref(modules_mall_sheep_index.sheep.$platform.capsule).width) / 6;
2024-09-19 07:20:14 +08:00
return cell2;
}
});
const parseImgStyle = (item) => {
const obj = {
width: item.width * cell.value + (item.width - 1) * 10 + "px",
left: item.left * cell.value + (item.left + 1) * 10 + "px",
"border-radius": item.borderRadius + "px"
};
return obj;
};
const isAlways = common_vendor.computed(
() => props.data.styleType === "inner" ? Boolean(props.data.alwaysShow) : true
);
const isOpacity = common_vendor.computed(
() => props.data.styleType === "normal" ? false : props.showLeftButton ? false : props.data.styleType === "inner"
);
const isPlaceholder = common_vendor.computed(() => props.data.styleType === "normal");
const bgStyles = common_vendor.computed(() => {
return {
2024-10-01 09:15:35 +08:00
background: props.data.bgType === "img" && props.data.bgImg ? `url(${modules_mall_sheep_index.sheep.$url.cdn(props.data.bgImg)}) no-repeat top center / 100% 100%` : props.data.bgColor
2024-09-19 07:20:14 +08:00
};
});
function onClickLeft() {
if (hasHistory) {
2024-10-01 09:15:35 +08:00
modules_mall_sheep_index.sheep.$router.back();
2024-09-19 07:20:14 +08:00
} else {
2024-10-01 09:15:35 +08:00
modules_mall_sheep_index.sheep.$router.go("/modules/mall/index/index");
2024-09-19 07:20:14 +08:00
}
}
function onClickRight() {
2024-10-01 09:15:35 +08:00
modules_mall_sheep_hooks_useModal.showMenuTools();
2024-09-19 07:20:14 +08:00
}
return (_ctx, _cache) => {
return common_vendor.e({
a: __props.showLeftButton
}, __props.showLeftButton ? common_vendor.e({
b: common_vendor.unref(hasHistory)
}, common_vendor.unref(hasHistory) ? {} : {}, {
c: common_vendor.o(onClickLeft),
d: common_vendor.o(onClickRight),
e: __props.data.styleType === "inner" ? 1 : ""
}) : {}, {
f: common_vendor.f(navList.value, (item, index, i0) => {
return {
2024-10-01 09:15:35 +08:00
a: "28e36d40-1-" + i0 + ",28e36d40-0",
2024-09-19 07:20:14 +08:00
b: common_vendor.p({
data: item,
width: parseImgStyle(item).width
}),
c: index,
d: common_vendor.s(parseImgStyle(item)),
e: common_vendor.n({
"ss-flex ss-col-center ss-row-center": item.type !== "search"
})
};
}),
g: common_vendor.p({
alway: isAlways.value,
back: false,
bg: "",
placeholder: isPlaceholder.value,
bgStyles: bgStyles.value,
opacity: isOpacity.value,
sticky: sticky.value
})
});
};
}
};
2024-10-01 09:15:35 +08:00
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-28e36d40"]]);
2024-09-19 07:20:14 +08:00
wx.createComponent(Component);