@ouestfrance/sipa-bms-ui 8.48.2 → 8.50.0
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/components/table/BmsTable.vue.d.ts +4 -0
- package/dist/components/table/UiBmsTable.vue.d.ts +15 -10
- package/dist/components/table/UiBmsTableRow.vue.d.ts +18 -8
- package/dist/composables/search.composable.d.ts +1 -1
- package/dist/sipa-bms-ui.css +71 -50
- package/dist/sipa-bms-ui.es.js +245 -143
- package/dist/sipa-bms-ui.es.js.map +1 -1
- package/dist/sipa-bms-ui.umd.js +244 -142
- package/dist/sipa-bms-ui.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/components/table/BmsTable.stories.js +70 -0
- package/src/components/table/BmsTable.vue +27 -5
- package/src/components/table/UiBmsTable.stories.js +40 -0
- package/src/components/table/UiBmsTable.vue +74 -7
- package/src/components/table/UiBmsTableRow.vue +41 -3
- package/src/composables/search.composable.spec.ts +69 -1
- package/src/composables/search.composable.ts +11 -4
package/dist/sipa-bms-ui.es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Fragment, Teleport, Transition, TransitionGroup, computed, createApp, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createStaticVNode, createTextVNode, createVNode, defineComponent, getCurrentInstance, getCurrentScope, guardReactiveProps, h, hasInjectionContext, inject, isRef, isVNode, mergeModels, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeMount, onBeforeUnmount, onMounted, onScopeDispose, onUnmounted, openBlock, provide, reactive, ref, renderList, renderSlot, resolveComponent, resolveDynamicComponent, shallowRef, toDisplayString, toRaw, toValue, unref, useAttrs, useCssVars, useId, useModel, useSlots, useTemplateRef, vModelCheckbox, vModelRadio, vModelText, vShow, watch, watchEffect, withCtx, withDirectives, withKeys, withModifiers } from "vue";
|
|
1
|
+
import { Fragment, Teleport, Transition, TransitionGroup, computed, createApp, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createStaticVNode, createTextVNode, createVNode, defineComponent, getCurrentInstance, getCurrentScope, guardReactiveProps, h, hasInjectionContext, inject, isRef, isVNode, mergeModels, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeMount, onBeforeUnmount, onMounted, onScopeDispose, onUnmounted, openBlock, provide, reactive, ref, renderList, renderSlot, resolveComponent, resolveDynamicComponent, shallowRef, toDisplayString, toRaw, toRef, toValue, unref, useAttrs, useCssVars, useId, useModel, useSlots, useTemplateRef, vModelCheckbox, vModelRadio, vModelText, vShow, watch, watchEffect, withCtx, withDirectives, withKeys, withModifiers } from "vue";
|
|
2
2
|
import { useRoute, useRouter } from "vue-router";
|
|
3
3
|
//#region \0rolldown/runtime.js
|
|
4
4
|
var __create = Object.create;
|
|
@@ -55089,7 +55089,7 @@ var _hoisted_3$25 = {
|
|
|
55089
55089
|
key: 1,
|
|
55090
55090
|
class: "bms-switch-icon-button__menu__item__check-placeholder"
|
|
55091
55091
|
};
|
|
55092
|
-
var _hoisted_4$
|
|
55092
|
+
var _hoisted_4$15 = { class: "bms-switch-icon-button__menu__item__label" };
|
|
55093
55093
|
//#endregion
|
|
55094
55094
|
//#region src/components/button/BmsSwitchIconButton.vue
|
|
55095
55095
|
var BmsSwitchIconButton_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -55180,7 +55180,7 @@ var BmsSwitchIconButton_default = /*#__PURE__*/ _plugin_vue_export_helper_defaul
|
|
|
55180
55180
|
size: 16,
|
|
55181
55181
|
class: "bms-switch-icon-button__menu__item__icon"
|
|
55182
55182
|
})) : createCommentVNode("", true),
|
|
55183
|
-
createElementVNode("span", _hoisted_4$
|
|
55183
|
+
createElementVNode("span", _hoisted_4$15, toDisplayString(option.label), 1)
|
|
55184
55184
|
], 8, _hoisted_2$43);
|
|
55185
55185
|
}), 128))], 4), [[vShow, isOpen.value]])], 2);
|
|
55186
55186
|
};
|
|
@@ -55307,7 +55307,7 @@ var _hoisted_2$40 = {
|
|
|
55307
55307
|
viewBox: "0 0 100 100"
|
|
55308
55308
|
};
|
|
55309
55309
|
var _hoisted_3$23 = { transform: "rotate(-90, 50, 50)" };
|
|
55310
|
-
var _hoisted_4$
|
|
55310
|
+
var _hoisted_4$14 = ["stroke-dashoffset"];
|
|
55311
55311
|
var _hoisted_5$9 = { class: "percent" };
|
|
55312
55312
|
//#endregion
|
|
55313
55313
|
//#region src/components/feedback/BmsCircularProgress.vue
|
|
@@ -55333,7 +55333,7 @@ var BmsCircularProgress_default = /*#__PURE__*/ _plugin_vue_export_helper_defaul
|
|
|
55333
55333
|
"stroke-linecap": "round",
|
|
55334
55334
|
"stroke-dashoffset": 283 - __props.progress * 283 / 100,
|
|
55335
55335
|
"stroke-dasharray": "283"
|
|
55336
|
-
}, null, 8, _hoisted_4$
|
|
55336
|
+
}, null, 8, _hoisted_4$14)])])) : createCommentVNode("", true), createElementVNode("div", _hoisted_5$9, toDisplayString(__props.progress) + "%", 1)]);
|
|
55337
55337
|
};
|
|
55338
55338
|
}
|
|
55339
55339
|
}), [["__scopeId", "data-v-7869acfb"]]);
|
|
@@ -55403,7 +55403,7 @@ var _hoisted_3$22 = {
|
|
|
55403
55403
|
fill: "none",
|
|
55404
55404
|
"fill-rule": "evenodd"
|
|
55405
55405
|
};
|
|
55406
|
-
var _hoisted_4$
|
|
55406
|
+
var _hoisted_4$13 = { transform: "translate(1 1)" };
|
|
55407
55407
|
var _hoisted_5$8 = ["stroke"];
|
|
55408
55408
|
function transformIntoPx(totransform) {
|
|
55409
55409
|
return typeof totransform === "string" ? totransform : `${totransform}px`;
|
|
@@ -55445,7 +55445,7 @@ var BmsLoader_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PU
|
|
|
55445
55445
|
"stop-color": "currentColor",
|
|
55446
55446
|
offset: "100%"
|
|
55447
55447
|
}, null, -1)
|
|
55448
|
-
])], 8, _hoisted_2$39)]), createElementVNode("g", _hoisted_3$22, [createElementVNode("g", _hoisted_4$
|
|
55448
|
+
])], 8, _hoisted_2$39)]), createElementVNode("g", _hoisted_3$22, [createElementVNode("g", _hoisted_4$13, [createElementVNode("path", {
|
|
55449
55449
|
d: "M36 18c0-9.94-8.06-18-18-18",
|
|
55450
55450
|
id: "Oval-2",
|
|
55451
55451
|
stroke: `url(#${unref(gradientId)})`,
|
|
@@ -55861,7 +55861,7 @@ var _hoisted_3$21 = [
|
|
|
55861
55861
|
"minlength",
|
|
55862
55862
|
"maxlength"
|
|
55863
55863
|
];
|
|
55864
|
-
var _hoisted_4$
|
|
55864
|
+
var _hoisted_4$12 = { class: "field__input-icon field__input-icon--end" };
|
|
55865
55865
|
//#endregion
|
|
55866
55866
|
//#region src/components/form/RawInputText.vue
|
|
55867
55867
|
var RawInputText_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -55952,7 +55952,7 @@ var RawInputText_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
|
|
|
55952
55952
|
onFocus: _cache[1] || (_cache[1] = ($event) => $emits("focus")),
|
|
55953
55953
|
onClick: _cache[2] || (_cache[2] = ($event) => $emits("click"))
|
|
55954
55954
|
}, null, 40, _hoisted_3$21),
|
|
55955
|
-
createElementVNode("span", _hoisted_4$
|
|
55955
|
+
createElementVNode("span", _hoisted_4$12, [renderSlot(_ctx.$slots, "icon-end", {}, void 0, true)])
|
|
55956
55956
|
], 2);
|
|
55957
55957
|
};
|
|
55958
55958
|
}
|
|
@@ -56498,7 +56498,7 @@ var BmsChip_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
|
|
|
56498
56498
|
var _hoisted_1$54 = { class: "file-upload" };
|
|
56499
56499
|
var _hoisted_2$35 = { class: "file-upload__label" };
|
|
56500
56500
|
var _hoisted_3$20 = { key: 1 };
|
|
56501
|
-
var _hoisted_4$
|
|
56501
|
+
var _hoisted_4$11 = { class: "file-upload__file-name" };
|
|
56502
56502
|
//#endregion
|
|
56503
56503
|
//#region src/components/form/BmsFilePicker.vue
|
|
56504
56504
|
var BmsFilePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -56580,7 +56580,7 @@ var BmsFilePicker_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @
|
|
|
56580
56580
|
return openBlock(), createElementBlock("div", {
|
|
56581
56581
|
key: file.name,
|
|
56582
56582
|
class: "file-upload__file"
|
|
56583
|
-
}, [createElementVNode("span", _hoisted_4$
|
|
56583
|
+
}, [createElementVNode("span", _hoisted_4$11, toDisplayString(file.name), 1), createVNode(unref(BmsIconButton_default), { onClick: ($event) => onDeleteFile(file) }, {
|
|
56584
56584
|
default: withCtx(() => [createVNode(unref(Trash2))]),
|
|
56585
56585
|
_: 1
|
|
56586
56586
|
}, 8, ["onClick"])]);
|
|
@@ -101456,7 +101456,7 @@ var _hoisted_3$16 = {
|
|
|
101456
101456
|
key: 0,
|
|
101457
101457
|
class: "field__input-icon field__input-icon--start"
|
|
101458
101458
|
};
|
|
101459
|
-
var _hoisted_4$
|
|
101459
|
+
var _hoisted_4$10 = [
|
|
101460
101460
|
"readonly",
|
|
101461
101461
|
"placeholder",
|
|
101462
101462
|
"required",
|
|
@@ -101750,7 +101750,7 @@ var BmsCombobox_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
|
|
|
101750
101750
|
disabled: __props.disabled,
|
|
101751
101751
|
onKeyup: withKeys(openDatalist, ["down"]),
|
|
101752
101752
|
onInput: _cache[1] || (_cache[1] = ($event) => filteringActive.value = true)
|
|
101753
|
-
}, null, 40, _hoisted_4$
|
|
101753
|
+
}, null, 40, _hoisted_4$10)), [[vModelText, searching.value]]) : createCommentVNode("", true),
|
|
101754
101754
|
hasEndIcon.value ? (openBlock(), createElementBlock("span", _hoisted_5$7, [renderSlot(_ctx.$slots, "icon-end", {}, void 0, true)])) : createCommentVNode("", true)
|
|
101755
101755
|
], true),
|
|
101756
101756
|
createElementVNode("span", _hoisted_6$7, [canClear.value ? (openBlock(), createBlock(unref(X), {
|
|
@@ -104874,7 +104874,7 @@ var BmsShortLinkMenu_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/
|
|
|
104874
104874
|
var _hoisted_1$35 = { class: "bms-header" };
|
|
104875
104875
|
var _hoisted_2$23 = { class: "bms-header__title" };
|
|
104876
104876
|
var _hoisted_3$13 = { class: "bms-header__title__label" };
|
|
104877
|
-
var _hoisted_4$
|
|
104877
|
+
var _hoisted_4$9 = { key: 0 };
|
|
104878
104878
|
var _hoisted_5$6 = {
|
|
104879
104879
|
key: 1,
|
|
104880
104880
|
class: "bms-header__title__after-title"
|
|
@@ -104905,7 +104905,7 @@ var BmsHeaderTitle_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
104905
104905
|
return (_ctx, _cache) => {
|
|
104906
104906
|
return openBlock(), createElementBlock("div", _hoisted_1$35, [createElementVNode("span", _hoisted_2$23, [
|
|
104907
104907
|
renderSlot(_ctx.$slots, "logo", {}, void 0, true),
|
|
104908
|
-
createElementVNode("span", _hoisted_3$13, [__props.label ? (openBlock(), createElementBlock("span", _hoisted_4$
|
|
104908
|
+
createElementVNode("span", _hoisted_3$13, [__props.label ? (openBlock(), createElementBlock("span", _hoisted_4$9, toDisplayString(__props.label), 1)) : createCommentVNode("", true), createElementVNode("h1", null, toDisplayString(__props.title), 1)]),
|
|
104909
104909
|
showHelperLink.value ? (openBlock(), createBlock(BmsShortLinkMenu_default, {
|
|
104910
104910
|
key: 0,
|
|
104911
104911
|
outline: true,
|
|
@@ -104940,7 +104940,7 @@ var BmsOverlay_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
104940
104940
|
var _hoisted_1$34 = ["data-testid"];
|
|
104941
104941
|
var _hoisted_2$22 = { class: "ui-modal__header" };
|
|
104942
104942
|
var _hoisted_3$12 = { class: "ui-modal__header-inner" };
|
|
104943
|
-
var _hoisted_4$
|
|
104943
|
+
var _hoisted_4$8 = { class: "ui-modal__title" };
|
|
104944
104944
|
var _hoisted_5$5 = { class: "ui-modal__content" };
|
|
104945
104945
|
var _hoisted_6$5 = { class: "ui-modal__footer" };
|
|
104946
104946
|
var _hoisted_7$5 = { class: "ui-modal__buttons" };
|
|
@@ -105071,7 +105071,7 @@ var BmsModal_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
105071
105071
|
ref_key: "innerModal",
|
|
105072
105072
|
ref: innerModal
|
|
105073
105073
|
}, [
|
|
105074
|
-
createElementVNode("header", _hoisted_2$22, [createElementVNode("div", _hoisted_3$12, [renderSlot(_ctx.$slots, "header", {}, () => [createElementVNode("h1", _hoisted_4$
|
|
105074
|
+
createElementVNode("header", _hoisted_2$22, [createElementVNode("div", _hoisted_3$12, [renderSlot(_ctx.$slots, "header", {}, () => [createElementVNode("h1", _hoisted_4$8, [props.type !== unref(StatusType).Default ? (openBlock(), createBlock(resolveDynamicComponent(titleComponent.value), {
|
|
105075
105075
|
key: 0,
|
|
105076
105076
|
class: "title-indicator",
|
|
105077
105077
|
size: 20
|
|
@@ -105431,7 +105431,7 @@ var BmsStep_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE
|
|
|
105431
105431
|
var _hoisted_1$29 = { class: "stepper" };
|
|
105432
105432
|
var _hoisted_2$18 = { class: "stepper-header" };
|
|
105433
105433
|
var _hoisted_3$10 = ["onClick"];
|
|
105434
|
-
var _hoisted_4$
|
|
105434
|
+
var _hoisted_4$7 = { key: 1 };
|
|
105435
105435
|
var _hoisted_5$4 = ["onClick"];
|
|
105436
105436
|
var _hoisted_6$4 = {
|
|
105437
105437
|
key: 0,
|
|
@@ -105485,7 +105485,7 @@ var BmsStepper_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
105485
105485
|
createElementVNode("div", {
|
|
105486
105486
|
class: normalizeClass(["stepper-header--indicator", stepIndicator(step, index)]),
|
|
105487
105487
|
onClick: ($event) => onStepClick(index)
|
|
105488
|
-
}, [step.stepComplete ? (openBlock(), createBlock(unref(Check), { key: 0 })) : (openBlock(), createElementBlock("span", _hoisted_4$
|
|
105488
|
+
}, [step.stepComplete ? (openBlock(), createBlock(unref(Check), { key: 0 })) : (openBlock(), createElementBlock("span", _hoisted_4$7, toDisplayString(index + 1), 1))], 10, _hoisted_3$10),
|
|
105489
105489
|
createElementVNode("div", { onClick: ($event) => onStepClick(index) }, toDisplayString(step.stepLabel), 9, _hoisted_5$4),
|
|
105490
105490
|
index < steps.value.length - 1 ? (openBlock(), createElementBlock("hr", _hoisted_6$4)) : createCommentVNode("", true)
|
|
105491
105491
|
], 2);
|
|
@@ -105699,7 +105699,7 @@ var _hoisted_1$25 = {
|
|
|
105699
105699
|
};
|
|
105700
105700
|
var _hoisted_2$16 = { class: "parent-label" };
|
|
105701
105701
|
var _hoisted_3$9 = ["onClick"];
|
|
105702
|
-
var _hoisted_4$
|
|
105702
|
+
var _hoisted_4$6 = { class: "parent-label" };
|
|
105703
105703
|
var _hoisted_5$3 = {
|
|
105704
105704
|
key: 1,
|
|
105705
105705
|
class: "parent-item"
|
|
@@ -105772,7 +105772,7 @@ var BmsMenuNav_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
105772
105772
|
key: 0,
|
|
105773
105773
|
class: "parent-item is-clickable",
|
|
105774
105774
|
onClick: ($event) => toggleParentItem(item)
|
|
105775
|
-
}, [createElementVNode("span", _hoisted_4$
|
|
105775
|
+
}, [createElementVNode("span", _hoisted_4$6, toDisplayString(item.label), 1), !item.open ? (openBlock(), createBlock(unref(ChevronDown), { key: 0 })) : (openBlock(), createBlock(unref(ChevronUp), { key: 1 }))], 8, _hoisted_3$9)) : (openBlock(), createElementBlock("div", _hoisted_5$3, [createElementVNode("span", _hoisted_6$3, toDisplayString(item.label), 1)]))], 64)), createVNode(Transition, { name: "open" }, {
|
|
105776
105776
|
default: withCtx(() => [withDirectives(createElementVNode("ul", null, [(openBlock(true), createElementBlock(Fragment, null, renderList(item.items, (subItem) => {
|
|
105777
105777
|
return openBlock(), createElementBlock("li", { key: subItem.label }, [createVNode(UiMenuItem_default, {
|
|
105778
105778
|
item: subItem,
|
|
@@ -106509,7 +106509,7 @@ var empty_default = { render };
|
|
|
106509
106509
|
var _hoisted_1$15 = { class: "empty-screen" };
|
|
106510
106510
|
var _hoisted_2$12 = { class: "empty-screen__img" };
|
|
106511
106511
|
var _hoisted_3$7 = { class: "empty-screen__title" };
|
|
106512
|
-
var _hoisted_4$
|
|
106512
|
+
var _hoisted_4$5 = {
|
|
106513
106513
|
key: 0,
|
|
106514
106514
|
class: "empty-screen__description"
|
|
106515
106515
|
};
|
|
@@ -106527,7 +106527,7 @@ var BmsEmptyScreen_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/*
|
|
|
106527
106527
|
return openBlock(), createElementBlock("div", _hoisted_1$15, [
|
|
106528
106528
|
createElementVNode("div", _hoisted_2$12, [createVNode(unref(empty_default))]),
|
|
106529
106529
|
createElementVNode("h1", _hoisted_3$7, toDisplayString(props.title), 1),
|
|
106530
|
-
props.description ? (openBlock(), createElementBlock("p", _hoisted_4$
|
|
106530
|
+
props.description ? (openBlock(), createElementBlock("p", _hoisted_4$5, toDisplayString(props.description), 1)) : createCommentVNode("", true)
|
|
106531
106531
|
]);
|
|
106532
106532
|
};
|
|
106533
106533
|
}
|
|
@@ -108939,15 +108939,16 @@ var UiBmsTableCell_default = /* @__PURE__ */ defineComponent({
|
|
|
108939
108939
|
});
|
|
108940
108940
|
//#endregion
|
|
108941
108941
|
//#region src/components/table/UiBmsTableRow.vue?vue&type=script&setup=true&lang.ts
|
|
108942
|
-
var _hoisted_1$12 =
|
|
108943
|
-
|
|
108942
|
+
var _hoisted_1$12 = ["draggable"];
|
|
108943
|
+
var _hoisted_2$10 = {
|
|
108944
|
+
key: 1,
|
|
108944
108945
|
class: "bms-table__row__cell__checkbox"
|
|
108945
108946
|
};
|
|
108946
|
-
var
|
|
108947
|
+
var _hoisted_3$5 = {
|
|
108947
108948
|
key: 0,
|
|
108948
108949
|
class: "bms-table__row__cell--child-element"
|
|
108949
108950
|
};
|
|
108950
|
-
var
|
|
108951
|
+
var _hoisted_4$4 = {
|
|
108951
108952
|
key: 1,
|
|
108952
108953
|
class: "bms-table__row__cell--action"
|
|
108953
108954
|
};
|
|
@@ -108969,11 +108970,22 @@ var UiBmsTableRow_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @
|
|
|
108969
108970
|
type: Boolean,
|
|
108970
108971
|
default: false
|
|
108971
108972
|
},
|
|
108972
|
-
isChildElement: { type: Boolean }
|
|
108973
|
+
isChildElement: { type: Boolean },
|
|
108974
|
+
draggable: {
|
|
108975
|
+
type: Boolean,
|
|
108976
|
+
default: false
|
|
108977
|
+
}
|
|
108973
108978
|
},
|
|
108974
|
-
emits: [
|
|
108979
|
+
emits: [
|
|
108980
|
+
"select",
|
|
108981
|
+
"dragStart",
|
|
108982
|
+
"dragOver",
|
|
108983
|
+
"dragEnd",
|
|
108984
|
+
"drop"
|
|
108985
|
+
],
|
|
108975
108986
|
setup(__props, { emit: __emit }) {
|
|
108976
108987
|
const props = __props;
|
|
108988
|
+
const gripped = ref(false);
|
|
108977
108989
|
const emits = __emit;
|
|
108978
108990
|
const currentItem = computed(() => props.isChildElement ? props.item.childElement : props.item);
|
|
108979
108991
|
const isItemSelected = (item) => {
|
|
@@ -108983,67 +108995,89 @@ var UiBmsTableRow_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @
|
|
|
108983
108995
|
return `u-text-align-${!header.align ? "start" : header.align}`;
|
|
108984
108996
|
};
|
|
108985
108997
|
return (_ctx, _cache) => {
|
|
108986
|
-
return openBlock(), createElementBlock("tr", {
|
|
108987
|
-
"bms-table__row
|
|
108988
|
-
|
|
108989
|
-
|
|
108990
|
-
|
|
108991
|
-
|
|
108992
|
-
|
|
108993
|
-
|
|
108994
|
-
|
|
108995
|
-
|
|
108998
|
+
return openBlock(), createElementBlock("tr", {
|
|
108999
|
+
class: normalizeClass(["bms-table__row", {
|
|
109000
|
+
"bms-table__row--selected": isItemSelected(currentItem.value),
|
|
109001
|
+
"bms-table__row--disabled": __props.isChildElement,
|
|
109002
|
+
"bms-table__row--dense": __props.dense
|
|
109003
|
+
}]),
|
|
109004
|
+
draggable: __props.draggable && gripped.value,
|
|
109005
|
+
onDragstart: _cache[4] || (_cache[4] = ($event) => emits("dragStart")),
|
|
109006
|
+
onDragover: _cache[5] || (_cache[5] = ($event) => __props.draggable && ($event.preventDefault(), emits("dragOver"))),
|
|
109007
|
+
onDragend: _cache[6] || (_cache[6] = ($event) => {
|
|
109008
|
+
gripped.value = false;
|
|
109009
|
+
emits("dragEnd");
|
|
109010
|
+
}),
|
|
109011
|
+
onDrop: _cache[7] || (_cache[7] = ($event) => __props.draggable && ($event.preventDefault(), emits("drop")))
|
|
109012
|
+
}, [
|
|
109013
|
+
__props.draggable ? (openBlock(), createElementBlock("td", {
|
|
108996
109014
|
key: 0,
|
|
108997
|
-
|
|
108998
|
-
|
|
108999
|
-
|
|
109000
|
-
|
|
109001
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => emits("select", currentItem.value))
|
|
109002
|
-
}, null, 8, [
|
|
109003
|
-
"name",
|
|
109004
|
-
"disabled",
|
|
109005
|
-
"value",
|
|
109006
|
-
"model-value"
|
|
109007
|
-
])) : (openBlock(), createBlock(UiBmsInputCheckbox_default, {
|
|
109008
|
-
key: 1,
|
|
109009
|
-
name: unref(v4)(),
|
|
109010
|
-
disabled: __props.selectMode === unref(SelectMode).ALL || __props.selectableDisabled,
|
|
109011
|
-
"model-value": isItemSelected(currentItem.value),
|
|
109012
|
-
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => emits("select", currentItem.value))
|
|
109013
|
-
}, null, 8, [
|
|
109014
|
-
"name",
|
|
109015
|
-
"disabled",
|
|
109016
|
-
"model-value"
|
|
109017
|
-
]))]),
|
|
109018
|
-
_: 1
|
|
109019
|
-
}, 8, ["direction", "activated"])])) : createCommentVNode("", true), renderSlot(_ctx.$slots, "default", { row: __props.item }, () => [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.headers, (cell, index) => {
|
|
109020
|
-
return openBlock(), createElementBlock("td", {
|
|
109021
|
-
class: normalizeClass([getAlignClass(cell), "bms-table__row__cell"]),
|
|
109022
|
-
key: cell.key
|
|
109023
|
-
}, [__props.isChildElement ? (openBlock(), createElementBlock("div", _hoisted_2$10, [index === 0 ? (openBlock(), createBlock(unref(CornerDownRight), {
|
|
109015
|
+
class: "bms-table__row__cell--drag-handle",
|
|
109016
|
+
onMousedown: _cache[0] || (_cache[0] = ($event) => !__props.isChildElement && (gripped.value = true)),
|
|
109017
|
+
onMouseup: _cache[1] || (_cache[1] = ($event) => gripped.value = false)
|
|
109018
|
+
}, [!__props.isChildElement ? (openBlock(), createBlock(unref(GripVertical), {
|
|
109024
109019
|
key: 0,
|
|
109025
|
-
class: "
|
|
109026
|
-
})) : createCommentVNode("", true),
|
|
109027
|
-
|
|
109028
|
-
|
|
109029
|
-
|
|
109030
|
-
|
|
109031
|
-
|
|
109032
|
-
|
|
109033
|
-
|
|
109034
|
-
|
|
109035
|
-
|
|
109036
|
-
|
|
109037
|
-
|
|
109038
|
-
|
|
109039
|
-
|
|
109040
|
-
|
|
109041
|
-
|
|
109042
|
-
|
|
109043
|
-
|
|
109020
|
+
class: "drag-handle-icon"
|
|
109021
|
+
})) : createCommentVNode("", true)], 32)) : createCommentVNode("", true),
|
|
109022
|
+
__props.selectable ? (openBlock(), createElementBlock("td", _hoisted_2$10, [createVNode(BmsTooltip_default, {
|
|
109023
|
+
direction: unref(TooltipDirection).Right,
|
|
109024
|
+
"tooltip-text": "Vous ne pouvez pas désélectionner un élément unitairement si vous avez choisi de sélectionner la totalité des éléments",
|
|
109025
|
+
activated: __props.selectMode === unref(SelectMode).ALL
|
|
109026
|
+
}, {
|
|
109027
|
+
default: withCtx(() => [__props.selectMode === unref(SelectMode).SINGLE ? (openBlock(), createBlock(BmsInputRadio_default, {
|
|
109028
|
+
key: 0,
|
|
109029
|
+
name: unref(v4)(),
|
|
109030
|
+
disabled: __props.selectableDisabled,
|
|
109031
|
+
value: currentItem.value,
|
|
109032
|
+
"model-value": isItemSelected(currentItem.value) ? currentItem.value : null,
|
|
109033
|
+
"onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => emits("select", currentItem.value))
|
|
109034
|
+
}, null, 8, [
|
|
109035
|
+
"name",
|
|
109036
|
+
"disabled",
|
|
109037
|
+
"value",
|
|
109038
|
+
"model-value"
|
|
109039
|
+
])) : (openBlock(), createBlock(UiBmsInputCheckbox_default, {
|
|
109040
|
+
key: 1,
|
|
109041
|
+
name: unref(v4)(),
|
|
109042
|
+
disabled: __props.selectMode === unref(SelectMode).ALL || __props.selectableDisabled,
|
|
109043
|
+
"model-value": isItemSelected(currentItem.value),
|
|
109044
|
+
"onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => emits("select", currentItem.value))
|
|
109045
|
+
}, null, 8, [
|
|
109046
|
+
"name",
|
|
109047
|
+
"disabled",
|
|
109048
|
+
"model-value"
|
|
109049
|
+
]))]),
|
|
109050
|
+
_: 1
|
|
109051
|
+
}, 8, ["direction", "activated"])])) : createCommentVNode("", true),
|
|
109052
|
+
renderSlot(_ctx.$slots, "default", { row: __props.item }, () => [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.headers, (cell, index) => {
|
|
109053
|
+
return openBlock(), createElementBlock("td", {
|
|
109054
|
+
class: normalizeClass([getAlignClass(cell), "bms-table__row__cell"]),
|
|
109055
|
+
key: cell.key
|
|
109056
|
+
}, [__props.isChildElement ? (openBlock(), createElementBlock("div", _hoisted_3$5, [index === 0 ? (openBlock(), createBlock(unref(CornerDownRight), {
|
|
109057
|
+
key: 0,
|
|
109058
|
+
class: "bms-table__row__cell--child-element__icon"
|
|
109059
|
+
})) : createCommentVNode("", true), renderSlot(_ctx.$slots, cell.key, {
|
|
109060
|
+
row: __props.item.childElement,
|
|
109061
|
+
isChildElement: __props.isChildElement
|
|
109062
|
+
}, () => [createVNode(UiBmsTableCell_default, {
|
|
109063
|
+
item: __props.item.childElement,
|
|
109064
|
+
cell
|
|
109065
|
+
}, null, 8, ["item", "cell"])], true)])) : cell?.action ? (openBlock(), createElementBlock("div", _hoisted_4$4, [renderSlot(_ctx.$slots, cell.key, {
|
|
109066
|
+
row: __props.item,
|
|
109067
|
+
isChildElement: __props.isChildElement
|
|
109068
|
+
}, void 0, true)])) : renderSlot(_ctx.$slots, cell.key, {
|
|
109069
|
+
key: 2,
|
|
109070
|
+
row: __props.item,
|
|
109071
|
+
isChildElement: __props.isChildElement
|
|
109072
|
+
}, () => [createVNode(UiBmsTableCell_default, {
|
|
109073
|
+
item: __props.item,
|
|
109074
|
+
cell
|
|
109075
|
+
}, null, 8, ["item", "cell"])], true)], 2);
|
|
109076
|
+
}), 128))], true)
|
|
109077
|
+
], 42, _hoisted_1$12);
|
|
109044
109078
|
};
|
|
109045
109079
|
}
|
|
109046
|
-
}), [["__scopeId", "data-v-
|
|
109080
|
+
}), [["__scopeId", "data-v-13885778"]]);
|
|
109047
109081
|
//#endregion
|
|
109048
109082
|
//#region src/components/table/UiBmsTable.vue?vue&type=script&setup=true&lang.ts
|
|
109049
109083
|
var _hoisted_1$11 = { class: "bms-table" };
|
|
@@ -109066,15 +109100,19 @@ var _hoisted_10$1 = {
|
|
|
109066
109100
|
class: "bms-table__header"
|
|
109067
109101
|
};
|
|
109068
109102
|
var _hoisted_11$1 = { class: "bms-table__headers bms-table__row" };
|
|
109069
|
-
var _hoisted_12$1 = {
|
|
109070
|
-
|
|
109071
|
-
|
|
109072
|
-
|
|
109073
|
-
var
|
|
109103
|
+
var _hoisted_12$1 = {
|
|
109104
|
+
key: 0,
|
|
109105
|
+
class: "drag-handle-header"
|
|
109106
|
+
};
|
|
109107
|
+
var _hoisted_13$1 = { key: 1 };
|
|
109108
|
+
var _hoisted_14$1 = ["onClick"];
|
|
109109
|
+
var _hoisted_15$1 = { class: "header-content" };
|
|
109110
|
+
var _hoisted_16$1 = { class: "bms-table__body" };
|
|
109111
|
+
var _hoisted_17 = {
|
|
109074
109112
|
key: 1,
|
|
109075
109113
|
class: "bms-table__row"
|
|
109076
109114
|
};
|
|
109077
|
-
var
|
|
109115
|
+
var _hoisted_18 = ["colspan"];
|
|
109078
109116
|
//#endregion
|
|
109079
109117
|
//#region src/components/table/UiBmsTable.vue
|
|
109080
109118
|
var UiBmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|
|
@@ -109103,7 +109141,8 @@ var UiBmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
109103
109141
|
selectedItems: {},
|
|
109104
109142
|
totalSize: {},
|
|
109105
109143
|
maxSelectedSize: { default: Infinity },
|
|
109106
|
-
selectMode: { default: SelectMode.DEFAULT }
|
|
109144
|
+
selectMode: { default: SelectMode.DEFAULT },
|
|
109145
|
+
draggable: { type: Boolean }
|
|
109107
109146
|
}, {
|
|
109108
109147
|
"selectedItems": { default: [] },
|
|
109109
109148
|
"selectedItemsModifiers": {}
|
|
@@ -109111,12 +109150,34 @@ var UiBmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
109111
109150
|
emits: /*@__PURE__*/ mergeModels([
|
|
109112
109151
|
"clickHeader",
|
|
109113
109152
|
"selectAll",
|
|
109114
|
-
"clearSelection"
|
|
109153
|
+
"clearSelection",
|
|
109154
|
+
"reorder",
|
|
109155
|
+
"selectionIndicesUpdate"
|
|
109115
109156
|
], ["update:selectedItems"]),
|
|
109116
109157
|
setup(__props, { emit: __emit }) {
|
|
109117
109158
|
const props = __props;
|
|
109118
109159
|
const selectedItems = useModel(__props, "selectedItems");
|
|
109119
109160
|
const emits = __emit;
|
|
109161
|
+
const dragSourceIndex = ref(null);
|
|
109162
|
+
const dragTargetIndex = ref(null);
|
|
109163
|
+
const isDraggingDown = computed(() => dragSourceIndex.value !== null && dragTargetIndex.value !== null && dragSourceIndex.value < dragTargetIndex.value);
|
|
109164
|
+
const onRowDragStart = (index) => {
|
|
109165
|
+
dragSourceIndex.value = index;
|
|
109166
|
+
};
|
|
109167
|
+
const onRowDragOver = (index) => {
|
|
109168
|
+
dragTargetIndex.value = index;
|
|
109169
|
+
};
|
|
109170
|
+
const onRowDragEnd = () => {
|
|
109171
|
+
if (dragSourceIndex.value !== null && dragTargetIndex.value !== null && dragSourceIndex.value !== dragTargetIndex.value) {
|
|
109172
|
+
const reordered = [...props.items];
|
|
109173
|
+
const [moved] = reordered.splice(dragSourceIndex.value, 1);
|
|
109174
|
+
reordered.splice(dragTargetIndex.value, 0, moved);
|
|
109175
|
+
if (selectedItems.value.length > 0) emits("selectionIndicesUpdate", reordered.map((item, i) => selectedItems.value.includes(item) ? i : -1).filter((i) => i !== -1));
|
|
109176
|
+
emits("reorder", reordered);
|
|
109177
|
+
}
|
|
109178
|
+
dragSourceIndex.value = null;
|
|
109179
|
+
dragTargetIndex.value = null;
|
|
109180
|
+
};
|
|
109120
109181
|
const pagination = ref(null);
|
|
109121
109182
|
const isFocusOnPagination = () => pagination.value?.contains(document.activeElement);
|
|
109122
109183
|
watch(() => props.items, async function keepFocusOnPaginationWhenUsed(newVal, oldVal) {
|
|
@@ -109225,38 +109286,45 @@ var UiBmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
109225
109286
|
class: normalizeClass(tableClass.value),
|
|
109226
109287
|
ref_key: "mainComponent",
|
|
109227
109288
|
ref: mainComponent
|
|
109228
|
-
}, [createElementVNode("thead", _hoisted_10$1, [createElementVNode("tr", _hoisted_11$1, [
|
|
109229
|
-
|
|
109230
|
-
|
|
109231
|
-
|
|
109232
|
-
|
|
109233
|
-
|
|
109234
|
-
|
|
109235
|
-
|
|
109236
|
-
|
|
109237
|
-
|
|
109238
|
-
|
|
109239
|
-
|
|
109240
|
-
|
|
109241
|
-
|
|
109242
|
-
|
|
109243
|
-
|
|
109244
|
-
|
|
109245
|
-
|
|
109246
|
-
|
|
109247
|
-
|
|
109248
|
-
|
|
109249
|
-
|
|
109250
|
-
|
|
109251
|
-
|
|
109252
|
-
|
|
109253
|
-
|
|
109254
|
-
|
|
109255
|
-
|
|
109256
|
-
|
|
109257
|
-
|
|
109258
|
-
|
|
109259
|
-
|
|
109289
|
+
}, [createElementVNode("thead", _hoisted_10$1, [createElementVNode("tr", _hoisted_11$1, [
|
|
109290
|
+
__props.draggable ? (openBlock(), createElementBlock("th", _hoisted_12$1)) : createCommentVNode("", true),
|
|
109291
|
+
__props.selectable ? (openBlock(), createElementBlock("th", _hoisted_13$1, [__props.selectMode !== unref(SelectMode).SINGLE ? (openBlock(), createBlock(UiBmsInputCheckbox_default, {
|
|
109292
|
+
key: 0,
|
|
109293
|
+
name: "select-all",
|
|
109294
|
+
disabled: __props.items.length === 0 || __props.selectableDisabled,
|
|
109295
|
+
"onUpdate:modelValue": [onToggleSelectAllCurrentItems, _cache[0] || (_cache[0] = ($event) => areAllCurrentItemsSelected.value = $event)],
|
|
109296
|
+
modelValue: areAllCurrentItemsSelected.value
|
|
109297
|
+
}, null, 8, ["disabled", "modelValue"])) : createCommentVNode("", true)])) : createCommentVNode("", true),
|
|
109298
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(filteredHeaders.value, (header) => {
|
|
109299
|
+
return openBlock(), createElementBlock("th", {
|
|
109300
|
+
style: normalizeStyle({ "--table-cell-width": header?.width || void 0 }),
|
|
109301
|
+
class: normalizeClass(unref(getHeaderClasses)(header, __props.draggable ? {
|
|
109302
|
+
key: null,
|
|
109303
|
+
value: unref(SortValue).default
|
|
109304
|
+
} : __props.sort)),
|
|
109305
|
+
key: header.label,
|
|
109306
|
+
onClick: ($event) => !__props.draggable && emits("clickHeader", header)
|
|
109307
|
+
}, [createElementVNode("span", _hoisted_15$1, [
|
|
109308
|
+
createTextVNode(toDisplayString(header.label) + " ", 1),
|
|
109309
|
+
header.helperText ? (openBlock(), createBlock(unref(BmsTooltip_default), {
|
|
109310
|
+
key: 0,
|
|
109311
|
+
tooltipText: header.helperText
|
|
109312
|
+
}, {
|
|
109313
|
+
default: withCtx(() => [createElementVNode("span", {
|
|
109314
|
+
class: "header-content-helper",
|
|
109315
|
+
onClick: _cache[1] || (_cache[1] = withModifiers(() => {}, ["stop"])),
|
|
109316
|
+
onPointerdown: _cache[2] || (_cache[2] = withModifiers(() => {}, ["stop"]))
|
|
109317
|
+
}, [createVNode(unref(CircleQuestionMark), { size: 18 })], 32)]),
|
|
109318
|
+
_: 1
|
|
109319
|
+
}, 8, ["tooltipText"])) : createCommentVNode("", true),
|
|
109320
|
+
header.sortable && !__props.draggable ? (openBlock(), createBlock(resolveDynamicComponent(getSortComponent(header)), {
|
|
109321
|
+
key: 1,
|
|
109322
|
+
size: 18,
|
|
109323
|
+
class: "header-content-sort"
|
|
109324
|
+
})) : createCommentVNode("", true)
|
|
109325
|
+
])], 14, _hoisted_14$1);
|
|
109326
|
+
}), 128))
|
|
109327
|
+
])], 512), createElementVNode("tbody", _hoisted_16$1, [__props.items.length ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(__props.items, (item, index) => {
|
|
109260
109328
|
return openBlock(), createElementBlock(Fragment, { key: item }, [createVNode(UiBmsTableRow_default, {
|
|
109261
109329
|
item,
|
|
109262
109330
|
"selected-items": selectedItems.value,
|
|
@@ -109265,7 +109333,16 @@ var UiBmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
109265
109333
|
"select-mode": __props.selectMode,
|
|
109266
109334
|
"selectable-disabled": __props.selectableDisabled,
|
|
109267
109335
|
dense: __props.mode === unref(TableMode).DENSE || __props.mode === unref(TableMode).SMALL,
|
|
109268
|
-
|
|
109336
|
+
draggable: __props.draggable,
|
|
109337
|
+
class: normalizeClass({
|
|
109338
|
+
"bms-table__row--drag-insert-after": __props.draggable && dragTargetIndex.value === index && dragSourceIndex.value !== index && isDraggingDown.value,
|
|
109339
|
+
"bms-table__row--drag-insert-before": __props.draggable && dragTargetIndex.value === index && dragSourceIndex.value !== index && !isDraggingDown.value
|
|
109340
|
+
}),
|
|
109341
|
+
onSelect: onItemSelect,
|
|
109342
|
+
onDragStart: ($event) => onRowDragStart(index),
|
|
109343
|
+
onDragOver: ($event) => onRowDragOver(index),
|
|
109344
|
+
onDragEnd: onRowDragEnd,
|
|
109345
|
+
onDrop: onRowDragEnd
|
|
109269
109346
|
}, createSlots({
|
|
109270
109347
|
default: withCtx(({ row }) => [renderSlot(_ctx.$slots, "default", { row }, void 0, true)]),
|
|
109271
109348
|
_: 2
|
|
@@ -109281,7 +109358,11 @@ var UiBmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
109281
109358
|
"headers",
|
|
109282
109359
|
"select-mode",
|
|
109283
109360
|
"selectable-disabled",
|
|
109284
|
-
"dense"
|
|
109361
|
+
"dense",
|
|
109362
|
+
"draggable",
|
|
109363
|
+
"class",
|
|
109364
|
+
"onDragStart",
|
|
109365
|
+
"onDragOver"
|
|
109285
109366
|
]), item?.childElement ? renderSlot(_ctx.$slots, "child-element", { key: 0 }, () => [createVNode(UiBmsTableRow_default, {
|
|
109286
109367
|
"is-child-element": "",
|
|
109287
109368
|
item,
|
|
@@ -109290,6 +109371,7 @@ var UiBmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
109290
109371
|
headers: filteredHeaders.value,
|
|
109291
109372
|
"select-mode": __props.selectMode,
|
|
109292
109373
|
"selectable-disabled": __props.selectableDisabled,
|
|
109374
|
+
draggable: __props.draggable,
|
|
109293
109375
|
onSelect: onItemSelect
|
|
109294
109376
|
}, createSlots({ _: 2 }, [renderList(__props.headers, (cell) => {
|
|
109295
109377
|
return {
|
|
@@ -109302,12 +109384,13 @@ var UiBmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
109302
109384
|
"selectable",
|
|
109303
109385
|
"headers",
|
|
109304
109386
|
"select-mode",
|
|
109305
|
-
"selectable-disabled"
|
|
109387
|
+
"selectable-disabled",
|
|
109388
|
+
"draggable"
|
|
109306
109389
|
])], true) : createCommentVNode("", true)], 64);
|
|
109307
|
-
}), 128)) : (openBlock(), createElementBlock("tr",
|
|
109308
|
-
colspan: __props.selectable ?
|
|
109390
|
+
}), 128)) : (openBlock(), createElementBlock("tr", _hoisted_17, [createElementVNode("td", {
|
|
109391
|
+
colspan: filteredHeaders.value.length + (__props.selectable ? 1 : 0) + (__props.draggable ? 1 : 0),
|
|
109309
109392
|
class: "bms-table__cell bms-table__cell--empty"
|
|
109310
|
-
}, [!props.loading ? renderSlot(_ctx.$slots, "empty", { key: 0 }, () => [_cache[5] || (_cache[5] = createTextVNode("Aucune donnée", -1))], true) : createCommentVNode("", true)], 8,
|
|
109393
|
+
}, [!props.loading ? renderSlot(_ctx.$slots, "empty", { key: 0 }, () => [_cache[5] || (_cache[5] = createTextVNode("Aucune donnée", -1))], true) : createCommentVNode("", true)], 8, _hoisted_18)]))])], 2)) : createCommentVNode("", true),
|
|
109311
109394
|
createElementVNode("div", {
|
|
109312
109395
|
ref_key: "pagination",
|
|
109313
109396
|
ref: pagination,
|
|
@@ -109318,7 +109401,7 @@ var UiBmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__P
|
|
|
109318
109401
|
]);
|
|
109319
109402
|
};
|
|
109320
109403
|
}
|
|
109321
|
-
}), [["__scopeId", "data-v-
|
|
109404
|
+
}), [["__scopeId", "data-v-c883a5f1"]]);
|
|
109322
109405
|
//#endregion
|
|
109323
109406
|
//#region src/components/table/UiFilterButton.vue?vue&type=script&setup=true&lang.ts
|
|
109324
109407
|
var _hoisted_1$10 = { class: "filter-button-container" };
|
|
@@ -110185,11 +110268,11 @@ var numberIsBetween = (itemValue, filter) => {
|
|
|
110185
110268
|
//#region src/composables/search.composable.ts
|
|
110186
110269
|
var FILTER_KEY = "bms-ui-filter";
|
|
110187
110270
|
var FILTER_SEARCH_KEY = `${FILTER_KEY}-search`;
|
|
110188
|
-
var useSearch = (persistent = true, defaultFilters = [], defaultFiltersOpened = false) => {
|
|
110271
|
+
var useSearch = (persistent = true, defaultFilters = [], defaultFiltersOpened = false, defaultSearch = "") => {
|
|
110189
110272
|
const route = useRoute();
|
|
110190
110273
|
const userPref = useUserPref();
|
|
110191
110274
|
const reflect = ref(unref(persistent));
|
|
110192
|
-
const search = ref("");
|
|
110275
|
+
const search = ref(unref(defaultSearch) ?? "");
|
|
110193
110276
|
const filters = ref(unref(defaultFilters));
|
|
110194
110277
|
const isFilterVisible = ref(unref(defaultFiltersOpened));
|
|
110195
110278
|
const isMounting = ref(true);
|
|
@@ -110265,6 +110348,9 @@ var useSearch = (persistent = true, defaultFilters = [], defaultFiltersOpened =
|
|
|
110265
110348
|
userPref.saveUserPref(savedFilterName, filter.value, route.path);
|
|
110266
110349
|
});
|
|
110267
110350
|
};
|
|
110351
|
+
watch(() => unref(defaultSearch), (newDefault) => {
|
|
110352
|
+
search.value = newDefault ?? "";
|
|
110353
|
+
});
|
|
110268
110354
|
watch(search, () => {
|
|
110269
110355
|
if (reflect.value) {
|
|
110270
110356
|
reflectSearchToPath(search.value, FILTER_SEARCH_KEY);
|
|
@@ -110281,7 +110367,7 @@ var useSearch = (persistent = true, defaultFilters = [], defaultFiltersOpened =
|
|
|
110281
110367
|
if (reflect.value) {
|
|
110282
110368
|
const searchParams = new URLSearchParams(window.location.search);
|
|
110283
110369
|
if (searchParams.get(FILTER_SEARCH_KEY)) search.value = searchParams.get(FILTER_SEARCH_KEY) || "";
|
|
110284
|
-
if (!
|
|
110370
|
+
else if (!hasFiltersInUrl()) search.value = userPref.getUserPref(FILTER_SEARCH_KEY, route.path) || unref(defaultSearch) || "";
|
|
110285
110371
|
}
|
|
110286
110372
|
};
|
|
110287
110373
|
const resetAllFilters = () => {
|
|
@@ -114454,7 +114540,9 @@ var BmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
114454
114540
|
default: false
|
|
114455
114541
|
},
|
|
114456
114542
|
selectMode: { default: SelectMode.DEFAULT },
|
|
114457
|
-
customSearch: {}
|
|
114543
|
+
customSearch: {},
|
|
114544
|
+
draggable: { type: Boolean },
|
|
114545
|
+
searchDefault: {}
|
|
114458
114546
|
}, {
|
|
114459
114547
|
"selectedItems": {
|
|
114460
114548
|
required: false,
|
|
@@ -114466,7 +114554,8 @@ var BmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
114466
114554
|
"deleteSavedFilter",
|
|
114467
114555
|
"saveFilter",
|
|
114468
114556
|
"filterInput",
|
|
114469
|
-
"filterChange"
|
|
114557
|
+
"filterChange",
|
|
114558
|
+
"reorder"
|
|
114470
114559
|
], ["update:selectedItems"]),
|
|
114471
114560
|
setup(__props, { emit: __emit }) {
|
|
114472
114561
|
const route = useRoute();
|
|
@@ -114474,7 +114563,7 @@ var BmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
114474
114563
|
const props = __props;
|
|
114475
114564
|
const { items, size, pagination, currentPage, paginationsOptions, currentItems, totalPages, goToPage, isMounting: isPaginationMounting } = usePagination(props.persistent, props.size, props.pagination);
|
|
114476
114565
|
const { sortItems, changeSort, sort, isMounting: isSortMounting } = useSort(props.persistent, props.headers, props.defaultSort);
|
|
114477
|
-
const { search, reflect, filters, isFilterVisible, numberOfActiveFilters, isMounting: isSearchMounting, toggleFilters, filterItems, isSavedFilterActive, resetFilters, selectSavedFilter, resetAllFilters, updateFiltersFromProps } = useSearch(props.persistent, props.filters, props.defaultFiltersOpened);
|
|
114566
|
+
const { search, reflect, filters, isFilterVisible, numberOfActiveFilters, isMounting: isSearchMounting, toggleFilters, filterItems, isSavedFilterActive, resetFilters, selectSavedFilter, resetAllFilters, updateFiltersFromProps } = useSearch(props.persistent, props.filters, props.defaultFiltersOpened, toRef(props, "searchDefault"));
|
|
114478
114567
|
const emits = __emit;
|
|
114479
114568
|
const selectedItems = useModel(__props, "selectedItems");
|
|
114480
114569
|
const emptyText = computed(() => ({
|
|
@@ -114483,7 +114572,8 @@ var BmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
114483
114572
|
}));
|
|
114484
114573
|
const getFilteredItems = () => {
|
|
114485
114574
|
const applySearch = props.customSearch ? (item) => props.customSearch(item, search.value) : (item) => bmsDefaultSearchFilterFunction(item, search.value);
|
|
114486
|
-
|
|
114575
|
+
const filtered = filterItems(props.items).filter(applySearch);
|
|
114576
|
+
return props.draggable ? filtered : sortItems(filtered);
|
|
114487
114577
|
};
|
|
114488
114578
|
const isMounting = ref(true);
|
|
114489
114579
|
watch(() => props.filters, () => {
|
|
@@ -114507,10 +114597,18 @@ var BmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
114507
114597
|
watch(route, () => {
|
|
114508
114598
|
if (!isMounting.value && true) resetAllFilters();
|
|
114509
114599
|
});
|
|
114600
|
+
const pendingSelectionIndices = ref(null);
|
|
114601
|
+
const onSelectionIndicesUpdate = (indices) => {
|
|
114602
|
+
pendingSelectionIndices.value = indices;
|
|
114603
|
+
};
|
|
114510
114604
|
watch(() => props.items, () => {
|
|
114511
114605
|
if (!isMounting.value) {
|
|
114512
114606
|
items.value = getFilteredItems();
|
|
114513
|
-
selectedItems.value = [];
|
|
114607
|
+
if (!props.draggable) selectedItems.value = [];
|
|
114608
|
+
else if (pendingSelectionIndices.value !== null) {
|
|
114609
|
+
selectedItems.value = pendingSelectionIndices.value.map((i) => items.value[i]).filter(Boolean);
|
|
114610
|
+
pendingSelectionIndices.value = null;
|
|
114611
|
+
} else selectedItems.value = [];
|
|
114514
114612
|
}
|
|
114515
114613
|
});
|
|
114516
114614
|
watchEffect(() => {
|
|
@@ -114553,12 +114651,15 @@ var BmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
114553
114651
|
selectedItems: selectedItems.value,
|
|
114554
114652
|
"onUpdate:selectedItems": _cache[6] || (_cache[6] = ($event) => selectedItems.value = $event),
|
|
114555
114653
|
loading: __props.loading,
|
|
114556
|
-
items: unref(currentItems),
|
|
114654
|
+
items: __props.draggable ? unref(items) : unref(currentItems),
|
|
114557
114655
|
headers: __props.headers,
|
|
114558
114656
|
mode: __props.mode,
|
|
114559
114657
|
hasFilters: unref(filters).length > 0,
|
|
114560
114658
|
sort: unref(sort),
|
|
114561
114659
|
selectable: __props.selectable,
|
|
114660
|
+
draggable: __props.draggable,
|
|
114661
|
+
onReorder: _cache[7] || (_cache[7] = ($event) => emits("reorder", $event)),
|
|
114662
|
+
onSelectionIndicesUpdate,
|
|
114562
114663
|
selectableDisabled: __props.selectableDisabled,
|
|
114563
114664
|
totalSize: totalSize.value,
|
|
114564
114665
|
selectMode: __props.selectMode,
|
|
@@ -114657,13 +114758,14 @@ var BmsTable_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
|
|
|
114657
114758
|
"hasFilters",
|
|
114658
114759
|
"sort",
|
|
114659
114760
|
"selectable",
|
|
114761
|
+
"draggable",
|
|
114660
114762
|
"selectableDisabled",
|
|
114661
114763
|
"totalSize",
|
|
114662
114764
|
"selectMode"
|
|
114663
114765
|
]);
|
|
114664
114766
|
};
|
|
114665
114767
|
}
|
|
114666
|
-
}), [["__scopeId", "data-v-
|
|
114768
|
+
}), [["__scopeId", "data-v-e5a8eec2"]]);
|
|
114667
114769
|
//#endregion
|
|
114668
114770
|
//#region src/components/utils/BmsCocarde.vue
|
|
114669
114771
|
var BmsCocarde_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
|