@onereach/ui-components 25.0.1-beta.5743.0 → 25.0.1-beta.5746.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/{OrAutocomplete-BXbchymk.mjs → OrAutocomplete-Ch4HVLxE.mjs} +5 -5
- package/dist/esm/{OrAutocomplete-BXbchymk.mjs.map → OrAutocomplete-Ch4HVLxE.mjs.map} +1 -1
- package/dist/esm/{OrCardCollection-B1zsC0GR.mjs → OrCardCollection-ChT31gXb.mjs} +3 -3
- package/dist/esm/{OrCardCollection-B1zsC0GR.mjs.map → OrCardCollection-ChT31gXb.mjs.map} +1 -1
- package/dist/esm/{OrCheckbox-CARHvboD.mjs → OrCheckbox-rhg693fs.mjs} +2 -2
- package/dist/esm/{OrCheckbox-CARHvboD.mjs.map → OrCheckbox-rhg693fs.mjs.map} +1 -1
- package/dist/esm/{OrCheckboxGroup-oWfQ8P5a.mjs → OrCheckboxGroup-B88VRzoe.mjs} +3 -3
- package/dist/esm/{OrCheckboxGroup-oWfQ8P5a.mjs.map → OrCheckboxGroup-B88VRzoe.mjs.map} +1 -1
- package/dist/esm/{OrCheckboxTree-D6KuOyBg.mjs → OrCheckboxTree-CBQhFQDC.mjs} +2 -2
- package/dist/esm/{OrCheckboxTree-D6KuOyBg.mjs.map → OrCheckboxTree-CBQhFQDC.mjs.map} +1 -1
- package/dist/esm/{OrCode-B9h-FanZ.mjs → OrCode-DNesTRES.mjs} +2 -2
- package/dist/esm/{OrCode-B9h-FanZ.mjs.map → OrCode-DNesTRES.mjs.map} +1 -1
- package/dist/esm/{OrCombinedInput-DNgMGLxG.mjs → OrCombinedInput-vdlouB0T.mjs} +2 -2
- package/dist/esm/{OrCombinedInput-DNgMGLxG.mjs.map → OrCombinedInput-vdlouB0T.mjs.map} +1 -1
- package/dist/esm/{OrConfirm-Bgv4cZD5.mjs → OrConfirm-JQb9zPU3.mjs} +2 -2
- package/dist/esm/{OrConfirm-Bgv4cZD5.mjs.map → OrConfirm-JQb9zPU3.mjs.map} +1 -1
- package/dist/esm/{OrDataGrid-XkJ70AaM.mjs → OrDataGrid-Ckf8IWwg.mjs} +12 -12
- package/dist/esm/{OrDataGrid-XkJ70AaM.mjs.map → OrDataGrid-Ckf8IWwg.mjs.map} +1 -1
- package/dist/esm/{OrDateFormat-BFUOhWkH.mjs → OrDateFormat-CGDP2JKT.mjs} +2 -2
- package/dist/esm/{OrDateFormat-BFUOhWkH.mjs.map → OrDateFormat-CGDP2JKT.mjs.map} +1 -1
- package/dist/esm/{OrDatePicker-B099hQpm.mjs → OrDatePicker-BgebWcl8.mjs} +3 -3
- package/dist/esm/{OrDatePicker-B099hQpm.mjs.map → OrDatePicker-BgebWcl8.mjs.map} +1 -1
- package/dist/esm/{OrDateRangePicker-D2NP4Hd2.mjs → OrDateRangePicker-CpY7Zb6X.mjs} +3 -3
- package/dist/esm/{OrDateRangePicker-D2NP4Hd2.mjs.map → OrDateRangePicker-CpY7Zb6X.mjs.map} +1 -1
- package/dist/esm/{OrDateTimeFormat-DpLQd-pE.mjs → OrDateTimeFormat-DBHlWha0.mjs} +2 -2
- package/dist/esm/{OrDateTimeFormat-DpLQd-pE.mjs.map → OrDateTimeFormat-DBHlWha0.mjs.map} +1 -1
- package/dist/esm/{OrDateTimePicker-CGIojTPp.mjs → OrDateTimePicker-D-T98eo-.mjs} +2 -2
- package/dist/esm/{OrDateTimePicker-CGIojTPp.mjs.map → OrDateTimePicker-D-T98eo-.mjs.map} +1 -1
- package/dist/esm/{OrDateTimePicker.vue_vue_type_script_lang-WqJrqWZ3.mjs → OrDateTimePicker.vue_vue_type_script_lang-lBfuKkWJ.mjs} +3 -3
- package/dist/esm/{OrDateTimePicker.vue_vue_type_script_lang-WqJrqWZ3.mjs.map → OrDateTimePicker.vue_vue_type_script_lang-lBfuKkWJ.mjs.map} +1 -1
- package/dist/esm/{OrEditorTabs-psJUG0D3.mjs → OrEditorTabs-yT45X6oK.mjs} +2 -2
- package/dist/esm/{OrEditorTabs-psJUG0D3.mjs.map → OrEditorTabs-yT45X6oK.mjs.map} +1 -1
- package/dist/esm/{OrFormGroup-C5sateI6.mjs → OrFormGroup-mZxG7T6Y.mjs} +2 -2
- package/dist/esm/{OrFormGroup-C5sateI6.mjs.map → OrFormGroup-mZxG7T6Y.mjs.map} +1 -1
- package/dist/esm/{OrInput-DZf6KJXJ.mjs → OrInput-BFV9F9x5.mjs} +2 -2
- package/dist/esm/{OrInput-DZf6KJXJ.mjs.map → OrInput-BFV9F9x5.mjs.map} +1 -1
- package/dist/esm/{OrLabel-BadqqO3K.mjs → OrLabel-CsAO_Ev9.mjs} +57 -35
- package/dist/esm/OrLabel-CsAO_Ev9.mjs.map +1 -0
- package/dist/esm/{OrList-BsdJknJD.mjs → OrList-DHQeLaEq.mjs} +2 -2
- package/dist/esm/{OrList-BsdJknJD.mjs.map → OrList-DHQeLaEq.mjs.map} +1 -1
- package/dist/esm/{OrMenuItem-BHRMA0L1.mjs → OrMenuItem-puiy5rFO.mjs} +20 -20
- package/dist/esm/{OrMenuItem-BHRMA0L1.mjs.map → OrMenuItem-puiy5rFO.mjs.map} +1 -1
- package/dist/esm/{OrPagination-BFUGGyGy.mjs → OrPagination-ClBRmPjj.mjs} +2 -2
- package/dist/esm/{OrPagination-BFUGGyGy.mjs.map → OrPagination-ClBRmPjj.mjs.map} +1 -1
- package/dist/esm/{OrRadio-CshXuNnj.mjs → OrRadio-b9zcUT5_.mjs} +2 -2
- package/dist/esm/{OrRadio-CshXuNnj.mjs.map → OrRadio-b9zcUT5_.mjs.map} +1 -1
- package/dist/esm/{OrRadioGroup-Kuk10bye.mjs → OrRadioGroup-KxKeS62f.mjs} +3 -3
- package/dist/esm/{OrRadioGroup-Kuk10bye.mjs.map → OrRadioGroup-KxKeS62f.mjs.map} +1 -1
- package/dist/esm/{OrRichTextEditor-BRb5GYLS.mjs → OrRichTextEditor-C45egu2S.mjs} +4 -4
- package/dist/esm/{OrRichTextEditor-BRb5GYLS.mjs.map → OrRichTextEditor-C45egu2S.mjs.map} +1 -1
- package/dist/esm/{OrSearch-YPg77z38.mjs → OrSearch-DN6QLqjQ.mjs} +2 -2
- package/dist/esm/{OrSearch-YPg77z38.mjs.map → OrSearch-DN6QLqjQ.mjs.map} +1 -1
- package/dist/esm/{OrSelect-DaffSPgp.mjs → OrSelect-p4vl5V9K.mjs} +5 -5
- package/dist/esm/{OrSelect-DaffSPgp.mjs.map → OrSelect-p4vl5V9K.mjs.map} +1 -1
- package/dist/esm/{OrSorting-DCAarSF1.mjs → OrSorting-Crre3wAt.mjs} +2 -2
- package/dist/esm/{OrSorting-DCAarSF1.mjs.map → OrSorting-Crre3wAt.mjs.map} +1 -1
- package/dist/esm/{OrSwitch-BBd-YlXk.mjs → OrSwitch-DPCJ4k70.mjs} +2 -2
- package/dist/esm/{OrSwitch-BBd-YlXk.mjs.map → OrSwitch-DPCJ4k70.mjs.map} +1 -1
- package/dist/esm/{OrTabs-BUXLSz8o.mjs → OrTabs-D4RY2JMk.mjs} +2 -2
- package/dist/esm/{OrTabs-BUXLSz8o.mjs.map → OrTabs-D4RY2JMk.mjs.map} +1 -1
- package/dist/esm/{OrTagInput-B5TArhY_.mjs → OrTagInput-B3i0tHWg.mjs} +2 -2
- package/dist/esm/{OrTagInput-B5TArhY_.mjs.map → OrTagInput-B3i0tHWg.mjs.map} +1 -1
- package/dist/esm/{OrTextarea-Ddnv4Ztu.mjs → OrTextarea-D1oPjwZ-.mjs} +2 -2
- package/dist/esm/{OrTextarea-Ddnv4Ztu.mjs.map → OrTextarea-D1oPjwZ-.mjs.map} +1 -1
- package/dist/esm/{OrTimeFormat-BmhKB6Gc.mjs → OrTimeFormat-DUiqbPQR.mjs} +2 -2
- package/dist/esm/{OrTimeFormat-BmhKB6Gc.mjs.map → OrTimeFormat-DUiqbPQR.mjs.map} +1 -1
- package/dist/esm/{OrTimePicker-Du1sJ1Mh.mjs → OrTimePicker-B5vt3Sqa.mjs} +3 -3
- package/dist/esm/{OrTimePicker-Du1sJ1Mh.mjs.map → OrTimePicker-B5vt3Sqa.mjs.map} +1 -1
- package/dist/esm/{OrTimeRangePicker-BRyqEYfR.mjs → OrTimeRangePicker-rQkOD5Fd.mjs} +3 -3
- package/dist/esm/{OrTimeRangePicker-BRyqEYfR.mjs.map → OrTimeRangePicker-rQkOD5Fd.mjs.map} +1 -1
- package/dist/esm/components/index.mjs +35 -35
- 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-editor-tabs-v3/index.mjs +1 -1
- 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-menu-item-v3/index.mjs +1 -1
- package/dist/esm/components/or-pagination-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-sorting-v3/index.mjs +1 -1
- package/dist/esm/components/or-switch-v3/index.mjs +1 -1
- package/dist/esm/components/or-tabs-v3/index.mjs +1 -1
- package/dist/esm/components/or-tag-input-v3/index.mjs +1 -1
- package/dist/esm/components/or-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 +35 -35
- package/dist/types/components/or-label-v3/styles.d.ts +1 -0
- package/dist/types/components/or-menu-item-v3/OrMenuItem.vue.d.ts +1 -1
- package/package.json +3 -3
- package/dist/esm/OrLabel-BadqqO3K.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrTagInput-B5TArhY_.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-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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"}
|
|
@@ -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-CsAO_Ev9.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-D1oPjwZ-.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrTextarea-Ddnv4Ztu.mjs","sources":["../../../components/or-textarea-v3/src/styles.ts","../../../components/or-textarea-v3/src/OrTextarea.vue"],"sourcesContent":["import { InputBoxSize } from '@onereach/ui-components.or-input-box-v3';\n\nexport const Textarea: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const TextareaControl: string[] = [\n // Box\n 'w-full',\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 TextareaControlSizes: Record<InputBoxSize, string[]> = {\n [InputBoxSize.M]: [\n // Spacing\n '!mx-0',\n\n 'px-md md:px-sm+',\n 'py-sm+* md:py-sm*',\n ],\n\n [InputBoxSize.S]: [\n // Spacing\n '!mx-0',\n\n 'px-md md:px-sm+',\n 'py-sm*',\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=\"attributes.id\"\n :variant=\"'input'\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n </template>\n\n <OrInputBox\n :variant=\"variant\"\n :size=\"size\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n >\n <textarea\n :ref=\"'control'\"\n v-bind=\"attributes\"\n v-model=\"model\"\n :class=\"controlStyles\"\n :style=\"controlInlineStyles\"\n :name=\"name\"\n :rows=\"rows\"\n :autocomplete=\"autocomplete\"\n :placeholder=\"placeholder\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n @input=\"$emit('input', $event)\"\n @keydown=\"$emit('keydown', $event)\"\n @keyup=\"$emit('keyup', $event)\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n />\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 {{ length }} / {{ 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 {{ length }} / {{ maxLength }}\n </template>\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { useTextareaAutosize } from '@vueuse/core';\nimport { PropType, computed, defineComponent, reactive, ref, toRef } from 'vue';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue, useValidationAttributes } from '@onereach/ui-components-common/hooks';\nimport { isObject } 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 { InputBoxSize, InputBoxVariant, OrInputBoxV3 as OrInputBox } from '@onereach/ui-components.or-input-box-v3';\nimport { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { Textarea, TextareaControl, TextareaControlSizes } from './styles';\nimport { TextareaModelValue, TextareaRows } from './types';\n\nexport default defineComponent({\n name: 'OrTextarea',\n\n components: {\n OrError,\n OrHint,\n OrInputBox,\n OrLabel,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<TextareaModelValue>,\n default: undefined,\n },\n\n name: {\n type: String,\n default: undefined,\n },\n\n autocomplete: {\n type: String,\n default: 'off',\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: () => InputBoxSize.M,\n },\n\n rows: {\n type: [Number, Object] as PropType<TextareaRows>,\n default: 2,\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 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\n emits: [\n 'update:modelValue',\n\n 'input',\n 'keydown',\n 'keyup',\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 ...useValidationAttributes(),\n });\n\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-textarea-v3',\n ...Textarea,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const control = ref<HTMLTextAreaElement>();\n\n const controlStyles = computed(() => [\n ...TextareaControl,\n ...TextareaControlSizes[props.size],\n ...isObject(props.rows) ? ['resize-none'] : [],\n ]);\n\n const controlInlineStyles = computed(() => {\n if (control.value) {\n const paddingTop = Number(getComputedStyle(control.value).getPropertyValue('padding-top').match(/^(?<value>\\d+)px$/)?.groups?.value || 0);\n const paddingBottom = Number(getComputedStyle(control.value).getPropertyValue('padding-bottom').match(/^(?<value>\\d+)px$/)?.groups?.value || 0);\n\n const lineHeight = Number(getComputedStyle(control.value).getPropertyValue('line-height').match(/^(?<value>\\d+)px$/)?.groups?.value || 0);\n\n return {\n minHeight: `${paddingTop + paddingBottom + (isObject(props.rows) ? props.rows.min : props.rows) * lineHeight}px`,\n maxHeight: isObject(props.rows) && props.rows.max ? `${paddingTop + paddingBottom + props.rows.max * lineHeight}px` : undefined,\n };\n }\n\n return {};\n });\n\n // State\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit, { defaultValue: ref('') });\n\n const length = computed(() => {\n return model.value?.toString().length ?? 0;\n });\n\n const maxLength = computed(() => {\n return attributes.maxlength;\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 // Effects\n if (isObject(props.rows)) {\n // Unluckily, `useTextareaAutosize` doesn't have a teardown function\n // So, dynamically changed `rows` won't have any effect\n useTextareaAutosize({\n element: control,\n input: model,\n });\n }\n\n return {\n attributes,\n\n root,\n rootStyles,\n\n control,\n controlStyles,\n controlInlineStyles,\n\n model,\n\n length,\n maxLength,\n\n focus,\n blur,\n };\n },\n});\n</script>\n\n<style scoped>\ntextarea {\n min-width: 0;\n background: none;\n outline: none;\n}\n</style>\n"],"names":["Textarea","TextareaControl","TextareaControlSizes","InputBoxSize","_sfc_main","defineComponent","OrError","OrHint","OrInputBox","OrLabel","props","context","attributes","reactive","useIdAttribute","useControlAttributes","useValidationAttributes","root","ref","rootStyles","computed","InputBoxVariant","control","controlStyles","isObject","controlInlineStyles","paddingTop","_b","_a","paddingBottom","_d","_c","lineHeight","_f","_e","model","useProxyModelValue","toRef","length","maxLength","focus","blur","useTextareaAutosize","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_OrLabel","_renderSlot","_createCommentVNode","_createVNode","_component_OrInputBox","_createElementVNode","_mergeProps","_cache","$event","_hoisted_1","_withDirectives","_component_OrHint","_createSlots","_withCtx","_component_OrError"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrTextarea-D1oPjwZ-.mjs","sources":["../../../components/or-textarea-v3/src/styles.ts","../../../components/or-textarea-v3/src/OrTextarea.vue"],"sourcesContent":["import { InputBoxSize } from '@onereach/ui-components.or-input-box-v3';\n\nexport const Textarea: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const TextareaControl: string[] = [\n // Box\n 'w-full',\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 TextareaControlSizes: Record<InputBoxSize, string[]> = {\n [InputBoxSize.M]: [\n // Spacing\n '!mx-0',\n\n 'px-md md:px-sm+',\n 'py-sm+* md:py-sm*',\n ],\n\n [InputBoxSize.S]: [\n // Spacing\n '!mx-0',\n\n 'px-md md:px-sm+',\n 'py-sm*',\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=\"attributes.id\"\n :variant=\"'input'\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n </template>\n\n <OrInputBox\n :variant=\"variant\"\n :size=\"size\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n >\n <textarea\n :ref=\"'control'\"\n v-bind=\"attributes\"\n v-model=\"model\"\n :class=\"controlStyles\"\n :style=\"controlInlineStyles\"\n :name=\"name\"\n :rows=\"rows\"\n :autocomplete=\"autocomplete\"\n :placeholder=\"placeholder\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n @input=\"$emit('input', $event)\"\n @keydown=\"$emit('keydown', $event)\"\n @keyup=\"$emit('keyup', $event)\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n />\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 {{ length }} / {{ 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 {{ length }} / {{ maxLength }}\n </template>\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { useTextareaAutosize } from '@vueuse/core';\nimport { PropType, computed, defineComponent, reactive, ref, toRef } from 'vue';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue, useValidationAttributes } from '@onereach/ui-components-common/hooks';\nimport { isObject } 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 { InputBoxSize, InputBoxVariant, OrInputBoxV3 as OrInputBox } from '@onereach/ui-components.or-input-box-v3';\nimport { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { Textarea, TextareaControl, TextareaControlSizes } from './styles';\nimport { TextareaModelValue, TextareaRows } from './types';\n\nexport default defineComponent({\n name: 'OrTextarea',\n\n components: {\n OrError,\n OrHint,\n OrInputBox,\n OrLabel,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<TextareaModelValue>,\n default: undefined,\n },\n\n name: {\n type: String,\n default: undefined,\n },\n\n autocomplete: {\n type: String,\n default: 'off',\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: () => InputBoxSize.M,\n },\n\n rows: {\n type: [Number, Object] as PropType<TextareaRows>,\n default: 2,\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 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\n emits: [\n 'update:modelValue',\n\n 'input',\n 'keydown',\n 'keyup',\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 ...useValidationAttributes(),\n });\n\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-textarea-v3',\n ...Textarea,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const control = ref<HTMLTextAreaElement>();\n\n const controlStyles = computed(() => [\n ...TextareaControl,\n ...TextareaControlSizes[props.size],\n ...isObject(props.rows) ? ['resize-none'] : [],\n ]);\n\n const controlInlineStyles = computed(() => {\n if (control.value) {\n const paddingTop = Number(getComputedStyle(control.value).getPropertyValue('padding-top').match(/^(?<value>\\d+)px$/)?.groups?.value || 0);\n const paddingBottom = Number(getComputedStyle(control.value).getPropertyValue('padding-bottom').match(/^(?<value>\\d+)px$/)?.groups?.value || 0);\n\n const lineHeight = Number(getComputedStyle(control.value).getPropertyValue('line-height').match(/^(?<value>\\d+)px$/)?.groups?.value || 0);\n\n return {\n minHeight: `${paddingTop + paddingBottom + (isObject(props.rows) ? props.rows.min : props.rows) * lineHeight}px`,\n maxHeight: isObject(props.rows) && props.rows.max ? `${paddingTop + paddingBottom + props.rows.max * lineHeight}px` : undefined,\n };\n }\n\n return {};\n });\n\n // State\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit, { defaultValue: ref('') });\n\n const length = computed(() => {\n return model.value?.toString().length ?? 0;\n });\n\n const maxLength = computed(() => {\n return attributes.maxlength;\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 // Effects\n if (isObject(props.rows)) {\n // Unluckily, `useTextareaAutosize` doesn't have a teardown function\n // So, dynamically changed `rows` won't have any effect\n useTextareaAutosize({\n element: control,\n input: model,\n });\n }\n\n return {\n attributes,\n\n root,\n rootStyles,\n\n control,\n controlStyles,\n controlInlineStyles,\n\n model,\n\n length,\n maxLength,\n\n focus,\n blur,\n };\n },\n});\n</script>\n\n<style scoped>\ntextarea {\n min-width: 0;\n background: none;\n outline: none;\n}\n</style>\n"],"names":["Textarea","TextareaControl","TextareaControlSizes","InputBoxSize","_sfc_main","defineComponent","OrError","OrHint","OrInputBox","OrLabel","props","context","attributes","reactive","useIdAttribute","useControlAttributes","useValidationAttributes","root","ref","rootStyles","computed","InputBoxVariant","control","controlStyles","isObject","controlInlineStyles","paddingTop","_b","_a","paddingBottom","_d","_c","lineHeight","_f","_e","model","useProxyModelValue","toRef","length","maxLength","focus","blur","useTextareaAutosize","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_OrLabel","_renderSlot","_createCommentVNode","_createVNode","_component_OrInputBox","_createElementVNode","_mergeProps","_cache","$event","_hoisted_1","_withDirectives","_component_OrHint","_createSlots","_withCtx","_component_OrError"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent as p, ref as c, computed as f, toRef as n, openBlock as o, createElementBlock as t, normalizeClass as u, Fragment as i, createTextVNode as s, toDisplayString as d } from "vue";
|
|
2
2
|
import { useTimeFormat as v, useLocale as y } from "@onereach/ui-components-common/hooks";
|
|
3
|
-
import { k as F } from "./OrDateTimePicker.vue_vue_type_script_lang-
|
|
3
|
+
import { k as F } from "./OrDateTimePicker.vue_vue_type_script_lang-lBfuKkWJ.mjs";
|
|
4
4
|
import "@onereach/ui-components-common/types";
|
|
5
5
|
import { _ as T } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
6
6
|
const S = [
|
|
@@ -63,4 +63,4 @@ const C = /* @__PURE__ */ T(V, [["render", g]]);
|
|
|
63
63
|
export {
|
|
64
64
|
C as O
|
|
65
65
|
};
|
|
66
|
-
//# sourceMappingURL=OrTimeFormat-
|
|
66
|
+
//# sourceMappingURL=OrTimeFormat-DUiqbPQR.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrTimeFormat-
|
|
1
|
+
{"version":3,"file":"OrTimeFormat-DUiqbPQR.mjs","sources":["../../../components/or-time-format-v3/src/styles.ts","../../../components/or-time-format-v3/src/OrTimeFormat.vue"],"sourcesContent":["export const TimeFormat: string[] = [\n // Layout\n 'inline',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"modelValue\">\n {{ formatTime(modelValue, resolvedFormat, resolvedLocale) }}\n </template>\n\n <template v-else>\n {{ placeholder }}\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, ref, toRef } from 'vue';\nimport { useLocale, useTimeFormat } from '@onereach/ui-components-common/hooks';\nimport { FormatFunction, TimeFormat } from '@onereach/ui-components-common/types';\nimport { DateTimePickerModelValue, formatTime } from '@onereach/ui-components.or-date-time-picker-v3';\nimport * as Styles from './styles';\n\nexport default defineComponent({\n name: 'OrTimeFormat',\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<DateTimePickerModelValue>,\n default: undefined,\n },\n\n format: {\n type: [String, Function] as PropType<`${TimeFormat}` | FormatFunction<DateTimePickerModelValue>>,\n default: undefined,\n },\n\n locale: {\n type: String,\n default: undefined,\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-time-format-v3',\n ...Styles.TimeFormat,\n ]);\n\n // Options\n const resolvedFormat = useTimeFormat(toRef(props, 'format'));\n const resolvedLocale = useLocale(toRef(props, 'locale'));\n\n return {\n root,\n rootStyles,\n\n resolvedFormat,\n resolvedLocale,\n\n formatTime,\n };\n },\n});\n</script>\n"],"names":["TimeFormat","_sfc_main","defineComponent","props","root","ref","rootStyles","computed","Styles.TimeFormat","resolvedFormat","useTimeFormat","toRef","resolvedLocale","useLocale","formatTime","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_openBlock","_createElementBlock","_normalizeClass","_toDisplayString","_Fragment"],"mappings":";;;;;AAAO,MAAMA,IAAuB;AAAA;AAAA,EAElC;AACF,GCmBAC,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,OAAO;AAAA,IACL,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EAEA,OAAO;AAAA,IACL,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,QAAQ;AAAA,MACN,MAAM,CAAC,QAAQ,QAAQ;AAAA,MACvB,SAAS;AAAA,IACX;AAAA,IAEA,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,EACF;AAAA,EAEA,MAAMC,GAAO;AAEX,UAAMC,IAAOC,KAEPC,IAAaC,EAAS,MAAM;AAAA,MAChC;AAAA,MACA,GAAGC;AAAAA,IAAO,CACX,GAGKC,IAAiBC,EAAcC,EAAMR,GAAO,QAAQ,CAAC,GACrDS,IAAiBC,EAAUF,EAAMR,GAAO,QAAQ,CAAC;AAEhD,WAAA;AAAA,MACL,MAAAC;AAAA,MACA,YAAAE;AAAA,MAEA,gBAAAG;AAAA,MACA,gBAAAG;AAAA,MAEA,YAAAE;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;SA7ESC,EAAMC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAA;SACNC,EAAY,GAAAC,EAAA,OAAA;AAAA,IAAA,KAAA;AAAA,WAEFC,EAAUR,EAAA,UAAA;AAAA,EAAA,GAAA;AAAA;QAI1BS,EAEWT,EAAA,WAAAA,EAAA,YAAAA,EAAA,gBAAAA,EAAA,cAAA,CAAA,GAAA,CAAA;AAAA,IAAA,GAAA,EAAA,MAAAM,KAAAC,EAAAG,GAAA,EAAA,KAAA,KAAA;AAAA;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineComponent as z, ref as p, computed as m, toRef as C, watch as q, resolveComponent as t, resolveDirective as M, openBlock as u, createElementBlock as R, normalizeClass as P, createBlock as v, withCtx as i, renderSlot as $, createTextVNode as b, toDisplayString as O, createCommentVNode as E, withDirectives as y, withModifiers as j, createVNode as d, vShow as H, createElementVNode as U } from "vue";
|
|
2
2
|
import { DropdownClose as A, DropdownOpen as G } from "@onereach/ui-components-common/directives";
|
|
3
3
|
import { useTimeFormat as J, useLocale as K, useProxyModelValue as Q } from "@onereach/ui-components-common/hooks";
|
|
4
|
-
import { b as W, d as X, e as Y, f as Z, g as _, l as N, j as x } from "./OrDateTimePicker.vue_vue_type_script_lang-
|
|
4
|
+
import { b as W, d as X, e as Y, f as Z, g as _, l as N, j as x } from "./OrDateTimePicker.vue_vue_type_script_lang-lBfuKkWJ.mjs";
|
|
5
5
|
import "@onereach/ui-components-common/types";
|
|
6
6
|
import { O as ee } from "./OrError-B5ihH6-3.mjs";
|
|
7
7
|
import { O as oe } from "./OrHint-NvbZyURY.mjs";
|
|
@@ -9,7 +9,7 @@ import { O as re } from "./OrIconButton-BlHCLpeW.mjs";
|
|
|
9
9
|
import { O as te } from "./OrIcon-k8cyvh-D.mjs";
|
|
10
10
|
import { O as le } from "./OrInputBox-6ciokFdU.mjs";
|
|
11
11
|
import { a as ie } from "./OrInputBox.vue_vue_type_script_lang-q2L7rmth.mjs";
|
|
12
|
-
import { O as ae } from "./OrLabel-
|
|
12
|
+
import { O as ae } from "./OrLabel-CsAO_Ev9.mjs";
|
|
13
13
|
import { O as ne } from "./OrPopover-DbygLPtT.mjs";
|
|
14
14
|
import "@onereach/ui-components-common/utils";
|
|
15
15
|
import { _ as de } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
@@ -326,4 +326,4 @@ const Ce = /* @__PURE__ */ de(pe, [["render", ve]]);
|
|
|
326
326
|
export {
|
|
327
327
|
Ce as O
|
|
328
328
|
};
|
|
329
|
-
//# sourceMappingURL=OrTimePicker-
|
|
329
|
+
//# sourceMappingURL=OrTimePicker-B5vt3Sqa.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrTimePicker-Du1sJ1Mh.mjs","sources":["../../../components/or-time-picker-v3/src/styles.ts","../../../components/or-time-picker-v3/src/OrTimePicker.vue"],"sourcesContent":["export const TimePicker: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const TimePickerPopover: string[] = [];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"$slots.label || $slots.addon || label\">\n <OrLabel\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=\"openPopover\"\n v-dropdown-close=\"closePopover\"\n :variant=\"variant\"\n :size=\"size\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n >\n <OrDateTimePickerTimeControl\n v-model=\"draft\"\n v-dropdown-open=\"openPopover\"\n v-dropdown-close=\"closePopover\"\n :class=\"['!border-0']\"\n :format=\"resolvedFormat\"\n :locale=\"resolvedLocale\"\n :selected=\"popover && popover.state === 'open'\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n />\n\n <OrPopover\n :ref=\"'popover'\"\n :class=\"popoverStyles\"\n :custom-styles=\"popoverStyles\"\n :variant=\"'auto'\"\n :bottom-sheet-props=\"{ variant: 'basic' }\"\n :trigger=\"anchor || inputBoxRoot\"\n :placement=\"'bottom-start'\"\n :fallback-placement=\"'start'\"\n @close=\"reset()\"\n >\n <OrDateTimePickerPopoverHeader>\n <OrDateTimePickerMobileControl\n :label=\"'Time'\"\n :selected=\"true\"\n >\n {{ draft ? formatMobileTime(draft, resolvedFormat, resolvedLocale) : '--' }}\n </OrDateTimePickerMobileControl>\n </OrDateTimePickerPopoverHeader>\n\n <OrDateTimePickerTimeSelect\n v-model=\"draft\"\n :initial-value=\"initialValue\"\n :format=\"resolvedFormat\"\n :locale=\"resolvedLocale\"\n :hours-filter=\"hoursFilter\"\n :minutes-filter=\"minutesFilter\"\n :hour-step=\"hourStep\"\n :minute-step=\"minuteStep\"\n :is-active=\"popover && popover.state === 'open'\"\n />\n\n <OrDateTimePickerPopoverFooter\n :disabled=\"invalid\"\n @apply=\"apply(); popover && popover.close()\"\n @reset=\"reset(); popover && popover.close()\"\n />\n </OrPopover>\n\n <div :class=\"['grow']\" />\n\n <template v-slot:addon>\n <template v-if=\"modelValue\">\n <OrIconButton\n :icon=\"'close'\"\n :color=\"'inherit'\"\n :disabled=\"readonly || disabled\"\n @click.stop=\"$emit('update:modelValue', undefined)\"\n />\n </template>\n\n <template v-else>\n <OrIcon\n :icon=\"'schedule'\"\n :variant=\"'outlined'\"\n />\n </template>\n </template>\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 { PropType, computed, defineComponent, ref, toRef, watch } from 'vue';\nimport { DropdownClose, DropdownOpen } from '@onereach/ui-components-common/directives';\nimport { useLocale, useProxyModelValue, useTimeFormat } from '@onereach/ui-components-common/hooks';\nimport { FilterFunction, FormatFunction, TimeFormat } from '@onereach/ui-components-common/types';\nimport { DateTimePickerModelValue, OrDateTimePickerMobileControl, OrDateTimePickerPopoverFooter, OrDateTimePickerPopoverHeader, OrDateTimePickerTimeControl, OrDateTimePickerTimeSelect, formatMobileTime, getCurrentDate } from '@onereach/ui-components.or-date-time-picker-v3';\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 { 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 { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { OrPopoverV3 as OrPopover } from '@onereach/ui-components.or-popover-v3';\nimport * as Styles from './styles';\n\nexport default defineComponent({\n name: 'OrTimePicker',\n\n components: {\n OrDateTimePickerMobileControl,\n OrDateTimePickerPopoverFooter,\n OrDateTimePickerPopoverHeader,\n OrDateTimePickerTimeControl,\n OrDateTimePickerTimeSelect,\n OrError,\n OrHint,\n OrIcon,\n OrIconButton,\n OrInputBox,\n OrLabel,\n OrPopover,\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<DateTimePickerModelValue>,\n default: undefined,\n },\n\n format: {\n type: [String, Function] as PropType<`${TimeFormat}` | FormatFunction<DateTimePickerModelValue>>,\n default: undefined,\n },\n\n locale: {\n type: String,\n default: undefined,\n },\n\n hoursFilter: {\n type: Function as PropType<FilterFunction<Date>>,\n default: undefined,\n },\n\n minutesFilter: {\n type: Function as PropType<FilterFunction<Date>>,\n default: undefined,\n },\n\n hourStep: {\n type: Number,\n default: 1,\n },\n\n minuteStep: {\n type: Number,\n default: 1,\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 hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: [String, Boolean],\n default: undefined,\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\n emits: [\n 'update:modelValue',\n\n 'input',\n 'keydown',\n 'keyup',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'blur',\n ],\n\n setup(props, context) {\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-time-picker-v3',\n ...Styles.TimePicker,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const inputBox = ref<InstanceType<typeof OrInputBox>>();\n const inputBoxRoot = computed(() => inputBox.value?.root);\n\n const popover = ref<InstanceType<typeof OrPopover>>();\n const popoverState = computed(() => popover.value?.state);\n\n const popoverStyles = computed(() => [\n 'or-time-picker-popover-v3',\n ...Styles.TimePickerPopover,\n ]);\n\n // Options\n const resolvedFormat = useTimeFormat(toRef(props, 'format'));\n const resolvedLocale = useLocale(toRef(props, 'locale'));\n\n // State\n const initialValue = ref(props.modelValue ?? getCurrentDate());\n\n watch(() => props.modelValue, (value) => {\n initialValue.value = value ?? getCurrentDate();\n });\n\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n const draft = ref(model.value);\n\n watch(model, (value) => {\n draft.value = value;\n });\n\n const invalid = computed(() => {\n if (draft.value) {\n if (props.hoursFilter && !props.hoursFilter(draft.value)) {\n return true;\n }\n\n if (props.minutesFilter && !props.minutesFilter(draft.value)) {\n return true;\n }\n\n return false;\n }\n\n return true;\n });\n\n // Methods\n function apply(): void {\n model.value = draft.value;\n }\n\n function reset(): void {\n draft.value = model.value;\n }\n\n function openPopover(): void {\n if (!props.readonly && !props.disabled) {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.open as () => void)();\n }\n }\n }\n\n function closePopover(): void {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.close as () => void)();\n }\n }\n\n return {\n root,\n rootStyles,\n\n inputBox,\n inputBoxRoot,\n\n popover,\n popoverState,\n popoverStyles,\n\n resolvedFormat,\n resolvedLocale,\n\n initialValue,\n\n model,\n draft,\n\n invalid,\n\n apply,\n reset,\n\n openPopover,\n closePopover,\n\n formatMobileTime,\n };\n },\n});\n</script>\n"],"names":["TimePicker","TimePickerPopover","_sfc_main","defineComponent","OrDateTimePickerMobileControl","OrDateTimePickerPopoverFooter","OrDateTimePickerPopoverHeader","OrDateTimePickerTimeControl","OrDateTimePickerTimeSelect","OrError","OrHint","OrIcon","OrIconButton","OrInputBox","OrLabel","OrPopover","DropdownClose","DropdownOpen","props","context","root","ref","rootStyles","computed","Styles.TimePicker","InputBoxVariant","inputBox","inputBoxRoot","_a","popover","popoverState","popoverStyles","Styles.TimePickerPopover","resolvedFormat","useTimeFormat","toRef","resolvedLocale","useLocale","initialValue","getCurrentDate","watch","value","model","useProxyModelValue","draft","invalid","apply","reset","openPopover","popoverInstance","closePopover","formatMobileTime","_resolveDirective","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_OrLabel","_renderSlot","_createCommentVNode","_withDirectives","_component_OrInputBox","_withCtx","_component_OrIconButton","_cache","_withModifiers","$event","_component_OrIcon","_createVNode","_component_OrDateTimePickerTimeControl","_directive_dropdown_open","_directive_dropdown_close","_component_OrPopover","_component_OrDateTimePickerPopoverHeader","_component_OrDateTimePickerMobileControl","_component_OrDateTimePickerPopoverFooter","_component_OrHint","_component_OrError"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrTimePicker-B5vt3Sqa.mjs","sources":["../../../components/or-time-picker-v3/src/styles.ts","../../../components/or-time-picker-v3/src/OrTimePicker.vue"],"sourcesContent":["export const TimePicker: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const TimePickerPopover: string[] = [];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"$slots.label || $slots.addon || label\">\n <OrLabel\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=\"openPopover\"\n v-dropdown-close=\"closePopover\"\n :variant=\"variant\"\n :size=\"size\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n >\n <OrDateTimePickerTimeControl\n v-model=\"draft\"\n v-dropdown-open=\"openPopover\"\n v-dropdown-close=\"closePopover\"\n :class=\"['!border-0']\"\n :format=\"resolvedFormat\"\n :locale=\"resolvedLocale\"\n :selected=\"popover && popover.state === 'open'\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n />\n\n <OrPopover\n :ref=\"'popover'\"\n :class=\"popoverStyles\"\n :custom-styles=\"popoverStyles\"\n :variant=\"'auto'\"\n :bottom-sheet-props=\"{ variant: 'basic' }\"\n :trigger=\"anchor || inputBoxRoot\"\n :placement=\"'bottom-start'\"\n :fallback-placement=\"'start'\"\n @close=\"reset()\"\n >\n <OrDateTimePickerPopoverHeader>\n <OrDateTimePickerMobileControl\n :label=\"'Time'\"\n :selected=\"true\"\n >\n {{ draft ? formatMobileTime(draft, resolvedFormat, resolvedLocale) : '--' }}\n </OrDateTimePickerMobileControl>\n </OrDateTimePickerPopoverHeader>\n\n <OrDateTimePickerTimeSelect\n v-model=\"draft\"\n :initial-value=\"initialValue\"\n :format=\"resolvedFormat\"\n :locale=\"resolvedLocale\"\n :hours-filter=\"hoursFilter\"\n :minutes-filter=\"minutesFilter\"\n :hour-step=\"hourStep\"\n :minute-step=\"minuteStep\"\n :is-active=\"popover && popover.state === 'open'\"\n />\n\n <OrDateTimePickerPopoverFooter\n :disabled=\"invalid\"\n @apply=\"apply(); popover && popover.close()\"\n @reset=\"reset(); popover && popover.close()\"\n />\n </OrPopover>\n\n <div :class=\"['grow']\" />\n\n <template v-slot:addon>\n <template v-if=\"modelValue\">\n <OrIconButton\n :icon=\"'close'\"\n :color=\"'inherit'\"\n :disabled=\"readonly || disabled\"\n @click.stop=\"$emit('update:modelValue', undefined)\"\n />\n </template>\n\n <template v-else>\n <OrIcon\n :icon=\"'schedule'\"\n :variant=\"'outlined'\"\n />\n </template>\n </template>\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 { PropType, computed, defineComponent, ref, toRef, watch } from 'vue';\nimport { DropdownClose, DropdownOpen } from '@onereach/ui-components-common/directives';\nimport { useLocale, useProxyModelValue, useTimeFormat } from '@onereach/ui-components-common/hooks';\nimport { FilterFunction, FormatFunction, TimeFormat } from '@onereach/ui-components-common/types';\nimport { DateTimePickerModelValue, OrDateTimePickerMobileControl, OrDateTimePickerPopoverFooter, OrDateTimePickerPopoverHeader, OrDateTimePickerTimeControl, OrDateTimePickerTimeSelect, formatMobileTime, getCurrentDate } from '@onereach/ui-components.or-date-time-picker-v3';\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 { 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 { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { OrPopoverV3 as OrPopover } from '@onereach/ui-components.or-popover-v3';\nimport * as Styles from './styles';\n\nexport default defineComponent({\n name: 'OrTimePicker',\n\n components: {\n OrDateTimePickerMobileControl,\n OrDateTimePickerPopoverFooter,\n OrDateTimePickerPopoverHeader,\n OrDateTimePickerTimeControl,\n OrDateTimePickerTimeSelect,\n OrError,\n OrHint,\n OrIcon,\n OrIconButton,\n OrInputBox,\n OrLabel,\n OrPopover,\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<DateTimePickerModelValue>,\n default: undefined,\n },\n\n format: {\n type: [String, Function] as PropType<`${TimeFormat}` | FormatFunction<DateTimePickerModelValue>>,\n default: undefined,\n },\n\n locale: {\n type: String,\n default: undefined,\n },\n\n hoursFilter: {\n type: Function as PropType<FilterFunction<Date>>,\n default: undefined,\n },\n\n minutesFilter: {\n type: Function as PropType<FilterFunction<Date>>,\n default: undefined,\n },\n\n hourStep: {\n type: Number,\n default: 1,\n },\n\n minuteStep: {\n type: Number,\n default: 1,\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 hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: [String, Boolean],\n default: undefined,\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\n emits: [\n 'update:modelValue',\n\n 'input',\n 'keydown',\n 'keyup',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'blur',\n ],\n\n setup(props, context) {\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-time-picker-v3',\n ...Styles.TimePicker,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const inputBox = ref<InstanceType<typeof OrInputBox>>();\n const inputBoxRoot = computed(() => inputBox.value?.root);\n\n const popover = ref<InstanceType<typeof OrPopover>>();\n const popoverState = computed(() => popover.value?.state);\n\n const popoverStyles = computed(() => [\n 'or-time-picker-popover-v3',\n ...Styles.TimePickerPopover,\n ]);\n\n // Options\n const resolvedFormat = useTimeFormat(toRef(props, 'format'));\n const resolvedLocale = useLocale(toRef(props, 'locale'));\n\n // State\n const initialValue = ref(props.modelValue ?? getCurrentDate());\n\n watch(() => props.modelValue, (value) => {\n initialValue.value = value ?? getCurrentDate();\n });\n\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n const draft = ref(model.value);\n\n watch(model, (value) => {\n draft.value = value;\n });\n\n const invalid = computed(() => {\n if (draft.value) {\n if (props.hoursFilter && !props.hoursFilter(draft.value)) {\n return true;\n }\n\n if (props.minutesFilter && !props.minutesFilter(draft.value)) {\n return true;\n }\n\n return false;\n }\n\n return true;\n });\n\n // Methods\n function apply(): void {\n model.value = draft.value;\n }\n\n function reset(): void {\n draft.value = model.value;\n }\n\n function openPopover(): void {\n if (!props.readonly && !props.disabled) {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.open as () => void)();\n }\n }\n }\n\n function closePopover(): void {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.close as () => void)();\n }\n }\n\n return {\n root,\n rootStyles,\n\n inputBox,\n inputBoxRoot,\n\n popover,\n popoverState,\n popoverStyles,\n\n resolvedFormat,\n resolvedLocale,\n\n initialValue,\n\n model,\n draft,\n\n invalid,\n\n apply,\n reset,\n\n openPopover,\n closePopover,\n\n formatMobileTime,\n };\n },\n});\n</script>\n"],"names":["TimePicker","TimePickerPopover","_sfc_main","defineComponent","OrDateTimePickerMobileControl","OrDateTimePickerPopoverFooter","OrDateTimePickerPopoverHeader","OrDateTimePickerTimeControl","OrDateTimePickerTimeSelect","OrError","OrHint","OrIcon","OrIconButton","OrInputBox","OrLabel","OrPopover","DropdownClose","DropdownOpen","props","context","root","ref","rootStyles","computed","Styles.TimePicker","InputBoxVariant","inputBox","inputBoxRoot","_a","popover","popoverState","popoverStyles","Styles.TimePickerPopover","resolvedFormat","useTimeFormat","toRef","resolvedLocale","useLocale","initialValue","getCurrentDate","watch","value","model","useProxyModelValue","draft","invalid","apply","reset","openPopover","popoverInstance","closePopover","formatMobileTime","_resolveDirective","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_OrLabel","_renderSlot","_createCommentVNode","_withDirectives","_component_OrInputBox","_withCtx","_component_OrIconButton","_cache","_withModifiers","$event","_component_OrIcon","_createVNode","_component_OrDateTimePickerTimeControl","_directive_dropdown_open","_directive_dropdown_close","_component_OrPopover","_component_OrDateTimePickerPopoverHeader","_component_OrDateTimePickerMobileControl","_component_OrDateTimePickerPopoverFooter","_component_OrHint","_component_OrError"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineComponent as W, ref as u, computed as v, toRef as L, watch as z, resolveComponent as i, resolveDirective as U, openBlock as n, createElementBlock as X, normalizeClass as m, createBlock as d, withCtx as a, renderSlot as h, createTextVNode as f, toDisplayString as P, createCommentVNode as F, withDirectives as V, withModifiers as Y, createVNode as b, createElementVNode as A, vShow as j } from "vue";
|
|
2
2
|
import { DropdownClose as Z, DropdownOpen as _ } from "@onereach/ui-components-common/directives";
|
|
3
3
|
import { useTimeFormat as x, useLocale as ee, useProxyModelValue as oe, useResponsive as re } from "@onereach/ui-components-common/hooks";
|
|
4
|
-
import { b as te, d as le, e as ie, f as ae, g as ne, l as $, j as se } from "./OrDateTimePicker.vue_vue_type_script_lang-
|
|
4
|
+
import { b as te, d as le, e as ie, f as ae, g as ne, l as $, j as se } from "./OrDateTimePicker.vue_vue_type_script_lang-lBfuKkWJ.mjs";
|
|
5
5
|
import "@onereach/ui-components-common/types";
|
|
6
6
|
import { O as de } from "./OrError-B5ihH6-3.mjs";
|
|
7
7
|
import { O as me } from "./OrHint-NvbZyURY.mjs";
|
|
@@ -9,7 +9,7 @@ import { O as pe } from "./OrIconButton-BlHCLpeW.mjs";
|
|
|
9
9
|
import { O as ue } from "./OrIcon-k8cyvh-D.mjs";
|
|
10
10
|
import { O as ve } from "./OrInputBox-6ciokFdU.mjs";
|
|
11
11
|
import { a as fe } from "./OrInputBox.vue_vue_type_script_lang-q2L7rmth.mjs";
|
|
12
|
-
import { O as be } from "./OrLabel-
|
|
12
|
+
import { O as be } from "./OrLabel-CsAO_Ev9.mjs";
|
|
13
13
|
import { O as ye } from "./OrPopover-DbygLPtT.mjs";
|
|
14
14
|
import "@onereach/ui-components-common/utils";
|
|
15
15
|
import { _ as Te } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
@@ -407,4 +407,4 @@ const Ne = /* @__PURE__ */ Te(ke, [["render", Ve]]);
|
|
|
407
407
|
export {
|
|
408
408
|
Ne as O
|
|
409
409
|
};
|
|
410
|
-
//# sourceMappingURL=OrTimeRangePicker-
|
|
410
|
+
//# sourceMappingURL=OrTimeRangePicker-rQkOD5Fd.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrTimeRangePicker-BRyqEYfR.mjs","sources":["../../../components/or-time-range-picker-v3/src/styles.ts","../../../components/or-time-range-picker-v3/src/OrTimeRangePicker.vue"],"sourcesContent":["export const TimeRangePicker: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const TimeRangePickerPopover: string[] = [];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"$slots.label || $slots.addon || label\">\n <OrLabel\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=\"() => openPopover('from')\"\n v-dropdown-close=\"closePopover\"\n :variant=\"variant\"\n :size=\"size\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n >\n <OrDateTimePickerTimeControl\n v-model=\"draftFrom\"\n v-dropdown-open=\"() => openPopover('from')\"\n v-dropdown-close=\"closePopover\"\n :class=\"['!border-0']\"\n :format=\"resolvedFormat\"\n :locale=\"resolvedLocale\"\n :selected=\"popover && popover.state === 'open' && activeControl === 'from'\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n />\n\n -\n\n <OrDateTimePickerTimeControl\n v-model=\"draftTo\"\n v-dropdown-open=\"() => openPopover('to')\"\n v-dropdown-close=\"closePopover\"\n :class=\"['!border-0']\"\n :format=\"resolvedFormat\"\n :locale=\"resolvedLocale\"\n :selected=\"popover && popover.state === 'open' && activeControl === 'to'\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n />\n\n <OrPopover\n :ref=\"'popover'\"\n :class=\"popoverStyles\"\n :custom-styles=\"popoverStyles\"\n :variant=\"'auto'\"\n :bottom-sheet-props=\"{ variant: 'basic' }\"\n :trigger=\"anchor || inputBoxRoot\"\n :placement=\"'bottom-start'\"\n :fallback-placement=\"'start'\"\n @close=\"reset()\"\n >\n <OrDateTimePickerPopoverHeader\n v-if=\"isMobile\"\n >\n <OrDateTimePickerMobileControl\n :label=\"'Start Time'\"\n :selected=\"activeControl === 'from'\"\n @click=\"activeControl = 'from'\"\n >\n {{ draftFrom ? formatMobileTime(draftFrom, resolvedFormat, resolvedLocale) : '--' }}\n </OrDateTimePickerMobileControl>\n\n -\n\n <OrDateTimePickerMobileControl\n :label=\"'End Time'\"\n :selected=\"activeControl === 'to'\"\n @click=\"activeControl = 'to'\"\n >\n {{ draftTo ? formatMobileTime(draftTo, resolvedFormat, resolvedLocale) : '--' }}\n </OrDateTimePickerMobileControl>\n </OrDateTimePickerPopoverHeader>\n\n <div :class=\"['layout-row', 'gap-md']\">\n <template v-if=\"isDesktop || (isMobile && activeControl === 'from')\">\n <OrDateTimePickerTimeSelect\n v-model=\"draftFrom\"\n :class=\"['grow']\"\n :initial-value=\"initialValueFrom\"\n :format=\"resolvedFormat\"\n :locale=\"resolvedLocale\"\n :hour-step=\"hourStep\"\n :minute-step=\"minuteStep\"\n :hours-filter=\"startTimeHoursFilter\"\n :minutes-filter=\"startTimeMinutesFilter\"\n :is-active=\"popover && popover.state === 'open'\"\n />\n </template>\n\n <template v-if=\"isDesktop || (isMobile && activeControl === 'to')\">\n <OrDateTimePickerTimeSelect\n v-model=\"draftTo\"\n :class=\"['grow']\"\n :initial-value=\"initialValueTo\"\n :format=\"resolvedFormat\"\n :locale=\"resolvedLocale\"\n :hour-step=\"hourStep\"\n :minute-step=\"minuteStep\"\n :hours-filter=\"endTimeHoursFilter\"\n :minutes-filter=\"endTimeMinutesFilter\"\n :is-active=\"popover && popover.state === 'open'\"\n />\n </template>\n </div>\n\n <OrDateTimePickerPopoverFooter\n :disabled=\"invalid\"\n @apply=\"apply(); popover && popover.close()\"\n @reset=\"reset(); popover && popover.close()\"\n />\n </OrPopover>\n\n <div :class=\"['grow']\" />\n\n <template v-slot:addon>\n <template v-if=\"modelValue\">\n <OrIconButton\n :icon=\"'close'\"\n :color=\"'inherit'\"\n :disabled=\"readonly || disabled\"\n @click.stop=\"$emit('update:modelValue', undefined)\"\n />\n </template>\n\n <template v-else>\n <OrIcon\n :icon=\"'schedule'\"\n :variant=\"'outlined'\"\n />\n </template>\n </template>\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 { PropType, computed, defineComponent, ref, toRef, watch } from 'vue';\nimport { DropdownClose, DropdownOpen } from '@onereach/ui-components-common/directives';\nimport { useLocale, useProxyModelValue, useResponsive, useTimeFormat } from '@onereach/ui-components-common/hooks';\nimport { FilterFunction, FormatFunction, TimeFormat } from '@onereach/ui-components-common/types';\nimport { DateTimePickerModelValue, OrDateTimePickerMobileControl, OrDateTimePickerPopoverFooter, OrDateTimePickerPopoverHeader, OrDateTimePickerTimeControl, OrDateTimePickerTimeSelect, formatMobileTime, getCurrentDate } from '@onereach/ui-components.or-date-time-picker-v3';\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 { 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 { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { OrPopoverV3 as OrPopover } from '@onereach/ui-components.or-popover-v3';\nimport * as Styles from './styles';\nimport { TimeRangePickerModelValue } from './types';\n\nexport default defineComponent({\n name: 'OrTimeRangePicker',\n\n components: {\n OrDateTimePickerMobileControl,\n OrDateTimePickerPopoverFooter,\n OrDateTimePickerPopoverHeader,\n OrDateTimePickerTimeControl,\n OrDateTimePickerTimeSelect,\n OrError,\n OrHint,\n OrIcon,\n OrIconButton,\n OrInputBox,\n OrLabel,\n OrPopover,\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<TimeRangePickerModelValue>,\n default: undefined,\n },\n\n format: {\n type: [String, Function] as PropType<`${TimeFormat}` | FormatFunction<DateTimePickerModelValue>>,\n default: undefined,\n },\n\n locale: {\n type: String,\n default: undefined,\n },\n\n hourStep: {\n type: Number,\n default: 1,\n },\n\n minuteStep: {\n type: Number,\n default: 1,\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 hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: [String, Boolean],\n default: undefined,\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 startTimeHoursFilter: {\n type: Function as PropType<FilterFunction<Date>>,\n default: undefined,\n },\n\n startTimeMinutesFilter: {\n type: Function as PropType<FilterFunction<Date>>,\n default: undefined,\n },\n\n endTimeHoursFilter: {\n type: Function as PropType<FilterFunction<Date>>,\n default: undefined,\n },\n\n endTimeMinutesFilter: {\n type: Function as PropType<FilterFunction<Date>>,\n default: undefined,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'input',\n 'keydown',\n 'keyup',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'blur',\n ],\n\n setup(props, context) {\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-time-range-picker-v3',\n ...Styles.TimeRangePicker,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const inputBox = ref<InstanceType<typeof OrInputBox>>();\n const inputBoxRoot = computed(() => inputBox.value?.root);\n\n const popover = ref<InstanceType<typeof OrPopover>>();\n const popoverState = computed(() => popover.value?.state);\n\n const popoverStyles = computed(() => [\n 'or-time-range-picker-popover-v3',\n ...Styles.TimeRangePickerPopover,\n ]);\n\n // Options\n const resolvedFormat = useTimeFormat(toRef(props, 'format'));\n const resolvedLocale = useLocale(toRef(props, 'locale'));\n\n // State\n const initialValueFrom = ref(props.modelValue?.[0] ?? getCurrentDate());\n const initialValueTo = ref(props.modelValue?.[1] ?? getCurrentDate());\n\n watch(() => props.modelValue, (value) => {\n initialValueFrom.value = value?.[0] ?? getCurrentDate();\n initialValueTo.value = value?.[1] ?? getCurrentDate();\n });\n\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n const draft = ref(model.value);\n\n watch(model, (value) => {\n draft.value = value;\n });\n\n const draftFrom = computed({\n get: () => draft.value?.[0],\n\n set: (value) => {\n draft.value = [value, draft.value?.[1]];\n },\n });\n\n const draftTo = computed({\n get: () => draft.value?.[1],\n\n set: (value) => {\n draft.value = [draft.value?.[0], value];\n },\n });\n\n const activeControl = ref<'from' | 'to'>('from');\n\n const invalid = computed(() => {\n if (draftFrom.value && draftTo.value && draftFrom.value < draftTo.value) {\n return false;\n }\n\n return true;\n });\n\n // Methods\n function apply(): void {\n model.value = draft.value;\n }\n\n function reset(): void {\n draft.value = model.value ?? [undefined, undefined];\n }\n\n function openPopover(control: 'from' | 'to'): void {\n if (!props.readonly && !props.disabled) {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.open as () => void)();\n }\n\n activeControl.value = control;\n }\n }\n\n function closePopover(): void {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.close as () => void)();\n }\n }\n\n // Helpers\n const { isDesktop, isMobile } = useResponsive();\n\n return {\n root,\n rootStyles,\n\n inputBox,\n inputBoxRoot,\n\n popover,\n popoverState,\n popoverStyles,\n\n resolvedFormat,\n resolvedLocale,\n\n initialValueFrom,\n initialValueTo,\n\n model,\n draft,\n\n draftFrom,\n draftTo,\n\n activeControl,\n\n invalid,\n\n apply,\n reset,\n\n openPopover,\n closePopover,\n\n formatMobileTime,\n\n isDesktop,\n isMobile,\n };\n },\n});\n</script>\n"],"names":["TimeRangePicker","TimeRangePickerPopover","_sfc_main","defineComponent","OrDateTimePickerMobileControl","OrDateTimePickerPopoverFooter","OrDateTimePickerPopoverHeader","OrDateTimePickerTimeControl","OrDateTimePickerTimeSelect","OrError","OrHint","OrIcon","OrIconButton","OrInputBox","OrLabel","OrPopover","DropdownClose","DropdownOpen","props","context","root","ref","rootStyles","computed","Styles.TimeRangePicker","InputBoxVariant","inputBox","inputBoxRoot","_a","popover","popoverState","popoverStyles","Styles.TimeRangePickerPopover","resolvedFormat","useTimeFormat","toRef","resolvedLocale","useLocale","initialValueFrom","getCurrentDate","initialValueTo","_b","watch","value","model","useProxyModelValue","draft","draftFrom","draftTo","activeControl","invalid","apply","reset","openPopover","control","popoverInstance","closePopover","isDesktop","isMobile","useResponsive","formatMobileTime","_resolveDirective","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_OrLabel","_renderSlot","_createCommentVNode","_withDirectives","_component_OrInputBox","_withCtx","_component_OrIconButton","_cache","_withModifiers","$event","_component_OrIcon","_createVNode","_component_OrDateTimePickerTimeControl","_directive_dropdown_open","_directive_dropdown_close","_createTextVNode","_component_OrPopover","_component_OrDateTimePickerPopoverHeader","_component_OrDateTimePickerMobileControl","_createElementVNode","_hoisted_1","_component_OrDateTimePickerTimeSelect","_component_OrDateTimePickerPopoverFooter","_component_OrHint","_component_OrError"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrTimeRangePicker-rQkOD5Fd.mjs","sources":["../../../components/or-time-range-picker-v3/src/styles.ts","../../../components/or-time-range-picker-v3/src/OrTimeRangePicker.vue"],"sourcesContent":["export const TimeRangePicker: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const TimeRangePickerPopover: string[] = [];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"$slots.label || $slots.addon || label\">\n <OrLabel\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=\"() => openPopover('from')\"\n v-dropdown-close=\"closePopover\"\n :variant=\"variant\"\n :size=\"size\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n >\n <OrDateTimePickerTimeControl\n v-model=\"draftFrom\"\n v-dropdown-open=\"() => openPopover('from')\"\n v-dropdown-close=\"closePopover\"\n :class=\"['!border-0']\"\n :format=\"resolvedFormat\"\n :locale=\"resolvedLocale\"\n :selected=\"popover && popover.state === 'open' && activeControl === 'from'\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n />\n\n -\n\n <OrDateTimePickerTimeControl\n v-model=\"draftTo\"\n v-dropdown-open=\"() => openPopover('to')\"\n v-dropdown-close=\"closePopover\"\n :class=\"['!border-0']\"\n :format=\"resolvedFormat\"\n :locale=\"resolvedLocale\"\n :selected=\"popover && popover.state === 'open' && activeControl === 'to'\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n />\n\n <OrPopover\n :ref=\"'popover'\"\n :class=\"popoverStyles\"\n :custom-styles=\"popoverStyles\"\n :variant=\"'auto'\"\n :bottom-sheet-props=\"{ variant: 'basic' }\"\n :trigger=\"anchor || inputBoxRoot\"\n :placement=\"'bottom-start'\"\n :fallback-placement=\"'start'\"\n @close=\"reset()\"\n >\n <OrDateTimePickerPopoverHeader\n v-if=\"isMobile\"\n >\n <OrDateTimePickerMobileControl\n :label=\"'Start Time'\"\n :selected=\"activeControl === 'from'\"\n @click=\"activeControl = 'from'\"\n >\n {{ draftFrom ? formatMobileTime(draftFrom, resolvedFormat, resolvedLocale) : '--' }}\n </OrDateTimePickerMobileControl>\n\n -\n\n <OrDateTimePickerMobileControl\n :label=\"'End Time'\"\n :selected=\"activeControl === 'to'\"\n @click=\"activeControl = 'to'\"\n >\n {{ draftTo ? formatMobileTime(draftTo, resolvedFormat, resolvedLocale) : '--' }}\n </OrDateTimePickerMobileControl>\n </OrDateTimePickerPopoverHeader>\n\n <div :class=\"['layout-row', 'gap-md']\">\n <template v-if=\"isDesktop || (isMobile && activeControl === 'from')\">\n <OrDateTimePickerTimeSelect\n v-model=\"draftFrom\"\n :class=\"['grow']\"\n :initial-value=\"initialValueFrom\"\n :format=\"resolvedFormat\"\n :locale=\"resolvedLocale\"\n :hour-step=\"hourStep\"\n :minute-step=\"minuteStep\"\n :hours-filter=\"startTimeHoursFilter\"\n :minutes-filter=\"startTimeMinutesFilter\"\n :is-active=\"popover && popover.state === 'open'\"\n />\n </template>\n\n <template v-if=\"isDesktop || (isMobile && activeControl === 'to')\">\n <OrDateTimePickerTimeSelect\n v-model=\"draftTo\"\n :class=\"['grow']\"\n :initial-value=\"initialValueTo\"\n :format=\"resolvedFormat\"\n :locale=\"resolvedLocale\"\n :hour-step=\"hourStep\"\n :minute-step=\"minuteStep\"\n :hours-filter=\"endTimeHoursFilter\"\n :minutes-filter=\"endTimeMinutesFilter\"\n :is-active=\"popover && popover.state === 'open'\"\n />\n </template>\n </div>\n\n <OrDateTimePickerPopoverFooter\n :disabled=\"invalid\"\n @apply=\"apply(); popover && popover.close()\"\n @reset=\"reset(); popover && popover.close()\"\n />\n </OrPopover>\n\n <div :class=\"['grow']\" />\n\n <template v-slot:addon>\n <template v-if=\"modelValue\">\n <OrIconButton\n :icon=\"'close'\"\n :color=\"'inherit'\"\n :disabled=\"readonly || disabled\"\n @click.stop=\"$emit('update:modelValue', undefined)\"\n />\n </template>\n\n <template v-else>\n <OrIcon\n :icon=\"'schedule'\"\n :variant=\"'outlined'\"\n />\n </template>\n </template>\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 { PropType, computed, defineComponent, ref, toRef, watch } from 'vue';\nimport { DropdownClose, DropdownOpen } from '@onereach/ui-components-common/directives';\nimport { useLocale, useProxyModelValue, useResponsive, useTimeFormat } from '@onereach/ui-components-common/hooks';\nimport { FilterFunction, FormatFunction, TimeFormat } from '@onereach/ui-components-common/types';\nimport { DateTimePickerModelValue, OrDateTimePickerMobileControl, OrDateTimePickerPopoverFooter, OrDateTimePickerPopoverHeader, OrDateTimePickerTimeControl, OrDateTimePickerTimeSelect, formatMobileTime, getCurrentDate } from '@onereach/ui-components.or-date-time-picker-v3';\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 { 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 { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { OrPopoverV3 as OrPopover } from '@onereach/ui-components.or-popover-v3';\nimport * as Styles from './styles';\nimport { TimeRangePickerModelValue } from './types';\n\nexport default defineComponent({\n name: 'OrTimeRangePicker',\n\n components: {\n OrDateTimePickerMobileControl,\n OrDateTimePickerPopoverFooter,\n OrDateTimePickerPopoverHeader,\n OrDateTimePickerTimeControl,\n OrDateTimePickerTimeSelect,\n OrError,\n OrHint,\n OrIcon,\n OrIconButton,\n OrInputBox,\n OrLabel,\n OrPopover,\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<TimeRangePickerModelValue>,\n default: undefined,\n },\n\n format: {\n type: [String, Function] as PropType<`${TimeFormat}` | FormatFunction<DateTimePickerModelValue>>,\n default: undefined,\n },\n\n locale: {\n type: String,\n default: undefined,\n },\n\n hourStep: {\n type: Number,\n default: 1,\n },\n\n minuteStep: {\n type: Number,\n default: 1,\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 hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: [String, Boolean],\n default: undefined,\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 startTimeHoursFilter: {\n type: Function as PropType<FilterFunction<Date>>,\n default: undefined,\n },\n\n startTimeMinutesFilter: {\n type: Function as PropType<FilterFunction<Date>>,\n default: undefined,\n },\n\n endTimeHoursFilter: {\n type: Function as PropType<FilterFunction<Date>>,\n default: undefined,\n },\n\n endTimeMinutesFilter: {\n type: Function as PropType<FilterFunction<Date>>,\n default: undefined,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'input',\n 'keydown',\n 'keyup',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'blur',\n ],\n\n setup(props, context) {\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-time-range-picker-v3',\n ...Styles.TimeRangePicker,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const inputBox = ref<InstanceType<typeof OrInputBox>>();\n const inputBoxRoot = computed(() => inputBox.value?.root);\n\n const popover = ref<InstanceType<typeof OrPopover>>();\n const popoverState = computed(() => popover.value?.state);\n\n const popoverStyles = computed(() => [\n 'or-time-range-picker-popover-v3',\n ...Styles.TimeRangePickerPopover,\n ]);\n\n // Options\n const resolvedFormat = useTimeFormat(toRef(props, 'format'));\n const resolvedLocale = useLocale(toRef(props, 'locale'));\n\n // State\n const initialValueFrom = ref(props.modelValue?.[0] ?? getCurrentDate());\n const initialValueTo = ref(props.modelValue?.[1] ?? getCurrentDate());\n\n watch(() => props.modelValue, (value) => {\n initialValueFrom.value = value?.[0] ?? getCurrentDate();\n initialValueTo.value = value?.[1] ?? getCurrentDate();\n });\n\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n const draft = ref(model.value);\n\n watch(model, (value) => {\n draft.value = value;\n });\n\n const draftFrom = computed({\n get: () => draft.value?.[0],\n\n set: (value) => {\n draft.value = [value, draft.value?.[1]];\n },\n });\n\n const draftTo = computed({\n get: () => draft.value?.[1],\n\n set: (value) => {\n draft.value = [draft.value?.[0], value];\n },\n });\n\n const activeControl = ref<'from' | 'to'>('from');\n\n const invalid = computed(() => {\n if (draftFrom.value && draftTo.value && draftFrom.value < draftTo.value) {\n return false;\n }\n\n return true;\n });\n\n // Methods\n function apply(): void {\n model.value = draft.value;\n }\n\n function reset(): void {\n draft.value = model.value ?? [undefined, undefined];\n }\n\n function openPopover(control: 'from' | 'to'): void {\n if (!props.readonly && !props.disabled) {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.open as () => void)();\n }\n\n activeControl.value = control;\n }\n }\n\n function closePopover(): void {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.close as () => void)();\n }\n }\n\n // Helpers\n const { isDesktop, isMobile } = useResponsive();\n\n return {\n root,\n rootStyles,\n\n inputBox,\n inputBoxRoot,\n\n popover,\n popoverState,\n popoverStyles,\n\n resolvedFormat,\n resolvedLocale,\n\n initialValueFrom,\n initialValueTo,\n\n model,\n draft,\n\n draftFrom,\n draftTo,\n\n activeControl,\n\n invalid,\n\n apply,\n reset,\n\n openPopover,\n closePopover,\n\n formatMobileTime,\n\n isDesktop,\n isMobile,\n };\n },\n});\n</script>\n"],"names":["TimeRangePicker","TimeRangePickerPopover","_sfc_main","defineComponent","OrDateTimePickerMobileControl","OrDateTimePickerPopoverFooter","OrDateTimePickerPopoverHeader","OrDateTimePickerTimeControl","OrDateTimePickerTimeSelect","OrError","OrHint","OrIcon","OrIconButton","OrInputBox","OrLabel","OrPopover","DropdownClose","DropdownOpen","props","context","root","ref","rootStyles","computed","Styles.TimeRangePicker","InputBoxVariant","inputBox","inputBoxRoot","_a","popover","popoverState","popoverStyles","Styles.TimeRangePickerPopover","resolvedFormat","useTimeFormat","toRef","resolvedLocale","useLocale","initialValueFrom","getCurrentDate","initialValueTo","_b","watch","value","model","useProxyModelValue","draft","draftFrom","draftTo","activeControl","invalid","apply","reset","openPopover","control","popoverInstance","closePopover","isDesktop","isMobile","useResponsive","formatMobileTime","_resolveDirective","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_OrLabel","_renderSlot","_createCommentVNode","_withDirectives","_component_OrInputBox","_withCtx","_component_OrIconButton","_cache","_withModifiers","$event","_component_OrIcon","_createVNode","_component_OrDateTimePickerTimeControl","_directive_dropdown_open","_directive_dropdown_close","_createTextVNode","_component_OrPopover","_component_OrDateTimePickerPopoverHeader","_component_OrDateTimePickerMobileControl","_createElementVNode","_hoisted_1","_component_OrDateTimePickerTimeSelect","_component_OrDateTimePickerPopoverFooter","_component_OrHint","_component_OrError"],"mappings":"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"}
|