@g1cloud/bluesea 5.0.0-alpha.51 → 5.0.0-alpha.53
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/css/component.scss +11 -0
- package/dist/{AddressSearchModal-Dhrg9zFz.js → AddressSearchModal-gcoqKeMx.js} +1 -1
- package/dist/{BSAlertModal-CeAHPZr3.js → BSAlertModal-CwvyCcmO.js} +1 -1
- package/dist/{BSYesNoModal-DmAqwhlo.js → BSYesNoModal-GytpCQ1j.js} +1 -1
- package/dist/bluesea.js +1 -1
- package/dist/bluesea.umd.cjs +144 -42
- package/dist/component/grid/BSGrid.vue.d.ts +19 -7
- package/dist/component/grid/BSGridCellEdit.vue.d.ts +2 -0
- package/dist/component/grid/BSGridRow.vue.d.ts +6 -0
- package/dist/component/grid/GridModel.d.ts +15 -0
- package/dist/component/input/BSMultiSelect.vue.d.ts +3 -3
- package/dist/component/input/BSSelect.vue.d.ts +3 -3
- package/dist/component/input/BSSelectPopup.vue.d.ts +3 -3
- package/dist/component/input/BSTreeMultiSelect.vue.d.ts +3 -3
- package/dist/component/input/BSTreeSelect.vue.d.ts +3 -3
- package/dist/{index-C81TfBCL.js → index-30Eo6Aut.js} +148 -46
- package/dist/style.css +290 -0
- package/package.json +1 -1
package/css/component.scss
CHANGED
|
@@ -273,6 +273,17 @@
|
|
|
273
273
|
background-color: $gray-100 !important;
|
|
274
274
|
color: $gray-400 !important;
|
|
275
275
|
}
|
|
276
|
+
|
|
277
|
+
.small-progress {
|
|
278
|
+
font-family: $icon-font-family;
|
|
279
|
+
font-size: 0.9em;
|
|
280
|
+
position: absolute;
|
|
281
|
+
left: 100%;
|
|
282
|
+
top: 0;
|
|
283
|
+
padding: 0 2px;
|
|
284
|
+
color: $gray-400;
|
|
285
|
+
animation: spin 1s linear infinite;
|
|
286
|
+
}
|
|
276
287
|
}
|
|
277
288
|
|
|
278
289
|
// field error
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, ref, onMounted, openBlock, createBlock, withCtx, createElementVNode, createVNode, unref } from "vue";
|
|
2
|
-
import { S as SearchParam, P as PaginatedList, u as useModalHandle, _ as _sfc_main$1, a as _sfc_main$2, b as _sfc_main$3, B as BSButton, w as waitDuring } from "./index-
|
|
2
|
+
import { S as SearchParam, P as PaginatedList, u as useModalHandle, _ as _sfc_main$1, a as _sfc_main$2, b as _sfc_main$3, B as BSButton, w as waitDuring } from "./index-30Eo6Aut.js";
|
|
3
3
|
const gridColumns = [
|
|
4
4
|
{ propertyId: "zipCode", caption: "Zipcode", width: 80 },
|
|
5
5
|
{ propertyId: "address1", caption: "state/province/region", width: 150 },
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, openBlock, createBlock, withCtx, createElementVNode, withDirectives, createVNode, unref } from "vue";
|
|
2
|
-
import { u as useModalHandle, _ as _sfc_main$1, B as BSButton, v as vFocusOnLoad, c as vT } from "./index-
|
|
2
|
+
import { u as useModalHandle, _ as _sfc_main$1, B as BSButton, v as vFocusOnLoad, c as vT } from "./index-30Eo6Aut.js";
|
|
3
3
|
const _hoisted_1 = { class: "text-right" };
|
|
4
4
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
5
5
|
__name: "BSAlertModal",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, openBlock, createBlock, withCtx, createElementVNode, createVNode, withDirectives, unref } from "vue";
|
|
2
|
-
import { u as useModalHandle, _ as _sfc_main$1, B as BSButton, v as vFocusOnLoad, c as vT } from "./index-
|
|
2
|
+
import { u as useModalHandle, _ as _sfc_main$1, B as BSButton, v as vFocusOnLoad, c as vT } from "./index-30Eo6Aut.js";
|
|
3
3
|
const _hoisted_1 = { class: "text-right" };
|
|
4
4
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
5
5
|
__name: "BSYesNoModal",
|
package/dist/bluesea.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { aL, aM, d, a0, a4, B, L, q, r, k, a5, bi, o, p, K, e, b, I, a, a1, G, i, O, N, Y, b2, a2, _, H, W, X, V, U, T, z, Z, a3, m, l, g, D, n, j, s, t, F, y, M, $, E, J, h, Q, R, C, A, x, f, aT, aS, ac, a7, bm, a6, aj, ag, ad, aR, al, ak, bq, aP, ai, aQ, am, aO, aN, af, P, aH, S, at, by, b8, aU, a$, a_, aa, aK, ba, ab, bl, bn, ah, b5, ae, aq, ar, aZ, aE, aF, aG, aC, aD, aB, ay, av, bt, bg, bd, br, aX, a9, bz, bx, au, aY, ax, bA, aW, bs, b6, aV, bw, bo, b0, b4, aI, an, b9, bf, be, b7, bc, aw, as, bb, bv, bj, bk, bp, b1, b3, u, aJ, ao, ap, a8, c, az, aA, w, bu, bh } from "./index-
|
|
1
|
+
import { aL, aM, d, a0, a4, B, L, q, r, k, a5, bi, o, p, K, e, b, I, a, a1, G, i, O, N, Y, b2, a2, _, H, W, X, V, U, T, z, Z, a3, m, l, g, D, n, j, s, t, F, y, M, $, E, J, h, Q, R, C, A, x, f, aT, aS, ac, a7, bm, a6, aj, ag, ad, aR, al, ak, bq, aP, ai, aQ, am, aO, aN, af, P, aH, S, at, by, b8, aU, a$, a_, aa, aK, ba, ab, bl, bn, ah, b5, ae, aq, ar, aZ, aE, aF, aG, aC, aD, aB, ay, av, bt, bg, bd, br, aX, a9, bz, bx, au, aY, ax, bA, aW, bs, b6, aV, bw, bo, b0, b4, aI, an, b9, bf, be, b7, bc, aw, as, bb, bv, bj, bk, bp, b1, b3, u, aJ, ao, ap, a8, c, az, aA, w, bu, bh } from "./index-30Eo6Aut.js";
|
|
2
2
|
export {
|
|
3
3
|
aL as AbstractFilter,
|
|
4
4
|
aM as AndFilter,
|
package/dist/bluesea.umd.cjs
CHANGED
|
@@ -401,6 +401,9 @@ var __publicField = (obj, key, value) => {
|
|
|
401
401
|
};
|
|
402
402
|
}
|
|
403
403
|
});
|
|
404
|
+
function notNull(value) {
|
|
405
|
+
return value !== null && value !== void 0;
|
|
406
|
+
}
|
|
404
407
|
const _hoisted_1$15 = ["onMouseover", "onClick"];
|
|
405
408
|
const _hoisted_2$T = /* @__PURE__ */ vue.createElementVNode("span", { class: "checkbox" }, null, -1);
|
|
406
409
|
const _hoisted_3$x = {
|
|
@@ -421,25 +424,34 @@ var __publicField = (obj, key, value) => {
|
|
|
421
424
|
setup(__props, { emit: __emit }) {
|
|
422
425
|
const props = __props;
|
|
423
426
|
const emit = __emit;
|
|
424
|
-
const allItems = vue.
|
|
427
|
+
const allItems = vue.ref();
|
|
428
|
+
vue.watch(
|
|
429
|
+
() => props.items,
|
|
430
|
+
async () => {
|
|
431
|
+
const items = await props.items;
|
|
432
|
+
allItems.value = props.allowNull ? [void 0, ...items] : items;
|
|
433
|
+
},
|
|
434
|
+
{ immediate: true }
|
|
435
|
+
);
|
|
425
436
|
const findItemIndex = (target) => {
|
|
426
|
-
|
|
437
|
+
var _a;
|
|
438
|
+
return ((_a = allItems.value) == null ? void 0 : _a.findIndex((item) => {
|
|
427
439
|
if (item === void 0 && target === void 0)
|
|
428
440
|
return true;
|
|
429
441
|
else if (item && target)
|
|
430
442
|
return props.valueProvider(item) === props.valueProvider(target);
|
|
431
443
|
else
|
|
432
444
|
return false;
|
|
433
|
-
});
|
|
445
|
+
})) || -1;
|
|
434
446
|
};
|
|
435
447
|
const nextPopupItem = () => {
|
|
436
|
-
if (allItems.value.length > 0) {
|
|
448
|
+
if (allItems.value && allItems.value.length > 0) {
|
|
437
449
|
const index = findItemIndex(hoveredPopupItem.value) + 1;
|
|
438
450
|
hoveredPopupItem.value = allItems.value[index % allItems.value.length];
|
|
439
451
|
}
|
|
440
452
|
};
|
|
441
453
|
const prevPopupItem = () => {
|
|
442
|
-
if (allItems.value.length > 0) {
|
|
454
|
+
if (allItems.value && allItems.value.length > 0) {
|
|
443
455
|
const index = findItemIndex(hoveredPopupItem.value) + allItems.value.length - 1;
|
|
444
456
|
hoveredPopupItem.value = allItems.value[index % allItems.value.length];
|
|
445
457
|
}
|
|
@@ -477,8 +489,8 @@ var __publicField = (obj, key, value) => {
|
|
|
477
489
|
return false;
|
|
478
490
|
};
|
|
479
491
|
const selectPopupItem = (item) => {
|
|
480
|
-
if (item) {
|
|
481
|
-
item =
|
|
492
|
+
if (item && allItems.value) {
|
|
493
|
+
item = allItems.value.filter(notNull).find((it) => props.valueProvider(it) === props.valueProvider(item));
|
|
482
494
|
}
|
|
483
495
|
emit("itemSelected", item);
|
|
484
496
|
};
|
|
@@ -882,6 +894,10 @@ var __publicField = (obj, key, value) => {
|
|
|
882
894
|
class: "label"
|
|
883
895
|
};
|
|
884
896
|
const _hoisted_5$j = /* @__PURE__ */ vue.createElementVNode("span", { class: "dropdown-btn" }, "expand_more", -1);
|
|
897
|
+
const _hoisted_6$d = {
|
|
898
|
+
key: 2,
|
|
899
|
+
class: "small-progress"
|
|
900
|
+
};
|
|
885
901
|
const _sfc_main$1i = /* @__PURE__ */ vue.defineComponent({
|
|
886
902
|
__name: "BSSelect",
|
|
887
903
|
props: {
|
|
@@ -903,6 +919,17 @@ var __publicField = (obj, key, value) => {
|
|
|
903
919
|
setup(__props, { emit: __emit }) {
|
|
904
920
|
const props = __props;
|
|
905
921
|
const emit = __emit;
|
|
922
|
+
const allItems = vue.ref();
|
|
923
|
+
const loadingItems = vue.ref(false);
|
|
924
|
+
vue.watch(
|
|
925
|
+
() => props.items,
|
|
926
|
+
async () => {
|
|
927
|
+
loadingItems.value = true;
|
|
928
|
+
allItems.value = await props.items;
|
|
929
|
+
loadingItems.value = false;
|
|
930
|
+
},
|
|
931
|
+
{ immediate: true }
|
|
932
|
+
);
|
|
906
933
|
const itemLabel = (item) => {
|
|
907
934
|
return props.labelProvider ? props.labelProvider(item) : String(item);
|
|
908
935
|
};
|
|
@@ -910,7 +937,8 @@ var __publicField = (obj, key, value) => {
|
|
|
910
937
|
return props.valueProvider ? props.valueProvider(item) : item;
|
|
911
938
|
};
|
|
912
939
|
const findItemFromValue = (value) => {
|
|
913
|
-
|
|
940
|
+
var _a;
|
|
941
|
+
return value ? (_a = allItems.value) == null ? void 0 : _a.find((item) => itemValue(item) === value) : void 0;
|
|
914
942
|
};
|
|
915
943
|
const isEmpty2 = vue.computed(() => !props.modelValue);
|
|
916
944
|
const selectedItem = vue.computed(() => findItemFromValue(props.modelValue));
|
|
@@ -994,7 +1022,8 @@ var __publicField = (obj, key, value) => {
|
|
|
994
1022
|
]) : vue.withDirectives((vue.openBlock(), vue.createElementBlock("span", _hoisted_4$n, null, 512)), [
|
|
995
1023
|
[vue.unref(vT), selectedItemLabel.value]
|
|
996
1024
|
]),
|
|
997
|
-
_hoisted_5$j
|
|
1025
|
+
_hoisted_5$j,
|
|
1026
|
+
loadingItems.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$d, "progress_activity")) : vue.createCommentVNode("", true)
|
|
998
1027
|
], 512),
|
|
999
1028
|
!_ctx.disabled && showPopup.value ? (vue.openBlock(), vue.createBlock(_sfc_main$1k, {
|
|
1000
1029
|
key: 0,
|
|
@@ -2021,7 +2050,7 @@ var __publicField = (obj, key, value) => {
|
|
|
2021
2050
|
class: "input-area"
|
|
2022
2051
|
};
|
|
2023
2052
|
const _hoisted_5$h = ["id", "autocomplete", "disabled", "maxlength", "name", "tabindex", "value"];
|
|
2024
|
-
const _hoisted_6$
|
|
2053
|
+
const _hoisted_6$c = ["textContent"];
|
|
2025
2054
|
const _sfc_main$18 = /* @__PURE__ */ vue.defineComponent({
|
|
2026
2055
|
__name: "BSPriceInput",
|
|
2027
2056
|
props: {
|
|
@@ -2177,7 +2206,7 @@ var __publicField = (obj, key, value) => {
|
|
|
2177
2206
|
vue.createElementVNode("div", {
|
|
2178
2207
|
class: "currency-code",
|
|
2179
2208
|
textContent: vue.toDisplayString(currencyCode.value)
|
|
2180
|
-
}, null, 8, _hoisted_6$
|
|
2209
|
+
}, null, 8, _hoisted_6$c)
|
|
2181
2210
|
])),
|
|
2182
2211
|
vue.createVNode(_sfc_main$1j, { errors: vue.unref(errors) }, null, 8, ["errors"])
|
|
2183
2212
|
], 6);
|
|
@@ -2351,7 +2380,7 @@ var __publicField = (obj, key, value) => {
|
|
|
2351
2380
|
const _hoisted_3$p = /* @__PURE__ */ vue.createElementVNode("span", { class: "font-icon" }, "calendar_month", -1);
|
|
2352
2381
|
const _hoisted_4$h = ["id", "disabled", "maxlength", "name", "tabindex", "value"];
|
|
2353
2382
|
const _hoisted_5$g = /* @__PURE__ */ vue.createElementVNode("span", { class: "px-4" }, "~", -1);
|
|
2354
|
-
const _hoisted_6$
|
|
2383
|
+
const _hoisted_6$b = ["id", "disabled", "maxlength", "name", "tabindex", "value"];
|
|
2355
2384
|
const _sfc_main$16 = /* @__PURE__ */ vue.defineComponent({
|
|
2356
2385
|
__name: "BSDateRange",
|
|
2357
2386
|
props: {
|
|
@@ -2572,7 +2601,7 @@ var __publicField = (obj, key, value) => {
|
|
|
2572
2601
|
tabindex: _ctx.tabindex,
|
|
2573
2602
|
value: focusedTo.value ? vue.unref(stringValueTo) : formattedTo.value,
|
|
2574
2603
|
type: "text"
|
|
2575
|
-
}, vue.toHandlers(handlersTo, true)), null, 16, _hoisted_6$
|
|
2604
|
+
}, vue.toHandlers(handlersTo, true)), null, 16, _hoisted_6$b), [
|
|
2576
2605
|
[
|
|
2577
2606
|
vue.unref(vT),
|
|
2578
2607
|
_ctx.placeholderTo,
|
|
@@ -3000,9 +3029,6 @@ var __publicField = (obj, key, value) => {
|
|
|
3000
3029
|
};
|
|
3001
3030
|
}
|
|
3002
3031
|
});
|
|
3003
|
-
function notNull(value) {
|
|
3004
|
-
return value !== null && value !== void 0;
|
|
3005
|
-
}
|
|
3006
3032
|
const _hoisted_1$R = ["tabindex", "onKeydown"];
|
|
3007
3033
|
const _hoisted_2$F = { key: 0 };
|
|
3008
3034
|
const _hoisted_3$m = {
|
|
@@ -3011,6 +3037,10 @@ var __publicField = (obj, key, value) => {
|
|
|
3011
3037
|
};
|
|
3012
3038
|
const _hoisted_4$g = { key: 1 };
|
|
3013
3039
|
const _hoisted_5$f = /* @__PURE__ */ vue.createElementVNode("span", { class: "dropdown-btn" }, "expand_more", -1);
|
|
3040
|
+
const _hoisted_6$a = {
|
|
3041
|
+
key: 2,
|
|
3042
|
+
class: "small-progress"
|
|
3043
|
+
};
|
|
3014
3044
|
const _sfc_main$10 = /* @__PURE__ */ vue.defineComponent({
|
|
3015
3045
|
__name: "BSMultiSelect",
|
|
3016
3046
|
props: {
|
|
@@ -3032,6 +3062,17 @@ var __publicField = (obj, key, value) => {
|
|
|
3032
3062
|
var _a;
|
|
3033
3063
|
const props = __props;
|
|
3034
3064
|
const emit = __emit;
|
|
3065
|
+
const allItems = vue.ref();
|
|
3066
|
+
const loadingItems = vue.ref(false);
|
|
3067
|
+
vue.watch(
|
|
3068
|
+
() => props.items,
|
|
3069
|
+
async () => {
|
|
3070
|
+
loadingItems.value = true;
|
|
3071
|
+
allItems.value = await props.items;
|
|
3072
|
+
loadingItems.value = false;
|
|
3073
|
+
},
|
|
3074
|
+
{ immediate: true }
|
|
3075
|
+
);
|
|
3035
3076
|
const itemLabel = (item) => {
|
|
3036
3077
|
return executeLabelProviderOrDefault(item, props.labelProvider, () => String(item));
|
|
3037
3078
|
};
|
|
@@ -3042,7 +3083,8 @@ var __publicField = (obj, key, value) => {
|
|
|
3042
3083
|
return executeKeyProviderOrDefault(item, props.keyProvider, () => String(item));
|
|
3043
3084
|
};
|
|
3044
3085
|
const findItemFromValue = (value) => {
|
|
3045
|
-
|
|
3086
|
+
var _a2;
|
|
3087
|
+
return value ? (_a2 = allItems.value) == null ? void 0 : _a2.find((item) => itemValue(item) === value) : void 0;
|
|
3046
3088
|
};
|
|
3047
3089
|
const isEmpty2 = vue.computed(() => !props.modelValue || props.modelValue.length === 0);
|
|
3048
3090
|
const selectedItems = vue.computed(() => props.modelValue.map(findItemFromValue).filter(notNull));
|
|
@@ -3063,13 +3105,13 @@ var __publicField = (obj, key, value) => {
|
|
|
3063
3105
|
keyboardHandler(event);
|
|
3064
3106
|
};
|
|
3065
3107
|
const itemSelected = (item) => {
|
|
3066
|
-
if (item) {
|
|
3108
|
+
if (item && allItems.value) {
|
|
3067
3109
|
let newItems = [...selectedItems.value];
|
|
3068
3110
|
const index = newItems.indexOf(item);
|
|
3069
3111
|
if (index >= 0) {
|
|
3070
3112
|
newItems.splice(index, 1);
|
|
3071
3113
|
} else {
|
|
3072
|
-
newItems =
|
|
3114
|
+
newItems = allItems.value.filter((it) => newItems.includes(it) || it === item);
|
|
3073
3115
|
}
|
|
3074
3116
|
const values = newItems.map(itemValue);
|
|
3075
3117
|
emit("update:modelValue", values);
|
|
@@ -3149,7 +3191,8 @@ var __publicField = (obj, key, value) => {
|
|
|
3149
3191
|
]);
|
|
3150
3192
|
}), 128))
|
|
3151
3193
|
])),
|
|
3152
|
-
_hoisted_5$f
|
|
3194
|
+
_hoisted_5$f,
|
|
3195
|
+
loadingItems.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$a, "progress_activity")) : vue.createCommentVNode("", true)
|
|
3153
3196
|
], 512),
|
|
3154
3197
|
!_ctx.disabled && showPopup.value ? (vue.openBlock(), vue.createBlock(_sfc_main$1k, {
|
|
3155
3198
|
key: 0,
|
|
@@ -4084,6 +4127,10 @@ var __publicField = (obj, key, value) => {
|
|
|
4084
4127
|
class: "label"
|
|
4085
4128
|
};
|
|
4086
4129
|
const _hoisted_5$d = /* @__PURE__ */ vue.createElementVNode("span", { class: "dropdown-btn" }, "expand_more", -1);
|
|
4130
|
+
const _hoisted_6$9 = {
|
|
4131
|
+
key: 2,
|
|
4132
|
+
class: "small-progress"
|
|
4133
|
+
};
|
|
4087
4134
|
const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
|
|
4088
4135
|
__name: "BSTreeSelect",
|
|
4089
4136
|
props: {
|
|
@@ -4106,6 +4153,17 @@ var __publicField = (obj, key, value) => {
|
|
|
4106
4153
|
var _a;
|
|
4107
4154
|
const props = __props;
|
|
4108
4155
|
const emit = __emit;
|
|
4156
|
+
const allItems = vue.ref();
|
|
4157
|
+
const loadingItems = vue.ref(false);
|
|
4158
|
+
vue.watch(
|
|
4159
|
+
() => props.items,
|
|
4160
|
+
async () => {
|
|
4161
|
+
loadingItems.value = true;
|
|
4162
|
+
allItems.value = await props.items;
|
|
4163
|
+
loadingItems.value = false;
|
|
4164
|
+
},
|
|
4165
|
+
{ immediate: true }
|
|
4166
|
+
);
|
|
4109
4167
|
const itemLabel = (item) => {
|
|
4110
4168
|
return props.labelProvider ? props.labelProvider(item) : String(item);
|
|
4111
4169
|
};
|
|
@@ -4113,7 +4171,7 @@ var __publicField = (obj, key, value) => {
|
|
|
4113
4171
|
return props.valueProvider ? props.valueProvider(item) : item;
|
|
4114
4172
|
};
|
|
4115
4173
|
const findItemFromValue = (value) => {
|
|
4116
|
-
if (value) {
|
|
4174
|
+
if (value && allItems.value) {
|
|
4117
4175
|
let found2 = void 0;
|
|
4118
4176
|
componentUtil.acceptTreeItems(
|
|
4119
4177
|
(item) => {
|
|
@@ -4122,7 +4180,7 @@ var __publicField = (obj, key, value) => {
|
|
|
4122
4180
|
return true;
|
|
4123
4181
|
}
|
|
4124
4182
|
},
|
|
4125
|
-
|
|
4183
|
+
allItems.value,
|
|
4126
4184
|
(item) => props.childrenProvider(item)
|
|
4127
4185
|
);
|
|
4128
4186
|
return found2;
|
|
@@ -4136,7 +4194,7 @@ var __publicField = (obj, key, value) => {
|
|
|
4136
4194
|
if (!props.disabled && !props.viewMode) {
|
|
4137
4195
|
const shouldShow = show === void 0 ? !showPopup.value : show;
|
|
4138
4196
|
if (shouldShow) {
|
|
4139
|
-
treeHandler.setTreeData(
|
|
4197
|
+
treeHandler.setTreeData(allItems.value || [], true, true, 0);
|
|
4140
4198
|
treeHandler.selectItem(findItemFromValue(props.modelValue));
|
|
4141
4199
|
}
|
|
4142
4200
|
showPopup.value = shouldShow;
|
|
@@ -4220,7 +4278,8 @@ var __publicField = (obj, key, value) => {
|
|
|
4220
4278
|
]) : vue.withDirectives((vue.openBlock(), vue.createElementBlock("span", _hoisted_4$e, null, 512)), [
|
|
4221
4279
|
[vue.unref(vT), selectedItemLabel.value]
|
|
4222
4280
|
]),
|
|
4223
|
-
_hoisted_5$d
|
|
4281
|
+
_hoisted_5$d,
|
|
4282
|
+
loadingItems.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$9, "progress_activity")) : vue.createCommentVNode("", true)
|
|
4224
4283
|
], 512),
|
|
4225
4284
|
showPopup.value ? (vue.openBlock(), vue.createBlock(_sfc_main$1l, {
|
|
4226
4285
|
key: 0,
|
|
@@ -4249,6 +4308,10 @@ var __publicField = (obj, key, value) => {
|
|
|
4249
4308
|
class: "label"
|
|
4250
4309
|
};
|
|
4251
4310
|
const _hoisted_5$c = /* @__PURE__ */ vue.createElementVNode("span", { class: "dropdown-btn" }, "expand_more", -1);
|
|
4311
|
+
const _hoisted_6$8 = {
|
|
4312
|
+
key: 2,
|
|
4313
|
+
class: "small-progress"
|
|
4314
|
+
};
|
|
4252
4315
|
const _sfc_main$Y = /* @__PURE__ */ vue.defineComponent({
|
|
4253
4316
|
__name: "BSTreeMultiSelect",
|
|
4254
4317
|
props: {
|
|
@@ -4271,6 +4334,17 @@ var __publicField = (obj, key, value) => {
|
|
|
4271
4334
|
var _a;
|
|
4272
4335
|
const props = __props;
|
|
4273
4336
|
const emit = __emit;
|
|
4337
|
+
const allItems = vue.ref();
|
|
4338
|
+
const loadingItems = vue.ref(false);
|
|
4339
|
+
vue.watch(
|
|
4340
|
+
() => props.items,
|
|
4341
|
+
async () => {
|
|
4342
|
+
loadingItems.value = true;
|
|
4343
|
+
allItems.value = await props.items;
|
|
4344
|
+
loadingItems.value = false;
|
|
4345
|
+
},
|
|
4346
|
+
{ immediate: true }
|
|
4347
|
+
);
|
|
4274
4348
|
const itemLabel = (item) => {
|
|
4275
4349
|
return props.labelProvider ? props.labelProvider(item) : String(item);
|
|
4276
4350
|
};
|
|
@@ -4278,7 +4352,7 @@ var __publicField = (obj, key, value) => {
|
|
|
4278
4352
|
return props.valueProvider ? props.valueProvider(item) : item;
|
|
4279
4353
|
};
|
|
4280
4354
|
const findItemFromValue = (value) => {
|
|
4281
|
-
if (value) {
|
|
4355
|
+
if (value && allItems.value) {
|
|
4282
4356
|
let found2 = void 0;
|
|
4283
4357
|
componentUtil.acceptTreeItems(
|
|
4284
4358
|
(item) => {
|
|
@@ -4287,7 +4361,7 @@ var __publicField = (obj, key, value) => {
|
|
|
4287
4361
|
return true;
|
|
4288
4362
|
}
|
|
4289
4363
|
},
|
|
4290
|
-
|
|
4364
|
+
allItems.value,
|
|
4291
4365
|
(item) => props.childrenProvider(item)
|
|
4292
4366
|
);
|
|
4293
4367
|
return found2;
|
|
@@ -4301,7 +4375,7 @@ var __publicField = (obj, key, value) => {
|
|
|
4301
4375
|
if (!props.disabled && !props.viewMode) {
|
|
4302
4376
|
const shouldShow = show === void 0 ? !showPopup.value : show;
|
|
4303
4377
|
if (shouldShow) {
|
|
4304
|
-
treeHandler.setTreeData(
|
|
4378
|
+
treeHandler.setTreeData(allItems.value || [], true, true, 0);
|
|
4305
4379
|
treeHandler.selectItem(selectedItems.value);
|
|
4306
4380
|
}
|
|
4307
4381
|
showPopup.value = shouldShow;
|
|
@@ -4381,7 +4455,8 @@ var __publicField = (obj, key, value) => {
|
|
|
4381
4455
|
]) : vue.withDirectives((vue.openBlock(), vue.createElementBlock("span", _hoisted_4$d, null, 512)), [
|
|
4382
4456
|
[vue.unref(vT), selectedItemLabel.value]
|
|
4383
4457
|
]),
|
|
4384
|
-
_hoisted_5$c
|
|
4458
|
+
_hoisted_5$c,
|
|
4459
|
+
loadingItems.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$8, "progress_activity")) : vue.createCommentVNode("", true)
|
|
4385
4460
|
], 512),
|
|
4386
4461
|
showPopup.value ? (vue.openBlock(), vue.createBlock(_sfc_main$1l, {
|
|
4387
4462
|
key: 0,
|
|
@@ -30714,6 +30789,9 @@ img.ProseMirror-separator {
|
|
|
30714
30789
|
getDeletedRows() {
|
|
30715
30790
|
return this.selectDeleteSupport.deletedRows;
|
|
30716
30791
|
}
|
|
30792
|
+
isAddedRow(_row) {
|
|
30793
|
+
return false;
|
|
30794
|
+
}
|
|
30717
30795
|
addNewRow(_newRow) {
|
|
30718
30796
|
return -1;
|
|
30719
30797
|
}
|
|
@@ -30749,6 +30827,7 @@ img.ProseMirror-separator {
|
|
|
30749
30827
|
constructor(option) {
|
|
30750
30828
|
super(option);
|
|
30751
30829
|
__publicField(this, "editableSupport");
|
|
30830
|
+
this.grid.rowEditPolicy = option.isRowEditable;
|
|
30752
30831
|
this.editableSupport = new GridHandlerEditableSupport(
|
|
30753
30832
|
this.grid,
|
|
30754
30833
|
this.gridEventListener,
|
|
@@ -30767,6 +30846,9 @@ img.ProseMirror-separator {
|
|
|
30767
30846
|
getAddedRows() {
|
|
30768
30847
|
return this.editableSupport.getAddedRows();
|
|
30769
30848
|
}
|
|
30849
|
+
isAddedRow(row) {
|
|
30850
|
+
return this.editableSupport.isAddedRow(row);
|
|
30851
|
+
}
|
|
30770
30852
|
addNewRow(newRow) {
|
|
30771
30853
|
return this.editableSupport.addNewRow(newRow);
|
|
30772
30854
|
}
|
|
@@ -30858,6 +30940,7 @@ img.ProseMirror-separator {
|
|
|
30858
30940
|
constructor(option) {
|
|
30859
30941
|
super(option);
|
|
30860
30942
|
__publicField(this, "editableSupport");
|
|
30943
|
+
this.grid.rowEditPolicy = option.isRowEditable;
|
|
30861
30944
|
this.editableSupport = new GridHandlerEditableSupport(
|
|
30862
30945
|
this.grid,
|
|
30863
30946
|
this.gridEventListener,
|
|
@@ -31385,17 +31468,19 @@ img.ProseMirror-separator {
|
|
|
31385
31468
|
const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
|
|
31386
31469
|
__name: "BSGridCellEdit",
|
|
31387
31470
|
props: {
|
|
31388
|
-
isEditing: { type: Boolean }
|
|
31471
|
+
isEditing: { type: Boolean },
|
|
31472
|
+
showEditIcon: { type: Boolean }
|
|
31389
31473
|
},
|
|
31390
31474
|
emits: ["toggleEditMode"],
|
|
31391
31475
|
setup(__props, { emit: __emit }) {
|
|
31392
31476
|
return (_ctx, _cache) => {
|
|
31393
31477
|
return vue.openBlock(), vue.createElementBlock("td", _hoisted_1$A, [
|
|
31394
|
-
vue.
|
|
31478
|
+
_ctx.showEditIcon ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
31479
|
+
key: 0,
|
|
31395
31480
|
onClick: _cache[0] || (_cache[0] = vue.withModifiers(($event) => _ctx.$emit("toggleEditMode"), ["stop"]))
|
|
31396
31481
|
}, [
|
|
31397
31482
|
vue.createElementVNode("span", _hoisted_2$q, vue.toDisplayString(_ctx.isEditing ? "replay" : "stylus"), 1)
|
|
31398
|
-
])
|
|
31483
|
+
])) : vue.createCommentVNode("", true)
|
|
31399
31484
|
]);
|
|
31400
31485
|
};
|
|
31401
31486
|
}
|
|
@@ -31537,6 +31622,8 @@ img.ProseMirror-separator {
|
|
|
31537
31622
|
showDragHandle: { type: Boolean },
|
|
31538
31623
|
selectedRows: {},
|
|
31539
31624
|
editable: { type: Boolean },
|
|
31625
|
+
rowEditable: { type: Boolean },
|
|
31626
|
+
hideEditIcon: { type: Boolean },
|
|
31540
31627
|
editingRow: {},
|
|
31541
31628
|
isEditing: { type: Boolean },
|
|
31542
31629
|
selectOnClick: { type: Boolean }
|
|
@@ -31550,11 +31637,11 @@ img.ProseMirror-separator {
|
|
|
31550
31637
|
emit("toggleSelection", props.row);
|
|
31551
31638
|
};
|
|
31552
31639
|
const enterEditMode = () => {
|
|
31553
|
-
if (props.editable)
|
|
31640
|
+
if (props.editable && props.rowEditable)
|
|
31554
31641
|
emit("enterEditMode", props.row, savePoint);
|
|
31555
31642
|
};
|
|
31556
31643
|
const toggleEditMode = () => {
|
|
31557
|
-
if (props.editable) {
|
|
31644
|
+
if (props.editable && props.rowEditable) {
|
|
31558
31645
|
props.isEditing ? emit("cancelEditMode", props.row) : enterEditMode();
|
|
31559
31646
|
}
|
|
31560
31647
|
};
|
|
@@ -31610,11 +31697,12 @@ img.ProseMirror-separator {
|
|
|
31610
31697
|
checked: isRowSelected.value,
|
|
31611
31698
|
onClick: toggleSelection
|
|
31612
31699
|
}, null, 8, ["checked"])) : vue.createCommentVNode("", true),
|
|
31613
|
-
_ctx.editable ? (vue.openBlock(), vue.createBlock(_sfc_main$I, {
|
|
31700
|
+
_ctx.editable && !_ctx.hideEditIcon ? (vue.openBlock(), vue.createBlock(_sfc_main$I, {
|
|
31614
31701
|
key: 2,
|
|
31615
31702
|
"is-editing": _ctx.isEditing,
|
|
31703
|
+
"show-edit-icon": _ctx.rowEditable,
|
|
31616
31704
|
onToggleEditMode: toggleEditMode
|
|
31617
|
-
}, null, 8, ["is-editing"])) : vue.createCommentVNode("", true),
|
|
31705
|
+
}, null, 8, ["is-editing", "show-edit-icon"])) : vue.createCommentVNode("", true),
|
|
31618
31706
|
_ctx.showSerial ? (vue.openBlock(), vue.createBlock(_sfc_main$K, {
|
|
31619
31707
|
key: 3,
|
|
31620
31708
|
"serial-no": _ctx.rowIndex + (((_a = _ctx.pageInfo) == null ? void 0 : _a.offset) || 0) + 1
|
|
@@ -31688,11 +31776,13 @@ img.ProseMirror-separator {
|
|
|
31688
31776
|
keyProvider: { default: () => emptyKeyProvider },
|
|
31689
31777
|
selectedRows: {},
|
|
31690
31778
|
editable: { type: Boolean },
|
|
31779
|
+
hideEditIcon: { type: Boolean },
|
|
31691
31780
|
editingRows: {},
|
|
31781
|
+
rowEditPolicy: {},
|
|
31692
31782
|
alwaysEditing: { type: Boolean },
|
|
31693
31783
|
rowDisplayPolicy: {}
|
|
31694
31784
|
},
|
|
31695
|
-
emits: ["offsetChanged", "update:selectedRows", "update:editingRows", "changeEditingRow", "update:sorts"],
|
|
31785
|
+
emits: ["offsetChanged", "update:selectedRows", "changeSelectedRows", "update:editingRows", "changeEditingRow", "update:sorts"],
|
|
31696
31786
|
setup(__props, { emit: __emit }) {
|
|
31697
31787
|
const props = __props;
|
|
31698
31788
|
const emit = __emit;
|
|
@@ -31708,28 +31798,35 @@ img.ProseMirror-separator {
|
|
|
31708
31798
|
const toggleSelection = (row) => {
|
|
31709
31799
|
if (internalSelectedRows.has(row)) {
|
|
31710
31800
|
internalSelectedRows.delete(row);
|
|
31801
|
+
emit("changeSelectedRows", { allRows: false, targetRows: [row], selected: false });
|
|
31711
31802
|
} else {
|
|
31712
31803
|
if (props.singleSelect)
|
|
31713
31804
|
internalSelectedRows.clear();
|
|
31714
31805
|
internalSelectedRows.add(row);
|
|
31806
|
+
emit("changeSelectedRows", { allRows: false, targetRows: [row], selected: true });
|
|
31715
31807
|
}
|
|
31716
31808
|
emit("update:selectedRows", internalSelectedRows);
|
|
31717
31809
|
};
|
|
31718
31810
|
const toggleAllSelection = () => {
|
|
31719
31811
|
if (internalSelectedRows.size > 0) {
|
|
31720
31812
|
internalSelectedRows.clear();
|
|
31813
|
+
emit("changeSelectedRows", { allRows: true, selected: false });
|
|
31721
31814
|
} else {
|
|
31722
31815
|
if (props.singleSelect) {
|
|
31723
|
-
if (props.data[0])
|
|
31816
|
+
if (props.data[0]) {
|
|
31724
31817
|
internalSelectedRows.add(props.data[0]);
|
|
31818
|
+
emit("changeSelectedRows", { allRows: false, targetRows: [props.data[0]], selected: true });
|
|
31819
|
+
}
|
|
31725
31820
|
} else {
|
|
31726
31821
|
props.data.forEach((row) => internalSelectedRows.add(row));
|
|
31822
|
+
emit("changeSelectedRows", { allRows: true, selected: true });
|
|
31727
31823
|
}
|
|
31728
31824
|
}
|
|
31729
31825
|
emit("update:selectedRows", internalSelectedRows);
|
|
31730
31826
|
};
|
|
31731
31827
|
const clearSelection = () => {
|
|
31732
31828
|
internalSelectedRows.clear();
|
|
31829
|
+
emit("changeSelectedRows", { allRows: true, selected: false });
|
|
31733
31830
|
emit("update:selectedRows", internalSelectedRows);
|
|
31734
31831
|
};
|
|
31735
31832
|
const table = vue.ref();
|
|
@@ -31773,7 +31870,7 @@ img.ProseMirror-separator {
|
|
|
31773
31870
|
const initEditing = () => {
|
|
31774
31871
|
if (props.alwaysEditing) {
|
|
31775
31872
|
props.data.forEach((row) => {
|
|
31776
|
-
if (!internalEditingRows.isEditingRow(row)) {
|
|
31873
|
+
if ((!props.rowEditPolicy || props.rowEditPolicy(row)) && !internalEditingRows.isEditingRow(row)) {
|
|
31777
31874
|
internalEditingRows.addEditingRow({ row });
|
|
31778
31875
|
}
|
|
31779
31876
|
});
|
|
@@ -31864,7 +31961,7 @@ img.ProseMirror-separator {
|
|
|
31864
31961
|
"selected-row-count": vue.unref(internalSelectedRows).size,
|
|
31865
31962
|
onClick: toggleAllSelection
|
|
31866
31963
|
}, null, 8, ["selected-row-count"])) : vue.createCommentVNode("", true),
|
|
31867
|
-
_ctx.editable ? (vue.openBlock(), vue.createElementBlock("th", _hoisted_6$7, _hoisted_8$3)) : vue.createCommentVNode("", true),
|
|
31964
|
+
_ctx.editable && !_ctx.hideEditIcon ? (vue.openBlock(), vue.createElementBlock("th", _hoisted_6$7, _hoisted_8$3)) : vue.createCommentVNode("", true),
|
|
31868
31965
|
_ctx.showSerial ? (vue.openBlock(), vue.createBlock(BSGridHeaderCellSerialNo, { key: 3 })) : vue.createCommentVNode("", true),
|
|
31869
31966
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(internalColumns.value, (column) => {
|
|
31870
31967
|
return vue.openBlock(), vue.createBlock(BSGridHeaderCell, {
|
|
@@ -31896,9 +31993,11 @@ img.ProseMirror-separator {
|
|
|
31896
31993
|
editable: _ctx.editable,
|
|
31897
31994
|
"editing-row": (_a2 = _ctx.editingRows) == null ? void 0 : _a2.getEditingRow(row),
|
|
31898
31995
|
"fixed-columns": fixedColumns.value,
|
|
31996
|
+
"hide-edit-icon": _ctx.hideEditIcon,
|
|
31899
31997
|
"is-editing": vue.unref(internalEditingRows).isEditingRow(row),
|
|
31900
31998
|
"page-info": _ctx.pageInfo,
|
|
31901
31999
|
row,
|
|
32000
|
+
"row-editable": !_ctx.rowEditPolicy || _ctx.rowEditPolicy(row),
|
|
31902
32001
|
"row-index": index,
|
|
31903
32002
|
"row-key": _ctx.keyProvider(row),
|
|
31904
32003
|
"select-on-click": _ctx.selectOnClick,
|
|
@@ -31924,7 +32023,7 @@ img.ProseMirror-separator {
|
|
|
31924
32023
|
])
|
|
31925
32024
|
};
|
|
31926
32025
|
})
|
|
31927
|
-
]), 1032, ["all-rows", "columns", "editable", "editing-row", "fixed-columns", "is-editing", "page-info", "row", "row-index", "row-key", "select-on-click", "selected-rows", "show-checkbox", "show-drag-handle", "show-serial", "style", "visible-columns"]);
|
|
32026
|
+
]), 1032, ["all-rows", "columns", "editable", "editing-row", "fixed-columns", "hide-edit-icon", "is-editing", "page-info", "row", "row-editable", "row-index", "row-key", "select-on-click", "selected-rows", "show-checkbox", "show-drag-handle", "show-serial", "style", "visible-columns"]);
|
|
31928
32027
|
}), 128)) : vue.createCommentVNode("", true)
|
|
31929
32028
|
])
|
|
31930
32029
|
], 512)
|
|
@@ -34503,6 +34602,9 @@ img.ProseMirror-separator {
|
|
|
34503
34602
|
const checkEnglish = (str) => {
|
|
34504
34603
|
return /[a-z]/i.test(str);
|
|
34505
34604
|
};
|
|
34605
|
+
const getRoutePagePath = (framePrefix, route) => {
|
|
34606
|
+
return decodeURIComponent(route.path.substring(framePrefix.length));
|
|
34607
|
+
};
|
|
34506
34608
|
class DefaultFrameContext {
|
|
34507
34609
|
constructor(config) {
|
|
34508
34610
|
__publicField(this, "pageManager");
|
|
@@ -34520,7 +34622,7 @@ img.ProseMirror-separator {
|
|
|
34520
34622
|
}
|
|
34521
34623
|
// 현재 route 에 해당하는 Page 를 오픈한다.
|
|
34522
34624
|
async syncCurrentPath(route) {
|
|
34523
|
-
const pagePath =
|
|
34625
|
+
const pagePath = getRoutePagePath(this.config.framePrefix, route);
|
|
34524
34626
|
await this.pageManager.openPage(pagePath);
|
|
34525
34627
|
}
|
|
34526
34628
|
// 현재 활성화된 Page 를 닫는다.
|
|
@@ -34530,7 +34632,7 @@ img.ProseMirror-separator {
|
|
|
34530
34632
|
await this.pageManager.closePage(active);
|
|
34531
34633
|
}
|
|
34532
34634
|
getPageByRoute(route) {
|
|
34533
|
-
const pagePath =
|
|
34635
|
+
const pagePath = getRoutePagePath(this.config.framePrefix, route);
|
|
34534
34636
|
return this.pageManager.getPageByPath(pagePath);
|
|
34535
34637
|
}
|
|
34536
34638
|
setPageSubtitle(route, subtitle) {
|