@citruslime/ui 2.0.0-beta.8 → 2.0.0-beta.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (24) hide show
  1. package/dist/citrus-lime-ui.es.js +162 -178
  2. package/dist/citrus-lime-ui.umd.js +1 -1
  3. package/dist/src/components/button/cl-ui-button.vue.d.ts +4 -4
  4. package/dist/src/components/card/cl-ui-card.vue.d.ts +0 -24
  5. package/dist/src/components/card/index.d.ts +1 -0
  6. package/dist/src/components/combo-box/cl-ui-combo-box.vue.d.ts +29 -35
  7. package/dist/src/components/combo-box/search-container/cl-ui-combo-box-search.vue.d.ts +12 -12
  8. package/dist/src/components/combo-box/search-container/header/cl-ui-combo-box-header.vue.d.ts +2 -2
  9. package/dist/src/components/combo-box/search-container/selectable/cl-ui-combo-box-selectable.vue.d.ts +3 -3
  10. package/dist/src/components/grid/cell/cl-ui-grid-cell.vue.d.ts +2 -2
  11. package/dist/src/components/grid/cl-ui-grid.vue.d.ts +23 -23
  12. package/dist/src/components/grid/filter/cl-ui-grid-filter.vue.d.ts +1 -1
  13. package/dist/src/components/grid/footer/cl-ui-grid-footer.vue.d.ts +1 -1
  14. package/dist/src/components/grid/header/cl-ui-grid-header.vue.d.ts +10 -10
  15. package/dist/src/components/grid/view-manager/cl-ui-grid-view-manager.vue.d.ts +4 -4
  16. package/dist/src/components/language-switcher/cl-ui-language-switcher.vue.d.ts +4 -4
  17. package/dist/src/components/language-switcher/types.d.ts +1 -1
  18. package/dist/src/components/login/cl-ui-login.vue.d.ts +6 -50
  19. package/dist/src/components/modal/cl-ui-modal.vue.d.ts +7 -7
  20. package/dist/src/components/navigation/cl-ui-navigation.vue.d.ts +11 -11
  21. package/dist/src/components/slider/cl-ui-slider.vue.d.ts +2 -2
  22. package/dist/style.css +1 -1
  23. package/package.json +3 -2
  24. package/dist/src/components/footer/cl-ui-footer.vue.d.ts +0 -22
@@ -34,7 +34,7 @@ import { Icon } from "@iconify/vue";
34
34
  import { defineComponent, ref, watch, resolveComponent, openBlock, createElementBlock, Fragment, renderList, createElementVNode, normalizeClass, withKeys, toDisplayString, withDirectives, renderSlot, vShow, createVNode, reactive, toRefs, nextTick, createBlock, Teleport, unref, mergeProps, computed, onMounted, onUnmounted, createCommentVNode, normalizeProps, guardReactiveProps, withModifiers, withCtx, createTextVNode, vModelText, isRef, watchEffect, normalizeStyle, createSlots, vModelDynamic, Transition, resolveDynamicComponent } from "vue";
35
35
  import { createI18n, useI18n } from "vue-i18n";
36
36
  import Flatpickr from "flatpickr";
37
- const _hoisted_1$n = { class: "cl-border cl-border-grey-2" };
37
+ const _hoisted_1$o = { class: "cl-border cl-border-grey-2" };
38
38
  const _hoisted_2$k = ["tabindex", "onClick", "onKeyup"];
39
39
  const _hoisted_3$f = { class: "cl-bg-white cl-border-b cl-border-grey-2 cl-p-6 cl-text-sm" };
40
40
  const _sfc_main$o = /* @__PURE__ */ defineComponent({
@@ -74,7 +74,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
74
74
  });
75
75
  return (_ctx, _cache) => {
76
76
  const _component_icon = resolveComponent("icon");
77
- return openBlock(), createElementBlock("ul", _hoisted_1$n, [
77
+ return openBlock(), createElementBlock("ul", _hoisted_1$o, [
78
78
  (openBlock(true), createElementBlock(Fragment, null, renderList(itemList.value, (item, index) => {
79
79
  return openBlock(), createElementBlock("li", {
80
80
  key: index,
@@ -552,7 +552,7 @@ function showNotification(notification) {
552
552
  function removeNotification(notification) {
553
553
  notifications.value = notifications.value.filter((n) => n.id !== notification.id);
554
554
  }
555
- const _hoisted_1$m = ["onClick"];
555
+ const _hoisted_1$n = ["onClick"];
556
556
  const _hoisted_2$j = { class: "cl-flex-1 cl-overflow-ellipsis cl-select-none cl-w-64" };
557
557
  const __default__$4 = {
558
558
  inheritAttrs: false
@@ -590,7 +590,7 @@ function setup$4(__props) {
590
590
  size: 16,
591
591
  weight: "bold"
592
592
  })
593
- ], 16, _hoisted_1$m);
593
+ ], 16, _hoisted_1$n);
594
594
  }), 128))
595
595
  ], 2)
596
596
  ], 8, ["to"]);
@@ -603,7 +603,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent(__spreadProps(__spreadValues
603
603
  },
604
604
  setup: setup$4
605
605
  }));
606
- const _hoisted_1$l = { class: "cl-absolute cl-flex cl-flex-wrap cl-h-screen cl-max-h-screen cl-max-w-full cl-min-h-screen cl-min-w-full cl-w-full" };
606
+ const _hoisted_1$m = { class: "cl-absolute cl-flex cl-flex-wrap cl-h-screen cl-max-h-screen cl-max-w-full cl-min-h-screen cl-min-w-full cl-w-full" };
607
607
  const _sfc_main$m = /* @__PURE__ */ defineComponent({
608
608
  props: {
609
609
  removePadding: { default: false }
@@ -612,7 +612,7 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
612
612
  return (_ctx, _cache) => {
613
613
  return openBlock(), createElementBlock(Fragment, null, [
614
614
  createVNode(_sfc_main$n),
615
- createElementVNode("div", _hoisted_1$l, [
615
+ createElementVNode("div", _hoisted_1$m, [
616
616
  renderSlot(_ctx.$slots, "header"),
617
617
  createElementVNode("div", {
618
618
  class: normalizeClass(["cl-content-start cl-flex cl-flex-nowrap cl-items-stretch cl-max-h-screen cl-relative cl-w-full", {
@@ -641,12 +641,12 @@ var _export_sfc = (sfc, props) => {
641
641
  return sfc;
642
642
  };
643
643
  const _sfc_main$l = {};
644
- const _hoisted_1$k = { class: "loading-spinner" };
645
- function _sfc_render$1(_ctx, _cache) {
646
- return openBlock(), createElementBlock("div", _hoisted_1$k);
644
+ const _hoisted_1$l = { class: "loading-spinner" };
645
+ function _sfc_render$2(_ctx, _cache) {
646
+ return openBlock(), createElementBlock("div", _hoisted_1$l);
647
647
  }
648
- var ClUiLoadingSpinner = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$1], ["__scopeId", "data-v-60d7cfd0"]]);
649
- const _hoisted_1$j = ["disabled"];
648
+ var ClUiLoadingSpinner = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$2], ["__scopeId", "data-v-60d7cfd0"]]);
649
+ const _hoisted_1$k = ["disabled"];
650
650
  const __default__$3 = {
651
651
  inheritAttrs: false
652
652
  };
@@ -671,7 +671,7 @@ function setup$3(__props) {
671
671
  disabled: __props.disabled
672
672
  }), [
673
673
  renderSlot(_ctx.$slots, "default")
674
- ], 16, _hoisted_1$j), [
674
+ ], 16, _hoisted_1$k), [
675
675
  [vShow, !__props.loading]
676
676
  ])
677
677
  ], 64);
@@ -1160,7 +1160,7 @@ function getLocale(locale) {
1160
1160
  return result;
1161
1161
  }
1162
1162
  var clUiCalendar_vue_vue_type_style_index_0_lang = "";
1163
- const _hoisted_1$i = ["placeholder", "disabled"];
1163
+ const _hoisted_1$j = ["placeholder", "disabled"];
1164
1164
  const _hoisted_2$i = { class: "cl-absolute cl-bg-white cl-flex cl-right-2 cl-text-grey-4 cl-top-3" };
1165
1165
  const _sfc_main$j = /* @__PURE__ */ defineComponent({
1166
1166
  props: {
@@ -1288,7 +1288,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
1288
1288
  type: "text",
1289
1289
  placeholder: __props.type === "date" ? __props.datePlaceholder : __props.dateTimePlaceholder,
1290
1290
  disabled: __props.disabled
1291
- }), null, 16, _hoisted_1$i),
1291
+ }), null, 16, _hoisted_1$j),
1292
1292
  withDirectives(createVNode(_component_icon, {
1293
1293
  class: "cl-absolute cl-bg-white cl-right-2 cl-text-grey-4 cl-top-3",
1294
1294
  icon: "ph:calendar",
@@ -1321,51 +1321,39 @@ const calendarTypes = [
1321
1321
  "date",
1322
1322
  "datetime"
1323
1323
  ];
1324
+ const _hoisted_1$i = { key: 0 };
1324
1325
  const _sfc_main$i = /* @__PURE__ */ defineComponent({
1325
1326
  props: {
1326
1327
  size: { default: "medium" },
1327
- title: { default: "" },
1328
- hover: { default: false },
1329
- shadowSize: { default: "medium" },
1330
- padImage: { default: false }
1328
+ hover: { default: false }
1331
1329
  },
1332
1330
  setup(__props) {
1333
1331
  return (_ctx, _cache) => {
1334
1332
  return openBlock(), createElementBlock("div", {
1335
- class: normalizeClass(["cl-overflow-hidden cl-relative", {
1336
- "cl-shadow": __props.shadowSize === "small",
1337
- "cl-shadow-md": __props.shadowSize === "medium",
1338
- "cl-shadow-lg": __props.shadowSize === "large",
1339
- "hover:cl-shadow-md": __props.hover && __props.shadowSize === "small",
1340
- "hover:cl-shadow-lg": __props.hover && __props.shadowSize === "medium",
1341
- "hover:cl-shadow-xl": __props.hover && __props.shadowSize === "large"
1333
+ class: normalizeClass(["cl-border-grey-0 cl-overflow-hidden cl-relative cl-rounded-md cl-shadow-lg", {
1334
+ "cl-cursor-pointer hover:cl-shadow-xl hover:cl-border": __props.hover
1342
1335
  }])
1343
1336
  }, [
1344
- _ctx.$slots.image ? (openBlock(), createElementBlock("div", {
1345
- key: 0,
1346
- class: normalizeClass({
1347
- "cl-p-2": __props.size === "small" && __props.padImage,
1348
- "cl-p-4": __props.size === "medium" && __props.padImage,
1349
- "cl-p-8": __props.size === "large" && __props.padImage
1350
- })
1351
- }, [
1337
+ _ctx.$slots.image ? (openBlock(), createElementBlock("div", _hoisted_1$i, [
1352
1338
  renderSlot(_ctx.$slots, "image")
1353
- ], 2)) : createCommentVNode("", true),
1354
- __props.title !== "" ? (openBlock(), createElementBlock("div", {
1339
+ ])) : createCommentVNode("", true),
1340
+ _ctx.$slots.title ? (openBlock(), createElementBlock("div", {
1355
1341
  key: 1,
1356
1342
  class: normalizeClass(["cl-border-grey-2 cl-font-normal", {
1357
- "cl-p-2 cl-text-xl cl-leading-8": __props.size === "small",
1358
- "cl-p-4 cl-text-2xl cl-leading-9": __props.size === "medium",
1359
- "cl-p-8 cl-text-4xl cl-leading-10": __props.size === "large",
1360
- "cl-border-t": _ctx.$slots.image && __props.padImage
1343
+ "cl-p-2 cl-text-2xl cl-leading-8": __props.size === "small",
1344
+ "cl-p-4 cl-text-3xl cl-leading-9": __props.size === "medium",
1345
+ "cl-p-6 cl-text-4xl cl-leading-10": __props.size === "large",
1346
+ "cl-border-t": _ctx.$slots.image
1361
1347
  }])
1362
- }, toDisplayString(__props.title), 3)) : createCommentVNode("", true),
1348
+ }, [
1349
+ renderSlot(_ctx.$slots, "title")
1350
+ ], 2)) : createCommentVNode("", true),
1363
1351
  createElementVNode("div", {
1364
1352
  class: normalizeClass(["cl-border-grey-2", {
1365
1353
  "cl-p-2": __props.size === "small",
1366
1354
  "cl-p-4": __props.size === "medium",
1367
- "cl-p-8": __props.size === "large",
1368
- "cl-border-t": _ctx.$slots.image && __props.padImage && __props.title === "" || __props.title !== ""
1355
+ "cl-p-6": __props.size === "large",
1356
+ "cl-border-t": _ctx.$slots.image || _ctx.$slots.title
1369
1357
  }])
1370
1358
  }, [
1371
1359
  renderSlot(_ctx.$slots, "default")
@@ -1375,7 +1363,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
1375
1363
  class: normalizeClass(["cl-border-grey-2 cl-border-t", {
1376
1364
  "cl-p-2": __props.size === "small",
1377
1365
  "cl-p-4": __props.size === "medium",
1378
- "cl-p-8": __props.size === "large"
1366
+ "cl-p-6": __props.size === "large"
1379
1367
  }])
1380
1368
  }, [
1381
1369
  renderSlot(_ctx.$slots, "footer")
@@ -1384,6 +1372,11 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
1384
1372
  };
1385
1373
  }
1386
1374
  });
1375
+ const cardSizes = [
1376
+ "small",
1377
+ "medium",
1378
+ "large"
1379
+ ];
1387
1380
  const _hoisted_1$h = { class: "cl-align-items-center cl-bg-black cl-bg-opacity-40 cl-bottom-0 cl-fixed cl-flex cl-h-full cl-justify-center cl-left-0 cl-right-0 cl-top-0 cl-w-full cl-z-40" };
1388
1381
  const _hoisted_2$h = { class: "cl-border-b cl-border-grey-2 cl-font-semibold cl-h-11 cl-leading-10 cl-overflow-ellipsis cl-overflow-hidden cl-pl-2 cl-pr-8 cl-text-2xl cl-w-full cl-whitespace-nowrap" };
1389
1382
  const _hoisted_3$e = { class: "cl-p-2 cl-text-right cl-text-sm cl-w-full" };
@@ -1584,6 +1577,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
1584
1577
  }
1585
1578
  watch(() => props.selectedIndex, () => updateHighlight());
1586
1579
  return (_ctx, _cache) => {
1580
+ var _a, _b;
1587
1581
  const _component_icon = resolveComponent("icon");
1588
1582
  return openBlock(), createElementBlock("div", {
1589
1583
  class: normalizeClass(["cl-border-b cl-border-grey-0 cl-border-t cl-cursor-pointer cl-flex cl-p-1", {
@@ -1594,7 +1588,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
1594
1588
  onMousemove: _cache[0] || (_cache[0] = ($event) => onHover(true)),
1595
1589
  onMouseleave: _cache[1] || (_cache[1] = ($event) => onHover(false))
1596
1590
  }, [
1597
- __props.option !== null && __props.option.parentId !== 0 && __props.option.parentId !== void 0 ? (openBlock(), createElementBlock("div", _hoisted_1$f, toDisplayString(unref(displayedParent)), 1)) : createCommentVNode("", true),
1591
+ __props.option !== null && ((_a = __props.option) == null ? void 0 : _a.parentId) !== 0 && ((_b = __props.option) == null ? void 0 : _b.parentId) !== void 0 ? (openBlock(), createElementBlock("div", _hoisted_1$f, toDisplayString(unref(displayedParent)), 1)) : createCommentVNode("", true),
1598
1592
  createElementVNode("div", {
1599
1593
  class: normalizeClass({
1600
1594
  "cl-w-1/2": unref(displayedParent) !== "",
@@ -1616,7 +1610,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
1616
1610
  const _hoisted_1$e = ["onKeyup"];
1617
1611
  const _hoisted_2$e = { class: "cl-flex" };
1618
1612
  const _hoisted_3$d = ["placeholder"];
1619
- const _hoisted_4$c = { key: 5 };
1613
+ const _hoisted_4$d = { key: 5 };
1620
1614
  const _sfc_main$e = /* @__PURE__ */ defineComponent({
1621
1615
  props: {
1622
1616
  loading: { default: false },
@@ -1741,6 +1735,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
1741
1735
  return (_a = container.value) == null ? void 0 : _a.removeEventListener("keydown", onKeyboardShiftTab);
1742
1736
  });
1743
1737
  return (_ctx, _cache) => {
1738
+ var _a;
1744
1739
  const _component_cl_ui_loading_spinner = resolveComponent("cl-ui-loading-spinner");
1745
1740
  return openBlock(), createElementBlock("div", {
1746
1741
  ref: (_value, _refs) => {
@@ -1779,12 +1774,12 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
1779
1774
  text: __props.currentObjectName,
1780
1775
  onClearObject: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("clear-object"))
1781
1776
  }, null, 8, ["show-clear-button", "text"])) : createCommentVNode("", true),
1782
- __props.objectParentType !== "" && __props.results !== null && __props.results.length > 0 && __props.errorMessage === "" ? (openBlock(), createBlock(_sfc_main$g, {
1777
+ __props.objectParentType !== "" && __props.results !== void 0 && __props.results.length > 0 && __props.errorMessage === "" ? (openBlock(), createBlock(_sfc_main$g, {
1783
1778
  key: 1,
1784
1779
  text: __props.objectType,
1785
1780
  "additional-text": __props.objectParentType
1786
1781
  }, null, 8, ["text", "additional-text"])) : createCommentVNode("", true),
1787
- __props.results !== null && __props.results.length === 0 && searchText.value.trim() !== "" && __props.canCreateNewObject === false && __props.errorMessage === "" ? (openBlock(), createBlock(_sfc_main$g, {
1782
+ __props.results !== null && ((_a = __props.results) == null ? void 0 : _a.length) === 0 && searchText.value.trim() !== "" && __props.canCreateNewObject === false && __props.errorMessage === "" ? (openBlock(), createBlock(_sfc_main$g, {
1788
1783
  key: 2,
1789
1784
  text: unref(t)("comboBox.noResults", { object: __props.objectType })
1790
1785
  }, null, 8, ["text"])) : createCommentVNode("", true),
@@ -1802,7 +1797,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
1802
1797
  onCreateObject: createObject,
1803
1798
  onOptionHighlighted: updateSelectedObjectIndex
1804
1799
  }, null, 8, ["text", "selected-index"])) : createCommentVNode("", true),
1805
- __props.errorMessage === "" && __props.results !== null ? (openBlock(), createElementBlock("div", _hoisted_4$c, [
1800
+ __props.errorMessage === "" && __props.results !== null ? (openBlock(), createElementBlock("div", _hoisted_4$d, [
1806
1801
  (openBlock(true), createElementBlock(Fragment, null, renderList(__props.results, (result, index) => {
1807
1802
  return openBlock(), createBlock(_sfc_main$f, {
1808
1803
  key: index,
@@ -1820,12 +1815,9 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
1820
1815
  });
1821
1816
  const _hoisted_1$d = { class: "cl-flex" };
1822
1817
  const _hoisted_2$d = ["placeholder", "disabled"];
1823
- const _hoisted_3$c = {
1824
- key: 0,
1825
- class: "cl-relative cl-right-20"
1826
- };
1827
- const _hoisted_4$b = { class: "cl-absolute cl-flex cl-float-right cl-font-semibold cl-mt-2 cl-text-danger-default cl-text-sm" };
1828
- const _hoisted_5$a = { class: "cl-mt-3" };
1818
+ const _hoisted_3$c = { class: "cl-relative cl-right-20 cl-top-0.5" };
1819
+ const _hoisted_4$c = { class: "cl-absolute cl-flex cl-float-right cl-font-semibold cl-mt-2 cl-text-danger-default cl-text-sm" };
1820
+ const _hoisted_5$b = { class: "cl-mt-3" };
1829
1821
  const _sfc_main$d = /* @__PURE__ */ defineComponent({
1830
1822
  props: {
1831
1823
  loading: { default: false },
@@ -1840,7 +1832,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
1840
1832
  parentObjectCreatedResponse: { default: () => null },
1841
1833
  results: { default: () => [] },
1842
1834
  parentResults: { default: () => [] },
1843
- currentObject: { default: () => null }
1835
+ currentObject: null
1844
1836
  },
1845
1837
  emits: {
1846
1838
  search: null,
@@ -1991,21 +1983,23 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
1991
1983
  "cl-cursor-pointer": __props.disabled === false
1992
1984
  }]),
1993
1985
  type: "text",
1994
- placeholder: unref(t)("comboBox.emptyHint", { object: __props.objectType }),
1986
+ placeholder: unref(t)("comboBox.emptyHintText", { object: __props.objectType }),
1995
1987
  disabled: __props.disabled,
1996
1988
  onFocus: _cache[1] || (_cache[1] = ($event) => toggleDropdown(true))
1997
1989
  }, null, 42, _hoisted_2$d), [
1998
1990
  [vModelText, unref(currentText)]
1999
1991
  ]),
2000
- __props.required && __props.disabled === false ? (openBlock(), createElementBlock("div", _hoisted_3$c, [
2001
- createElementVNode("div", _hoisted_4$b, [
1992
+ withDirectives(createElementVNode("div", _hoisted_3$c, [
1993
+ createElementVNode("div", _hoisted_4$c, [
2002
1994
  createTextVNode(toDisplayString(unref(t)("comboBox.required")) + " ", 1),
2003
1995
  createVNode(_component_icon, {
2004
1996
  class: "cl-ml-1 cl-mt-1",
2005
1997
  icon: "ph:warning"
2006
1998
  })
2007
1999
  ])
2008
- ])) : createCommentVNode("", true),
2000
+ ], 512), [
2001
+ [vShow, __props.required && __props.disabled === false && __props.currentObject === null]
2002
+ ]),
2009
2003
  createElementVNode("div", {
2010
2004
  class: normalizeClass(["cl-border cl-border-grey-1 cl-float-right cl-px-1 cl-py-2.5 cl-text-grey-3 cl-w-min hover:cl-bg-primary-default hover:cl-text-white", {
2011
2005
  "cl-bg-off-white cl-cursor-default hover:cl-bg-off-white hover:cl-text-grey-3": __props.disabled,
@@ -2048,7 +2042,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
2048
2042
  ])
2049
2043
  ]),
2050
2044
  default: withCtx(() => [
2051
- __props.objectParentType !== "" ? (openBlock(), createBlock(_component_cl_ui_combo_box, {
2045
+ __props.objectParentType ? (openBlock(), createBlock(_component_cl_ui_combo_box, {
2052
2046
  key: 0,
2053
2047
  "current-object": parentItem.value,
2054
2048
  "onUpdate:current-object": _cache[4] || (_cache[4] = ($event) => parentItem.value = $event),
@@ -2063,7 +2057,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
2063
2057
  onSearch: searchParent,
2064
2058
  onCreateObject: createParentObject
2065
2059
  }, null, 8, ["current-object", "results", "loading", "object-type", "object-created-response", "can-create-new-object", "can-clear-selected-object", "error-message"])) : createCommentVNode("", true),
2066
- createElementVNode("label", _hoisted_5$a, toDisplayString(unref(t)("comboBox.createProperty")), 1),
2060
+ createElementVNode("label", _hoisted_5$b, toDisplayString(unref(t)("comboBox.createProperty")), 1),
2067
2061
  withDirectives(createElementVNode("input", {
2068
2062
  "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => objectToCreateValue.value = $event),
2069
2063
  type: "text"
@@ -2083,37 +2077,34 @@ function isComboBoxItem(objectToTest) {
2083
2077
  function isComboBoxCreateRequest(objectToTest) {
2084
2078
  return typeof objectToTest.name === "string";
2085
2079
  }
2080
+ const _sfc_main$c = {};
2086
2081
  const _hoisted_1$c = { class: "cl-flex cl-flex-wrap cl-left-0 cl-w-full" };
2087
2082
  const _hoisted_2$c = {
2088
2083
  key: 0,
2089
2084
  class: "cl-w-full"
2090
2085
  };
2091
- const _hoisted_3$b = { class: "cl-leading-10 cl-text-sm cl-w-full" };
2092
- const _sfc_main$c = /* @__PURE__ */ defineComponent({
2093
- props: {
2094
- leftText: { default: "" },
2095
- rightText: { default: "" }
2096
- },
2097
- setup(__props) {
2098
- return (_ctx, _cache) => {
2099
- return openBlock(), createElementBlock("div", _hoisted_1$c, [
2100
- _ctx.$slots.default ? (openBlock(), createElementBlock("div", _hoisted_2$c, [
2101
- renderSlot(_ctx.$slots, "default")
2102
- ])) : createCommentVNode("", true),
2103
- withDirectives(createElementVNode("div", _hoisted_3$b, [
2104
- withDirectives(createElementVNode("strong", { class: "cl-float-left" }, toDisplayString(__props.leftText), 513), [
2105
- [vShow, __props.leftText !== ""]
2106
- ]),
2107
- withDirectives(createElementVNode("strong", { class: "cl-float-right" }, toDisplayString(__props.rightText), 513), [
2108
- [vShow, __props.rightText !== ""]
2109
- ])
2110
- ], 512), [
2111
- [vShow, __props.leftText !== "" || __props.rightText !== ""]
2112
- ])
2113
- ]);
2114
- };
2115
- }
2116
- });
2086
+ const _hoisted_3$b = {
2087
+ key: 1,
2088
+ class: "cl-leading-10 cl-text-sm cl-w-full"
2089
+ };
2090
+ const _hoisted_4$b = { class: "cl-float-left" };
2091
+ const _hoisted_5$a = { class: "cl-float-right" };
2092
+ function _sfc_render$1(_ctx, _cache) {
2093
+ return openBlock(), createElementBlock("div", _hoisted_1$c, [
2094
+ _ctx.$slots.default ? (openBlock(), createElementBlock("div", _hoisted_2$c, [
2095
+ renderSlot(_ctx.$slots, "default")
2096
+ ])) : createCommentVNode("", true),
2097
+ _ctx.$slots.left || _ctx.$slots.right ? (openBlock(), createElementBlock("div", _hoisted_3$b, [
2098
+ createElementVNode("span", _hoisted_4$b, [
2099
+ renderSlot(_ctx.$slots, "left")
2100
+ ]),
2101
+ createElementVNode("span", _hoisted_5$a, [
2102
+ renderSlot(_ctx.$slots, "right")
2103
+ ])
2104
+ ])) : createCommentVNode("", true)
2105
+ ]);
2106
+ }
2107
+ var clUiFooter = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["render", _sfc_render$1]]);
2117
2108
  const _hoisted_1$b = { class: "cl-mr-2 lg:cl-hidden" };
2118
2109
  const _hoisted_2$b = { class: "cl-mr-2 lg:cl-hidden" };
2119
2110
  const _hoisted_3$a = ["checked"];
@@ -2624,8 +2615,8 @@ const _hoisted_12$3 = { class: "cl-flex cl-flex-wrap cl-mb-2 cl-text-sm cl-w-ful
2624
2615
  const _hoisted_13$3 = { class: "cl-mb-2 cl-text-grey-3 cl-w-full lg:cl-mb-0 lg:cl-mr-2 lg:cl-w-auto" };
2625
2616
  const _hoisted_14$2 = ["onClick"];
2626
2617
  const _hoisted_15$2 = { class: "cl-mb-2 cl-w-full lg:cl-p-2 md:cl-mb-0 md:cl-w-auto" };
2627
- const _hoisted_16$2 = { class: "cl-block cl-mb-2 cl-text-grey-3 cl-w-full lg:cl-inline-block lg:cl-mb-0 lg:cl-mr-1 lg:cl-w-auto" };
2628
- const _hoisted_17$2 = { class: "cl-block lg:cl-inline-block" };
2618
+ const _hoisted_16$1 = { class: "cl-block cl-mb-2 cl-text-grey-3 cl-w-full lg:cl-inline-block lg:cl-mb-0 lg:cl-mr-1 lg:cl-w-auto" };
2619
+ const _hoisted_17$1 = { class: "cl-block lg:cl-inline-block" };
2629
2620
  const _sfc_main$9 = /* @__PURE__ */ defineComponent({
2630
2621
  props: {
2631
2622
  request: null,
@@ -2764,8 +2755,8 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
2764
2755
  }), 64))
2765
2756
  ]),
2766
2757
  createElementVNode("ul", _hoisted_15$2, [
2767
- createElementVNode("li", _hoisted_16$2, toDisplayString(unref(t)("grid.totalRecords")), 1),
2768
- createElementVNode("li", _hoisted_17$2, toDisplayString(unref(n)(__props.data.totalRecords, unref(NumberFormat).INTEGER)), 1)
2758
+ createElementVNode("li", _hoisted_16$1, toDisplayString(unref(t)("grid.totalRecords")), 1),
2759
+ createElementVNode("li", _hoisted_17$1, toDisplayString(unref(n)(__props.data.totalRecords, unref(NumberFormat).INTEGER)), 1)
2769
2760
  ])
2770
2761
  ])
2771
2762
  ])) : createCommentVNode("", true);
@@ -2996,8 +2987,8 @@ const _hoisted_12$1 = { class: "cl-overflow-auto cl-w-full" };
2996
2987
  const _hoisted_13$1 = { class: "cl-min-w-full cl-table-fixed" };
2997
2988
  const _hoisted_14$1 = { class: "cl-hidden lg:cl-table-column-group" };
2998
2989
  const _hoisted_15$1 = { class: "cl-hidden lg:cl-table-header-group" };
2999
- const _hoisted_16$1 = ["onClick"];
3000
- const _hoisted_17$1 = { key: 1 };
2990
+ const _hoisted_16 = ["onClick"];
2991
+ const _hoisted_17 = { key: 1 };
3001
2992
  const _hoisted_18 = { key: 0 };
3002
2993
  const _hoisted_19 = { key: 1 };
3003
2994
  const _hoisted_20 = ["colspan"];
@@ -3253,7 +3244,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
3253
3244
  }, null, 512), [
3254
3245
  [vShow, unref(currentRequest).sort !== null && unref(currentRequest).sort.sortOnColumn === column.field && unref(currentRequest).sort.sortByAscending === false]
3255
3246
  ])
3256
- ], 8, _hoisted_16$1)) : (openBlock(), createElementBlock("span", _hoisted_17$1, toDisplayString(column.caption), 1))
3247
+ ], 8, _hoisted_16)) : (openBlock(), createElementBlock("span", _hoisted_17, toDisplayString(column.caption), 1))
3257
3248
  ], 4);
3258
3249
  }), 128))
3259
3250
  ]),
@@ -3420,8 +3411,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
3420
3411
  }
3421
3412
  });
3422
3413
  function isLanguageLocaleFormat(language) {
3423
- const localeRegex = /[a-z]{2}-[A-Z]{2}/gm;
3424
- const localeCodeFormatCorrect = localeRegex.test(language.localeCode);
3414
+ const localeCodeFormatCorrect = /[a-z]{2}-[A-Z]{2}/gm.test(language.localeCode);
3425
3415
  return localeCodeFormatCorrect;
3426
3416
  }
3427
3417
  function isLanguageArray(arrayToTest) {
@@ -3437,20 +3427,19 @@ function isLanguageArray(arrayToTest) {
3437
3427
  return result;
3438
3428
  }
3439
3429
  function isLanguage(objectToTest) {
3440
- return typeof objectToTest.name === "string" && typeof objectToTest.nativeName === "string" && typeof objectToTest.localeCode === "string" && typeof objectToTest.svgCode === "string";
3430
+ return typeof objectToTest.name === "string" && typeof objectToTest.nativeName === "string" && typeof objectToTest.localeCode === "string" && typeof objectToTest.icon === "string";
3441
3431
  }
3442
- var clUiLanguageSwitcher_vue_vue_type_style_index_0_scoped_true_lang = "";
3443
3432
  const _hoisted_1$3 = {
3444
3433
  key: 0,
3445
3434
  class: "cl-flex cl-relative cl-select-none cl-w-auto cl-z-30"
3446
3435
  };
3447
- const _hoisted_2$3 = { class: "cl-font-semibold cl-hidden cl-mr-4 cl-text-white cl-text-xs lg:cl-inline-block" };
3448
- const _hoisted_3$3 = { class: "cl-absolute cl-bg-white cl-overflow-hidden cl-right-0 cl-rounded cl-shadow-xl cl-top-6 cl-z-30" };
3436
+ const _hoisted_2$3 = { class: "cl-font-semibold cl-hidden cl-mr-4 cl-text-xs lg:cl-inline-block" };
3437
+ const _hoisted_3$3 = { class: "cl-absolute cl-bg-white cl-border cl-border-grey-0 cl-overflow-hidden cl-right-0 cl-rounded cl-shadow-xl cl-text-black cl-top-6 cl-z-30" };
3449
3438
  const _hoisted_4$3 = ["data-localename", "data-localecode", "onClick"];
3450
3439
  const _hoisted_5$3 = { class: "cl-hidden cl-ml-2 cl-text-xs lg:cl-inline-flex" };
3451
3440
  const _sfc_main$3 = /* @__PURE__ */ defineComponent({
3452
3441
  props: {
3453
- supportedLocales: null,
3442
+ supportedLanguages: null,
3454
3443
  disabled: { default: false }
3455
3444
  },
3456
3445
  setup(__props) {
@@ -3459,9 +3448,9 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
3459
3448
  const localeToggleOpen = ref(false);
3460
3449
  const selectedLanguage = computed(() => {
3461
3450
  var _a;
3462
- return (_a = props.supportedLocales.find((l) => l.localeCode === locale.value)) != null ? _a : null;
3451
+ return (_a = props.supportedLanguages.find((l) => l.localeCode === locale.value)) != null ? _a : null;
3463
3452
  });
3464
- const validLanguages = computed(() => props.supportedLocales.filter((e) => isLanguageLocaleFormat(e)).sort((a, b) => a.nativeName > b.nativeName ? 1 : b.nativeName > a.nativeName ? -1 : 0));
3453
+ const validLanguages = computed(() => props.supportedLanguages.filter((e) => isLanguageLocaleFormat(e)).sort((a, b) => a.nativeName > b.nativeName ? 1 : b.nativeName > a.nativeName ? -1 : 0));
3465
3454
  function toggleLocaleSwitcher() {
3466
3455
  if (!props.disabled) {
3467
3456
  localeToggleOpen.value = !localeToggleOpen.value;
@@ -3473,6 +3462,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
3473
3462
  }
3474
3463
  });
3475
3464
  return (_ctx, _cache) => {
3465
+ const _component_icon = resolveComponent("icon");
3476
3466
  return unref(selectedLanguage) !== null && unref(isLanguageLocaleFormat)(unref(selectedLanguage)) ? (openBlock(), createElementBlock("div", _hoisted_1$3, [
3477
3467
  createElementVNode("div", {
3478
3468
  class: normalizeClass(["cl-flex cl-items-center", {
@@ -3480,33 +3470,29 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
3480
3470
  }]),
3481
3471
  onClick: toggleLocaleSwitcher
3482
3472
  }, [
3483
- createElementVNode("span", {
3484
- class: "cl-inline-block cl-mr-3 flag-svg",
3485
- style: normalizeStyle({
3486
- "background": `url('${unref(selectedLanguage).svgCode}')`
3487
- })
3488
- }, null, 4),
3473
+ createVNode(_component_icon, {
3474
+ class: "cl-inline-block cl-mr-3",
3475
+ icon: unref(selectedLanguage).icon
3476
+ }, null, 8, ["icon"]),
3489
3477
  createElementVNode("span", _hoisted_2$3, toDisplayString(unref(selectedLanguage).nativeName), 1)
3490
3478
  ], 2),
3491
3479
  withDirectives(createElementVNode("div", _hoisted_3$3, [
3492
- (openBlock(true), createElementBlock(Fragment, null, renderList(unref(validLanguages), (location, index) => {
3480
+ (openBlock(true), createElementBlock(Fragment, null, renderList(unref(validLanguages), (language, index) => {
3493
3481
  return openBlock(), createElementBlock("div", {
3494
3482
  key: index,
3495
3483
  class: "cl-border-b cl-border-grey-0 cl-content-center cl-cursor-pointer cl-flex cl-items-center cl-p-2 cl-text-center cl-transition-colors hover:cl-bg-grey-0 last-child:cl-border-b-0 last:cl-border-b-0",
3496
- "data-localename": location.name,
3497
- "data-localecode": location.localeCode,
3484
+ "data-localename": language.name,
3485
+ "data-localecode": language.localeCode,
3498
3486
  onClick: ($event) => {
3499
- locale.value = location.localeCode;
3487
+ locale.value = language.localeCode;
3500
3488
  toggleLocaleSwitcher();
3501
3489
  }
3502
3490
  }, [
3503
- createElementVNode("span", {
3504
- class: "cl-inline-block cl-mr-3 flag-svg",
3505
- style: normalizeStyle({
3506
- "background": `url('${location.svgCode}')`
3507
- })
3508
- }, null, 4),
3509
- createElementVNode("span", _hoisted_5$3, toDisplayString(location.nativeName), 1)
3491
+ createVNode(_component_icon, {
3492
+ class: "cl-inline-block cl-mr-3",
3493
+ icon: language.icon
3494
+ }, null, 8, ["icon"]),
3495
+ createElementVNode("span", _hoisted_5$3, toDisplayString(language.nativeName), 1)
3510
3496
  ], 8, _hoisted_4$3);
3511
3497
  }), 128))
3512
3498
  ], 512), [
@@ -3516,30 +3502,25 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
3516
3502
  };
3517
3503
  }
3518
3504
  });
3519
- var ClUiLanguageSwitcher = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-11d1b124"]]);
3520
3505
  var clUiLogin_vue_vue_type_style_index_0_scoped_true_lang = "";
3521
3506
  const _hoisted_1$2 = { class: "cl-bg-secondary-default cl-flex cl-flex-wrap cl-opacity-95 cl-p-10 cl-pb-12 cl-w-full" };
3522
3507
  const _hoisted_2$2 = { class: "cl-pb-8 cl-w-full md:cl-flex-1 md:cl-pb-0" };
3523
- const _hoisted_3$2 = ["src"];
3524
- const _hoisted_4$2 = { class: "cl-content-center cl-flex cl-items-center cl-pb-2 cl-w-auto md:cl-pb-0 md:cl-pr-2 md:cl-w-auto" };
3525
- const _hoisted_5$2 = { class: "cl-pb-2 cl-w-full md:cl-pb-0 md:cl-pr-2 md:cl-w-1/4" };
3526
- const _hoisted_6$2 = { class: "cl-inline cl-relative cl-text-grey-4 cl-w-full" };
3527
- const _hoisted_7$1 = ["data-valid", "placeholder"];
3528
- const _hoisted_8 = { class: "cl-text-grey-3 cl-text-sm" };
3529
- const _hoisted_9 = { class: "cl-flex cl-mt-2" };
3530
- const _hoisted_10 = { class: "cl-align-middle cl-inline-block cl-ml-4" };
3531
- const _hoisted_11 = { class: "cl-flex cl-mt-2" };
3532
- const _hoisted_12 = { class: "cl-align-middle cl-inline-block cl-ml-4" };
3533
- const _hoisted_13 = { class: "cl-pb-2 cl-w-full md:cl-pb-0 md:cl-pr-2 md:cl-w-1/4" };
3534
- const _hoisted_14 = { class: "cl-inline cl-relative cl-text-grey-4 cl-w-full" };
3535
- const _hoisted_15 = ["type", "data-valid", "placeholder"];
3536
- const _hoisted_16 = { class: "cl-w-full md:cl-w-1/4" };
3537
- const _hoisted_17 = { class: "cl-emphasis-danger cl-mt-4 cl-p-4 cl-text-sm cl-w-full" };
3508
+ const _hoisted_3$2 = { class: "cl-mt-2 cl-pb-2 cl-text-white cl-w-auto md:cl-pb-0 md:cl-pr-2" };
3509
+ const _hoisted_4$2 = { class: "cl-pb-2 cl-w-full md:cl-pb-0 md:cl-pr-2 md:cl-w-1/4" };
3510
+ const _hoisted_5$2 = { class: "cl-inline cl-relative cl-text-grey-4 cl-w-full" };
3511
+ const _hoisted_6$2 = ["data-valid", "placeholder"];
3512
+ const _hoisted_7$1 = { class: "cl-text-grey-3 cl-text-sm" };
3513
+ const _hoisted_8 = { class: "cl-flex cl-mt-2" };
3514
+ const _hoisted_9 = { class: "cl-align-middle cl-inline-block cl-ml-2" };
3515
+ const _hoisted_10 = { class: "cl-flex cl-mt-2" };
3516
+ const _hoisted_11 = { class: "cl-align-middle cl-inline-block cl-ml-2" };
3517
+ const _hoisted_12 = { class: "cl-pb-2 cl-w-full md:cl-pb-0 md:cl-pl-1 md:cl-pr-2 md:cl-w-1/4" };
3518
+ const _hoisted_13 = { class: "cl-inline cl-relative cl-text-grey-4 cl-w-full" };
3519
+ const _hoisted_14 = ["type", "data-valid", "placeholder"];
3520
+ const _hoisted_15 = { class: "cl-emphasis-danger cl-mt-4 cl-p-4 cl-text-sm cl-w-full" };
3538
3521
  const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3539
3522
  props: {
3540
3523
  errors: { default: () => [] },
3541
- supportedLocales: null,
3542
- logo: null,
3543
3524
  backgroundImage: null,
3544
3525
  loading: { default: false }
3545
3526
  },
@@ -3552,39 +3533,37 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3552
3533
  const username = ref("");
3553
3534
  const password = ref("");
3554
3535
  const passwordFieldType = ref("password");
3555
- const usernameValid = ref(false);
3536
+ const usernameValid = computed(() => /[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)/gi.test(username.value));
3556
3537
  function login() {
3557
- emit("login", {
3538
+ const authentication = {
3558
3539
  username: username.value,
3559
3540
  password: password.value
3560
- });
3541
+ };
3542
+ emit("login", authentication);
3561
3543
  }
3562
3544
  function clearErrors() {
3563
3545
  emit("update:errors", []);
3564
3546
  }
3565
- watch(username, () => {
3566
- const emailRegex = /[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)/gi;
3567
- usernameValid.value = emailRegex.test(username.value);
3568
- });
3569
3547
  return (_ctx, _cache) => {
3548
+ var _a;
3570
3549
  const _component_icon = resolveComponent("icon");
3571
3550
  return openBlock(), createElementBlock("div", {
3572
- class: "cl-bg-cover cl-bg-left-bottom cl-h-screen",
3551
+ class: "cl-bg-center cl-bg-cover cl-h-screen md:cl-bg-left-bottom",
3573
3552
  style: normalizeStyle({
3574
3553
  "background-image": `url('${__props.backgroundImage}')`
3575
3554
  })
3576
3555
  }, [
3577
3556
  createElementVNode("form", _hoisted_1$2, [
3578
3557
  createElementVNode("div", _hoisted_2$2, [
3579
- createElementVNode("img", { src: __props.logo }, null, 8, _hoisted_3$2)
3558
+ renderSlot(_ctx.$slots, "logo", {}, void 0, true)
3580
3559
  ]),
3581
- createElementVNode("div", _hoisted_4$2, [
3582
- createVNode(ClUiLanguageSwitcher, { "supported-locales": __props.supportedLocales }, null, 8, ["supported-locales"])
3560
+ createElementVNode("div", _hoisted_3$2, [
3561
+ renderSlot(_ctx.$slots, "language-switcher", {}, void 0, true)
3583
3562
  ]),
3584
- createElementVNode("div", _hoisted_5$2, [
3585
- createElementVNode("div", _hoisted_6$2, [
3563
+ createElementVNode("div", _hoisted_4$2, [
3564
+ createElementVNode("div", _hoisted_5$2, [
3586
3565
  createVNode(_component_icon, {
3587
- class: "cl-absolute cl-left-3 cl-top-0.5",
3566
+ class: "cl-absolute cl-left-3 cl-top-2",
3588
3567
  icon: "ph:user",
3589
3568
  size: 18
3590
3569
  }),
@@ -3592,11 +3571,11 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3592
3571
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => username.value = $event),
3593
3572
  class: "!cl-pb-1 !cl-pl-9 cl-w-full",
3594
3573
  type: "email",
3595
- "data-valid": usernameValid.value,
3574
+ "data-valid": unref(usernameValid),
3596
3575
  placeholder: unref(t)("login.email"),
3597
3576
  autocomplete: "username",
3598
3577
  onInput: clearErrors
3599
- }, null, 40, _hoisted_7$1), [
3578
+ }, null, 40, _hoisted_6$2), [
3600
3579
  [
3601
3580
  vModelText,
3602
3581
  username.value,
@@ -3605,40 +3584,40 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3605
3584
  ]
3606
3585
  ])
3607
3586
  ]),
3608
- withDirectives(createElementVNode("div", _hoisted_8, [
3609
- withDirectives(createElementVNode("div", _hoisted_9, [
3587
+ withDirectives(createElementVNode("div", _hoisted_7$1, [
3588
+ withDirectives(createElementVNode("div", _hoisted_8, [
3610
3589
  createVNode(_component_icon, {
3611
- class: "cl-text-primary-default",
3590
+ class: "cl-mt-1 cl-text-primary-default",
3612
3591
  icon: "ph:check",
3613
3592
  size: 16
3614
3593
  }),
3615
- createElementVNode("em", _hoisted_10, toDisplayString(unref(t)("login.validEmail")), 1)
3594
+ createElementVNode("em", _hoisted_9, toDisplayString(unref(t)("login.validEmail")), 1)
3616
3595
  ], 512), [
3617
- [vShow, usernameValid.value]
3596
+ [vShow, unref(usernameValid)]
3618
3597
  ]),
3619
- withDirectives(createElementVNode("div", _hoisted_11, [
3598
+ withDirectives(createElementVNode("div", _hoisted_10, [
3620
3599
  createVNode(_component_icon, {
3621
- class: "cl-text-danger-default",
3600
+ class: "cl-mt-1 cl-text-danger-default",
3622
3601
  icon: "ph:x",
3623
3602
  size: 16
3624
3603
  }),
3625
- createElementVNode("em", _hoisted_12, toDisplayString(unref(t)("login.invalidEmail")), 1)
3604
+ createElementVNode("em", _hoisted_11, toDisplayString(unref(t)("login.invalidEmail")), 1)
3626
3605
  ], 512), [
3627
- [vShow, !usernameValid.value]
3606
+ [vShow, !unref(usernameValid)]
3628
3607
  ])
3629
3608
  ], 512), [
3630
3609
  [vShow, username.value !== ""]
3631
3610
  ])
3632
3611
  ]),
3633
- createElementVNode("div", _hoisted_13, [
3634
- createElementVNode("div", _hoisted_14, [
3612
+ createElementVNode("div", _hoisted_12, [
3613
+ createElementVNode("div", _hoisted_13, [
3635
3614
  createVNode(_component_icon, {
3636
- class: "cl-absolute cl-left-3 cl-top-0.5",
3615
+ class: "cl-absolute cl-left-3 cl-top-2",
3637
3616
  icon: "ph:lock",
3638
3617
  size: 18
3639
3618
  }),
3640
3619
  withDirectives(createVNode(_component_icon, {
3641
- class: "cl-absolute cl-cursor-pointer cl-right-3 cl-top-0.5",
3620
+ class: "cl-absolute cl-cursor-pointer cl-right-3 cl-top-2",
3642
3621
  icon: "ph:eye",
3643
3622
  size: 18,
3644
3623
  onClick: _cache[1] || (_cache[1] = ($event) => passwordFieldType.value = "text")
@@ -3646,7 +3625,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3646
3625
  [vShow, passwordFieldType.value === "password"]
3647
3626
  ]),
3648
3627
  withDirectives(createVNode(_component_icon, {
3649
- class: "cl-absolute cl-cursor-pointer cl-right-3 cl-top-0.5",
3628
+ class: "cl-absolute cl-cursor-pointer cl-right-3 cl-top-2",
3650
3629
  icon: "ph:eye-slash",
3651
3630
  size: 18,
3652
3631
  onClick: _cache[2] || (_cache[2] = ($event) => passwordFieldType.value = "password")
@@ -3661,17 +3640,21 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3661
3640
  placeholder: unref(t)("login.password"),
3662
3641
  autocomplete: "current-password",
3663
3642
  onInput: clearErrors
3664
- }, null, 40, _hoisted_15), [
3643
+ }, null, 40, _hoisted_14), [
3665
3644
  [vModelDynamic, password.value]
3666
3645
  ])
3667
3646
  ])
3668
3647
  ]),
3669
- createElementVNode("div", _hoisted_16, [
3648
+ createElementVNode("div", {
3649
+ class: normalizeClass(["cl-w-full md:cl-pl-1 md:cl-w-1/4", {
3650
+ "cl-mt-1": __props.loading
3651
+ }])
3652
+ }, [
3670
3653
  createVNode(_sfc_main$k, {
3671
3654
  class: "cl-w-full",
3672
3655
  colour: "blue",
3673
3656
  loading: __props.loading,
3674
- disabled: !usernameValid.value || password.value === "",
3657
+ disabled: !unref(usernameValid) || password.value === "",
3675
3658
  onClick: withModifiers(login, ["prevent"])
3676
3659
  }, {
3677
3660
  default: withCtx(() => [
@@ -3679,8 +3662,8 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3679
3662
  ]),
3680
3663
  _: 1
3681
3664
  }, 8, ["loading", "disabled", "onClick"])
3682
- ]),
3683
- withDirectives(createElementVNode("span", _hoisted_17, [
3665
+ ], 2),
3666
+ withDirectives(createElementVNode("span", _hoisted_15, [
3684
3667
  (openBlock(true), createElementBlock(Fragment, null, renderList(__props.errors, (error, index) => {
3685
3668
  return openBlock(), createElementBlock("div", {
3686
3669
  key: index,
@@ -3688,14 +3671,14 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3688
3671
  }, toDisplayString(error), 1);
3689
3672
  }), 128))
3690
3673
  ], 512), [
3691
- [vShow, __props.errors.length]
3674
+ [vShow, (_a = __props.errors) == null ? void 0 : _a.length]
3692
3675
  ])
3693
3676
  ])
3694
3677
  ], 4);
3695
3678
  };
3696
3679
  }
3697
3680
  });
3698
- var clUiLogin = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-593b0c43"]]);
3681
+ var clUiLogin = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-a300f6dc"]]);
3699
3682
  var clUiNavigation_vue_vue_type_style_index_0_scoped_true_lang = "";
3700
3683
  const _hoisted_1$1 = { class: "cl-flex cl-flex-nowrap cl-h-full cl-max-h-full cl-min-h-full cl-min-w-20 cl-relative cl-self-start cl-w-auto" };
3701
3684
  const _hoisted_2$1 = {
@@ -3935,10 +3918,11 @@ var components = /* @__PURE__ */ Object.freeze({
3935
3918
  clUiCalendar: _sfc_main$j,
3936
3919
  calendarTypes,
3937
3920
  clUiCard: _sfc_main$i,
3921
+ cardSizes,
3938
3922
  clUiComboBox: _sfc_main$d,
3939
3923
  isComboBoxItem,
3940
3924
  isComboBoxCreateRequest,
3941
- clUiFooter: _sfc_main$c,
3925
+ clUiFooter,
3942
3926
  clUiGrid,
3943
3927
  gridColumnTypes,
3944
3928
  isGridColumn,
@@ -3952,7 +3936,7 @@ var components = /* @__PURE__ */ Object.freeze({
3952
3936
  isFilterResponse,
3953
3937
  clUiHeader,
3954
3938
  clUiHeaderMenu: _sfc_main$4,
3955
- clUiLanguageSwitcher: ClUiLanguageSwitcher,
3939
+ clUiLanguageSwitcher: _sfc_main$3,
3956
3940
  isLanguageLocaleFormat,
3957
3941
  isLanguageArray,
3958
3942
  clUiLoadingSpinner: ClUiLoadingSpinner,
@@ -3973,4 +3957,4 @@ const install = (app) => {
3973
3957
  app.component(name, component);
3974
3958
  });
3975
3959
  };
3976
- export { DateFormat, FilterOperation, NumberFormat, buttonColours, buttonSizes, calendarTypes, _sfc_main$o as clUiAccordion, _sfc_main$m as clUiApp, _sfc_main$k as clUiButton, _sfc_main$j as clUiCalendar, _sfc_main$i as clUiCard, _sfc_main$d as clUiComboBox, _sfc_main$c as clUiFooter, clUiGrid, clUiHeader, _sfc_main$4 as clUiHeaderMenu, ClUiLanguageSwitcher as clUiLanguageSwitcher, ClUiLoadingSpinner as clUiLoadingSpinner, clUiLogin, _sfc_main$h as clUiModal, clUiNavigation, _sfc_main$n as clUiNotification, clUiSlider, compareByProperty, copy, datetimeFormats, install as default, filterMethodTypes, generateStringId, getParamsByName, gridColumnTypes, i18n, isComboBoxCreateRequest, isComboBoxItem, isFilterRequest, isFilterResponse, isGridColumn, isGridColumnArray, isLanguageArray, isLanguageLocaleFormat, messages, nameOf, numberFormats, setCurrentLocale, setLocaleDateTimeFormats, setLocaleMessages, setLocaleNumberFormats, showNotification, stringExtensionsEnabled, stringFormats, useDebouncer };
3960
+ export { DateFormat, FilterOperation, NumberFormat, buttonColours, buttonSizes, calendarTypes, cardSizes, _sfc_main$o as clUiAccordion, _sfc_main$m as clUiApp, _sfc_main$k as clUiButton, _sfc_main$j as clUiCalendar, _sfc_main$i as clUiCard, _sfc_main$d as clUiComboBox, clUiFooter, clUiGrid, clUiHeader, _sfc_main$4 as clUiHeaderMenu, _sfc_main$3 as clUiLanguageSwitcher, ClUiLoadingSpinner as clUiLoadingSpinner, clUiLogin, _sfc_main$h as clUiModal, clUiNavigation, _sfc_main$n as clUiNotification, clUiSlider, compareByProperty, copy, datetimeFormats, install as default, filterMethodTypes, generateStringId, getParamsByName, gridColumnTypes, i18n, isComboBoxCreateRequest, isComboBoxItem, isFilterRequest, isFilterResponse, isGridColumn, isGridColumnArray, isLanguageArray, isLanguageLocaleFormat, messages, nameOf, numberFormats, setCurrentLocale, setLocaleDateTimeFormats, setLocaleMessages, setLocaleNumberFormats, showNotification, stringExtensionsEnabled, stringFormats, useDebouncer };