@onereach/ui-components 25.0.1-beta.5746.0 → 25.0.1
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-Ch4HVLxE.mjs → OrAutocomplete-BYPOrjCw.mjs} +4 -4
- package/dist/esm/{OrAutocomplete-Ch4HVLxE.mjs.map → OrAutocomplete-BYPOrjCw.mjs.map} +1 -1
- package/dist/esm/{OrCardCollection-ChT31gXb.mjs → OrCardCollection-8aMbrjmE.mjs} +2 -2
- package/dist/esm/{OrCardCollection-ChT31gXb.mjs.map → OrCardCollection-8aMbrjmE.mjs.map} +1 -1
- package/dist/esm/{OrCheckbox-rhg693fs.mjs → OrCheckbox-WPBzlvaV.mjs} +2 -2
- package/dist/esm/{OrCheckbox-rhg693fs.mjs.map → OrCheckbox-WPBzlvaV.mjs.map} +1 -1
- package/dist/esm/{OrCheckboxGroup-B88VRzoe.mjs → OrCheckboxGroup-CplC5v47.mjs} +3 -3
- package/dist/esm/{OrCheckboxGroup-B88VRzoe.mjs.map → OrCheckboxGroup-CplC5v47.mjs.map} +1 -1
- package/dist/esm/{OrCheckboxTree-CBQhFQDC.mjs → OrCheckboxTree-K4WkrYXY.mjs} +2 -2
- package/dist/esm/{OrCheckboxTree-CBQhFQDC.mjs.map → OrCheckboxTree-K4WkrYXY.mjs.map} +1 -1
- package/dist/esm/{OrCode-DNesTRES.mjs → OrCode-BQd66v38.mjs} +2 -2
- package/dist/esm/{OrCode-DNesTRES.mjs.map → OrCode-BQd66v38.mjs.map} +1 -1
- package/dist/esm/{OrCombinedInput-vdlouB0T.mjs → OrCombinedInput-Ddlid03b.mjs} +2 -2
- package/dist/esm/{OrCombinedInput-vdlouB0T.mjs.map → OrCombinedInput-Ddlid03b.mjs.map} +1 -1
- package/dist/esm/{OrConfirm-JQb9zPU3.mjs → OrConfirm-hPRH5PIY.mjs} +2 -2
- package/dist/esm/{OrConfirm-JQb9zPU3.mjs.map → OrConfirm-hPRH5PIY.mjs.map} +1 -1
- package/dist/esm/{OrDataGrid-Ckf8IWwg.mjs → OrDataGrid-3UnDS9Cf.mjs} +11 -11
- package/dist/esm/{OrDataGrid-Ckf8IWwg.mjs.map → OrDataGrid-3UnDS9Cf.mjs.map} +1 -1
- package/dist/esm/{OrDateFormat-CGDP2JKT.mjs → OrDateFormat-RNeTJhfN.mjs} +2 -2
- package/dist/esm/{OrDateFormat-CGDP2JKT.mjs.map → OrDateFormat-RNeTJhfN.mjs.map} +1 -1
- package/dist/esm/{OrDatePicker-BgebWcl8.mjs → OrDatePicker-C7FejdS-.mjs} +3 -3
- package/dist/esm/{OrDatePicker-BgebWcl8.mjs.map → OrDatePicker-C7FejdS-.mjs.map} +1 -1
- package/dist/esm/{OrDateRangePicker-CpY7Zb6X.mjs → OrDateRangePicker-BbaCBJbG.mjs} +3 -3
- package/dist/esm/{OrDateRangePicker-CpY7Zb6X.mjs.map → OrDateRangePicker-BbaCBJbG.mjs.map} +1 -1
- package/dist/esm/{OrDateTimeFormat-DBHlWha0.mjs → OrDateTimeFormat-C-dCMxgq.mjs} +2 -2
- package/dist/esm/{OrDateTimeFormat-DBHlWha0.mjs.map → OrDateTimeFormat-C-dCMxgq.mjs.map} +1 -1
- package/dist/esm/{OrDateTimePicker-D-T98eo-.mjs → OrDateTimePicker-ZFrPrPwN.mjs} +2 -2
- package/dist/esm/{OrDateTimePicker-D-T98eo-.mjs.map → OrDateTimePicker-ZFrPrPwN.mjs.map} +1 -1
- package/dist/esm/{OrDateTimePicker.vue_vue_type_script_lang-lBfuKkWJ.mjs → OrDateTimePicker.vue_vue_type_script_lang-Fl-_-QVp.mjs} +2 -2
- package/dist/esm/{OrDateTimePicker.vue_vue_type_script_lang-lBfuKkWJ.mjs.map → OrDateTimePicker.vue_vue_type_script_lang-Fl-_-QVp.mjs.map} +1 -1
- package/dist/esm/{OrFormGroup-mZxG7T6Y.mjs → OrFormGroup-CUNdt7UL.mjs} +2 -2
- package/dist/esm/{OrFormGroup-mZxG7T6Y.mjs.map → OrFormGroup-CUNdt7UL.mjs.map} +1 -1
- package/dist/esm/{OrInput-BFV9F9x5.mjs → OrInput-BqDsy3wR.mjs} +2 -2
- package/dist/esm/{OrInput-BFV9F9x5.mjs.map → OrInput-BqDsy3wR.mjs.map} +1 -1
- package/dist/esm/{OrLabel-CsAO_Ev9.mjs → OrLabel-K7_HgvcK.mjs} +29 -35
- package/dist/esm/OrLabel-K7_HgvcK.mjs.map +1 -0
- package/dist/esm/{OrList-DHQeLaEq.mjs → OrList-Gr14z616.mjs} +2 -2
- package/dist/esm/{OrList-DHQeLaEq.mjs.map → OrList-Gr14z616.mjs.map} +1 -1
- package/dist/esm/{OrRadio-b9zcUT5_.mjs → OrRadio-BU9YDLzB.mjs} +2 -2
- package/dist/esm/{OrRadio-b9zcUT5_.mjs.map → OrRadio-BU9YDLzB.mjs.map} +1 -1
- package/dist/esm/{OrRadioGroup-KxKeS62f.mjs → OrRadioGroup-ANee99e8.mjs} +3 -3
- package/dist/esm/{OrRadioGroup-KxKeS62f.mjs.map → OrRadioGroup-ANee99e8.mjs.map} +1 -1
- package/dist/esm/{OrRichTextEditor-C45egu2S.mjs → OrRichTextEditor-B_uVsae1.mjs} +3 -3
- package/dist/esm/{OrRichTextEditor-C45egu2S.mjs.map → OrRichTextEditor-B_uVsae1.mjs.map} +1 -1
- package/dist/esm/{OrSearch-DN6QLqjQ.mjs → OrSearch-OIfce3Md.mjs} +2 -2
- package/dist/esm/{OrSearch-DN6QLqjQ.mjs.map → OrSearch-OIfce3Md.mjs.map} +1 -1
- package/dist/esm/{OrSelect-p4vl5V9K.mjs → OrSelect-DL28KJCH.mjs} +4 -4
- package/dist/esm/{OrSelect-p4vl5V9K.mjs.map → OrSelect-DL28KJCH.mjs.map} +1 -1
- package/dist/esm/{OrSwitch-DPCJ4k70.mjs → OrSwitch-BkAgqeim.mjs} +2 -2
- package/dist/esm/{OrSwitch-DPCJ4k70.mjs.map → OrSwitch-BkAgqeim.mjs.map} +1 -1
- package/dist/esm/{OrTagInput-B3i0tHWg.mjs → OrTagInput-iFJhEZwO.mjs} +2 -2
- package/dist/esm/{OrTagInput-B3i0tHWg.mjs.map → OrTagInput-iFJhEZwO.mjs.map} +1 -1
- package/dist/esm/{OrTextarea-D1oPjwZ-.mjs → OrTextarea-zEjULE8W.mjs} +2 -2
- package/dist/esm/{OrTextarea-D1oPjwZ-.mjs.map → OrTextarea-zEjULE8W.mjs.map} +1 -1
- package/dist/esm/{OrTimeFormat-DUiqbPQR.mjs → OrTimeFormat-CMYDyfoT.mjs} +2 -2
- package/dist/esm/{OrTimeFormat-DUiqbPQR.mjs.map → OrTimeFormat-CMYDyfoT.mjs.map} +1 -1
- package/dist/esm/{OrTimePicker-B5vt3Sqa.mjs → OrTimePicker-BO-Vxw21.mjs} +3 -3
- package/dist/esm/{OrTimePicker-B5vt3Sqa.mjs.map → OrTimePicker-BO-Vxw21.mjs.map} +1 -1
- package/dist/esm/{OrTimeRangePicker-rQkOD5Fd.mjs → OrTimeRangePicker-MvRUSg_g.mjs} +3 -3
- package/dist/esm/{OrTimeRangePicker-rQkOD5Fd.mjs.map → OrTimeRangePicker-MvRUSg_g.mjs.map} +1 -1
- package/dist/esm/components/index.mjs +30 -30
- package/dist/esm/components/or-autocomplete-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-checkbox-v3/index.mjs +1 -1
- package/dist/esm/components/or-code-v3/index.mjs +1 -1
- package/dist/esm/components/or-combined-input-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-form-group-v3/index.mjs +1 -1
- package/dist/esm/components/or-input-v3/index.mjs +1 -1
- package/dist/esm/components/or-label-v3/index.mjs +1 -1
- package/dist/esm/components/or-list-v3/index.mjs +1 -1
- package/dist/esm/components/or-radio-group-v3/index.mjs +1 -1
- package/dist/esm/components/or-radio-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-switch-v3/index.mjs +1 -1
- package/dist/esm/components/or-tag-input-v3/index.mjs +1 -1
- package/dist/esm/components/or-textarea-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/index.mjs +30 -30
- package/package.json +5 -4
- package/dist/esm/OrLabel-CsAO_Ev9.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrSelect-p4vl5V9K.mjs","sources":["../../../components/or-select-v3/src/partials/or-select-control-input/styles.ts","../../../components/or-select-v3/src/partials/or-select-control-input/OrSelectControlInput.vue","../../../components/or-select-v3/src/partials/or-select-placeholder/styles.ts","../../../components/or-select-v3/src/partials/or-select-placeholder/OrSelectPlaceholder.vue","../../../components/or-select-v3/src/partials/or-select-multiple-control/styles.ts","../../../components/or-select-v3/src/partials/or-select-multiple-control/OrSelectMultipleControl.vue","../../../components/or-select-v3/src/partials/or-select-single-control/styles.ts","../../../components/or-select-v3/src/partials/or-select-single-control/OrSelectSingleControl.vue","../../../components/or-select-v3/src/styles.ts","../../../components/or-select-v3/src/OrSelect.vue"],"sourcesContent":["export const SelectControlInput: string[] = [\n // Base\n 'appearance-none',\n\n // Typography\n 'typography-inherit',\n\n // Theme (placeholder)\n 'placeholder:theme-foreground-outline',\n 'dark:placeholder:theme-foreground-outline-dark',\n 'theme-background-transparent',\n 'outline-none',\n];\n","<template>\n <input\n :ref=\"'root'\"\n v-model=\"proxyModelValue\"\n :style=\"controlInlineStyles\"\n :class=\"controlStyles\"\n :type=\"'text'\"\n :placeholder=\"placeholder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :autocomplete=\"'off'\"\n :minlength=\"undefined\"\n :maxlength=\"undefined\"\n >\n</template>\n\n<script lang=\"ts\">\nimport { useFocus } from '@vueuse/core';\nimport { computed, defineComponent, ref, toRefs } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { SelectControlInput } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectControlInput',\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: '',\n },\n\n placeholder: {\n type: String,\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\n emits: [\n 'update:modelValue',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'focused',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLInputElement>();\n\n // Props\n const { placeholder, modelValue } = toRefs(props);\n\n // State\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n const { focused } = useFocus(root);\n\n // Styles\n const controlStyles = computed(() => [\n ...SelectControlInput,\n ]);\n\n const controlInlineStyles = computed(() => {\n const chars = proxyModelValue.value.length > 0\n ? proxyModelValue.value.length\n : placeholder.value?.length;\n\n return {\n width: `${Math.max(chars + 1 || 0, 2)}ch`,\n };\n });\n\n // Methods\n function focus() {\n focused.value = true;\n }\n\n return {\n root,\n proxyModelValue,\n controlStyles,\n controlInlineStyles,\n focused,\n focus,\n };\n },\n});\n</script>\n","export const SelectPlaceholder: string[] = [\n // Interactivity\n 'interactivity-click',\n\n // Typography\n 'typography-inherit truncate',\n\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :disabled=\"disabled\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { SelectPlaceholder } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectPlaceholder',\n\n props: {\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup() {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-select-placeholder-v3',\n ...SelectPlaceholder,\n ]);\n\n return {\n root,\n rootStyles,\n };\n },\n});\n</script>\n","export const SelectMultipleControlRoot: string[] = [\n // Layout\n 'layout-row',\n 'w-full',\n];\n\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrTags\n v-show=\"!isEmpty || enableSearch\"\n :ref=\"'tags'\"\n :items=\"selection\"\n class=\"grow\"\n :disabled=\"disabled\"\n :tag-props=\"{\n variant: readonly || disabled ? 'tag' : 'reset',\n disabled: disabled\n }\"\n :overflow=\"overflow\"\n @reset=\"$emit('reset', $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\n <template\n v-if=\"enableSearch\"\n v-slot:tail\n >\n <div class=\"inline-flex w-fit max-w-full\">\n <OrSelectControlInput\n :ref=\"'searchControl'\"\n v-model=\"searchModelValue\"\n :placeholder=\"isEmpty ? placeholder: ''\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n />\n </div>\n </template>\n </OrTags>\n\n <template v-if=\"isEmpty && !enableSearch\">\n <OrSelectPlaceholder :disabled=\"disabled\">\n {{ placeholder }}\n </OrSelectPlaceholder>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, ref, toRefs, watch } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { isEqual, isNil, toArray } from '@onereach/ui-components-common/utils';\nimport { OrTagsV3 as OrTags, Tag, TagsOverflow } from '@onereach/ui-components.or-tags-v3';\nimport { SelectItem, SelectModelValue } from '../../types';\nimport { OrSelectControlInput } from '../or-select-control-input';\nimport OrSelectPlaceholder from '../or-select-placeholder/OrSelectPlaceholder.vue';\nimport { SelectMultipleControlRoot } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectMultipleControl',\n\n components: {\n OrSelectPlaceholder,\n OrSelectControlInput,\n OrTags,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: '',\n },\n\n model: {\n type: undefined as unknown as PropType<SelectModelValue>,\n default: () => [],\n },\n\n options: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n overflow: {\n type: String as PropType<`${TagsOverflow}`>,\n default: () => TagsOverflow.Hidden,\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\n type: Boolean,\n default: false,\n },\n\n isOpen: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n 'reset',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'focused',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLDivElement>();\n\n const searchControl = ref<InstanceType<typeof OrSelectControlInput>>();\n const tags = ref<InstanceType<typeof OrTags>>();\n\n // Props\n const { modelValue, model, options, overflow } = toRefs(props);\n\n // State\n const searchModelValue = useProxyModelValue(modelValue, context.emit);\n\n const focused = computed(() => {\n return searchControl.value?.focused;\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-select-multiple-control-v3',\n ...SelectMultipleControlRoot,\n ]);\n\n // Computed\n const value = computed(() => isNil(model.value) ? [] : toArray(model.value));\n const isEmpty = computed(() => value.value.length === 0);\n\n const selection = computed(() => {\n if (model.value === undefined || model.value === null) {\n return [];\n }\n\n return value.value\n .map((value) => options.value.find((option) => isEqual(option.value, value)))\n .filter<SelectItem>((value): value is SelectItem => !!value)\n .map((option) => ({\n value: option.value,\n label: option.label,\n tagProps: option.disabled && { disabled: option.disabled },\n } as Tag));\n });\n\n watch(selection, (items, prevItems) => {\n if (items.length != prevItems.length && overflow.value === TagsOverflow.Scroll && tags.value) {\n (tags.value.scrollToEnd as () => void)();\n }\n });\n\n // Methods\n function focus(): void {\n if (searchControl.value) {\n (searchControl.value.focus as () => void)();\n }\n }\n\n return {\n root,\n tags,\n rootStyles,\n searchControl,\n searchModelValue,\n isEmpty,\n selection,\n value,\n focus,\n focused,\n };\n },\n});\n</script>\n","export const SelectSingleControlInput: string[] = [\n // Layout\n 'w-full',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"isOpen && enableSearch\">\n <OrSelectControlInput\n :ref=\"'searchControl'\"\n v-model=\"searchModelValue\"\n :placeholder=\"isEmptyModelValue ? placeholder : selectionLabel\"\n />\n </template>\n\n <template v-else>\n <template v-if=\"isEmptyModelValue\">\n <OrSelectPlaceholder :disabled=\"disabled\">\n {{ placeholder }}\n </OrSelectPlaceholder>\n </template>\n\n <template v-else>\n <div class=\"flex\">\n <div\n ref=\"selectionLabelRef\"\n class=\"truncate w-full\"\n @mouseenter=\"checkTooltip\"\n @mouseleave=\"closeTooltip\"\n >\n {{ selectionLabel }}\n </div>\n <OrTooltip\n ref=\"tooltipRef\"\n :content=\"selectionLabel\"\n :trigger=\"selectionLabelRef\"\n />\n </div>\n </template>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, ref, toRefs, watch } from 'vue';\n\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { isEmpty, isEqual } from '@onereach/ui-components-common/utils';\nimport { SelectItem, SelectModelValue } from '../../types';\nimport OrSelectControlInput from '../or-select-control-input/OrSelectControlInput.vue';\nimport OrSelectPlaceholder from '../or-select-placeholder/OrSelectPlaceholder.vue';\nimport { OrTooltipV3 as OrTooltip } from '@onereach/ui-components.or-tooltip-v3';\nimport { SelectSingleControlInput } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectSingleControl',\n\n components: {\n OrSelectPlaceholder,\n OrSelectControlInput,\n OrTooltip,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: '',\n },\n\n model: {\n type: undefined as unknown as PropType<SelectModelValue>,\n default: undefined,\n },\n\n options: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\n type: Boolean,\n default: false,\n },\n\n isOpen: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'focused',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLDivElement>();\n const searchControl = ref<InstanceType<typeof OrSelectControlInput>>();\n const selectionLabelRef = ref<HTMLDialogElement>();\n const tooltipRef = ref<InstanceType<typeof OrTooltip>>();\n\n // Props\n const { modelValue, model, options } = toRefs(props);\n\n // State\n const searchModelValue = useProxyModelValue(modelValue, context.emit);\n\n const isEmptyModelValue = computed(() => {\n return isEmpty(model.value);\n });\n\n const selection = computed(() => {\n return options.value.find((option) => isEqual(option.value, model.value));\n });\n\n const selectionLabel = computed(() => {\n return selection.value?.label;\n });\n\n watch(\n () => props.isOpen,\n () => {\n tooltipRef.value?.close();\n },\n );\n\n const focused = computed(() => {\n return searchControl.value?.focused;\n });\n\n const openTooltip = () => {\n if (tooltipRef.value) tooltipRef.value.open();\n };\n\n const closeTooltip = () => {\n if (tooltipRef.value) tooltipRef.value.close();\n };\n\n // Styles\n const rootStyles = computed(() => ([\n 'or-select-single-control-v3',\n ...SelectSingleControlInput,\n ]));\n\n // Methods\n function focus() {\n if (searchControl.value) {\n (searchControl.value.focus as () => void)();\n }\n }\n\n function checkTooltip() {\n if (!selectionLabelRef.value) return; // to prevent fro TS error; normally ref will always be available here since the method is a mouse event callback\n const isContentTruncated = selectionLabelRef.value.scrollWidth > selectionLabelRef.value.clientWidth;\n if (isContentTruncated) openTooltip();\n }\n\n return {\n root,\n rootStyles,\n searchControl,\n searchModelValue,\n isEmptyModelValue,\n selection,\n selectionLabel,\n focus,\n focused,\n selectionLabelRef,\n tooltipRef,\n openTooltip,\n closeTooltip,\n checkTooltip,\n };\n },\n});\n</script>\n","export const Select: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const SelectControl: string[] = [\n // Layout\n 'layout-row',\n 'w-full',\n\n // Layout (empty)\n 'empty:hidden',\n\n // Overflow\n 'overflow-hidden',\n\n // Spacing\n 'gap-xs',\n\n // Typography\n 'typography-inherit',\n];\n\nexport const SelectSearchControl: string[] = [\n // Spacing\n '!mx-lg md:!-mx-sm+',\n '!my-sm md:!my-0',\n];\n\nexport const SelectDropdown: string[] = [\n // Overflow\n 'overflow-y-auto',\n\n // Box\n 'max-h-[172px]', // equals 5 items\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 SelectDropdownDefault: string[] = [\n // Shape\n 'rounded-b-md',\n\n // Theme\n '!border-t-0',\n];\n\nexport const SelectDropdownFlipped: string[] = [\n // Shape\n 'rounded-t-md',\n\n // Theme\n '!border-b-0',\n];\n\nexport const SelectDropdownItem: string[] = [\n // Typography\n '!typography-body-2-regular',\n\n // Padding Override todo: check design\n '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 SelectDropdownItemPaddingSingle = [\n // Padding Override\n '!py-md md:!pt-[6px] md:!pb-[7px]',\n];\n\nexport const SelectDropdownItemPaddingMultiple = [\n // Padding Override\n 'md:!pt-[6px] md:!pb-[7px]',\n];\n\nexport const SelectDropdownItemPaddingMultipleMobile = [\n // Padding Override\n 'px-md',\n];\n\nexport const SelectNoSearchResults: string[] = [\n // Layout\n 'layout-row justify-center',\n\n // Spacing\n 'px-md',\n 'py-md',\n\n // Typography\n 'typography-caption-regular',\n\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n];\n\nexport const SelectLoader: 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\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=\"controlId\"\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 <OrInputBox\n :ref=\"'inputBox'\"\n v-dropdown-open=\"toggle\"\n v-dropdown-close=\"close\"\n class=\"interactivity-click\"\n :class=\"[popoverState === 'open' && (popover && popover.isFlipped ? 'rounded-t-0' : 'rounded-b-0'), { 'outline-none': variant === 'embedded' }]\"\n :variant=\"variant\"\n :size=\"size\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :force-state=\"isOpen ? 'focus-within': undefined\"\n :tabindex=\"!disabled ? 0 : null\"\n >\n <div\n :id=\"controlId\"\n :ref=\"'control'\"\n :class=\"controlStyles\"\n :disabled=\"disabled\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n >\n <slot\n name=\"valueTemplate\"\n :model=\"proxyModelValue\"\n >\n <template v-if=\"multiple\">\n <OrSelectMultipleControl\n :ref=\"'multipleControl'\"\n v-model=\"searchText\"\n :model=\"proxyModelValue\"\n :options=\"options\"\n :overflow=\"overflow\"\n :placeholder=\"placeholder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :enable-search=\"enableSearch\"\n :is-open=\"popoverState === 'open'\"\n @reset=\"deselectOption($event)\"\n >\n <template v-slot:tag=\"{item}\">\n <slot\n name=\"tag\"\n :item=\"item\"\n />\n </template>\n </OrSelectMultipleControl>\n </template>\n\n <template v-else>\n <OrSelectSingleControl\n :ref=\"'singleControl'\"\n v-model=\"searchText\"\n :model=\"proxyModelValue\"\n :options=\"options\"\n :placeholder=\"placeholder\"\n :disabled=\"disabled\"\n :enable-search=\"enableSearch\"\n :is-open=\"popoverState === 'open'\"\n />\n </template>\n </slot>\n </div>\n\n <div :class=\"['layout-inline-row', 'gap-sm']\">\n <template v-if=\"showClear\">\n <OrIconButton\n :icon=\"'close'\"\n :color=\"'inherit'\"\n :additional-styles=\"['!text-outline', '!dark:text-outline-dark']\"\n :disabled=\"readonly || disabled\"\n @click.stop=\"$emit('update:modelValue', multiple ? [] : undefined)\"\n />\n </template>\n\n <OrIcon\n v-show=\"!(popoverState === 'open' && enableSearch && enableClear && !isEmptyModelValue)\"\n :icon=\"popoverState === 'open' ? enableSearch ? 'search' : 'arrow_drop_up' : 'arrow_drop_down'\"\n :class=\" popoverState === 'open' && enableSearch ? '!text-outline !dark:text-outline-dark' : ''\"\n :variant=\"'outlined'\"\n />\n </div>\n\n <OrPopover\n :ref=\"'popover'\"\n :variant=\"'auto'\"\n :trigger=\"anchor || inputBoxRoot\"\n :placement=\"'bottom'\"\n :offset=\"0\"\n :full-width=\"true\"\n :disable-default-styles=\"true\"\n >\n <div :class=\"dropdownStyles\">\n <template v-if=\"popoverState === 'open' && enableSearch && isMobile\">\n <OrInput\n :ref=\"'searchControl'\"\n v-model=\"searchText\"\n :class=\"searchControlStyles\"\n :type=\"'search'\"\n :placeholder=\"placeholder\"\n />\n </template>\n <div :class=\"dropdownContainerStyles\">\n <template v-if=\"loading\">\n <div :class=\"['px-sm+', 'py-xs']\">\n <slot name=\"loading\">\n <OrLoader\n :class=\"loaderStyles\"\n variant=\"text\"\n :text=\"loadingText\"\n />\n </slot>\n </div>\n </template>\n\n <template v-else-if=\"resolvedSearchOptions.length > 0\">\n <template v-if=\"groupByFunction\">\n <OrExpansionPanel\n v-for=\"(group, groupName) in groupedOptions\"\n :key=\"groupName\"\n :label=\"groupName\"\n >\n <template v-if=\"multiple\">\n <OrMenuItem\n v-for=\"(option, i) in group\"\n :key=\"i\"\n :tooltip-text=\"option.label\"\n :selected=\"proxyModelValue && proxyModelValue.includes(option.value)\"\n :disabled=\"option.disabled\"\n >\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n <OrCheckbox\n v-model=\"proxyModelValue\"\n :value=\"option.value\"\n :label=\"option.label\"\n :label-variant=\"'menu-item'\"\n :disabled=\"option.disabled\"\n />\n </slot>\n </OrMenuItem>\n </template>\n\n <template v-else>\n <OrMenuItem\n v-for=\"(option, i) in group\"\n :key=\"i\"\n :class=\"dropdownItemStyles\"\n :tooltip-text=\"option.label\"\n :selected=\"proxyModelValue === option.value\"\n :disabled=\"option.disabled\"\n @click.stop=\"selectOption(option.value)\"\n >\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n {{ option.label }}\n </slot>\n </OrMenuItem>\n </template>\n </OrExpansionPanel>\n </template>\n\n <template v-else>\n <template v-if=\"multiple\">\n <OrMenuItem\n v-for=\"(option, i) in resolvedSearchOptions\"\n :key=\"i\"\n :tooltip-text=\"option.label\"\n :class=\"dropdownItemStyles\"\n :selected=\"proxyModelValue && proxyModelValue.includes(option.value)\"\n :disabled=\"option.disabled\"\n @click.stop=\"!option.disabled && toggleOption(option.value)\"\n >\n <OrCheckbox\n :model-value=\"proxyModelValue\"\n :value=\"option.value\"\n :label-variant=\"'menu-item'\"\n :disabled=\"option.disabled\"\n >\n <div @click=\"!option.disabled && toggleOption(option.value)\">\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n {{ option.label }}\n </slot>\n </div>\n </OrCheckbox>\n </OrMenuItem>\n </template>\n\n <template v-else>\n <OrMenuItem\n v-for=\"(option, i) in resolvedSearchOptions\"\n :key=\"i\"\n :class=\"dropdownItemStyles\"\n :selected=\"proxyModelValue === option.value\"\n :tooltip-text=\"option.label\"\n :disabled=\"option.disabled\"\n @click.stop=\"selectOption(option.value); close()\"\n >\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n {{ option.label }}\n </slot>\n </OrMenuItem>\n </template>\n </template>\n </template>\n\n <template v-else>\n <div :class=\"noSearchResultsStyles\">\n <slot\n name=\"noSearchResultsTemplate\"\n :search-text=\"searchText\"\n >\n No results\n </slot>\n </div>\n </template>\n </div>\n </div>\n </OrPopover>\n </OrInputBox>\n\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 { ReferenceElement } from '@floating-ui/dom';\nimport { DropdownClose, DropdownOpen } from '@onereach/ui-components-common/directives';\nimport { searchItemsByLabel } from '@onereach/ui-components-common/helpers';\nimport { useProxyModelValue, useResponsive } from '@onereach/ui-components-common/hooks';\nimport { GroupFunction, SearchFunction } from '@onereach/ui-components-common/types';\nimport { exclude, include, isEmpty, toArray } from '@onereach/ui-components-common/utils';\nimport { OrCheckboxV3 as OrCheckbox } from '@onereach/ui-components.or-checkbox-v3';\nimport { OrErrorV3 as OrError } from '@onereach/ui-components.or-error-v3';\nimport { OrExpansionPanelV3 as OrExpansionPanel } from '@onereach/ui-components.or-expansion-panel-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 { OrIconV3 as OrIcon } from '@onereach/ui-components.or-icon-v3';\nimport { InputBoxSize, InputBoxVariant, OrInputBoxV3 as OrInputBox } from '@onereach/ui-components.or-input-box-v3';\nimport { OrInputV3 as OrInput } from '@onereach/ui-components.or-input-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 { TagsOverflow } from '@onereach/ui-components.or-tags-v3';\nimport { computed, defineComponent, getCurrentInstance, PropType, ref, toRefs, watch, nextTick } from 'vue';\n\nimport { OrSelectMultipleControl, OrSelectSingleControl } from './partials';\nimport * as Styles from './styles';\nimport { SelectItem, SelectModelValue } from './types';\n\n\nexport default defineComponent({\n name: 'OrSelect',\n\n components: {\n OrCheckbox,\n OrError,\n OrExpansionPanel,\n OrHint,\n OrIcon,\n OrIconButton,\n OrInput,\n OrInputBox,\n OrLabel,\n OrMenuItem,\n OrPopover,\n OrSelectMultipleControl,\n OrSelectSingleControl,\n OrLoader,\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<SelectModelValue>,\n default: undefined,\n },\n\n options: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n searchOptions: {\n type: Array as PropType<SelectItem[]>,\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 anchor: {\n type: Object as PropType<ReferenceElement>,\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 disabled: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\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<SelectItem>>,\n default: searchItemsByLabel as SearchFunction<SelectItem>,\n },\n\n groupByFunction: {\n type: Function as PropType<GroupFunction<SelectItem>>,\n default: undefined,\n },\n\n externalControl: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'focus',\n 'blur',\n\n 'search',\n ],\n\n expose: [\n 'root',\n\n 'open',\n 'close',\n 'toggle',\n\n 'toggleOption',\n 'resetSearch',\n\n 'popover',\n 'popoverState',\n ],\n\n setup(props, context) {\n const currentInstance = getCurrentInstance()!;\n\n // Refs\n const root = ref<HTMLElement>();\n\n const inputBox = ref<InstanceType<typeof OrInputBox>>();\n const inputBoxRoot = computed(() => inputBox.value?.root);\n\n const control = ref<HTMLElement>();\n const multipleControl = ref<InstanceType<typeof OrSelectMultipleControl>>();\n const singleControl = ref<InstanceType<typeof OrSelectSingleControl>>();\n const searchControl = ref<HTMLElement>();\n\n const popover = ref<InstanceType<typeof OrPopover>>();\n\n const popoverRoot = computed(() => popover.value?.root);\n const popoverState = computed(() => popover.value?.state);\n\n const isOpen = computed(() => popoverState.value === 'open');\n\n // Props\n const { enableClear, enableSearch, modelValue, multiple } = toRefs(props);\n\n // State\n const controlId = ref(context.attrs.id as string ?? currentInstance.uid.toString());\n\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n\n const bottomSheetFullscreen = computed(() => {\n return popover.value?.bottomSheet?.fullscreen;\n });\n\n const isEmptyModelValue = computed(() => {\n return isEmpty(proxyModelValue.value);\n });\n\n const showClear = computed(() => {\n return enableClear.value && !isEmptyModelValue.value;\n });\n\n\n const focused = computed(() => {\n if (multiple.value) {\n return multipleControl.value?.focused;\n } else {\n return singleControl.value?.focused;\n }\n });\n\n const readonly = computed(() => context.attrs.readonly as boolean);\n\n const internalSearchOptions = ref<SelectItem[]>(props.options);\n\n const resolvedSearchOptions = computed(() => {\n return props.externalControl ? props.searchOptions : internalSearchOptions.value;\n });\n\n const searchText = ref<string>('');\n\n watch([\n () => props.externalControl,\n searchText,\n () => props.options,\n ], async ([externalControl, searchText, options]) => {\n if (externalControl) {\n context.emit('search', searchText);\n } else {\n internalSearchOptions.value = await props.searchFunction(searchText, options);\n }\n }, { deep: true });\n\n\n watch(isOpen, (value) => {\n if (!value) {\n resetSearch();\n }\n });\n\n const groupedOptions = computed(() => {\n const groupBy = props.groupByFunction;\n\n if (groupBy) {\n return internalSearchOptions.value.reduce((accumulator, option) => {\n const group = groupBy(option);\n\n return {\n ...accumulator,\n [group]: [\n ...accumulator[group] ?? [],\n option,\n ],\n };\n }, {} as Record<string, SelectItem[]>);\n }\n\n return {\n '': props.options,\n };\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-select-v3',\n ...Styles.Select,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const controlStyles = computed(() => [\n ...Styles.SelectControl,\n ]);\n\n const searchControlStyles = computed(() => [\n ...Styles.SelectSearchControl,\n ]);\n\n const dropdownStyles = computed(() => [\n 'or-select-popover-v3',\n ...(isMobile.value ? [] : [\n ...Styles.SelectDropdown,\n ...popover.value?.isFlipped ? Styles.SelectDropdownFlipped : Styles.SelectDropdownDefault,\n ]),\n ]);\n\n const dropdownContainerStyles = computed(() => [\n isMobile.value ? 'layout-column' : 'contains',\n bottomSheetFullscreen.value ? 'overflow-y-auto' : 'overflow-hidden',\n ]);\n\n const dropdownItemStyles = computed(() => [\n ...Styles.SelectDropdownItem,\n ...(props.multiple ? Styles.SelectDropdownItemPaddingMultiple : Styles.SelectDropdownItemPaddingSingle),\n ...(isMobile.value ? Styles.SelectDropdownItemPaddingMultipleMobile : []),\n ]);\n\n const noSearchResultsStyles = computed(() => [\n ...Styles.SelectNoSearchResults,\n ]);\n\n const loaderStyles = computed(() => [\n ...Styles.SelectLoader,\n ]);\n\n // Methods\n function toggle(): void {\n if (!readonly.value && !props.disabled) {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n if (popoverState.value === 'open' && !focused.value) {\n close();\n } else {\n open();\n\n setTimeout(() => {\n focus();\n });\n }\n }\n }\n }\n\n function open(): void {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.open as () => void)();\n }\n }\n\n function close(): void {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.close as () => void)();\n }\n }\n\n function focus(): void {\n if (enableSearch.value) {\n const controlInstance = isMobile.value\n ? searchControl.value\n : multiple.value\n ? multipleControl.value\n : singleControl.value;\n\n if (controlInstance) {\n (controlInstance.focus as () => void)();\n }\n }\n }\n\n function selectOption(value: SelectItem['value']): void {\n if (props.multiple) {\n proxyModelValue.value = include(value, toArray(proxyModelValue.value));\n } else {\n proxyModelValue.value = value;\n }\n\n resetSearch();\n }\n\n function deselectOption(value: SelectItem['value']): void {\n if (props.multiple) {\n proxyModelValue.value = exclude(value, toArray(proxyModelValue.value));\n } else {\n proxyModelValue.value = undefined;\n }\n }\n\n function toggleOption(value: SelectItem['value']): void {\n if (props.multiple) {\n const model = toArray(proxyModelValue.value);\n\n if (!model.includes(value)) {\n proxyModelValue.value = include(value, model);\n } else {\n proxyModelValue.value = exclude(value, model);\n }\n } else {\n proxyModelValue.value = proxyModelValue.value !== value ? value : undefined;\n }\n\n resetSearch();\n }\n\n function resetSearch(): void {\n nextTick(() => {\n setTimeout(() => searchText.value = '');\n });\n }\n\n // Utils\n const { isDesktop, isMobile } = useResponsive();\n\n return {\n root,\n inputBox,\n inputBoxRoot,\n control,\n multipleControl,\n singleControl,\n searchControl,\n popover,\n popoverRoot,\n popoverState,\n rootStyles,\n controlStyles,\n searchControlStyles,\n dropdownStyles,\n dropdownContainerStyles,\n dropdownItemStyles,\n noSearchResultsStyles,\n loaderStyles,\n controlId,\n proxyModelValue,\n readonly,\n isEmptyModelValue,\n isOpen,\n showClear,\n searchText,\n internalSearchOptions,\n resolvedSearchOptions,\n groupedOptions,\n\n toggle,\n close,\n open,\n\n selectOption,\n deselectOption,\n toggleOption,\n resetSearch,\n\n isDesktop,\n isMobile,\n };\n },\n});\n</script>\n"],"names":["SelectControlInput","_sfc_main$4","defineComponent","props","context","root","ref","placeholder","modelValue","toRefs","proxyModelValue","useProxyModelValue","focused","useFocus","controlStyles","computed","controlInlineStyles","chars","_a","focus","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_withDirectives","_openBlock","_createElementBlock","$event","_normalizeStyle","SelectPlaceholder","_sfc_main$3","rootStyles","_normalizeClass","SelectMultipleControlRoot","_sfc_main$2","OrSelectPlaceholder","OrSelectControlInput","OrTags","TagsOverflow","searchControl","tags","model","options","overflow","searchModelValue","value","isNil","toArray","isEmpty","selection","option","isEqual","watch","items","prevItems","_resolveComponent","_createVNode","_component_OrTags","_createSlots","_withCtx","item","_createElementVNode","_hoisted_1","_component_OrSelectControlInput","_vShow","_createBlock","_component_OrSelectPlaceholder","SelectSingleControlInput","_sfc_main$1","OrTooltip","selectionLabelRef","tooltipRef","isEmptyModelValue","selectionLabel","openTooltip","closeTooltip","checkTooltip","_Fragment","args","_toDisplayString","_component_OrTooltip","Select","SelectControl","SelectSearchControl","SelectDropdown","SelectDropdownDefault","SelectDropdownFlipped","SelectDropdownItem","SelectDropdownItemPaddingSingle","SelectDropdownItemPaddingMultiple","SelectDropdownItemPaddingMultipleMobile","SelectNoSearchResults","SelectLoader","_sfc_main","OrCheckbox","OrError","OrExpansionPanel","OrHint","OrIcon","OrIconButton","OrInput","OrInputBox","OrLabel","OrMenuItem","OrPopover","OrSelectMultipleControl","OrSelectSingleControl","OrLoader","DropdownClose","DropdownOpen","searchItemsByLabel","currentInstance","getCurrentInstance","inputBox","inputBoxRoot","control","multipleControl","singleControl","popover","popoverRoot","popoverState","isOpen","enableClear","enableSearch","multiple","controlId","bottomSheetFullscreen","_b","showClear","readonly","internalSearchOptions","resolvedSearchOptions","searchText","externalControl","resetSearch","groupedOptions","groupBy","accumulator","group","Styles.Select","InputBoxVariant","Styles.SelectControl","searchControlStyles","Styles.SelectSearchControl","dropdownStyles","isMobile","Styles.SelectDropdown","Styles.SelectDropdownFlipped","Styles.SelectDropdownDefault","dropdownContainerStyles","dropdownItemStyles","Styles.SelectDropdownItem","Styles.SelectDropdownItemPaddingMultiple","Styles.SelectDropdownItemPaddingSingle","Styles.SelectDropdownItemPaddingMultipleMobile","noSearchResultsStyles","Styles.SelectNoSearchResults","loaderStyles","Styles.SelectLoader","toggle","close","open","popoverInstance","controlInstance","selectOption","include","deselectOption","exclude","toggleOption","nextTick","isDesktop","useResponsive","_hoisted_3","_resolveDirective","_component_OrLabel","_renderSlot","_createCommentVNode","_component_OrInputBox","_component_OrSelectMultipleControl","_component_OrSelectSingleControl","_hoisted_2","_component_OrIconButton","_component_OrIcon","_component_OrPopover","_component_OrInput","_component_OrLoader","_renderList","groupName","_component_OrExpansionPanel","i","_component_OrMenuItem","_withModifiers","_component_OrCheckbox","_directive_dropdown_open","_directive_dropdown_close","_component_OrHint","_component_OrError"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrSelect-DL28KJCH.mjs","sources":["../../../components/or-select-v3/src/partials/or-select-control-input/styles.ts","../../../components/or-select-v3/src/partials/or-select-control-input/OrSelectControlInput.vue","../../../components/or-select-v3/src/partials/or-select-placeholder/styles.ts","../../../components/or-select-v3/src/partials/or-select-placeholder/OrSelectPlaceholder.vue","../../../components/or-select-v3/src/partials/or-select-multiple-control/styles.ts","../../../components/or-select-v3/src/partials/or-select-multiple-control/OrSelectMultipleControl.vue","../../../components/or-select-v3/src/partials/or-select-single-control/styles.ts","../../../components/or-select-v3/src/partials/or-select-single-control/OrSelectSingleControl.vue","../../../components/or-select-v3/src/styles.ts","../../../components/or-select-v3/src/OrSelect.vue"],"sourcesContent":["export const SelectControlInput: string[] = [\n // Base\n 'appearance-none',\n\n // Typography\n 'typography-inherit',\n\n // Theme (placeholder)\n 'placeholder:theme-foreground-outline',\n 'dark:placeholder:theme-foreground-outline-dark',\n 'theme-background-transparent',\n 'outline-none',\n];\n","<template>\n <input\n :ref=\"'root'\"\n v-model=\"proxyModelValue\"\n :style=\"controlInlineStyles\"\n :class=\"controlStyles\"\n :type=\"'text'\"\n :placeholder=\"placeholder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :autocomplete=\"'off'\"\n :minlength=\"undefined\"\n :maxlength=\"undefined\"\n >\n</template>\n\n<script lang=\"ts\">\nimport { useFocus } from '@vueuse/core';\nimport { computed, defineComponent, ref, toRefs } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { SelectControlInput } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectControlInput',\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: '',\n },\n\n placeholder: {\n type: String,\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\n emits: [\n 'update:modelValue',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'focused',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLInputElement>();\n\n // Props\n const { placeholder, modelValue } = toRefs(props);\n\n // State\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n const { focused } = useFocus(root);\n\n // Styles\n const controlStyles = computed(() => [\n ...SelectControlInput,\n ]);\n\n const controlInlineStyles = computed(() => {\n const chars = proxyModelValue.value.length > 0\n ? proxyModelValue.value.length\n : placeholder.value?.length;\n\n return {\n width: `${Math.max(chars + 1 || 0, 2)}ch`,\n };\n });\n\n // Methods\n function focus() {\n focused.value = true;\n }\n\n return {\n root,\n proxyModelValue,\n controlStyles,\n controlInlineStyles,\n focused,\n focus,\n };\n },\n});\n</script>\n","export const SelectPlaceholder: string[] = [\n // Interactivity\n 'interactivity-click',\n\n // Typography\n 'typography-inherit truncate',\n\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :disabled=\"disabled\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { SelectPlaceholder } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectPlaceholder',\n\n props: {\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup() {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-select-placeholder-v3',\n ...SelectPlaceholder,\n ]);\n\n return {\n root,\n rootStyles,\n };\n },\n});\n</script>\n","export const SelectMultipleControlRoot: string[] = [\n // Layout\n 'layout-row',\n 'w-full',\n];\n\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrTags\n v-show=\"!isEmpty || enableSearch\"\n :ref=\"'tags'\"\n :items=\"selection\"\n class=\"grow\"\n :disabled=\"disabled\"\n :tag-props=\"{\n variant: readonly || disabled ? 'tag' : 'reset',\n disabled: disabled\n }\"\n :overflow=\"overflow\"\n @reset=\"$emit('reset', $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\n <template\n v-if=\"enableSearch\"\n v-slot:tail\n >\n <div class=\"inline-flex w-fit max-w-full\">\n <OrSelectControlInput\n :ref=\"'searchControl'\"\n v-model=\"searchModelValue\"\n :placeholder=\"isEmpty ? placeholder: ''\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n />\n </div>\n </template>\n </OrTags>\n\n <template v-if=\"isEmpty && !enableSearch\">\n <OrSelectPlaceholder :disabled=\"disabled\">\n {{ placeholder }}\n </OrSelectPlaceholder>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, ref, toRefs, watch } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { isEqual, isNil, toArray } from '@onereach/ui-components-common/utils';\nimport { OrTagsV3 as OrTags, Tag, TagsOverflow } from '@onereach/ui-components.or-tags-v3';\nimport { SelectItem, SelectModelValue } from '../../types';\nimport { OrSelectControlInput } from '../or-select-control-input';\nimport OrSelectPlaceholder from '../or-select-placeholder/OrSelectPlaceholder.vue';\nimport { SelectMultipleControlRoot } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectMultipleControl',\n\n components: {\n OrSelectPlaceholder,\n OrSelectControlInput,\n OrTags,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: '',\n },\n\n model: {\n type: undefined as unknown as PropType<SelectModelValue>,\n default: () => [],\n },\n\n options: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n overflow: {\n type: String as PropType<`${TagsOverflow}`>,\n default: () => TagsOverflow.Hidden,\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\n type: Boolean,\n default: false,\n },\n\n isOpen: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n 'reset',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'focused',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLDivElement>();\n\n const searchControl = ref<InstanceType<typeof OrSelectControlInput>>();\n const tags = ref<InstanceType<typeof OrTags>>();\n\n // Props\n const { modelValue, model, options, overflow } = toRefs(props);\n\n // State\n const searchModelValue = useProxyModelValue(modelValue, context.emit);\n\n const focused = computed(() => {\n return searchControl.value?.focused;\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-select-multiple-control-v3',\n ...SelectMultipleControlRoot,\n ]);\n\n // Computed\n const value = computed(() => isNil(model.value) ? [] : toArray(model.value));\n const isEmpty = computed(() => value.value.length === 0);\n\n const selection = computed(() => {\n if (model.value === undefined || model.value === null) {\n return [];\n }\n\n return value.value\n .map((value) => options.value.find((option) => isEqual(option.value, value)))\n .filter<SelectItem>((value): value is SelectItem => !!value)\n .map((option) => ({\n value: option.value,\n label: option.label,\n tagProps: option.disabled && { disabled: option.disabled },\n } as Tag));\n });\n\n watch(selection, (items, prevItems) => {\n if (items.length != prevItems.length && overflow.value === TagsOverflow.Scroll && tags.value) {\n (tags.value.scrollToEnd as () => void)();\n }\n });\n\n // Methods\n function focus(): void {\n if (searchControl.value) {\n (searchControl.value.focus as () => void)();\n }\n }\n\n return {\n root,\n tags,\n rootStyles,\n searchControl,\n searchModelValue,\n isEmpty,\n selection,\n value,\n focus,\n focused,\n };\n },\n});\n</script>\n","export const SelectSingleControlInput: string[] = [\n // Layout\n 'w-full',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"isOpen && enableSearch\">\n <OrSelectControlInput\n :ref=\"'searchControl'\"\n v-model=\"searchModelValue\"\n :placeholder=\"isEmptyModelValue ? placeholder : selectionLabel\"\n />\n </template>\n\n <template v-else>\n <template v-if=\"isEmptyModelValue\">\n <OrSelectPlaceholder :disabled=\"disabled\">\n {{ placeholder }}\n </OrSelectPlaceholder>\n </template>\n\n <template v-else>\n <div class=\"flex\">\n <div\n ref=\"selectionLabelRef\"\n class=\"truncate w-full\"\n @mouseenter=\"checkTooltip\"\n @mouseleave=\"closeTooltip\"\n >\n {{ selectionLabel }}\n </div>\n <OrTooltip\n ref=\"tooltipRef\"\n :content=\"selectionLabel\"\n :trigger=\"selectionLabelRef\"\n />\n </div>\n </template>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, ref, toRefs, watch } from 'vue';\n\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { isEmpty, isEqual } from '@onereach/ui-components-common/utils';\nimport { SelectItem, SelectModelValue } from '../../types';\nimport OrSelectControlInput from '../or-select-control-input/OrSelectControlInput.vue';\nimport OrSelectPlaceholder from '../or-select-placeholder/OrSelectPlaceholder.vue';\nimport { OrTooltipV3 as OrTooltip } from '@onereach/ui-components.or-tooltip-v3';\nimport { SelectSingleControlInput } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectSingleControl',\n\n components: {\n OrSelectPlaceholder,\n OrSelectControlInput,\n OrTooltip,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: '',\n },\n\n model: {\n type: undefined as unknown as PropType<SelectModelValue>,\n default: undefined,\n },\n\n options: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\n type: Boolean,\n default: false,\n },\n\n isOpen: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'focused',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLDivElement>();\n const searchControl = ref<InstanceType<typeof OrSelectControlInput>>();\n const selectionLabelRef = ref<HTMLDialogElement>();\n const tooltipRef = ref<InstanceType<typeof OrTooltip>>();\n\n // Props\n const { modelValue, model, options } = toRefs(props);\n\n // State\n const searchModelValue = useProxyModelValue(modelValue, context.emit);\n\n const isEmptyModelValue = computed(() => {\n return isEmpty(model.value);\n });\n\n const selection = computed(() => {\n return options.value.find((option) => isEqual(option.value, model.value));\n });\n\n const selectionLabel = computed(() => {\n return selection.value?.label;\n });\n\n watch(\n () => props.isOpen,\n () => {\n tooltipRef.value?.close();\n },\n );\n\n const focused = computed(() => {\n return searchControl.value?.focused;\n });\n\n const openTooltip = () => {\n if (tooltipRef.value) tooltipRef.value.open();\n };\n\n const closeTooltip = () => {\n if (tooltipRef.value) tooltipRef.value.close();\n };\n\n // Styles\n const rootStyles = computed(() => ([\n 'or-select-single-control-v3',\n ...SelectSingleControlInput,\n ]));\n\n // Methods\n function focus() {\n if (searchControl.value) {\n (searchControl.value.focus as () => void)();\n }\n }\n\n function checkTooltip() {\n if (!selectionLabelRef.value) return; // to prevent fro TS error; normally ref will always be available here since the method is a mouse event callback\n const isContentTruncated = selectionLabelRef.value.scrollWidth > selectionLabelRef.value.clientWidth;\n if (isContentTruncated) openTooltip();\n }\n\n return {\n root,\n rootStyles,\n searchControl,\n searchModelValue,\n isEmptyModelValue,\n selection,\n selectionLabel,\n focus,\n focused,\n selectionLabelRef,\n tooltipRef,\n openTooltip,\n closeTooltip,\n checkTooltip,\n };\n },\n});\n</script>\n","export const Select: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const SelectControl: string[] = [\n // Layout\n 'layout-row',\n 'w-full',\n\n // Layout (empty)\n 'empty:hidden',\n\n // Overflow\n 'overflow-hidden',\n\n // Spacing\n 'gap-xs',\n\n // Typography\n 'typography-inherit',\n];\n\nexport const SelectSearchControl: string[] = [\n // Spacing\n '!mx-lg md:!-mx-sm+',\n '!my-sm md:!my-0',\n];\n\nexport const SelectDropdown: string[] = [\n // Overflow\n 'overflow-y-auto',\n\n // Box\n 'max-h-[172px]', // equals 5 items\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 SelectDropdownDefault: string[] = [\n // Shape\n 'rounded-b-md',\n\n // Theme\n '!border-t-0',\n];\n\nexport const SelectDropdownFlipped: string[] = [\n // Shape\n 'rounded-t-md',\n\n // Theme\n '!border-b-0',\n];\n\nexport const SelectDropdownItem: string[] = [\n // Typography\n '!typography-body-2-regular',\n\n // Padding Override todo: check design\n '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 SelectDropdownItemPaddingSingle = [\n // Padding Override\n '!py-md md:!pt-[6px] md:!pb-[7px]',\n];\n\nexport const SelectDropdownItemPaddingMultiple = [\n // Padding Override\n 'md:!pt-[6px] md:!pb-[7px]',\n];\n\nexport const SelectDropdownItemPaddingMultipleMobile = [\n // Padding Override\n 'px-md',\n];\n\nexport const SelectNoSearchResults: string[] = [\n // Layout\n 'layout-row justify-center',\n\n // Spacing\n 'px-md',\n 'py-md',\n\n // Typography\n 'typography-caption-regular',\n\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n];\n\nexport const SelectLoader: 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\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=\"controlId\"\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 <OrInputBox\n :ref=\"'inputBox'\"\n v-dropdown-open=\"toggle\"\n v-dropdown-close=\"close\"\n class=\"interactivity-click\"\n :class=\"[popoverState === 'open' && (popover && popover.isFlipped ? 'rounded-t-0' : 'rounded-b-0'), { 'outline-none': variant === 'embedded' }]\"\n :variant=\"variant\"\n :size=\"size\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :force-state=\"isOpen ? 'focus-within': undefined\"\n :tabindex=\"!disabled ? 0 : null\"\n >\n <div\n :id=\"controlId\"\n :ref=\"'control'\"\n :class=\"controlStyles\"\n :disabled=\"disabled\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n >\n <slot\n name=\"valueTemplate\"\n :model=\"proxyModelValue\"\n >\n <template v-if=\"multiple\">\n <OrSelectMultipleControl\n :ref=\"'multipleControl'\"\n v-model=\"searchText\"\n :model=\"proxyModelValue\"\n :options=\"options\"\n :overflow=\"overflow\"\n :placeholder=\"placeholder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :enable-search=\"enableSearch\"\n :is-open=\"popoverState === 'open'\"\n @reset=\"deselectOption($event)\"\n >\n <template v-slot:tag=\"{item}\">\n <slot\n name=\"tag\"\n :item=\"item\"\n />\n </template>\n </OrSelectMultipleControl>\n </template>\n\n <template v-else>\n <OrSelectSingleControl\n :ref=\"'singleControl'\"\n v-model=\"searchText\"\n :model=\"proxyModelValue\"\n :options=\"options\"\n :placeholder=\"placeholder\"\n :disabled=\"disabled\"\n :enable-search=\"enableSearch\"\n :is-open=\"popoverState === 'open'\"\n />\n </template>\n </slot>\n </div>\n\n <div :class=\"['layout-inline-row', 'gap-sm']\">\n <template v-if=\"showClear\">\n <OrIconButton\n :icon=\"'close'\"\n :color=\"'inherit'\"\n :additional-styles=\"['!text-outline', '!dark:text-outline-dark']\"\n :disabled=\"readonly || disabled\"\n @click.stop=\"$emit('update:modelValue', multiple ? [] : undefined)\"\n />\n </template>\n\n <OrIcon\n v-show=\"!(popoverState === 'open' && enableSearch && enableClear && !isEmptyModelValue)\"\n :icon=\"popoverState === 'open' ? enableSearch ? 'search' : 'arrow_drop_up' : 'arrow_drop_down'\"\n :class=\" popoverState === 'open' && enableSearch ? '!text-outline !dark:text-outline-dark' : ''\"\n :variant=\"'outlined'\"\n />\n </div>\n\n <OrPopover\n :ref=\"'popover'\"\n :variant=\"'auto'\"\n :trigger=\"anchor || inputBoxRoot\"\n :placement=\"'bottom'\"\n :offset=\"0\"\n :full-width=\"true\"\n :disable-default-styles=\"true\"\n >\n <div :class=\"dropdownStyles\">\n <template v-if=\"popoverState === 'open' && enableSearch && isMobile\">\n <OrInput\n :ref=\"'searchControl'\"\n v-model=\"searchText\"\n :class=\"searchControlStyles\"\n :type=\"'search'\"\n :placeholder=\"placeholder\"\n />\n </template>\n <div :class=\"dropdownContainerStyles\">\n <template v-if=\"loading\">\n <div :class=\"['px-sm+', 'py-xs']\">\n <slot name=\"loading\">\n <OrLoader\n :class=\"loaderStyles\"\n variant=\"text\"\n :text=\"loadingText\"\n />\n </slot>\n </div>\n </template>\n\n <template v-else-if=\"resolvedSearchOptions.length > 0\">\n <template v-if=\"groupByFunction\">\n <OrExpansionPanel\n v-for=\"(group, groupName) in groupedOptions\"\n :key=\"groupName\"\n :label=\"groupName\"\n >\n <template v-if=\"multiple\">\n <OrMenuItem\n v-for=\"(option, i) in group\"\n :key=\"i\"\n :tooltip-text=\"option.label\"\n :selected=\"proxyModelValue && proxyModelValue.includes(option.value)\"\n :disabled=\"option.disabled\"\n >\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n <OrCheckbox\n v-model=\"proxyModelValue\"\n :value=\"option.value\"\n :label=\"option.label\"\n :label-variant=\"'menu-item'\"\n :disabled=\"option.disabled\"\n />\n </slot>\n </OrMenuItem>\n </template>\n\n <template v-else>\n <OrMenuItem\n v-for=\"(option, i) in group\"\n :key=\"i\"\n :class=\"dropdownItemStyles\"\n :tooltip-text=\"option.label\"\n :selected=\"proxyModelValue === option.value\"\n :disabled=\"option.disabled\"\n @click.stop=\"selectOption(option.value)\"\n >\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n {{ option.label }}\n </slot>\n </OrMenuItem>\n </template>\n </OrExpansionPanel>\n </template>\n\n <template v-else>\n <template v-if=\"multiple\">\n <OrMenuItem\n v-for=\"(option, i) in resolvedSearchOptions\"\n :key=\"i\"\n :tooltip-text=\"option.label\"\n :class=\"dropdownItemStyles\"\n :selected=\"proxyModelValue && proxyModelValue.includes(option.value)\"\n :disabled=\"option.disabled\"\n @click.stop=\"!option.disabled && toggleOption(option.value)\"\n >\n <OrCheckbox\n :model-value=\"proxyModelValue\"\n :value=\"option.value\"\n :label-variant=\"'menu-item'\"\n :disabled=\"option.disabled\"\n >\n <div @click=\"!option.disabled && toggleOption(option.value)\">\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n {{ option.label }}\n </slot>\n </div>\n </OrCheckbox>\n </OrMenuItem>\n </template>\n\n <template v-else>\n <OrMenuItem\n v-for=\"(option, i) in resolvedSearchOptions\"\n :key=\"i\"\n :class=\"dropdownItemStyles\"\n :selected=\"proxyModelValue === option.value\"\n :tooltip-text=\"option.label\"\n :disabled=\"option.disabled\"\n @click.stop=\"selectOption(option.value); close()\"\n >\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n {{ option.label }}\n </slot>\n </OrMenuItem>\n </template>\n </template>\n </template>\n\n <template v-else>\n <div :class=\"noSearchResultsStyles\">\n <slot\n name=\"noSearchResultsTemplate\"\n :search-text=\"searchText\"\n >\n No results\n </slot>\n </div>\n </template>\n </div>\n </div>\n </OrPopover>\n </OrInputBox>\n\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 { ReferenceElement } from '@floating-ui/dom';\nimport { DropdownClose, DropdownOpen } from '@onereach/ui-components-common/directives';\nimport { searchItemsByLabel } from '@onereach/ui-components-common/helpers';\nimport { useProxyModelValue, useResponsive } from '@onereach/ui-components-common/hooks';\nimport { GroupFunction, SearchFunction } from '@onereach/ui-components-common/types';\nimport { exclude, include, isEmpty, toArray } from '@onereach/ui-components-common/utils';\nimport { OrCheckboxV3 as OrCheckbox } from '@onereach/ui-components.or-checkbox-v3';\nimport { OrErrorV3 as OrError } from '@onereach/ui-components.or-error-v3';\nimport { OrExpansionPanelV3 as OrExpansionPanel } from '@onereach/ui-components.or-expansion-panel-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 { OrIconV3 as OrIcon } from '@onereach/ui-components.or-icon-v3';\nimport { InputBoxSize, InputBoxVariant, OrInputBoxV3 as OrInputBox } from '@onereach/ui-components.or-input-box-v3';\nimport { OrInputV3 as OrInput } from '@onereach/ui-components.or-input-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 { TagsOverflow } from '@onereach/ui-components.or-tags-v3';\nimport { computed, defineComponent, getCurrentInstance, PropType, ref, toRefs, watch, nextTick } from 'vue';\n\nimport { OrSelectMultipleControl, OrSelectSingleControl } from './partials';\nimport * as Styles from './styles';\nimport { SelectItem, SelectModelValue } from './types';\n\n\nexport default defineComponent({\n name: 'OrSelect',\n\n components: {\n OrCheckbox,\n OrError,\n OrExpansionPanel,\n OrHint,\n OrIcon,\n OrIconButton,\n OrInput,\n OrInputBox,\n OrLabel,\n OrMenuItem,\n OrPopover,\n OrSelectMultipleControl,\n OrSelectSingleControl,\n OrLoader,\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<SelectModelValue>,\n default: undefined,\n },\n\n options: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n searchOptions: {\n type: Array as PropType<SelectItem[]>,\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 anchor: {\n type: Object as PropType<ReferenceElement>,\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 disabled: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\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<SelectItem>>,\n default: searchItemsByLabel as SearchFunction<SelectItem>,\n },\n\n groupByFunction: {\n type: Function as PropType<GroupFunction<SelectItem>>,\n default: undefined,\n },\n\n externalControl: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'focus',\n 'blur',\n\n 'search',\n ],\n\n expose: [\n 'root',\n\n 'open',\n 'close',\n 'toggle',\n\n 'toggleOption',\n 'resetSearch',\n\n 'popover',\n 'popoverState',\n ],\n\n setup(props, context) {\n const currentInstance = getCurrentInstance()!;\n\n // Refs\n const root = ref<HTMLElement>();\n\n const inputBox = ref<InstanceType<typeof OrInputBox>>();\n const inputBoxRoot = computed(() => inputBox.value?.root);\n\n const control = ref<HTMLElement>();\n const multipleControl = ref<InstanceType<typeof OrSelectMultipleControl>>();\n const singleControl = ref<InstanceType<typeof OrSelectSingleControl>>();\n const searchControl = ref<HTMLElement>();\n\n const popover = ref<InstanceType<typeof OrPopover>>();\n\n const popoverRoot = computed(() => popover.value?.root);\n const popoverState = computed(() => popover.value?.state);\n\n const isOpen = computed(() => popoverState.value === 'open');\n\n // Props\n const { enableClear, enableSearch, modelValue, multiple } = toRefs(props);\n\n // State\n const controlId = ref(context.attrs.id as string ?? currentInstance.uid.toString());\n\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n\n const bottomSheetFullscreen = computed(() => {\n return popover.value?.bottomSheet?.fullscreen;\n });\n\n const isEmptyModelValue = computed(() => {\n return isEmpty(proxyModelValue.value);\n });\n\n const showClear = computed(() => {\n return enableClear.value && !isEmptyModelValue.value;\n });\n\n\n const focused = computed(() => {\n if (multiple.value) {\n return multipleControl.value?.focused;\n } else {\n return singleControl.value?.focused;\n }\n });\n\n const readonly = computed(() => context.attrs.readonly as boolean);\n\n const internalSearchOptions = ref<SelectItem[]>(props.options);\n\n const resolvedSearchOptions = computed(() => {\n return props.externalControl ? props.searchOptions : internalSearchOptions.value;\n });\n\n const searchText = ref<string>('');\n\n watch([\n () => props.externalControl,\n searchText,\n () => props.options,\n ], async ([externalControl, searchText, options]) => {\n if (externalControl) {\n context.emit('search', searchText);\n } else {\n internalSearchOptions.value = await props.searchFunction(searchText, options);\n }\n }, { deep: true });\n\n\n watch(isOpen, (value) => {\n if (!value) {\n resetSearch();\n }\n });\n\n const groupedOptions = computed(() => {\n const groupBy = props.groupByFunction;\n\n if (groupBy) {\n return internalSearchOptions.value.reduce((accumulator, option) => {\n const group = groupBy(option);\n\n return {\n ...accumulator,\n [group]: [\n ...accumulator[group] ?? [],\n option,\n ],\n };\n }, {} as Record<string, SelectItem[]>);\n }\n\n return {\n '': props.options,\n };\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-select-v3',\n ...Styles.Select,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const controlStyles = computed(() => [\n ...Styles.SelectControl,\n ]);\n\n const searchControlStyles = computed(() => [\n ...Styles.SelectSearchControl,\n ]);\n\n const dropdownStyles = computed(() => [\n 'or-select-popover-v3',\n ...(isMobile.value ? [] : [\n ...Styles.SelectDropdown,\n ...popover.value?.isFlipped ? Styles.SelectDropdownFlipped : Styles.SelectDropdownDefault,\n ]),\n ]);\n\n const dropdownContainerStyles = computed(() => [\n isMobile.value ? 'layout-column' : 'contains',\n bottomSheetFullscreen.value ? 'overflow-y-auto' : 'overflow-hidden',\n ]);\n\n const dropdownItemStyles = computed(() => [\n ...Styles.SelectDropdownItem,\n ...(props.multiple ? Styles.SelectDropdownItemPaddingMultiple : Styles.SelectDropdownItemPaddingSingle),\n ...(isMobile.value ? Styles.SelectDropdownItemPaddingMultipleMobile : []),\n ]);\n\n const noSearchResultsStyles = computed(() => [\n ...Styles.SelectNoSearchResults,\n ]);\n\n const loaderStyles = computed(() => [\n ...Styles.SelectLoader,\n ]);\n\n // Methods\n function toggle(): void {\n if (!readonly.value && !props.disabled) {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n if (popoverState.value === 'open' && !focused.value) {\n close();\n } else {\n open();\n\n setTimeout(() => {\n focus();\n });\n }\n }\n }\n }\n\n function open(): void {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.open as () => void)();\n }\n }\n\n function close(): void {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.close as () => void)();\n }\n }\n\n function focus(): void {\n if (enableSearch.value) {\n const controlInstance = isMobile.value\n ? searchControl.value\n : multiple.value\n ? multipleControl.value\n : singleControl.value;\n\n if (controlInstance) {\n (controlInstance.focus as () => void)();\n }\n }\n }\n\n function selectOption(value: SelectItem['value']): void {\n if (props.multiple) {\n proxyModelValue.value = include(value, toArray(proxyModelValue.value));\n } else {\n proxyModelValue.value = value;\n }\n\n resetSearch();\n }\n\n function deselectOption(value: SelectItem['value']): void {\n if (props.multiple) {\n proxyModelValue.value = exclude(value, toArray(proxyModelValue.value));\n } else {\n proxyModelValue.value = undefined;\n }\n }\n\n function toggleOption(value: SelectItem['value']): void {\n if (props.multiple) {\n const model = toArray(proxyModelValue.value);\n\n if (!model.includes(value)) {\n proxyModelValue.value = include(value, model);\n } else {\n proxyModelValue.value = exclude(value, model);\n }\n } else {\n proxyModelValue.value = proxyModelValue.value !== value ? value : undefined;\n }\n\n resetSearch();\n }\n\n function resetSearch(): void {\n nextTick(() => {\n setTimeout(() => searchText.value = '');\n });\n }\n\n // Utils\n const { isDesktop, isMobile } = useResponsive();\n\n return {\n root,\n inputBox,\n inputBoxRoot,\n control,\n multipleControl,\n singleControl,\n searchControl,\n popover,\n popoverRoot,\n popoverState,\n rootStyles,\n controlStyles,\n searchControlStyles,\n dropdownStyles,\n dropdownContainerStyles,\n dropdownItemStyles,\n noSearchResultsStyles,\n loaderStyles,\n controlId,\n proxyModelValue,\n readonly,\n isEmptyModelValue,\n isOpen,\n showClear,\n searchText,\n internalSearchOptions,\n resolvedSearchOptions,\n groupedOptions,\n\n toggle,\n close,\n open,\n\n selectOption,\n deselectOption,\n toggleOption,\n resetSearch,\n\n isDesktop,\n isMobile,\n };\n },\n});\n</script>\n"],"names":["SelectControlInput","_sfc_main$4","defineComponent","props","context","root","ref","placeholder","modelValue","toRefs","proxyModelValue","useProxyModelValue","focused","useFocus","controlStyles","computed","controlInlineStyles","chars","_a","focus","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_withDirectives","_openBlock","_createElementBlock","$event","_normalizeStyle","SelectPlaceholder","_sfc_main$3","rootStyles","_normalizeClass","SelectMultipleControlRoot","_sfc_main$2","OrSelectPlaceholder","OrSelectControlInput","OrTags","TagsOverflow","searchControl","tags","model","options","overflow","searchModelValue","value","isNil","toArray","isEmpty","selection","option","isEqual","watch","items","prevItems","_resolveComponent","_createVNode","_component_OrTags","_createSlots","_withCtx","item","_createElementVNode","_hoisted_1","_component_OrSelectControlInput","_vShow","_createBlock","_component_OrSelectPlaceholder","SelectSingleControlInput","_sfc_main$1","OrTooltip","selectionLabelRef","tooltipRef","isEmptyModelValue","selectionLabel","openTooltip","closeTooltip","checkTooltip","_Fragment","args","_toDisplayString","_component_OrTooltip","Select","SelectControl","SelectSearchControl","SelectDropdown","SelectDropdownDefault","SelectDropdownFlipped","SelectDropdownItem","SelectDropdownItemPaddingSingle","SelectDropdownItemPaddingMultiple","SelectDropdownItemPaddingMultipleMobile","SelectNoSearchResults","SelectLoader","_sfc_main","OrCheckbox","OrError","OrExpansionPanel","OrHint","OrIcon","OrIconButton","OrInput","OrInputBox","OrLabel","OrMenuItem","OrPopover","OrSelectMultipleControl","OrSelectSingleControl","OrLoader","DropdownClose","DropdownOpen","searchItemsByLabel","currentInstance","getCurrentInstance","inputBox","inputBoxRoot","control","multipleControl","singleControl","popover","popoverRoot","popoverState","isOpen","enableClear","enableSearch","multiple","controlId","bottomSheetFullscreen","_b","showClear","readonly","internalSearchOptions","resolvedSearchOptions","searchText","externalControl","resetSearch","groupedOptions","groupBy","accumulator","group","Styles.Select","InputBoxVariant","Styles.SelectControl","searchControlStyles","Styles.SelectSearchControl","dropdownStyles","isMobile","Styles.SelectDropdown","Styles.SelectDropdownFlipped","Styles.SelectDropdownDefault","dropdownContainerStyles","dropdownItemStyles","Styles.SelectDropdownItem","Styles.SelectDropdownItemPaddingMultiple","Styles.SelectDropdownItemPaddingSingle","Styles.SelectDropdownItemPaddingMultipleMobile","noSearchResultsStyles","Styles.SelectNoSearchResults","loaderStyles","Styles.SelectLoader","toggle","close","open","popoverInstance","controlInstance","selectOption","include","deselectOption","exclude","toggleOption","nextTick","isDesktop","useResponsive","_hoisted_3","_resolveDirective","_component_OrLabel","_renderSlot","_createCommentVNode","_component_OrInputBox","_component_OrSelectMultipleControl","_component_OrSelectSingleControl","_hoisted_2","_component_OrIconButton","_component_OrIcon","_component_OrPopover","_component_OrInput","_component_OrLoader","_renderList","groupName","_component_OrExpansionPanel","i","_component_OrMenuItem","_withModifiers","_component_OrCheckbox","_directive_dropdown_open","_directive_dropdown_close","_component_OrHint","_component_OrError"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { defineComponent as O, reactive as C, ref as m, computed as d, toRef as V, resolveComponent as p, openBlock as i, createElementBlock as s, normalizeClass as k, mergeProps as $, createVNode as L, createBlock as B, withCtx as v, renderSlot as h, createTextVNode as q, toDisplayString as j, createCommentVNode as A } from "vue";
|
|
3
3
|
import { useIdAttribute as E, useControlAttributes as N, useProxyModelValue as z } from "@onereach/ui-components-common/hooks";
|
|
4
4
|
import { isArray as y, isUndefined as g, include as H, exclude as I } from "@onereach/ui-components-common/utils";
|
|
5
|
-
import { O as P, L as T } from "./OrLabel-
|
|
5
|
+
import { O as P, L as T } from "./OrLabel-K7_HgvcK.mjs";
|
|
6
6
|
import { O as D } from "./OrLoader-2SaTMxmZ.mjs";
|
|
7
7
|
import { _ as F } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
8
8
|
const M = [
|
|
@@ -252,4 +252,4 @@ const te = /* @__PURE__ */ F(K, [["render", X], ["__scopeId", "data-v-ae029e56"]
|
|
|
252
252
|
export {
|
|
253
253
|
te as O
|
|
254
254
|
};
|
|
255
|
-
//# sourceMappingURL=OrSwitch-
|
|
255
|
+
//# sourceMappingURL=OrSwitch-BkAgqeim.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrSwitch-DPCJ4k70.mjs","sources":["../../../components/or-switch-v3/src/styles.ts","../../../components/or-switch-v3/src/OrSwitch.vue"],"sourcesContent":["export const Switch: string[] = [\n // Layout\n 'layout-row',\n\n // Spacing\n 'gap-sm',\n];\n\nexport const SwitchControl: string[] = [\n // Layout\n 'layout-inline-row justify-start checked:justify-end',\n\n // Interactivity\n 'interactivity-click',\n\n // Shape\n 'rounded-full',\n\n // Box\n 'w-[43px] md:w-[37px]',\n 'h-[24px] md:h-[21px]',\n\n // Spacing\n 'px-[2px]',\n 'active:px-[1px]',\n\n // Spacing (checked)\n 'checked:px-[3px]',\n 'active:checked:px-[2px]',\n\n // Theme\n 'theme-preset-3-primary',\n 'dark:theme-preset-3-primary-dark',\n\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 // Theme (focus)\n 'focus-visible:theme-outline-primary focus-visible:outline-2',\n 'dark:focus-visible:theme-outline-primary-dark',\n\n // Theme (checked)\n 'checked:theme-preset-1-primary',\n 'dark:checked:theme-preset-1-primary-dark',\n];\n\nexport const SwitchControlHandle: string[] = [\n // Box\n 'after:w-[18px] after:md:w-[16px]',\n 'after:h-[18px] after:md:h-[16px]',\n\n // Shape\n 'after:rounded-full',\n\n // Theme\n 'after:active:w-[20px] after:active:md:w-[18px]',\n 'after:active:h-[20px] after:active:md:h-[18px]',\n\n 'after:bg-outline',\n 'after:dark:bg-outline-dark',\n\n 'after:hover:bg-on-surface-variant',\n 'after:hover:dark:bg-on-surface-variant-dark',\n\n 'after:focus-visible:bg-on-surface-variant',\n 'after:focus-visible:dark:bg-on-surface-variant-dark',\n\n 'after:active:bg-outline',\n 'after:active:dark:bg-outline-dark',\n\n 'after:disabled:bg-on-disabled',\n 'after:disabled:dark:bg-on-disabled-dark',\n\n 'after:checked:bg-on-primary',\n 'after:checked:dark:bg-on-primary-dark',\n\n 'after:checked:shadow',\n\n 'after:checked:hover:bg-primary-container',\n 'after:checked:hover:dark:bg-primary-container-dark',\n\n 'after:checked:focus-visible:bg-primary-container',\n 'after:checked:focus-visible:dark:bg-primary-container-dark',\n\n 'after:checked:active:bg-on-primary',\n 'after:checked:active:dark:bg-on-primary-dark',\n\n 'after:checked:disabled:bg-on-disabled',\n 'after:checked:disabled:dark:bg-on-disabled-dark',\n];\n\nexport const SwitchLoader: string[] = [\n // Layout\n 'layout-row justify-center',\n\n // Box\n 'w-[24px] md:w-[20px]',\n 'h-[24px] md:h-[20px]',\n\n // Shape\n 'rounded-full',\n\n // Theme\n 'theme-border-outline border-1',\n 'dark:theme-border-outline-dark',\n];\n\nexport const SwitchLoaderHandle: string[] = [\n // Layout\n 'after:absolute',\n\n // Box\n 'after:w-[18px] after:md:w-[14px]',\n 'after:h-[18px] after:md:h-[14px]',\n\n // Shape\n 'after:rounded-full',\n\n // Theme\n 'after:bg-outline',\n 'dark:after:bg-outline-dark',\n\n 'after:disabled:bg-on-disabled',\n 'dark:after:disabled:bg-on-disabled-dark',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"!loading\">\n <input\n :ref=\"'control'\"\n v-bind=\"attributes\"\n :class=\"controlStyles\"\n :type=\"'checkbox'\"\n :checked=\"checked\"\n :required=\"required\"\n :disabled=\"disabled\"\n @change=\"$emit('change', $event); onChange()\"\n @click=\"$emit('click', $event)\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n >\n </template>\n\n <template v-else>\n <div\n :class=\"loaderStyles\"\n :disabled=\"disabled\"\n >\n <OrLoader\n :variant=\"'circular'\"\n :color=\"'primary'\"\n :size=\"'m'\"\n />\n </div>\n </template>\n\n <template v-if=\"$slots.default || label\">\n <OrLabel\n :control-id=\"attributes.id\"\n :variant=\"labelVariant\"\n :selected=\"checked\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot>{{ label }}</slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, reactive, ref, toRef } from 'vue';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { exclude, include, isArray, isUndefined } from '@onereach/ui-components-common/utils';\nimport { LabelVariant, OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { OrLoaderV3 as OrLoader } from '@onereach/ui-components.or-loader-v3';\nimport { Switch, SwitchControl, SwitchControlHandle, SwitchLoader, SwitchLoaderHandle } from './styles';\nimport { SwitchModelValue, SwitchValue } from './types';\n\nexport default defineComponent({\n name: 'OrSwitch',\n\n components: {\n OrLabel,\n OrLoader,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<SwitchModelValue>,\n default: undefined,\n },\n\n value: {\n type: undefined as unknown as PropType<SwitchValue>,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n labelVariant: {\n type: String as PropType<`${LabelVariant}`>,\n default: () => LabelVariant.Toggle,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'change',\n 'click',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'blur',\n ],\n\n setup(props, context) {\n const attributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n });\n\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-switch-v3',\n ...Switch,\n ]);\n\n const control = ref<HTMLElement>();\n\n const controlStyles = computed(() => [\n ...SwitchControl,\n ...SwitchControlHandle,\n ]);\n\n const loaderStyles = computed(() => [\n ...SwitchLoader,\n ...SwitchLoaderHandle,\n ]);\n\n // State\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const checked = computed(() => {\n if (isArray(model.value)) {\n if (isUndefined(props.value)) {\n throw new Error('[OrSwitch]: `value` must be specified.');\n }\n\n return model.value.includes(props.value);\n }\n\n return Boolean(model.value);\n });\n\n // Handlers\n function onChange(): void {\n if (isArray(model.value)) {\n if (isUndefined(props.value)) {\n throw new Error('[OrSwitch]: `value` must be specified.');\n }\n\n if (!checked.value) {\n model.value = include(props.value, model.value);\n } else {\n model.value = exclude(props.value, model.value);\n }\n } else {\n model.value = !model.value;\n }\n }\n\n // Methods\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n\n return {\n attributes,\n\n root,\n rootStyles,\n\n control,\n controlStyles,\n\n loaderStyles,\n\n checked,\n\n onChange,\n\n focus,\n blur,\n };\n },\n});\n</script>\n\n<style scoped>\ninput {\n line-height: 0;\n appearance: none;\n}\n</style>\n"],"names":["Switch","SwitchControl","SwitchControlHandle","SwitchLoader","SwitchLoaderHandle","_sfc_main","defineComponent","OrLabel","OrLoader","LabelVariant","props","context","attributes","reactive","useIdAttribute","useControlAttributes","root","ref","rootStyles","computed","control","controlStyles","loaderStyles","model","useProxyModelValue","toRef","checked","isArray","isUndefined","onChange","exclude","include","focus","_a","blur","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_component_OrLoader","_hoisted_2","_mergeProps","_cache","$event","_hoisted_1","_createBlock","_component_OrLabel","_renderSlot"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrSwitch-BkAgqeim.mjs","sources":["../../../components/or-switch-v3/src/styles.ts","../../../components/or-switch-v3/src/OrSwitch.vue"],"sourcesContent":["export const Switch: string[] = [\n // Layout\n 'layout-row',\n\n // Spacing\n 'gap-sm',\n];\n\nexport const SwitchControl: string[] = [\n // Layout\n 'layout-inline-row justify-start checked:justify-end',\n\n // Interactivity\n 'interactivity-click',\n\n // Shape\n 'rounded-full',\n\n // Box\n 'w-[43px] md:w-[37px]',\n 'h-[24px] md:h-[21px]',\n\n // Spacing\n 'px-[2px]',\n 'active:px-[1px]',\n\n // Spacing (checked)\n 'checked:px-[3px]',\n 'active:checked:px-[2px]',\n\n // Theme\n 'theme-preset-3-primary',\n 'dark:theme-preset-3-primary-dark',\n\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 // Theme (focus)\n 'focus-visible:theme-outline-primary focus-visible:outline-2',\n 'dark:focus-visible:theme-outline-primary-dark',\n\n // Theme (checked)\n 'checked:theme-preset-1-primary',\n 'dark:checked:theme-preset-1-primary-dark',\n];\n\nexport const SwitchControlHandle: string[] = [\n // Box\n 'after:w-[18px] after:md:w-[16px]',\n 'after:h-[18px] after:md:h-[16px]',\n\n // Shape\n 'after:rounded-full',\n\n // Theme\n 'after:active:w-[20px] after:active:md:w-[18px]',\n 'after:active:h-[20px] after:active:md:h-[18px]',\n\n 'after:bg-outline',\n 'after:dark:bg-outline-dark',\n\n 'after:hover:bg-on-surface-variant',\n 'after:hover:dark:bg-on-surface-variant-dark',\n\n 'after:focus-visible:bg-on-surface-variant',\n 'after:focus-visible:dark:bg-on-surface-variant-dark',\n\n 'after:active:bg-outline',\n 'after:active:dark:bg-outline-dark',\n\n 'after:disabled:bg-on-disabled',\n 'after:disabled:dark:bg-on-disabled-dark',\n\n 'after:checked:bg-on-primary',\n 'after:checked:dark:bg-on-primary-dark',\n\n 'after:checked:shadow',\n\n 'after:checked:hover:bg-primary-container',\n 'after:checked:hover:dark:bg-primary-container-dark',\n\n 'after:checked:focus-visible:bg-primary-container',\n 'after:checked:focus-visible:dark:bg-primary-container-dark',\n\n 'after:checked:active:bg-on-primary',\n 'after:checked:active:dark:bg-on-primary-dark',\n\n 'after:checked:disabled:bg-on-disabled',\n 'after:checked:disabled:dark:bg-on-disabled-dark',\n];\n\nexport const SwitchLoader: string[] = [\n // Layout\n 'layout-row justify-center',\n\n // Box\n 'w-[24px] md:w-[20px]',\n 'h-[24px] md:h-[20px]',\n\n // Shape\n 'rounded-full',\n\n // Theme\n 'theme-border-outline border-1',\n 'dark:theme-border-outline-dark',\n];\n\nexport const SwitchLoaderHandle: string[] = [\n // Layout\n 'after:absolute',\n\n // Box\n 'after:w-[18px] after:md:w-[14px]',\n 'after:h-[18px] after:md:h-[14px]',\n\n // Shape\n 'after:rounded-full',\n\n // Theme\n 'after:bg-outline',\n 'dark:after:bg-outline-dark',\n\n 'after:disabled:bg-on-disabled',\n 'dark:after:disabled:bg-on-disabled-dark',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"!loading\">\n <input\n :ref=\"'control'\"\n v-bind=\"attributes\"\n :class=\"controlStyles\"\n :type=\"'checkbox'\"\n :checked=\"checked\"\n :required=\"required\"\n :disabled=\"disabled\"\n @change=\"$emit('change', $event); onChange()\"\n @click=\"$emit('click', $event)\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n >\n </template>\n\n <template v-else>\n <div\n :class=\"loaderStyles\"\n :disabled=\"disabled\"\n >\n <OrLoader\n :variant=\"'circular'\"\n :color=\"'primary'\"\n :size=\"'m'\"\n />\n </div>\n </template>\n\n <template v-if=\"$slots.default || label\">\n <OrLabel\n :control-id=\"attributes.id\"\n :variant=\"labelVariant\"\n :selected=\"checked\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot>{{ label }}</slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, reactive, ref, toRef } from 'vue';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { exclude, include, isArray, isUndefined } from '@onereach/ui-components-common/utils';\nimport { LabelVariant, OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { OrLoaderV3 as OrLoader } from '@onereach/ui-components.or-loader-v3';\nimport { Switch, SwitchControl, SwitchControlHandle, SwitchLoader, SwitchLoaderHandle } from './styles';\nimport { SwitchModelValue, SwitchValue } from './types';\n\nexport default defineComponent({\n name: 'OrSwitch',\n\n components: {\n OrLabel,\n OrLoader,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<SwitchModelValue>,\n default: undefined,\n },\n\n value: {\n type: undefined as unknown as PropType<SwitchValue>,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n labelVariant: {\n type: String as PropType<`${LabelVariant}`>,\n default: () => LabelVariant.Toggle,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'change',\n 'click',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'blur',\n ],\n\n setup(props, context) {\n const attributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n });\n\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-switch-v3',\n ...Switch,\n ]);\n\n const control = ref<HTMLElement>();\n\n const controlStyles = computed(() => [\n ...SwitchControl,\n ...SwitchControlHandle,\n ]);\n\n const loaderStyles = computed(() => [\n ...SwitchLoader,\n ...SwitchLoaderHandle,\n ]);\n\n // State\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const checked = computed(() => {\n if (isArray(model.value)) {\n if (isUndefined(props.value)) {\n throw new Error('[OrSwitch]: `value` must be specified.');\n }\n\n return model.value.includes(props.value);\n }\n\n return Boolean(model.value);\n });\n\n // Handlers\n function onChange(): void {\n if (isArray(model.value)) {\n if (isUndefined(props.value)) {\n throw new Error('[OrSwitch]: `value` must be specified.');\n }\n\n if (!checked.value) {\n model.value = include(props.value, model.value);\n } else {\n model.value = exclude(props.value, model.value);\n }\n } else {\n model.value = !model.value;\n }\n }\n\n // Methods\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n\n return {\n attributes,\n\n root,\n rootStyles,\n\n control,\n controlStyles,\n\n loaderStyles,\n\n checked,\n\n onChange,\n\n focus,\n blur,\n };\n },\n});\n</script>\n\n<style scoped>\ninput {\n line-height: 0;\n appearance: none;\n}\n</style>\n"],"names":["Switch","SwitchControl","SwitchControlHandle","SwitchLoader","SwitchLoaderHandle","_sfc_main","defineComponent","OrLabel","OrLoader","LabelVariant","props","context","attributes","reactive","useIdAttribute","useControlAttributes","root","ref","rootStyles","computed","control","controlStyles","loaderStyles","model","useProxyModelValue","toRef","checked","isArray","isUndefined","onChange","exclude","include","focus","_a","blur","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_component_OrLoader","_hoisted_2","_mergeProps","_cache","$event","_hoisted_1","_createBlock","_component_OrLabel","_renderSlot"],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ import { O as Be } from "./OrHint-NvbZyURY.mjs";
|
|
|
8
8
|
import { O as we } from "./OrIconButton-BlHCLpeW.mjs";
|
|
9
9
|
import { O as Ie } from "./OrInputBox-6ciokFdU.mjs";
|
|
10
10
|
import { a as Ve } from "./OrInputBox.vue_vue_type_script_lang-q2L7rmth.mjs";
|
|
11
|
-
import { O as ke } from "./OrLabel-
|
|
11
|
+
import { O as ke } from "./OrLabel-K7_HgvcK.mjs";
|
|
12
12
|
import { O as Se } from "./OrLoader-2SaTMxmZ.mjs";
|
|
13
13
|
import { a as j } from "./OrTag-Bixe0EQq.mjs";
|
|
14
14
|
import { O as $e, T as G } from "./OrTags-CS0bcLtx.mjs";
|
|
@@ -388,4 +388,4 @@ const Ye = /* @__PURE__ */ Le(Ae, [["render", De], ["__scopeId", "data-v-e2132f3
|
|
|
388
388
|
export {
|
|
389
389
|
Ye as O
|
|
390
390
|
};
|
|
391
|
-
//# sourceMappingURL=OrTagInput-
|
|
391
|
+
//# sourceMappingURL=OrTagInput-iFJhEZwO.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrTagInput-B3i0tHWg.mjs","sources":["../../../components/or-tag-input-v3/src/styles.ts","../../../components/or-tag-input-v3/src/OrTagInput.vue"],"sourcesContent":["export const TagInput: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const TagInputControl: string[] = [\n // Layout\n // 'flex-auto',\n\n // Typography\n 'typography-inherit',\n\n // Theme (placeholder)\n 'placeholder:theme-foreground-outline',\n 'dark:placeholder:theme-foreground-outline-dark',\n];\n\nexport const TagInputItem: string[] = [\n // Box\n '!min-h-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=\"controlAttributes.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 <OrInputBox\n :ref=\"'inputBox'\"\n :class=\"inputBoxStyles\"\n :variant=\"variant\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :tabindex=\"0\"\n :force-state=\"activated ? 'focus-within': undefined\"\n @focus=\"activate\"\n >\n <template\n v-if=\"$slots.prependInner\"\n v-slot:prepend\n >\n <slot name=\"prependInner\" />\n </template>\n <OrTags\n :ref=\"'tags'\"\n :class=\"['grow']\"\n :items=\"tagsItems\"\n :disabled=\"disabled\"\n :tag-props=\"tagsProps\"\n :overflow=\"overflow\"\n @reset=\"remove($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\n <template\n v-if=\"showControl\"\n v-slot:tail\n >\n <div class=\"inline-flex w-fit max-w-full\">\n <input\n :ref=\"'control'\"\n v-bind=\"controlAttributes\"\n v-model.trim=\"draftModelValue\"\n :class=\"controlStyles\"\n :style=\"controlInlineStyles\"\n :type=\"'text'\"\n :placeholder=\"!proxyModelValue || (proxyModelValue && proxyModelValue.length === 0) ? placeholder : undefined\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :autocomplete=\"'off'\"\n :minlength=\"undefined\"\n :maxlength=\"undefined\"\n @input=\"$emit('input', $event)\"\n @keydown=\"$emit('keydown', $event)\"\n @keydown.enter=\"add()\"\n @keyup=\"$emit('keyup', $event)\"\n @focus=\"activate\"\n >\n </div>\n </template>\n </OrTags>\n <template\n v-if=\"$slots.appendInner\"\n v-slot:addon\n >\n <slot name=\"appendInner\" />\n </template>\n <template\n v-else-if=\"loading\"\n v-slot:addon\n >\n <OrLoader\n :variant=\"'circular'\"\n :color=\"error ? 'danger' : 'primary'\"\n :size=\"isMobile ? 'm' : 's'\"\n />\n </template>\n\n <template\n v-else-if=\"enableClear && !readonly && !disabled\"\n v-slot:addon\n >\n <template v-if=\"proxyModelValue && proxyModelValue.length > 0 || draftModelValue\">\n <OrIconButton\n :icon=\"'close'\"\n :color=\"'inherit'\"\n @click=\"reset()\"\n />\n </template>\n </template>\n </OrInputBox>\n\n <template v-if=\"$slots.hint || hint || maxLength\">\n <OrHint\n v-show=\"!error\"\n :disabled=\"disabled\"\n >\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n\n <template\n v-if=\"maxLength\"\n v-slot:addon\n >\n {{ currentLength }} / {{ maxLength }}\n </template>\n </OrHint>\n </template>\n\n <OrError\n v-show=\"typeof error === 'string' && error.length > 0\"\n :disabled=\"disabled\"\n >\n {{ error }}\n\n <template\n v-if=\"maxLength\"\n v-slot:addon\n >\n {{ currentLength }} / {{ maxLength }}\n </template>\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { MaybeElementRef, onClickOutside } from '@vueuse/core';\nimport { PropType, computed, defineComponent, nextTick, reactive, ref, toRefs, watch } from 'vue';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue, useResponsive, useValidationAttributes } from '@onereach/ui-components-common/hooks';\nimport { exclude, include, 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 { 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 { TagColor } from '@onereach/ui-components.or-tag-v3';\nimport { OrTagsV3 as OrTags, TagObject, TagsOverflow } from '@onereach/ui-components.or-tags-v3';\nimport { TagInput, TagInputControl, TagInputItem } from './styles';\nimport { TagInputModelValue } from './types';\n\nexport default defineComponent({\n name: 'OrTagInput',\n\n components: {\n OrError,\n OrHint,\n OrIconButton,\n OrInputBox,\n OrLabel,\n OrLoader,\n OrTags,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<TagInputModelValue>,\n default: () => [],\n },\n\n variant: {\n type: String as PropType<`${InputBoxVariant}`>,\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 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 overflow: {\n type: String as PropType<`${TagsOverflow}`>,\n default: () => TagsOverflow.Hidden,\n },\n\n // todo: review default state, disabling will breaking\n enableClear: {\n type: Boolean,\n default: true,\n },\n\n additionalInputBoxStyles: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n\n saveOnBlur: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'input',\n 'keydown',\n 'keyup',\n 'focus',\n 'blur',\n\n 'reset',\n ],\n\n expose: [\n 'root',\n\n 'reset',\n 'clear',\n\n 'focus',\n 'blur',\n\n 'activate',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n const control = ref<HTMLInputElement>();\n const inputBox = ref<InstanceType<typeof OrInputBox>>();\n const tags = ref<InstanceType<typeof OrTags>>();\n\n // Props\n const { modelValue, overflow, placeholder, disabled, readonly, saveOnBlur } = toRefs(props);\n const { isMobile } = useResponsive();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-tag-input-v3',\n ...TagInput,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const controlStyles = computed(() => [\n ...TagInputControl,\n ]);\n\n const itemStyles = computed(() => [\n ...TagInputItem,\n ]);\n\n const inputBoxStyles = computed(() => [\n 'interactivity-select',\n ...props.additionalInputBoxStyles,\n ]);\n\n // State\n const controlAttributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n ...useValidationAttributes(),\n });\n\n const activated = ref(false);\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n const draftModelValue = ref<string>();\n\n const tagsItems = computed(() => {\n return toArray(proxyModelValue.value).map((item) => ({\n label: item,\n value: item,\n\n tagProps: {\n color: item === draftModelValue.value ? TagColor.Danger : TagColor.Default,\n },\n } as TagObject));\n });\n\n const currentLength = computed(() => proxyModelValue.value?.length ?? 0);\n const maxLength = computed(() => controlAttributes.maxlength);\n\n const controlInlineStyles = computed(() => {\n const chars = draftModelValue.value\n ? draftModelValue.value.length\n : currentLength.value === 0\n ? placeholder.value?.length ?? 0\n : 0;\n return {\n width: `${Math.max(chars + 1 || 0, 3)}ch`,\n };\n });\n\n const showControl = computed(() => {\n return draftModelValue.value\n || currentLength.value === 0\n || activated.value;\n });\n\n const tagsProps = computed(() => ({\n variant: readonly.value || disabled.value || !activated.value ? 'tag' : 'reset',\n disabled: disabled.value,\n }));\n\n // Methods\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n\n function deactivate() {\n activated.value = false;\n nextTick(() => blur());\n context.emit('blur');\n }\n\n function activate() {\n if (disabled.value || readonly.value) return;\n\n if (!activated.value) {\n activated.value = true;\n context.emit('focus');\n }\n\n nextTick(() => focus());\n }\n\n function add(): void {\n const newItem = draftModelValue.value;\n\n if (!newItem) return;\n if (proxyModelValue.value?.includes(newItem)) return;\n if (maxLength.value && currentLength.value >= maxLength.value) return;\n\n proxyModelValue.value = include(newItem, proxyModelValue.value ?? []);\n draftModelValue.value = '';\n\n nextTick(() => focus());\n }\n\n function remove(value: string): void {\n proxyModelValue.value = exclude(value, proxyModelValue.value ?? []);\n }\n\n function reset(): void {\n proxyModelValue.value = [];\n draftModelValue.value = '';\n context.emit('reset');\n }\n\n function clear(): void {\n draftModelValue.value = '';\n }\n\n // Effects\n onClickOutside((inputBox as MaybeElementRef), () => {\n if (activated.value === false || (tags.value?.overflowPopover as any)?.state === 'open') return;\n if (saveOnBlur.value) add();\n deactivate();\n });\n\n watch(proxyModelValue, (items, prevItems) => {\n if (overflow.value !== TagsOverflow.Scroll) return;\n if (items?.length !== prevItems?.length) {\n (tags.value?.scrollToEnd as any)();\n }\n });\n\n return {\n root,\n control,\n inputBox,\n tags,\n rootStyles,\n controlStyles,\n itemStyles,\n inputBoxStyles,\n controlInlineStyles,\n controlAttributes,\n proxyModelValue,\n draftModelValue,\n tagsItems,\n tagsProps,\n currentLength,\n maxLength,\n activated,\n showControl,\n isMobile,\n focus,\n blur,\n add,\n activate,\n deactivate,\n remove,\n reset,\n clear,\n };\n },\n});\n</script>\n\n<style scoped>\ninput {\n min-width: 0;\n background: none;\n outline: none;\n}\n</style>\n"],"names":["TagInput","TagInputControl","TagInputItem","_sfc_main","defineComponent","OrError","OrHint","OrIconButton","OrInputBox","OrLabel","OrLoader","OrTags","TagsOverflow","props","context","root","ref","control","inputBox","tags","modelValue","overflow","placeholder","disabled","readonly","saveOnBlur","toRefs","isMobile","useResponsive","rootStyles","computed","InputBoxVariant","controlStyles","itemStyles","inputBoxStyles","controlAttributes","reactive","useIdAttribute","useControlAttributes","useValidationAttributes","activated","proxyModelValue","useProxyModelValue","draftModelValue","tagsItems","toArray","item","TagColor","currentLength","_a","maxLength","controlInlineStyles","chars","showControl","tagsProps","focus","blur","deactivate","nextTick","activate","add","newItem","include","remove","value","exclude","reset","clear","onClickOutside","_b","watch","items","prevItems","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_OrLabel","_renderSlot","_createCommentVNode","_createVNode","_component_OrInputBox","_createSlots","_withCtx","_component_OrTags","_cache","$event","_createElementVNode","_mergeProps","_withKeys","_component_OrLoader","_component_OrIconButton","_withDirectives","_component_OrHint","_component_OrError"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrTagInput-iFJhEZwO.mjs","sources":["../../../components/or-tag-input-v3/src/styles.ts","../../../components/or-tag-input-v3/src/OrTagInput.vue"],"sourcesContent":["export const TagInput: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const TagInputControl: string[] = [\n // Layout\n // 'flex-auto',\n\n // Typography\n 'typography-inherit',\n\n // Theme (placeholder)\n 'placeholder:theme-foreground-outline',\n 'dark:placeholder:theme-foreground-outline-dark',\n];\n\nexport const TagInputItem: string[] = [\n // Box\n '!min-h-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=\"controlAttributes.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 <OrInputBox\n :ref=\"'inputBox'\"\n :class=\"inputBoxStyles\"\n :variant=\"variant\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :tabindex=\"0\"\n :force-state=\"activated ? 'focus-within': undefined\"\n @focus=\"activate\"\n >\n <template\n v-if=\"$slots.prependInner\"\n v-slot:prepend\n >\n <slot name=\"prependInner\" />\n </template>\n <OrTags\n :ref=\"'tags'\"\n :class=\"['grow']\"\n :items=\"tagsItems\"\n :disabled=\"disabled\"\n :tag-props=\"tagsProps\"\n :overflow=\"overflow\"\n @reset=\"remove($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\n <template\n v-if=\"showControl\"\n v-slot:tail\n >\n <div class=\"inline-flex w-fit max-w-full\">\n <input\n :ref=\"'control'\"\n v-bind=\"controlAttributes\"\n v-model.trim=\"draftModelValue\"\n :class=\"controlStyles\"\n :style=\"controlInlineStyles\"\n :type=\"'text'\"\n :placeholder=\"!proxyModelValue || (proxyModelValue && proxyModelValue.length === 0) ? placeholder : undefined\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :autocomplete=\"'off'\"\n :minlength=\"undefined\"\n :maxlength=\"undefined\"\n @input=\"$emit('input', $event)\"\n @keydown=\"$emit('keydown', $event)\"\n @keydown.enter=\"add()\"\n @keyup=\"$emit('keyup', $event)\"\n @focus=\"activate\"\n >\n </div>\n </template>\n </OrTags>\n <template\n v-if=\"$slots.appendInner\"\n v-slot:addon\n >\n <slot name=\"appendInner\" />\n </template>\n <template\n v-else-if=\"loading\"\n v-slot:addon\n >\n <OrLoader\n :variant=\"'circular'\"\n :color=\"error ? 'danger' : 'primary'\"\n :size=\"isMobile ? 'm' : 's'\"\n />\n </template>\n\n <template\n v-else-if=\"enableClear && !readonly && !disabled\"\n v-slot:addon\n >\n <template v-if=\"proxyModelValue && proxyModelValue.length > 0 || draftModelValue\">\n <OrIconButton\n :icon=\"'close'\"\n :color=\"'inherit'\"\n @click=\"reset()\"\n />\n </template>\n </template>\n </OrInputBox>\n\n <template v-if=\"$slots.hint || hint || maxLength\">\n <OrHint\n v-show=\"!error\"\n :disabled=\"disabled\"\n >\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n\n <template\n v-if=\"maxLength\"\n v-slot:addon\n >\n {{ currentLength }} / {{ maxLength }}\n </template>\n </OrHint>\n </template>\n\n <OrError\n v-show=\"typeof error === 'string' && error.length > 0\"\n :disabled=\"disabled\"\n >\n {{ error }}\n\n <template\n v-if=\"maxLength\"\n v-slot:addon\n >\n {{ currentLength }} / {{ maxLength }}\n </template>\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { MaybeElementRef, onClickOutside } from '@vueuse/core';\nimport { PropType, computed, defineComponent, nextTick, reactive, ref, toRefs, watch } from 'vue';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue, useResponsive, useValidationAttributes } from '@onereach/ui-components-common/hooks';\nimport { exclude, include, 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 { 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 { TagColor } from '@onereach/ui-components.or-tag-v3';\nimport { OrTagsV3 as OrTags, TagObject, TagsOverflow } from '@onereach/ui-components.or-tags-v3';\nimport { TagInput, TagInputControl, TagInputItem } from './styles';\nimport { TagInputModelValue } from './types';\n\nexport default defineComponent({\n name: 'OrTagInput',\n\n components: {\n OrError,\n OrHint,\n OrIconButton,\n OrInputBox,\n OrLabel,\n OrLoader,\n OrTags,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<TagInputModelValue>,\n default: () => [],\n },\n\n variant: {\n type: String as PropType<`${InputBoxVariant}`>,\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 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 overflow: {\n type: String as PropType<`${TagsOverflow}`>,\n default: () => TagsOverflow.Hidden,\n },\n\n // todo: review default state, disabling will breaking\n enableClear: {\n type: Boolean,\n default: true,\n },\n\n additionalInputBoxStyles: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n\n saveOnBlur: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'input',\n 'keydown',\n 'keyup',\n 'focus',\n 'blur',\n\n 'reset',\n ],\n\n expose: [\n 'root',\n\n 'reset',\n 'clear',\n\n 'focus',\n 'blur',\n\n 'activate',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n const control = ref<HTMLInputElement>();\n const inputBox = ref<InstanceType<typeof OrInputBox>>();\n const tags = ref<InstanceType<typeof OrTags>>();\n\n // Props\n const { modelValue, overflow, placeholder, disabled, readonly, saveOnBlur } = toRefs(props);\n const { isMobile } = useResponsive();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-tag-input-v3',\n ...TagInput,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const controlStyles = computed(() => [\n ...TagInputControl,\n ]);\n\n const itemStyles = computed(() => [\n ...TagInputItem,\n ]);\n\n const inputBoxStyles = computed(() => [\n 'interactivity-select',\n ...props.additionalInputBoxStyles,\n ]);\n\n // State\n const controlAttributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n ...useValidationAttributes(),\n });\n\n const activated = ref(false);\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n const draftModelValue = ref<string>();\n\n const tagsItems = computed(() => {\n return toArray(proxyModelValue.value).map((item) => ({\n label: item,\n value: item,\n\n tagProps: {\n color: item === draftModelValue.value ? TagColor.Danger : TagColor.Default,\n },\n } as TagObject));\n });\n\n const currentLength = computed(() => proxyModelValue.value?.length ?? 0);\n const maxLength = computed(() => controlAttributes.maxlength);\n\n const controlInlineStyles = computed(() => {\n const chars = draftModelValue.value\n ? draftModelValue.value.length\n : currentLength.value === 0\n ? placeholder.value?.length ?? 0\n : 0;\n return {\n width: `${Math.max(chars + 1 || 0, 3)}ch`,\n };\n });\n\n const showControl = computed(() => {\n return draftModelValue.value\n || currentLength.value === 0\n || activated.value;\n });\n\n const tagsProps = computed(() => ({\n variant: readonly.value || disabled.value || !activated.value ? 'tag' : 'reset',\n disabled: disabled.value,\n }));\n\n // Methods\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n\n function deactivate() {\n activated.value = false;\n nextTick(() => blur());\n context.emit('blur');\n }\n\n function activate() {\n if (disabled.value || readonly.value) return;\n\n if (!activated.value) {\n activated.value = true;\n context.emit('focus');\n }\n\n nextTick(() => focus());\n }\n\n function add(): void {\n const newItem = draftModelValue.value;\n\n if (!newItem) return;\n if (proxyModelValue.value?.includes(newItem)) return;\n if (maxLength.value && currentLength.value >= maxLength.value) return;\n\n proxyModelValue.value = include(newItem, proxyModelValue.value ?? []);\n draftModelValue.value = '';\n\n nextTick(() => focus());\n }\n\n function remove(value: string): void {\n proxyModelValue.value = exclude(value, proxyModelValue.value ?? []);\n }\n\n function reset(): void {\n proxyModelValue.value = [];\n draftModelValue.value = '';\n context.emit('reset');\n }\n\n function clear(): void {\n draftModelValue.value = '';\n }\n\n // Effects\n onClickOutside((inputBox as MaybeElementRef), () => {\n if (activated.value === false || (tags.value?.overflowPopover as any)?.state === 'open') return;\n if (saveOnBlur.value) add();\n deactivate();\n });\n\n watch(proxyModelValue, (items, prevItems) => {\n if (overflow.value !== TagsOverflow.Scroll) return;\n if (items?.length !== prevItems?.length) {\n (tags.value?.scrollToEnd as any)();\n }\n });\n\n return {\n root,\n control,\n inputBox,\n tags,\n rootStyles,\n controlStyles,\n itemStyles,\n inputBoxStyles,\n controlInlineStyles,\n controlAttributes,\n proxyModelValue,\n draftModelValue,\n tagsItems,\n tagsProps,\n currentLength,\n maxLength,\n activated,\n showControl,\n isMobile,\n focus,\n blur,\n add,\n activate,\n deactivate,\n remove,\n reset,\n clear,\n };\n },\n});\n</script>\n\n<style scoped>\ninput {\n min-width: 0;\n background: none;\n outline: none;\n}\n</style>\n"],"names":["TagInput","TagInputControl","TagInputItem","_sfc_main","defineComponent","OrError","OrHint","OrIconButton","OrInputBox","OrLabel","OrLoader","OrTags","TagsOverflow","props","context","root","ref","control","inputBox","tags","modelValue","overflow","placeholder","disabled","readonly","saveOnBlur","toRefs","isMobile","useResponsive","rootStyles","computed","InputBoxVariant","controlStyles","itemStyles","inputBoxStyles","controlAttributes","reactive","useIdAttribute","useControlAttributes","useValidationAttributes","activated","proxyModelValue","useProxyModelValue","draftModelValue","tagsItems","toArray","item","TagColor","currentLength","_a","maxLength","controlInlineStyles","chars","showControl","tagsProps","focus","blur","deactivate","nextTick","activate","add","newItem","include","remove","value","exclude","reset","clear","onClickOutside","_b","watch","items","prevItems","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_OrLabel","_renderSlot","_createCommentVNode","_createVNode","_component_OrInputBox","_createSlots","_withCtx","_component_OrTags","_cache","$event","_createElementVNode","_mergeProps","_withKeys","_component_OrLoader","_component_OrIconButton","_withDirectives","_component_OrHint","_component_OrError"],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { O as Z } from "./OrError-B5ihH6-3.mjs";
|
|
|
7
7
|
import { O as x } from "./OrHint-NvbZyURY.mjs";
|
|
8
8
|
import { O as _ } from "./OrInputBox-6ciokFdU.mjs";
|
|
9
9
|
import { b as O, a as ee } from "./OrInputBox.vue_vue_type_script_lang-q2L7rmth.mjs";
|
|
10
|
-
import { O as oe } from "./OrLabel-
|
|
10
|
+
import { O as oe } from "./OrLabel-K7_HgvcK.mjs";
|
|
11
11
|
import { _ as te } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
12
12
|
const re = [
|
|
13
13
|
// Layout
|
|
@@ -263,4 +263,4 @@ const Se = /* @__PURE__ */ te(ne, [["render", ie], ["__scopeId", "data-v-6a49fbc
|
|
|
263
263
|
export {
|
|
264
264
|
Se as O
|
|
265
265
|
};
|
|
266
|
-
//# sourceMappingURL=OrTextarea-
|
|
266
|
+
//# sourceMappingURL=OrTextarea-zEjULE8W.mjs.map
|