@bagelink/vue 0.0.1023 → 0.0.1025

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.
Files changed (166) hide show
  1. package/dist/components/Accordion.vue.d.ts +3 -2
  2. package/dist/components/Accordion.vue.d.ts.map +1 -1
  3. package/dist/components/AccordionItem.vue.d.ts +14 -20
  4. package/dist/components/AccordionItem.vue.d.ts.map +1 -1
  5. package/dist/components/AddressSearch.vue.d.ts +1 -1
  6. package/dist/components/AddressSearch.vue.d.ts.map +1 -1
  7. package/dist/components/Alert.vue.d.ts.map +1 -1
  8. package/dist/components/Avatar.vue.d.ts +4 -8
  9. package/dist/components/Avatar.vue.d.ts.map +1 -1
  10. package/dist/components/Badge.vue.d.ts +1 -1
  11. package/dist/components/Badge.vue.d.ts.map +1 -1
  12. package/dist/components/BglVideo.vue.d.ts +1 -1
  13. package/dist/components/BglVideo.vue.d.ts.map +1 -1
  14. package/dist/components/Btn.vue.d.ts +13 -31
  15. package/dist/components/Btn.vue.d.ts.map +1 -1
  16. package/dist/components/Card.vue.d.ts +13 -20
  17. package/dist/components/Card.vue.d.ts.map +1 -1
  18. package/dist/components/Carousel.vue.d.ts +12 -2
  19. package/dist/components/Carousel.vue.d.ts.map +1 -1
  20. package/dist/components/DataPreview.vue.d.ts +6 -5
  21. package/dist/components/DataPreview.vue.d.ts.map +1 -1
  22. package/dist/components/DropDown.vue.d.ts +7 -3
  23. package/dist/components/DropDown.vue.d.ts.map +1 -1
  24. package/dist/components/Flag.vue.d.ts +1 -1
  25. package/dist/components/Flag.vue.d.ts.map +1 -1
  26. package/dist/components/IframeVue.vue.d.ts +7 -22
  27. package/dist/components/IframeVue.vue.d.ts.map +1 -1
  28. package/dist/components/Image.vue.d.ts +4 -7
  29. package/dist/components/Image.vue.d.ts.map +1 -1
  30. package/dist/components/ListItem.vue.d.ts +13 -20
  31. package/dist/components/ListItem.vue.d.ts.map +1 -1
  32. package/dist/components/ListView.vue.d.ts +3 -2
  33. package/dist/components/ListView.vue.d.ts.map +1 -1
  34. package/dist/components/Loading.vue.d.ts +3 -8
  35. package/dist/components/Loading.vue.d.ts.map +1 -1
  36. package/dist/components/MapEmbed.vue.d.ts +5 -11
  37. package/dist/components/MapEmbed.vue.d.ts.map +1 -1
  38. package/dist/components/MaterialIcon.vue.d.ts +3 -8
  39. package/dist/components/MaterialIcon.vue.d.ts.map +1 -1
  40. package/dist/components/Modal.vue.d.ts +13 -18
  41. package/dist/components/Modal.vue.d.ts.map +1 -1
  42. package/dist/components/ModalConfirm.vue.d.ts +5 -12
  43. package/dist/components/ModalConfirm.vue.d.ts.map +1 -1
  44. package/dist/components/ModalForm.vue.d.ts +9 -3
  45. package/dist/components/ModalForm.vue.d.ts.map +1 -1
  46. package/dist/components/NavBar.vue.d.ts +11 -15
  47. package/dist/components/NavBar.vue.d.ts.map +1 -1
  48. package/dist/components/PageTitle.vue.d.ts +3 -2
  49. package/dist/components/PageTitle.vue.d.ts.map +1 -1
  50. package/dist/components/Pill.vue.d.ts +12 -24
  51. package/dist/components/Pill.vue.d.ts.map +1 -1
  52. package/dist/components/RouterWrapper.vue.d.ts.map +1 -1
  53. package/dist/components/TableSchema.vue.d.ts +4 -8
  54. package/dist/components/TableSchema.vue.d.ts.map +1 -1
  55. package/dist/components/Title.vue.d.ts +2 -1
  56. package/dist/components/Title.vue.d.ts.map +1 -1
  57. package/dist/components/TopBar.vue.d.ts +3 -2
  58. package/dist/components/TopBar.vue.d.ts.map +1 -1
  59. package/dist/components/Zoomer.vue.d.ts +3 -2
  60. package/dist/components/Zoomer.vue.d.ts.map +1 -1
  61. package/dist/components/dashboard/Lineart.vue.d.ts +3 -5
  62. package/dist/components/dashboard/Lineart.vue.d.ts.map +1 -1
  63. package/dist/components/form/BglField.vue.d.ts +1 -1
  64. package/dist/components/form/BglField.vue.d.ts.map +1 -1
  65. package/dist/components/form/BglForm.vue.d.ts +15 -23
  66. package/dist/components/form/BglForm.vue.d.ts.map +1 -1
  67. package/dist/components/form/BglMultiStepForm.vue.d.ts +3 -4
  68. package/dist/components/form/BglMultiStepForm.vue.d.ts.map +1 -1
  69. package/dist/components/form/FieldArray.vue.d.ts +1 -1
  70. package/dist/components/form/FieldArray.vue.d.ts.map +1 -1
  71. package/dist/components/form/inputs/CheckInput.vue.d.ts +7 -6
  72. package/dist/components/form/inputs/CheckInput.vue.d.ts.map +1 -1
  73. package/dist/components/form/inputs/Checkbox.vue.d.ts +5 -4
  74. package/dist/components/form/inputs/Checkbox.vue.d.ts.map +1 -1
  75. package/dist/components/form/inputs/CodeEditor/Index.vue.d.ts +4 -9
  76. package/dist/components/form/inputs/CodeEditor/Index.vue.d.ts.map +1 -1
  77. package/dist/components/form/inputs/ColorPicker.vue.d.ts +4 -14
  78. package/dist/components/form/inputs/ColorPicker.vue.d.ts.map +1 -1
  79. package/dist/components/form/inputs/DateInput.vue.d.ts +5 -17
  80. package/dist/components/form/inputs/DateInput.vue.d.ts.map +1 -1
  81. package/dist/components/form/inputs/DatePicker.vue.d.ts +5 -14
  82. package/dist/components/form/inputs/DatePicker.vue.d.ts.map +1 -1
  83. package/dist/components/form/inputs/FileUpload.vue.d.ts +5 -4
  84. package/dist/components/form/inputs/FileUpload.vue.d.ts.map +1 -1
  85. package/dist/components/form/inputs/JSONInput.vue.d.ts +5 -11
  86. package/dist/components/form/inputs/JSONInput.vue.d.ts.map +1 -1
  87. package/dist/components/form/inputs/NumberInput.vue.d.ts +26 -0
  88. package/dist/components/form/inputs/NumberInput.vue.d.ts.map +1 -0
  89. package/dist/components/form/inputs/OTP.vue.d.ts +5 -8
  90. package/dist/components/form/inputs/OTP.vue.d.ts.map +1 -1
  91. package/dist/components/form/inputs/PasswordInput.vue.d.ts +7 -7
  92. package/dist/components/form/inputs/PasswordInput.vue.d.ts.map +1 -1
  93. package/dist/components/form/inputs/RadioGroup.vue.d.ts +3 -4
  94. package/dist/components/form/inputs/RadioGroup.vue.d.ts.map +1 -1
  95. package/dist/components/form/inputs/RadioPillsInput.vue.d.ts +5 -9
  96. package/dist/components/form/inputs/RadioPillsInput.vue.d.ts.map +1 -1
  97. package/dist/components/form/inputs/RangeInput.vue.d.ts +1 -1
  98. package/dist/components/form/inputs/RangeInput.vue.d.ts.map +1 -1
  99. package/dist/components/form/inputs/RichText/components/Toolbar.vue.d.ts +5 -7
  100. package/dist/components/form/inputs/RichText/components/Toolbar.vue.d.ts.map +1 -1
  101. package/dist/components/form/inputs/RichText/components/gridBox.vue.d.ts +1 -1
  102. package/dist/components/form/inputs/RichText/components/gridBox.vue.d.ts.map +1 -1
  103. package/dist/components/form/inputs/RichText/index.vue.d.ts +5 -7
  104. package/dist/components/form/inputs/RichText/index.vue.d.ts.map +1 -1
  105. package/dist/components/form/inputs/SelectInput.vue.d.ts +11 -3
  106. package/dist/components/form/inputs/SelectInput.vue.d.ts.map +1 -1
  107. package/dist/components/form/inputs/SignaturePad.vue.d.ts +5 -5
  108. package/dist/components/form/inputs/SignaturePad.vue.d.ts.map +1 -1
  109. package/dist/components/form/inputs/TableField.vue.d.ts +5 -12
  110. package/dist/components/form/inputs/TableField.vue.d.ts.map +1 -1
  111. package/dist/components/form/inputs/TelInput.vue.d.ts +3 -3
  112. package/dist/components/form/inputs/TelInput.vue.d.ts.map +1 -1
  113. package/dist/components/form/inputs/TextInput.vue.d.ts +5 -31
  114. package/dist/components/form/inputs/TextInput.vue.d.ts.map +1 -1
  115. package/dist/components/form/inputs/ToggleInput.vue.d.ts +7 -6
  116. package/dist/components/form/inputs/ToggleInput.vue.d.ts.map +1 -1
  117. package/dist/components/form/inputs/index.d.ts +1 -0
  118. package/dist/components/form/inputs/index.d.ts.map +1 -1
  119. package/dist/components/layout/BottomMenu.vue.d.ts +6 -6
  120. package/dist/components/layout/BottomMenu.vue.d.ts.map +1 -1
  121. package/dist/components/layout/Layout.vue.d.ts +3 -2
  122. package/dist/components/layout/Layout.vue.d.ts.map +1 -1
  123. package/dist/components/layout/SidebarMenu.vue.d.ts +10 -12
  124. package/dist/components/layout/SidebarMenu.vue.d.ts.map +1 -1
  125. package/dist/components/layout/Skeleton.vue.d.ts +11 -16
  126. package/dist/components/layout/Skeleton.vue.d.ts.map +1 -1
  127. package/dist/components/layout/TabbedLayout.vue.d.ts +12 -16
  128. package/dist/components/layout/TabbedLayout.vue.d.ts.map +1 -1
  129. package/dist/components/layout/Tabs.vue.d.ts +9 -11
  130. package/dist/components/layout/Tabs.vue.d.ts.map +1 -1
  131. package/dist/components/layout/TabsBody.vue.d.ts +6 -6
  132. package/dist/components/layout/TabsBody.vue.d.ts.map +1 -1
  133. package/dist/components/layout/TabsNav.vue.d.ts +14 -20
  134. package/dist/components/layout/TabsNav.vue.d.ts.map +1 -1
  135. package/dist/components/lightbox/Lightbox.vue.d.ts.map +1 -1
  136. package/dist/directives/index.d.ts +3 -0
  137. package/dist/directives/index.d.ts.map +1 -0
  138. package/dist/directives/pattern.d.ts +8 -0
  139. package/dist/directives/pattern.d.ts.map +1 -0
  140. package/dist/directives/ripple.d.ts +4 -0
  141. package/dist/directives/ripple.d.ts.map +1 -0
  142. package/dist/index.cjs +595 -270
  143. package/dist/index.mjs +595 -270
  144. package/dist/plugins/bagel.d.ts.map +1 -1
  145. package/dist/style.css +4704 -2659
  146. package/dist/utils/BagelFormUtils.d.ts +21 -0
  147. package/dist/utils/BagelFormUtils.d.ts.map +1 -1
  148. package/package.json +1 -1
  149. package/src/components/Card.vue +0 -1
  150. package/src/components/Carousel.vue +25 -3
  151. package/src/components/Dropdown.vue +1 -1
  152. package/src/components/FieldSet.vue +15 -0
  153. package/src/components/Image.vue +11 -1
  154. package/src/components/form/inputs/NumberInput.vue +163 -0
  155. package/src/components/form/inputs/RangeInput.vue +7 -3
  156. package/src/components/form/inputs/index.ts +1 -0
  157. package/src/components/layout/TabsNav.vue +1 -1
  158. package/src/directives/index.ts +2 -0
  159. package/src/directives/pattern.ts +156 -0
  160. package/src/plugins/bagel.ts +2 -1
  161. package/src/styles/appearance.css +17 -0
  162. package/src/styles/layout.css +2892 -1954
  163. package/src/styles/mobilLayout.css +3004 -1920
  164. package/src/utils/BagelFormUtils.ts +16 -0
  165. package/tsconfig.json +1 -1
  166. /package/src/{plugins → directives}/ripple.ts +0 -0
package/dist/index.cjs CHANGED
@@ -7,6 +7,9 @@ const vue = require("vue");
7
7
  const vueRouter = require("vue-router");
8
8
  const bagelFormUtils = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
9
9
  __proto__: null,
10
+ get arrField() {
11
+ return arrField;
12
+ },
10
13
  get bglForm() {
11
14
  return bglForm;
12
15
  },
@@ -41,7 +44,7 @@ const bagelFormUtils = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defi
41
44
  return txtField;
42
45
  }
43
46
  }, Symbol.toStringTag, { value: "Module" }));
44
- const _sfc_main$12 = /* @__PURE__ */ vue.defineComponent({
47
+ const _sfc_main$13 = /* @__PURE__ */ vue.defineComponent({
45
48
  __name: "Accordion",
46
49
  setup(__props) {
47
50
  const state2 = vue.reactive({
@@ -55,10 +58,10 @@ const _sfc_main$12 = /* @__PURE__ */ vue.defineComponent({
55
58
  };
56
59
  }
57
60
  });
58
- const _hoisted_1$P = ["aria-expanded", "aria-controls"];
59
- const _hoisted_2$w = { class: "accordion-label" };
60
- const _hoisted_3$p = ["id", "aria-hidden"];
61
- const _sfc_main$11 = /* @__PURE__ */ vue.defineComponent({
61
+ const _hoisted_1$Q = ["aria-expanded", "aria-controls"];
62
+ const _hoisted_2$y = { class: "accordion-label" };
63
+ const _hoisted_3$r = ["id", "aria-hidden"];
64
+ const _sfc_main$12 = /* @__PURE__ */ vue.defineComponent({
62
65
  __name: "AccordionItem",
63
66
  props: {
64
67
  label: {},
@@ -124,7 +127,7 @@ const _sfc_main$11 = /* @__PURE__ */ vue.defineComponent({
124
127
  vue.createVNode(vue.unref(_sfc_main$c), { icon: computedIcon.value }, null, 8, ["icon"])
125
128
  ], 2)) : vue.createCommentVNode("", true),
126
129
  vue.renderSlot(_ctx.$slots, "head", {}, () => [
127
- vue.createElementVNode("span", _hoisted_2$w, vue.toDisplayString(_ctx.label), 1)
130
+ vue.createElementVNode("span", _hoisted_2$y, vue.toDisplayString(_ctx.label), 1)
128
131
  ], true),
129
132
  iconPosition.value === "end" ? (vue.openBlock(), vue.createElementBlock("span", {
130
133
  key: 1,
@@ -132,7 +135,7 @@ const _sfc_main$11 = /* @__PURE__ */ vue.defineComponent({
132
135
  }, [
133
136
  vue.createVNode(vue.unref(_sfc_main$c), { icon: computedIcon.value }, null, 8, ["icon"])
134
137
  ], 2)) : vue.createCommentVNode("", true)
135
- ], 8, _hoisted_1$P),
138
+ ], 8, _hoisted_1$Q),
136
139
  vue.createVNode(vue.Transition, { name: "expand" }, {
137
140
  default: vue.withCtx(() => [
138
141
  vue.unref(isOpen) ? (vue.openBlock(), vue.createElementBlock("div", {
@@ -142,7 +145,7 @@ const _sfc_main$11 = /* @__PURE__ */ vue.defineComponent({
142
145
  "aria-hidden": vue.unref(isOpen) ? "false" : "true"
143
146
  }, [
144
147
  vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
145
- ], 8, _hoisted_3$p)) : vue.createCommentVNode("", true)
148
+ ], 8, _hoisted_3$r)) : vue.createCommentVNode("", true)
146
149
  ]),
147
150
  _: 3
148
151
  })
@@ -157,9 +160,9 @@ const _export_sfc = (sfc, props2) => {
157
160
  }
158
161
  return target;
159
162
  };
160
- const AccordionItem = /* @__PURE__ */ _export_sfc(_sfc_main$11, [["__scopeId", "data-v-1e73ca3e"]]);
161
- const _hoisted_1$O = { class: "relative" };
162
- const _sfc_main$10 = /* @__PURE__ */ vue.defineComponent({
163
+ const AccordionItem = /* @__PURE__ */ _export_sfc(_sfc_main$12, [["__scopeId", "data-v-1e73ca3e"]]);
164
+ const _hoisted_1$P = { class: "relative" };
165
+ const _sfc_main$11 = /* @__PURE__ */ vue.defineComponent({
163
166
  __name: "AddressSearch",
164
167
  emits: ["addressSelected"],
165
168
  setup(__props, { emit: __emit }) {
@@ -181,8 +184,8 @@ const _sfc_main$10 = /* @__PURE__ */ vue.defineComponent({
181
184
  (_a2 = suggestion.value) == null ? void 0 : _a2.show();
182
185
  }
183
186
  return (_ctx, _cache) => {
184
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$O, [
185
- vue.createVNode(vue.unref(_sfc_main$S), {
187
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$P, [
188
+ vue.createVNode(vue.unref(_sfc_main$T), {
186
189
  ref_key: "suggestion",
187
190
  ref: suggestion,
188
191
  noAutoFocus: true,
@@ -217,11 +220,11 @@ const _sfc_main$10 = /* @__PURE__ */ vue.defineComponent({
217
220
  };
218
221
  }
219
222
  });
220
- const _hoisted_1$N = {
223
+ const _hoisted_1$O = {
221
224
  key: 1,
222
225
  class: "bgl_btn-flex"
223
226
  };
224
- const _sfc_main$$ = /* @__PURE__ */ vue.defineComponent({
227
+ const _sfc_main$10 = /* @__PURE__ */ vue.defineComponent({
225
228
  __name: "Btn",
226
229
  props: {
227
230
  disabled: { type: Boolean, default: false },
@@ -286,7 +289,7 @@ const _sfc_main$$ = /* @__PURE__ */ vue.defineComponent({
286
289
  _ctx.loading ? (vue.openBlock(), vue.createBlock(vue.unref(Loading), {
287
290
  key: 0,
288
291
  size: "15"
289
- })) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$N, [
292
+ })) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$O, [
290
293
  _ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$c), {
291
294
  key: 0,
292
295
  icon: _ctx.icon
@@ -308,10 +311,10 @@ const _sfc_main$$ = /* @__PURE__ */ vue.defineComponent({
308
311
  };
309
312
  }
310
313
  });
311
- const Btn = /* @__PURE__ */ _export_sfc(_sfc_main$$, [["__scopeId", "data-v-c23a3626"]]);
312
- const _hoisted_1$M = ["dismissable"];
313
- const _hoisted_2$v = { class: "m-0" };
314
- const _sfc_main$_ = /* @__PURE__ */ vue.defineComponent({
314
+ const Btn = /* @__PURE__ */ _export_sfc(_sfc_main$10, [["__scopeId", "data-v-c23a3626"]]);
315
+ const _hoisted_1$N = ["dismissable"];
316
+ const _hoisted_2$x = { class: "m-0" };
317
+ const _sfc_main$$ = /* @__PURE__ */ vue.defineComponent({
315
318
  __name: "Alert",
316
319
  props: {
317
320
  message: {},
@@ -339,7 +342,7 @@ const _sfc_main$_ = /* @__PURE__ */ vue.defineComponent({
339
342
  size: 2,
340
343
  color: color2[_ctx.type]
341
344
  }, null, 8, ["icon", "color"])) : vue.createCommentVNode("", true),
342
- vue.createElementVNode("p", _hoisted_2$v, vue.toDisplayString(_ctx.message), 1),
345
+ vue.createElementVNode("p", _hoisted_2$x, vue.toDisplayString(_ctx.message), 1),
343
346
  vue.createVNode(Btn, {
344
347
  flat: "",
345
348
  thin: "",
@@ -347,13 +350,13 @@ const _sfc_main$_ = /* @__PURE__ */ vue.defineComponent({
347
350
  icon: "close",
348
351
  onClick: _cache[0] || (_cache[0] = ($event) => isDismissed.value = true)
349
352
  })
350
- ], 10, _hoisted_1$M)) : vue.createCommentVNode("", true);
353
+ ], 10, _hoisted_1$N)) : vue.createCommentVNode("", true);
351
354
  };
352
355
  }
353
356
  });
354
- const Alert = /* @__PURE__ */ _export_sfc(_sfc_main$_, [["__scopeId", "data-v-57141c32"]]);
355
- const _hoisted_1$L = ["src", "alt"];
356
- const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
357
+ const Alert = /* @__PURE__ */ _export_sfc(_sfc_main$$, [["__scopeId", "data-v-57141c32"]]);
358
+ const _hoisted_1$M = ["src", "alt"];
359
+ const _sfc_main$_ = /* @__PURE__ */ vue.defineComponent({
357
360
  __name: "Avatar",
358
361
  props: {
359
362
  fallback: {},
@@ -371,7 +374,7 @@ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
371
374
  key: 0,
372
375
  src: _ctx.src,
373
376
  alt: _ctx.name
374
- }, null, 8, _hoisted_1$L)) : (vue.openBlock(), vue.createElementBlock("p", {
377
+ }, null, 8, _hoisted_1$M)) : (vue.openBlock(), vue.createElementBlock("p", {
375
378
  key: 1,
376
379
  style: vue.normalizeStyle({ "line-height": `${_ctx.size}px`, "font-size": `calc(1.5rem * ${_ctx.size} / 50)` })
377
380
  }, vue.toDisplayString((_ctx.fallback || vue.unref(initials)(_ctx.name || "")).toUpperCase()), 5))
@@ -379,8 +382,8 @@ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
379
382
  };
380
383
  }
381
384
  });
382
- const Avatar = /* @__PURE__ */ _export_sfc(_sfc_main$Z, [["__scopeId", "data-v-46ad8c25"]]);
383
- const _sfc_main$Y = /* @__PURE__ */ vue.defineComponent({
385
+ const Avatar = /* @__PURE__ */ _export_sfc(_sfc_main$_, [["__scopeId", "data-v-46ad8c25"]]);
386
+ const _sfc_main$Z = /* @__PURE__ */ vue.defineComponent({
384
387
  __name: "Badge",
385
388
  props: {
386
389
  color: {},
@@ -409,11 +412,11 @@ const _sfc_main$Y = /* @__PURE__ */ vue.defineComponent({
409
412
  };
410
413
  }
411
414
  });
412
- const Badge = /* @__PURE__ */ _export_sfc(_sfc_main$Y, [["__scopeId", "data-v-2f3caf93"]]);
413
- const _hoisted_1$K = ["src"];
414
- const _hoisted_2$u = ["autoplay", "muted", "loop", "controls", "playsinline"];
415
- const _hoisted_3$o = ["src", "type"];
416
- const _sfc_main$X = /* @__PURE__ */ vue.defineComponent({
415
+ const Badge = /* @__PURE__ */ _export_sfc(_sfc_main$Z, [["__scopeId", "data-v-2f3caf93"]]);
416
+ const _hoisted_1$L = ["src"];
417
+ const _hoisted_2$w = ["autoplay", "muted", "loop", "controls", "playsinline"];
418
+ const _hoisted_3$q = ["src", "type"];
419
+ const _sfc_main$Y = /* @__PURE__ */ vue.defineComponent({
417
420
  __name: "BglVideo",
418
421
  props: {
419
422
  src: {},
@@ -490,7 +493,7 @@ const _sfc_main$X = /* @__PURE__ */ vue.defineComponent({
490
493
  allowfullscreen: "",
491
494
  title: "Video",
492
495
  allow: "autoplay"
493
- }, null, 12, _hoisted_1$K)) : _ctx.src ? (vue.openBlock(), vue.createElementBlock("video", {
496
+ }, null, 12, _hoisted_1$L)) : _ctx.src ? (vue.openBlock(), vue.createElementBlock("video", {
494
497
  key: 1,
495
498
  ref_key: "video",
496
499
  ref: video,
@@ -504,18 +507,18 @@ const _sfc_main$X = /* @__PURE__ */ vue.defineComponent({
504
507
  vue.createElementVNode("source", {
505
508
  src: _ctx.src,
506
509
  type: `video/${videoFormat.value}`
507
- }, null, 8, _hoisted_3$o)
508
- ], 12, _hoisted_2$u)) : vue.createCommentVNode("", true)
510
+ }, null, 8, _hoisted_3$q)
511
+ ], 12, _hoisted_2$w)) : vue.createCommentVNode("", true)
509
512
  ], 2);
510
513
  };
511
514
  }
512
515
  });
513
- const BglVideo = /* @__PURE__ */ _export_sfc(_sfc_main$X, [["__scopeId", "data-v-006552f6"]]);
514
- const _hoisted_1$J = {
516
+ const BglVideo = /* @__PURE__ */ _export_sfc(_sfc_main$Y, [["__scopeId", "data-v-006552f6"]]);
517
+ const _hoisted_1$K = {
515
518
  key: 0,
516
519
  class: "card_label"
517
520
  };
518
- const _sfc_main$W = /* @__PURE__ */ vue.defineComponent({
521
+ const _sfc_main$X = /* @__PURE__ */ vue.defineComponent({
519
522
  __name: "Card",
520
523
  props: {
521
524
  label: {},
@@ -544,7 +547,7 @@ const _sfc_main$W = /* @__PURE__ */ vue.defineComponent({
544
547
  }])
545
548
  }, {
546
549
  default: vue.withCtx(() => [
547
- _ctx.label ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$J, vue.toDisplayString(_ctx.label), 1)) : vue.createCommentVNode("", true),
550
+ _ctx.label ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_1$K, vue.toDisplayString(_ctx.label), 1)) : vue.createCommentVNode("", true),
548
551
  vue.renderSlot(_ctx.$slots, "default")
549
552
  ]),
550
553
  _: 3
@@ -554,13 +557,18 @@ const _sfc_main$W = /* @__PURE__ */ vue.defineComponent({
554
557
  };
555
558
  }
556
559
  });
557
- const _hoisted_1$I = ["dir"];
558
- const _hoisted_2$t = {
560
+ const _hoisted_1$J = ["dir"];
561
+ const _hoisted_2$v = {
559
562
  key: 0,
560
563
  class: "blocker"
561
564
  };
562
- const _hoisted_3$n = { class: "Handlers" };
563
- const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
565
+ const _hoisted_3$p = {
566
+ key: 0,
567
+ class: "dots flex-center gap-05 mt-1"
568
+ };
569
+ const _hoisted_4$h = ["onClick"];
570
+ const _hoisted_5$f = { class: "Handlers" };
571
+ const _sfc_main$W = /* @__PURE__ */ vue.defineComponent({
564
572
  __name: "Carousel",
565
573
  props: {
566
574
  autoHeight: { type: Boolean, default: false },
@@ -570,7 +578,8 @@ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
570
578
  index: { type: Number, default: 0 },
571
579
  rtl: { type: Boolean, default: false },
572
580
  autoplay: { type: Boolean, default: false },
573
- autoPlaySpeed: { type: Number, default: 4e3 }
581
+ autoPlaySpeed: { type: Number, default: 4e3 },
582
+ dots: { type: Boolean, default: false }
574
583
  },
575
584
  emits: ["update:index"],
576
585
  setup(__props, { emit: __emit }) {
@@ -584,11 +593,16 @@ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
584
593
  let startX = vue.ref(0);
585
594
  let scrollStart = vue.ref(0);
586
595
  let yHeight = vue.ref("auto");
596
+ let slideCount = vue.ref(0);
587
597
  let timeout;
588
598
  let autoPlayInterval;
589
599
  function preventDefaultClick(e) {
590
600
  e.preventDefault();
591
601
  }
602
+ function countSlides() {
603
+ if (!bglSlider.value) return;
604
+ slideCount.value = bglSlider.value.children.length;
605
+ }
592
606
  function disableDrag() {
593
607
  var _a2, _b;
594
608
  (_a2 = bglSlider.value) == null ? void 0 : _a2.querySelectorAll("img").forEach((img) => {
@@ -633,7 +647,8 @@ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
633
647
  requestAnimationFrame(animate);
634
648
  }
635
649
  function goToSlide(index2) {
636
- if (!bglSlider.value || index2 < 0 || index2 >= bglSlider.value.children.length) return;
650
+ countSlides();
651
+ if (!bglSlider.value || index2 < 0 || index2 >= slideCount.value) return;
637
652
  const offset2 = bglSlider.value.offsetWidth * index2 * (props2.rtl ? -1 : 1);
638
653
  const duration = window.innerWidth < 600 ? 400 : window.innerWidth < 991 ? 500 : 700;
639
654
  easeScroll(offset2, duration);
@@ -687,19 +702,20 @@ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
687
702
  }
688
703
  function next() {
689
704
  if (!bglSlider.value) return;
690
- const slideCount = bglSlider.value.children.length;
691
- goToSlide((activeSlideIndex.value + 1) % slideCount);
705
+ countSlides();
706
+ goToSlide((activeSlideIndex.value + 1) % slideCount.value);
692
707
  }
693
708
  function prev() {
694
709
  if (!bglSlider.value) return;
695
- const slideCount = bglSlider.value.children.length;
696
- goToSlide((activeSlideIndex.value - 1 + slideCount) % slideCount);
710
+ countSlides();
711
+ goToSlide((activeSlideIndex.value - 1 + slideCount.value) % slideCount.value);
697
712
  }
698
713
  vue.onMounted(() => {
699
714
  window.addEventListener("resize", handleResize);
700
715
  disableDrag();
701
716
  updateHeight();
702
717
  handleResize();
718
+ countSlides();
703
719
  if (props2.autoplay) {
704
720
  autoPlayInterval = setInterval(next, props2.autoPlaySpeed);
705
721
  }
@@ -728,10 +744,19 @@ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
728
744
  onMouseover: clearAutoplay,
729
745
  onFocusin: clearAutoplay
730
746
  }, [
731
- vue.unref(isDragging) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$t)) : vue.createCommentVNode("", true),
747
+ vue.unref(isDragging) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$v)) : vue.createCommentVNode("", true),
732
748
  vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
733
749
  ], 38),
734
- vue.createElementVNode("div", _hoisted_3$n, [
750
+ __props.dots && vue.unref(slideCount) > 1 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$p, [
751
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(slideCount), (i2) => {
752
+ return vue.openBlock(), vue.createElementBlock("span", {
753
+ key: i2,
754
+ class: vue.normalizeClass(["dot cursor", { current: vue.unref(activeSlideIndex) === i2 - 1 }]),
755
+ onClick: ($event) => goToSlide(i2 - 1)
756
+ }, null, 10, _hoisted_4$h);
757
+ }), 128))
758
+ ])) : vue.createCommentVNode("", true),
759
+ vue.createElementVNode("div", _hoisted_5$f, [
735
760
  vue.createElementVNode("span", { onClick: prev }, [
736
761
  vue.renderSlot(_ctx.$slots, "prev", {
737
762
  index: vue.unref(activeSlideIndex),
@@ -745,11 +770,11 @@ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
745
770
  }, void 0, true)
746
771
  ])
747
772
  ])
748
- ], 14, _hoisted_1$I);
773
+ ], 14, _hoisted_1$J);
749
774
  };
750
775
  }
751
776
  });
752
- const Carousel = /* @__PURE__ */ _export_sfc(_sfc_main$V, [["__scopeId", "data-v-98e36ac5"]]);
777
+ const Carousel = /* @__PURE__ */ _export_sfc(_sfc_main$W, [["__scopeId", "data-v-eec2b184"]]);
753
778
  function _isPlaceholder(a2) {
754
779
  return a2 != null && typeof a2 === "object" && a2["@@functional/placeholder"] === true;
755
780
  }
@@ -6583,8 +6608,8 @@ const _hoisted_1$1$1 = {
6583
6608
  style: { display: "flex", position: "relative" }
6584
6609
  };
6585
6610
  const _hoisted_2$1$1 = ["width", "height", "viewBox"];
6586
- const _hoisted_3$m = { class: "layer-rectangles" };
6587
- const _hoisted_4$f = ["transform", "onMouseover"];
6611
+ const _hoisted_3$o = { class: "layer-rectangles" };
6612
+ const _hoisted_4$g = ["transform", "onMouseover"];
6588
6613
  const _hoisted_5$e = ["width", "height"];
6589
6614
  const _hoisted_6$b = {
6590
6615
  x: 0 + 10,
@@ -6601,7 +6626,7 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
6601
6626
  viewBox: `0 0 ${_ctx.size.width} ${_ctx.size.height}`,
6602
6627
  ref: "el"
6603
6628
  }, [
6604
- vue.createElementVNode("g", _hoisted_3$m, [
6629
+ vue.createElementVNode("g", _hoisted_3$o, [
6605
6630
  (vue.openBlock(true), vue.createElementBlock(
6606
6631
  vue.Fragment,
6607
6632
  null,
@@ -6636,7 +6661,7 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
6636
6661
  )
6637
6662
  ])
6638
6663
  ])
6639
- ], 42, _hoisted_4$f);
6664
+ ], 42, _hoisted_4$g);
6640
6665
  }),
6641
6666
  128
6642
6667
  /* KEYED_FRAGMENT */
@@ -6693,25 +6718,25 @@ var script = vue.defineComponent({
6693
6718
  return { bar, canvas, direction, mouse };
6694
6719
  }
6695
6720
  });
6696
- const _hoisted_1$H = {
6721
+ const _hoisted_1$I = {
6697
6722
  key: 0,
6698
6723
  class: "layer-hover-bar"
6699
6724
  };
6700
- const _hoisted_2$s = ["x", "y", "width", "height"];
6725
+ const _hoisted_2$u = ["x", "y", "width", "height"];
6701
6726
  function render(_ctx, _cache, $props, $setup, $data, $options) {
6702
- return _ctx.mouse.hover ? (vue.openBlock(), vue.createElementBlock("g", _hoisted_1$H, [
6727
+ return _ctx.mouse.hover ? (vue.openBlock(), vue.createElementBlock("g", _hoisted_1$I, [
6703
6728
  vue.createElementVNode("rect", vue.mergeProps({ class: "hover-bar" }, _ctx.barStyle, {
6704
6729
  x: _ctx.bar.x,
6705
6730
  y: _ctx.bar.y,
6706
6731
  width: _ctx.bar.width > 0 ? _ctx.bar.width : 0,
6707
6732
  height: _ctx.bar.height > 0 ? _ctx.bar.height : 0
6708
- }), null, 16, _hoisted_2$s)
6733
+ }), null, 16, _hoisted_2$u)
6709
6734
  ])) : vue.createCommentVNode("v-if", true);
6710
6735
  }
6711
6736
  script.render = render;
6712
6737
  script.__file = "src/components/HoverBar/index.vue";
6713
6738
  const BRAND_COLOR = "var(--bgl-primary)";
6714
- const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
6739
+ const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
6715
6740
  __name: "Lineart",
6716
6741
  props: {
6717
6742
  data: {},
@@ -6851,16 +6876,16 @@ const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
6851
6876
  };
6852
6877
  }
6853
6878
  });
6854
- const _hoisted_1$G = {
6879
+ const _hoisted_1$H = {
6855
6880
  key: 0,
6856
6881
  class: "data"
6857
6882
  };
6858
- const _hoisted_2$r = {
6883
+ const _hoisted_2$t = {
6859
6884
  key: 0,
6860
6885
  class: "data-row m_py-05"
6861
6886
  };
6862
- const _hoisted_3$l = { class: "key" };
6863
- const _hoisted_4$e = { class: "m-0" };
6887
+ const _hoisted_3$n = { class: "key" };
6888
+ const _hoisted_4$f = { class: "m-0" };
6864
6889
  const _hoisted_5$d = { key: 1 };
6865
6890
  const _hoisted_6$a = {
6866
6891
  key: 0,
@@ -6872,7 +6897,7 @@ const _hoisted_9$3 = {
6872
6897
  key: 0,
6873
6898
  class: "m-0"
6874
6899
  };
6875
- const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
6900
+ const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
6876
6901
  __name: "DataPreview",
6877
6902
  props: /* @__PURE__ */ vue.mergeModels({
6878
6903
  showFields: {},
@@ -6908,7 +6933,7 @@ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
6908
6933
  const computedSchema = vue.computed(() => getFallbackSchema([itemData.value], props2.showFields));
6909
6934
  return (_ctx, _cache) => {
6910
6935
  var _a2;
6911
- return __props.data ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$G, [
6936
+ return __props.data ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$H, [
6912
6937
  _ctx.title ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$3), {
6913
6938
  key: 0,
6914
6939
  label: _ctx.title
@@ -6917,11 +6942,11 @@ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
6917
6942
  return vue.openBlock(), vue.createElementBlock(vue.Fragment, {
6918
6943
  key: field.id
6919
6944
  }, [
6920
- vue.unref(iffer)(field, itemData.value) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$r, [
6921
- vue.createElementVNode("div", _hoisted_3$l, [
6922
- vue.createElementVNode("p", _hoisted_4$e, vue.toDisplayString((field == null ? void 0 : field.label) || vue.unref(keyToLabel)(field.id)), 1)
6945
+ vue.unref(iffer)(field, itemData.value) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$t, [
6946
+ vue.createElementVNode("div", _hoisted_3$n, [
6947
+ vue.createElementVNode("p", _hoisted_4$f, vue.toDisplayString((field == null ? void 0 : field.label) || vue.unref(keyToLabel)(field.id)), 1)
6923
6948
  ]),
6924
- vue.createVNode(vue.unref(_sfc_main$P), {
6949
+ vue.createVNode(vue.unref(_sfc_main$Q), {
6925
6950
  modelValue: itemData.value,
6926
6951
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => itemData.value = $event),
6927
6952
  label: "",
@@ -6950,7 +6975,7 @@ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
6950
6975
  };
6951
6976
  }
6952
6977
  });
6953
- const DataPreview = /* @__PURE__ */ _export_sfc(_sfc_main$T, [["__scopeId", "data-v-6c27f163"]]);
6978
+ const DataPreview = /* @__PURE__ */ _export_sfc(_sfc_main$U, [["__scopeId", "data-v-6c27f163"]]);
6954
6979
  const sides = ["top", "right", "bottom", "left"];
6955
6980
  const alignments = ["start", "end"];
6956
6981
  const placements = /* @__PURE__ */ sides.reduce((acc, side) => acc.concat(side, side + "-" + alignments[0], side + "-" + alignments[1]), []);
@@ -9492,7 +9517,7 @@ const Gt$1 = {
9492
9517
  install: Ct$1,
9493
9518
  options: h
9494
9519
  };
9495
- const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
9520
+ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
9496
9521
  __name: "Dropdown",
9497
9522
  props: /* @__PURE__ */ vue.mergeModels({
9498
9523
  value: {},
@@ -9506,7 +9531,8 @@ const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
9506
9531
  outline: { type: Boolean },
9507
9532
  round: { type: Boolean },
9508
9533
  placement: {},
9509
- noAutoFocus: { type: Boolean }
9534
+ noAutoFocus: { type: Boolean },
9535
+ positioningDisabled: { type: Boolean }
9510
9536
  }, {
9511
9537
  "shown": {
9512
9538
  type: Boolean,
@@ -9563,7 +9589,7 @@ const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
9563
9589
  };
9564
9590
  }
9565
9591
  });
9566
- const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
9592
+ const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
9567
9593
  __name: "Flag",
9568
9594
  props: {
9569
9595
  country: {},
@@ -9593,7 +9619,7 @@ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
9593
9619
  };
9594
9620
  }
9595
9621
  });
9596
- const Flag = /* @__PURE__ */ _export_sfc(_sfc_main$R, [["__scopeId", "data-v-f99f1900"]]);
9622
+ const Flag = /* @__PURE__ */ _export_sfc(_sfc_main$S, [["__scopeId", "data-v-f99f1900"]]);
9597
9623
  const state$1 = vue.reactive(/* @__PURE__ */ new Map());
9598
9624
  function useTabs(group) {
9599
9625
  if (!state$1.has(group)) {
@@ -9607,8 +9633,8 @@ function useTabs(group) {
9607
9633
  });
9608
9634
  return { currentTab };
9609
9635
  }
9610
- const _hoisted_1$F = ["onClick"];
9611
- const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
9636
+ const _hoisted_1$G = ["onClick"];
9637
+ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
9612
9638
  __name: "TabsNav",
9613
9639
  props: {
9614
9640
  title: {},
@@ -9672,7 +9698,6 @@ const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
9672
9698
  window.removeEventListener("resize", updateIndicator);
9673
9699
  });
9674
9700
  return (_ctx, _cache) => {
9675
- const _component_Icon = vue.resolveComponent("Icon");
9676
9701
  return vue.openBlock(), vue.createElementBlock("div", {
9677
9702
  ref_key: "tabsWrap",
9678
9703
  ref: tabsWrap,
@@ -9686,20 +9711,20 @@ const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
9686
9711
  class: vue.normalizeClass([{ active: isActive(tab) }, "bgl_tab relative z-1"]),
9687
9712
  onClick: ($event) => selectTab(tab)
9688
9713
  }, [
9689
- typeof tab !== "string" && tab.icon ? (vue.openBlock(), vue.createBlock(_component_Icon, {
9714
+ typeof tab !== "string" && tab.icon ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$c), {
9690
9715
  key: 0,
9691
9716
  icon: tab.icon
9692
9717
  }, null, 8, ["icon"])) : vue.createCommentVNode("", true),
9693
9718
  vue.createTextVNode(" " + vue.toDisplayString(tabLabel(tab)), 1)
9694
- ], 10, _hoisted_1$F);
9719
+ ], 10, _hoisted_1$G);
9695
9720
  }), 128))
9696
9721
  ], true)
9697
9722
  ], 2);
9698
9723
  };
9699
9724
  }
9700
9725
  });
9701
- const TabsNav = /* @__PURE__ */ _export_sfc(_sfc_main$Q, [["__scopeId", "data-v-bbb66a44"]]);
9702
- const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
9726
+ const TabsNav = /* @__PURE__ */ _export_sfc(_sfc_main$R, [["__scopeId", "data-v-307612a9"]]);
9727
+ const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
9703
9728
  __name: "BglField",
9704
9729
  props: {
9705
9730
  field: {},
@@ -9716,15 +9741,15 @@ const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
9716
9741
  customAttrs.value.multiline = true;
9717
9742
  return TextInput;
9718
9743
  }
9719
- if (props2.field.$el === "array") return _sfc_main$M;
9744
+ if (props2.field.$el === "array") return _sfc_main$N;
9720
9745
  if (props2.field.$el === "select") return SelectInput;
9721
9746
  if (props2.field.$el === "toggle") return ToggleInput;
9722
9747
  if (props2.field.$el === "check") return CheckInput;
9723
9748
  if (props2.field.$el === "richtext") return RichText;
9724
9749
  if (props2.field.$el === "file") return FileUpload;
9725
- if (props2.field.$el === "date") return _sfc_main$H;
9750
+ if (props2.field.$el === "date") return _sfc_main$I;
9726
9751
  if (props2.field.$el === "tabs") return TabsNav;
9727
- if (props2.field.$el === "form") return _sfc_main$O;
9752
+ if (props2.field.$el === "form") return _sfc_main$P;
9728
9753
  return props2.field.$el ?? "div";
9729
9754
  });
9730
9755
  const formData = vue.computed({
@@ -9747,7 +9772,7 @@ const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
9747
9772
  temp[keys4[keys4.length - 1]] = val;
9748
9773
  return data2;
9749
9774
  }
9750
- const isForm = vue.computed(() => props2.field.$el === "form" || props2.field.$el === _sfc_main$O);
9775
+ const isForm = vue.computed(() => props2.field.$el === "form" || props2.field.$el === _sfc_main$P);
9751
9776
  function getFieldData(obj, key) {
9752
9777
  if (typeof obj !== "object" || obj === null) return obj;
9753
9778
  const keys4 = key.split(objPathRegex);
@@ -9841,7 +9866,7 @@ const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
9841
9866
  };
9842
9867
  }
9843
9868
  });
9844
- const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
9869
+ const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
9845
9870
  __name: "BglForm",
9846
9871
  props: {
9847
9872
  label: {},
@@ -9939,7 +9964,7 @@ const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
9939
9964
  label: _ctx.label
9940
9965
  }, null, 8, ["label"])) : vue.createCommentVNode("", true),
9941
9966
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(computedSchema.value, (field, i2) => {
9942
- return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$P), {
9967
+ return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$Q), {
9943
9968
  key: field.id || `${i2}p`,
9944
9969
  modelValue: vue.unref(data2),
9945
9970
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.isRef(data2) ? data2.value = $event : data2 = $event),
@@ -9963,7 +9988,7 @@ const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
9963
9988
  label: _ctx.label
9964
9989
  }, null, 8, ["label"])) : vue.createCommentVNode("", true),
9965
9990
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(computedSchema.value, (field, i2) => {
9966
- return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$P), {
9991
+ return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$Q), {
9967
9992
  key: field.id || `${i2}p`,
9968
9993
  modelValue: vue.unref(data2),
9969
9994
  "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => vue.isRef(data2) ? data2.value = $event : data2 = $event),
@@ -9982,8 +10007,8 @@ const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
9982
10007
  };
9983
10008
  }
9984
10009
  });
9985
- const _hoisted_1$E = { key: 0 };
9986
- const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
10010
+ const _hoisted_1$F = { key: 0 };
10011
+ const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
9987
10012
  __name: "BglMultiStepForm",
9988
10013
  props: /* @__PURE__ */ vue.mergeModels({
9989
10014
  bagelFormProps: { default: () => ({}) },
@@ -10050,8 +10075,8 @@ const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
10050
10075
  mode: "out-in"
10051
10076
  }, {
10052
10077
  default: vue.withCtx(() => [
10053
- !vue.unref(isStepping) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$E, [
10054
- vue.createVNode(vue.unref(_sfc_main$O), vue.mergeProps({
10078
+ !vue.unref(isStepping) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$F, [
10079
+ vue.createVNode(vue.unref(_sfc_main$P), vue.mergeProps({
10055
10080
  ref_key: "formRef",
10056
10081
  ref: formRef,
10057
10082
  modelValue: formData.value,
@@ -10090,9 +10115,9 @@ const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
10090
10115
  };
10091
10116
  }
10092
10117
  });
10093
- const _hoisted_1$D = { class: "label mb-05" };
10094
- const _hoisted_2$q = { class: "-ms-05 ps-05 border-start" };
10095
- const _sfc_main$M = /* @__PURE__ */ vue.defineComponent({
10118
+ const _hoisted_1$E = { class: "label mb-05" };
10119
+ const _hoisted_2$s = { class: "-ms-05 ps-05 border-start" };
10120
+ const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
10096
10121
  __name: "FieldArray",
10097
10122
  props: {
10098
10123
  el: { default: "div" },
@@ -10130,8 +10155,8 @@ const _sfc_main$M = /* @__PURE__ */ vue.defineComponent({
10130
10155
  }
10131
10156
  return (_ctx, _cache) => {
10132
10157
  return vue.openBlock(), vue.createElementBlock("div", null, [
10133
- vue.createElementVNode("p", _hoisted_1$D, vue.toDisplayString(_ctx.label), 1),
10134
- vue.createElementVNode("div", _hoisted_2$q, [
10158
+ vue.createElementVNode("p", _hoisted_1$E, vue.toDisplayString(_ctx.label), 1),
10159
+ vue.createElementVNode("div", _hoisted_2$s, [
10135
10160
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(data2.value, (_2, i2) => {
10136
10161
  return vue.openBlock(), vue.createElementBlock("div", {
10137
10162
  key: i2,
@@ -10139,7 +10164,7 @@ const _sfc_main$M = /* @__PURE__ */ vue.defineComponent({
10139
10164
  thin: "",
10140
10165
  class: "mb-05 itemBox transition p-05"
10141
10166
  }, [
10142
- _ctx.schema ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$O), {
10167
+ _ctx.schema ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$P), {
10143
10168
  key: 0,
10144
10169
  modelValue: data2.value[i2],
10145
10170
  "onUpdate:modelValue": [($event) => data2.value[i2] = $event, emitValue],
@@ -10174,8 +10199,8 @@ const _sfc_main$M = /* @__PURE__ */ vue.defineComponent({
10174
10199
  };
10175
10200
  }
10176
10201
  });
10177
- const _hoisted_1$C = { class: "primary-checkbox" };
10178
- const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
10202
+ const _hoisted_1$D = { class: "primary-checkbox" };
10203
+ const _sfc_main$M = /* @__PURE__ */ vue.defineComponent({
10179
10204
  __name: "Checkbox",
10180
10205
  props: {
10181
10206
  "modelValue": { type: Boolean, ...{ default: false } },
@@ -10185,7 +10210,7 @@ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
10185
10210
  setup(__props) {
10186
10211
  const val = vue.useModel(__props, "modelValue");
10187
10212
  return (_ctx, _cache) => {
10188
- return vue.openBlock(), vue.createElementBlock("label", _hoisted_1$C, [
10213
+ return vue.openBlock(), vue.createElementBlock("label", _hoisted_1$D, [
10189
10214
  vue.renderSlot(_ctx.$slots, "label", {}, void 0, true),
10190
10215
  vue.withDirectives(vue.createElementVNode("input", {
10191
10216
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => val.value = $event),
@@ -10197,11 +10222,11 @@ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
10197
10222
  };
10198
10223
  }
10199
10224
  });
10200
- const Checkbox = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["__scopeId", "data-v-73f1d9ad"]]);
10201
- const _hoisted_1$B = ["title"];
10202
- const _hoisted_2$p = ["id", "value", "required"];
10203
- const _hoisted_3$k = ["for"];
10204
- const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
10225
+ const Checkbox = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["__scopeId", "data-v-73f1d9ad"]]);
10226
+ const _hoisted_1$C = ["title"];
10227
+ const _hoisted_2$r = ["id", "value", "required"];
10228
+ const _hoisted_3$m = ["for"];
10229
+ const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
10205
10230
  __name: "CheckInput",
10206
10231
  props: /* @__PURE__ */ vue.mergeModels({
10207
10232
  label: {},
@@ -10235,27 +10260,27 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
10235
10260
  required: _ctx.required,
10236
10261
  type: "checkbox",
10237
10262
  class: "me-05"
10238
- }, null, 8, _hoisted_2$p), [
10263
+ }, null, 8, _hoisted_2$r), [
10239
10264
  [vue.vModelCheckbox, checked.value]
10240
10265
  ]),
10241
10266
  vue.createElementVNode("label", { for: inputId.value }, [
10242
10267
  vue.renderSlot(_ctx.$slots, "label", {}, () => [
10243
10268
  vue.createTextVNode(vue.toDisplayString(_ctx.label), 1)
10244
10269
  ], true)
10245
- ], 8, _hoisted_3$k)
10246
- ], 10, _hoisted_1$B);
10270
+ ], 8, _hoisted_3$m)
10271
+ ], 10, _hoisted_1$C);
10247
10272
  };
10248
10273
  }
10249
10274
  });
10250
- const CheckInput = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["__scopeId", "data-v-03ed2982"]]);
10251
- const _hoisted_1$A = {
10275
+ const CheckInput = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["__scopeId", "data-v-03ed2982"]]);
10276
+ const _hoisted_1$B = {
10252
10277
  key: 0,
10253
10278
  class: "code-editor-wrap grid rounded p-1 overflow hm-300px"
10254
10279
  };
10255
- const _hoisted_2$o = { class: "overflow-hidden absolute inset-0 p-0 m-0 h-100 codeText" };
10256
- const _hoisted_3$j = ["innerHTML"];
10257
- const _hoisted_4$d = ["onKeydown"];
10258
- const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
10280
+ const _hoisted_2$q = { class: "overflow-hidden absolute inset-0 p-0 m-0 h-100 codeText" };
10281
+ const _hoisted_3$l = ["innerHTML"];
10282
+ const _hoisted_4$e = ["onKeydown"];
10283
+ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
10259
10284
  __name: "Index",
10260
10285
  props: {
10261
10286
  language: {},
@@ -10335,17 +10360,17 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
10335
10360
  }
10336
10361
  }, { immediate: true });
10337
10362
  return (_ctx, _cache) => {
10338
- return vue.unref(loaded) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$A, [
10363
+ return vue.unref(loaded) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$B, [
10339
10364
  vue.createElementVNode("div", {
10340
10365
  class: "relative block h-100",
10341
10366
  style: vue.normalizeStyle({ height: vue.unref(height) })
10342
10367
  }, [
10343
- vue.createElementVNode("pre", _hoisted_2$o, [
10368
+ vue.createElementVNode("pre", _hoisted_2$q, [
10344
10369
  _cache[2] || (_cache[2] = vue.createTextVNode(" ")),
10345
10370
  vue.createElementVNode("code", {
10346
10371
  class: vue.normalizeClass(className.value),
10347
10372
  innerHTML: highlightedCode.value
10348
- }, null, 10, _hoisted_3$j),
10373
+ }, null, 10, _hoisted_3$l),
10349
10374
  _cache[3] || (_cache[3] = vue.createTextVNode("\n "))
10350
10375
  ]),
10351
10376
  !_ctx.readonly ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("textarea", {
@@ -10360,7 +10385,7 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
10360
10385
  "data-gramm": "false",
10361
10386
  onKeydown: vue.withKeys(vue.withModifiers(handleTab, ["prevent"]), ["tab"]),
10362
10387
  onInput: _cache[1] || (_cache[1] = ($event) => emit2("update:modelValue", vue.unref(code)))
10363
- }, null, 40, _hoisted_4$d)), [
10388
+ }, null, 40, _hoisted_4$e)), [
10364
10389
  [vue.vModelText, vue.unref(code)]
10365
10390
  ]) : vue.createCommentVNode("", true)
10366
10391
  ], 4)
@@ -10368,10 +10393,10 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
10368
10393
  };
10369
10394
  }
10370
10395
  });
10371
- const CodeEditor = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["__scopeId", "data-v-4f1dc18a"]]);
10372
- const _hoisted_1$z = ["title"];
10373
- const _hoisted_2$n = ["id", "placeholder", "required"];
10374
- const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
10396
+ const CodeEditor = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["__scopeId", "data-v-4f1dc18a"]]);
10397
+ const _hoisted_1$A = ["title"];
10398
+ const _hoisted_2$p = ["id", "placeholder", "required"];
10399
+ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
10375
10400
  __name: "ColorPicker",
10376
10401
  props: {
10377
10402
  label: {},
@@ -10409,11 +10434,11 @@ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
10409
10434
  placeholder: _ctx.placeholder || _ctx.label,
10410
10435
  class: { "no-edit": !_ctx.editMode },
10411
10436
  required: _ctx.required
10412
- }, _ctx.nativeInputAttrs), null, 16, _hoisted_2$n), [
10437
+ }, _ctx.nativeInputAttrs), null, 16, _hoisted_2$p), [
10413
10438
  [vue.vModelText, inputVal.value]
10414
10439
  ])
10415
10440
  ])
10416
- ], 10, _hoisted_1$z)) : vue.createCommentVNode("", true);
10441
+ ], 10, _hoisted_1$A)) : vue.createCommentVNode("", true);
10417
10442
  };
10418
10443
  }
10419
10444
  });
@@ -11011,9 +11036,9 @@ function buildMatchFn(args) {
11011
11036
  }
11012
11037
  const matchedString = matchResult[0];
11013
11038
  const parsePatterns = width && args.parsePatterns[width] || args.parsePatterns[args.defaultParseWidth];
11014
- const key = Array.isArray(parsePatterns) ? findIndex(parsePatterns, (pattern) => pattern.test(matchedString)) : (
11039
+ const key = Array.isArray(parsePatterns) ? findIndex(parsePatterns, (pattern2) => pattern2.test(matchedString)) : (
11015
11040
  // eslint-disable-next-line @typescript-eslint/no-explicit-any -- I challange you to fix the type
11016
- findKey$1(parsePatterns, (pattern) => pattern.test(matchedString))
11041
+ findKey$1(parsePatterns, (pattern2) => pattern2.test(matchedString))
11017
11042
  );
11018
11043
  let value;
11019
11044
  value = args.valueCallback ? args.valueCallback(key) : key;
@@ -11940,8 +11965,8 @@ function formatTimezone(offset2, delimiter = "") {
11940
11965
  const minutes = addLeadingZeros(absOffset % 60, 2);
11941
11966
  return sign2 + hours + delimiter + minutes;
11942
11967
  }
11943
- const dateLongFormatter = (pattern, formatLong2) => {
11944
- switch (pattern) {
11968
+ const dateLongFormatter = (pattern2, formatLong2) => {
11969
+ switch (pattern2) {
11945
11970
  case "P":
11946
11971
  return formatLong2.date({ width: "short" });
11947
11972
  case "PP":
@@ -11953,8 +11978,8 @@ const dateLongFormatter = (pattern, formatLong2) => {
11953
11978
  return formatLong2.date({ width: "full" });
11954
11979
  }
11955
11980
  };
11956
- const timeLongFormatter = (pattern, formatLong2) => {
11957
- switch (pattern) {
11981
+ const timeLongFormatter = (pattern2, formatLong2) => {
11982
+ switch (pattern2) {
11958
11983
  case "p":
11959
11984
  return formatLong2.time({ width: "short" });
11960
11985
  case "pp":
@@ -11966,12 +11991,12 @@ const timeLongFormatter = (pattern, formatLong2) => {
11966
11991
  return formatLong2.time({ width: "full" });
11967
11992
  }
11968
11993
  };
11969
- const dateTimeLongFormatter = (pattern, formatLong2) => {
11970
- const matchResult = pattern.match(/(P+)(p+)?/) || [];
11994
+ const dateTimeLongFormatter = (pattern2, formatLong2) => {
11995
+ const matchResult = pattern2.match(/(P+)(p+)?/) || [];
11971
11996
  const datePattern = matchResult[1];
11972
11997
  const timePattern = matchResult[2];
11973
11998
  if (!timePattern) {
11974
- return dateLongFormatter(pattern, formatLong2);
11999
+ return dateLongFormatter(pattern2, formatLong2);
11975
12000
  }
11976
12001
  let dateTimeFormat;
11977
12002
  switch (datePattern) {
@@ -12299,8 +12324,8 @@ function mapValue(parseFnResult, mapFn) {
12299
12324
  rest: parseFnResult.rest
12300
12325
  };
12301
12326
  }
12302
- function parseNumericPattern(pattern, dateString) {
12303
- const matchResult = dateString.match(pattern);
12327
+ function parseNumericPattern(pattern2, dateString) {
12328
+ const matchResult = dateString.match(pattern2);
12304
12329
  if (!matchResult) {
12305
12330
  return null;
12306
12331
  }
@@ -12309,8 +12334,8 @@ function parseNumericPattern(pattern, dateString) {
12309
12334
  rest: dateString.slice(matchResult[0].length)
12310
12335
  };
12311
12336
  }
12312
- function parseTimezonePattern(pattern, dateString) {
12313
- const matchResult = dateString.match(pattern);
12337
+ function parseTimezonePattern(pattern2, dateString) {
12338
+ const matchResult = dateString.match(pattern2);
12314
12339
  if (!matchResult) {
12315
12340
  return null;
12316
12341
  }
@@ -18971,9 +18996,9 @@ const eo = ({
18971
18996
  Object.entries(go).forEach(([e, t]) => {
18972
18997
  e !== "default" && (Hn[e] = t);
18973
18998
  });
18974
- const _hoisted_1$y = ["title"];
18975
- const _hoisted_2$m = { key: 0 };
18976
- const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
18999
+ const _hoisted_1$z = ["title"];
19000
+ const _hoisted_2$o = { key: 0 };
19001
+ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
18977
19002
  __name: "DateInput",
18978
19003
  props: {
18979
19004
  required: { type: Boolean },
@@ -19015,7 +19040,7 @@ const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
19015
19040
  class: vue.normalizeClass(["bagel-input", { small: _ctx.small }]),
19016
19041
  title: _ctx.label
19017
19042
  }, [
19018
- _ctx.label ? (vue.openBlock(), vue.createElementBlock("label", _hoisted_2$m, vue.toDisplayString(_ctx.label), 1)) : vue.createCommentVNode("", true),
19043
+ _ctx.label ? (vue.openBlock(), vue.createElementBlock("label", _hoisted_2$o, vue.toDisplayString(_ctx.label), 1)) : vue.createCommentVNode("", true),
19019
19044
  vue.createVNode(vue.unref(Hn), vue.mergeProps({
19020
19045
  ref_key: "datePicker",
19021
19046
  ref: datePicker,
@@ -19031,19 +19056,19 @@ const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
19031
19056
  "minutes-grid-increment": _ctx.minutesGridIncrement,
19032
19057
  "start-time": { hours: 8, minutes: 0 }
19033
19058
  }), null, 16, ["modelValue", "required", "enable-time-picker", "allowed-dates", "time-picker-inline", "minutes-increment", "minutes-grid-increment"])
19034
- ], 10, _hoisted_1$y);
19059
+ ], 10, _hoisted_1$z);
19035
19060
  };
19036
19061
  }
19037
19062
  });
19038
- const _hoisted_1$x = { class: "datetime-wrap" };
19039
- const _hoisted_2$l = { class: "date-wrap" };
19040
- const _hoisted_3$i = {
19063
+ const _hoisted_1$y = { class: "datetime-wrap" };
19064
+ const _hoisted_2$n = { class: "date-wrap" };
19065
+ const _hoisted_3$k = {
19041
19066
  key: 0,
19042
19067
  class: "time-wrap"
19043
19068
  };
19044
- const _hoisted_4$c = ["id", "name", "value"];
19069
+ const _hoisted_4$d = ["id", "name", "value"];
19045
19070
  const _hoisted_5$c = ["for"];
19046
- const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
19071
+ const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
19047
19072
  __name: "DatePicker",
19048
19073
  props: {
19049
19074
  label: {},
@@ -19071,8 +19096,8 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
19071
19096
  return `${hour}:${minute}`;
19072
19097
  });
19073
19098
  return (_ctx, _cache) => {
19074
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$x, [
19075
- vue.createElementVNode("div", _hoisted_2$l, [
19099
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$y, [
19100
+ vue.createElementVNode("div", _hoisted_2$n, [
19076
19101
  vue.createVNode(vue.unref(Hn), vue.mergeProps({
19077
19102
  modelValue: selectedDate.value,
19078
19103
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => selectedDate.value = $event),
@@ -19090,7 +19115,7 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
19090
19115
  _: 1
19091
19116
  }, 16, ["modelValue", "allowed-dates", "disabled-dates"])
19092
19117
  ]),
19093
- _ctx.showTimeWrap ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$i, [
19118
+ _ctx.showTimeWrap ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$k, [
19094
19119
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(hours), (hr2) => {
19095
19120
  return vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: hr2 }, [
19096
19121
  vue.withDirectives(vue.createElementVNode("input", {
@@ -19099,7 +19124,7 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
19099
19124
  type: "radio",
19100
19125
  name: _ctx.label,
19101
19126
  value: hr2
19102
- }, null, 8, _hoisted_4$c), [
19127
+ }, null, 8, _hoisted_4$d), [
19103
19128
  [vue.vModelRadio, selectedHour.value]
19104
19129
  ]),
19105
19130
  vue.createElementVNode("label", {
@@ -19112,14 +19137,17 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
19112
19137
  };
19113
19138
  }
19114
19139
  });
19115
- const _hoisted_1$w = ["src", "alt", "width", "height"];
19116
- const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
19140
+ const _hoisted_1$x = { key: 0 };
19141
+ const _hoisted_2$m = ["src", "alt", "width", "height"];
19142
+ const _hoisted_3$j = ["src", "alt", "width", "height"];
19143
+ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
19117
19144
  __name: "Image",
19118
19145
  props: {
19119
19146
  src: {},
19120
19147
  alt: { default: "" },
19121
19148
  width: {},
19122
- height: {}
19149
+ height: {},
19150
+ caption: {}
19123
19151
  },
19124
19152
  setup(__props) {
19125
19153
  let imageSrc = vue.ref(null);
@@ -19169,15 +19197,29 @@ const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
19169
19197
  }
19170
19198
  vue.watch(() => __props.src, loadImage, { immediate: true });
19171
19199
  return (_ctx, _cache) => {
19172
- return vue.unref(imageSrc) ? (vue.openBlock(), vue.createElementBlock("img", vue.mergeProps({
19173
- key: 0,
19200
+ return _ctx.caption ? (vue.openBlock(), vue.createElementBlock("figcaption", _hoisted_1$x, [
19201
+ vue.unref(imageSrc) ? (vue.openBlock(), vue.createElementBlock("img", vue.mergeProps({
19202
+ key: 0,
19203
+ src: vue.unref(imageSrc)
19204
+ }, _ctx.$attrs, {
19205
+ alt: _ctx.alt,
19206
+ width: vue.unref(normalizeDimension)(_ctx.width),
19207
+ height: vue.unref(normalizeDimension)(_ctx.height)
19208
+ }), null, 16, _hoisted_2$m)) : (vue.openBlock(), vue.createBlock(vue.unref(Skeleton), {
19209
+ key: 1,
19210
+ class: "img-web-kit",
19211
+ width: vue.unref(normalizeDimension)(_ctx.width),
19212
+ height: vue.unref(normalizeDimension)(_ctx.height)
19213
+ }, null, 8, ["width", "height"]))
19214
+ ])) : vue.unref(imageSrc) ? (vue.openBlock(), vue.createElementBlock("img", vue.mergeProps({
19215
+ key: 1,
19174
19216
  src: vue.unref(imageSrc)
19175
19217
  }, _ctx.$attrs, {
19176
19218
  alt: _ctx.alt,
19177
19219
  width: vue.unref(normalizeDimension)(_ctx.width),
19178
19220
  height: vue.unref(normalizeDimension)(_ctx.height)
19179
- }), null, 16, _hoisted_1$w)) : (vue.openBlock(), vue.createBlock(vue.unref(Skeleton), {
19180
- key: 1,
19221
+ }), null, 16, _hoisted_3$j)) : (vue.openBlock(), vue.createBlock(vue.unref(Skeleton), {
19222
+ key: 2,
19181
19223
  class: "img-web-kit",
19182
19224
  width: vue.unref(normalizeDimension)(_ctx.width),
19183
19225
  height: vue.unref(normalizeDimension)(_ctx.height)
@@ -19185,17 +19227,17 @@ const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
19185
19227
  };
19186
19228
  }
19187
19229
  });
19188
- const Image$1 = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["__scopeId", "data-v-a96b25a8"]]);
19189
- const _hoisted_1$v = { class: "bagel-input" };
19190
- const _hoisted_2$k = {
19230
+ const Image$1 = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["__scopeId", "data-v-e7144f6e"]]);
19231
+ const _hoisted_1$w = { class: "bagel-input" };
19232
+ const _hoisted_2$l = {
19191
19233
  key: 0,
19192
19234
  placeholder: "required",
19193
19235
  type: "text",
19194
19236
  required: "",
19195
19237
  class: "pixel"
19196
19238
  };
19197
- const _hoisted_3$h = { class: "m-05 flex opacity-7 z-99" };
19198
- const _hoisted_4$b = { class: "ellipsis-1 word-break-all h-20 m-0" };
19239
+ const _hoisted_3$i = { class: "m-05 flex opacity-7 z-99" };
19240
+ const _hoisted_4$c = { class: "ellipsis-1 word-break-all h-20 m-0" };
19199
19241
  const _hoisted_5$b = {
19200
19242
  key: 1,
19201
19243
  class: "txt-gray txt-12"
@@ -19224,7 +19266,7 @@ const _hoisted_13$1 = {
19224
19266
  class: "progress"
19225
19267
  };
19226
19268
  const _hoisted_14 = { class: "p-1 flex column hover fileUploadPlaceHolder justify-content-center mb-05" };
19227
- const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
19269
+ const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
19228
19270
  __name: "FileUpload",
19229
19271
  props: /* @__PURE__ */ vue.mergeModels({
19230
19272
  label: {},
@@ -19398,10 +19440,10 @@ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
19398
19440
  return (_ctx, _cache) => {
19399
19441
  const _directive_tooltip = vue.resolveDirective("tooltip");
19400
19442
  const _directive_lightbox = vue.resolveDirective("lightbox");
19401
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$v, [
19443
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$w, [
19402
19444
  vue.createElementVNode("label", null, vue.toDisplayString(_ctx.label), 1),
19403
- _ctx.required && !storageFiles.value.length ? (vue.openBlock(), vue.createElementBlock("input", _hoisted_2$k)) : vue.createCommentVNode("", true),
19404
- _ctx.theme === "basic" ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$W), {
19445
+ _ctx.required && !storageFiles.value.length ? (vue.openBlock(), vue.createElementBlock("input", _hoisted_2$l)) : vue.createCommentVNode("", true),
19446
+ _ctx.theme === "basic" ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$X), {
19405
19447
  key: 1,
19406
19448
  outline: "",
19407
19449
  class: "flex p-05 gap-1",
@@ -19426,7 +19468,7 @@ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
19426
19468
  key: file.id,
19427
19469
  class: "txt-gray txt-12 flex"
19428
19470
  }, [
19429
- vue.createElementVNode("div", _hoisted_3$h, [
19471
+ vue.createElementVNode("div", _hoisted_3$i, [
19430
19472
  vue.withDirectives(vue.createVNode(vue.unref(Btn), {
19431
19473
  color: "gray",
19432
19474
  thin: "",
@@ -19455,7 +19497,7 @@ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
19455
19497
  }, null, 8, ["href", "download"]), [
19456
19498
  [_directive_tooltip, "Download"]
19457
19499
  ]),
19458
- vue.withDirectives((vue.openBlock(), vue.createElementBlock("p", _hoisted_4$b, [
19500
+ vue.withDirectives((vue.openBlock(), vue.createElementBlock("p", _hoisted_4$c, [
19459
19501
  vue.createTextVNode(vue.toDisplayString(file.name), 1)
19460
19502
  ])), [
19461
19503
  [_directive_lightbox, { src: file.url, download: true }]
@@ -19646,11 +19688,11 @@ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
19646
19688
  };
19647
19689
  }
19648
19690
  });
19649
- const FileUpload = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["__scopeId", "data-v-6bfdaea2"]]);
19650
- const _hoisted_1$u = ["title"];
19651
- const _hoisted_2$j = { key: 0 };
19652
- const _hoisted_3$g = ["value", "placeholder"];
19653
- const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
19691
+ const FileUpload = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["__scopeId", "data-v-6bfdaea2"]]);
19692
+ const _hoisted_1$v = ["title"];
19693
+ const _hoisted_2$k = { key: 0 };
19694
+ const _hoisted_3$h = ["value", "placeholder"];
19695
+ const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
19654
19696
  __name: "JSONInput",
19655
19697
  props: {
19656
19698
  description: { default: "" },
@@ -19673,7 +19715,7 @@ const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
19673
19715
  class: vue.normalizeClass(["bagel-input", { small: _ctx.small }]),
19674
19716
  title: _ctx.description
19675
19717
  }, [
19676
- _ctx.label ? (vue.openBlock(), vue.createElementBlock("label", _hoisted_2$j, [
19718
+ _ctx.label ? (vue.openBlock(), vue.createElementBlock("label", _hoisted_2$k, [
19677
19719
  vue.createVNode(_component_LangText, { input: _ctx.label }, null, 8, ["input"])
19678
19720
  ])) : vue.createCommentVNode("", true),
19679
19721
  vue.createElementVNode("textarea", {
@@ -19681,12 +19723,164 @@ const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
19681
19723
  class: vue.normalizeClass({ "no-edit": !_ctx.editMode }),
19682
19724
  placeholder: _ctx.placeholder,
19683
19725
  onInput: handleInput
19684
- }, null, 42, _hoisted_3$g)
19685
- ], 10, _hoisted_1$u);
19726
+ }, null, 42, _hoisted_3$h)
19727
+ ], 10, _hoisted_1$v);
19728
+ };
19729
+ }
19730
+ });
19731
+ const JSONInput = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["__scopeId", "data-v-1cbaeab2"]]);
19732
+ const _hoisted_1$u = ["for"];
19733
+ const _hoisted_2$j = ["id", "placeholder", "disabled", "required", "readonly", "onKeydown"];
19734
+ const _hoisted_3$g = { key: 1 };
19735
+ const _hoisted_4$b = {
19736
+ key: 5,
19737
+ class: "flex column spinner"
19738
+ };
19739
+ const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
19740
+ __name: "NumberInput",
19741
+ props: {
19742
+ modelValue: {},
19743
+ min: {},
19744
+ max: {},
19745
+ step: { default: 1 },
19746
+ spinner: { type: Boolean, default: true },
19747
+ iconStart: {},
19748
+ icon: {},
19749
+ label: {},
19750
+ placeholder: {},
19751
+ disabled: { type: Boolean },
19752
+ required: { type: Boolean },
19753
+ id: {},
19754
+ helptext: {},
19755
+ layout: {},
19756
+ center: { type: Boolean }
19757
+ },
19758
+ emits: ["update:modelValue"],
19759
+ setup(__props, { emit: __emit }) {
19760
+ const emit2 = __emit;
19761
+ let numberValue = vue.ref(0);
19762
+ const btnLayouts = ["horizontal", "vertical"];
19763
+ function increment() {
19764
+ if (!__props.max || numberValue.value + __props.step <= __props.max) {
19765
+ numberValue.value = (numberValue.value || 0) + __props.step;
19766
+ emit2("update:modelValue", numberValue.value);
19767
+ }
19768
+ }
19769
+ function decrement() {
19770
+ if (!__props.min || numberValue.value - __props.step >= __props.min) {
19771
+ numberValue.value = (numberValue.value || 0) - __props.step;
19772
+ emit2("update:modelValue", numberValue.value);
19773
+ }
19774
+ }
19775
+ function formatNumber2(num) {
19776
+ return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
19777
+ }
19778
+ let formattedValue = vue.ref("");
19779
+ function inputHandler() {
19780
+ const numeric = formattedValue.value.replace(/[^\d.-]/g, "");
19781
+ if (numeric === "" || numeric === "-" || numeric === "." || numeric === "-." || numeric.endsWith(".")) return;
19782
+ numberValue.value = Number.parseFloat(numeric);
19783
+ formattedValue.value = formatNumber2(numberValue.value);
19784
+ emit2("update:modelValue", numberValue.value);
19785
+ }
19786
+ vue.watch(() => numberValue.value, () => {
19787
+ formattedValue.value = formatNumber2(numberValue.value);
19788
+ }, { immediate: true });
19789
+ vue.watch(() => __props.modelValue, (newVal) => {
19790
+ if (newVal !== numberValue.value) {
19791
+ numberValue.value = newVal;
19792
+ }
19793
+ }, { immediate: true });
19794
+ return (_ctx, _cache) => {
19795
+ const _directive_pattern = vue.resolveDirective("pattern");
19796
+ return vue.openBlock(), vue.createElementBlock("div", {
19797
+ class: vue.normalizeClass(["bagel-input num-input", {
19798
+ textInputSpinnerWrap: _ctx.icon || _ctx.spinner,
19799
+ txtInputIconStart: _ctx.iconStart
19800
+ }])
19801
+ }, [
19802
+ vue.createElementVNode("label", { for: _ctx.id }, [
19803
+ vue.createTextVNode(vue.toDisplayString(_ctx.label) + " ", 1),
19804
+ vue.createElementVNode("div", {
19805
+ class: vue.normalizeClass(["gap-025", { "column flex": _ctx.layout === "vertical", "flex": _ctx.layout === "horizontal" }])
19806
+ }, [
19807
+ _ctx.layout && btnLayouts.includes(_ctx.layout) ? (vue.openBlock(), vue.createBlock(vue.unref(Btn), {
19808
+ key: 0,
19809
+ icon: "add",
19810
+ class: vue.normalizeClass(["radius", [{ "bgl-big-ctrl-num-btn": _ctx.layout === "vertical" }]]),
19811
+ onClick: increment
19812
+ }, null, 8, ["class"])) : vue.createCommentVNode("", true),
19813
+ vue.withDirectives(vue.createElementVNode("input", {
19814
+ id: _ctx.id,
19815
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.isRef(formattedValue) ? formattedValue.value = $event : formattedValue = $event),
19816
+ type: "text",
19817
+ class: vue.normalizeClass({ "txt-center": _ctx.center, "min0": _ctx.layout }),
19818
+ placeholder: _ctx.placeholder || _ctx.label,
19819
+ disabled: _ctx.disabled,
19820
+ required: _ctx.required,
19821
+ readonly: _ctx.disabled,
19822
+ inputmode: "numeric",
19823
+ autocomplete: "off",
19824
+ autocorrect: "off",
19825
+ spellcheck: "false",
19826
+ onInput: inputHandler,
19827
+ onKeydown: [
19828
+ vue.withKeys(vue.withModifiers(increment, ["prevent"]), ["up"]),
19829
+ vue.withKeys(vue.withModifiers(decrement, ["prevent"]), ["down"])
19830
+ ]
19831
+ }, null, 42, _hoisted_2$j), [
19832
+ [
19833
+ vue.vModelText,
19834
+ vue.unref(formattedValue),
19835
+ void 0,
19836
+ { trim: true }
19837
+ ],
19838
+ [
19839
+ _directive_pattern,
19840
+ void 0,
19841
+ void 0,
19842
+ { number: true }
19843
+ ]
19844
+ ]),
19845
+ _ctx.helptext ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_3$g, vue.toDisplayString(_ctx.helptext), 1)) : vue.createCommentVNode("", true),
19846
+ _ctx.iconStart ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$c), {
19847
+ key: 2,
19848
+ class: "iconStart",
19849
+ icon: _ctx.iconStart
19850
+ }, null, 8, ["icon"])) : vue.createCommentVNode("", true),
19851
+ _ctx.icon ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$c), {
19852
+ key: 3,
19853
+ icon: _ctx.icon
19854
+ }, null, 8, ["icon"])) : vue.createCommentVNode("", true),
19855
+ _ctx.layout && btnLayouts.includes(_ctx.layout) ? (vue.openBlock(), vue.createBlock(vue.unref(Btn), {
19856
+ key: 4,
19857
+ icon: "remove",
19858
+ class: vue.normalizeClass(["radius", [{ "bgl-big-ctrl-num-btn": _ctx.layout === "vertical" }]]),
19859
+ onClick: decrement
19860
+ }, null, 8, ["class"])) : vue.createCommentVNode("", true),
19861
+ _ctx.spinner && (!_ctx.layout || !btnLayouts.includes(_ctx.layout)) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$b, [
19862
+ vue.createVNode(vue.unref(Btn), {
19863
+ icon: "add",
19864
+ flat: "",
19865
+ thin: "",
19866
+ class: "bgl-ctrl-num-btn",
19867
+ onClick: increment
19868
+ }),
19869
+ vue.createVNode(vue.unref(Btn), {
19870
+ icon: "remove",
19871
+ flat: "",
19872
+ thin: "",
19873
+ class: "bgl-ctrl-num-btn",
19874
+ onClick: decrement
19875
+ })
19876
+ ])) : vue.createCommentVNode("", true)
19877
+ ], 2)
19878
+ ], 8, _hoisted_1$u)
19879
+ ], 2);
19686
19880
  };
19687
19881
  }
19688
19882
  });
19689
- const JSONInput = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__scopeId", "data-v-1cbaeab2"]]);
19883
+ const NumberInput = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__scopeId", "data-v-7b056cf2"]]);
19690
19884
  const _hoisted_1$t = ["value", "autofocus", "onKeydown", "onPaste"];
19691
19885
  const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
19692
19886
  __name: "OTP",
@@ -20088,14 +20282,14 @@ const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
20088
20282
  vue.unref(from) !== _ctx.min ? (vue.openBlock(), vue.createElementBlock("p", {
20089
20283
  key: 1,
20090
20284
  class: "txt-center txt-12 range-slider-position-txt absolute line-height-1 opacity-0",
20091
- style: vue.normalizeStyle({ marginInlineStart: `calc(${fromPercentage.value}% - 4px)` })
20285
+ style: vue.normalizeStyle({ "--progress": `${fromPercentage.value}` })
20092
20286
  }, [
20093
20287
  vue.createElementVNode("span", null, vue.toDisplayString(vue.unref(from)), 1)
20094
20288
  ], 4)) : vue.createCommentVNode("", true),
20095
20289
  isRange.value && vue.unref(to2) !== _ctx.max ? (vue.openBlock(), vue.createElementBlock("p", {
20096
20290
  key: 2,
20097
20291
  class: "txt-center txt-12 range-slider-position-txt opacity-0 line-height-1 absolute",
20098
- style: vue.normalizeStyle({ marginInlineStart: `calc(${toPercentage.value}% - 12px)` })
20292
+ style: vue.normalizeStyle({ "--progress": `${toPercentage.value}` })
20099
20293
  }, [
20100
20294
  vue.createElementVNode("span", null, vue.toDisplayString(vue.unref(to2)), 1)
20101
20295
  ], 4)) : vue.createCommentVNode("", true)
@@ -20108,7 +20302,7 @@ const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
20108
20302
  };
20109
20303
  }
20110
20304
  });
20111
- const RangeInput = /* @__PURE__ */ _export_sfc(_sfc_main$y, [["__scopeId", "data-v-dae624bd"]]);
20305
+ const RangeInput = /* @__PURE__ */ _export_sfc(_sfc_main$y, [["__scopeId", "data-v-df7a13a5"]]);
20112
20306
  const defaultToolbarConfig = [
20113
20307
  "h2",
20114
20308
  "h3",
@@ -20255,7 +20449,7 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
20255
20449
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$o, [
20256
20450
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.config.map(configToOption).filter(Boolean), (action, index2) => {
20257
20451
  return vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: index2 }, [
20258
- action.name === "insertTable" ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$S), {
20452
+ action.name === "insertTable" ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$T), {
20259
20453
  key: 0,
20260
20454
  placement: "bottom-start",
20261
20455
  thin: "",
@@ -21195,7 +21389,7 @@ const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
21195
21389
  }
21196
21390
  });
21197
21391
  return (_ctx, _cache) => {
21198
- return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$S), {
21392
+ return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$T), {
21199
21393
  ref_key: "dropdown",
21200
21394
  ref: dropdown,
21201
21395
  shown: vue.unref(open),
@@ -21274,7 +21468,7 @@ const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
21274
21468
  height: "25px",
21275
21469
  class: "mx-1 my-1"
21276
21470
  })) : vue.createCommentVNode("", true),
21277
- vue.createVNode(vue.unref(_sfc_main$W), {
21471
+ vue.createVNode(vue.unref(_sfc_main$X), {
21278
21472
  class: "p-05",
21279
21473
  style: vue.normalizeStyle({ width: _ctx.fullWidth ? "100%" : "auto" })
21280
21474
  }, {
@@ -22198,9 +22392,9 @@ function _objectWithoutProperties(source, excluded) {
22198
22392
  return target;
22199
22393
  }
22200
22394
  var version = "1.14.0";
22201
- function userAgent(pattern) {
22395
+ function userAgent(pattern2) {
22202
22396
  if (typeof window !== "undefined" && window.navigator) {
22203
- return !!/* @__PURE__ */ navigator.userAgent.match(pattern);
22397
+ return !!/* @__PURE__ */ navigator.userAgent.match(pattern2);
22204
22398
  }
22205
22399
  }
22206
22400
  var IE11OrLess = userAgent(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i);
@@ -27650,7 +27844,7 @@ var Format = /* @__PURE__ */ function() {
27650
27844
  }
27651
27845
  _createClass$1(Format2, [{
27652
27846
  key: "pattern",
27653
- value: function pattern() {
27847
+ value: function pattern2() {
27654
27848
  return this._format[0];
27655
27849
  }
27656
27850
  }, {
@@ -27702,7 +27896,7 @@ var Type = /* @__PURE__ */ function() {
27702
27896
  }
27703
27897
  _createClass$1(Type2, [{
27704
27898
  key: "pattern",
27705
- value: function pattern() {
27899
+ value: function pattern2() {
27706
27900
  if (this.metadata.v1) return this.type;
27707
27901
  return this.type[0];
27708
27902
  }
@@ -28380,7 +28574,7 @@ function _defineProperties(target, props2) {
28380
28574
  }
28381
28575
  }
28382
28576
  function _createClass(Constructor, protoProps, staticProps) {
28383
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
28577
+ _defineProperties(Constructor.prototype, protoProps);
28384
28578
  Object.defineProperty(Constructor, "prototype", { writable: false });
28385
28579
  return Constructor;
28386
28580
  }
@@ -29432,7 +29626,7 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
29432
29626
  vue.withKeys(reset, ["tab"])
29433
29627
  ]
29434
29628
  }, [
29435
- !computedDropDownOptions.value.hide ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$S), {
29629
+ !computedDropDownOptions.value.hide ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$T), {
29436
29630
  key: 0,
29437
29631
  ref_key: "phoneDropdown",
29438
29632
  ref: phoneDropdown,
@@ -29797,7 +29991,7 @@ const _sfc_main$n = /* @__PURE__ */ vue.defineComponent({
29797
29991
  },
29798
29992
  setup(__props) {
29799
29993
  return (_ctx, _cache) => {
29800
- return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$W), { class: "hide m_grid gap-05 bgl_bottombar px-1 txt14 justify-content-start align-items-center overflow-x" }, {
29994
+ return vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$X), { class: "hide m_grid gap-05 bgl_bottombar px-1 txt14 justify-content-start align-items-center overflow-x" }, {
29801
29995
  default: vue.withCtx(() => [
29802
29996
  vue.renderSlot(_ctx.$slots, "brand", {}, void 0, true),
29803
29997
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.navLinks, (nav, i2) => {
@@ -29898,7 +30092,7 @@ const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
29898
30092
  icon: "keyboard_arrow_right",
29899
30093
  onClick: vue.unref(toggleMenu)
29900
30094
  }, null, 8, ["onClick"]),
29901
- vue.createVNode(vue.unref(_sfc_main$W), { class: "py-1 px-05 h-100 flex column gap-05 rounded relative bg-primary font-light overflow-y" }, {
30095
+ vue.createVNode(vue.unref(_sfc_main$X), { class: "py-1 px-05 h-100 flex column gap-05 rounded relative bg-primary font-light overflow-y" }, {
29902
30096
  default: vue.withCtx(() => [
29903
30097
  !vue.unref(isOpen) || !vue.unref(slots)["brand-open"] ? vue.renderSlot(_ctx.$slots, "brand", { key: 0 }, void 0, true) : vue.createCommentVNode("", true),
29904
30098
  vue.unref(isOpen) ? vue.renderSlot(_ctx.$slots, "brand-open", { key: 1 }, void 0, true) : vue.createCommentVNode("", true),
@@ -30419,7 +30613,7 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
30419
30613
  onClick: _cache[1] || (_cache[1] = () => _ctx.dismissable ? closeModal() : ""),
30420
30614
  onKeydown: vue.withKeys(closeModal, ["esc"])
30421
30615
  }, [
30422
- vue.createVNode(vue.unref(_sfc_main$W), {
30616
+ vue.createVNode(vue.unref(_sfc_main$X), {
30423
30617
  class: "modal",
30424
30618
  style: vue.normalizeStyle({ ...maxWidth.value }),
30425
30619
  onClick: _cache[0] || (_cache[0] = vue.withModifiers(() => {
@@ -30596,7 +30790,7 @@ const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
30596
30790
  "onUpdate:visible": _cache[1] || (_cache[1] = ($event) => emit2("update:visible", $event))
30597
30791
  }, vue.createSlots({
30598
30792
  default: vue.withCtx(() => [
30599
- _ctx.visible ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$O), {
30793
+ _ctx.visible ? (vue.openBlock(), vue.createBlock(vue.unref(_sfc_main$P), {
30600
30794
  key: 0,
30601
30795
  ref_key: "form",
30602
30796
  ref: form,
@@ -31714,7 +31908,7 @@ const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
31714
31908
  row,
31715
31909
  field
31716
31910
  }, void 0, true) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_10$1, [
31717
- vue.createVNode(vue.unref(_sfc_main$P), {
31911
+ vue.createVNode(vue.unref(_sfc_main$Q), {
31718
31912
  class: "embedded-field",
31719
31913
  field,
31720
31914
  modelValue: row,
@@ -32750,7 +32944,7 @@ function openClickHandler(e, el, binding) {
32750
32944
  const lightboxInstance2 = getLightboxInstance();
32751
32945
  if (!lightboxInstance2 || !lightboxInstance2.open) return;
32752
32946
  const open = lightboxInstance2.open;
32753
- const group = item && item.group ? groups[item.group] : void 0;
32947
+ const group = item.group ? groups[item.group] : void 0;
32754
32948
  open(item, group);
32755
32949
  }
32756
32950
  function bindingToItem(binding, el) {
@@ -32790,6 +32984,179 @@ const Lightbox = {
32790
32984
  app.directive("lightbox", lightboxDirective);
32791
32985
  }
32792
32986
  };
32987
+ const DEFAULT_PATTERNS = {
32988
+ pint: { pattern: /\d/ },
32989
+ int: { pattern: /[\d\-]/ },
32990
+ pnum: { pattern: /[\d.]/ },
32991
+ money: { pattern: /[\d.\s,]/ },
32992
+ number: { pattern: /[\d\-.]/ },
32993
+ num: { pattern: /[\d\-.]/ },
32994
+ hex: { pattern: /[0-9a-f]/i },
32995
+ email: { pattern: /[\w.\-@]/ },
32996
+ alpha: { pattern: /[a-z_]/i },
32997
+ alphanum: { pattern: /\w/ },
32998
+ lower: { pattern: /[a-z]/, transform: (v2) => v2.toLowerCase() },
32999
+ upper: { pattern: /[A-Z]/, transform: (v2) => v2.toUpperCase() },
33000
+ slug: { pattern: /[a-z0-9-]/i, transform: (v2) => v2.toLowerCase().replace(/\s/g, "-") }
33001
+ };
33002
+ const stateMap = /* @__PURE__ */ new WeakMap();
33003
+ function getTarget(el) {
33004
+ if (el instanceof HTMLInputElement || el instanceof HTMLTextAreaElement) {
33005
+ return el;
33006
+ }
33007
+ const target = el.querySelector("input, textarea");
33008
+ return target instanceof HTMLInputElement || target instanceof HTMLTextAreaElement ? target : null;
33009
+ }
33010
+ function getModifiers(binding) {
33011
+ const modifiers = Object.keys(binding.modifiers || {});
33012
+ return modifiers.length ? modifiers[modifiers.length - 1] : "";
33013
+ }
33014
+ function getRegex(state2) {
33015
+ if (state2.pattern) return state2.pattern;
33016
+ if (state2.modifier) return DEFAULT_PATTERNS[state2.modifier].pattern || /./;
33017
+ return /./;
33018
+ }
33019
+ function bindEvents(el, target, state2) {
33020
+ state2.keydownEvent = (event) => {
33021
+ onKeydown(event, target, state2);
33022
+ };
33023
+ state2.pasteEvent = (event) => {
33024
+ onPaste(event, target, state2);
33025
+ };
33026
+ target.addEventListener("keydown", state2.keydownEvent);
33027
+ target.addEventListener("paste", state2.pasteEvent);
33028
+ }
33029
+ function unbindEvents(target, state2) {
33030
+ if (state2.keydownEvent) target.removeEventListener("keydown", state2.keydownEvent);
33031
+ if (state2.pasteEvent) target.removeEventListener("paste", state2.pasteEvent);
33032
+ state2.keydownEvent = void 0;
33033
+ state2.pasteEvent = void 0;
33034
+ }
33035
+ function onKeydown(event, target, state2) {
33036
+ if (event.ctrlKey || event.altKey || event.metaKey || event.key === "Tab" || event.key === "Backspace" || event.key === "Delete" || event.key === "ArrowLeft" || event.key === "ArrowRight" || event.key === "ArrowUp" || event.key === "ArrowDown" || event.key === "Enter") return;
33037
+ const regex2 = getRegex(state2);
33038
+ const testKey = event.key;
33039
+ if (!regex2.test(testKey)) {
33040
+ event.preventDefault();
33041
+ } else if (state2.modifier) {
33042
+ const { transform } = DEFAULT_PATTERNS[state2.modifier];
33043
+ if (transform) {
33044
+ event.preventDefault();
33045
+ const transformedValue = transform(testKey);
33046
+ const cursorPos = target.selectionStart ?? 0;
33047
+ const newValue = target.value.slice(0, cursorPos) + transformedValue + target.value.slice(cursorPos);
33048
+ target.value = newValue;
33049
+ target.setSelectionRange(cursorPos + transformedValue.length, cursorPos + transformedValue.length);
33050
+ }
33051
+ }
33052
+ }
33053
+ function onPaste(event, target, state2) {
33054
+ var _a2;
33055
+ const regex2 = getRegex(state2);
33056
+ const clipboardData = ((_a2 = event.clipboardData) == null ? void 0 : _a2.getData("text")) || "";
33057
+ if (!regex2.test(clipboardData)) {
33058
+ event.preventDefault();
33059
+ } else if (state2.modifier) {
33060
+ const { transform } = DEFAULT_PATTERNS[state2.modifier];
33061
+ if (transform) {
33062
+ event.preventDefault();
33063
+ const transformedValue = transform(clipboardData);
33064
+ const cursorPos = target.selectionStart ?? 0;
33065
+ const newValue = target.value.slice(0, cursorPos) + transformedValue + target.value.slice(cursorPos);
33066
+ target.value = newValue;
33067
+ target.setSelectionRange(cursorPos + transformedValue.length, cursorPos + transformedValue.length);
33068
+ }
33069
+ }
33070
+ }
33071
+ const pattern = {
33072
+ beforeMount(el, binding) {
33073
+ const target = getTarget(el);
33074
+ if (!target) return;
33075
+ const state2 = {
33076
+ modifier: getModifiers(binding)
33077
+ };
33078
+ if (typeof binding.value === "object") {
33079
+ state2.pattern = binding.value.pattern || /./;
33080
+ state2.validateOnly = binding.value.validateOnly || false;
33081
+ }
33082
+ stateMap.set(el, state2);
33083
+ bindEvents(el, target, state2);
33084
+ },
33085
+ updated(el, binding) {
33086
+ const target = getTarget(el);
33087
+ if (!target) return;
33088
+ const state2 = stateMap.get(el);
33089
+ if (!state2) return;
33090
+ unbindEvents(target, state2);
33091
+ state2.modifier = getModifiers(binding);
33092
+ if (typeof binding.value === "object") {
33093
+ state2.pattern = binding.value.pattern || /./;
33094
+ state2.validateOnly = binding.value.validateOnly || false;
33095
+ }
33096
+ bindEvents(el, target, state2);
33097
+ },
33098
+ unmounted(el) {
33099
+ const target = getTarget(el);
33100
+ const state2 = stateMap.get(el);
33101
+ if (target && state2) {
33102
+ unbindEvents(target, state2);
33103
+ }
33104
+ stateMap.delete(el);
33105
+ }
33106
+ };
33107
+ const ripple = {
33108
+ mounted(el, binding) {
33109
+ const clickHandler2 = (e) => {
33110
+ const rect = el.getBoundingClientRect();
33111
+ const size2 = Math.max(rect.width, rect.height);
33112
+ const ripple2 = document.createElement("span");
33113
+ ripple2.className = "ripple";
33114
+ Object.assign(ripple2.style, {
33115
+ width: `${size2}px`,
33116
+ height: `${size2}px`,
33117
+ left: `${e.clientX - rect.left - size2 / 2}px`,
33118
+ top: `${e.clientY - rect.top - size2 / 2}px`,
33119
+ position: "absolute",
33120
+ borderRadius: "50%",
33121
+ transform: "scale(0)",
33122
+ background: "rgba(0, 0, 0, 0.3)",
33123
+ pointerEvents: "none",
33124
+ animation: "rippleEffect 0.6s ease-out"
33125
+ });
33126
+ el.appendChild(ripple2);
33127
+ setTimeout(() => {
33128
+ ripple2.remove();
33129
+ }, 600);
33130
+ };
33131
+ el.__rippleClickHandler = clickHandler2;
33132
+ if (binding.value !== false) {
33133
+ if (getComputedStyle(el).position === "static") {
33134
+ el.style.position = "relative";
33135
+ }
33136
+ el.style.overflow = "hidden";
33137
+ el.addEventListener("mousedown", clickHandler2);
33138
+ }
33139
+ },
33140
+ updated(el, binding) {
33141
+ const clickHandler2 = el.__rippleClickHandler;
33142
+ if (binding.value === false) {
33143
+ el.removeEventListener("mousedown", clickHandler2);
33144
+ } else {
33145
+ if (getComputedStyle(el).position === "static") {
33146
+ el.style.position = "relative";
33147
+ }
33148
+ el.style.overflow = "hidden";
33149
+ el.addEventListener("mousedown", clickHandler2);
33150
+ }
33151
+ },
33152
+ unmounted(el) {
33153
+ const clickHandler2 = el.__rippleClickHandler;
33154
+ if (clickHandler2) {
33155
+ el.removeEventListener("mousedown", clickHandler2);
33156
+ delete el.__rippleClickHandler;
33157
+ }
33158
+ }
33159
+ };
32793
33160
  function getBaseField(id, labelOrRest = {}, rest = {}) {
32794
33161
  if (typeof labelOrRest === "object") return { id, ...labelOrRest };
32795
33162
  return { id, label: labelOrRest, ...rest };
@@ -32836,7 +33203,8 @@ function slctField(id, label, options, config) {
32836
33203
  disabled: config == null ? void 0 : config.disabled,
32837
33204
  searchable: config == null ? void 0 : config.searchable,
32838
33205
  multiselect: config == null ? void 0 : config.multiselect,
32839
- onSearch: config == null ? void 0 : config.onSearch
33206
+ onSearch: config == null ? void 0 : config.onSearch,
33207
+ clearable: config == null ? void 0 : config.clearable
32840
33208
  }
32841
33209
  };
32842
33210
  }
@@ -32894,7 +33262,7 @@ function frmRow(...children2) {
32894
33262
  function bglForm(idOrField, ...schema) {
32895
33263
  if (typeof idOrField === "string") {
32896
33264
  return {
32897
- $el: vue.markRaw(_sfc_main$O),
33265
+ $el: vue.markRaw(_sfc_main$P),
32898
33266
  id: idOrField,
32899
33267
  attrs: {
32900
33268
  schema: [idOrField, ...schema]
@@ -32902,7 +33270,7 @@ function bglForm(idOrField, ...schema) {
32902
33270
  };
32903
33271
  }
32904
33272
  return {
32905
- $el: vue.markRaw(_sfc_main$O),
33273
+ $el: vue.markRaw(_sfc_main$P),
32906
33274
  attrs: {
32907
33275
  schema: [idOrField, ...schema]
32908
33276
  }
@@ -32926,6 +33294,14 @@ function findBglFieldById(id, _schema) {
32926
33294
  }
32927
33295
  return void 0;
32928
33296
  }
33297
+ function arrField(id, label, schema, options) {
33298
+ return {
33299
+ label,
33300
+ id,
33301
+ $el: "array",
33302
+ attrs: { schema, delete: true, add: true, ...options }
33303
+ };
33304
+ }
32929
33305
  const state = vue.reactive({
32930
33306
  defaultLang: "",
32931
33307
  availableLangs: [],
@@ -33110,59 +33486,6 @@ const clickOutside = {
33110
33486
  document.removeEventListener("click", el.clickOutsideEvent);
33111
33487
  }
33112
33488
  };
33113
- const ripple = {
33114
- mounted(el, binding) {
33115
- const clickHandler2 = (e) => {
33116
- const rect = el.getBoundingClientRect();
33117
- const size2 = Math.max(rect.width, rect.height);
33118
- const ripple2 = document.createElement("span");
33119
- ripple2.className = "ripple";
33120
- Object.assign(ripple2.style, {
33121
- width: `${size2}px`,
33122
- height: `${size2}px`,
33123
- left: `${e.clientX - rect.left - size2 / 2}px`,
33124
- top: `${e.clientY - rect.top - size2 / 2}px`,
33125
- position: "absolute",
33126
- borderRadius: "50%",
33127
- transform: "scale(0)",
33128
- background: "rgba(0, 0, 0, 0.3)",
33129
- pointerEvents: "none",
33130
- animation: "rippleEffect 0.6s ease-out"
33131
- });
33132
- el.appendChild(ripple2);
33133
- setTimeout(() => {
33134
- ripple2.remove();
33135
- }, 600);
33136
- };
33137
- el.__rippleClickHandler = clickHandler2;
33138
- if (binding.value !== false) {
33139
- if (getComputedStyle(el).position === "static") {
33140
- el.style.position = "relative";
33141
- }
33142
- el.style.overflow = "hidden";
33143
- el.addEventListener("mousedown", clickHandler2);
33144
- }
33145
- },
33146
- updated(el, binding) {
33147
- const clickHandler2 = el.__rippleClickHandler;
33148
- if (binding.value === false) {
33149
- el.removeEventListener("mousedown", clickHandler2);
33150
- } else {
33151
- if (getComputedStyle(el).position === "static") {
33152
- el.style.position = "relative";
33153
- }
33154
- el.style.overflow = "hidden";
33155
- el.addEventListener("mousedown", clickHandler2);
33156
- }
33157
- },
33158
- unmounted(el) {
33159
- const clickHandler2 = el.__rippleClickHandler;
33160
- if (clickHandler2) {
33161
- el.removeEventListener("mousedown", clickHandler2);
33162
- delete el.__rippleClickHandler;
33163
- }
33164
- }
33165
- };
33166
33489
  const bagelInjectionKey = Symbol("bagel");
33167
33490
  const i18nTInjectionKey = Symbol("bagel");
33168
33491
  function useBagel() {
@@ -33180,6 +33503,7 @@ const BagelVue = {
33180
33503
  const bagel = new Bagel({ host: options.host, onError: options.onError });
33181
33504
  app.directive("click-outside", clickOutside);
33182
33505
  app.directive("ripple", ripple);
33506
+ app.directive("pattern", pattern);
33183
33507
  app.use(Lightbox);
33184
33508
  app.use(Gt$1, {
33185
33509
  themes: {
@@ -33675,31 +33999,31 @@ function timeAgo(date2, lang = "en") {
33675
33999
  }
33676
34000
  return selectedLang.justNow;
33677
34001
  }
33678
- exports.Accordion = _sfc_main$12;
34002
+ exports.Accordion = _sfc_main$13;
33679
34003
  exports.AccordionItem = AccordionItem;
33680
- exports.AddressSearch = _sfc_main$10;
34004
+ exports.AddressSearch = _sfc_main$11;
33681
34005
  exports.Alert = Alert;
33682
34006
  exports.Avatar = Avatar;
33683
34007
  exports.Badge = Badge;
33684
- exports.BagelForm = _sfc_main$O;
34008
+ exports.BagelForm = _sfc_main$P;
33685
34009
  exports.BagelVue = BagelVue;
33686
- exports.BglField = _sfc_main$P;
33687
- exports.BglForm = _sfc_main$O;
33688
- exports.BglMultiStepForm = _sfc_main$N;
34010
+ exports.BglField = _sfc_main$Q;
34011
+ exports.BglForm = _sfc_main$P;
34012
+ exports.BglMultiStepForm = _sfc_main$O;
33689
34013
  exports.BglVideo = BglVideo;
33690
34014
  exports.BottomMenu = BottomMenu;
33691
34015
  exports.Btn = Btn;
33692
- exports.Card = _sfc_main$W;
34016
+ exports.Card = _sfc_main$X;
33693
34017
  exports.Carousel = Carousel;
33694
34018
  exports.CheckInput = CheckInput;
33695
34019
  exports.Checkbox = Checkbox;
33696
34020
  exports.CodeEditor = CodeEditor;
33697
- exports.ColorPicker = _sfc_main$I;
34021
+ exports.ColorPicker = _sfc_main$J;
33698
34022
  exports.DataPreview = DataPreview;
33699
- exports.DateInput = _sfc_main$H;
33700
- exports.DatePicker = _sfc_main$G;
33701
- exports.Dropdown = _sfc_main$S;
33702
- exports.FieldArray = _sfc_main$M;
34023
+ exports.DateInput = _sfc_main$I;
34024
+ exports.DatePicker = _sfc_main$H;
34025
+ exports.Dropdown = _sfc_main$T;
34026
+ exports.FieldArray = _sfc_main$N;
33703
34027
  exports.FileUpload = FileUpload;
33704
34028
  exports.Flag = Flag;
33705
34029
  exports.IMAGE_FORMATS = IMAGE_FORMATS;
@@ -33709,7 +34033,7 @@ exports.IframeVue = _sfc_main$o;
33709
34033
  exports.Image = Image$1;
33710
34034
  exports.JSONInput = JSONInput;
33711
34035
  exports.Layout = Layout;
33712
- exports.Lineart = _sfc_main$U;
34036
+ exports.Lineart = _sfc_main$V;
33713
34037
  exports.ListItem = _sfc_main$g;
33714
34038
  exports.ListView = ListView;
33715
34039
  exports.Loading = Loading;
@@ -33720,6 +34044,7 @@ exports.ModalConfirm = _sfc_main$a;
33720
34044
  exports.ModalForm = ModalForm;
33721
34045
  exports.ModalPlugin = ModalPlugin;
33722
34046
  exports.NavBar = NavBar;
34047
+ exports.NumberInput = NumberInput;
33723
34048
  exports.OTP = OTP;
33724
34049
  exports.PageTitle = _sfc_main$7;
33725
34050
  exports.PasswordInput = _sfc_main$B;