@onereach/ui-components 22.2.0-beta.5485.0 → 22.2.0-beta.5487.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/{OrAutocomplete-ClL-a2kl.mjs → OrAutocomplete-eskOHnRl.mjs} +6 -6
- package/dist/esm/{OrAutocomplete-ClL-a2kl.mjs.map → OrAutocomplete-eskOHnRl.mjs.map} +1 -1
- package/dist/esm/{OrAvatar-DnXP_GEm.mjs → OrAvatar-XcP_rrT3.mjs} +2 -2
- package/dist/esm/{OrAvatar-DnXP_GEm.mjs.map → OrAvatar-XcP_rrT3.mjs.map} +1 -1
- package/dist/esm/{OrCardCollection-DB-7x7pH.mjs → OrCardCollection-CVNj8vKN.mjs} +4 -4
- package/dist/esm/{OrCardCollection-DB-7x7pH.mjs.map → OrCardCollection-CVNj8vKN.mjs.map} +1 -1
- package/dist/esm/{OrCheckboxGroup-DRP0CmmG.mjs → OrCheckboxGroup-BgAvcSVe.mjs} +2 -2
- package/dist/esm/{OrCheckboxGroup-DRP0CmmG.mjs.map → OrCheckboxGroup-BgAvcSVe.mjs.map} +1 -1
- package/dist/esm/{OrCheckboxTree-C3-XL6Pc.mjs → OrCheckboxTree-DvIftMpp.mjs} +2 -2
- package/dist/esm/{OrCheckboxTree-C3-XL6Pc.mjs.map → OrCheckboxTree-DvIftMpp.mjs.map} +1 -1
- package/dist/esm/{OrCode-NDuXo4uy.mjs → OrCode-WlDGnBsW.mjs} +3 -3
- package/dist/esm/{OrCode-NDuXo4uy.mjs.map → OrCode-WlDGnBsW.mjs.map} +1 -1
- package/dist/esm/{OrConfirm-FQezArJR.mjs → OrConfirm-o50DtKQg.mjs} +2 -2
- package/dist/esm/{OrConfirm-FQezArJR.mjs.map → OrConfirm-o50DtKQg.mjs.map} +1 -1
- package/dist/esm/{OrDataGrid-C88lgo3l.mjs → OrDataGrid-DLVkDA8L.mjs} +13 -13
- package/dist/esm/{OrDataGrid-C88lgo3l.mjs.map → OrDataGrid-DLVkDA8L.mjs.map} +1 -1
- package/dist/esm/{OrDateFormat-D2dWjV4I.mjs → OrDateFormat-DKgu_p6Y.mjs} +2 -2
- package/dist/esm/{OrDateFormat-D2dWjV4I.mjs.map → OrDateFormat-DKgu_p6Y.mjs.map} +1 -1
- package/dist/esm/{OrDatePicker-DaBYsI73.mjs → OrDatePicker-C2QFP1NK.mjs} +4 -4
- package/dist/esm/{OrDatePicker-DaBYsI73.mjs.map → OrDatePicker-C2QFP1NK.mjs.map} +1 -1
- package/dist/esm/{OrDateRangePicker-DMQtyZ1A.mjs → OrDateRangePicker-B8atNK11.mjs} +5 -5
- package/dist/esm/OrDateRangePicker-B8atNK11.mjs.map +1 -0
- package/dist/esm/{OrDateTimeFormat-DjOttMB_.mjs → OrDateTimeFormat-ByEReaKo.mjs} +2 -2
- package/dist/esm/{OrDateTimeFormat-DjOttMB_.mjs.map → OrDateTimeFormat-ByEReaKo.mjs.map} +1 -1
- package/dist/esm/{OrDateTimePicker-C5tM-UHw.mjs → OrDateTimePicker-FuoCwgfZ.mjs} +2 -2
- package/dist/esm/{OrDateTimePicker-C5tM-UHw.mjs.map → OrDateTimePicker-FuoCwgfZ.mjs.map} +1 -1
- package/dist/esm/{OrDateTimePicker.vue_vue_type_script_lang-C7e7rp1v.mjs → OrDateTimePicker.vue_vue_type_script_lang-DJ6A7YKZ.mjs} +4 -4
- package/dist/esm/{OrDateTimePicker.vue_vue_type_script_lang-C7e7rp1v.mjs.map → OrDateTimePicker.vue_vue_type_script_lang-DJ6A7YKZ.mjs.map} +1 -1
- package/dist/esm/{OrDropArea-7QbefNo2.mjs → OrDropArea-DA9aXi-a.mjs} +2 -2
- package/dist/esm/{OrDropArea-7QbefNo2.mjs.map → OrDropArea-DA9aXi-a.mjs.map} +1 -1
- package/dist/esm/{OrEditorTabs-4meQSd0d.mjs → OrEditorTabs-B7_l5FVN.mjs} +4 -4
- package/dist/esm/{OrEditorTabs-4meQSd0d.mjs.map → OrEditorTabs-B7_l5FVN.mjs.map} +1 -1
- package/dist/esm/{OrErrorTag-CQ2tQTh_.mjs → OrErrorTag-Bo_gxhzB.mjs} +2 -2
- package/dist/esm/{OrErrorTag-CQ2tQTh_.mjs.map → OrErrorTag-Bo_gxhzB.mjs.map} +1 -1
- package/dist/esm/{OrExpansionPanel-BhRLbPz3.mjs → OrExpansionPanel-BNGPdEnp.mjs} +2 -2
- package/dist/esm/{OrExpansionPanel-BhRLbPz3.mjs.map → OrExpansionPanel-BNGPdEnp.mjs.map} +1 -1
- package/dist/esm/{OrFab-DM_-Vc0s.mjs → OrFab-Cbg9unNc.mjs} +2 -2
- package/dist/esm/{OrFab-DM_-Vc0s.mjs.map → OrFab-Cbg9unNc.mjs.map} +1 -1
- package/dist/esm/{OrFilter-BE-9Dh6r.mjs → OrFilter-k0_15Hfa.mjs} +3 -3
- package/dist/esm/{OrFilter-BE-9Dh6r.mjs.map → OrFilter-k0_15Hfa.mjs.map} +1 -1
- package/dist/esm/{OrFilterPopover-COGG7UpE.mjs → OrFilterPopover-d49p64V2.mjs} +2 -2
- package/dist/esm/{OrFilterPopover-COGG7UpE.mjs.map → OrFilterPopover-d49p64V2.mjs.map} +1 -1
- package/dist/esm/{OrFilterTrigger-A7Ga-KFO.mjs → OrFilterTrigger-Cq6VYFTA.mjs} +3 -3
- package/dist/esm/{OrFilterTrigger-A7Ga-KFO.mjs.map → OrFilterTrigger-Cq6VYFTA.mjs.map} +1 -1
- package/dist/esm/{OrIcon-CIHMX4qh.mjs → OrIcon-k8cyvh-D.mjs} +10 -10
- package/dist/esm/OrIcon-k8cyvh-D.mjs.map +1 -0
- package/dist/esm/{OrIconButton-xLaBANIB.mjs → OrIconButton-BlHCLpeW.mjs} +2 -2
- package/dist/esm/{OrIconButton-xLaBANIB.mjs.map → OrIconButton-BlHCLpeW.mjs.map} +1 -1
- package/dist/esm/{OrIndicator-Cs9Y7dr_.mjs → OrIndicator-CCrOseW7.mjs} +2 -2
- package/dist/esm/{OrIndicator-Cs9Y7dr_.mjs.map → OrIndicator-CCrOseW7.mjs.map} +1 -1
- package/dist/esm/{OrInlineInput-DJtEOKIV.mjs → OrInlineInput-D3S9wd_3.mjs} +2 -2
- package/dist/esm/{OrInlineInput-DJtEOKIV.mjs.map → OrInlineInput-D3S9wd_3.mjs.map} +1 -1
- package/dist/esm/{OrInlineTextarea-BM-GVsoF.mjs → OrInlineTextarea-COQceBb0.mjs} +2 -2
- package/dist/esm/{OrInlineTextarea-BM-GVsoF.mjs.map → OrInlineTextarea-COQceBb0.mjs.map} +1 -1
- package/dist/esm/{OrInput-R8RdHMr_.mjs → OrInput-DBcNZlkx.mjs} +3 -3
- package/dist/esm/{OrInput-R8RdHMr_.mjs.map → OrInput-DBcNZlkx.mjs.map} +1 -1
- package/dist/esm/{OrList-CDvFZG3w.mjs → OrList-CLHvgZc7.mjs} +3 -3
- package/dist/esm/{OrList-CDvFZG3w.mjs.map → OrList-CLHvgZc7.mjs.map} +1 -1
- package/dist/esm/{OrMenuItem-DsXyJRTJ.mjs → OrMenuItem-BHRMA0L1.mjs} +3 -3
- package/dist/esm/{OrMenuItem-DsXyJRTJ.mjs.map → OrMenuItem-BHRMA0L1.mjs.map} +1 -1
- package/dist/esm/{OrModal-DZNvZOWi.mjs → OrModal-A9OL6kGW.mjs} +2 -2
- package/dist/esm/{OrModal-DZNvZOWi.mjs.map → OrModal-A9OL6kGW.mjs.map} +1 -1
- package/dist/esm/{OrNotification-bSMyElg1.mjs → OrNotification-Dz3Tr1wI.mjs} +3 -3
- package/dist/esm/{OrNotification-bSMyElg1.mjs.map → OrNotification-Dz3Tr1wI.mjs.map} +1 -1
- package/dist/esm/{OrPagination-BeXUeISB.mjs → OrPagination-CTwCcz18.mjs} +3 -3
- package/dist/esm/{OrPagination-BeXUeISB.mjs.map → OrPagination-CTwCcz18.mjs.map} +1 -1
- package/dist/esm/{OrRating-iaeyKVUd.mjs → OrRating-BhuvRBRy.mjs} +2 -2
- package/dist/esm/{OrRating-iaeyKVUd.mjs.map → OrRating-BhuvRBRy.mjs.map} +1 -1
- package/dist/esm/{OrResizeablePanel-Dsu5AbKR.mjs → OrResizeablePanel-DuGgwmhB.mjs} +2 -2
- package/dist/esm/{OrResizeablePanel-Dsu5AbKR.mjs.map → OrResizeablePanel-DuGgwmhB.mjs.map} +1 -1
- package/dist/esm/{OrRichTextEditor-DVGYuk8H.mjs → OrRichTextEditor-DHc5Lsyu.mjs} +5 -5
- package/dist/esm/{OrRichTextEditor-DVGYuk8H.mjs.map → OrRichTextEditor-DHc5Lsyu.mjs.map} +1 -1
- package/dist/esm/{OrSearch-CKyhSsH1.mjs → OrSearch-1OFONLHk.mjs} +2 -2
- package/dist/esm/{OrSearch-CKyhSsH1.mjs.map → OrSearch-1OFONLHk.mjs.map} +1 -1
- package/dist/esm/{OrSelect-B7s0UAwY.mjs → OrSelect-Cnklh9us.mjs} +7 -7
- package/dist/esm/{OrSelect-B7s0UAwY.mjs.map → OrSelect-Cnklh9us.mjs.map} +1 -1
- package/dist/esm/{OrSorting-BMUwYt8n.mjs → OrSorting-C1m5NTQf.mjs} +3 -3
- package/dist/esm/{OrSorting-BMUwYt8n.mjs.map → OrSorting-C1m5NTQf.mjs.map} +1 -1
- package/dist/esm/{OrStatus-CwvUpccd.mjs → OrStatus-D4QIuE7R.mjs} +2 -2
- package/dist/esm/{OrStatus-CwvUpccd.mjs.map → OrStatus-D4QIuE7R.mjs.map} +1 -1
- package/dist/esm/{OrTabs-D5b9XQH0.mjs → OrTabs-Dgii4fCQ.mjs} +3 -3
- package/dist/esm/{OrTabs-D5b9XQH0.mjs.map → OrTabs-Dgii4fCQ.mjs.map} +1 -1
- package/dist/esm/{OrTag-DDGNAWFC.mjs → OrTag-Bixe0EQq.mjs} +2 -2
- package/dist/esm/{OrTag-DDGNAWFC.mjs.map → OrTag-Bixe0EQq.mjs.map} +1 -1
- package/dist/esm/{OrTagInput-CxMdQsCJ.mjs → OrTagInput-D4-z3jby.mjs} +4 -4
- package/dist/esm/{OrTagInput-CxMdQsCJ.mjs.map → OrTagInput-D4-z3jby.mjs.map} +1 -1
- package/dist/esm/{OrTags-CawHE2el.mjs → OrTags-CS0bcLtx.mjs} +2 -2
- package/dist/esm/{OrTags-CawHE2el.mjs.map → OrTags-CS0bcLtx.mjs.map} +1 -1
- package/dist/esm/{OrTimeFormat-seUcLO3H.mjs → OrTimeFormat-DScNr0vb.mjs} +2 -2
- package/dist/esm/{OrTimeFormat-seUcLO3H.mjs.map → OrTimeFormat-DScNr0vb.mjs.map} +1 -1
- package/dist/esm/{OrTimePicker-yrCd2WSV.mjs → OrTimePicker-Deh-pYk1.mjs} +4 -4
- package/dist/esm/{OrTimePicker-yrCd2WSV.mjs.map → OrTimePicker-Deh-pYk1.mjs.map} +1 -1
- package/dist/esm/{OrTimeRangePicker-We6twaTe.mjs → OrTimeRangePicker-DhsGrtcw.mjs} +5 -5
- package/dist/esm/OrTimeRangePicker-DhsGrtcw.mjs.map +1 -0
- package/dist/esm/{OrTree-xzTTFls8.mjs → OrTree-By3MLZUL.mjs} +2 -2
- package/dist/esm/{OrTree-xzTTFls8.mjs.map → OrTree-By3MLZUL.mjs.map} +1 -1
- package/dist/esm/components/index.mjs +50 -50
- package/dist/esm/components/or-autocomplete-v3/index.mjs +1 -1
- package/dist/esm/components/or-avatar-v3/index.mjs +1 -1
- package/dist/esm/components/or-card-collection-v3/index.mjs +1 -1
- package/dist/esm/components/or-checkbox-group-v3/index.mjs +1 -1
- package/dist/esm/components/or-checkbox-tree-v3/index.mjs +1 -1
- package/dist/esm/components/or-code-v3/index.mjs +1 -1
- package/dist/esm/components/or-confirm-v3/index.mjs +1 -1
- package/dist/esm/components/or-data-grid-v3/index.mjs +1 -1
- package/dist/esm/components/or-date-format-v3/index.mjs +1 -1
- package/dist/esm/components/or-date-picker-v3/index.mjs +1 -1
- package/dist/esm/components/or-date-range-picker-v3/index.mjs +1 -1
- package/dist/esm/components/or-date-time-format-v3/index.mjs +1 -1
- package/dist/esm/components/or-date-time-picker-v3/index.mjs +2 -2
- package/dist/esm/components/or-drop-area-v3/index.mjs +1 -1
- package/dist/esm/components/or-editor-tabs-v3/index.mjs +1 -1
- package/dist/esm/components/or-error-tag-v3/index.mjs +1 -1
- package/dist/esm/components/or-expansion-panel-v3/index.mjs +1 -1
- package/dist/esm/components/or-fab-v3/index.mjs +1 -1
- package/dist/esm/components/or-filter-popover-v3/index.mjs +1 -1
- package/dist/esm/components/or-filter-trigger-v3/index.mjs +1 -1
- package/dist/esm/components/or-filter-v3/index.mjs +1 -1
- package/dist/esm/components/or-icon-button-v3/index.mjs +1 -1
- package/dist/esm/components/or-icon-v3/index.mjs +1 -1
- package/dist/esm/components/or-indicator-v3/index.mjs +1 -1
- package/dist/esm/components/or-inline-input-v3/index.mjs +1 -1
- package/dist/esm/components/or-inline-textarea-v3/index.mjs +1 -1
- package/dist/esm/components/or-input-v3/index.mjs +1 -1
- package/dist/esm/components/or-list-v3/index.mjs +1 -1
- package/dist/esm/components/or-menu-item-v3/index.mjs +1 -1
- package/dist/esm/components/or-modal-v3/index.mjs +1 -1
- package/dist/esm/components/or-notification-v3/index.mjs +1 -1
- package/dist/esm/components/or-pagination-v3/index.mjs +1 -1
- package/dist/esm/components/or-rating-v3/index.mjs +1 -1
- package/dist/esm/components/or-resizeable-panel-v3/index.mjs +1 -1
- package/dist/esm/components/or-rich-text-editor-v3/index.mjs +1 -1
- package/dist/esm/components/or-search-v3/index.mjs +1 -1
- package/dist/esm/components/or-select-v3/index.mjs +1 -1
- package/dist/esm/components/or-sidebar-v3/index.mjs +1 -1
- package/dist/esm/components/or-sorting-v3/index.mjs +1 -1
- package/dist/esm/components/or-status-v3/index.mjs +1 -1
- package/dist/esm/components/or-tabs-v3/index.mjs +1 -1
- package/dist/esm/components/or-tag-input-v3/index.mjs +1 -1
- package/dist/esm/components/or-tag-v3/index.mjs +1 -1
- package/dist/esm/components/or-tags-v3/index.mjs +1 -1
- package/dist/esm/components/or-time-format-v3/index.mjs +1 -1
- package/dist/esm/components/or-time-picker-v3/index.mjs +1 -1
- package/dist/esm/components/or-time-range-picker-v3/index.mjs +1 -1
- package/dist/esm/components/or-toast-v3/index.mjs +1 -1
- package/dist/esm/components/or-tree-v3/index.mjs +1 -1
- package/dist/esm/index.mjs +50 -50
- package/dist/esm/{props-B0KRjmZl.mjs → props-BxqD8LGb.mjs} +2 -2
- package/dist/esm/{props-B0KRjmZl.mjs.map → props-BxqD8LGb.mjs.map} +1 -1
- package/dist/esm/{types-3Yoq4B7Q.mjs → types-BwxhurSS.mjs} +2 -2
- package/dist/esm/{types-3Yoq4B7Q.mjs.map → types-BwxhurSS.mjs.map} +1 -1
- package/package.json +1 -1
- package/dist/esm/OrDateRangePicker-DMQtyZ1A.mjs.map +0 -1
- package/dist/esm/OrIcon-CIHMX4qh.mjs.map +0 -1
- package/dist/esm/OrTimeRangePicker-We6twaTe.mjs.map +0 -1
|
@@ -5,16 +5,16 @@ import { DropdownClose as Ce, DropdownOpen as Ae } from "@onereach/ui-components
|
|
|
5
5
|
import { include as Te, isNil as Q, toArray as W, exclude as Ve } from "@onereach/ui-components-common/utils";
|
|
6
6
|
import { O as $e } from "./OrError-B5ihH6-3.mjs";
|
|
7
7
|
import { O as Me } from "./OrHint-NvbZyURY.mjs";
|
|
8
|
-
import { O as Fe } from "./OrIconButton-
|
|
8
|
+
import { O as Fe } from "./OrIconButton-BlHCLpeW.mjs";
|
|
9
9
|
import { O as Pe } from "./OrInputBox-6ciokFdU.mjs";
|
|
10
10
|
import { a as Re } from "./OrInputBox.vue_vue_type_script_lang-q2L7rmth.mjs";
|
|
11
11
|
import { O as qe } from "./OrLabel-DssheqEn.mjs";
|
|
12
12
|
import { O as De } from "./OrLoader-2SaTMxmZ.mjs";
|
|
13
|
-
import { O as Le } from "./OrMenuItem-
|
|
13
|
+
import { O as Le } from "./OrMenuItem-BHRMA0L1.mjs";
|
|
14
14
|
import { O as Ee } from "./OrPopover-DbygLPtT.mjs";
|
|
15
|
-
import { O as ze } from "./OrTagInput-
|
|
16
|
-
import { O as Ne } from "./OrInput-
|
|
17
|
-
import { T as He } from "./OrTags-
|
|
15
|
+
import { O as ze } from "./OrTagInput-D4-z3jby.mjs";
|
|
16
|
+
import { O as Ne } from "./OrInput-DBcNZlkx.mjs";
|
|
17
|
+
import { T as He } from "./OrTags-CS0bcLtx.mjs";
|
|
18
18
|
import { _ as Ke } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
19
19
|
const Ue = [
|
|
20
20
|
// Layout
|
|
@@ -543,4 +543,4 @@ const ho = /* @__PURE__ */ Ke(_e, [["render", lo]]);
|
|
|
543
543
|
export {
|
|
544
544
|
ho as O
|
|
545
545
|
};
|
|
546
|
-
//# sourceMappingURL=OrAutocomplete-
|
|
546
|
+
//# sourceMappingURL=OrAutocomplete-eskOHnRl.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrAutocomplete-ClL-a2kl.mjs","sources":["../../../components/or-autocomplete-v3/src/styles.ts","../../../components/or-autocomplete-v3/src/OrAutocomplete.vue"],"sourcesContent":["export const Autocomplete: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const AutocompleteControl: string[] = [\n // Box\n 'w-full',\n\n // Typography\n 'typography-inherit',\n\n // Theme\n 'theme-background-transparent',\n 'dark:theme-background-transparent-dark',\n\n 'outline-none',\n\n // Theme (placeholder)\n 'placeholder:theme-foreground-outline',\n 'dark:placeholder:theme-foreground-outline-dark',\n];\n\nexport const AutocompleteDropdown: string[] = [\n // Overflow\n 'overflow-y-auto',\n\n // Box\n 'max-h-[172px]', // equals 5 items\n\n\n // Theme\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-border-outline border-1',\n 'dark:theme-border-outline-dark',\n];\n\nexport const AutocompleteDropdownDefault: string[] = [\n // Shape\n 'rounded-b-md',\n\n // Theme\n '!border-t-0',\n];\n\nexport const AutocompleteDropdownFlipped: string[] = [\n // Shape\n 'rounded-t-md',\n\n // Theme\n '!border-b-0',\n];\n\nexport const AutocompleteDropdownItem: string[] = [\n // Typography\n '!typography-body-2-regular',\n\n // Padding Override todo: check design\n 'py-md px-lg md:!pt-[6px] md:pb-[7px]',\n\n // Typography (selected)\n 'selected:!typography-body-2-semibold',\n\n // Theme\n '!theme-foreground-default dark:!theme-foreground-default-dark',\n];\n\nexport const AutocompleteLoader: string[] = [\n // Layout\n 'w-fit',\n\n // Typography\n 'typography-body-2-regular',\n\n // Theme\n 'text-outline dark:text-outline-dark',\n];\n\nexport const AutocompleteLoaderContainer: string[] = [\n // Spacing\n 'py-md px-lg md:px-sm+ md:py-xs',\n];\n\nexport const AutocompleteInputBoxOpen: string[] = [\n 'rounded-b-0',\n];\n\nexport const AutocompleteInputBoxOpenFlipped: string[] = [\n 'rounded-t-0',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"$slots.label || $slots.addon || label\">\n <OrLabel\n :control-id=\"attributes.id\"\n :variant=\"'input'\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n </template>\n\n <template v-if=\"multiple\">\n <OrTagInput\n :ref=\"'tagInput'\"\n v-model=\"model\"\n v-dropdown-open=\"openMobilePopover\"\n :overflow=\"overflow\"\n :variant=\"variant\"\n :non-rounded-top=\"nonRoundedTop\"\n :non-rounded-bottom=\"nonRoundedBottom\"\n :placeholder=\"placeholder\"\n :error=\"!!error\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :enable-clear=\"enableClear\"\n @input=\"onInput($event)\"\n @focus=\"onFocus($event)\"\n @blur=\"onBlur($event)\"\n >\n <template v-slot:tag=\"{ item }\">\n <slot\n name=\"tag\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </template>\n </OrTagInput>\n </template>\n\n <template v-else>\n <OrInputBox\n :ref=\"'inputBox'\"\n :class=\"boxOpenStyles\"\n :variant=\"variant\"\n :size=\"size\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n >\n <input\n :ref=\"'control'\"\n v-bind=\"attributes\"\n v-dropdown-open=\"openMobilePopover\"\n :class=\"controlStyles\"\n :type=\"'text'\"\n :value=\"searchText || model\"\n :autocomplete=\"'off'\"\n :placeholder=\"placeholder\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n @input=\"$emit('input', $event); onInput($event); model = searchText\"\n @keydown=\"$emit('keydown', $event)\"\n @keyup=\"$emit('keyup', $event)\"\n @focus=\"onFocus($event);\"\n @blur=\"onBlur($event);\"\n >\n\n <template\n v-if=\"enableClear && !readonly && !disabled\"\n v-slot:addon\n >\n <template v-if=\"model && model.length > 0\">\n <OrIconButton\n :icon=\"'close'\"\n :color=\"'inherit'\"\n @click=\"reset()\"\n />\n </template>\n </template>\n </OrInputBox>\n </template>\n\n <OrPopover\n :ref=\"'popover'\"\n :trigger=\"tagInputRoot || inputBoxRoot\"\n :placement=\"'bottom'\"\n :offset=\"0\"\n :full-width=\"true\"\n :disable-default-styles=\"true\"\n :bottom-sheet-props=\"{ isFullscreen: true }\"\n >\n <div :class=\"dropdownStyles\">\n <template v-if=\"isMobile\">\n <div class=\"py-sm px-lg\">\n <OrTagInput\n v-if=\"multiple\"\n :ref=\"'mobileMultipleControl'\"\n v-model=\"model\"\n :overflow=\"'scroll'\"\n :placeholder=\"placeholder\"\n :error=\"!!error\"\n :enable-clear=\"false\"\n @input=\"onInput($event)\"\n >\n <template v-slot:tag=\"{ item }\">\n <slot\n name=\"tag\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </template>\n <template v-slot:appendInner>\n <OrIconButton\n :icon=\"'check'\"\n :color=\"'inherit'\"\n @click=\"closeMobilePopover\"\n />\n </template>\n </OrTagInput>\n <OrInput\n v-else\n ref=\"mobileSingleControl\"\n :model-value=\"searchText || (model && model.toString())\"\n :placeholder=\"placeholder\"\n @input=\"$emit('input', $event); onInput($event); model = searchText\"\n >\n <template v-slot:appendInner>\n <OrIconButton\n :icon=\"'check'\"\n :color=\"'inherit'\"\n @click=\"closeMobilePopover\"\n />\n </template>\n </OrInput>\n </div>\n </template>\n <template\n v-if=\"loading\"\n >\n <div :class=\"loaderContainerStyles\">\n <slot name=\"loading\">\n <OrLoader\n :class=\"loaderStyles\"\n variant=\"text\"\n :text=\"loadingText\"\n />\n </slot>\n </div>\n </template>\n <div\n v-else\n :class=\"isMobile ? 'overflow-auto': 'contains'\"\n >\n <OrMenuItem\n v-for=\"(item, i) in filteredItems\"\n :key=\"i\"\n :class=\"dropdownItemStyles\"\n @click=\"add(item)\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n >\n {{ item }}\n </slot>\n </OrMenuItem>\n </div>\n </div>\n </OrPopover>\n <template v-if=\"$slots.hint || hint\">\n <OrHint\n v-show=\"!error\"\n :disabled=\"disabled\"\n >\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n </OrHint>\n </template>\n\n <OrError\n v-show=\"typeof error === 'string' && error.length > 0\"\n :disabled=\"disabled\"\n >\n {{ error }}\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computedAsync, watchTriggerable } from '@vueuse/core';\nimport { PropType, computed, defineComponent, reactive, ref, toRef, nextTick } from 'vue';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue, useResponsive, useValidationAttributes } from '@onereach/ui-components-common/hooks';\nimport { DropdownClose, DropdownOpen } from '@onereach/ui-components-common/directives';\nimport { SearchFunction } from '@onereach/ui-components-common/types';\nimport { exclude, include, isNil, toArray } from '@onereach/ui-components-common/utils';\nimport { OrErrorV3 as OrError } from '@onereach/ui-components.or-error-v3';\nimport { OrHintV3 as OrHint } from '@onereach/ui-components.or-hint-v3';\nimport { OrIconButtonV3 as OrIconButton } from '@onereach/ui-components.or-icon-button-v3';\nimport { InputBoxSize, InputBoxVariant, OrInputBoxV3 as OrInputBox } from '@onereach/ui-components.or-input-box-v3';\nimport { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { OrLoaderV3 as OrLoader } from '@onereach/ui-components.or-loader-v3';\nimport { OrMenuItemV3 as OrMenuItem } from '@onereach/ui-components.or-menu-item-v3';\nimport { OrPopoverV3 as OrPopover } from '@onereach/ui-components.or-popover-v3';\nimport { OrTagInputV3 as OrTagInput } from '@onereach/ui-components.or-tag-input-v3';\nimport { OrInputV3 as OrInput } from '@onereach/ui-components.or-input-v3';\nimport { TagsOverflow } from '@onereach/ui-components.or-tags-v3';\nimport * as Styles from './styles';\nimport { AutocompleteModelValue, AutocompleteValue } from './types';\n\nexport default defineComponent({\n name: 'OrAutocomplete',\n\n components: {\n OrError,\n OrHint,\n OrIconButton,\n OrInputBox,\n OrInput,\n OrLabel,\n OrLoader,\n OrMenuItem,\n OrPopover,\n OrTagInput,\n },\n\n directives: {\n DropdownClose,\n DropdownOpen,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<AutocompleteModelValue>,\n default: undefined,\n },\n\n items: {\n type: Array as PropType<AutocompleteValue[]>,\n default: () => [],\n },\n\n multiple: {\n type: Boolean,\n default: false,\n },\n\n overflow: {\n type: String as PropType<`${TagsOverflow}`>,\n default: () => TagsOverflow.Hidden,\n },\n\n variant: {\n type: String as PropType<`${InputBoxVariant}`>,\n default: undefined,\n },\n\n size: {\n type: String as PropType<`${InputBoxSize}`>,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: [String, Boolean],\n default: undefined,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n loadingText: {\n type: String,\n default: 'Loading',\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n enableClear: {\n type: Boolean,\n default: false,\n },\n\n searchFunction: {\n type: Function as PropType<SearchFunction<AutocompleteValue>>,\n\n default: (async (value, items) => {\n return value.length > 0 ? items.filter((item) => new RegExp(value, 'i').test(item)) : [];\n }) as SearchFunction<AutocompleteValue>,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'input',\n 'keydown',\n 'keyup',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'popover',\n 'popoverState',\n\n 'reset',\n 'clear',\n\n 'focus',\n 'blur',\n ],\n\n setup(props, context) {\n const attributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n ...useValidationAttributes(),\n });\n\n // Refs\n const root = ref<HTMLElement>();\n\n const tagInput = ref<InstanceType<typeof OrTagInput>>();\n const tagInputRoot = computed(() => tagInput.value?.root);\n\n const inputBox = ref<InstanceType<typeof OrInputBox>>();\n const inputBoxRoot = computed(() => inputBox.value?.root);\n\n const control = ref<HTMLElement>();\n const mobileSingleControl = ref<InstanceType<typeof OrInput>>();\n const mobileMultipleControl = ref<InstanceType<typeof OrTagInput>>();\n\n const popover = ref<InstanceType<typeof OrPopover>>();\n const popoverRoot = computed(() => popover.value?.root);\n const popoverState = computed(() => popover.value?.state);\n const popoverFlipped = computed(() => popover.value?.isFlipped);\n\n const activated = ref(false);\n\n // Helpers\n const { isMobile } = useResponsive();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-autocomplete-v3',\n ...Styles.Autocomplete,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const controlStyles = computed(() => [\n ...Styles.AutocompleteControl,\n ]);\n\n const dropdownStyles = computed(() => [\n 'or-autocomplete-popover-v3',\n ...Styles.AutocompleteDropdown,\n ...popover.value?.isFlipped ? Styles.AutocompleteDropdownFlipped : Styles.AutocompleteDropdownDefault,\n ]);\n\n const dropdownItemStyles = computed(() => [\n ...Styles.AutocompleteDropdownItem,\n ]);\n\n const loaderStyles = computed(() => [\n ...Styles.AutocompleteLoader,\n ]);\n\n const loaderContainerStyles = computed(() => [\n ...Styles.AutocompleteLoaderContainer,\n ]);\n\n const boxOpenStyles = computed(() => [\n ...(popoverState.value === 'open' && !isMobile.value ? (popoverFlipped.value ? Styles.AutocompleteInputBoxOpenFlipped : Styles.AutocompleteInputBoxOpen) : []),\n ]);\n\n const nonRoundedTop = computed(() => popoverState.value === 'open' && !isMobile.value && popoverFlipped.value);\n const nonRoundedBottom = computed(() => popoverState.value === 'open' && !isMobile.value && !popoverFlipped.value);\n\n // State\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n const searchText = ref<string>();\n\n const filteredItems = computedAsync(async () => {\n return searchText.value\n ? (await props.searchFunction(searchText.value, props.items))\n .filter((item) => !model.value?.includes(item))\n : [];\n }, []);\n\n // Handlers\n function onInput(event: InputEvent): void {\n searchText.value = (event.target as HTMLInputElement).value;\n }\n\n // Methods\n function add(value: AutocompleteValue): void {\n if (props.multiple) {\n model.value = include(value, isNil(model.value) ? [] : toArray(model.value));\n } else {\n model.value = value;\n if (isMobile.value) {\n closeMobilePopover();\n }\n }\n\n clear();\n }\n\n function remove(value: AutocompleteValue): void {\n model.value = exclude(value, isNil(model.value) ? [] : toArray(model.value));\n }\n\n function reset(): void {\n model.value = undefined;\n\n clear();\n }\n\n function clear(): void {\n searchText.value = undefined;\n if (isMobile.value) {\n (mobileMultipleControl.value?.clear as unknown as () => void)?.();\n } else {\n (tagInput.value?.clear as unknown as () => void)?.();\n }\n }\n\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n\n function focusMobileControl(): void {\n if (props.multiple) {\n mobileMultipleControl.value?.activate();\n } else {\n mobileSingleControl.value?.focus();\n }\n }\n\n function onFocus(event: FocusEvent): void {\n activated.value = true;\n context.emit('focus', event);\n if (isMobile.value) return;\n triggerPopover();\n }\n\n function onBlur(event: FocusEvent): void {\n activated.value = false;\n if (props.multiple) {\n clear();\n }\n context.emit('blur', event);\n }\n\n function openMobilePopover(): void {\n if (!isMobile.value) return;\n if (!props.readonly && !props.disabled) {\n popover.value?.open();\n nextTick(() => {\n setTimeout(() => focusMobileControl());\n });\n }\n }\n\n function closeMobilePopover(): void {\n if (!isMobile.value) return;\n popover.value?.close();\n }\n\n const { trigger: triggerPopover } = watchTriggerable([\n filteredItems,\n toRef(props, 'loading'),\n ], ([items, loading]) => {\n if (isMobile.value) return;\n if ((items.length > 0 || loading) && activated.value) {\n popover.value?.open();\n } else {\n popover.value?.close();\n }\n });\n\n return {\n attributes,\n\n root,\n rootStyles,\n\n tagInput,\n tagInputRoot,\n\n inputBox,\n inputBoxRoot,\n\n boxOpenStyles,\n\n control,\n mobileSingleControl,\n mobileMultipleControl,\n controlStyles,\n\n popover,\n popoverRoot,\n popoverState,\n\n loaderStyles,\n loaderContainerStyles,\n\n dropdownStyles,\n dropdownItemStyles,\n\n model,\n searchText,\n filteredItems,\n activated,\n\n onFocus,\n onBlur,\n onInput,\n\n add,\n remove,\n reset,\n clear,\n triggerPopover,\n openMobilePopover,\n closeMobilePopover,\n focus,\n blur,\n\n isMobile,\n nonRoundedTop,\n nonRoundedBottom,\n };\n },\n});\n</script>\n"],"names":["Autocomplete","AutocompleteControl","AutocompleteDropdown","AutocompleteDropdownDefault","AutocompleteDropdownFlipped","AutocompleteDropdownItem","AutocompleteLoader","AutocompleteLoaderContainer","AutocompleteInputBoxOpen","AutocompleteInputBoxOpenFlipped","_sfc_main","defineComponent","OrError","OrHint","OrIconButton","OrInputBox","OrInput","OrLabel","OrLoader","OrMenuItem","OrPopover","OrTagInput","DropdownClose","DropdownOpen","TagsOverflow","value","items","item","props","context","attributes","reactive","useIdAttribute","useControlAttributes","useValidationAttributes","root","ref","tagInput","tagInputRoot","computed","_a","inputBox","inputBoxRoot","control","mobileSingleControl","mobileMultipleControl","popover","popoverRoot","popoverState","popoverFlipped","activated","isMobile","useResponsive","rootStyles","Styles.Autocomplete","InputBoxVariant","controlStyles","Styles.AutocompleteControl","dropdownStyles","Styles.AutocompleteDropdown","Styles.AutocompleteDropdownFlipped","Styles.AutocompleteDropdownDefault","dropdownItemStyles","Styles.AutocompleteDropdownItem","loaderStyles","Styles.AutocompleteLoader","loaderContainerStyles","Styles.AutocompleteLoaderContainer","boxOpenStyles","Styles.AutocompleteInputBoxOpenFlipped","Styles.AutocompleteInputBoxOpen","nonRoundedTop","nonRoundedBottom","model","useProxyModelValue","toRef","searchText","filteredItems","computedAsync","onInput","event","add","include","isNil","toArray","closeMobilePopover","clear","remove","exclude","reset","_b","_d","_c","focus","blur","focusMobileControl","onFocus","triggerPopover","onBlur","openMobilePopover","nextTick","watchTriggerable","loading","_hoisted_2","_resolveDirective","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_OrLabel","_renderSlot","_createCommentVNode","_withDirectives","_component_OrTagInput","_cache","$event","_directive_dropdown_open","_component_OrInputBox","_withCtx","_createElementVNode","_mergeProps","_hoisted_1","_component_OrIconButton","_createVNode","_component_OrPopover","_component_OrInput","_component_OrLoader","_Fragment","_renderList","i","_component_OrMenuItem","_component_OrHint","_component_OrError"],"mappings":";;;;;;;;;;;;;;;;;;AAAO,MAAMA,KAAyB;AAAA;AAAA,EAEpC;AAAA;AAAA,EAGA;AACF,GAEaC,KAAgC;AAAA;AAAA,EAE3C;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EAEA;AAAA;AAAA,EAGA;AAAA,EACA;AACF,GAEaC,KAAiC;AAAA;AAAA,EAE5C;AAAA;AAAA,EAGA;AAAA;AAAA;AAAA,EAIA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AACF,GAEaC,KAAwC;AAAA;AAAA,EAEnD;AAAA;AAAA,EAGA;AACF,GAEaC,KAAwC;AAAA;AAAA,EAEnD;AAAA;AAAA,EAGA;AACF,GAEaC,KAAqC;AAAA;AAAA,EAEhD;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AACF,GAEaC,KAA+B;AAAA;AAAA,EAE1C;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AACF,GAEaC,KAAwC;AAAA;AAAA,EAEnD;AACF,GAEaC,KAAqC;AAAA,EAChD;AACF,GAEaC,KAA4C;AAAA,EACvD;AACF,GCmIAC,KAAeC,GAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,SAAAC;AAAA,IACA,QAAAC;AAAA,IACA,cAAAC;AAAA,IACA,YAAAC;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,UAAAC;AAAA,IACA,YAAAC;AAAA,IACA,WAAAC;AAAA,IACA,YAAAC;AAAA,EACF;AAAA,EAEA,YAAY;AAAA,IACV,eAAAC;AAAA,IACA,cAAAC;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EAEA,OAAO;AAAA,IACL,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS,MAAMC,GAAa;AAAA,IAC9B;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ,OAAO;AAAA,MACtB,SAAS;AAAA,IACX;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,gBAAgB;AAAA,MACd,MAAM;AAAA,MAEN,SAAU,OAAOC,GAAOC,MACfD,EAAM,SAAS,IAAIC,EAAM,OAAO,CAACC,MAAS,IAAI,OAAOF,GAAO,GAAG,EAAE,KAAKE,CAAI,CAAC,IAAI;IAE1F;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,MAAMC,GAAOC,GAAS;AACpB,UAAMC,IAAaC,GAAS;AAAA,MAC1B,IAAIC,GAAe;AAAA,MACnB,GAAGC,GAAqB;AAAA,MACxB,GAAGC,GAAwB;AAAA,IAAA,CAC5B,GAGKC,IAAOC,KAEPC,IAAWD,KACXE,IAAeC,EAAS,MAAA;;AAAM,cAAAC,IAAAH,EAAS,UAAT,gBAAAG,EAAgB;AAAA,KAAI,GAElDC,IAAWL,KACXM,IAAeH,EAAS,MAAA;;AAAM,cAAAC,IAAAC,EAAS,UAAT,gBAAAD,EAAgB;AAAA,KAAI,GAElDG,IAAUP,KACVQ,IAAsBR,KACtBS,IAAwBT,KAExBU,IAAUV,KACVW,IAAcR,EAAS,MAAA;;AAAM,cAAAC,IAAAM,EAAQ,UAAR,gBAAAN,EAAe;AAAA,KAAI,GAChDQ,IAAeT,EAAS,MAAA;;AAAM,cAAAC,IAAAM,EAAQ,UAAR,gBAAAN,EAAe;AAAA,KAAK,GAClDS,IAAiBV,EAAS,MAAA;;AAAM,cAAAC,IAAAM,EAAQ,UAAR,gBAAAN,EAAe;AAAA,KAAS,GAExDU,IAAYd,EAAI,EAAK,GAGrB,EAAE,UAAAe,MAAaC,MAGfC,IAAad,EAAS,MAAM;AAAA,MAChC;AAAA,MACA,GAAGe;AAAAA,MACH,GAAG1B,EAAM,YAAY2B,GAAgB,WAAW,CAAC,MAAM,IAAI,CAAC;AAAA,IAAA,CAC7D,GAEKC,IAAgBjB,EAAS,MAAM;AAAA,MACnC,GAAGkB;AAAAA,IAAO,CACX,GAEKC,IAAiBnB,EAAS,MAAM;;AAAA;AAAA,QACpC;AAAA,QACA,GAAGoB;AAAAA,QACH,IAAGnB,IAAAM,EAAQ,UAAR,QAAAN,EAAe,YAAYoB,KAAqCC;AAAAA,MAAO;AAAA,KAC3E,GAEKC,IAAqBvB,EAAS,MAAM;AAAA,MACxC,GAAGwB;AAAAA,IAAO,CACX,GAEKC,IAAezB,EAAS,MAAM;AAAA,MAClC,GAAG0B;AAAAA,IAAO,CACX,GAEKC,IAAwB3B,EAAS,MAAM;AAAA,MAC3C,GAAG4B;AAAAA,IAAO,CACX,GAEKC,IAAgB7B,EAAS,MAAM;AAAA,MACnC,GAAIS,EAAa,UAAU,UAAU,CAACG,EAAS,QAASF,EAAe,QAAQoB,KAAyCC,KAAmC,CAAC;AAAA,IAAA,CAC7J,GAEKC,IAAgBhC,EAAS,MAAMS,EAAa,UAAU,UAAU,CAACG,EAAS,SAASF,EAAe,KAAK,GACvGuB,KAAmBjC,EAAS,MAAMS,EAAa,UAAU,UAAU,CAACG,EAAS,SAAS,CAACF,EAAe,KAAK,GAG3GwB,IAAQC,GAAmBC,EAAM/C,GAAO,YAAY,GAAGC,EAAQ,IAAI,GACnE+C,IAAaxC,KAEbyC,IAAgBC,GAAc,YAC3BF,EAAW,SACb,MAAMhD,EAAM,eAAegD,EAAW,OAAOhD,EAAM,KAAK,GACxD,OAAO,CAACD,MAAA;;AAAS,gBAACa,IAAAiC,EAAM,UAAN,QAAAjC,EAAa,SAASb;AAAA,KAAK,IAC9C,IACH,CAAE,CAAA;AAGL,aAASoD,GAAQC,GAAyB;AAC7B,MAAAJ,EAAA,QAASI,EAAM,OAA4B;AAAA,IACxD;AAGA,aAASC,GAAIxD,GAAgC;AAC3C,MAAIG,EAAM,WACR6C,EAAM,QAAQS,GAAQzD,GAAO0D,EAAMV,EAAM,KAAK,IAAI,CAAK,IAAAW,EAAQX,EAAM,KAAK,CAAC,KAE3EA,EAAM,QAAQhD,GACV0B,EAAS,SACQkC,MAIjBC;IACR;AAEA,aAASC,GAAO9D,GAAgC;AAC9C,MAAAgD,EAAM,QAAQe,GAAQ/D,GAAO0D,EAAMV,EAAM,KAAK,IAAI,CAAK,IAAAW,EAAQX,EAAM,KAAK,CAAC;AAAA,IAC7E;AAEA,aAASgB,KAAc;AACrB,MAAAhB,EAAM,QAAQ,QAERa;IACR;AAEA,aAASA,IAAc;;AACrB,MAAAV,EAAW,QAAQ,QACfzB,EAAS,SACVuC,KAAAlD,IAAAK,EAAsB,UAAtB,gBAAAL,EAA6B,UAA7B,QAAAkD,EAAA,KAAAlD,MAEAmD,KAAAC,IAAAvD,EAAS,UAAT,gBAAAuD,EAAgB,UAAhB,QAAAD,EAAA,KAAAC;AAAA,IAEL;AAEA,aAASC,KAAc;;AACrB,OAAArD,IAAAG,EAAQ,UAAR,QAAAH,EAAe;AAAA,IACjB;AAEA,aAASsD,KAAa;;AACpB,OAAAtD,IAAAG,EAAQ,UAAR,QAAAH,EAAe;AAAA,IACjB;AAEA,aAASuD,KAA2B;;AAClC,MAAInE,EAAM,YACRY,IAAAK,EAAsB,UAAtB,QAAAL,EAA6B,cAE7BkD,IAAA9C,EAAoB,UAApB,QAAA8C,EAA2B;AAAA,IAE/B;AAEA,aAASM,GAAQhB,GAAyB;AAGxC,MAFA9B,EAAU,QAAQ,IACVrB,EAAA,KAAK,SAASmD,CAAK,GACvB,CAAA7B,EAAS,SACE8C;IACjB;AAEA,aAASC,GAAOlB,GAAyB;AACvC,MAAA9B,EAAU,QAAQ,IACdtB,EAAM,YACF0D,KAEAzD,EAAA,KAAK,QAAQmD,CAAK;AAAA,IAC5B;AAEA,aAASmB,KAA0B;;AACjC,MAAKhD,EAAS,SACV,CAACvB,EAAM,YAAY,CAACA,EAAM,cAC5BY,IAAAM,EAAQ,UAAR,QAAAN,EAAe,QACf4D,GAAS,MAAM;AACF,mBAAA,MAAML,IAAoB;AAAA,MAAA,CACtC;AAAA,IAEL;AAEA,aAASV,IAA2B;;AAClC,MAAKlC,EAAS,WACdX,IAAAM,EAAQ,UAAR,QAAAN,EAAe;AAAA,IACjB;AAEA,UAAM,EAAE,SAASyD,EAAe,IAAII,GAAiB;AAAA,MACnDxB;AAAA,MACAF,EAAM/C,GAAO,SAAS;AAAA,IAAA,GACrB,CAAC,CAACF,GAAO4E,CAAO,MAAM;;AACvB,MAAInD,EAAS,WACRzB,EAAM,SAAS,KAAK4E,MAAYpD,EAAU,SAC7CV,IAAAM,EAAQ,UAAR,QAAAN,EAAe,UAEfkD,IAAA5C,EAAQ,UAAR,QAAA4C,EAAe;AAAA,IACjB,CACD;AAEM,WAAA;AAAA,MACL,YAAA5D;AAAA,MAEA,MAAAK;AAAA,MACA,YAAAkB;AAAA,MAEA,UAAAhB;AAAA,MACA,cAAAC;AAAA,MAEA,UAAAG;AAAA,MACA,cAAAC;AAAA,MAEA,eAAA0B;AAAA,MAEA,SAAAzB;AAAA,MACA,qBAAAC;AAAA,MACA,uBAAAC;AAAA,MACA,eAAAW;AAAA,MAEA,SAAAV;AAAA,MACA,aAAAC;AAAA,MACA,cAAAC;AAAA,MAEA,cAAAgB;AAAA,MACA,uBAAAE;AAAA,MAEA,gBAAAR;AAAA,MACA,oBAAAI;AAAA,MAEA,OAAAW;AAAA,MACA,YAAAG;AAAA,MACA,eAAAC;AAAA,MACA,WAAA3B;AAAA,MAEA,SAAA8C;AAAA,MACA,QAAAE;AAAA,MACA,SAAAnB;AAAA,MAEA,KAAAE;AAAA,MACA,QAAAM;AAAA,MACA,OAAAE;AAAA,MACA,OAAAH;AAAA,MACA,gBAAAW;AAAA,MACA,mBAAAE;AAAA,MACA,oBAAAd;AAAA,MACA,OAAAQ;AAAA,MACA,MAAAC;AAAA,MAEA,UAAA3C;AAAA,MACA,eAAAoB;AAAA,MACA,kBAAAC;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC,sEAnec+B,KAAM;AAAA,EAAA,KAAA;AAAA;;;gNA1GnBC,GAwMM,eAAA;SAtMEC,EAAY,GAAAC,EAAA,OAAA;AAAA,IAAA,KAAA;AAAA,IAEF,OAAAC,EAAgBC,EAAO,UAAA;AAAA,EAAA,GAAA;AAAA,IAElCA,EAAA,OAAA,SAAAA,EAAA,OAAA,SAAAA,EAAA,SAAAH,KAAUI,EAAEC,GAAa;AAAA,MACzB,KAAA;AAAA,MACA,cAAUF,EAAQ,WAAA;AAAA,MAClB,SAAQ;AAAA,MAAA,UAAAA,EAAA;AAAA,MAMQ,UAAKA,EAAA;AAAA,IAAA,GAAA;AAAA;QAFfG,EAAAH,EAAA,QAAA,OAAA;AAAA,MAAA,CAAA;AAAA;;;;;;OAQa,GAAA,CAAA,cAAA,YAAA,UAAA,CAAA,KAAAI,EAAA,IAAA,EAAA;AAAA,IAEJJ,EAAA,WAAAK,GAAAR,EAAA,GAAAI,EAAAK,GAAA;AAAA,MAAA,KAAA;AAAA;MAGf,YAAUN,EAAA;AAAA,MACV,uBAAgBO,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAR,EAAA,QAAAQ;AAAA,MAChB,UAAAR,EAAA;AAAA,MACA,SAAAA,EAAA;AAAA,MACA,mBAAaA,EAAA;AAAA,MACb,sBAAcA,EAAA;AAAA,MACd,aAAUA,EAAA;AAAA,MACV,QAAQ,CAAEA,EAAA;AAAA,MACV,UAAUA,EAAA;AAAA,MACV,UAAYA,EAAA;AAAA,MACZ,UAAKA,EAAA;AAAA,MACL,gBAAKA,EAAA;AAAA,MACL,SAAIO,EAAE,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAR,EAAA,QAAOQ,CAAM;AAAA,MAAA,SAAAD,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAR,EAAA,QAAAQ,CAAA;AAAA,MAEH,QAAGD,EAMX,CANmB,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAR,EAAA,OAAAQ,CAAA;AAAA,IAAA,GAAA;AAAA;;;;;;;MAoDjB,CAAAC,GAAAT,EAAA,iBAAA;AAAA,IAAA,CAAA,KAAAH,EAAA,GAvCKI,EAAAS,GAAA;AAAA,MACf,KAAK;AAAA,MACL,KAAA;AAAA,MACA,OAAMX,EAAIC,EAAA,aAAA;AAAA,MACV,SAAOA,EAAI;AAAA,MACX,MAAUA,EAAA;AAAA,MACV,SAAQ,CAAE,CAAAA,EAAA;AAAA,MAAA,UAAAA,EAAA;AAAA;;eAMHW,EAAE,MAAA;AAAA,QACKN,EAAAO,EAAA,SAAAC,GAAA,EAAA,KAAA,UAAA,GAAAb,EAAA,YAAA;AAAA,UACZ,OAAOA,EAAA;AAAA,UACP,MAAA;AAAA,UACA,OAAAA,EAAW,cAAEA,EAAW;AAAA,UACxB,cAAU;AAAA,UACV,aAAUA,EAAA;AAAA,UACV,UAAUA,EAAA;AAAA,UACV,UAAKA,EAAA;AAAA,UACL,UAAOA,EAAA;AAAA,UACP,SAAKO,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAA;AAAE,YAAAR,EAAA,MAAK,SAAUQ,CAAM,GAAAR,EAAA,QAAAQ,CAAA,GAAAR,EAAA,QAAAA,EAAA;AAAA,UAAA;AAAA,UAC5B,WAAKO,EAAE,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAR,EAAA,MAAQ,WAAMQ,CAAA;AAAA,UACrB,SAAID,EAAE,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAR,EAAA,MAAO,SAAMQ,CAAA;AAAA,UAAA,SAAAD,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAA;;;UAbH,QAAAD,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAA;AAAiB,YAAAR,EAAA,OAAAQ,CAAA;AAAA,UAAA;AAAA,QAAA,CAAA,GAAA,MAAA,IAAAM,EAAA,GAAA;AAAA;;;MAiB5B,GAAA;AAAA,IAAA,GAAA;AAAA,MACMd,EAAA,eAAA,CAAAA,EAAA,YAAA,CAAAA,EAAA,WAAA;AAAA,QAEI,MAAA;AAAA,QAAA,IAAAW,EAAA,MAAA;AAAA,gDAEEV,EAAAc,GAAA;AAAA,YACb,KAAK;AAAA,YACL,MAAA;AAAA,YAAA,OAAA;AAAA;;;;MAOX,IAAA;AAAA,IAAA,CACM,GAAE,MAAS,CAAA,SAAA,WAAA,QAAA,WAAA,YAAA,UAAA,CAAA;AAAA,IAAAC,EACLC,GAAgB;AAAA,MACzB,KAAA;AAAA,MACA,SAASjB,EAAA,gBAAAA,EAAA;AAAA,MACT,WAAA;AAAA,MACA,QAAA;AAAA,MACA,cAAA;AAAA,MAAA,0BAAA;AAAA,MA+EK,sBAAA,EAAA,cAAA,GAAA;AAAA,IAAA,GAAA;AAAA,MA7EK,SAAAW,EAAA,MAAA;AAAA,QAAAC,EAAA,OAAA;AAAA,iBACOb,EAAQC,EAAA,cAAA;AAAA,QAAA,GAAA;AAAA,UA2BPA,EAAA,YAAAH,EAAA,GAAAC,EAAA,OAAAH,IAAA;AAAA,YAAAK,EAAA,YAAAH,KAvBkBI,EAAAK,GAAA;AAAA,cAAA,KAAA;AAAA;cAE5B,YAAUN,EAAA;AAAA,cACV,uBAAaO,EAAW,EAAA,MAAAA,EAAA,EAAA,IAAA,CAAAC,MAAAR,EAAA,QAAAQ;AAAA,cACxB,UAAS;AAAA,cACT,aAAcR,EAAA;AAAA,cACd,OAAK,CAAA,CAAAA,EAAA;AAAA,cAAA,gBAAA;AAAA,cAEW,SAAGO,EAMX,EANe,MAAIA,EAAA,EAAA,IAAA,CAAAC,MAAAR,EAAA,QAAAQ,CAAA;AAAA,YAAA,GAAA;AAAA;;;gBAQX,CAAA;AAAA,cAAA,CAAA;AAAA,2BAENG,EAAO,MAAA;AAAA,gBAAAK,EACND,GAAS;AAAA,kBAChB,MAAA;AAAA,kBAAA,OAAA;AAAA;;;;mEAMoBd,EAAAiB,GAAA;AAAA,cACxB,KAAA;AAAA,cACA,KAAA;AAAA,cACA,eAAKlB,EAAE,cAAAA,EAAA,SAAAA,EAAA,MAAK,SAAU;AAAA,cAAA,aAAAA,EAAA;AAAA,cAEN,SAAAO,EAAW,EAKxB,MAAAA,EAAA,EAAA,IAAA,CAAAC,MAAA;AAAA,gBAAAR,EAAA,MAAA,SAAAQ,CAAA,GAAAR,EAAA,QAAAQ,CAAA,GAAAR,EAAA,QAAAA,EAAA;AAAA,cAAA;AAAA,YAAA,GAAA;AAAA,2BAHOW,EAAO,MAAA;AAAA,gBAAAK,EACND,GAAS;AAAA,kBAChB,MAAA;AAAA,kBAAA,OAAA;AAAA;;;;;WAST,KAAAX,EAAA,IAAA,EAAA;AAAA,UAAAJ,EAAA,WAAAH,KAAaC,EAAA,OAAA;AAAA,YAAA,KAAA;AAAA,YACX,OAMOC,EAAAC,EAAA,qBAAA;AAAA,UAAA,GAAA;AAAA,YAJGG,EAAAH,EAAA,QAAA,WAAE,CAAY,GAAA,MAAA;AAAA,cAAAgB,EACZG,GAAM;AAAA,gBACb,OAAMpB,EAAWC,EAAA,YAAA;AAAA,gBAAA,SAAA;AAAA;;;UAOlB,GAAA,CAAA,MAAAH,KAAAC,EAAE,OAAQ;AAAA,YAAA,KAAA;AAAA,qBAEhBE,EAYa,WAAA,kBAAA,UAAA;AAAA,UAAA,GAAA;AAAA,aAVJH,EAAA,EAAA,GAAAC,EAAAsB,IAAA,MAAAC,GAAArB,EAAA,eAAA,CAAAjF,GAAAuG,OACDzB,EAAA,GAAAI,EAAEsB,GAAkB;AAAA,cACzB,KAAAD;AAAA,cAAA,OAAAvB,EAAAC,EAAA,kBAAA;AAAA,cAOM,SAAA,CAAAQ,MAAAR,EAAA,IAAAjF,CAAA;AAAA,YAAA,GAAA;AAAA;;;;;;;;;;MAKC,GAAA;AAAA,IAAA,GAAA,GAAA,CAAA,SAAA,CAAA;AAAA,iCAGD8E,EAAQ,GAAAI,EAAAuB,GAAA;AAAA,MAAA,KAAA;AAAA;;;;;;;;;;IAYV,CAAA,IAAApB,EAAA,IAAA,EAAA;AAAA,IAAHC,EAAAW,EAAAS,GAAA,EAAA,UAAAzB,EAAA,YAAA;AAAA,MAAA,SAAAW,EAAA,MAAA;AAAA;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"OrAutocomplete-eskOHnRl.mjs","sources":["../../../components/or-autocomplete-v3/src/styles.ts","../../../components/or-autocomplete-v3/src/OrAutocomplete.vue"],"sourcesContent":["export const Autocomplete: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const AutocompleteControl: string[] = [\n // Box\n 'w-full',\n\n // Typography\n 'typography-inherit',\n\n // Theme\n 'theme-background-transparent',\n 'dark:theme-background-transparent-dark',\n\n 'outline-none',\n\n // Theme (placeholder)\n 'placeholder:theme-foreground-outline',\n 'dark:placeholder:theme-foreground-outline-dark',\n];\n\nexport const AutocompleteDropdown: string[] = [\n // Overflow\n 'overflow-y-auto',\n\n // Box\n 'max-h-[172px]', // equals 5 items\n\n\n // Theme\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-border-outline border-1',\n 'dark:theme-border-outline-dark',\n];\n\nexport const AutocompleteDropdownDefault: string[] = [\n // Shape\n 'rounded-b-md',\n\n // Theme\n '!border-t-0',\n];\n\nexport const AutocompleteDropdownFlipped: string[] = [\n // Shape\n 'rounded-t-md',\n\n // Theme\n '!border-b-0',\n];\n\nexport const AutocompleteDropdownItem: string[] = [\n // Typography\n '!typography-body-2-regular',\n\n // Padding Override todo: check design\n 'py-md px-lg md:!pt-[6px] md:pb-[7px]',\n\n // Typography (selected)\n 'selected:!typography-body-2-semibold',\n\n // Theme\n '!theme-foreground-default dark:!theme-foreground-default-dark',\n];\n\nexport const AutocompleteLoader: string[] = [\n // Layout\n 'w-fit',\n\n // Typography\n 'typography-body-2-regular',\n\n // Theme\n 'text-outline dark:text-outline-dark',\n];\n\nexport const AutocompleteLoaderContainer: string[] = [\n // Spacing\n 'py-md px-lg md:px-sm+ md:py-xs',\n];\n\nexport const AutocompleteInputBoxOpen: string[] = [\n 'rounded-b-0',\n];\n\nexport const AutocompleteInputBoxOpenFlipped: string[] = [\n 'rounded-t-0',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"$slots.label || $slots.addon || label\">\n <OrLabel\n :control-id=\"attributes.id\"\n :variant=\"'input'\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n </template>\n\n <template v-if=\"multiple\">\n <OrTagInput\n :ref=\"'tagInput'\"\n v-model=\"model\"\n v-dropdown-open=\"openMobilePopover\"\n :overflow=\"overflow\"\n :variant=\"variant\"\n :non-rounded-top=\"nonRoundedTop\"\n :non-rounded-bottom=\"nonRoundedBottom\"\n :placeholder=\"placeholder\"\n :error=\"!!error\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :enable-clear=\"enableClear\"\n @input=\"onInput($event)\"\n @focus=\"onFocus($event)\"\n @blur=\"onBlur($event)\"\n >\n <template v-slot:tag=\"{ item }\">\n <slot\n name=\"tag\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </template>\n </OrTagInput>\n </template>\n\n <template v-else>\n <OrInputBox\n :ref=\"'inputBox'\"\n :class=\"boxOpenStyles\"\n :variant=\"variant\"\n :size=\"size\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n >\n <input\n :ref=\"'control'\"\n v-bind=\"attributes\"\n v-dropdown-open=\"openMobilePopover\"\n :class=\"controlStyles\"\n :type=\"'text'\"\n :value=\"searchText || model\"\n :autocomplete=\"'off'\"\n :placeholder=\"placeholder\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n @input=\"$emit('input', $event); onInput($event); model = searchText\"\n @keydown=\"$emit('keydown', $event)\"\n @keyup=\"$emit('keyup', $event)\"\n @focus=\"onFocus($event);\"\n @blur=\"onBlur($event);\"\n >\n\n <template\n v-if=\"enableClear && !readonly && !disabled\"\n v-slot:addon\n >\n <template v-if=\"model && model.length > 0\">\n <OrIconButton\n :icon=\"'close'\"\n :color=\"'inherit'\"\n @click=\"reset()\"\n />\n </template>\n </template>\n </OrInputBox>\n </template>\n\n <OrPopover\n :ref=\"'popover'\"\n :trigger=\"tagInputRoot || inputBoxRoot\"\n :placement=\"'bottom'\"\n :offset=\"0\"\n :full-width=\"true\"\n :disable-default-styles=\"true\"\n :bottom-sheet-props=\"{ isFullscreen: true }\"\n >\n <div :class=\"dropdownStyles\">\n <template v-if=\"isMobile\">\n <div class=\"py-sm px-lg\">\n <OrTagInput\n v-if=\"multiple\"\n :ref=\"'mobileMultipleControl'\"\n v-model=\"model\"\n :overflow=\"'scroll'\"\n :placeholder=\"placeholder\"\n :error=\"!!error\"\n :enable-clear=\"false\"\n @input=\"onInput($event)\"\n >\n <template v-slot:tag=\"{ item }\">\n <slot\n name=\"tag\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </template>\n <template v-slot:appendInner>\n <OrIconButton\n :icon=\"'check'\"\n :color=\"'inherit'\"\n @click=\"closeMobilePopover\"\n />\n </template>\n </OrTagInput>\n <OrInput\n v-else\n ref=\"mobileSingleControl\"\n :model-value=\"searchText || (model && model.toString())\"\n :placeholder=\"placeholder\"\n @input=\"$emit('input', $event); onInput($event); model = searchText\"\n >\n <template v-slot:appendInner>\n <OrIconButton\n :icon=\"'check'\"\n :color=\"'inherit'\"\n @click=\"closeMobilePopover\"\n />\n </template>\n </OrInput>\n </div>\n </template>\n <template\n v-if=\"loading\"\n >\n <div :class=\"loaderContainerStyles\">\n <slot name=\"loading\">\n <OrLoader\n :class=\"loaderStyles\"\n variant=\"text\"\n :text=\"loadingText\"\n />\n </slot>\n </div>\n </template>\n <div\n v-else\n :class=\"isMobile ? 'overflow-auto': 'contains'\"\n >\n <OrMenuItem\n v-for=\"(item, i) in filteredItems\"\n :key=\"i\"\n :class=\"dropdownItemStyles\"\n @click=\"add(item)\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n >\n {{ item }}\n </slot>\n </OrMenuItem>\n </div>\n </div>\n </OrPopover>\n <template v-if=\"$slots.hint || hint\">\n <OrHint\n v-show=\"!error\"\n :disabled=\"disabled\"\n >\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n </OrHint>\n </template>\n\n <OrError\n v-show=\"typeof error === 'string' && error.length > 0\"\n :disabled=\"disabled\"\n >\n {{ error }}\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computedAsync, watchTriggerable } from '@vueuse/core';\nimport { PropType, computed, defineComponent, reactive, ref, toRef, nextTick } from 'vue';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue, useResponsive, useValidationAttributes } from '@onereach/ui-components-common/hooks';\nimport { DropdownClose, DropdownOpen } from '@onereach/ui-components-common/directives';\nimport { SearchFunction } from '@onereach/ui-components-common/types';\nimport { exclude, include, isNil, toArray } from '@onereach/ui-components-common/utils';\nimport { OrErrorV3 as OrError } from '@onereach/ui-components.or-error-v3';\nimport { OrHintV3 as OrHint } from '@onereach/ui-components.or-hint-v3';\nimport { OrIconButtonV3 as OrIconButton } from '@onereach/ui-components.or-icon-button-v3';\nimport { InputBoxSize, InputBoxVariant, OrInputBoxV3 as OrInputBox } from '@onereach/ui-components.or-input-box-v3';\nimport { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { OrLoaderV3 as OrLoader } from '@onereach/ui-components.or-loader-v3';\nimport { OrMenuItemV3 as OrMenuItem } from '@onereach/ui-components.or-menu-item-v3';\nimport { OrPopoverV3 as OrPopover } from '@onereach/ui-components.or-popover-v3';\nimport { OrTagInputV3 as OrTagInput } from '@onereach/ui-components.or-tag-input-v3';\nimport { OrInputV3 as OrInput } from '@onereach/ui-components.or-input-v3';\nimport { TagsOverflow } from '@onereach/ui-components.or-tags-v3';\nimport * as Styles from './styles';\nimport { AutocompleteModelValue, AutocompleteValue } from './types';\n\nexport default defineComponent({\n name: 'OrAutocomplete',\n\n components: {\n OrError,\n OrHint,\n OrIconButton,\n OrInputBox,\n OrInput,\n OrLabel,\n OrLoader,\n OrMenuItem,\n OrPopover,\n OrTagInput,\n },\n\n directives: {\n DropdownClose,\n DropdownOpen,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<AutocompleteModelValue>,\n default: undefined,\n },\n\n items: {\n type: Array as PropType<AutocompleteValue[]>,\n default: () => [],\n },\n\n multiple: {\n type: Boolean,\n default: false,\n },\n\n overflow: {\n type: String as PropType<`${TagsOverflow}`>,\n default: () => TagsOverflow.Hidden,\n },\n\n variant: {\n type: String as PropType<`${InputBoxVariant}`>,\n default: undefined,\n },\n\n size: {\n type: String as PropType<`${InputBoxSize}`>,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: [String, Boolean],\n default: undefined,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n loadingText: {\n type: String,\n default: 'Loading',\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n enableClear: {\n type: Boolean,\n default: false,\n },\n\n searchFunction: {\n type: Function as PropType<SearchFunction<AutocompleteValue>>,\n\n default: (async (value, items) => {\n return value.length > 0 ? items.filter((item) => new RegExp(value, 'i').test(item)) : [];\n }) as SearchFunction<AutocompleteValue>,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'input',\n 'keydown',\n 'keyup',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'popover',\n 'popoverState',\n\n 'reset',\n 'clear',\n\n 'focus',\n 'blur',\n ],\n\n setup(props, context) {\n const attributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n ...useValidationAttributes(),\n });\n\n // Refs\n const root = ref<HTMLElement>();\n\n const tagInput = ref<InstanceType<typeof OrTagInput>>();\n const tagInputRoot = computed(() => tagInput.value?.root);\n\n const inputBox = ref<InstanceType<typeof OrInputBox>>();\n const inputBoxRoot = computed(() => inputBox.value?.root);\n\n const control = ref<HTMLElement>();\n const mobileSingleControl = ref<InstanceType<typeof OrInput>>();\n const mobileMultipleControl = ref<InstanceType<typeof OrTagInput>>();\n\n const popover = ref<InstanceType<typeof OrPopover>>();\n const popoverRoot = computed(() => popover.value?.root);\n const popoverState = computed(() => popover.value?.state);\n const popoverFlipped = computed(() => popover.value?.isFlipped);\n\n const activated = ref(false);\n\n // Helpers\n const { isMobile } = useResponsive();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-autocomplete-v3',\n ...Styles.Autocomplete,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const controlStyles = computed(() => [\n ...Styles.AutocompleteControl,\n ]);\n\n const dropdownStyles = computed(() => [\n 'or-autocomplete-popover-v3',\n ...Styles.AutocompleteDropdown,\n ...popover.value?.isFlipped ? Styles.AutocompleteDropdownFlipped : Styles.AutocompleteDropdownDefault,\n ]);\n\n const dropdownItemStyles = computed(() => [\n ...Styles.AutocompleteDropdownItem,\n ]);\n\n const loaderStyles = computed(() => [\n ...Styles.AutocompleteLoader,\n ]);\n\n const loaderContainerStyles = computed(() => [\n ...Styles.AutocompleteLoaderContainer,\n ]);\n\n const boxOpenStyles = computed(() => [\n ...(popoverState.value === 'open' && !isMobile.value ? (popoverFlipped.value ? Styles.AutocompleteInputBoxOpenFlipped : Styles.AutocompleteInputBoxOpen) : []),\n ]);\n\n const nonRoundedTop = computed(() => popoverState.value === 'open' && !isMobile.value && popoverFlipped.value);\n const nonRoundedBottom = computed(() => popoverState.value === 'open' && !isMobile.value && !popoverFlipped.value);\n\n // State\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n const searchText = ref<string>();\n\n const filteredItems = computedAsync(async () => {\n return searchText.value\n ? (await props.searchFunction(searchText.value, props.items))\n .filter((item) => !model.value?.includes(item))\n : [];\n }, []);\n\n // Handlers\n function onInput(event: InputEvent): void {\n searchText.value = (event.target as HTMLInputElement).value;\n }\n\n // Methods\n function add(value: AutocompleteValue): void {\n if (props.multiple) {\n model.value = include(value, isNil(model.value) ? [] : toArray(model.value));\n } else {\n model.value = value;\n if (isMobile.value) {\n closeMobilePopover();\n }\n }\n\n clear();\n }\n\n function remove(value: AutocompleteValue): void {\n model.value = exclude(value, isNil(model.value) ? [] : toArray(model.value));\n }\n\n function reset(): void {\n model.value = undefined;\n\n clear();\n }\n\n function clear(): void {\n searchText.value = undefined;\n if (isMobile.value) {\n (mobileMultipleControl.value?.clear as unknown as () => void)?.();\n } else {\n (tagInput.value?.clear as unknown as () => void)?.();\n }\n }\n\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n\n function focusMobileControl(): void {\n if (props.multiple) {\n mobileMultipleControl.value?.activate();\n } else {\n mobileSingleControl.value?.focus();\n }\n }\n\n function onFocus(event: FocusEvent): void {\n activated.value = true;\n context.emit('focus', event);\n if (isMobile.value) return;\n triggerPopover();\n }\n\n function onBlur(event: FocusEvent): void {\n activated.value = false;\n if (props.multiple) {\n clear();\n }\n context.emit('blur', event);\n }\n\n function openMobilePopover(): void {\n if (!isMobile.value) return;\n if (!props.readonly && !props.disabled) {\n popover.value?.open();\n nextTick(() => {\n setTimeout(() => focusMobileControl());\n });\n }\n }\n\n function closeMobilePopover(): void {\n if (!isMobile.value) return;\n popover.value?.close();\n }\n\n const { trigger: triggerPopover } = watchTriggerable([\n filteredItems,\n toRef(props, 'loading'),\n ], ([items, loading]) => {\n if (isMobile.value) return;\n if ((items.length > 0 || loading) && activated.value) {\n popover.value?.open();\n } else {\n popover.value?.close();\n }\n });\n\n return {\n attributes,\n\n root,\n rootStyles,\n\n tagInput,\n tagInputRoot,\n\n inputBox,\n inputBoxRoot,\n\n boxOpenStyles,\n\n control,\n mobileSingleControl,\n mobileMultipleControl,\n controlStyles,\n\n popover,\n popoverRoot,\n popoverState,\n\n loaderStyles,\n loaderContainerStyles,\n\n dropdownStyles,\n dropdownItemStyles,\n\n model,\n searchText,\n filteredItems,\n activated,\n\n onFocus,\n onBlur,\n onInput,\n\n add,\n remove,\n reset,\n clear,\n triggerPopover,\n openMobilePopover,\n closeMobilePopover,\n focus,\n blur,\n\n isMobile,\n nonRoundedTop,\n nonRoundedBottom,\n };\n },\n});\n</script>\n"],"names":["Autocomplete","AutocompleteControl","AutocompleteDropdown","AutocompleteDropdownDefault","AutocompleteDropdownFlipped","AutocompleteDropdownItem","AutocompleteLoader","AutocompleteLoaderContainer","AutocompleteInputBoxOpen","AutocompleteInputBoxOpenFlipped","_sfc_main","defineComponent","OrError","OrHint","OrIconButton","OrInputBox","OrInput","OrLabel","OrLoader","OrMenuItem","OrPopover","OrTagInput","DropdownClose","DropdownOpen","TagsOverflow","value","items","item","props","context","attributes","reactive","useIdAttribute","useControlAttributes","useValidationAttributes","root","ref","tagInput","tagInputRoot","computed","_a","inputBox","inputBoxRoot","control","mobileSingleControl","mobileMultipleControl","popover","popoverRoot","popoverState","popoverFlipped","activated","isMobile","useResponsive","rootStyles","Styles.Autocomplete","InputBoxVariant","controlStyles","Styles.AutocompleteControl","dropdownStyles","Styles.AutocompleteDropdown","Styles.AutocompleteDropdownFlipped","Styles.AutocompleteDropdownDefault","dropdownItemStyles","Styles.AutocompleteDropdownItem","loaderStyles","Styles.AutocompleteLoader","loaderContainerStyles","Styles.AutocompleteLoaderContainer","boxOpenStyles","Styles.AutocompleteInputBoxOpenFlipped","Styles.AutocompleteInputBoxOpen","nonRoundedTop","nonRoundedBottom","model","useProxyModelValue","toRef","searchText","filteredItems","computedAsync","onInput","event","add","include","isNil","toArray","closeMobilePopover","clear","remove","exclude","reset","_b","_d","_c","focus","blur","focusMobileControl","onFocus","triggerPopover","onBlur","openMobilePopover","nextTick","watchTriggerable","loading","_hoisted_2","_resolveDirective","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_OrLabel","_renderSlot","_createCommentVNode","_withDirectives","_component_OrTagInput","_cache","$event","_directive_dropdown_open","_component_OrInputBox","_withCtx","_createElementVNode","_mergeProps","_hoisted_1","_component_OrIconButton","_createVNode","_component_OrPopover","_component_OrInput","_component_OrLoader","_Fragment","_renderList","i","_component_OrMenuItem","_component_OrHint","_component_OrError"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent as i, ref as m, computed as s, resolveComponent as g, openBlock as t, createElementBlock as c, normalizeClass as l, normalizeStyle as p, renderSlot as h, createBlock as y, createCommentVNode as k } from "vue";
|
|
2
2
|
import { hslToColorString as f, generateHslFromString as S } from "@onereach/ui-components-common/utils";
|
|
3
|
-
import { O as b } from "./OrIcon-
|
|
3
|
+
import { O as b } from "./OrIcon-k8cyvh-D.mjs";
|
|
4
4
|
import { _ as x } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
5
5
|
var r = /* @__PURE__ */ ((e) => (e.XL = "xl", e.L = "l", e.M = "m", e.S = "s", e.XS = "xs", e))(r || {}), o = /* @__PURE__ */ ((e) => (e.Auto = "auto", e.Blue = "blue", e.Grey = "grey", e.Green = "green", e.Yellow = "yellow", e.Red = "red", e))(o || {});
|
|
6
6
|
const w = [
|
|
@@ -195,4 +195,4 @@ export {
|
|
|
195
195
|
R as O,
|
|
196
196
|
o as a
|
|
197
197
|
};
|
|
198
|
-
//# sourceMappingURL=OrAvatar-
|
|
198
|
+
//# sourceMappingURL=OrAvatar-XcP_rrT3.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrAvatar-
|
|
1
|
+
{"version":3,"file":"OrAvatar-XcP_rrT3.mjs","sources":["../../../components/or-avatar-v3/src/props.ts","../../../components/or-avatar-v3/src/styles.ts","../../../components/or-avatar-v3/src/OrAvatar.vue"],"sourcesContent":["export enum AvatarSize {\n XL = 'xl',\n L = 'l',\n M = 'm',\n S = 's',\n XS = 'xs',\n}\n\nexport enum AvatarColor {\n Auto = 'auto',\n Blue = 'blue',\n Grey = 'grey',\n Green = 'green',\n Yellow = 'yellow',\n Red = 'red',\n}\n","import { AvatarColor, AvatarSize } from './props';\n\nexport const Avatar: string[] = [\n // Layout\n 'layout-inline-row justify-center',\n\n // Overflow\n 'overflow-hidden',\n\n // Interactivity\n 'interactivity-default',\n\n // Shape\n 'rounded-full',\n];\n\nexport const AvatarSizes: Record<AvatarSize, string[]> = {\n [AvatarSize.XL]: [\n // Box\n 'w-[80px]',\n 'h-[80px]',\n ],\n\n [AvatarSize.L]: [\n // Box\n 'w-[64px]',\n 'h-[64px]',\n ],\n\n [AvatarSize.M]: [\n // Box\n 'w-[40px]',\n 'h-[40px]',\n ],\n\n [AvatarSize.S]: [\n // Box\n 'w-[32px]',\n 'h-[32px]',\n ],\n\n [AvatarSize.XS]: [\n // Box\n 'w-[24px]',\n 'h-[24px]',\n ],\n};\n\nexport const AvatarIconSizes: Record<AvatarSize, string[]> = {\n [AvatarSize.XL]: [\n // Typography\n 'text-[40px]',\n ],\n\n [AvatarSize.L]: [\n // Typography\n 'text-[32px]',\n ],\n\n [AvatarSize.M]: [\n // Typography\n 'text-[20px]',\n ],\n\n [AvatarSize.S]: [\n // Typography\n 'text-[16px]',\n ],\n\n [AvatarSize.XS]: [\n // Typography\n 'text-[16px]',\n ],\n};\n\nexport const AvatarTextSizes: Record<AvatarSize, string[]> = {\n [AvatarSize.XL]: [\n // Typography\n 'typography-headline-1',\n ],\n\n [AvatarSize.L]: [\n // Typography\n 'typography-headline-1',\n ],\n\n [AvatarSize.M]: [\n // Typography\n 'typography-body-1-bold',\n ],\n\n [AvatarSize.S]: [\n // Typography\n 'typography-body-1-bold',\n ],\n\n [AvatarSize.XS]: [\n // Typography\n 'typography-caption-semibold',\n ],\n};\n\nexport const AvatarColors: Record<AvatarColor, string[]> = {\n [AvatarColor.Auto]: [\n // Theme\n 'theme-foreground-base',\n 'dark:theme-foreground-base-dark',\n ],\n\n [AvatarColor.Blue]: [\n // Theme\n 'theme-foreground-on-primary',\n 'dark:theme-foreground-on-primary-dark',\n\n 'theme-background-primary',\n 'dark:theme-background-primary-dark',\n ],\n\n [AvatarColor.Grey]: [\n // Theme\n 'theme-foreground-on-secondary',\n 'dark:theme-foreground-on-secondary-dark',\n\n 'theme-background-secondary',\n 'dark:theme-background-secondary-dark',\n ],\n\n [AvatarColor.Green]: [\n // Theme\n 'theme-foreground-on-success',\n 'dark:theme-foreground-on-success-dark',\n\n 'theme-background-success',\n 'dark:theme-background-success-dark',\n ],\n\n [AvatarColor.Yellow]: [\n // Theme\n 'theme-foreground-on-warning',\n 'dark:theme-foreground-on-warning-dark',\n\n 'theme-background-warning',\n 'dark:theme-background-warning-dark',\n ],\n\n [AvatarColor.Red]: [\n // Theme\n 'theme-foreground-on-error',\n 'dark:theme-foreground-on-error-dark',\n\n 'theme-background-error',\n 'dark:theme-background-error-dark',\n ],\n};\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :style=\"rootInlineStyles\"\n >\n <slot>\n <template v-if=\"src\">\n <img\n :class=\"['w-full', 'h-full', 'object-cover']\"\n :src=\"src\"\n :alt=\"''\"\n >\n </template>\n\n <template v-else-if=\"icon\">\n <OrIcon\n :icon=\"icon\"\n :size=\"'inherit'\"\n />\n </template>\n </slot>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, PropType, ref } from 'vue';\nimport { generateHslFromString, hslToColorString } from '@onereach/ui-components-common/utils';\nimport { OrIconV3 as OrIcon } from '@onereach/ui-components.or-icon-v3';\nimport { AvatarColor, AvatarSize } from './props';\nimport { Avatar, AvatarColors, AvatarIconSizes, AvatarSizes, AvatarTextSizes } from './styles';\n\nexport default defineComponent({\n name: 'OrAvatar',\n\n components: {\n OrIcon,\n },\n\n props: {\n src: {\n type: String,\n default: undefined,\n },\n\n icon: {\n type: String,\n default: undefined,\n },\n\n size: {\n type: String as PropType<`${AvatarSize}`>,\n default: () => AvatarSize.M,\n },\n\n color: {\n type: String as PropType<`${AvatarColor}`>,\n default: () => AvatarColor.Auto,\n },\n\n colorSalt: {\n type: String,\n default: undefined,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-avatar-v3',\n ...Avatar,\n ...AvatarSizes[props.size],\n ...props.icon\n ? AvatarIconSizes[props.size]\n : AvatarTextSizes[props.size],\n ...AvatarColors[props.color],\n ]);\n\n // Inline styles\n const rootInlineStyles = computed(() => ({\n background: props.color === AvatarColor.Auto && !props.src\n ? hslToColorString(generateHslFromString(props.colorSalt ?? ''))\n : undefined,\n }));\n\n return {\n root,\n rootStyles,\n rootInlineStyles,\n };\n },\n});\n</script>\n"],"names":["AvatarSize","AvatarColor","Avatar","AvatarSizes","AvatarIconSizes","AvatarTextSizes","AvatarColors","_sfc_main","defineComponent","OrIcon","props","root","ref","rootStyles","computed","rootInlineStyles","hslToColorString","generateHslFromString","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_normalizeStyle","_hoisted_1","_createBlock","_component_OrIcon"],"mappings":";;;;AAAY,IAAAA,sBAAAA,OACVA,EAAA,KAAK,MACLA,EAAA,IAAI,KACJA,EAAA,IAAI,KACJA,EAAA,IAAI,KACJA,EAAA,KAAK,MALKA,IAAAA,KAAA,CAAA,CAAA,GAQAC,sBAAAA,OACVA,EAAA,OAAO,QACPA,EAAA,OAAO,QACPA,EAAA,OAAO,QACPA,EAAA,QAAQ,SACRA,EAAA,SAAS,UACTA,EAAA,MAAM,OANIA,IAAAA,KAAA,CAAA,CAAA;ACNL,MAAMC,IAAmB;AAAA;AAAA,EAE9B;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AACF,GAEaC,IAA4C;AAAA,EACvD,CAACH,EAAW,EAAE,GAAG;AAAA;AAAA,IAEf;AAAA,IACA;AAAA,EACF;AAAA,EAEA,CAACA,EAAW,CAAC,GAAG;AAAA;AAAA,IAEd;AAAA,IACA;AAAA,EACF;AAAA,EAEA,CAACA,EAAW,CAAC,GAAG;AAAA;AAAA,IAEd;AAAA,IACA;AAAA,EACF;AAAA,EAEA,CAACA,EAAW,CAAC,GAAG;AAAA;AAAA,IAEd;AAAA,IACA;AAAA,EACF;AAAA,EAEA,CAACA,EAAW,EAAE,GAAG;AAAA;AAAA,IAEf;AAAA,IACA;AAAA,EACF;AACF,GAEaI,IAAgD;AAAA,EAC3D,CAACJ,EAAW,EAAE,GAAG;AAAA;AAAA,IAEf;AAAA,EACF;AAAA,EAEA,CAACA,EAAW,CAAC,GAAG;AAAA;AAAA,IAEd;AAAA,EACF;AAAA,EAEA,CAACA,EAAW,CAAC,GAAG;AAAA;AAAA,IAEd;AAAA,EACF;AAAA,EAEA,CAACA,EAAW,CAAC,GAAG;AAAA;AAAA,IAEd;AAAA,EACF;AAAA,EAEA,CAACA,EAAW,EAAE,GAAG;AAAA;AAAA,IAEf;AAAA,EACF;AACF,GAEaK,IAAgD;AAAA,EAC3D,CAACL,EAAW,EAAE,GAAG;AAAA;AAAA,IAEf;AAAA,EACF;AAAA,EAEA,CAACA,EAAW,CAAC,GAAG;AAAA;AAAA,IAEd;AAAA,EACF;AAAA,EAEA,CAACA,EAAW,CAAC,GAAG;AAAA;AAAA,IAEd;AAAA,EACF;AAAA,EAEA,CAACA,EAAW,CAAC,GAAG;AAAA;AAAA,IAEd;AAAA,EACF;AAAA,EAEA,CAACA,EAAW,EAAE,GAAG;AAAA;AAAA,IAEf;AAAA,EACF;AACF,GAEaM,IAA8C;AAAA,EACzD,CAACL,EAAY,IAAI,GAAG;AAAA;AAAA,IAElB;AAAA,IACA;AAAA,EACF;AAAA,EAEA,CAACA,EAAY,IAAI,GAAG;AAAA;AAAA,IAElB;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,CAACA,EAAY,IAAI,GAAG;AAAA;AAAA,IAElB;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,CAACA,EAAY,KAAK,GAAG;AAAA;AAAA,IAEnB;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,CAACA,EAAY,MAAM,GAAG;AAAA;AAAA,IAEpB;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,CAACA,EAAY,GAAG,GAAG;AAAA;AAAA,IAEjB;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AACF,GCzHAM,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,QAAAC;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL,KAAK;AAAA,MACH,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS,MAAMT,EAAW;AAAA,IAC5B;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS,MAAMC,EAAY;AAAA,IAC7B;AAAA,IAEA,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,EACF;AAAA,EAEA,MAAMS,GAAO;AAEX,UAAMC,IAAOC,KAGPC,IAAaC,EAAS,MAAM;AAAA,MAChC;AAAA,MACA,GAAGZ;AAAA,MACH,GAAGC,EAAYO,EAAM,IAAI;AAAA,MACzB,GAAGA,EAAM,OACLN,EAAgBM,EAAM,IAAI,IAC1BL,EAAgBK,EAAM,IAAI;AAAA,MAC9B,GAAGJ,EAAaI,EAAM,KAAK;AAAA,IAAA,CAC5B,GAGKK,IAAmBD,EAAS,OAAO;AAAA,MACvC,YAAYJ,EAAM,UAAUT,EAAY,QAAQ,CAACS,EAAM,MACnDM,EAAiBC,EAAsBP,EAAM,aAAa,EAAE,CAAC,IAC7D;AAAA,IACJ,EAAA;AAEK,WAAA;AAAA,MACL,MAAAC;AAAA,MACA,YAAAE;AAAA,MACA,kBAAAE;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;YAjGCG,EAqBM,QAAA;SAnBEC,EAAY,GAAAC,EAAA,OAAA;AAAA,IACjB,KAAK;AAAA,IAAA,OAAAC,EAAAC,EAAA,UAAA;AAAA,IAEN,OAeOC,EAAAD,EAAA,gBAAA;AAAA,EAAA,GAAA;AAAA,gBAbH,WAIC,CAAA,GAAA,MAAA;AAAA,MAAAA,EAAA,OAAAH,KAHSC,EAAA,OAAA;AAAA,QACP,KAAK;AAAA,QACL,OAAOC,EAAA,CAAA,UAAA,UAAA,cAAA,CAAA;AAAA,QAAA,KAAAC,EAAA;AAAA,QAIS,KAAA;AAAA,MAAA,GAAA,MAAA,GAAAE,CACnB,oBACaC,EAAAC,GAAA;AAAA,QACV,KAAI;AAAA,QAAA,MAAAJ,EAAA;AAAA;;;;;;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { defineComponent as B, computed as m, openBlock as s, createElementBlock as u, normalizeClass as d, Fragment as E, renderList as L, renderSlot as r, createTextVNode as N, toDisplayString as M, ref as w, watch as p, resolveComponent as c, createElementVNode as S, createBlock as V, createCommentVNode as n, createVNode as $, normalizeProps as O, guardReactiveProps as b, mergeProps as z, withCtx as P } from "vue";
|
|
2
|
-
import { O as D } from "./OrIconButton-
|
|
2
|
+
import { O as D } from "./OrIconButton-BlHCLpeW.mjs";
|
|
3
3
|
import { O as T } from "./OrLoader-2SaTMxmZ.mjs";
|
|
4
|
-
import { O as j } from "./OrSearch-
|
|
5
|
-
import { O as G } from "./OrSorting-
|
|
4
|
+
import { O as j } from "./OrSearch-1OFONLHk.mjs";
|
|
5
|
+
import { O as G } from "./OrSorting-C1m5NTQf.mjs";
|
|
6
6
|
import { _ as A } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
7
7
|
var k = /* @__PURE__ */ ((e) => (e.Grid = "grid", e.List = "list", e))(k || {});
|
|
8
8
|
const I = {
|
|
@@ -279,4 +279,4 @@ export {
|
|
|
279
279
|
I as g,
|
|
280
280
|
R as l
|
|
281
281
|
};
|
|
282
|
-
//# sourceMappingURL=OrCardCollection-
|
|
282
|
+
//# sourceMappingURL=OrCardCollection-CVNj8vKN.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrCardCollection-DB-7x7pH.mjs","sources":["../../../components/or-card-collection-v3/src/props.ts","../../../components/or-card-collection-v3/src/styles.ts","../../../components/or-card-collection-v3/src/partials/OrCardCollectionView.vue3.vue","../../../components/or-card-collection-v3/src/OrCardCollection.vue"],"sourcesContent":["import { ViewMode } from './types';\n\nexport enum CardCollectionView {\n Grid = 'grid',\n List = 'list',\n}\n\nexport const gridView: ViewMode = {\n view: CardCollectionView.Grid,\n icon: 'grid_view',\n};\nexport const listView: ViewMode = {\n view: CardCollectionView.List,\n icon: 'view_agenda',\n};\n\nexport const defaultViewModes = [gridView, listView];\n","import { CardCollectionView } from './props';\n\nexport const CardCollection: string[] = [\n // Layout\n 'layout-column',\n\n // Box\n 'h-full',\n\n // Spacing\n 'gap-md',\n];\n\nexport const CardCollectionToolbar: string[] = [\n // Layout\n 'layout-row justify-between',\n\n // Typography\n 'typography-body-2-regular',\n\n // Theme\n 'theme-foreground-default',\n 'dark:theme-foreground-default-dark',\n];\n\nexport const CardCollectionToolbarPanel: string[] = [\n // Layout\n 'layout-inline-row',\n\n // Spacing\n 'gap-lg+',\n];\n\nexport const CardCollectionContent: string[] = [\n // Layout\n 'grid',\n\n // Overflow\n 'overflow-auto',\n\n // Spacing\n 'px-[5px]', // shadow width\n 'py-[5px]',\n];\n\nexport const CardCollectionContentViews: Record<CardCollectionView, string[]> = {\n [CardCollectionView.Grid]: [\n // Layout\n 'grid-cols-1 md:grid-cols-5',\n\n // Spacing\n 'gap-sm md:gap-md',\n ],\n\n [CardCollectionView.List]: [\n // Layout\n 'grid-cols-1',\n\n // Spacing\n 'gap-sm',\n ],\n};\n\nexport const CardCollectionEmptyContentItem: string[] = [\n // Layout\n 'layout-column items-center justify-center h-full',\n];\n","<template>\n <div :class=\"rootStyles\">\n <slot\n v-for=\"(item, index) of items\"\n :key=\"item.key || index\"\n :name=\"'item'\"\n :index=\"index\"\n :item=\"item\"\n :mode=\"mode\"\n >\n {{ item.key }}\n </slot>\n\n <slot\n name=\"viewEnd\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent } from 'vue';\nimport { CardCollectionView } from '../props';\nimport { CardCollectionContent, CardCollectionContentViews } from '../styles';\nimport { CardCollectionItem } from '../types';\n\nexport default defineComponent({\n name: 'OrCardCollectionView',\n\n props: {\n items: {\n type: Array as PropType<CardCollectionItem[]>,\n default: () => [],\n },\n\n mode: {\n type: String as PropType<`${CardCollectionView}`>,\n required: true,\n },\n },\n\n setup(props) {\n // Styles\n const rootStyles = computed(() => [\n ...CardCollectionContent,\n ...CardCollectionContentViews[props.mode],\n ]);\n\n return {\n rootStyles,\n };\n },\n});\n</script>\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <div :class=\"toolbarStyles\">\n <div :class=\"toolbarPanelStyles\">\n <OrSorting\n v-if=\"sortOptions.length\"\n :model-value=\"sort\"\n :options=\"sortOptions\"\n @update:modelValue=\"$emit('sortChange', $event)\"\n />\n <slot name=\"toolbar\" />\n </div>\n <div\n :class=\"toolbarPanelStyles\"\n >\n <slot\n v-if=\"enableSearch\"\n name=\"search\"\n >\n <OrSearch\n :model-value=\"proxySearch\"\n class=\"md:w-[350px]\"\n :placeholder=\"searchPlaceholder\"\n :debounce=\"searchDebounce\"\n @search=\"handleSearch\"\n />\n </slot>\n\n <template v-if=\"viewModes.length > 1\">\n <div class=\"layout-row gap-sm\">\n <OrIconButton\n v-for=\"viewOption in viewModes\"\n :key=\"viewOption.view\"\n :icon=\"viewOption.icon\"\n :size=\"'l'\"\n :selected=\"viewOption.view === proxyView\"\n @click=\"switchView(viewOption.view)\"\n />\n </div>\n </template>\n <slot name=\"addon\" />\n </div>\n </div>\n\n <slot\n name=\"header\"\n v-bind=\"{\n items,\n mode: proxyView,\n }\"\n />\n\n <slot\n v-if=\"items.length && !loading\"\n :name=\"proxyView\"\n v-bind=\"{items}\"\n >\n <OrCardCollectionView\n :items=\"items\"\n :mode=\"proxyView\"\n >\n <template v-slot:item=\"props\">\n <slot\n name=\"item\"\n v-bind=\"props\"\n />\n </template>\n <template v-slot:viewEnd>\n <slot\n name=\"viewEnd\"\n />\n </template>\n </OrCardCollectionView>\n </slot>\n\n <div\n v-if=\"items.length === 0 || loading\"\n :class=\"emptyContainerStyles\"\n >\n <slot\n v-if=\"proxySearch.length > 0 && !loading\"\n name=\"noSearchResults\"\n :search=\"proxySearch\"\n >\n No results\n </slot>\n <slot\n v-if=\"loading\"\n name=\"loading\"\n >\n <OrLoader />\n </slot>\n <slot\n v-if=\"items.length === 0 && proxySearch.length === 0 && !loading\"\n name=\"empty\"\n />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, PropType, ref, watch } from 'vue';\nimport { OrIconButtonV3 as OrIconButton } from '@onereach/ui-components.or-icon-button-v3';\nimport { OrLoaderV3 as OrLoader } from '@onereach/ui-components.or-loader-v3';\nimport { OrSearchV3 as OrSearch } from '@onereach/ui-components.or-search-v3';\nimport { OrSortingV3 as OrSorting, SortOption } from '@onereach/ui-components.or-sorting-v3';\nimport OrCardCollectionView from './partials/OrCardCollectionView.vue3.vue';\nimport { defaultViewModes, gridView } from './props';\nimport { CardCollection, CardCollectionToolbar, CardCollectionToolbarPanel, CardCollectionEmptyContentItem } from './styles';\nimport { CardCollectionItem, ViewMode } from './types';\n\nexport default defineComponent({\n name: 'OrCardCollection',\n\n components: {\n OrCardCollectionView,\n OrIconButton,\n OrSorting,\n OrSearch,\n OrLoader,\n },\n\n props: {\n items: {\n type: Array as PropType<CardCollectionItem[]>,\n default: () => [],\n },\n\n view: {\n type: String,\n default: () => gridView.view,\n },\n\n viewModes: {\n type: Array as PropType<ViewMode[]>,\n default: () => defaultViewModes,\n },\n\n sort: {\n type: String,\n default: undefined,\n },\n\n sortOptions: {\n type: Array as PropType<SortOption[]>,\n default: () => [],\n },\n\n search: {\n type: String,\n default: '',\n },\n\n searchPlaceholder: {\n type: String,\n default: undefined,\n },\n\n searchDebounce: {\n type: Number,\n default: undefined,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n 'viewChange',\n 'sortChange',\n 'searchChange',\n ],\n\n expose: [\n 'root',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-card-collection-v3',\n ...CardCollection,\n ]);\n\n const toolbarStyles = computed(() => [\n ...CardCollectionToolbar,\n ]);\n\n const toolbarPanelStyles = computed(() => [\n ...CardCollectionToolbarPanel,\n ]);\n\n const emptyContainerStyles = computed(() => [\n ...CardCollectionEmptyContentItem,\n ]);\n\n // State\n const proxyView = ref(props.view);\n const proxySearch = ref(props.search);\n\n // Methods\n function switchView(view: string): void {\n proxyView.value = view;\n }\n\n function handleSearch(search?: string) {\n proxySearch.value = search || '';\n }\n\n // Effects\n watch(() => props.view, (value) => {\n proxyView.value = value;\n });\n\n watch(proxyView, (value) => {\n context.emit('viewChange', value);\n });\n\n watch(() => props.search, (value) => {\n proxySearch.value = value;\n });\n\n watch(proxySearch, (value) => {\n context.emit('searchChange', value);\n });\n\n return {\n root,\n rootStyles,\n toolbarStyles,\n toolbarPanelStyles,\n emptyContainerStyles,\n proxyView,\n proxySearch,\n switchView,\n handleSearch,\n };\n },\n});\n</script>\n"],"names":["CardCollectionView","gridView","listView","defaultViewModes","CardCollection","CardCollectionToolbar","CardCollectionToolbarPanel","CardCollectionContent","CardCollectionContentViews","CardCollectionEmptyContentItem","_sfc_main$1","defineComponent","props","computed","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_normalizeClass","_openBlock","_createElementBlock","_Fragment","_renderList","item","index","_renderSlot","_sfc_main","OrCardCollectionView","OrIconButton","OrSorting","OrSearch","OrLoader","context","root","ref","rootStyles","toolbarStyles","toolbarPanelStyles","emptyContainerStyles","proxyView","proxySearch","switchView","view","handleSearch","search","watch","value","_hoisted_1","_resolveComponent","_createBlock","_component_OrSorting","_createCommentVNode","_createElementVNode","_createVNode","_component_OrSearch","viewOption","_component_OrIconButton","_normalizeProps","_guardReactiveProps","_mergeProps","_component_OrCardCollectionView"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrCardCollection-CVNj8vKN.mjs","sources":["../../../components/or-card-collection-v3/src/props.ts","../../../components/or-card-collection-v3/src/styles.ts","../../../components/or-card-collection-v3/src/partials/OrCardCollectionView.vue3.vue","../../../components/or-card-collection-v3/src/OrCardCollection.vue"],"sourcesContent":["import { ViewMode } from './types';\n\nexport enum CardCollectionView {\n Grid = 'grid',\n List = 'list',\n}\n\nexport const gridView: ViewMode = {\n view: CardCollectionView.Grid,\n icon: 'grid_view',\n};\nexport const listView: ViewMode = {\n view: CardCollectionView.List,\n icon: 'view_agenda',\n};\n\nexport const defaultViewModes = [gridView, listView];\n","import { CardCollectionView } from './props';\n\nexport const CardCollection: string[] = [\n // Layout\n 'layout-column',\n\n // Box\n 'h-full',\n\n // Spacing\n 'gap-md',\n];\n\nexport const CardCollectionToolbar: string[] = [\n // Layout\n 'layout-row justify-between',\n\n // Typography\n 'typography-body-2-regular',\n\n // Theme\n 'theme-foreground-default',\n 'dark:theme-foreground-default-dark',\n];\n\nexport const CardCollectionToolbarPanel: string[] = [\n // Layout\n 'layout-inline-row',\n\n // Spacing\n 'gap-lg+',\n];\n\nexport const CardCollectionContent: string[] = [\n // Layout\n 'grid',\n\n // Overflow\n 'overflow-auto',\n\n // Spacing\n 'px-[5px]', // shadow width\n 'py-[5px]',\n];\n\nexport const CardCollectionContentViews: Record<CardCollectionView, string[]> = {\n [CardCollectionView.Grid]: [\n // Layout\n 'grid-cols-1 md:grid-cols-5',\n\n // Spacing\n 'gap-sm md:gap-md',\n ],\n\n [CardCollectionView.List]: [\n // Layout\n 'grid-cols-1',\n\n // Spacing\n 'gap-sm',\n ],\n};\n\nexport const CardCollectionEmptyContentItem: string[] = [\n // Layout\n 'layout-column items-center justify-center h-full',\n];\n","<template>\n <div :class=\"rootStyles\">\n <slot\n v-for=\"(item, index) of items\"\n :key=\"item.key || index\"\n :name=\"'item'\"\n :index=\"index\"\n :item=\"item\"\n :mode=\"mode\"\n >\n {{ item.key }}\n </slot>\n\n <slot\n name=\"viewEnd\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent } from 'vue';\nimport { CardCollectionView } from '../props';\nimport { CardCollectionContent, CardCollectionContentViews } from '../styles';\nimport { CardCollectionItem } from '../types';\n\nexport default defineComponent({\n name: 'OrCardCollectionView',\n\n props: {\n items: {\n type: Array as PropType<CardCollectionItem[]>,\n default: () => [],\n },\n\n mode: {\n type: String as PropType<`${CardCollectionView}`>,\n required: true,\n },\n },\n\n setup(props) {\n // Styles\n const rootStyles = computed(() => [\n ...CardCollectionContent,\n ...CardCollectionContentViews[props.mode],\n ]);\n\n return {\n rootStyles,\n };\n },\n});\n</script>\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <div :class=\"toolbarStyles\">\n <div :class=\"toolbarPanelStyles\">\n <OrSorting\n v-if=\"sortOptions.length\"\n :model-value=\"sort\"\n :options=\"sortOptions\"\n @update:modelValue=\"$emit('sortChange', $event)\"\n />\n <slot name=\"toolbar\" />\n </div>\n <div\n :class=\"toolbarPanelStyles\"\n >\n <slot\n v-if=\"enableSearch\"\n name=\"search\"\n >\n <OrSearch\n :model-value=\"proxySearch\"\n class=\"md:w-[350px]\"\n :placeholder=\"searchPlaceholder\"\n :debounce=\"searchDebounce\"\n @search=\"handleSearch\"\n />\n </slot>\n\n <template v-if=\"viewModes.length > 1\">\n <div class=\"layout-row gap-sm\">\n <OrIconButton\n v-for=\"viewOption in viewModes\"\n :key=\"viewOption.view\"\n :icon=\"viewOption.icon\"\n :size=\"'l'\"\n :selected=\"viewOption.view === proxyView\"\n @click=\"switchView(viewOption.view)\"\n />\n </div>\n </template>\n <slot name=\"addon\" />\n </div>\n </div>\n\n <slot\n name=\"header\"\n v-bind=\"{\n items,\n mode: proxyView,\n }\"\n />\n\n <slot\n v-if=\"items.length && !loading\"\n :name=\"proxyView\"\n v-bind=\"{items}\"\n >\n <OrCardCollectionView\n :items=\"items\"\n :mode=\"proxyView\"\n >\n <template v-slot:item=\"props\">\n <slot\n name=\"item\"\n v-bind=\"props\"\n />\n </template>\n <template v-slot:viewEnd>\n <slot\n name=\"viewEnd\"\n />\n </template>\n </OrCardCollectionView>\n </slot>\n\n <div\n v-if=\"items.length === 0 || loading\"\n :class=\"emptyContainerStyles\"\n >\n <slot\n v-if=\"proxySearch.length > 0 && !loading\"\n name=\"noSearchResults\"\n :search=\"proxySearch\"\n >\n No results\n </slot>\n <slot\n v-if=\"loading\"\n name=\"loading\"\n >\n <OrLoader />\n </slot>\n <slot\n v-if=\"items.length === 0 && proxySearch.length === 0 && !loading\"\n name=\"empty\"\n />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, PropType, ref, watch } from 'vue';\nimport { OrIconButtonV3 as OrIconButton } from '@onereach/ui-components.or-icon-button-v3';\nimport { OrLoaderV3 as OrLoader } from '@onereach/ui-components.or-loader-v3';\nimport { OrSearchV3 as OrSearch } from '@onereach/ui-components.or-search-v3';\nimport { OrSortingV3 as OrSorting, SortOption } from '@onereach/ui-components.or-sorting-v3';\nimport OrCardCollectionView from './partials/OrCardCollectionView.vue3.vue';\nimport { defaultViewModes, gridView } from './props';\nimport { CardCollection, CardCollectionToolbar, CardCollectionToolbarPanel, CardCollectionEmptyContentItem } from './styles';\nimport { CardCollectionItem, ViewMode } from './types';\n\nexport default defineComponent({\n name: 'OrCardCollection',\n\n components: {\n OrCardCollectionView,\n OrIconButton,\n OrSorting,\n OrSearch,\n OrLoader,\n },\n\n props: {\n items: {\n type: Array as PropType<CardCollectionItem[]>,\n default: () => [],\n },\n\n view: {\n type: String,\n default: () => gridView.view,\n },\n\n viewModes: {\n type: Array as PropType<ViewMode[]>,\n default: () => defaultViewModes,\n },\n\n sort: {\n type: String,\n default: undefined,\n },\n\n sortOptions: {\n type: Array as PropType<SortOption[]>,\n default: () => [],\n },\n\n search: {\n type: String,\n default: '',\n },\n\n searchPlaceholder: {\n type: String,\n default: undefined,\n },\n\n searchDebounce: {\n type: Number,\n default: undefined,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n 'viewChange',\n 'sortChange',\n 'searchChange',\n ],\n\n expose: [\n 'root',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-card-collection-v3',\n ...CardCollection,\n ]);\n\n const toolbarStyles = computed(() => [\n ...CardCollectionToolbar,\n ]);\n\n const toolbarPanelStyles = computed(() => [\n ...CardCollectionToolbarPanel,\n ]);\n\n const emptyContainerStyles = computed(() => [\n ...CardCollectionEmptyContentItem,\n ]);\n\n // State\n const proxyView = ref(props.view);\n const proxySearch = ref(props.search);\n\n // Methods\n function switchView(view: string): void {\n proxyView.value = view;\n }\n\n function handleSearch(search?: string) {\n proxySearch.value = search || '';\n }\n\n // Effects\n watch(() => props.view, (value) => {\n proxyView.value = value;\n });\n\n watch(proxyView, (value) => {\n context.emit('viewChange', value);\n });\n\n watch(() => props.search, (value) => {\n proxySearch.value = value;\n });\n\n watch(proxySearch, (value) => {\n context.emit('searchChange', value);\n });\n\n return {\n root,\n rootStyles,\n toolbarStyles,\n toolbarPanelStyles,\n emptyContainerStyles,\n proxyView,\n proxySearch,\n switchView,\n handleSearch,\n };\n },\n});\n</script>\n"],"names":["CardCollectionView","gridView","listView","defaultViewModes","CardCollection","CardCollectionToolbar","CardCollectionToolbarPanel","CardCollectionContent","CardCollectionContentViews","CardCollectionEmptyContentItem","_sfc_main$1","defineComponent","props","computed","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_normalizeClass","_openBlock","_createElementBlock","_Fragment","_renderList","item","index","_renderSlot","_sfc_main","OrCardCollectionView","OrIconButton","OrSorting","OrSearch","OrLoader","context","root","ref","rootStyles","toolbarStyles","toolbarPanelStyles","emptyContainerStyles","proxyView","proxySearch","switchView","view","handleSearch","search","watch","value","_hoisted_1","_resolveComponent","_createBlock","_component_OrSorting","_createCommentVNode","_createElementVNode","_createVNode","_component_OrSearch","viewOption","_component_OrIconButton","_normalizeProps","_guardReactiveProps","_mergeProps","_component_OrCardCollectionView"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent as f, toRef as b, computed as y, resolveComponent as t, openBlock as l, createBlock as p, withCtx as i, renderSlot as g, createElementBlock as O, Fragment as V, renderList as S } from "vue";
|
|
2
2
|
import { useProxyModelValue as h, useResponsive as k } from "@onereach/ui-components-common/hooks";
|
|
3
|
-
import { O as C } from "./OrCheckboxTree-
|
|
3
|
+
import { O as C } from "./OrCheckboxTree-DvIftMpp.mjs";
|
|
4
4
|
import { O as F, F as G, a as s } from "./OrFormGroup-BFAjTfM9.mjs";
|
|
5
5
|
import { _ as M } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
6
6
|
const v = f({
|
|
@@ -91,4 +91,4 @@ const R = /* @__PURE__ */ M(v, [["render", B]]);
|
|
|
91
91
|
export {
|
|
92
92
|
R as O
|
|
93
93
|
};
|
|
94
|
-
//# sourceMappingURL=OrCheckboxGroup-
|
|
94
|
+
//# sourceMappingURL=OrCheckboxGroup-BgAvcSVe.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrCheckboxGroup-
|
|
1
|
+
{"version":3,"file":"OrCheckboxGroup-BgAvcSVe.mjs","sources":["../../../components/or-checkbox-group-v3/src/OrCheckboxGroup.vue"],"sourcesContent":["<template>\n <OrFormGroup\n :label=\"label\"\n :error=\"error\"\n :hint=\"hint\"\n :disabled=\"disabled\"\n :direction=\"direction\"\n :spacing=\"localSpacing\"\n >\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n <OrCheckboxTree\n v-for=\"option in options\"\n :key=\"option.value\"\n v-model=\"proxyModelValue\"\n :item=\"option\"\n :disabled=\"disabled || option.disabled\"\n :readonly=\"readonly || option.readonly\"\n :collapsible=\"option.collapsible\"\n :expanded=\"option.expanded\"\n />\n </OrFormGroup>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, PropType, toRef, computed } from 'vue';\nimport { useProxyModelValue, useResponsive } from '@onereach/ui-components-common/hooks';\nimport { CheckboxTreeNode, OrCheckboxTreeV3 as OrCheckboxTree } from '@onereach/ui-components.or-checkbox-tree-v3';\nimport { FormGroupDirection, OrFormGroupV3 as OrFormGroup, FormGroupSpacing } from '@onereach/ui-components.or-form-group-v3';\n\n\nexport default defineComponent({\n name: 'OrCheckboxGroup',\n components: {\n OrCheckboxTree,\n OrFormGroup,\n },\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n props: {\n modelValue: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n\n label: {\n type: String,\n default: '',\n },\n\n error: {\n type: String,\n default: '',\n },\n\n hint: {\n type: String,\n default: '',\n },\n\n direction: {\n type: String as PropType<`${FormGroupDirection}`>,\n default: () => FormGroupDirection.Vertical,\n },\n\n options: {\n type: Array as PropType<CheckboxTreeNode[]>,\n default: () => [],\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n spacing: {\n type: String as PropType<`${FormGroupSpacing}`>,\n default: FormGroupSpacing.SM,\n },\n },\n\n setup(props, context) {\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n const { isMobile } = useResponsive();\n\n const localSpacing = computed(() => isMobile.value ? FormGroupSpacing.NONE : props.spacing);\n\n return {\n proxyModelValue,\n localSpacing,\n };\n },\n});\n\n</script>\n"],"names":["_sfc_main","defineComponent","OrCheckboxTree","OrFormGroup","FormGroupDirection","FormGroupSpacing","props","context","proxyModelValue","useProxyModelValue","toRef","isMobile","useResponsive","localSpacing","computed","_resolveComponent","_openBlock","_createBlock","_component_OrFormGroup","_ctx","_renderSlot","_createElementBlock","_Fragment","_renderList","option","_component_OrCheckboxTree","_cache","$event"],"mappings":";;;;;AAgCA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV,gBAAAC;AAAA,IACA,aAAAC;AAAA,EACF;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EACA,OAAO;AAAA,IACL,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS,MAAMC,EAAmB;AAAA,IACpC;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAASC,EAAiB;AAAA,IAC5B;AAAA,EACF;AAAA,EAEA,MAAMC,GAAOC,GAAS;AACpB,UAAMC,IAAkBC,EAAmBC,EAAMJ,GAAO,YAAY,GAAGC,EAAQ,IAAI,GAC7E,EAAE,UAAAI,MAAaC,KAEfC,IAAeC,EAAS,MAAMH,EAAS,QAAQN,EAAiB,OAAOC,EAAM,OAAO;AAEnF,WAAA;AAAA,MACL,iBAAAE;AAAA,MACA,cAAAK;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;qCAnGCE,EAqBc,aAAA;SAnBNC,EAAO,GAAAC,EAAAC,GAAA;AAAA,IACZ,OAAMC,EAAA;AAAA,IACN,OAAUA,EAAA;AAAA,IACV,MAAWA,EAAA;AAAA,IACX,UAASA,EAAA;AAAA,IAAA,WAAAA,EAAA;AAAA,IAEO,SAAKA,EAAA;AAAA,EAAA,GAAA;AAAA;MAIKC,EAAAD,EAAA,QAAA,OAAA;AAAA,IAAA,CAAA;AAAA;OACnBH,EAAA,EAAO,GAAKK,EAAAC,GAAA,MAAAC,EAAAJ,EAAA,SAAA,CAAAK,YACMP,EAAAQ,GAAA;AAAA,QAAA,KAAAD,EAAA;AAAA,QACvB,YAAYL,EAAA;AAAA,QACZ,uBAAkBO,EAAI,CAAA,MAAOA,EAAQ,CAAA,IAAA,CAAAC,MAAAR,EAAA,kBAAAQ;AAAA,QACrC,MAAAH;AAAA,QACA,UAAAL,EAAa,YAAOK,EAAW;AAAA,QAC/B,UAAUL,EAAe,YAAAK,EAAA;AAAA,QAAA,aAAAA,EAAA;AAAA;;;;;;;"}
|
|
@@ -3,7 +3,7 @@ import { defineComponent as N, toRefs as x, computed as t, watch as R, resolveCo
|
|
|
3
3
|
import { useProxyModelValue as E } from "@onereach/ui-components-common/hooks";
|
|
4
4
|
import { O as U } from "./OrButton-C_hXddAf.mjs";
|
|
5
5
|
import { O as j } from "./OrCheckbox-CI-mxgEp.mjs";
|
|
6
|
-
import { O as q } from "./OrIcon-
|
|
6
|
+
import { O as q } from "./OrIcon-k8cyvh-D.mjs";
|
|
7
7
|
import { flattenDeep as F } from "@onereach/ui-components-common/utils";
|
|
8
8
|
import { _ as G } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
9
9
|
const H = [
|
|
@@ -194,4 +194,4 @@ const ne = /* @__PURE__ */ G(Q, [["render", W]]);
|
|
|
194
194
|
export {
|
|
195
195
|
ne as O
|
|
196
196
|
};
|
|
197
|
-
//# sourceMappingURL=OrCheckboxTree-
|
|
197
|
+
//# sourceMappingURL=OrCheckboxTree-DvIftMpp.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrCheckboxTree-C3-XL6Pc.mjs","sources":["../../../components/or-checkbox-tree-v3/src/styles.ts","../../../components/or-checkbox-tree-v3/src/utils/extractChildrenValues.ts","../../../components/or-checkbox-tree-v3/src/OrCheckboxTree.vue"],"sourcesContent":["export const CheckboxTreeRoot: string[] = [\n // Layout\n 'flex',\n 'flex-col',\n\n // Spacing\n 'md:gap-sm',\n];\n\nexport const CheckboxTreeRootParent: string[] = [\n // Layout\n 'flex',\n 'flex-row',\n 'gap-xs',\n];\n","import { CheckboxTreeNode } from '../types';\nimport { flattenDeep } from '@onereach/ui-components-common/utils';\n\nconst getChildValues = (children?: CheckboxTreeNode[]): any[] | undefined => {\n return children?.map((child) => {\n if (child.disabled) {\n return undefined;\n }\n if (child.children) {\n return getChildValues(child.children);\n } else {\n return child.value;\n }\n });\n};\nexport function extractChildrenValues(children: CheckboxTreeNode[]): any[] {\n return flattenDeep(getChildValues(children)).filter(Boolean);\n}\n\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"hasChildren\">\n <div :class=\"parentStyles\">\n <template v-if=\"collapsible\">\n <OrButton\n :variant=\"'link'\"\n :disabled=\"disabled\"\n @click=\"setIsOpen(!isOpen)\"\n >\n <OrIcon\n :class=\"[isOpen ? 'rotate-[180deg]': 'rotate-0']\"\n :icon=\"'arrow_drop_down'\"\n :size=\"'l'\"\n />\n </OrButton>\n </template>\n\n <OrCheckbox\n :model-value=\"isAllChildrenSelected\"\n :value=\"true\"\n :indeterminate=\"isIntermediate\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n @click=\"handleParentClick\"\n >\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </OrCheckbox>\n </div>\n\n <div\n v-if=\"hasChildren && isOpen\"\n :class=\"[collapsible ? 'ml-2xl' : 'ml-lg']\"\n >\n <OrCheckboxTree\n v-for=\"child in item.children\"\n :key=\"child.value || child.label\"\n v-model=\"proxyModelValue\"\n :class=\"['mt-xs']\"\n :item=\"child\"\n :collapsible=\"child.collapsible\"\n :expanded=\"child.expanded\"\n :disabled=\"disabled || child.disabled\"\n :readonly=\"readonly || child.readonly\"\n >\n <template v-slot:checkboxLabel=\"{ item }\">\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </template>\n </OrCheckboxTree>\n </div>\n </template>\n\n <template v-else>\n <OrCheckbox\n v-model=\"proxyModelValue\"\n :value=\"item.value\"\n :disabled=\"disabled || item.disabled\"\n :readonly=\"readonly || item.readonly\"\n >\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </OrCheckbox>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { useToggle } from '@vueuse/core';\nimport { PropType, computed, defineComponent, toRefs, watch } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrCheckboxV3 as OrCheckbox } from '@onereach/ui-components.or-checkbox-v3';\nimport { OrIconV3 as OrIcon } from '@onereach/ui-components.or-icon-v3';\nimport { CheckboxTreeRoot, CheckboxTreeRootParent } from './styles';\nimport { CheckboxTreeNode } from './types';\nimport { extractChildrenValues } from './utils/extractChildrenValues';\n\nexport default defineComponent({\n name: 'OrCheckboxTree',\n\n components: {\n OrIcon,\n OrCheckbox,\n OrButton,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n\n item: {\n type: Object as PropType<CheckboxTreeNode>,\n required: true,\n },\n\n collapsible: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n expanded: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n setup(props, context) {\n // State\n const { modelValue, item, expanded } = toRefs(props);\n const children = computed(() => item.value.children || []);\n const hasChildren = computed(() => children.value.length > 0);\n\n const childrenValues = computed(() => {\n return hasChildren.value ? extractChildrenValues(children.value) : [];\n });\n\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n\n const isAnyChildrenSelected = computed(() => {\n return proxyModelValue.value?.some((value) => childrenValues.value?.includes(value));\n });\n\n const isAllChildrenSelected = computed(() => {\n return childrenValues.value.length > 0 && childrenValues.value?.every((value) => proxyModelValue.value?.includes(value));\n });\n\n const isIntermediate = computed(() => {\n return isAnyChildrenSelected.value && !isAllChildrenSelected.value;\n });\n\n const [isOpen, setIsOpen] = useToggle(expanded.value);\n\n watch(expanded, (value) => {\n if (value !== undefined) {\n setIsOpen(value);\n }\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-checkbox-tree-v3',\n ...CheckboxTreeRoot,\n ]);\n\n // Styles\n const parentStyles = computed(() => [\n ...CheckboxTreeRootParent,\n ]);\n\n // Methods\n const handleParentClick = () => {\n if (isAllChildrenSelected.value) {\n proxyModelValue.value = proxyModelValue.value.filter((value) => !childrenValues.value.includes(value));\n } else {\n proxyModelValue.value = [\n ...new Set([\n ...proxyModelValue.value,\n ...childrenValues.value,\n ]),\n ];\n }\n };\n\n return {\n rootStyles,\n parentStyles,\n hasChildren,\n proxyModelValue,\n isOpen,\n setIsOpen,\n isIntermediate,\n isAllChildrenSelected,\n isAnyChildrenSelected,\n childrenValues,\n handleParentClick,\n };\n },\n});\n</script>\n"],"names":["CheckboxTreeRoot","CheckboxTreeRootParent","getChildValues","children","child","extractChildrenValues","flattenDeep","_sfc_main","defineComponent","OrIcon","OrCheckbox","OrButton","props","context","modelValue","item","expanded","toRefs","computed","hasChildren","childrenValues","proxyModelValue","useProxyModelValue","isAnyChildrenSelected","_a","value","isAllChildrenSelected","isIntermediate","isOpen","setIsOpen","useToggle","watch","rootStyles","parentStyles","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_Fragment","_createElementVNode","_createBlock","_component_OrButton","_cache","$event","_withCtx","_createVNode","_component_OrIcon","_createCommentVNode","_component_OrCheckbox","_renderList","_component_OrCheckboxTree","_renderSlot"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrCheckboxTree-DvIftMpp.mjs","sources":["../../../components/or-checkbox-tree-v3/src/styles.ts","../../../components/or-checkbox-tree-v3/src/utils/extractChildrenValues.ts","../../../components/or-checkbox-tree-v3/src/OrCheckboxTree.vue"],"sourcesContent":["export const CheckboxTreeRoot: string[] = [\n // Layout\n 'flex',\n 'flex-col',\n\n // Spacing\n 'md:gap-sm',\n];\n\nexport const CheckboxTreeRootParent: string[] = [\n // Layout\n 'flex',\n 'flex-row',\n 'gap-xs',\n];\n","import { CheckboxTreeNode } from '../types';\nimport { flattenDeep } from '@onereach/ui-components-common/utils';\n\nconst getChildValues = (children?: CheckboxTreeNode[]): any[] | undefined => {\n return children?.map((child) => {\n if (child.disabled) {\n return undefined;\n }\n if (child.children) {\n return getChildValues(child.children);\n } else {\n return child.value;\n }\n });\n};\nexport function extractChildrenValues(children: CheckboxTreeNode[]): any[] {\n return flattenDeep(getChildValues(children)).filter(Boolean);\n}\n\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"hasChildren\">\n <div :class=\"parentStyles\">\n <template v-if=\"collapsible\">\n <OrButton\n :variant=\"'link'\"\n :disabled=\"disabled\"\n @click=\"setIsOpen(!isOpen)\"\n >\n <OrIcon\n :class=\"[isOpen ? 'rotate-[180deg]': 'rotate-0']\"\n :icon=\"'arrow_drop_down'\"\n :size=\"'l'\"\n />\n </OrButton>\n </template>\n\n <OrCheckbox\n :model-value=\"isAllChildrenSelected\"\n :value=\"true\"\n :indeterminate=\"isIntermediate\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n @click=\"handleParentClick\"\n >\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </OrCheckbox>\n </div>\n\n <div\n v-if=\"hasChildren && isOpen\"\n :class=\"[collapsible ? 'ml-2xl' : 'ml-lg']\"\n >\n <OrCheckboxTree\n v-for=\"child in item.children\"\n :key=\"child.value || child.label\"\n v-model=\"proxyModelValue\"\n :class=\"['mt-xs']\"\n :item=\"child\"\n :collapsible=\"child.collapsible\"\n :expanded=\"child.expanded\"\n :disabled=\"disabled || child.disabled\"\n :readonly=\"readonly || child.readonly\"\n >\n <template v-slot:checkboxLabel=\"{ item }\">\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </template>\n </OrCheckboxTree>\n </div>\n </template>\n\n <template v-else>\n <OrCheckbox\n v-model=\"proxyModelValue\"\n :value=\"item.value\"\n :disabled=\"disabled || item.disabled\"\n :readonly=\"readonly || item.readonly\"\n >\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </OrCheckbox>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { useToggle } from '@vueuse/core';\nimport { PropType, computed, defineComponent, toRefs, watch } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrCheckboxV3 as OrCheckbox } from '@onereach/ui-components.or-checkbox-v3';\nimport { OrIconV3 as OrIcon } from '@onereach/ui-components.or-icon-v3';\nimport { CheckboxTreeRoot, CheckboxTreeRootParent } from './styles';\nimport { CheckboxTreeNode } from './types';\nimport { extractChildrenValues } from './utils/extractChildrenValues';\n\nexport default defineComponent({\n name: 'OrCheckboxTree',\n\n components: {\n OrIcon,\n OrCheckbox,\n OrButton,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n\n item: {\n type: Object as PropType<CheckboxTreeNode>,\n required: true,\n },\n\n collapsible: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n expanded: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n setup(props, context) {\n // State\n const { modelValue, item, expanded } = toRefs(props);\n const children = computed(() => item.value.children || []);\n const hasChildren = computed(() => children.value.length > 0);\n\n const childrenValues = computed(() => {\n return hasChildren.value ? extractChildrenValues(children.value) : [];\n });\n\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n\n const isAnyChildrenSelected = computed(() => {\n return proxyModelValue.value?.some((value) => childrenValues.value?.includes(value));\n });\n\n const isAllChildrenSelected = computed(() => {\n return childrenValues.value.length > 0 && childrenValues.value?.every((value) => proxyModelValue.value?.includes(value));\n });\n\n const isIntermediate = computed(() => {\n return isAnyChildrenSelected.value && !isAllChildrenSelected.value;\n });\n\n const [isOpen, setIsOpen] = useToggle(expanded.value);\n\n watch(expanded, (value) => {\n if (value !== undefined) {\n setIsOpen(value);\n }\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-checkbox-tree-v3',\n ...CheckboxTreeRoot,\n ]);\n\n // Styles\n const parentStyles = computed(() => [\n ...CheckboxTreeRootParent,\n ]);\n\n // Methods\n const handleParentClick = () => {\n if (isAllChildrenSelected.value) {\n proxyModelValue.value = proxyModelValue.value.filter((value) => !childrenValues.value.includes(value));\n } else {\n proxyModelValue.value = [\n ...new Set([\n ...proxyModelValue.value,\n ...childrenValues.value,\n ]),\n ];\n }\n };\n\n return {\n rootStyles,\n parentStyles,\n hasChildren,\n proxyModelValue,\n isOpen,\n setIsOpen,\n isIntermediate,\n isAllChildrenSelected,\n isAnyChildrenSelected,\n childrenValues,\n handleParentClick,\n };\n },\n});\n</script>\n"],"names":["CheckboxTreeRoot","CheckboxTreeRootParent","getChildValues","children","child","extractChildrenValues","flattenDeep","_sfc_main","defineComponent","OrIcon","OrCheckbox","OrButton","props","context","modelValue","item","expanded","toRefs","computed","hasChildren","childrenValues","proxyModelValue","useProxyModelValue","isAnyChildrenSelected","_a","value","isAllChildrenSelected","isIntermediate","isOpen","setIsOpen","useToggle","watch","rootStyles","parentStyles","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_Fragment","_createElementVNode","_createBlock","_component_OrButton","_cache","$event","_withCtx","_createVNode","_component_OrIcon","_createCommentVNode","_component_OrCheckbox","_renderList","_component_OrCheckboxTree","_renderSlot"],"mappings":";;;;;;;;AAAO,MAAMA,IAA6B;AAAA;AAAA,EAExC;AAAA,EACA;AAAA;AAAA,EAGA;AACF,GAEaC,IAAmC;AAAA;AAAA,EAE9C;AAAA,EACA;AAAA,EACA;AACF,GCXMC,IAAiB,CAACC,MACfA,KAAA,gBAAAA,EAAU,IAAI,CAACC,MAAU;AAC9B,MAAI,CAAAA,EAAM;AAGV,WAAIA,EAAM,WACDF,EAAeE,EAAM,QAAQ,IAE7BA,EAAM;AACf;AAGG,SAASC,EAAsBF,GAAqC;AACzE,SAAOG,EAAYJ,EAAeC,CAAQ,CAAC,EAAE,OAAO,OAAO;AAC7D;AC6EA,MAAAI,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,QAAAC;AAAA,IACA,YAAAC;AAAA,IACA,UAAAC;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EAEA,OAAO;AAAA,IACL,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU;AAAA,IACZ;AAAA,IAEA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,EACF;AAAA,EAEA,MAAMC,GAAOC,GAAS;AAEpB,UAAM,EAAE,YAAAC,GAAY,MAAAC,GAAM,UAAAC,EAAS,IAAIC,EAAOL,CAAK,GAC7CT,IAAWe,EAAS,MAAMH,EAAK,MAAM,YAAY,CAAA,CAAE,GACnDI,IAAcD,EAAS,MAAMf,EAAS,MAAM,SAAS,CAAC,GAEtDiB,IAAiBF,EAAS,MACvBC,EAAY,QAAQd,EAAsBF,EAAS,KAAK,IAAI,EACpE,GAEKkB,IAAkBC,EAAmBR,GAAYD,EAAQ,IAAI,GAE7DU,IAAwBL,EAAS,MAAM;;AACpC,cAAAM,IAAAH,EAAgB,UAAhB,gBAAAG,EAAuB,KAAK,CAACC;;AAAU,gBAAAD,IAAAJ,EAAe,UAAf,gBAAAI,EAAsB,SAASC;AAAA;AAAA,IAAM,CACpF,GAEKC,IAAwBR,EAAS,MAAM;;AAC3C,aAAOE,EAAe,MAAM,SAAS,OAAKI,IAAAJ,EAAe,UAAf,gBAAAI,EAAsB,MAAM,CAACC,MAAU;;AAAA,gBAAAD,IAAAH,EAAgB,UAAhB,gBAAAG,EAAuB,SAASC;AAAA;AAAA,IAAM,CACxH,GAEKE,IAAiBT,EAAS,MACvBK,EAAsB,SAAS,CAACG,EAAsB,KAC9D,GAEK,CAACE,GAAQC,CAAS,IAAIC,EAAUd,EAAS,KAAK;AAE9C,IAAAe,EAAAf,GAAU,CAACS,MAAU;AACzB,MAAIA,MAAU,UACZI,EAAUJ,CAAK;AAAA,IACjB,CACD;AAGK,UAAAO,IAAad,EAAS,MAAM;AAAA,MAChC;AAAA,MACA,GAAGlB;AAAA,IAAA,CACJ,GAGKiC,IAAef,EAAS,MAAM;AAAA,MAClC,GAAGjB;AAAA,IAAA,CACJ;AAgBM,WAAA;AAAA,MACL,YAAA+B;AAAA,MACA,cAAAC;AAAA,MACA,aAAAd;AAAA,MACA,iBAAAE;AAAA,MACA,QAAAO;AAAA,MACA,WAAAC;AAAA,MACA,gBAAAF;AAAA,MACA,uBAAAD;AAAA,MACA,uBAAAH;AAAA,MACA,gBAAAH;AAAA,MACA,mBAxBwB,MAAM;AAC9B,QAAIM,EAAsB,QACRL,EAAA,QAAQA,EAAgB,MAAM,OAAO,CAACI,MAAU,CAACL,EAAe,MAAM,SAASK,CAAK,CAAC,IAErGJ,EAAgB,QAAQ;AAAA,UACtB,uBAAO,IAAI;AAAA,YACT,GAAGA,EAAgB;AAAA,YACnB,GAAGD,EAAe;AAAA,UAAA,CACnB;AAAA,QAAA;AAAA,MAEL;AAAA,IAcA;AAAA,EAEJ;AACF,CAAC;;qEAtNCc,EA+EM,kBAAA,EAAA;SA7EEC,EAAY,GAAAC,EAAA,OAAA;AAAA,IAAA,KAAA;AAAA,WAEFC,EAAWC,EAAA,UAAA;AAAA,EAAA,GAAA;AAAA,IACzBA,EAAA,eAAAH,OAAaI,GAAY,EAAA,KAAA,KAAA;AAAA,MAAAC,EAAA,OAAA;AAAA,eACPH,EAAWC,EAAA,YAAA;AAAA,MAAA,GAAA;AAAA,8BAEPG,EAAAC,GAAA;AAAA,UACf,KAAA;AAAA,UACA,SAAK;AAAA,UAAA,UAAAJ,EAAA;AAAA,UAMJ,SAAAK,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAN,EAAA,UAAA,CAAAA,EAAA,MAAA;AAAA,QAAA,GAAA;AAAA,UAHM,SAAAO,EAAA,MAAA;AAAA,YAAAC,EACCC,GAAiB;AAAA,cACvB,OAAMV,EAAG,CAAAC,EAAA,SAAA,oBAAA,UAAA,CAAA;AAAA,cAAA,MAAA;AAAA;;;;QAKhB,GAAA,GAAA,CAAA,UAca,MAbVU,EAAa,IAAA,EAAA;AAAA,QACFF,EAAAG,GAAA;AAAA,UACX,eAAeX,EAAA;AAAA,UACf,OAAA;AAAA,UACA,eAAUA,EAAA;AAAA,UACV,UAAOA,EAAA;AAAA,UAAA,UAAAA,EAAA;AAAA;;;;;;;;QAYJ,GAAA,GAAA,CAAA,eAAe,iBAAM,YAAA,YAAA,SAAA,CAAA;AAAA,MAAA,GAAA,CAAA;AAAA,MACrBA,EAAA,eAAAA,EAAA,UAAAH,EAAA,GAAAC,EAAG,OAAW;AAAA,QAAA,KAAA;AAAA,iBAEpB,CAmBiBE,EAAA,cAAA,WAAA,OAAA,CAAA;AAAA,MAAA,GAAA;AAAA,SAjBTH,EAAA,EAAM,GAAoBC,EAAAG,GAAA,MAAAW,EAAAZ,EAAA,KAAA,UAAA,CAAAlC,YACRqC,EAAAU,GAAA;AAAA,UAAA,KAAA/C,EAAA,SAAAA,EAAA;AAAA,UACvB,YAAKkC,EAAA;AAAA,UACL,uBAAWK,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAN,EAAA,kBAAAM;AAAA,UACX,SAAmB,CAAW,OAAA,CAAA;AAAA,UAC9B,MAAAxC;AAAA,UACA,aAAUA,EAAA;AAAA,UACV,UAAUA,EAAA;AAAA,UAAA,UAAAkC,EAAA,YAAAlC,EAAA;AAAA,UAEM,UAAAkC,EAAa,YAAIlC,EAAI;AAAA,QAAA,GAAA;AAAA,UAK/B,eAAAyC,EAAA,CAAA,EAAA,MAAA9B,QAAA;AAAA,YAAAqC,EAAAd,EAAA,QAAA,iBAAA,EAAA,MAAAvB,EAAA,GAAA,MAAA;AAAA;;;;;iBAQX,IAYa,EAAA;AAAA,IAAA,GAAA,EAAA,MAAAoB,KAXFM,EAAeQ,GAAA;AAAA,MAAA,KAAA;AAAA,MACvB,YAAOX,EAAK;AAAA,MACZ,uBAAkBK,EAAI,CAAA,MAAKA,EAAQ,CAAA,IAAA,CAAAC,MAAAN,EAAA,kBAAAM;AAAA,MACnC,OAAUN,EAAA,KAAA;AAAA,MAAA,UAAAA,EAAA,YAAAA,EAAA,KAAA;AAAA,MAOJ,UAAAA,EAAA,YAAAA,EAAA,KAAA;AAAA,IAAA,GAAA;AAAA;;;;;;;;;;"}
|
|
@@ -4,8 +4,8 @@ import { basicSetup as po } from "codemirror";
|
|
|
4
4
|
import { indentWithTab as yo } from "@codemirror/commands";
|
|
5
5
|
import { Compartment as F, EditorState as A } from "@codemirror/state";
|
|
6
6
|
import { keymap as bo, EditorView as $ } from "@codemirror/view";
|
|
7
|
-
import { O as ho } from "./OrIconButton-
|
|
8
|
-
import { O as go } from "./OrModal-
|
|
7
|
+
import { O as ho } from "./OrIconButton-BlHCLpeW.mjs";
|
|
8
|
+
import { O as go } from "./OrModal-A9OL6kGW.mjs";
|
|
9
9
|
import { O as vo } from "./OrError-B5ihH6-3.mjs";
|
|
10
10
|
import { O as Co } from "./OrHint-NvbZyURY.mjs";
|
|
11
11
|
import { O as So } from "./OrInputBox-6ciokFdU.mjs";
|
|
@@ -501,4 +501,4 @@ export {
|
|
|
501
501
|
c as C,
|
|
502
502
|
Po as O
|
|
503
503
|
};
|
|
504
|
-
//# sourceMappingURL=OrCode-
|
|
504
|
+
//# sourceMappingURL=OrCode-WlDGnBsW.mjs.map
|