@onereach/ui-components 25.0.1-beta.5746.0 → 25.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/{OrAutocomplete-Ch4HVLxE.mjs → OrAutocomplete-BYPOrjCw.mjs} +4 -4
- package/dist/esm/{OrAutocomplete-Ch4HVLxE.mjs.map → OrAutocomplete-BYPOrjCw.mjs.map} +1 -1
- package/dist/esm/{OrCardCollection-ChT31gXb.mjs → OrCardCollection-8aMbrjmE.mjs} +2 -2
- package/dist/esm/{OrCardCollection-ChT31gXb.mjs.map → OrCardCollection-8aMbrjmE.mjs.map} +1 -1
- package/dist/esm/{OrCheckbox-rhg693fs.mjs → OrCheckbox-WPBzlvaV.mjs} +2 -2
- package/dist/esm/{OrCheckbox-rhg693fs.mjs.map → OrCheckbox-WPBzlvaV.mjs.map} +1 -1
- package/dist/esm/{OrCheckboxGroup-B88VRzoe.mjs → OrCheckboxGroup-CplC5v47.mjs} +3 -3
- package/dist/esm/{OrCheckboxGroup-B88VRzoe.mjs.map → OrCheckboxGroup-CplC5v47.mjs.map} +1 -1
- package/dist/esm/{OrCheckboxTree-CBQhFQDC.mjs → OrCheckboxTree-K4WkrYXY.mjs} +2 -2
- package/dist/esm/{OrCheckboxTree-CBQhFQDC.mjs.map → OrCheckboxTree-K4WkrYXY.mjs.map} +1 -1
- package/dist/esm/{OrCode-DNesTRES.mjs → OrCode-BQd66v38.mjs} +2 -2
- package/dist/esm/{OrCode-DNesTRES.mjs.map → OrCode-BQd66v38.mjs.map} +1 -1
- package/dist/esm/{OrCombinedInput-vdlouB0T.mjs → OrCombinedInput-Ddlid03b.mjs} +2 -2
- package/dist/esm/{OrCombinedInput-vdlouB0T.mjs.map → OrCombinedInput-Ddlid03b.mjs.map} +1 -1
- package/dist/esm/{OrConfirm-JQb9zPU3.mjs → OrConfirm-hPRH5PIY.mjs} +2 -2
- package/dist/esm/{OrConfirm-JQb9zPU3.mjs.map → OrConfirm-hPRH5PIY.mjs.map} +1 -1
- package/dist/esm/{OrDataGrid-Ckf8IWwg.mjs → OrDataGrid-3UnDS9Cf.mjs} +11 -11
- package/dist/esm/{OrDataGrid-Ckf8IWwg.mjs.map → OrDataGrid-3UnDS9Cf.mjs.map} +1 -1
- package/dist/esm/{OrDateFormat-CGDP2JKT.mjs → OrDateFormat-RNeTJhfN.mjs} +2 -2
- package/dist/esm/{OrDateFormat-CGDP2JKT.mjs.map → OrDateFormat-RNeTJhfN.mjs.map} +1 -1
- package/dist/esm/{OrDatePicker-BgebWcl8.mjs → OrDatePicker-C7FejdS-.mjs} +3 -3
- package/dist/esm/{OrDatePicker-BgebWcl8.mjs.map → OrDatePicker-C7FejdS-.mjs.map} +1 -1
- package/dist/esm/{OrDateRangePicker-CpY7Zb6X.mjs → OrDateRangePicker-BbaCBJbG.mjs} +3 -3
- package/dist/esm/{OrDateRangePicker-CpY7Zb6X.mjs.map → OrDateRangePicker-BbaCBJbG.mjs.map} +1 -1
- package/dist/esm/{OrDateTimeFormat-DBHlWha0.mjs → OrDateTimeFormat-C-dCMxgq.mjs} +2 -2
- package/dist/esm/{OrDateTimeFormat-DBHlWha0.mjs.map → OrDateTimeFormat-C-dCMxgq.mjs.map} +1 -1
- package/dist/esm/{OrDateTimePicker-D-T98eo-.mjs → OrDateTimePicker-ZFrPrPwN.mjs} +2 -2
- package/dist/esm/{OrDateTimePicker-D-T98eo-.mjs.map → OrDateTimePicker-ZFrPrPwN.mjs.map} +1 -1
- package/dist/esm/{OrDateTimePicker.vue_vue_type_script_lang-lBfuKkWJ.mjs → OrDateTimePicker.vue_vue_type_script_lang-Fl-_-QVp.mjs} +2 -2
- package/dist/esm/{OrDateTimePicker.vue_vue_type_script_lang-lBfuKkWJ.mjs.map → OrDateTimePicker.vue_vue_type_script_lang-Fl-_-QVp.mjs.map} +1 -1
- package/dist/esm/{OrFormGroup-mZxG7T6Y.mjs → OrFormGroup-CUNdt7UL.mjs} +2 -2
- package/dist/esm/{OrFormGroup-mZxG7T6Y.mjs.map → OrFormGroup-CUNdt7UL.mjs.map} +1 -1
- package/dist/esm/{OrInput-BFV9F9x5.mjs → OrInput-BqDsy3wR.mjs} +2 -2
- package/dist/esm/{OrInput-BFV9F9x5.mjs.map → OrInput-BqDsy3wR.mjs.map} +1 -1
- package/dist/esm/{OrLabel-CsAO_Ev9.mjs → OrLabel-K7_HgvcK.mjs} +29 -35
- package/dist/esm/OrLabel-K7_HgvcK.mjs.map +1 -0
- package/dist/esm/{OrList-DHQeLaEq.mjs → OrList-Gr14z616.mjs} +2 -2
- package/dist/esm/{OrList-DHQeLaEq.mjs.map → OrList-Gr14z616.mjs.map} +1 -1
- package/dist/esm/{OrRadio-b9zcUT5_.mjs → OrRadio-BU9YDLzB.mjs} +2 -2
- package/dist/esm/{OrRadio-b9zcUT5_.mjs.map → OrRadio-BU9YDLzB.mjs.map} +1 -1
- package/dist/esm/{OrRadioGroup-KxKeS62f.mjs → OrRadioGroup-ANee99e8.mjs} +3 -3
- package/dist/esm/{OrRadioGroup-KxKeS62f.mjs.map → OrRadioGroup-ANee99e8.mjs.map} +1 -1
- package/dist/esm/{OrRichTextEditor-C45egu2S.mjs → OrRichTextEditor-B_uVsae1.mjs} +3 -3
- package/dist/esm/{OrRichTextEditor-C45egu2S.mjs.map → OrRichTextEditor-B_uVsae1.mjs.map} +1 -1
- package/dist/esm/{OrSearch-DN6QLqjQ.mjs → OrSearch-OIfce3Md.mjs} +2 -2
- package/dist/esm/{OrSearch-DN6QLqjQ.mjs.map → OrSearch-OIfce3Md.mjs.map} +1 -1
- package/dist/esm/{OrSelect-p4vl5V9K.mjs → OrSelect-DL28KJCH.mjs} +4 -4
- package/dist/esm/{OrSelect-p4vl5V9K.mjs.map → OrSelect-DL28KJCH.mjs.map} +1 -1
- package/dist/esm/{OrSwitch-DPCJ4k70.mjs → OrSwitch-BkAgqeim.mjs} +2 -2
- package/dist/esm/{OrSwitch-DPCJ4k70.mjs.map → OrSwitch-BkAgqeim.mjs.map} +1 -1
- package/dist/esm/{OrTagInput-B3i0tHWg.mjs → OrTagInput-iFJhEZwO.mjs} +2 -2
- package/dist/esm/{OrTagInput-B3i0tHWg.mjs.map → OrTagInput-iFJhEZwO.mjs.map} +1 -1
- package/dist/esm/{OrTextarea-D1oPjwZ-.mjs → OrTextarea-zEjULE8W.mjs} +2 -2
- package/dist/esm/{OrTextarea-D1oPjwZ-.mjs.map → OrTextarea-zEjULE8W.mjs.map} +1 -1
- package/dist/esm/{OrTimeFormat-DUiqbPQR.mjs → OrTimeFormat-CMYDyfoT.mjs} +2 -2
- package/dist/esm/{OrTimeFormat-DUiqbPQR.mjs.map → OrTimeFormat-CMYDyfoT.mjs.map} +1 -1
- package/dist/esm/{OrTimePicker-B5vt3Sqa.mjs → OrTimePicker-BO-Vxw21.mjs} +3 -3
- package/dist/esm/{OrTimePicker-B5vt3Sqa.mjs.map → OrTimePicker-BO-Vxw21.mjs.map} +1 -1
- package/dist/esm/{OrTimeRangePicker-rQkOD5Fd.mjs → OrTimeRangePicker-MvRUSg_g.mjs} +3 -3
- package/dist/esm/{OrTimeRangePicker-rQkOD5Fd.mjs.map → OrTimeRangePicker-MvRUSg_g.mjs.map} +1 -1
- package/dist/esm/components/index.mjs +30 -30
- package/dist/esm/components/or-autocomplete-v3/index.mjs +1 -1
- package/dist/esm/components/or-card-collection-v3/index.mjs +1 -1
- package/dist/esm/components/or-checkbox-group-v3/index.mjs +1 -1
- package/dist/esm/components/or-checkbox-tree-v3/index.mjs +1 -1
- package/dist/esm/components/or-checkbox-v3/index.mjs +1 -1
- package/dist/esm/components/or-code-v3/index.mjs +1 -1
- package/dist/esm/components/or-combined-input-v3/index.mjs +1 -1
- package/dist/esm/components/or-confirm-v3/index.mjs +1 -1
- package/dist/esm/components/or-data-grid-v3/index.mjs +1 -1
- package/dist/esm/components/or-date-format-v3/index.mjs +1 -1
- package/dist/esm/components/or-date-picker-v3/index.mjs +1 -1
- package/dist/esm/components/or-date-range-picker-v3/index.mjs +1 -1
- package/dist/esm/components/or-date-time-format-v3/index.mjs +1 -1
- package/dist/esm/components/or-date-time-picker-v3/index.mjs +2 -2
- package/dist/esm/components/or-form-group-v3/index.mjs +1 -1
- package/dist/esm/components/or-input-v3/index.mjs +1 -1
- package/dist/esm/components/or-label-v3/index.mjs +1 -1
- package/dist/esm/components/or-list-v3/index.mjs +1 -1
- package/dist/esm/components/or-radio-group-v3/index.mjs +1 -1
- package/dist/esm/components/or-radio-v3/index.mjs +1 -1
- package/dist/esm/components/or-rich-text-editor-v3/index.mjs +1 -1
- package/dist/esm/components/or-search-v3/index.mjs +1 -1
- package/dist/esm/components/or-select-v3/index.mjs +1 -1
- package/dist/esm/components/or-switch-v3/index.mjs +1 -1
- package/dist/esm/components/or-tag-input-v3/index.mjs +1 -1
- package/dist/esm/components/or-textarea-v3/index.mjs +1 -1
- package/dist/esm/components/or-time-format-v3/index.mjs +1 -1
- package/dist/esm/components/or-time-picker-v3/index.mjs +1 -1
- package/dist/esm/components/or-time-range-picker-v3/index.mjs +1 -1
- package/dist/esm/index.mjs +30 -30
- package/package.json +5 -4
- package/dist/esm/OrLabel-CsAO_Ev9.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrCode-DNesTRES.mjs","sources":["../../../components/or-code-v3/src/styles.ts","../../../components/or-code-v3/src/partials/OrCodeControl.vue","../../../components/or-code-v3/src/props.ts","../../../components/or-code-v3/src/OrCode.vue"],"sourcesContent":["export const Code: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const CodeControlRoot: string[] = [\n // Layout\n 'layout-column',\n\n // Sizing\n 'h-full',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const CodeControl: string[] = [\n // Layout\n 'grid',\n\n // Box\n 'w-full',\n 'h-full',\n\n // Spacing\n '!mx-0',\n '!my-0',\n\n // Theme\n 'theme-background-transparent',\n\n // todo: https://onereach.atlassian.net/browse/UI-580\n 'dark:invert dark:hue-rotate-180',\n];\n\nexport const CodeModal: string[] = [\n // Sizing\n '!h-full',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrLabel\n :control-id=\"controlId\"\n :variant=\"'input'\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n\n <OrInputBox\n :class=\"['grow']\"\n :size=\"'m'\"\n :invalid=\"!!error || !!$slots.error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n >\n <div\n :ref=\"'control'\"\n :class=\"controlStyles\"\n />\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 || $slots.error\"\n :disabled=\"disabled\"\n >\n <slot name=\"error\">\n {{ error }}\n </slot>\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { OrErrorV3 as OrError } from '@onereach/ui-components.or-error-v3';\nimport { OrHintV3 as OrHint } from '@onereach/ui-components.or-hint-v3';\nimport { OrInputBoxV3 as OrInputBox } from '@onereach/ui-components.or-input-box-v3';\nimport { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { CodeControl, CodeControlRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrCodeControl',\n\n components: {\n OrError,\n OrHint,\n OrInputBox,\n OrLabel,\n },\n\n props: {\n error: {\n type: [String, Boolean],\n default: undefined,\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n controlId: {\n type: String,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n },\n\n expose: [\n 'root',\n 'control',\n\n 'focus',\n 'blur',\n ],\n\n setup() {\n // Refs\n const root = ref<HTMLElement>();\n const control = ref<HTMLElement>();\n\n // Methods\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n // Styles\n const rootStyles = computed(() => [\n 'or-code-control-v3',\n ...CodeControlRoot,\n ]);\n\n const controlStyles = computed(() => [\n ...CodeControl,\n ]);\n\n return {\n root,\n control,\n rootStyles,\n controlStyles,\n focus,\n blur,\n };\n },\n});\n</script>\n","export enum CodeLanguage {\n HTML = 'html',\n CSS = 'css',\n JS = 'js',\n TS = 'ts',\n JSON = 'json',\n MD = 'md',\n}\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrCodeControl\n :ref=\"'control'\"\n :control-id=\"controlAttributes.id\"\n :label=\"label\"\n :hint=\"hint\"\n :error=\"error\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n >\n <template v-slot:label>\n <slot name=\"label\">\n {{ label }}\n </slot>\n </template>\n <template v-slot:addon>\n <div :class=\"['layout-row', 'gap-xs']\">\n <slot name=\"addon\" />\n\n <OrIconButton\n v-if=\"enableFullscreen\"\n :icon=\"'fullscreen'\"\n @click.stop=\"openFullscreen()\"\n />\n </div>\n </template>\n <template v-slot:hint>\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n </template>\n <template\n v-if=\"$slots.error\"\n v-slot:error\n >\n <slot name=\"error\" />\n </template>\n </OrCodeControl>\n\n <OrModal\n :ref=\"'modal'\"\n :additional-styles=\"modalStyles\"\n :size=\"'l'\"\n >\n <template v-slot:header>\n <slot name=\"label\">\n {{ label }}\n </slot>\n </template>\n\n <OrCodeControl\n :ref=\"'fullscreenControl'\"\n :control-id=\"controlAttributes.id\"\n :hint=\"hint\"\n :error=\"error\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n >\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n <template\n v-if=\"$slots.error\"\n v-slot:error\n >\n <slot name=\"error\" />\n </template>\n </OrCodeControl>\n\n <template\n v-if=\"$slots.modalFooter\"\n v-slot:footer\n >\n <slot name=\"modalFooter\" />\n </template>\n </OrModal>\n </div>\n</template>\n\n<script lang=\"ts\">\n\n/* Codemirror core */\n\nimport { indentWithTab } from '@codemirror/commands';\nimport { Compartment, EditorState, Extension } from '@codemirror/state';\nimport { EditorView, keymap } from '@codemirror/view';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue, useTheme, useValidationAttributes } from '@onereach/ui-components-common/hooks';\n\n/* Components */\nimport { OrIconButtonV3 as OrIconButton } from '@onereach/ui-components.or-icon-button-v3';\nimport { OrModalV3 as OrModal } from '@onereach/ui-components.or-modal-v3';\nimport { basicSetup } from 'codemirror';\nimport { PropType, computed, defineComponent, onMounted, onUnmounted, reactive, ref, toRef, watch } from 'vue';\n\nimport OrCodeControl from './partials/OrCodeControl.vue';\nimport { CodeLanguage } from './props';\nimport { Code, CodeControl, CodeModal } from './styles';\n\nexport default defineComponent({\n name: 'OrCode',\n\n components: {\n OrModal,\n OrCodeControl,\n OrIconButton,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: undefined,\n },\n\n language: {\n type: String as PropType<CodeLanguage>,\n default: () => CodeLanguage.JS,\n },\n\n extensions: {\n type: Array as PropType<Extension[]>,\n default: () => [],\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 // todo: review flag prop, seems better to set 'false' default value\n enableFullscreen: {\n type: Boolean,\n default: true,\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 'editorView',\n 'control',\n 'fullscreenControl',\n 'modal',\n\n 'focus',\n 'blur',\n 'openFullscreen',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n const control = ref<InstanceType<typeof OrCodeControl>>();\n const fullscreenControl = ref<InstanceType<typeof OrCodeControl>>();\n\n const modal = ref<InstanceType<typeof OrModal>>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-code-v3',\n ...Code,\n ]);\n\n const controlStyles = computed(() => [\n ...CodeControl,\n ]);\n\n const modalStyles = computed(() => [\n ...CodeModal,\n ]);\n\n const addedExtensionCompartment = new Compartment();\n const languageExtensionCompartment = new Compartment();\n const readonlyExtensionCompartment = new Compartment();\n const disabledExtensionCompartment = new Compartment();\n\n // State\n const controlAttributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n ...useValidationAttributes(),\n });\n\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const getLanguageExtension = async (language: CodeLanguage) => {\n switch (language) {\n case CodeLanguage.HTML:\n return (await import('@codemirror/lang-html')).html();\n\n case CodeLanguage.CSS:\n return (await import('@codemirror/lang-css')).css();\n\n case CodeLanguage.JS:\n return (await import('@codemirror/lang-javascript')).javascript();\n\n case CodeLanguage.TS:\n return (await import('@codemirror/lang-javascript')).javascript({ typescript: true });\n\n case CodeLanguage.JSON:\n return (await import('@codemirror/lang-json')).json();\n\n case CodeLanguage.MD:\n return (await import('@codemirror/lang-markdown')).markdown();\n }\n };\n\n // Methods\n function focus(): void {\n (control.value?.focus as unknown as () => void)?.();\n }\n\n function blur(): void {\n (control.value?.blur as unknown as () => void)?.();\n }\n\n function openFullscreen(): void {\n (modal.value?.open as unknown as () => void)?.();\n }\n\n // #region Codemirror\n const theme = useTheme();\n const defaultExtensions = [\n basicSetup,\n\n keymap.of([\n indentWithTab,\n ]),\n\n EditorView.domEventHandlers({\n input: (event) => {\n context.emit('input', event);\n },\n\n keydown: (event) => {\n context.emit('keydown', event);\n },\n\n keyup: (event) => {\n context.emit('keyup', event);\n },\n\n focus: (event) => {\n context.emit('focus', event);\n },\n\n blur: (event) => {\n context.emit('blur', event);\n },\n }),\n\n EditorView.theme({\n '&': {\n overflow: 'hidden',\n\n color: theme.textColor['on-background'],\n backgroundColor: 'transparent',\n },\n\n '&.cm-focused': {\n outline: 'none',\n },\n\n '.cm-scroller': {\n fontFamily: theme.fontFamily['caption'],\n fontWeight: theme.fontWeight['caption'],\n fontSize: theme.fontSize['caption'],\n lineHeight: theme.lineHeight['caption'],\n },\n\n '.cm-gutters': {\n color: theme.textColor['on-background'],\n backgroundColor: theme.backgroundColor['primary-opacity-0-12'],\n borderColor: theme.borderColor['outline'],\n\n backdropFilter: 'blur(2px)',\n },\n\n '.cm-activeLineGutter, .cm-activeLine': {\n backgroundColor: theme.backgroundColor['primary-opacity-0-08'],\n },\n }),\n ];\n\n const state = EditorState.create({\n doc: proxyModelValue.value,\n\n extensions: [\n ...defaultExtensions,\n languageExtensionCompartment.of([]),\n addedExtensionCompartment.of(props.extensions),\n readonlyExtensionCompartment.of([EditorState.readOnly.of(props.readonly)]),\n disabledExtensionCompartment.of([EditorView.editable.of(!props.disabled)]),\n ],\n });\n\n const editorView = new EditorView({\n state,\n\n dispatch: (transaction) => {\n editorView.update([\n transaction,\n ]);\n\n if (transaction.docChanged) {\n proxyModelValue.value = String(editorView.state.doc);\n }\n },\n });\n\n watch(proxyModelValue, (value) => {\n if (editorView.composing) return;\n if (editorView.state.doc.toString() === value) return;\n\n const modelValue = value ?? '';\n const { selection } = editorView.state;\n\n editorView!.dispatch({\n changes: {\n from: 0,\n to: editorView!.state.doc.length,\n insert: modelValue,\n },\n\n selection: selection.ranges.some((range) => range.to > modelValue.length) ? { anchor: modelValue.length } : selection,\n });\n });\n\n watch([\n () => props.extensions,\n () => props.language,\n () => props.readonly,\n () => props.disabled,\n ], async ([extensions, language, readonly, disabled], [, prevLanguage, pevReadonly, pevDisabled]) => {\n let effects = [];\n\n if (readonly !== pevReadonly) {\n effects.push(readonlyExtensionCompartment.reconfigure(EditorState.readOnly.of(readonly)));\n }\n\n if (disabled !== pevDisabled) {\n effects.push(disabledExtensionCompartment.reconfigure(EditorView.editable.of(!disabled)));\n }\n\n if (language !== prevLanguage) {\n const languageExt = await getLanguageExtension(language as CodeLanguage);\n\n effects.push(languageExtensionCompartment.reconfigure([languageExt]));\n }\n\n effects.push(addedExtensionCompartment.reconfigure(extensions));\n\n editorView!.dispatch({ effects });\n }, { immediate: true });\n // #endregion\n\n // Effects\n watch(() => modal.value?.state, (value) => {\n setTimeout(() => {\n if (value === 'open') {\n (fullscreenControl.value?.control as unknown as HTMLElement)?.append(editorView.dom);\n } else {\n (control.value?.control as unknown as HTMLElement)?.append(editorView.dom);\n }\n });\n });\n\n // Lifecycle\n onMounted(() => {\n (control.value?.control as unknown as HTMLElement)?.append(editorView.dom);\n });\n\n onUnmounted(() => {\n editorView.destroy();\n });\n\n return {\n root,\n editorView,\n control,\n fullscreenControl,\n modal,\n rootStyles,\n controlStyles,\n modalStyles,\n controlAttributes,\n proxyModelValue,\n focus,\n blur,\n openFullscreen,\n };\n },\n});\n</script>\n"],"names":["Code","CodeControlRoot","CodeControl","CodeModal","_sfc_main$1","defineComponent","OrError","OrHint","OrInputBox","OrLabel","root","ref","control","focus","_a","blur","rootStyles","computed","controlStyles","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_component_OrLabel","_renderSlot","_createVNode","_component_OrInputBox","_withCtx","_createElementVNode","_withDirectives","_createBlock","_component_OrHint","_createCommentVNode","_component_OrError","CodeLanguage","_sfc_main","OrModal","OrCodeControl","OrIconButton","props","context","fullscreenControl","modal","modalStyles","addedExtensionCompartment","Compartment","languageExtensionCompartment","readonlyExtensionCompartment","disabledExtensionCompartment","controlAttributes","reactive","useIdAttribute","useControlAttributes","useValidationAttributes","proxyModelValue","useProxyModelValue","toRef","getLanguageExtension","language","_b","openFullscreen","theme","useTheme","defaultExtensions","basicSetup","keymap","indentWithTab","EditorView","event","state","EditorState","editorView","transaction","watch","value","modelValue","selection","range","extensions","readonly","disabled","prevLanguage","pevReadonly","pevDisabled","effects","languageExt","_d","_c","onMounted","onUnmounted","_component_OrCodeControl","_createSlots","_hoisted_1","_component_OrIconButton","_component_OrModal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrCode-BQd66v38.mjs","sources":["../../../components/or-code-v3/src/styles.ts","../../../components/or-code-v3/src/partials/OrCodeControl.vue","../../../components/or-code-v3/src/props.ts","../../../components/or-code-v3/src/OrCode.vue"],"sourcesContent":["export const Code: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const CodeControlRoot: string[] = [\n // Layout\n 'layout-column',\n\n // Sizing\n 'h-full',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const CodeControl: string[] = [\n // Layout\n 'grid',\n\n // Box\n 'w-full',\n 'h-full',\n\n // Spacing\n '!mx-0',\n '!my-0',\n\n // Theme\n 'theme-background-transparent',\n\n // todo: https://onereach.atlassian.net/browse/UI-580\n 'dark:invert dark:hue-rotate-180',\n];\n\nexport const CodeModal: string[] = [\n // Sizing\n '!h-full',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrLabel\n :control-id=\"controlId\"\n :variant=\"'input'\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n\n <OrInputBox\n :class=\"['grow']\"\n :size=\"'m'\"\n :invalid=\"!!error || !!$slots.error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n >\n <div\n :ref=\"'control'\"\n :class=\"controlStyles\"\n />\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 || $slots.error\"\n :disabled=\"disabled\"\n >\n <slot name=\"error\">\n {{ error }}\n </slot>\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { OrErrorV3 as OrError } from '@onereach/ui-components.or-error-v3';\nimport { OrHintV3 as OrHint } from '@onereach/ui-components.or-hint-v3';\nimport { OrInputBoxV3 as OrInputBox } from '@onereach/ui-components.or-input-box-v3';\nimport { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { CodeControl, CodeControlRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrCodeControl',\n\n components: {\n OrError,\n OrHint,\n OrInputBox,\n OrLabel,\n },\n\n props: {\n error: {\n type: [String, Boolean],\n default: undefined,\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n controlId: {\n type: String,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n },\n\n expose: [\n 'root',\n 'control',\n\n 'focus',\n 'blur',\n ],\n\n setup() {\n // Refs\n const root = ref<HTMLElement>();\n const control = ref<HTMLElement>();\n\n // Methods\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n // Styles\n const rootStyles = computed(() => [\n 'or-code-control-v3',\n ...CodeControlRoot,\n ]);\n\n const controlStyles = computed(() => [\n ...CodeControl,\n ]);\n\n return {\n root,\n control,\n rootStyles,\n controlStyles,\n focus,\n blur,\n };\n },\n});\n</script>\n","export enum CodeLanguage {\n HTML = 'html',\n CSS = 'css',\n JS = 'js',\n TS = 'ts',\n JSON = 'json',\n MD = 'md',\n}\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrCodeControl\n :ref=\"'control'\"\n :control-id=\"controlAttributes.id\"\n :label=\"label\"\n :hint=\"hint\"\n :error=\"error\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n >\n <template v-slot:label>\n <slot name=\"label\">\n {{ label }}\n </slot>\n </template>\n <template v-slot:addon>\n <div :class=\"['layout-row', 'gap-xs']\">\n <slot name=\"addon\" />\n\n <OrIconButton\n v-if=\"enableFullscreen\"\n :icon=\"'fullscreen'\"\n @click.stop=\"openFullscreen()\"\n />\n </div>\n </template>\n <template v-slot:hint>\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n </template>\n <template\n v-if=\"$slots.error\"\n v-slot:error\n >\n <slot name=\"error\" />\n </template>\n </OrCodeControl>\n\n <OrModal\n :ref=\"'modal'\"\n :additional-styles=\"modalStyles\"\n :size=\"'l'\"\n >\n <template v-slot:header>\n <slot name=\"label\">\n {{ label }}\n </slot>\n </template>\n\n <OrCodeControl\n :ref=\"'fullscreenControl'\"\n :control-id=\"controlAttributes.id\"\n :hint=\"hint\"\n :error=\"error\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n >\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n <template\n v-if=\"$slots.error\"\n v-slot:error\n >\n <slot name=\"error\" />\n </template>\n </OrCodeControl>\n\n <template\n v-if=\"$slots.modalFooter\"\n v-slot:footer\n >\n <slot name=\"modalFooter\" />\n </template>\n </OrModal>\n </div>\n</template>\n\n<script lang=\"ts\">\n\n/* Codemirror core */\n\nimport { indentWithTab } from '@codemirror/commands';\nimport { Compartment, EditorState, Extension } from '@codemirror/state';\nimport { EditorView, keymap } from '@codemirror/view';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue, useTheme, useValidationAttributes } from '@onereach/ui-components-common/hooks';\n\n/* Components */\nimport { OrIconButtonV3 as OrIconButton } from '@onereach/ui-components.or-icon-button-v3';\nimport { OrModalV3 as OrModal } from '@onereach/ui-components.or-modal-v3';\nimport { basicSetup } from 'codemirror';\nimport { PropType, computed, defineComponent, onMounted, onUnmounted, reactive, ref, toRef, watch } from 'vue';\n\nimport OrCodeControl from './partials/OrCodeControl.vue';\nimport { CodeLanguage } from './props';\nimport { Code, CodeControl, CodeModal } from './styles';\n\nexport default defineComponent({\n name: 'OrCode',\n\n components: {\n OrModal,\n OrCodeControl,\n OrIconButton,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: undefined,\n },\n\n language: {\n type: String as PropType<CodeLanguage>,\n default: () => CodeLanguage.JS,\n },\n\n extensions: {\n type: Array as PropType<Extension[]>,\n default: () => [],\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 // todo: review flag prop, seems better to set 'false' default value\n enableFullscreen: {\n type: Boolean,\n default: true,\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 'editorView',\n 'control',\n 'fullscreenControl',\n 'modal',\n\n 'focus',\n 'blur',\n 'openFullscreen',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n const control = ref<InstanceType<typeof OrCodeControl>>();\n const fullscreenControl = ref<InstanceType<typeof OrCodeControl>>();\n\n const modal = ref<InstanceType<typeof OrModal>>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-code-v3',\n ...Code,\n ]);\n\n const controlStyles = computed(() => [\n ...CodeControl,\n ]);\n\n const modalStyles = computed(() => [\n ...CodeModal,\n ]);\n\n const addedExtensionCompartment = new Compartment();\n const languageExtensionCompartment = new Compartment();\n const readonlyExtensionCompartment = new Compartment();\n const disabledExtensionCompartment = new Compartment();\n\n // State\n const controlAttributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n ...useValidationAttributes(),\n });\n\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const getLanguageExtension = async (language: CodeLanguage) => {\n switch (language) {\n case CodeLanguage.HTML:\n return (await import('@codemirror/lang-html')).html();\n\n case CodeLanguage.CSS:\n return (await import('@codemirror/lang-css')).css();\n\n case CodeLanguage.JS:\n return (await import('@codemirror/lang-javascript')).javascript();\n\n case CodeLanguage.TS:\n return (await import('@codemirror/lang-javascript')).javascript({ typescript: true });\n\n case CodeLanguage.JSON:\n return (await import('@codemirror/lang-json')).json();\n\n case CodeLanguage.MD:\n return (await import('@codemirror/lang-markdown')).markdown();\n }\n };\n\n // Methods\n function focus(): void {\n (control.value?.focus as unknown as () => void)?.();\n }\n\n function blur(): void {\n (control.value?.blur as unknown as () => void)?.();\n }\n\n function openFullscreen(): void {\n (modal.value?.open as unknown as () => void)?.();\n }\n\n // #region Codemirror\n const theme = useTheme();\n const defaultExtensions = [\n basicSetup,\n\n keymap.of([\n indentWithTab,\n ]),\n\n EditorView.domEventHandlers({\n input: (event) => {\n context.emit('input', event);\n },\n\n keydown: (event) => {\n context.emit('keydown', event);\n },\n\n keyup: (event) => {\n context.emit('keyup', event);\n },\n\n focus: (event) => {\n context.emit('focus', event);\n },\n\n blur: (event) => {\n context.emit('blur', event);\n },\n }),\n\n EditorView.theme({\n '&': {\n overflow: 'hidden',\n\n color: theme.textColor['on-background'],\n backgroundColor: 'transparent',\n },\n\n '&.cm-focused': {\n outline: 'none',\n },\n\n '.cm-scroller': {\n fontFamily: theme.fontFamily['caption'],\n fontWeight: theme.fontWeight['caption'],\n fontSize: theme.fontSize['caption'],\n lineHeight: theme.lineHeight['caption'],\n },\n\n '.cm-gutters': {\n color: theme.textColor['on-background'],\n backgroundColor: theme.backgroundColor['primary-opacity-0-12'],\n borderColor: theme.borderColor['outline'],\n\n backdropFilter: 'blur(2px)',\n },\n\n '.cm-activeLineGutter, .cm-activeLine': {\n backgroundColor: theme.backgroundColor['primary-opacity-0-08'],\n },\n }),\n ];\n\n const state = EditorState.create({\n doc: proxyModelValue.value,\n\n extensions: [\n ...defaultExtensions,\n languageExtensionCompartment.of([]),\n addedExtensionCompartment.of(props.extensions),\n readonlyExtensionCompartment.of([EditorState.readOnly.of(props.readonly)]),\n disabledExtensionCompartment.of([EditorView.editable.of(!props.disabled)]),\n ],\n });\n\n const editorView = new EditorView({\n state,\n\n dispatch: (transaction) => {\n editorView.update([\n transaction,\n ]);\n\n if (transaction.docChanged) {\n proxyModelValue.value = String(editorView.state.doc);\n }\n },\n });\n\n watch(proxyModelValue, (value) => {\n if (editorView.composing) return;\n if (editorView.state.doc.toString() === value) return;\n\n const modelValue = value ?? '';\n const { selection } = editorView.state;\n\n editorView!.dispatch({\n changes: {\n from: 0,\n to: editorView!.state.doc.length,\n insert: modelValue,\n },\n\n selection: selection.ranges.some((range) => range.to > modelValue.length) ? { anchor: modelValue.length } : selection,\n });\n });\n\n watch([\n () => props.extensions,\n () => props.language,\n () => props.readonly,\n () => props.disabled,\n ], async ([extensions, language, readonly, disabled], [, prevLanguage, pevReadonly, pevDisabled]) => {\n let effects = [];\n\n if (readonly !== pevReadonly) {\n effects.push(readonlyExtensionCompartment.reconfigure(EditorState.readOnly.of(readonly)));\n }\n\n if (disabled !== pevDisabled) {\n effects.push(disabledExtensionCompartment.reconfigure(EditorView.editable.of(!disabled)));\n }\n\n if (language !== prevLanguage) {\n const languageExt = await getLanguageExtension(language as CodeLanguage);\n\n effects.push(languageExtensionCompartment.reconfigure([languageExt]));\n }\n\n effects.push(addedExtensionCompartment.reconfigure(extensions));\n\n editorView!.dispatch({ effects });\n }, { immediate: true });\n // #endregion\n\n // Effects\n watch(() => modal.value?.state, (value) => {\n setTimeout(() => {\n if (value === 'open') {\n (fullscreenControl.value?.control as unknown as HTMLElement)?.append(editorView.dom);\n } else {\n (control.value?.control as unknown as HTMLElement)?.append(editorView.dom);\n }\n });\n });\n\n // Lifecycle\n onMounted(() => {\n (control.value?.control as unknown as HTMLElement)?.append(editorView.dom);\n });\n\n onUnmounted(() => {\n editorView.destroy();\n });\n\n return {\n root,\n editorView,\n control,\n fullscreenControl,\n modal,\n rootStyles,\n controlStyles,\n modalStyles,\n controlAttributes,\n proxyModelValue,\n focus,\n blur,\n openFullscreen,\n };\n },\n});\n</script>\n"],"names":["Code","CodeControlRoot","CodeControl","CodeModal","_sfc_main$1","defineComponent","OrError","OrHint","OrInputBox","OrLabel","root","ref","control","focus","_a","blur","rootStyles","computed","controlStyles","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_component_OrLabel","_renderSlot","_createVNode","_component_OrInputBox","_withCtx","_createElementVNode","_withDirectives","_createBlock","_component_OrHint","_createCommentVNode","_component_OrError","CodeLanguage","_sfc_main","OrModal","OrCodeControl","OrIconButton","props","context","fullscreenControl","modal","modalStyles","addedExtensionCompartment","Compartment","languageExtensionCompartment","readonlyExtensionCompartment","disabledExtensionCompartment","controlAttributes","reactive","useIdAttribute","useControlAttributes","useValidationAttributes","proxyModelValue","useProxyModelValue","toRef","getLanguageExtension","language","_b","openFullscreen","theme","useTheme","defaultExtensions","basicSetup","keymap","indentWithTab","EditorView","event","state","EditorState","editorView","transaction","watch","value","modelValue","selection","range","extensions","readonly","disabled","prevLanguage","pevReadonly","pevDisabled","effects","languageExt","_d","_c","onMounted","onUnmounted","_component_OrCodeControl","_createSlots","_hoisted_1","_component_OrIconButton","_component_OrModal"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { defineComponent as O, ref as $, computed as p, resolveComponent as t, o
|
|
|
2
2
|
import { O as B } from "./OrError-B5ihH6-3.mjs";
|
|
3
3
|
import { O as w } from "./OrHint-NvbZyURY.mjs";
|
|
4
4
|
import { a as q } from "./OrInputBox.vue_vue_type_script_lang-q2L7rmth.mjs";
|
|
5
|
-
import { O as E } from "./OrLabel-
|
|
5
|
+
import { O as E } from "./OrLabel-K7_HgvcK.mjs";
|
|
6
6
|
import { _ as k } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
7
7
|
const z = [
|
|
8
8
|
// Layout
|
|
@@ -140,4 +140,4 @@ const J = /* @__PURE__ */ k(V, [["render", N]]);
|
|
|
140
140
|
export {
|
|
141
141
|
J as O
|
|
142
142
|
};
|
|
143
|
-
//# sourceMappingURL=OrCombinedInput-
|
|
143
|
+
//# sourceMappingURL=OrCombinedInput-Ddlid03b.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrCombinedInput-
|
|
1
|
+
{"version":3,"file":"OrCombinedInput-Ddlid03b.mjs","sources":["../../../components/or-combined-input-v3/src/styles.ts","../../../components/or-combined-input-v3/src/OrCombinedInput.vue"],"sourcesContent":["export const CombinedInput: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const CombinedInputControlGroup: string[] = [\n // Layout\n 'layout-row',\n\n // Box\n 'w-full',\n\n // Position (.or-input-box-v3)\n '[&_.or-input-box-v3]:children:relative',\n\n // Position (.or-input-box-v3/focus)\n 'focus-within:[&_.or-input-box-v3]:children:z-10',\n\n // Spacing (.or-input-box-v3)\n '[&_.or-input-box-v3]:[&:not(:first-child)]:children:-ml-[1px]',\n\n // Shape (.or-input-box-v3)\n '[&_.or-input-box-v3]:[&:not(:first-child)]:children:rounded-l-0',\n '[&_.or-input-box-v3]:[&:not(:last-child)]:children:rounded-r-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 :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 <div :class=\"controlGroup\">\n <slot\n :variant=\"variant\"\n :size=\"size\"\n :error=\"!!error\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n />\n </div>\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 { computed, defineComponent, PropType, ref } from 'vue';\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 } from '@onereach/ui-components.or-input-box-v3';\nimport { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { CombinedInput, CombinedInputControlGroup } from './styles';\n\nexport default defineComponent({\n name: 'OrCombinedInput',\n\n components: {\n OrError,\n OrHint,\n OrLabel,\n },\n\n props: {\n variant: {\n type: String as PropType<`${InputBoxVariant}`>,\n default: undefined,\n },\n\n size: {\n type: String as PropType<`${InputBoxSize}`>,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n 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 setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-combined-input-v3',\n ...CombinedInput,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const controlGroup = computed(() => [\n ...CombinedInputControlGroup,\n ]);\n\n return {\n root,\n rootStyles,\n controlGroup,\n };\n },\n});\n</script>\n"],"names":["CombinedInput","CombinedInputControlGroup","_sfc_main","defineComponent","OrError","OrHint","OrLabel","props","root","ref","rootStyles","computed","InputBoxVariant","controlGroup","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_OrLabel","_renderSlot","_createCommentVNode","_createElementVNode","_component_OrHint","_withDirectives","_createVNode","_component_OrError","_withCtx"],"mappings":";;;;;;AAAO,MAAMA,IAA0B;AAAA;AAAA,EAErC;AAAA;AAAA,EAGA;AACF,GAEaC,IAAsC;AAAA;AAAA,EAEjD;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AACF,GCiCAC,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,SAAAC;AAAA,IACA,QAAAC;AAAA,IACA,SAAAC;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ,OAAO;AAAA,MACtB,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,MAAMC,GAAO;AAEX,UAAMC,IAAOC,KAGPC,IAAaC,EAAS,MAAM;AAAA,MAChC;AAAA,MACA,GAAGX;AAAA,MACH,GAAGO,EAAM,YAAYK,EAAgB,WAAW,CAAC,MAAM,IAAI,CAAC;AAAA,IAAA,CAC7D,GAEKC,IAAeF,EAAS,MAAM;AAAA,MAClC,GAAGV;AAAA,IAAA,CACJ;AAEM,WAAA;AAAA,MACL,MAAAO;AAAA,MACA,YAAAE;AAAA,MACA,cAAAG;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;+CAnICC,EAgDM,SAAA;SA9CEC,EAAY,GAAAC,EAAA,OAAA;AAAA,IAAA,KAAA;AAAA,IAEF,OAAAC,EAAgBC,EAAO,UAAA;AAAA,EAAA,GAAA;AAAA,wDAElBC,EAAAC,GAAA;AAAA,MAChB,KAAA;AAAA,MACA,SAAQ;AAAA,MAAA,UAAAF,EAAA;AAAA,MAMQ,UAAKA,EAAA;AAAA,IAAA,GAAA;AAAA;QAFfG,EAAAH,EAAA,QAAA,OAAA;AAAA,MAAA,CAAA;AAAA;;;;;;OAiBL,GAAA,CAAA,YAAA,UAAA,CAAA,KATAI,EAAK,IAAE,EAAA;AAAA,IAAAC,EAAA,OAAA;AAAA,MACX,OAOEN,EAAAC,EAAA,YAAA;AAAA,IAAA,GAAA;AAAA,QALOA,EAAI,QAAA,WAAA;AAAA,QACV,SAASA,EAAA;AAAA,QACT,MAAUA,EAAA;AAAA,QACV,QAAQ,CAAEA,EAAA;AAAA,QACV,UAAUA,EAAA;AAAA,QAAA,UAAAA,EAAA;AAAA;MAIC,CAAA;AAAA,IAAA,GAAA,CAAA;AAAA,iCAGDH,EAAQ,GAAAI,EAAAK,GAAA;AAAA,MAAA,KAAA;AAAA;;;;;;;;;;IAYV,CAAA,IAAAF,EAAA,IAAA,EAAA;AAAA,IAAHG,EAAAC,EAAAC,GAAA,EAAA,UAAAT,EAAA,YAAA;AAAA,MAAA,SAAAU,EAAA,MAAA;AAAA;;;;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { usePopoverState as K } from "@onereach/ui-components-common/hooks";
|
|
2
2
|
import { O as M } from "./OrButton-C_hXddAf.mjs";
|
|
3
3
|
import { a as D } from "./OrButton.vue_vue_type_script_lang-W1ictbKz.mjs";
|
|
4
|
-
import { O as R } from "./OrInput-
|
|
4
|
+
import { O as R } from "./OrInput-BqDsy3wR.mjs";
|
|
5
5
|
import { O as U } from "./OrOverlay-BjrghiC-.mjs";
|
|
6
6
|
import { useMagicKeys as G, whenever as J, onClickOutside as Q } from "@vueuse/core";
|
|
7
7
|
import { logicAnd as W } from "@vueuse/math";
|
|
@@ -283,4 +283,4 @@ export {
|
|
|
283
283
|
s as C,
|
|
284
284
|
ho as O
|
|
285
285
|
};
|
|
286
|
-
//# sourceMappingURL=OrConfirm-
|
|
286
|
+
//# sourceMappingURL=OrConfirm-hPRH5PIY.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrConfirm-JQb9zPU3.mjs","sources":["../../../components/or-confirm-v3/src/props.ts","../../../components/or-confirm-v3/src/styles.ts","../../../components/or-confirm-v3/src/OrConfirm.vue"],"sourcesContent":["export enum ConfirmType {\n D = 'd', // destructive / dangerous\n C = 'c', // consequential / common\n}\n","import { ConfirmType } from './props';\n\nexport const Confirm: string[] = [\n // Position\n 'fixed md:static',\n\n 'left-0',\n 'right-0',\n 'bottom-0',\n\n // Layout\n 'layout-column',\n\n // Box\n 'w-full md:w-[320px]',\n\n // Spacing\n 'px-lg',\n 'py-lg',\n\n 'gap-md',\n\n // Shape\n 'md:rounded-md',\n\n // Elevation\n 'shadow-modal',\n 'dark:shadow-modal-dark',\n\n // Typography\n 'typography-body-2-regular',\n\n // Theme\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-foreground-default',\n 'dark:theme-foreground-default-dark',\n];\n\nexport const ConfirmHeader: string[] = [\n // Layout\n 'layout-row justify-between',\n\n // Typography\n 'typography-headline-3',\n];\n\nexport const ConfirmInput: string[] = [\n // Box\n 'w-full',\n\n // Spacing\n 'mt-md',\n];\n\nexport const ConfirmFooter: string[] = [\n // Spacing\n 'gap-md',\n];\n\nexport const ConfirmFooterTypes: Record<ConfirmType, string[]> = {\n [ConfirmType.C]: [\n // Layout\n 'layout-row',\n ],\n\n [ConfirmType.D]: [\n // Layout\n 'layout-row-reverse',\n ],\n};\n\nexport const ConfirmFooterButtons: string[] = [\n // Layout\n '!grow',\n\n // Box\n 'w-auto md:w-[128px]',\n];\n","<template>\n <OrOverlay\n v-if=\"state === 'open'\"\n :fullscreen=\"true\"\n >\n <div\n v-bind=\"$attrs\"\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :role=\"'alertdialog'\"\n >\n <div :class=\"headerStyles\">\n <slot name=\"header\">\n {{ titleText }}\n </slot>\n </div>\n\n <div class=\"grow\">\n <div class=\"overflow-y-auto overflow-x-hidden\">\n <slot />\n </div>\n <div\n v-if=\"confirmationText\"\n :class=\"inputBoxStyles\"\n >\n <OrInput\n :ref=\"'confirmationInput'\"\n v-model=\"confirmationValue\"\n :label=\"textConfirmationLabel\"\n :placeholder=\"textConfirmationPlaceholder\"\n @focus=\"onInputFocus\"\n @blur=\"onInputBlur\"\n />\n </div>\n </div>\n\n <slot\n name=\"footer\"\n :confirm=\"confirm\"\n :cancel=\"close\"\n >\n <div :class=\"footerStyles\">\n <OrButton\n :class=\"buttonsStyles\"\n :variant=\"'outlined'\"\n :disabled=\"loading\"\n @click=\"close()\"\n >\n {{ cancelButtonText }}\n </OrButton>\n\n <OrButton\n :ref=\"'confirmationButton'\"\n :class=\"buttonsStyles\"\n :color=\"confirmButtonColor\"\n :loading=\"loading\"\n :disabled=\"isConfirmationButtonDisabled\"\n @click=\"onConfirmClick\"\n >\n {{ confirmButtonText }}\n </OrButton>\n </div>\n </slot>\n </div>\n </OrOverlay>\n</template>\n\n<script lang=\"ts\">\nimport { usePopoverState } from '@onereach/ui-components-common/hooks';\nimport { ButtonColor, OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrInputV3 as OrInput } from '@onereach/ui-components.or-input-v3';\nimport { OrOverlayV3 as OrOverlay } from '@onereach/ui-components.or-overlay-v3';\nimport { onClickOutside, useMagicKeys, whenever } from '@vueuse/core';\nimport { logicAnd } from '@vueuse/math';\nimport { PropType, computed, defineComponent, ref, toRef, watch } from 'vue';\n\nimport { ConfirmType } from './props';\nimport { Confirm, ConfirmFooter, ConfirmFooterButtons, ConfirmFooterTypes, ConfirmHeader, ConfirmInput } from './styles';\n\nexport default defineComponent({\n name: 'OrConfirm',\n\n components: {\n OrOverlay,\n OrButton,\n OrInput,\n },\n\n inheritAttrs: false,\n\n props: {\n isOpen: {\n type: Boolean,\n default: false,\n },\n\n titleText: {\n type: String,\n required: false,\n default: null,\n },\n\n confirmButtonText: {\n type: String,\n default: 'Confirm',\n },\n\n autoCloseOnConfirm: {\n type: Boolean,\n default: true,\n },\n\n closeOnClickOutside: {\n type: Boolean,\n default: true,\n },\n\n cancelButtonText: {\n type: String,\n default: 'Cancel',\n },\n\n confirmType: {\n type: String as PropType<`${ConfirmType}`>,\n default: () => ConfirmType.C,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n required: false,\n default: false,\n },\n\n confirmationText: {\n type: String,\n default: undefined,\n },\n\n textConfirmationLabel: {\n type: String,\n default: undefined,\n },\n\n textConfirmationPlaceholder: {\n type: String,\n default: undefined,\n },\n },\n\n emits: [\n 'update:state',\n\n 'open',\n 'close',\n 'confirm',\n ],\n\n expose: [\n 'root',\n\n 'state',\n\n 'open',\n 'close',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n\n const confirmationInput = ref<InstanceType<typeof OrInput>>();\n const confirmationButton = ref<InstanceType<typeof OrButton>>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-confirm-v3',\n ...Confirm,\n ]);\n\n const headerStyles = computed(() => [\n ...ConfirmHeader,\n ]);\n\n const inputBoxStyles = computed(() => [\n ...ConfirmInput,\n ]);\n\n const footerStyles = computed(() => [\n ...ConfirmFooter,\n ...ConfirmFooterTypes[props.confirmType],\n ]);\n\n const buttonsStyles = computed(() => [\n ...ConfirmFooterButtons,\n ]);\n\n // State\n const { state, open, close } = usePopoverState(toRef(props, 'isOpen'), context.emit);\n const isInputActive = ref(false);\n const confirmationValue = ref('');\n\n watch(state, () => {\n confirmationValue.value = '';\n });\n\n const { escape, enter } = useMagicKeys();\n\n const isInvalid = computed(() => {\n return !!props.confirmationText && props.confirmationText !== confirmationValue.value;\n });\n\n const isConfirmationButtonDisabled = computed(() => !!props.disabled || isInvalid.value);\n\n const confirmButtonColor = computed(() =>\n props.confirmType === ConfirmType.C ? ButtonColor.Primary : ButtonColor.Danger,\n );\n\n // Methods\n function confirm(): void {\n if (!props.disabled && !isInvalid.value) {\n context.emit('confirm');\n }\n }\n\n function onInputFocus(): void {\n isInputActive.value = true;\n }\n\n function onInputBlur(): void {\n isInputActive.value = false;\n }\n\n function onConfirmClick(): void {\n confirm();\n if (props.autoCloseOnConfirm) {\n close();\n }\n }\n // Events\n watch(escape, (val) => {\n if (val) close();\n });\n\n // types here are used for fixing TS2349\n watch(confirmationInput as any, (val: InstanceType<typeof OrInput>) =>\n (val?.focus as (() => void) | undefined)?.());\n\n // types here are used for fixing TS2349\n watch(confirmationButton as any, (val: InstanceType<typeof OrButton>) => {\n if (val && !props.confirmationText) {\n const button = val.root as HTMLButtonElement | undefined;\n button?.focus();\n }\n });\n\n whenever(logicAnd(enter, isInputActive), () => confirm());\n\n // #region Click Outside\n onClickOutside(root, () => {\n props.closeOnClickOutside ? close() : undefined;\n });\n // #endregion\n\n return {\n root,\n confirmationInput,\n confirmationButton,\n confirmationValue,\n confirmButtonColor,\n isInvalid,\n isConfirmationButtonDisabled,\n state,\n isInputActive,\n escape,\n rootStyles,\n headerStyles,\n inputBoxStyles,\n footerStyles,\n buttonsStyles,\n confirm,\n onConfirmClick,\n open,\n close,\n onInputFocus,\n onInputBlur,\n };\n },\n});\n</script>\n"],"names":["ConfirmType","Confirm","ConfirmHeader","ConfirmInput","ConfirmFooter","ConfirmFooterTypes","ConfirmFooterButtons","_sfc_main","defineComponent","OrOverlay","OrButton","OrInput","props","context","root","ref","confirmationInput","confirmationButton","rootStyles","computed","headerStyles","inputBoxStyles","footerStyles","buttonsStyles","state","open","close","usePopoverState","toRef","isInputActive","confirmationValue","watch","escape","enter","useMagicKeys","isInvalid","isConfirmationButtonDisabled","confirmButtonColor","ButtonColor","confirm","onInputFocus","onInputBlur","onConfirmClick","val","_a","button","whenever","logicAnd","onClickOutside","_component_OrOverlay","_resolveComponent","_ctx","_openBlock","_createBlock","_withCtx","_createElementVNode","_mergeProps","_normalizeClass","_hoisted_1","_hoisted_2","_renderSlot","_createElementBlock","_createVNode","_component_OrInput","_cache","$event","_createCommentVNode","_component_OrButton"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrConfirm-hPRH5PIY.mjs","sources":["../../../components/or-confirm-v3/src/props.ts","../../../components/or-confirm-v3/src/styles.ts","../../../components/or-confirm-v3/src/OrConfirm.vue"],"sourcesContent":["export enum ConfirmType {\n D = 'd', // destructive / dangerous\n C = 'c', // consequential / common\n}\n","import { ConfirmType } from './props';\n\nexport const Confirm: string[] = [\n // Position\n 'fixed md:static',\n\n 'left-0',\n 'right-0',\n 'bottom-0',\n\n // Layout\n 'layout-column',\n\n // Box\n 'w-full md:w-[320px]',\n\n // Spacing\n 'px-lg',\n 'py-lg',\n\n 'gap-md',\n\n // Shape\n 'md:rounded-md',\n\n // Elevation\n 'shadow-modal',\n 'dark:shadow-modal-dark',\n\n // Typography\n 'typography-body-2-regular',\n\n // Theme\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-foreground-default',\n 'dark:theme-foreground-default-dark',\n];\n\nexport const ConfirmHeader: string[] = [\n // Layout\n 'layout-row justify-between',\n\n // Typography\n 'typography-headline-3',\n];\n\nexport const ConfirmInput: string[] = [\n // Box\n 'w-full',\n\n // Spacing\n 'mt-md',\n];\n\nexport const ConfirmFooter: string[] = [\n // Spacing\n 'gap-md',\n];\n\nexport const ConfirmFooterTypes: Record<ConfirmType, string[]> = {\n [ConfirmType.C]: [\n // Layout\n 'layout-row',\n ],\n\n [ConfirmType.D]: [\n // Layout\n 'layout-row-reverse',\n ],\n};\n\nexport const ConfirmFooterButtons: string[] = [\n // Layout\n '!grow',\n\n // Box\n 'w-auto md:w-[128px]',\n];\n","<template>\n <OrOverlay\n v-if=\"state === 'open'\"\n :fullscreen=\"true\"\n >\n <div\n v-bind=\"$attrs\"\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :role=\"'alertdialog'\"\n >\n <div :class=\"headerStyles\">\n <slot name=\"header\">\n {{ titleText }}\n </slot>\n </div>\n\n <div class=\"grow\">\n <div class=\"overflow-y-auto overflow-x-hidden\">\n <slot />\n </div>\n <div\n v-if=\"confirmationText\"\n :class=\"inputBoxStyles\"\n >\n <OrInput\n :ref=\"'confirmationInput'\"\n v-model=\"confirmationValue\"\n :label=\"textConfirmationLabel\"\n :placeholder=\"textConfirmationPlaceholder\"\n @focus=\"onInputFocus\"\n @blur=\"onInputBlur\"\n />\n </div>\n </div>\n\n <slot\n name=\"footer\"\n :confirm=\"confirm\"\n :cancel=\"close\"\n >\n <div :class=\"footerStyles\">\n <OrButton\n :class=\"buttonsStyles\"\n :variant=\"'outlined'\"\n :disabled=\"loading\"\n @click=\"close()\"\n >\n {{ cancelButtonText }}\n </OrButton>\n\n <OrButton\n :ref=\"'confirmationButton'\"\n :class=\"buttonsStyles\"\n :color=\"confirmButtonColor\"\n :loading=\"loading\"\n :disabled=\"isConfirmationButtonDisabled\"\n @click=\"onConfirmClick\"\n >\n {{ confirmButtonText }}\n </OrButton>\n </div>\n </slot>\n </div>\n </OrOverlay>\n</template>\n\n<script lang=\"ts\">\nimport { usePopoverState } from '@onereach/ui-components-common/hooks';\nimport { ButtonColor, OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrInputV3 as OrInput } from '@onereach/ui-components.or-input-v3';\nimport { OrOverlayV3 as OrOverlay } from '@onereach/ui-components.or-overlay-v3';\nimport { onClickOutside, useMagicKeys, whenever } from '@vueuse/core';\nimport { logicAnd } from '@vueuse/math';\nimport { PropType, computed, defineComponent, ref, toRef, watch } from 'vue';\n\nimport { ConfirmType } from './props';\nimport { Confirm, ConfirmFooter, ConfirmFooterButtons, ConfirmFooterTypes, ConfirmHeader, ConfirmInput } from './styles';\n\nexport default defineComponent({\n name: 'OrConfirm',\n\n components: {\n OrOverlay,\n OrButton,\n OrInput,\n },\n\n inheritAttrs: false,\n\n props: {\n isOpen: {\n type: Boolean,\n default: false,\n },\n\n titleText: {\n type: String,\n required: false,\n default: null,\n },\n\n confirmButtonText: {\n type: String,\n default: 'Confirm',\n },\n\n autoCloseOnConfirm: {\n type: Boolean,\n default: true,\n },\n\n closeOnClickOutside: {\n type: Boolean,\n default: true,\n },\n\n cancelButtonText: {\n type: String,\n default: 'Cancel',\n },\n\n confirmType: {\n type: String as PropType<`${ConfirmType}`>,\n default: () => ConfirmType.C,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n required: false,\n default: false,\n },\n\n confirmationText: {\n type: String,\n default: undefined,\n },\n\n textConfirmationLabel: {\n type: String,\n default: undefined,\n },\n\n textConfirmationPlaceholder: {\n type: String,\n default: undefined,\n },\n },\n\n emits: [\n 'update:state',\n\n 'open',\n 'close',\n 'confirm',\n ],\n\n expose: [\n 'root',\n\n 'state',\n\n 'open',\n 'close',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n\n const confirmationInput = ref<InstanceType<typeof OrInput>>();\n const confirmationButton = ref<InstanceType<typeof OrButton>>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-confirm-v3',\n ...Confirm,\n ]);\n\n const headerStyles = computed(() => [\n ...ConfirmHeader,\n ]);\n\n const inputBoxStyles = computed(() => [\n ...ConfirmInput,\n ]);\n\n const footerStyles = computed(() => [\n ...ConfirmFooter,\n ...ConfirmFooterTypes[props.confirmType],\n ]);\n\n const buttonsStyles = computed(() => [\n ...ConfirmFooterButtons,\n ]);\n\n // State\n const { state, open, close } = usePopoverState(toRef(props, 'isOpen'), context.emit);\n const isInputActive = ref(false);\n const confirmationValue = ref('');\n\n watch(state, () => {\n confirmationValue.value = '';\n });\n\n const { escape, enter } = useMagicKeys();\n\n const isInvalid = computed(() => {\n return !!props.confirmationText && props.confirmationText !== confirmationValue.value;\n });\n\n const isConfirmationButtonDisabled = computed(() => !!props.disabled || isInvalid.value);\n\n const confirmButtonColor = computed(() =>\n props.confirmType === ConfirmType.C ? ButtonColor.Primary : ButtonColor.Danger,\n );\n\n // Methods\n function confirm(): void {\n if (!props.disabled && !isInvalid.value) {\n context.emit('confirm');\n }\n }\n\n function onInputFocus(): void {\n isInputActive.value = true;\n }\n\n function onInputBlur(): void {\n isInputActive.value = false;\n }\n\n function onConfirmClick(): void {\n confirm();\n if (props.autoCloseOnConfirm) {\n close();\n }\n }\n // Events\n watch(escape, (val) => {\n if (val) close();\n });\n\n // types here are used for fixing TS2349\n watch(confirmationInput as any, (val: InstanceType<typeof OrInput>) =>\n (val?.focus as (() => void) | undefined)?.());\n\n // types here are used for fixing TS2349\n watch(confirmationButton as any, (val: InstanceType<typeof OrButton>) => {\n if (val && !props.confirmationText) {\n const button = val.root as HTMLButtonElement | undefined;\n button?.focus();\n }\n });\n\n whenever(logicAnd(enter, isInputActive), () => confirm());\n\n // #region Click Outside\n onClickOutside(root, () => {\n props.closeOnClickOutside ? close() : undefined;\n });\n // #endregion\n\n return {\n root,\n confirmationInput,\n confirmationButton,\n confirmationValue,\n confirmButtonColor,\n isInvalid,\n isConfirmationButtonDisabled,\n state,\n isInputActive,\n escape,\n rootStyles,\n headerStyles,\n inputBoxStyles,\n footerStyles,\n buttonsStyles,\n confirm,\n onConfirmClick,\n open,\n close,\n onInputFocus,\n onInputBlur,\n };\n },\n});\n</script>\n"],"names":["ConfirmType","Confirm","ConfirmHeader","ConfirmInput","ConfirmFooter","ConfirmFooterTypes","ConfirmFooterButtons","_sfc_main","defineComponent","OrOverlay","OrButton","OrInput","props","context","root","ref","confirmationInput","confirmationButton","rootStyles","computed","headerStyles","inputBoxStyles","footerStyles","buttonsStyles","state","open","close","usePopoverState","toRef","isInputActive","confirmationValue","watch","escape","enter","useMagicKeys","isInvalid","isConfirmationButtonDisabled","confirmButtonColor","ButtonColor","confirm","onInputFocus","onInputBlur","onConfirmClick","val","_a","button","whenever","logicAnd","onClickOutside","_component_OrOverlay","_resolveComponent","_ctx","_openBlock","_createBlock","_withCtx","_createElementVNode","_mergeProps","_normalizeClass","_hoisted_1","_hoisted_2","_renderSlot","_createElementBlock","_createVNode","_component_OrInput","_cache","$event","_createCommentVNode","_component_OrButton"],"mappings":"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"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { O as X } from "./OrCheckbox-
|
|
1
|
+
import { O as X } from "./OrCheckbox-WPBzlvaV.mjs";
|
|
2
2
|
import { O as Y } from "./OrPagination-ClBRmPjj.mjs";
|
|
3
|
-
import { O as Z } from "./OrSearch-
|
|
3
|
+
import { O as Z } from "./OrSearch-OIfce3Md.mjs";
|
|
4
4
|
import { O as _ } from "./OrSkeletonArea.vue_vue_type_script_lang-jgRhbZ0X.mjs";
|
|
5
5
|
import { defineComponent as G, ref as D, computed as n, openBlock as a, createElementBlock as f, normalizeClass as u, renderSlot as s, createCommentVNode as g, resolveComponent as d, normalizeStyle as N, Fragment as H, createBlock as m, watch as x, createElementVNode as ee, createVNode as M, mergeProps as te, withCtx as p, createSlots as K, normalizeProps as oe, guardReactiveProps as ae, renderList as P, createTextVNode as Q, toDisplayString as W } from "vue";
|
|
6
6
|
import { _ as T } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
|
|
7
|
-
import { O as re } from "./OrDatePicker-
|
|
8
|
-
import { O as ne } from "./OrDateTimePicker-
|
|
9
|
-
import "./OrDateTimePicker.vue_vue_type_script_lang-
|
|
7
|
+
import { O as re } from "./OrDatePicker-C7FejdS-.mjs";
|
|
8
|
+
import { O as ne } from "./OrDateTimePicker-ZFrPrPwN.mjs";
|
|
9
|
+
import "./OrDateTimePicker.vue_vue_type_script_lang-Fl-_-QVp.mjs";
|
|
10
10
|
import "@onereach/ui-components-common/types";
|
|
11
|
-
import { O as le } from "./OrInput-
|
|
11
|
+
import { O as le } from "./OrInput-BqDsy3wR.mjs";
|
|
12
12
|
import { O as se } from "./OrRating-BhuvRBRy.mjs";
|
|
13
|
-
import { O as ie } from "./OrSelect-
|
|
14
|
-
import { O as de } from "./OrSwitch-
|
|
15
|
-
import { O as ue } from "./OrTagInput-
|
|
16
|
-
import { O as ce } from "./OrTimePicker-
|
|
13
|
+
import { O as ie } from "./OrSelect-DL28KJCH.mjs";
|
|
14
|
+
import { O as de } from "./OrSwitch-BkAgqeim.mjs";
|
|
15
|
+
import { O as ue } from "./OrTagInput-iFJhEZwO.mjs";
|
|
16
|
+
import { O as ce } from "./OrTimePicker-BO-Vxw21.mjs";
|
|
17
17
|
import { O as me } from "./OrIcon-k8cyvh-D.mjs";
|
|
18
18
|
import { useElementSize as fe } from "@vueuse/core";
|
|
19
19
|
import { O as pe } from "./OrNotification-Dz3Tr1wI.mjs";
|
|
@@ -1595,4 +1595,4 @@ export {
|
|
|
1595
1595
|
It as o,
|
|
1596
1596
|
Et as p
|
|
1597
1597
|
};
|
|
1598
|
-
//# sourceMappingURL=OrDataGrid-
|
|
1598
|
+
//# sourceMappingURL=OrDataGrid-3UnDS9Cf.mjs.map
|