hldy_app/unpackage/dist/dev/mp-weixin/pages/timeMatrix/indexnew.js

288 lines
10 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = /* @__PURE__ */ common_vendor.defineComponent({
__name: "indexnew",
setup(__props) {
common_vendor.ref(false);
const timearr = common_vendor.ref([]);
const buttonArray = common_vendor.ref(["全部", "日常", "周期"]);
const buttonTarget = common_vendor.ref(0);
const getClass = (item, index0, index1) => {
if (item.cycleType === "日常") {
return "title-time-border-yellow";
} else if (item.cycleType) {
return "title-time-border-pouple";
}
return "title-time-border";
};
const moveDownNumber = common_vendor.ref(0);
function handleScrolltime(e) {
let num = e.detail.scrollTop;
let formattedNum = parseFloat(num.toFixed(2));
moveDownNumber.value = formattedNum;
}
const getClassItem = (index) => {
if (buttonTarget.value !== index) {
return `titlebutton`;
} else {
switch (index) {
case 0:
return `titlebutton-target`;
case 1:
return `titlebutton-target-yellow`;
case 2:
return `titlebutton-target-pouple`;
}
}
};
function splitString(str) {
if (str) {
let result = [];
let remainingStr = str;
let regex = /([^(]*)[(]([^)]+)[)]/;
while (regex.test(remainingStr)) {
let match = remainingStr.match(regex);
if (match) {
if (match[1].trim()) {
result.push(match[1].trim());
}
if (match[2].trim()) {
result.push(match[2].trim());
}
remainingStr = remainingStr.replace(match[0], "").trim();
}
}
if (remainingStr.trim()) {
result.push(remainingStr.trim());
}
return result;
} else {
return [];
}
}
const scrollLeft = common_vendor.ref(0);
const changetimearr = common_vendor.ref([]);
common_vendor.onLoad((options) => {
let arr = common_vendor.index.getStorageSync("myArray");
timearr.value = arr;
if (timearr.value[0].children.length < 8) {
timearr.value.forEach((element) => {
while (element.children.length < 8) {
element.children.push({ directiveName: "" });
}
});
}
changetimearr.value = JSON.parse(JSON.stringify(timearr.value));
scrollLeft.value = 740;
});
const openX = common_vendor.ref(0);
const openY = common_vendor.ref(0);
const isopen = common_vendor.ref(false);
const isopacity = common_vendor.ref(false);
const clickX = common_vendor.ref(-1);
const clickY = common_vendor.ref(-1);
common_vendor.ref(null);
const rulerTouchClick = (item, index0, index1, e) => {
if (item.directiveName) {
clickX.value = index0;
clickY.value = index1;
const query = common_vendor.index.createSelectorQuery();
query.selectAll(".super-card-time-card").boundingClientRect((data) => {
data.forEach(async (res) => {
if (res.dataset.index0 == index0 && res.dataset.index1 == index1) {
if (res.left < 500) {
openX.value = Math.floor(res.left) + 510;
} else {
openX.value = Math.floor(res.left) - 10;
}
if (res.top < 300) {
openY.value = Math.floor(res.top) + 250;
} else {
openY.value = Math.floor(res.top);
}
await common_vendor.nextTick$1();
isopen.value = true;
isopacity.value = false;
setTimeout(() => {
isopacity.value = true;
}, 100);
}
});
}).exec();
}
};
const routerBack = () => {
common_vendor.index.navigateBack();
};
const closeIsOpen = (index0, index1) => {
common_vendor.index.navigateBack({
delta: 1,
success: () => {
common_vendor.index.$emit("where", {
index0,
index1
});
}
});
};
const changeWhiteLine = () => {
let emptyChildIndices = [];
changetimearr.value.forEach((res, rowIndex) => {
emptyChildIndices = [];
res.children.forEach((child, index) => {
if (child.directiveName === null || child.directiveName === "" || child.directiveName === void 0) {
const isEmptyInAllRows = changetimearr.value.every((otherRes) => {
const otherChild = otherRes.children[index];
return otherChild.directiveName === "";
});
if (isEmptyInAllRows) {
emptyChildIndices.push(index);
}
}
});
});
const sortedIndices = [...emptyChildIndices].sort((a, b) => b - a);
changetimearr.value.forEach((element) => {
sortedIndices.forEach((idx) => {
element.children.splice(idx, 1);
});
});
if (changetimearr.value[0].children.length < 8) {
changetimearr.value.forEach((element) => {
while (element.children.length < 8) {
element.children.push({ directiveName: "" });
}
});
}
};
const changeTarget = (index) => {
if (buttonTarget.value !== index) {
changetimearr.value = [];
buttonTarget.value = index;
switch (index) {
case 0:
changetimearr.value = JSON.parse(JSON.stringify(timearr.value));
break;
case 1:
changetimearr.value = JSON.parse(JSON.stringify(timearr.value));
changetimearr.value.forEach((element0) => {
element0.children.forEach((element1) => {
if (element1.directiveName && element1.cycleType !== "日常") {
element1.directiveName = "";
element1.cycleType = "";
element1.startTime = "";
}
});
});
changeWhiteLine();
break;
case 2:
changetimearr.value = JSON.parse(JSON.stringify(timearr.value));
changetimearr.value.forEach((element0) => {
element0.children.forEach((element1) => {
if (element1.directiveName && element1.cycleType === "日常") {
element1.directiveName = "";
element1.cycleType = "";
element1.startTime = "";
}
});
});
changeWhiteLine();
break;
}
}
};
const lastTap = common_vendor.ref(0);
const clickTimer = common_vendor.ref(null);
function handleTap(item, index0, index1, e) {
const now = Date.now();
if (clickTimer.value != null) {
clearTimeout(clickTimer.value);
}
if (now - lastTap.value < 250) {
closeIsOpen(index0, index1);
lastTap.value = 0;
} else {
clickTimer.value = setTimeout(() => {
rulerTouchClick(item, index0, index1);
}, 250);
lastTap.value = now;
}
}
return (_ctx, _cache) => {
var _a, _b;
return {
a: common_vendor.f(buttonArray.value, (item, index, i0) => {
return {
a: common_vendor.t(item),
b: common_vendor.n(getClassItem(index)),
c: common_vendor.o(($event) => changeTarget(index), index),
d: index
};
}),
b: common_vendor.o(routerBack),
c: common_vendor.f(changetimearr.value, (item0, index0, i0) => {
return {
a: common_vendor.t((item0.positioning.length == 1 ? "0" + item0.positioning : item0.positioning) + ":00"),
b: index0
};
}),
d: common_vendor.f(changetimearr.value, (item0, index0, i0) => {
return {
a: common_vendor.f(item0.children, (item1, index1, i1) => {
return common_vendor.e({
a: item1.startTime
}, item1.startTime ? {
b: common_vendor.t(item1.startTime + `-` + item1.endTime),
c: item1.cycleType == "日常" ? `/static/index/yellowbian.png` : `/static/index/puoplebian.png`,
d: common_vendor.t(item1.cycleType)
} : {}, {
e: common_vendor.t(splitString(item1.directiveName)[0]),
f: common_vendor.s(splitString(item1.directiveName)[1] ? {} : {
marginTop: `20rpx`
}),
g: splitString(item1.directiveName)[1]
}, splitString(item1.directiveName)[1] ? {
h: common_vendor.f(splitString(item1.directiveName).slice(1), (item, index, i2) => {
return {
a: common_vendor.t(splitString(item1.directiveName)[index + 1]),
b: index
};
}),
i: common_vendor.s(item1.cycleType != "日常" ? {
backgroundColor: `rgb(123,97,255)`
} : {}),
j: common_vendor.s(item1.cycleType != "日常" ? {
backgroundColor: `rgb(212,203,255)`
} : {})
} : {}, {
k: common_vendor.n(getClass(item1)),
l: common_vendor.n(clickX.value === index0 && clickY.value === index1 ? `title-time-border-blue` : ``),
m: common_vendor.o(($event) => handleTap(item1, index0, index1), index1),
n: index1,
o: index1
});
}),
b: index0,
c: index0
};
}),
e: common_vendor.o(handleScrolltime),
f: scrollLeft.value,
g: `/static/index/teeth.png`,
h: 2 * openY.value - 350 + "rpx",
i: 2 * openX.value - 780 + "rpx",
j: isopacity.value ? 1 : 0,
k: ((_b = (_a = timearr.value[clickY.value]) == null ? void 0 : _a.children[clickX.value]) == null ? void 0 : _b.type) === "日常" ? "#fffcf6" : "rgb(246, 244, 254)",
l: common_vendor.o(() => {
}),
m: isopen.value,
n: common_vendor.o(($event) => isopen.value = false)
};
};
}
});
const MiniProgramPage = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-d5065f48"]]);
wx.createPage(MiniProgramPage);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/timeMatrix/indexnew.js.map