@milaboratories/uikit 2.6.2 → 2.6.4

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 (192) hide show
  1. package/.turbo/turbo-build.log +129 -129
  2. package/.turbo/turbo-type-check.log +1 -1
  3. package/CHANGELOG.md +13 -0
  4. package/dist/base/BtnBase.vue.js +18 -18
  5. package/dist/base/BtnBase.vue.js.map +1 -1
  6. package/dist/components/ContextProvider.vue.js.map +1 -1
  7. package/dist/components/DataTable/BaseCellComponent.vue.js +20 -20
  8. package/dist/components/DataTable/BaseCellComponent.vue.js.map +1 -1
  9. package/dist/components/DataTable/ColumnCaret.vue.js +6 -6
  10. package/dist/components/DataTable/ColumnCaret.vue.js.map +1 -1
  11. package/dist/components/DataTable/ColumnsCommandMenu.vue.js.map +1 -1
  12. package/dist/components/DataTable/RowsCommandMenu.vue.js.map +1 -1
  13. package/dist/components/DataTable/TScroll.vue.js +12 -12
  14. package/dist/components/DataTable/TScroll.vue.js.map +1 -1
  15. package/dist/components/DataTable/TableComponent.vue.js +1 -1
  16. package/dist/components/DataTable/TableComponent.vue.js.map +1 -1
  17. package/dist/components/DataTable/TdCell.vue.js +36 -36
  18. package/dist/components/DataTable/TdCell.vue.js.map +1 -1
  19. package/dist/components/DataTable/ThCell.vue.js +27 -27
  20. package/dist/components/DataTable/ThCell.vue.js.map +1 -1
  21. package/dist/components/DataTable/TrBody.vue.js +12 -12
  22. package/dist/components/DataTable/TrBody.vue.js.map +1 -1
  23. package/dist/components/DataTable/TrHead.vue.js.map +1 -1
  24. package/dist/components/DataTable/assets/TableIcon.vue.js +2 -2
  25. package/dist/components/DataTable/assets/TableIcon.vue.js.map +1 -1
  26. package/dist/components/DropdownListItem.vue.js +18 -18
  27. package/dist/components/DropdownListItem.vue.js.map +1 -1
  28. package/dist/components/HScroll.vue.js.map +1 -1
  29. package/dist/components/InputRange.vue.js.map +1 -1
  30. package/dist/components/LongText.vue.js +1 -1
  31. package/dist/components/LongText.vue.js.map +1 -1
  32. package/dist/components/LongText.vue3.js +1 -1
  33. package/dist/components/PlAccordion/{ExpandTransition.vue2.js → ExpandTransition.vue.js} +1 -1
  34. package/dist/components/PlAccordion/ExpandTransition.vue.js.map +1 -0
  35. package/dist/components/PlAccordion/ExpandTransition.vue3.js +1 -1
  36. package/dist/components/PlAccordion/PlAccordion.vue.js.map +1 -1
  37. package/dist/components/PlAccordion/PlAccordionSection.vue2.js +21 -21
  38. package/dist/components/PlAccordion/PlAccordionSection.vue2.js.map +1 -1
  39. package/dist/components/PlAlert/PlAlert.vue.js +23 -23
  40. package/dist/components/PlAlert/PlAlert.vue.js.map +1 -1
  41. package/dist/components/PlAutocomplete/PlAutocomplete.vue.js +86 -86
  42. package/dist/components/PlAutocomplete/PlAutocomplete.vue.js.map +1 -1
  43. package/dist/components/PlAutocompleteMulti/PlAutocompleteMulti.vue.js +83 -83
  44. package/dist/components/PlAutocompleteMulti/PlAutocompleteMulti.vue.js.map +1 -1
  45. package/dist/components/PlBtnAccent/PlBtnAccent.vue.js.map +1 -1
  46. package/dist/components/PlBtnDanger/PlBtnDanger.vue.js.map +1 -1
  47. package/dist/components/PlBtnGhost/PlBtnGhost.vue.js +21 -21
  48. package/dist/components/PlBtnGhost/PlBtnGhost.vue.js.map +1 -1
  49. package/dist/components/PlBtnGroup/PlBtnGroup.vue.js +34 -34
  50. package/dist/components/PlBtnGroup/PlBtnGroup.vue.js.map +1 -1
  51. package/dist/components/PlBtnLink/PlBtnLink.vue.js +12 -12
  52. package/dist/components/PlBtnLink/PlBtnLink.vue.js.map +1 -1
  53. package/dist/components/PlBtnPrimary/PlBtnPrimary.vue.js.map +1 -1
  54. package/dist/components/PlBtnSecondary/PlBtnSecondary.vue.js.map +1 -1
  55. package/dist/components/PlBtnSplit/PlBtnSplit.vue.js +31 -31
  56. package/dist/components/PlBtnSplit/PlBtnSplit.vue.js.map +1 -1
  57. package/dist/components/PlChartHistogram/PlChartHistogram.vue2.js +18 -18
  58. package/dist/components/PlChartHistogram/PlChartHistogram.vue2.js.map +1 -1
  59. package/dist/components/PlChartStackedBar/Legends.vue2.js.map +1 -1
  60. package/dist/components/PlChartStackedBar/PlChartStackedBar.vue2.js +15 -15
  61. package/dist/components/PlChartStackedBar/PlChartStackedBar.vue2.js.map +1 -1
  62. package/dist/components/PlChartStackedBar/PlChartStackedBarCompact.vue2.js.map +1 -1
  63. package/dist/components/PlChartStackedBar/StackedRow.vue2.js.map +1 -1
  64. package/dist/components/PlChartStackedBar/StackedRowCompact.vue2.js.map +1 -1
  65. package/dist/components/PlCheckbox/PlCheckbox.vue.js +13 -13
  66. package/dist/components/PlCheckbox/PlCheckbox.vue.js.map +1 -1
  67. package/dist/components/PlCheckbox/PlCheckboxBase.vue.js +6 -6
  68. package/dist/components/PlCheckbox/PlCheckboxBase.vue.js.map +1 -1
  69. package/dist/components/PlCheckboxGroup/PlCheckboxGroup.vue.js +28 -28
  70. package/dist/components/PlCheckboxGroup/PlCheckboxGroup.vue.js.map +1 -1
  71. package/dist/components/PlChip/PlChip.vue.js +20 -20
  72. package/dist/components/PlChip/PlChip.vue.js.map +1 -1
  73. package/dist/components/PlClipboard/PlClipboard.vue2.js.map +1 -1
  74. package/dist/components/PlConfirmDialog.vue.js +14 -14
  75. package/dist/components/PlConfirmDialog.vue.js.map +1 -1
  76. package/dist/components/PlDialogModal/PlDialogModal.vue.js +30 -30
  77. package/dist/components/PlDialogModal/PlDialogModal.vue.js.map +1 -1
  78. package/dist/components/PlDropdown/OptionList.vue.js +40 -40
  79. package/dist/components/PlDropdown/OptionList.vue.js.map +1 -1
  80. package/dist/components/PlDropdown/PlDropdown.vue.js +89 -89
  81. package/dist/components/PlDropdown/PlDropdown.vue.js.map +1 -1
  82. package/dist/components/PlDropdownLegacy/PlDropdownLegacy.vue.js +92 -92
  83. package/dist/components/PlDropdownLegacy/PlDropdownLegacy.vue.js.map +1 -1
  84. package/dist/components/PlDropdownLine/PlDropdownLine.vue.d.ts +1 -1
  85. package/dist/components/PlDropdownLine/PlDropdownLine.vue.js +4 -4
  86. package/dist/components/PlDropdownLine/PlDropdownLine.vue.js.map +1 -1
  87. package/dist/components/PlDropdownLine/ResizableInput.vue.js +12 -12
  88. package/dist/components/PlDropdownLine/ResizableInput.vue.js.map +1 -1
  89. package/dist/components/PlDropdownMulti/PlDropdownMulti.vue.js +70 -70
  90. package/dist/components/PlDropdownMulti/PlDropdownMulti.vue.js.map +1 -1
  91. package/dist/components/PlDropdownMultiRef/PlDropdownMultiRef.vue.d.ts +1 -1
  92. package/dist/components/PlDropdownMultiRef/PlDropdownMultiRef.vue.js.map +1 -1
  93. package/dist/components/PlDropdownRef/PlDropdownRef.vue.js +11 -11
  94. package/dist/components/PlDropdownRef/PlDropdownRef.vue.js.map +1 -1
  95. package/dist/components/PlEditableTitle/PlEditableTitle.vue.d.ts +1 -1
  96. package/dist/components/PlEditableTitle/PlEditableTitle.vue.js +36 -36
  97. package/dist/components/PlEditableTitle/PlEditableTitle.vue.js.map +1 -1
  98. package/dist/components/PlElementList/PlElementList.vue2.js.map +1 -1
  99. package/dist/components/PlElementList/PlElementListItem.vue2.js +67 -67
  100. package/dist/components/PlElementList/PlElementListItem.vue2.js.map +1 -1
  101. package/dist/components/PlErrorAlert/PlErrorAlert.vue2.js.map +1 -1
  102. package/dist/components/PlErrorBoundary/PlErrorBoundary.vue.js.map +1 -1
  103. package/dist/components/PlFileDialog/Local.vue.js +24 -24
  104. package/dist/components/PlFileDialog/Local.vue.js.map +1 -1
  105. package/dist/components/PlFileDialog/PlFileDialog.vue.js +38 -38
  106. package/dist/components/PlFileDialog/PlFileDialog.vue.js.map +1 -1
  107. package/dist/components/PlFileDialog/Remote.vue.js +2 -2
  108. package/dist/components/PlFileDialog/Remote.vue.js.map +1 -1
  109. package/dist/components/PlFileDialog/Shortcuts.vue2.js +4 -4
  110. package/dist/components/PlFileDialog/Shortcuts.vue2.js.map +1 -1
  111. package/dist/components/PlFileInput/PlFileInput.vue.d.ts +1 -1
  112. package/dist/components/PlFileInput/PlFileInput.vue.js +75 -75
  113. package/dist/components/PlFileInput/PlFileInput.vue.js.map +1 -1
  114. package/dist/components/PlIcon16/PlIcon16.vue2.js.map +1 -1
  115. package/dist/components/PlIcon24/PlIcon24.vue2.js.map +1 -1
  116. package/dist/components/PlLoaderCircular/PlLoaderCircular.vue.js +11 -11
  117. package/dist/components/PlLoaderCircular/PlLoaderCircular.vue.js.map +1 -1
  118. package/dist/components/PlLogView/PlLogView.vue.js +58 -58
  119. package/dist/components/PlLogView/PlLogView.vue.js.map +1 -1
  120. package/dist/components/PlNotificationAlert/PlNotificationAlert.vue.js +22 -22
  121. package/dist/components/PlNotificationAlert/PlNotificationAlert.vue.js.map +1 -1
  122. package/dist/components/PlNumberField/PlNumberField.vue.d.ts +1 -1
  123. package/dist/components/PlNumberField/PlNumberField.vue.js +75 -75
  124. package/dist/components/PlNumberField/PlNumberField.vue.js.map +1 -1
  125. package/dist/components/PlProgressBar/PlProgressBar.vue.js +12 -12
  126. package/dist/components/PlProgressBar/PlProgressBar.vue.js.map +1 -1
  127. package/dist/components/PlProgressCell/PlProgressCell.vue.js +20 -20
  128. package/dist/components/PlProgressCell/PlProgressCell.vue.js.map +1 -1
  129. package/dist/components/PlRadio/PlRadio.vue2.js.map +1 -1
  130. package/dist/components/PlRadio/PlRadioGroup.vue2.js +8 -8
  131. package/dist/components/PlRadio/PlRadioGroup.vue2.js.map +1 -1
  132. package/dist/components/PlSearchField/PlSearchField.vue2.js +19 -19
  133. package/dist/components/PlSearchField/PlSearchField.vue2.js.map +1 -1
  134. package/dist/components/PlSectionSeparator/PlSectionSeparator.vue2.js +8 -8
  135. package/dist/components/PlSectionSeparator/PlSectionSeparator.vue2.js.map +1 -1
  136. package/dist/components/PlSidebar/PlSidebarGroup.vue2.js.map +1 -1
  137. package/dist/components/PlSidebar/PlSidebarItem.vue2.js.map +1 -1
  138. package/dist/components/PlSlideModal/PlPureSlideModal.vue.js +1 -1
  139. package/dist/components/PlSlideModal/PlPureSlideModal.vue.js.map +1 -1
  140. package/dist/components/PlSlideModal/PlSlideModal.vue2.js.map +1 -1
  141. package/dist/components/PlSplash/PlSplash.vue.js +16 -16
  142. package/dist/components/PlSplash/PlSplash.vue.js.map +1 -1
  143. package/dist/components/PlStatusTag/PlStatusTag.vue.js +7 -7
  144. package/dist/components/PlStatusTag/PlStatusTag.vue.js.map +1 -1
  145. package/dist/components/PlSvg/PlSvg.vue2.js.map +1 -1
  146. package/dist/components/PlTabs/PlTabs.vue.js +18 -18
  147. package/dist/components/PlTabs/PlTabs.vue.js.map +1 -1
  148. package/dist/components/PlTabs/Tab.vue.js +9 -9
  149. package/dist/components/PlTabs/Tab.vue.js.map +1 -1
  150. package/dist/components/PlTextArea/PlTextArea.vue.js +51 -51
  151. package/dist/components/PlTextArea/PlTextArea.vue.js.map +1 -1
  152. package/dist/components/PlTextField/PlTextField.vue.js +62 -62
  153. package/dist/components/PlTextField/PlTextField.vue.js.map +1 -1
  154. package/dist/components/PlToggleSwitch/PlToggleSwitch.vue.js +14 -14
  155. package/dist/components/PlToggleSwitch/PlToggleSwitch.vue.js.map +1 -1
  156. package/dist/components/PlTooltip/Beak.vue.js +2 -2
  157. package/dist/components/PlTooltip/Beak.vue.js.map +1 -1
  158. package/dist/components/PlTooltip/PlTooltip.vue.js +50 -50
  159. package/dist/components/PlTooltip/PlTooltip.vue.js.map +1 -1
  160. package/dist/components/Scrollable.vue.js.map +1 -1
  161. package/dist/components/Slider.vue.js +35 -35
  162. package/dist/components/Slider.vue.js.map +1 -1
  163. package/dist/components/SliderRange.vue.js +47 -47
  164. package/dist/components/SliderRange.vue.js.map +1 -1
  165. package/dist/components/SliderRangeTriple.vue.js +47 -47
  166. package/dist/components/SliderRangeTriple.vue.js.map +1 -1
  167. package/dist/components/TabItem.vue.js.map +1 -1
  168. package/dist/components/ThemeSwitcher.vue.js +2 -2
  169. package/dist/components/ThemeSwitcher.vue.js.map +1 -1
  170. package/dist/components/TransitionSlidePanel.vue.js.map +1 -1
  171. package/dist/components/VScroll.vue.js.map +1 -1
  172. package/dist/components/contextMenu/Menu.vue2.js +12 -12
  173. package/dist/components/contextMenu/Menu.vue2.js.map +1 -1
  174. package/dist/index.js +1 -1
  175. package/dist/layout/PlBlockPage/PlBlockPage.vue.js +27 -27
  176. package/dist/layout/PlBlockPage/PlBlockPage.vue.js.map +1 -1
  177. package/dist/layout/PlContainer/PlContainer.vue.js +10 -10
  178. package/dist/layout/PlContainer/PlContainer.vue.js.map +1 -1
  179. package/dist/layout/PlGrid/PlGrid.vue.js.map +1 -1
  180. package/dist/layout/PlRow/PlRow.vue.js +8 -8
  181. package/dist/layout/PlRow/PlRow.vue.js.map +1 -1
  182. package/dist/layout/PlSpacer/PlSpacer.vue.js.map +1 -1
  183. package/dist/utils/DoubleContour.vue.js +9 -9
  184. package/dist/utils/DoubleContour.vue.js.map +1 -1
  185. package/dist/utils/DropdownOverlay/DropdownOverlay.vue.js.map +1 -1
  186. package/dist/utils/PlCloseModalBtn.vue.js +2 -2
  187. package/dist/utils/PlCloseModalBtn.vue.js.map +1 -1
  188. package/dist/utils/TextLabel.vue.js.map +1 -1
  189. package/package.json +5 -5
  190. package/dist/components/PlAccordion/ExpandTransition.vue2.js.map +0 -1
  191. package/dist/utils/DoubleContour.vue2.js +0 -23
  192. package/dist/utils/DoubleContour.vue2.js.map +0 -1
@@ -1,11 +1,11 @@
1
1
  (function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(".expand-collapse-fix{overflow:hidden}.expand-collapse-enter-active,.expand-collapse-leave-active{transition:height .2s ease-in-out,opacity .2s ease-in-out;height:var(--component-height)}.expand-collapse-enter-from,.expand-collapse-leave-to{opacity:.5;height:0}")),document.head.appendChild(e)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})();
2
- import { defineComponent as V, mergeModels as k, inject as i, toRef as m, useModel as C, computed as p, createElementBlock as d, openBlock as f, createVNode as n, unref as v, normalizeClass as r, withCtx as $, createTextVNode as M, toDisplayString as S, createCommentVNode as g, renderSlot as h } from "vue";
2
+ import { defineComponent as V, mergeModels as k, inject as m, toRef as d, useModel as C, computed as p, createElementBlock as f, openBlock as v, createVNode as r, unref as $, normalizeClass as s, withCtx as y, createTextVNode as M, toDisplayString as S, createCommentVNode as g, renderSlot as h } from "vue";
3
3
  import { uniqueId as B } from "@milaboratories/helpers";
4
4
  import N from "../PlIcon16/PlIcon16.vue.js";
5
5
  import P from "../PlSectionSeparator/PlSectionSeparator.vue.js";
6
- import _ from "./ExpandTransition.vue2.js";
6
+ import b from "./ExpandTransition.vue.js";
7
7
 
8
- const b = { class: "pl-accordion-section" }, E = /* @__PURE__ */ V({
8
+ const w = { class: "pl-accordion-section" }, R = /* @__PURE__ */ V({
9
9
  __name: "PlAccordionSection",
10
10
  props: /* @__PURE__ */ k({
11
11
  label: {},
@@ -15,35 +15,35 @@ const b = { class: "pl-accordion-section" }, E = /* @__PURE__ */ V({
15
15
  modelModifiers: {}
16
16
  }),
17
17
  emits: ["update:modelValue"],
18
- setup(y) {
19
- const o = i("pl-accordion-model", () => m(""), !0), s = i("pl-accordion-props", () => m({ multiple: !1 }), !0), t = C(y, "modelValue"), a = B(), c = p(() => !s || s.value.multiple), l = p({
18
+ setup(t) {
19
+ const o = m("pl-accordion-model", () => d(""), !0), c = m("pl-accordion-props", () => d({ multiple: !1 }), !0), a = C(t, "modelValue"), n = B(), u = p(() => !c || c.value.multiple), l = p({
20
20
  get() {
21
- return c.value ? t.value : o ? o.value === a : t.value;
21
+ return u.value ? a.value : o ? o.value === n : a.value;
22
22
  },
23
23
  set(e) {
24
- c.value ? t.value = e : o && (o.value = o.value === a ? "" : a);
24
+ u.value ? a.value = e : o && (o.value = o.value === n ? "" : n);
25
25
  }
26
26
  });
27
- return (e, u) => (f(), d("div", b, [
28
- n(v(P), {
29
- class: r(e.$style.separator),
30
- compact: e.compact,
31
- onClick: u[0] || (u[0] = (w) => l.value = !l.value)
27
+ return (e, i) => (v(), f("div", w, [
28
+ r($(P), {
29
+ class: s(e.$style.separator),
30
+ compact: t.compact,
31
+ onClick: i[0] || (i[0] = (I) => l.value = !l.value)
32
32
  }, {
33
- default: $(() => [
34
- n(v(N), {
33
+ default: y(() => [
34
+ r($(N), {
35
35
  name: "chevron-right",
36
- class: r([{ [e.$style.down]: l.value }, e.$style.chevron])
36
+ class: s([{ [e.$style.down]: l.value }, e.$style.chevron])
37
37
  }, null, 8, ["class"]),
38
- M(" " + S(e.label), 1)
38
+ M(" " + S(t.label), 1)
39
39
  ]),
40
40
  _: 1
41
41
  }, 8, ["class", "compact"]),
42
- n(_, null, {
43
- default: $(() => [
44
- l.value ? (f(), d("div", {
42
+ r(b, null, {
43
+ default: y(() => [
44
+ l.value ? (v(), f("div", {
45
45
  key: 0,
46
- class: r(e.$style.content)
46
+ class: s(e.$style.content)
47
47
  }, [
48
48
  h(e.$slots, "default")
49
49
  ], 2)) : g("", !0)
@@ -54,6 +54,6 @@ const b = { class: "pl-accordion-section" }, E = /* @__PURE__ */ V({
54
54
  }
55
55
  });
56
56
  export {
57
- E as default
57
+ R as default
58
58
  };
59
59
  //# sourceMappingURL=PlAccordionSection.vue2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlAccordionSection.vue2.js","sources":["../../../src/components/PlAccordion/PlAccordionSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { uniqueId } from '@milaboratories/helpers';\nimport { PlMaskIcon16 } from '../PlMaskIcon16';\nimport { PlSectionSeparator } from '../PlSectionSeparator';\nimport ExpandTransition from './ExpandTransition.vue';\nimport type { Ref } from 'vue';\nimport { computed, inject, toRef } from 'vue';\n\nconst $m = inject<Ref<string>>('pl-accordion-model', () => toRef(''), true);\n\nconst $p = inject<\n Ref<{\n multiple?: boolean;\n }>\n>('pl-accordion-props', () => toRef({ multiple: false }), true);\n\nconst model = defineModel<boolean>();\n\nconst id = uniqueId();\n\nconst isMulti = computed(() => !$p || $p.value.multiple);\n\nconst open = computed({\n get() {\n if (isMulti.value) {\n return model.value;\n }\n\n return $m ? $m.value === id : model.value;\n },\n set(on) {\n if (isMulti.value) {\n model.value = on;\n } else if ($m) {\n $m.value = $m.value === id ? '' : id;\n }\n },\n});\n\ndefineProps<{\n /**\n * The label text (optional)\n */\n label?: string;\n /**\n * If `true`, remove top padding\n */\n compact?: boolean;\n}>();\n</script>\n\n<template>\n <div class=\"pl-accordion-section\">\n <PlSectionSeparator :class=\"$style.separator\" :compact=\"compact\" @click=\"open = !open\">\n <PlMaskIcon16 name=\"chevron-right\" :class=\"[{ [$style.down]: open }, $style.chevron]\" />\n {{ label }}\n </PlSectionSeparator>\n <ExpandTransition>\n <div v-if=\"open\" :class=\"$style.content\">\n <slot />\n </div>\n </ExpandTransition>\n </div>\n</template>\n\n<style module>\n.content {\n display: flex;\n flex-direction: column;\n gap: var(--gap-v);\n will-change: height, opacity;\n /* transform: translateZ(0);\n backface-visibility: hidden; */\n}\n\n.content > *:first-child {\n margin-top: 24px;\n}\n\n.content > *:last-child {\n margin-bottom: 4px;\n}\n\n.separator {\n cursor: pointer;\n &:hover {\n --pl-separator-txt-color: var(--txt-01);\n --mask-icon-bg-color: var(--ic-01);\n }\n}\n\n.chevron {\n transition-duration: 50ms;\n}\n\n.down {\n transform: rotate(90deg);\n}\n</style>\n"],"names":["$m","inject","toRef","$p","model","_useModel","__props","id","uniqueId","isMulti","computed","open","on"],"mappings":";;;;;;;;;;;;;;;;;AAQA,UAAMA,IAAKC,EAAoB,sBAAsB,MAAMC,EAAM,EAAE,GAAG,EAAI,GAEpEC,IAAKF,EAIT,sBAAsB,MAAMC,EAAM,EAAE,UAAU,IAAO,GAAG,EAAI,GAExDE,IAAQC,EAAoBC,GAAA,YAAC,GAE7BC,IAAKC,EAAA,GAELC,IAAUC,EAAS,MAAM,CAACP,KAAMA,EAAG,MAAM,QAAQ,GAEjDQ,IAAOD,EAAS;AAAA,MACpB,MAAM;AACJ,eAAID,EAAQ,QACHL,EAAM,QAGRJ,IAAKA,EAAG,UAAUO,IAAKH,EAAM;AAAA,MACtC;AAAA,MACA,IAAIQ,GAAI;AACN,QAAIH,EAAQ,QACVL,EAAM,QAAQQ,IACLZ,MACTA,EAAG,QAAQA,EAAG,UAAUO,IAAK,KAAKA;AAAA,MAEtC;AAAA,IAAA,CACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"PlAccordionSection.vue2.js","sources":["../../../src/components/PlAccordion/PlAccordionSection.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { uniqueId } from '@milaboratories/helpers';\nimport { PlMaskIcon16 } from '../PlMaskIcon16';\nimport { PlSectionSeparator } from '../PlSectionSeparator';\nimport ExpandTransition from './ExpandTransition.vue';\nimport type { Ref } from 'vue';\nimport { computed, inject, toRef } from 'vue';\n\nconst $m = inject<Ref<string>>('pl-accordion-model', () => toRef(''), true);\n\nconst $p = inject<\n Ref<{\n multiple?: boolean;\n }>\n>('pl-accordion-props', () => toRef({ multiple: false }), true);\n\nconst model = defineModel<boolean>();\n\nconst id = uniqueId();\n\nconst isMulti = computed(() => !$p || $p.value.multiple);\n\nconst open = computed({\n get() {\n if (isMulti.value) {\n return model.value;\n }\n\n return $m ? $m.value === id : model.value;\n },\n set(on) {\n if (isMulti.value) {\n model.value = on;\n } else if ($m) {\n $m.value = $m.value === id ? '' : id;\n }\n },\n});\n\ndefineProps<{\n /**\n * The label text (optional)\n */\n label?: string;\n /**\n * If `true`, remove top padding\n */\n compact?: boolean;\n}>();\n</script>\n\n<template>\n <div class=\"pl-accordion-section\">\n <PlSectionSeparator :class=\"$style.separator\" :compact=\"compact\" @click=\"open = !open\">\n <PlMaskIcon16 name=\"chevron-right\" :class=\"[{ [$style.down]: open }, $style.chevron]\" />\n {{ label }}\n </PlSectionSeparator>\n <ExpandTransition>\n <div v-if=\"open\" :class=\"$style.content\">\n <slot />\n </div>\n </ExpandTransition>\n </div>\n</template>\n\n<style module>\n.content {\n display: flex;\n flex-direction: column;\n gap: var(--gap-v);\n will-change: height, opacity;\n /* transform: translateZ(0);\n backface-visibility: hidden; */\n}\n\n.content > *:first-child {\n margin-top: 24px;\n}\n\n.content > *:last-child {\n margin-bottom: 4px;\n}\n\n.separator {\n cursor: pointer;\n &:hover {\n --pl-separator-txt-color: var(--txt-01);\n --mask-icon-bg-color: var(--ic-01);\n }\n}\n\n.chevron {\n transition-duration: 50ms;\n}\n\n.down {\n transform: rotate(90deg);\n}\n</style>\n"],"names":["$m","inject","toRef","$p","model","_useModel","__props","id","uniqueId","isMulti","computed","open","on","_openBlock","_createElementBlock","_hoisted_1","_createVNode","_unref","PlSectionSeparator","_normalizeClass","$style","_cache","$event","PlMaskIcon16","_createTextVNode","ExpandTransition","_renderSlot","_ctx"],"mappings":";;;;;;;;;;;;;;;;;AAQA,UAAMA,IAAKC,EAAoB,sBAAsB,MAAMC,EAAM,EAAE,GAAG,EAAI,GAEpEC,IAAKF,EAIT,sBAAsB,MAAMC,EAAM,EAAE,UAAU,IAAO,GAAG,EAAI,GAExDE,IAAQC,EAAoBC,GAAA,YAAC,GAE7BC,IAAKC,EAAA,GAELC,IAAUC,EAAS,MAAM,CAACP,KAAMA,EAAG,MAAM,QAAQ,GAEjDQ,IAAOD,EAAS;AAAA,MACpB,MAAM;AACJ,eAAID,EAAQ,QACHL,EAAM,QAGRJ,IAAKA,EAAG,UAAUO,IAAKH,EAAM;AAAA,MACtC;AAAA,MACA,IAAIQ,GAAI;AACN,QAAIH,EAAQ,QACVL,EAAM,QAAQQ,IACLZ,MACTA,EAAG,QAAQA,EAAG,UAAUO,IAAK,KAAKA;AAAA,MAEtC;AAAA,IAAA,CACD;sBAeCM,EAAA,GAAAC,EAUM,OAVNC,GAUM;AAAA,MATJC,EAGqBC,EAAAC,CAAA,GAAA;AAAA,QAHA,OAAKC,EAAEC,EAAAA,OAAO,SAAS;AAAA,QAAG,SAASd,EAAA;AAAA,QAAU,SAAKe,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAEX,EAAA,QAAI,CAAIA,EAAA;AAAA,MAAA;mBAC/E,MAAwF;AAAA,UAAxFK,EAAwFC,EAAAM,CAAA,GAAA;AAAA,YAA1E,MAAK;AAAA,YAAiB,OAAKJ,EAAA,CAAA,EAAA,CAAMC,SAAO,IAAI,GAAGT,EAAA,MAAA,GAAQS,EAAAA,OAAO,OAAO,CAAA;AAAA,UAAA;UAAKI,EAAA,QACrFlB,EAAA,KAAK,GAAA,CAAA;AAAA,QAAA;;;MAEVU,EAImBS,GAAA,MAAA;AAAA,mBAHjB,MAEM;AAAA,UAFKd,EAAA,cAAXG,EAEM,OAAA;AAAA;YAFY,OAAKK,EAAEC,EAAAA,OAAO,OAAO;AAAA,UAAA;YACrCM,EAAQC,EAAA,QAAA,SAAA;AAAA,UAAA;;;;;;;"}
@@ -1,13 +1,13 @@
1
1
  (function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(`.pl-alert{--text-font-family: var(--font-family-base);--text-white-space: normal;--indent: 24px;position:relative;padding:12px;display:flex;flex-wrap:nowrap;gap:12px;border:1px solid var(--border-color-default);border-radius:6px;color:var(--txt-01)}.pl-alert.monospace{--text-font-family: var(--font-family-monospace)}.pl-alert.whiteSpacePre{--text-white-space: pre}.pl-alert__error{background:var(--notification-error)}.pl-alert__warn{background:var(--notification-warning)}.pl-alert__success{background:var(--notification-success)}.pl-alert__info{background:var(--notification-neutral)}.pl-alert__icon{width:24px}.pl-alert__main{display:flex;flex-direction:column;min-height:24px;flex:1;overflow:hidden;width:100%;gap:6px}.pl-alert__main label{font-size:20px;font-weight:500;line-height:24px;letter-spacing:-.2px}.pl-alert__main__text{font-size:14px;font-weight:500;line-height:20px;font-family:var(--text-font-family);white-space:var(--text-white-space);max-width:100%;flex:1;--thumb-color: var(--ic-02);overflow-y:auto}.pl-alert__main__text::-webkit-scrollbar{width:var(--scrollbar-width, 6px);height:5px;background-color:transparent;display:block}.pl-alert__main__text::-webkit-scrollbar-thumb{background:var(--thumb-color);border-radius:5px}.pl-alert__main__text::-webkit-scrollbar-thumb:hover{--thumb-color: var(--border-color-focus)}.pl-alert__close-btn{position:absolute;top:10px;right:12px;cursor:pointer;background-color:#d3d7e0;mask-image:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M5.99954%2018L11.9995%2012M11.9995%2012L17.9995%206M11.9995%2012L5.99954%206M11.9995%2012L17.9995%2018'%20stroke='%23110529'%20stroke-width='1.5'/%3e%3c/svg%3e");-webkit-mask-image:url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M5.99954%2018L11.9995%2012M11.9995%2012L17.9995%206M11.9995%2012L5.99954%206M11.9995%2012L17.9995%2018'%20stroke='%23110529'%20stroke-width='1.5'/%3e%3c/svg%3e");mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;mask-position:center;-webkit-mask-position:center;mask-size:24px;-webkit-mask-size:24px;width:24px;height:24px;transition:all .1s ease-in-out}.pl-alert__close-btn:hover{background-color:var(--main-dark-color)}`)),document.head.appendChild(e)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})();
2
- import { defineComponent as r, createElementBlock as l, createCommentVNode as o, openBlock as a, normalizeStyle as d, normalizeClass as n, createElementVNode as t, toDisplayString as p, renderSlot as u } from "vue";
2
+ import { defineComponent as c, createElementBlock as t, createCommentVNode as l, openBlock as a, normalizeStyle as r, normalizeClass as d, createElementVNode as o, toDisplayString as u, renderSlot as m } from "vue";
3
3
 
4
- const m = {
4
+ const y = {
5
5
  key: 0,
6
6
  class: "pl-alert__icon"
7
- }, c = { class: "pl-alert__main" }, y = { key: 0 }, f = { class: "pl-alert__main__text" }, v = {
7
+ }, f = { class: "pl-alert__main" }, v = { key: 0 }, p = { class: "pl-alert__main__text" }, b = {
8
8
  name: "PlAlert"
9
- }, B = /* @__PURE__ */ r({
10
- ...v,
9
+ }, S = /* @__PURE__ */ c({
10
+ ...b,
11
11
  props: {
12
12
  modelValue: { type: Boolean, default: !0 },
13
13
  type: { default: void 0 },
@@ -19,40 +19,40 @@ const m = {
19
19
  maxHeight: { default: void 0 }
20
20
  },
21
21
  emits: ["update:modelValue"],
22
- setup(_) {
23
- const i = {
22
+ setup(e) {
23
+ const s = {
24
24
  success: "success",
25
25
  warn: "warning",
26
26
  info: "edit",
27
27
  error: "error"
28
28
  };
29
- return (e, s) => e.modelValue ? (a(), l("div", {
29
+ return (n, i) => e.modelValue ? (a(), t("div", {
30
30
  key: 0,
31
- class: n(["pl-alert", [{ monospace: e.monospace, whiteSpacePre: e.whiteSpacePre }, e.type ? `pl-alert__${e.type}` : ""]]),
32
- style: d({ maxHeight: e.maxHeight })
31
+ class: d(["pl-alert", [{ monospace: e.monospace, whiteSpacePre: e.whiteSpacePre }, e.type ? `pl-alert__${e.type}` : ""]]),
32
+ style: r({ maxHeight: e.maxHeight })
33
33
  }, [
34
- e.icon && e.type ? (a(), l("div", m, [
35
- t("div", {
36
- class: n(`icon-24 icon-${i[e.type]}`)
34
+ e.icon && e.type ? (a(), t("div", y, [
35
+ o("div", {
36
+ class: d(`icon-24 icon-${s[e.type]}`)
37
37
  }, null, 2)
38
- ])) : o("", !0),
39
- t("div", c, [
40
- e.label ? (a(), l("label", y, p(e.label), 1)) : o("", !0),
41
- t("div", f, [
42
- u(e.$slots, "default")
38
+ ])) : l("", !0),
39
+ o("div", f, [
40
+ e.label ? (a(), t("label", v, u(e.label), 1)) : l("", !0),
41
+ o("div", p, [
42
+ m(n.$slots, "default")
43
43
  ])
44
44
  ]),
45
- e.closeable ? (a(), l("div", {
45
+ e.closeable ? (a(), t("div", {
46
46
  key: 1,
47
47
  class: "pl-alert__close-btn",
48
48
  "aria-label": "Close alert",
49
49
  role: "button",
50
- onClick: s[0] || (s[0] = (b) => e.$emit("update:modelValue", !1))
51
- })) : o("", !0)
52
- ], 6)) : o("", !0);
50
+ onClick: i[0] || (i[0] = (h) => n.$emit("update:modelValue", !1))
51
+ })) : l("", !0)
52
+ ], 6)) : l("", !0);
53
53
  }
54
54
  });
55
55
  export {
56
- B as default
56
+ S as default
57
57
  };
58
58
  //# sourceMappingURL=PlAlert.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlAlert.vue.js","sources":["../../../src/components/PlAlert/PlAlert.vue"],"sourcesContent":["<script lang=\"ts\">\nexport default {\n name: 'PlAlert',\n};\n</script>\n\n<script lang=\"ts\" setup>\nimport './pl-alert.scss';\n\ndefineEmits<{\n /**\n * Emitted when the model value is updated, typically when the close button is clicked.\n *\n * @param value - The new value of the model, generally `false` when the alert is closed.\n */\n (e: 'update:modelValue', value: boolean): void;\n}>();\n\nwithDefaults(\n defineProps<{\n /**\n * Controls the visibility of the alert component. If `true`, the alert is visible.\n *\n * @default true\n */\n modelValue?: boolean;\n /**\n * The type of alert, which determines the alert's style and icon.\n * Can be one of `'success' | 'info' | 'warn' | 'error'`.\n */\n type?: 'success' | 'info' | 'warn' | 'error';\n /**\n * An optional label that appears at the top of the alert.\n */\n label?: string;\n /**\n * If `true`, an icon corresponding to the alert type is displayed.\n */\n icon?: boolean;\n /**\n * If `true`, a close button is displayed in the alert, allowing the user to close it.\n */\n closeable?: boolean;\n /**\n * If `true`, the alert text is displayed in a monospace font.\n */\n monospace?: boolean;\n /**\n * If `true`, the alert content will preserve whitespace and line breaks.\n */\n whiteSpacePre?: boolean;\n\n /**\n * Max height (css value like '120px or 30%')\n */\n maxHeight?: string;\n }>(),\n {\n modelValue: true,\n type: undefined,\n label: undefined,\n icon: undefined,\n closeable: undefined,\n monospace: undefined,\n whiteSpacePre: undefined,\n maxHeight: undefined,\n },\n);\n\nconst iconMap = {\n success: 'success',\n warn: 'warning',\n info: 'edit',\n error: 'error',\n};\n</script>\n\n<template>\n <div v-if=\"modelValue\" class=\"pl-alert\" :style=\"{ maxHeight }\" :class=\"[{ monospace, whiteSpacePre }, type ? `pl-alert__${type}` : '']\">\n <div v-if=\"icon && type\" class=\"pl-alert__icon\">\n <div :class=\"`icon-24 icon-${iconMap[type]}`\" />\n </div>\n <div class=\"pl-alert__main\">\n <label v-if=\"label\">{{ label }}</label>\n <div class=\"pl-alert__main__text\"><slot /></div>\n </div>\n <div v-if=\"closeable\" class=\"pl-alert__close-btn\" aria-label=\"Close alert\" role=\"button\" @click=\"$emit('update:modelValue', false)\" />\n </div>\n</template>\n"],"names":["__default__","iconMap"],"mappings":";;;;;2FACAA,IAAe;AAAA,EACb,MAAM;AACR;;;;;;;;;;;;;;AAkEA,UAAMC,IAAU;AAAA,MACd,SAAS;AAAA,MACT,MAAM;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"PlAlert.vue.js","sources":["../../../src/components/PlAlert/PlAlert.vue"],"sourcesContent":["<script lang=\"ts\">\nexport default {\n name: 'PlAlert',\n};\n</script>\n\n<script lang=\"ts\" setup>\nimport './pl-alert.scss';\n\ndefineEmits<{\n /**\n * Emitted when the model value is updated, typically when the close button is clicked.\n *\n * @param value - The new value of the model, generally `false` when the alert is closed.\n */\n (e: 'update:modelValue', value: boolean): void;\n}>();\n\nwithDefaults(\n defineProps<{\n /**\n * Controls the visibility of the alert component. If `true`, the alert is visible.\n *\n * @default true\n */\n modelValue?: boolean;\n /**\n * The type of alert, which determines the alert's style and icon.\n * Can be one of `'success' | 'info' | 'warn' | 'error'`.\n */\n type?: 'success' | 'info' | 'warn' | 'error';\n /**\n * An optional label that appears at the top of the alert.\n */\n label?: string;\n /**\n * If `true`, an icon corresponding to the alert type is displayed.\n */\n icon?: boolean;\n /**\n * If `true`, a close button is displayed in the alert, allowing the user to close it.\n */\n closeable?: boolean;\n /**\n * If `true`, the alert text is displayed in a monospace font.\n */\n monospace?: boolean;\n /**\n * If `true`, the alert content will preserve whitespace and line breaks.\n */\n whiteSpacePre?: boolean;\n\n /**\n * Max height (css value like '120px or 30%')\n */\n maxHeight?: string;\n }>(),\n {\n modelValue: true,\n type: undefined,\n label: undefined,\n icon: undefined,\n closeable: undefined,\n monospace: undefined,\n whiteSpacePre: undefined,\n maxHeight: undefined,\n },\n);\n\nconst iconMap = {\n success: 'success',\n warn: 'warning',\n info: 'edit',\n error: 'error',\n};\n</script>\n\n<template>\n <div v-if=\"modelValue\" class=\"pl-alert\" :style=\"{ maxHeight }\" :class=\"[{ monospace, whiteSpacePre }, type ? `pl-alert__${type}` : '']\">\n <div v-if=\"icon && type\" class=\"pl-alert__icon\">\n <div :class=\"`icon-24 icon-${iconMap[type]}`\" />\n </div>\n <div class=\"pl-alert__main\">\n <label v-if=\"label\">{{ label }}</label>\n <div class=\"pl-alert__main__text\"><slot /></div>\n </div>\n <div v-if=\"closeable\" class=\"pl-alert__close-btn\" aria-label=\"Close alert\" role=\"button\" @click=\"$emit('update:modelValue', false)\" />\n </div>\n</template>\n"],"names":["__default__","iconMap","__props","_createElementBlock","_normalizeClass","_openBlock","_hoisted_1","_createElementVNode","_hoisted_2","_hoisted_4","_renderSlot","_ctx","$emit"],"mappings":";;;;;2FACAA,IAAe;AAAA,EACb,MAAM;AACR;;;;;;;;;;;;;;AAkEA,UAAMC,IAAU;AAAA,MACd,SAAS;AAAA,MACT,MAAM;AAAA,MACN,MAAM;AAAA,MACN,OAAO;AAAA,IAAA;qBAKIC,EAAA,mBAAXC,EASM,OAAA;AAAA;MATiB,OAAKC,EAAA,CAAC,YAAU,CAAA,EAAA,WAAmCF,EAAA,0BAAWA,EAAA,cAAA,GAAiBA,EAAA,OAAI,aAAgBA,EAAA,IAAI,KAAA,EAAA,CAAA,CAAA;AAAA,MAArF,sBAASA,EAAA,WAAS;AAAA,IAAA;MAC9CA,EAAA,QAAQA,EAAA,QAAnBG,KAAAF,EAEM,OAFNG,GAEM;AAAA,QADJC,EAAgD,OAAA;AAAA,UAA1C,OAAKH,EAAA,gBAAkBH,EAAQC,EAAA,IAAI,CAAA,EAAA;AAAA,QAAA;;MAE3CK,EAGM,OAHNC,GAGM;AAAA,QAFSN,EAAA,SAAbG,EAAA,GAAAF,EAAuC,cAAhBD,EAAA,KAAK,GAAA,CAAA;QAC5BK,EAAgD,OAAhDE,GAAgD;AAAA,UAAdC,EAAQC,EAAA,QAAA,SAAA;AAAA,QAAA;;MAEjCT,EAAA,kBAAXC,EAAsI,OAAA;AAAA;QAAhH,OAAM;AAAA,QAAsB,cAAW;AAAA,QAAc,MAAK;AAAA,QAAU,gCAAOS,EAAAA,MAAK,qBAAA,EAAA;AAAA,MAAA;;;;"}
@@ -1,22 +1,22 @@
1
1
  (function(){"use strict";try{if(typeof document<"u"){var o=document.createElement("style");o.appendChild(document.createTextNode(`.pl-autocomplete__options{--option-hover-bg: var(--btn-sec-hover-grey);z-index:var(--z-dropdown-options);border:1px solid var(--border-color-div-grey);position:absolute;background-color:var(--pl-dropdown-options-bg);border-radius:6px;max-height:244px;box-shadow:0 4px 12px -2px #0f244d14,0 6px 24px -2px #0f244d14;--thumb-color: var(--ic-02);overflow-y:auto}.pl-autocomplete__options::-webkit-scrollbar{width:var(--scrollbar-width, 6px);height:5px;background-color:transparent;display:block}.pl-autocomplete__options::-webkit-scrollbar-thumb{background:var(--thumb-color);border-radius:5px}.pl-autocomplete__options::-webkit-scrollbar-thumb:hover{--thumb-color: var(--border-color-focus)}.pl-autocomplete__options .nothing-found{padding:0 10px;height:var(--control-height);line-height:var(--control-height);background-color:#fff;opacity:.5;font-style:italic}.pl-autocomplete__options .option{position:relative;padding:0 30px 0 10px;height:var(--control-height);line-height:var(--control-height);cursor:pointer;-webkit-user-select:none;user-select:none}.pl-autocomplete__options .option .checkmark{position:absolute;display:none;right:10px;top:50%;transform:translateY(-50%)}.pl-autocomplete__options .option>span{display:block;overflow:hidden;white-space:nowrap;max-width:100%;text-overflow:ellipsis}.pl-autocomplete__options .option.selected{background-color:var(--color-active-select)}.pl-autocomplete__options .option.selected .checkmark{display:block}.pl-autocomplete__options .option.active:not(.selected){background-color:var(--option-hover-bg)}.pl-autocomplete__options .option:hover{background-color:var(--option-hover-bg)}.pl-autocomplete{--contour-color: var(--txt-01);--contour-border-width: 1px;--label-offset-left-x: 8px;--label-offset-right-x: 8px;--label-color: var(--txt-01);position:relative;outline:none;min-height:var(--control-height);border-radius:6px;font-family:var(--font-family-base);font-size:var(--font-size-base);font-weight:var(--font-weigh-base)}.pl-autocomplete__envelope{font-family:var(--control-font-family);min-width:160px}.pl-autocomplete label{display:flex;align-items:center;gap:4px;position:absolute;top:0;transform:translateY(-60%);left:var(--label-offset-left-x);padding:0 4px;max-width:calc(100% - 16px);overflow:hidden;white-space:pre;text-overflow:ellipsis;cursor:inherit;color:var(--label-color);font-size:12px;font-weight:500;border-bottom-right-radius:4px;border-bottom-left-radius:4px;background:var(--bg-elevated-01)}.pl-autocomplete label>span{overflow:hidden;white-space:pre;text-overflow:ellipsis}.pl-autocomplete__container{position:absolute;top:0;left:0;right:0;border-radius:6px;min-height:var(--control-height);color:var(--txt-01)}.pl-autocomplete__contour{border-radius:var(--border-radius-control);border:var(--contour-border-width) solid var(--contour-color);box-shadow:var(--contour-box-shadow);z-index:0;pointer-events:none}.pl-autocomplete__field{position:relative;border-radius:6px;overflow:hidden;background:transparent;padding-left:11px;min-height:var(--control-height);line-height:var(--control-height);display:flex;flex-direction:row;align-items:center;cursor:pointer}.pl-autocomplete__field .input-value{position:absolute;top:0;left:0;bottom:0;right:0;display:flex;flex-direction:row;align-items:center;padding:0 60px 0 11px;pointer-events:none;line-height:20px;color:var(--txt-01);overflow:hidden;white-space:pre;text-overflow:ellipsis;cursor:inherit}.pl-autocomplete__field input{min-height:calc(var(--control-height) - 2px);line-height:20px;font-family:inherit;font-size:inherit;background-color:transparent;border:none;padding:0;width:calc(100% - 40px);color:var(--txt-01);caret-color:var(--border-color-focus)}.pl-autocomplete__field input:focus{outline:none}.pl-autocomplete__field input:placeholder-shown{text-overflow:ellipsis}.pl-autocomplete__field input::placeholder{color:var(--color-placeholder)}.pl-autocomplete__helper{font-size:12px;color:var(--txt-03);padding:2px 0 0;white-space:pre-wrap;text-overflow:ellipsis;font-weight:500;line-height:16px;margin-top:6px}.pl-autocomplete__error{font-size:12px;color:var(--txt-error);padding:2px 0 0;white-space:pre-wrap;text-overflow:ellipsis;font-weight:500;line-height:16px;margin-top:6px}.pl-autocomplete__controls{display:flex;flex-direction:row;align-items:center;min-height:var(--control-height);gap:6px;margin-left:auto}.pl-autocomplete__controls .mask-16,.pl-autocomplete__controls .mask-24{--icon-color: var(--control-mask-fill);cursor:pointer}.pl-autocomplete__controls .clear{--icon-color: var(--ic-02)}.pl-autocomplete__controls .mask-loading{--icon-color: var(#07AD3E);animation:spin 2.5s linear infinite}.pl-autocomplete__arrow-wrapper{display:flex;align-items:center;min-height:var(--control-height);padding-right:11px}.pl-autocomplete .arrow-icon{cursor:pointer}.pl-autocomplete .arrow-icon.arrow-icon-default{transition:transform .2s;background-color:var(--control-mask-fill);mask-image:url("data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M2.46967%206.53033L3.53033%205.46967L8%209.93934L12.4697%205.46967L13.5303%206.53033L8%2012.0607L2.46967%206.53033Z'%20fill='%23110529'/%3e%3c/svg%3e");-webkit-mask-image:url("data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M2.46967%206.53033L3.53033%205.46967L8%209.93934L12.4697%205.46967L13.5303%206.53033L8%2012.0607L2.46967%206.53033Z'%20fill='%23110529'/%3e%3c/svg%3e");mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;mask-position:center;-webkit-mask-position:center;mask-size:16px;-webkit-mask-size:16px;width:16px;height:16px}.pl-autocomplete.open,.pl-autocomplete:focus-within{z-index:1;--label-color: var(--txt-focus)}.pl-autocomplete.open .pl-autocomplete__container{z-index:1000}.pl-autocomplete.open .pl-autocomplete__field{border-radius:6px 6px 0 0}.pl-autocomplete.open .arrow-icon.arrow-icon-default{background-color:var(--control-mask-fill);transform:rotate(-180deg)}.pl-autocomplete:hover{--contour-color: var(--control-hover-color)}.pl-autocomplete:focus-within:not(.error){--label-color: var(--txt-focus);--contour-color: var(--border-color-focus);--contour-border-width: 2px;--contour-box-shadow: 0 0 0 4px var(--border-color-focus-shadow)}.pl-autocomplete:focus-within.error{--contour-border-width: 2px;--contour-box-shadow: 0 0 0 4px var(--color-error-shadow)}.pl-autocomplete.error{--contour-color: var(--txt-error);--label-color: var(--txt-error)}.pl-autocomplete.disabled{--contour-color: var(--color-dis-01);--control-mask-fill: var(--color-dis-01);--label-color: var(--color-dis-01);cursor:not-allowed;pointer-events:none;-webkit-user-select:none;user-select:none}.pl-autocomplete.disabled .input-value{color:var(--dis-01)}
2
2
  .double-contour.top>div{border-bottom-right-radius:0;border-bottom-left-radius:0}.double-contour.bottom>div{border-top-right-radius:0;border-top-left-radius:0}.double-contour.left>div{border-top-right-radius:0;border-bottom-right-radius:0}.double-contour.right>div{border-top-left-radius:0;border-bottom-left-radius:0}.double-contour.top-left>div{border-top-right-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.double-contour.top-right>div{border-bottom-right-radius:0;border-top-left-radius:0;border-top-right-radius:0}.double-contour.bottom-left>div{border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:0}.double-contour.bottom-right>div{border-top-right-radius:0;border-bottom-left-radius:0;border-top-left-radius:0}.double-contour.middle>div{border-radius:0}
3
- .ui-lt-container{min-width:0;white-space:nowrap;overflow:hidden;position:relative;border-radius:5px}.ui-lt-container span{display:inline-block;overflow:hidden;text-overflow:ellipsis;width:100%;vertical-align:bottom;pointer-events:all!important}.ui-lt-container .ui-lt-animate{position:relative;animation:left-to-right var(--5deba9de) infinite alternate linear;overflow:unset!important;text-overflow:unset!important;width:fit-content!important}@keyframes left-to-right{0%{transform:translate(0);left:0%}to{transform:translate(-101%);left:101%}}`)),document.head.appendChild(o)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})();
4
- import { defineComponent as ie, mergeModels as se, useModel as ue, useSlots as ce, ref as m, useTemplateRef as de, reactive as pe, computed as v, unref as c, watch as h, watchPostEffect as ve, createElementBlock as i, openBlock as a, withModifiers as O, createElementVNode as _, createCommentVNode as d, normalizeClass as F, createBlock as k, createVNode as z, withDirectives as fe, vModelText as me, withCtx as M, createTextVNode as he, toDisplayString as w, renderSlot as N, Fragment as _e, renderList as ge } from "vue";
3
+ .ui-lt-container{min-width:0;white-space:nowrap;overflow:hidden;position:relative;border-radius:5px}.ui-lt-container span{display:inline-block;overflow:hidden;text-overflow:ellipsis;width:100%;vertical-align:bottom;pointer-events:all!important}.ui-lt-container .ui-lt-animate{position:relative;animation:left-to-right var(--v5deba9de) infinite alternate linear;overflow:unset!important;text-overflow:unset!important;width:fit-content!important}@keyframes left-to-right{0%{transform:translate(0);left:0%}to{transform:translate(-101%);left:101%}}`)),document.head.appendChild(o)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})();
4
+ import { defineComponent as ie, mergeModels as ue, useModel as se, useSlots as ce, ref as h, useTemplateRef as de, reactive as pe, computed as f, unref as d, watch as g, watchPostEffect as ve, createElementBlock as u, openBlock as n, withModifiers as S, createElementVNode as _, createCommentVNode as p, normalizeClass as F, createBlock as w, createVNode as z, withDirectives as fe, vModelText as me, withCtx as M, createTextVNode as he, toDisplayString as x, renderSlot as N, Fragment as ge, renderList as _e } from "vue";
5
5
 
6
6
  import { tap as ye } from "../../helpers/functions.js";
7
7
  import ke from "../PlTooltip/PlTooltip.vue.js";
8
8
  import we from "../../utils/DoubleContour.vue.js";
9
9
 
10
- import { useLabelNotch as Ie } from "../../utils/useLabelNotch.js";
10
+ import { useLabelNotch as xe } from "../../utils/useLabelNotch.js";
11
11
  import { deepEqual as I } from "../../helpers/objects.js";
12
- import be from "../DropdownListItem.vue.js";
13
- import Se from "../LongText.vue.js";
12
+ import Ie from "../DropdownListItem.vue.js";
13
+ import be from "../LongText.vue.js";
14
14
 
15
15
  import { normalizeListOptions as T } from "../../helpers/utils.js";
16
- import Oe from "../PlIcon16/PlIcon16.vue.js";
17
- import Ee from "../PlIcon24/PlIcon24.vue.js";
18
- import Ve from "../../utils/DropdownOverlay/DropdownOverlay.vue.js";
19
- import { refDebounced as xe } from "@vueuse/core";
16
+ import Se from "../PlIcon16/PlIcon16.vue.js";
17
+ import Oe from "../PlIcon24/PlIcon24.vue.js";
18
+ import Ee from "../../utils/DropdownOverlay/DropdownOverlay.vue.js";
19
+ import { refDebounced as Ve } from "@vueuse/core";
20
20
  import { useWatchFetch as H } from "../../composition/useWatchFetch.js";
21
21
  import { getErrorMessage as Ae } from "../../helpers/error.js";
22
22
  import $e from "../PlSvg/PlSvg.vue.js";
@@ -43,7 +43,7 @@ const De = ["tabindex"], Fe = { class: "pl-autocomplete__container" }, Me = { cl
43
43
  name: "PlAutocomplete"
44
44
  }, po = /* @__PURE__ */ ie({
45
45
  ...Ue,
46
- props: /* @__PURE__ */ se({
46
+ props: /* @__PURE__ */ ue({
47
47
  optionsSearch: {},
48
48
  modelSearch: { type: Function, default: void 0 },
49
49
  label: { default: "" },
@@ -57,55 +57,55 @@ const De = ["tabindex"], Fe = { class: "pl-autocomplete__container" }, Me = { cl
57
57
  arrowIcon: { default: void 0 },
58
58
  arrowIconLarge: { default: void 0 },
59
59
  optionSize: { default: "small" },
60
- formatValue: { type: Function, default: (b) => String(b) },
60
+ formatValue: { type: Function, default: (a) => String(a) },
61
61
  groupPosition: { default: void 0 }
62
62
  }, {
63
63
  modelValue: { required: !0 },
64
64
  modelModifiers: {}
65
65
  }),
66
66
  emits: ["update:modelValue"],
67
- setup(b) {
68
- const n = ue(b, "modelValue"), u = b, U = ce(), p = m(), E = m(), R = de("overlay"), s = m(null), t = pe({
67
+ setup(a) {
68
+ const r = se(a, "modelValue"), c = a, U = ce(), v = h(), O = h(), R = de("overlay"), s = h(null), t = pe({
69
69
  activeIndex: -1,
70
70
  open: !1
71
71
  }), K = () => ye(
72
- y.value.findIndex((e) => I(e.value, n.value)),
72
+ k.value.findIndex((e) => I(e.value, r.value)),
73
73
  (e) => e < 0 ? 0 : e
74
- ), W = () => t.activeIndex = K(), V = m([]), g = m(), y = v(() => T(V.value).map((e, o) => ({
74
+ ), W = () => t.activeIndex = K(), E = h([]), y = h(), k = f(() => T(E.value).map((e, o) => ({
75
75
  ...e,
76
76
  index: o,
77
77
  isSelected: o === j.value,
78
78
  isActive: o === t.activeIndex
79
- }))), S = m(!0), x = m(!1), A = v(() => u.disabled), j = v(() => V.value.findIndex((e) => I(e.value, n.value))), $ = v(() => {
80
- if (!S.value) {
81
- if (u.error)
82
- return Ae(u.error);
83
- if (x.value)
79
+ }))), b = h(!0), V = h(!1), A = f(() => c.disabled), j = f(() => E.value.findIndex((e) => I(e.value, r.value))), $ = f(() => {
80
+ if (!b.value) {
81
+ if (c.error)
82
+ return Ae(c.error);
83
+ if (V.value)
84
84
  return "Data loading error";
85
85
  }
86
- }), B = v(() => {
87
- const e = c(g), o = c(y), l = e ?? o.find((r) => I(r.value, n.value)) ?? o.find((r) => I(r.value, n.value));
88
- return (l == null ? void 0 : l.label) || (n.value ? u.formatValue(n.value) : "");
89
- }), G = v(() => !t.open && n.value ? "" : n.value ? String(B.value) : u.placeholder), J = v(() => n.value !== void 0 && n.value !== null), Q = v(() => A.value ? void 0 : "0"), L = (e) => {
86
+ }), B = f(() => {
87
+ const e = d(y), o = d(k), l = e ?? o.find((i) => I(i.value, r.value)) ?? o.find((i) => I(i.value, r.value));
88
+ return (l == null ? void 0 : l.label) || (r.value ? c.formatValue(r.value) : "");
89
+ }), G = f(() => !t.open && r.value ? "" : r.value ? String(B.value) : c.placeholder), J = f(() => r.value !== void 0 && r.value !== null), Q = f(() => A.value ? void 0 : "0"), L = (e) => {
90
90
  var o;
91
- n.value = e == null ? void 0 : e.value, g.value = e, s.value = null, t.open = !1, (o = p == null ? void 0 : p.value) == null || o.focus();
91
+ r.value = e == null ? void 0 : e.value, y.value = e, s.value = null, t.open = !1, (o = v == null ? void 0 : v.value) == null || o.focus();
92
92
  }, X = () => {
93
- n.value = void 0, g.value = void 0;
93
+ r.value = void 0, y.value = void 0;
94
94
  }, Y = () => {
95
95
  var e;
96
- return (e = E.value) == null ? void 0 : e.focus();
96
+ return (e = O.value) == null ? void 0 : e.focus();
97
97
  }, Z = () => {
98
98
  t.open = !t.open;
99
99
  };
100
- h(() => t.open, (e) => {
100
+ g(() => t.open, (e) => {
101
101
  s.value = e ? "" : null;
102
102
  });
103
103
  const ee = () => {
104
104
  t.open = !0;
105
105
  }, oe = (e) => {
106
- var l, r, f;
106
+ var l, i, m;
107
107
  const o = e.relatedTarget;
108
- !((l = p.value) != null && l.contains(o)) && !((f = (r = R.value) == null ? void 0 : r.listRef) != null && f.contains(o)) && (s.value = null, t.open = !1);
108
+ !((l = v.value) != null && l.contains(o)) && !((m = (i = R.value) == null ? void 0 : i.listRef) != null && m.contains(o)) && (s.value = null, t.open = !1);
109
109
  }, te = (e) => {
110
110
  var q;
111
111
  if (["ArrowDown", "ArrowUp", "Enter", "Escape"].includes(e.code))
@@ -117,46 +117,46 @@ const De = ["tabindex"], Fe = { class: "pl-autocomplete__container" }, Me = { cl
117
117
  e.code === "Enter" && (t.open = !0, s.value = "");
118
118
  return;
119
119
  }
120
- e.code === "Escape" && (t.open = !1, s.value = null, (q = p.value) == null || q.focus());
121
- const r = c(y), { length: f } = r;
122
- if (!f)
120
+ e.code === "Escape" && (t.open = !1, s.value = null, (q = v.value) == null || q.focus());
121
+ const i = d(k), { length: m } = i;
122
+ if (!m)
123
123
  return;
124
- e.code === "Enter" && L(r.find((D) => D.index === l));
125
- const ae = r.findIndex((D) => D.index === l) ?? -1, ne = e.code === "ArrowDown" ? 1 : e.code === "ArrowUp" ? -1 : 0, re = Math.abs(ae + ne + f) % f;
126
- t.activeIndex = y.value[re].index ?? -1;
124
+ e.code === "Enter" && L(i.find((D) => D.index === l));
125
+ const ae = i.findIndex((D) => D.index === l) ?? -1, ne = e.code === "ArrowDown" ? 1 : e.code === "ArrowUp" ? -1 : 0, re = Math.abs(ae + ne + m) % m;
126
+ t.activeIndex = k.value[re].index ?? -1;
127
127
  };
128
- Ie(p), h(() => n.value, W, { immediate: !0 }), h(
128
+ xe(v), g(() => r.value, W, { immediate: !0 }), g(
129
129
  () => t.open,
130
130
  (e) => {
131
131
  var o;
132
- return e ? (o = E.value) == null ? void 0 : o.focus() : "";
132
+ return e ? (o = O.value) == null ? void 0 : o.focus() : "";
133
133
  }
134
134
  ), ve(() => {
135
135
  var e;
136
136
  s.value, t.activeIndex >= 0 && t.open && ((e = R.value) == null || e.scrollIntoActive());
137
137
  });
138
- const le = xe(s, 300, { maxWait: 1e3 }), C = H(() => le.value, async (e) => {
138
+ const le = Ve(s, 300, { maxWait: 1e3 }), C = H(() => le.value, async (e) => {
139
139
  if (e !== null)
140
- return u.optionsSearch(e);
141
- }), P = H(() => n.value, async (e) => {
140
+ return c.optionsSearch(e);
141
+ }), P = H(() => r.value, async (e) => {
142
142
  var o, l;
143
- return e && !I((o = g.value) == null ? void 0 : o.value, e) ? u.modelSearch ? u.modelSearch(e) : (l = await u.optionsSearch(String(e))) == null ? void 0 : l[0] : g.value;
143
+ return e && !I((o = y.value) == null ? void 0 : o.value, e) ? c.modelSearch ? c.modelSearch(e) : (l = await c.optionsSearch(String(e))) == null ? void 0 : l[0] : y.value;
144
144
  });
145
- return h(() => C.value, (e) => {
146
- e && (V.value = e, s.value !== null && (x.value = !1));
147
- }), h(() => P.value, (e) => {
148
- e && (g.value = T([e])[0]);
149
- }), h(() => C.error, (e) => {
150
- e && (x.value = !!e);
151
- }), h(() => C.loading || P.loading, (e) => {
152
- S.value = e;
153
- }), (e, o) => (a(), i("div", {
145
+ return g(() => C.value, (e) => {
146
+ e && (E.value = e, s.value !== null && (V.value = !1));
147
+ }), g(() => P.value, (e) => {
148
+ e && (y.value = T([e])[0]);
149
+ }), g(() => C.error, (e) => {
150
+ e && (V.value = !!e);
151
+ }), g(() => C.loading || P.loading, (e) => {
152
+ b.value = e;
153
+ }), (e, o) => (n(), u("div", {
154
154
  class: "pl-autocomplete__envelope",
155
- onClick: O(Y, ["stop"])
155
+ onClick: S(Y, ["stop"])
156
156
  }, [
157
157
  _("div", {
158
158
  ref_key: "rootRef",
159
- ref: p,
159
+ ref: v,
160
160
  tabindex: Q.value,
161
161
  class: F(["pl-autocomplete", { open: t.open, error: !!$.value, disabled: A.value }]),
162
162
  onKeydown: te,
@@ -166,7 +166,7 @@ const De = ["tabindex"], Fe = { class: "pl-autocomplete__container" }, Me = { cl
166
166
  _("div", Me, [
167
167
  fe(_("input", {
168
168
  ref_key: "input",
169
- ref: E,
169
+ ref: O,
170
170
  "onUpdate:modelValue": o[0] || (o[0] = (l) => s.value = l),
171
171
  type: "text",
172
172
  tabindex: "-1",
@@ -178,47 +178,47 @@ const De = ["tabindex"], Fe = { class: "pl-autocomplete__container" }, Me = { cl
178
178
  }, null, 40, Re), [
179
179
  [me, s.value]
180
180
  ]),
181
- t.open ? d("", !0) : (a(), i("div", Be, [
182
- z(Se, null, {
181
+ t.open ? p("", !0) : (n(), u("div", Be, [
182
+ z(be, null, {
183
183
  default: M(() => [
184
- he(w(B.value), 1)
184
+ he(x(B.value), 1)
185
185
  ]),
186
186
  _: 1
187
187
  })
188
188
  ])),
189
189
  _("div", Le, [
190
- S.value ? (a(), k(c(Ee), {
190
+ b.value ? (n(), w(d(Oe), {
191
191
  key: 0,
192
192
  name: "loading"
193
- })) : d("", !0),
194
- e.clearable && J.value ? (a(), k(c(Oe), {
193
+ })) : p("", !0),
194
+ a.clearable && J.value ? (n(), w(d(Se), {
195
195
  key: 1,
196
196
  class: "clear",
197
197
  name: "delete-clear",
198
- onClick: O(X, ["stop"])
199
- })) : d("", !0),
198
+ onClick: S(X, ["stop"])
199
+ })) : p("", !0),
200
200
  N(e.$slots, "append"),
201
201
  _("div", {
202
202
  class: "pl-autocomplete__arrow-wrapper",
203
- onClick: O(Z, ["stop"])
203
+ onClick: S(Z, ["stop"])
204
204
  }, [
205
- e.arrowIconLarge ? (a(), i("div", {
205
+ a.arrowIconLarge ? (n(), u("div", {
206
206
  key: 0,
207
- class: F(["arrow-icon", [`icon-24 ${e.arrowIconLarge}`]])
208
- }, null, 2)) : e.arrowIcon ? (a(), i("div", {
207
+ class: F(["arrow-icon", [`icon-24 ${a.arrowIconLarge}`]])
208
+ }, null, 2)) : a.arrowIcon ? (n(), u("div", {
209
209
  key: 1,
210
- class: F(["arrow-icon", [`icon-16 ${e.arrowIcon}`]])
211
- }, null, 2)) : (a(), i("div", Pe))
210
+ class: F(["arrow-icon", [`icon-16 ${a.arrowIcon}`]])
211
+ }, null, 2)) : (n(), u("div", Pe))
212
212
  ])
213
213
  ])
214
214
  ]),
215
- e.label ? (a(), i("label", qe, [
216
- e.required ? (a(), k(c($e), {
215
+ a.label ? (n(), u("label", qe, [
216
+ a.required ? (n(), w(d($e), {
217
217
  key: 0,
218
- uri: c(Ce)
219
- }, null, 8, ["uri"])) : d("", !0),
220
- _("span", null, w(e.label), 1),
221
- U.tooltip ? (a(), k(c(ke), {
218
+ uri: d(Ce)
219
+ }, null, 8, ["uri"])) : p("", !0),
220
+ _("span", null, x(a.label), 1),
221
+ U.tooltip ? (n(), w(d(ke), {
222
222
  key: 1,
223
223
  class: "info",
224
224
  position: "top"
@@ -227,36 +227,36 @@ const De = ["tabindex"], Fe = { class: "pl-autocomplete__container" }, Me = { cl
227
227
  N(e.$slots, "tooltip")
228
228
  ]),
229
229
  _: 3
230
- })) : d("", !0)
231
- ])) : d("", !0),
232
- t.open ? (a(), k(c(Ve), {
230
+ })) : p("", !0)
231
+ ])) : p("", !0),
232
+ t.open ? (n(), w(d(Ee), {
233
233
  key: 1,
234
234
  ref: "overlay",
235
- root: p.value,
235
+ root: v.value,
236
236
  class: "pl-autocomplete__options",
237
237
  tabindex: "-1",
238
238
  gap: 3
239
239
  }, {
240
240
  default: M(() => [
241
- (a(!0), i(_e, null, ge(y.value, (l, r) => (a(), k(be, {
242
- key: r,
241
+ (n(!0), u(ge, null, _e(k.value, (l, i) => (n(), w(Ie, {
242
+ key: i,
243
243
  option: l,
244
244
  "is-selected": l.isSelected,
245
245
  "is-hovered": l.isActive,
246
- size: e.optionSize,
247
- onClick: O((f) => L(l), ["stop"])
246
+ size: a.optionSize,
247
+ onClick: S((m) => L(l), ["stop"])
248
248
  }, null, 8, ["option", "is-selected", "is-hovered", "size", "onClick"]))), 128)),
249
- y.value.length ? d("", !0) : (a(), i("div", ze, "Nothing found"))
249
+ k.value.length ? p("", !0) : (n(), u("div", ze, "Nothing found"))
250
250
  ]),
251
251
  _: 1
252
- }, 8, ["root"])) : d("", !0),
252
+ }, 8, ["root"])) : p("", !0),
253
253
  z(we, {
254
254
  class: "pl-autocomplete__contour",
255
- "group-position": e.groupPosition
255
+ "group-position": a.groupPosition
256
256
  }, null, 8, ["group-position"])
257
257
  ])
258
258
  ], 42, De),
259
- $.value ? (a(), i("div", Ne, w($.value), 1)) : S.value && e.loadingOptionsHelper ? (a(), i("div", Te, w(e.loadingOptionsHelper), 1)) : e.helper ? (a(), i("div", He, w(e.helper), 1)) : d("", !0)
259
+ $.value ? (n(), u("div", Ne, x($.value), 1)) : b.value && a.loadingOptionsHelper ? (n(), u("div", Te, x(a.loadingOptionsHelper), 1)) : a.helper ? (n(), u("div", He, x(a.helper), 1)) : p("", !0)
260
260
  ]));
261
261
  }
262
262
  });