@g1cloud/bluesea 5.0.0-beta.7 → 5.0.0-beta.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{BSAlertModal-B3zqxyBI.js → BSAlertModal-DypUvVcH.js} +1 -1
- package/dist/{BSGridColumnSettingModal-CD9mFu9P.js → BSGridColumnSettingModal-DhGr9UtK.js} +1 -1
- package/dist/{BSRichTextMaximizedModal-BP6jz2N7.js → BSRichTextMaximizedModal-DmPabr58.js} +1 -1
- package/dist/{BSYesNoModal-82FcvYh-.js → BSYesNoModal-CBrzf4F5.js} +1 -1
- package/dist/{BSYoutubeInputModal-CrtOzrD-.js → BSYoutubeInputModal-BxabTSWx.js} +1 -1
- package/dist/{ImageInsertModal-DdYqZWc5.js → ImageInsertModal-K1Tx7ys2.js} +2 -2
- package/dist/{ImageProperties.vue_vue_type_script_setup_true_lang-2wZT4GKQ.js → ImageProperties.vue_vue_type_script_setup_true_lang-D8KH2XwP.js} +1 -1
- package/dist/{ImagePropertiesModal-CQnEtdug.js → ImagePropertiesModal-Duu4PBjb.js} +2 -2
- package/dist/{LinkPropertiesModal-DiqsnQW6.js → LinkPropertiesModal-Bx3WJhkN.js} +1 -1
- package/dist/{TableInsertModal-CQP0Lv5V.js → TableInsertModal-DBrcQa3b.js} +1 -1
- package/dist/{TablePropertiesModal-BlPP_yM-.js → TablePropertiesModal-ClsK1yM4.js} +1 -1
- package/dist/{VideoInsertModal-kNMv3Gr0.js → VideoInsertModal-C-b0-PU0.js} +2 -2
- package/dist/{VideoProperties.vue_vue_type_script_setup_true_lang-BIg6hg9n.js → VideoProperties.vue_vue_type_script_setup_true_lang-zYZJtiR2.js} +1 -1
- package/dist/{VideoPropertiesModal-DTnfD1tS.js → VideoPropertiesModal-zlEThjim.js} +2 -2
- package/dist/{YoutubeInsertModal-Br27gi-y.js → YoutubeInsertModal-Gpob0la3.js} +2 -2
- package/dist/{YoutubeProperties.vue_vue_type_script_setup_true_lang-BpbU20_i.js → YoutubeProperties.vue_vue_type_script_setup_true_lang-CDvDzheM.js} +1 -1
- package/dist/{YoutubePropertiesModal-BXCSIlF9.js → YoutubePropertiesModal-C3I5eF0-.js} +2 -2
- package/dist/bluesea.js +107 -105
- package/dist/bluesea.umd.cjs +125 -56
- package/dist/component/grid/DateFilterModel.d.ts +15 -0
- package/dist/component/grid/GridModel.d.ts +1 -0
- package/dist/component/input/BSDateRangePresets.vue.d.ts +2 -2
- package/dist/component/input/DateRangePresetModel.d.ts +2 -0
- package/dist/component/tree/BSTree.vue.d.ts +3 -0
- package/dist/component/tree/BSTreeRow.vue.d.ts +3 -0
- package/dist/component/tree/TreeModel.d.ts +28 -0
- package/dist/{index-CpfyaKHy.js → index-DxMqs72-.js} +245 -176
- package/package.json +1 -1
package/dist/bluesea.umd.cjs
CHANGED
|
@@ -1440,7 +1440,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
1440
1440
|
key: 1,
|
|
1441
1441
|
class: "label"
|
|
1442
1442
|
};
|
|
1443
|
-
const _hoisted_5$
|
|
1443
|
+
const _hoisted_5$j = {
|
|
1444
1444
|
key: 2,
|
|
1445
1445
|
class: "small-progress"
|
|
1446
1446
|
};
|
|
@@ -1593,7 +1593,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
1593
1593
|
[vue.unref(vT), selectedItemLabel.value]
|
|
1594
1594
|
]),
|
|
1595
1595
|
_cache[4] || (_cache[4] = vue.createElementVNode("span", { class: "dropdown-btn" }, "expand_more", -1)),
|
|
1596
|
-
loadingItems.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$
|
|
1596
|
+
loadingItems.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$j, "progress_activity")) : vue.createCommentVNode("", true)
|
|
1597
1597
|
], 512),
|
|
1598
1598
|
!_ctx.disabled && showPopup.value ? (vue.openBlock(), vue.createBlock(_sfc_main$1Y, {
|
|
1599
1599
|
key: 0,
|
|
@@ -2039,7 +2039,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
2039
2039
|
key: 2,
|
|
2040
2040
|
class: "prefix"
|
|
2041
2041
|
};
|
|
2042
|
-
const _hoisted_5$
|
|
2042
|
+
const _hoisted_5$i = ["src"];
|
|
2043
2043
|
const _hoisted_6$9 = ["textContent"];
|
|
2044
2044
|
const _hoisted_7$6 = {
|
|
2045
2045
|
key: 1,
|
|
@@ -2205,7 +2205,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
2205
2205
|
vue.createElementVNode("img", {
|
|
2206
2206
|
src: item.value,
|
|
2207
2207
|
alt: "prefix"
|
|
2208
|
-
}, null, 8, _hoisted_5$
|
|
2208
|
+
}, null, 8, _hoisted_5$i)
|
|
2209
2209
|
])) : vue.createCommentVNode("", true)
|
|
2210
2210
|
], 64);
|
|
2211
2211
|
}), 256)),
|
|
@@ -2775,7 +2775,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
2775
2775
|
const _hoisted_2$19 = { class: "bs-layout-horizontal justify-content-between align-items-center gap-8" };
|
|
2776
2776
|
const _hoisted_3$I = { class: "year-month bs-layout-horizontal gap-4" };
|
|
2777
2777
|
const _hoisted_4$t = { class: "timezone" };
|
|
2778
|
-
const _hoisted_5$
|
|
2778
|
+
const _hoisted_5$h = { class: "weekdays" };
|
|
2779
2779
|
const _hoisted_6$8 = ["onClick"];
|
|
2780
2780
|
const _hoisted_7$5 = {
|
|
2781
2781
|
key: 0,
|
|
@@ -2993,7 +2993,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
2993
2993
|
class: vue.normalizeClass([{ disabled: _ctx.disabled }, "align-self-center"])
|
|
2994
2994
|
}, [
|
|
2995
2995
|
vue.createElementVNode("tbody", null, [
|
|
2996
|
-
vue.createElementVNode("tr", _hoisted_5$
|
|
2996
|
+
vue.createElementVNode("tr", _hoisted_5$h, [
|
|
2997
2997
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(weekdays.value, (day) => {
|
|
2998
2998
|
return vue.withDirectives((vue.openBlock(), vue.createElementBlock("th", { key: day })), [
|
|
2999
2999
|
[vue.unref(vT), day]
|
|
@@ -3060,7 +3060,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
3060
3060
|
key: 0,
|
|
3061
3061
|
class: "extra-dates bs-layout-vertical gap-2 mt-8"
|
|
3062
3062
|
};
|
|
3063
|
-
const _hoisted_5$
|
|
3063
|
+
const _hoisted_5$g = { key: 0 };
|
|
3064
3064
|
const _hoisted_6$7 = { key: 1 };
|
|
3065
3065
|
const _sfc_main$1K = /* @__PURE__ */ vue.defineComponent({
|
|
3066
3066
|
__name: "BSCalendarRange",
|
|
@@ -3148,7 +3148,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
3148
3148
|
key: `${tz}_${index}`,
|
|
3149
3149
|
class: "extra-date"
|
|
3150
3150
|
}, [
|
|
3151
|
-
_ctx.from ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$
|
|
3151
|
+
_ctx.from ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$g, vue.toDisplayString(vue.unref(formatUtil).formatDateString(_ctx.from, _ctx.displayFormat, tz)), 1)) : vue.createCommentVNode("", true),
|
|
3152
3152
|
_cache[3] || (_cache[3] = vue.createElementVNode("span", null, "~", -1)),
|
|
3153
3153
|
_ctx.to ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$7, vue.toDisplayString(vue.unref(formatUtil).formatDateString(_ctx.to, _ctx.displayFormat, tz)), 1)) : vue.createCommentVNode("", true)
|
|
3154
3154
|
]);
|
|
@@ -3358,7 +3358,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
3358
3358
|
key: 1,
|
|
3359
3359
|
class: "input-area"
|
|
3360
3360
|
};
|
|
3361
|
-
const _hoisted_5$
|
|
3361
|
+
const _hoisted_5$f = ["id", "autocomplete", "disabled", "maxlength", "name", "tabindex", "value"];
|
|
3362
3362
|
const _hoisted_6$6 = ["textContent"];
|
|
3363
3363
|
const _sfc_main$1I = /* @__PURE__ */ vue.defineComponent({
|
|
3364
3364
|
__name: "BSPriceInput",
|
|
@@ -3501,7 +3501,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
3501
3501
|
tabindex: _ctx.tabindex,
|
|
3502
3502
|
value: focused.value || !_ctx.formatOnBlur ? vue.unref(stringValue) : formattedStringValue.value,
|
|
3503
3503
|
type: "text"
|
|
3504
|
-
}, vue.toHandlers(handlers2, true)), null, 16, _hoisted_5$
|
|
3504
|
+
}, vue.toHandlers(handlers2, true)), null, 16, _hoisted_5$f), [
|
|
3505
3505
|
[
|
|
3506
3506
|
vue.unref(vT),
|
|
3507
3507
|
_ctx.placeholder,
|
|
@@ -4688,6 +4688,11 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
4688
4688
|
});
|
|
4689
4689
|
dayjs.extend(utc);
|
|
4690
4690
|
dayjs.extend(timezone);
|
|
4691
|
+
const createDateRangeFromPreset = (value, timeZone) => {
|
|
4692
|
+
const from = value.from ? resolveMoment(value.from, true, timeZone) : void 0;
|
|
4693
|
+
const to = value.to ? resolveMoment(value.to, false, timeZone) : void 0;
|
|
4694
|
+
return { from: from == null ? void 0 : from.toISOString(), to: to == null ? void 0 : to.toISOString() };
|
|
4695
|
+
};
|
|
4691
4696
|
const resolveMoment = (setting, from, timeZone, baseDate) => {
|
|
4692
4697
|
switch (setting.type) {
|
|
4693
4698
|
case "TODAY":
|
|
@@ -4762,7 +4767,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
4762
4767
|
key: 1,
|
|
4763
4768
|
class: "text-label"
|
|
4764
4769
|
};
|
|
4765
|
-
const _hoisted_5$
|
|
4770
|
+
const _hoisted_5$e = ["for"];
|
|
4766
4771
|
const _sfc_main$1C = /* @__PURE__ */ vue.defineComponent({
|
|
4767
4772
|
__name: "BSRadioButton",
|
|
4768
4773
|
props: {
|
|
@@ -4819,7 +4824,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
4819
4824
|
class: "slot-label cursor-pointer"
|
|
4820
4825
|
}, [
|
|
4821
4826
|
vue.renderSlot(_ctx.$slots, "default", { disabled: _ctx.disabled })
|
|
4822
|
-
], 8, _hoisted_5$
|
|
4827
|
+
], 8, _hoisted_5$e)) : vue.createCommentVNode("", true)
|
|
4823
4828
|
], 2);
|
|
4824
4829
|
};
|
|
4825
4830
|
}
|
|
@@ -4954,25 +4959,20 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
4954
4959
|
const emit = __emit;
|
|
4955
4960
|
const actualTimeZone = vue.computed(() => props.timeZone || blueseaConfig.timeZone);
|
|
4956
4961
|
const currentPreset = vue.ref();
|
|
4957
|
-
const createDateRange = (value) => {
|
|
4958
|
-
const from = value.from ? resolveMoment(value.from, true, actualTimeZone.value) : void 0;
|
|
4959
|
-
const to = value.to ? resolveMoment(value.to, false, actualTimeZone.value) : void 0;
|
|
4960
|
-
return { from: from == null ? void 0 : from.toISOString(), to: to == null ? void 0 : to.toISOString() };
|
|
4961
|
-
};
|
|
4962
4962
|
const presetSelected = (value) => {
|
|
4963
|
-
const range = value ?
|
|
4964
|
-
emit("update:modelValue", range);
|
|
4963
|
+
const range = value ? createDateRangeFromPreset(value, actualTimeZone.value) : void 0;
|
|
4964
|
+
emit("update:modelValue", range, value);
|
|
4965
4965
|
};
|
|
4966
|
-
const
|
|
4966
|
+
const findPreset2 = (range) => {
|
|
4967
4967
|
return props.presets.find((preset) => {
|
|
4968
|
-
const presetValue =
|
|
4968
|
+
const presetValue = createDateRangeFromPreset(preset, actualTimeZone.value);
|
|
4969
4969
|
return (range == null ? void 0 : range.from) === presetValue.from && (range == null ? void 0 : range.to) === presetValue.to;
|
|
4970
4970
|
});
|
|
4971
4971
|
};
|
|
4972
4972
|
vue.watch(
|
|
4973
4973
|
() => props.modelValue,
|
|
4974
4974
|
() => {
|
|
4975
|
-
currentPreset.value =
|
|
4975
|
+
currentPreset.value = findPreset2(props.modelValue);
|
|
4976
4976
|
},
|
|
4977
4977
|
{ immediate: true }
|
|
4978
4978
|
);
|
|
@@ -5256,7 +5256,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
5256
5256
|
key: 0,
|
|
5257
5257
|
class: "placeholder flex-grow-1"
|
|
5258
5258
|
};
|
|
5259
|
-
const _hoisted_5$
|
|
5259
|
+
const _hoisted_5$d = {
|
|
5260
5260
|
key: 1,
|
|
5261
5261
|
class: "text-truncate"
|
|
5262
5262
|
};
|
|
@@ -5410,7 +5410,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
5410
5410
|
}, [
|
|
5411
5411
|
selectedItems.value.length === 0 ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("span", _hoisted_4$n, null, 512)), [
|
|
5412
5412
|
[vue.unref(vT), _ctx.placeholder]
|
|
5413
|
-
]) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$
|
|
5413
|
+
]) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$d, [
|
|
5414
5414
|
_ctx.selectedLabelProvider ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("span", _hoisted_6$5, null, 512)), [
|
|
5415
5415
|
[vue.unref(vT), _ctx.selectedLabelProvider(selectedItems.value)]
|
|
5416
5416
|
]) : (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 1 }, vue.renderList(selectedItems.value, (item) => {
|
|
@@ -5609,17 +5609,16 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
5609
5609
|
}
|
|
5610
5610
|
}
|
|
5611
5611
|
};
|
|
5612
|
-
const _hoisted_1$1g =
|
|
5613
|
-
const _hoisted_2$X =
|
|
5614
|
-
const _hoisted_3$x = {
|
|
5612
|
+
const _hoisted_1$1g = ["textContent"];
|
|
5613
|
+
const _hoisted_2$X = {
|
|
5615
5614
|
key: 1,
|
|
5616
5615
|
class: "font-icon w-16 text-gray-400"
|
|
5617
5616
|
};
|
|
5618
|
-
const
|
|
5617
|
+
const _hoisted_3$x = {
|
|
5619
5618
|
key: 2,
|
|
5620
5619
|
class: "move-buttons"
|
|
5621
5620
|
};
|
|
5622
|
-
const
|
|
5621
|
+
const _hoisted_4$m = {
|
|
5623
5622
|
key: 0,
|
|
5624
5623
|
class: "child-rows"
|
|
5625
5624
|
};
|
|
@@ -5634,6 +5633,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
5634
5633
|
labelProvider: { default: () => defaultLabelProvider },
|
|
5635
5634
|
keyProvider: {},
|
|
5636
5635
|
disabledProvider: {},
|
|
5636
|
+
displayProvider: {},
|
|
5637
5637
|
multiSelect: { type: Boolean },
|
|
5638
5638
|
showCheckbox: { type: Boolean },
|
|
5639
5639
|
showMoveButton: { type: Boolean },
|
|
@@ -5715,7 +5715,10 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
5715
5715
|
};
|
|
5716
5716
|
return (_ctx, _cache) => {
|
|
5717
5717
|
const _component_BSTreeRow = vue.resolveComponent("BSTreeRow", true);
|
|
5718
|
-
return vue.openBlock(), vue.createElementBlock("div",
|
|
5718
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
5719
|
+
style: vue.normalizeStyle({ display: _ctx.displayProvider && !_ctx.displayProvider(_ctx.row) ? "none" : void 0 }),
|
|
5720
|
+
class: "bs-tree-row"
|
|
5721
|
+
}, [
|
|
5719
5722
|
vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
|
|
5720
5723
|
ref: "row-caption",
|
|
5721
5724
|
class: vue.normalizeClass([{ disabled: _ctx.disabledProvider && _ctx.disabledProvider(_ctx.row) }, "row-caption"])
|
|
@@ -5729,8 +5732,8 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
5729
5732
|
class: "bs-clickable font-icon",
|
|
5730
5733
|
onClick: _cache[0] || (_cache[0] = ($event) => selectRow($event, true)),
|
|
5731
5734
|
textContent: vue.toDisplayString(isSelected.value ? "check_box" : "check_box_outline_blank")
|
|
5732
|
-
}, null, 8,
|
|
5733
|
-
_ctx.iconProvider ? (vue.openBlock(), vue.createElementBlock("span",
|
|
5735
|
+
}, null, 8, _hoisted_1$1g)) : vue.createCommentVNode("", true),
|
|
5736
|
+
_ctx.iconProvider ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$X, vue.toDisplayString(icon.value || ""), 1)) : vue.createCommentVNode("", true),
|
|
5734
5737
|
vue.withDirectives(vue.createElementVNode("span", {
|
|
5735
5738
|
class: vue.normalizeClass([{ selected: isSelected.value }, "caption"]),
|
|
5736
5739
|
onClick: _cache[1] || (_cache[1] = ($event) => selectRow($event, $event.shiftKey)),
|
|
@@ -5740,7 +5743,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
5740
5743
|
[vue.unref(vT), label.value],
|
|
5741
5744
|
[vue.unref(vTreeRowDrag), dragOption]
|
|
5742
5745
|
]),
|
|
5743
|
-
_ctx.showMoveButton ? (vue.openBlock(), vue.createElementBlock("span",
|
|
5746
|
+
_ctx.showMoveButton ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$x, [
|
|
5744
5747
|
vue.createElementVNode("span", {
|
|
5745
5748
|
class: "bs-clickable font-icon move-down",
|
|
5746
5749
|
onClick: moveDownRow
|
|
@@ -5753,12 +5756,13 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
5753
5756
|
], 2)), [
|
|
5754
5757
|
[vue.unref(vTreeRowDrop), dropOption]
|
|
5755
5758
|
]),
|
|
5756
|
-
children.value && children.value.length > 0 ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("div",
|
|
5759
|
+
children.value && children.value.length > 0 ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", _hoisted_4$m, [
|
|
5757
5760
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(children.value, (child) => {
|
|
5758
5761
|
return vue.openBlock(), vue.createBlock(_component_BSTreeRow, {
|
|
5759
5762
|
key: _ctx.keyProvider(child),
|
|
5760
5763
|
"children-provider": _ctx.childrenProvider,
|
|
5761
5764
|
"disabled-provider": _ctx.disabledProvider,
|
|
5765
|
+
"display-provider": _ctx.displayProvider,
|
|
5762
5766
|
"enable-drag-and-drop": _ctx.enableDragAndDrop,
|
|
5763
5767
|
"icon-provider": _ctx.iconProvider,
|
|
5764
5768
|
"key-provider": _ctx.keyProvider,
|
|
@@ -5772,12 +5776,12 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
5772
5776
|
onToggleRow: toggleChildRow,
|
|
5773
5777
|
onMoveRow: moveChildRow,
|
|
5774
5778
|
onSelectRow: selectChildRow
|
|
5775
|
-
}, null, 8, ["children-provider", "disabled-provider", "enable-drag-and-drop", "icon-provider", "key-provider", "label-provider", "multi-select", "parent-row", "row", "show-checkbox", "show-move-button", "siblings"]);
|
|
5779
|
+
}, null, 8, ["children-provider", "disabled-provider", "display-provider", "enable-drag-and-drop", "icon-provider", "key-provider", "label-provider", "multi-select", "parent-row", "row", "show-checkbox", "show-move-button", "siblings"]);
|
|
5776
5780
|
}), 128))
|
|
5777
5781
|
], 512)), [
|
|
5778
5782
|
[vue.vShow, isOpen.value]
|
|
5779
5783
|
]) : vue.createCommentVNode("", true)
|
|
5780
|
-
]);
|
|
5784
|
+
], 4);
|
|
5781
5785
|
};
|
|
5782
5786
|
}
|
|
5783
5787
|
});
|
|
@@ -5797,6 +5801,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
5797
5801
|
multiSelect: { type: Boolean },
|
|
5798
5802
|
showCheckbox: { type: Boolean },
|
|
5799
5803
|
rowDisabledProvider: {},
|
|
5804
|
+
rowDisplayProvider: {},
|
|
5800
5805
|
contextMenuProvider: {},
|
|
5801
5806
|
bottomPadding: { default: "80px" }
|
|
5802
5807
|
},
|
|
@@ -5922,6 +5927,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
5922
5927
|
key: _ctx.keyProvider(item),
|
|
5923
5928
|
"children-provider": _ctx.childrenProvider,
|
|
5924
5929
|
"disabled-provider": _ctx.rowDisabledProvider,
|
|
5930
|
+
"display-provider": _ctx.rowDisplayProvider,
|
|
5925
5931
|
"enable-drag-and-drop": _ctx.enableDragAndDrop,
|
|
5926
5932
|
"icon-provider": _ctx.iconProvider,
|
|
5927
5933
|
"key-provider": _ctx.keyProvider,
|
|
@@ -5936,7 +5942,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
5936
5942
|
onToggleRow: toggleRow,
|
|
5937
5943
|
onMoveRow: moveRow,
|
|
5938
5944
|
onSelectRow: selectRow
|
|
5939
|
-
}, null, 8, ["children-provider", "disabled-provider", "enable-drag-and-drop", "icon-provider", "key-provider", "label-provider", "multi-select", "row", "show-checkbox", "show-move-button", "siblings"]);
|
|
5945
|
+
}, null, 8, ["children-provider", "disabled-provider", "display-provider", "enable-drag-and-drop", "icon-provider", "key-provider", "label-provider", "multi-select", "row", "show-checkbox", "show-move-button", "siblings"]);
|
|
5940
5946
|
}), 128))
|
|
5941
5947
|
], 4)
|
|
5942
5948
|
], 32);
|
|
@@ -6153,16 +6159,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
6153
6159
|
},
|
|
6154
6160
|
clickRemoveButton: () => this.removeSelectedItem(),
|
|
6155
6161
|
expandAll: () => {
|
|
6156
|
-
|
|
6157
|
-
if (this.expandedRows.size === allParents.size) {
|
|
6158
|
-
this.expandedRows.clear();
|
|
6159
|
-
} else {
|
|
6160
|
-
allParents.forEach((item) => {
|
|
6161
|
-
const key = option.getItemKey(item);
|
|
6162
|
-
if (key) this.expandedRows.add(key);
|
|
6163
|
-
});
|
|
6164
|
-
}
|
|
6165
|
-
this.updateAllExpanded();
|
|
6162
|
+
this.expandAll(this.expandedRows.size !== this.getAllParents().size);
|
|
6166
6163
|
}
|
|
6167
6164
|
};
|
|
6168
6165
|
}
|
|
@@ -6298,6 +6295,25 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
6298
6295
|
}
|
|
6299
6296
|
this.cleanUpExpandedRows(this.expandedRows, this.tree.data);
|
|
6300
6297
|
}
|
|
6298
|
+
expandAll(expandOrDepth) {
|
|
6299
|
+
if (expandOrDepth === true) {
|
|
6300
|
+
const allParents = this.getAllParents();
|
|
6301
|
+
allParents.forEach((item) => {
|
|
6302
|
+
const key = this.option.getItemKey(item);
|
|
6303
|
+
if (key) this.expandedRows.add(key);
|
|
6304
|
+
});
|
|
6305
|
+
} else if (expandOrDepth === false) {
|
|
6306
|
+
this.expandedRows.clear();
|
|
6307
|
+
} else if (expandOrDepth > 1) {
|
|
6308
|
+
const parents = /* @__PURE__ */ new Set();
|
|
6309
|
+
this.collectParents(parents, this.tree.data, this.option.getChildren, expandOrDepth - 1);
|
|
6310
|
+
parents.forEach((item) => {
|
|
6311
|
+
const key = this.option.getItemKey(item);
|
|
6312
|
+
if (key) this.expandedRows.add(key);
|
|
6313
|
+
});
|
|
6314
|
+
}
|
|
6315
|
+
this.updateAllExpanded();
|
|
6316
|
+
}
|
|
6301
6317
|
forceRemoveItems(items) {
|
|
6302
6318
|
items.forEach((item) => {
|
|
6303
6319
|
var _a2, _b;
|
|
@@ -6334,12 +6350,14 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
|
|
|
6334
6350
|
}
|
|
6335
6351
|
}
|
|
6336
6352
|
}
|
|
6337
|
-
collectParents(parents, list, childrenProvider) {
|
|
6353
|
+
collectParents(parents, list, childrenProvider, maxDepth) {
|
|
6338
6354
|
for (const item of list) {
|
|
6339
6355
|
const children = childrenProvider(item);
|
|
6340
6356
|
if (children && children.length > 0) {
|
|
6341
6357
|
parents.add(item);
|
|
6342
|
-
|
|
6358
|
+
if (maxDepth === void 0 || maxDepth > 1) {
|
|
6359
|
+
this.collectParents(parents, children, childrenProvider, maxDepth ? maxDepth - 1 : void 0);
|
|
6360
|
+
}
|
|
6343
6361
|
}
|
|
6344
6362
|
}
|
|
6345
6363
|
}
|
|
@@ -36198,6 +36216,7 @@ img.ProseMirror-separator {
|
|
|
36198
36216
|
this.selectDeleteSupport.removeIfAddedRow = (row) => this.editableSupport.removeIfAddedRow(row);
|
|
36199
36217
|
}
|
|
36200
36218
|
setGridData(data) {
|
|
36219
|
+
GridHandlerEditableSupport.cleanUpData(data);
|
|
36201
36220
|
super.setGridData(data);
|
|
36202
36221
|
this.editableSupport.clearAddedRows();
|
|
36203
36222
|
}
|
|
@@ -36284,6 +36303,11 @@ img.ProseMirror-separator {
|
|
|
36284
36303
|
};
|
|
36285
36304
|
controlEventListener.clickAdd = () => this.createAndAddNewRow();
|
|
36286
36305
|
}
|
|
36306
|
+
static cleanUpData(data) {
|
|
36307
|
+
data == null ? void 0 : data.forEach((row) => {
|
|
36308
|
+
if (row && row[GRID_NEW_ROW_KEY]) delete row[GRID_NEW_ROW_KEY];
|
|
36309
|
+
});
|
|
36310
|
+
}
|
|
36287
36311
|
getModifiedRows() {
|
|
36288
36312
|
var _a2;
|
|
36289
36313
|
const addedKeys = this.addedRows.map((row) => row[GRID_NEW_ROW_KEY]);
|
|
@@ -37805,6 +37829,36 @@ img.ProseMirror-separator {
|
|
|
37805
37829
|
};
|
|
37806
37830
|
}
|
|
37807
37831
|
});
|
|
37832
|
+
const serializeMomentSetting = (setting) => {
|
|
37833
|
+
if (!setting) return "";
|
|
37834
|
+
const value = setting.value === void 0 ? "" : `:${setting.value}`;
|
|
37835
|
+
return `${setting.type}${value}`;
|
|
37836
|
+
};
|
|
37837
|
+
const convertDateRangePresetKey = (preset) => {
|
|
37838
|
+
if (preset.from === void 0 && preset.to === void 0) return "";
|
|
37839
|
+
return `${serializeMomentSetting(preset.from)}~${serializeMomentSetting(preset.to)}`;
|
|
37840
|
+
};
|
|
37841
|
+
const findPreset = (presetKey, candidatePresets) => {
|
|
37842
|
+
if (!presetKey) return void 0;
|
|
37843
|
+
return candidatePresets == null ? void 0 : candidatePresets.find((preset) => convertDateRangePresetKey(preset) === presetKey);
|
|
37844
|
+
};
|
|
37845
|
+
class BetweenDateFilterWithPreset extends BetweenDateFilter {
|
|
37846
|
+
constructor(name2, fromValue, toValue, preset) {
|
|
37847
|
+
super(name2, fromValue, toValue);
|
|
37848
|
+
__publicField(this, "presetKey");
|
|
37849
|
+
this.name = name2;
|
|
37850
|
+
this.fromValue = fromValue;
|
|
37851
|
+
this.toValue = toValue;
|
|
37852
|
+
this.presetKey = preset ? convertDateRangePresetKey(preset) : void 0;
|
|
37853
|
+
}
|
|
37854
|
+
// candidatePresets 중 presetKey 에 해당하는 preset 을 찾아, fromValue, toValue 를 설정한다.
|
|
37855
|
+
// preset 을 찾을 수 없으면 undefined 를 리턴한다.
|
|
37856
|
+
static createFromPresetKey(name2, presetKey, candidatePresets, timeZone) {
|
|
37857
|
+
const preset = findPreset(presetKey, candidatePresets);
|
|
37858
|
+
const range = preset ? createDateRangeFromPreset(preset, timeZone) : void 0;
|
|
37859
|
+
return range ? new BetweenDateFilterWithPreset(name2, range.from, range.to, preset) : void 0;
|
|
37860
|
+
}
|
|
37861
|
+
}
|
|
37808
37862
|
const _hoisted_1$N = {
|
|
37809
37863
|
key: 0,
|
|
37810
37864
|
class: "date-filters .bs-layout-vertical mr-16"
|
|
@@ -37863,9 +37917,10 @@ img.ProseMirror-separator {
|
|
|
37863
37917
|
if (propertyId) item.propertyId = propertyId;
|
|
37864
37918
|
emitValue();
|
|
37865
37919
|
};
|
|
37866
|
-
const setDateFilterValue = (index, value) => {
|
|
37920
|
+
const setDateFilterValue = (index, value, preset) => {
|
|
37867
37921
|
const item = dateFilterValues.value[index];
|
|
37868
37922
|
item.value = value || {};
|
|
37923
|
+
item.preset = preset;
|
|
37869
37924
|
emitValue();
|
|
37870
37925
|
};
|
|
37871
37926
|
const addDateFilter = () => {
|
|
@@ -37890,7 +37945,7 @@ img.ProseMirror-separator {
|
|
|
37890
37945
|
};
|
|
37891
37946
|
const emitValue = () => {
|
|
37892
37947
|
var _a2;
|
|
37893
|
-
const filters = dateFilterValues.value.map((item) =>
|
|
37948
|
+
const filters = dateFilterValues.value.map((item) => new BetweenDateFilterWithPreset(item.propertyId, item.value.from, item.value.to, item.preset));
|
|
37894
37949
|
const and = filters.length > 0 ? andFilter(filters) : void 0;
|
|
37895
37950
|
if (((_a2 = props.modelValue) == null ? void 0 : _a2.toString()) !== (and == null ? void 0 : and.toString())) {
|
|
37896
37951
|
emit("update:modelValue", and);
|
|
@@ -37957,10 +38012,11 @@ img.ProseMirror-separator {
|
|
|
37957
38012
|
}, null, 8, ["display-format", "from-id", "model-value", "name-from", "name-to", "popup-display-format", "popup-end-year", "popup-start-year", "resolution", "time-zone", "to-id", "width", "onUpdate:modelValue"]),
|
|
37958
38013
|
vue.createVNode(_sfc_main$1A, {
|
|
37959
38014
|
modelValue: item.value,
|
|
37960
|
-
"onUpdate:modelValue": [($event) => item.value = $event, (
|
|
38015
|
+
"onUpdate:modelValue": [($event) => item.value = $event, (value, preset) => setDateFilterValue(index, value, preset)],
|
|
37961
38016
|
presets: _ctx.presets,
|
|
38017
|
+
"time-zone": timeZoneOfFilterItem(item.propertyId),
|
|
37962
38018
|
class: "ml-4"
|
|
37963
|
-
}, null, 8, ["modelValue", "onUpdate:modelValue", "presets"])
|
|
38019
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue", "presets", "time-zone"])
|
|
37964
38020
|
]);
|
|
37965
38021
|
}), 128))
|
|
37966
38022
|
])) : vue.createCommentVNode("", true);
|
|
@@ -38016,12 +38072,23 @@ img.ProseMirror-separator {
|
|
|
38016
38072
|
emitUpdateModelValue();
|
|
38017
38073
|
emitSearch();
|
|
38018
38074
|
};
|
|
38075
|
+
const findDateFilterTimeZone = (name2, dateFilter) => {
|
|
38076
|
+
var _a2;
|
|
38077
|
+
return ((_a2 = dateFilter == null ? void 0 : dateFilter.filterItems.find((f) => f.propertyId === name2)) == null ? void 0 : _a2.timeZone) || blueseaConfig.timeZone;
|
|
38078
|
+
};
|
|
38019
38079
|
vue.watch(() => props.gridPreferenceDateFilterValues, () => {
|
|
38020
38080
|
if (props.gridPreferenceDateFilterValues && props.gridPreferenceDateFilterValues.filters && props.gridPreferenceDateFilterValues.filters.length > 0) {
|
|
38021
38081
|
const filters = props.gridPreferenceDateFilterValues.filters.map((filter) => {
|
|
38022
|
-
|
|
38023
|
-
|
|
38024
|
-
|
|
38082
|
+
var _a2, _b;
|
|
38083
|
+
const f = filter;
|
|
38084
|
+
if (f.name && (f.fromValue || f.toValue)) {
|
|
38085
|
+
if (f.presetKey) {
|
|
38086
|
+
const presets = props.dateRangePresets || ((_a2 = blueseaConfig.componentConfig.gridLookup) == null ? void 0 : _a2.dateRangePresets) || [];
|
|
38087
|
+
const timeZone = findDateFilterTimeZone(f.name, (_b = props.config) == null ? void 0 : _b.dateFilter);
|
|
38088
|
+
return BetweenDateFilterWithPreset.createFromPresetKey(f.name, f.presetKey, presets, timeZone);
|
|
38089
|
+
} else {
|
|
38090
|
+
return new BetweenDateFilterWithPreset(f.name, f.fromValue, f.toValue);
|
|
38091
|
+
}
|
|
38025
38092
|
}
|
|
38026
38093
|
}).filter(notNull);
|
|
38027
38094
|
if (filters.length > 0) {
|
|
@@ -72015,6 +72082,7 @@ img.ProseMirror-separator {
|
|
|
72015
72082
|
exports2.BSYesNoGroup = _sfc_main$1x;
|
|
72016
72083
|
exports2.BSYesNoSelect = _sfc_main$1V;
|
|
72017
72084
|
exports2.BetweenDateFilter = BetweenDateFilter;
|
|
72085
|
+
exports2.BetweenDateFilterWithPreset = BetweenDateFilterWithPreset;
|
|
72018
72086
|
exports2.BetweenFilter = BetweenFilter;
|
|
72019
72087
|
exports2.DEFAULT_GRID_COLUMN_WIDTH = DEFAULT_GRID_COLUMN_WIDTH;
|
|
72020
72088
|
exports2.DefaultBody = _sfc_main$h;
|
|
@@ -72061,6 +72129,7 @@ img.ProseMirror-separator {
|
|
|
72061
72129
|
exports2.closeAlarm = closeAlarm;
|
|
72062
72130
|
exports2.configureBluesea = configureBluesea;
|
|
72063
72131
|
exports2.contextMenuPluginKey = contextMenuPluginKey;
|
|
72132
|
+
exports2.convertDateRangePresetKey = convertDateRangePresetKey;
|
|
72064
72133
|
exports2.createContextMenuPlugin = createContextMenuPlugin;
|
|
72065
72134
|
exports2.createDefaultFrameContext = createDefaultFrameContext;
|
|
72066
72135
|
exports2.createInputGridHandler = createInputGridHandler;
|
|
@@ -1,4 +1,19 @@
|
|
|
1
|
+
import { BetweenDateFilter } from '../../model/FilterModel.ts';
|
|
2
|
+
import { Dayjs } from 'dayjs';
|
|
3
|
+
import { DateRangePreset } from '../input/DateRangePresetModel.ts';
|
|
4
|
+
import { TimeZone } from '../../model/CommonTypes.ts';
|
|
5
|
+
|
|
1
6
|
export type DateRange = {
|
|
2
7
|
from?: string;
|
|
3
8
|
to?: string;
|
|
4
9
|
};
|
|
10
|
+
export type DateRangePresetKey = string;
|
|
11
|
+
export declare const convertDateRangePresetKey: (preset: DateRangePreset) => DateRangePresetKey;
|
|
12
|
+
export declare class BetweenDateFilterWithPreset extends BetweenDateFilter {
|
|
13
|
+
readonly name: string;
|
|
14
|
+
readonly fromValue?: string | Date | Dayjs | undefined;
|
|
15
|
+
readonly toValue?: string | Date | Dayjs | undefined;
|
|
16
|
+
presetKey?: DateRangePresetKey;
|
|
17
|
+
constructor(name: string, fromValue?: string | Date | Dayjs | undefined, toValue?: string | Date | Dayjs | undefined, preset?: DateRangePreset);
|
|
18
|
+
static createFromPresetKey(name: string, presetKey: DateRangePresetKey, candidatePresets: DateRangePreset[], timeZone: TimeZone): BetweenDateFilterWithPreset | undefined;
|
|
19
|
+
}
|
|
@@ -341,6 +341,7 @@ export declare class GridHandlerEditableSupport<T extends GridRowData> {
|
|
|
341
341
|
private listener?;
|
|
342
342
|
addedRows: T[];
|
|
343
343
|
constructor(grid: UnwrapNestedRefs<GridBinding<T>>, gridEventListener: GridEventListener<T>, controlEventListener: GridControlEventListener, getRowKey: KeyProvider<T>, newRowCreator?: (() => T | undefined) | undefined, addRowToLast?: boolean | undefined, listener?: ((eventType: 'rowAdded' | 'rowRemoved') => void) | undefined);
|
|
344
|
+
static cleanUpData<T extends GridRowData>(data: T[]): void;
|
|
344
345
|
getModifiedRows(): T[];
|
|
345
346
|
getAddedRows(): T[];
|
|
346
347
|
clearAddedRows(): void;
|
|
@@ -8,7 +8,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
8
8
|
}>, {
|
|
9
9
|
presets: () => DateRangePreset[];
|
|
10
10
|
}>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
11
|
-
"update:modelValue": (value: DateRange | undefined) => void;
|
|
11
|
+
"update:modelValue": (value: DateRange | undefined, preset: DateRangePreset | undefined) => void;
|
|
12
12
|
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
13
13
|
modelValue?: DateRange | undefined;
|
|
14
14
|
presets?: DateRangePreset[] | undefined;
|
|
@@ -16,7 +16,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
16
16
|
}>, {
|
|
17
17
|
presets: () => DateRangePreset[];
|
|
18
18
|
}>>> & Readonly<{
|
|
19
|
-
"onUpdate:modelValue"?: ((value: DateRange | undefined) => any) | undefined;
|
|
19
|
+
"onUpdate:modelValue"?: ((value: DateRange | undefined, preset: DateRangePreset | undefined) => any) | undefined;
|
|
20
20
|
}>, {
|
|
21
21
|
presets: DateRangePreset[];
|
|
22
22
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { MultiLangText, TimeZone } from '../../model/CommonTypes.ts';
|
|
2
2
|
import { Dayjs } from 'dayjs';
|
|
3
|
+
import { DateRange } from '../grid/DateFilterModel.ts';
|
|
3
4
|
|
|
4
5
|
export type MomentType = 'TODAY' | 'THIS_WEEK' | 'THIS_MONTH' | 'THIS_YEAR' | 'LAST_HOURS' | 'LAST_DAYS' | 'DAYS_AGO' | 'WEEKS_AGO' | 'MONTHS_AGO' | 'YEARS_AGO';
|
|
5
6
|
export type MomentSetting = {
|
|
@@ -11,4 +12,5 @@ export type DateRangePreset = {
|
|
|
11
12
|
from?: MomentSetting;
|
|
12
13
|
to?: MomentSetting;
|
|
13
14
|
};
|
|
15
|
+
export declare const createDateRangeFromPreset: (value: DateRangePreset, timeZone: TimeZone) => DateRange;
|
|
14
16
|
export declare const resolveMoment: (setting: MomentSetting, from: boolean, timeZone: TimeZone, baseDate?: Dayjs) => Dayjs | undefined;
|
|
@@ -21,6 +21,7 @@ declare const _default: <T>(__VLS_props: {
|
|
|
21
21
|
readonly "onBefore:selectedRows"?: ((event: ChangeSelectionEvent<T>) => any) | undefined;
|
|
22
22
|
dontChangeDataWhenRowMoved?: boolean | undefined;
|
|
23
23
|
rowDisabledProvider?: ((item: T) => boolean) | undefined;
|
|
24
|
+
rowDisplayProvider?: ((item: T) => boolean) | undefined;
|
|
24
25
|
bottomPadding?: string | undefined;
|
|
25
26
|
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, __VLS_ctx?: {
|
|
26
27
|
attrs: any;
|
|
@@ -51,6 +52,7 @@ declare const _default: <T>(__VLS_props: {
|
|
|
51
52
|
readonly "onBefore:selectedRows"?: ((event: ChangeSelectionEvent<T>) => any) | undefined;
|
|
52
53
|
dontChangeDataWhenRowMoved?: boolean | undefined;
|
|
53
54
|
rowDisabledProvider?: ((item: T) => boolean) | undefined;
|
|
55
|
+
rowDisplayProvider?: ((item: T) => boolean) | undefined;
|
|
54
56
|
bottomPadding?: string | undefined;
|
|
55
57
|
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps;
|
|
56
58
|
expose(exposed: import('vue').ShallowUnwrapRef<{}>): void;
|
|
@@ -85,6 +87,7 @@ declare const _default: <T>(__VLS_props: {
|
|
|
85
87
|
readonly "onBefore:selectedRows"?: ((event: ChangeSelectionEvent<T>) => any) | undefined;
|
|
86
88
|
dontChangeDataWhenRowMoved?: boolean | undefined;
|
|
87
89
|
rowDisabledProvider?: ((item: T) => boolean) | undefined;
|
|
90
|
+
rowDisplayProvider?: ((item: T) => boolean) | undefined;
|
|
88
91
|
bottomPadding?: string | undefined;
|
|
89
92
|
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps;
|
|
90
93
|
expose(exposed: import('vue').ShallowUnwrapRef<{}>): void;
|
|
@@ -16,6 +16,7 @@ declare const _default: <T>(__VLS_props: {
|
|
|
16
16
|
parentRow: T | undefined;
|
|
17
17
|
siblings: T[];
|
|
18
18
|
disabledProvider?: ((item: T) => boolean) | undefined;
|
|
19
|
+
displayProvider?: ((item: T) => boolean) | undefined;
|
|
19
20
|
multiSelect?: boolean | undefined;
|
|
20
21
|
showMoveButton?: boolean | undefined;
|
|
21
22
|
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, __VLS_ctx?: {
|
|
@@ -41,6 +42,7 @@ declare const _default: <T>(__VLS_props: {
|
|
|
41
42
|
parentRow: T | undefined;
|
|
42
43
|
siblings: T[];
|
|
43
44
|
disabledProvider?: ((item: T) => boolean) | undefined;
|
|
45
|
+
displayProvider?: ((item: T) => boolean) | undefined;
|
|
44
46
|
multiSelect?: boolean | undefined;
|
|
45
47
|
showMoveButton?: boolean | undefined;
|
|
46
48
|
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps;
|
|
@@ -70,6 +72,7 @@ declare const _default: <T>(__VLS_props: {
|
|
|
70
72
|
parentRow: T | undefined;
|
|
71
73
|
siblings: T[];
|
|
72
74
|
disabledProvider?: ((item: T) => boolean) | undefined;
|
|
75
|
+
displayProvider?: ((item: T) => boolean) | undefined;
|
|
73
76
|
multiSelect?: boolean | undefined;
|
|
74
77
|
showMoveButton?: boolean | undefined;
|
|
75
78
|
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps;
|
|
@@ -35,9 +35,28 @@ export interface TreeHandler<T> {
|
|
|
35
35
|
treeEventListener: TreeEventListener<T>;
|
|
36
36
|
control: UnwrapNestedRefs<TreeControlBinding<T>>;
|
|
37
37
|
controlEventListener: TreeControlEventListener;
|
|
38
|
+
/**
|
|
39
|
+
* Tree 에 data 를 넣는다.
|
|
40
|
+
* @param data
|
|
41
|
+
* @param keepSelection true 이면 현재 선택된 항목이 유지된다.
|
|
42
|
+
* @param keepExpanded true 이면 현재 expanded 인 항목이 유지된다.
|
|
43
|
+
* @param waitTime 이 값이 0보다 크면 이 시간동안 tree 를 비웠다가 다시 채운다. refresh 효과를 위해 사용한다. millisecond 단위.
|
|
44
|
+
*/
|
|
38
45
|
setTreeData(data: T[], keepSelection?: boolean, keepExpanded?: boolean, waitTime?: number): Promise<void>;
|
|
46
|
+
/**
|
|
47
|
+
* 항목을 선택한다.
|
|
48
|
+
* @param item
|
|
49
|
+
*/
|
|
39
50
|
selectItem(item: T | T[] | undefined): void;
|
|
51
|
+
/**
|
|
52
|
+
* `item` 의 parent 를 리턴한다.
|
|
53
|
+
* @param item
|
|
54
|
+
*/
|
|
40
55
|
getParent(item: T | undefined): T | undefined;
|
|
56
|
+
/**
|
|
57
|
+
* `item` 을 교체한다. item 이 변경된 경우, 변경된 객체를 tree 에 다시 표시할 때 사용한다.
|
|
58
|
+
* @param newItem
|
|
59
|
+
*/
|
|
41
60
|
replaceCurrentItem(newItem: T): void;
|
|
42
61
|
/**
|
|
43
62
|
* Tree 이 모든 항목을 순회하며 visitor 함수를 호출한다. visitor 함수가
|
|
@@ -63,7 +82,16 @@ export interface TreeHandler<T> {
|
|
|
63
82
|
* @param index 추가할 위치. 0 보다 작으면 제일 마지막에 추가한다. 디폴트는 -1.
|
|
64
83
|
*/
|
|
65
84
|
addChildItem(parent: T, index: number): void;
|
|
85
|
+
/**
|
|
86
|
+
* `items` 를 삭제한다.
|
|
87
|
+
* @param items
|
|
88
|
+
*/
|
|
66
89
|
removeItems(items: T[]): void;
|
|
90
|
+
/**
|
|
91
|
+
* Tree 전체를 펼치거나 접는다.
|
|
92
|
+
* @param expandOrDepth true 이면 전체를 펼치고, false 이면 접는다. 숫자이면 해당 depth 까지 표시되도록 펼친다.
|
|
93
|
+
*/
|
|
94
|
+
expandAll(expandOrDepth: boolean | number): void;
|
|
67
95
|
}
|
|
68
96
|
export type TreeBinding<T> = {
|
|
69
97
|
data: T[];
|