@onereach/ui-components 23.2.4-beta.5592.0 → 23.2.4-beta.5595.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-ds-VkL_e.mjs → OrAutocomplete-B5PEcSLw.mjs} +3 -3
- package/dist/esm/{OrAutocomplete-ds-VkL_e.mjs.map → OrAutocomplete-B5PEcSLw.mjs.map} +1 -1
- package/dist/esm/OrAvatar-XcP_rrT3.mjs.map +1 -1
- package/dist/esm/OrBottomSheet-CJxmY84p.mjs.map +1 -1
- package/dist/esm/OrButton-C_hXddAf.mjs.map +1 -1
- package/dist/esm/OrButtonGroup-Cd6tpyP3.mjs.map +1 -1
- package/dist/esm/OrCard-7awJu_df.mjs.map +1 -1
- package/dist/esm/OrCardCollection-CoE9Umh7.mjs.map +1 -1
- package/dist/esm/{OrCheckbox-CI-mxgEp.mjs → OrCheckbox-Ztan-O2t.mjs} +31 -31
- package/dist/esm/OrCheckbox-Ztan-O2t.mjs.map +1 -0
- package/dist/esm/{OrCheckboxGroup-BgAvcSVe.mjs → OrCheckboxGroup-CXjyqAjp.mjs} +2 -2
- package/dist/esm/{OrCheckboxGroup-BgAvcSVe.mjs.map → OrCheckboxGroup-CXjyqAjp.mjs.map} +1 -1
- package/dist/esm/{OrCheckboxTree-DvIftMpp.mjs → OrCheckboxTree-BKNPrNAq.mjs} +16 -16
- package/dist/esm/OrCheckboxTree-BKNPrNAq.mjs.map +1 -0
- package/dist/esm/{OrCode-CI1Corli.mjs → OrCode-Bo17z-R3.mjs} +2 -3
- package/dist/esm/{OrCode-CI1Corli.mjs.map → OrCode-Bo17z-R3.mjs.map} +1 -1
- package/dist/esm/OrCombinedInput-CLIIindo.mjs.map +1 -1
- package/dist/esm/OrConfirm-BKXhawH9.mjs.map +1 -1
- package/dist/esm/OrContextMenu-CrpiM2Jq.mjs.map +1 -1
- package/dist/esm/{OrDataGrid-BML2-j9s.mjs → OrDataGrid-CFIZ_U4b.mjs} +4 -4
- package/dist/esm/{OrDataGrid-BML2-j9s.mjs.map → OrDataGrid-CFIZ_U4b.mjs.map} +1 -1
- package/dist/esm/OrDateFormat-CnNnn2qx.mjs.map +1 -1
- package/dist/esm/OrDatePicker-B8f7IXss.mjs.map +1 -1
- package/dist/esm/OrDateRangePicker-Cs59h-1i.mjs.map +1 -1
- package/dist/esm/OrDateTimeFormat-B5lV7PfA.mjs.map +1 -1
- package/dist/esm/OrDateTimePicker-BjUIRfEc.mjs.map +1 -1
- package/dist/esm/OrDateTimePicker.vue_vue_type_script_lang-BPE3fOtA.mjs.map +1 -1
- package/dist/esm/OrDrawer-BR0r7GeI.mjs.map +1 -1
- package/dist/esm/{OrDropArea-DA9aXi-a.mjs → OrDropArea-CtaQeTMw.mjs} +12 -12
- package/dist/esm/OrDropArea-CtaQeTMw.mjs.map +1 -0
- package/dist/esm/OrEditorTabs-psJUG0D3.mjs.map +1 -1
- package/dist/esm/OrEmptyState-C6viT2WQ.mjs.map +1 -1
- package/dist/esm/OrError-B5ihH6-3.mjs.map +1 -1
- package/dist/esm/OrErrorTag-Bo_gxhzB.mjs.map +1 -1
- package/dist/esm/OrExpansionPanel-BNGPdEnp.mjs.map +1 -1
- package/dist/esm/OrFab-Cbg9unNc.mjs.map +1 -1
- package/dist/esm/OrFilter-C8d3OmGK.mjs.map +1 -1
- package/dist/esm/OrFilterPopover-C8lXb-hJ.mjs.map +1 -1
- package/dist/esm/OrFilterTrigger-zfcgyC7C.mjs.map +1 -1
- package/dist/esm/OrFormGroup-BFAjTfM9.mjs.map +1 -1
- package/dist/esm/OrHint-NvbZyURY.mjs.map +1 -1
- package/dist/esm/OrIcon-k8cyvh-D.mjs.map +1 -1
- package/dist/esm/OrIconButton-BlHCLpeW.mjs.map +1 -1
- package/dist/esm/OrIndicator-CCrOseW7.mjs.map +1 -1
- package/dist/esm/OrInlineInput-1WPe9sXl.mjs.map +1 -1
- package/dist/esm/OrInlineInputBox-M_zTO43m.mjs.map +1 -1
- package/dist/esm/OrInlineTextarea-COQceBb0.mjs.map +1 -1
- package/dist/esm/OrInput-DBcNZlkx.mjs.map +1 -1
- package/dist/esm/OrInputBox-6ciokFdU.mjs.map +1 -1
- package/dist/esm/OrInputBox.vue_vue_type_script_lang-q2L7rmth.mjs.map +1 -1
- package/dist/esm/OrLabel-DssheqEn.mjs.map +1 -1
- package/dist/esm/OrLink-Vl_H8MMg.mjs.map +1 -1
- package/dist/esm/{OrList-CLHvgZc7.mjs → OrList-CoDesOam.mjs} +49 -49
- package/dist/esm/OrList-CoDesOam.mjs.map +1 -0
- package/dist/esm/OrLoader-2SaTMxmZ.mjs.map +1 -1
- package/dist/esm/OrMenu-CJT4Snay.mjs.map +1 -1
- package/dist/esm/OrMenuItem-BHRMA0L1.mjs.map +1 -1
- package/dist/esm/OrModal-CQhwUYFk.mjs.map +1 -1
- package/dist/esm/OrNotification-Dz3Tr1wI.mjs.map +1 -1
- package/dist/esm/OrOverlay-BjrghiC-.mjs.map +1 -1
- package/dist/esm/OrPagination-DIacMkVe.mjs.map +1 -1
- package/dist/esm/OrPopover-DbygLPtT.mjs.map +1 -1
- package/dist/esm/OrProgress-cgGfaP0m.mjs.map +1 -1
- package/dist/esm/OrRadio-CJLJrxIS.mjs.map +1 -1
- package/dist/esm/OrRadioGroup-_n_7vdJU.mjs.map +1 -1
- package/dist/esm/OrRangeSlider-Dim4sU4v.mjs.map +1 -1
- package/dist/esm/OrRating-BhuvRBRy.mjs.map +1 -1
- package/dist/esm/OrResizeablePanel-DuGgwmhB.mjs.map +1 -1
- package/dist/esm/{OrRichTextEditor-YYtRuKat.mjs → OrRichTextEditor-DvkFn8He.mjs} +5 -9
- package/dist/esm/{OrRichTextEditor-YYtRuKat.mjs.map → OrRichTextEditor-DvkFn8He.mjs.map} +1 -1
- package/dist/esm/OrRichTooltip-D8vv5Btb.mjs.map +1 -1
- package/dist/esm/OrSearch-1OFONLHk.mjs.map +1 -1
- package/dist/esm/OrSegmentedControl-D5QoWe-N.mjs.map +1 -1
- package/dist/esm/{OrSelect-Cnklh9us.mjs → OrSelect-DmNRdiTd.mjs} +4 -5
- package/dist/esm/{OrSelect-Cnklh9us.mjs.map → OrSelect-DmNRdiTd.mjs.map} +1 -1
- package/dist/esm/OrSkeletonRect-D9sTxEc-.mjs.map +1 -1
- package/dist/esm/OrSkeletonText-WYaAaljl.mjs.map +1 -1
- package/dist/esm/OrSlider-Cec0WpUQ.mjs.map +1 -1
- package/dist/esm/OrSorting-DCAarSF1.mjs.map +1 -1
- package/dist/esm/OrStatus-D4QIuE7R.mjs.map +1 -1
- package/dist/esm/OrSwitch-Cmi57-QB.mjs.map +1 -1
- package/dist/esm/OrTab-BdtxL_PY.mjs.map +1 -1
- package/dist/esm/OrTabs-BUXLSz8o.mjs.map +1 -1
- package/dist/esm/OrTag-Bixe0EQq.mjs.map +1 -1
- package/dist/esm/{OrTagInput-CjYmyfIU.mjs → OrTagInput-BkFDvGIk.mjs} +2 -2
- package/dist/esm/{OrTagInput-CjYmyfIU.mjs.map → OrTagInput-BkFDvGIk.mjs.map} +1 -1
- package/dist/esm/{OrTags-CS0bcLtx.mjs → OrTags-gPpVnqZT.mjs} +10 -10
- package/dist/esm/{OrTags-CS0bcLtx.mjs.map → OrTags-gPpVnqZT.mjs.map} +1 -1
- package/dist/esm/OrTeleport.vue3-C9kW_8PS.mjs.map +1 -1
- package/dist/esm/OrText-3zAJU5xf.mjs.map +1 -1
- package/dist/esm/OrTextarea-VEuq5855.mjs.map +1 -1
- package/dist/esm/OrTimeFormat-mxL8_Rx9.mjs.map +1 -1
- package/dist/esm/OrTimePicker-CQJesQKa.mjs.map +1 -1
- package/dist/esm/OrTimeRangePicker-DGvdvq4c.mjs.map +1 -1
- package/dist/esm/OrTooltip-DqwjoE82.mjs.map +1 -1
- package/dist/esm/{OrTree-By3MLZUL.mjs → OrTree-Di2v-U70.mjs} +75 -75
- package/dist/esm/{OrTree-By3MLZUL.mjs.map → OrTree-Di2v-U70.mjs.map} +1 -1
- package/dist/esm/components/index.mjs +14 -14
- package/dist/esm/components/or-autocomplete-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-data-grid-v3/index.mjs +1 -1
- package/dist/esm/components/or-drop-area-v3/index.mjs +1 -1
- package/dist/esm/components/or-list-v3/index.mjs +1 -1
- package/dist/esm/components/or-rich-text-editor-v3/index.mjs +1 -1
- package/dist/esm/components/or-select-v3/index.mjs +1 -1
- package/dist/esm/components/or-tag-input-v3/index.mjs +1 -1
- package/dist/esm/components/or-tags-v3/index.mjs +1 -1
- package/dist/esm/components/or-toast-v3/index.mjs +1 -1
- package/dist/esm/components/or-tree-v3/index.mjs +1 -1
- package/dist/esm/index.mjs +14 -14
- package/dist/esm/props-BxqD8LGb.mjs.map +1 -1
- package/dist/esm/{types-BwxhurSS.mjs → types-CBo5_aI5.mjs} +2 -2
- package/dist/esm/{types-BwxhurSS.mjs.map → types-CBo5_aI5.mjs.map} +1 -1
- package/dist/types/components/or-autocomplete-v3/OrAutocomplete.vue.d.ts +8147 -11048
- package/dist/types/components/or-avatar-v3/OrAvatar.vue.d.ts +1 -1
- package/dist/types/components/or-bottom-sheet-v3/OrBottomSheet.vue.d.ts +2 -2
- package/dist/types/components/or-button-group-v3/OrButtonGroup.vue.d.ts +1 -1
- package/dist/types/components/or-button-v3/OrButton.vue.d.ts +1 -1
- package/dist/types/components/or-card-collection-v3/OrCardCollection.vue.d.ts +1 -1
- package/dist/types/components/or-card-collection-v3/partials/OrCardCollectionView.vue3.vue.d.ts +1 -1
- package/dist/types/components/or-card-v3/OrCard.vue.d.ts +1 -1
- package/dist/types/components/or-checkbox-group-v3/OrCheckboxGroup.vue.d.ts +2 -2
- package/dist/types/components/or-checkbox-tree-v3/OrCheckboxTree.vue.d.ts +4 -4
- package/dist/types/components/or-checkbox-v3/OrCheckbox.vue.d.ts +7 -7
- package/dist/types/components/or-code-v3/OrCode.vue.d.ts +254 -404
- package/dist/types/components/or-code-v3/partials/OrCodeControl.vue.d.ts +1 -1
- package/dist/types/components/or-combined-input-v3/OrCombinedInput.vue.d.ts +1 -1
- package/dist/types/components/or-confirm-v3/OrConfirm.vue.d.ts +322 -378
- package/dist/types/components/or-context-menu-v3/OrContextMenu.vue.d.ts +2 -2
- package/dist/types/components/or-data-grid-v3/OrDataGrid.vue.d.ts +67 -148
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-footer/OrDataGridFooter.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-header/OrDataGridHeader.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-notification/OrDataGridNotification.vue.d.ts +45 -99
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table/OrDataGridTable.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-content/OrDataGridTableContent.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-content-cell/OrDataGridTableContentCell.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-content-row/OrDataGridTableContentRow.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-extra-row/OrDataGridTableExtraRow.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-footer/OrDataGridTableFooter.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-footer-cell/OrDataGridTableFooterCell.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-footer-row/OrDataGridTableFooterRow.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-header/OrDataGridTableHeader.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-header-cell/OrDataGridTableHeaderCell.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-header-row/OrDataGridTableHeaderRow.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-placeholder/OrDataGridTablePlaceholder.vue.d.ts +1 -1
- package/dist/types/components/or-data-grid-v3/partials/or-data-grid-toolbar/OrDataGridToolbar.vue.d.ts +1 -1
- package/dist/types/components/or-date-format-v3/OrDateFormat.vue.d.ts +3 -3
- package/dist/types/components/or-date-picker-v3/OrDatePicker.vue.d.ts +512 -885
- package/dist/types/components/or-date-range-picker-v3/OrDateRangePicker.vue.d.ts +518 -1201
- package/dist/types/components/or-date-time-format-v3/OrDateTimeFormat.vue.d.ts +4 -4
- package/dist/types/components/or-date-time-picker-v3/OrDateTimePicker.vue.d.ts +1006 -1580
- package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-date-control/OrDateTimePickerDateControl.vue.d.ts +3 -3
- package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-date-select/OrDateTimePickerDateSelect.vue.d.ts +2 -2
- package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-mobile-control/OrDateTimePickerMobileControl.vue.d.ts +1 -1
- package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue.d.ts +842 -1247
- package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-popover-footer/OrDateTimePickerPopoverFooter.vue.d.ts +1 -1
- package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-popover-header/OrDateTimePickerPopoverHeader.vue.d.ts +1 -1
- package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-time-control/OrDateTimePickerTimeControl.vue.d.ts +3 -3
- package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue.d.ts +205 -293
- package/dist/types/components/or-drawer-v3/OrDrawer.vue.d.ts +2 -2
- package/dist/types/components/or-drop-area-v3/OrDropArea.vue.d.ts +4 -4
- package/dist/types/components/or-editor-tabs-v3/OrEditorTabs.vue.d.ts +55 -115
- package/dist/types/components/or-editor-tabs-v3/partials/or-editor-tabs-item/OrEditorTabsItem.vue.d.ts +1 -1
- package/dist/types/components/or-empty-state-v3/OrEmptyState.vue.d.ts +1 -1
- package/dist/types/components/or-error-tag-v3/OrErrorTag.vue.d.ts +1 -1
- package/dist/types/components/or-error-v3/OrError.vue.d.ts +1 -1
- package/dist/types/components/or-expansion-panel-v3/OrExpansionPanel.vue.d.ts +2 -2
- package/dist/types/components/or-fab-v3/OrFab.vue.d.ts +47 -99
- package/dist/types/components/or-filter-popover-v3/OrFilterPopover.vue.d.ts +4 -4
- package/dist/types/components/or-filter-trigger-v3/OrFilterTrigger.vue.d.ts +1 -1
- package/dist/types/components/or-filter-v3/OrFilter.vue.d.ts +480 -583
- package/dist/types/components/or-form-group-v3/OrFormGroup.vue.d.ts +1 -1
- package/dist/types/components/or-hint-v3/OrHint.vue.d.ts +1 -1
- package/dist/types/components/or-icon-button-v3/OrIconButton.vue.d.ts +353 -437
- package/dist/types/components/or-icon-v3/OrIcon.vue.d.ts +1 -1
- package/dist/types/components/or-indicator-v3/OrIndicator.vue.d.ts +70 -148
- package/dist/types/components/or-inline-input-box-v3/OrInlineInputBox.vue.d.ts +1 -1
- package/dist/types/components/or-inline-input-v3/OrInlineInput.vue.d.ts +16 -16
- package/dist/types/components/or-inline-textarea-v3/OrInlineTextarea.vue.d.ts +16 -16
- package/dist/types/components/or-input-box-v3/OrInputBox.vue.d.ts +1 -1
- package/dist/types/components/or-input-box-v3/partials/or-input-box-addon/OrInputBoxAddon.vue.d.ts +1 -1
- package/dist/types/components/or-input-v3/OrInput.vue.d.ts +16 -16
- package/dist/types/components/or-label-v3/OrLabel.vue.d.ts +1 -1
- package/dist/types/components/or-link-v3/OrLink.vue.d.ts +1 -1
- package/dist/types/components/or-list-v3/OrList.vue.d.ts +4 -4
- package/dist/types/components/or-list-v3/partials/or-list-item/OrListItem.vue.d.ts +1 -1
- package/dist/types/components/or-loader-v3/OrLoader.vue.d.ts +1 -1
- package/dist/types/components/or-menu-item-v3/OrMenuItem.vue.d.ts +180 -298
- package/dist/types/components/or-menu-v3/OrMenu.vue.d.ts +2 -2
- package/dist/types/components/or-modal-v3/OrModal.vue.d.ts +2 -2
- package/dist/types/components/or-modal-v3/partials/or-modal-content/OrModalContent.vue.d.ts +1 -1
- package/dist/types/components/or-modal-v3/partials/or-modal-footer/OrModalFooter.vue.d.ts +1 -1
- package/dist/types/components/or-modal-v3/partials/or-modal-header/OrModalHeader.vue.d.ts +2 -2
- package/dist/types/components/or-notification-v3/OrNotification.vue.d.ts +1 -1
- package/dist/types/components/or-overlay-v3/OrOverlay.vue.d.ts +1 -1
- package/dist/types/components/or-pagination-v3/OrPagination.vue.d.ts +370 -562
- package/dist/types/components/or-popover-v3/OrPopover.vue.d.ts +144 -273
- package/dist/types/components/or-progress-v3/OrProgress.vue.d.ts +1 -1
- package/dist/types/components/or-radio-group-v3/OrRadioGroup.vue.d.ts +2 -2
- package/dist/types/components/or-radio-v3/OrRadio.vue.d.ts +5 -5
- package/dist/types/components/or-range-slider-v3/OrRangeSlider.vue.d.ts +170 -164
- package/dist/types/components/or-rating-v3/OrRating.vue.d.ts +5 -5
- package/dist/types/components/or-resizeable-panel-v3/OrResizeablePanel.vue.d.ts +2 -2
- package/dist/types/components/or-rich-text-editor-v3/OrRichTextEditor.vue.d.ts +2148 -2667
- package/dist/types/components/or-rich-tooltip-v3/OrRichTooltip.vue.d.ts +433 -634
- package/dist/types/components/or-search-v3/OrSearch.vue.d.ts +232 -244
- package/dist/types/components/or-segmented-control-v3/OrSegmentedControl.vue.d.ts +2 -2
- package/dist/types/components/or-segmented-control-v3/partials/or-segmented-control-item/OrSegmentedControlItem.vue.d.ts +1 -1
- package/dist/types/components/or-select-v3/OrSelect.vue.d.ts +4560 -6401
- package/dist/types/components/or-select-v3/partials/or-select-control-input/OrSelectControlInput.vue.d.ts +2 -2
- package/dist/types/components/or-select-v3/partials/or-select-multiple-control/OrSelectMultipleControl.vue.d.ts +1519 -2179
- package/dist/types/components/or-select-v3/partials/or-select-placeholder/OrSelectPlaceholder.vue.d.ts +1 -1
- package/dist/types/components/or-select-v3/partials/or-select-single-control/OrSelectSingleControl.vue.d.ts +183 -279
- package/dist/types/components/or-sidebar-v3/OrSidebar.vue.d.ts +2 -2
- package/dist/types/components/or-skeleton-v3/or-skeleton-circle-v3/OrSkeletonCircle.vue.d.ts +1 -1
- package/dist/types/components/or-skeleton-v3/or-skeleton-rect-v3/OrSkeletonRect.vue.d.ts +1 -1
- package/dist/types/components/or-skeleton-v3/or-skeleton-text-v3/OrSkeletonText.vue.d.ts +1 -1
- package/dist/types/components/or-slider-v3/OrSlider.vue.d.ts +170 -164
- package/dist/types/components/or-sorting-v3/OrSorting.vue.d.ts +4 -4
- package/dist/types/components/or-status-v3/OrStatus.vue.d.ts +1 -1
- package/dist/types/components/or-switch-v3/OrSwitch.vue.d.ts +6 -6
- package/dist/types/components/or-tab-v3/OrTab.vue.d.ts +1 -1
- package/dist/types/components/or-tabs-v3/OrTabs.vue.d.ts +132 -244
- package/dist/types/components/or-tag-input-v3/OrTagInput.vue.d.ts +1497 -2148
- package/dist/types/components/or-tag-v3/OrTag.vue.d.ts +1 -1
- package/dist/types/components/or-tags-v3/OrTags.vue.d.ts +610 -921
- package/dist/types/components/or-teleport-v3/OrTeleport.vue3.vue.d.ts +1 -1
- package/dist/types/components/or-text-v3/OrText.vue.d.ts +1 -1
- package/dist/types/components/or-textarea-v3/OrTextarea.vue.d.ts +15 -15
- package/dist/types/components/or-time-format-v3/OrTimeFormat.vue.d.ts +3 -3
- package/dist/types/components/or-time-picker-v3/OrTimePicker.vue.d.ts +512 -885
- package/dist/types/components/or-time-range-picker-v3/OrTimeRangePicker.vue.d.ts +517 -1138
- package/dist/types/components/or-toast-v3/OrToast.vue.d.ts +1 -1
- package/dist/types/components/or-toast-v3/or-toast-container-v3/OrToastContainer.vue.d.ts +1 -1
- package/dist/types/components/or-tooltip-v3/OrTooltip.vue.d.ts +2 -2
- package/dist/types/components/or-tree-v3/OrTree.vue.d.ts +1 -1
- package/dist/types/components/or-tree-v3/partials/or-tree-node/OrTreeNode.vue.d.ts +1 -1
- package/package.json +8 -8
- package/dist/esm/OrCheckbox-CI-mxgEp.mjs.map +0 -1
- package/dist/esm/OrCheckboxTree-DvIftMpp.mjs.map +0 -1
- package/dist/esm/OrDropArea-DA9aXi-a.mjs.map +0 -1
- package/dist/esm/OrList-CLHvgZc7.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrSelect-Cnklh9us.mjs","sources":["../../../components/or-select-v3/src/partials/or-select-control-input/styles.ts","../../../components/or-select-v3/src/partials/or-select-control-input/OrSelectControlInput.vue","../../../components/or-select-v3/src/partials/or-select-placeholder/styles.ts","../../../components/or-select-v3/src/partials/or-select-placeholder/OrSelectPlaceholder.vue","../../../components/or-select-v3/src/partials/or-select-multiple-control/styles.ts","../../../components/or-select-v3/src/partials/or-select-multiple-control/OrSelectMultipleControl.vue","../../../components/or-select-v3/src/partials/or-select-single-control/styles.ts","../../../components/or-select-v3/src/partials/or-select-single-control/OrSelectSingleControl.vue","../../../components/or-select-v3/src/styles.ts","../../../components/or-select-v3/src/OrSelect.vue"],"sourcesContent":["export const SelectControlInput: string[] = [\n // Base\n 'appearance-none',\n\n // Typography\n 'typography-inherit',\n\n // Theme (placeholder)\n 'placeholder:theme-foreground-outline',\n 'dark:placeholder:theme-foreground-outline-dark',\n 'theme-background-transparent',\n 'outline-none',\n];\n","<template>\n <input\n :ref=\"'root'\"\n v-model=\"proxyModelValue\"\n :style=\"controlInlineStyles\"\n :class=\"controlStyles\"\n :type=\"'text'\"\n :placeholder=\"placeholder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :autocomplete=\"'off'\"\n :minlength=\"undefined\"\n :maxlength=\"undefined\"\n >\n</template>\n\n<script lang=\"ts\">\nimport { useFocus } from '@vueuse/core';\nimport { computed, defineComponent, ref, toRefs } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { SelectControlInput } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectControlInput',\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: '',\n },\n\n placeholder: {\n type: String,\n default: '',\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'focused',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLInputElement>();\n\n // Props\n const { placeholder, modelValue } = toRefs(props);\n\n // State\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n const { focused } = useFocus(root);\n\n // Styles\n const controlStyles = computed(() => [\n ...SelectControlInput,\n ]);\n\n const controlInlineStyles = computed(() => {\n const chars = proxyModelValue.value.length > 0\n ? proxyModelValue.value.length\n : placeholder.value?.length;\n\n return {\n width: `${Math.max(chars + 1 || 0, 2)}ch`,\n };\n });\n\n // Methods\n function focus() {\n focused.value = true;\n }\n\n return {\n root,\n proxyModelValue,\n controlStyles,\n controlInlineStyles,\n focused,\n focus,\n };\n },\n});\n</script>\n","export const SelectPlaceholder: string[] = [\n // Interactivity\n 'interactivity-default',\n\n // Typography\n 'typography-inherit truncate',\n\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :disabled=\"disabled\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { SelectPlaceholder } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectPlaceholder',\n\n props: {\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup() {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-select-placeholder-v3',\n ...SelectPlaceholder,\n ]);\n\n return {\n root,\n rootStyles,\n };\n },\n});\n</script>\n","export const SelectMultipleControlRoot: string[] = [\n // Layout\n 'layout-row',\n 'w-full',\n];\n\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrTags\n v-show=\"!isEmpty || enableSearch\"\n :ref=\"'tags'\"\n :items=\"selection\"\n class=\"grow\"\n :disabled=\"disabled\"\n :tag-props=\"{\n variant: readonly || disabled ? 'tag' : 'reset',\n disabled: disabled\n }\"\n :overflow=\"overflow\"\n @reset=\"$emit('reset', $event)\"\n >\n <template v-slot:tag=\"{item}\">\n <slot\n name=\"tag\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </template>\n\n <template\n v-if=\"enableSearch\"\n v-slot:tail\n >\n <div class=\"inline-flex w-fit max-w-full\">\n <OrSelectControlInput\n :ref=\"'searchControl'\"\n v-model=\"searchModelValue\"\n :placeholder=\"isEmpty ? placeholder: ''\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n />\n </div>\n </template>\n </OrTags>\n\n <template v-if=\"isEmpty && !enableSearch\">\n <OrSelectPlaceholder :disabled=\"disabled\">\n {{ placeholder }}\n </OrSelectPlaceholder>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, ref, toRefs, watch } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { isEqual, isNil, toArray } from '@onereach/ui-components-common/utils';\nimport { OrTagsV3 as OrTags, Tag, TagsOverflow } from '@onereach/ui-components.or-tags-v3';\nimport { SelectItem, SelectModelValue } from '../../types';\nimport { OrSelectControlInput } from '../or-select-control-input';\nimport OrSelectPlaceholder from '../or-select-placeholder/OrSelectPlaceholder.vue';\nimport { SelectMultipleControlRoot } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectMultipleControl',\n\n components: {\n OrSelectPlaceholder,\n OrSelectControlInput,\n OrTags,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: '',\n },\n\n model: {\n type: undefined as unknown as PropType<SelectModelValue>,\n default: () => [],\n },\n\n options: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n overflow: {\n type: String as PropType<`${TagsOverflow}`>,\n default: () => TagsOverflow.Hidden,\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\n type: Boolean,\n default: false,\n },\n\n isOpen: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n 'reset',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'focused',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLDivElement>();\n\n const searchControl = ref<InstanceType<typeof OrSelectControlInput>>();\n const tags = ref<InstanceType<typeof OrTags>>();\n\n // Props\n const { modelValue, model, options, overflow } = toRefs(props);\n\n // State\n const searchModelValue = useProxyModelValue(modelValue, context.emit);\n\n const focused = computed(() => {\n return searchControl.value?.focused;\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-select-multiple-control-v3',\n ...SelectMultipleControlRoot,\n ]);\n\n // Computed\n const value = computed(() => isNil(model.value) ? [] : toArray(model.value));\n const isEmpty = computed(() => value.value.length === 0);\n\n const selection = computed(() => {\n if (model.value === undefined || model.value === null) {\n return [];\n }\n\n return value.value\n .map((value) => options.value.find((option) => isEqual(option.value, value)))\n .filter<SelectItem>((value): value is SelectItem => !!value)\n .map((option) => ({\n value: option.value,\n label: option.label,\n tagProps: option.disabled && { disabled: option.disabled },\n } as Tag));\n });\n\n watch(selection, (items, prevItems) => {\n if (items.length != prevItems.length && overflow.value === TagsOverflow.Scroll && tags.value) {\n (tags.value.scrollToEnd as () => void)();\n }\n });\n\n // Methods\n function focus(): void {\n if (searchControl.value) {\n (searchControl.value.focus as () => void)();\n }\n }\n\n return {\n root,\n tags,\n rootStyles,\n searchControl,\n searchModelValue,\n isEmpty,\n selection,\n value,\n focus,\n focused,\n };\n },\n});\n</script>\n","export const SelectSingleControlInput: string[] = [\n // Layout\n 'w-full',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"isOpen && enableSearch\">\n <OrSelectControlInput\n :ref=\"'searchControl'\"\n v-model=\"searchModelValue\"\n :placeholder=\"isEmptyModelValue ? placeholder : selectionLabel\"\n />\n </template>\n\n <template v-else>\n <template v-if=\"isEmptyModelValue\">\n <OrSelectPlaceholder :disabled=\"disabled\">\n {{ placeholder }}\n </OrSelectPlaceholder>\n </template>\n\n <template v-else>\n <div class=\"flex\">\n <div\n ref=\"selectionLabelRef\"\n class=\"truncate w-full\"\n @mouseenter=\"checkTooltip\"\n @mouseleave=\"closeTooltip\"\n >\n {{ selectionLabel }}\n </div>\n <OrTooltip\n ref=\"tooltipRef\"\n :content=\"selectionLabel\"\n :trigger=\"selectionLabelRef\"\n />\n </div>\n </template>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, ref, toRefs, watch } from 'vue';\n\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { isEmpty, isEqual } from '@onereach/ui-components-common/utils';\nimport { SelectItem, SelectModelValue } from '../../types';\nimport OrSelectControlInput from '../or-select-control-input/OrSelectControlInput.vue';\nimport OrSelectPlaceholder from '../or-select-placeholder/OrSelectPlaceholder.vue';\nimport { OrTooltipV3 as OrTooltip } from '@onereach/ui-components.or-tooltip-v3';\nimport { SelectSingleControlInput } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectSingleControl',\n\n components: {\n OrSelectPlaceholder,\n OrSelectControlInput,\n OrTooltip,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: '',\n },\n\n model: {\n type: undefined as unknown as PropType<SelectModelValue>,\n default: undefined,\n },\n\n options: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\n type: Boolean,\n default: false,\n },\n\n isOpen: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'focused',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLDivElement>();\n const searchControl = ref<InstanceType<typeof OrSelectControlInput>>();\n const selectionLabelRef = ref<HTMLDialogElement>();\n const tooltipRef = ref<InstanceType<typeof OrTooltip>>();\n\n // Props\n const { modelValue, model, options } = toRefs(props);\n\n // State\n const searchModelValue = useProxyModelValue(modelValue, context.emit);\n\n const isEmptyModelValue = computed(() => {\n return isEmpty(model.value);\n });\n\n const selection = computed(() => {\n return options.value.find((option) => isEqual(option.value, model.value));\n });\n\n const selectionLabel = computed(() => {\n return selection.value?.label;\n });\n\n watch(\n () => props.isOpen,\n () => {\n tooltipRef.value?.close();\n },\n );\n\n const focused = computed(() => {\n return searchControl.value?.focused;\n });\n\n const openTooltip = () => {\n if (tooltipRef.value) tooltipRef.value.open();\n };\n\n const closeTooltip = () => {\n if (tooltipRef.value) tooltipRef.value.close();\n };\n\n // Styles\n const rootStyles = computed(() => ([\n 'or-select-single-control-v3',\n ...SelectSingleControlInput,\n ]));\n\n // Methods\n function focus() {\n if (searchControl.value) {\n (searchControl.value.focus as () => void)();\n }\n }\n\n function checkTooltip() {\n if (!selectionLabelRef.value) return; // to prevent fro TS error; normally ref will always be available here since the method is a mouse event callback\n const isContentTruncated = selectionLabelRef.value.scrollWidth > selectionLabelRef.value.clientWidth;\n if (isContentTruncated) openTooltip();\n }\n\n return {\n root,\n rootStyles,\n searchControl,\n searchModelValue,\n isEmptyModelValue,\n selection,\n selectionLabel,\n focus,\n focused,\n selectionLabelRef,\n tooltipRef,\n openTooltip,\n closeTooltip,\n checkTooltip,\n };\n },\n});\n</script>\n","export const Select: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const SelectControl: string[] = [\n // Layout\n 'layout-row',\n 'w-full',\n\n // Layout (empty)\n 'empty:hidden',\n\n // Overflow\n 'overflow-hidden',\n\n // Spacing\n 'gap-xs',\n\n // Typography\n 'typography-inherit',\n];\n\nexport const SelectSearchControl: string[] = [\n // Spacing\n '!mx-lg md:!-mx-sm+',\n '!my-sm md:!my-0',\n];\n\nexport const SelectDropdown: string[] = [\n // Overflow\n 'overflow-y-auto',\n\n // Box\n 'max-h-[172px]', // equals 5 items\n\n // Theme\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-border-outline border-1',\n 'dark:theme-border-outline-dark',\n];\n\nexport const SelectDropdownDefault: string[] = [\n // Shape\n 'rounded-b-md',\n\n // Theme\n '!border-t-0',\n];\n\nexport const SelectDropdownFlipped: string[] = [\n // Shape\n 'rounded-t-md',\n\n // Theme\n '!border-b-0',\n];\n\nexport const SelectDropdownItem: string[] = [\n // Typography\n '!typography-body-2-regular',\n\n // Padding Override todo: check design\n 'md:!pt-[6px] md:!pb-[7px]',\n\n // Typography (selected)\n 'selected:!typography-body-2-semibold',\n\n // Theme\n '!theme-foreground-default dark:!theme-foreground-default-dark',\n];\n\nexport const SelectDropdownItemPaddingSingle = [\n // Padding Override\n '!py-md md:!pt-[6px] md:!pb-[7px]',\n];\n\nexport const SelectDropdownItemPaddingMultiple = [\n // Padding Override\n 'md:!pt-[6px] md:!pb-[7px]',\n];\n\nexport const SelectDropdownItemPaddingMultipleMobile = [\n // Padding Override\n 'px-md',\n];\n\nexport const SelectNoSearchResults: string[] = [\n // Layout\n 'layout-row justify-center',\n\n // Spacing\n 'px-md',\n 'py-md',\n\n // Typography\n 'typography-caption-regular',\n\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n];\n\nexport const SelectLoader: string[] = [\n // Layout\n 'w-fit',\n\n // Typography\n 'typography-body-2-regular',\n\n // Theme\n 'text-outline dark:text-outline-dark',\n];\n\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"$slots.label || $slots.addon || label\">\n <OrLabel\n :control-id=\"controlId\"\n :variant=\"'input'\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n </template>\n\n <OrInputBox\n :ref=\"'inputBox'\"\n v-dropdown-open=\"toggle\"\n v-dropdown-close=\"close\"\n :class=\"[popoverState === 'open' && (popover && popover.isFlipped ? 'rounded-t-0' : 'rounded-b-0'), { 'outline-none': variant === 'embedded' }]\"\n :variant=\"variant\"\n :size=\"size\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :force-state=\"isOpen ? 'focus-within': undefined\"\n :tabindex=\"!disabled ? 0 : null\"\n >\n <div\n :id=\"controlId\"\n :ref=\"'control'\"\n :class=\"controlStyles\"\n :disabled=\"disabled\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n >\n <slot\n name=\"valueTemplate\"\n :model=\"proxyModelValue\"\n >\n <template v-if=\"multiple\">\n <OrSelectMultipleControl\n :ref=\"'multipleControl'\"\n v-model=\"searchText\"\n :model=\"proxyModelValue\"\n :options=\"options\"\n :overflow=\"overflow\"\n :placeholder=\"placeholder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :enable-search=\"enableSearch\"\n :is-open=\"popoverState === 'open'\"\n @reset=\"deselectOption($event)\"\n >\n <template v-slot:tag=\"{item}\">\n <slot\n name=\"tag\"\n :item=\"item\"\n />\n </template>\n </OrSelectMultipleControl>\n </template>\n\n <template v-else>\n <OrSelectSingleControl\n :ref=\"'singleControl'\"\n v-model=\"searchText\"\n :model=\"proxyModelValue\"\n :options=\"options\"\n :placeholder=\"placeholder\"\n :disabled=\"disabled\"\n :enable-search=\"enableSearch\"\n :is-open=\"popoverState === 'open'\"\n />\n </template>\n </slot>\n </div>\n\n <div :class=\"['layout-inline-row', 'gap-sm']\">\n <template v-if=\"showClear\">\n <OrIconButton\n :icon=\"'close'\"\n :color=\"'inherit'\"\n :additional-styles=\"['!text-outline', '!dark:text-outline-dark']\"\n :disabled=\"readonly || disabled\"\n @click.stop=\"$emit('update:modelValue', multiple ? [] : undefined)\"\n />\n </template>\n\n <OrIcon\n v-show=\"!(popoverState === 'open' && enableSearch && enableClear && !isEmptyModelValue)\"\n :icon=\"popoverState === 'open' ? enableSearch ? 'search' : 'arrow_drop_up' : 'arrow_drop_down'\"\n :class=\" popoverState === 'open' && enableSearch ? '!text-outline !dark:text-outline-dark' : ''\"\n :variant=\"'outlined'\"\n />\n </div>\n\n <OrPopover\n :ref=\"'popover'\"\n :variant=\"'auto'\"\n :trigger=\"anchor || inputBoxRoot\"\n :placement=\"'bottom'\"\n :offset=\"0\"\n :full-width=\"true\"\n :disable-default-styles=\"true\"\n >\n <div :class=\"dropdownStyles\">\n <template v-if=\"popoverState === 'open' && enableSearch && isMobile\">\n <OrInput\n :ref=\"'searchControl'\"\n v-model=\"searchText\"\n :class=\"searchControlStyles\"\n :type=\"'search'\"\n :placeholder=\"placeholder\"\n />\n </template>\n <div :class=\"dropdownContainerStyles\">\n <template v-if=\"loading\">\n <div :class=\"['px-sm+', 'py-xs']\">\n <slot name=\"loading\">\n <OrLoader\n :class=\"loaderStyles\"\n variant=\"text\"\n :text=\"loadingText\"\n />\n </slot>\n </div>\n </template>\n\n <template v-else-if=\"resolvedSearchOptions.length > 0\">\n <template v-if=\"groupByFunction\">\n <OrExpansionPanel\n v-for=\"(group, groupName) in groupedOptions\"\n :key=\"groupName\"\n :label=\"groupName\"\n >\n <template v-if=\"multiple\">\n <OrMenuItem\n v-for=\"(option, i) in group\"\n :key=\"i\"\n :tooltip-text=\"option.label\"\n :selected=\"proxyModelValue && proxyModelValue.includes(option.value)\"\n :disabled=\"option.disabled\"\n >\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n <OrCheckbox\n v-model=\"proxyModelValue\"\n :value=\"option.value\"\n :label=\"option.label\"\n :label-variant=\"'menu-item'\"\n :disabled=\"option.disabled\"\n />\n </slot>\n </OrMenuItem>\n </template>\n\n <template v-else>\n <OrMenuItem\n v-for=\"(option, i) in group\"\n :key=\"i\"\n :class=\"dropdownItemStyles\"\n :tooltip-text=\"option.label\"\n :selected=\"proxyModelValue === option.value\"\n :disabled=\"option.disabled\"\n @click.stop=\"selectOption(option.value)\"\n >\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n {{ option.label }}\n </slot>\n </OrMenuItem>\n </template>\n </OrExpansionPanel>\n </template>\n\n <template v-else>\n <template v-if=\"multiple\">\n <OrMenuItem\n v-for=\"(option, i) in resolvedSearchOptions\"\n :key=\"i\"\n :tooltip-text=\"option.label\"\n :class=\"dropdownItemStyles\"\n :selected=\"proxyModelValue && proxyModelValue.includes(option.value)\"\n :disabled=\"option.disabled\"\n @click.stop=\"!option.disabled && toggleOption(option.value)\"\n >\n <OrCheckbox\n :model-value=\"proxyModelValue\"\n :value=\"option.value\"\n :label-variant=\"'menu-item'\"\n :disabled=\"option.disabled\"\n >\n <div @click=\"!option.disabled && toggleOption(option.value)\">\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n {{ option.label }}\n </slot>\n </div>\n </OrCheckbox>\n </OrMenuItem>\n </template>\n\n <template v-else>\n <OrMenuItem\n v-for=\"(option, i) in resolvedSearchOptions\"\n :key=\"i\"\n :class=\"dropdownItemStyles\"\n :selected=\"proxyModelValue === option.value\"\n :tooltip-text=\"option.label\"\n :disabled=\"option.disabled\"\n @click.stop=\"selectOption(option.value); close()\"\n >\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n {{ option.label }}\n </slot>\n </OrMenuItem>\n </template>\n </template>\n </template>\n\n <template v-else>\n <div :class=\"noSearchResultsStyles\">\n <slot\n name=\"noSearchResultsTemplate\"\n :search-text=\"searchText\"\n >\n No results\n </slot>\n </div>\n </template>\n </div>\n </div>\n </OrPopover>\n </OrInputBox>\n\n <template v-if=\"$slots.hint || hint\">\n <OrHint\n v-show=\"!error\"\n :disabled=\"disabled\"\n >\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n </OrHint>\n </template>\n\n <OrError\n v-show=\"typeof error === 'string' && error.length > 0\"\n :disabled=\"disabled\"\n >\n {{ error }}\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { ReferenceElement } from '@floating-ui/dom';\nimport { computed, defineComponent, getCurrentInstance, PropType, ref, toRefs, watch, nextTick } from 'vue';\n\nimport { DropdownClose, DropdownOpen } from '@onereach/ui-components-common/directives';\nimport { searchItemsByLabel } from '@onereach/ui-components-common/helpers';\nimport { useProxyModelValue, useResponsive } from '@onereach/ui-components-common/hooks';\nimport { GroupFunction, SearchFunction } from '@onereach/ui-components-common/types';\nimport { exclude, include, isEmpty, toArray } from '@onereach/ui-components-common/utils';\n\nimport { OrCheckboxV3 as OrCheckbox } from '@onereach/ui-components.or-checkbox-v3';\nimport { OrErrorV3 as OrError } from '@onereach/ui-components.or-error-v3';\nimport { OrExpansionPanelV3 as OrExpansionPanel } from '@onereach/ui-components.or-expansion-panel-v3';\nimport { OrHintV3 as OrHint } from '@onereach/ui-components.or-hint-v3';\nimport { OrIconButtonV3 as OrIconButton } from '@onereach/ui-components.or-icon-button-v3';\nimport { OrIconV3 as OrIcon } from '@onereach/ui-components.or-icon-v3';\nimport { InputBoxSize, InputBoxVariant, OrInputBoxV3 as OrInputBox } from '@onereach/ui-components.or-input-box-v3';\nimport { OrInputV3 as OrInput } from '@onereach/ui-components.or-input-v3';\nimport { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { OrMenuItemV3 as OrMenuItem } from '@onereach/ui-components.or-menu-item-v3';\nimport { OrPopoverV3 as OrPopover } from '@onereach/ui-components.or-popover-v3';\nimport { TagsOverflow } from '@onereach/ui-components.or-tags-v3';\nimport { OrLoaderV3 as OrLoader } from '@onereach/ui-components.or-loader-v3';\nimport { OrSelectMultipleControl, OrSelectSingleControl } from './partials';\nimport * as Styles from './styles';\nimport { SelectItem, SelectModelValue } from './types';\n\n\nexport default defineComponent({\n name: 'OrSelect',\n\n components: {\n OrCheckbox,\n OrError,\n OrExpansionPanel,\n OrHint,\n OrIcon,\n OrIconButton,\n OrInput,\n OrInputBox,\n OrLabel,\n OrMenuItem,\n OrPopover,\n OrSelectMultipleControl,\n OrSelectSingleControl,\n OrLoader,\n },\n\n directives: {\n DropdownClose,\n DropdownOpen,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<SelectModelValue>,\n default: undefined,\n },\n\n options: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n searchOptions: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n multiple: {\n type: Boolean,\n default: false,\n },\n\n overflow: {\n type: String as PropType<`${TagsOverflow}`>,\n default: () => TagsOverflow.Hidden,\n },\n\n variant: {\n type: String as PropType<`${InputBoxVariant}`>,\n default: undefined,\n },\n\n size: {\n type: String as PropType<`${InputBoxSize}`>,\n default: undefined,\n },\n\n anchor: {\n type: Object as PropType<ReferenceElement>,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: [String, Boolean],\n default: undefined,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n loadingText: {\n type: String,\n default: 'Loading',\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\n type: Boolean,\n default: false,\n },\n\n enableClear: {\n type: Boolean,\n default: false,\n },\n\n searchFunction: {\n type: Function as PropType<SearchFunction<SelectItem>>,\n default: searchItemsByLabel as SearchFunction<SelectItem>,\n },\n\n groupByFunction: {\n type: Function as PropType<GroupFunction<SelectItem>>,\n default: undefined,\n },\n\n externalControl: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'focus',\n 'blur',\n\n 'search',\n ],\n\n expose: [\n 'root',\n\n 'open',\n 'close',\n 'toggle',\n\n 'toggleOption',\n 'resetSearch',\n\n 'popover',\n 'popoverState',\n ],\n\n setup(props, context) {\n const currentInstance = getCurrentInstance()!;\n\n // Refs\n const root = ref<HTMLElement>();\n\n const inputBox = ref<InstanceType<typeof OrInputBox>>();\n const inputBoxRoot = computed(() => inputBox.value?.root);\n\n const control = ref<HTMLElement>();\n const multipleControl = ref<InstanceType<typeof OrSelectMultipleControl>>();\n const singleControl = ref<InstanceType<typeof OrSelectSingleControl>>();\n const searchControl = ref<HTMLElement>();\n\n const popover = ref<InstanceType<typeof OrPopover>>();\n\n const popoverRoot = computed(() => popover.value?.root);\n const popoverState = computed(() => popover.value?.state);\n\n const isOpen = computed(() => popoverState.value === 'open');\n\n // Props\n const { enableClear, enableSearch, modelValue, multiple } = toRefs(props);\n\n // State\n const controlId = ref(context.attrs.id as string ?? currentInstance.uid.toString());\n\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n\n const bottomSheetFullscreen = computed(() => {\n return popover.value?.bottomSheet?.fullscreen;\n });\n\n const isEmptyModelValue = computed(() => {\n return isEmpty(proxyModelValue.value);\n });\n\n const showClear = computed(() => {\n return enableClear.value && !isEmptyModelValue.value;\n });\n\n\n const focused = computed(() => {\n if (multiple.value) {\n return multipleControl.value?.focused;\n } else {\n return singleControl.value?.focused;\n }\n });\n\n const readonly = computed(() => context.attrs.readonly as boolean);\n\n const internalSearchOptions = ref<SelectItem[]>(props.options);\n\n const resolvedSearchOptions = computed(() => {\n return props.externalControl ? props.searchOptions : internalSearchOptions.value;\n });\n\n const searchText = ref<string>('');\n\n watch([\n () => props.externalControl,\n searchText,\n () => props.options,\n ], async ([externalControl, searchText, options]) => {\n if (externalControl) {\n context.emit('search', searchText);\n } else {\n internalSearchOptions.value = await props.searchFunction(searchText, options);\n }\n }, { deep: true });\n\n\n watch(isOpen, (value) => {\n if (!value) {\n resetSearch();\n }\n });\n\n const groupedOptions = computed(() => {\n const groupBy = props.groupByFunction;\n\n if (groupBy) {\n return internalSearchOptions.value.reduce((accumulator, option) => {\n const group = groupBy(option);\n\n return {\n ...accumulator,\n [group]: [\n ...accumulator[group] ?? [],\n option,\n ],\n };\n }, {} as Record<string, SelectItem[]>);\n }\n\n return {\n '': props.options,\n };\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-select-v3',\n ...Styles.Select,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const controlStyles = computed(() => [\n ...Styles.SelectControl,\n ]);\n\n const searchControlStyles = computed(() => [\n ...Styles.SelectSearchControl,\n ]);\n\n const dropdownStyles = computed(() => [\n 'or-select-popover-v3',\n ...(isMobile.value ? [] : [\n ...Styles.SelectDropdown,\n ...popover.value?.isFlipped ? Styles.SelectDropdownFlipped : Styles.SelectDropdownDefault,\n ]),\n ]);\n\n const dropdownContainerStyles = computed(() => [\n isMobile.value ? 'layout-column' : 'contains',\n bottomSheetFullscreen.value ? 'overflow-y-auto' : 'overflow-hidden',\n ]);\n\n const dropdownItemStyles = computed(() => [\n ...Styles.SelectDropdownItem,\n ...(props.multiple ? Styles.SelectDropdownItemPaddingMultiple : Styles.SelectDropdownItemPaddingSingle),\n ...(isMobile.value ? Styles.SelectDropdownItemPaddingMultipleMobile : []),\n ]);\n\n const noSearchResultsStyles = computed(() => [\n ...Styles.SelectNoSearchResults,\n ]);\n\n const loaderStyles = computed(() => [\n ...Styles.SelectLoader,\n ]);\n\n // Methods\n function toggle(): void {\n if (!readonly.value && !props.disabled) {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n if (popoverState.value === 'open' && !focused.value) {\n close();\n } else {\n open();\n\n setTimeout(() => {\n focus();\n });\n }\n }\n }\n }\n\n function open(): void {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.open as () => void)();\n }\n }\n\n function close(): void {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.close as () => void)();\n }\n }\n\n function focus(): void {\n if (enableSearch.value) {\n const controlInstance = isMobile.value\n ? searchControl.value\n : multiple.value\n ? multipleControl.value\n : singleControl.value;\n\n if (controlInstance) {\n (controlInstance.focus as () => void)();\n }\n }\n }\n\n function selectOption(value: SelectItem['value']): void {\n if (props.multiple) {\n proxyModelValue.value = include(value, toArray(proxyModelValue.value));\n } else {\n proxyModelValue.value = value;\n }\n\n resetSearch();\n }\n\n function deselectOption(value: SelectItem['value']): void {\n if (props.multiple) {\n proxyModelValue.value = exclude(value, toArray(proxyModelValue.value));\n } else {\n proxyModelValue.value = undefined;\n }\n }\n\n function toggleOption(value: SelectItem['value']): void {\n if (props.multiple) {\n const model = toArray(proxyModelValue.value);\n\n if (!model.includes(value)) {\n proxyModelValue.value = include(value, model);\n } else {\n proxyModelValue.value = exclude(value, model);\n }\n } else {\n proxyModelValue.value = proxyModelValue.value !== value ? value : undefined;\n }\n\n resetSearch();\n }\n\n function resetSearch(): void {\n nextTick(() => {\n setTimeout(() => searchText.value = '');\n });\n }\n\n // Utils\n const { isDesktop, isMobile } = useResponsive();\n\n return {\n root,\n inputBox,\n inputBoxRoot,\n control,\n multipleControl,\n singleControl,\n searchControl,\n popover,\n popoverRoot,\n popoverState,\n rootStyles,\n controlStyles,\n searchControlStyles,\n dropdownStyles,\n dropdownContainerStyles,\n dropdownItemStyles,\n noSearchResultsStyles,\n loaderStyles,\n controlId,\n proxyModelValue,\n readonly,\n isEmptyModelValue,\n isOpen,\n showClear,\n searchText,\n internalSearchOptions,\n resolvedSearchOptions,\n groupedOptions,\n\n toggle,\n close,\n open,\n\n selectOption,\n deselectOption,\n toggleOption,\n resetSearch,\n\n isDesktop,\n isMobile,\n };\n },\n});\n</script>\n"],"names":["SelectControlInput","_sfc_main$4","defineComponent","props","context","root","ref","placeholder","modelValue","toRefs","proxyModelValue","useProxyModelValue","focused","useFocus","controlStyles","computed","controlInlineStyles","chars","_a","focus","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_withDirectives","_openBlock","_createElementBlock","$event","_normalizeStyle","SelectPlaceholder","_sfc_main$3","rootStyles","_normalizeClass","SelectMultipleControlRoot","_sfc_main$2","OrSelectPlaceholder","OrSelectControlInput","OrTags","TagsOverflow","searchControl","tags","model","options","overflow","searchModelValue","value","isNil","toArray","isEmpty","selection","option","isEqual","watch","items","prevItems","_resolveComponent","_createVNode","_component_OrTags","_createSlots","_withCtx","item","_createElementVNode","_hoisted_1","_component_OrSelectControlInput","_vShow","_createBlock","_component_OrSelectPlaceholder","SelectSingleControlInput","_sfc_main$1","OrTooltip","selectionLabelRef","tooltipRef","isEmptyModelValue","selectionLabel","openTooltip","closeTooltip","checkTooltip","_Fragment","args","_toDisplayString","_component_OrTooltip","Select","SelectControl","SelectSearchControl","SelectDropdown","SelectDropdownDefault","SelectDropdownFlipped","SelectDropdownItem","SelectDropdownItemPaddingSingle","SelectDropdownItemPaddingMultiple","SelectDropdownItemPaddingMultipleMobile","SelectNoSearchResults","SelectLoader","_sfc_main","OrCheckbox","OrError","OrExpansionPanel","OrHint","OrIcon","OrIconButton","OrInput","OrInputBox","OrLabel","OrMenuItem","OrPopover","OrSelectMultipleControl","OrSelectSingleControl","OrLoader","DropdownClose","DropdownOpen","searchItemsByLabel","currentInstance","getCurrentInstance","inputBox","inputBoxRoot","control","multipleControl","singleControl","popover","popoverRoot","popoverState","isOpen","enableClear","enableSearch","multiple","controlId","bottomSheetFullscreen","_b","showClear","readonly","internalSearchOptions","resolvedSearchOptions","searchText","externalControl","resetSearch","groupedOptions","groupBy","accumulator","group","Styles.Select","InputBoxVariant","Styles.SelectControl","searchControlStyles","Styles.SelectSearchControl","dropdownStyles","isMobile","Styles.SelectDropdown","Styles.SelectDropdownFlipped","Styles.SelectDropdownDefault","dropdownContainerStyles","dropdownItemStyles","Styles.SelectDropdownItem","Styles.SelectDropdownItemPaddingMultiple","Styles.SelectDropdownItemPaddingSingle","Styles.SelectDropdownItemPaddingMultipleMobile","noSearchResultsStyles","Styles.SelectNoSearchResults","loaderStyles","Styles.SelectLoader","toggle","close","open","popoverInstance","controlInstance","selectOption","include","deselectOption","exclude","toggleOption","nextTick","isDesktop","useResponsive","_hoisted_3","_resolveDirective","_component_OrLabel","_renderSlot","_createCommentVNode","_component_OrInputBox","_component_OrSelectMultipleControl","_component_OrSelectSingleControl","_hoisted_2","_component_OrIconButton","_component_OrIcon","_component_OrPopover","_component_OrInput","_component_OrLoader","_renderList","groupName","_component_OrExpansionPanel","i","_component_OrMenuItem","_withModifiers","_component_OrCheckbox","_directive_dropdown_open","_directive_dropdown_close","_component_OrHint","_component_OrError"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrSelect-DmNRdiTd.mjs","sources":["../../../components/or-select-v3/src/partials/or-select-control-input/styles.ts","../../../components/or-select-v3/src/partials/or-select-control-input/OrSelectControlInput.vue","../../../components/or-select-v3/src/partials/or-select-placeholder/styles.ts","../../../components/or-select-v3/src/partials/or-select-placeholder/OrSelectPlaceholder.vue","../../../components/or-select-v3/src/partials/or-select-multiple-control/styles.ts","../../../components/or-select-v3/src/partials/or-select-multiple-control/OrSelectMultipleControl.vue","../../../components/or-select-v3/src/partials/or-select-single-control/styles.ts","../../../components/or-select-v3/src/partials/or-select-single-control/OrSelectSingleControl.vue","../../../components/or-select-v3/src/styles.ts","../../../components/or-select-v3/src/OrSelect.vue"],"sourcesContent":["export const SelectControlInput: string[] = [\n // Base\n 'appearance-none',\n\n // Typography\n 'typography-inherit',\n\n // Theme (placeholder)\n 'placeholder:theme-foreground-outline',\n 'dark:placeholder:theme-foreground-outline-dark',\n 'theme-background-transparent',\n 'outline-none',\n];\n","<template>\n <input\n :ref=\"'root'\"\n v-model=\"proxyModelValue\"\n :style=\"controlInlineStyles\"\n :class=\"controlStyles\"\n :type=\"'text'\"\n :placeholder=\"placeholder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :autocomplete=\"'off'\"\n :minlength=\"undefined\"\n :maxlength=\"undefined\"\n >\n</template>\n\n<script lang=\"ts\">\nimport { useFocus } from '@vueuse/core';\nimport { computed, defineComponent, ref, toRefs } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { SelectControlInput } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectControlInput',\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: '',\n },\n\n placeholder: {\n type: String,\n default: '',\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'focused',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLInputElement>();\n\n // Props\n const { placeholder, modelValue } = toRefs(props);\n\n // State\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n const { focused } = useFocus(root);\n\n // Styles\n const controlStyles = computed(() => [\n ...SelectControlInput,\n ]);\n\n const controlInlineStyles = computed(() => {\n const chars = proxyModelValue.value.length > 0\n ? proxyModelValue.value.length\n : placeholder.value?.length;\n\n return {\n width: `${Math.max(chars + 1 || 0, 2)}ch`,\n };\n });\n\n // Methods\n function focus() {\n focused.value = true;\n }\n\n return {\n root,\n proxyModelValue,\n controlStyles,\n controlInlineStyles,\n focused,\n focus,\n };\n },\n});\n</script>\n","export const SelectPlaceholder: string[] = [\n // Interactivity\n 'interactivity-default',\n\n // Typography\n 'typography-inherit truncate',\n\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :disabled=\"disabled\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { SelectPlaceholder } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectPlaceholder',\n\n props: {\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup() {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-select-placeholder-v3',\n ...SelectPlaceholder,\n ]);\n\n return {\n root,\n rootStyles,\n };\n },\n});\n</script>\n","export const SelectMultipleControlRoot: string[] = [\n // Layout\n 'layout-row',\n 'w-full',\n];\n\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrTags\n v-show=\"!isEmpty || enableSearch\"\n :ref=\"'tags'\"\n :items=\"selection\"\n class=\"grow\"\n :disabled=\"disabled\"\n :tag-props=\"{\n variant: readonly || disabled ? 'tag' : 'reset',\n disabled: disabled\n }\"\n :overflow=\"overflow\"\n @reset=\"$emit('reset', $event)\"\n >\n <template v-slot:tag=\"{item}\">\n <slot\n name=\"tag\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </template>\n\n <template\n v-if=\"enableSearch\"\n v-slot:tail\n >\n <div class=\"inline-flex w-fit max-w-full\">\n <OrSelectControlInput\n :ref=\"'searchControl'\"\n v-model=\"searchModelValue\"\n :placeholder=\"isEmpty ? placeholder: ''\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n />\n </div>\n </template>\n </OrTags>\n\n <template v-if=\"isEmpty && !enableSearch\">\n <OrSelectPlaceholder :disabled=\"disabled\">\n {{ placeholder }}\n </OrSelectPlaceholder>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, ref, toRefs, watch } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { isEqual, isNil, toArray } from '@onereach/ui-components-common/utils';\nimport { OrTagsV3 as OrTags, Tag, TagsOverflow } from '@onereach/ui-components.or-tags-v3';\nimport { SelectItem, SelectModelValue } from '../../types';\nimport { OrSelectControlInput } from '../or-select-control-input';\nimport OrSelectPlaceholder from '../or-select-placeholder/OrSelectPlaceholder.vue';\nimport { SelectMultipleControlRoot } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectMultipleControl',\n\n components: {\n OrSelectPlaceholder,\n OrSelectControlInput,\n OrTags,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: '',\n },\n\n model: {\n type: undefined as unknown as PropType<SelectModelValue>,\n default: () => [],\n },\n\n options: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n overflow: {\n type: String as PropType<`${TagsOverflow}`>,\n default: () => TagsOverflow.Hidden,\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\n type: Boolean,\n default: false,\n },\n\n isOpen: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n 'reset',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'focused',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLDivElement>();\n\n const searchControl = ref<InstanceType<typeof OrSelectControlInput>>();\n const tags = ref<InstanceType<typeof OrTags>>();\n\n // Props\n const { modelValue, model, options, overflow } = toRefs(props);\n\n // State\n const searchModelValue = useProxyModelValue(modelValue, context.emit);\n\n const focused = computed(() => {\n return searchControl.value?.focused;\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-select-multiple-control-v3',\n ...SelectMultipleControlRoot,\n ]);\n\n // Computed\n const value = computed(() => isNil(model.value) ? [] : toArray(model.value));\n const isEmpty = computed(() => value.value.length === 0);\n\n const selection = computed(() => {\n if (model.value === undefined || model.value === null) {\n return [];\n }\n\n return value.value\n .map((value) => options.value.find((option) => isEqual(option.value, value)))\n .filter<SelectItem>((value): value is SelectItem => !!value)\n .map((option) => ({\n value: option.value,\n label: option.label,\n tagProps: option.disabled && { disabled: option.disabled },\n } as Tag));\n });\n\n watch(selection, (items, prevItems) => {\n if (items.length != prevItems.length && overflow.value === TagsOverflow.Scroll && tags.value) {\n (tags.value.scrollToEnd as () => void)();\n }\n });\n\n // Methods\n function focus(): void {\n if (searchControl.value) {\n (searchControl.value.focus as () => void)();\n }\n }\n\n return {\n root,\n tags,\n rootStyles,\n searchControl,\n searchModelValue,\n isEmpty,\n selection,\n value,\n focus,\n focused,\n };\n },\n});\n</script>\n","export const SelectSingleControlInput: string[] = [\n // Layout\n 'w-full',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"isOpen && enableSearch\">\n <OrSelectControlInput\n :ref=\"'searchControl'\"\n v-model=\"searchModelValue\"\n :placeholder=\"isEmptyModelValue ? placeholder : selectionLabel\"\n />\n </template>\n\n <template v-else>\n <template v-if=\"isEmptyModelValue\">\n <OrSelectPlaceholder :disabled=\"disabled\">\n {{ placeholder }}\n </OrSelectPlaceholder>\n </template>\n\n <template v-else>\n <div class=\"flex\">\n <div\n ref=\"selectionLabelRef\"\n class=\"truncate w-full\"\n @mouseenter=\"checkTooltip\"\n @mouseleave=\"closeTooltip\"\n >\n {{ selectionLabel }}\n </div>\n <OrTooltip\n ref=\"tooltipRef\"\n :content=\"selectionLabel\"\n :trigger=\"selectionLabelRef\"\n />\n </div>\n </template>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, ref, toRefs, watch } from 'vue';\n\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { isEmpty, isEqual } from '@onereach/ui-components-common/utils';\nimport { SelectItem, SelectModelValue } from '../../types';\nimport OrSelectControlInput from '../or-select-control-input/OrSelectControlInput.vue';\nimport OrSelectPlaceholder from '../or-select-placeholder/OrSelectPlaceholder.vue';\nimport { OrTooltipV3 as OrTooltip } from '@onereach/ui-components.or-tooltip-v3';\nimport { SelectSingleControlInput } from './styles';\n\nexport default defineComponent({\n name: 'OrSelectSingleControl',\n\n components: {\n OrSelectPlaceholder,\n OrSelectControlInput,\n OrTooltip,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: '',\n },\n\n model: {\n type: undefined as unknown as PropType<SelectModelValue>,\n default: undefined,\n },\n\n options: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\n type: Boolean,\n default: false,\n },\n\n isOpen: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'focused',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLDivElement>();\n const searchControl = ref<InstanceType<typeof OrSelectControlInput>>();\n const selectionLabelRef = ref<HTMLDialogElement>();\n const tooltipRef = ref<InstanceType<typeof OrTooltip>>();\n\n // Props\n const { modelValue, model, options } = toRefs(props);\n\n // State\n const searchModelValue = useProxyModelValue(modelValue, context.emit);\n\n const isEmptyModelValue = computed(() => {\n return isEmpty(model.value);\n });\n\n const selection = computed(() => {\n return options.value.find((option) => isEqual(option.value, model.value));\n });\n\n const selectionLabel = computed(() => {\n return selection.value?.label;\n });\n\n watch(\n () => props.isOpen,\n () => {\n tooltipRef.value?.close();\n },\n );\n\n const focused = computed(() => {\n return searchControl.value?.focused;\n });\n\n const openTooltip = () => {\n if (tooltipRef.value) tooltipRef.value.open();\n };\n\n const closeTooltip = () => {\n if (tooltipRef.value) tooltipRef.value.close();\n };\n\n // Styles\n const rootStyles = computed(() => ([\n 'or-select-single-control-v3',\n ...SelectSingleControlInput,\n ]));\n\n // Methods\n function focus() {\n if (searchControl.value) {\n (searchControl.value.focus as () => void)();\n }\n }\n\n function checkTooltip() {\n if (!selectionLabelRef.value) return; // to prevent fro TS error; normally ref will always be available here since the method is a mouse event callback\n const isContentTruncated = selectionLabelRef.value.scrollWidth > selectionLabelRef.value.clientWidth;\n if (isContentTruncated) openTooltip();\n }\n\n return {\n root,\n rootStyles,\n searchControl,\n searchModelValue,\n isEmptyModelValue,\n selection,\n selectionLabel,\n focus,\n focused,\n selectionLabelRef,\n tooltipRef,\n openTooltip,\n closeTooltip,\n checkTooltip,\n };\n },\n});\n</script>\n","export const Select: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const SelectControl: string[] = [\n // Layout\n 'layout-row',\n 'w-full',\n\n // Layout (empty)\n 'empty:hidden',\n\n // Overflow\n 'overflow-hidden',\n\n // Spacing\n 'gap-xs',\n\n // Typography\n 'typography-inherit',\n];\n\nexport const SelectSearchControl: string[] = [\n // Spacing\n '!mx-lg md:!-mx-sm+',\n '!my-sm md:!my-0',\n];\n\nexport const SelectDropdown: string[] = [\n // Overflow\n 'overflow-y-auto',\n\n // Box\n 'max-h-[172px]', // equals 5 items\n\n // Theme\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-border-outline border-1',\n 'dark:theme-border-outline-dark',\n];\n\nexport const SelectDropdownDefault: string[] = [\n // Shape\n 'rounded-b-md',\n\n // Theme\n '!border-t-0',\n];\n\nexport const SelectDropdownFlipped: string[] = [\n // Shape\n 'rounded-t-md',\n\n // Theme\n '!border-b-0',\n];\n\nexport const SelectDropdownItem: string[] = [\n // Typography\n '!typography-body-2-regular',\n\n // Padding Override todo: check design\n 'md:!pt-[6px] md:!pb-[7px]',\n\n // Typography (selected)\n 'selected:!typography-body-2-semibold',\n\n // Theme\n '!theme-foreground-default dark:!theme-foreground-default-dark',\n];\n\nexport const SelectDropdownItemPaddingSingle = [\n // Padding Override\n '!py-md md:!pt-[6px] md:!pb-[7px]',\n];\n\nexport const SelectDropdownItemPaddingMultiple = [\n // Padding Override\n 'md:!pt-[6px] md:!pb-[7px]',\n];\n\nexport const SelectDropdownItemPaddingMultipleMobile = [\n // Padding Override\n 'px-md',\n];\n\nexport const SelectNoSearchResults: string[] = [\n // Layout\n 'layout-row justify-center',\n\n // Spacing\n 'px-md',\n 'py-md',\n\n // Typography\n 'typography-caption-regular',\n\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n];\n\nexport const SelectLoader: string[] = [\n // Layout\n 'w-fit',\n\n // Typography\n 'typography-body-2-regular',\n\n // Theme\n 'text-outline dark:text-outline-dark',\n];\n\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"$slots.label || $slots.addon || label\">\n <OrLabel\n :control-id=\"controlId\"\n :variant=\"'input'\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n </template>\n\n <OrInputBox\n :ref=\"'inputBox'\"\n v-dropdown-open=\"toggle\"\n v-dropdown-close=\"close\"\n :class=\"[popoverState === 'open' && (popover && popover.isFlipped ? 'rounded-t-0' : 'rounded-b-0'), { 'outline-none': variant === 'embedded' }]\"\n :variant=\"variant\"\n :size=\"size\"\n :invalid=\"!!error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :force-state=\"isOpen ? 'focus-within': undefined\"\n :tabindex=\"!disabled ? 0 : null\"\n >\n <div\n :id=\"controlId\"\n :ref=\"'control'\"\n :class=\"controlStyles\"\n :disabled=\"disabled\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n >\n <slot\n name=\"valueTemplate\"\n :model=\"proxyModelValue\"\n >\n <template v-if=\"multiple\">\n <OrSelectMultipleControl\n :ref=\"'multipleControl'\"\n v-model=\"searchText\"\n :model=\"proxyModelValue\"\n :options=\"options\"\n :overflow=\"overflow\"\n :placeholder=\"placeholder\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :enable-search=\"enableSearch\"\n :is-open=\"popoverState === 'open'\"\n @reset=\"deselectOption($event)\"\n >\n <template v-slot:tag=\"{item}\">\n <slot\n name=\"tag\"\n :item=\"item\"\n />\n </template>\n </OrSelectMultipleControl>\n </template>\n\n <template v-else>\n <OrSelectSingleControl\n :ref=\"'singleControl'\"\n v-model=\"searchText\"\n :model=\"proxyModelValue\"\n :options=\"options\"\n :placeholder=\"placeholder\"\n :disabled=\"disabled\"\n :enable-search=\"enableSearch\"\n :is-open=\"popoverState === 'open'\"\n />\n </template>\n </slot>\n </div>\n\n <div :class=\"['layout-inline-row', 'gap-sm']\">\n <template v-if=\"showClear\">\n <OrIconButton\n :icon=\"'close'\"\n :color=\"'inherit'\"\n :additional-styles=\"['!text-outline', '!dark:text-outline-dark']\"\n :disabled=\"readonly || disabled\"\n @click.stop=\"$emit('update:modelValue', multiple ? [] : undefined)\"\n />\n </template>\n\n <OrIcon\n v-show=\"!(popoverState === 'open' && enableSearch && enableClear && !isEmptyModelValue)\"\n :icon=\"popoverState === 'open' ? enableSearch ? 'search' : 'arrow_drop_up' : 'arrow_drop_down'\"\n :class=\" popoverState === 'open' && enableSearch ? '!text-outline !dark:text-outline-dark' : ''\"\n :variant=\"'outlined'\"\n />\n </div>\n\n <OrPopover\n :ref=\"'popover'\"\n :variant=\"'auto'\"\n :trigger=\"anchor || inputBoxRoot\"\n :placement=\"'bottom'\"\n :offset=\"0\"\n :full-width=\"true\"\n :disable-default-styles=\"true\"\n >\n <div :class=\"dropdownStyles\">\n <template v-if=\"popoverState === 'open' && enableSearch && isMobile\">\n <OrInput\n :ref=\"'searchControl'\"\n v-model=\"searchText\"\n :class=\"searchControlStyles\"\n :type=\"'search'\"\n :placeholder=\"placeholder\"\n />\n </template>\n <div :class=\"dropdownContainerStyles\">\n <template v-if=\"loading\">\n <div :class=\"['px-sm+', 'py-xs']\">\n <slot name=\"loading\">\n <OrLoader\n :class=\"loaderStyles\"\n variant=\"text\"\n :text=\"loadingText\"\n />\n </slot>\n </div>\n </template>\n\n <template v-else-if=\"resolvedSearchOptions.length > 0\">\n <template v-if=\"groupByFunction\">\n <OrExpansionPanel\n v-for=\"(group, groupName) in groupedOptions\"\n :key=\"groupName\"\n :label=\"groupName\"\n >\n <template v-if=\"multiple\">\n <OrMenuItem\n v-for=\"(option, i) in group\"\n :key=\"i\"\n :tooltip-text=\"option.label\"\n :selected=\"proxyModelValue && proxyModelValue.includes(option.value)\"\n :disabled=\"option.disabled\"\n >\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n <OrCheckbox\n v-model=\"proxyModelValue\"\n :value=\"option.value\"\n :label=\"option.label\"\n :label-variant=\"'menu-item'\"\n :disabled=\"option.disabled\"\n />\n </slot>\n </OrMenuItem>\n </template>\n\n <template v-else>\n <OrMenuItem\n v-for=\"(option, i) in group\"\n :key=\"i\"\n :class=\"dropdownItemStyles\"\n :tooltip-text=\"option.label\"\n :selected=\"proxyModelValue === option.value\"\n :disabled=\"option.disabled\"\n @click.stop=\"selectOption(option.value)\"\n >\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n {{ option.label }}\n </slot>\n </OrMenuItem>\n </template>\n </OrExpansionPanel>\n </template>\n\n <template v-else>\n <template v-if=\"multiple\">\n <OrMenuItem\n v-for=\"(option, i) in resolvedSearchOptions\"\n :key=\"i\"\n :tooltip-text=\"option.label\"\n :class=\"dropdownItemStyles\"\n :selected=\"proxyModelValue && proxyModelValue.includes(option.value)\"\n :disabled=\"option.disabled\"\n @click.stop=\"!option.disabled && toggleOption(option.value)\"\n >\n <OrCheckbox\n :model-value=\"proxyModelValue\"\n :value=\"option.value\"\n :label-variant=\"'menu-item'\"\n :disabled=\"option.disabled\"\n >\n <div @click=\"!option.disabled && toggleOption(option.value)\">\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n {{ option.label }}\n </slot>\n </div>\n </OrCheckbox>\n </OrMenuItem>\n </template>\n\n <template v-else>\n <OrMenuItem\n v-for=\"(option, i) in resolvedSearchOptions\"\n :key=\"i\"\n :class=\"dropdownItemStyles\"\n :selected=\"proxyModelValue === option.value\"\n :tooltip-text=\"option.label\"\n :disabled=\"option.disabled\"\n @click.stop=\"selectOption(option.value); close()\"\n >\n <slot\n name=\"optionTemplate\"\n :model=\"proxyModelValue\"\n :option=\"option\"\n >\n {{ option.label }}\n </slot>\n </OrMenuItem>\n </template>\n </template>\n </template>\n\n <template v-else>\n <div :class=\"noSearchResultsStyles\">\n <slot\n name=\"noSearchResultsTemplate\"\n :search-text=\"searchText\"\n >\n No results\n </slot>\n </div>\n </template>\n </div>\n </div>\n </OrPopover>\n </OrInputBox>\n\n <template v-if=\"$slots.hint || hint\">\n <OrHint\n v-show=\"!error\"\n :disabled=\"disabled\"\n >\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n </OrHint>\n </template>\n\n <OrError\n v-show=\"typeof error === 'string' && error.length > 0\"\n :disabled=\"disabled\"\n >\n {{ error }}\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { ReferenceElement } from '@floating-ui/dom';\nimport { computed, defineComponent, getCurrentInstance, PropType, ref, toRefs, watch, nextTick } from 'vue';\n\nimport { DropdownClose, DropdownOpen } from '@onereach/ui-components-common/directives';\nimport { searchItemsByLabel } from '@onereach/ui-components-common/helpers';\nimport { useProxyModelValue, useResponsive } from '@onereach/ui-components-common/hooks';\nimport { GroupFunction, SearchFunction } from '@onereach/ui-components-common/types';\nimport { exclude, include, isEmpty, toArray } from '@onereach/ui-components-common/utils';\n\nimport { OrCheckboxV3 as OrCheckbox } from '@onereach/ui-components.or-checkbox-v3';\nimport { OrErrorV3 as OrError } from '@onereach/ui-components.or-error-v3';\nimport { OrExpansionPanelV3 as OrExpansionPanel } from '@onereach/ui-components.or-expansion-panel-v3';\nimport { OrHintV3 as OrHint } from '@onereach/ui-components.or-hint-v3';\nimport { OrIconButtonV3 as OrIconButton } from '@onereach/ui-components.or-icon-button-v3';\nimport { OrIconV3 as OrIcon } from '@onereach/ui-components.or-icon-v3';\nimport { InputBoxSize, InputBoxVariant, OrInputBoxV3 as OrInputBox } from '@onereach/ui-components.or-input-box-v3';\nimport { OrInputV3 as OrInput } from '@onereach/ui-components.or-input-v3';\nimport { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { OrMenuItemV3 as OrMenuItem } from '@onereach/ui-components.or-menu-item-v3';\nimport { OrPopoverV3 as OrPopover } from '@onereach/ui-components.or-popover-v3';\nimport { TagsOverflow } from '@onereach/ui-components.or-tags-v3';\nimport { OrLoaderV3 as OrLoader } from '@onereach/ui-components.or-loader-v3';\nimport { OrSelectMultipleControl, OrSelectSingleControl } from './partials';\nimport * as Styles from './styles';\nimport { SelectItem, SelectModelValue } from './types';\n\n\nexport default defineComponent({\n name: 'OrSelect',\n\n components: {\n OrCheckbox,\n OrError,\n OrExpansionPanel,\n OrHint,\n OrIcon,\n OrIconButton,\n OrInput,\n OrInputBox,\n OrLabel,\n OrMenuItem,\n OrPopover,\n OrSelectMultipleControl,\n OrSelectSingleControl,\n OrLoader,\n },\n\n directives: {\n DropdownClose,\n DropdownOpen,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<SelectModelValue>,\n default: undefined,\n },\n\n options: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n searchOptions: {\n type: Array as PropType<SelectItem[]>,\n default: () => [],\n },\n\n multiple: {\n type: Boolean,\n default: false,\n },\n\n overflow: {\n type: String as PropType<`${TagsOverflow}`>,\n default: () => TagsOverflow.Hidden,\n },\n\n variant: {\n type: String as PropType<`${InputBoxVariant}`>,\n default: undefined,\n },\n\n size: {\n type: String as PropType<`${InputBoxSize}`>,\n default: undefined,\n },\n\n anchor: {\n type: Object as PropType<ReferenceElement>,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n placeholder: {\n type: String,\n default: undefined,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: [String, Boolean],\n default: undefined,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n loadingText: {\n type: String,\n default: 'Loading',\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n enableSearch: {\n type: Boolean,\n default: false,\n },\n\n enableClear: {\n type: Boolean,\n default: false,\n },\n\n searchFunction: {\n type: Function as PropType<SearchFunction<SelectItem>>,\n default: searchItemsByLabel as SearchFunction<SelectItem>,\n },\n\n groupByFunction: {\n type: Function as PropType<GroupFunction<SelectItem>>,\n default: undefined,\n },\n\n externalControl: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'focus',\n 'blur',\n\n 'search',\n ],\n\n expose: [\n 'root',\n\n 'open',\n 'close',\n 'toggle',\n\n 'toggleOption',\n 'resetSearch',\n\n 'popover',\n 'popoverState',\n ],\n\n setup(props, context) {\n const currentInstance = getCurrentInstance()!;\n\n // Refs\n const root = ref<HTMLElement>();\n\n const inputBox = ref<InstanceType<typeof OrInputBox>>();\n const inputBoxRoot = computed(() => inputBox.value?.root);\n\n const control = ref<HTMLElement>();\n const multipleControl = ref<InstanceType<typeof OrSelectMultipleControl>>();\n const singleControl = ref<InstanceType<typeof OrSelectSingleControl>>();\n const searchControl = ref<HTMLElement>();\n\n const popover = ref<InstanceType<typeof OrPopover>>();\n\n const popoverRoot = computed(() => popover.value?.root);\n const popoverState = computed(() => popover.value?.state);\n\n const isOpen = computed(() => popoverState.value === 'open');\n\n // Props\n const { enableClear, enableSearch, modelValue, multiple } = toRefs(props);\n\n // State\n const controlId = ref(context.attrs.id as string ?? currentInstance.uid.toString());\n\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n\n const bottomSheetFullscreen = computed(() => {\n return popover.value?.bottomSheet?.fullscreen;\n });\n\n const isEmptyModelValue = computed(() => {\n return isEmpty(proxyModelValue.value);\n });\n\n const showClear = computed(() => {\n return enableClear.value && !isEmptyModelValue.value;\n });\n\n\n const focused = computed(() => {\n if (multiple.value) {\n return multipleControl.value?.focused;\n } else {\n return singleControl.value?.focused;\n }\n });\n\n const readonly = computed(() => context.attrs.readonly as boolean);\n\n const internalSearchOptions = ref<SelectItem[]>(props.options);\n\n const resolvedSearchOptions = computed(() => {\n return props.externalControl ? props.searchOptions : internalSearchOptions.value;\n });\n\n const searchText = ref<string>('');\n\n watch([\n () => props.externalControl,\n searchText,\n () => props.options,\n ], async ([externalControl, searchText, options]) => {\n if (externalControl) {\n context.emit('search', searchText);\n } else {\n internalSearchOptions.value = await props.searchFunction(searchText, options);\n }\n }, { deep: true });\n\n\n watch(isOpen, (value) => {\n if (!value) {\n resetSearch();\n }\n });\n\n const groupedOptions = computed(() => {\n const groupBy = props.groupByFunction;\n\n if (groupBy) {\n return internalSearchOptions.value.reduce((accumulator, option) => {\n const group = groupBy(option);\n\n return {\n ...accumulator,\n [group]: [\n ...accumulator[group] ?? [],\n option,\n ],\n };\n }, {} as Record<string, SelectItem[]>);\n }\n\n return {\n '': props.options,\n };\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-select-v3',\n ...Styles.Select,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const controlStyles = computed(() => [\n ...Styles.SelectControl,\n ]);\n\n const searchControlStyles = computed(() => [\n ...Styles.SelectSearchControl,\n ]);\n\n const dropdownStyles = computed(() => [\n 'or-select-popover-v3',\n ...(isMobile.value ? [] : [\n ...Styles.SelectDropdown,\n ...popover.value?.isFlipped ? Styles.SelectDropdownFlipped : Styles.SelectDropdownDefault,\n ]),\n ]);\n\n const dropdownContainerStyles = computed(() => [\n isMobile.value ? 'layout-column' : 'contains',\n bottomSheetFullscreen.value ? 'overflow-y-auto' : 'overflow-hidden',\n ]);\n\n const dropdownItemStyles = computed(() => [\n ...Styles.SelectDropdownItem,\n ...(props.multiple ? Styles.SelectDropdownItemPaddingMultiple : Styles.SelectDropdownItemPaddingSingle),\n ...(isMobile.value ? Styles.SelectDropdownItemPaddingMultipleMobile : []),\n ]);\n\n const noSearchResultsStyles = computed(() => [\n ...Styles.SelectNoSearchResults,\n ]);\n\n const loaderStyles = computed(() => [\n ...Styles.SelectLoader,\n ]);\n\n // Methods\n function toggle(): void {\n if (!readonly.value && !props.disabled) {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n if (popoverState.value === 'open' && !focused.value) {\n close();\n } else {\n open();\n\n setTimeout(() => {\n focus();\n });\n }\n }\n }\n }\n\n function open(): void {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.open as () => void)();\n }\n }\n\n function close(): void {\n const popoverInstance = popover.value;\n\n if (popoverInstance) {\n (popoverInstance.close as () => void)();\n }\n }\n\n function focus(): void {\n if (enableSearch.value) {\n const controlInstance = isMobile.value\n ? searchControl.value\n : multiple.value\n ? multipleControl.value\n : singleControl.value;\n\n if (controlInstance) {\n (controlInstance.focus as () => void)();\n }\n }\n }\n\n function selectOption(value: SelectItem['value']): void {\n if (props.multiple) {\n proxyModelValue.value = include(value, toArray(proxyModelValue.value));\n } else {\n proxyModelValue.value = value;\n }\n\n resetSearch();\n }\n\n function deselectOption(value: SelectItem['value']): void {\n if (props.multiple) {\n proxyModelValue.value = exclude(value, toArray(proxyModelValue.value));\n } else {\n proxyModelValue.value = undefined;\n }\n }\n\n function toggleOption(value: SelectItem['value']): void {\n if (props.multiple) {\n const model = toArray(proxyModelValue.value);\n\n if (!model.includes(value)) {\n proxyModelValue.value = include(value, model);\n } else {\n proxyModelValue.value = exclude(value, model);\n }\n } else {\n proxyModelValue.value = proxyModelValue.value !== value ? value : undefined;\n }\n\n resetSearch();\n }\n\n function resetSearch(): void {\n nextTick(() => {\n setTimeout(() => searchText.value = '');\n });\n }\n\n // Utils\n const { isDesktop, isMobile } = useResponsive();\n\n return {\n root,\n inputBox,\n inputBoxRoot,\n control,\n multipleControl,\n singleControl,\n searchControl,\n popover,\n popoverRoot,\n popoverState,\n rootStyles,\n controlStyles,\n searchControlStyles,\n dropdownStyles,\n dropdownContainerStyles,\n dropdownItemStyles,\n noSearchResultsStyles,\n loaderStyles,\n controlId,\n proxyModelValue,\n readonly,\n isEmptyModelValue,\n isOpen,\n showClear,\n searchText,\n internalSearchOptions,\n resolvedSearchOptions,\n groupedOptions,\n\n toggle,\n close,\n open,\n\n selectOption,\n deselectOption,\n toggleOption,\n resetSearch,\n\n isDesktop,\n isMobile,\n };\n },\n});\n</script>\n"],"names":["SelectControlInput","_sfc_main$4","defineComponent","props","context","root","ref","placeholder","modelValue","toRefs","proxyModelValue","useProxyModelValue","focused","useFocus","controlStyles","computed","controlInlineStyles","chars","_a","focus","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_withDirectives","$event","_normalizeStyle","disabled","SelectPlaceholder","_sfc_main$3","rootStyles","_openBlock","_createElementBlock","_normalizeClass","SelectMultipleControlRoot","_sfc_main$2","OrSelectPlaceholder","OrSelectControlInput","OrTags","TagsOverflow","searchControl","tags","model","options","overflow","searchModelValue","value","isNil","toArray","isEmpty","selection","option","isEqual","watch","items","prevItems","_resolveComponent","_component_OrTags","readonly","_createSlots","_withCtx","item","_renderSlot","enableSearch","_createElementVNode","_hoisted_1","_createVNode","_component_OrSelectControlInput","_createBlock","_component_OrSelectPlaceholder","_createTextVNode","_toDisplayString","_createCommentVNode","SelectSingleControlInput","_sfc_main$1","OrTooltip","selectionLabelRef","tooltipRef","isEmptyModelValue","selectionLabel","openTooltip","closeTooltip","checkTooltip","isOpen","_Fragment","args","Select","SelectControl","SelectSearchControl","SelectDropdown","SelectDropdownDefault","SelectDropdownFlipped","SelectDropdownItem","SelectDropdownItemPaddingSingle","SelectDropdownItemPaddingMultiple","SelectDropdownItemPaddingMultipleMobile","SelectNoSearchResults","SelectLoader","_sfc_main","OrCheckbox","OrError","OrExpansionPanel","OrHint","OrIcon","OrIconButton","OrInput","OrInputBox","OrLabel","OrMenuItem","OrPopover","OrSelectMultipleControl","OrSelectSingleControl","OrLoader","DropdownClose","DropdownOpen","searchItemsByLabel","currentInstance","getCurrentInstance","inputBox","inputBoxRoot","control","multipleControl","singleControl","popover","popoverRoot","popoverState","enableClear","multiple","controlId","bottomSheetFullscreen","_b","showClear","internalSearchOptions","resolvedSearchOptions","searchText","externalControl","resetSearch","groupedOptions","groupBy","accumulator","group","Styles.Select","InputBoxVariant","Styles.SelectControl","searchControlStyles","Styles.SelectSearchControl","dropdownStyles","isMobile","Styles.SelectDropdown","Styles.SelectDropdownFlipped","Styles.SelectDropdownDefault","dropdownContainerStyles","dropdownItemStyles","Styles.SelectDropdownItem","Styles.SelectDropdownItemPaddingMultiple","Styles.SelectDropdownItemPaddingSingle","Styles.SelectDropdownItemPaddingMultipleMobile","noSearchResultsStyles","Styles.SelectNoSearchResults","loaderStyles","Styles.SelectLoader","toggle","close","open","popoverInstance","controlInstance","selectOption","include","deselectOption","exclude","toggleOption","nextTick","isDesktop","useResponsive","_hoisted_3","_resolveDirective","$slots","required","_component_OrInputBox","size","error","_component_OrSelectMultipleControl","_component_OrSelectSingleControl","_hoisted_2","_component_OrIconButton","$emit","_withModifiers","_component_OrPopover","_component_OrInput","loading","_component_OrLoader","loadingText","groupByFunction","_renderList","groupName","_component_OrExpansionPanel","i","_component_OrMenuItem","_component_OrCheckbox","_hoisted_4","_directive_dropdown_open","_directive_dropdown_close","_component_OrHint","_vShow","_component_OrError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAO,MAAMA,KAA+B;AAAA;AAAA,EAE1C;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GCUAC,KAAeC,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,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,EACF;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,MAAMC,GAAOC,GAAS;AAEpB,UAAMC,IAAOC,KAGP,EAAE,aAAAC,GAAa,YAAAC,EAAW,IAAIC,GAAON,CAAK,GAG1CO,IAAkBC,GAAmBH,GAAYJ,EAAQ,IAAI,GAC7D,EAAE,SAAAQ,EAAA,IAAYC,GAASR,CAAI,GAG3BS,IAAgBC,EAAS,MAAM;AAAA,MACnC,GAAGf;AAAA,IAAA,CACJ,GAEKgB,IAAsBD,EAAS,MAAM;;AACnC,YAAAE,IAAQP,EAAgB,MAAM,SAAS,IACzCA,EAAgB,MAAM,UACtBQ,IAAAX,EAAY,UAAZ,gBAAAW,EAAmB;AAEhB,aAAA;AAAA,QACL,OAAO,GAAG,KAAK,IAAID,IAAQ,KAAK,GAAG,CAAC,CAAC;AAAA,MAAA;AAAA,IACvC,CACD;AAGD,aAASE,IAAQ;AACf,MAAAP,EAAQ,QAAQ;AAAA,IAClB;AAEO,WAAA;AAAA,MACL,MAAAP;AAAA,MACA,iBAAAK;AAAA,MACA,eAAAI;AAAA,MACA,qBAAAE;AAAA,MACA,SAAAJ;AAAA,MACA,OAAAO;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;SArGSC,GAAMC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAA;SAFhBC,GAGajB,KAAAA,EAAAA,SAAAA;AAAAA,IACR,KAAK;AAAA,IACL,uBAAOI,EAAa,CAAA,MAAAQ,EAAA,CAAA,IAAA,CAAAM,MAAAP,EAAA,kBAAAO;AAAA,IACpB,OAAMC,GAAMR,EAAA,mBAAA;AAAA,IACZ,SAAad,EAAW,aAAA;AAAA,IACxB,MAAA;AAAA,IACA,aAAUuB,EAAAA;AAAAA,IACV,UAAcT,EAAA;AAAA,IACd,UAASA,EAAE;AAAA,IACX,cAAW;AAAA,IAZhB,WAAA;AAAA,IAAA,WAAA;AAAA;;;;oDCAaU,KAA8B;AAAA;AAAA,EAEzC;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AACF,GCIAC,KAAe9B,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,OAAO;AAAA,IACL,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,EACF;AAAA,EAEA,QAAQ;AAEN,UAAMG,IAAOC,KAGP2B,IAAalB,EAAS,MAAM;AAAA,MAChC;AAAA,MACA,GAAGgB;AAAA,IAAA,CACJ;AAEM,WAAA;AAAA,MACL,MAAA1B;AAAA,MACA,YAAA4B;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;SAzCSb,GAAMC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAA;AACN,SAAAQ,EAAA,GAAYC,EAAA,OAAA;AAAA,IACjB,KAAA;AAAA,IAAA,OAAAC,EAAAf,EAAA,UAAA;AAAA,IAED,UAAQA,EAAA;AAAA,EAAA,GAAA;AAAA;;;oDCNCgB,KAAsC;AAAA;AAAA,EAEjD;AAAA,EACA;AACF,GCyDAC,KAAepC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,qBAAAqC;AAAA,IACA,sBAAAC;AAAA,IACA,QAAAC;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EAEA,OAAO;AAAA,IACL,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS,MAAMC,GAAa;AAAA,IAC9B;AAAA,IAEA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,MAAMvC,GAAOC,GAAS;AAEpB,UAAMC,IAAOC,KAEPqC,IAAgBrC,KAChBsC,IAAOtC,KAGP,EAAE,YAAAE,GAAY,OAAAqC,GAAO,SAAAC,GAAS,UAAAC,MAAatC,GAAON,CAAK,GAGvD6C,IAAmBrC,GAAmBH,GAAYJ,EAAQ,IAAI,GAE9DQ,IAAUG,EAAS,MAAM;;AAC7B,cAAOG,IAAAyB,EAAc,UAAd,gBAAAzB,EAAqB;AAAA,IAAA,CAC7B,GAGKe,IAAalB,EAAS,MAAM;AAAA,MAChC;AAAA,MACA,GAAGsB;AAAA,IAAA,CACJ,GAGKY,IAAQlC,EAAS,MAAMmC,GAAML,EAAM,KAAK,IAAI,CAAA,IAAKM,EAAQN,EAAM,KAAK,CAAC,GACrEO,IAAUrC,EAAS,MAAMkC,EAAM,MAAM,WAAW,CAAC,GAEjDI,IAAYtC,EAAS,MACrB8B,EAAM,UAAU,UAAaA,EAAM,UAAU,OACxC,KAGFI,EAAM,MACV,IAAI,CAACA,MAAUH,EAAQ,MAAM,KAAK,CAACQ,MAAWC,GAAQD,EAAO,OAAOL,CAAK,CAAC,CAAC,EAC3E,OAAmB,CAACA,MAA+B,CAAC,CAACA,CAAK,EAC1D,IAAI,CAACK,OAAY;AAAA,MAChB,OAAOA,EAAO;AAAA,MACd,OAAOA,EAAO;AAAA,MACd,UAAUA,EAAO,YAAY,EAAE,UAAUA,EAAO,SAAS;AAAA,IAClD,EAAA,CACZ;AAEK,IAAAE,EAAAH,GAAW,CAACI,GAAOC,MAAc;AACjC,MAAAD,EAAM,UAAUC,EAAU,UAAUX,EAAS,UAAUL,GAAa,UAAUE,EAAK,SACpFA,EAAK,MAAM;IACd,CACD;AAGD,aAASzB,IAAc;AACrB,MAAIwB,EAAc,SACfA,EAAc,MAAM;IAEzB;AAEO,WAAA;AAAA,MACL,MAAAtC;AAAA,MACA,MAAAuC;AAAA,MACA,YAAAX;AAAA,MACA,eAAAU;AAAA,MACA,kBAAAK;AAAA,MACA,SAAAI;AAAA,MACA,WAAAC;AAAA,MACA,OAAAJ;AAAA,MACA,OAAA9B;AAAA,MACA,SAAAP;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;4DAzMC+C,EA+CM,qBAAA;AA7CE,SAAAzB,EAAA,GAAYC,EAAA,OAAA;AAAA,IAAA,KAAA;AAAA,aAElBd,EAoCS,UAAA;AAAA,EAAA,GAAA;AAAA,MAjCCgC,EAASO,GAAA;AAAA,MACjB,KAAK;AAAA,MACJ,OAAU9B,EAAAA;AAAAA,MACV,OAAA;AAAA,MAA8B+B,UAAAA,EAAAA;AAAAA,MAA0D/B,aAAAA;AAAAA,QAAAA,SAAAA,EAAAA,YAAAA,EAAAA,WAAAA,QAAAA;AAAAA,QAIxF,UAAUiB,EAAAA;AAAAA,MACV;AAAA,MAhBP,UAAA1B,EAAA;AAAA,MAkBuB,SAAGC,EAAG,CAAI,MAAAA,EAAA,CAAA,IAAA,CAAAM,MAAAP,EAAA,MAAA,SAAAO,CAAA;AAAA,IAMlB,GAAAkC,GAAA;AAAA,MAxBf,KAAAC,EAAA,CAAA,EAAA,MAAAC,QAAA;AAAA,QAAAC,EAAA5C,EAAA,QAAA,OAAA,EAAA,MAAA2C,EAAA,GAAA,MAAA;AAAA;QAAA,CAAA;AAAA,MAAA,CAAA;AAAA,MA4BcE,GAAAA;AAAAA,IAAAA,GAAAA;AAAAA,MA5Bd7C,EAAA,eAAA;AAAA,QA+BQ,MAAA;AAAA,QAAA,IACE0C,EAME,MAAA;AAAA,UAAAI,EALM,OAAeC,IAAA;AAAA,YAAAC,EAjCjCC,GAkCqC;AAAA,cAlCrC,KAAA;AAAA,cAmCa,YAAWjD,EAAE+B;AAAAA,cACb,uBAAkB9B,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAM,MAAAP,EAAA,mBAAAO;AAAA,cAClB,aAAUE,EAAQ,UAAAT,EAAA,cAAA;AAAA,cAAA,UAAAA,EAAA;AAAA;;UArC/B,CAAA;AAAA,QAAA,CAAA;AAAA,QAAA,KAAA;AAAA,MAAA,IAAA;AAAA;MA2CoB+B,CAAAA,GAAAA,CAAAA,EAAO,WAAKc,EAAY,YAAA;AAAA,IAAA,CAAA;AAAA,IA3C5C7C,EAAA,WAAA,CAAAA,EAAA,gBAAAa,EA4C8C,GAAAqC,EAAAC,GAAA;AAAA,MAAA,KAAA;AAAA,MA5C9C,UAAAnD,EAAA;AAAA,IAAA,GAAA;AAAA;QAAAoD,EAAAC,EAAArD,EAAA,WAAA,GAAA,CAAA;AAAA,MAAA,CAAA;AAAA,MAAA,GAAA;AAAA,IAAA,GAAA,GAAA,CAAA,UAAA,CAAA,KAAAsD,EAAA,IAAA,EAAA;AAAA;;oDCAaC,KAAqC;AAAA;AAAA,EAEhD;AACF,GCiDAC,KAAe3E,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,qBAAAqC;AAAA,IACA,sBAAAC;AAAA,IACA,WAAAsC;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EAEA,OAAO;AAAA,IACL,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,EACF;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,MAAM3E,GAAOC,GAAS;AAEpB,UAAMC,IAAOC,KACPqC,IAAgBrC,KAChByE,IAAoBzE,KACpB0E,IAAa1E,KAGb,EAAE,YAAAE,GAAY,OAAAqC,GAAO,SAAAC,EAAQ,IAAIrC,GAAON,CAAK,GAG7C6C,IAAmBrC,GAAmBH,GAAYJ,EAAQ,IAAI,GAE9D6E,IAAoBlE,EAAS,MAC1BqC,GAAQP,EAAM,KAAK,CAC3B,GAEKQ,IAAYtC,EAAS,MAClB+B,EAAQ,MAAM,KAAK,CAACQ,MAAWC,GAAQD,EAAO,OAAOT,EAAM,KAAK,CAAC,CACzE,GAEKqC,IAAiBnE,EAAS,MAAM;;AACpC,cAAOG,IAAAmC,EAAU,UAAV,gBAAAnC,EAAiB;AAAA,IAAA,CACzB;AAED,IAAAsC;AAAA,MACE,MAAMrD,EAAM;AAAA,MACZ,MAAM;;AACJ,SAAAe,IAAA8D,EAAW,UAAX,QAAA9D,EAAkB;AAAA,MACpB;AAAA,IAAA;AAGI,UAAAN,IAAUG,EAAS,MAAM;;AAC7B,cAAOG,IAAAyB,EAAc,UAAd,gBAAAzB,EAAqB;AAAA,IAAA,CAC7B,GAEKiE,IAAc,MAAM;AACxB,MAAIH,EAAW,SAAkBA,EAAA,MAAM,KAAK;AAAA,IAAA,GAGxCI,IAAe,MAAM;AACzB,MAAIJ,EAAW,SAAkBA,EAAA,MAAM,MAAM;AAAA,IAAA,GAIzC/C,IAAalB,EAAS,MAAO;AAAA,MACjC;AAAA,MACA,GAAG6D;AAAA,IAAA,CACH;AAGF,aAASzD,IAAQ;AACf,MAAIwB,EAAc,SACfA,EAAc,MAAM;IAEzB;AAEA,aAAS0C,IAAe;AAClB,UAAA,CAACN,EAAkB,MAAO;AAE9B,MAD2BA,EAAkB,MAAM,cAAcA,EAAkB,MAAM,eACrDI;IACtC;AAEO,WAAA;AAAA,MACL,MAAA9E;AAAA,MACA,YAAA4B;AAAA,MACA,eAAAU;AAAA,MACA,kBAAAK;AAAA,MACA,mBAAAiC;AAAA,MACA,WAAA5B;AAAA,MACA,gBAAA6B;AAAA,MACA,OAAA/D;AAAA,MACA,SAAAP;AAAA,MACA,mBAAAmE;AAAA,MACA,YAAAC;AAAA,MACA,aAAAG;AAAA,MACA,cAAAC;AAAA,MACA,cAAAC;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC,GA7KYjB,KAAY;AAAA,EAAA,KAAA;AAAA;;;yEApBvBT,EAqCM,WAAA;AAnCE,SAAAzB,EAAA,GAAYC,EAAA,OAAA;AAAA,IAAA,KAAA;AAAA,IAEFmD,OAAAA,EAAUpB,EAAY,UAAA;AAAA,EAAA,GAAA;AAAA,IAL1C7C,EAAA,UAAAA,EAAA,gBAAAa,EAO6B,GAAAqC,EAAAD,GAAA;AAAA,MAP7B,KAAA;AAAA,MAAA,KAAA;AAAA,MASS,YAAWjD,EAAE4D;AAAAA,MAAAA,uBAAAA,EAAAA,CAAAA,MAAAA,EAAAA,CAAAA,IAAAA,CAAAA,MAAAA,EAAAA,mBAAAA;AAAAA,MAIlB,aAAA5D,EAAA,oBAwBWA,EArCf,cAAAA,EAAA;AAAA,IAAA,GAcsB4D,wBAAiB,aAGT,CAAA,MAAA/C,EAAA,GAAAC,EAAAoD,GAAA,EAAA,KAAA,EAAA,GAAA;AAAA,MAAAlE,EAjB9B,0BAegDkD,EAAAC,GAAA;AAAA,QAAA,KAAA;AAAA,QAfhD,UAAAnD,EAAA;AAAA,MAAA,GAAA;AAAA;UAAAoD,EAAAC,EAAArD,EAAA,WAAA,GAAA,CAAA;AAAA,QAAA,CAAA;AAAA;MAsBU,GAAA,GAAA,CAAA,UAAA,CAAA,MAAAa,EAAA,GACyBC,EAAA,OAAAiC,IAAA;AAAA,QAAAD,EACjB,OAAiB;AAAA,UACtB,KAAA;AAAA,UACA,OAAA;AAAA,UAAA,cAAA7C,EAEE4D,CAAc,MAAA5D,EAAA,CAAA,IAAA,IAAAkE,MAAAnE,EAAA,gBAAAA,EAAA,aAAA,GAAAmE,CAAA;AAAA,UAEnB,cAIElE,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,IAAAkE,MAAAnE,EAAA,gBAAAA,EAAA,aAAA,GAAAmE,CAAA;AAAA,QAAA,GAHAd,EAAgBrD,EAAA,cAAA,GAAA,GAAA;AAAA,QAAAgD,EACNa,GAAc;AAAA,UACvB,KAAA;AAAA,UAAA,SAAA7D,EAAA;AAAA;;;;;;oDCjCAoE,KAAmB;AAAA;AAAA,EAE9B;AAAA;AAAA,EAGA;AACF,GAEaC,KAA0B;AAAA;AAAA,EAErC;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AACF,GAEaC,KAAgC;AAAA;AAAA,EAE3C;AAAA,EACA;AACF,GAEaC,KAA2B;AAAA;AAAA,EAEtC;AAAA;AAAA,EAGA;AAAA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AACF,GAEaC,KAAkC;AAAA;AAAA,EAE7C;AAAA;AAAA,EAGA;AACF,GAEaC,KAAkC;AAAA;AAAA,EAE7C;AAAA;AAAA,EAGA;AACF,GAEaC,KAA+B;AAAA;AAAA,EAE1C;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AACF,GAEaC,KAAkC;AAAA;AAAA,EAE7C;AACF,GAEaC,KAAoC;AAAA;AAAA,EAE/C;AACF,GAEaC,KAA0C;AAAA;AAAA,EAErD;AACF,GAEaC,KAAkC;AAAA;AAAA,EAE7C;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AACF,GAEaC,KAAyB;AAAA;AAAA,EAEpC;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AACF,GC2LAC,KAAenG,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,YAAAoG;AAAA,IACA,SAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,QAAAC;AAAA,IACA,QAAAC;AAAA,IACA,cAAAC;AAAA,IACA,SAAAC;AAAA,IACA,YAAAC;AAAA,IACA,SAAAC;AAAA,IACA,YAAAC;AAAA,IACA,WAAAC;AAAA,IACA,yBAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,UAAAC;AAAA,EACF;AAAA,EAEA,YAAY;AAAA,IACV,eAAAC;AAAA,IACA,cAAAC;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EAEA,OAAO;AAAA,IACL,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,eAAe;AAAA,MACb,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS,MAAM3E,GAAa;AAAA,IAC9B;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ,OAAO;AAAA,MACtB,SAAS;AAAA,IACX;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,SAAS4E;AAAA,IACX;AAAA,IAEA,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,EACF;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,MAAMnH,GAAOC,GAAS;AACpB,UAAMmH,IAAkBC,MAGlBnH,IAAOC,KAEPmH,IAAWnH,KACXoH,IAAe3G,EAAS,MAAA;;AAAM,cAAAG,IAAAuG,EAAS,UAAT,gBAAAvG,EAAgB;AAAA,KAAI,GAElDyG,IAAUrH,KACVsH,IAAkBtH,KAClBuH,IAAgBvH,KAChBqC,IAAgBrC,KAEhBwH,IAAUxH,KAEVyH,IAAchH,EAAS,MAAA;;AAAM,cAAAG,IAAA4G,EAAQ,UAAR,gBAAA5G,EAAe;AAAA,KAAI,GAChD8G,IAAejH,EAAS,MAAA;;AAAM,cAAAG,IAAA4G,EAAQ,UAAR,gBAAA5G,EAAe;AAAA,KAAK,GAElDoE,IAASvE,EAAS,MAAMiH,EAAa,UAAU,MAAM,GAGrD,EAAE,aAAAC,GAAa,cAAA/D,GAAc,YAAA1D,GAAY,UAAA0H,MAAazH,GAAON,CAAK,GAGlEgI,IAAY7H,EAAIF,EAAQ,MAAM,MAAgBmH,EAAgB,IAAI,UAAU,GAE5E7G,IAAkBC,GAAmBH,GAAYJ,EAAQ,IAAI,GAE7DgI,KAAwBrH,EAAS,MAAM;;AACpC,cAAAsH,KAAAnH,IAAA4G,EAAQ,UAAR,gBAAA5G,EAAe,gBAAf,gBAAAmH,EAA4B;AAAA,IAAA,CACpC,GAEKpD,IAAoBlE,EAAS,MAC1BqC,GAAQ1C,EAAgB,KAAK,CACrC,GAEK4H,IAAYvH,EAAS,MAClBkH,EAAY,SAAS,CAAChD,EAAkB,KAChD,GAGKrE,IAAUG,EAAS,MAAM;;AAC7B,aAAImH,EAAS,SACJhH,IAAA0G,EAAgB,UAAhB,gBAAA1G,EAAuB,WAEvBmH,IAAAR,EAAc,UAAd,gBAAAQ,EAAqB;AAAA,IAC9B,CACD,GAEKxE,IAAW9C,EAAS,MAAMX,EAAQ,MAAM,QAAmB,GAE3DmI,IAAwBjI,EAAkBH,EAAM,OAAO,GAEvDqI,IAAwBzH,EAAS,MAC9BZ,EAAM,kBAAkBA,EAAM,gBAAgBoI,EAAsB,KAC5E,GAEKE,KAAanI,EAAY,EAAE;AAE3B,IAAAkD,EAAA;AAAA,MACJ,MAAMrD,EAAM;AAAA,MACZsI;AAAA,MACA,MAAMtI,EAAM;AAAA,OACX,OAAO,CAACuI,GAAiBD,GAAY3F,CAAO,MAAM;AACnD,MAAI4F,IACMtI,EAAA,KAAK,UAAUqI,CAAU,IAEjCF,EAAsB,QAAQ,MAAMpI,EAAM,eAAesI,GAAY3F,CAAO;AAAA,IAC9E,GACC,EAAE,MAAM,GAAA,CAAM,GAGXU,EAAA8B,GAAQ,CAACrC,MAAU;AACvB,MAAKA,KACS0F;IACd,CACD;AAEK,UAAAC,KAAiB7H,EAAS,MAAM;AACpC,YAAM8H,IAAU1I,EAAM;AAEtB,aAAI0I,IACKN,EAAsB,MAAM,OAAO,CAACO,GAAaxF,MAAW;AAC3D,cAAAyF,KAAQF,EAAQvF,CAAM;AAErB,eAAA;AAAA,UACL,GAAGwF;AAAA,UACH,CAACC,EAAK,GAAG;AAAA,YACP,GAAGD,EAAYC,EAAK,KAAK,CAAC;AAAA,YAC1BzF;AAAA,UACF;AAAA,QAAA;AAAA,MAEJ,GAAG,CAAkC,CAAA,IAGhC;AAAA,QACL,IAAInD,EAAM;AAAA,MAAA;AAAA,IACZ,CACD,GAGK8B,KAAalB,EAAS,MAAM;AAAA,MAChC;AAAA,MACA,GAAGiI;AAAAA,MACH,GAAG7I,EAAM,YAAY8I,GAAgB,WAAW,CAAC,MAAM,IAAI,CAAC;AAAA,IAAA,CAC7D,GAEKnI,KAAgBC,EAAS,MAAM;AAAA,MACnC,GAAGmI;AAAAA,IAAO,CACX,GAEKC,KAAsBpI,EAAS,MAAM;AAAA,MACzC,GAAGqI;AAAAA,IAAO,CACX,GAEKC,KAAiBtI,EAAS,MAAM;;AAAA;AAAA,QACpC;AAAA,QACA,GAAIuI,EAAS,QAAQ,KAAK;AAAA,UACxB,GAAGC;AAAAA,UACH,IAAGrI,IAAA4G,EAAQ,UAAR,QAAA5G,EAAe,YAAYsI,KAA+BC;AAAAA,QAC/D;AAAA,MAAA;AAAA,KACD,GAEKC,KAA0B3I,EAAS,MAAM;AAAA,MAC7CuI,EAAS,QAAQ,kBAAkB;AAAA,MACnClB,GAAsB,QAAQ,oBAAoB;AAAA,IAAA,CACnD,GAEKuB,KAAqB5I,EAAS,MAAM;AAAA,MACxC,GAAG6I;AAAAA,MACH,GAAIzJ,EAAM,WAAW0J,KAA2CC;AAAAA,MAChE,GAAIR,EAAS,QAAQS,KAAiD,CAAC;AAAA,IAAA,CACxE,GAEKC,KAAwBjJ,EAAS,MAAM;AAAA,MAC3C,GAAGkJ;AAAAA,IAAO,CACX,GAEKC,KAAenJ,EAAS,MAAM;AAAA,MAClC,GAAGoJ;AAAAA,IAAO,CACX;AAGD,aAASC,KAAe;AACtB,MAAI,CAACvG,EAAS,SAAS,CAAC1D,EAAM,YACJ2H,EAAQ,UAG1BE,EAAa,UAAU,UAAU,CAACpH,EAAQ,QACtCyJ,QAEDC,MAEL,WAAW,MAAM;AACT,QAAAnJ;MAAA,CACP;AAAA,IAIT;AAEA,aAASmJ,KAAa;AACpB,YAAMC,IAAkBzC,EAAQ;AAEhC,MAAIyC,KACDA,EAAgB,KAAoB;AAAA,IAEzC;AAEA,aAASF,KAAc;AACrB,YAAME,IAAkBzC,EAAQ;AAEhC,MAAIyC,KACDA,EAAgB,MAAqB;AAAA,IAE1C;AAEA,aAASpJ,KAAc;AACrB,UAAI+C,EAAa,OAAO;AAChB,cAAAsG,IAAkBlB,EAAS,QAC7B3G,EAAc,QACduF,EAAS,QACPN,EAAgB,QAChBC,EAAc;AAEpB,QAAI2C,KACDA,EAAgB,MAAqB;AAAA,MAE1C;AAAA,IACF;AAEA,aAASC,GAAaxH,GAAkC;AACtD,MAAI9C,EAAM,WACRO,EAAgB,QAAQgK,GAAQzH,GAAOE,EAAQzC,EAAgB,KAAK,CAAC,IAErEA,EAAgB,QAAQuC,GAGd0F;IACd;AAEA,aAASgC,GAAe1H,GAAkC;AACxD,MAAI9C,EAAM,WACRO,EAAgB,QAAQkK,GAAQ3H,GAAOE,EAAQzC,EAAgB,KAAK,CAAC,IAErEA,EAAgB,QAAQ;AAAA,IAE5B;AAEA,aAASmK,GAAa5H,GAAkC;AACtD,UAAI9C,EAAM,UAAU;AACZ,cAAA0C,IAAQM,EAAQzC,EAAgB,KAAK;AAE3C,QAAKmC,EAAM,SAASI,CAAK,IAGPvC,EAAA,QAAQkK,GAAQ3H,GAAOJ,CAAK,IAF5BnC,EAAA,QAAQgK,GAAQzH,GAAOJ,CAAK;AAAA,MAG9C;AAEA,QAAAnC,EAAgB,QAAQA,EAAgB,UAAUuC,IAAQA,IAAQ;AAGxD,MAAA0F;IACd;AAEA,aAASA,IAAoB;AAC3B,MAAAmC,GAAS,MAAM;AACF,mBAAA,MAAMrC,GAAW,QAAQ,EAAE;AAAA,MAAA,CACvC;AAAA,IACH;AAGA,UAAM,EAAE,WAAAsC,IAAW,UAAAzB,EAAS,IAAI0B,GAAc;AAEvC,WAAA;AAAA,MACL,MAAA3K;AAAA,MACA,UAAAoH;AAAA,MACA,cAAAC;AAAA,MACA,SAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,eAAAC;AAAA,MACA,eAAAlF;AAAA,MACA,SAAAmF;AAAA,MACA,aAAAC;AAAA,MACA,cAAAC;AAAA,MACA,YAAA/F;AAAA,MACA,eAAAnB;AAAA,MACA,qBAAAqI;AAAA,MACA,gBAAAE;AAAA,MACA,yBAAAK;AAAA,MACA,oBAAAC;AAAA,MACA,uBAAAK;AAAA,MACA,cAAAE;AAAA,MACA,WAAA/B;AAAA,MACA,iBAAAzH;AAAA,MACA,UAAAmD;AAAA,MACA,mBAAAoB;AAAA,MACA,QAAAK;AAAA,MACA,WAAAgD;AAAA,MACA,YAAAG;AAAA,MACA,uBAAAF;AAAA,MACA,uBAAAC;AAAA,MACA,gBAAAI;AAAA,MAEA,QAAAwB;AAAA,MACA,OAAAC;AAAA,MACA,MAAAC;AAAA,MAEA,cAAAG;AAAA,MACA,gBAAAE;AAAA,MACA,cAAAE;AAAA,MACA,aAAAlC;AAAA,MAEA,WAAAoC;AAAA,MACA,UAAAzB;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC,GAjpBWlF,KAAK,CArFjB,MAAA,UAAA;;GA6HoB6G,KAAK;AAAA,EAAA,KAAA;AAAA,EA7HzB,OAAA7I,gBAAAA,EAAA,CAAA,UAAA,OAAA,CAAA;;;wVACE8I,GAgRM,gBAAA;AA9QE,SAAAhJ,EAAA,GAAYC,EAAA,OAAA;AAAA,IAAA,KAAA;AAAA,IAEFgJ,OAAAA,EAAgBA,EAAO,UAAA;AAAA,EAAA,GAAA;AAAA,MAL3C,OAOS,SAAA9J,EAAA,OAAA,SAAAA,EAAA,SAAAa,KAAUqC,EAAE4D,GAAS;AAAA,MACrB,KAAA;AAAA,MACA,cAAUiD,EAAAA;AAAAA,MACV,SAAQ;AAAA,MAAA,UAAA/J,EAAA;AAAA,MAMQ,UAAKA,EAAA;AAAA,IAAA,GAAA;AAAA;QAhB9B4C,EAce5C,EAAA,QAAA,OAAA;AAAA,MAAA,CAAA;AAAA,MAdf,SAAA0C,EAAA,MAAA;AAAA,QAAAE,EAAA5C,EAAA,QAAA,SAAA,CAAA,GAAA,MAAA;AAAA;QAAA,CAAA;AAAA,MAAA,CAAA;AAAA,MAAA,GAAA;AAAA,IAAA,GAsBI,GAAA,CAAA,cAAA,YAAA,UAwOa,MAvOVsD,EAAe,IAAA,EAAA;AAAA,IAvBtBhD,GAAAO,EAAA,KA0B2BmJ,GAAgBvD;AAAAA,MACpC,KAAA;AAAA,MACA,OAAMwD,EAAI,CAAAjK,EAAA,iBAAA,WAAAA,EAAA,WAAAA,EAAA,QAAA,YAAA,gBAAA,gBAAA,EAAA,gBAAAA,EAAA,YAAA,WAAA,CAAA,CAAA;AAAA,MACV,SAAOA,EAAIkK;AAAAA,MACX,MAAU1H,EAAAA;AAAAA,MACV,SAAQ,CAAE/B,CAAAA,EAAAA;AAAAA,MACV,UAAawD,EAAAA;AAAAA,MACb,UAAQjE,EAAGS;AAAAA,MAAAA,eAAAA,EAAAA,SAAAA,iBAAAA;AAAAA,MAjClB,UAmFYT,EAAA,WAAA,OAAA;AAAA,IAAA,GAAA;AAAA,eA/CC8G,EAAS,MAAA;AAAA,QACChE,EAAA,OAAA;AAAA,UACd,IAtCT9C,EAAA;AAAA,UAuCS,KAAA;AAAA,UACA,OAAKe,EAAAf,EAAA,aAAA;AAAA,UACL,UAAIA,EAAA;AAAA,UAAA,SAAAC,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAM,MAAAP,EAAA,MAAA,SAAAO,CAAA;AAAA,UAEL,QAuCON,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAM,MArCJP,EAAK,MAAEX,QAAAA,CAAAA;AAAAA,QAAAA,GAAAA;AAAAA,sBAGN,iBAmB0B,EAAA,OAAAW,EAAA,gBAAA,GAAA,MAAA;AAAA,YAAAA,EAnEtC,iBAiDqCkD,EAAAiH,GAAA;AAAA,cAjDrC,KAAA;AAAA,cAAA,KAAA;AAAA,cAmDe,YAAO9K,EAAAA;AAAAA,cACP,uBAAgBY,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAM,MAAAP,EAAA,aAAAO;AAAA,cAChB,OAAUmB,EAAAA;AAAAA,cACV,SAAaxC,EAAAA;AAAAA,cACb,UAAUsD,EAAAA;AAAAA,cACV,aAAU/B,EAAAA;AAAAA,cACV,UAAaT,EAAA;AAAA,cACb,UAAOA,EAAE2G;AAAAA,cACT,iBAAK3G,EAAA;AAAA,cAAA,WAAAA,EAAA,iBAAA;AAAA,cAEW,SAAGC,EAAG,CAAI,MAAAA,EAAA,CAAA,IAAA,CAAAM,MAAAP,EAAA,eAAAO,CAAA;AAAA,YAAA,GAAA;AAAA;gBA7DzCqC,EAAA5C,EAAA,QAAA,OAAA,EAAA,MAAA2C,EAAA,CAAA;AAAA,cAAA,CAAA;AAAA;YAAA,GAAA,GAAA,CAAA,cAAA,SAAA,WAAA,YAAA,eAAA,YAAA,YAAA,iBAAA,SAAA,CAAA,MAAA9B,EAwEmC,GAAAqC,EAAAkH,GAAA;AAAA,cAxEnC,KAAA;AAAA,cAAA,KAAA;AAAA,cA0Ee,YAAO/K,EAAAA;AAAAA,cACP,uBAAgBY,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAM,MAAAP,EAAA,aAAAO;AAAA,cAChB,OAAWP,EAAA;AAAA,cACX,SAAQA,EAAES;AAAAA,cACV,aAAeoC,EAAAA;AAAAA,cACf,UAAO7C,EAAE2G;AAAAA,cAAAA,iBAAAA,EAAAA;AAAAA;YA/ExB,GAAA,MAAA,GAAA,CAAA,cAAA,SAAA,WAAA,eAAA,YAAA,iBAAA,SAAA,CAAA;AAAA,UAAA,CAqFM;AAAA,QAAA,GACkBM,IAASlE,EAAA;AAAA,QAAAD,EAAA,OACvBuH,IAME;AAAA,UAAArK,EA7FZ,kBAwF0BkD,EAAAoH,GAAA;AAAA,YACb,KAAK;AAAA,YACL,MAAA;AAAA,YACA,OAAA;AAAA,YACA,qBAAK,kBA5FlB,yBA4FyBC;AAAAA,YAAAA,UAAAA,EAAAA,YAAAA,EAAAA;AAAAA,YA5FzB,SAAAtK,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAAuK,EAAA,CAAAjK,MAAAP,EAAA,MAAA,qBAAAA,EAAA,WAAA,CAAA,IAAA,MAAA,GAAA,CAAA,MAAA,CAAA;AAAA,UAAA,GAgGQ,MAAA,GAAA,CAAA,UAAA,CAAA,KAEGsD,EAAMqD,IAAY,EAAA;AAAA,UAAArG,EAlG7B0C,EAmGmB2D,GAAY;AAAA,YACpB,QAAS,iBAAU,SAAA3G,EAAA,eAAA,WAAA,kBAAA;AAAA,YAAA,OAAAe,EAAAf,EAAA,iBAAA,UAAAA,EAAA,eAAA,0CAAA,EAAA;AAAA;;;UAIxB,CAAA;AAAA,QAAA,CAAA;AAAA,UAEYyK,GAAM;AAAA,UACf,KAAA;AAAA,UACA,SAAS;AAAA,UACT,SAASzK,EAAA,UAAAA,EAAA;AAAA,UACT,WAAA;AAAA,UACA,QAAA;AAAA,UAAA,cAAA;AAAA,UA/GT,0BA4Pc;AAAA,QAAA,GAAA;AAAA,mBA3IK0C,EAjHnB,MAAA;AAAA,YAAAI,EAAA,OAAA;AAAA,cAkH0B6D,OAAAA,EAAY3G,EAAe6C,cAAAA;AAAAA,YAAAA,GAAAA;AAAAA,cAlHrD7C,EAAA,iBAAA,UAAAA,EAAA,gBAAAA,EAAA,YAAAa,EAAA,GAoHmCqC,EAAAwH,GAAA;AAAA,gBApHnC,KAAA;AAAA,gBAAA,KAAA;AAAA,gBAsHe,YAtHf1K,EAAA;AAAA,gBAuHe,uBAAcC,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAM,MAAAP,EAAA,aAAAO;AAAA,gBACd,SAAarB,EAAW,mBAAA;AAAA,gBAAA,MAAA;AAAA,gBAxHvC,aAAAc,EAAA;AAAA,cAAA,GA2HU,MAAA,GAAA,CAAA,cAgIM,SAhIA,aAAA,CAAA,KAAAsD,EA3HhB,IA2HuB+E,EAAAA;AAAAA,cAAAA,EAAAA,OAAAA;AAAAA,uBACKsC,EAAO3K,EAAA,uBAAA;AAAA,cAAA,GAAA;AAAA,gBAEnBA,EAAA,WAAAa,EAAA,GAKIC,EAAA,OAAA8I,IAAA;AAAA,kBAAAhH,EAnIpB5C,qBAgI4B6I,CAAY,GAAA,MAAA;AAAA,oBAAA7F,EACZ4H,GAAM;AAAA,sBACb,OAAMC,EAAW7K,EAAA,YAAA;AAAA,sBAAA,SAAA;AAAA;;kBAMLmH,CAAAA;AAAAA,gBACH2D,CAAAA,KAAAA,EAAAA,sBAAe,SAC7B,KAAAjK,KAAAC,EAAAoD,GAgDmB,EA1LnC,KAAA,EAAA,GAAA;AAAA,kBAAAlE,EAAA,mBAAAa,EA4IwB,EAAS,GAAAC,EAAAoD,GAAA,EAAA,KAAA,EAAA,GAAA6G,EAAA/K,EAAA,gBAAA,CAAA0H,GAAAsD,OACTnK,EAAW,GAAAqC,EAAA+H,GAAA;AAAA,oBAAA,KAAAD;AAAA,oBA7InC,OAAAA;AAAA,kBAAA,GAAA;AAAA;sBAkJ6BhL,EAAA,YAAAa,EAAA,EAAA,GAAAC,EAAAoD,GAAA,EAAA,KAAA,EAAA,GAAA6G,EAAArD,GAAA,CAAAzF,GAAAiJ,OACNrK,EAAA,GAA0BqC,EAAAiI,GAAA;AAAA,wBAC1B,KAAAD;AAAA,wBACA,gBAAgBjJ,EAAC;AAAA,wBAAA,UAAAjC,EAAA,mBAAAA,EAAA,gBAAA,SAAAiC,EAAA,KAAA;AAAA,wBArJxC,UAAAA,EAAA;AAAA,sBAAA,GAAA;AAAA,iCAyJ8BS,EAAErD,MAAAA;AAAAA,0BAAAA,EACCW,EAAM,QAAA,kBAAA;AAAA,4BASV,OAAAA,EAAA;AAAA,4BAPL,QAAAiC;AAAA,0BAAA,GA5JxB,MAAA;AAAA,4BAAAe,EAAAoI,GAAA;AAAA,8BA8J2B,YAAOpL,EAAO;AAAA,8BACd,uBAAmBC,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAM,MAAAP,EAAA,kBAAAO;AAAA,8BACnB,OAAA0B,EAAA;AAAA,8BACA,OAAUA,EAAA;AAAA,8BAAA,iBAAA;AAAA;;0BAjKrC,CAAA;AAAA,wBAAA,CAAA;AAAA;gDAwKoB,YAgBa,UAAA,CAAA,EAdJ,GAAA,GAAA,MAAApB,EAAA,EAAA,GAAAC,EAAAoD,GAAA,EAAA,KAAA,EAAA,GAAA6G,EAAArD,GAAA,CAAAzF,GAAAiJ,OACDrK,EAAA,KAAEyH,GAAkB;AAAA,wBACzB,KAAA4C;AAAA,wBACA,SAAU7L,EAA2B,kBAAA;AAAA,wBACrC,gBAAgB4C,EAAC;AAAA,wBACjB,UA/KvBjC,EA+KmCoJ,oBAAAA,EAAAA;AAAAA,wBAAAA,UAAAA,EAAAA;AAAAA,wBA/KnC,SAuL6BoB,EAAA,CAAAjK,MAAAP,EAAA,aAAAiC,EAAA,KAAA,GAAA,CAAA,MAAA,CAAA;AAAA,sBAAA,GAAA;AAAA,iCAJCS,EAAErD,MAAAA;AAAAA,0BAAAA,EACCW,EAAM,QAAA,kBAAA;AAAA,4BAGV,OAAAA,EAAA;AAAA,4BAvL7B,QAAAiC;AAAA,0BAAA,GAAA,MAAA;AAAA;0BAAA,CAAA;AAAA,wBAAA,CAAA;AAAA;6FAAA,GAAA,GAAA;AAAA,oBAAA,CAAA;AAAA;kBA6Lc,GAAA,MAAA,CAAA,OAAA,CAAA,EACkB4E,GAAAA,GAAAA,MAAAA,EAAAA,GAAAA,EACd3C,GAyBa,EAxN/B,KAAA,KAAA;AAAA,oBAiM2BlE,EAAA,YAAAa,EAAA,EAAA,GAAAC,EAAAoD,GAAA,EAAA,KAAA,EAAA,GAAA6G,EAAA/K,EAAA,uBAAA,CAAAiC,GAAAiJ,OACNrK,EAAA,GAA0BqC,EAAAiI,GAAA;AAAA,sBAC1B,KAAKD;AAAA,sBACL,gBAAU7L,EAAAA;AAAAA,sBACV,SAAiBW,EAAQ,kBAAA;AAAA,sBACzB,UAtMrBA,EAsMkC,mBAAAA,EAAA,gBAAmBwJ,SAAavH,EAAA,KAAA;AAAA,sBAAA,UAAAA,EAAA;AAAA,sBAtMlE,SAuNiCuI,EAAA,CAAAjK,MAAA,CAAA0B,EAAA,YAAAjC,EAAA,aAAAiC,EAAA,KAAA,GAAA,CAAA,MAAA,CAAA;AAAA,oBAAA,GAAA;AAAA,sBAdV,SAAAS,EAAW,MAAErD;AAAAA,wBAAAA,EACN+L,GAAY;AAAA,0BACnB,eAAapL,EAAE;AAAA,0BACf,OAAUiC,EAAA;AAAA,0BAAA,iBAAA;AAAA,0BA5MjC,UAAAA,EAAA;AAAA,wBAAA,GAAA;AAAA,mCA8M4BS,EAAK,MAAA;AAAA,4BAAAI,EAAA,OAAA;AAAA,8BACT,SAMO,CAAAvC,MAAA,CAAA0B,EAAA,YAAAjC,EAAA,aAAAiC,EAAA,KAAA;AAAA,4BAAA,GAAA;AAAA,gCAHIjC,EAAM,QAAA,kBAAA;AAAA,gCAGV,OAAAA,EAAA;AAAA,gCArN/B,QAAAiC;AAAA,8BAAA,GAAA,MAAA;AAAA,gCAAAmB,EAAAC,EAAApB,EAAA,KAAA,GAAA,CAAA;AAAA,8BAAA,CAAA;AAAA,4BAAA,GAAA,GAAAoJ,EAAA;AAAA,0BAAA,CAAA;AAAA;wBAAA,GAAA,MAAA,CAAA,eAAA,SAAA,UAAA,CAAA;AAAA,sBAAA,CAAA;AAAA;oBA4NkB,GAAA,MAAA,CAAA,gBAAA,SAAA,YAgBa,YA5O/B,SAAA,CAAA,EA8N2B,GAAA,GAAA,MAAAxK,EAAA,EAAA,GAAAC,EAAAoD,GAAA,EAAA,KAAA,EAAA,GAAA6G,EAAA/K,EAAA,uBAAA,CAAAiC,GAAAiJ,OACDrK,EAAA,KAAEyH,GAAkB;AAAA,sBACzB,KAAA4C;AAAA,sBACA,SAAqBlL,EAAK,kBAAA;AAAA,sBAC1B,UAAUA,EAAe,oBAAAiC,EAAA;AAAA,sBACzB,gBAnOrBA,EAAA;AAAA,sBAAA,UAAAA,EAAA;AAAA,sBAAA,SA2O2BuI,EAAA,CAAAjK,MAAA;AAAA,wBAAAP,EAAA,aAAAiC,EAAA,KAAA,GAAAjC,EAAA,MAAA;AAAA,sBAAA,GAAA,CAAA,MAAA,CAAA;AAAA,oBAAA,GAAA;AAAA,+BAJC0C,EAAErD,MAAAA;AAAAA,wBAAAA,EACCW,EAAM,QAAA,kBAAA;AAAA,0BAGV,OAAAA,EAAA;AAAA,0BA3O3B,QAAAiC;AAAA,wBAAA,GAAA,MAAA;AAAA;wBAAA,CAAA;AAAA,sBAAA,CAAA;AAAA;;;mBAAA,EAkP2B0G,MAAAA,KAAAA,EAAAA,OAAAA;AAAAA,kBAAAA,KAAAA;AAAAA,kBACX,OAKO5H,EAAAf,EAAA,qBAAA;AAAA,gBAAA,GAAA;AAAA;;;;;YAxPvB,GAAA,CAAA;AAAA,UAAA,CAAA;AAAA;QAAA,GAAA,GAAA,CAAA,SAAA,CAAA;AAAA,MAAA,CAAA;AAAA;uCAyBwBgJ,WAAK,YAAA,YAAA,eAAA,UAAA,CAAA,IAAA;AAAA,MAAA,CAAAsC,IAAAtL,EAAA,MAAA;AAAA,MAuOT8J,CAAmByB,GAAAvL,EAAA,KAAA;AAAA,IAAA,CAAA;AAAA,IAhQvCA,EAAA,OAAA,QAAAA,EAAA,OAAAM,GAmQmBG,EAAQ,GAAAyC,EAAAsI,GAAA;AAAA,MAAA,KAAA;AAAA,MAnQ3B,UAAAxL,EAAA;AAAA,IAAA,GAAA;AAAA,MAAA,SAAA0C,EAAA,MAAA;AAAA,QAAAE,EAAA5C,EAAA,QAAA,QAAA,CAAA,GAAA,MAAA;AAAA;QAAA,CAAA;AAAA,MAAA,CAAA;AAAA;;MAAA,CAAAyL,GAAA,CAAAzL,EAAA,KAAA;AAAA,IAAA,CA+QiB,IAAAsD,EAAA,IAAA,EAAA;AAAA,IAAAhD,EA/QjB0C,EA+Qc0I,GAAA,EAAA,UAAA1L,EAAA,YAAA;AAAA,MAAA,SAAA0C,EAAA,MAAA;AAAA,QA/QdU,EAAAC,EAAArD,EAAA,KAAA,GAAA,CAAA;AAAA,MAAA,CAAA;AAAA;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrSkeletonRect-D9sTxEc-.mjs","sources":["../../../components/or-skeleton-v3/src/or-skeleton-circle-v3/OrSkeletonCircle.vue","../../../components/or-skeleton-v3/src/or-skeleton-rect-v3/OrSkeletonRect.vue"],"sourcesContent":["<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :style=\"rootStyle\"\n />\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { pxToRem } from '@onereach/ui-components-common/utils';\nimport { SkeletonAnimated, SkeletonCircle, SkeletonRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrSkeletonCircle',\n\n props: {\n animated: {\n type: Boolean,\n required: false,\n default: true,\n },\n\n size: {\n type: [Number, String],\n required: false,\n default: 40,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-skeleton-v3',\n 'or-skeleton-circle',\n ...SkeletonRoot,\n ...SkeletonCircle,\n ...(props.animated ? SkeletonAnimated : []),\n ]);\n\n const rootStyle = computed(() => {\n const size = props.size ?? 40; // 40px - medium OrAvatar\n const sizeStyle = typeof size === 'number'\n ? pxToRem(size)\n : size;\n\n return {\n 'width': sizeStyle,\n 'min-width': sizeStyle,\n 'height': sizeStyle,\n 'min-height': sizeStyle,\n };\n });\n\n return {\n root,\n rootStyles,\n rootStyle,\n };\n },\n});\n</script>\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :style=\"rootStyle\"\n />\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { pxToRem } from '@onereach/ui-components-common/utils';\nimport { SkeletonAnimated, SkeletonRect, SkeletonRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrSkeletonRect',\n\n props: {\n animated: {\n type: Boolean,\n required: false,\n default: true,\n },\n\n width: {\n type: [Number, String],\n required: false,\n default: '100%',\n },\n\n height: {\n type: [Number, String],\n required: false,\n default: 36,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-skeleton-v3',\n 'or-skeleton-rect',\n ...SkeletonRoot,\n ...SkeletonRect,\n ...(props.animated ? SkeletonAnimated : []),\n ]);\n\n const rootStyle = computed(() => {\n const width = props.width ?? '100%';\n const height = props.height ?? 36; // 36px - default OrInput height\n\n return {\n 'width': typeof width === 'number' ? pxToRem(width) : width,\n 'height': typeof height === 'number' ? pxToRem(height) : height,\n };\n });\n\n return {\n root,\n rootStyles,\n rootStyle,\n };\n },\n});\n</script>\n"],"names":["_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_openBlock","_createElementBlock","_normalizeClass"],"mappings":";;;SAEUA,EAAMC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAA;
|
|
1
|
+
{"version":3,"file":"OrSkeletonRect-D9sTxEc-.mjs","sources":["../../../components/or-skeleton-v3/src/or-skeleton-circle-v3/OrSkeletonCircle.vue","../../../components/or-skeleton-v3/src/or-skeleton-rect-v3/OrSkeletonRect.vue"],"sourcesContent":["<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :style=\"rootStyle\"\n />\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { pxToRem } from '@onereach/ui-components-common/utils';\nimport { SkeletonAnimated, SkeletonCircle, SkeletonRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrSkeletonCircle',\n\n props: {\n animated: {\n type: Boolean,\n required: false,\n default: true,\n },\n\n size: {\n type: [Number, String],\n required: false,\n default: 40,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-skeleton-v3',\n 'or-skeleton-circle',\n ...SkeletonRoot,\n ...SkeletonCircle,\n ...(props.animated ? SkeletonAnimated : []),\n ]);\n\n const rootStyle = computed(() => {\n const size = props.size ?? 40; // 40px - medium OrAvatar\n const sizeStyle = typeof size === 'number'\n ? pxToRem(size)\n : size;\n\n return {\n 'width': sizeStyle,\n 'min-width': sizeStyle,\n 'height': sizeStyle,\n 'min-height': sizeStyle,\n };\n });\n\n return {\n root,\n rootStyles,\n rootStyle,\n };\n },\n});\n</script>\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :style=\"rootStyle\"\n />\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { pxToRem } from '@onereach/ui-components-common/utils';\nimport { SkeletonAnimated, SkeletonRect, SkeletonRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrSkeletonRect',\n\n props: {\n animated: {\n type: Boolean,\n required: false,\n default: true,\n },\n\n width: {\n type: [Number, String],\n required: false,\n default: '100%',\n },\n\n height: {\n type: [Number, String],\n required: false,\n default: 36,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-skeleton-v3',\n 'or-skeleton-rect',\n ...SkeletonRoot,\n ...SkeletonRect,\n ...(props.animated ? SkeletonAnimated : []),\n ]);\n\n const rootStyle = computed(() => {\n const width = props.width ?? '100%';\n const height = props.height ?? 36; // 36px - default OrInput height\n\n return {\n 'width': typeof width === 'number' ? pxToRem(width) : width,\n 'height': typeof height === 'number' ? pxToRem(height) : height,\n };\n });\n\n return {\n root,\n rootStyles,\n rootStyle,\n };\n },\n});\n</script>\n"],"names":["_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_openBlock","_createElementBlock","_normalizeClass"],"mappings":";;;SAEUA,EAAMC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAA;AACN,SAAAC,EAAA,GAAYC,EAAA,OAAA;AAAA,IACjB,KAAK;AAAA,IAAA,OAAAC,EAAAR,EAAA,UAAA;AAAA;;;;SCFAD,EAAMC,GAAAC,GAAAC,GAAAC,GAAAC,GAAAC,GAAA;AACN,SAAAC,EAAA,GAAYC,EAAA,OAAA;AAAA,IACjB,KAAK;AAAA,IAAA,OAAAC,EAAAR,EAAA,UAAA;AAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrSkeletonText-WYaAaljl.mjs","sources":["../../../components/or-skeleton-v3/src/styles.ts","../../../components/or-skeleton-v3/src/or-skeleton-circle-v3/OrSkeletonCircle.vue","../../../components/or-skeleton-v3/src/or-skeleton-rect-v3/OrSkeletonRect.vue","../../../components/or-skeleton-v3/src/or-skeleton-text-v3/OrSkeletonText.vue"],"sourcesContent":["export const SkeletonRoot: string[] = [\n // Position\n 'relative',\n\n // Layout\n 'overflow-hidden',\n\n // Box\n 'p-0',\n\n // Borders\n 'border-0',\n\n // Theme\n 'bg-skeletons-gradient',\n 'dark:bg-skeletons-gradient-dark',\n\n // Background\n 'bg-repeat',\n];\n\nexport const SkeletonTextContainerRoot: string[] = [\n // Layout\n 'flex',\n 'flex-col',\n\n // Box\n 'h-auto',\n];\n\nexport const SkeletonCircle: string[] = [\n // Box\n 'rounded-full',\n];\n\nexport const SkeletonRect: string[] = [\n // Box\n 'rounded-md',\n];\n\nexport const SkeletonText: string[] = [\n // Box\n 'w-full',\n 'rounded-md',\n];\n\nexport const SkeletonAnimated: string[] = [\n // Background\n 'bg-[length:200%]',\n\n // Animation\n 'animate-skeleton-loader',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :style=\"rootStyle\"\n />\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { pxToRem } from '@onereach/ui-components-common/utils';\nimport { SkeletonAnimated, SkeletonCircle, SkeletonRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrSkeletonCircle',\n\n props: {\n animated: {\n type: Boolean,\n required: false,\n default: true,\n },\n\n size: {\n type: [Number, String],\n required: false,\n default: 40,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-skeleton-v3',\n 'or-skeleton-circle',\n ...SkeletonRoot,\n ...SkeletonCircle,\n ...(props.animated ? SkeletonAnimated : []),\n ]);\n\n const rootStyle = computed(() => {\n const size = props.size ?? 40; // 40px - medium OrAvatar\n const sizeStyle = typeof size === 'number'\n ? pxToRem(size)\n : size;\n\n return {\n 'width': sizeStyle,\n 'min-width': sizeStyle,\n 'height': sizeStyle,\n 'min-height': sizeStyle,\n };\n });\n\n return {\n root,\n rootStyles,\n rootStyle,\n };\n },\n});\n</script>\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :style=\"rootStyle\"\n />\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { pxToRem } from '@onereach/ui-components-common/utils';\nimport { SkeletonAnimated, SkeletonRect, SkeletonRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrSkeletonRect',\n\n props: {\n animated: {\n type: Boolean,\n required: false,\n default: true,\n },\n\n width: {\n type: [Number, String],\n required: false,\n default: '100%',\n },\n\n height: {\n type: [Number, String],\n required: false,\n default: 36,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-skeleton-v3',\n 'or-skeleton-rect',\n ...SkeletonRoot,\n ...SkeletonRect,\n ...(props.animated ? SkeletonAnimated : []),\n ]);\n\n const rootStyle = computed(() => {\n const width = props.width ?? '100%';\n const height = props.height ?? 36; // 36px - default OrInput height\n\n return {\n 'width': typeof width === 'number' ? pxToRem(width) : width,\n 'height': typeof height === 'number' ? pxToRem(height) : height,\n };\n });\n\n return {\n root,\n rootStyles,\n rootStyle,\n };\n },\n});\n</script>\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"containerStyles\"\n :style=\"containerStyle\"\n >\n <div\n v-for=\"key in lineKeys\"\n :key=\"key\"\n :class=\"rowStyles\"\n :style=\"rowStyle\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { pxToRem } from '@onereach/ui-components-common/utils';\nimport { SkeletonAnimated, SkeletonRoot, SkeletonText, SkeletonTextContainerRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrSkeletonText',\n\n props: {\n animated: {\n type: Boolean,\n required: false,\n default: true,\n },\n\n linesCount: {\n type: Number,\n required: false,\n default: 1,\n },\n\n width: {\n type: [Number, String],\n required: false,\n default: '100%',\n },\n\n fontSize: {\n type: Number,\n required: false,\n default: 16,\n },\n\n lineHeight: {\n type: Number,\n required: false,\n default: 24,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const containerStyles = computed(() => [\n 'or-skeleton-text-root',\n ...SkeletonTextContainerRoot,\n ]);\n\n const containerStyle = computed(() => {\n const width = props.width ?? '100%';\n\n return {\n 'width': typeof width === 'number' ? pxToRem(width) : width,\n };\n });\n\n const rowStyles = computed(() => [\n 'or-skeleton-v3',\n 'or-skeleton-text',\n ...SkeletonRoot,\n ...SkeletonText,\n ...(props.animated ? SkeletonAnimated : []),\n ]);\n\n const rowStyle = computed(() => {\n const height = props.fontSize ?? 16;\n const margin = ((props.lineHeight ?? 24) - height) / 2;\n\n return {\n 'height': typeof height === 'number' ? pxToRem(height) : height,\n 'margin': `${typeof margin === 'number' ? pxToRem(margin) : margin} 0`,\n };\n });\n\n // State\n const lineKeys = computed(() => [...Array(props.linesCount).keys()]);\n\n return {\n root,\n containerStyles,\n containerStyle,\n rowStyles,\n rowStyle,\n lineKeys,\n };\n },\n});\n</script>\n"],"names":["SkeletonRoot","SkeletonTextContainerRoot","SkeletonCircle","SkeletonRect","SkeletonText","SkeletonAnimated","_sfc_main$2","defineComponent","props","root","ref","rootStyles","computed","rootStyle","size","sizeStyle","pxToRem","_sfc_main$1","width","height","_sfc_main","containerStyles","containerStyle","rowStyles","rowStyle","margin","lineKeys","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_openBlock","_createElementBlock","_normalizeClass","_Fragment","_renderList","key"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrSkeletonText-WYaAaljl.mjs","sources":["../../../components/or-skeleton-v3/src/styles.ts","../../../components/or-skeleton-v3/src/or-skeleton-circle-v3/OrSkeletonCircle.vue","../../../components/or-skeleton-v3/src/or-skeleton-rect-v3/OrSkeletonRect.vue","../../../components/or-skeleton-v3/src/or-skeleton-text-v3/OrSkeletonText.vue"],"sourcesContent":["export const SkeletonRoot: string[] = [\n // Position\n 'relative',\n\n // Layout\n 'overflow-hidden',\n\n // Box\n 'p-0',\n\n // Borders\n 'border-0',\n\n // Theme\n 'bg-skeletons-gradient',\n 'dark:bg-skeletons-gradient-dark',\n\n // Background\n 'bg-repeat',\n];\n\nexport const SkeletonTextContainerRoot: string[] = [\n // Layout\n 'flex',\n 'flex-col',\n\n // Box\n 'h-auto',\n];\n\nexport const SkeletonCircle: string[] = [\n // Box\n 'rounded-full',\n];\n\nexport const SkeletonRect: string[] = [\n // Box\n 'rounded-md',\n];\n\nexport const SkeletonText: string[] = [\n // Box\n 'w-full',\n 'rounded-md',\n];\n\nexport const SkeletonAnimated: string[] = [\n // Background\n 'bg-[length:200%]',\n\n // Animation\n 'animate-skeleton-loader',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :style=\"rootStyle\"\n />\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { pxToRem } from '@onereach/ui-components-common/utils';\nimport { SkeletonAnimated, SkeletonCircle, SkeletonRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrSkeletonCircle',\n\n props: {\n animated: {\n type: Boolean,\n required: false,\n default: true,\n },\n\n size: {\n type: [Number, String],\n required: false,\n default: 40,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-skeleton-v3',\n 'or-skeleton-circle',\n ...SkeletonRoot,\n ...SkeletonCircle,\n ...(props.animated ? SkeletonAnimated : []),\n ]);\n\n const rootStyle = computed(() => {\n const size = props.size ?? 40; // 40px - medium OrAvatar\n const sizeStyle = typeof size === 'number'\n ? pxToRem(size)\n : size;\n\n return {\n 'width': sizeStyle,\n 'min-width': sizeStyle,\n 'height': sizeStyle,\n 'min-height': sizeStyle,\n };\n });\n\n return {\n root,\n rootStyles,\n rootStyle,\n };\n },\n});\n</script>\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :style=\"rootStyle\"\n />\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { pxToRem } from '@onereach/ui-components-common/utils';\nimport { SkeletonAnimated, SkeletonRect, SkeletonRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrSkeletonRect',\n\n props: {\n animated: {\n type: Boolean,\n required: false,\n default: true,\n },\n\n width: {\n type: [Number, String],\n required: false,\n default: '100%',\n },\n\n height: {\n type: [Number, String],\n required: false,\n default: 36,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-skeleton-v3',\n 'or-skeleton-rect',\n ...SkeletonRoot,\n ...SkeletonRect,\n ...(props.animated ? SkeletonAnimated : []),\n ]);\n\n const rootStyle = computed(() => {\n const width = props.width ?? '100%';\n const height = props.height ?? 36; // 36px - default OrInput height\n\n return {\n 'width': typeof width === 'number' ? pxToRem(width) : width,\n 'height': typeof height === 'number' ? pxToRem(height) : height,\n };\n });\n\n return {\n root,\n rootStyles,\n rootStyle,\n };\n },\n});\n</script>\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"containerStyles\"\n :style=\"containerStyle\"\n >\n <div\n v-for=\"key in lineKeys\"\n :key=\"key\"\n :class=\"rowStyles\"\n :style=\"rowStyle\"\n />\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, ref } from 'vue';\nimport { pxToRem } from '@onereach/ui-components-common/utils';\nimport { SkeletonAnimated, SkeletonRoot, SkeletonText, SkeletonTextContainerRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrSkeletonText',\n\n props: {\n animated: {\n type: Boolean,\n required: false,\n default: true,\n },\n\n linesCount: {\n type: Number,\n required: false,\n default: 1,\n },\n\n width: {\n type: [Number, String],\n required: false,\n default: '100%',\n },\n\n fontSize: {\n type: Number,\n required: false,\n default: 16,\n },\n\n lineHeight: {\n type: Number,\n required: false,\n default: 24,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const containerStyles = computed(() => [\n 'or-skeleton-text-root',\n ...SkeletonTextContainerRoot,\n ]);\n\n const containerStyle = computed(() => {\n const width = props.width ?? '100%';\n\n return {\n 'width': typeof width === 'number' ? pxToRem(width) : width,\n };\n });\n\n const rowStyles = computed(() => [\n 'or-skeleton-v3',\n 'or-skeleton-text',\n ...SkeletonRoot,\n ...SkeletonText,\n ...(props.animated ? SkeletonAnimated : []),\n ]);\n\n const rowStyle = computed(() => {\n const height = props.fontSize ?? 16;\n const margin = ((props.lineHeight ?? 24) - height) / 2;\n\n return {\n 'height': typeof height === 'number' ? pxToRem(height) : height,\n 'margin': `${typeof margin === 'number' ? pxToRem(margin) : margin} 0`,\n };\n });\n\n // State\n const lineKeys = computed(() => [...Array(props.linesCount).keys()]);\n\n return {\n root,\n containerStyles,\n containerStyle,\n rowStyles,\n rowStyle,\n lineKeys,\n };\n },\n});\n</script>\n"],"names":["SkeletonRoot","SkeletonTextContainerRoot","SkeletonCircle","SkeletonRect","SkeletonText","SkeletonAnimated","_sfc_main$2","defineComponent","props","root","ref","rootStyles","computed","rootStyle","size","sizeStyle","pxToRem","_sfc_main$1","width","height","_sfc_main","containerStyles","containerStyle","rowStyles","rowStyle","margin","lineKeys","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_openBlock","_normalizeClass","_createElementBlock","_Fragment","_renderList","key"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrSlider-Cec0WpUQ.mjs","sources":["../../../components/or-slider-v3/src/OrSlider.vue"],"sourcesContent":["<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :disabled=\"disabled\"\n >\n <div\n :ref=\"'rail'\"\n :class=\"railStyles\"\n :disabled=\"disabled\"\n >\n <div\n :class=\"trackStyles\"\n :style=\"trackInlineStyles\"\n :disabled=\"disabled\"\n />\n\n <OrTooltip\n :is-open=\"isHovering || isDragging\"\n :placement=\"tooltipPlacement\"\n :offset=\"24\"\n :external-control=\"true\"\n v-bind=\"tooltip\"\n >\n <div\n :ref=\"'thumb'\"\n :class=\"thumbStyles\"\n :disabled=\"disabled\"\n />\n\n <template v-slot:content>\n <slot\n name=\"tooltipContent\"\n :value=\"proxyModelValue\"\n >\n {{ proxyModelValue }}\n </slot>\n </template>\n </OrTooltip>\n\n <template v-if=\"breakpoints.length > 0\">\n <div\n v-for=\"breakpoint of [minValue, ...breakpoints, maxValue]\"\n :key=\"breakpoint\"\n :class=\"breakpointMarkStyles\"\n :style=\"getBreakpointMarkComputedStyles(breakpoint)\"\n :activated=\"breakpoint <= proxyModelValue\"\n :disabled=\"disabled\"\n @mouseenter=\"highlightedBreakpoint = breakpoint\"\n @mouseleave=\"highlightedBreakpoint = undefined\"\n />\n </template>\n </div>\n\n <div :class=\"labelStyles\">\n <div\n v-for=\"breakpoint of [minValue, ...breakpoints, maxValue]\"\n :key=\"breakpoint\"\n :class=\"labelMarkStyles\"\n :style=\"getBreakpointMarkComputedStyles(breakpoint)\"\n :disabled=\"disabled\"\n :force-state=\"highlightedBreakpoint === breakpoint ? 'hover' : undefined\"\n @mouseenter=\"highlightedBreakpoint = breakpoint\"\n @mouseleave=\"highlightedBreakpoint = undefined\"\n @click=\"proxyModelValue = breakpoint\"\n >\n <slot\n :name=\"`${breakpoint}-label`\"\n :value=\"breakpoint\"\n >\n {{ breakpoint }}\n </slot>\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { Position, clamp, useDraggable, useElementBounding, useElementHover } from '@vueuse/core';\nimport { PropType, computed, defineComponent, ref, toRef, watch } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { OrTooltipV3 as OrTooltip } from '@onereach/ui-components.or-tooltip-v3';\nimport * as Styles from './styles';\nimport { SliderColor, SliderModelValue, SliderOrientation } from './types';\n\nexport default defineComponent({\n name: 'OrSlider',\n\n components: {\n OrTooltip,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<SliderModelValue>,\n default: undefined,\n },\n\n minValue: {\n type: Number,\n default: 0,\n },\n\n maxValue: {\n type: Number,\n default: 100,\n },\n\n step: {\n type: Number,\n default: 1,\n },\n\n breakpoints: {\n type: Array as PropType<number[]>,\n default: () => [],\n },\n\n color: {\n type: String as PropType<`${SliderColor}`>,\n default: () => SliderColor.Primary,\n },\n\n orientation: {\n type: String as PropType<`${SliderOrientation}`>,\n default: () => SliderOrientation.Horizontal,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n tooltip: {\n type: Object as PropType<Pick<InstanceType<typeof OrTooltip>['$props'], 'placement' | 'offset' | 'debounce'>>,\n default: undefined,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n expose: [\n 'root',\n ],\n\n setup(props, context) {\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-slider-v3',\n ...Styles.Slider,\n ...Styles.SliderOrientations[props.orientation],\n ]);\n\n const rail = ref<HTMLElement>();\n\n const railStyles = computed(() => [\n 'or-slider-rail-v3',\n ...Styles.SliderRail,\n ...Styles.SliderRailOrientations[props.orientation],\n ]);\n\n const trackStyles = computed(() => [\n ...Styles.SliderTrack,\n ...Styles.SliderTrackColors[props.color],\n ]);\n\n // eslint-disable-next-line vue/return-in-computed-property\n const trackInlineStyles = computed(() => {\n switch (props.orientation) {\n case SliderOrientation.Horizontal:\n case SliderOrientation.HorizontalReversed:\n return { width: `${internalModelValue.value * 100}%` };\n\n case SliderOrientation.Vertical:\n case SliderOrientation.VerticalReversed:\n return { height: `${internalModelValue.value * 100}%` };\n }\n });\n\n const thumb = ref<HTMLElement>();\n\n const thumbStyles = computed(() => [\n 'or-slider-thumb-v3',\n ...Styles.SliderThumb,\n ...Styles.SliderThumbColors[props.color],\n 'touch-none', // Required for proper work on mobile\n ]);\n\n const breakpointMarkStyles = computed(() => [\n ...Styles.SliderBreakpointMark,\n ...Styles.SliderBreakpointMarkColors[props.color],\n ]);\n\n const labelStyles = computed(() => [\n ...Styles.SliderLabel,\n ...Styles.SliderLabelOrientations[props.orientation],\n ]);\n\n const labelMarkStyles = computed(() => [\n ...Styles.SliderLabelMark,\n ...Styles.SliderLabelMarkOrientations[props.orientation],\n ]);\n\n // State\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit, {\n defaultValue: toRef(props, 'minValue'),\n });\n\n const internalModelValue = computed({\n get: () => (proxyModelValue.value - props.minValue) / (props.maxValue - props.minValue),\n\n set: (value) => {\n const modelValue = value * (props.maxValue - props.minValue) + props.minValue;\n\n proxyModelValue.value = internalBreakpoints.value.reduce((a, b) => {\n return Math.abs(a - modelValue) < Math.abs(b - modelValue) ? a : b;\n });\n },\n });\n\n const internalBreakpoints = computed(() => {\n if (!props.step) {\n return [props.minValue, ...props.breakpoints, props.maxValue];\n }\n\n return Array(Math.ceil(Math.abs(props.maxValue - props.minValue) / props.step))\n .fill(undefined)\n .map((value, index) => Math.floor((props.minValue + props.step * index) * 1000) / 1000)\n .concat(...props.breakpoints, props.maxValue)\n .sort((a, b) => a - b);\n });\n\n // eslint-disable-next-line vue/return-in-computed-property\n const tooltipPlacement = computed(() => {\n switch (props.orientation) {\n case SliderOrientation.Horizontal:\n case SliderOrientation.HorizontalReversed:\n return 'top';\n\n case SliderOrientation.Vertical:\n case SliderOrientation.VerticalReversed:\n return 'right';\n }\n });\n\n const highlightedBreakpoint = ref<number>();\n\n const railBoundingBox = useElementBounding(rail);\n\n // Handlers\n function onDrag(position: Position, event: MouseEvent | PointerEvent): void {\n if (props.disabled) {\n return;\n }\n\n const totalWidth = railBoundingBox.width.value;\n const totalHeight = railBoundingBox.height.value;\n\n switch (props.orientation) {\n case SliderOrientation.Horizontal:\n internalModelValue.value = clamp(event.clientX - railBoundingBox.left.value, 0, totalWidth) / totalWidth;\n break;\n\n case SliderOrientation.HorizontalReversed:\n internalModelValue.value = clamp(railBoundingBox.right.value - event.clientX, 0, totalWidth) / totalWidth;\n break;\n\n case SliderOrientation.Vertical:\n internalModelValue.value = clamp(totalHeight - (event.clientY - railBoundingBox.top.value), 0, totalHeight) / totalHeight;\n break;\n\n case SliderOrientation.VerticalReversed:\n internalModelValue.value = clamp(totalHeight - (railBoundingBox.bottom.value - event.clientY), 0, totalHeight) / totalHeight;\n break;\n }\n }\n\n // Methods\n function getBreakpointMarkComputedStyles(breakpoint: number): Partial<CSSStyleDeclaration> | undefined {\n switch (props.orientation) {\n case SliderOrientation.Horizontal:\n return { left: `${getBreakpointOffset(breakpoint) * 100}%` };\n\n case SliderOrientation.HorizontalReversed:\n return { right: `${getBreakpointOffset(breakpoint) * 100}%` };\n\n case SliderOrientation.Vertical:\n return { bottom: `${getBreakpointOffset(breakpoint) * 100}%` };\n\n case SliderOrientation.VerticalReversed:\n return { top: `${getBreakpointOffset(breakpoint) * 100}%` };\n }\n }\n\n // Helpers\n function getBreakpointOffset(breakpoint: number): number {\n return (breakpoint - props.minValue) / (props.maxValue - props.minValue);\n }\n\n // Effects\n const isHovering = useElementHover(rail);\n\n const { isDragging } = useDraggable(rail, {\n onStart: onDrag,\n onMove: onDrag,\n onEnd: onDrag,\n });\n\n // Constraints\n watch(() => props.minValue, (value) => {\n if (value >= props.maxValue) {\n throw new Error('[OrSlider]: `minValue` must be lesser than `maxValue`.');\n }\n }, { immediate: true });\n\n watch(() => props.maxValue, (value) => {\n if (value <= props.minValue) {\n throw new Error('[OrSlider]: `maxValue` must be greater than `minValue`.');\n }\n }, { immediate: true });\n\n return {\n root,\n rootStyles,\n\n rail,\n railStyles,\n\n trackStyles,\n trackInlineStyles,\n\n thumb,\n thumbStyles,\n\n breakpointMarkStyles,\n\n labelStyles,\n labelMarkStyles,\n\n proxyModelValue,\n tooltipPlacement,\n highlightedBreakpoint,\n\n getBreakpointMarkComputedStyles,\n\n isHovering,\n isDragging,\n };\n },\n});\n</script>\n"],"names":["_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_normalizeStyle","_hoisted_3","_createVNode","_component_OrTooltip","_mergeProps","_withCtx","_createElementVNode","_Fragment","_renderList","breakpoint","$event","_createCommentVNode","_hoisted_2","_cache"],"mappings":";;;;;YACEA,EAyEM,WAAA;SAvEEC,EAAY,GAAAC,EAAA,OAAA;AAAA,IACjB,KAAA;AAAA,IAAA,OAAAC,EAAAC,EAAA,UAAA;AAAA,IAED,UAAAA,EAAA;AAAA,EAAA,GAAA;AAAA,MAEQ,OAAE;AAAA,MACP,KAAA;AAAA,MAAA,OAAAD,EAAAC,EAAA,UAAA;AAAA,MAED,UAAAA,EAAA;AAAA,IAAA,GAAA;AAAA,QAEQ,OAAE;AAAA,QACP,OAAkBD,EAAAC,EAAA,WAAA;AAAA,QAAA,OAAAC,EAAAD,EAAA,iBAAA;AAAA,QAGrB,UAqBYA,EAAA;AAAA,MAAA,GApBT,MAAS,IAAAE,CAAA;AAAA,MAAAC,EACEC,GAAgBC,EAAA;AAAA,QAC3B,WAAUL,EAAA,cAAAA,EAAA;AAAA,QACV,WAAAA,EAAA;AAAA,QACO,QAAA;AAAA,QAQS,oBAMR;AAAA,MAAA,GAAAA,EALP,OAKO,GAAA;AAAA,QAAA,SAAAM,EAAA,MAAA;AAAA;;;;iBAXDA,EAAO,MAAA;AAAA,UAAAC,EACP,OAAE;AAAA,YACP,KAAA;AAAA,YAAA,OAAAR,EAAAC,EAAA,WAAA;AAAA;;;QAaW,GAAA;AAAA,MACd,GAAA,IAAA,CAAA,WAAA,WAAA,CAAA;AAAA,MAAAA,EAAA,YAAA,SAAA,KAAAH,EAEQ,EAAU,GAAAC,EAAAU,GAAA,EAAA,KAAA,EAAA,GAAAC,EAAA,CAAAT,EAAA,UAAA,GAAAA,EAAA,aAAAA,EAAA,QAAA,GAAA,CAAAU,OACVb,EAAE,GAAAC,EAAA,OAAA;AAAA,QACP,KAAKY;AAAA,QACL,OAAAX,EAAqBC,EAAI,oBAAe;AAAA,QACxC,OAAkBC,EAAAD,EAAA,gCAAAU,CAAA,CAAA;AAAA,QAClB,WAAYA,KAAAV,EAAA;AAAA,QACZ,UAAUA,EAAA;AAAA,QAAA,cAAA,CAAAW,MAAAX,EAAA,wBAAAU;AAAA;iCAKjBE,EAmBM,IAAA,EAAA;AAAA,IAAA,GAnBA,IAAKC,CAAA;AAAA,IAAAN,EAAA,OAAA;AAAA,eACTP,EAiBM,WAAA;AAAA,IAAA,GAAA;AAAA,SAfE,EAAU,GAAAF,EAAAU,GAAA,MAAAC,EAAA,CAAAT,EAAA,UAAA,GAAAA,EAAA,aAAAA,EAAA,QAAA,GAAA,CAAAU,OACVb,EAAA,GAAAC,EAAE,OAAe;AAAA,QACtB,KAAKY;AAAA,QACL,OAAkBX,EAAAC,EAAA,eAAA;AAAA,QAClB,OAAAC,EAAaD,kCAAoCU,CAAa,CAAA;AAAA,QAC9D,UAAUV,EAAA;AAAA,QACV,eAAUA,EAAE,0BAAAU,IAAA,UAAA;AAAA,QACZ,cAAK,OAAEV,EAA4B,wBAAAU;AAAA,QAAA,cAAAI,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAH,MAAAX,EAAA,wBAAA;AAAA,QAEpC,SAAA,CAAAW,MAKOX,EAJe,kBAAAU;AAAA,MAAA,GAAA;AAAA;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"OrSlider-Cec0WpUQ.mjs","sources":["../../../components/or-slider-v3/src/OrSlider.vue"],"sourcesContent":["<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :disabled=\"disabled\"\n >\n <div\n :ref=\"'rail'\"\n :class=\"railStyles\"\n :disabled=\"disabled\"\n >\n <div\n :class=\"trackStyles\"\n :style=\"trackInlineStyles\"\n :disabled=\"disabled\"\n />\n\n <OrTooltip\n :is-open=\"isHovering || isDragging\"\n :placement=\"tooltipPlacement\"\n :offset=\"24\"\n :external-control=\"true\"\n v-bind=\"tooltip\"\n >\n <div\n :ref=\"'thumb'\"\n :class=\"thumbStyles\"\n :disabled=\"disabled\"\n />\n\n <template v-slot:content>\n <slot\n name=\"tooltipContent\"\n :value=\"proxyModelValue\"\n >\n {{ proxyModelValue }}\n </slot>\n </template>\n </OrTooltip>\n\n <template v-if=\"breakpoints.length > 0\">\n <div\n v-for=\"breakpoint of [minValue, ...breakpoints, maxValue]\"\n :key=\"breakpoint\"\n :class=\"breakpointMarkStyles\"\n :style=\"getBreakpointMarkComputedStyles(breakpoint)\"\n :activated=\"breakpoint <= proxyModelValue\"\n :disabled=\"disabled\"\n @mouseenter=\"highlightedBreakpoint = breakpoint\"\n @mouseleave=\"highlightedBreakpoint = undefined\"\n />\n </template>\n </div>\n\n <div :class=\"labelStyles\">\n <div\n v-for=\"breakpoint of [minValue, ...breakpoints, maxValue]\"\n :key=\"breakpoint\"\n :class=\"labelMarkStyles\"\n :style=\"getBreakpointMarkComputedStyles(breakpoint)\"\n :disabled=\"disabled\"\n :force-state=\"highlightedBreakpoint === breakpoint ? 'hover' : undefined\"\n @mouseenter=\"highlightedBreakpoint = breakpoint\"\n @mouseleave=\"highlightedBreakpoint = undefined\"\n @click=\"proxyModelValue = breakpoint\"\n >\n <slot\n :name=\"`${breakpoint}-label`\"\n :value=\"breakpoint\"\n >\n {{ breakpoint }}\n </slot>\n </div>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { Position, clamp, useDraggable, useElementBounding, useElementHover } from '@vueuse/core';\nimport { PropType, computed, defineComponent, ref, toRef, watch } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { OrTooltipV3 as OrTooltip } from '@onereach/ui-components.or-tooltip-v3';\nimport * as Styles from './styles';\nimport { SliderColor, SliderModelValue, SliderOrientation } from './types';\n\nexport default defineComponent({\n name: 'OrSlider',\n\n components: {\n OrTooltip,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<SliderModelValue>,\n default: undefined,\n },\n\n minValue: {\n type: Number,\n default: 0,\n },\n\n maxValue: {\n type: Number,\n default: 100,\n },\n\n step: {\n type: Number,\n default: 1,\n },\n\n breakpoints: {\n type: Array as PropType<number[]>,\n default: () => [],\n },\n\n color: {\n type: String as PropType<`${SliderColor}`>,\n default: () => SliderColor.Primary,\n },\n\n orientation: {\n type: String as PropType<`${SliderOrientation}`>,\n default: () => SliderOrientation.Horizontal,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n tooltip: {\n type: Object as PropType<Pick<InstanceType<typeof OrTooltip>['$props'], 'placement' | 'offset' | 'debounce'>>,\n default: undefined,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n expose: [\n 'root',\n ],\n\n setup(props, context) {\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-slider-v3',\n ...Styles.Slider,\n ...Styles.SliderOrientations[props.orientation],\n ]);\n\n const rail = ref<HTMLElement>();\n\n const railStyles = computed(() => [\n 'or-slider-rail-v3',\n ...Styles.SliderRail,\n ...Styles.SliderRailOrientations[props.orientation],\n ]);\n\n const trackStyles = computed(() => [\n ...Styles.SliderTrack,\n ...Styles.SliderTrackColors[props.color],\n ]);\n\n // eslint-disable-next-line vue/return-in-computed-property\n const trackInlineStyles = computed(() => {\n switch (props.orientation) {\n case SliderOrientation.Horizontal:\n case SliderOrientation.HorizontalReversed:\n return { width: `${internalModelValue.value * 100}%` };\n\n case SliderOrientation.Vertical:\n case SliderOrientation.VerticalReversed:\n return { height: `${internalModelValue.value * 100}%` };\n }\n });\n\n const thumb = ref<HTMLElement>();\n\n const thumbStyles = computed(() => [\n 'or-slider-thumb-v3',\n ...Styles.SliderThumb,\n ...Styles.SliderThumbColors[props.color],\n 'touch-none', // Required for proper work on mobile\n ]);\n\n const breakpointMarkStyles = computed(() => [\n ...Styles.SliderBreakpointMark,\n ...Styles.SliderBreakpointMarkColors[props.color],\n ]);\n\n const labelStyles = computed(() => [\n ...Styles.SliderLabel,\n ...Styles.SliderLabelOrientations[props.orientation],\n ]);\n\n const labelMarkStyles = computed(() => [\n ...Styles.SliderLabelMark,\n ...Styles.SliderLabelMarkOrientations[props.orientation],\n ]);\n\n // State\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit, {\n defaultValue: toRef(props, 'minValue'),\n });\n\n const internalModelValue = computed({\n get: () => (proxyModelValue.value - props.minValue) / (props.maxValue - props.minValue),\n\n set: (value) => {\n const modelValue = value * (props.maxValue - props.minValue) + props.minValue;\n\n proxyModelValue.value = internalBreakpoints.value.reduce((a, b) => {\n return Math.abs(a - modelValue) < Math.abs(b - modelValue) ? a : b;\n });\n },\n });\n\n const internalBreakpoints = computed(() => {\n if (!props.step) {\n return [props.minValue, ...props.breakpoints, props.maxValue];\n }\n\n return Array(Math.ceil(Math.abs(props.maxValue - props.minValue) / props.step))\n .fill(undefined)\n .map((value, index) => Math.floor((props.minValue + props.step * index) * 1000) / 1000)\n .concat(...props.breakpoints, props.maxValue)\n .sort((a, b) => a - b);\n });\n\n // eslint-disable-next-line vue/return-in-computed-property\n const tooltipPlacement = computed(() => {\n switch (props.orientation) {\n case SliderOrientation.Horizontal:\n case SliderOrientation.HorizontalReversed:\n return 'top';\n\n case SliderOrientation.Vertical:\n case SliderOrientation.VerticalReversed:\n return 'right';\n }\n });\n\n const highlightedBreakpoint = ref<number>();\n\n const railBoundingBox = useElementBounding(rail);\n\n // Handlers\n function onDrag(position: Position, event: MouseEvent | PointerEvent): void {\n if (props.disabled) {\n return;\n }\n\n const totalWidth = railBoundingBox.width.value;\n const totalHeight = railBoundingBox.height.value;\n\n switch (props.orientation) {\n case SliderOrientation.Horizontal:\n internalModelValue.value = clamp(event.clientX - railBoundingBox.left.value, 0, totalWidth) / totalWidth;\n break;\n\n case SliderOrientation.HorizontalReversed:\n internalModelValue.value = clamp(railBoundingBox.right.value - event.clientX, 0, totalWidth) / totalWidth;\n break;\n\n case SliderOrientation.Vertical:\n internalModelValue.value = clamp(totalHeight - (event.clientY - railBoundingBox.top.value), 0, totalHeight) / totalHeight;\n break;\n\n case SliderOrientation.VerticalReversed:\n internalModelValue.value = clamp(totalHeight - (railBoundingBox.bottom.value - event.clientY), 0, totalHeight) / totalHeight;\n break;\n }\n }\n\n // Methods\n function getBreakpointMarkComputedStyles(breakpoint: number): Partial<CSSStyleDeclaration> | undefined {\n switch (props.orientation) {\n case SliderOrientation.Horizontal:\n return { left: `${getBreakpointOffset(breakpoint) * 100}%` };\n\n case SliderOrientation.HorizontalReversed:\n return { right: `${getBreakpointOffset(breakpoint) * 100}%` };\n\n case SliderOrientation.Vertical:\n return { bottom: `${getBreakpointOffset(breakpoint) * 100}%` };\n\n case SliderOrientation.VerticalReversed:\n return { top: `${getBreakpointOffset(breakpoint) * 100}%` };\n }\n }\n\n // Helpers\n function getBreakpointOffset(breakpoint: number): number {\n return (breakpoint - props.minValue) / (props.maxValue - props.minValue);\n }\n\n // Effects\n const isHovering = useElementHover(rail);\n\n const { isDragging } = useDraggable(rail, {\n onStart: onDrag,\n onMove: onDrag,\n onEnd: onDrag,\n });\n\n // Constraints\n watch(() => props.minValue, (value) => {\n if (value >= props.maxValue) {\n throw new Error('[OrSlider]: `minValue` must be lesser than `maxValue`.');\n }\n }, { immediate: true });\n\n watch(() => props.maxValue, (value) => {\n if (value <= props.minValue) {\n throw new Error('[OrSlider]: `maxValue` must be greater than `minValue`.');\n }\n }, { immediate: true });\n\n return {\n root,\n rootStyles,\n\n rail,\n railStyles,\n\n trackStyles,\n trackInlineStyles,\n\n thumb,\n thumbStyles,\n\n breakpointMarkStyles,\n\n labelStyles,\n labelMarkStyles,\n\n proxyModelValue,\n tooltipPlacement,\n highlightedBreakpoint,\n\n getBreakpointMarkComputedStyles,\n\n isHovering,\n isDragging,\n };\n },\n});\n</script>\n"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","railStyles","trackInlineStyles","_normalizeStyle","isHovering","tooltipPlacement","_mergeProps","tooltip","_withCtx","_renderSlot","_createElementVNode","thumbStyles","breakpoints","_Fragment","_renderList","breakpoint","breakpointMarkStyles","proxyModelValue","highlightedBreakpoint","$event","_cache","_hoisted_5","_createCommentVNode","labelMarkStyles","_createTextVNode","_toDisplayString"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrSorting-DCAarSF1.mjs","sources":["../../../components/or-sorting-v3/src/styles.ts","../../../components/or-sorting-v3/src/OrSorting.vue"],"sourcesContent":["export const SortingRoot = [];\nexport const SortingLabel = [\n // Theme\n 'text-on-background dark:text-on-background-dark',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrButton\n :ref=\"'sortButton'\"\n :variant=\"'link'\"\n :color=\"'primary'\"\n @click=\"sortMenu && sortMenu.toggle()\"\n >\n <span :class=\"sortLabelStyles\">\n {{ sortLabel }}\n </span>\n\n <OrIcon\n v-if=\"sortMenu\"\n :icon=\"sortMenu.state === 'open' ? 'arrow_drop_up' : 'arrow_drop_down'\"\n />\n </OrButton>\n\n <OrMenu\n :ref=\"'sortMenu'\"\n :trigger=\"sortButton && sortButton.root\"\n :placement=\"'bottom-start'\"\n :offset=\"{ mainAxis: 8, crossAxis: -8 }\"\n >\n <OrMenuItem\n v-for=\"item in options\"\n :key=\"item.value\"\n :selected=\"item.value === modelValue\"\n @click=\"handleSort(item.value)\"\n >\n {{ item.label }}\n </OrMenuItem>\n </OrMenu>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, ref, toRef } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrIconV3 as OrIcon } from '@onereach/ui-components.or-icon-v3';\nimport { OrMenuItemV3 as OrMenuItem } from '@onereach/ui-components.or-menu-item-v3';\nimport { OrMenuV3 as OrMenu } from '@onereach/ui-components.or-menu-v3';\nimport { SortingLabel, SortingRoot } from './styles';\nimport { SortOption } from './types';\n\nexport default defineComponent({\n name: 'OrSorting',\n\n components: {\n OrButton,\n OrIcon,\n OrMenu,\n OrMenuItem,\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 options: {\n type: Array as PropType<SortOption[]>,\n default: () => [],\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n const sortMenu = ref<typeof OrMenu>();\n const sortButton = ref<typeof OrButton>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-sorting-v3',\n ...SortingRoot,\n ]);\n\n const sortLabelStyles = computed(() => [\n ...SortingLabel,\n ]);\n\n // State\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n const sortLabel = computed(() => {\n return props.options.find(item => item.value === proxyModelValue.value)?.label;\n });\n\n // Methods\n function handleSort(sort: string) {\n proxyModelValue.value = sort;\n }\n\n return {\n root,\n rootStyles,\n sortLabelStyles,\n sortMenu,\n sortButton,\n sortLabel,\n handleSort,\n };\n },\n});\n\n</script>\n"],"names":["SortingRoot","SortingLabel","_sfc_main","defineComponent","OrButton","OrIcon","OrMenu","OrMenuItem","props","context","root","ref","sortMenu","sortButton","rootStyles","computed","sortLabelStyles","proxyModelValue","useProxyModelValue","toRef","sortLabel","_a","item","handleSort","sort","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_component_OrButton","_cache","$event","_withCtx","
|
|
1
|
+
{"version":3,"file":"OrSorting-DCAarSF1.mjs","sources":["../../../components/or-sorting-v3/src/styles.ts","../../../components/or-sorting-v3/src/OrSorting.vue"],"sourcesContent":["export const SortingRoot = [];\nexport const SortingLabel = [\n // Theme\n 'text-on-background dark:text-on-background-dark',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrButton\n :ref=\"'sortButton'\"\n :variant=\"'link'\"\n :color=\"'primary'\"\n @click=\"sortMenu && sortMenu.toggle()\"\n >\n <span :class=\"sortLabelStyles\">\n {{ sortLabel }}\n </span>\n\n <OrIcon\n v-if=\"sortMenu\"\n :icon=\"sortMenu.state === 'open' ? 'arrow_drop_up' : 'arrow_drop_down'\"\n />\n </OrButton>\n\n <OrMenu\n :ref=\"'sortMenu'\"\n :trigger=\"sortButton && sortButton.root\"\n :placement=\"'bottom-start'\"\n :offset=\"{ mainAxis: 8, crossAxis: -8 }\"\n >\n <OrMenuItem\n v-for=\"item in options\"\n :key=\"item.value\"\n :selected=\"item.value === modelValue\"\n @click=\"handleSort(item.value)\"\n >\n {{ item.label }}\n </OrMenuItem>\n </OrMenu>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, ref, toRef } from 'vue';\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrIconV3 as OrIcon } from '@onereach/ui-components.or-icon-v3';\nimport { OrMenuItemV3 as OrMenuItem } from '@onereach/ui-components.or-menu-item-v3';\nimport { OrMenuV3 as OrMenu } from '@onereach/ui-components.or-menu-v3';\nimport { SortingLabel, SortingRoot } from './styles';\nimport { SortOption } from './types';\n\nexport default defineComponent({\n name: 'OrSorting',\n\n components: {\n OrButton,\n OrIcon,\n OrMenu,\n OrMenuItem,\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 options: {\n type: Array as PropType<SortOption[]>,\n default: () => [],\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n const sortMenu = ref<typeof OrMenu>();\n const sortButton = ref<typeof OrButton>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-sorting-v3',\n ...SortingRoot,\n ]);\n\n const sortLabelStyles = computed(() => [\n ...SortingLabel,\n ]);\n\n // State\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n const sortLabel = computed(() => {\n return props.options.find(item => item.value === proxyModelValue.value)?.label;\n });\n\n // Methods\n function handleSort(sort: string) {\n proxyModelValue.value = sort;\n }\n\n return {\n root,\n rootStyles,\n sortLabelStyles,\n sortMenu,\n sortButton,\n sortLabel,\n handleSort,\n };\n },\n});\n\n</script>\n"],"names":["SortingRoot","SortingLabel","_sfc_main","defineComponent","OrButton","OrIcon","OrMenu","OrMenuItem","props","context","root","ref","sortMenu","sortButton","rootStyles","computed","sortLabelStyles","proxyModelValue","useProxyModelValue","toRef","sortLabel","_a","item","handleSort","sort","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_component_OrButton","_cache","$event","_withCtx","_toDisplayString","_createBlock","_component_OrIcon","_createCommentVNode","_Fragment","_renderList","modelValue","_createTextVNode"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrStatus-D4QIuE7R.mjs","sources":["../../../components/or-status-v3/src/props.ts","../../../components/or-status-v3/src/styles.ts","../../../components/or-status-v3/src/OrStatus.vue"],"sourcesContent":["export enum StatusVariant {\n Neutral = 'neutral',\n Disabled = 'disabled',\n Success = 'success',\n Warning = 'warning',\n Error = 'error',\n}\n\nexport enum StatusSize {\n M = 'm',\n S = 's',\n}\n","import { StatusSize, StatusVariant } from './props';\n\nexport const Status: string[] = [\n // Layout\n 'layout-inline-row',\n\n // Spacing\n 'gap-sm',\n];\n\nexport const StatusVariants: Record<StatusVariant, string[]> = {\n [StatusVariant.Neutral]: [\n // Theme\n 'theme-foreground-primary',\n 'dark:theme-foreground-primary-dark',\n ],\n\n [StatusVariant.Disabled]: [\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n ],\n\n [StatusVariant.Success]: [\n // Theme\n 'theme-foreground-success',\n 'dark:theme-foreground-success-dark',\n ],\n\n [StatusVariant.Warning]: [\n // Theme\n 'theme-foreground-warning',\n 'dark:theme-foreground-warning-dark',\n ],\n\n [StatusVariant.Error]: [\n // Theme\n 'theme-foreground-error',\n 'dark:theme-foreground-error-dark',\n ],\n};\n\nexport const StatusSizes: Record<StatusSize, string[]> = {\n [StatusSize.M]: [\n // Typography\n 'typography-body-2-regular',\n ],\n\n [StatusSize.S]: [\n // Typography\n 'typography-caption-regular',\n ],\n};\n\nexport const StatusTimestamp: string[] = [\n // Layout\n 'shrink-0',\n\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrIndicator v-bind=\"indicatorProps\" />\n\n <span :class=\"['truncate']\">\n <slot />\n </span>\n\n <template v-if=\"timestamp\">\n <span :class=\"timestampStyles\">\n ({{ formatTimeAgo(timestamp) }})\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { formatTimeAgo } from '@vueuse/core';\nimport { computed, defineComponent, PropType, ref } from 'vue';\nimport { StatusSize, StatusVariant } from './props';\nimport { Status, StatusSizes, StatusTimestamp, StatusVariants } from './styles';\nimport { IndicatorColor, IndicatorSize, OrIndicatorV3 as OrIndicator } from '@onereach/ui-components.or-indicator-v3';\n\nexport default defineComponent({\n name: 'OrStatus',\n\n components: {\n OrIndicator,\n },\n\n props: {\n variant: {\n type: String as PropType<`${StatusVariant}`>,\n default: () => StatusVariant.Neutral,\n },\n\n size: {\n type: String as PropType<`${StatusSize}`>,\n default: () => StatusSize.M,\n },\n\n timestamp: {\n type: Date,\n default: undefined,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-status-v3',\n ...Status,\n ...StatusVariants[props.variant],\n ...StatusSizes[props.size],\n ]);\n\n const timestampStyles = computed(() => [\n ...StatusTimestamp,\n ]);\n\n const indicatorProps = computed(() => {\n let color: IndicatorColor;\n switch (props.variant) {\n case StatusVariant.Error:\n color = IndicatorColor.Error;\n break;\n case StatusVariant.Success:\n color = IndicatorColor.Success;\n break;\n case StatusVariant.Warning:\n color = IndicatorColor.Warning;\n break;\n case StatusVariant.Disabled:\n color = IndicatorColor.Outline;\n break;\n default:\n color = IndicatorColor.Neutral;\n }\n\n return {\n size: IndicatorSize.S,\n color,\n };\n });\n\n return {\n root,\n rootStyles,\n indicatorProps,\n timestampStyles,\n formatTimeAgo,\n };\n },\n});\n</script>\n"],"names":["StatusVariant","StatusSize","Status","StatusVariants","StatusSizes","StatusTimestamp","_sfc_main","defineComponent","OrIndicator","props","root","ref","rootStyles","computed","timestampStyles","indicatorProps","color","IndicatorColor","IndicatorSize","formatTimeAgo","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createVNode","_component_OrIndicator","_normalizeProps","_guardReactiveProps","_createElementVNode","_hoisted_1","
|
|
1
|
+
{"version":3,"file":"OrStatus-D4QIuE7R.mjs","sources":["../../../components/or-status-v3/src/props.ts","../../../components/or-status-v3/src/styles.ts","../../../components/or-status-v3/src/OrStatus.vue"],"sourcesContent":["export enum StatusVariant {\n Neutral = 'neutral',\n Disabled = 'disabled',\n Success = 'success',\n Warning = 'warning',\n Error = 'error',\n}\n\nexport enum StatusSize {\n M = 'm',\n S = 's',\n}\n","import { StatusSize, StatusVariant } from './props';\n\nexport const Status: string[] = [\n // Layout\n 'layout-inline-row',\n\n // Spacing\n 'gap-sm',\n];\n\nexport const StatusVariants: Record<StatusVariant, string[]> = {\n [StatusVariant.Neutral]: [\n // Theme\n 'theme-foreground-primary',\n 'dark:theme-foreground-primary-dark',\n ],\n\n [StatusVariant.Disabled]: [\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n ],\n\n [StatusVariant.Success]: [\n // Theme\n 'theme-foreground-success',\n 'dark:theme-foreground-success-dark',\n ],\n\n [StatusVariant.Warning]: [\n // Theme\n 'theme-foreground-warning',\n 'dark:theme-foreground-warning-dark',\n ],\n\n [StatusVariant.Error]: [\n // Theme\n 'theme-foreground-error',\n 'dark:theme-foreground-error-dark',\n ],\n};\n\nexport const StatusSizes: Record<StatusSize, string[]> = {\n [StatusSize.M]: [\n // Typography\n 'typography-body-2-regular',\n ],\n\n [StatusSize.S]: [\n // Typography\n 'typography-caption-regular',\n ],\n};\n\nexport const StatusTimestamp: string[] = [\n // Layout\n 'shrink-0',\n\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrIndicator v-bind=\"indicatorProps\" />\n\n <span :class=\"['truncate']\">\n <slot />\n </span>\n\n <template v-if=\"timestamp\">\n <span :class=\"timestampStyles\">\n ({{ formatTimeAgo(timestamp) }})\n </span>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { formatTimeAgo } from '@vueuse/core';\nimport { computed, defineComponent, PropType, ref } from 'vue';\nimport { StatusSize, StatusVariant } from './props';\nimport { Status, StatusSizes, StatusTimestamp, StatusVariants } from './styles';\nimport { IndicatorColor, IndicatorSize, OrIndicatorV3 as OrIndicator } from '@onereach/ui-components.or-indicator-v3';\n\nexport default defineComponent({\n name: 'OrStatus',\n\n components: {\n OrIndicator,\n },\n\n props: {\n variant: {\n type: String as PropType<`${StatusVariant}`>,\n default: () => StatusVariant.Neutral,\n },\n\n size: {\n type: String as PropType<`${StatusSize}`>,\n default: () => StatusSize.M,\n },\n\n timestamp: {\n type: Date,\n default: undefined,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-status-v3',\n ...Status,\n ...StatusVariants[props.variant],\n ...StatusSizes[props.size],\n ]);\n\n const timestampStyles = computed(() => [\n ...StatusTimestamp,\n ]);\n\n const indicatorProps = computed(() => {\n let color: IndicatorColor;\n switch (props.variant) {\n case StatusVariant.Error:\n color = IndicatorColor.Error;\n break;\n case StatusVariant.Success:\n color = IndicatorColor.Success;\n break;\n case StatusVariant.Warning:\n color = IndicatorColor.Warning;\n break;\n case StatusVariant.Disabled:\n color = IndicatorColor.Outline;\n break;\n default:\n color = IndicatorColor.Neutral;\n }\n\n return {\n size: IndicatorSize.S,\n color,\n };\n });\n\n return {\n root,\n rootStyles,\n indicatorProps,\n timestampStyles,\n formatTimeAgo,\n };\n },\n});\n</script>\n"],"names":["StatusVariant","StatusSize","Status","StatusVariants","StatusSizes","StatusTimestamp","_sfc_main","defineComponent","OrIndicator","props","root","ref","rootStyles","computed","timestampStyles","indicatorProps","color","IndicatorColor","IndicatorSize","formatTimeAgo","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createVNode","_component_OrIndicator","_normalizeProps","_guardReactiveProps","_createElementVNode","_hoisted_1","timestamp","_toDisplayString","_createCommentVNode"],"mappings":"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"}
|