@milaboratories/uikit 2.6.1 → 2.6.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +143 -143
- package/.turbo/turbo-type-check.log +1 -1
- package/CHANGELOG.md +14 -0
- package/dist/base/BtnBase.vue.js +18 -18
- package/dist/base/BtnBase.vue.js.map +1 -1
- package/dist/components/ContextProvider.vue.js.map +1 -1
- package/dist/components/DataTable/BaseCellComponent.vue.js +20 -20
- package/dist/components/DataTable/BaseCellComponent.vue.js.map +1 -1
- package/dist/components/DataTable/ColumnCaret.vue.js +6 -6
- package/dist/components/DataTable/ColumnCaret.vue.js.map +1 -1
- package/dist/components/DataTable/ColumnsCommandMenu.vue.js.map +1 -1
- package/dist/components/DataTable/RowsCommandMenu.vue.js.map +1 -1
- package/dist/components/DataTable/TScroll.vue.js +12 -12
- package/dist/components/DataTable/TScroll.vue.js.map +1 -1
- package/dist/components/DataTable/TableComponent.vue.js +5 -3
- package/dist/components/DataTable/TableComponent.vue.js.map +1 -1
- package/dist/components/DataTable/TdCell.vue.js +36 -36
- package/dist/components/DataTable/TdCell.vue.js.map +1 -1
- package/dist/components/DataTable/ThCell.vue.js +27 -27
- package/dist/components/DataTable/ThCell.vue.js.map +1 -1
- package/dist/components/DataTable/TrBody.vue.js +12 -12
- package/dist/components/DataTable/TrBody.vue.js.map +1 -1
- package/dist/components/DataTable/TrHead.vue.js.map +1 -1
- package/dist/components/DataTable/assets/TableIcon.vue.js +2 -2
- package/dist/components/DataTable/assets/TableIcon.vue.js.map +1 -1
- package/dist/components/DropdownListItem.vue.js +18 -18
- package/dist/components/DropdownListItem.vue.js.map +1 -1
- package/dist/components/HScroll.vue.js.map +1 -1
- package/dist/components/InputRange.vue.js.map +1 -1
- package/dist/components/LongText.vue.js +1 -1
- package/dist/components/LongText.vue.js.map +1 -1
- package/dist/components/LongText.vue3.js +1 -1
- package/dist/components/PlAccordion/ExpandTransition.vue.js.map +1 -1
- package/dist/components/PlAccordion/ExpandTransition.vue2.js.map +1 -1
- package/dist/components/PlAccordion/ExpandTransition.vue3.js +1 -1
- package/dist/components/PlAccordion/PlAccordion.vue.js.map +1 -1
- package/dist/components/PlAccordion/PlAccordionSection.vue2.js +21 -21
- package/dist/components/PlAccordion/PlAccordionSection.vue2.js.map +1 -1
- package/dist/components/PlAlert/PlAlert.vue.js +23 -23
- package/dist/components/PlAlert/PlAlert.vue.js.map +1 -1
- package/dist/components/PlAutocomplete/PlAutocomplete.vue.d.ts +4 -0
- package/dist/components/PlAutocomplete/PlAutocomplete.vue.js +112 -106
- package/dist/components/PlAutocomplete/PlAutocomplete.vue.js.map +1 -1
- package/dist/components/PlAutocompleteMulti/PlAutocompleteMulti.vue.d.ts +4 -0
- package/dist/components/PlAutocompleteMulti/PlAutocompleteMulti.vue.js +100 -94
- package/dist/components/PlAutocompleteMulti/PlAutocompleteMulti.vue.js.map +1 -1
- package/dist/components/PlBtnAccent/PlBtnAccent.vue.js.map +1 -1
- package/dist/components/PlBtnDanger/PlBtnDanger.vue.js.map +1 -1
- package/dist/components/PlBtnGhost/PlBtnGhost.vue.js +21 -21
- package/dist/components/PlBtnGhost/PlBtnGhost.vue.js.map +1 -1
- package/dist/components/PlBtnGroup/PlBtnGroup.vue.js +34 -34
- package/dist/components/PlBtnGroup/PlBtnGroup.vue.js.map +1 -1
- package/dist/components/PlBtnLink/PlBtnLink.vue.js +12 -12
- package/dist/components/PlBtnLink/PlBtnLink.vue.js.map +1 -1
- package/dist/components/PlBtnPrimary/PlBtnPrimary.vue.js.map +1 -1
- package/dist/components/PlBtnSecondary/PlBtnSecondary.vue.js.map +1 -1
- package/dist/components/PlBtnSplit/PlBtnSplit.vue.js +31 -31
- package/dist/components/PlBtnSplit/PlBtnSplit.vue.js.map +1 -1
- package/dist/components/PlChartHistogram/PlChartHistogram.vue2.js +18 -18
- package/dist/components/PlChartHistogram/PlChartHistogram.vue2.js.map +1 -1
- package/dist/components/PlChartStackedBar/Legends.vue2.js.map +1 -1
- package/dist/components/PlChartStackedBar/PlChartStackedBar.vue2.js +15 -15
- package/dist/components/PlChartStackedBar/PlChartStackedBar.vue2.js.map +1 -1
- package/dist/components/PlChartStackedBar/PlChartStackedBarCompact.vue2.js.map +1 -1
- package/dist/components/PlChartStackedBar/StackedRow.vue2.js.map +1 -1
- package/dist/components/PlChartStackedBar/StackedRowCompact.vue2.js.map +1 -1
- package/dist/components/PlCheckbox/PlCheckbox.vue.js +13 -13
- package/dist/components/PlCheckbox/PlCheckbox.vue.js.map +1 -1
- package/dist/components/PlCheckbox/PlCheckboxBase.vue.js +6 -6
- package/dist/components/PlCheckbox/PlCheckboxBase.vue.js.map +1 -1
- package/dist/components/PlCheckboxGroup/PlCheckboxGroup.vue.js +28 -28
- package/dist/components/PlCheckboxGroup/PlCheckboxGroup.vue.js.map +1 -1
- package/dist/components/PlChip/PlChip.vue.js +20 -20
- package/dist/components/PlChip/PlChip.vue.js.map +1 -1
- package/dist/components/PlClipboard/PlClipboard.vue2.js.map +1 -1
- package/dist/components/PlConfirmDialog.vue.js +14 -14
- package/dist/components/PlConfirmDialog.vue.js.map +1 -1
- package/dist/components/PlDialogModal/PlDialogModal.vue.js +30 -30
- package/dist/components/PlDialogModal/PlDialogModal.vue.js.map +1 -1
- package/dist/components/PlDropdown/OptionList.vue.js +40 -40
- package/dist/components/PlDropdown/OptionList.vue.js.map +1 -1
- package/dist/components/PlDropdown/PlDropdown.vue.d.ts +8 -0
- package/dist/components/PlDropdown/PlDropdown.vue.js +102 -95
- package/dist/components/PlDropdown/PlDropdown.vue.js.map +1 -1
- package/dist/components/PlDropdownLegacy/PlDropdownLegacy.vue.js +95 -93
- package/dist/components/PlDropdownLegacy/PlDropdownLegacy.vue.js.map +1 -1
- package/dist/components/PlDropdownLine/PlDropdownLine.vue.d.ts +1 -1
- package/dist/components/PlDropdownLine/PlDropdownLine.vue.js +4 -4
- package/dist/components/PlDropdownLine/PlDropdownLine.vue.js.map +1 -1
- package/dist/components/PlDropdownLine/ResizableInput.vue.js +12 -12
- package/dist/components/PlDropdownLine/ResizableInput.vue.js.map +1 -1
- package/dist/components/PlDropdownMulti/PlDropdownMulti.vue.d.ts +4 -0
- package/dist/components/PlDropdownMulti/PlDropdownMulti.vue.js +88 -82
- package/dist/components/PlDropdownMulti/PlDropdownMulti.vue.js.map +1 -1
- package/dist/components/PlDropdownMultiRef/PlDropdownMultiRef.vue.d.ts +1 -1
- package/dist/components/PlDropdownMultiRef/PlDropdownMultiRef.vue.js.map +1 -1
- package/dist/components/PlDropdownRef/PlDropdownRef.vue.js +11 -11
- package/dist/components/PlDropdownRef/PlDropdownRef.vue.js.map +1 -1
- package/dist/components/PlEditableTitle/PlEditableTitle.vue.d.ts +1 -1
- package/dist/components/PlEditableTitle/PlEditableTitle.vue.js +36 -36
- package/dist/components/PlEditableTitle/PlEditableTitle.vue.js.map +1 -1
- package/dist/components/PlElementList/PlElementList.vue.d.ts +20 -0
- package/dist/components/PlElementList/PlElementList.vue2.js +180 -135
- package/dist/components/PlElementList/PlElementList.vue2.js.map +1 -1
- package/dist/components/PlElementList/PlElementListItem.vue.d.ts +20 -0
- package/dist/components/PlElementList/PlElementListItem.vue2.js +101 -76
- package/dist/components/PlElementList/PlElementListItem.vue2.js.map +1 -1
- package/dist/components/PlErrorAlert/PlErrorAlert.vue2.js.map +1 -1
- package/dist/components/PlErrorBoundary/PlErrorBoundary.vue.js.map +1 -1
- package/dist/components/PlFileDialog/Local.vue.js +24 -24
- package/dist/components/PlFileDialog/Local.vue.js.map +1 -1
- package/dist/components/PlFileDialog/PlFileDialog.vue.js +38 -38
- package/dist/components/PlFileDialog/PlFileDialog.vue.js.map +1 -1
- package/dist/components/PlFileDialog/Remote.vue.js +2 -2
- package/dist/components/PlFileDialog/Remote.vue.js.map +1 -1
- package/dist/components/PlFileDialog/Shortcuts.vue2.js +4 -4
- package/dist/components/PlFileDialog/Shortcuts.vue2.js.map +1 -1
- package/dist/components/PlFileInput/PlFileInput.vue.d.ts +1 -1
- package/dist/components/PlFileInput/PlFileInput.vue.js +78 -76
- package/dist/components/PlFileInput/PlFileInput.vue.js.map +1 -1
- package/dist/components/PlIcon16/PlIcon16.vue2.js.map +1 -1
- package/dist/components/PlIcon24/PlIcon24.vue2.js.map +1 -1
- package/dist/components/PlLoaderCircular/PlLoaderCircular.vue.js +11 -11
- package/dist/components/PlLoaderCircular/PlLoaderCircular.vue.js.map +1 -1
- package/dist/components/PlLogView/PlLogView.vue.js +62 -60
- package/dist/components/PlLogView/PlLogView.vue.js.map +1 -1
- package/dist/components/PlNotificationAlert/PlNotificationAlert.vue.js +22 -22
- package/dist/components/PlNotificationAlert/PlNotificationAlert.vue.js.map +1 -1
- package/dist/components/PlNumberField/PlNumberField.vue.d.ts +6 -1
- package/dist/components/PlNumberField/PlNumberField.vue.js +66 -60
- package/dist/components/PlNumberField/PlNumberField.vue.js.map +1 -1
- package/dist/components/PlProgressBar/PlProgressBar.vue.js +12 -12
- package/dist/components/PlProgressBar/PlProgressBar.vue.js.map +1 -1
- package/dist/components/PlProgressCell/PlProgressCell.vue.js +20 -20
- package/dist/components/PlProgressCell/PlProgressCell.vue.js.map +1 -1
- package/dist/components/PlRadio/PlRadio.vue2.js.map +1 -1
- package/dist/components/PlRadio/PlRadioGroup.vue2.js +8 -8
- package/dist/components/PlRadio/PlRadioGroup.vue2.js.map +1 -1
- package/dist/components/PlSearchField/PlSearchField.vue2.js +19 -19
- package/dist/components/PlSearchField/PlSearchField.vue2.js.map +1 -1
- package/dist/components/PlSectionSeparator/PlSectionSeparator.vue2.js +8 -8
- package/dist/components/PlSectionSeparator/PlSectionSeparator.vue2.js.map +1 -1
- package/dist/components/PlSidebar/PlSidebarGroup.vue2.js.map +1 -1
- package/dist/components/PlSidebar/PlSidebarItem.vue2.js.map +1 -1
- package/dist/components/PlSlideModal/PlPureSlideModal.vue.js +5 -3
- package/dist/components/PlSlideModal/PlPureSlideModal.vue.js.map +1 -1
- package/dist/components/PlSlideModal/PlSlideModal.vue2.js.map +1 -1
- package/dist/components/PlSplash/PlSplash.vue.js +16 -16
- package/dist/components/PlSplash/PlSplash.vue.js.map +1 -1
- package/dist/components/PlStatusTag/PlStatusTag.vue.js +7 -7
- package/dist/components/PlStatusTag/PlStatusTag.vue.js.map +1 -1
- package/dist/components/PlSvg/PlSvg.vue2.js.map +1 -1
- package/dist/components/PlTabs/PlTabs.vue.js +18 -18
- package/dist/components/PlTabs/PlTabs.vue.js.map +1 -1
- package/dist/components/PlTabs/Tab.vue.js +9 -9
- package/dist/components/PlTabs/Tab.vue.js.map +1 -1
- package/dist/components/PlTextArea/PlTextArea.vue.js +55 -53
- package/dist/components/PlTextArea/PlTextArea.vue.js.map +1 -1
- package/dist/components/PlTextField/PlTextField.vue.d.ts +4 -0
- package/dist/components/PlTextField/PlTextField.vue.js +66 -60
- package/dist/components/PlTextField/PlTextField.vue.js.map +1 -1
- package/dist/components/PlToggleSwitch/PlToggleSwitch.vue.js +14 -14
- package/dist/components/PlToggleSwitch/PlToggleSwitch.vue.js.map +1 -1
- package/dist/components/PlTooltip/Beak.vue.js +2 -2
- package/dist/components/PlTooltip/Beak.vue.js.map +1 -1
- package/dist/components/PlTooltip/PlTooltip.vue.js +50 -50
- package/dist/components/PlTooltip/PlTooltip.vue.js.map +1 -1
- package/dist/components/Scrollable.vue.js.map +1 -1
- package/dist/components/Slider.vue.js +35 -35
- package/dist/components/Slider.vue.js.map +1 -1
- package/dist/components/SliderRange.vue.js +47 -47
- package/dist/components/SliderRange.vue.js.map +1 -1
- package/dist/components/SliderRangeTriple.vue.js +47 -47
- package/dist/components/SliderRangeTriple.vue.js.map +1 -1
- package/dist/components/TabItem.vue.js.map +1 -1
- package/dist/components/ThemeSwitcher.vue.js +2 -2
- package/dist/components/ThemeSwitcher.vue.js.map +1 -1
- package/dist/components/TransitionSlidePanel.vue.js.map +1 -1
- package/dist/components/VScroll.vue.js.map +1 -1
- package/dist/components/contextMenu/Menu.vue2.js +12 -12
- package/dist/components/contextMenu/Menu.vue2.js.map +1 -1
- package/dist/composition/filters/metadata.d.ts +205 -0
- package/dist/composition/filters/metadata.js +129 -19
- package/dist/composition/filters/metadata.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/layout/PlBlockPage/PlBlockPage.vue.js +27 -27
- package/dist/layout/PlBlockPage/PlBlockPage.vue.js.map +1 -1
- package/dist/layout/PlContainer/PlContainer.vue.js +10 -10
- package/dist/layout/PlContainer/PlContainer.vue.js.map +1 -1
- package/dist/layout/PlGrid/PlGrid.vue.js.map +1 -1
- package/dist/layout/PlRow/PlRow.vue.js +8 -8
- package/dist/layout/PlRow/PlRow.vue.js.map +1 -1
- package/dist/layout/PlSpacer/PlSpacer.vue.js.map +1 -1
- package/dist/utils/DoubleContour.vue.d.ts +7 -1
- package/dist/utils/DoubleContour.vue.js +20 -13
- package/dist/utils/DoubleContour.vue.js.map +1 -1
- package/dist/utils/DoubleContour.vue3.js +7 -0
- package/dist/utils/DoubleContour.vue3.js.map +1 -0
- package/dist/utils/DropdownOverlay/DropdownOverlay.vue.js.map +1 -1
- package/dist/utils/PlCloseModalBtn.vue.js +2 -2
- package/dist/utils/PlCloseModalBtn.vue.js.map +1 -1
- package/dist/utils/TextLabel.vue.js.map +1 -1
- package/package.json +5 -5
- package/src/components/PlAutocomplete/PlAutocomplete.vue +6 -1
- package/src/components/PlAutocompleteMulti/PlAutocompleteMulti.vue +6 -1
- package/src/components/PlDropdown/PlDropdown.vue +12 -2
- package/src/components/PlDropdownMulti/PlDropdownMulti.vue +6 -1
- package/src/components/PlElementList/PlElementList.vue +40 -6
- package/src/components/PlElementList/PlElementListItem.vue +64 -47
- package/src/components/PlNumberField/PlNumberField.vue +4 -1
- package/src/components/PlTextField/PlTextField.vue +5 -1
- package/src/composition/filters/metadata.ts +105 -0
- package/src/utils/DoubleContour.vue +68 -2
- package/dist/utils/DoubleContour.vue2.js +0 -7
- 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
|
|
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
|
|
6
|
+
import b from "./ExpandTransition.vue2.js";
|
|
7
7
|
|
|
8
|
-
const
|
|
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(
|
|
19
|
-
const o =
|
|
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
|
|
21
|
+
return u.value ? a.value : o ? o.value === n : a.value;
|
|
22
22
|
},
|
|
23
23
|
set(e) {
|
|
24
|
-
|
|
24
|
+
u.value ? a.value = e : o && (o.value = o.value === n ? "" : n);
|
|
25
25
|
}
|
|
26
26
|
});
|
|
27
|
-
return (e,
|
|
28
|
-
|
|
29
|
-
class:
|
|
30
|
-
compact:
|
|
31
|
-
onClick:
|
|
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
|
-
|
|
33
|
+
default: y(() => [
|
|
34
|
+
r($(N), {
|
|
35
35
|
name: "chevron-right",
|
|
36
|
-
class:
|
|
36
|
+
class: s([{ [e.$style.down]: l.value }, e.$style.chevron])
|
|
37
37
|
}, null, 8, ["class"]),
|
|
38
|
-
M(" " + S(
|
|
38
|
+
M(" " + S(t.label), 1)
|
|
39
39
|
]),
|
|
40
40
|
_: 1
|
|
41
41
|
}, 8, ["class", "compact"]),
|
|
42
|
-
|
|
43
|
-
default:
|
|
44
|
-
l.value ? (
|
|
42
|
+
r(b, null, {
|
|
43
|
+
default: y(() => [
|
|
44
|
+
l.value ? (v(), f("div", {
|
|
45
45
|
key: 0,
|
|
46
|
-
class:
|
|
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
|
-
|
|
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
|
|
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
|
|
4
|
+
const y = {
|
|
5
5
|
key: 0,
|
|
6
6
|
class: "pl-alert__icon"
|
|
7
|
-
},
|
|
7
|
+
}, f = { class: "pl-alert__main" }, v = { key: 0 }, p = { class: "pl-alert__main__text" }, b = {
|
|
8
8
|
name: "PlAlert"
|
|
9
|
-
},
|
|
10
|
-
...
|
|
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
|
|
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 (
|
|
29
|
+
return (n, i) => e.modelValue ? (a(), t("div", {
|
|
30
30
|
key: 0,
|
|
31
|
-
class:
|
|
32
|
-
style:
|
|
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(),
|
|
35
|
-
|
|
36
|
-
class:
|
|
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
|
-
])) :
|
|
39
|
-
|
|
40
|
-
e.label ? (a(),
|
|
41
|
-
|
|
42
|
-
|
|
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(),
|
|
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:
|
|
51
|
-
})) :
|
|
52
|
-
], 6)) :
|
|
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
|
-
|
|
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;;;;"}
|
|
@@ -64,6 +64,10 @@ declare const _default: <M = unknown>(__VLS_props: NonNullable<Awaited<typeof __
|
|
|
64
64
|
* Formatter for the selected value if its label is absent
|
|
65
65
|
*/
|
|
66
66
|
formatValue?: (value: M) => string;
|
|
67
|
+
/**
|
|
68
|
+
* Makes some of corners not rounded
|
|
69
|
+
* */
|
|
70
|
+
groupPosition?: "top" | "bottom" | "left" | "right" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | "middle";
|
|
67
71
|
}) & Partial<{}>> & import('vue').PublicProps;
|
|
68
72
|
expose(exposed: import('vue').ShallowUnwrapRef<{}>): void;
|
|
69
73
|
attrs: any;
|
|
@@ -1,34 +1,36 @@
|
|
|
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
|
-
.
|
|
3
|
-
|
|
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(--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";
|
|
4
5
|
|
|
5
6
|
import { tap as ye } from "../../helpers/functions.js";
|
|
6
7
|
import ke from "../PlTooltip/PlTooltip.vue.js";
|
|
7
8
|
import we from "../../utils/DoubleContour.vue.js";
|
|
8
|
-
|
|
9
|
+
|
|
10
|
+
import { useLabelNotch as xe } from "../../utils/useLabelNotch.js";
|
|
9
11
|
import { deepEqual as I } from "../../helpers/objects.js";
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
+
import Ie from "../DropdownListItem.vue.js";
|
|
13
|
+
import be from "../LongText.vue.js";
|
|
12
14
|
|
|
13
15
|
import { normalizeListOptions as T } from "../../helpers/utils.js";
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
+
import Se from "../PlIcon16/PlIcon16.vue.js";
|
|
17
|
+
import Oe from "../PlIcon24/PlIcon24.vue.js";
|
|
16
18
|
import Ee from "../../utils/DropdownOverlay/DropdownOverlay.vue.js";
|
|
17
19
|
import { refDebounced as Ve } from "@vueuse/core";
|
|
18
20
|
import { useWatchFetch as H } from "../../composition/useWatchFetch.js";
|
|
19
21
|
import { getErrorMessage as Ae } from "../../helpers/error.js";
|
|
20
|
-
import
|
|
21
|
-
import
|
|
22
|
-
const
|
|
22
|
+
import $e from "../PlSvg/PlSvg.vue.js";
|
|
23
|
+
import Ce from "../../assets/images/required.svg.js";
|
|
24
|
+
const De = ["tabindex"], Fe = { class: "pl-autocomplete__container" }, Me = { class: "pl-autocomplete__field" }, Re = ["disabled", "placeholder"], Be = {
|
|
23
25
|
key: 0,
|
|
24
26
|
class: "input-value"
|
|
25
|
-
}, Le = { class: "pl-autocomplete__controls" },
|
|
27
|
+
}, Le = { class: "pl-autocomplete__controls" }, Pe = {
|
|
26
28
|
key: 2,
|
|
27
29
|
class: "arrow-icon arrow-icon-default"
|
|
28
|
-
},
|
|
30
|
+
}, qe = { key: 0 }, ze = {
|
|
29
31
|
key: 0,
|
|
30
32
|
class: "nothing-found"
|
|
31
|
-
},
|
|
33
|
+
}, Ne = {
|
|
32
34
|
key: 0,
|
|
33
35
|
class: "pl-autocomplete__error"
|
|
34
36
|
}, Te = {
|
|
@@ -39,9 +41,9 @@ const Fe = ["tabindex"], Me = { class: "pl-autocomplete__container" }, Re = { cl
|
|
|
39
41
|
class: "pl-autocomplete__helper"
|
|
40
42
|
}, Ue = {
|
|
41
43
|
name: "PlAutocomplete"
|
|
42
|
-
},
|
|
44
|
+
}, po = /* @__PURE__ */ ie({
|
|
43
45
|
...Ue,
|
|
44
|
-
props: /* @__PURE__ */
|
|
46
|
+
props: /* @__PURE__ */ ue({
|
|
45
47
|
optionsSearch: {},
|
|
46
48
|
modelSearch: { type: Function, default: void 0 },
|
|
47
49
|
label: { default: "" },
|
|
@@ -55,116 +57,117 @@ const Fe = ["tabindex"], Me = { class: "pl-autocomplete__container" }, Re = { cl
|
|
|
55
57
|
arrowIcon: { default: void 0 },
|
|
56
58
|
arrowIconLarge: { default: void 0 },
|
|
57
59
|
optionSize: { default: "small" },
|
|
58
|
-
formatValue: { type: Function, default: (
|
|
60
|
+
formatValue: { type: Function, default: (a) => String(a) },
|
|
61
|
+
groupPosition: { default: void 0 }
|
|
59
62
|
}, {
|
|
60
63
|
modelValue: { required: !0 },
|
|
61
64
|
modelModifiers: {}
|
|
62
65
|
}),
|
|
63
66
|
emits: ["update:modelValue"],
|
|
64
|
-
setup(
|
|
65
|
-
const
|
|
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({
|
|
66
69
|
activeIndex: -1,
|
|
67
70
|
open: !1
|
|
68
71
|
}), K = () => ye(
|
|
69
|
-
|
|
72
|
+
k.value.findIndex((e) => I(e.value, r.value)),
|
|
70
73
|
(e) => e < 0 ? 0 : e
|
|
71
|
-
), W = () => t.activeIndex = K(), E =
|
|
74
|
+
), W = () => t.activeIndex = K(), E = h([]), y = h(), k = f(() => T(E.value).map((e, o) => ({
|
|
72
75
|
...e,
|
|
73
76
|
index: o,
|
|
74
77
|
isSelected: o === j.value,
|
|
75
78
|
isActive: o === t.activeIndex
|
|
76
|
-
}))),
|
|
77
|
-
if (!
|
|
78
|
-
if (
|
|
79
|
-
return Ae(
|
|
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);
|
|
80
83
|
if (V.value)
|
|
81
84
|
return "Data loading error";
|
|
82
85
|
}
|
|
83
|
-
}), B =
|
|
84
|
-
const e =
|
|
85
|
-
return (l == null ? void 0 : l.label) || (
|
|
86
|
-
}), G =
|
|
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) => {
|
|
87
90
|
var o;
|
|
88
|
-
|
|
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();
|
|
89
92
|
}, X = () => {
|
|
90
|
-
|
|
93
|
+
r.value = void 0, y.value = void 0;
|
|
91
94
|
}, Y = () => {
|
|
92
95
|
var e;
|
|
93
|
-
return (e =
|
|
96
|
+
return (e = O.value) == null ? void 0 : e.focus();
|
|
94
97
|
}, Z = () => {
|
|
95
98
|
t.open = !t.open;
|
|
96
99
|
};
|
|
97
|
-
|
|
98
|
-
|
|
100
|
+
g(() => t.open, (e) => {
|
|
101
|
+
s.value = e ? "" : null;
|
|
99
102
|
});
|
|
100
103
|
const ee = () => {
|
|
101
104
|
t.open = !0;
|
|
102
105
|
}, oe = (e) => {
|
|
103
|
-
var l,
|
|
106
|
+
var l, i, m;
|
|
104
107
|
const o = e.relatedTarget;
|
|
105
|
-
!((l =
|
|
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);
|
|
106
109
|
}, te = (e) => {
|
|
107
|
-
var
|
|
110
|
+
var q;
|
|
108
111
|
if (["ArrowDown", "ArrowUp", "Enter", "Escape"].includes(e.code))
|
|
109
112
|
e.preventDefault();
|
|
110
113
|
else
|
|
111
114
|
return;
|
|
112
115
|
const { open: o, activeIndex: l } = t;
|
|
113
116
|
if (!o) {
|
|
114
|
-
e.code === "Enter" && (t.open = !0,
|
|
117
|
+
e.code === "Enter" && (t.open = !0, s.value = "");
|
|
115
118
|
return;
|
|
116
119
|
}
|
|
117
|
-
e.code === "Escape" && (t.open = !1,
|
|
118
|
-
const
|
|
119
|
-
if (!
|
|
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)
|
|
120
123
|
return;
|
|
121
|
-
e.code === "Enter" && L(
|
|
122
|
-
const ae =
|
|
123
|
-
t.activeIndex =
|
|
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;
|
|
124
127
|
};
|
|
125
|
-
|
|
128
|
+
xe(v), g(() => r.value, W, { immediate: !0 }), g(
|
|
126
129
|
() => t.open,
|
|
127
130
|
(e) => {
|
|
128
131
|
var o;
|
|
129
|
-
return e ? (o =
|
|
132
|
+
return e ? (o = O.value) == null ? void 0 : o.focus() : "";
|
|
130
133
|
}
|
|
131
134
|
), ve(() => {
|
|
132
135
|
var e;
|
|
133
|
-
|
|
136
|
+
s.value, t.activeIndex >= 0 && t.open && ((e = R.value) == null || e.scrollIntoActive());
|
|
134
137
|
});
|
|
135
|
-
const le = Ve(
|
|
138
|
+
const le = Ve(s, 300, { maxWait: 1e3 }), C = H(() => le.value, async (e) => {
|
|
136
139
|
if (e !== null)
|
|
137
|
-
return
|
|
138
|
-
}),
|
|
140
|
+
return c.optionsSearch(e);
|
|
141
|
+
}), P = H(() => r.value, async (e) => {
|
|
139
142
|
var o, l;
|
|
140
|
-
return e && !I((o =
|
|
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;
|
|
141
144
|
});
|
|
142
|
-
return
|
|
143
|
-
e && (E.value = e,
|
|
144
|
-
}),
|
|
145
|
-
e && (
|
|
146
|
-
}),
|
|
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) => {
|
|
147
150
|
e && (V.value = !!e);
|
|
148
|
-
}),
|
|
149
|
-
|
|
150
|
-
}), (e, o) => (
|
|
151
|
+
}), g(() => C.loading || P.loading, (e) => {
|
|
152
|
+
b.value = e;
|
|
153
|
+
}), (e, o) => (n(), u("div", {
|
|
151
154
|
class: "pl-autocomplete__envelope",
|
|
152
|
-
onClick:
|
|
155
|
+
onClick: S(Y, ["stop"])
|
|
153
156
|
}, [
|
|
154
157
|
_("div", {
|
|
155
158
|
ref_key: "rootRef",
|
|
156
|
-
ref:
|
|
159
|
+
ref: v,
|
|
157
160
|
tabindex: Q.value,
|
|
158
|
-
class:
|
|
161
|
+
class: F(["pl-autocomplete", { open: t.open, error: !!$.value, disabled: A.value }]),
|
|
159
162
|
onKeydown: te,
|
|
160
163
|
onFocusout: oe
|
|
161
164
|
}, [
|
|
162
|
-
_("div",
|
|
163
|
-
_("div",
|
|
165
|
+
_("div", Fe, [
|
|
166
|
+
_("div", Me, [
|
|
164
167
|
fe(_("input", {
|
|
165
168
|
ref_key: "input",
|
|
166
|
-
ref:
|
|
167
|
-
"onUpdate:modelValue": o[0] || (o[0] = (l) =>
|
|
169
|
+
ref: O,
|
|
170
|
+
"onUpdate:modelValue": o[0] || (o[0] = (l) => s.value = l),
|
|
168
171
|
type: "text",
|
|
169
172
|
tabindex: "-1",
|
|
170
173
|
disabled: A.value,
|
|
@@ -172,89 +175,92 @@ const Fe = ["tabindex"], Me = { class: "pl-autocomplete__container" }, Re = { cl
|
|
|
172
175
|
spellcheck: "false",
|
|
173
176
|
autocomplete: "chrome-off",
|
|
174
177
|
onFocus: ee
|
|
175
|
-
}, null, 40,
|
|
176
|
-
[me,
|
|
178
|
+
}, null, 40, Re), [
|
|
179
|
+
[me, s.value]
|
|
177
180
|
]),
|
|
178
|
-
t.open ?
|
|
179
|
-
|
|
180
|
-
default:
|
|
181
|
-
he(
|
|
181
|
+
t.open ? p("", !0) : (n(), u("div", Be, [
|
|
182
|
+
z(be, null, {
|
|
183
|
+
default: M(() => [
|
|
184
|
+
he(x(B.value), 1)
|
|
182
185
|
]),
|
|
183
186
|
_: 1
|
|
184
187
|
})
|
|
185
188
|
])),
|
|
186
189
|
_("div", Le, [
|
|
187
|
-
|
|
190
|
+
b.value ? (n(), w(d(Oe), {
|
|
188
191
|
key: 0,
|
|
189
192
|
name: "loading"
|
|
190
|
-
})) :
|
|
191
|
-
|
|
193
|
+
})) : p("", !0),
|
|
194
|
+
a.clearable && J.value ? (n(), w(d(Se), {
|
|
192
195
|
key: 1,
|
|
193
196
|
class: "clear",
|
|
194
197
|
name: "delete-clear",
|
|
195
|
-
onClick:
|
|
196
|
-
})) :
|
|
197
|
-
|
|
198
|
+
onClick: S(X, ["stop"])
|
|
199
|
+
})) : p("", !0),
|
|
200
|
+
N(e.$slots, "append"),
|
|
198
201
|
_("div", {
|
|
199
202
|
class: "pl-autocomplete__arrow-wrapper",
|
|
200
|
-
onClick:
|
|
203
|
+
onClick: S(Z, ["stop"])
|
|
201
204
|
}, [
|
|
202
|
-
|
|
205
|
+
a.arrowIconLarge ? (n(), u("div", {
|
|
203
206
|
key: 0,
|
|
204
|
-
class:
|
|
205
|
-
}, null, 2)) :
|
|
207
|
+
class: F(["arrow-icon", [`icon-24 ${a.arrowIconLarge}`]])
|
|
208
|
+
}, null, 2)) : a.arrowIcon ? (n(), u("div", {
|
|
206
209
|
key: 1,
|
|
207
|
-
class:
|
|
208
|
-
}, null, 2)) : (
|
|
210
|
+
class: F(["arrow-icon", [`icon-16 ${a.arrowIcon}`]])
|
|
211
|
+
}, null, 2)) : (n(), u("div", Pe))
|
|
209
212
|
])
|
|
210
213
|
])
|
|
211
214
|
]),
|
|
212
|
-
|
|
213
|
-
|
|
215
|
+
a.label ? (n(), u("label", qe, [
|
|
216
|
+
a.required ? (n(), w(d($e), {
|
|
214
217
|
key: 0,
|
|
215
|
-
uri:
|
|
216
|
-
}, null, 8, ["uri"])) :
|
|
217
|
-
_("span", null,
|
|
218
|
-
U.tooltip ? (
|
|
218
|
+
uri: d(Ce)
|
|
219
|
+
}, null, 8, ["uri"])) : p("", !0),
|
|
220
|
+
_("span", null, x(a.label), 1),
|
|
221
|
+
U.tooltip ? (n(), w(d(ke), {
|
|
219
222
|
key: 1,
|
|
220
223
|
class: "info",
|
|
221
224
|
position: "top"
|
|
222
225
|
}, {
|
|
223
|
-
tooltip:
|
|
224
|
-
|
|
226
|
+
tooltip: M(() => [
|
|
227
|
+
N(e.$slots, "tooltip")
|
|
225
228
|
]),
|
|
226
229
|
_: 3
|
|
227
|
-
})) :
|
|
228
|
-
])) :
|
|
229
|
-
t.open ? (
|
|
230
|
+
})) : p("", !0)
|
|
231
|
+
])) : p("", !0),
|
|
232
|
+
t.open ? (n(), w(d(Ee), {
|
|
230
233
|
key: 1,
|
|
231
234
|
ref: "overlay",
|
|
232
|
-
root:
|
|
235
|
+
root: v.value,
|
|
233
236
|
class: "pl-autocomplete__options",
|
|
234
237
|
tabindex: "-1",
|
|
235
238
|
gap: 3
|
|
236
239
|
}, {
|
|
237
|
-
default:
|
|
238
|
-
(
|
|
239
|
-
key:
|
|
240
|
+
default: M(() => [
|
|
241
|
+
(n(!0), u(ge, null, _e(k.value, (l, i) => (n(), w(Ie, {
|
|
242
|
+
key: i,
|
|
240
243
|
option: l,
|
|
241
244
|
"is-selected": l.isSelected,
|
|
242
245
|
"is-hovered": l.isActive,
|
|
243
|
-
size:
|
|
244
|
-
onClick:
|
|
246
|
+
size: a.optionSize,
|
|
247
|
+
onClick: S((m) => L(l), ["stop"])
|
|
245
248
|
}, null, 8, ["option", "is-selected", "is-hovered", "size", "onClick"]))), 128)),
|
|
246
|
-
|
|
249
|
+
k.value.length ? p("", !0) : (n(), u("div", ze, "Nothing found"))
|
|
247
250
|
]),
|
|
248
251
|
_: 1
|
|
249
|
-
}, 8, ["root"])) :
|
|
250
|
-
|
|
252
|
+
}, 8, ["root"])) : p("", !0),
|
|
253
|
+
z(we, {
|
|
254
|
+
class: "pl-autocomplete__contour",
|
|
255
|
+
"group-position": a.groupPosition
|
|
256
|
+
}, null, 8, ["group-position"])
|
|
251
257
|
])
|
|
252
|
-
], 42,
|
|
253
|
-
|
|
258
|
+
], 42, De),
|
|
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)
|
|
254
260
|
]));
|
|
255
261
|
}
|
|
256
262
|
});
|
|
257
263
|
export {
|
|
258
|
-
|
|
264
|
+
po as default
|
|
259
265
|
};
|
|
260
266
|
//# sourceMappingURL=PlAutocomplete.vue.js.map
|