@bagelink/vue 0.0.331 → 0.0.335
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/MaterialIcon.vue.d.ts +4 -2
- package/dist/components/MaterialIcon.vue.d.ts.map +1 -1
- package/dist/components/form/inputs/SelectInput.vue.d.ts +22 -16
- package/dist/components/form/inputs/SelectInput.vue.d.ts.map +1 -1
- package/dist/components/index.d.ts +0 -2
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/layout/Layout.vue.d.ts +8 -0
- package/dist/components/layout/Layout.vue.d.ts.map +1 -1
- package/dist/components/layout/SidebarMenu.vue.d.ts.map +1 -1
- package/dist/components/layout/TabbedLayout.vue.d.ts +38 -0
- package/dist/components/layout/TabbedLayout.vue.d.ts.map +1 -0
- package/dist/components/layout/Tabs.vue.d.ts +24 -0
- package/dist/components/layout/Tabs.vue.d.ts.map +1 -0
- package/dist/components/layout/TabsBody.vue.d.ts +21 -0
- package/dist/components/layout/TabsBody.vue.d.ts.map +1 -0
- package/dist/components/layout/TabsNav.vue.d.ts +25 -0
- package/dist/components/layout/TabsNav.vue.d.ts.map +1 -0
- package/dist/components/layout/index.d.ts +4 -0
- package/dist/components/layout/index.d.ts.map +1 -1
- package/dist/components/layout/tabsManager.d.ts +4 -0
- package/dist/components/layout/tabsManager.d.ts.map +1 -0
- package/dist/index.cjs +778 -2031
- package/dist/index.mjs +780 -2033
- package/dist/style.css +415 -499
- package/dist/types/index.d.ts +7 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/materialIcons.d.ts +1 -1
- package/dist/types/materialIcons.d.ts.map +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/MaterialIcon.vue +3 -2
- package/src/components/PageTitle.vue +10 -20
- package/src/components/form/BglField.vue +2 -2
- package/src/components/form/BglForm.vue +0 -1
- package/src/components/form/inputs/SelectInput.vue +128 -484
- package/src/components/index.ts +0 -2
- package/src/components/layout/Layout.vue +34 -13
- package/src/components/layout/SidebarMenu.vue +22 -22
- package/src/components/layout/TabbedLayout.vue +79 -0
- package/src/components/layout/Tabs.vue +19 -0
- package/src/components/layout/TabsBody.vue +15 -0
- package/src/components/layout/TabsNav.vue +48 -0
- package/src/components/layout/index.ts +4 -0
- package/src/components/layout/tabsManager.ts +18 -0
- package/src/styles/appearance.css +42 -0
- package/src/styles/layout.css +74 -12
- package/src/styles/mobilLayout.css +77 -17
- package/src/styles/text.css +153 -1
- package/src/types/index.ts +9 -1
- package/src/types/materialIcons.ts +1180 -1178
- package/src/utils/index.ts +0 -1
- package/src/components/ComboBox.vue +0 -171
- package/src/components/TabbedLayout.vue +0 -87
package/dist/index.cjs
CHANGED
|
@@ -262,7 +262,7 @@ const computePosition = async (reference, floating, config) => {
|
|
|
262
262
|
middlewareData
|
|
263
263
|
};
|
|
264
264
|
};
|
|
265
|
-
async function detectOverflow(
|
|
265
|
+
async function detectOverflow(state2, options) {
|
|
266
266
|
var _await$platform$isEle;
|
|
267
267
|
if (options === void 0) {
|
|
268
268
|
options = {};
|
|
@@ -274,14 +274,14 @@ async function detectOverflow(state, options) {
|
|
|
274
274
|
rects,
|
|
275
275
|
elements,
|
|
276
276
|
strategy
|
|
277
|
-
} =
|
|
277
|
+
} = state2;
|
|
278
278
|
const {
|
|
279
279
|
boundary = "clippingAncestors",
|
|
280
280
|
rootBoundary = "viewport",
|
|
281
281
|
elementContext = "floating",
|
|
282
282
|
altBoundary = false,
|
|
283
283
|
padding = 0
|
|
284
|
-
} = evaluate(options,
|
|
284
|
+
} = evaluate(options, state2);
|
|
285
285
|
const paddingObject = getPaddingObject(padding);
|
|
286
286
|
const altContext = elementContext === "floating" ? "reference" : "floating";
|
|
287
287
|
const element = elements[altBoundary ? altContext : elementContext];
|
|
@@ -320,7 +320,7 @@ async function detectOverflow(state, options) {
|
|
|
320
320
|
const arrow = (options) => ({
|
|
321
321
|
name: "arrow",
|
|
322
322
|
options,
|
|
323
|
-
async fn(
|
|
323
|
+
async fn(state2) {
|
|
324
324
|
const {
|
|
325
325
|
x: x2,
|
|
326
326
|
y: y2,
|
|
@@ -329,11 +329,11 @@ const arrow = (options) => ({
|
|
|
329
329
|
platform: platform2,
|
|
330
330
|
elements,
|
|
331
331
|
middlewareData
|
|
332
|
-
} =
|
|
332
|
+
} = state2;
|
|
333
333
|
const {
|
|
334
334
|
element,
|
|
335
335
|
padding = 0
|
|
336
|
-
} = evaluate(options,
|
|
336
|
+
} = evaluate(options, state2) || {};
|
|
337
337
|
if (element == null) {
|
|
338
338
|
return {};
|
|
339
339
|
}
|
|
@@ -395,7 +395,7 @@ const autoPlacement = function(options) {
|
|
|
395
395
|
return {
|
|
396
396
|
name: "autoPlacement",
|
|
397
397
|
options,
|
|
398
|
-
async fn(
|
|
398
|
+
async fn(state2) {
|
|
399
399
|
var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;
|
|
400
400
|
const {
|
|
401
401
|
rects,
|
|
@@ -403,16 +403,16 @@ const autoPlacement = function(options) {
|
|
|
403
403
|
placement,
|
|
404
404
|
platform: platform2,
|
|
405
405
|
elements
|
|
406
|
-
} =
|
|
406
|
+
} = state2;
|
|
407
407
|
const {
|
|
408
408
|
crossAxis = false,
|
|
409
409
|
alignment,
|
|
410
410
|
allowedPlacements = placements,
|
|
411
411
|
autoAlignment = true,
|
|
412
412
|
...detectOverflowOptions
|
|
413
|
-
} = evaluate(options,
|
|
413
|
+
} = evaluate(options, state2);
|
|
414
414
|
const placements$1 = alignment !== void 0 || allowedPlacements === placements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;
|
|
415
|
-
const overflow = await detectOverflow(
|
|
415
|
+
const overflow = await detectOverflow(state2, detectOverflowOptions);
|
|
416
416
|
const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;
|
|
417
417
|
const currentPlacement = placements$1[currentIndex];
|
|
418
418
|
if (currentPlacement == null) {
|
|
@@ -482,7 +482,7 @@ const flip = function(options) {
|
|
|
482
482
|
return {
|
|
483
483
|
name: "flip",
|
|
484
484
|
options,
|
|
485
|
-
async fn(
|
|
485
|
+
async fn(state2) {
|
|
486
486
|
var _middlewareData$arrow, _middlewareData$flip;
|
|
487
487
|
const {
|
|
488
488
|
placement,
|
|
@@ -491,7 +491,7 @@ const flip = function(options) {
|
|
|
491
491
|
initialPlacement,
|
|
492
492
|
platform: platform2,
|
|
493
493
|
elements
|
|
494
|
-
} =
|
|
494
|
+
} = state2;
|
|
495
495
|
const {
|
|
496
496
|
mainAxis: checkMainAxis = true,
|
|
497
497
|
crossAxis: checkCrossAxis = true,
|
|
@@ -500,7 +500,7 @@ const flip = function(options) {
|
|
|
500
500
|
fallbackAxisSideDirection = "none",
|
|
501
501
|
flipAlignment = true,
|
|
502
502
|
...detectOverflowOptions
|
|
503
|
-
} = evaluate(options,
|
|
503
|
+
} = evaluate(options, state2);
|
|
504
504
|
if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {
|
|
505
505
|
return {};
|
|
506
506
|
}
|
|
@@ -512,7 +512,7 @@ const flip = function(options) {
|
|
|
512
512
|
fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
|
|
513
513
|
}
|
|
514
514
|
const placements2 = [initialPlacement, ...fallbackPlacements];
|
|
515
|
-
const overflow = await detectOverflow(
|
|
515
|
+
const overflow = await detectOverflow(state2, detectOverflowOptions);
|
|
516
516
|
const overflows = [];
|
|
517
517
|
let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];
|
|
518
518
|
if (checkMainAxis) {
|
|
@@ -569,19 +569,19 @@ const flip = function(options) {
|
|
|
569
569
|
}
|
|
570
570
|
};
|
|
571
571
|
};
|
|
572
|
-
async function convertValueToCoords(
|
|
572
|
+
async function convertValueToCoords(state2, options) {
|
|
573
573
|
const {
|
|
574
574
|
placement,
|
|
575
575
|
platform: platform2,
|
|
576
576
|
elements
|
|
577
|
-
} =
|
|
577
|
+
} = state2;
|
|
578
578
|
const rtl = await (platform2.isRTL == null ? void 0 : platform2.isRTL(elements.floating));
|
|
579
579
|
const side = getSide$1(placement);
|
|
580
580
|
const alignment = getAlignment(placement);
|
|
581
581
|
const isVertical = getSideAxis(placement) === "y";
|
|
582
582
|
const mainAxisMulti = ["left", "top"].includes(side) ? -1 : 1;
|
|
583
583
|
const crossAxisMulti = rtl && isVertical ? -1 : 1;
|
|
584
|
-
const rawValue = evaluate(options,
|
|
584
|
+
const rawValue = evaluate(options, state2);
|
|
585
585
|
let {
|
|
586
586
|
mainAxis,
|
|
587
587
|
crossAxis,
|
|
@@ -614,15 +614,15 @@ const offset = function(options) {
|
|
|
614
614
|
return {
|
|
615
615
|
name: "offset",
|
|
616
616
|
options,
|
|
617
|
-
async fn(
|
|
617
|
+
async fn(state2) {
|
|
618
618
|
var _middlewareData$offse, _middlewareData$arrow;
|
|
619
619
|
const {
|
|
620
620
|
x: x2,
|
|
621
621
|
y: y2,
|
|
622
622
|
placement,
|
|
623
623
|
middlewareData
|
|
624
|
-
} =
|
|
625
|
-
const diffCoords = await convertValueToCoords(
|
|
624
|
+
} = state2;
|
|
625
|
+
const diffCoords = await convertValueToCoords(state2, options);
|
|
626
626
|
if (placement === ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse.placement) && (_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {
|
|
627
627
|
return {};
|
|
628
628
|
}
|
|
@@ -644,12 +644,12 @@ const shift$1 = function(options) {
|
|
|
644
644
|
return {
|
|
645
645
|
name: "shift",
|
|
646
646
|
options,
|
|
647
|
-
async fn(
|
|
647
|
+
async fn(state2) {
|
|
648
648
|
const {
|
|
649
649
|
x: x2,
|
|
650
650
|
y: y2,
|
|
651
651
|
placement
|
|
652
|
-
} =
|
|
652
|
+
} = state2;
|
|
653
653
|
const {
|
|
654
654
|
mainAxis: checkMainAxis = true,
|
|
655
655
|
crossAxis: checkCrossAxis = false,
|
|
@@ -666,12 +666,12 @@ const shift$1 = function(options) {
|
|
|
666
666
|
}
|
|
667
667
|
},
|
|
668
668
|
...detectOverflowOptions
|
|
669
|
-
} = evaluate(options,
|
|
669
|
+
} = evaluate(options, state2);
|
|
670
670
|
const coords = {
|
|
671
671
|
x: x2,
|
|
672
672
|
y: y2
|
|
673
673
|
};
|
|
674
|
-
const overflow = await detectOverflow(
|
|
674
|
+
const overflow = await detectOverflow(state2, detectOverflowOptions);
|
|
675
675
|
const crossAxis = getSideAxis(getSide$1(placement));
|
|
676
676
|
const mainAxis = getOppositeAxis(crossAxis);
|
|
677
677
|
let mainAxisCoord = coords[mainAxis];
|
|
@@ -691,7 +691,7 @@ const shift$1 = function(options) {
|
|
|
691
691
|
crossAxisCoord = clamp(min2, crossAxisCoord, max2);
|
|
692
692
|
}
|
|
693
693
|
const limitedCoords = limiter.fn({
|
|
694
|
-
...
|
|
694
|
+
...state2,
|
|
695
695
|
[mainAxis]: mainAxisCoord,
|
|
696
696
|
[crossAxis]: crossAxisCoord
|
|
697
697
|
});
|
|
@@ -712,19 +712,19 @@ const size = function(options) {
|
|
|
712
712
|
return {
|
|
713
713
|
name: "size",
|
|
714
714
|
options,
|
|
715
|
-
async fn(
|
|
715
|
+
async fn(state2) {
|
|
716
716
|
const {
|
|
717
717
|
placement,
|
|
718
718
|
rects,
|
|
719
719
|
platform: platform2,
|
|
720
720
|
elements
|
|
721
|
-
} =
|
|
721
|
+
} = state2;
|
|
722
722
|
const {
|
|
723
723
|
apply: apply2 = () => {
|
|
724
724
|
},
|
|
725
725
|
...detectOverflowOptions
|
|
726
|
-
} = evaluate(options,
|
|
727
|
-
const overflow = await detectOverflow(
|
|
726
|
+
} = evaluate(options, state2);
|
|
727
|
+
const overflow = await detectOverflow(state2, detectOverflowOptions);
|
|
728
728
|
const side = getSide$1(placement);
|
|
729
729
|
const alignment = getAlignment(placement);
|
|
730
730
|
const isYAxis = getSideAxis(placement) === "y";
|
|
@@ -743,7 +743,7 @@ const size = function(options) {
|
|
|
743
743
|
}
|
|
744
744
|
const overflowAvailableHeight = height - overflow[heightSide];
|
|
745
745
|
const overflowAvailableWidth = width - overflow[widthSide];
|
|
746
|
-
const noShift = !
|
|
746
|
+
const noShift = !state2.middlewareData.shift;
|
|
747
747
|
let availableHeight = overflowAvailableHeight;
|
|
748
748
|
let availableWidth = overflowAvailableWidth;
|
|
749
749
|
if (isYAxis) {
|
|
@@ -765,7 +765,7 @@ const size = function(options) {
|
|
|
765
765
|
}
|
|
766
766
|
}
|
|
767
767
|
await apply2({
|
|
768
|
-
...
|
|
768
|
+
...state2,
|
|
769
769
|
availableWidth,
|
|
770
770
|
availableHeight
|
|
771
771
|
});
|
|
@@ -4019,7 +4019,7 @@ const adapters = {
|
|
|
4019
4019
|
}
|
|
4020
4020
|
if (!adapter) {
|
|
4021
4021
|
const reasons = Object.entries(rejectedReasons).map(
|
|
4022
|
-
([id,
|
|
4022
|
+
([id, state2]) => `adapter ${id} ` + (state2 === false ? "is not supported by the environment" : "is not available in the build")
|
|
4023
4023
|
);
|
|
4024
4024
|
let s2 = length ? reasons.length > 1 ? "since :\n" + reasons.map(renderReason).join("\n") : " " + renderReason(reasons[0]) : "as no adapter specified";
|
|
4025
4025
|
throw new AxiosError(
|
|
@@ -4880,7 +4880,7 @@ const ModalPlugin = {
|
|
|
4880
4880
|
const props2 = { ...modal.modalOptions, visible: true, "onUpdate:visible": () => hideModal(index2) };
|
|
4881
4881
|
if (modal.modalType === "modalForm")
|
|
4882
4882
|
return vue.h(ModalForm, props2, modal.componentSlots);
|
|
4883
|
-
return vue.h(_sfc_main$
|
|
4883
|
+
return vue.h(_sfc_main$E, props2, modal.componentSlots);
|
|
4884
4884
|
});
|
|
4885
4885
|
}
|
|
4886
4886
|
});
|
|
@@ -4991,8 +4991,6 @@ function bindAttrs(attrs, fieldVal, row) {
|
|
|
4991
4991
|
key,
|
|
4992
4992
|
typeof value === "function" ? value(fieldVal, row) : value
|
|
4993
4993
|
]);
|
|
4994
|
-
if (attrs.options)
|
|
4995
|
-
console.log("arr", arr);
|
|
4996
4994
|
const resolvedAttrs = Object.fromEntries(arr);
|
|
4997
4995
|
return resolvedAttrs;
|
|
4998
4996
|
}
|
|
@@ -6970,19 +6968,19 @@ function dfa(nfa2) {
|
|
|
6970
6968
|
});
|
|
6971
6969
|
});
|
|
6972
6970
|
});
|
|
6973
|
-
let
|
|
6971
|
+
let state2 = labeled[states.join(",")] = new ContentMatch(states.indexOf(nfa2.length - 1) > -1);
|
|
6974
6972
|
for (let i2 = 0; i2 < out.length; i2++) {
|
|
6975
6973
|
let states2 = out[i2][1].sort(cmp);
|
|
6976
|
-
|
|
6974
|
+
state2.next.push({ type: out[i2][0], next: labeled[states2.join(",")] || explore(states2) });
|
|
6977
6975
|
}
|
|
6978
|
-
return
|
|
6976
|
+
return state2;
|
|
6979
6977
|
}
|
|
6980
6978
|
}
|
|
6981
6979
|
function checkForDeadEnds(match2, stream) {
|
|
6982
6980
|
for (let i2 = 0, work = [match2]; i2 < work.length; i2++) {
|
|
6983
|
-
let
|
|
6984
|
-
for (let j = 0; j <
|
|
6985
|
-
let { type: type3, next } =
|
|
6981
|
+
let state2 = work[i2], dead = !state2.validEnd, nodes2 = [];
|
|
6982
|
+
for (let j = 0; j < state2.next.length; j++) {
|
|
6983
|
+
let { type: type3, next } = state2.next[j];
|
|
6986
6984
|
nodes2.push(type3.name);
|
|
6987
6985
|
if (dead && !(type3.isText || type3.hasRequiredAttrs()))
|
|
6988
6986
|
dead = false;
|
|
@@ -10379,14 +10377,14 @@ class Transaction extends Transform {
|
|
|
10379
10377
|
/**
|
|
10380
10378
|
@internal
|
|
10381
10379
|
*/
|
|
10382
|
-
constructor(
|
|
10383
|
-
super(
|
|
10380
|
+
constructor(state2) {
|
|
10381
|
+
super(state2.doc);
|
|
10384
10382
|
this.curSelectionFor = 0;
|
|
10385
10383
|
this.updated = 0;
|
|
10386
10384
|
this.meta = /* @__PURE__ */ Object.create(null);
|
|
10387
10385
|
this.time = Date.now();
|
|
10388
|
-
this.curSelection =
|
|
10389
|
-
this.storedMarks =
|
|
10386
|
+
this.curSelection = state2.selection;
|
|
10387
|
+
this.storedMarks = state2.storedMarks;
|
|
10390
10388
|
}
|
|
10391
10389
|
/**
|
|
10392
10390
|
The transaction's current selection. This defaults to the editor
|
|
@@ -10593,8 +10591,8 @@ const baseFields = [
|
|
|
10593
10591
|
init(config) {
|
|
10594
10592
|
return config.storedMarks || null;
|
|
10595
10593
|
},
|
|
10596
|
-
apply(tr2, _marks, _old,
|
|
10597
|
-
return
|
|
10594
|
+
apply(tr2, _marks, _old, state2) {
|
|
10595
|
+
return state2.selection.$cursor ? tr2.storedMarks : null;
|
|
10598
10596
|
}
|
|
10599
10597
|
}),
|
|
10600
10598
|
new FieldDesc("scrollToSelection", {
|
|
@@ -10758,9 +10756,9 @@ class EditorState {
|
|
|
10758
10756
|
for (let prop3 in pluginFields) {
|
|
10759
10757
|
if (prop3 == "doc" || prop3 == "selection")
|
|
10760
10758
|
throw new RangeError("The JSON fields `doc` and `selection` are reserved");
|
|
10761
|
-
let plugin = pluginFields[prop3],
|
|
10762
|
-
if (
|
|
10763
|
-
result[prop3] =
|
|
10759
|
+
let plugin = pluginFields[prop3], state2 = plugin.spec.state;
|
|
10760
|
+
if (state2 && state2.toJSON)
|
|
10761
|
+
result[prop3] = state2.toJSON.call(plugin, this[plugin.key]);
|
|
10764
10762
|
}
|
|
10765
10763
|
return result;
|
|
10766
10764
|
}
|
|
@@ -10789,9 +10787,9 @@ class EditorState {
|
|
|
10789
10787
|
} else {
|
|
10790
10788
|
if (pluginFields)
|
|
10791
10789
|
for (let prop3 in pluginFields) {
|
|
10792
|
-
let plugin = pluginFields[prop3],
|
|
10793
|
-
if (plugin.key == field.name &&
|
|
10794
|
-
instance[field.name] =
|
|
10790
|
+
let plugin = pluginFields[prop3], state2 = plugin.spec.state;
|
|
10791
|
+
if (plugin.key == field.name && state2 && state2.fromJSON && Object.prototype.hasOwnProperty.call(json, prop3)) {
|
|
10792
|
+
instance[field.name] = state2.fromJSON.call(plugin, config, json[prop3], instance);
|
|
10795
10793
|
return;
|
|
10796
10794
|
}
|
|
10797
10795
|
}
|
|
@@ -10826,8 +10824,8 @@ class Plugin {
|
|
|
10826
10824
|
/**
|
|
10827
10825
|
Extract the plugin's state field from an editor state.
|
|
10828
10826
|
*/
|
|
10829
|
-
getState(
|
|
10830
|
-
return
|
|
10827
|
+
getState(state2) {
|
|
10828
|
+
return state2[this.key];
|
|
10831
10829
|
}
|
|
10832
10830
|
}
|
|
10833
10831
|
const keys$1 = /* @__PURE__ */ Object.create(null);
|
|
@@ -10848,14 +10846,14 @@ class PluginKey {
|
|
|
10848
10846
|
Get the active plugin with this key, if any, from an editor
|
|
10849
10847
|
state.
|
|
10850
10848
|
*/
|
|
10851
|
-
get(
|
|
10852
|
-
return
|
|
10849
|
+
get(state2) {
|
|
10850
|
+
return state2.config.pluginsByKey[this.key];
|
|
10853
10851
|
}
|
|
10854
10852
|
/**
|
|
10855
10853
|
Get the plugin's state from an editor state.
|
|
10856
10854
|
*/
|
|
10857
|
-
getState(
|
|
10858
|
-
return
|
|
10855
|
+
getState(state2) {
|
|
10856
|
+
return state2[this.key];
|
|
10859
10857
|
}
|
|
10860
10858
|
}
|
|
10861
10859
|
const domIndex = function(node) {
|
|
@@ -11341,25 +11339,25 @@ function flattenH(rect, top2) {
|
|
|
11341
11339
|
let y2 = top2 ? rect.top : rect.bottom;
|
|
11342
11340
|
return { top: y2, bottom: y2, left: rect.left, right: rect.right };
|
|
11343
11341
|
}
|
|
11344
|
-
function withFlushedState(view,
|
|
11342
|
+
function withFlushedState(view, state2, f2) {
|
|
11345
11343
|
let viewState = view.state, active = view.root.activeElement;
|
|
11346
|
-
if (viewState !=
|
|
11347
|
-
view.updateState(
|
|
11344
|
+
if (viewState != state2)
|
|
11345
|
+
view.updateState(state2);
|
|
11348
11346
|
if (active != view.dom)
|
|
11349
11347
|
view.focus();
|
|
11350
11348
|
try {
|
|
11351
11349
|
return f2();
|
|
11352
11350
|
} finally {
|
|
11353
|
-
if (viewState !=
|
|
11351
|
+
if (viewState != state2)
|
|
11354
11352
|
view.updateState(viewState);
|
|
11355
11353
|
if (active != view.dom && active)
|
|
11356
11354
|
active.focus();
|
|
11357
11355
|
}
|
|
11358
11356
|
}
|
|
11359
|
-
function endOfTextblockVertical(view,
|
|
11360
|
-
let sel =
|
|
11357
|
+
function endOfTextblockVertical(view, state2, dir) {
|
|
11358
|
+
let sel = state2.selection;
|
|
11361
11359
|
let $pos = dir == "up" ? sel.$from : sel.$to;
|
|
11362
|
-
return withFlushedState(view,
|
|
11360
|
+
return withFlushedState(view, state2, () => {
|
|
11363
11361
|
let { node: dom } = view.docView.domFromPos($pos.pos, dir == "up" ? -1 : 1);
|
|
11364
11362
|
for (; ; ) {
|
|
11365
11363
|
let nearest = view.docView.nearestDesc(dom, true);
|
|
@@ -11390,15 +11388,15 @@ function endOfTextblockVertical(view, state, dir) {
|
|
|
11390
11388
|
});
|
|
11391
11389
|
}
|
|
11392
11390
|
const maybeRTL = /[\u0590-\u08ac]/;
|
|
11393
|
-
function endOfTextblockHorizontal(view,
|
|
11394
|
-
let { $head } =
|
|
11391
|
+
function endOfTextblockHorizontal(view, state2, dir) {
|
|
11392
|
+
let { $head } = state2.selection;
|
|
11395
11393
|
if (!$head.parent.isTextblock)
|
|
11396
11394
|
return false;
|
|
11397
11395
|
let offset2 = $head.parentOffset, atStart = !offset2, atEnd = offset2 == $head.parent.content.size;
|
|
11398
11396
|
let sel = view.domSelection();
|
|
11399
11397
|
if (!maybeRTL.test($head.parent.textContent) || !sel.modify)
|
|
11400
11398
|
return dir == "left" || dir == "backward" ? atStart : atEnd;
|
|
11401
|
-
return withFlushedState(view,
|
|
11399
|
+
return withFlushedState(view, state2, () => {
|
|
11402
11400
|
let { focusNode: oldNode, focusOffset: oldOff, anchorNode, anchorOffset } = view.domSelectionRange();
|
|
11403
11401
|
let oldBidiLevel = sel.caretBidiLevel;
|
|
11404
11402
|
sel.modify("move", dir, "character");
|
|
@@ -11419,12 +11417,12 @@ function endOfTextblockHorizontal(view, state, dir) {
|
|
|
11419
11417
|
let cachedState = null;
|
|
11420
11418
|
let cachedDir = null;
|
|
11421
11419
|
let cachedResult = false;
|
|
11422
|
-
function endOfTextblock(view,
|
|
11423
|
-
if (cachedState ==
|
|
11420
|
+
function endOfTextblock(view, state2, dir) {
|
|
11421
|
+
if (cachedState == state2 && cachedDir == dir)
|
|
11424
11422
|
return cachedResult;
|
|
11425
|
-
cachedState =
|
|
11423
|
+
cachedState = state2;
|
|
11426
11424
|
cachedDir = dir;
|
|
11427
|
-
return cachedResult = dir == "up" || dir == "down" ? endOfTextblockVertical(view,
|
|
11425
|
+
return cachedResult = dir == "up" || dir == "down" ? endOfTextblockVertical(view, state2, dir) : endOfTextblockHorizontal(view, state2, dir);
|
|
11428
11426
|
}
|
|
11429
11427
|
const NOT_DIRTY = 0, CHILD_DIRTY = 1, CONTENT_DIRTY = 2, NODE_DIRTY = 3;
|
|
11430
11428
|
class ViewDesc {
|
|
@@ -12929,10 +12927,10 @@ function anchorInRightPlace(view) {
|
|
|
12929
12927
|
let domSel = view.domSelectionRange();
|
|
12930
12928
|
return isEquivalentPosition(anchorDOM.node, anchorDOM.offset, domSel.anchorNode, domSel.anchorOffset);
|
|
12931
12929
|
}
|
|
12932
|
-
function moveSelectionBlock(
|
|
12933
|
-
let { $anchor, $head } =
|
|
12930
|
+
function moveSelectionBlock(state2, dir) {
|
|
12931
|
+
let { $anchor, $head } = state2.selection;
|
|
12934
12932
|
let $side = dir > 0 ? $anchor.max($head) : $anchor.min($head);
|
|
12935
|
-
let $start = !$side.parent.inlineContent ? $side : $side.depth ?
|
|
12933
|
+
let $start = !$side.parent.inlineContent ? $side : $side.depth ? state2.doc.resolve(dir > 0 ? $side.after() : $side.before()) : null;
|
|
12936
12934
|
return $start && Selection$1.findFrom($start, dir);
|
|
12937
12935
|
}
|
|
12938
12936
|
function apply(view, sel) {
|
|
@@ -13134,9 +13132,9 @@ function setSelFocus(view, node, offset2) {
|
|
|
13134
13132
|
sel.extend(node, offset2);
|
|
13135
13133
|
}
|
|
13136
13134
|
view.domObserver.setCurSelection();
|
|
13137
|
-
let { state } = view;
|
|
13135
|
+
let { state: state2 } = view;
|
|
13138
13136
|
setTimeout(() => {
|
|
13139
|
-
if (view.state ==
|
|
13137
|
+
if (view.state == state2)
|
|
13140
13138
|
selectionToDOM(view);
|
|
13141
13139
|
}, 50);
|
|
13142
13140
|
}
|
|
@@ -13201,9 +13199,9 @@ function stopNativeHorizontalDelete(view, dir) {
|
|
|
13201
13199
|
}
|
|
13202
13200
|
return false;
|
|
13203
13201
|
}
|
|
13204
|
-
function switchEditable(view, node,
|
|
13202
|
+
function switchEditable(view, node, state2) {
|
|
13205
13203
|
view.domObserver.stop();
|
|
13206
|
-
node.contentEditable =
|
|
13204
|
+
node.contentEditable = state2;
|
|
13207
13205
|
view.domObserver.start();
|
|
13208
13206
|
}
|
|
13209
13207
|
function safariDownArrowBug(view) {
|
|
@@ -13850,14 +13848,14 @@ const timeoutComposition = android ? 5e3 : -1;
|
|
|
13850
13848
|
editHandlers.compositionstart = editHandlers.compositionupdate = (view) => {
|
|
13851
13849
|
if (!view.composing) {
|
|
13852
13850
|
view.domObserver.flush();
|
|
13853
|
-
let { state } = view, $pos =
|
|
13854
|
-
if (
|
|
13851
|
+
let { state: state2 } = view, $pos = state2.selection.$from;
|
|
13852
|
+
if (state2.selection.empty && (state2.storedMarks || !$pos.textOffset && $pos.parentOffset && $pos.nodeBefore.marks.some((m2) => m2.type.spec.inclusive === false))) {
|
|
13855
13853
|
view.markCursor = view.state.storedMarks || $pos.marks();
|
|
13856
13854
|
endComposition(view, true);
|
|
13857
13855
|
view.markCursor = null;
|
|
13858
13856
|
} else {
|
|
13859
13857
|
endComposition(view);
|
|
13860
|
-
if (gecko &&
|
|
13858
|
+
if (gecko && state2.selection.empty && $pos.parentOffset && !$pos.textOffset && $pos.nodeBefore.marks.length) {
|
|
13861
13859
|
let sel = view.domSelectionRange();
|
|
13862
13860
|
for (let node = sel.focusNode, offset2 = sel.focusOffset; node && node.nodeType == 1 && offset2 != 0; ) {
|
|
13863
13861
|
let before = offset2 < 0 ? node.lastChild : node.childNodes[offset2 - 1];
|
|
@@ -15429,18 +15427,18 @@ class EditorView {
|
|
|
15429
15427
|
Update the editor's `state` prop, without touching any of the
|
|
15430
15428
|
other props.
|
|
15431
15429
|
*/
|
|
15432
|
-
updateState(
|
|
15433
|
-
this.updateStateInner(
|
|
15430
|
+
updateState(state2) {
|
|
15431
|
+
this.updateStateInner(state2, this._props);
|
|
15434
15432
|
}
|
|
15435
|
-
updateStateInner(
|
|
15433
|
+
updateStateInner(state2, prevProps) {
|
|
15436
15434
|
var _a2;
|
|
15437
15435
|
let prev = this.state, redraw = false, updateSel = false;
|
|
15438
|
-
if (
|
|
15436
|
+
if (state2.storedMarks && this.composing) {
|
|
15439
15437
|
clearComposition(this);
|
|
15440
15438
|
updateSel = true;
|
|
15441
15439
|
}
|
|
15442
|
-
this.state =
|
|
15443
|
-
let pluginsChanged = prev.plugins !=
|
|
15440
|
+
this.state = state2;
|
|
15441
|
+
let pluginsChanged = prev.plugins != state2.plugins || this._props.plugins != prevProps.plugins;
|
|
15444
15442
|
if (pluginsChanged || this._props.plugins != prevProps.plugins || this._props.nodeViews != prevProps.nodeViews) {
|
|
15445
15443
|
let nodeViews = buildNodeViews(this);
|
|
15446
15444
|
if (changedNodeViews(nodeViews, this.nodeViews)) {
|
|
@@ -15454,20 +15452,20 @@ class EditorView {
|
|
|
15454
15452
|
this.editable = getEditable(this);
|
|
15455
15453
|
updateCursorWrapper(this);
|
|
15456
15454
|
let innerDeco = viewDecorations(this), outerDeco = computeDocDeco(this);
|
|
15457
|
-
let scroll = prev.plugins !=
|
|
15458
|
-
let updateDoc = redraw || !this.docView.matchesNode(
|
|
15459
|
-
if (updateDoc || !
|
|
15455
|
+
let scroll = prev.plugins != state2.plugins && !prev.doc.eq(state2.doc) ? "reset" : state2.scrollToSelection > prev.scrollToSelection ? "to selection" : "preserve";
|
|
15456
|
+
let updateDoc = redraw || !this.docView.matchesNode(state2.doc, outerDeco, innerDeco);
|
|
15457
|
+
if (updateDoc || !state2.selection.eq(prev.selection))
|
|
15460
15458
|
updateSel = true;
|
|
15461
15459
|
let oldScrollPos = scroll == "preserve" && updateSel && this.dom.style.overflowAnchor == null && storeScrollPos(this);
|
|
15462
15460
|
if (updateSel) {
|
|
15463
15461
|
this.domObserver.stop();
|
|
15464
|
-
let forceSelUpdate = updateDoc && (ie$1 || chrome) && !this.composing && !prev.selection.empty && !
|
|
15462
|
+
let forceSelUpdate = updateDoc && (ie$1 || chrome) && !this.composing && !prev.selection.empty && !state2.selection.empty && selectionContextChanged(prev.selection, state2.selection);
|
|
15465
15463
|
if (updateDoc) {
|
|
15466
15464
|
let chromeKludge = chrome ? this.trackWrites = this.domSelectionRange().focusNode : null;
|
|
15467
|
-
if (redraw || !this.docView.update(
|
|
15465
|
+
if (redraw || !this.docView.update(state2.doc, outerDeco, innerDeco, this)) {
|
|
15468
15466
|
this.docView.updateOuterDeco([]);
|
|
15469
15467
|
this.docView.destroy();
|
|
15470
|
-
this.docView = docViewDesc(
|
|
15468
|
+
this.docView = docViewDesc(state2.doc, outerDeco, innerDeco, this.dom, this);
|
|
15471
15469
|
}
|
|
15472
15470
|
if (chromeKludge && !this.trackWrites)
|
|
15473
15471
|
forceSelUpdate = true;
|
|
@@ -15475,13 +15473,13 @@ class EditorView {
|
|
|
15475
15473
|
if (forceSelUpdate || !(this.input.mouseDown && this.domObserver.currentSelection.eq(this.domSelectionRange()) && anchorInRightPlace(this))) {
|
|
15476
15474
|
selectionToDOM(this, forceSelUpdate);
|
|
15477
15475
|
} else {
|
|
15478
|
-
syncNodeSelection(this,
|
|
15476
|
+
syncNodeSelection(this, state2.selection);
|
|
15479
15477
|
this.domObserver.setCurSelection();
|
|
15480
15478
|
}
|
|
15481
15479
|
this.domObserver.start();
|
|
15482
15480
|
}
|
|
15483
15481
|
this.updatePluginViews(prev);
|
|
15484
|
-
if (((_a2 = this.dragging) === null || _a2 === void 0 ? void 0 : _a2.node) && !prev.doc.eq(
|
|
15482
|
+
if (((_a2 = this.dragging) === null || _a2 === void 0 ? void 0 : _a2.node) && !prev.doc.eq(state2.doc))
|
|
15485
15483
|
this.updateDraggedNode(this.dragging, prev);
|
|
15486
15484
|
if (scroll == "reset") {
|
|
15487
15485
|
this.dom.scrollTop = 0;
|
|
@@ -15691,8 +15689,8 @@ class EditorView {
|
|
|
15691
15689
|
to the view's current state by default, but it is possible to
|
|
15692
15690
|
pass a different state.
|
|
15693
15691
|
*/
|
|
15694
|
-
endOfTextblock(dir,
|
|
15695
|
-
return endOfTextblock(this,
|
|
15692
|
+
endOfTextblock(dir, state2) {
|
|
15693
|
+
return endOfTextblock(this, state2 || this.state, dir);
|
|
15696
15694
|
}
|
|
15697
15695
|
/**
|
|
15698
15696
|
Run the editor's paste logic with the given HTML string. The
|
|
@@ -16019,21 +16017,21 @@ function keydownHandler(bindings) {
|
|
|
16019
16017
|
return false;
|
|
16020
16018
|
};
|
|
16021
16019
|
}
|
|
16022
|
-
const deleteSelection = (
|
|
16023
|
-
if (
|
|
16020
|
+
const deleteSelection = (state2, dispatch) => {
|
|
16021
|
+
if (state2.selection.empty)
|
|
16024
16022
|
return false;
|
|
16025
16023
|
if (dispatch)
|
|
16026
|
-
dispatch(
|
|
16024
|
+
dispatch(state2.tr.deleteSelection().scrollIntoView());
|
|
16027
16025
|
return true;
|
|
16028
16026
|
};
|
|
16029
|
-
function atBlockStart(
|
|
16030
|
-
let { $cursor } =
|
|
16031
|
-
if (!$cursor || (view ? !view.endOfTextblock("backward",
|
|
16027
|
+
function atBlockStart(state2, view) {
|
|
16028
|
+
let { $cursor } = state2.selection;
|
|
16029
|
+
if (!$cursor || (view ? !view.endOfTextblock("backward", state2) : $cursor.parentOffset > 0))
|
|
16032
16030
|
return null;
|
|
16033
16031
|
return $cursor;
|
|
16034
16032
|
}
|
|
16035
|
-
const joinBackward = (
|
|
16036
|
-
let $cursor = atBlockStart(
|
|
16033
|
+
const joinBackward = (state2, dispatch, view) => {
|
|
16034
|
+
let $cursor = atBlockStart(state2, view);
|
|
16037
16035
|
if (!$cursor)
|
|
16038
16036
|
return false;
|
|
16039
16037
|
let $cut = findCutBefore($cursor);
|
|
@@ -16042,17 +16040,17 @@ const joinBackward = (state, dispatch, view) => {
|
|
|
16042
16040
|
if (target == null)
|
|
16043
16041
|
return false;
|
|
16044
16042
|
if (dispatch)
|
|
16045
|
-
dispatch(
|
|
16043
|
+
dispatch(state2.tr.lift(range2, target).scrollIntoView());
|
|
16046
16044
|
return true;
|
|
16047
16045
|
}
|
|
16048
16046
|
let before = $cut.nodeBefore;
|
|
16049
|
-
if (!before.type.spec.isolating && deleteBarrier(
|
|
16047
|
+
if (!before.type.spec.isolating && deleteBarrier(state2, $cut, dispatch))
|
|
16050
16048
|
return true;
|
|
16051
16049
|
if ($cursor.parent.content.size == 0 && (textblockAt(before, "end") || NodeSelection.isSelectable(before))) {
|
|
16052
|
-
let delStep = replaceStep(
|
|
16050
|
+
let delStep = replaceStep(state2.doc, $cursor.before(), $cursor.after(), Slice.empty);
|
|
16053
16051
|
if (delStep && delStep.slice.size < delStep.to - delStep.from) {
|
|
16054
16052
|
if (dispatch) {
|
|
16055
|
-
let tr2 =
|
|
16053
|
+
let tr2 = state2.tr.step(delStep);
|
|
16056
16054
|
tr2.setSelection(textblockAt(before, "end") ? Selection$1.findFrom(tr2.doc.resolve(tr2.mapping.map($cut.pos, -1)), -1) : NodeSelection.create(tr2.doc, $cut.pos - before.nodeSize));
|
|
16057
16055
|
dispatch(tr2.scrollIntoView());
|
|
16058
16056
|
}
|
|
@@ -16061,7 +16059,7 @@ const joinBackward = (state, dispatch, view) => {
|
|
|
16061
16059
|
}
|
|
16062
16060
|
if (before.isAtom && $cut.depth == $cursor.depth - 1) {
|
|
16063
16061
|
if (dispatch)
|
|
16064
|
-
dispatch(
|
|
16062
|
+
dispatch(state2.tr.delete($cut.pos - before.nodeSize, $cut.pos).scrollIntoView());
|
|
16065
16063
|
return true;
|
|
16066
16064
|
}
|
|
16067
16065
|
return false;
|
|
@@ -16075,12 +16073,12 @@ function textblockAt(node, side, only = false) {
|
|
|
16075
16073
|
}
|
|
16076
16074
|
return false;
|
|
16077
16075
|
}
|
|
16078
|
-
const selectNodeBackward = (
|
|
16079
|
-
let { $head, empty: empty2 } =
|
|
16076
|
+
const selectNodeBackward = (state2, dispatch, view) => {
|
|
16077
|
+
let { $head, empty: empty2 } = state2.selection, $cut = $head;
|
|
16080
16078
|
if (!empty2)
|
|
16081
16079
|
return false;
|
|
16082
16080
|
if ($head.parent.isTextblock) {
|
|
16083
|
-
if (view ? !view.endOfTextblock("backward",
|
|
16081
|
+
if (view ? !view.endOfTextblock("backward", state2) : $head.parentOffset > 0)
|
|
16084
16082
|
return false;
|
|
16085
16083
|
$cut = findCutBefore($head);
|
|
16086
16084
|
}
|
|
@@ -16088,7 +16086,7 @@ const selectNodeBackward = (state, dispatch, view) => {
|
|
|
16088
16086
|
if (!node || !NodeSelection.isSelectable(node))
|
|
16089
16087
|
return false;
|
|
16090
16088
|
if (dispatch)
|
|
16091
|
-
dispatch(
|
|
16089
|
+
dispatch(state2.tr.setSelection(NodeSelection.create(state2.doc, $cut.pos - node.nodeSize)).scrollIntoView());
|
|
16092
16090
|
return true;
|
|
16093
16091
|
};
|
|
16094
16092
|
function findCutBefore($pos) {
|
|
@@ -16101,27 +16099,27 @@ function findCutBefore($pos) {
|
|
|
16101
16099
|
}
|
|
16102
16100
|
return null;
|
|
16103
16101
|
}
|
|
16104
|
-
function atBlockEnd(
|
|
16105
|
-
let { $cursor } =
|
|
16106
|
-
if (!$cursor || (view ? !view.endOfTextblock("forward",
|
|
16102
|
+
function atBlockEnd(state2, view) {
|
|
16103
|
+
let { $cursor } = state2.selection;
|
|
16104
|
+
if (!$cursor || (view ? !view.endOfTextblock("forward", state2) : $cursor.parentOffset < $cursor.parent.content.size))
|
|
16107
16105
|
return null;
|
|
16108
16106
|
return $cursor;
|
|
16109
16107
|
}
|
|
16110
|
-
const joinForward = (
|
|
16111
|
-
let $cursor = atBlockEnd(
|
|
16108
|
+
const joinForward = (state2, dispatch, view) => {
|
|
16109
|
+
let $cursor = atBlockEnd(state2, view);
|
|
16112
16110
|
if (!$cursor)
|
|
16113
16111
|
return false;
|
|
16114
16112
|
let $cut = findCutAfter($cursor);
|
|
16115
16113
|
if (!$cut)
|
|
16116
16114
|
return false;
|
|
16117
16115
|
let after = $cut.nodeAfter;
|
|
16118
|
-
if (deleteBarrier(
|
|
16116
|
+
if (deleteBarrier(state2, $cut, dispatch))
|
|
16119
16117
|
return true;
|
|
16120
16118
|
if ($cursor.parent.content.size == 0 && (textblockAt(after, "start") || NodeSelection.isSelectable(after))) {
|
|
16121
|
-
let delStep = replaceStep(
|
|
16119
|
+
let delStep = replaceStep(state2.doc, $cursor.before(), $cursor.after(), Slice.empty);
|
|
16122
16120
|
if (delStep && delStep.slice.size < delStep.to - delStep.from) {
|
|
16123
16121
|
if (dispatch) {
|
|
16124
|
-
let tr2 =
|
|
16122
|
+
let tr2 = state2.tr.step(delStep);
|
|
16125
16123
|
tr2.setSelection(textblockAt(after, "start") ? Selection$1.findFrom(tr2.doc.resolve(tr2.mapping.map($cut.pos)), 1) : NodeSelection.create(tr2.doc, tr2.mapping.map($cut.pos)));
|
|
16126
16124
|
dispatch(tr2.scrollIntoView());
|
|
16127
16125
|
}
|
|
@@ -16130,17 +16128,17 @@ const joinForward = (state, dispatch, view) => {
|
|
|
16130
16128
|
}
|
|
16131
16129
|
if (after.isAtom && $cut.depth == $cursor.depth - 1) {
|
|
16132
16130
|
if (dispatch)
|
|
16133
|
-
dispatch(
|
|
16131
|
+
dispatch(state2.tr.delete($cut.pos, $cut.pos + after.nodeSize).scrollIntoView());
|
|
16134
16132
|
return true;
|
|
16135
16133
|
}
|
|
16136
16134
|
return false;
|
|
16137
16135
|
};
|
|
16138
|
-
const selectNodeForward = (
|
|
16139
|
-
let { $head, empty: empty2 } =
|
|
16136
|
+
const selectNodeForward = (state2, dispatch, view) => {
|
|
16137
|
+
let { $head, empty: empty2 } = state2.selection, $cut = $head;
|
|
16140
16138
|
if (!empty2)
|
|
16141
16139
|
return false;
|
|
16142
16140
|
if ($head.parent.isTextblock) {
|
|
16143
|
-
if (view ? !view.endOfTextblock("forward",
|
|
16141
|
+
if (view ? !view.endOfTextblock("forward", state2) : $head.parentOffset < $head.parent.content.size)
|
|
16144
16142
|
return false;
|
|
16145
16143
|
$cut = findCutAfter($head);
|
|
16146
16144
|
}
|
|
@@ -16148,7 +16146,7 @@ const selectNodeForward = (state, dispatch, view) => {
|
|
|
16148
16146
|
if (!node || !NodeSelection.isSelectable(node))
|
|
16149
16147
|
return false;
|
|
16150
16148
|
if (dispatch)
|
|
16151
|
-
dispatch(
|
|
16149
|
+
dispatch(state2.tr.setSelection(NodeSelection.create(state2.doc, $cut.pos)).scrollIntoView());
|
|
16152
16150
|
return true;
|
|
16153
16151
|
};
|
|
16154
16152
|
function findCutAfter($pos) {
|
|
@@ -16162,12 +16160,12 @@ function findCutAfter($pos) {
|
|
|
16162
16160
|
}
|
|
16163
16161
|
return null;
|
|
16164
16162
|
}
|
|
16165
|
-
const newlineInCode = (
|
|
16166
|
-
let { $head, $anchor } =
|
|
16163
|
+
const newlineInCode = (state2, dispatch) => {
|
|
16164
|
+
let { $head, $anchor } = state2.selection;
|
|
16167
16165
|
if (!$head.parent.type.spec.code || !$head.sameParent($anchor))
|
|
16168
16166
|
return false;
|
|
16169
16167
|
if (dispatch)
|
|
16170
|
-
dispatch(
|
|
16168
|
+
dispatch(state2.tr.insertText("\n").scrollIntoView());
|
|
16171
16169
|
return true;
|
|
16172
16170
|
};
|
|
16173
16171
|
function defaultBlockAt(match2) {
|
|
@@ -16178,22 +16176,22 @@ function defaultBlockAt(match2) {
|
|
|
16178
16176
|
}
|
|
16179
16177
|
return null;
|
|
16180
16178
|
}
|
|
16181
|
-
const exitCode = (
|
|
16182
|
-
let { $head, $anchor } =
|
|
16179
|
+
const exitCode = (state2, dispatch) => {
|
|
16180
|
+
let { $head, $anchor } = state2.selection;
|
|
16183
16181
|
if (!$head.parent.type.spec.code || !$head.sameParent($anchor))
|
|
16184
16182
|
return false;
|
|
16185
16183
|
let above = $head.node(-1), after = $head.indexAfter(-1), type3 = defaultBlockAt(above.contentMatchAt(after));
|
|
16186
16184
|
if (!type3 || !above.canReplaceWith(after, after, type3))
|
|
16187
16185
|
return false;
|
|
16188
16186
|
if (dispatch) {
|
|
16189
|
-
let pos = $head.after(), tr2 =
|
|
16187
|
+
let pos = $head.after(), tr2 = state2.tr.replaceWith(pos, pos, type3.createAndFill());
|
|
16190
16188
|
tr2.setSelection(Selection$1.near(tr2.doc.resolve(pos), 1));
|
|
16191
16189
|
dispatch(tr2.scrollIntoView());
|
|
16192
16190
|
}
|
|
16193
16191
|
return true;
|
|
16194
16192
|
};
|
|
16195
|
-
const createParagraphNear = (
|
|
16196
|
-
let sel =
|
|
16193
|
+
const createParagraphNear = (state2, dispatch) => {
|
|
16194
|
+
let sel = state2.selection, { $from, $to } = sel;
|
|
16197
16195
|
if (sel instanceof AllSelection || $from.parent.inlineContent || $to.parent.inlineContent)
|
|
16198
16196
|
return false;
|
|
16199
16197
|
let type3 = defaultBlockAt($to.parent.contentMatchAt($to.indexAfter()));
|
|
@@ -16201,21 +16199,21 @@ const createParagraphNear = (state, dispatch) => {
|
|
|
16201
16199
|
return false;
|
|
16202
16200
|
if (dispatch) {
|
|
16203
16201
|
let side = (!$from.parentOffset && $to.index() < $to.parent.childCount ? $from : $to).pos;
|
|
16204
|
-
let tr2 =
|
|
16202
|
+
let tr2 = state2.tr.insert(side, type3.createAndFill());
|
|
16205
16203
|
tr2.setSelection(TextSelection.create(tr2.doc, side + 1));
|
|
16206
16204
|
dispatch(tr2.scrollIntoView());
|
|
16207
16205
|
}
|
|
16208
16206
|
return true;
|
|
16209
16207
|
};
|
|
16210
|
-
const liftEmptyBlock = (
|
|
16211
|
-
let { $cursor } =
|
|
16208
|
+
const liftEmptyBlock = (state2, dispatch) => {
|
|
16209
|
+
let { $cursor } = state2.selection;
|
|
16212
16210
|
if (!$cursor || $cursor.parent.content.size)
|
|
16213
16211
|
return false;
|
|
16214
16212
|
if ($cursor.depth > 1 && $cursor.after() != $cursor.end(-1)) {
|
|
16215
16213
|
let before = $cursor.before();
|
|
16216
|
-
if (canSplit(
|
|
16214
|
+
if (canSplit(state2.doc, before)) {
|
|
16217
16215
|
if (dispatch)
|
|
16218
|
-
dispatch(
|
|
16216
|
+
dispatch(state2.tr.split(before).scrollIntoView());
|
|
16219
16217
|
return true;
|
|
16220
16218
|
}
|
|
16221
16219
|
}
|
|
@@ -16223,25 +16221,25 @@ const liftEmptyBlock = (state, dispatch) => {
|
|
|
16223
16221
|
if (target == null)
|
|
16224
16222
|
return false;
|
|
16225
16223
|
if (dispatch)
|
|
16226
|
-
dispatch(
|
|
16224
|
+
dispatch(state2.tr.lift(range2, target).scrollIntoView());
|
|
16227
16225
|
return true;
|
|
16228
16226
|
};
|
|
16229
16227
|
function splitBlockAs(splitNode) {
|
|
16230
|
-
return (
|
|
16231
|
-
let { $from, $to } =
|
|
16232
|
-
if (
|
|
16233
|
-
if (!$from.parentOffset || !canSplit(
|
|
16228
|
+
return (state2, dispatch) => {
|
|
16229
|
+
let { $from, $to } = state2.selection;
|
|
16230
|
+
if (state2.selection instanceof NodeSelection && state2.selection.node.isBlock) {
|
|
16231
|
+
if (!$from.parentOffset || !canSplit(state2.doc, $from.pos))
|
|
16234
16232
|
return false;
|
|
16235
16233
|
if (dispatch)
|
|
16236
|
-
dispatch(
|
|
16234
|
+
dispatch(state2.tr.split($from.pos).scrollIntoView());
|
|
16237
16235
|
return true;
|
|
16238
16236
|
}
|
|
16239
16237
|
if (!$from.parent.isBlock)
|
|
16240
16238
|
return false;
|
|
16241
16239
|
if (dispatch) {
|
|
16242
16240
|
let atEnd = $to.parentOffset == $to.parent.content.size;
|
|
16243
|
-
let tr2 =
|
|
16244
|
-
if (
|
|
16241
|
+
let tr2 = state2.tr;
|
|
16242
|
+
if (state2.selection instanceof TextSelection || state2.selection instanceof AllSelection)
|
|
16245
16243
|
tr2.deleteSelection();
|
|
16246
16244
|
let deflt = $from.depth == 0 ? null : defaultBlockAt($from.node(-1).contentMatchAt($from.indexAfter(-1)));
|
|
16247
16245
|
let splitType = splitNode && splitNode($to.parent, atEnd);
|
|
@@ -16266,31 +16264,31 @@ function splitBlockAs(splitNode) {
|
|
|
16266
16264
|
};
|
|
16267
16265
|
}
|
|
16268
16266
|
const splitBlock = splitBlockAs();
|
|
16269
|
-
const selectAll = (
|
|
16267
|
+
const selectAll = (state2, dispatch) => {
|
|
16270
16268
|
if (dispatch)
|
|
16271
|
-
dispatch(
|
|
16269
|
+
dispatch(state2.tr.setSelection(new AllSelection(state2.doc)));
|
|
16272
16270
|
return true;
|
|
16273
16271
|
};
|
|
16274
|
-
function joinMaybeClear(
|
|
16272
|
+
function joinMaybeClear(state2, $pos, dispatch) {
|
|
16275
16273
|
let before = $pos.nodeBefore, after = $pos.nodeAfter, index2 = $pos.index();
|
|
16276
16274
|
if (!before || !after || !before.type.compatibleContent(after.type))
|
|
16277
16275
|
return false;
|
|
16278
16276
|
if (!before.content.size && $pos.parent.canReplace(index2 - 1, index2)) {
|
|
16279
16277
|
if (dispatch)
|
|
16280
|
-
dispatch(
|
|
16278
|
+
dispatch(state2.tr.delete($pos.pos - before.nodeSize, $pos.pos).scrollIntoView());
|
|
16281
16279
|
return true;
|
|
16282
16280
|
}
|
|
16283
|
-
if (!$pos.parent.canReplace(index2, index2 + 1) || !(after.isTextblock || canJoin(
|
|
16281
|
+
if (!$pos.parent.canReplace(index2, index2 + 1) || !(after.isTextblock || canJoin(state2.doc, $pos.pos)))
|
|
16284
16282
|
return false;
|
|
16285
16283
|
if (dispatch)
|
|
16286
|
-
dispatch(
|
|
16284
|
+
dispatch(state2.tr.clearIncompatible($pos.pos, before.type, before.contentMatchAt(before.childCount)).join($pos.pos).scrollIntoView());
|
|
16287
16285
|
return true;
|
|
16288
16286
|
}
|
|
16289
|
-
function deleteBarrier(
|
|
16287
|
+
function deleteBarrier(state2, $cut, dispatch) {
|
|
16290
16288
|
let before = $cut.nodeBefore, after = $cut.nodeAfter, conn, match2;
|
|
16291
16289
|
if (before.type.spec.isolating || after.type.spec.isolating)
|
|
16292
16290
|
return false;
|
|
16293
|
-
if (joinMaybeClear(
|
|
16291
|
+
if (joinMaybeClear(state2, $cut, dispatch))
|
|
16294
16292
|
return true;
|
|
16295
16293
|
let canDelAfter = $cut.parent.canReplace($cut.index(), $cut.index() + 1);
|
|
16296
16294
|
if (canDelAfter && (conn = (match2 = before.contentMatchAt(before.childCount)).findWrapping(after.type)) && match2.matchType(conn[0] || after.type).validEnd) {
|
|
@@ -16299,7 +16297,7 @@ function deleteBarrier(state, $cut, dispatch) {
|
|
|
16299
16297
|
for (let i2 = conn.length - 1; i2 >= 0; i2--)
|
|
16300
16298
|
wrap2 = Fragment.from(conn[i2].create(null, wrap2));
|
|
16301
16299
|
wrap2 = Fragment.from(before.copy(wrap2));
|
|
16302
|
-
let tr2 =
|
|
16300
|
+
let tr2 = state2.tr.step(new ReplaceAroundStep($cut.pos - 1, end, $cut.pos, end, new Slice(wrap2, 1, 0), conn.length, true));
|
|
16303
16301
|
let joinAt = end + 2 * conn.length;
|
|
16304
16302
|
if (canJoin(tr2.doc, joinAt))
|
|
16305
16303
|
tr2.join(joinAt);
|
|
@@ -16311,7 +16309,7 @@ function deleteBarrier(state, $cut, dispatch) {
|
|
|
16311
16309
|
let range2 = selAfter && selAfter.$from.blockRange(selAfter.$to), target = range2 && liftTarget(range2);
|
|
16312
16310
|
if (target != null && target >= $cut.depth) {
|
|
16313
16311
|
if (dispatch)
|
|
16314
|
-
dispatch(
|
|
16312
|
+
dispatch(state2.tr.lift(range2, target).scrollIntoView());
|
|
16315
16313
|
return true;
|
|
16316
16314
|
}
|
|
16317
16315
|
if (canDelAfter && textblockAt(after, "start", true) && textblockAt(before, "end")) {
|
|
@@ -16330,7 +16328,7 @@ function deleteBarrier(state, $cut, dispatch) {
|
|
|
16330
16328
|
let end = Fragment.empty;
|
|
16331
16329
|
for (let i2 = wrap2.length - 1; i2 >= 0; i2--)
|
|
16332
16330
|
end = Fragment.from(wrap2[i2].copy(end));
|
|
16333
|
-
let tr2 =
|
|
16331
|
+
let tr2 = state2.tr.step(new ReplaceAroundStep($cut.pos - wrap2.length, $cut.pos + after.nodeSize, $cut.pos + afterDepth, $cut.pos + after.nodeSize - afterDepth, new Slice(end, wrap2.length, 0), 0, true));
|
|
16334
16332
|
dispatch(tr2.scrollIntoView());
|
|
16335
16333
|
}
|
|
16336
16334
|
return true;
|
|
@@ -16339,8 +16337,8 @@ function deleteBarrier(state, $cut, dispatch) {
|
|
|
16339
16337
|
return false;
|
|
16340
16338
|
}
|
|
16341
16339
|
function selectTextblockSide(side) {
|
|
16342
|
-
return function(
|
|
16343
|
-
let sel =
|
|
16340
|
+
return function(state2, dispatch) {
|
|
16341
|
+
let sel = state2.selection, $pos = side < 0 ? sel.$from : sel.$to;
|
|
16344
16342
|
let depth = $pos.depth;
|
|
16345
16343
|
while ($pos.node(depth).isInline) {
|
|
16346
16344
|
if (!depth)
|
|
@@ -16350,16 +16348,16 @@ function selectTextblockSide(side) {
|
|
|
16350
16348
|
if (!$pos.node(depth).isTextblock)
|
|
16351
16349
|
return false;
|
|
16352
16350
|
if (dispatch)
|
|
16353
|
-
dispatch(
|
|
16351
|
+
dispatch(state2.tr.setSelection(TextSelection.create(state2.doc, side < 0 ? $pos.start(depth) : $pos.end(depth))));
|
|
16354
16352
|
return true;
|
|
16355
16353
|
};
|
|
16356
16354
|
}
|
|
16357
16355
|
const selectTextblockStart = selectTextblockSide(-1);
|
|
16358
16356
|
const selectTextblockEnd = selectTextblockSide(1);
|
|
16359
16357
|
function chainCommands(...commands) {
|
|
16360
|
-
return function(
|
|
16358
|
+
return function(state2, dispatch, view) {
|
|
16361
16359
|
for (let i2 = 0; i2 < commands.length; i2++)
|
|
16362
|
-
if (commands[i2](
|
|
16360
|
+
if (commands[i2](state2, dispatch, view))
|
|
16363
16361
|
return true;
|
|
16364
16362
|
return false;
|
|
16365
16363
|
};
|
|
@@ -16586,7 +16584,7 @@ class Branch {
|
|
|
16586
16584
|
}
|
|
16587
16585
|
// Pop the latest event off the branch's history and apply it
|
|
16588
16586
|
// to a document transform.
|
|
16589
|
-
popEvent(
|
|
16587
|
+
popEvent(state2, preserveItems) {
|
|
16590
16588
|
if (this.eventCount == 0)
|
|
16591
16589
|
return null;
|
|
16592
16590
|
let end = this.items.length;
|
|
@@ -16602,7 +16600,7 @@ class Branch {
|
|
|
16602
16600
|
remap = this.remapping(end, this.items.length);
|
|
16603
16601
|
mapFrom = remap.maps.length;
|
|
16604
16602
|
}
|
|
16605
|
-
let transform =
|
|
16603
|
+
let transform = state2.tr;
|
|
16606
16604
|
let selection, remaining;
|
|
16607
16605
|
let addAfter = [], addBefore = [];
|
|
16608
16606
|
this.items.forEach((item, i2) => {
|
|
@@ -16799,7 +16797,7 @@ class HistoryState {
|
|
|
16799
16797
|
}
|
|
16800
16798
|
}
|
|
16801
16799
|
const DEPTH_OVERFLOW = 20;
|
|
16802
|
-
function applyTransaction(history2,
|
|
16800
|
+
function applyTransaction(history2, state2, tr2, options) {
|
|
16803
16801
|
let historyTr = tr2.getMeta(historyKey), rebased;
|
|
16804
16802
|
if (historyTr)
|
|
16805
16803
|
return historyTr.historyState;
|
|
@@ -16810,14 +16808,14 @@ function applyTransaction(history2, state, tr2, options) {
|
|
|
16810
16808
|
return history2;
|
|
16811
16809
|
} else if (appended && appended.getMeta(historyKey)) {
|
|
16812
16810
|
if (appended.getMeta(historyKey).redo)
|
|
16813
|
-
return new HistoryState(history2.done.addTransform(tr2, void 0, options, mustPreserveItems(
|
|
16811
|
+
return new HistoryState(history2.done.addTransform(tr2, void 0, options, mustPreserveItems(state2)), history2.undone, rangesFor(tr2.mapping.maps[tr2.steps.length - 1]), history2.prevTime, history2.prevComposition);
|
|
16814
16812
|
else
|
|
16815
|
-
return new HistoryState(history2.done, history2.undone.addTransform(tr2, void 0, options, mustPreserveItems(
|
|
16813
|
+
return new HistoryState(history2.done, history2.undone.addTransform(tr2, void 0, options, mustPreserveItems(state2)), null, history2.prevTime, history2.prevComposition);
|
|
16816
16814
|
} else if (tr2.getMeta("addToHistory") !== false && !(appended && appended.getMeta("addToHistory") === false)) {
|
|
16817
16815
|
let composition = tr2.getMeta("composition");
|
|
16818
16816
|
let newGroup = history2.prevTime == 0 || !appended && history2.prevComposition != composition && (history2.prevTime < (tr2.time || 0) - options.newGroupDelay || !isAdjacentTo(tr2, history2.prevRanges));
|
|
16819
16817
|
let prevRanges = appended ? mapRanges(history2.prevRanges, tr2.mapping) : rangesFor(tr2.mapping.maps[tr2.steps.length - 1]);
|
|
16820
|
-
return new HistoryState(history2.done.addTransform(tr2, newGroup ?
|
|
16818
|
+
return new HistoryState(history2.done.addTransform(tr2, newGroup ? state2.selection.getBookmark() : void 0, options, mustPreserveItems(state2)), Branch.empty, prevRanges, tr2.time, composition == null ? history2.prevComposition : composition);
|
|
16821
16819
|
} else if (rebased = tr2.getMeta("rebased")) {
|
|
16822
16820
|
return new HistoryState(history2.done.rebased(tr2, rebased), history2.undone.rebased(tr2, rebased), mapRanges(history2.prevRanges, tr2.mapping), history2.prevTime, history2.prevComposition);
|
|
16823
16821
|
} else {
|
|
@@ -16853,20 +16851,20 @@ function mapRanges(ranges, mapping) {
|
|
|
16853
16851
|
}
|
|
16854
16852
|
return result;
|
|
16855
16853
|
}
|
|
16856
|
-
function histTransaction(history2,
|
|
16857
|
-
let preserveItems = mustPreserveItems(
|
|
16858
|
-
let histOptions = historyKey.get(
|
|
16859
|
-
let pop = (redo2 ? history2.undone : history2.done).popEvent(
|
|
16854
|
+
function histTransaction(history2, state2, dispatch, redo2) {
|
|
16855
|
+
let preserveItems = mustPreserveItems(state2);
|
|
16856
|
+
let histOptions = historyKey.get(state2).spec.config;
|
|
16857
|
+
let pop = (redo2 ? history2.undone : history2.done).popEvent(state2, preserveItems);
|
|
16860
16858
|
if (!pop)
|
|
16861
16859
|
return;
|
|
16862
16860
|
let selection = pop.selection.resolve(pop.transform.doc);
|
|
16863
|
-
let added = (redo2 ? history2.done : history2.undone).addTransform(pop.transform,
|
|
16861
|
+
let added = (redo2 ? history2.done : history2.undone).addTransform(pop.transform, state2.selection.getBookmark(), histOptions, preserveItems);
|
|
16864
16862
|
let newHist = new HistoryState(redo2 ? added : pop.remaining, redo2 ? pop.remaining : added, null, 0, -1);
|
|
16865
16863
|
dispatch(pop.transform.setSelection(selection).setMeta(historyKey, { redo: redo2, historyState: newHist }).scrollIntoView());
|
|
16866
16864
|
}
|
|
16867
16865
|
let cachedPreserveItems = false, cachedPreserveItemsPlugins = null;
|
|
16868
|
-
function mustPreserveItems(
|
|
16869
|
-
let plugins2 =
|
|
16866
|
+
function mustPreserveItems(state2) {
|
|
16867
|
+
let plugins2 = state2.plugins;
|
|
16870
16868
|
if (cachedPreserveItemsPlugins != plugins2) {
|
|
16871
16869
|
cachedPreserveItems = false;
|
|
16872
16870
|
cachedPreserveItemsPlugins = plugins2;
|
|
@@ -16891,8 +16889,8 @@ function history(config = {}) {
|
|
|
16891
16889
|
init() {
|
|
16892
16890
|
return new HistoryState(Branch.empty, Branch.empty, null, 0, -1);
|
|
16893
16891
|
},
|
|
16894
|
-
apply(tr2, hist,
|
|
16895
|
-
return applyTransaction(hist,
|
|
16892
|
+
apply(tr2, hist, state2) {
|
|
16893
|
+
return applyTransaction(hist, state2, tr2, config);
|
|
16896
16894
|
}
|
|
16897
16895
|
},
|
|
16898
16896
|
config,
|
|
@@ -16910,20 +16908,20 @@ function history(config = {}) {
|
|
|
16910
16908
|
}
|
|
16911
16909
|
});
|
|
16912
16910
|
}
|
|
16913
|
-
const undo = (
|
|
16914
|
-
let hist = historyKey.getState(
|
|
16911
|
+
const undo = (state2, dispatch) => {
|
|
16912
|
+
let hist = historyKey.getState(state2);
|
|
16915
16913
|
if (!hist || hist.done.eventCount == 0)
|
|
16916
16914
|
return false;
|
|
16917
16915
|
if (dispatch)
|
|
16918
|
-
histTransaction(hist,
|
|
16916
|
+
histTransaction(hist, state2, dispatch, false);
|
|
16919
16917
|
return true;
|
|
16920
16918
|
};
|
|
16921
|
-
const redo = (
|
|
16922
|
-
let hist = historyKey.getState(
|
|
16919
|
+
const redo = (state2, dispatch) => {
|
|
16920
|
+
let hist = historyKey.getState(state2);
|
|
16923
16921
|
if (!hist || hist.undone.eventCount == 0)
|
|
16924
16922
|
return false;
|
|
16925
16923
|
if (dispatch)
|
|
16926
|
-
histTransaction(hist,
|
|
16924
|
+
histTransaction(hist, state2, dispatch, true);
|
|
16927
16925
|
return true;
|
|
16928
16926
|
};
|
|
16929
16927
|
const pDOM = ["p", 0], blockquoteDOM = ["blockquote", 0], hrDOM = ["hr"], preDOM = ["pre", ["code", 0]], brDOM = ["br"];
|
|
@@ -17116,8 +17114,8 @@ const marks = {
|
|
|
17116
17114
|
}
|
|
17117
17115
|
};
|
|
17118
17116
|
const schema = new Schema({ nodes, marks });
|
|
17119
|
-
const _hoisted_1$
|
|
17120
|
-
const _sfc_main$
|
|
17117
|
+
const _hoisted_1$F = ["id"];
|
|
17118
|
+
const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
|
|
17121
17119
|
__name: "RTXEditor",
|
|
17122
17120
|
props: {
|
|
17123
17121
|
elementId: { default: Math.random().toString(36).substr(2, 9) },
|
|
@@ -17138,7 +17136,7 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
|
|
|
17138
17136
|
} catch (err) {
|
|
17139
17137
|
content = { type: "doc", content: [] };
|
|
17140
17138
|
}
|
|
17141
|
-
const
|
|
17139
|
+
const state2 = EditorState.create({
|
|
17142
17140
|
doc: DOMParser.fromSchema(schema).schema.nodeFromJSON(content),
|
|
17143
17141
|
plugins: [
|
|
17144
17142
|
history(),
|
|
@@ -17146,7 +17144,7 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
|
|
|
17146
17144
|
keymap(baseKeymap)
|
|
17147
17145
|
]
|
|
17148
17146
|
});
|
|
17149
|
-
return
|
|
17147
|
+
return state2;
|
|
17150
17148
|
};
|
|
17151
17149
|
function handleChange(newState) {
|
|
17152
17150
|
const dom = document.createElement("div");
|
|
@@ -17155,10 +17153,10 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
|
|
|
17155
17153
|
html.value = (dom == null ? void 0 : dom.innerHTML) || "";
|
|
17156
17154
|
emit2("update:modelValue", html.value);
|
|
17157
17155
|
}
|
|
17158
|
-
const createEditorView = (
|
|
17156
|
+
const createEditorView = (state2) => {
|
|
17159
17157
|
const editorDiv = document.getElementById(`canvas-${props2.elementId}`);
|
|
17160
17158
|
view = new EditorView(editorDiv, {
|
|
17161
|
-
state,
|
|
17159
|
+
state: state2,
|
|
17162
17160
|
// editable: () => props.editable,
|
|
17163
17161
|
dispatchTransaction(transaction) {
|
|
17164
17162
|
const newState = view.state.apply(transaction);
|
|
@@ -17171,8 +17169,8 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
|
|
|
17171
17169
|
});
|
|
17172
17170
|
};
|
|
17173
17171
|
function loadContent() {
|
|
17174
|
-
const
|
|
17175
|
-
createEditorView(
|
|
17172
|
+
const state2 = createEditorStateFromHTML(props2.modelValue);
|
|
17173
|
+
createEditorView(state2);
|
|
17176
17174
|
}
|
|
17177
17175
|
vue.watch(
|
|
17178
17176
|
() => props2.modelValue,
|
|
@@ -17194,14 +17192,15 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
|
|
|
17194
17192
|
onClick: focusEditor,
|
|
17195
17193
|
id: `canvas-${_ctx.elementId}`,
|
|
17196
17194
|
onKeydown: _cache[0] || (_cache[0] = vue.withKeys(vue.withModifiers(($event) => _ctx.$emit("keydown.meta.enter"), ["meta"]), ["enter"]))
|
|
17197
|
-
}, null, 40, _hoisted_1$
|
|
17195
|
+
}, null, 40, _hoisted_1$F);
|
|
17198
17196
|
};
|
|
17199
17197
|
}
|
|
17200
17198
|
});
|
|
17201
|
-
const _sfc_main$
|
|
17199
|
+
const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
|
|
17202
17200
|
__name: "MaterialIcon",
|
|
17203
17201
|
props: {
|
|
17204
17202
|
icon: {},
|
|
17203
|
+
name: {},
|
|
17205
17204
|
size: {},
|
|
17206
17205
|
color: {}
|
|
17207
17206
|
},
|
|
@@ -17210,17 +17209,17 @@ const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
|
|
|
17210
17209
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
17211
17210
|
class: "bgl_icon-font",
|
|
17212
17211
|
style: vue.normalizeStyle({ fontSize: `${_ctx.size}rem`, color: _ctx.color })
|
|
17213
|
-
}, vue.toDisplayString(_ctx.icon), 5);
|
|
17212
|
+
}, vue.toDisplayString(_ctx.icon || _ctx.name), 5);
|
|
17214
17213
|
};
|
|
17215
17214
|
}
|
|
17216
17215
|
});
|
|
17217
|
-
const _hoisted_1$
|
|
17218
|
-
const _hoisted_2$
|
|
17219
|
-
const _hoisted_3$
|
|
17220
|
-
const _hoisted_4$
|
|
17221
|
-
const _hoisted_5$
|
|
17222
|
-
const _hoisted_6$
|
|
17223
|
-
const _sfc_main$
|
|
17216
|
+
const _hoisted_1$E = { class: "full-nav" };
|
|
17217
|
+
const _hoisted_2$x = { class: "nav-scroll" };
|
|
17218
|
+
const _hoisted_3$n = { class: "nav-links-wrapper" };
|
|
17219
|
+
const _hoisted_4$f = { class: "tooltip" };
|
|
17220
|
+
const _hoisted_5$c = { class: "bot-buttons-wrapper" };
|
|
17221
|
+
const _hoisted_6$8 = { class: "tooltip" };
|
|
17222
|
+
const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
|
|
17224
17223
|
__name: "NavBar",
|
|
17225
17224
|
props: {
|
|
17226
17225
|
footerLinks: { default: () => [] },
|
|
@@ -17244,14 +17243,14 @@ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
|
|
|
17244
17243
|
"aria-label": "Toggle Navigation",
|
|
17245
17244
|
tabindex: "0"
|
|
17246
17245
|
}, [
|
|
17247
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
17246
|
+
vue.createVNode(vue.unref(_sfc_main$H), {
|
|
17248
17247
|
icon: "chevron_right",
|
|
17249
17248
|
class: "top-arrow"
|
|
17250
17249
|
})
|
|
17251
17250
|
], 32),
|
|
17252
|
-
vue.createElementVNode("div", _hoisted_1$
|
|
17253
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
17254
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
17251
|
+
vue.createElementVNode("div", _hoisted_1$E, [
|
|
17252
|
+
vue.createElementVNode("div", _hoisted_2$x, [
|
|
17253
|
+
vue.createElementVNode("div", _hoisted_3$n, [
|
|
17255
17254
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.links, (link) => {
|
|
17256
17255
|
return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(link.to ? "router-link" : "div"), {
|
|
17257
17256
|
class: "nav-button",
|
|
@@ -17263,17 +17262,17 @@ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
|
|
|
17263
17262
|
}
|
|
17264
17263
|
}, {
|
|
17265
17264
|
default: vue.withCtx(() => [
|
|
17266
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
17265
|
+
vue.createVNode(vue.unref(_sfc_main$H), {
|
|
17267
17266
|
icon: link.icon
|
|
17268
17267
|
}, null, 8, ["icon"]),
|
|
17269
|
-
vue.createElementVNode("div", _hoisted_4$
|
|
17268
|
+
vue.createElementVNode("div", _hoisted_4$f, vue.toDisplayString(link.label), 1)
|
|
17270
17269
|
]),
|
|
17271
17270
|
_: 2
|
|
17272
17271
|
}, 1032, ["to", "onClick"]);
|
|
17273
17272
|
}), 128))
|
|
17274
17273
|
])
|
|
17275
17274
|
]),
|
|
17276
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
17275
|
+
vue.createElementVNode("div", _hoisted_5$c, [
|
|
17277
17276
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.footerLinks, (link) => {
|
|
17278
17277
|
return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(link.to ? "router-link" : "div"), {
|
|
17279
17278
|
class: "nav-button",
|
|
@@ -17285,10 +17284,10 @@ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
|
|
|
17285
17284
|
key: link.label
|
|
17286
17285
|
}, {
|
|
17287
17286
|
default: vue.withCtx(() => [
|
|
17288
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
17287
|
+
vue.createVNode(vue.unref(_sfc_main$H), {
|
|
17289
17288
|
icon: link.icon
|
|
17290
17289
|
}, null, 8, ["icon"]),
|
|
17291
|
-
vue.createElementVNode("div", _hoisted_6$
|
|
17290
|
+
vue.createElementVNode("div", _hoisted_6$8, vue.toDisplayString(link.label), 1)
|
|
17292
17291
|
]),
|
|
17293
17292
|
_: 2
|
|
17294
17293
|
}, 1032, ["to", "onClick"]);
|
|
@@ -17307,16 +17306,16 @@ const _export_sfc = (sfc, props2) => {
|
|
|
17307
17306
|
}
|
|
17308
17307
|
return target;
|
|
17309
17308
|
};
|
|
17310
|
-
const NavBar = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
17311
|
-
const _hoisted_1$
|
|
17309
|
+
const NavBar = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["__scopeId", "data-v-727b754a"]]);
|
|
17310
|
+
const _hoisted_1$D = {
|
|
17312
17311
|
key: 0,
|
|
17313
17312
|
class: "loading"
|
|
17314
17313
|
};
|
|
17315
|
-
const _hoisted_2$
|
|
17314
|
+
const _hoisted_2$w = {
|
|
17316
17315
|
key: 1,
|
|
17317
17316
|
class: "bgl_btn-flex"
|
|
17318
17317
|
};
|
|
17319
|
-
const _sfc_main$
|
|
17318
|
+
const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
|
|
17320
17319
|
__name: "Btn",
|
|
17321
17320
|
props: {
|
|
17322
17321
|
disabled: { type: Boolean, default: false },
|
|
@@ -17402,8 +17401,8 @@ const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
|
|
|
17402
17401
|
})
|
|
17403
17402
|
}, {
|
|
17404
17403
|
default: vue.withCtx(() => [
|
|
17405
|
-
_ctx.loading ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
17406
|
-
_ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
17404
|
+
_ctx.loading ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$D)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$w, [
|
|
17405
|
+
_ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$H), {
|
|
17407
17406
|
key: 0,
|
|
17408
17407
|
icon: _ctx.icon
|
|
17409
17408
|
}, null, 8, ["icon"])) : vue.createCommentVNode("", true),
|
|
@@ -17411,7 +17410,7 @@ const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
|
|
|
17411
17410
|
!vue.unref(slots)["default"] && _ctx.value ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
|
|
17412
17411
|
vue.createTextVNode(vue.toDisplayString(_ctx.value), 1)
|
|
17413
17412
|
], 64)) : vue.createCommentVNode("", true),
|
|
17414
|
-
props2["icon.end"] ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
17413
|
+
props2["icon.end"] ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$H), {
|
|
17415
17414
|
key: 2,
|
|
17416
17415
|
icon: props2["icon.end"]
|
|
17417
17416
|
}, null, 8, ["icon"])) : vue.createCommentVNode("", true)
|
|
@@ -17422,10 +17421,10 @@ const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
|
|
|
17422
17421
|
};
|
|
17423
17422
|
}
|
|
17424
17423
|
});
|
|
17425
|
-
const Btn = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
17426
|
-
const _hoisted_1$
|
|
17427
|
-
const _hoisted_2$
|
|
17428
|
-
const _sfc_main$
|
|
17424
|
+
const Btn = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["__scopeId", "data-v-0c8d9a95"]]);
|
|
17425
|
+
const _hoisted_1$C = { class: "tool-bar" };
|
|
17426
|
+
const _hoisted_2$v = { class: "modal-footer mt-3" };
|
|
17427
|
+
const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
|
|
17429
17428
|
__name: "Modal",
|
|
17430
17429
|
props: {
|
|
17431
17430
|
side: { type: Boolean },
|
|
@@ -17466,13 +17465,13 @@ const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
|
|
|
17466
17465
|
onClick: _cache[1] || (_cache[1] = () => _ctx.dismissable ? closeModal() : ""),
|
|
17467
17466
|
onKeydown: vue.withKeys(closeModal, ["esc"])
|
|
17468
17467
|
}, [
|
|
17469
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
17468
|
+
vue.createVNode(vue.unref(_sfc_main$t), {
|
|
17470
17469
|
class: "modal",
|
|
17471
17470
|
onClick: _cache[0] || (_cache[0] = vue.withModifiers(() => {
|
|
17472
17471
|
}, ["stop"]))
|
|
17473
17472
|
}, {
|
|
17474
17473
|
default: vue.withCtx(() => [
|
|
17475
|
-
vue.createElementVNode("header", _hoisted_1$
|
|
17474
|
+
vue.createElementVNode("header", _hoisted_1$C, [
|
|
17476
17475
|
vue.renderSlot(_ctx.$slots, "toolbar"),
|
|
17477
17476
|
vue.createVNode(vue.unref(Btn), {
|
|
17478
17477
|
style: vue.normalizeStyle({ float: _ctx.side ? "left" : "right" }),
|
|
@@ -17480,7 +17479,7 @@ const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
|
|
|
17480
17479
|
icon: "close",
|
|
17481
17480
|
onClick: closeModal
|
|
17482
17481
|
}, null, 8, ["style"]),
|
|
17483
|
-
_ctx.title ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
17482
|
+
_ctx.title ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$r), {
|
|
17484
17483
|
key: 0,
|
|
17485
17484
|
class: "modal-title",
|
|
17486
17485
|
tag: "h3",
|
|
@@ -17488,7 +17487,7 @@ const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
|
|
|
17488
17487
|
}, null, 8, ["label"])) : vue.createCommentVNode("", true)
|
|
17489
17488
|
]),
|
|
17490
17489
|
vue.renderSlot(_ctx.$slots, "default"),
|
|
17491
|
-
vue.createElementVNode("footer", _hoisted_2$
|
|
17490
|
+
vue.createElementVNode("footer", _hoisted_2$v, [
|
|
17492
17491
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.actions, (action, i2) => {
|
|
17493
17492
|
return vue.openBlock(), vue.createBlock(vue.unref(Btn), vue.mergeProps({
|
|
17494
17493
|
key: i2,
|
|
@@ -17505,7 +17504,7 @@ const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
|
|
|
17505
17504
|
};
|
|
17506
17505
|
}
|
|
17507
17506
|
});
|
|
17508
|
-
const _sfc_main$
|
|
17507
|
+
const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
|
|
17509
17508
|
__name: "ModalForm",
|
|
17510
17509
|
props: /* @__PURE__ */ vue.mergeModels({
|
|
17511
17510
|
side: { type: Boolean },
|
|
@@ -17562,7 +17561,7 @@ const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
|
|
|
17562
17561
|
}
|
|
17563
17562
|
__expose({ setFormValues });
|
|
17564
17563
|
return (_ctx, _cache) => {
|
|
17565
|
-
return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
17564
|
+
return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$E), {
|
|
17566
17565
|
"onOnUpdate:isModalVisible": props2["onUpdate:isModalVisible"],
|
|
17567
17566
|
side: _ctx.side,
|
|
17568
17567
|
ref_key: "modal",
|
|
@@ -17571,7 +17570,7 @@ const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
|
|
|
17571
17570
|
title: _ctx.title
|
|
17572
17571
|
}, vue.createSlots({
|
|
17573
17572
|
default: vue.withCtx(() => [
|
|
17574
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
17573
|
+
vue.createVNode(vue.unref(_sfc_main$l), {
|
|
17575
17574
|
onSubmit: runSubmit,
|
|
17576
17575
|
ref_key: "form",
|
|
17577
17576
|
ref: form,
|
|
@@ -17613,12 +17612,12 @@ const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
|
|
|
17613
17612
|
};
|
|
17614
17613
|
}
|
|
17615
17614
|
});
|
|
17616
|
-
const ModalForm = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
17617
|
-
const _hoisted_1$
|
|
17618
|
-
const _hoisted_2$
|
|
17619
|
-
const _hoisted_3$
|
|
17620
|
-
const _hoisted_4$
|
|
17621
|
-
const _sfc_main$
|
|
17615
|
+
const ModalForm = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__scopeId", "data-v-7e6899c7"]]);
|
|
17616
|
+
const _hoisted_1$B = { class: "accordion-item" };
|
|
17617
|
+
const _hoisted_2$u = ["aria-expanded", "aria-controls"];
|
|
17618
|
+
const _hoisted_3$m = { class: "accordion-label" };
|
|
17619
|
+
const _hoisted_4$e = ["id", "aria-hidden"];
|
|
17620
|
+
const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
|
|
17622
17621
|
__name: "AccordionItem",
|
|
17623
17622
|
props: {
|
|
17624
17623
|
label: {},
|
|
@@ -17642,20 +17641,20 @@ const _sfc_main$A = /* @__PURE__ */ vue.defineComponent({
|
|
|
17642
17641
|
accordionState.openItem = null;
|
|
17643
17642
|
}
|
|
17644
17643
|
return (_ctx, _cache) => {
|
|
17645
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
17644
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$B, [
|
|
17646
17645
|
vue.createElementVNode("button", {
|
|
17647
17646
|
onClick: _cache[0] || (_cache[0] = ($event) => toggle()),
|
|
17648
17647
|
"aria-expanded": vue.unref(open) ? "true" : "false",
|
|
17649
17648
|
class: "accordion-head",
|
|
17650
17649
|
"aria-controls": `accordion-body-${vue.unref(id)}`
|
|
17651
17650
|
}, [
|
|
17652
|
-
vue.createElementVNode("span", _hoisted_3$
|
|
17651
|
+
vue.createElementVNode("span", _hoisted_3$m, vue.toDisplayString(_ctx.label), 1),
|
|
17653
17652
|
vue.createElementVNode("div", {
|
|
17654
17653
|
class: vue.normalizeClass(["accordion-icon", { open: vue.unref(open) }])
|
|
17655
17654
|
}, [
|
|
17656
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
17655
|
+
vue.createVNode(vue.unref(_sfc_main$H), { icon: "expand_more" })
|
|
17657
17656
|
], 2)
|
|
17658
|
-
], 8, _hoisted_2$
|
|
17657
|
+
], 8, _hoisted_2$u),
|
|
17659
17658
|
vue.createVNode(vue.Transition, { name: "expand" }, {
|
|
17660
17659
|
default: vue.withCtx(() => [
|
|
17661
17660
|
vue.unref(open) ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -17665,7 +17664,7 @@ const _sfc_main$A = /* @__PURE__ */ vue.defineComponent({
|
|
|
17665
17664
|
"aria-hidden": vue.unref(open) ? "false" : "true"
|
|
17666
17665
|
}, [
|
|
17667
17666
|
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
17668
|
-
], 8, _hoisted_4$
|
|
17667
|
+
], 8, _hoisted_4$e)) : vue.createCommentVNode("", true)
|
|
17669
17668
|
]),
|
|
17670
17669
|
_: 3
|
|
17671
17670
|
})
|
|
@@ -17673,28 +17672,28 @@ const _sfc_main$A = /* @__PURE__ */ vue.defineComponent({
|
|
|
17673
17672
|
};
|
|
17674
17673
|
}
|
|
17675
17674
|
});
|
|
17676
|
-
const AccordionItem = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
17677
|
-
const _hoisted_1$
|
|
17678
|
-
const _hoisted_2$
|
|
17679
|
-
const _hoisted_3$
|
|
17680
|
-
const _sfc_main$
|
|
17675
|
+
const AccordionItem = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["__scopeId", "data-v-bf74738b"]]);
|
|
17676
|
+
const _hoisted_1$A = { class: "list-wrap bgl_card thin grid overflow-hidden h-100 p-0" };
|
|
17677
|
+
const _hoisted_2$t = { class: "p-1" };
|
|
17678
|
+
const _hoisted_3$l = { class: "list-content auto-flow-rows align-items-start overflow-y h-100" };
|
|
17679
|
+
const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
|
|
17681
17680
|
__name: "ListView",
|
|
17682
17681
|
setup(__props) {
|
|
17683
17682
|
return (_ctx, _cache) => {
|
|
17684
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
17685
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
17683
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$A, [
|
|
17684
|
+
vue.createElementVNode("div", _hoisted_2$t, [
|
|
17686
17685
|
vue.renderSlot(_ctx.$slots, "header")
|
|
17687
17686
|
]),
|
|
17688
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
17687
|
+
vue.createElementVNode("div", _hoisted_3$l, [
|
|
17689
17688
|
vue.renderSlot(_ctx.$slots, "default")
|
|
17690
17689
|
])
|
|
17691
17690
|
]);
|
|
17692
17691
|
};
|
|
17693
17692
|
}
|
|
17694
17693
|
});
|
|
17695
|
-
const _hoisted_1$
|
|
17696
|
-
const _hoisted_2$
|
|
17697
|
-
const _sfc_main$
|
|
17694
|
+
const _hoisted_1$z = { class: "txt16 no-margin ellipsis" };
|
|
17695
|
+
const _hoisted_2$s = { class: "txt14 no-margin txt-gray ellipsis" };
|
|
17696
|
+
const _sfc_main$A = /* @__PURE__ */ vue.defineComponent({
|
|
17698
17697
|
__name: "ListItem",
|
|
17699
17698
|
props: {
|
|
17700
17699
|
src: {},
|
|
@@ -17718,11 +17717,11 @@ const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
|
|
|
17718
17717
|
size: 40
|
|
17719
17718
|
}, null, 8, ["name", "src"])) : vue.createCommentVNode("", true),
|
|
17720
17719
|
vue.createElementVNode("div", null, [
|
|
17721
|
-
vue.createElementVNode("p", _hoisted_1$
|
|
17720
|
+
vue.createElementVNode("p", _hoisted_1$z, [
|
|
17722
17721
|
vue.createTextVNode(vue.toDisplayString(_ctx.title) + " ", 1),
|
|
17723
17722
|
vue.renderSlot(_ctx.$slots, "default")
|
|
17724
17723
|
]),
|
|
17725
|
-
vue.createElementVNode("p", _hoisted_2$
|
|
17724
|
+
vue.createElementVNode("p", _hoisted_2$s, [
|
|
17726
17725
|
vue.createTextVNode(vue.toDisplayString(_ctx.subtitle) + " ", 1),
|
|
17727
17726
|
vue.renderSlot(_ctx.$slots, "subtitle")
|
|
17728
17727
|
])
|
|
@@ -17733,81 +17732,15 @@ const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
|
|
|
17733
17732
|
};
|
|
17734
17733
|
}
|
|
17735
17734
|
});
|
|
17736
|
-
const _hoisted_1$
|
|
17737
|
-
const _hoisted_2$s = { class: "tabs grid auto-flow-columns fit-content" };
|
|
17738
|
-
const _hoisted_3$l = ["onClick"];
|
|
17739
|
-
const _sfc_main$x = /* @__PURE__ */ vue.defineComponent({
|
|
17740
|
-
__name: "TabbedLayout",
|
|
17741
|
-
props: {
|
|
17742
|
-
title: {},
|
|
17743
|
-
tabs: {},
|
|
17744
|
-
modelValue: {},
|
|
17745
|
-
router: {},
|
|
17746
|
-
sideTabs: { type: Boolean }
|
|
17747
|
-
},
|
|
17748
|
-
emits: ["update:modelValue"],
|
|
17749
|
-
setup(__props, { emit: __emit }) {
|
|
17750
|
-
const emit2 = __emit;
|
|
17751
|
-
let activeTab = vue.ref();
|
|
17752
|
-
const props2 = __props;
|
|
17753
|
-
function changeTab(tab) {
|
|
17754
|
-
var _a2;
|
|
17755
|
-
activeTab.value = tab;
|
|
17756
|
-
emit2("update:modelValue", activeTab.value);
|
|
17757
|
-
if (!props2.router)
|
|
17758
|
-
return;
|
|
17759
|
-
void ((_a2 = props2.router) == null ? void 0 : _a2.push({
|
|
17760
|
-
path: props2.router.currentRoute.value.path,
|
|
17761
|
-
query: { ...props2.router.currentRoute.value.query, t: tab },
|
|
17762
|
-
hash: props2.router.currentRoute.value.hash
|
|
17763
|
-
}));
|
|
17764
|
-
}
|
|
17765
|
-
vue.onMounted(() => {
|
|
17766
|
-
var _a2;
|
|
17767
|
-
const firstTab = props2.modelValue || ((_a2 = props2.router) == null ? void 0 : _a2.currentRoute.value.query.t) || props2.tabs[0];
|
|
17768
|
-
activeTab.value = firstTab;
|
|
17769
|
-
});
|
|
17770
|
-
return (_ctx, _cache) => {
|
|
17771
|
-
return vue.openBlock(), vue.createElementBlock("div", {
|
|
17772
|
-
class: vue.normalizeClass(["h-100 grid list-view gap-1", { "side-tabs": _ctx.sideTabs }])
|
|
17773
|
-
}, [
|
|
17774
|
-
vue.createElementVNode("div", _hoisted_1$B, [
|
|
17775
|
-
vue.renderSlot(_ctx.$slots, "top-section", {}, void 0, true),
|
|
17776
|
-
vue.createElementVNode("div", _hoisted_2$s, [
|
|
17777
|
-
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.tabs, (tab) => {
|
|
17778
|
-
var _a2;
|
|
17779
|
-
return vue.openBlock(), vue.createElementBlock("div", {
|
|
17780
|
-
class: vue.normalizeClass([{
|
|
17781
|
-
active: tab === vue.unref(activeTab) || tab === ((_a2 = _ctx.router) == null ? void 0 : _a2.currentRoute.value.path.split("/").slice(-1)[0])
|
|
17782
|
-
}, "tab"]),
|
|
17783
|
-
key: tab,
|
|
17784
|
-
onClick: ($event) => changeTab(tab)
|
|
17785
|
-
}, vue.toDisplayString(tab), 11, _hoisted_3$l);
|
|
17786
|
-
}), 128))
|
|
17787
|
-
])
|
|
17788
|
-
]),
|
|
17789
|
-
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.tabs.filter((item) => item === vue.unref(activeTab)), (tab) => {
|
|
17790
|
-
return vue.openBlock(), vue.createElementBlock("div", {
|
|
17791
|
-
class: "list-content",
|
|
17792
|
-
key: tab
|
|
17793
|
-
}, [
|
|
17794
|
-
vue.renderSlot(_ctx.$slots, tab, { key: tab }, void 0, true)
|
|
17795
|
-
]);
|
|
17796
|
-
}), 128))
|
|
17797
|
-
], 2);
|
|
17798
|
-
};
|
|
17799
|
-
}
|
|
17800
|
-
});
|
|
17801
|
-
const TabbedLayout = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["__scopeId", "data-v-37337215"]]);
|
|
17802
|
-
const _hoisted_1$A = { class: "comments-wrap" };
|
|
17735
|
+
const _hoisted_1$y = { class: "comments-wrap" };
|
|
17803
17736
|
const _hoisted_2$r = { class: "comment-list" };
|
|
17804
17737
|
const _hoisted_3$k = { class: "comment-top" };
|
|
17805
|
-
const _hoisted_4$
|
|
17806
|
-
const _hoisted_5$
|
|
17807
|
-
const _hoisted_6$
|
|
17808
|
-
const _hoisted_7$
|
|
17809
|
-
const _hoisted_8$
|
|
17810
|
-
const _sfc_main$
|
|
17738
|
+
const _hoisted_4$d = { class: "comment-owner" };
|
|
17739
|
+
const _hoisted_5$b = { class: "comment-time" };
|
|
17740
|
+
const _hoisted_6$7 = { class: "comment-actions" };
|
|
17741
|
+
const _hoisted_7$3 = ["innerHTML"];
|
|
17742
|
+
const _hoisted_8$1 = { class: "new-comment" };
|
|
17743
|
+
const _sfc_main$z = /* @__PURE__ */ vue.defineComponent({
|
|
17811
17744
|
__name: "Comments",
|
|
17812
17745
|
props: {
|
|
17813
17746
|
ref_table: {},
|
|
@@ -17850,7 +17783,7 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
17850
17783
|
void fetchData();
|
|
17851
17784
|
};
|
|
17852
17785
|
return (_ctx, _cache) => {
|
|
17853
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
17786
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$y, [
|
|
17854
17787
|
vue.createElementVNode("div", _hoisted_2$r, [
|
|
17855
17788
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(comments), (comment) => {
|
|
17856
17789
|
var _a2, _b, _c;
|
|
@@ -17862,22 +17795,22 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
17862
17795
|
key: comment.id
|
|
17863
17796
|
}, [
|
|
17864
17797
|
vue.createElementVNode("div", _hoisted_3$k, [
|
|
17865
|
-
vue.createElementVNode("div", _hoisted_4$
|
|
17866
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
17867
|
-
vue.createElementVNode("div", _hoisted_6$
|
|
17868
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
17798
|
+
vue.createElementVNode("div", _hoisted_4$d, vue.toDisplayString(comment.sender.first_name) + " " + vue.toDisplayString(comment.sender.last_name), 1),
|
|
17799
|
+
vue.createElementVNode("div", _hoisted_5$b, vue.toDisplayString(comment.updated_at.split("T")[0]), 1),
|
|
17800
|
+
vue.createElementVNode("div", _hoisted_6$7, [
|
|
17801
|
+
vue.createVNode(vue.unref(_sfc_main$H), {
|
|
17869
17802
|
size: 1,
|
|
17870
17803
|
class: "edit",
|
|
17871
17804
|
icon: "edit",
|
|
17872
17805
|
onClick: ($event) => vue.isRef(editComment) ? editComment.value = comment : editComment = comment
|
|
17873
17806
|
}, null, 8, ["onClick"]),
|
|
17874
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
17807
|
+
vue.createVNode(vue.unref(_sfc_main$H), {
|
|
17875
17808
|
size: 1.2,
|
|
17876
17809
|
class: "delete",
|
|
17877
17810
|
icon: "delete",
|
|
17878
17811
|
onClick: ($event) => deleteComment(comment.id)
|
|
17879
17812
|
}, null, 8, ["onClick"]),
|
|
17880
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
17813
|
+
vue.createVNode(vue.unref(_sfc_main$H), {
|
|
17881
17814
|
size: 1.2,
|
|
17882
17815
|
class: "save",
|
|
17883
17816
|
icon: "save",
|
|
@@ -17885,7 +17818,7 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
17885
17818
|
})
|
|
17886
17819
|
])
|
|
17887
17820
|
]),
|
|
17888
|
-
vue.unref(editComment) !== null && ((_c = vue.unref(editComment)) == null ? void 0 : _c.id) === comment.id ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
17821
|
+
vue.unref(editComment) !== null && ((_c = vue.unref(editComment)) == null ? void 0 : _c.id) === comment.id ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$I), {
|
|
17889
17822
|
key: 0,
|
|
17890
17823
|
modelValue: vue.unref(editComment).body_html,
|
|
17891
17824
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.unref(editComment).body_html = $event),
|
|
@@ -17894,12 +17827,12 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
17894
17827
|
key: 1,
|
|
17895
17828
|
class: "editor-wrapper",
|
|
17896
17829
|
innerHTML: comment.body_html
|
|
17897
|
-
}, null, 8, _hoisted_7$
|
|
17830
|
+
}, null, 8, _hoisted_7$3))
|
|
17898
17831
|
], 2);
|
|
17899
17832
|
}), 128))
|
|
17900
17833
|
]),
|
|
17901
|
-
vue.createElementVNode("div", _hoisted_8$
|
|
17902
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
17834
|
+
vue.createElementVNode("div", _hoisted_8$1, [
|
|
17835
|
+
vue.createVNode(vue.unref(_sfc_main$I), {
|
|
17903
17836
|
class: "comment-input",
|
|
17904
17837
|
modelValue: vue.unref(bodyHtml),
|
|
17905
17838
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => vue.isRef(bodyHtml) ? bodyHtml.value = $event : bodyHtml = $event),
|
|
@@ -17919,10 +17852,10 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
|
|
|
17919
17852
|
};
|
|
17920
17853
|
}
|
|
17921
17854
|
});
|
|
17922
|
-
const Comments = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
17923
|
-
const _hoisted_1$
|
|
17855
|
+
const Comments = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["__scopeId", "data-v-c4b41dc0"]]);
|
|
17856
|
+
const _hoisted_1$x = { class: "page-top" };
|
|
17924
17857
|
const _hoisted_2$q = { class: "top-title" };
|
|
17925
|
-
const _sfc_main$
|
|
17858
|
+
const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
|
|
17926
17859
|
__name: "PageTitle",
|
|
17927
17860
|
props: {
|
|
17928
17861
|
value: {
|
|
@@ -17932,7 +17865,7 @@ const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
|
|
|
17932
17865
|
},
|
|
17933
17866
|
setup(__props) {
|
|
17934
17867
|
return (_ctx, _cache) => {
|
|
17935
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
17868
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$x, [
|
|
17936
17869
|
vue.createElementVNode("h1", _hoisted_2$q, [
|
|
17937
17870
|
vue.renderSlot(_ctx.$slots, "default"),
|
|
17938
17871
|
vue.createTextVNode(" " + vue.toDisplayString(__props.value), 1)
|
|
@@ -17941,14 +17874,14 @@ const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
|
|
|
17941
17874
|
};
|
|
17942
17875
|
}
|
|
17943
17876
|
});
|
|
17944
|
-
const _hoisted_1$
|
|
17877
|
+
const _hoisted_1$w = { class: "table-list-wrap h-100" };
|
|
17945
17878
|
const _hoisted_2$p = { class: "infinite-wrapper" };
|
|
17946
17879
|
const _hoisted_3$j = { class: "row first-row" };
|
|
17947
|
-
const _hoisted_4$
|
|
17948
|
-
const _hoisted_5$
|
|
17949
|
-
const _hoisted_6$
|
|
17950
|
-
const _hoisted_7$
|
|
17951
|
-
const _sfc_main$
|
|
17880
|
+
const _hoisted_4$c = ["onClick"];
|
|
17881
|
+
const _hoisted_5$a = { class: "flex" };
|
|
17882
|
+
const _hoisted_6$6 = ["onClick"];
|
|
17883
|
+
const _hoisted_7$2 = { key: 1 };
|
|
17884
|
+
const _sfc_main$x = /* @__PURE__ */ vue.defineComponent({
|
|
17952
17885
|
__name: "TableSchema",
|
|
17953
17886
|
props: {
|
|
17954
17887
|
data: {},
|
|
@@ -17982,7 +17915,7 @@ const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
|
|
|
17982
17915
|
emit2("orderBy", `${fieldname} ${sortDirection.value}`.trim());
|
|
17983
17916
|
};
|
|
17984
17917
|
return (_ctx, _cache) => {
|
|
17985
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
17918
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$w, [
|
|
17986
17919
|
vue.createElementVNode("table", _hoisted_2$p, [
|
|
17987
17920
|
vue.createElementVNode("thead", _hoisted_3$j, [
|
|
17988
17921
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(computedSchema.value, (field) => {
|
|
@@ -17991,18 +17924,18 @@ const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
|
|
|
17991
17924
|
key: field.id,
|
|
17992
17925
|
onClick: ($event) => sort2((field == null ? void 0 : field.id) || "")
|
|
17993
17926
|
}, [
|
|
17994
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
17927
|
+
vue.createElementVNode("div", _hoisted_5$a, [
|
|
17995
17928
|
vue.createTextVNode(vue.toDisplayString(field.label || vue.unref(keyToLabel)(field.id)) + " ", 1),
|
|
17996
17929
|
vue.createElementVNode("div", {
|
|
17997
17930
|
class: vue.normalizeClass(["list-arrows", { sorted: vue.unref(sortField) === field.id }])
|
|
17998
17931
|
}, [
|
|
17999
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
17932
|
+
vue.createVNode(vue.unref(_sfc_main$H), {
|
|
18000
17933
|
class: vue.normalizeClass({ desc: vue.unref(sortDirection) === "DESC" }),
|
|
18001
17934
|
icon: "keyboard_arrow_up"
|
|
18002
17935
|
}, null, 8, ["class"])
|
|
18003
17936
|
], 2)
|
|
18004
17937
|
])
|
|
18005
|
-
], 8, _hoisted_4$
|
|
17938
|
+
], 8, _hoisted_4$c);
|
|
18006
17939
|
}), 128))
|
|
18007
17940
|
]),
|
|
18008
17941
|
vue.createElementVNode("tbody", {
|
|
@@ -18024,15 +17957,15 @@ const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
|
|
|
18024
17957
|
key: 0,
|
|
18025
17958
|
row,
|
|
18026
17959
|
field
|
|
18027
|
-
}, void 0, true) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_7$
|
|
18028
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
17960
|
+
}, void 0, true) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_7$2, [
|
|
17961
|
+
vue.createVNode(vue.unref(_sfc_main$k), {
|
|
18029
17962
|
field,
|
|
18030
17963
|
modelValue: row
|
|
18031
17964
|
}, null, 8, ["field", "modelValue"])
|
|
18032
17965
|
]))
|
|
18033
17966
|
]);
|
|
18034
17967
|
}), 128))
|
|
18035
|
-
], 8, _hoisted_6$
|
|
17968
|
+
], 8, _hoisted_6$6);
|
|
18036
17969
|
}), 128))
|
|
18037
17970
|
], 2)
|
|
18038
17971
|
])
|
|
@@ -18040,16 +17973,16 @@ const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
|
|
|
18040
17973
|
};
|
|
18041
17974
|
}
|
|
18042
17975
|
});
|
|
18043
|
-
const TableSchema = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
18044
|
-
const _sfc_main$
|
|
18045
|
-
const _hoisted_1$
|
|
17976
|
+
const TableSchema = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["__scopeId", "data-v-f3641508"]]);
|
|
17977
|
+
const _sfc_main$w = {};
|
|
17978
|
+
const _hoisted_1$v = { class: "flex space-between" };
|
|
18046
17979
|
function _sfc_render$1(_ctx, _cache) {
|
|
18047
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
17980
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$v, [
|
|
18048
17981
|
vue.renderSlot(_ctx.$slots, "default")
|
|
18049
17982
|
]);
|
|
18050
17983
|
}
|
|
18051
|
-
const TopBar = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
18052
|
-
const _sfc_main$
|
|
17984
|
+
const TopBar = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["render", _sfc_render$1]]);
|
|
17985
|
+
const _sfc_main$v = {};
|
|
18053
17986
|
function _sfc_render(_ctx, _cache) {
|
|
18054
17987
|
const _component_router_view = vue.resolveComponent("router-view");
|
|
18055
17988
|
return vue.openBlock(), vue.createBlock(_component_router_view, null, {
|
|
@@ -18071,8 +18004,8 @@ function _sfc_render(_ctx, _cache) {
|
|
|
18071
18004
|
_: 1
|
|
18072
18005
|
});
|
|
18073
18006
|
}
|
|
18074
|
-
const RouterWrapper = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
18075
|
-
const _hoisted_1$
|
|
18007
|
+
const RouterWrapper = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["render", _sfc_render]]);
|
|
18008
|
+
const _hoisted_1$u = {
|
|
18076
18009
|
key: 0,
|
|
18077
18010
|
class: "data"
|
|
18078
18011
|
};
|
|
@@ -18081,10 +18014,10 @@ const _hoisted_2$o = {
|
|
|
18081
18014
|
class: "data-row"
|
|
18082
18015
|
};
|
|
18083
18016
|
const _hoisted_3$i = { class: "key" };
|
|
18084
|
-
const _hoisted_4$
|
|
18085
|
-
const _hoisted_5$
|
|
18086
|
-
const _hoisted_6$
|
|
18087
|
-
const _sfc_main$
|
|
18017
|
+
const _hoisted_4$b = { key: 1 };
|
|
18018
|
+
const _hoisted_5$9 = { class: "key" };
|
|
18019
|
+
const _hoisted_6$5 = { class: "vlue" };
|
|
18020
|
+
const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
|
|
18088
18021
|
__name: "DataPreview",
|
|
18089
18022
|
props: /* @__PURE__ */ vue.mergeModels({
|
|
18090
18023
|
schema: {},
|
|
@@ -18098,8 +18031,8 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
|
18098
18031
|
const itemData = vue.useModel(__props, "data");
|
|
18099
18032
|
return (_ctx, _cache) => {
|
|
18100
18033
|
var _a2;
|
|
18101
|
-
return __props.data ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
18102
|
-
_ctx.title ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
18034
|
+
return __props.data ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$u, [
|
|
18035
|
+
_ctx.title ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$r), {
|
|
18103
18036
|
key: 0,
|
|
18104
18037
|
label: _ctx.title
|
|
18105
18038
|
}, null, 8, ["label"])) : vue.createCommentVNode("", true),
|
|
@@ -18109,7 +18042,7 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
|
18109
18042
|
}, [
|
|
18110
18043
|
vue.unref(iffer)(field, itemData.value) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$o, [
|
|
18111
18044
|
vue.createElementVNode("div", _hoisted_3$i, vue.toDisplayString((field == null ? void 0 : field.label) || vue.unref(keyToLabel)(field.id)), 1),
|
|
18112
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
18045
|
+
vue.createVNode(vue.unref(_sfc_main$k), {
|
|
18113
18046
|
field,
|
|
18114
18047
|
modelValue: itemData.value,
|
|
18115
18048
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => itemData.value = $event)
|
|
@@ -18117,14 +18050,14 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
|
18117
18050
|
])) : vue.createCommentVNode("", true)
|
|
18118
18051
|
], 64);
|
|
18119
18052
|
}), 128)),
|
|
18120
|
-
!((_a2 = _ctx.schema) == null ? void 0 : _a2.length) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$
|
|
18053
|
+
!((_a2 = _ctx.schema) == null ? void 0 : _a2.length) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$b, [
|
|
18121
18054
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(Object.entries(itemData.value), ([key, value]) => {
|
|
18122
18055
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
18123
18056
|
class: "data-row",
|
|
18124
18057
|
key
|
|
18125
18058
|
}, [
|
|
18126
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
18127
|
-
vue.createElementVNode("div", _hoisted_6$
|
|
18059
|
+
vue.createElementVNode("div", _hoisted_5$9, vue.toDisplayString(vue.unref(keyToLabel)(key)), 1),
|
|
18060
|
+
vue.createElementVNode("div", _hoisted_6$5, vue.toDisplayString(value), 1)
|
|
18128
18061
|
]);
|
|
18129
18062
|
}), 128))
|
|
18130
18063
|
])) : vue.createCommentVNode("", true),
|
|
@@ -18133,8 +18066,8 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
|
18133
18066
|
};
|
|
18134
18067
|
}
|
|
18135
18068
|
});
|
|
18136
|
-
const DataPreview = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
18137
|
-
const _sfc_main$
|
|
18069
|
+
const DataPreview = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["__scopeId", "data-v-bb2526f9"]]);
|
|
18070
|
+
const _sfc_main$t = /* @__PURE__ */ vue.defineComponent({
|
|
18138
18071
|
__name: "Card",
|
|
18139
18072
|
props: {
|
|
18140
18073
|
thin: { type: Boolean },
|
|
@@ -18161,8 +18094,8 @@ const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
|
|
|
18161
18094
|
};
|
|
18162
18095
|
}
|
|
18163
18096
|
});
|
|
18164
|
-
const _hoisted_1$
|
|
18165
|
-
const _sfc_main$
|
|
18097
|
+
const _hoisted_1$t = ["src", "alt"];
|
|
18098
|
+
const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
|
|
18166
18099
|
__name: "Avatar",
|
|
18167
18100
|
props: {
|
|
18168
18101
|
fallback: {},
|
|
@@ -18180,7 +18113,7 @@ const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
|
|
|
18180
18113
|
key: 0,
|
|
18181
18114
|
src: _ctx.src,
|
|
18182
18115
|
alt: _ctx.name
|
|
18183
|
-
}, null, 8, _hoisted_1$
|
|
18116
|
+
}, null, 8, _hoisted_1$t)) : (vue.openBlock(), vue.createElementBlock("p", {
|
|
18184
18117
|
key: 1,
|
|
18185
18118
|
style: vue.normalizeStyle({ "line-height": `${_ctx.size}px`, "font-size": `calc(1.5rem * ${_ctx.size} / 50)` })
|
|
18186
18119
|
}, vue.toDisplayString(_ctx.fallback || vue.unref(initials)(_ctx.name || "")), 5))
|
|
@@ -18188,8 +18121,8 @@ const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
|
|
|
18188
18121
|
};
|
|
18189
18122
|
}
|
|
18190
18123
|
});
|
|
18191
|
-
const Avatar = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
18192
|
-
const _sfc_main$
|
|
18124
|
+
const Avatar = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-c38bc02a"]]);
|
|
18125
|
+
const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
18193
18126
|
__name: "Title",
|
|
18194
18127
|
props: {
|
|
18195
18128
|
value: {
|
|
@@ -18217,13 +18150,13 @@ const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
|
|
|
18217
18150
|
};
|
|
18218
18151
|
}
|
|
18219
18152
|
});
|
|
18220
|
-
const _sfc_main$
|
|
18153
|
+
const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
|
|
18221
18154
|
__name: "Accordion",
|
|
18222
18155
|
setup(__props) {
|
|
18223
|
-
const
|
|
18156
|
+
const state2 = vue.reactive({
|
|
18224
18157
|
openItem: null
|
|
18225
18158
|
});
|
|
18226
|
-
vue.provide("accordionState",
|
|
18159
|
+
vue.provide("accordionState", state2);
|
|
18227
18160
|
return (_ctx, _cache) => {
|
|
18228
18161
|
return vue.openBlock(), vue.createElementBlock("div", null, [
|
|
18229
18162
|
vue.renderSlot(_ctx.$slots, "default")
|
|
@@ -18231,159 +18164,8 @@ const _sfc_main$n = /* @__PURE__ */ vue.defineComponent({
|
|
|
18231
18164
|
};
|
|
18232
18165
|
}
|
|
18233
18166
|
});
|
|
18234
|
-
const _hoisted_1$
|
|
18235
|
-
const _sfc_main$
|
|
18236
|
-
__name: "ComboBox",
|
|
18237
|
-
props: {
|
|
18238
|
-
options: {},
|
|
18239
|
-
placeholder: {},
|
|
18240
|
-
disabled: { type: Boolean },
|
|
18241
|
-
modelValue: {},
|
|
18242
|
-
searchable: { type: Boolean },
|
|
18243
|
-
required: { type: Boolean },
|
|
18244
|
-
label: {},
|
|
18245
|
-
fullWidth: { type: Boolean }
|
|
18246
|
-
},
|
|
18247
|
-
emits: ["update:modelValue"],
|
|
18248
|
-
setup(__props, { emit: __emit }) {
|
|
18249
|
-
let open = vue.ref(false);
|
|
18250
|
-
const searchInput = vue.ref(null);
|
|
18251
|
-
const props2 = __props;
|
|
18252
|
-
let selectedItem = vue.ref();
|
|
18253
|
-
let search = vue.ref("");
|
|
18254
|
-
const toggle = () => {
|
|
18255
|
-
open.value = !open.value;
|
|
18256
|
-
if (!open.value)
|
|
18257
|
-
search.value = "";
|
|
18258
|
-
if (open.value)
|
|
18259
|
-
setTimeout(() => {
|
|
18260
|
-
var _a2, _b, _c;
|
|
18261
|
-
return (_c = (_b = (_a2 = searchInput.value) == null ? void 0 : _a2.$el) == null ? void 0 : _b.querySelector("input")) == null ? void 0 : _c.focus();
|
|
18262
|
-
}, 100);
|
|
18263
|
-
};
|
|
18264
|
-
const valueToLabel = (value) => {
|
|
18265
|
-
if (!value)
|
|
18266
|
-
return "";
|
|
18267
|
-
const option2 = props2.options.find((option22) => {
|
|
18268
|
-
if (typeof option22 === "string" || typeof option22 === "number")
|
|
18269
|
-
return option22 === value;
|
|
18270
|
-
return option22.value === value;
|
|
18271
|
-
});
|
|
18272
|
-
if (!option2)
|
|
18273
|
-
return value;
|
|
18274
|
-
return getLabel(option2);
|
|
18275
|
-
};
|
|
18276
|
-
const emit2 = __emit;
|
|
18277
|
-
const getLabel = (option2) => {
|
|
18278
|
-
if (typeof option2 === "string")
|
|
18279
|
-
return option2;
|
|
18280
|
-
if (typeof option2 === "number")
|
|
18281
|
-
return `${option2}`;
|
|
18282
|
-
return option2.label;
|
|
18283
|
-
};
|
|
18284
|
-
const isSelected = (option2) => {
|
|
18285
|
-
if (typeof option2 === "string" || typeof option2 === "number")
|
|
18286
|
-
return option2 === selectedItem.value;
|
|
18287
|
-
return option2.value === selectedItem.value;
|
|
18288
|
-
};
|
|
18289
|
-
const filteredOptions = vue.computed(() => props2.options.filter((option2) => {
|
|
18290
|
-
const searchTerm = new RegExp(search.value, "gi");
|
|
18291
|
-
if (typeof option2 === "string")
|
|
18292
|
-
return option2.match(searchTerm);
|
|
18293
|
-
if (typeof option2 === "number")
|
|
18294
|
-
return `${option2}`.match(searchTerm);
|
|
18295
|
-
return option2.label.match(searchTerm);
|
|
18296
|
-
}));
|
|
18297
|
-
const select2 = (option2) => {
|
|
18298
|
-
if (typeof option2 === "string")
|
|
18299
|
-
selectedItem.value = option2;
|
|
18300
|
-
else if (typeof option2 === "number")
|
|
18301
|
-
selectedItem.value = option2;
|
|
18302
|
-
else
|
|
18303
|
-
selectedItem.value = option2.value;
|
|
18304
|
-
emit2("update:modelValue", selectedItem.value);
|
|
18305
|
-
open.value = false;
|
|
18306
|
-
};
|
|
18307
|
-
vue.watch(() => props2.modelValue, (value) => {
|
|
18308
|
-
if (value !== selectedItem.value)
|
|
18309
|
-
selectedItem.value = value;
|
|
18310
|
-
}, { immediate: true });
|
|
18311
|
-
return (_ctx, _cache) => {
|
|
18312
|
-
return vue.openBlock(), vue.createBlock(vue.unref(kt$1), {
|
|
18313
|
-
placement: "bottom-start",
|
|
18314
|
-
class: "bagel-input combobox"
|
|
18315
|
-
}, {
|
|
18316
|
-
popper: vue.withCtx(({ hide }) => [
|
|
18317
|
-
vue.createVNode(vue.unref(_sfc_main$q), {
|
|
18318
|
-
class: "combobox-options p-05",
|
|
18319
|
-
style: vue.normalizeStyle({ width: _ctx.fullWidth ? "100%" : "auto" })
|
|
18320
|
-
}, {
|
|
18321
|
-
default: vue.withCtx(() => [
|
|
18322
|
-
_ctx.searchable ? (vue.openBlock(), vue.createBlock(vue.unref(TextInput), {
|
|
18323
|
-
key: 0,
|
|
18324
|
-
ref_key: "searchInput",
|
|
18325
|
-
ref: searchInput,
|
|
18326
|
-
dense: "",
|
|
18327
|
-
placeholder: "Search",
|
|
18328
|
-
icon: "search",
|
|
18329
|
-
modelValue: vue.unref(search),
|
|
18330
|
-
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => vue.isRef(search) ? search.value = $event : search = $event)
|
|
18331
|
-
}, null, 8, ["modelValue"])) : vue.createCommentVNode("", true),
|
|
18332
|
-
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(filteredOptions.value, (option2, i2) => {
|
|
18333
|
-
return vue.openBlock(), vue.createElementBlock("div", {
|
|
18334
|
-
class: vue.normalizeClass(["combobox-option hover gap-1", { selected: option2 === vue.unref(selectedItem) }]),
|
|
18335
|
-
key: `${option2}${i2}`,
|
|
18336
|
-
onClick: () => {
|
|
18337
|
-
select2(option2);
|
|
18338
|
-
hide();
|
|
18339
|
-
}
|
|
18340
|
-
}, [
|
|
18341
|
-
isSelected(option2) ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$F), {
|
|
18342
|
-
key: 0,
|
|
18343
|
-
icon: "check"
|
|
18344
|
-
})) : vue.createCommentVNode("", true),
|
|
18345
|
-
!isSelected(option2) ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$F), {
|
|
18346
|
-
key: 1,
|
|
18347
|
-
class: "opacity-3",
|
|
18348
|
-
icon: "fiber_manual_record"
|
|
18349
|
-
})) : vue.createCommentVNode("", true),
|
|
18350
|
-
vue.createElementVNode("span", null, vue.toDisplayString(getLabel(option2)), 1)
|
|
18351
|
-
], 10, _hoisted_1$u);
|
|
18352
|
-
}), 128)),
|
|
18353
|
-
vue.renderSlot(_ctx.$slots, "last", {}, void 0, true)
|
|
18354
|
-
]),
|
|
18355
|
-
_: 2
|
|
18356
|
-
}, 1032, ["style"])
|
|
18357
|
-
]),
|
|
18358
|
-
default: vue.withCtx(() => [
|
|
18359
|
-
vue.createElementVNode("label", null, [
|
|
18360
|
-
vue.createTextVNode(vue.toDisplayString(_ctx.label) + " ", 1),
|
|
18361
|
-
vue.createElementVNode("button", {
|
|
18362
|
-
type: "button",
|
|
18363
|
-
class: "combobox-btn",
|
|
18364
|
-
onClick: toggle
|
|
18365
|
-
}, [
|
|
18366
|
-
vue.createTextVNode(vue.toDisplayString(valueToLabel(vue.unref(selectedItem)) || _ctx.placeholder || "Select") + " ", 1),
|
|
18367
|
-
vue.createVNode(vue.unref(_sfc_main$F), vue.normalizeProps(vue.guardReactiveProps({ "icon": vue.unref(open) ? "unfold_less" : "unfold_more" })), null, 16)
|
|
18368
|
-
]),
|
|
18369
|
-
_ctx.required ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("input", {
|
|
18370
|
-
key: 0,
|
|
18371
|
-
style: { "width": "0", "height": "0", "position": "absolute", "opacity": "0", "z-index": "-1" },
|
|
18372
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.isRef(selectedItem) ? selectedItem.value = $event : selectedItem = $event),
|
|
18373
|
-
required: ""
|
|
18374
|
-
}, null, 512)), [
|
|
18375
|
-
[vue.vModelText, vue.unref(selectedItem)]
|
|
18376
|
-
]) : vue.createCommentVNode("", true)
|
|
18377
|
-
])
|
|
18378
|
-
]),
|
|
18379
|
-
_: 3
|
|
18380
|
-
});
|
|
18381
|
-
};
|
|
18382
|
-
}
|
|
18383
|
-
});
|
|
18384
|
-
const ComboBox = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-14fbb20b"]]);
|
|
18385
|
-
const _hoisted_1$t = ["dismissable"];
|
|
18386
|
-
const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
|
|
18167
|
+
const _hoisted_1$s = ["dismissable"];
|
|
18168
|
+
const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
|
|
18387
18169
|
__name: "Alert",
|
|
18388
18170
|
props: {
|
|
18389
18171
|
message: {},
|
|
@@ -18403,7 +18185,7 @@ const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
|
|
|
18403
18185
|
class: vue.normalizeClass(["alert", [_ctx.type]]),
|
|
18404
18186
|
dismissable: _ctx.dismissable
|
|
18405
18187
|
}, [
|
|
18406
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
18188
|
+
vue.createVNode(vue.unref(_sfc_main$H), {
|
|
18407
18189
|
class: "alert_icon",
|
|
18408
18190
|
icon: _ctx.type,
|
|
18409
18191
|
size: 2,
|
|
@@ -18417,12 +18199,12 @@ const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
|
|
|
18417
18199
|
class: "alert_close",
|
|
18418
18200
|
icon: "close"
|
|
18419
18201
|
})
|
|
18420
|
-
], 10, _hoisted_1$
|
|
18202
|
+
], 10, _hoisted_1$s)) : vue.createCommentVNode("", true);
|
|
18421
18203
|
};
|
|
18422
18204
|
}
|
|
18423
18205
|
});
|
|
18424
|
-
const Alert = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
18425
|
-
const _sfc_main$
|
|
18206
|
+
const Alert = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__scopeId", "data-v-94bfcb05"]]);
|
|
18207
|
+
const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
|
|
18426
18208
|
__name: "Badge",
|
|
18427
18209
|
props: {
|
|
18428
18210
|
color: {},
|
|
@@ -18437,13 +18219,13 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
18437
18219
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
18438
18220
|
class: vue.normalizeClass(["pill", [_ctx.color]])
|
|
18439
18221
|
}, [
|
|
18440
|
-
_ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
18222
|
+
_ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$H), {
|
|
18441
18223
|
key: 0,
|
|
18442
18224
|
class: "inline",
|
|
18443
18225
|
icon: _ctx.icon
|
|
18444
18226
|
}, null, 8, ["icon"])) : vue.createCommentVNode("", true),
|
|
18445
18227
|
vue.createTextVNode(" " + vue.toDisplayString(_ctx.text) + " ", 1),
|
|
18446
|
-
props2["icon.end"] ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
18228
|
+
props2["icon.end"] ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$H), {
|
|
18447
18229
|
key: 1,
|
|
18448
18230
|
class: "inline",
|
|
18449
18231
|
icon: props2["icon.end"]
|
|
@@ -18452,11 +18234,11 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
|
18452
18234
|
};
|
|
18453
18235
|
}
|
|
18454
18236
|
});
|
|
18455
|
-
const Badge = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
18456
|
-
const _hoisted_1$
|
|
18237
|
+
const Badge = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-10743b06"]]);
|
|
18238
|
+
const _hoisted_1$r = { class: "bgl_vid" };
|
|
18457
18239
|
const _hoisted_2$n = ["src"];
|
|
18458
18240
|
const _hoisted_3$h = ["src", "autoplay", "muted", "loop", "controls"];
|
|
18459
|
-
const _sfc_main$
|
|
18241
|
+
const _sfc_main$n = /* @__PURE__ */ vue.defineComponent({
|
|
18460
18242
|
__name: "BglVideo",
|
|
18461
18243
|
props: {
|
|
18462
18244
|
src: {},
|
|
@@ -18495,7 +18277,7 @@ const _sfc_main$j = /* @__PURE__ */ vue.defineComponent({
|
|
|
18495
18277
|
});
|
|
18496
18278
|
console.log("Video URL:", videoUrl.value);
|
|
18497
18279
|
return (_ctx, _cache) => {
|
|
18498
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
18280
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$r, [
|
|
18499
18281
|
embedType.value ? (vue.openBlock(), vue.createElementBlock("iframe", {
|
|
18500
18282
|
key: 0,
|
|
18501
18283
|
src: videoUrl.value,
|
|
@@ -18517,13 +18299,13 @@ const _sfc_main$j = /* @__PURE__ */ vue.defineComponent({
|
|
|
18517
18299
|
};
|
|
18518
18300
|
}
|
|
18519
18301
|
});
|
|
18520
|
-
const BglVideo = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
18521
|
-
const _hoisted_1$
|
|
18302
|
+
const BglVideo = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-23835d69"]]);
|
|
18303
|
+
const _hoisted_1$q = {
|
|
18522
18304
|
key: 0,
|
|
18523
18305
|
class: "blocker"
|
|
18524
18306
|
};
|
|
18525
18307
|
const _hoisted_2$m = { class: "Handlers" };
|
|
18526
|
-
const _sfc_main$
|
|
18308
|
+
const _sfc_main$m = /* @__PURE__ */ vue.defineComponent({
|
|
18527
18309
|
__name: "Carousel",
|
|
18528
18310
|
props: {
|
|
18529
18311
|
autoHeight: {
|
|
@@ -18673,7 +18455,7 @@ const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
|
|
|
18673
18455
|
ref_key: "bglSlider",
|
|
18674
18456
|
ref: bglSlider
|
|
18675
18457
|
}, [
|
|
18676
|
-
vue.unref(isDragging) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
18458
|
+
vue.unref(isDragging) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$q)) : vue.createCommentVNode("", true),
|
|
18677
18459
|
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
18678
18460
|
], 34),
|
|
18679
18461
|
vue.createElementVNode("div", _hoisted_2$m, [
|
|
@@ -18688,8 +18470,8 @@ const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
|
|
|
18688
18470
|
};
|
|
18689
18471
|
}
|
|
18690
18472
|
});
|
|
18691
|
-
const Carousel = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
18692
|
-
const _sfc_main$
|
|
18473
|
+
const Carousel = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-7e8d16cb"]]);
|
|
18474
|
+
const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
|
|
18693
18475
|
__name: "BglForm",
|
|
18694
18476
|
props: {
|
|
18695
18477
|
label: {},
|
|
@@ -18729,7 +18511,6 @@ const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
|
|
|
18729
18511
|
let formStatus = vue.ref("idle");
|
|
18730
18512
|
const runSubmit = () => {
|
|
18731
18513
|
var _a2;
|
|
18732
|
-
console.log("runSubmit");
|
|
18733
18514
|
try {
|
|
18734
18515
|
validateForm();
|
|
18735
18516
|
(_a2 = props2.onSubmit) == null ? void 0 : _a2.call(props2, data2.value);
|
|
@@ -18764,7 +18545,7 @@ const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
|
|
|
18764
18545
|
return (_ctx, _cache) => {
|
|
18765
18546
|
return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
|
|
18766
18547
|
_ctx.id ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 0 }, vue.renderList(_ctx.schema, (field, i2) => {
|
|
18767
|
-
return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
18548
|
+
return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$k), {
|
|
18768
18549
|
key: field.id || `${i2}p`,
|
|
18769
18550
|
field,
|
|
18770
18551
|
modelValue: data2.value,
|
|
@@ -18776,13 +18557,13 @@ const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
|
|
|
18776
18557
|
ref: form,
|
|
18777
18558
|
onSubmit: vue.withModifiers(runSubmit, ["prevent"])
|
|
18778
18559
|
}, [
|
|
18779
|
-
_ctx.label ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
18560
|
+
_ctx.label ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$r), {
|
|
18780
18561
|
key: 0,
|
|
18781
18562
|
tag: "h4",
|
|
18782
18563
|
label: _ctx.label
|
|
18783
18564
|
}, null, 8, ["label"])) : vue.createCommentVNode("", true),
|
|
18784
18565
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.schema, (field, i2) => {
|
|
18785
|
-
return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
18566
|
+
return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$k), {
|
|
18786
18567
|
key: field.id || `${i2}p`,
|
|
18787
18568
|
field,
|
|
18788
18569
|
modelValue: data2.value,
|
|
@@ -18797,7 +18578,7 @@ const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
|
|
|
18797
18578
|
};
|
|
18798
18579
|
}
|
|
18799
18580
|
});
|
|
18800
|
-
const _sfc_main$
|
|
18581
|
+
const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
18801
18582
|
__name: "BglField",
|
|
18802
18583
|
props: {
|
|
18803
18584
|
field: {},
|
|
@@ -18810,7 +18591,7 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
|
|
|
18810
18591
|
if (props2.field.$el === "text")
|
|
18811
18592
|
return TextInput;
|
|
18812
18593
|
if (props2.field.$el === "select")
|
|
18813
|
-
return
|
|
18594
|
+
return SelectInput;
|
|
18814
18595
|
if (props2.field.$el === "toggle")
|
|
18815
18596
|
return ToggleInput;
|
|
18816
18597
|
if (props2.field.$el === "check")
|
|
@@ -18888,7 +18669,7 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
|
|
|
18888
18669
|
}
|
|
18889
18670
|
});
|
|
18890
18671
|
const _withScopeId$1 = (n2) => (vue.pushScopeId("data-v-e8219826"), n2 = n2(), vue.popScopeId(), n2);
|
|
18891
|
-
const _hoisted_1$
|
|
18672
|
+
const _hoisted_1$p = ["title"];
|
|
18892
18673
|
const _hoisted_2$l = /* @__PURE__ */ _withScopeId$1(() => /* @__PURE__ */ vue.createElementVNode("svg", {
|
|
18893
18674
|
xmlns: "http://www.w3.org/2000/svg",
|
|
18894
18675
|
height: "24",
|
|
@@ -18900,8 +18681,8 @@ const _hoisted_2$l = /* @__PURE__ */ _withScopeId$1(() => /* @__PURE__ */ vue.cr
|
|
|
18900
18681
|
const _hoisted_3$g = [
|
|
18901
18682
|
_hoisted_2$l
|
|
18902
18683
|
];
|
|
18903
|
-
const _hoisted_4$
|
|
18904
|
-
const _sfc_main$
|
|
18684
|
+
const _hoisted_4$a = ["required", "id"];
|
|
18685
|
+
const _sfc_main$j = /* @__PURE__ */ vue.defineComponent({
|
|
18905
18686
|
__name: "CheckInput",
|
|
18906
18687
|
props: /* @__PURE__ */ vue.mergeModels({
|
|
18907
18688
|
label: {},
|
|
@@ -18931,18 +18712,18 @@ const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
|
|
|
18931
18712
|
id: _ctx.id,
|
|
18932
18713
|
type: "checkbox",
|
|
18933
18714
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => checked.value = $event)
|
|
18934
|
-
}, null, 8, _hoisted_4$
|
|
18715
|
+
}, null, 8, _hoisted_4$a), [
|
|
18935
18716
|
[vue.vModelCheckbox, checked.value]
|
|
18936
18717
|
]),
|
|
18937
18718
|
vue.renderSlot(_ctx.$slots, "label", {}, () => [
|
|
18938
18719
|
vue.createTextVNode(vue.toDisplayString(_ctx.label), 1)
|
|
18939
18720
|
], true)
|
|
18940
18721
|
])
|
|
18941
|
-
], 10, _hoisted_1$
|
|
18722
|
+
], 10, _hoisted_1$p);
|
|
18942
18723
|
};
|
|
18943
18724
|
}
|
|
18944
18725
|
});
|
|
18945
|
-
const CheckInput = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
18726
|
+
const CheckInput = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-e8219826"]]);
|
|
18946
18727
|
function toDate(argument) {
|
|
18947
18728
|
const argStr = Object.prototype.toString.call(argument);
|
|
18948
18729
|
if (argument instanceof Date || typeof argument === "object" && argStr === "[object Date]") {
|
|
@@ -27551,9 +27332,9 @@ const ar = ({
|
|
|
27551
27332
|
Object.entries(Mo).forEach(([e, t]) => {
|
|
27552
27333
|
e !== "default" && (Va[e] = t);
|
|
27553
27334
|
});
|
|
27554
|
-
const _hoisted_1$
|
|
27335
|
+
const _hoisted_1$o = ["title"];
|
|
27555
27336
|
const _hoisted_2$k = { key: 0 };
|
|
27556
|
-
const _sfc_main$
|
|
27337
|
+
const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
|
|
27557
27338
|
__name: "DateInput",
|
|
27558
27339
|
props: {
|
|
27559
27340
|
label: {},
|
|
@@ -27599,14 +27380,14 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
|
|
|
27599
27380
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => date2.value = $event),
|
|
27600
27381
|
"enable-time-picker": _ctx.enableTime
|
|
27601
27382
|
}, _ctx.extraProps), null, 16, ["modelValue", "enable-time-picker"])
|
|
27602
|
-
], 10, _hoisted_1$
|
|
27383
|
+
], 10, _hoisted_1$o);
|
|
27603
27384
|
};
|
|
27604
27385
|
}
|
|
27605
27386
|
});
|
|
27606
|
-
const _hoisted_1$
|
|
27387
|
+
const _hoisted_1$n = ["title"];
|
|
27607
27388
|
const _hoisted_2$j = { key: 0 };
|
|
27608
27389
|
const _hoisted_3$f = ["value", "placeholder"];
|
|
27609
|
-
const _sfc_main$
|
|
27390
|
+
const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
|
|
27610
27391
|
__name: "JSONInput",
|
|
27611
27392
|
props: {
|
|
27612
27393
|
description: { default: "" },
|
|
@@ -27638,1384 +27419,168 @@ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
|
|
|
27638
27419
|
class: vue.normalizeClass({ "no-edit": !_ctx.editMode }),
|
|
27639
27420
|
placeholder: _ctx.placeholder
|
|
27640
27421
|
}, null, 42, _hoisted_3$f)
|
|
27641
|
-
], 10, _hoisted_1$
|
|
27422
|
+
], 10, _hoisted_1$n);
|
|
27642
27423
|
};
|
|
27643
27424
|
}
|
|
27644
27425
|
});
|
|
27645
|
-
const JSONInput = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
27646
|
-
|
|
27647
|
-
|
|
27648
|
-
|
|
27649
|
-
if (Array.isArray(opt) && opt.length === 0)
|
|
27650
|
-
return true;
|
|
27651
|
-
return !opt;
|
|
27652
|
-
}
|
|
27653
|
-
function not(fun) {
|
|
27654
|
-
return (...params) => !fun(...params);
|
|
27655
|
-
}
|
|
27656
|
-
function includes(str, query) {
|
|
27657
|
-
if (str === void 0)
|
|
27658
|
-
str = "undefined";
|
|
27659
|
-
if (str === null)
|
|
27660
|
-
str = "null";
|
|
27661
|
-
if (str === false)
|
|
27662
|
-
str = "false";
|
|
27663
|
-
const text = str.toString().toLowerCase();
|
|
27664
|
-
return text.indexOf(query.trim()) !== -1;
|
|
27665
|
-
}
|
|
27666
|
-
function filterOptions(options, search, label, customLabel) {
|
|
27667
|
-
return search ? options.filter((option2) => includes(customLabel(option2, label), search)).sort((a2, b2) => customLabel(a2, label).length - customLabel(b2, label).length) : options;
|
|
27668
|
-
}
|
|
27669
|
-
function stripGroups(options) {
|
|
27670
|
-
return options.filter((option2) => !option2.$isLabel);
|
|
27671
|
-
}
|
|
27672
|
-
function flattenOptions(values3, label) {
|
|
27673
|
-
return (options) => options.reduce((prev, curr) => {
|
|
27674
|
-
if (curr[values3] && curr[values3].length) {
|
|
27675
|
-
prev.push({
|
|
27676
|
-
$groupLabel: curr[label],
|
|
27677
|
-
$isLabel: true
|
|
27678
|
-
});
|
|
27679
|
-
return prev.concat(curr[values3]);
|
|
27680
|
-
}
|
|
27681
|
-
return prev;
|
|
27682
|
-
}, []);
|
|
27683
|
-
}
|
|
27684
|
-
function filterGroups(search, label, values3, groupLabel, customLabel) {
|
|
27685
|
-
return (groups) => groups.map((group) => {
|
|
27686
|
-
if (!group[values3]) {
|
|
27687
|
-
console.warn(`Options passed to vue-multiselect do not contain groups, despite the config.`);
|
|
27688
|
-
return [];
|
|
27689
|
-
}
|
|
27690
|
-
const groupOptions = filterOptions(group[values3], search, label, customLabel);
|
|
27691
|
-
return groupOptions.length ? {
|
|
27692
|
-
[groupLabel]: group[groupLabel],
|
|
27693
|
-
[values3]: groupOptions
|
|
27694
|
-
} : [];
|
|
27695
|
-
});
|
|
27696
|
-
}
|
|
27697
|
-
const flow = (...fns) => (x2) => fns.reduce((v2, f2) => f2(v2), x2);
|
|
27698
|
-
var multiselectMixin = {
|
|
27699
|
-
data() {
|
|
27700
|
-
return {
|
|
27701
|
-
search: "",
|
|
27702
|
-
isOpen: false,
|
|
27703
|
-
preferredOpenDirection: "below",
|
|
27704
|
-
optimizedHeight: this.maxHeight
|
|
27705
|
-
};
|
|
27706
|
-
},
|
|
27707
|
-
props: {
|
|
27708
|
-
/**
|
|
27709
|
-
* Decide whether to filter the results based on search query.
|
|
27710
|
-
* Useful for async filtering, where we search through more complex data.
|
|
27711
|
-
* @type {Boolean}
|
|
27712
|
-
*/
|
|
27713
|
-
internalSearch: {
|
|
27714
|
-
type: Boolean,
|
|
27715
|
-
default: true
|
|
27716
|
-
},
|
|
27717
|
-
/**
|
|
27718
|
-
* Array of available options: Objects, Strings or Integers.
|
|
27719
|
-
* If array of objects, visible label will default to option.label.
|
|
27720
|
-
* If `labal` prop is passed, label will equal option['label']
|
|
27721
|
-
* @type {Array}
|
|
27722
|
-
*/
|
|
27723
|
-
options: {
|
|
27724
|
-
type: Array,
|
|
27725
|
-
required: true
|
|
27726
|
-
},
|
|
27727
|
-
/**
|
|
27728
|
-
* Equivalent to the `multiple` attribute on a `<select>` input.
|
|
27729
|
-
* @default false
|
|
27730
|
-
* @type {Boolean}
|
|
27731
|
-
*/
|
|
27732
|
-
multiple: {
|
|
27733
|
-
type: Boolean,
|
|
27734
|
-
default: false
|
|
27735
|
-
},
|
|
27736
|
-
/**
|
|
27737
|
-
* Key to compare objects
|
|
27738
|
-
* @default 'id'
|
|
27739
|
-
* @type {String}
|
|
27740
|
-
*/
|
|
27741
|
-
trackBy: {
|
|
27742
|
-
type: String
|
|
27743
|
-
},
|
|
27744
|
-
/**
|
|
27745
|
-
* Label to look for in option Object
|
|
27746
|
-
* @default 'label'
|
|
27747
|
-
* @type {String}
|
|
27748
|
-
*/
|
|
27749
|
-
label: {
|
|
27750
|
-
type: String
|
|
27751
|
-
},
|
|
27752
|
-
/**
|
|
27753
|
-
* Enable/disable search in options
|
|
27754
|
-
* @default true
|
|
27755
|
-
* @type {Boolean}
|
|
27756
|
-
*/
|
|
27757
|
-
searchable: {
|
|
27758
|
-
type: Boolean,
|
|
27759
|
-
default: true
|
|
27760
|
-
},
|
|
27761
|
-
/**
|
|
27762
|
-
* Clear the search input after `)
|
|
27763
|
-
* @default true
|
|
27764
|
-
* @type {Boolean}
|
|
27765
|
-
*/
|
|
27766
|
-
clearOnSelect: {
|
|
27767
|
-
type: Boolean,
|
|
27768
|
-
default: true
|
|
27769
|
-
},
|
|
27770
|
-
/**
|
|
27771
|
-
* Hide already selected options
|
|
27772
|
-
* @default false
|
|
27773
|
-
* @type {Boolean}
|
|
27774
|
-
*/
|
|
27775
|
-
hideSelected: {
|
|
27776
|
-
type: Boolean,
|
|
27777
|
-
default: false
|
|
27778
|
-
},
|
|
27779
|
-
/**
|
|
27780
|
-
* Equivalent to the `placeholder` attribute on a `<select>` input.
|
|
27781
|
-
* @default 'Select option'
|
|
27782
|
-
* @type {String}
|
|
27783
|
-
*/
|
|
27784
|
-
placeholder: {
|
|
27785
|
-
type: String,
|
|
27786
|
-
default: "Select option"
|
|
27787
|
-
},
|
|
27788
|
-
/**
|
|
27789
|
-
* Allow to remove all selected values
|
|
27790
|
-
* @default true
|
|
27791
|
-
* @type {Boolean}
|
|
27792
|
-
*/
|
|
27793
|
-
allowEmpty: {
|
|
27794
|
-
type: Boolean,
|
|
27795
|
-
default: true
|
|
27796
|
-
},
|
|
27797
|
-
/**
|
|
27798
|
-
* Reset this.internalValue, this.search after this.internalValue changes.
|
|
27799
|
-
* Useful if want to create a stateless dropdown.
|
|
27800
|
-
* @default false
|
|
27801
|
-
* @type {Boolean}
|
|
27802
|
-
*/
|
|
27803
|
-
resetAfter: {
|
|
27804
|
-
type: Boolean,
|
|
27805
|
-
default: false
|
|
27806
|
-
},
|
|
27807
|
-
/**
|
|
27808
|
-
* Enable/disable closing after selecting an option
|
|
27809
|
-
* @default true
|
|
27810
|
-
* @type {Boolean}
|
|
27811
|
-
*/
|
|
27812
|
-
closeOnSelect: {
|
|
27813
|
-
type: Boolean,
|
|
27814
|
-
default: true
|
|
27815
|
-
},
|
|
27816
|
-
/**
|
|
27817
|
-
* Function to interpolate the custom label
|
|
27818
|
-
* @default false
|
|
27819
|
-
* @type {Function}
|
|
27820
|
-
*/
|
|
27821
|
-
customLabel: {
|
|
27822
|
-
type: Function,
|
|
27823
|
-
default(option2, label) {
|
|
27824
|
-
if (isEmpty(option2))
|
|
27825
|
-
return "";
|
|
27826
|
-
return label ? option2[label] : option2;
|
|
27827
|
-
}
|
|
27828
|
-
},
|
|
27829
|
-
/**
|
|
27830
|
-
* Disable / Enable tagging
|
|
27831
|
-
* @default false
|
|
27832
|
-
* @type {Boolean}
|
|
27833
|
-
*/
|
|
27834
|
-
taggable: {
|
|
27835
|
-
type: Boolean,
|
|
27836
|
-
default: false
|
|
27837
|
-
},
|
|
27838
|
-
/**
|
|
27839
|
-
* String to show when highlighting a potential tag
|
|
27840
|
-
* @default 'Press enter to create a tag'
|
|
27841
|
-
* @type {String}
|
|
27842
|
-
*/
|
|
27843
|
-
tagPlaceholder: {
|
|
27844
|
-
type: String,
|
|
27845
|
-
default: "Press enter to create a tag"
|
|
27846
|
-
},
|
|
27847
|
-
/**
|
|
27848
|
-
* By default new tags will appear above the search results.
|
|
27849
|
-
* Changing to 'bottom' will revert this behaviour
|
|
27850
|
-
* and will proritize the search results
|
|
27851
|
-
* @default 'top'
|
|
27852
|
-
* @type {String}
|
|
27853
|
-
*/
|
|
27854
|
-
tagPosition: {
|
|
27855
|
-
type: String,
|
|
27856
|
-
default: "top"
|
|
27857
|
-
},
|
|
27858
|
-
/**
|
|
27859
|
-
* Number of allowed selected options. No limit if 0.
|
|
27860
|
-
* @default 0
|
|
27861
|
-
* @type {Number}
|
|
27862
|
-
*/
|
|
27863
|
-
max: {
|
|
27864
|
-
type: [Number, Boolean],
|
|
27865
|
-
default: false
|
|
27866
|
-
},
|
|
27867
|
-
/**
|
|
27868
|
-
* Will be passed with all events as second param.
|
|
27869
|
-
* Useful for identifying events origin.
|
|
27870
|
-
* @default null
|
|
27871
|
-
* @type {String|Integer}
|
|
27872
|
-
*/
|
|
27873
|
-
id: {
|
|
27874
|
-
default: null
|
|
27875
|
-
},
|
|
27876
|
-
/**
|
|
27877
|
-
* Limits the options displayed in the dropdown
|
|
27878
|
-
* to the first X options.
|
|
27879
|
-
* @default 1000
|
|
27880
|
-
* @type {Integer}
|
|
27881
|
-
*/
|
|
27882
|
-
optionsLimit: {
|
|
27883
|
-
type: Number,
|
|
27884
|
-
default: 1e3
|
|
27885
|
-
},
|
|
27886
|
-
/**
|
|
27887
|
-
* Name of the property containing
|
|
27888
|
-
* the group values
|
|
27889
|
-
* @default 1000
|
|
27890
|
-
* @type {String}
|
|
27891
|
-
*/
|
|
27892
|
-
groupValues: {
|
|
27893
|
-
type: String
|
|
27894
|
-
},
|
|
27895
|
-
/**
|
|
27896
|
-
* Name of the property containing
|
|
27897
|
-
* the group label
|
|
27898
|
-
* @default 1000
|
|
27899
|
-
* @type {String}
|
|
27900
|
-
*/
|
|
27901
|
-
groupLabel: {
|
|
27902
|
-
type: String
|
|
27903
|
-
},
|
|
27904
|
-
/**
|
|
27905
|
-
* Allow to select all group values
|
|
27906
|
-
* by selecting the group label
|
|
27907
|
-
* @default false
|
|
27908
|
-
* @type {Boolean}
|
|
27909
|
-
*/
|
|
27910
|
-
groupSelect: {
|
|
27911
|
-
type: Boolean,
|
|
27912
|
-
default: false
|
|
27913
|
-
},
|
|
27914
|
-
/**
|
|
27915
|
-
* Array of keyboard keys to block
|
|
27916
|
-
* when selecting
|
|
27917
|
-
* @default 1000
|
|
27918
|
-
* @type {String}
|
|
27919
|
-
*/
|
|
27920
|
-
blockKeys: {
|
|
27921
|
-
type: Array,
|
|
27922
|
-
default() {
|
|
27923
|
-
return [];
|
|
27924
|
-
}
|
|
27925
|
-
},
|
|
27926
|
-
/**
|
|
27927
|
-
* Prevent from wiping up the search value
|
|
27928
|
-
* @default false
|
|
27929
|
-
* @type {Boolean}
|
|
27930
|
-
*/
|
|
27931
|
-
preserveSearch: {
|
|
27932
|
-
type: Boolean,
|
|
27933
|
-
default: false
|
|
27934
|
-
},
|
|
27935
|
-
/**
|
|
27936
|
-
* Select 1st options if value is empty
|
|
27937
|
-
* @default false
|
|
27938
|
-
* @type {Boolean}
|
|
27939
|
-
*/
|
|
27940
|
-
preselectFirst: {
|
|
27941
|
-
type: Boolean,
|
|
27942
|
-
default: false
|
|
27943
|
-
},
|
|
27944
|
-
/**
|
|
27945
|
-
* Prevent autofocus
|
|
27946
|
-
* @default false
|
|
27947
|
-
* @type {Boolean}
|
|
27948
|
-
*/
|
|
27949
|
-
preventAutofocus: {
|
|
27950
|
-
type: Boolean,
|
|
27951
|
-
default: false
|
|
27952
|
-
}
|
|
27953
|
-
},
|
|
27954
|
-
mounted() {
|
|
27955
|
-
if (!this.multiple && this.max) {
|
|
27956
|
-
console.warn("[Vue-Multiselect warn]: Max prop should not be used when prop Multiple equals false.");
|
|
27957
|
-
}
|
|
27958
|
-
if (this.preselectFirst && !this.internalValue.length && this.options.length) {
|
|
27959
|
-
this.select(this.filteredOptions[0]);
|
|
27960
|
-
}
|
|
27961
|
-
},
|
|
27962
|
-
computed: {
|
|
27963
|
-
internalValue() {
|
|
27964
|
-
return this.modelValue || this.modelValue === 0 ? Array.isArray(this.modelValue) ? this.modelValue : [this.modelValue] : [];
|
|
27965
|
-
},
|
|
27966
|
-
filteredOptions() {
|
|
27967
|
-
const search = this.search || "";
|
|
27968
|
-
const normalizedSearch = search.toLowerCase().trim();
|
|
27969
|
-
let options = this.options.concat();
|
|
27970
|
-
if (this.internalSearch) {
|
|
27971
|
-
options = this.groupValues ? this.filterAndFlat(options, normalizedSearch, this.label) : filterOptions(options, normalizedSearch, this.label, this.customLabel);
|
|
27972
|
-
} else {
|
|
27973
|
-
options = this.groupValues ? flattenOptions(this.groupValues, this.groupLabel)(options) : options;
|
|
27974
|
-
}
|
|
27975
|
-
options = this.hideSelected ? options.filter(not(this.isSelected)) : options;
|
|
27976
|
-
if (this.taggable && normalizedSearch.length && !this.isExistingOption(normalizedSearch)) {
|
|
27977
|
-
if (this.tagPosition === "bottom") {
|
|
27978
|
-
options.push({ isTag: true, label: search });
|
|
27979
|
-
} else {
|
|
27980
|
-
options.unshift({ isTag: true, label: search });
|
|
27981
|
-
}
|
|
27982
|
-
}
|
|
27983
|
-
return options.slice(0, this.optionsLimit);
|
|
27984
|
-
},
|
|
27985
|
-
valueKeys() {
|
|
27986
|
-
if (this.trackBy) {
|
|
27987
|
-
return this.internalValue.map((element) => element[this.trackBy]);
|
|
27988
|
-
} else {
|
|
27989
|
-
return this.internalValue;
|
|
27990
|
-
}
|
|
27991
|
-
},
|
|
27992
|
-
optionKeys() {
|
|
27993
|
-
const options = this.groupValues ? this.flatAndStrip(this.options) : this.options;
|
|
27994
|
-
return options.map((element) => this.customLabel(element, this.label).toString().toLowerCase());
|
|
27995
|
-
},
|
|
27996
|
-
currentOptionLabel() {
|
|
27997
|
-
return this.multiple ? this.searchable ? "" : this.placeholder : this.internalValue.length ? this.getOptionLabel(this.internalValue[0]) : this.searchable ? "" : this.placeholder;
|
|
27998
|
-
}
|
|
27999
|
-
},
|
|
28000
|
-
watch: {
|
|
28001
|
-
internalValue: {
|
|
28002
|
-
handler() {
|
|
28003
|
-
if (this.resetAfter && this.internalValue.length) {
|
|
28004
|
-
this.search = "";
|
|
28005
|
-
this.$emit("update:modelValue", this.multiple ? [] : null);
|
|
28006
|
-
}
|
|
28007
|
-
},
|
|
28008
|
-
deep: true
|
|
28009
|
-
},
|
|
28010
|
-
search() {
|
|
28011
|
-
this.$emit("search-change", this.search);
|
|
28012
|
-
}
|
|
28013
|
-
},
|
|
28014
|
-
emits: ["open", "search-change", "close", "select", "update:modelValue", "remove", "tag"],
|
|
28015
|
-
methods: {
|
|
28016
|
-
/**
|
|
28017
|
-
* Returns the internalValue in a way it can be emited to the parent
|
|
28018
|
-
* @returns {Object||Array||String||Integer}
|
|
28019
|
-
*/
|
|
28020
|
-
getValue() {
|
|
28021
|
-
return this.multiple ? this.internalValue : this.internalValue.length === 0 ? null : this.internalValue[0];
|
|
28022
|
-
},
|
|
28023
|
-
/**
|
|
28024
|
-
* Filters and then flattens the options list
|
|
28025
|
-
* @param {Array}
|
|
28026
|
-
* @return {Array} returns a filtered and flat options list
|
|
28027
|
-
*/
|
|
28028
|
-
filterAndFlat(options, search, label) {
|
|
28029
|
-
return flow(
|
|
28030
|
-
filterGroups(search, label, this.groupValues, this.groupLabel, this.customLabel),
|
|
28031
|
-
flattenOptions(this.groupValues, this.groupLabel)
|
|
28032
|
-
)(options);
|
|
28033
|
-
},
|
|
28034
|
-
/**
|
|
28035
|
-
* Flattens and then strips the group labels from the options list
|
|
28036
|
-
* @param {Array}
|
|
28037
|
-
* @return {Array} returns a flat options list without group labels
|
|
28038
|
-
*/
|
|
28039
|
-
flatAndStrip(options) {
|
|
28040
|
-
return flow(
|
|
28041
|
-
flattenOptions(this.groupValues, this.groupLabel),
|
|
28042
|
-
stripGroups
|
|
28043
|
-
)(options);
|
|
28044
|
-
},
|
|
28045
|
-
/**
|
|
28046
|
-
* Updates the search value
|
|
28047
|
-
* @param {String}
|
|
28048
|
-
*/
|
|
28049
|
-
updateSearch(query) {
|
|
28050
|
-
this.search = query;
|
|
28051
|
-
},
|
|
28052
|
-
/**
|
|
28053
|
-
* Finds out if the given query is already present
|
|
28054
|
-
* in the available options
|
|
28055
|
-
* @param {String}
|
|
28056
|
-
* @return {Boolean} returns true if element is available
|
|
28057
|
-
*/
|
|
28058
|
-
isExistingOption(query) {
|
|
28059
|
-
return !this.options ? false : this.optionKeys.indexOf(query) > -1;
|
|
28060
|
-
},
|
|
28061
|
-
/**
|
|
28062
|
-
* Finds out if the given element is already present
|
|
28063
|
-
* in the result value
|
|
28064
|
-
* @param {Object||String||Integer} option passed element to check
|
|
28065
|
-
* @returns {Boolean} returns true if element is selected
|
|
28066
|
-
*/
|
|
28067
|
-
isSelected(option2) {
|
|
28068
|
-
const opt = this.trackBy ? option2[this.trackBy] : option2;
|
|
28069
|
-
return this.valueKeys.indexOf(opt) > -1;
|
|
28070
|
-
},
|
|
28071
|
-
/**
|
|
28072
|
-
* Finds out if the given option is disabled
|
|
28073
|
-
* @param {Object||String||Integer} option passed element to check
|
|
28074
|
-
* @returns {Boolean} returns true if element is disabled
|
|
28075
|
-
*/
|
|
28076
|
-
isOptionDisabled(option2) {
|
|
28077
|
-
return !!option2.$isDisabled;
|
|
28078
|
-
},
|
|
28079
|
-
/**
|
|
28080
|
-
* Returns empty string when options is null/undefined
|
|
28081
|
-
* Returns tag query if option is tag.
|
|
28082
|
-
* Returns the customLabel() results and casts it to string.
|
|
28083
|
-
*
|
|
28084
|
-
* @param {Object||String||Integer} Passed option
|
|
28085
|
-
* @returns {Object||String}
|
|
28086
|
-
*/
|
|
28087
|
-
getOptionLabel(option2) {
|
|
28088
|
-
if (isEmpty(option2))
|
|
28089
|
-
return "";
|
|
28090
|
-
if (option2.isTag)
|
|
28091
|
-
return option2.label;
|
|
28092
|
-
if (option2.$isLabel)
|
|
28093
|
-
return option2.$groupLabel;
|
|
28094
|
-
const label = this.customLabel(option2, this.label);
|
|
28095
|
-
if (isEmpty(label))
|
|
28096
|
-
return "";
|
|
28097
|
-
return label;
|
|
28098
|
-
},
|
|
28099
|
-
/**
|
|
28100
|
-
* Add the given option to the list of selected options
|
|
28101
|
-
* or sets the option as the selected option.
|
|
28102
|
-
* If option is already selected -> remove it from the results.
|
|
28103
|
-
*
|
|
28104
|
-
* @param {Object||String||Integer} option to select/deselect
|
|
28105
|
-
* @param {Boolean} block removing
|
|
28106
|
-
*/
|
|
28107
|
-
select(option2, key) {
|
|
28108
|
-
if (option2.$isLabel && this.groupSelect) {
|
|
28109
|
-
this.selectGroup(option2);
|
|
28110
|
-
return;
|
|
28111
|
-
}
|
|
28112
|
-
if (this.blockKeys.indexOf(key) !== -1 || this.disabled || option2.$isDisabled || option2.$isLabel)
|
|
28113
|
-
return;
|
|
28114
|
-
if (this.max && this.multiple && this.internalValue.length === this.max)
|
|
28115
|
-
return;
|
|
28116
|
-
if (key === "Tab" && !this.pointerDirty)
|
|
28117
|
-
return;
|
|
28118
|
-
if (option2.isTag) {
|
|
28119
|
-
this.$emit("tag", option2.label, this.id);
|
|
28120
|
-
this.search = "";
|
|
28121
|
-
if (this.closeOnSelect && !this.multiple)
|
|
28122
|
-
this.deactivate();
|
|
28123
|
-
} else {
|
|
28124
|
-
const isSelected = this.isSelected(option2);
|
|
28125
|
-
if (isSelected) {
|
|
28126
|
-
if (key !== "Tab")
|
|
28127
|
-
this.removeElement(option2);
|
|
28128
|
-
return;
|
|
28129
|
-
}
|
|
28130
|
-
if (this.multiple) {
|
|
28131
|
-
this.$emit("update:modelValue", this.internalValue.concat([option2]));
|
|
28132
|
-
} else {
|
|
28133
|
-
this.$emit("update:modelValue", option2);
|
|
28134
|
-
}
|
|
28135
|
-
this.$emit("select", option2, this.id);
|
|
28136
|
-
if (this.clearOnSelect)
|
|
28137
|
-
this.search = "";
|
|
28138
|
-
}
|
|
28139
|
-
if (this.closeOnSelect)
|
|
28140
|
-
this.deactivate();
|
|
28141
|
-
},
|
|
28142
|
-
/**
|
|
28143
|
-
* Add the given group options to the list of selected options
|
|
28144
|
-
* If all group optiona are already selected -> remove it from the results.
|
|
28145
|
-
*
|
|
28146
|
-
* @param {Object||String||Integer} group to select/deselect
|
|
28147
|
-
*/
|
|
28148
|
-
selectGroup(selectedGroup) {
|
|
28149
|
-
const group = this.options.find((option2) => {
|
|
28150
|
-
return option2[this.groupLabel] === selectedGroup.$groupLabel;
|
|
28151
|
-
});
|
|
28152
|
-
if (!group)
|
|
28153
|
-
return;
|
|
28154
|
-
if (this.wholeGroupSelected(group)) {
|
|
28155
|
-
this.$emit("remove", group[this.groupValues], this.id);
|
|
28156
|
-
const newValue = this.internalValue.filter(
|
|
28157
|
-
(option2) => group[this.groupValues].indexOf(option2) === -1
|
|
28158
|
-
);
|
|
28159
|
-
this.$emit("update:modelValue", newValue);
|
|
28160
|
-
} else {
|
|
28161
|
-
let optionsToAdd = group[this.groupValues].filter(
|
|
28162
|
-
(option2) => !(this.isOptionDisabled(option2) || this.isSelected(option2))
|
|
28163
|
-
);
|
|
28164
|
-
if (this.max) {
|
|
28165
|
-
optionsToAdd.splice(this.max - this.internalValue.length);
|
|
28166
|
-
}
|
|
28167
|
-
this.$emit("select", optionsToAdd, this.id);
|
|
28168
|
-
this.$emit(
|
|
28169
|
-
"update:modelValue",
|
|
28170
|
-
this.internalValue.concat(optionsToAdd)
|
|
28171
|
-
);
|
|
28172
|
-
}
|
|
28173
|
-
if (this.closeOnSelect)
|
|
28174
|
-
this.deactivate();
|
|
28175
|
-
},
|
|
28176
|
-
/**
|
|
28177
|
-
* Helper to identify if all values in a group are selected
|
|
28178
|
-
*
|
|
28179
|
-
* @param {Object} group to validated selected values against
|
|
28180
|
-
*/
|
|
28181
|
-
wholeGroupSelected(group) {
|
|
28182
|
-
return group[this.groupValues].every(
|
|
28183
|
-
(option2) => this.isSelected(option2) || this.isOptionDisabled(option2)
|
|
28184
|
-
);
|
|
28185
|
-
},
|
|
28186
|
-
/**
|
|
28187
|
-
* Helper to identify if all values in a group are disabled
|
|
28188
|
-
*
|
|
28189
|
-
* @param {Object} group to check for disabled values
|
|
28190
|
-
*/
|
|
28191
|
-
wholeGroupDisabled(group) {
|
|
28192
|
-
return group[this.groupValues].every(this.isOptionDisabled);
|
|
28193
|
-
},
|
|
28194
|
-
/**
|
|
28195
|
-
* Removes the given option from the selected options.
|
|
28196
|
-
* Additionally checks this.allowEmpty prop if option can be removed when
|
|
28197
|
-
* it is the last selected option.
|
|
28198
|
-
*
|
|
28199
|
-
* @param {type} option description
|
|
28200
|
-
* @return {type} description
|
|
28201
|
-
*/
|
|
28202
|
-
removeElement(option2, shouldClose = true) {
|
|
28203
|
-
if (this.disabled)
|
|
28204
|
-
return;
|
|
28205
|
-
if (option2.$isDisabled)
|
|
28206
|
-
return;
|
|
28207
|
-
if (!this.allowEmpty && this.internalValue.length <= 1) {
|
|
28208
|
-
this.deactivate();
|
|
28209
|
-
return;
|
|
28210
|
-
}
|
|
28211
|
-
const index2 = typeof option2 === "object" ? this.valueKeys.indexOf(option2[this.trackBy]) : this.valueKeys.indexOf(option2);
|
|
28212
|
-
if (this.multiple) {
|
|
28213
|
-
const newValue = this.internalValue.slice(0, index2).concat(this.internalValue.slice(index2 + 1));
|
|
28214
|
-
this.$emit("update:modelValue", newValue);
|
|
28215
|
-
} else {
|
|
28216
|
-
this.$emit("update:modelValue", null);
|
|
28217
|
-
}
|
|
28218
|
-
this.$emit("remove", option2, this.id);
|
|
28219
|
-
if (this.closeOnSelect && shouldClose)
|
|
28220
|
-
this.deactivate();
|
|
28221
|
-
},
|
|
28222
|
-
/**
|
|
28223
|
-
* Calls this.removeElement() with the last element
|
|
28224
|
-
* from this.internalValue (selected element Array)
|
|
28225
|
-
*
|
|
28226
|
-
* @fires this#removeElement
|
|
28227
|
-
*/
|
|
28228
|
-
removeLastElement() {
|
|
28229
|
-
if (this.blockKeys.indexOf("Delete") !== -1)
|
|
28230
|
-
return;
|
|
28231
|
-
if (this.search.length === 0 && Array.isArray(this.internalValue) && this.internalValue.length) {
|
|
28232
|
-
this.removeElement(this.internalValue[this.internalValue.length - 1], false);
|
|
28233
|
-
}
|
|
28234
|
-
},
|
|
28235
|
-
/**
|
|
28236
|
-
* Opens the multiselect’s dropdown.
|
|
28237
|
-
* Sets this.isOpen to TRUE
|
|
28238
|
-
*/
|
|
28239
|
-
activate() {
|
|
28240
|
-
if (this.isOpen || this.disabled)
|
|
28241
|
-
return;
|
|
28242
|
-
this.adjustPosition();
|
|
28243
|
-
if (this.groupValues && this.pointer === 0 && this.filteredOptions.length) {
|
|
28244
|
-
this.pointer = 1;
|
|
28245
|
-
}
|
|
28246
|
-
this.isOpen = true;
|
|
28247
|
-
if (this.searchable) {
|
|
28248
|
-
if (!this.preserveSearch)
|
|
28249
|
-
this.search = "";
|
|
28250
|
-
if (!this.preventAutofocus)
|
|
28251
|
-
this.$nextTick(() => this.$refs.search && this.$refs.search.focus());
|
|
28252
|
-
} else if (!this.preventAutofocus) {
|
|
28253
|
-
if (typeof this.$el !== "undefined")
|
|
28254
|
-
this.$el.focus();
|
|
28255
|
-
}
|
|
28256
|
-
this.$emit("open", this.id);
|
|
28257
|
-
},
|
|
28258
|
-
/**
|
|
28259
|
-
* Closes the multiselect’s dropdown.
|
|
28260
|
-
* Sets this.isOpen to FALSE
|
|
28261
|
-
*/
|
|
28262
|
-
deactivate() {
|
|
28263
|
-
if (!this.isOpen)
|
|
28264
|
-
return;
|
|
28265
|
-
this.isOpen = false;
|
|
28266
|
-
if (this.searchable) {
|
|
28267
|
-
if (this.$refs.search !== null && typeof this.$refs.search !== "undefined")
|
|
28268
|
-
this.$refs.search.blur();
|
|
28269
|
-
} else {
|
|
28270
|
-
if (typeof this.$el !== "undefined")
|
|
28271
|
-
this.$el.blur();
|
|
28272
|
-
}
|
|
28273
|
-
if (!this.preserveSearch)
|
|
28274
|
-
this.search = "";
|
|
28275
|
-
this.$emit("close", this.getValue(), this.id);
|
|
28276
|
-
},
|
|
28277
|
-
/**
|
|
28278
|
-
* Call this.activate() or this.deactivate()
|
|
28279
|
-
* depending on this.isOpen value.
|
|
28280
|
-
*
|
|
28281
|
-
* @fires this#activate || this#deactivate
|
|
28282
|
-
* @property {Boolean} isOpen indicates if dropdown is open
|
|
28283
|
-
*/
|
|
28284
|
-
toggle() {
|
|
28285
|
-
this.isOpen ? this.deactivate() : this.activate();
|
|
28286
|
-
},
|
|
28287
|
-
/**
|
|
28288
|
-
* Updates the hasEnoughSpace variable used for
|
|
28289
|
-
* detecting where to expand the dropdown
|
|
28290
|
-
*/
|
|
28291
|
-
adjustPosition() {
|
|
28292
|
-
if (typeof window === "undefined")
|
|
28293
|
-
return;
|
|
28294
|
-
const spaceAbove = this.$el.getBoundingClientRect().top;
|
|
28295
|
-
const spaceBelow = window.innerHeight - this.$el.getBoundingClientRect().bottom;
|
|
28296
|
-
const hasEnoughSpaceBelow = spaceBelow > this.maxHeight;
|
|
28297
|
-
if (hasEnoughSpaceBelow || spaceBelow > spaceAbove || this.openDirection === "below" || this.openDirection === "bottom") {
|
|
28298
|
-
this.preferredOpenDirection = "below";
|
|
28299
|
-
this.optimizedHeight = Math.min(spaceBelow - 40, this.maxHeight);
|
|
28300
|
-
} else {
|
|
28301
|
-
this.preferredOpenDirection = "above";
|
|
28302
|
-
this.optimizedHeight = Math.min(spaceAbove - 40, this.maxHeight);
|
|
28303
|
-
}
|
|
28304
|
-
}
|
|
28305
|
-
}
|
|
28306
|
-
};
|
|
28307
|
-
var pointerMixin = {
|
|
28308
|
-
data() {
|
|
28309
|
-
return {
|
|
28310
|
-
pointer: 0,
|
|
28311
|
-
pointerDirty: false
|
|
28312
|
-
};
|
|
28313
|
-
},
|
|
28314
|
-
props: {
|
|
28315
|
-
/**
|
|
28316
|
-
* Enable/disable highlighting of the pointed value.
|
|
28317
|
-
* @type {Boolean}
|
|
28318
|
-
* @default true
|
|
28319
|
-
*/
|
|
28320
|
-
showPointer: {
|
|
28321
|
-
type: Boolean,
|
|
28322
|
-
default: true
|
|
28323
|
-
},
|
|
28324
|
-
optionHeight: {
|
|
28325
|
-
type: Number,
|
|
28326
|
-
default: 40
|
|
28327
|
-
}
|
|
28328
|
-
},
|
|
28329
|
-
computed: {
|
|
28330
|
-
pointerPosition() {
|
|
28331
|
-
return this.pointer * this.optionHeight;
|
|
28332
|
-
},
|
|
28333
|
-
visibleElements() {
|
|
28334
|
-
return this.optimizedHeight / this.optionHeight;
|
|
28335
|
-
}
|
|
28336
|
-
},
|
|
28337
|
-
watch: {
|
|
28338
|
-
filteredOptions() {
|
|
28339
|
-
this.pointerAdjust();
|
|
28340
|
-
},
|
|
28341
|
-
isOpen() {
|
|
28342
|
-
this.pointerDirty = false;
|
|
28343
|
-
},
|
|
28344
|
-
pointer() {
|
|
28345
|
-
this.$refs.search && this.$refs.search.setAttribute("aria-activedescendant", this.id + "-" + this.pointer.toString());
|
|
28346
|
-
}
|
|
28347
|
-
},
|
|
28348
|
-
methods: {
|
|
28349
|
-
optionHighlight(index2, option2) {
|
|
28350
|
-
return {
|
|
28351
|
-
"multiselect__option--highlight": index2 === this.pointer && this.showPointer,
|
|
28352
|
-
"multiselect__option--selected": this.isSelected(option2)
|
|
28353
|
-
};
|
|
28354
|
-
},
|
|
28355
|
-
groupHighlight(index2, selectedGroup) {
|
|
28356
|
-
if (!this.groupSelect) {
|
|
28357
|
-
return [
|
|
28358
|
-
"multiselect__option--disabled",
|
|
28359
|
-
{ "multiselect__option--group": selectedGroup.$isLabel }
|
|
28360
|
-
];
|
|
28361
|
-
}
|
|
28362
|
-
const group = this.options.find((option2) => {
|
|
28363
|
-
return option2[this.groupLabel] === selectedGroup.$groupLabel;
|
|
28364
|
-
});
|
|
28365
|
-
return group && !this.wholeGroupDisabled(group) ? [
|
|
28366
|
-
"multiselect__option--group",
|
|
28367
|
-
{ "multiselect__option--highlight": index2 === this.pointer && this.showPointer },
|
|
28368
|
-
{ "multiselect__option--group-selected": this.wholeGroupSelected(group) }
|
|
28369
|
-
] : "multiselect__option--disabled";
|
|
28370
|
-
},
|
|
28371
|
-
addPointerElement({ key } = "Enter") {
|
|
28372
|
-
if (this.filteredOptions.length > 0) {
|
|
28373
|
-
this.select(this.filteredOptions[this.pointer], key);
|
|
28374
|
-
}
|
|
28375
|
-
this.pointerReset();
|
|
28376
|
-
},
|
|
28377
|
-
pointerForward() {
|
|
28378
|
-
if (this.pointer < this.filteredOptions.length - 1) {
|
|
28379
|
-
this.pointer++;
|
|
28380
|
-
if (this.$refs.list.scrollTop <= this.pointerPosition - (this.visibleElements - 1) * this.optionHeight) {
|
|
28381
|
-
this.$refs.list.scrollTop = this.pointerPosition - (this.visibleElements - 1) * this.optionHeight;
|
|
28382
|
-
}
|
|
28383
|
-
if (this.filteredOptions[this.pointer] && this.filteredOptions[this.pointer].$isLabel && !this.groupSelect)
|
|
28384
|
-
this.pointerForward();
|
|
28385
|
-
}
|
|
28386
|
-
this.pointerDirty = true;
|
|
28387
|
-
},
|
|
28388
|
-
pointerBackward() {
|
|
28389
|
-
if (this.pointer > 0) {
|
|
28390
|
-
this.pointer--;
|
|
28391
|
-
if (this.$refs.list.scrollTop >= this.pointerPosition) {
|
|
28392
|
-
this.$refs.list.scrollTop = this.pointerPosition;
|
|
28393
|
-
}
|
|
28394
|
-
if (this.filteredOptions[this.pointer] && this.filteredOptions[this.pointer].$isLabel && !this.groupSelect)
|
|
28395
|
-
this.pointerBackward();
|
|
28396
|
-
} else {
|
|
28397
|
-
if (this.filteredOptions[this.pointer] && this.filteredOptions[0].$isLabel && !this.groupSelect)
|
|
28398
|
-
this.pointerForward();
|
|
28399
|
-
}
|
|
28400
|
-
this.pointerDirty = true;
|
|
28401
|
-
},
|
|
28402
|
-
pointerReset() {
|
|
28403
|
-
if (!this.closeOnSelect)
|
|
28404
|
-
return;
|
|
28405
|
-
this.pointer = 0;
|
|
28406
|
-
if (this.$refs.list) {
|
|
28407
|
-
this.$refs.list.scrollTop = 0;
|
|
28408
|
-
}
|
|
28409
|
-
},
|
|
28410
|
-
pointerAdjust() {
|
|
28411
|
-
if (this.pointer >= this.filteredOptions.length - 1) {
|
|
28412
|
-
this.pointer = this.filteredOptions.length ? this.filteredOptions.length - 1 : 0;
|
|
28413
|
-
}
|
|
28414
|
-
if (this.filteredOptions.length > 0 && this.filteredOptions[this.pointer].$isLabel && !this.groupSelect) {
|
|
28415
|
-
this.pointerForward();
|
|
28416
|
-
}
|
|
28417
|
-
},
|
|
28418
|
-
pointerSet(index2) {
|
|
28419
|
-
this.pointer = index2;
|
|
28420
|
-
this.pointerDirty = true;
|
|
28421
|
-
}
|
|
28422
|
-
}
|
|
28423
|
-
};
|
|
28424
|
-
var script$e = {
|
|
28425
|
-
name: "vue-multiselect",
|
|
28426
|
-
mixins: [multiselectMixin, pointerMixin],
|
|
28427
|
-
compatConfig: {
|
|
28428
|
-
MODE: 3,
|
|
28429
|
-
ATTR_ENUMERATED_COERCION: false
|
|
28430
|
-
},
|
|
28431
|
-
props: {
|
|
28432
|
-
/**
|
|
28433
|
-
* name attribute to match optional label element
|
|
28434
|
-
* @default ''
|
|
28435
|
-
* @type {String}
|
|
28436
|
-
*/
|
|
28437
|
-
name: {
|
|
28438
|
-
type: String,
|
|
28439
|
-
default: ""
|
|
28440
|
-
},
|
|
28441
|
-
/**
|
|
28442
|
-
* Presets the selected options value.
|
|
28443
|
-
* @type {Object||Array||String||Integer}
|
|
28444
|
-
*/
|
|
28445
|
-
modelValue: {
|
|
28446
|
-
type: null,
|
|
28447
|
-
default() {
|
|
28448
|
-
return [];
|
|
28449
|
-
}
|
|
28450
|
-
},
|
|
28451
|
-
/**
|
|
28452
|
-
* String to show when pointing to an option
|
|
28453
|
-
* @default 'Press enter to select'
|
|
28454
|
-
* @type {String}
|
|
28455
|
-
*/
|
|
28456
|
-
selectLabel: {
|
|
28457
|
-
type: String,
|
|
28458
|
-
default: "Press enter to select"
|
|
28459
|
-
},
|
|
28460
|
-
/**
|
|
28461
|
-
* String to show when pointing to an option
|
|
28462
|
-
* @default 'Press enter to select'
|
|
28463
|
-
* @type {String}
|
|
28464
|
-
*/
|
|
28465
|
-
selectGroupLabel: {
|
|
28466
|
-
type: String,
|
|
28467
|
-
default: "Press enter to select group"
|
|
28468
|
-
},
|
|
28469
|
-
/**
|
|
28470
|
-
* String to show next to selected option
|
|
28471
|
-
* @default 'Selected'
|
|
28472
|
-
* @type {String}
|
|
28473
|
-
*/
|
|
28474
|
-
selectedLabel: {
|
|
28475
|
-
type: String,
|
|
28476
|
-
default: "Selected"
|
|
28477
|
-
},
|
|
28478
|
-
/**
|
|
28479
|
-
* String to show when pointing to an already selected option
|
|
28480
|
-
* @default 'Press enter to remove'
|
|
28481
|
-
* @type {String}
|
|
28482
|
-
*/
|
|
28483
|
-
deselectLabel: {
|
|
28484
|
-
type: String,
|
|
28485
|
-
default: "Press enter to remove"
|
|
28486
|
-
},
|
|
28487
|
-
/**
|
|
28488
|
-
* String to show when pointing to an already selected option
|
|
28489
|
-
* @default 'Press enter to remove'
|
|
28490
|
-
* @type {String}
|
|
28491
|
-
*/
|
|
28492
|
-
deselectGroupLabel: {
|
|
28493
|
-
type: String,
|
|
28494
|
-
default: "Press enter to deselect group"
|
|
28495
|
-
},
|
|
28496
|
-
/**
|
|
28497
|
-
* Decide whether to show pointer labels
|
|
28498
|
-
* @default true
|
|
28499
|
-
* @type {Boolean}
|
|
28500
|
-
*/
|
|
28501
|
-
showLabels: {
|
|
28502
|
-
type: Boolean,
|
|
28503
|
-
default: true
|
|
28504
|
-
},
|
|
28505
|
-
/**
|
|
28506
|
-
* Limit the display of selected options. The rest will be hidden within the limitText string.
|
|
28507
|
-
* @default 99999
|
|
28508
|
-
* @type {Integer}
|
|
28509
|
-
*/
|
|
28510
|
-
limit: {
|
|
28511
|
-
type: Number,
|
|
28512
|
-
default: 99999
|
|
28513
|
-
},
|
|
28514
|
-
/**
|
|
28515
|
-
* Sets maxHeight style value of the dropdown
|
|
28516
|
-
* @default 300
|
|
28517
|
-
* @type {Integer}
|
|
28518
|
-
*/
|
|
28519
|
-
maxHeight: {
|
|
28520
|
-
type: Number,
|
|
28521
|
-
default: 300
|
|
28522
|
-
},
|
|
28523
|
-
/**
|
|
28524
|
-
* Function that process the message shown when selected
|
|
28525
|
-
* elements pass the defined limit.
|
|
28526
|
-
* @default 'and * more'
|
|
28527
|
-
* @param {Int} count Number of elements more than limit
|
|
28528
|
-
* @type {Function}
|
|
28529
|
-
*/
|
|
28530
|
-
limitText: {
|
|
28531
|
-
type: Function,
|
|
28532
|
-
default: (count2) => `and ${count2} more`
|
|
28533
|
-
},
|
|
28534
|
-
/**
|
|
28535
|
-
* Set true to trigger the loading spinner.
|
|
28536
|
-
* @default False
|
|
28537
|
-
* @type {Boolean}
|
|
28538
|
-
*/
|
|
28539
|
-
loading: {
|
|
28540
|
-
type: Boolean,
|
|
28541
|
-
default: false
|
|
28542
|
-
},
|
|
28543
|
-
/**
|
|
28544
|
-
* Disables the multiselect if true.
|
|
28545
|
-
* @default false
|
|
28546
|
-
* @type {Boolean}
|
|
28547
|
-
*/
|
|
28548
|
-
disabled: {
|
|
28549
|
-
type: Boolean,
|
|
28550
|
-
default: false
|
|
28551
|
-
},
|
|
28552
|
-
/**
|
|
28553
|
-
* Fixed opening direction
|
|
28554
|
-
* @default ''
|
|
28555
|
-
* @type {String}
|
|
28556
|
-
*/
|
|
28557
|
-
openDirection: {
|
|
28558
|
-
type: String,
|
|
28559
|
-
default: ""
|
|
28560
|
-
},
|
|
28561
|
-
/**
|
|
28562
|
-
* Shows slot with message about empty options
|
|
28563
|
-
* @default true
|
|
28564
|
-
* @type {Boolean}
|
|
28565
|
-
*/
|
|
28566
|
-
showNoOptions: {
|
|
28567
|
-
type: Boolean,
|
|
28568
|
-
default: true
|
|
28569
|
-
},
|
|
28570
|
-
showNoResults: {
|
|
28571
|
-
type: Boolean,
|
|
28572
|
-
default: true
|
|
28573
|
-
},
|
|
28574
|
-
tabindex: {
|
|
28575
|
-
type: Number,
|
|
28576
|
-
default: 0
|
|
28577
|
-
}
|
|
28578
|
-
},
|
|
28579
|
-
computed: {
|
|
28580
|
-
hasOptionGroup() {
|
|
28581
|
-
return this.groupValues && this.groupLabel && this.groupSelect;
|
|
28582
|
-
},
|
|
28583
|
-
isSingleLabelVisible() {
|
|
28584
|
-
return (this.singleValue || this.singleValue === 0) && (!this.isOpen || !this.searchable) && !this.visibleValues.length;
|
|
28585
|
-
},
|
|
28586
|
-
isPlaceholderVisible() {
|
|
28587
|
-
return !this.internalValue.length && (!this.searchable || !this.isOpen);
|
|
28588
|
-
},
|
|
28589
|
-
visibleValues() {
|
|
28590
|
-
return this.multiple ? this.internalValue.slice(0, this.limit) : [];
|
|
28591
|
-
},
|
|
28592
|
-
singleValue() {
|
|
28593
|
-
return this.internalValue[0];
|
|
28594
|
-
},
|
|
28595
|
-
deselectLabelText() {
|
|
28596
|
-
return this.showLabels ? this.deselectLabel : "";
|
|
28597
|
-
},
|
|
28598
|
-
deselectGroupLabelText() {
|
|
28599
|
-
return this.showLabels ? this.deselectGroupLabel : "";
|
|
28600
|
-
},
|
|
28601
|
-
selectLabelText() {
|
|
28602
|
-
return this.showLabels ? this.selectLabel : "";
|
|
28603
|
-
},
|
|
28604
|
-
selectGroupLabelText() {
|
|
28605
|
-
return this.showLabels ? this.selectGroupLabel : "";
|
|
28606
|
-
},
|
|
28607
|
-
selectedLabelText() {
|
|
28608
|
-
return this.showLabels ? this.selectedLabel : "";
|
|
28609
|
-
},
|
|
28610
|
-
inputStyle() {
|
|
28611
|
-
if (this.searchable || this.multiple && this.modelValue && this.modelValue.length) {
|
|
28612
|
-
return this.isOpen ? { width: "100%" } : { width: "0", position: "absolute", padding: "0" };
|
|
28613
|
-
}
|
|
28614
|
-
return "";
|
|
28615
|
-
},
|
|
28616
|
-
contentStyle() {
|
|
28617
|
-
return this.options.length ? { display: "inline-block" } : { display: "block" };
|
|
28618
|
-
},
|
|
28619
|
-
isAbove() {
|
|
28620
|
-
if (this.openDirection === "above" || this.openDirection === "top") {
|
|
28621
|
-
return true;
|
|
28622
|
-
} else if (this.openDirection === "below" || this.openDirection === "bottom") {
|
|
28623
|
-
return false;
|
|
28624
|
-
} else {
|
|
28625
|
-
return this.preferredOpenDirection === "above";
|
|
28626
|
-
}
|
|
28627
|
-
},
|
|
28628
|
-
showSearchInput() {
|
|
28629
|
-
return this.searchable && (this.hasSingleSelectedSlot && (this.visibleSingleValue || this.visibleSingleValue === 0) ? this.isOpen : true);
|
|
28630
|
-
}
|
|
28631
|
-
}
|
|
28632
|
-
};
|
|
28633
|
-
const _hoisted_1$n = {
|
|
28634
|
-
ref: "tags",
|
|
28635
|
-
class: "multiselect__tags"
|
|
28636
|
-
};
|
|
28637
|
-
const _hoisted_2$i = { class: "multiselect__tags-wrap" };
|
|
28638
|
-
const _hoisted_3$e = { class: "multiselect__spinner" };
|
|
28639
|
-
const _hoisted_4$a = { key: 0 };
|
|
28640
|
-
const _hoisted_5$9 = { class: "multiselect__option" };
|
|
28641
|
-
const _hoisted_6$5 = { class: "multiselect__option" };
|
|
28642
|
-
const _hoisted_7$2 = /* @__PURE__ */ vue.createTextVNode("No elements found. Consider changing the search query.");
|
|
28643
|
-
const _hoisted_8$1 = { class: "multiselect__option" };
|
|
28644
|
-
const _hoisted_9$1 = /* @__PURE__ */ vue.createTextVNode("List is empty.");
|
|
28645
|
-
function render$e(_ctx, _cache, $props, $setup, $data, $options) {
|
|
28646
|
-
return vue.openBlock(), vue.createBlock("div", {
|
|
28647
|
-
tabindex: _ctx.searchable ? -1 : $props.tabindex,
|
|
28648
|
-
class: [{ "multiselect--active": _ctx.isOpen, "multiselect--disabled": $props.disabled, "multiselect--above": $options.isAbove, "multiselect--has-options-group": $options.hasOptionGroup }, "multiselect"],
|
|
28649
|
-
onFocus: _cache[14] || (_cache[14] = ($event) => _ctx.activate()),
|
|
28650
|
-
onBlur: _cache[15] || (_cache[15] = ($event) => _ctx.searchable ? false : _ctx.deactivate()),
|
|
28651
|
-
onKeydown: [
|
|
28652
|
-
_cache[16] || (_cache[16] = vue.withKeys(vue.withModifiers(($event) => _ctx.pointerForward(), ["self", "prevent"]), ["down"])),
|
|
28653
|
-
_cache[17] || (_cache[17] = vue.withKeys(vue.withModifiers(($event) => _ctx.pointerBackward(), ["self", "prevent"]), ["up"]))
|
|
28654
|
-
],
|
|
28655
|
-
onKeypress: _cache[18] || (_cache[18] = vue.withKeys(vue.withModifiers(($event) => _ctx.addPointerElement($event), ["stop", "self"]), ["enter", "tab"])),
|
|
28656
|
-
onKeyup: _cache[19] || (_cache[19] = vue.withKeys(($event) => _ctx.deactivate(), ["esc"])),
|
|
28657
|
-
role: "combobox",
|
|
28658
|
-
"aria-owns": "listbox-" + _ctx.id
|
|
28659
|
-
}, [
|
|
28660
|
-
vue.renderSlot(_ctx.$slots, "caret", { toggle: _ctx.toggle }, () => [
|
|
28661
|
-
vue.createVNode(
|
|
28662
|
-
"div",
|
|
28663
|
-
{
|
|
28664
|
-
onMousedown: _cache[1] || (_cache[1] = vue.withModifiers(($event) => _ctx.toggle(), ["prevent", "stop"])),
|
|
28665
|
-
class: "multiselect__select"
|
|
28666
|
-
},
|
|
28667
|
-
null,
|
|
28668
|
-
32
|
|
28669
|
-
/* HYDRATE_EVENTS */
|
|
28670
|
-
)
|
|
28671
|
-
]),
|
|
28672
|
-
vue.renderSlot(_ctx.$slots, "clear", { search: _ctx.search }),
|
|
28673
|
-
vue.createVNode(
|
|
28674
|
-
"div",
|
|
28675
|
-
_hoisted_1$n,
|
|
28676
|
-
[
|
|
28677
|
-
vue.renderSlot(_ctx.$slots, "selection", {
|
|
28678
|
-
search: _ctx.search,
|
|
28679
|
-
remove: _ctx.removeElement,
|
|
28680
|
-
values: $options.visibleValues,
|
|
28681
|
-
isOpen: _ctx.isOpen
|
|
28682
|
-
}, () => [
|
|
28683
|
-
vue.withDirectives(vue.createVNode(
|
|
28684
|
-
"div",
|
|
28685
|
-
_hoisted_2$i,
|
|
28686
|
-
[
|
|
28687
|
-
(vue.openBlock(true), vue.createBlock(
|
|
28688
|
-
vue.Fragment,
|
|
28689
|
-
null,
|
|
28690
|
-
vue.renderList($options.visibleValues, (option2, index2) => {
|
|
28691
|
-
return vue.renderSlot(_ctx.$slots, "tag", {
|
|
28692
|
-
option: option2,
|
|
28693
|
-
search: _ctx.search,
|
|
28694
|
-
remove: _ctx.removeElement
|
|
28695
|
-
}, () => [
|
|
28696
|
-
(vue.openBlock(), vue.createBlock("span", {
|
|
28697
|
-
class: "multiselect__tag",
|
|
28698
|
-
key: index2
|
|
28699
|
-
}, [
|
|
28700
|
-
vue.createVNode("span", {
|
|
28701
|
-
textContent: vue.toDisplayString(_ctx.getOptionLabel(option2))
|
|
28702
|
-
}, null, 8, ["textContent"]),
|
|
28703
|
-
vue.createVNode("i", {
|
|
28704
|
-
tabindex: "1",
|
|
28705
|
-
onKeypress: vue.withKeys(vue.withModifiers(($event) => _ctx.removeElement(option2), ["prevent"]), ["enter"]),
|
|
28706
|
-
onMousedown: vue.withModifiers(($event) => _ctx.removeElement(option2), ["prevent"]),
|
|
28707
|
-
class: "multiselect__tag-icon"
|
|
28708
|
-
}, null, 40, ["onKeypress", "onMousedown"])
|
|
28709
|
-
]))
|
|
28710
|
-
]);
|
|
28711
|
-
}),
|
|
28712
|
-
256
|
|
28713
|
-
/* UNKEYED_FRAGMENT */
|
|
28714
|
-
))
|
|
28715
|
-
],
|
|
28716
|
-
512
|
|
28717
|
-
/* NEED_PATCH */
|
|
28718
|
-
), [
|
|
28719
|
-
[vue.vShow, $options.visibleValues.length > 0]
|
|
28720
|
-
]),
|
|
28721
|
-
_ctx.internalValue && _ctx.internalValue.length > $props.limit ? vue.renderSlot(_ctx.$slots, "limit", { key: 0 }, () => [
|
|
28722
|
-
vue.createVNode("strong", {
|
|
28723
|
-
class: "multiselect__strong",
|
|
28724
|
-
textContent: vue.toDisplayString($props.limitText(_ctx.internalValue.length - $props.limit))
|
|
28725
|
-
}, null, 8, ["textContent"])
|
|
28726
|
-
]) : vue.createCommentVNode("v-if", true)
|
|
28727
|
-
]),
|
|
28728
|
-
vue.createVNode(vue.Transition, { name: "multiselect__loading" }, {
|
|
28729
|
-
default: vue.withCtx(() => [
|
|
28730
|
-
vue.renderSlot(_ctx.$slots, "loading", {}, () => [
|
|
28731
|
-
vue.withDirectives(vue.createVNode(
|
|
28732
|
-
"div",
|
|
28733
|
-
_hoisted_3$e,
|
|
28734
|
-
null,
|
|
28735
|
-
512
|
|
28736
|
-
/* NEED_PATCH */
|
|
28737
|
-
), [
|
|
28738
|
-
[vue.vShow, $props.loading]
|
|
28739
|
-
])
|
|
28740
|
-
])
|
|
28741
|
-
]),
|
|
28742
|
-
_: 3
|
|
28743
|
-
/* FORWARDED */
|
|
28744
|
-
}),
|
|
28745
|
-
_ctx.searchable ? (vue.openBlock(), vue.createBlock("input", {
|
|
28746
|
-
key: 0,
|
|
28747
|
-
ref: "search",
|
|
28748
|
-
name: $props.name,
|
|
28749
|
-
id: _ctx.id,
|
|
28750
|
-
type: "text",
|
|
28751
|
-
autocomplete: "off",
|
|
28752
|
-
spellcheck: false,
|
|
28753
|
-
placeholder: _ctx.placeholder,
|
|
28754
|
-
style: $options.inputStyle,
|
|
28755
|
-
value: _ctx.search,
|
|
28756
|
-
disabled: $props.disabled,
|
|
28757
|
-
tabindex: $props.tabindex,
|
|
28758
|
-
onInput: _cache[2] || (_cache[2] = ($event) => _ctx.updateSearch($event.target.value)),
|
|
28759
|
-
onFocus: _cache[3] || (_cache[3] = vue.withModifiers(($event) => _ctx.activate(), ["prevent"])),
|
|
28760
|
-
onBlur: _cache[4] || (_cache[4] = vue.withModifiers(($event) => _ctx.deactivate(), ["prevent"])),
|
|
28761
|
-
onKeyup: _cache[5] || (_cache[5] = vue.withKeys(($event) => _ctx.deactivate(), ["esc"])),
|
|
28762
|
-
onKeydown: [
|
|
28763
|
-
_cache[6] || (_cache[6] = vue.withKeys(vue.withModifiers(($event) => _ctx.pointerForward(), ["prevent"]), ["down"])),
|
|
28764
|
-
_cache[7] || (_cache[7] = vue.withKeys(vue.withModifiers(($event) => _ctx.pointerBackward(), ["prevent"]), ["up"])),
|
|
28765
|
-
_cache[9] || (_cache[9] = vue.withKeys(vue.withModifiers(($event) => _ctx.removeLastElement(), ["stop"]), ["delete"]))
|
|
28766
|
-
],
|
|
28767
|
-
onKeypress: _cache[8] || (_cache[8] = vue.withKeys(vue.withModifiers(($event) => _ctx.addPointerElement($event), ["prevent", "stop", "self"]), ["enter"])),
|
|
28768
|
-
class: "multiselect__input",
|
|
28769
|
-
"aria-controls": "listbox-" + _ctx.id
|
|
28770
|
-
}, null, 44, ["name", "id", "placeholder", "value", "disabled", "tabindex", "aria-controls"])) : vue.createCommentVNode("v-if", true),
|
|
28771
|
-
$options.isSingleLabelVisible ? (vue.openBlock(), vue.createBlock(
|
|
28772
|
-
"span",
|
|
28773
|
-
{
|
|
28774
|
-
key: 1,
|
|
28775
|
-
class: "multiselect__single",
|
|
28776
|
-
onMousedown: _cache[10] || (_cache[10] = vue.withModifiers((...args) => _ctx.toggle && _ctx.toggle(...args), ["prevent"]))
|
|
28777
|
-
},
|
|
28778
|
-
[
|
|
28779
|
-
vue.renderSlot(_ctx.$slots, "singleLabel", { option: $options.singleValue }, () => [
|
|
28780
|
-
vue.createTextVNode(
|
|
28781
|
-
vue.toDisplayString(_ctx.currentOptionLabel),
|
|
28782
|
-
1
|
|
28783
|
-
/* TEXT */
|
|
28784
|
-
)
|
|
28785
|
-
])
|
|
28786
|
-
],
|
|
28787
|
-
32
|
|
28788
|
-
/* HYDRATE_EVENTS */
|
|
28789
|
-
)) : vue.createCommentVNode("v-if", true),
|
|
28790
|
-
$options.isPlaceholderVisible ? (vue.openBlock(), vue.createBlock(
|
|
28791
|
-
"span",
|
|
28792
|
-
{
|
|
28793
|
-
key: 2,
|
|
28794
|
-
class: "multiselect__placeholder",
|
|
28795
|
-
onMousedown: _cache[11] || (_cache[11] = vue.withModifiers((...args) => _ctx.toggle && _ctx.toggle(...args), ["prevent"]))
|
|
28796
|
-
},
|
|
28797
|
-
[
|
|
28798
|
-
vue.renderSlot(_ctx.$slots, "placeholder", {}, () => [
|
|
28799
|
-
vue.createTextVNode(
|
|
28800
|
-
vue.toDisplayString(_ctx.placeholder),
|
|
28801
|
-
1
|
|
28802
|
-
/* TEXT */
|
|
28803
|
-
)
|
|
28804
|
-
])
|
|
28805
|
-
],
|
|
28806
|
-
32
|
|
28807
|
-
/* HYDRATE_EVENTS */
|
|
28808
|
-
)) : vue.createCommentVNode("v-if", true)
|
|
28809
|
-
],
|
|
28810
|
-
512
|
|
28811
|
-
/* NEED_PATCH */
|
|
28812
|
-
),
|
|
28813
|
-
vue.createVNode(vue.Transition, { name: "multiselect" }, {
|
|
28814
|
-
default: vue.withCtx(() => [
|
|
28815
|
-
vue.withDirectives(vue.createVNode(
|
|
28816
|
-
"div",
|
|
28817
|
-
{
|
|
28818
|
-
class: "multiselect__content-wrapper",
|
|
28819
|
-
onFocus: _cache[12] || (_cache[12] = (...args) => _ctx.activate && _ctx.activate(...args)),
|
|
28820
|
-
tabindex: "-1",
|
|
28821
|
-
onMousedown: _cache[13] || (_cache[13] = vue.withModifiers(() => {
|
|
28822
|
-
}, ["prevent"])),
|
|
28823
|
-
style: { maxHeight: _ctx.optimizedHeight + "px" },
|
|
28824
|
-
ref: "list"
|
|
28825
|
-
},
|
|
28826
|
-
[
|
|
28827
|
-
vue.createVNode("ul", {
|
|
28828
|
-
class: "multiselect__content",
|
|
28829
|
-
style: $options.contentStyle,
|
|
28830
|
-
role: "listbox",
|
|
28831
|
-
id: "listbox-" + _ctx.id
|
|
28832
|
-
}, [
|
|
28833
|
-
vue.renderSlot(_ctx.$slots, "beforeList"),
|
|
28834
|
-
_ctx.multiple && _ctx.max === _ctx.internalValue.length ? (vue.openBlock(), vue.createBlock("li", _hoisted_4$a, [
|
|
28835
|
-
vue.createVNode("span", _hoisted_5$9, [
|
|
28836
|
-
vue.renderSlot(_ctx.$slots, "maxElements", {}, () => [
|
|
28837
|
-
vue.createTextVNode(
|
|
28838
|
-
"Maximum of " + vue.toDisplayString(_ctx.max) + " options selected. First remove a selected option to select another.",
|
|
28839
|
-
1
|
|
28840
|
-
/* TEXT */
|
|
28841
|
-
)
|
|
28842
|
-
])
|
|
28843
|
-
])
|
|
28844
|
-
])) : vue.createCommentVNode("v-if", true),
|
|
28845
|
-
!_ctx.max || _ctx.internalValue.length < _ctx.max ? (vue.openBlock(true), vue.createBlock(
|
|
28846
|
-
vue.Fragment,
|
|
28847
|
-
{ key: 1 },
|
|
28848
|
-
vue.renderList(_ctx.filteredOptions, (option2, index2) => {
|
|
28849
|
-
return vue.openBlock(), vue.createBlock("li", {
|
|
28850
|
-
class: "multiselect__element",
|
|
28851
|
-
key: index2,
|
|
28852
|
-
id: _ctx.id + "-" + index2,
|
|
28853
|
-
role: !(option2 && (option2.$isLabel || option2.$isDisabled)) ? "option" : null
|
|
28854
|
-
}, [
|
|
28855
|
-
!(option2 && (option2.$isLabel || option2.$isDisabled)) ? (vue.openBlock(), vue.createBlock("span", {
|
|
28856
|
-
key: 0,
|
|
28857
|
-
class: [_ctx.optionHighlight(index2, option2), "multiselect__option"],
|
|
28858
|
-
onClick: vue.withModifiers(($event) => _ctx.select(option2), ["stop"]),
|
|
28859
|
-
onMouseenter: vue.withModifiers(($event) => _ctx.pointerSet(index2), ["self"]),
|
|
28860
|
-
"data-select": option2 && option2.isTag ? _ctx.tagPlaceholder : $options.selectLabelText,
|
|
28861
|
-
"data-selected": $options.selectedLabelText,
|
|
28862
|
-
"data-deselect": $options.deselectLabelText
|
|
28863
|
-
}, [
|
|
28864
|
-
vue.renderSlot(_ctx.$slots, "option", {
|
|
28865
|
-
option: option2,
|
|
28866
|
-
search: _ctx.search,
|
|
28867
|
-
index: index2
|
|
28868
|
-
}, () => [
|
|
28869
|
-
vue.createVNode(
|
|
28870
|
-
"span",
|
|
28871
|
-
null,
|
|
28872
|
-
vue.toDisplayString(_ctx.getOptionLabel(option2)),
|
|
28873
|
-
1
|
|
28874
|
-
/* TEXT */
|
|
28875
|
-
)
|
|
28876
|
-
])
|
|
28877
|
-
], 42, ["onClick", "onMouseenter", "data-select", "data-selected", "data-deselect"])) : vue.createCommentVNode("v-if", true),
|
|
28878
|
-
option2 && (option2.$isLabel || option2.$isDisabled) ? (vue.openBlock(), vue.createBlock("span", {
|
|
28879
|
-
key: 1,
|
|
28880
|
-
"data-select": _ctx.groupSelect && $options.selectGroupLabelText,
|
|
28881
|
-
"data-deselect": _ctx.groupSelect && $options.deselectGroupLabelText,
|
|
28882
|
-
class: [_ctx.groupHighlight(index2, option2), "multiselect__option"],
|
|
28883
|
-
onMouseenter: vue.withModifiers(($event) => _ctx.groupSelect && _ctx.pointerSet(index2), ["self"]),
|
|
28884
|
-
onMousedown: vue.withModifiers(($event) => _ctx.selectGroup(option2), ["prevent"])
|
|
28885
|
-
}, [
|
|
28886
|
-
vue.renderSlot(_ctx.$slots, "option", {
|
|
28887
|
-
option: option2,
|
|
28888
|
-
search: _ctx.search,
|
|
28889
|
-
index: index2
|
|
28890
|
-
}, () => [
|
|
28891
|
-
vue.createVNode(
|
|
28892
|
-
"span",
|
|
28893
|
-
null,
|
|
28894
|
-
vue.toDisplayString(_ctx.getOptionLabel(option2)),
|
|
28895
|
-
1
|
|
28896
|
-
/* TEXT */
|
|
28897
|
-
)
|
|
28898
|
-
])
|
|
28899
|
-
], 42, ["data-select", "data-deselect", "onMouseenter", "onMousedown"])) : vue.createCommentVNode("v-if", true)
|
|
28900
|
-
], 8, ["id", "role"]);
|
|
28901
|
-
}),
|
|
28902
|
-
128
|
|
28903
|
-
/* KEYED_FRAGMENT */
|
|
28904
|
-
)) : vue.createCommentVNode("v-if", true),
|
|
28905
|
-
vue.withDirectives(vue.createVNode(
|
|
28906
|
-
"li",
|
|
28907
|
-
null,
|
|
28908
|
-
[
|
|
28909
|
-
vue.createVNode("span", _hoisted_6$5, [
|
|
28910
|
-
vue.renderSlot(_ctx.$slots, "noResult", { search: _ctx.search }, () => [
|
|
28911
|
-
_hoisted_7$2
|
|
28912
|
-
])
|
|
28913
|
-
])
|
|
28914
|
-
],
|
|
28915
|
-
512
|
|
28916
|
-
/* NEED_PATCH */
|
|
28917
|
-
), [
|
|
28918
|
-
[vue.vShow, $props.showNoResults && (_ctx.filteredOptions.length === 0 && _ctx.search && !$props.loading)]
|
|
28919
|
-
]),
|
|
28920
|
-
vue.withDirectives(vue.createVNode(
|
|
28921
|
-
"li",
|
|
28922
|
-
null,
|
|
28923
|
-
[
|
|
28924
|
-
vue.createVNode("span", _hoisted_8$1, [
|
|
28925
|
-
vue.renderSlot(_ctx.$slots, "noOptions", {}, () => [
|
|
28926
|
-
_hoisted_9$1
|
|
28927
|
-
])
|
|
28928
|
-
])
|
|
28929
|
-
],
|
|
28930
|
-
512
|
|
28931
|
-
/* NEED_PATCH */
|
|
28932
|
-
), [
|
|
28933
|
-
[vue.vShow, $props.showNoOptions && ((_ctx.options.length === 0 || $options.hasOptionGroup === true && _ctx.filteredOptions.length === 0) && !_ctx.search && !$props.loading)]
|
|
28934
|
-
]),
|
|
28935
|
-
vue.renderSlot(_ctx.$slots, "afterList")
|
|
28936
|
-
], 12, ["id"])
|
|
28937
|
-
],
|
|
28938
|
-
36
|
|
28939
|
-
/* STYLE, HYDRATE_EVENTS */
|
|
28940
|
-
), [
|
|
28941
|
-
[vue.vShow, _ctx.isOpen]
|
|
28942
|
-
])
|
|
28943
|
-
]),
|
|
28944
|
-
_: 3
|
|
28945
|
-
/* FORWARDED */
|
|
28946
|
-
})
|
|
28947
|
-
], 42, ["tabindex", "aria-owns"]);
|
|
28948
|
-
}
|
|
28949
|
-
script$e.render = render$e;
|
|
28950
|
-
const Multiselect = script$e;
|
|
28951
|
-
const _hoisted_1$m = ["for"];
|
|
28952
|
-
const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
|
|
27426
|
+
const JSONInput = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__scopeId", "data-v-1fc4f739"]]);
|
|
27427
|
+
const _hoisted_1$m = ["disabled"];
|
|
27428
|
+
const _hoisted_2$i = ["onClick"];
|
|
27429
|
+
const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
|
|
28953
27430
|
__name: "SelectInput",
|
|
28954
27431
|
props: {
|
|
27432
|
+
options: {},
|
|
27433
|
+
placeholder: {},
|
|
27434
|
+
disabled: { type: Boolean },
|
|
27435
|
+
modelValue: {},
|
|
27436
|
+
searchable: { type: Boolean },
|
|
28955
27437
|
required: { type: Boolean },
|
|
28956
27438
|
label: {},
|
|
28957
|
-
|
|
28958
|
-
modelValue: {},
|
|
28959
|
-
placeholder: {},
|
|
28960
|
-
defaultValue: {},
|
|
28961
|
-
options: {},
|
|
28962
|
-
extraProps: {}
|
|
27439
|
+
fullWidth: { type: Boolean }
|
|
28963
27440
|
},
|
|
28964
27441
|
emits: ["update:modelValue"],
|
|
28965
27442
|
setup(__props, { emit: __emit }) {
|
|
27443
|
+
let open = vue.ref(false);
|
|
27444
|
+
const searchInput = vue.ref(null);
|
|
28966
27445
|
const props2 = __props;
|
|
28967
|
-
let
|
|
28968
|
-
|
|
27446
|
+
let selectedItem = vue.ref();
|
|
27447
|
+
let search = vue.ref("");
|
|
27448
|
+
const toggle = () => {
|
|
27449
|
+
open.value = !open.value;
|
|
27450
|
+
if (!open.value)
|
|
27451
|
+
search.value = "";
|
|
27452
|
+
if (open.value)
|
|
27453
|
+
setTimeout(() => {
|
|
27454
|
+
var _a2, _b, _c;
|
|
27455
|
+
return (_c = (_b = (_a2 = searchInput.value) == null ? void 0 : _a2.$el) == null ? void 0 : _b.querySelector("input")) == null ? void 0 : _c.focus();
|
|
27456
|
+
}, 100);
|
|
27457
|
+
};
|
|
27458
|
+
const valueToLabel = (value) => {
|
|
27459
|
+
if (!value)
|
|
27460
|
+
return "";
|
|
27461
|
+
const option2 = props2.options.find((option22) => {
|
|
27462
|
+
if (typeof option22 === "string" || typeof option22 === "number")
|
|
27463
|
+
return option22 === value;
|
|
27464
|
+
return option22.value === value;
|
|
27465
|
+
});
|
|
27466
|
+
if (!option2)
|
|
27467
|
+
return value;
|
|
27468
|
+
return getLabel(option2);
|
|
27469
|
+
};
|
|
28969
27470
|
const emit2 = __emit;
|
|
28970
|
-
const
|
|
28971
|
-
|
|
28972
|
-
|
|
28973
|
-
|
|
28974
|
-
|
|
28975
|
-
|
|
28976
|
-
|
|
28977
|
-
|
|
28978
|
-
|
|
28979
|
-
|
|
28980
|
-
|
|
28981
|
-
|
|
28982
|
-
|
|
28983
|
-
|
|
28984
|
-
|
|
28985
|
-
|
|
28986
|
-
|
|
28987
|
-
|
|
28988
|
-
|
|
28989
|
-
|
|
27471
|
+
const getLabel = (option2) => {
|
|
27472
|
+
if (typeof option2 === "string")
|
|
27473
|
+
return option2;
|
|
27474
|
+
if (typeof option2 === "number")
|
|
27475
|
+
return `${option2}`;
|
|
27476
|
+
return option2.label;
|
|
27477
|
+
};
|
|
27478
|
+
const isSelected = (option2) => {
|
|
27479
|
+
if (typeof option2 === "string" || typeof option2 === "number")
|
|
27480
|
+
return option2 === selectedItem.value;
|
|
27481
|
+
return option2.value === selectedItem.value;
|
|
27482
|
+
};
|
|
27483
|
+
const filteredOptions = vue.computed(() => props2.options.filter((option2) => {
|
|
27484
|
+
const searchTerm = new RegExp(search.value, "gi");
|
|
27485
|
+
if (typeof option2 === "string")
|
|
27486
|
+
return option2.match(searchTerm);
|
|
27487
|
+
if (typeof option2 === "number")
|
|
27488
|
+
return `${option2}`.match(searchTerm);
|
|
27489
|
+
return option2.label.match(searchTerm);
|
|
27490
|
+
}));
|
|
27491
|
+
const select2 = (option2) => {
|
|
27492
|
+
if (typeof option2 === "string")
|
|
27493
|
+
selectedItem.value = option2;
|
|
27494
|
+
else if (typeof option2 === "number")
|
|
27495
|
+
selectedItem.value = option2;
|
|
27496
|
+
else
|
|
27497
|
+
selectedItem.value = option2.value;
|
|
27498
|
+
emit2("update:modelValue", selectedItem.value);
|
|
27499
|
+
open.value = false;
|
|
27500
|
+
};
|
|
27501
|
+
vue.watch(() => props2.modelValue, (value) => {
|
|
27502
|
+
if (value !== selectedItem.value)
|
|
27503
|
+
selectedItem.value = value;
|
|
27504
|
+
}, { immediate: true });
|
|
28990
27505
|
return (_ctx, _cache) => {
|
|
28991
|
-
return vue.openBlock(), vue.
|
|
28992
|
-
|
|
28993
|
-
|
|
28994
|
-
|
|
28995
|
-
}
|
|
28996
|
-
vue.
|
|
28997
|
-
|
|
28998
|
-
|
|
28999
|
-
|
|
29000
|
-
|
|
29001
|
-
|
|
29002
|
-
|
|
29003
|
-
|
|
29004
|
-
|
|
29005
|
-
|
|
29006
|
-
|
|
29007
|
-
|
|
29008
|
-
|
|
29009
|
-
|
|
29010
|
-
|
|
29011
|
-
|
|
27506
|
+
return vue.openBlock(), vue.createBlock(vue.unref(kt$1), {
|
|
27507
|
+
placement: "bottom-start",
|
|
27508
|
+
class: "bagel-input selectinput"
|
|
27509
|
+
}, {
|
|
27510
|
+
popper: vue.withCtx(({ hide }) => [
|
|
27511
|
+
vue.createVNode(vue.unref(_sfc_main$t), {
|
|
27512
|
+
class: "selectinput-options p-05",
|
|
27513
|
+
style: vue.normalizeStyle({ width: _ctx.fullWidth ? "100%" : "auto" })
|
|
27514
|
+
}, {
|
|
27515
|
+
default: vue.withCtx(() => [
|
|
27516
|
+
_ctx.searchable ? (vue.openBlock(), vue.createBlock(vue.unref(TextInput), {
|
|
27517
|
+
key: 0,
|
|
27518
|
+
ref_key: "searchInput",
|
|
27519
|
+
ref: searchInput,
|
|
27520
|
+
dense: "",
|
|
27521
|
+
placeholder: "Search",
|
|
27522
|
+
icon: "search",
|
|
27523
|
+
modelValue: vue.unref(search),
|
|
27524
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => vue.isRef(search) ? search.value = $event : search = $event)
|
|
27525
|
+
}, null, 8, ["modelValue"])) : vue.createCommentVNode("", true),
|
|
27526
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(filteredOptions.value, (option2, i2) => {
|
|
27527
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
27528
|
+
class: vue.normalizeClass(["selectinput-option hover gap-1", { selected: option2 === vue.unref(selectedItem) }]),
|
|
27529
|
+
key: `${option2}${i2}`,
|
|
27530
|
+
onClick: () => {
|
|
27531
|
+
select2(option2);
|
|
27532
|
+
hide();
|
|
27533
|
+
}
|
|
27534
|
+
}, [
|
|
27535
|
+
isSelected(option2) ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$H), {
|
|
27536
|
+
key: 0,
|
|
27537
|
+
icon: "check"
|
|
27538
|
+
})) : vue.createCommentVNode("", true),
|
|
27539
|
+
!isSelected(option2) ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$H), {
|
|
27540
|
+
key: 1,
|
|
27541
|
+
class: "opacity-3",
|
|
27542
|
+
icon: "fiber_manual_record"
|
|
27543
|
+
})) : vue.createCommentVNode("", true),
|
|
27544
|
+
vue.createElementVNode("span", null, vue.toDisplayString(getLabel(option2)), 1)
|
|
27545
|
+
], 10, _hoisted_2$i);
|
|
27546
|
+
}), 128)),
|
|
27547
|
+
vue.renderSlot(_ctx.$slots, "last", {}, void 0, true)
|
|
27548
|
+
]),
|
|
27549
|
+
_: 2
|
|
27550
|
+
}, 1032, ["style"])
|
|
27551
|
+
]),
|
|
27552
|
+
default: vue.withCtx(() => [
|
|
27553
|
+
vue.createElementVNode("label", null, [
|
|
27554
|
+
vue.createTextVNode(vue.toDisplayString(_ctx.label) + " ", 1),
|
|
27555
|
+
vue.createElementVNode("button", {
|
|
27556
|
+
disabled: _ctx.disabled,
|
|
27557
|
+
type: "button",
|
|
27558
|
+
class: "selectinput-btn",
|
|
27559
|
+
onClick: toggle
|
|
27560
|
+
}, [
|
|
27561
|
+
vue.createTextVNode(vue.toDisplayString(valueToLabel(vue.unref(selectedItem)) || _ctx.placeholder || "Select") + " ", 1),
|
|
27562
|
+
vue.createVNode(vue.unref(_sfc_main$H), vue.normalizeProps(vue.guardReactiveProps({ "icon": vue.unref(open) ? "unfold_less" : "unfold_more" })), null, 16)
|
|
27563
|
+
], 8, _hoisted_1$m),
|
|
27564
|
+
_ctx.required ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("input", {
|
|
27565
|
+
key: 0,
|
|
27566
|
+
style: { "width": "0", "height": "0", "position": "absolute", "opacity": "0", "z-index": "-1" },
|
|
27567
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.isRef(selectedItem) ? selectedItem.value = $event : selectedItem = $event),
|
|
27568
|
+
required: ""
|
|
27569
|
+
}, null, 512)), [
|
|
27570
|
+
[vue.vModelText, vue.unref(selectedItem)]
|
|
27571
|
+
]) : vue.createCommentVNode("", true)
|
|
27572
|
+
])
|
|
27573
|
+
]),
|
|
27574
|
+
_: 3
|
|
27575
|
+
});
|
|
29012
27576
|
};
|
|
29013
27577
|
}
|
|
29014
27578
|
});
|
|
27579
|
+
const SelectInput = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__scopeId", "data-v-8845266b"]]);
|
|
29015
27580
|
const _hoisted_1$l = ["title"];
|
|
29016
27581
|
const _hoisted_2$h = { key: 0 };
|
|
29017
|
-
const _hoisted_3$
|
|
29018
|
-
const _sfc_main$
|
|
27582
|
+
const _hoisted_3$e = ["value", "placeholder"];
|
|
27583
|
+
const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
|
|
29019
27584
|
__name: "RichTextEditor",
|
|
29020
27585
|
props: {
|
|
29021
27586
|
description: { default: "" },
|
|
@@ -29046,12 +27611,12 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
|
|
|
29046
27611
|
onInput: handleInput,
|
|
29047
27612
|
placeholder: _ctx.placeholder,
|
|
29048
27613
|
class: vue.normalizeClass({ "no-edit": !_ctx.editMode })
|
|
29049
|
-
}, null, 42, _hoisted_3$
|
|
27614
|
+
}, null, 42, _hoisted_3$e)
|
|
29050
27615
|
], 10, _hoisted_1$l);
|
|
29051
27616
|
};
|
|
29052
27617
|
}
|
|
29053
27618
|
});
|
|
29054
|
-
const RichTextEditor = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
27619
|
+
const RichTextEditor = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-69a60381"]]);
|
|
29055
27620
|
/*!
|
|
29056
27621
|
* vue-draggable-next v2.2.0
|
|
29057
27622
|
* (c) 2023 Anish George
|
|
@@ -29223,13 +27788,13 @@ function closest(el, selector2, ctx, includeCTX) {
|
|
|
29223
27788
|
return null;
|
|
29224
27789
|
}
|
|
29225
27790
|
var R_SPACE = /\s+/g;
|
|
29226
|
-
function toggleClass(el, name,
|
|
27791
|
+
function toggleClass(el, name, state2) {
|
|
29227
27792
|
if (el && name) {
|
|
29228
27793
|
if (el.classList) {
|
|
29229
|
-
el.classList[
|
|
27794
|
+
el.classList[state2 ? "add" : "remove"](name);
|
|
29230
27795
|
} else {
|
|
29231
27796
|
var className = (" " + el.className + " ").replace(R_SPACE, " ").replace(" " + name + " ", " ");
|
|
29232
|
-
el.className = (className + (
|
|
27797
|
+
el.className = (className + (state2 ? " " + name : "")).replace(R_SPACE, " ");
|
|
29233
27798
|
}
|
|
29234
27799
|
}
|
|
29235
27800
|
}
|
|
@@ -29506,8 +28071,8 @@ function AnimationStateManager() {
|
|
|
29506
28071
|
child.fromRect = fromRect;
|
|
29507
28072
|
});
|
|
29508
28073
|
},
|
|
29509
|
-
addAnimationState: function addAnimationState(
|
|
29510
|
-
animationStates.push(
|
|
28074
|
+
addAnimationState: function addAnimationState(state2) {
|
|
28075
|
+
animationStates.push(state2);
|
|
29511
28076
|
},
|
|
29512
28077
|
removeAnimationState: function removeAnimationState(target) {
|
|
29513
28078
|
animationStates.splice(indexOfObject(animationStates, {
|
|
@@ -29523,8 +28088,8 @@ function AnimationStateManager() {
|
|
|
29523
28088
|
return;
|
|
29524
28089
|
}
|
|
29525
28090
|
var animating = false, animationTime = 0;
|
|
29526
|
-
animationStates.forEach(function(
|
|
29527
|
-
var time = 0, target =
|
|
28091
|
+
animationStates.forEach(function(state2) {
|
|
28092
|
+
var time = 0, target = state2.target, fromRect = target.fromRect, toRect = getRect(target), prevFromRect = target.prevFromRect, prevToRect = target.prevToRect, animatingRect = state2.rect, targetMatrix = matrix(target, true);
|
|
29528
28093
|
if (targetMatrix) {
|
|
29529
28094
|
toRect.top -= targetMatrix.f;
|
|
29530
28095
|
toRect.left -= targetMatrix.e;
|
|
@@ -31576,11 +30141,11 @@ const VueDraggableNext = vue.defineComponent({
|
|
|
31576
30141
|
});
|
|
31577
30142
|
const _hoisted_1$k = ["title"];
|
|
31578
30143
|
const _hoisted_2$g = { class: "bagel-input" };
|
|
31579
|
-
const _hoisted_3$
|
|
30144
|
+
const _hoisted_3$d = { class: "table-side-scroll" };
|
|
31580
30145
|
const _hoisted_4$9 = { class: "table-header" };
|
|
31581
30146
|
const _hoisted_5$8 = { class: "table-reorder" };
|
|
31582
30147
|
const _hoisted_6$4 = { class: "table-action" };
|
|
31583
|
-
const _sfc_main$
|
|
30148
|
+
const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
|
|
31584
30149
|
__name: "TableField",
|
|
31585
30150
|
props: {
|
|
31586
30151
|
description: { default: "" },
|
|
@@ -31648,7 +30213,7 @@ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
|
|
|
31648
30213
|
vue.createElementVNode("div", _hoisted_2$g, [
|
|
31649
30214
|
vue.createElementVNode("label", null, vue.toDisplayString((_a2 = vue.unref(fieldMeta)) == null ? void 0 : _a2.label), 1)
|
|
31650
30215
|
]),
|
|
31651
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
30216
|
+
vue.createElementVNode("div", _hoisted_3$d, [
|
|
31652
30217
|
vue.createElementVNode("div", _hoisted_4$9, [
|
|
31653
30218
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList((_b = vue.unref(entityMeta)) == null ? void 0 : _b.fields, (field) => {
|
|
31654
30219
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -31677,7 +30242,7 @@ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
|
|
|
31677
30242
|
key: row.id
|
|
31678
30243
|
}, [
|
|
31679
30244
|
vue.createElementVNode("div", _hoisted_5$8, [
|
|
31680
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
30245
|
+
vue.createVNode(vue.unref(_sfc_main$H), { icon: "more_vert" })
|
|
31681
30246
|
]),
|
|
31682
30247
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList((_a3 = vue.unref(entityMeta)) == null ? void 0 : _a3.fields, (field) => {
|
|
31683
30248
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -31694,7 +30259,7 @@ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
|
|
|
31694
30259
|
], 2);
|
|
31695
30260
|
}), 128)),
|
|
31696
30261
|
vue.createElementVNode("div", _hoisted_6$4, [
|
|
31697
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
30262
|
+
vue.createVNode(vue.unref(_sfc_main$H), {
|
|
31698
30263
|
icon: "delete",
|
|
31699
30264
|
onClick: ($event) => removeRow(index2)
|
|
31700
30265
|
}, null, 8, ["onClick"])
|
|
@@ -31724,13 +30289,13 @@ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
|
|
|
31724
30289
|
};
|
|
31725
30290
|
}
|
|
31726
30291
|
});
|
|
31727
|
-
const TableField = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
30292
|
+
const TableField = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-cdacf10e"]]);
|
|
31728
30293
|
const _hoisted_1$j = ["title"];
|
|
31729
30294
|
const _hoisted_2$f = ["for"];
|
|
31730
|
-
const _hoisted_3$
|
|
30295
|
+
const _hoisted_3$c = ["title", "autocomplete", "id", "type", "placeholder", "disabled", "required", "pattern"];
|
|
31731
30296
|
const _hoisted_4$8 = ["title", "id", "type", "rows", "placeholder", "disabled", "required", "pattern"];
|
|
31732
30297
|
const _hoisted_5$7 = { key: 2 };
|
|
31733
|
-
const _sfc_main$
|
|
30298
|
+
const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
|
|
31734
30299
|
__name: "TextInput",
|
|
31735
30300
|
props: {
|
|
31736
30301
|
id: {},
|
|
@@ -31844,7 +30409,7 @@ const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
|
|
|
31844
30409
|
disabled: !vue.unref(editMode),
|
|
31845
30410
|
required: _ctx.required,
|
|
31846
30411
|
pattern: _ctx.pattern
|
|
31847
|
-
}, _ctx.nativeInputAttrs, { onDblclick: toggleEditAction }), null, 16, _hoisted_3$
|
|
30412
|
+
}, _ctx.nativeInputAttrs, { onDblclick: toggleEditAction }), null, 16, _hoisted_3$c)), [
|
|
31848
30413
|
[vue.vModelDynamic, vue.unref(inputVal)]
|
|
31849
30414
|
]) : vue.withDirectives((vue.openBlock(), vue.createElementBlock("textarea", vue.mergeProps({
|
|
31850
30415
|
key: 1,
|
|
@@ -31864,12 +30429,12 @@ const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
|
|
|
31864
30429
|
]),
|
|
31865
30430
|
_ctx.helptext ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_5$7, vue.toDisplayString(_ctx.helptext), 1)) : vue.createCommentVNode("", true)
|
|
31866
30431
|
], 8, _hoisted_2$f),
|
|
31867
|
-
_ctx.iconStart ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
30432
|
+
_ctx.iconStart ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$H), {
|
|
31868
30433
|
key: 0,
|
|
31869
30434
|
class: "iconStart",
|
|
31870
30435
|
icon: _ctx.iconStart
|
|
31871
30436
|
}, null, 8, ["icon"])) : vue.createCommentVNode("", true),
|
|
31872
|
-
_ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$
|
|
30437
|
+
_ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$H), {
|
|
31873
30438
|
key: 1,
|
|
31874
30439
|
icon: _ctx.icon
|
|
31875
30440
|
}, null, 8, ["icon"])) : vue.createCommentVNode("", true),
|
|
@@ -31885,9 +30450,9 @@ const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
|
|
|
31885
30450
|
};
|
|
31886
30451
|
}
|
|
31887
30452
|
});
|
|
31888
|
-
const TextInput = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
30453
|
+
const TextInput = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__scopeId", "data-v-cd4c27ad"]]);
|
|
31889
30454
|
const _hoisted_1$i = { class: "primary-checkbox" };
|
|
31890
|
-
const _sfc_main$
|
|
30455
|
+
const _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
|
|
31891
30456
|
__name: "Checkbox",
|
|
31892
30457
|
props: {
|
|
31893
30458
|
"modelValue": {
|
|
@@ -31908,16 +30473,16 @@ const _sfc_main$8 = /* @__PURE__ */ vue.defineComponent({
|
|
|
31908
30473
|
[vue.vModelCheckbox, val.value]
|
|
31909
30474
|
]),
|
|
31910
30475
|
vue.createElementVNode("span", null, [
|
|
31911
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
30476
|
+
vue.createVNode(vue.unref(_sfc_main$H), { icon: "check" })
|
|
31912
30477
|
])
|
|
31913
30478
|
]);
|
|
31914
30479
|
};
|
|
31915
30480
|
}
|
|
31916
30481
|
});
|
|
31917
|
-
const Checkbox = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
30482
|
+
const Checkbox = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-e4cbb088"]]);
|
|
31918
30483
|
const _hoisted_1$h = ["title"];
|
|
31919
30484
|
const _hoisted_2$e = ["id", "placeholder", "required"];
|
|
31920
|
-
const _sfc_main$
|
|
30485
|
+
const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
|
|
31921
30486
|
__name: "ColorPicker",
|
|
31922
30487
|
props: {
|
|
31923
30488
|
label: {},
|
|
@@ -31963,13 +30528,13 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
|
|
|
31963
30528
|
});
|
|
31964
30529
|
const _hoisted_1$g = { class: "datetime-wrap" };
|
|
31965
30530
|
const _hoisted_2$d = { class: "date-wrap" };
|
|
31966
|
-
const _hoisted_3$
|
|
30531
|
+
const _hoisted_3$b = {
|
|
31967
30532
|
key: 0,
|
|
31968
30533
|
class: "time-wrap"
|
|
31969
30534
|
};
|
|
31970
30535
|
const _hoisted_4$7 = ["id", "name", "value"];
|
|
31971
30536
|
const _hoisted_5$6 = ["for"];
|
|
31972
|
-
const _sfc_main$
|
|
30537
|
+
const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
|
|
31973
30538
|
__name: "DatePicker",
|
|
31974
30539
|
props: {
|
|
31975
30540
|
name: {},
|
|
@@ -32001,7 +30566,7 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
|
32001
30566
|
_: 1
|
|
32002
30567
|
}, 16, ["modelValue"])
|
|
32003
30568
|
]),
|
|
32004
|
-
_ctx.showTimeWrap ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$
|
|
30569
|
+
_ctx.showTimeWrap ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$b, [
|
|
32005
30570
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(hours), (hr2) => {
|
|
32006
30571
|
return vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: hr2 }, [
|
|
32007
30572
|
vue.withDirectives(vue.createElementVNode("input", {
|
|
@@ -32025,10 +30590,10 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
|
32025
30590
|
});
|
|
32026
30591
|
const _hoisted_1$f = { class: "bagel-input" };
|
|
32027
30592
|
const _hoisted_2$c = { class: "pb-025" };
|
|
32028
|
-
const _hoisted_3$
|
|
30593
|
+
const _hoisted_3$a = { class: "flex gap-05 flex-wrap" };
|
|
32029
30594
|
const _hoisted_4$6 = ["id", "name", "value", "checked"];
|
|
32030
30595
|
const _hoisted_5$5 = ["for"];
|
|
32031
|
-
const _sfc_main$
|
|
30596
|
+
const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
|
|
32032
30597
|
__name: "RadioPillsInput",
|
|
32033
30598
|
props: {
|
|
32034
30599
|
options: {},
|
|
@@ -32069,7 +30634,7 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
32069
30634
|
return (_ctx, _cache) => {
|
|
32070
30635
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$f, [
|
|
32071
30636
|
vue.createElementVNode("label", _hoisted_2$c, vue.toDisplayString(_ctx.label), 1),
|
|
32072
|
-
vue.createElementVNode("div", _hoisted_3$
|
|
30637
|
+
vue.createElementVNode("div", _hoisted_3$a, [
|
|
32073
30638
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(cumputedOptions.value, ({ optioId, label, value }, index2) => {
|
|
32074
30639
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
32075
30640
|
class: "radio-pill",
|
|
@@ -32091,13 +30656,13 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
|
32091
30656
|
};
|
|
32092
30657
|
}
|
|
32093
30658
|
});
|
|
32094
|
-
const RadioPillsInput = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
30659
|
+
const RadioPillsInput = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__scopeId", "data-v-e47ae8b5"]]);
|
|
32095
30660
|
const _hoisted_1$e = { class: "bagel-input" };
|
|
32096
30661
|
const _hoisted_2$b = {
|
|
32097
30662
|
key: 0,
|
|
32098
30663
|
class: "imagePreviewWrap"
|
|
32099
30664
|
};
|
|
32100
|
-
const _hoisted_3$
|
|
30665
|
+
const _hoisted_3$9 = ["src"];
|
|
32101
30666
|
const _hoisted_4$5 = { class: "previewName" };
|
|
32102
30667
|
const _hoisted_5$4 = ["src"];
|
|
32103
30668
|
const _hoisted_6$3 = { class: "no-margin" };
|
|
@@ -32113,7 +30678,7 @@ const _hoisted_12 = {
|
|
|
32113
30678
|
key: 0,
|
|
32114
30679
|
class: "progress"
|
|
32115
30680
|
};
|
|
32116
|
-
const _sfc_main$
|
|
30681
|
+
const _sfc_main$8 = /* @__PURE__ */ vue.defineComponent({
|
|
32117
30682
|
__name: "FileUpload",
|
|
32118
30683
|
props: /* @__PURE__ */ vue.mergeModels({
|
|
32119
30684
|
label: {},
|
|
@@ -32227,7 +30792,7 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
|
32227
30792
|
class: "preview",
|
|
32228
30793
|
src: file.url,
|
|
32229
30794
|
alt: ""
|
|
32230
|
-
}, null, 8, _hoisted_3$
|
|
30795
|
+
}, null, 8, _hoisted_3$9)
|
|
32231
30796
|
])) : vue.createCommentVNode("", true),
|
|
32232
30797
|
vue.createElementVNode("div", _hoisted_4$5, [
|
|
32233
30798
|
_ctx.multiple ? (vue.openBlock(), vue.createElementBlock("img", {
|
|
@@ -32273,7 +30838,7 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
|
32273
30838
|
style: vue.normalizeStyle([`--p:${fileQ.progress}`, { "--b": "2px" }])
|
|
32274
30839
|
}, [
|
|
32275
30840
|
fileQ.progress < 100 ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_12, vue.toDisplayString(`${fileQ.progress.toFixed(0)}`), 1)) : vue.createCommentVNode("", true),
|
|
32276
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
30841
|
+
vue.createVNode(vue.unref(_sfc_main$H), {
|
|
32277
30842
|
class: "success",
|
|
32278
30843
|
icon: "check"
|
|
32279
30844
|
})
|
|
@@ -32286,15 +30851,15 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
|
32286
30851
|
};
|
|
32287
30852
|
}
|
|
32288
30853
|
});
|
|
32289
|
-
const FileUpload = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
30854
|
+
const FileUpload = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__scopeId", "data-v-1be8d7b1"]]);
|
|
32290
30855
|
const _withScopeId = (n2) => (vue.pushScopeId("data-v-b87221d6"), n2 = n2(), vue.popScopeId(), n2);
|
|
32291
30856
|
const _hoisted_1$d = ["title"];
|
|
32292
30857
|
const _hoisted_2$a = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ vue.createElementVNode("span", { class: "slider round" }, null, -1));
|
|
32293
|
-
const _hoisted_3$
|
|
30858
|
+
const _hoisted_3$8 = [
|
|
32294
30859
|
_hoisted_2$a
|
|
32295
30860
|
];
|
|
32296
30861
|
const _hoisted_4$4 = ["id"];
|
|
32297
|
-
const _sfc_main$
|
|
30862
|
+
const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
|
|
32298
30863
|
__name: "ToggleInput",
|
|
32299
30864
|
props: /* @__PURE__ */ vue.mergeModels({
|
|
32300
30865
|
label: {},
|
|
@@ -32315,7 +30880,7 @@ const _sfc_main$3 = /* @__PURE__ */ vue.defineComponent({
|
|
|
32315
30880
|
}, [
|
|
32316
30881
|
vue.createElementVNode("div", {
|
|
32317
30882
|
class: vue.normalizeClass(["switch", { checked: checked.value }])
|
|
32318
|
-
}, _hoisted_3$
|
|
30883
|
+
}, _hoisted_3$8, 2),
|
|
32319
30884
|
vue.createElementVNode("label", null, [
|
|
32320
30885
|
vue.createTextVNode(vue.toDisplayString(_ctx.label) + " ", 1),
|
|
32321
30886
|
vue.withDirectives(vue.createElementVNode("input", {
|
|
@@ -32330,7 +30895,7 @@ const _sfc_main$3 = /* @__PURE__ */ vue.defineComponent({
|
|
|
32330
30895
|
};
|
|
32331
30896
|
}
|
|
32332
30897
|
});
|
|
32333
|
-
const ToggleInput = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
30898
|
+
const ToggleInput = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__scopeId", "data-v-b87221d6"]]);
|
|
32334
30899
|
function _isPlaceholder(a2) {
|
|
32335
30900
|
return a2 != null && typeof a2 === "object" && a2["@@functional/placeholder"] === true;
|
|
32336
30901
|
}
|
|
@@ -37361,11 +35926,11 @@ var script$6 = vue.defineComponent({
|
|
|
37361
35926
|
return { el, width, height };
|
|
37362
35927
|
}
|
|
37363
35928
|
});
|
|
37364
|
-
const _hoisted_1$5 = { ref: "el" };
|
|
35929
|
+
const _hoisted_1$5$1 = { ref: "el" };
|
|
37365
35930
|
function render$6(_ctx, _cache, $props, $setup, $data, $options) {
|
|
37366
35931
|
return vue.openBlock(), vue.createElementBlock(
|
|
37367
35932
|
"div",
|
|
37368
|
-
_hoisted_1$5,
|
|
35933
|
+
_hoisted_1$5$1,
|
|
37369
35934
|
[
|
|
37370
35935
|
vue.renderSlot(_ctx.$slots, "main", {
|
|
37371
35936
|
width: _ctx.width,
|
|
@@ -37437,7 +36002,7 @@ var script$5 = vue.defineComponent({
|
|
|
37437
36002
|
return { data: data2, canvas, xLines, yLines };
|
|
37438
36003
|
}
|
|
37439
36004
|
});
|
|
37440
|
-
const _hoisted_1$4 = ["stroke-dasharray"];
|
|
36005
|
+
const _hoisted_1$4$1 = ["stroke-dasharray"];
|
|
37441
36006
|
const _hoisted_2$3 = {
|
|
37442
36007
|
key: 0,
|
|
37443
36008
|
class: "grid-x"
|
|
@@ -37507,7 +36072,7 @@ function render$5(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
37507
36072
|
y2: _ctx.canvas.height
|
|
37508
36073
|
}, null, 8, _hoisted_7)
|
|
37509
36074
|
])
|
|
37510
|
-
], 8, _hoisted_1$4)) : vue.createCommentVNode("v-if", true);
|
|
36075
|
+
], 8, _hoisted_1$4$1)) : vue.createCommentVNode("v-if", true);
|
|
37511
36076
|
}
|
|
37512
36077
|
script$5.render = render$5;
|
|
37513
36078
|
script$5.__file = "src/components/Grid/index.vue";
|
|
@@ -37600,7 +36165,7 @@ var script$4 = vue.defineComponent({
|
|
|
37600
36165
|
return { el, show, canvas, direction, style, styleContent, position, items, isRight };
|
|
37601
36166
|
}
|
|
37602
36167
|
});
|
|
37603
|
-
const _hoisted_1$3 = { key: 0 };
|
|
36168
|
+
const _hoisted_1$3$1 = { key: 0 };
|
|
37604
36169
|
function render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
37605
36170
|
return _ctx.show ? (vue.openBlock(), vue.createElementBlock(
|
|
37606
36171
|
"div",
|
|
@@ -37665,7 +36230,7 @@ function render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
37665
36230
|
4
|
|
37666
36231
|
/* STYLE */
|
|
37667
36232
|
),
|
|
37668
|
-
!_ctx.hideLine ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$3, [
|
|
36233
|
+
!_ctx.hideLine ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$3$1, [
|
|
37669
36234
|
_ctx.direction === "horizontal" ? (vue.openBlock(), vue.createElementBlock(
|
|
37670
36235
|
"div",
|
|
37671
36236
|
{
|
|
@@ -37769,11 +36334,11 @@ var script$2 = vue.defineComponent({
|
|
|
37769
36334
|
return { y: y2, canvas, direction };
|
|
37770
36335
|
}
|
|
37771
36336
|
});
|
|
37772
|
-
const _hoisted_1$2 = {
|
|
36337
|
+
const _hoisted_1$2$1 = {
|
|
37773
36338
|
key: 0,
|
|
37774
36339
|
class: "layer-marker"
|
|
37775
36340
|
};
|
|
37776
|
-
const _hoisted_2$2 = ["x", "y", "fill"];
|
|
36341
|
+
const _hoisted_2$2$1 = ["x", "y", "fill"];
|
|
37777
36342
|
const _hoisted_3$1 = ["x1", "y1", "x2", "y2", "stroke", "stroke-opacity", "stroke-width", "stroke-dasharray"];
|
|
37778
36343
|
const _hoisted_4$1 = {
|
|
37779
36344
|
key: 1,
|
|
@@ -37782,13 +36347,13 @@ const _hoisted_4$1 = {
|
|
|
37782
36347
|
const _hoisted_5$1 = ["x", "y", "fill"];
|
|
37783
36348
|
const _hoisted_6$1 = ["x1", "y1", "x2", "y2", "stroke", "stroke-opacity", "stroke-width", "stroke-dasharray"];
|
|
37784
36349
|
function render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
37785
|
-
return _ctx.direction === "horizontal" ? (vue.openBlock(), vue.createElementBlock("g", _hoisted_1$2, [
|
|
36350
|
+
return _ctx.direction === "horizontal" ? (vue.openBlock(), vue.createElementBlock("g", _hoisted_1$2$1, [
|
|
37786
36351
|
vue.createElementVNode("text", {
|
|
37787
36352
|
x: _ctx.canvas.x + 5,
|
|
37788
36353
|
y: _ctx.y - 5,
|
|
37789
36354
|
"text-anchor": "start",
|
|
37790
36355
|
fill: _ctx.color
|
|
37791
|
-
}, vue.toDisplayString(_ctx.label), 9, _hoisted_2$2),
|
|
36356
|
+
}, vue.toDisplayString(_ctx.label), 9, _hoisted_2$2$1),
|
|
37792
36357
|
vue.createElementVNode("line", {
|
|
37793
36358
|
x1: _ctx.canvas.x,
|
|
37794
36359
|
y1: _ctx.y,
|
|
@@ -38402,8 +36967,8 @@ const _hoisted_1$1$1 = {
|
|
|
38402
36967
|
class: "treemap",
|
|
38403
36968
|
style: { display: "flex", position: "relative" }
|
|
38404
36969
|
};
|
|
38405
|
-
const _hoisted_2$1 = ["width", "height", "viewBox"];
|
|
38406
|
-
const _hoisted_3 = { class: "layer-rectangles" };
|
|
36970
|
+
const _hoisted_2$1$1 = ["width", "height", "viewBox"];
|
|
36971
|
+
const _hoisted_3$7 = { class: "layer-rectangles" };
|
|
38407
36972
|
const _hoisted_4 = ["transform", "onMouseover"];
|
|
38408
36973
|
const _hoisted_5 = ["width", "height"];
|
|
38409
36974
|
const _hoisted_6 = {
|
|
@@ -38421,7 +36986,7 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
38421
36986
|
viewBox: `0 0 ${_ctx.size.width} ${_ctx.size.height}`,
|
|
38422
36987
|
ref: "el"
|
|
38423
36988
|
}, [
|
|
38424
|
-
vue.createElementVNode("g", _hoisted_3, [
|
|
36989
|
+
vue.createElementVNode("g", _hoisted_3$7, [
|
|
38425
36990
|
(vue.openBlock(true), vue.createElementBlock(
|
|
38426
36991
|
vue.Fragment,
|
|
38427
36992
|
null,
|
|
@@ -38462,7 +37027,7 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
38462
37027
|
/* KEYED_FRAGMENT */
|
|
38463
37028
|
))
|
|
38464
37029
|
])
|
|
38465
|
-
], 8, _hoisted_2$1)),
|
|
37030
|
+
], 8, _hoisted_2$1$1)),
|
|
38466
37031
|
vue.renderSlot(_ctx.$slots, "widgets")
|
|
38467
37032
|
]);
|
|
38468
37033
|
}
|
|
@@ -38530,13 +37095,13 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
38530
37095
|
}
|
|
38531
37096
|
script.render = render;
|
|
38532
37097
|
script.__file = "src/components/HoverBar/index.vue";
|
|
38533
|
-
const _hoisted_1$
|
|
37098
|
+
const _hoisted_1$5 = /* @__PURE__ */ vue.createElementVNode("stop", {
|
|
38534
37099
|
offset: "100%",
|
|
38535
37100
|
"stop-color": "white",
|
|
38536
37101
|
"stop-opacity": "0.4"
|
|
38537
37102
|
}, null, -1);
|
|
38538
37103
|
const BRAND_COLOR = "var(--bgl-primary)";
|
|
38539
|
-
const _sfc_main$
|
|
37104
|
+
const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
|
|
38540
37105
|
__name: "Lineart",
|
|
38541
37106
|
props: {
|
|
38542
37107
|
data: {},
|
|
@@ -38665,7 +37230,7 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
|
38665
37230
|
"stop-color": BRAND_COLOR,
|
|
38666
37231
|
"stop-opacity": "1"
|
|
38667
37232
|
}),
|
|
38668
|
-
_hoisted_1$
|
|
37233
|
+
_hoisted_1$5
|
|
38669
37234
|
])
|
|
38670
37235
|
])
|
|
38671
37236
|
]),
|
|
@@ -38681,37 +37246,53 @@ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
|
38681
37246
|
};
|
|
38682
37247
|
}
|
|
38683
37248
|
});
|
|
38684
|
-
const _sfc_main$
|
|
37249
|
+
const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
|
|
38685
37250
|
__name: "Layout",
|
|
38686
37251
|
props: {
|
|
38687
37252
|
gap: { default: 1 },
|
|
38688
37253
|
h100: { type: Boolean, default: false },
|
|
38689
37254
|
columns: { default: () => [] },
|
|
37255
|
+
mColumns: { default: () => [] },
|
|
37256
|
+
mRows: { default: () => [] },
|
|
38690
37257
|
rows: { default: () => [] }
|
|
38691
37258
|
},
|
|
38692
37259
|
setup(__props) {
|
|
37260
|
+
vue.useCssVars((_ctx) => ({
|
|
37261
|
+
"7a00a82c": gapSize.value,
|
|
37262
|
+
"30493178": gridTemplateRows.value,
|
|
37263
|
+
"5b203692": gridTemplateColumns.value,
|
|
37264
|
+
"7cba085b": mGridTemplateRows.value,
|
|
37265
|
+
"7abc6a1b": mGridTemplateColumns.value
|
|
37266
|
+
}));
|
|
38693
37267
|
const props2 = __props;
|
|
38694
|
-
const
|
|
38695
|
-
|
|
38696
|
-
|
|
38697
|
-
|
|
38698
|
-
if (props2.
|
|
38699
|
-
|
|
38700
|
-
return
|
|
37268
|
+
const gridTemplateRows = vue.computed(() => props2.rows.length ? props2.rows.join(" ") : "auto");
|
|
37269
|
+
const gapSize = vue.computed(() => `${props2.gap}rem`);
|
|
37270
|
+
const mGridTemplateRows = vue.computed(() => {
|
|
37271
|
+
var _a2;
|
|
37272
|
+
if ((_a2 = props2.mRows) == null ? void 0 : _a2.length)
|
|
37273
|
+
return props2.mRows.join(" ");
|
|
37274
|
+
return gridTemplateRows.value;
|
|
37275
|
+
});
|
|
37276
|
+
const gridTemplateColumns = vue.computed(() => props2.columns.length ? props2.columns.join(" ") : "auto");
|
|
37277
|
+
const mGridTemplateColumns = vue.computed(() => {
|
|
37278
|
+
var _a2;
|
|
37279
|
+
if ((_a2 = props2.mColumns) == null ? void 0 : _a2.length)
|
|
37280
|
+
return props2.mColumns.join(" ");
|
|
37281
|
+
return gridTemplateColumns.value;
|
|
38701
37282
|
});
|
|
38702
37283
|
return (_ctx, _cache) => {
|
|
38703
37284
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
38704
|
-
class: vue.normalizeClass(["layout", { "layout-h-100": _ctx.h100 }])
|
|
38705
|
-
style: vue.normalizeStyle(style.value)
|
|
37285
|
+
class: vue.normalizeClass(["layout", { "layout-h-100": _ctx.h100 }])
|
|
38706
37286
|
}, [
|
|
38707
|
-
vue.renderSlot(_ctx.$slots, "default")
|
|
38708
|
-
],
|
|
37287
|
+
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
37288
|
+
], 2);
|
|
38709
37289
|
};
|
|
38710
37290
|
}
|
|
38711
37291
|
});
|
|
38712
|
-
const
|
|
38713
|
-
const
|
|
38714
|
-
const
|
|
37292
|
+
const Layout = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-977dfbf4"]]);
|
|
37293
|
+
const _hoisted_1$4 = { class: "w-100 px-075" };
|
|
37294
|
+
const _hoisted_2$2 = { key: 0 };
|
|
37295
|
+
const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
38715
37296
|
__name: "SidebarMenu",
|
|
38716
37297
|
props: {
|
|
38717
37298
|
navLinks: {},
|
|
@@ -38729,13 +37310,12 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
38729
37310
|
emit2("update:open", isOpen.value);
|
|
38730
37311
|
}
|
|
38731
37312
|
return (_ctx, _cache) => {
|
|
38732
|
-
const _component_Card = vue.resolveComponent("Card");
|
|
38733
37313
|
const _directive_tooltip = vue.resolveDirective("tooltip");
|
|
38734
|
-
return vue.openBlock(), vue.createBlock(
|
|
37314
|
+
return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$t), {
|
|
38735
37315
|
class: vue.normalizeClass(["flex column gap-05 pt-1 bgl_sidebar", { "wideNav": vue.unref(isOpen) }])
|
|
38736
37316
|
}, {
|
|
38737
37317
|
default: vue.withCtx(() => [
|
|
38738
|
-
vue.createElementVNode("div", _hoisted_1, [
|
|
37318
|
+
vue.createElementVNode("div", _hoisted_1$4, [
|
|
38739
37319
|
vue.createVNode(vue.unref(Btn), {
|
|
38740
37320
|
thin: "",
|
|
38741
37321
|
color: "light",
|
|
@@ -38744,7 +37324,6 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
38744
37324
|
onClick: toggleMenu
|
|
38745
37325
|
})
|
|
38746
37326
|
]),
|
|
38747
|
-
vue.createTextVNode(),
|
|
38748
37327
|
!vue.unref(isOpen) || !vue.unref(slots)["brand-open"] ? vue.renderSlot(_ctx.$slots, "brand", { key: 0 }, void 0, true) : vue.createCommentVNode("", true),
|
|
38749
37328
|
vue.unref(isOpen) ? vue.renderSlot(_ctx.$slots, "brand-open", { key: 1 }, void 0, true) : vue.createCommentVNode("", true),
|
|
38750
37329
|
!_ctx.navLinks ? vue.renderSlot(_ctx.$slots, "default", { key: 2 }, void 0, true) : vue.createCommentVNode("", true),
|
|
@@ -38755,11 +37334,11 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
38755
37334
|
class: "nav-button px-075"
|
|
38756
37335
|
}, {
|
|
38757
37336
|
default: vue.withCtx(() => [
|
|
38758
|
-
vue.createVNode(vue.unref(_sfc_main$
|
|
37337
|
+
vue.createVNode(vue.unref(_sfc_main$H), {
|
|
38759
37338
|
icon: nav2.icon,
|
|
38760
37339
|
size: 1.4
|
|
38761
37340
|
}, null, 8, ["icon"]),
|
|
38762
|
-
_ctx.open ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_2, vue.toDisplayString(nav2.label), 1)) : vue.createCommentVNode("", true)
|
|
37341
|
+
_ctx.open ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_2$2, vue.toDisplayString(nav2.label), 1)) : vue.createCommentVNode("", true)
|
|
38763
37342
|
]),
|
|
38764
37343
|
_: 2
|
|
38765
37344
|
}, 1032, ["to"])), [
|
|
@@ -38778,52 +37357,220 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
38778
37357
|
};
|
|
38779
37358
|
}
|
|
38780
37359
|
});
|
|
38781
|
-
const SidebarMenu = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
38782
|
-
|
|
37360
|
+
const SidebarMenu = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-8713ae4a"]]);
|
|
37361
|
+
const state = vue.reactive(/* @__PURE__ */ new Map());
|
|
37362
|
+
function useTabs(group) {
|
|
37363
|
+
if (!state.has(group)) {
|
|
37364
|
+
state.set(group, vue.reactive({ currentTab: null }));
|
|
37365
|
+
}
|
|
37366
|
+
const currentTab = vue.computed({
|
|
37367
|
+
get: () => state.get(group).currentTab,
|
|
37368
|
+
set: (val) => {
|
|
37369
|
+
state.get(group).currentTab = val;
|
|
37370
|
+
}
|
|
37371
|
+
});
|
|
37372
|
+
return { currentTab };
|
|
37373
|
+
}
|
|
37374
|
+
const _hoisted_1$3 = { key: 0 };
|
|
37375
|
+
const _sfc_main$3 = /* @__PURE__ */ vue.defineComponent({
|
|
37376
|
+
__name: "Tabs",
|
|
37377
|
+
props: {
|
|
37378
|
+
tabs: {},
|
|
37379
|
+
modelValue: {}
|
|
37380
|
+
},
|
|
37381
|
+
setup(__props) {
|
|
37382
|
+
const group = Math.random().toString(36).substring(7);
|
|
37383
|
+
const { currentTab } = useTabs(group);
|
|
37384
|
+
return (_ctx, _cache) => {
|
|
37385
|
+
return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
|
|
37386
|
+
vue.createVNode(vue.unref(TabsNav), {
|
|
37387
|
+
tabs: _ctx.tabs,
|
|
37388
|
+
group: vue.unref(group)
|
|
37389
|
+
}, null, 8, ["tabs", "group"]),
|
|
37390
|
+
vue.unref(currentTab) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$3, [
|
|
37391
|
+
vue.renderSlot(_ctx.$slots, vue.unref(currentTab))
|
|
37392
|
+
])) : vue.createCommentVNode("", true)
|
|
37393
|
+
], 64);
|
|
37394
|
+
};
|
|
37395
|
+
}
|
|
37396
|
+
});
|
|
37397
|
+
const _hoisted_1$2 = { class: "tabs grid auto-flow-columns fit-content" };
|
|
37398
|
+
const _hoisted_2$1 = ["onClick"];
|
|
37399
|
+
const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
37400
|
+
__name: "TabsNav",
|
|
37401
|
+
props: {
|
|
37402
|
+
title: {},
|
|
37403
|
+
tabs: {},
|
|
37404
|
+
modelValue: {},
|
|
37405
|
+
sideTabs: { type: Boolean },
|
|
37406
|
+
group: {}
|
|
37407
|
+
},
|
|
37408
|
+
setup(__props) {
|
|
37409
|
+
const props2 = __props;
|
|
37410
|
+
const { currentTab } = useTabs(props2.group);
|
|
37411
|
+
currentTab.value = props2.modelValue || typeof props2.tabs[0] === "string" ? props2.tabs[0] : props2.tabs[0].id;
|
|
37412
|
+
const selectTab = (tab) => {
|
|
37413
|
+
currentTab.value = typeof tab === "string" ? tab : tab.id;
|
|
37414
|
+
};
|
|
37415
|
+
const isActive = (tab) => {
|
|
37416
|
+
if (typeof tab === "string")
|
|
37417
|
+
return currentTab.value === tab;
|
|
37418
|
+
return currentTab.value === tab.id;
|
|
37419
|
+
};
|
|
37420
|
+
const tabLabel = (tab) => {
|
|
37421
|
+
if (typeof tab === "string")
|
|
37422
|
+
return tab;
|
|
37423
|
+
return tab.label;
|
|
37424
|
+
};
|
|
37425
|
+
return (_ctx, _cache) => {
|
|
37426
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$2, [
|
|
37427
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.tabs, (tab, i2) => {
|
|
37428
|
+
return vue.openBlock(), vue.createElementBlock("button", {
|
|
37429
|
+
class: vue.normalizeClass([{ active: isActive(tab) }, "tab"]),
|
|
37430
|
+
onClick: ($event) => selectTab(tab),
|
|
37431
|
+
key: i2
|
|
37432
|
+
}, [
|
|
37433
|
+
typeof tab !== "string" && tab.icon ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$H), {
|
|
37434
|
+
key: 0,
|
|
37435
|
+
icon: tab.icon
|
|
37436
|
+
}, null, 8, ["icon"])) : vue.createCommentVNode("", true),
|
|
37437
|
+
vue.createTextVNode(" " + vue.toDisplayString(tabLabel(tab)), 1)
|
|
37438
|
+
], 10, _hoisted_2$1);
|
|
37439
|
+
}), 128))
|
|
37440
|
+
]);
|
|
37441
|
+
};
|
|
37442
|
+
}
|
|
37443
|
+
});
|
|
37444
|
+
const TabsNav = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-f737d297"]]);
|
|
37445
|
+
const _hoisted_1$1 = { key: 0 };
|
|
37446
|
+
const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
37447
|
+
__name: "TabsBody",
|
|
37448
|
+
props: {
|
|
37449
|
+
group: {}
|
|
37450
|
+
},
|
|
37451
|
+
setup(__props) {
|
|
37452
|
+
const props2 = __props;
|
|
37453
|
+
const { currentTab } = useTabs(props2.group);
|
|
37454
|
+
return (_ctx, _cache) => {
|
|
37455
|
+
return vue.unref(currentTab) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$1, [
|
|
37456
|
+
vue.renderSlot(_ctx.$slots, vue.unref(currentTab))
|
|
37457
|
+
])) : vue.createCommentVNode("", true);
|
|
37458
|
+
};
|
|
37459
|
+
}
|
|
37460
|
+
});
|
|
37461
|
+
const _hoisted_1 = { class: "bgl_card tabs-top" };
|
|
37462
|
+
const _hoisted_2 = { class: "tabs grid auto-flow-columns fit-content" };
|
|
37463
|
+
const _hoisted_3 = ["onClick"];
|
|
37464
|
+
const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
37465
|
+
__name: "TabbedLayout",
|
|
37466
|
+
props: {
|
|
37467
|
+
title: {},
|
|
37468
|
+
tabs: {},
|
|
37469
|
+
modelValue: {},
|
|
37470
|
+
router: {},
|
|
37471
|
+
sideTabs: { type: Boolean }
|
|
37472
|
+
},
|
|
37473
|
+
emits: ["update:modelValue"],
|
|
37474
|
+
setup(__props, { emit: __emit }) {
|
|
37475
|
+
const emit2 = __emit;
|
|
37476
|
+
let activeTab = vue.ref();
|
|
37477
|
+
const props2 = __props;
|
|
37478
|
+
function changeTab(tab) {
|
|
37479
|
+
var _a2;
|
|
37480
|
+
activeTab.value = tab;
|
|
37481
|
+
emit2("update:modelValue", activeTab.value);
|
|
37482
|
+
if (!props2.router)
|
|
37483
|
+
return;
|
|
37484
|
+
void ((_a2 = props2.router) == null ? void 0 : _a2.push({
|
|
37485
|
+
path: props2.router.currentRoute.value.path,
|
|
37486
|
+
query: { ...props2.router.currentRoute.value.query, t: tab },
|
|
37487
|
+
hash: props2.router.currentRoute.value.hash
|
|
37488
|
+
}));
|
|
37489
|
+
}
|
|
37490
|
+
vue.onMounted(() => {
|
|
37491
|
+
var _a2;
|
|
37492
|
+
const firstTab = props2.modelValue || ((_a2 = props2.router) == null ? void 0 : _a2.currentRoute.value.query.t) || props2.tabs[0];
|
|
37493
|
+
activeTab.value = firstTab;
|
|
37494
|
+
});
|
|
37495
|
+
return (_ctx, _cache) => {
|
|
37496
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
37497
|
+
class: vue.normalizeClass(["h-100 grid list-view gap-1", { "side-tabs": _ctx.sideTabs }])
|
|
37498
|
+
}, [
|
|
37499
|
+
vue.createElementVNode("div", _hoisted_1, [
|
|
37500
|
+
vue.renderSlot(_ctx.$slots, "top-section", {}, void 0, true),
|
|
37501
|
+
vue.createElementVNode("div", _hoisted_2, [
|
|
37502
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.tabs, (tab) => {
|
|
37503
|
+
var _a2;
|
|
37504
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
37505
|
+
class: vue.normalizeClass([{
|
|
37506
|
+
active: tab === vue.unref(activeTab) || tab === ((_a2 = _ctx.router) == null ? void 0 : _a2.currentRoute.value.path.split("/").slice(-1)[0])
|
|
37507
|
+
}, "tab"]),
|
|
37508
|
+
key: tab,
|
|
37509
|
+
onClick: ($event) => changeTab(tab)
|
|
37510
|
+
}, vue.toDisplayString(tab), 11, _hoisted_3);
|
|
37511
|
+
}), 128))
|
|
37512
|
+
])
|
|
37513
|
+
]),
|
|
37514
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.tabs.filter((item) => item === vue.unref(activeTab)), (tab) => {
|
|
37515
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
37516
|
+
class: "list-content",
|
|
37517
|
+
key: tab
|
|
37518
|
+
}, [
|
|
37519
|
+
vue.renderSlot(_ctx.$slots, tab, { key: tab }, void 0, true)
|
|
37520
|
+
]);
|
|
37521
|
+
}), 128))
|
|
37522
|
+
], 2);
|
|
37523
|
+
};
|
|
37524
|
+
}
|
|
37525
|
+
});
|
|
37526
|
+
const TabbedLayout = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-fd61196d"]]);
|
|
37527
|
+
exports.Accordion = _sfc_main$q;
|
|
38783
37528
|
exports.AccordionItem = AccordionItem;
|
|
38784
37529
|
exports.Alert = Alert;
|
|
38785
37530
|
exports.Avatar = Avatar;
|
|
38786
37531
|
exports.Badge = Badge;
|
|
38787
|
-
exports.BagelForm = _sfc_main$
|
|
37532
|
+
exports.BagelForm = _sfc_main$l;
|
|
38788
37533
|
exports.BagelVue = BagelVue;
|
|
38789
|
-
exports.BglField = _sfc_main$
|
|
38790
|
-
exports.BglForm = _sfc_main$
|
|
37534
|
+
exports.BglField = _sfc_main$k;
|
|
37535
|
+
exports.BglForm = _sfc_main$l;
|
|
38791
37536
|
exports.BglVideo = BglVideo;
|
|
38792
37537
|
exports.Btn = Btn;
|
|
38793
|
-
exports.Card = _sfc_main$
|
|
37538
|
+
exports.Card = _sfc_main$t;
|
|
38794
37539
|
exports.Carousel = Carousel;
|
|
38795
37540
|
exports.CheckInput = CheckInput;
|
|
38796
37541
|
exports.Checkbox = Checkbox;
|
|
38797
|
-
exports.ColorPicker = _sfc_main$
|
|
38798
|
-
exports.ComboBox = ComboBox;
|
|
37542
|
+
exports.ColorPicker = _sfc_main$b;
|
|
38799
37543
|
exports.Comments = Comments;
|
|
38800
37544
|
exports.DataPreview = DataPreview;
|
|
38801
|
-
exports.DateInput = _sfc_main$
|
|
38802
|
-
exports.DatePicker = _sfc_main$
|
|
37545
|
+
exports.DateInput = _sfc_main$i;
|
|
37546
|
+
exports.DatePicker = _sfc_main$a;
|
|
38803
37547
|
exports.FileUpload = FileUpload;
|
|
38804
|
-
exports.Icon = _sfc_main$
|
|
37548
|
+
exports.Icon = _sfc_main$H;
|
|
38805
37549
|
exports.JSONInput = JSONInput;
|
|
38806
|
-
exports.Layout =
|
|
38807
|
-
exports.Lineart = _sfc_main$
|
|
38808
|
-
exports.ListItem = _sfc_main$
|
|
38809
|
-
exports.ListView = _sfc_main$
|
|
38810
|
-
exports.MaterialIcon = _sfc_main$
|
|
38811
|
-
exports.Modal = _sfc_main$
|
|
37550
|
+
exports.Layout = Layout;
|
|
37551
|
+
exports.Lineart = _sfc_main$6;
|
|
37552
|
+
exports.ListItem = _sfc_main$A;
|
|
37553
|
+
exports.ListView = _sfc_main$B;
|
|
37554
|
+
exports.MaterialIcon = _sfc_main$H;
|
|
37555
|
+
exports.Modal = _sfc_main$E;
|
|
38812
37556
|
exports.ModalForm = ModalForm;
|
|
38813
37557
|
exports.ModalPlugin = ModalPlugin;
|
|
38814
37558
|
exports.NavBar = NavBar;
|
|
38815
|
-
exports.PageTitle = _sfc_main$
|
|
38816
|
-
exports.RTXEditor = _sfc_main$
|
|
37559
|
+
exports.PageTitle = _sfc_main$y;
|
|
37560
|
+
exports.RTXEditor = _sfc_main$I;
|
|
38817
37561
|
exports.RadioPillsInput = RadioPillsInput;
|
|
38818
37562
|
exports.RichTextEditor = RichTextEditor;
|
|
38819
37563
|
exports.RouterWrapper = RouterWrapper;
|
|
38820
|
-
exports.SelectInput =
|
|
37564
|
+
exports.SelectInput = SelectInput;
|
|
38821
37565
|
exports.SidebarMenu = SidebarMenu;
|
|
38822
37566
|
exports.TabbedLayout = TabbedLayout;
|
|
38823
37567
|
exports.TableField = TableField;
|
|
38824
37568
|
exports.TableSchema = TableSchema;
|
|
37569
|
+
exports.Tabs = _sfc_main$3;
|
|
37570
|
+
exports.TabsBody = _sfc_main$1;
|
|
37571
|
+
exports.TabsNav = TabsNav;
|
|
38825
37572
|
exports.TextInput = TextInput;
|
|
38826
|
-
exports.Title = _sfc_main$
|
|
37573
|
+
exports.Title = _sfc_main$r;
|
|
38827
37574
|
exports.ToggleInput = ToggleInput;
|
|
38828
37575
|
exports.TopBar = TopBar;
|
|
38829
37576
|
exports.bagelFormUtils = BagelFormUtils;
|