@onereach/ui-components 23.2.4-beta.5592.0 → 23.2.4-beta.5594.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.
Files changed (245) hide show
  1. package/dist/esm/{OrAutocomplete-ds-VkL_e.mjs → OrAutocomplete-B5PEcSLw.mjs} +3 -3
  2. package/dist/esm/{OrAutocomplete-ds-VkL_e.mjs.map → OrAutocomplete-B5PEcSLw.mjs.map} +1 -1
  3. package/dist/esm/OrAvatar-XcP_rrT3.mjs.map +1 -1
  4. package/dist/esm/OrBottomSheet-CJxmY84p.mjs.map +1 -1
  5. package/dist/esm/OrButton-C_hXddAf.mjs.map +1 -1
  6. package/dist/esm/OrButtonGroup-Cd6tpyP3.mjs.map +1 -1
  7. package/dist/esm/OrCard-7awJu_df.mjs.map +1 -1
  8. package/dist/esm/OrCardCollection-CoE9Umh7.mjs.map +1 -1
  9. package/dist/esm/{OrCheckbox-CI-mxgEp.mjs → OrCheckbox-Ztan-O2t.mjs} +31 -31
  10. package/dist/esm/OrCheckbox-Ztan-O2t.mjs.map +1 -0
  11. package/dist/esm/{OrCheckboxGroup-BgAvcSVe.mjs → OrCheckboxGroup-CXjyqAjp.mjs} +2 -2
  12. package/dist/esm/{OrCheckboxGroup-BgAvcSVe.mjs.map → OrCheckboxGroup-CXjyqAjp.mjs.map} +1 -1
  13. package/dist/esm/{OrCheckboxTree-DvIftMpp.mjs → OrCheckboxTree-BKNPrNAq.mjs} +16 -16
  14. package/dist/esm/OrCheckboxTree-BKNPrNAq.mjs.map +1 -0
  15. package/dist/esm/{OrCode-CI1Corli.mjs → OrCode-Bo17z-R3.mjs} +2 -3
  16. package/dist/esm/{OrCode-CI1Corli.mjs.map → OrCode-Bo17z-R3.mjs.map} +1 -1
  17. package/dist/esm/OrCombinedInput-CLIIindo.mjs.map +1 -1
  18. package/dist/esm/OrConfirm-BKXhawH9.mjs.map +1 -1
  19. package/dist/esm/OrContextMenu-CrpiM2Jq.mjs.map +1 -1
  20. package/dist/esm/{OrDataGrid-BML2-j9s.mjs → OrDataGrid-CFIZ_U4b.mjs} +4 -4
  21. package/dist/esm/{OrDataGrid-BML2-j9s.mjs.map → OrDataGrid-CFIZ_U4b.mjs.map} +1 -1
  22. package/dist/esm/OrDateFormat-CnNnn2qx.mjs.map +1 -1
  23. package/dist/esm/OrDatePicker-B8f7IXss.mjs.map +1 -1
  24. package/dist/esm/OrDateRangePicker-Cs59h-1i.mjs.map +1 -1
  25. package/dist/esm/OrDateTimeFormat-B5lV7PfA.mjs.map +1 -1
  26. package/dist/esm/OrDateTimePicker-BjUIRfEc.mjs.map +1 -1
  27. package/dist/esm/OrDateTimePicker.vue_vue_type_script_lang-BPE3fOtA.mjs.map +1 -1
  28. package/dist/esm/OrDrawer-BR0r7GeI.mjs.map +1 -1
  29. package/dist/esm/{OrDropArea-DA9aXi-a.mjs → OrDropArea-CtaQeTMw.mjs} +12 -12
  30. package/dist/esm/OrDropArea-CtaQeTMw.mjs.map +1 -0
  31. package/dist/esm/OrEditorTabs-psJUG0D3.mjs.map +1 -1
  32. package/dist/esm/OrEmptyState-C6viT2WQ.mjs.map +1 -1
  33. package/dist/esm/OrError-B5ihH6-3.mjs.map +1 -1
  34. package/dist/esm/OrErrorTag-Bo_gxhzB.mjs.map +1 -1
  35. package/dist/esm/OrExpansionPanel-BNGPdEnp.mjs.map +1 -1
  36. package/dist/esm/OrFab-Cbg9unNc.mjs.map +1 -1
  37. package/dist/esm/OrFilter-C8d3OmGK.mjs.map +1 -1
  38. package/dist/esm/OrFilterPopover-C8lXb-hJ.mjs.map +1 -1
  39. package/dist/esm/OrFilterTrigger-zfcgyC7C.mjs.map +1 -1
  40. package/dist/esm/OrFormGroup-BFAjTfM9.mjs.map +1 -1
  41. package/dist/esm/OrHint-NvbZyURY.mjs.map +1 -1
  42. package/dist/esm/OrIcon-k8cyvh-D.mjs.map +1 -1
  43. package/dist/esm/OrIconButton-BlHCLpeW.mjs.map +1 -1
  44. package/dist/esm/OrIndicator-CCrOseW7.mjs.map +1 -1
  45. package/dist/esm/OrInlineInput-1WPe9sXl.mjs.map +1 -1
  46. package/dist/esm/OrInlineInputBox-M_zTO43m.mjs.map +1 -1
  47. package/dist/esm/OrInlineTextarea-COQceBb0.mjs.map +1 -1
  48. package/dist/esm/OrInput-DBcNZlkx.mjs.map +1 -1
  49. package/dist/esm/OrInputBox-6ciokFdU.mjs.map +1 -1
  50. package/dist/esm/OrInputBox.vue_vue_type_script_lang-q2L7rmth.mjs.map +1 -1
  51. package/dist/esm/OrLabel-DssheqEn.mjs.map +1 -1
  52. package/dist/esm/OrLink-Vl_H8MMg.mjs.map +1 -1
  53. package/dist/esm/{OrList-CLHvgZc7.mjs → OrList-CoDesOam.mjs} +49 -49
  54. package/dist/esm/OrList-CoDesOam.mjs.map +1 -0
  55. package/dist/esm/OrLoader-2SaTMxmZ.mjs.map +1 -1
  56. package/dist/esm/OrMenu-CJT4Snay.mjs.map +1 -1
  57. package/dist/esm/OrMenuItem-BHRMA0L1.mjs.map +1 -1
  58. package/dist/esm/OrModal-CQhwUYFk.mjs.map +1 -1
  59. package/dist/esm/OrNotification-Dz3Tr1wI.mjs.map +1 -1
  60. package/dist/esm/OrOverlay-BjrghiC-.mjs.map +1 -1
  61. package/dist/esm/OrPagination-DIacMkVe.mjs.map +1 -1
  62. package/dist/esm/OrPopover-DbygLPtT.mjs.map +1 -1
  63. package/dist/esm/OrProgress-cgGfaP0m.mjs.map +1 -1
  64. package/dist/esm/OrRadio-CJLJrxIS.mjs.map +1 -1
  65. package/dist/esm/OrRadioGroup-_n_7vdJU.mjs.map +1 -1
  66. package/dist/esm/OrRangeSlider-Dim4sU4v.mjs.map +1 -1
  67. package/dist/esm/OrRating-BhuvRBRy.mjs.map +1 -1
  68. package/dist/esm/OrResizeablePanel-DuGgwmhB.mjs.map +1 -1
  69. package/dist/esm/{OrRichTextEditor-YYtRuKat.mjs → OrRichTextEditor-DvkFn8He.mjs} +5 -9
  70. package/dist/esm/{OrRichTextEditor-YYtRuKat.mjs.map → OrRichTextEditor-DvkFn8He.mjs.map} +1 -1
  71. package/dist/esm/OrRichTooltip-D8vv5Btb.mjs.map +1 -1
  72. package/dist/esm/OrSearch-1OFONLHk.mjs.map +1 -1
  73. package/dist/esm/OrSegmentedControl-D5QoWe-N.mjs.map +1 -1
  74. package/dist/esm/{OrSelect-Cnklh9us.mjs → OrSelect-DmNRdiTd.mjs} +4 -5
  75. package/dist/esm/{OrSelect-Cnklh9us.mjs.map → OrSelect-DmNRdiTd.mjs.map} +1 -1
  76. package/dist/esm/OrSkeletonRect-D9sTxEc-.mjs.map +1 -1
  77. package/dist/esm/OrSkeletonText-WYaAaljl.mjs.map +1 -1
  78. package/dist/esm/OrSlider-Cec0WpUQ.mjs.map +1 -1
  79. package/dist/esm/OrSorting-DCAarSF1.mjs.map +1 -1
  80. package/dist/esm/OrStatus-D4QIuE7R.mjs.map +1 -1
  81. package/dist/esm/OrSwitch-Cmi57-QB.mjs.map +1 -1
  82. package/dist/esm/OrTab-BdtxL_PY.mjs.map +1 -1
  83. package/dist/esm/OrTabs-BUXLSz8o.mjs.map +1 -1
  84. package/dist/esm/OrTag-Bixe0EQq.mjs.map +1 -1
  85. package/dist/esm/{OrTagInput-CjYmyfIU.mjs → OrTagInput-BkFDvGIk.mjs} +2 -2
  86. package/dist/esm/{OrTagInput-CjYmyfIU.mjs.map → OrTagInput-BkFDvGIk.mjs.map} +1 -1
  87. package/dist/esm/{OrTags-CS0bcLtx.mjs → OrTags-gPpVnqZT.mjs} +10 -10
  88. package/dist/esm/{OrTags-CS0bcLtx.mjs.map → OrTags-gPpVnqZT.mjs.map} +1 -1
  89. package/dist/esm/OrTeleport.vue3-C9kW_8PS.mjs.map +1 -1
  90. package/dist/esm/OrText-3zAJU5xf.mjs.map +1 -1
  91. package/dist/esm/OrTextarea-VEuq5855.mjs.map +1 -1
  92. package/dist/esm/OrTimeFormat-mxL8_Rx9.mjs.map +1 -1
  93. package/dist/esm/OrTimePicker-CQJesQKa.mjs.map +1 -1
  94. package/dist/esm/OrTimeRangePicker-DGvdvq4c.mjs.map +1 -1
  95. package/dist/esm/OrTooltip-DqwjoE82.mjs.map +1 -1
  96. package/dist/esm/{OrTree-By3MLZUL.mjs → OrTree-Di2v-U70.mjs} +75 -75
  97. package/dist/esm/{OrTree-By3MLZUL.mjs.map → OrTree-Di2v-U70.mjs.map} +1 -1
  98. package/dist/esm/components/index.mjs +14 -14
  99. package/dist/esm/components/or-autocomplete-v3/index.mjs +1 -1
  100. package/dist/esm/components/or-checkbox-group-v3/index.mjs +1 -1
  101. package/dist/esm/components/or-checkbox-tree-v3/index.mjs +1 -1
  102. package/dist/esm/components/or-checkbox-v3/index.mjs +1 -1
  103. package/dist/esm/components/or-code-v3/index.mjs +1 -1
  104. package/dist/esm/components/or-data-grid-v3/index.mjs +1 -1
  105. package/dist/esm/components/or-drop-area-v3/index.mjs +1 -1
  106. package/dist/esm/components/or-list-v3/index.mjs +1 -1
  107. package/dist/esm/components/or-rich-text-editor-v3/index.mjs +1 -1
  108. package/dist/esm/components/or-select-v3/index.mjs +1 -1
  109. package/dist/esm/components/or-tag-input-v3/index.mjs +1 -1
  110. package/dist/esm/components/or-tags-v3/index.mjs +1 -1
  111. package/dist/esm/components/or-toast-v3/index.mjs +1 -1
  112. package/dist/esm/components/or-tree-v3/index.mjs +1 -1
  113. package/dist/esm/index.mjs +14 -14
  114. package/dist/esm/props-BxqD8LGb.mjs.map +1 -1
  115. package/dist/esm/{types-BwxhurSS.mjs → types-CBo5_aI5.mjs} +2 -2
  116. package/dist/esm/{types-BwxhurSS.mjs.map → types-CBo5_aI5.mjs.map} +1 -1
  117. package/dist/types/components/or-autocomplete-v3/OrAutocomplete.vue.d.ts +8147 -11048
  118. package/dist/types/components/or-avatar-v3/OrAvatar.vue.d.ts +1 -1
  119. package/dist/types/components/or-bottom-sheet-v3/OrBottomSheet.vue.d.ts +2 -2
  120. package/dist/types/components/or-button-group-v3/OrButtonGroup.vue.d.ts +1 -1
  121. package/dist/types/components/or-button-v3/OrButton.vue.d.ts +1 -1
  122. package/dist/types/components/or-card-collection-v3/OrCardCollection.vue.d.ts +1 -1
  123. package/dist/types/components/or-card-collection-v3/partials/OrCardCollectionView.vue3.vue.d.ts +1 -1
  124. package/dist/types/components/or-card-v3/OrCard.vue.d.ts +1 -1
  125. package/dist/types/components/or-checkbox-group-v3/OrCheckboxGroup.vue.d.ts +2 -2
  126. package/dist/types/components/or-checkbox-tree-v3/OrCheckboxTree.vue.d.ts +4 -4
  127. package/dist/types/components/or-checkbox-v3/OrCheckbox.vue.d.ts +7 -7
  128. package/dist/types/components/or-code-v3/OrCode.vue.d.ts +254 -404
  129. package/dist/types/components/or-code-v3/partials/OrCodeControl.vue.d.ts +1 -1
  130. package/dist/types/components/or-combined-input-v3/OrCombinedInput.vue.d.ts +1 -1
  131. package/dist/types/components/or-confirm-v3/OrConfirm.vue.d.ts +322 -378
  132. package/dist/types/components/or-context-menu-v3/OrContextMenu.vue.d.ts +2 -2
  133. package/dist/types/components/or-data-grid-v3/OrDataGrid.vue.d.ts +67 -148
  134. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-footer/OrDataGridFooter.vue.d.ts +1 -1
  135. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-header/OrDataGridHeader.vue.d.ts +1 -1
  136. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-notification/OrDataGridNotification.vue.d.ts +45 -99
  137. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table/OrDataGridTable.vue.d.ts +1 -1
  138. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-content/OrDataGridTableContent.vue.d.ts +1 -1
  139. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-content-cell/OrDataGridTableContentCell.vue.d.ts +1 -1
  140. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-content-row/OrDataGridTableContentRow.vue.d.ts +1 -1
  141. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-extra-row/OrDataGridTableExtraRow.vue.d.ts +1 -1
  142. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-footer/OrDataGridTableFooter.vue.d.ts +1 -1
  143. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-footer-cell/OrDataGridTableFooterCell.vue.d.ts +1 -1
  144. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-footer-row/OrDataGridTableFooterRow.vue.d.ts +1 -1
  145. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-header/OrDataGridTableHeader.vue.d.ts +1 -1
  146. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-header-cell/OrDataGridTableHeaderCell.vue.d.ts +1 -1
  147. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-header-row/OrDataGridTableHeaderRow.vue.d.ts +1 -1
  148. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-table-placeholder/OrDataGridTablePlaceholder.vue.d.ts +1 -1
  149. package/dist/types/components/or-data-grid-v3/partials/or-data-grid-toolbar/OrDataGridToolbar.vue.d.ts +1 -1
  150. package/dist/types/components/or-date-format-v3/OrDateFormat.vue.d.ts +3 -3
  151. package/dist/types/components/or-date-picker-v3/OrDatePicker.vue.d.ts +512 -885
  152. package/dist/types/components/or-date-range-picker-v3/OrDateRangePicker.vue.d.ts +518 -1201
  153. package/dist/types/components/or-date-time-format-v3/OrDateTimeFormat.vue.d.ts +4 -4
  154. package/dist/types/components/or-date-time-picker-v3/OrDateTimePicker.vue.d.ts +1006 -1580
  155. package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-date-control/OrDateTimePickerDateControl.vue.d.ts +3 -3
  156. package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-date-select/OrDateTimePickerDateSelect.vue.d.ts +2 -2
  157. package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-mobile-control/OrDateTimePickerMobileControl.vue.d.ts +1 -1
  158. package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue.d.ts +842 -1247
  159. package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-popover-footer/OrDateTimePickerPopoverFooter.vue.d.ts +1 -1
  160. package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-popover-header/OrDateTimePickerPopoverHeader.vue.d.ts +1 -1
  161. package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-time-control/OrDateTimePickerTimeControl.vue.d.ts +3 -3
  162. package/dist/types/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue.d.ts +205 -293
  163. package/dist/types/components/or-drawer-v3/OrDrawer.vue.d.ts +2 -2
  164. package/dist/types/components/or-drop-area-v3/OrDropArea.vue.d.ts +4 -4
  165. package/dist/types/components/or-editor-tabs-v3/OrEditorTabs.vue.d.ts +55 -115
  166. package/dist/types/components/or-editor-tabs-v3/partials/or-editor-tabs-item/OrEditorTabsItem.vue.d.ts +1 -1
  167. package/dist/types/components/or-empty-state-v3/OrEmptyState.vue.d.ts +1 -1
  168. package/dist/types/components/or-error-tag-v3/OrErrorTag.vue.d.ts +1 -1
  169. package/dist/types/components/or-error-v3/OrError.vue.d.ts +1 -1
  170. package/dist/types/components/or-expansion-panel-v3/OrExpansionPanel.vue.d.ts +2 -2
  171. package/dist/types/components/or-fab-v3/OrFab.vue.d.ts +47 -99
  172. package/dist/types/components/or-filter-popover-v3/OrFilterPopover.vue.d.ts +4 -4
  173. package/dist/types/components/or-filter-trigger-v3/OrFilterTrigger.vue.d.ts +1 -1
  174. package/dist/types/components/or-filter-v3/OrFilter.vue.d.ts +480 -583
  175. package/dist/types/components/or-form-group-v3/OrFormGroup.vue.d.ts +1 -1
  176. package/dist/types/components/or-hint-v3/OrHint.vue.d.ts +1 -1
  177. package/dist/types/components/or-icon-button-v3/OrIconButton.vue.d.ts +353 -437
  178. package/dist/types/components/or-icon-v3/OrIcon.vue.d.ts +1 -1
  179. package/dist/types/components/or-indicator-v3/OrIndicator.vue.d.ts +70 -148
  180. package/dist/types/components/or-inline-input-box-v3/OrInlineInputBox.vue.d.ts +1 -1
  181. package/dist/types/components/or-inline-input-v3/OrInlineInput.vue.d.ts +16 -16
  182. package/dist/types/components/or-inline-textarea-v3/OrInlineTextarea.vue.d.ts +16 -16
  183. package/dist/types/components/or-input-box-v3/OrInputBox.vue.d.ts +1 -1
  184. package/dist/types/components/or-input-box-v3/partials/or-input-box-addon/OrInputBoxAddon.vue.d.ts +1 -1
  185. package/dist/types/components/or-input-v3/OrInput.vue.d.ts +16 -16
  186. package/dist/types/components/or-label-v3/OrLabel.vue.d.ts +1 -1
  187. package/dist/types/components/or-link-v3/OrLink.vue.d.ts +1 -1
  188. package/dist/types/components/or-list-v3/OrList.vue.d.ts +4 -4
  189. package/dist/types/components/or-list-v3/partials/or-list-item/OrListItem.vue.d.ts +1 -1
  190. package/dist/types/components/or-loader-v3/OrLoader.vue.d.ts +1 -1
  191. package/dist/types/components/or-menu-item-v3/OrMenuItem.vue.d.ts +180 -298
  192. package/dist/types/components/or-menu-v3/OrMenu.vue.d.ts +2 -2
  193. package/dist/types/components/or-modal-v3/OrModal.vue.d.ts +2 -2
  194. package/dist/types/components/or-modal-v3/partials/or-modal-content/OrModalContent.vue.d.ts +1 -1
  195. package/dist/types/components/or-modal-v3/partials/or-modal-footer/OrModalFooter.vue.d.ts +1 -1
  196. package/dist/types/components/or-modal-v3/partials/or-modal-header/OrModalHeader.vue.d.ts +2 -2
  197. package/dist/types/components/or-notification-v3/OrNotification.vue.d.ts +1 -1
  198. package/dist/types/components/or-overlay-v3/OrOverlay.vue.d.ts +1 -1
  199. package/dist/types/components/or-pagination-v3/OrPagination.vue.d.ts +370 -562
  200. package/dist/types/components/or-popover-v3/OrPopover.vue.d.ts +144 -273
  201. package/dist/types/components/or-progress-v3/OrProgress.vue.d.ts +1 -1
  202. package/dist/types/components/or-radio-group-v3/OrRadioGroup.vue.d.ts +2 -2
  203. package/dist/types/components/or-radio-v3/OrRadio.vue.d.ts +5 -5
  204. package/dist/types/components/or-range-slider-v3/OrRangeSlider.vue.d.ts +170 -164
  205. package/dist/types/components/or-rating-v3/OrRating.vue.d.ts +5 -5
  206. package/dist/types/components/or-resizeable-panel-v3/OrResizeablePanel.vue.d.ts +2 -2
  207. package/dist/types/components/or-rich-text-editor-v3/OrRichTextEditor.vue.d.ts +2148 -2667
  208. package/dist/types/components/or-rich-tooltip-v3/OrRichTooltip.vue.d.ts +433 -634
  209. package/dist/types/components/or-search-v3/OrSearch.vue.d.ts +232 -244
  210. package/dist/types/components/or-segmented-control-v3/OrSegmentedControl.vue.d.ts +2 -2
  211. package/dist/types/components/or-segmented-control-v3/partials/or-segmented-control-item/OrSegmentedControlItem.vue.d.ts +1 -1
  212. package/dist/types/components/or-select-v3/OrSelect.vue.d.ts +4560 -6401
  213. package/dist/types/components/or-select-v3/partials/or-select-control-input/OrSelectControlInput.vue.d.ts +2 -2
  214. package/dist/types/components/or-select-v3/partials/or-select-multiple-control/OrSelectMultipleControl.vue.d.ts +1519 -2179
  215. package/dist/types/components/or-select-v3/partials/or-select-placeholder/OrSelectPlaceholder.vue.d.ts +1 -1
  216. package/dist/types/components/or-select-v3/partials/or-select-single-control/OrSelectSingleControl.vue.d.ts +183 -279
  217. package/dist/types/components/or-sidebar-v3/OrSidebar.vue.d.ts +2 -2
  218. package/dist/types/components/or-skeleton-v3/or-skeleton-circle-v3/OrSkeletonCircle.vue.d.ts +1 -1
  219. package/dist/types/components/or-skeleton-v3/or-skeleton-rect-v3/OrSkeletonRect.vue.d.ts +1 -1
  220. package/dist/types/components/or-skeleton-v3/or-skeleton-text-v3/OrSkeletonText.vue.d.ts +1 -1
  221. package/dist/types/components/or-slider-v3/OrSlider.vue.d.ts +170 -164
  222. package/dist/types/components/or-sorting-v3/OrSorting.vue.d.ts +4 -4
  223. package/dist/types/components/or-status-v3/OrStatus.vue.d.ts +1 -1
  224. package/dist/types/components/or-switch-v3/OrSwitch.vue.d.ts +6 -6
  225. package/dist/types/components/or-tab-v3/OrTab.vue.d.ts +1 -1
  226. package/dist/types/components/or-tabs-v3/OrTabs.vue.d.ts +132 -244
  227. package/dist/types/components/or-tag-input-v3/OrTagInput.vue.d.ts +1497 -2148
  228. package/dist/types/components/or-tag-v3/OrTag.vue.d.ts +1 -1
  229. package/dist/types/components/or-tags-v3/OrTags.vue.d.ts +610 -921
  230. package/dist/types/components/or-teleport-v3/OrTeleport.vue3.vue.d.ts +1 -1
  231. package/dist/types/components/or-text-v3/OrText.vue.d.ts +1 -1
  232. package/dist/types/components/or-textarea-v3/OrTextarea.vue.d.ts +15 -15
  233. package/dist/types/components/or-time-format-v3/OrTimeFormat.vue.d.ts +3 -3
  234. package/dist/types/components/or-time-picker-v3/OrTimePicker.vue.d.ts +512 -885
  235. package/dist/types/components/or-time-range-picker-v3/OrTimeRangePicker.vue.d.ts +517 -1138
  236. package/dist/types/components/or-toast-v3/OrToast.vue.d.ts +1 -1
  237. package/dist/types/components/or-toast-v3/or-toast-container-v3/OrToastContainer.vue.d.ts +1 -1
  238. package/dist/types/components/or-tooltip-v3/OrTooltip.vue.d.ts +2 -2
  239. package/dist/types/components/or-tree-v3/OrTree.vue.d.ts +1 -1
  240. package/dist/types/components/or-tree-v3/partials/or-tree-node/OrTreeNode.vue.d.ts +1 -1
  241. package/package.json +8 -8
  242. package/dist/esm/OrCheckbox-CI-mxgEp.mjs.map +0 -1
  243. package/dist/esm/OrCheckboxTree-DvIftMpp.mjs.map +0 -1
  244. package/dist/esm/OrDropArea-DA9aXi-a.mjs.map +0 -1
  245. package/dist/esm/OrList-CLHvgZc7.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"OrPagination-DIacMkVe.mjs","sources":["../../../components/or-pagination-v3/src/styles.ts","../../../components/or-pagination-v3/src/OrPagination.vue"],"sourcesContent":["export const Pagination: string[] = [\n // Layout\n 'layout-row justify-between md:justify-end',\n\n // Spacing\n 'gap-xl',\n\n // Typography\n 'typography-caption-regular',\n\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n];\n\nexport const PaginationLimitGroup: string[] = [\n // Layout\n 'layout-row shrink-0',\n\n // Spacing\n 'gap-lg md:gap-md',\n];\n\nexport const PaginationOffsetGroup: string[] = [\n // Layout\n 'layout-row shrink-0',\n\n // Spacing\n 'gap-md',\n];\n\nexport const PaginationItem: string[] = [\n // Typography\n 'typography-caption-regular',\n\n // Typography (activated)\n 'activated:typography-caption-bold',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <div :class=\"limitGroupStyles\">\n <template v-if=\"features.limit\">\n <div :class=\"['layout-row', 'gap-sm']\">\n Per page:\n\n <OrButton\n :ref=\"'limitButton'\"\n :class=\"itemStyles\"\n :variant=\"'link'\"\n :color=\"'inherit'\"\n :activated=\"true\"\n @click=\"limitMenu && limitMenu.toggle()\"\n >\n {{ currentLimit }} <OrIcon :icon=\"limitMenu && limitMenu.state === 'open' ? 'arrow_drop_up' : 'arrow_drop_down'\" />\n </OrButton>\n\n <OrMenu\n :ref=\"'limitMenu'\"\n :additional-styles=\"['min-w-[60px]']\"\n :trigger=\"limitButtonRoot\"\n :placement=\"'top'\"\n >\n <OrMenuItem\n v-for=\"limit of options\"\n :key=\"limit\"\n :selected=\"currentLimit === limit\"\n @click=\"currentLimit = limit; limitMenu && limitMenu.close()\"\n >\n {{ limit }}\n </OrMenuItem>\n </OrMenu>\n </div>\n </template>\n\n <template v-if=\"features.range\">\n {{ currentOffset + 1 }}-{{ Math.min(currentOffset + currentLimit, length) }} of {{ length }}\n </template>\n </div>\n\n <div :class=\"offsetGroupStyles\">\n <OrButton\n :class=\"itemStyles\"\n :variant=\"'link'\"\n :color=\"'inherit'\"\n :disabled=\"currentPage === firstPage\"\n @click=\"toPreviousPage()\"\n >\n <OrIcon :icon=\"'keyboard_arrow_left'\" />\n </OrButton>\n\n <template v-if=\"isDesktop\">\n <OrButton\n v-for=\"(page, index) of buttonGroup\"\n :key=\"index\"\n :class=\"itemStyles\"\n :variant=\"'link'\"\n :color=\"'inherit'\"\n :activated=\"currentPage === page\"\n @click=\"typeof page === 'number' && toPage(page)\"\n >\n {{ page }}\n </OrButton>\n </template>\n\n <template v-if=\"isMobile\">\n <OrButton\n :ref=\"'offsetButton'\"\n :class=\"itemStyles\"\n :variant=\"'link'\"\n :color=\"'inherit'\"\n :activated=\"true\"\n @click=\"offsetMenu && offsetMenu.open()\"\n >\n {{ currentPage }} <OrIcon :icon=\"offsetMenu && offsetMenu.state === 'open' ? 'arrow_drop_up' : 'arrow_drop_down'\" />\n </OrButton>\n\n <OrMenu\n :ref=\"'offsetMenu'\"\n :additional-styles=\"['min-w-[60px]']\"\n :trigger=\"offsetButtonRoot\"\n :placement=\"'top'\"\n >\n <OrMenuItem\n v-for=\"page of lastPage\"\n :key=\"page\"\n :selected=\"currentPage === page\"\n @click=\"currentPage = page; offsetMenu && offsetMenu.close()\"\n >\n {{ page }}\n </OrMenuItem>\n </OrMenu>\n </template>\n\n <OrButton\n :class=\"itemStyles\"\n :variant=\"'link'\"\n :color=\"'inherit'\"\n :disabled=\"currentPage === lastPage\"\n @click=\"toNextPage()\"\n >\n <OrIcon :icon=\"'keyboard_arrow_right'\" />\n </OrButton>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, PropType, ref, toRef } from 'vue';\nimport { useProxyModelValue, useResponsive } 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 * as Styles from './styles';\nimport { PaginationFeatures, PaginationModelValue } from './types';\n\nexport default defineComponent({\n name: 'OrPagination',\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: undefined as unknown as PropType<PaginationModelValue>,\n default: undefined,\n },\n\n length: {\n type: Number,\n required: true,\n },\n\n options: {\n type: Array as PropType<number[]>,\n default: () => [50, 20, 10, 5],\n },\n\n features: {\n type: Object as PropType<PaginationFeatures>,\n\n default: () => ({\n limit: true,\n range: true,\n }) as PaginationFeatures,\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-pagination-v3',\n ...Styles.Pagination,\n ]);\n\n const limitButton = ref<InstanceType<typeof OrButton>>();\n const limitButtonRoot = computed(() => limitButton.value?.root);\n\n const limitMenu = ref<InstanceType<typeof OrMenu>>();\n const limitMenuRoot = computed(() => limitMenu.value?.root);\n\n const limitGroupStyles = computed(() => [\n ...Styles.PaginationLimitGroup,\n ]);\n\n const offsetButton = ref<InstanceType<typeof OrButton>>();\n const offsetButtonRoot = computed(() => offsetButton.value?.root);\n\n const offsetMenu = ref<InstanceType<typeof OrMenu>>();\n const offsetMenuRoot = computed(() => offsetMenu.value?.root);\n\n const offsetGroupStyles = computed(() => [\n ...Styles.PaginationOffsetGroup,\n ]);\n\n const itemStyles = computed(() => [\n ...Styles.PaginationItem,\n ]);\n\n // State\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const currentLimit = computed<number>({\n get: () => model.value?.limit ?? props.options[0],\n\n set: (value) => {\n model.value = {\n limit: value,\n offset: 0,\n };\n },\n });\n\n const currentOffset = computed<number>({\n get: () => model.value?.offset ?? 0,\n\n set: (value) => {\n model.value = {\n limit: currentLimit.value,\n offset: value,\n };\n },\n });\n\n const currentPage = computed<number>({\n get: () => Math.floor(currentOffset.value / currentLimit.value) + 1,\n\n set: (value) => {\n currentOffset.value = (value - 1) * currentLimit.value;\n },\n });\n\n const firstPage = computed<number>(() => {\n return 1;\n });\n\n const lastPage = computed<number>(() => {\n return Math.ceil(props.length / currentLimit.value);\n });\n\n const buttonGroup = computed<(number | string)[]>(() => {\n const pages = Array.from({ length: lastPage.value }, (_, index) => index + 1);\n\n switch (true) {\n case lastPage.value <= 7:\n return pages;\n\n case currentPage.value < firstPage.value + 4:\n return [\n ...pages.slice(0, 5),\n '…',\n lastPage.value,\n ];\n\n case currentPage.value > lastPage.value - 4:\n return [\n firstPage.value,\n '…',\n ...pages.slice(-5),\n ];\n\n default:\n return pages\n .map((page) => {\n switch (true) {\n case page > firstPage.value && page < currentPage.value - 1:\n case page < lastPage.value && page > currentPage.value + 1:\n return '…';\n\n default:\n return page;\n }\n })\n .reduce((accumulator, page) => {\n if (accumulator[accumulator.length - 1] === page) {\n return accumulator;\n }\n\n return [...accumulator, page];\n }, [] as (number | string)[]);\n }\n });\n\n // Methods\n function toPreviousPage(): void {\n currentPage.value = currentPage.value - 1;\n }\n\n function toNextPage(): void {\n currentPage.value = currentPage.value + 1;\n }\n\n function toPage(page: number): void {\n currentPage.value = page;\n }\n\n // Helpers\n const { isDesktop, isMobile } = useResponsive();\n\n return {\n root,\n rootStyles,\n\n limitButton,\n limitButtonRoot,\n\n limitMenu,\n limitMenuRoot,\n\n limitGroupStyles,\n\n offsetButton,\n offsetButtonRoot,\n\n offsetMenu,\n offsetMenuRoot,\n\n offsetGroupStyles,\n\n itemStyles,\n\n model,\n\n currentLimit,\n currentOffset,\n currentPage,\n\n firstPage,\n lastPage,\n\n buttonGroup,\n\n toPreviousPage,\n toNextPage,\n toPage,\n\n isDesktop,\n isMobile,\n };\n },\n});\n</script>\n"],"names":["Pagination","PaginationLimitGroup","PaginationOffsetGroup","PaginationItem","_sfc_main","defineComponent","OrButton","OrIcon","OrMenu","OrMenuItem","props","context","root","ref","rootStyles","computed","Styles.Pagination","limitButton","limitButtonRoot","_a","limitMenu","limitMenuRoot","limitGroupStyles","Styles.PaginationLimitGroup","offsetButton","offsetButtonRoot","offsetMenu","offsetMenuRoot","offsetGroupStyles","Styles.PaginationOffsetGroup","itemStyles","Styles.PaginationItem","model","useProxyModelValue","toRef","currentLimit","value","currentOffset","currentPage","firstPage","lastPage","buttonGroup","pages","_","index","page","accumulator","toPreviousPage","toNextPage","toPage","isDesktop","isMobile","useResponsive","_hoisted_1","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createTextVNode","_createVNode","_component_OrButton","_cache","$event","_withCtx","_toDisplayString","_component_OrIcon","_component_OrMenu","_Fragment","_renderList","limit","_component_OrMenuItem","_createCommentVNode","_createElementVNode","_createBlock"],"mappings":"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"}
1
+ {"version":3,"file":"OrPagination-DIacMkVe.mjs","sources":["../../../components/or-pagination-v3/src/styles.ts","../../../components/or-pagination-v3/src/OrPagination.vue"],"sourcesContent":["export const Pagination: string[] = [\n // Layout\n 'layout-row justify-between md:justify-end',\n\n // Spacing\n 'gap-xl',\n\n // Typography\n 'typography-caption-regular',\n\n // Theme\n 'theme-foreground-outline',\n 'dark:theme-foreground-outline-dark',\n];\n\nexport const PaginationLimitGroup: string[] = [\n // Layout\n 'layout-row shrink-0',\n\n // Spacing\n 'gap-lg md:gap-md',\n];\n\nexport const PaginationOffsetGroup: string[] = [\n // Layout\n 'layout-row shrink-0',\n\n // Spacing\n 'gap-md',\n];\n\nexport const PaginationItem: string[] = [\n // Typography\n 'typography-caption-regular',\n\n // Typography (activated)\n 'activated:typography-caption-bold',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <div :class=\"limitGroupStyles\">\n <template v-if=\"features.limit\">\n <div :class=\"['layout-row', 'gap-sm']\">\n Per page:\n\n <OrButton\n :ref=\"'limitButton'\"\n :class=\"itemStyles\"\n :variant=\"'link'\"\n :color=\"'inherit'\"\n :activated=\"true\"\n @click=\"limitMenu && limitMenu.toggle()\"\n >\n {{ currentLimit }} <OrIcon :icon=\"limitMenu && limitMenu.state === 'open' ? 'arrow_drop_up' : 'arrow_drop_down'\" />\n </OrButton>\n\n <OrMenu\n :ref=\"'limitMenu'\"\n :additional-styles=\"['min-w-[60px]']\"\n :trigger=\"limitButtonRoot\"\n :placement=\"'top'\"\n >\n <OrMenuItem\n v-for=\"limit of options\"\n :key=\"limit\"\n :selected=\"currentLimit === limit\"\n @click=\"currentLimit = limit; limitMenu && limitMenu.close()\"\n >\n {{ limit }}\n </OrMenuItem>\n </OrMenu>\n </div>\n </template>\n\n <template v-if=\"features.range\">\n {{ currentOffset + 1 }}-{{ Math.min(currentOffset + currentLimit, length) }} of {{ length }}\n </template>\n </div>\n\n <div :class=\"offsetGroupStyles\">\n <OrButton\n :class=\"itemStyles\"\n :variant=\"'link'\"\n :color=\"'inherit'\"\n :disabled=\"currentPage === firstPage\"\n @click=\"toPreviousPage()\"\n >\n <OrIcon :icon=\"'keyboard_arrow_left'\" />\n </OrButton>\n\n <template v-if=\"isDesktop\">\n <OrButton\n v-for=\"(page, index) of buttonGroup\"\n :key=\"index\"\n :class=\"itemStyles\"\n :variant=\"'link'\"\n :color=\"'inherit'\"\n :activated=\"currentPage === page\"\n @click=\"typeof page === 'number' && toPage(page)\"\n >\n {{ page }}\n </OrButton>\n </template>\n\n <template v-if=\"isMobile\">\n <OrButton\n :ref=\"'offsetButton'\"\n :class=\"itemStyles\"\n :variant=\"'link'\"\n :color=\"'inherit'\"\n :activated=\"true\"\n @click=\"offsetMenu && offsetMenu.open()\"\n >\n {{ currentPage }} <OrIcon :icon=\"offsetMenu && offsetMenu.state === 'open' ? 'arrow_drop_up' : 'arrow_drop_down'\" />\n </OrButton>\n\n <OrMenu\n :ref=\"'offsetMenu'\"\n :additional-styles=\"['min-w-[60px]']\"\n :trigger=\"offsetButtonRoot\"\n :placement=\"'top'\"\n >\n <OrMenuItem\n v-for=\"page of lastPage\"\n :key=\"page\"\n :selected=\"currentPage === page\"\n @click=\"currentPage = page; offsetMenu && offsetMenu.close()\"\n >\n {{ page }}\n </OrMenuItem>\n </OrMenu>\n </template>\n\n <OrButton\n :class=\"itemStyles\"\n :variant=\"'link'\"\n :color=\"'inherit'\"\n :disabled=\"currentPage === lastPage\"\n @click=\"toNextPage()\"\n >\n <OrIcon :icon=\"'keyboard_arrow_right'\" />\n </OrButton>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent, PropType, ref, toRef } from 'vue';\nimport { useProxyModelValue, useResponsive } 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 * as Styles from './styles';\nimport { PaginationFeatures, PaginationModelValue } from './types';\n\nexport default defineComponent({\n name: 'OrPagination',\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: undefined as unknown as PropType<PaginationModelValue>,\n default: undefined,\n },\n\n length: {\n type: Number,\n required: true,\n },\n\n options: {\n type: Array as PropType<number[]>,\n default: () => [50, 20, 10, 5],\n },\n\n features: {\n type: Object as PropType<PaginationFeatures>,\n\n default: () => ({\n limit: true,\n range: true,\n }) as PaginationFeatures,\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-pagination-v3',\n ...Styles.Pagination,\n ]);\n\n const limitButton = ref<InstanceType<typeof OrButton>>();\n const limitButtonRoot = computed(() => limitButton.value?.root);\n\n const limitMenu = ref<InstanceType<typeof OrMenu>>();\n const limitMenuRoot = computed(() => limitMenu.value?.root);\n\n const limitGroupStyles = computed(() => [\n ...Styles.PaginationLimitGroup,\n ]);\n\n const offsetButton = ref<InstanceType<typeof OrButton>>();\n const offsetButtonRoot = computed(() => offsetButton.value?.root);\n\n const offsetMenu = ref<InstanceType<typeof OrMenu>>();\n const offsetMenuRoot = computed(() => offsetMenu.value?.root);\n\n const offsetGroupStyles = computed(() => [\n ...Styles.PaginationOffsetGroup,\n ]);\n\n const itemStyles = computed(() => [\n ...Styles.PaginationItem,\n ]);\n\n // State\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const currentLimit = computed<number>({\n get: () => model.value?.limit ?? props.options[0],\n\n set: (value) => {\n model.value = {\n limit: value,\n offset: 0,\n };\n },\n });\n\n const currentOffset = computed<number>({\n get: () => model.value?.offset ?? 0,\n\n set: (value) => {\n model.value = {\n limit: currentLimit.value,\n offset: value,\n };\n },\n });\n\n const currentPage = computed<number>({\n get: () => Math.floor(currentOffset.value / currentLimit.value) + 1,\n\n set: (value) => {\n currentOffset.value = (value - 1) * currentLimit.value;\n },\n });\n\n const firstPage = computed<number>(() => {\n return 1;\n });\n\n const lastPage = computed<number>(() => {\n return Math.ceil(props.length / currentLimit.value);\n });\n\n const buttonGroup = computed<(number | string)[]>(() => {\n const pages = Array.from({ length: lastPage.value }, (_, index) => index + 1);\n\n switch (true) {\n case lastPage.value <= 7:\n return pages;\n\n case currentPage.value < firstPage.value + 4:\n return [\n ...pages.slice(0, 5),\n '…',\n lastPage.value,\n ];\n\n case currentPage.value > lastPage.value - 4:\n return [\n firstPage.value,\n '…',\n ...pages.slice(-5),\n ];\n\n default:\n return pages\n .map((page) => {\n switch (true) {\n case page > firstPage.value && page < currentPage.value - 1:\n case page < lastPage.value && page > currentPage.value + 1:\n return '…';\n\n default:\n return page;\n }\n })\n .reduce((accumulator, page) => {\n if (accumulator[accumulator.length - 1] === page) {\n return accumulator;\n }\n\n return [...accumulator, page];\n }, [] as (number | string)[]);\n }\n });\n\n // Methods\n function toPreviousPage(): void {\n currentPage.value = currentPage.value - 1;\n }\n\n function toNextPage(): void {\n currentPage.value = currentPage.value + 1;\n }\n\n function toPage(page: number): void {\n currentPage.value = page;\n }\n\n // Helpers\n const { isDesktop, isMobile } = useResponsive();\n\n return {\n root,\n rootStyles,\n\n limitButton,\n limitButtonRoot,\n\n limitMenu,\n limitMenuRoot,\n\n limitGroupStyles,\n\n offsetButton,\n offsetButtonRoot,\n\n offsetMenu,\n offsetMenuRoot,\n\n offsetGroupStyles,\n\n itemStyles,\n\n model,\n\n currentLimit,\n currentOffset,\n currentPage,\n\n firstPage,\n lastPage,\n\n buttonGroup,\n\n toPreviousPage,\n toNextPage,\n toPage,\n\n isDesktop,\n isMobile,\n };\n },\n});\n</script>\n"],"names":["Pagination","PaginationLimitGroup","PaginationOffsetGroup","PaginationItem","_sfc_main","defineComponent","OrButton","OrIcon","OrMenu","OrMenuItem","props","context","root","ref","rootStyles","computed","Styles.Pagination","limitButton","limitButtonRoot","_a","limitMenu","limitMenuRoot","limitGroupStyles","Styles.PaginationLimitGroup","offsetButton","offsetButtonRoot","offsetMenu","offsetMenuRoot","offsetGroupStyles","Styles.PaginationOffsetGroup","itemStyles","Styles.PaginationItem","model","useProxyModelValue","toRef","currentLimit","value","currentOffset","currentPage","firstPage","lastPage","buttonGroup","pages","_","index","page","accumulator","toPreviousPage","toNextPage","toPage","isDesktop","isMobile","useResponsive","_hoisted_1","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","features","_createTextVNode","_createVNode","_component_OrButton","_cache","$event","_withCtx","_component_OrIcon","_component_OrMenu","_Fragment","_renderList","limit","_component_OrMenuItem","_toDisplayString","_createCommentVNode","_createElementVNode"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"OrPopover-DbygLPtT.mjs","sources":["../../../components/or-popover-v3/src/hooks/useFloating.ts","../../../components/or-popover-v3/src/props.ts","../../../components/or-popover-v3/src/styles.ts","../../../components/or-popover-v3/src/utils/isPrevented.ts","../../../components/or-popover-v3/src/OrPopover.vue"],"sourcesContent":["import type { FloatingElement, MiddlewareData, ReferenceElement } from '@floating-ui/dom';\nimport { computePosition } from '@floating-ui/dom';\nimport { Ref, computed, getCurrentScope, onScopeDispose, ref, shallowReadonly, shallowRef, unref, watch } from 'vue';\n\nimport type {\n UseFloatingOptions,\n UseFloatingReturn,\n MaybeElement,\n} from './types';\n\n// https://github.com/floating-ui/floating-ui/blob/master/packages/vue/src/useFloating.ts\n/**\n * Computes the `x` and `y` coordinates that will place the floating element next to a reference element when it is given a certain CSS positioning strategy.\n * @param reference The reference template ref.\n * @param floating The floating template ref.\n * @param options The floating options.\n * @see https://floating-ui.com/docs/vue\n */\n\nimport type { ComponentPublicInstance } from 'vue';\n\nfunction roundByDPR(element: Element, value: number) {\n const dpr = getDPR(element);\n return Math.round(value * dpr) / dpr;\n}\nfunction getDPR(element: Element): number {\n if (typeof window === 'undefined') {\n return 1;\n }\n const win = element.ownerDocument.defaultView || window;\n return win.devicePixelRatio || 1;\n}\nfunction unwrapElement<T>(element: MaybeElement<T>) {\n return ((element as Exclude<MaybeElement<T>, T>)?.$el ?? element) as Exclude<\n MaybeElement<T>,\n ComponentPublicInstance\n >;\n}\nexport function useFloating<T extends ReferenceElement = ReferenceElement>(\n reference: Readonly<Ref<MaybeElement<T>>>,\n floating: Readonly<Ref<MaybeElement<FloatingElement>>>,\n options: UseFloatingOptions<T> = {}\n): UseFloatingReturn {\n const whileElementsMountedOption = options.whileElementsMounted;\n const openOption = computed(() => unref(options.open) ?? true);\n const middlewareOption = computed(() => unref(options.middleware));\n const placementOption = computed(() => unref(options.placement) ?? 'bottom');\n const strategyOption = computed(() => unref(options.strategy) ?? 'absolute');\n const transformOption = computed(() => unref(options.transform) ?? true);\n const referenceElement = computed(() => unwrapElement(reference.value));\n const floatingElement = computed(() => unwrapElement(floating.value));\n const x = ref(0);\n const y = ref(0);\n const strategy = ref(strategyOption.value);\n const placement = ref(placementOption.value);\n const middlewareData = shallowRef<MiddlewareData>({});\n const isPositioned = ref(false);\n const floatingStyles = computed(() => {\n const initialStyles = {\n position: strategy.value,\n left: '0',\n top: '0',\n };\n\n if (!floatingElement.value) {\n return initialStyles;\n }\n\n const xVal = roundByDPR(floatingElement.value, x.value);\n const yVal = roundByDPR(floatingElement.value, y.value);\n\n if (transformOption.value) {\n return {\n ...initialStyles,\n transform: `translate(${xVal}px, ${yVal}px)`,\n ...(getDPR(floatingElement.value) >= 1.5 && { willChange: 'transform' }),\n };\n }\n\n return {\n position: strategy.value,\n left: `${xVal}px`,\n top: `${yVal}px`,\n };\n });\n\n let whileElementsMountedCleanup: (() => void) | undefined;\n\n function update() {\n if (referenceElement.value == null || floatingElement.value == null) {\n return;\n }\n\n computePosition(referenceElement.value, floatingElement.value, {\n middleware: middlewareOption.value,\n placement: placementOption.value,\n strategy: strategyOption.value,\n }).then((position) => {\n x.value = position.x;\n y.value = position.y;\n strategy.value = position.strategy;\n placement.value = position.placement;\n middlewareData.value = position.middlewareData;\n isPositioned.value = true;\n });\n }\n\n function cleanup() {\n if (typeof whileElementsMountedCleanup === 'function') {\n whileElementsMountedCleanup();\n whileElementsMountedCleanup = undefined;\n }\n }\n\n function attach() {\n cleanup();\n\n if (whileElementsMountedOption === undefined) {\n update();\n return;\n }\n\n if (referenceElement.value != null && floatingElement.value != null) {\n whileElementsMountedCleanup = whileElementsMountedOption(\n referenceElement.value,\n floatingElement.value,\n update\n );\n return;\n }\n }\n\n function reset() {\n if (!openOption.value) {\n isPositioned.value = false;\n }\n }\n\n watch([middlewareOption, placementOption, strategyOption], update, {\n flush: 'sync',\n });\n watch([referenceElement, floatingElement], attach, { flush: 'sync' });\n watch(openOption, reset, { flush: 'sync' });\n\n if (getCurrentScope()) {\n onScopeDispose(cleanup);\n }\n\n return {\n x: shallowReadonly(x),\n y: shallowReadonly(y),\n strategy: shallowReadonly(strategy),\n placement: shallowReadonly(placement),\n middlewareData: shallowReadonly(middlewareData),\n isPositioned: shallowReadonly(isPositioned),\n floatingStyles,\n update,\n };\n}\n","import { offset } from '@floating-ui/dom';\n\nexport enum PopoverVariant {\n Auto = 'auto',\n Popover = 'popover',\n BottomSheet = 'bottom-sheet',\n}\n\nexport enum PopoverPlacement {\n Top = 'top',\n TopStart = 'top-start',\n TopEnd = 'top-end',\n Bottom = 'bottom',\n BottomStart = 'bottom-start',\n BottomEnd = 'bottom-end',\n Left = 'left',\n LeftStart = 'left-start',\n LeftEnd = 'left-end',\n Right = 'right',\n RightStart = 'right-start',\n RightEnd = 'right-end',\n}\n\nexport type PopoverOffset = NonNullable<Parameters<typeof offset>[0]>;\n","import { PopoverPlacement } from './props';\n\nexport const Popover: string[] = [\n // Position\n 'absolute',\n];\n\nexport const PopoverBody: string[] = [\n // Shape\n 'rounded-md',\n\n // Spacing\n 'mx-sm',\n 'my-sm',\n\n // Elevation\n 'shadow-contextual',\n 'dark:shadow-contextual-dark',\n\n // Theme\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-foreground-default',\n 'dark:theme-foreground-default-dark',\n];\n\nexport const PopoverBodyPlacements: Record<PopoverPlacement, string[]> = {\n [PopoverPlacement.Top]: [\n // Spacing\n 'mb-0',\n ],\n\n [PopoverPlacement.TopStart]: [\n // Spacing\n 'mb-0',\n 'ml-0',\n ],\n\n [PopoverPlacement.TopEnd]: [\n // Spacing\n 'mb-0',\n 'mr-0',\n ],\n\n [PopoverPlacement.Bottom]: [\n // Spacing\n 'mt-0',\n ],\n\n [PopoverPlacement.BottomStart]: [\n // Spacing\n 'mt-0',\n 'ml-0',\n ],\n\n [PopoverPlacement.BottomEnd]: [\n // Spacing\n 'mt-0',\n 'mr-0',\n ],\n\n [PopoverPlacement.Left]: [\n // Spacing\n 'mr-0',\n ],\n\n [PopoverPlacement.LeftStart]: [\n // Spacing\n 'mr-0',\n 'mt-0',\n ],\n\n [PopoverPlacement.LeftEnd]: [\n // Spacing\n 'mr-0',\n 'mb-0',\n ],\n\n [PopoverPlacement.Right]: [\n // Spacing\n 'ml-0',\n ],\n\n [PopoverPlacement.RightStart]: [\n // Spacing\n 'ml-0',\n 'mt-0',\n ],\n\n [PopoverPlacement.RightEnd]: [\n // Spacing\n 'ml-0',\n 'mb-0',\n ],\n};\n","import { isAncestor } from '@onereach/ui-components-common/utils';\n\nexport function isPrevented(path: Element[], trigger: Element): boolean {\n return path.some((element) => {\n const { classList } = element;\n\n if (!isAncestor(element, trigger)) {\n if (classList?.contains('or-popover-v3')) {\n return true;\n }\n\n if (classList?.contains('or-bottom-sheet-v3')) {\n return true;\n }\n\n if (classList?.contains('or-confirm-v3')) {\n return true;\n }\n }\n\n return false;\n });\n}\n","<template>\n <OrTeleport v-if=\"keepAlive || state === 'open'\">\n <div\n v-show=\"state === 'open'\"\n :ref=\"'containerRoot'\"\n :class=\"['contents', 'my-state' + state]\"\n >\n <template v-if=\"isDesktop && variant === 'auto' || variant === 'popover'\">\n <div\n v-show=\"!isHidden\"\n v-bind=\"$attrs\"\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :style=\"floatingStyles\"\n >\n <template v-if=\"disableDefaultStyles\">\n <slot />\n </template>\n\n <template v-else>\n <div :class=\"bodyStyles\">\n <slot />\n </div>\n </template>\n </div>\n </template>\n\n <template v-if=\"isMobile && variant === 'auto' || variant === 'bottom-sheet'\">\n <OrBottomSheet\n :ref=\"'bottomSheet'\"\n v-bind=\"bottomSheetProps\"\n :is-open=\"state === 'open'\"\n @update:state=\"$event === 'open' ? open() : close()\"\n >\n <slot />\n </OrBottomSheet>\n </template>\n </div>\n </OrTeleport>\n</template>\n\n<script lang=\"ts\">\nimport { FlipOptions, HideOptions, ReferenceElement, autoUpdate, flip, hide, offset as offsetMiddleware, shift, size } from '@floating-ui/dom';\nimport { MaybeElementRef, onClickOutside } from '@vueuse/core';\nimport { PropType, computed, defineComponent, ref, toRef, toRefs, watch } from 'vue';\nimport { useElevation, usePopoverState, useResponsive } from '@onereach/ui-components-common/hooks';\nimport { OrBottomSheetV3 as OrBottomSheet } from '@onereach/ui-components.or-bottom-sheet-v3';\nimport { OrTeleportV3 as OrTeleport } from '@onereach/ui-components.or-teleport-v3';\nimport { useFloating } from './hooks/useFloating';\nimport { PopoverOffset, PopoverPlacement, PopoverVariant } from './props';\nimport { Popover, PopoverBody, PopoverBodyPlacements } from './styles';\nimport { isPrevented } from './utils';\n\nexport default defineComponent({\n name: 'OrPopover',\n\n components: {\n OrBottomSheet,\n OrTeleport,\n },\n\n inheritAttrs: false,\n\n props: {\n // @workaround for Vue 2\n customStyles: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n\n isOpen: {\n type: Boolean,\n default: false,\n },\n\n variant: {\n type: String as PropType<`${PopoverVariant}`>,\n default: () => PopoverVariant.Auto,\n },\n\n bottomSheetProps: {\n type: Object as PropType<InstanceType<typeof OrBottomSheet>['$props']>,\n default: undefined,\n },\n\n trigger: {\n type: Object as PropType<ReferenceElement>,\n default: undefined,\n },\n\n placement: {\n type: String as PropType<`${PopoverPlacement}`>,\n default: () => PopoverPlacement.Bottom,\n },\n\n fallbackPlacement: {\n type: String as PropType<FlipOptions['fallbackAxisSideDirection']>,\n default: 'end',\n },\n\n hideOptions: {\n type: Object as PropType<HideOptions>,\n default: undefined,\n },\n\n offset: {\n type: [Number, Object, Function] as PropType<PopoverOffset>,\n default: 8,\n },\n\n fullWidth: {\n type: Boolean,\n default: false,\n },\n\n disableDefaultStyles: {\n type: Boolean,\n default: false,\n },\n\n keepAlive: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n 'update:state',\n\n 'open',\n 'close',\n ],\n\n expose: [\n 'root',\n\n 'state',\n\n 'isFlipped',\n 'isHidden',\n\n 'open',\n 'close',\n 'toggle',\n\n 'bottomSheet',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n const containerRoot = ref<HTMLElement>();\n\n const bottomSheet = ref<InstanceType<typeof OrBottomSheet>>();\n const bottomSheetRoot = computed(() => bottomSheet.value?.root);\n\n const { trigger, placement, offset, fullWidth, hideOptions } = toRefs(props);\n\n // Styles\n const rootStyles = computed(() => [\n 'or-popover-v3',\n ...Popover,\n ...'class' in context.attrs ? [] : props.customStyles,\n ]);\n\n const bodyStyles = computed(() => [\n ...PopoverBody,\n ...PopoverBodyPlacements[placement.value],\n ]);\n\n // State\n const { state, open, close, toggle } = usePopoverState(toRef(props, 'isOpen'), context.emit);\n\n const { floatingStyles, middlewareData, placement: computedPlacement } = useFloating(trigger, root, {\n placement,\n\n middleware: [\n offsetMiddleware(offset.value),\n shift(),\n flip(() => ({ fallbackAxisSideDirection: props.fallbackPlacement })),\n hide(hideOptions.value),\n\n size({\n apply({ rects, elements }) {\n if (fullWidth.value) {\n Object.assign(elements.floating.style, {\n width: `${rects.reference.width}px`,\n });\n }\n },\n }),\n ],\n\n whileElementsMounted(...args) {\n return autoUpdate(...args, { animationFrame: true });\n },\n });\n\n const isFlipped = computed(() => computedPlacement.value !== placement.value);\n const isHidden = computed(() => Boolean(middlewareData.value.hide?.referenceHidden));\n\n // Helpers\n const { isDesktop, isMobile } = useResponsive(containerRoot);\n\n // #region Elevation\n useElevation(root, state);\n // #endregion\n\n // #region Click Outside\n onClickOutside(root, (event) => {\n if (state.value === 'open' && !isPrevented(event.composedPath() as Element[], props.trigger as Element)) {\n close();\n }\n }, {\n ignore: [trigger as MaybeElementRef],\n });\n // #endregion\n\n return {\n root,\n containerRoot,\n bottomSheet,\n bottomSheetRoot,\n rootStyles,\n bodyStyles,\n floatingStyles,\n state,\n isFlipped,\n isHidden,\n isDesktop,\n isMobile,\n open,\n close,\n toggle,\n };\n },\n});\n</script>\n"],"names":["roundByDPR","element","value","dpr","getDPR","unwrapElement","useFloating","reference","floating","options","whileElementsMountedOption","openOption","computed","unref","middlewareOption","placementOption","strategyOption","transformOption","referenceElement","floatingElement","x","ref","y","strategy","placement","middlewareData","shallowRef","isPositioned","floatingStyles","initialStyles","xVal","yVal","whileElementsMountedCleanup","update","computePosition","position","cleanup","attach","reset","watch","getCurrentScope","onScopeDispose","shallowReadonly","PopoverVariant","PopoverPlacement","Popover","PopoverBody","PopoverBodyPlacements","isPrevented","path","trigger","classList","isAncestor","_sfc_main","defineComponent","OrBottomSheet","OrTeleport","props","context","root","containerRoot","bottomSheet","bottomSheetRoot","_a","offset","fullWidth","hideOptions","toRefs","rootStyles","bodyStyles","state","open","close","toggle","usePopoverState","toRef","computedPlacement","offsetMiddleware","shift","flip","hide","size","rects","elements","args","autoUpdate","isFlipped","isHidden","isDesktop","isMobile","useResponsive","useElevation","onClickOutside","event","_resolveComponent","_ctx","_openBlock","_createBlock","_component_OrTeleport","_withCtx","_withDirectives","_createElementVNode","_normalizeClass","_createElementBlock","_mergeProps","_renderSlot","_createCommentVNode","_component_OrBottomSheet","_cache","$event"],"mappings":"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"}
1
+ {"version":3,"file":"OrPopover-DbygLPtT.mjs","sources":["../../../components/or-popover-v3/src/hooks/useFloating.ts","../../../components/or-popover-v3/src/props.ts","../../../components/or-popover-v3/src/styles.ts","../../../components/or-popover-v3/src/utils/isPrevented.ts","../../../components/or-popover-v3/src/OrPopover.vue"],"sourcesContent":["import type { FloatingElement, MiddlewareData, ReferenceElement } from '@floating-ui/dom';\nimport { computePosition } from '@floating-ui/dom';\nimport { Ref, computed, getCurrentScope, onScopeDispose, ref, shallowReadonly, shallowRef, unref, watch } from 'vue';\n\nimport type {\n UseFloatingOptions,\n UseFloatingReturn,\n MaybeElement,\n} from './types';\n\n// https://github.com/floating-ui/floating-ui/blob/master/packages/vue/src/useFloating.ts\n/**\n * Computes the `x` and `y` coordinates that will place the floating element next to a reference element when it is given a certain CSS positioning strategy.\n * @param reference The reference template ref.\n * @param floating The floating template ref.\n * @param options The floating options.\n * @see https://floating-ui.com/docs/vue\n */\n\nimport type { ComponentPublicInstance } from 'vue';\n\nfunction roundByDPR(element: Element, value: number) {\n const dpr = getDPR(element);\n return Math.round(value * dpr) / dpr;\n}\nfunction getDPR(element: Element): number {\n if (typeof window === 'undefined') {\n return 1;\n }\n const win = element.ownerDocument.defaultView || window;\n return win.devicePixelRatio || 1;\n}\nfunction unwrapElement<T>(element: MaybeElement<T>) {\n return ((element as Exclude<MaybeElement<T>, T>)?.$el ?? element) as Exclude<\n MaybeElement<T>,\n ComponentPublicInstance\n >;\n}\nexport function useFloating<T extends ReferenceElement = ReferenceElement>(\n reference: Readonly<Ref<MaybeElement<T>>>,\n floating: Readonly<Ref<MaybeElement<FloatingElement>>>,\n options: UseFloatingOptions<T> = {}\n): UseFloatingReturn {\n const whileElementsMountedOption = options.whileElementsMounted;\n const openOption = computed(() => unref(options.open) ?? true);\n const middlewareOption = computed(() => unref(options.middleware));\n const placementOption = computed(() => unref(options.placement) ?? 'bottom');\n const strategyOption = computed(() => unref(options.strategy) ?? 'absolute');\n const transformOption = computed(() => unref(options.transform) ?? true);\n const referenceElement = computed(() => unwrapElement(reference.value));\n const floatingElement = computed(() => unwrapElement(floating.value));\n const x = ref(0);\n const y = ref(0);\n const strategy = ref(strategyOption.value);\n const placement = ref(placementOption.value);\n const middlewareData = shallowRef<MiddlewareData>({});\n const isPositioned = ref(false);\n const floatingStyles = computed(() => {\n const initialStyles = {\n position: strategy.value,\n left: '0',\n top: '0',\n };\n\n if (!floatingElement.value) {\n return initialStyles;\n }\n\n const xVal = roundByDPR(floatingElement.value, x.value);\n const yVal = roundByDPR(floatingElement.value, y.value);\n\n if (transformOption.value) {\n return {\n ...initialStyles,\n transform: `translate(${xVal}px, ${yVal}px)`,\n ...(getDPR(floatingElement.value) >= 1.5 && { willChange: 'transform' }),\n };\n }\n\n return {\n position: strategy.value,\n left: `${xVal}px`,\n top: `${yVal}px`,\n };\n });\n\n let whileElementsMountedCleanup: (() => void) | undefined;\n\n function update() {\n if (referenceElement.value == null || floatingElement.value == null) {\n return;\n }\n\n computePosition(referenceElement.value, floatingElement.value, {\n middleware: middlewareOption.value,\n placement: placementOption.value,\n strategy: strategyOption.value,\n }).then((position) => {\n x.value = position.x;\n y.value = position.y;\n strategy.value = position.strategy;\n placement.value = position.placement;\n middlewareData.value = position.middlewareData;\n isPositioned.value = true;\n });\n }\n\n function cleanup() {\n if (typeof whileElementsMountedCleanup === 'function') {\n whileElementsMountedCleanup();\n whileElementsMountedCleanup = undefined;\n }\n }\n\n function attach() {\n cleanup();\n\n if (whileElementsMountedOption === undefined) {\n update();\n return;\n }\n\n if (referenceElement.value != null && floatingElement.value != null) {\n whileElementsMountedCleanup = whileElementsMountedOption(\n referenceElement.value,\n floatingElement.value,\n update\n );\n return;\n }\n }\n\n function reset() {\n if (!openOption.value) {\n isPositioned.value = false;\n }\n }\n\n watch([middlewareOption, placementOption, strategyOption], update, {\n flush: 'sync',\n });\n watch([referenceElement, floatingElement], attach, { flush: 'sync' });\n watch(openOption, reset, { flush: 'sync' });\n\n if (getCurrentScope()) {\n onScopeDispose(cleanup);\n }\n\n return {\n x: shallowReadonly(x),\n y: shallowReadonly(y),\n strategy: shallowReadonly(strategy),\n placement: shallowReadonly(placement),\n middlewareData: shallowReadonly(middlewareData),\n isPositioned: shallowReadonly(isPositioned),\n floatingStyles,\n update,\n };\n}\n","import { offset } from '@floating-ui/dom';\n\nexport enum PopoverVariant {\n Auto = 'auto',\n Popover = 'popover',\n BottomSheet = 'bottom-sheet',\n}\n\nexport enum PopoverPlacement {\n Top = 'top',\n TopStart = 'top-start',\n TopEnd = 'top-end',\n Bottom = 'bottom',\n BottomStart = 'bottom-start',\n BottomEnd = 'bottom-end',\n Left = 'left',\n LeftStart = 'left-start',\n LeftEnd = 'left-end',\n Right = 'right',\n RightStart = 'right-start',\n RightEnd = 'right-end',\n}\n\nexport type PopoverOffset = NonNullable<Parameters<typeof offset>[0]>;\n","import { PopoverPlacement } from './props';\n\nexport const Popover: string[] = [\n // Position\n 'absolute',\n];\n\nexport const PopoverBody: string[] = [\n // Shape\n 'rounded-md',\n\n // Spacing\n 'mx-sm',\n 'my-sm',\n\n // Elevation\n 'shadow-contextual',\n 'dark:shadow-contextual-dark',\n\n // Theme\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-foreground-default',\n 'dark:theme-foreground-default-dark',\n];\n\nexport const PopoverBodyPlacements: Record<PopoverPlacement, string[]> = {\n [PopoverPlacement.Top]: [\n // Spacing\n 'mb-0',\n ],\n\n [PopoverPlacement.TopStart]: [\n // Spacing\n 'mb-0',\n 'ml-0',\n ],\n\n [PopoverPlacement.TopEnd]: [\n // Spacing\n 'mb-0',\n 'mr-0',\n ],\n\n [PopoverPlacement.Bottom]: [\n // Spacing\n 'mt-0',\n ],\n\n [PopoverPlacement.BottomStart]: [\n // Spacing\n 'mt-0',\n 'ml-0',\n ],\n\n [PopoverPlacement.BottomEnd]: [\n // Spacing\n 'mt-0',\n 'mr-0',\n ],\n\n [PopoverPlacement.Left]: [\n // Spacing\n 'mr-0',\n ],\n\n [PopoverPlacement.LeftStart]: [\n // Spacing\n 'mr-0',\n 'mt-0',\n ],\n\n [PopoverPlacement.LeftEnd]: [\n // Spacing\n 'mr-0',\n 'mb-0',\n ],\n\n [PopoverPlacement.Right]: [\n // Spacing\n 'ml-0',\n ],\n\n [PopoverPlacement.RightStart]: [\n // Spacing\n 'ml-0',\n 'mt-0',\n ],\n\n [PopoverPlacement.RightEnd]: [\n // Spacing\n 'ml-0',\n 'mb-0',\n ],\n};\n","import { isAncestor } from '@onereach/ui-components-common/utils';\n\nexport function isPrevented(path: Element[], trigger: Element): boolean {\n return path.some((element) => {\n const { classList } = element;\n\n if (!isAncestor(element, trigger)) {\n if (classList?.contains('or-popover-v3')) {\n return true;\n }\n\n if (classList?.contains('or-bottom-sheet-v3')) {\n return true;\n }\n\n if (classList?.contains('or-confirm-v3')) {\n return true;\n }\n }\n\n return false;\n });\n}\n","<template>\n <OrTeleport v-if=\"keepAlive || state === 'open'\">\n <div\n v-show=\"state === 'open'\"\n :ref=\"'containerRoot'\"\n :class=\"['contents', 'my-state' + state]\"\n >\n <template v-if=\"isDesktop && variant === 'auto' || variant === 'popover'\">\n <div\n v-show=\"!isHidden\"\n v-bind=\"$attrs\"\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :style=\"floatingStyles\"\n >\n <template v-if=\"disableDefaultStyles\">\n <slot />\n </template>\n\n <template v-else>\n <div :class=\"bodyStyles\">\n <slot />\n </div>\n </template>\n </div>\n </template>\n\n <template v-if=\"isMobile && variant === 'auto' || variant === 'bottom-sheet'\">\n <OrBottomSheet\n :ref=\"'bottomSheet'\"\n v-bind=\"bottomSheetProps\"\n :is-open=\"state === 'open'\"\n @update:state=\"$event === 'open' ? open() : close()\"\n >\n <slot />\n </OrBottomSheet>\n </template>\n </div>\n </OrTeleport>\n</template>\n\n<script lang=\"ts\">\nimport { FlipOptions, HideOptions, ReferenceElement, autoUpdate, flip, hide, offset as offsetMiddleware, shift, size } from '@floating-ui/dom';\nimport { MaybeElementRef, onClickOutside } from '@vueuse/core';\nimport { PropType, computed, defineComponent, ref, toRef, toRefs, watch } from 'vue';\nimport { useElevation, usePopoverState, useResponsive } from '@onereach/ui-components-common/hooks';\nimport { OrBottomSheetV3 as OrBottomSheet } from '@onereach/ui-components.or-bottom-sheet-v3';\nimport { OrTeleportV3 as OrTeleport } from '@onereach/ui-components.or-teleport-v3';\nimport { useFloating } from './hooks/useFloating';\nimport { PopoverOffset, PopoverPlacement, PopoverVariant } from './props';\nimport { Popover, PopoverBody, PopoverBodyPlacements } from './styles';\nimport { isPrevented } from './utils';\n\nexport default defineComponent({\n name: 'OrPopover',\n\n components: {\n OrBottomSheet,\n OrTeleport,\n },\n\n inheritAttrs: false,\n\n props: {\n // @workaround for Vue 2\n customStyles: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n\n isOpen: {\n type: Boolean,\n default: false,\n },\n\n variant: {\n type: String as PropType<`${PopoverVariant}`>,\n default: () => PopoverVariant.Auto,\n },\n\n bottomSheetProps: {\n type: Object as PropType<InstanceType<typeof OrBottomSheet>['$props']>,\n default: undefined,\n },\n\n trigger: {\n type: Object as PropType<ReferenceElement>,\n default: undefined,\n },\n\n placement: {\n type: String as PropType<`${PopoverPlacement}`>,\n default: () => PopoverPlacement.Bottom,\n },\n\n fallbackPlacement: {\n type: String as PropType<FlipOptions['fallbackAxisSideDirection']>,\n default: 'end',\n },\n\n hideOptions: {\n type: Object as PropType<HideOptions>,\n default: undefined,\n },\n\n offset: {\n type: [Number, Object, Function] as PropType<PopoverOffset>,\n default: 8,\n },\n\n fullWidth: {\n type: Boolean,\n default: false,\n },\n\n disableDefaultStyles: {\n type: Boolean,\n default: false,\n },\n\n keepAlive: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n 'update:state',\n\n 'open',\n 'close',\n ],\n\n expose: [\n 'root',\n\n 'state',\n\n 'isFlipped',\n 'isHidden',\n\n 'open',\n 'close',\n 'toggle',\n\n 'bottomSheet',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n const containerRoot = ref<HTMLElement>();\n\n const bottomSheet = ref<InstanceType<typeof OrBottomSheet>>();\n const bottomSheetRoot = computed(() => bottomSheet.value?.root);\n\n const { trigger, placement, offset, fullWidth, hideOptions } = toRefs(props);\n\n // Styles\n const rootStyles = computed(() => [\n 'or-popover-v3',\n ...Popover,\n ...'class' in context.attrs ? [] : props.customStyles,\n ]);\n\n const bodyStyles = computed(() => [\n ...PopoverBody,\n ...PopoverBodyPlacements[placement.value],\n ]);\n\n // State\n const { state, open, close, toggle } = usePopoverState(toRef(props, 'isOpen'), context.emit);\n\n const { floatingStyles, middlewareData, placement: computedPlacement } = useFloating(trigger, root, {\n placement,\n\n middleware: [\n offsetMiddleware(offset.value),\n shift(),\n flip(() => ({ fallbackAxisSideDirection: props.fallbackPlacement })),\n hide(hideOptions.value),\n\n size({\n apply({ rects, elements }) {\n if (fullWidth.value) {\n Object.assign(elements.floating.style, {\n width: `${rects.reference.width}px`,\n });\n }\n },\n }),\n ],\n\n whileElementsMounted(...args) {\n return autoUpdate(...args, { animationFrame: true });\n },\n });\n\n const isFlipped = computed(() => computedPlacement.value !== placement.value);\n const isHidden = computed(() => Boolean(middlewareData.value.hide?.referenceHidden));\n\n // Helpers\n const { isDesktop, isMobile } = useResponsive(containerRoot);\n\n // #region Elevation\n useElevation(root, state);\n // #endregion\n\n // #region Click Outside\n onClickOutside(root, (event) => {\n if (state.value === 'open' && !isPrevented(event.composedPath() as Element[], props.trigger as Element)) {\n close();\n }\n }, {\n ignore: [trigger as MaybeElementRef],\n });\n // #endregion\n\n return {\n root,\n containerRoot,\n bottomSheet,\n bottomSheetRoot,\n rootStyles,\n bodyStyles,\n floatingStyles,\n state,\n isFlipped,\n isHidden,\n isDesktop,\n isMobile,\n open,\n close,\n toggle,\n };\n },\n});\n</script>\n"],"names":["roundByDPR","element","value","dpr","getDPR","unwrapElement","useFloating","reference","floating","options","whileElementsMountedOption","openOption","computed","unref","middlewareOption","placementOption","strategyOption","transformOption","referenceElement","floatingElement","x","ref","y","strategy","placement","middlewareData","shallowRef","isPositioned","floatingStyles","initialStyles","xVal","yVal","whileElementsMountedCleanup","update","computePosition","position","cleanup","attach","reset","watch","getCurrentScope","onScopeDispose","shallowReadonly","PopoverVariant","PopoverPlacement","Popover","PopoverBody","PopoverBodyPlacements","isPrevented","path","trigger","classList","isAncestor","_sfc_main","defineComponent","OrBottomSheet","OrTeleport","props","context","root","containerRoot","bottomSheet","bottomSheetRoot","_a","offset","fullWidth","hideOptions","toRefs","rootStyles","bodyStyles","state","open","close","toggle","usePopoverState","toRef","computedPlacement","offsetMiddleware","shift","flip","hide","size","rects","elements","args","autoUpdate","isFlipped","isHidden","isDesktop","isMobile","useResponsive","useElevation","onClickOutside","event","_ctx","_component_OrTeleport","_withCtx","_withDirectives","_createElementVNode","variant","_createElementBlock","_mergeProps","disableDefaultStyles","_renderSlot","_openBlock","_normalizeClass","_vShow","_createBlock","_component_OrBottomSheet","bottomSheetProps","_cache","$event","_createCommentVNode"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"OrProgress-cgGfaP0m.mjs","sources":["../../../components/or-progress-v3/src/props.ts","../../../components/or-progress-v3/src/styles.ts","../../../components/or-progress-v3/src/OrProgress.vue"],"sourcesContent":["export enum ProgressColor {\n Auto = 'auto',\n Primary = 'primary',\n Success = 'success',\n Warning = 'warning',\n Error = 'error',\n}\n\nexport enum ProgressType {\n Linear = 'linear',\n Circle = 'circle',\n}\n","import { ProgressColor, ProgressType } from './props';\n\nexport const ProgressRoot: string[] = [\n // Typography\n 'typography-caption-regular',\n\n // Theme\n 'text-outline',\n 'dark:text-outline-dark',\n];\n\nexport const ProgressRootTypes: Record<ProgressType, string[]> = {\n [ProgressType.Linear]: [\n // Layout\n 'flex',\n 'flex-col',\n\n // Box\n 'w-full',\n 'min-w-[160px]',\n 'max-w-[295px]',\n ],\n\n [ProgressType.Circle]: [\n '-rotate-90',\n ],\n};\n\nexport const ProgressHeader: string[] = [\n // Layout\n 'flex',\n 'flex-row',\n\n // Spacing\n 'mb-[6px]',\n];\n\nexport const ProgressHeaderLabel: string[] = [\n // Typography\n 'typography-caption-bold',\n\n // Theme\n 'text-on-background',\n 'dark:text-on-background-dark',\n];\n\nexport const ProgressHeaderPercent: string[] = [\n // Spacing\n 'ml-auto',\n];\n\nexport const ProgressBarBackground: string[] = [\n // Theme\n 'stroke-surface-variant',\n 'dark:stroke-surface-variant-dark',\n];\n\nexport const ProgressBarMain: string[] = [\n // Position\n 'origin-center',\n\n // Animation\n 'transition-[stroke-dashoffset]',\n];\n\nexport const ProgressBarAnimationTypes: Record<ProgressType, string[]> = {\n [ProgressType.Linear]: [\n // Animation\n 'animate-linear-loader',\n ],\n\n [ProgressType.Circle]: [\n // Animation\n 'animate-circular-loader',\n ],\n};\n\nexport const ProgressBarColors: Record<Exclude<ProgressColor, ProgressColor.Auto>, string[]> = {\n [ProgressColor.Primary]: [\n // Theme\n 'stroke-primary-hover',\n 'dark:stroke-primary-hover-dark',\n ],\n\n [ProgressColor.Success]: [\n // Theme\n 'stroke-success-hover',\n 'dark:stroke-success-hover-dark',\n ],\n\n [ProgressColor.Warning]: [\n // Theme\n 'stroke-warning-hover',\n 'dark:stroke-warning-hover-dark',\n ],\n\n [ProgressColor.Error]: [\n // Theme\n 'stroke-error-hover',\n 'dark:stroke-error-hover-dark',\n ],\n};\n\nexport const ProgressFooter: string[] = [\n // Spacing\n 'mt-[2px]',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"isLinearType\">\n <div\n v-if=\"isShowingHeader\"\n :class=\"headerStyles\"\n >\n <slot name=\"header\">\n <div :class=\"labelStyles\">\n <slot name=\"label\" />\n </div>\n <div :class=\"percentStyles\">\n <slot\n name=\"percent\"\n :value=\"percent\"\n >\n {{ percent }}\n </slot>\n </div>\n </slot>\n </div>\n <svg\n width=\"100%\"\n height=\"2\"\n >\n <g\n fill=\"none\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n >\n <line\n :class=\"progressBarBackgroundStyles\"\n\n x1=\"2\"\n y1=\"50%\"\n :x2=\"strokeWidth\"\n y2=\"50%\"\n />\n\n <line\n :class=\"progressBarMainPartStyles\"\n\n x1=\"2\"\n y1=\"50%\"\n :x2=\"strokeWidth\"\n y2=\"50%\"\n :stroke-dasharray=\"strokeDasharray\"\n :stroke-dashoffset=\"strokeDashoffset\"\n />\n </g>\n </svg>\n <div\n v-if=\"isShowingFooter\"\n :class=\"footerStyles\"\n >\n <slot\n name=\"footer\"\n :value=\"localValue\"\n />\n </div>\n </template>\n <template v-else-if=\"isCircleType\">\n <svg\n viewBox=\"0 0 16 16\"\n :width=\"computedSize\"\n :height=\"computedSize\"\n >\n <g\n fill=\"none\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n >\n <circle\n :class=\"progressBarBackgroundStyles\"\n\n cx=\"50%\"\n cy=\"50%\"\n r=\"7\"\n />\n\n <circle\n :class=\"progressBarMainPartStyles\"\n\n cx=\"50%\"\n cy=\"50%\"\n r=\"7\"\n :stroke-dasharray=\"strokeDasharray\"\n :stroke-dashoffset=\"strokeDashoffset\"\n />\n </g>\n </svg>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { useElementBounding } from '@vueuse/core';\nimport { computed, defineComponent, PropType, ref, useSlots } from 'vue';\nimport { useResponsive } from '@onereach/ui-components-common/hooks';\nimport { ProgressColor, ProgressType } from './props';\nimport * as Styles from './styles';\n\nexport default defineComponent({\n name: 'OrProgress',\n\n props: {\n maxValue: {\n type: Number,\n required: false,\n default: 1,\n },\n value: {\n type: Number,\n required: false,\n default: null,\n },\n progress: {\n type: Number,\n required: false,\n default: null,\n },\n precision: {\n type: Number,\n required: false,\n default: 2,\n },\n type: {\n type: String as PropType<`${ProgressType}`>,\n required: false,\n default: () => ProgressType.Linear,\n },\n color: {\n type: String as PropType<`${ProgressColor}`>,\n required: false,\n default: () => ProgressColor.Auto,\n },\n loading: {\n type: Boolean,\n required: false,\n default: false,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Slots\n const {\n header: headerSlot,\n label: labelSlot,\n percent: percentSlot,\n footer: footerSlot,\n } = useSlots();\n\n // State\n const { width } = useElementBounding(root);\n\n const localProgress = computed(() => props.progress ?? (props.value ?? 0) / (props.maxValue ?? 1));\n\n const localValue = computed(() => props.value ?? (props.progress ?? 0) * (props.maxValue ?? 1));\n\n const percent = computed(() => Number((localProgress.value * 100).toFixed(props.precision)) + '%');\n\n const isLinearType = computed(() => props.type === ProgressType.Linear);\n\n const isCircleType = computed(() => props.type === ProgressType.Circle);\n\n const isShowingHeader = computed(() => !!headerSlot || !!labelSlot || !!percentSlot);\n\n const isShowingFooter = computed(() => !!footerSlot);\n\n const localColor = computed(() => {\n if (props.loading) return ProgressColor.Primary;\n if (props.color === ProgressColor.Auto) {\n if (localProgress.value <= 0.5) {\n return ProgressColor.Success;\n } else if (localProgress.value <= 0.95) {\n return ProgressColor.Warning;\n } else {\n return ProgressColor.Error;\n }\n } else {\n return Object.values(ProgressColor).includes(props.color as ProgressColor)\n ? props.color\n : ProgressColor.Success;\n }\n });\n\n const computedSize = computed(() => isMobile.value ? 20 : 16);\n\n // Styles\n const rootStyles = computed(() => [\n 'or-progress-v3',\n ...Styles.ProgressRoot,\n ...Styles.ProgressRootTypes[props.type],\n ]);\n\n const headerStyles = computed(() => [\n ...Styles.ProgressHeader,\n ]);\n\n const labelStyles = computed(() => [\n ...Styles.ProgressHeaderLabel,\n ]);\n\n const percentStyles = computed(() => [\n ...Styles.ProgressHeaderPercent,\n ]);\n\n const footerStyles = computed(() => [\n ...Styles.ProgressFooter,\n ]);\n\n const progressBarBackgroundStyles = computed(() => [\n ...Styles.ProgressBarBackground,\n ]);\n\n const progressBarMainPartStyles = computed(() => [\n ...Styles.ProgressBarMain,\n ...(props.loading ? Styles.ProgressBarAnimationTypes[props.type] : []),\n ...Styles.ProgressBarColors[localColor.value],\n ]);\n\n const strokeDasharray = computed(() =>\n isLinearType.value ? width.value - 4 : // 2 + 2 px horizontal padding for rounding\n isCircleType.value ? 14 * Math.PI : // 14 = diameter = viewBox - stroke-width\n 0,\n );\n\n const strokeWidth = computed(() => {\n return width.value\n ? width.value - 2\n : '100%';\n });\n\n const strokeDashoffset = computed(() => props.loading ?\n undefined :\n (1 - localProgress.value) * strokeDasharray.value,\n );\n\n // Helpers\n const { isMobile } = useResponsive();\n\n return {\n root,\n rootStyles,\n headerStyles,\n labelStyles,\n percentStyles,\n footerStyles,\n progressBarBackgroundStyles,\n progressBarMainPartStyles,\n strokeDasharray,\n strokeDashoffset,\n strokeWidth,\n localProgress,\n localValue,\n percent,\n isLinearType,\n isCircleType,\n isShowingHeader,\n isShowingFooter,\n localColor,\n computedSize,\n };\n },\n});\n</script>\n"],"names":["ProgressColor","ProgressType","ProgressRoot","ProgressRootTypes","ProgressHeader","ProgressHeaderLabel","ProgressHeaderPercent","ProgressBarBackground","ProgressBarMain","ProgressBarAnimationTypes","ProgressBarColors","ProgressFooter","_sfc_main","defineComponent","props","root","ref","headerSlot","labelSlot","percentSlot","footerSlot","useSlots","width","useElementBounding","localProgress","computed","localValue","percent","isLinearType","isCircleType","isShowingHeader","isShowingFooter","localColor","computedSize","isMobile","rootStyles","Styles.ProgressRoot","Styles.ProgressRootTypes","headerStyles","Styles.ProgressHeader","labelStyles","Styles.ProgressHeaderLabel","percentStyles","Styles.ProgressHeaderPercent","footerStyles","Styles.ProgressFooter","progressBarBackgroundStyles","Styles.ProgressBarBackground","progressBarMainPartStyles","Styles.ProgressBarMain","Styles.ProgressBarAnimationTypes","Styles.ProgressBarColors","strokeDasharray","strokeWidth","strokeDashoffset","useResponsive","_hoisted_1","_hoisted_2","_hoisted_5","_hoisted_6","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_openBlock","_createElementBlock","_normalizeClass","_Fragment","_renderSlot","_createElementVNode","_createCommentVNode","_hoisted_3"],"mappings":"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"}
1
+ {"version":3,"file":"OrProgress-cgGfaP0m.mjs","sources":["../../../components/or-progress-v3/src/props.ts","../../../components/or-progress-v3/src/styles.ts","../../../components/or-progress-v3/src/OrProgress.vue"],"sourcesContent":["export enum ProgressColor {\n Auto = 'auto',\n Primary = 'primary',\n Success = 'success',\n Warning = 'warning',\n Error = 'error',\n}\n\nexport enum ProgressType {\n Linear = 'linear',\n Circle = 'circle',\n}\n","import { ProgressColor, ProgressType } from './props';\n\nexport const ProgressRoot: string[] = [\n // Typography\n 'typography-caption-regular',\n\n // Theme\n 'text-outline',\n 'dark:text-outline-dark',\n];\n\nexport const ProgressRootTypes: Record<ProgressType, string[]> = {\n [ProgressType.Linear]: [\n // Layout\n 'flex',\n 'flex-col',\n\n // Box\n 'w-full',\n 'min-w-[160px]',\n 'max-w-[295px]',\n ],\n\n [ProgressType.Circle]: [\n '-rotate-90',\n ],\n};\n\nexport const ProgressHeader: string[] = [\n // Layout\n 'flex',\n 'flex-row',\n\n // Spacing\n 'mb-[6px]',\n];\n\nexport const ProgressHeaderLabel: string[] = [\n // Typography\n 'typography-caption-bold',\n\n // Theme\n 'text-on-background',\n 'dark:text-on-background-dark',\n];\n\nexport const ProgressHeaderPercent: string[] = [\n // Spacing\n 'ml-auto',\n];\n\nexport const ProgressBarBackground: string[] = [\n // Theme\n 'stroke-surface-variant',\n 'dark:stroke-surface-variant-dark',\n];\n\nexport const ProgressBarMain: string[] = [\n // Position\n 'origin-center',\n\n // Animation\n 'transition-[stroke-dashoffset]',\n];\n\nexport const ProgressBarAnimationTypes: Record<ProgressType, string[]> = {\n [ProgressType.Linear]: [\n // Animation\n 'animate-linear-loader',\n ],\n\n [ProgressType.Circle]: [\n // Animation\n 'animate-circular-loader',\n ],\n};\n\nexport const ProgressBarColors: Record<Exclude<ProgressColor, ProgressColor.Auto>, string[]> = {\n [ProgressColor.Primary]: [\n // Theme\n 'stroke-primary-hover',\n 'dark:stroke-primary-hover-dark',\n ],\n\n [ProgressColor.Success]: [\n // Theme\n 'stroke-success-hover',\n 'dark:stroke-success-hover-dark',\n ],\n\n [ProgressColor.Warning]: [\n // Theme\n 'stroke-warning-hover',\n 'dark:stroke-warning-hover-dark',\n ],\n\n [ProgressColor.Error]: [\n // Theme\n 'stroke-error-hover',\n 'dark:stroke-error-hover-dark',\n ],\n};\n\nexport const ProgressFooter: string[] = [\n // Spacing\n 'mt-[2px]',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"isLinearType\">\n <div\n v-if=\"isShowingHeader\"\n :class=\"headerStyles\"\n >\n <slot name=\"header\">\n <div :class=\"labelStyles\">\n <slot name=\"label\" />\n </div>\n <div :class=\"percentStyles\">\n <slot\n name=\"percent\"\n :value=\"percent\"\n >\n {{ percent }}\n </slot>\n </div>\n </slot>\n </div>\n <svg\n width=\"100%\"\n height=\"2\"\n >\n <g\n fill=\"none\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n >\n <line\n :class=\"progressBarBackgroundStyles\"\n\n x1=\"2\"\n y1=\"50%\"\n :x2=\"strokeWidth\"\n y2=\"50%\"\n />\n\n <line\n :class=\"progressBarMainPartStyles\"\n\n x1=\"2\"\n y1=\"50%\"\n :x2=\"strokeWidth\"\n y2=\"50%\"\n :stroke-dasharray=\"strokeDasharray\"\n :stroke-dashoffset=\"strokeDashoffset\"\n />\n </g>\n </svg>\n <div\n v-if=\"isShowingFooter\"\n :class=\"footerStyles\"\n >\n <slot\n name=\"footer\"\n :value=\"localValue\"\n />\n </div>\n </template>\n <template v-else-if=\"isCircleType\">\n <svg\n viewBox=\"0 0 16 16\"\n :width=\"computedSize\"\n :height=\"computedSize\"\n >\n <g\n fill=\"none\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n >\n <circle\n :class=\"progressBarBackgroundStyles\"\n\n cx=\"50%\"\n cy=\"50%\"\n r=\"7\"\n />\n\n <circle\n :class=\"progressBarMainPartStyles\"\n\n cx=\"50%\"\n cy=\"50%\"\n r=\"7\"\n :stroke-dasharray=\"strokeDasharray\"\n :stroke-dashoffset=\"strokeDashoffset\"\n />\n </g>\n </svg>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { useElementBounding } from '@vueuse/core';\nimport { computed, defineComponent, PropType, ref, useSlots } from 'vue';\nimport { useResponsive } from '@onereach/ui-components-common/hooks';\nimport { ProgressColor, ProgressType } from './props';\nimport * as Styles from './styles';\n\nexport default defineComponent({\n name: 'OrProgress',\n\n props: {\n maxValue: {\n type: Number,\n required: false,\n default: 1,\n },\n value: {\n type: Number,\n required: false,\n default: null,\n },\n progress: {\n type: Number,\n required: false,\n default: null,\n },\n precision: {\n type: Number,\n required: false,\n default: 2,\n },\n type: {\n type: String as PropType<`${ProgressType}`>,\n required: false,\n default: () => ProgressType.Linear,\n },\n color: {\n type: String as PropType<`${ProgressColor}`>,\n required: false,\n default: () => ProgressColor.Auto,\n },\n loading: {\n type: Boolean,\n required: false,\n default: false,\n },\n },\n\n expose: [\n 'root',\n ],\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Slots\n const {\n header: headerSlot,\n label: labelSlot,\n percent: percentSlot,\n footer: footerSlot,\n } = useSlots();\n\n // State\n const { width } = useElementBounding(root);\n\n const localProgress = computed(() => props.progress ?? (props.value ?? 0) / (props.maxValue ?? 1));\n\n const localValue = computed(() => props.value ?? (props.progress ?? 0) * (props.maxValue ?? 1));\n\n const percent = computed(() => Number((localProgress.value * 100).toFixed(props.precision)) + '%');\n\n const isLinearType = computed(() => props.type === ProgressType.Linear);\n\n const isCircleType = computed(() => props.type === ProgressType.Circle);\n\n const isShowingHeader = computed(() => !!headerSlot || !!labelSlot || !!percentSlot);\n\n const isShowingFooter = computed(() => !!footerSlot);\n\n const localColor = computed(() => {\n if (props.loading) return ProgressColor.Primary;\n if (props.color === ProgressColor.Auto) {\n if (localProgress.value <= 0.5) {\n return ProgressColor.Success;\n } else if (localProgress.value <= 0.95) {\n return ProgressColor.Warning;\n } else {\n return ProgressColor.Error;\n }\n } else {\n return Object.values(ProgressColor).includes(props.color as ProgressColor)\n ? props.color\n : ProgressColor.Success;\n }\n });\n\n const computedSize = computed(() => isMobile.value ? 20 : 16);\n\n // Styles\n const rootStyles = computed(() => [\n 'or-progress-v3',\n ...Styles.ProgressRoot,\n ...Styles.ProgressRootTypes[props.type],\n ]);\n\n const headerStyles = computed(() => [\n ...Styles.ProgressHeader,\n ]);\n\n const labelStyles = computed(() => [\n ...Styles.ProgressHeaderLabel,\n ]);\n\n const percentStyles = computed(() => [\n ...Styles.ProgressHeaderPercent,\n ]);\n\n const footerStyles = computed(() => [\n ...Styles.ProgressFooter,\n ]);\n\n const progressBarBackgroundStyles = computed(() => [\n ...Styles.ProgressBarBackground,\n ]);\n\n const progressBarMainPartStyles = computed(() => [\n ...Styles.ProgressBarMain,\n ...(props.loading ? Styles.ProgressBarAnimationTypes[props.type] : []),\n ...Styles.ProgressBarColors[localColor.value],\n ]);\n\n const strokeDasharray = computed(() =>\n isLinearType.value ? width.value - 4 : // 2 + 2 px horizontal padding for rounding\n isCircleType.value ? 14 * Math.PI : // 14 = diameter = viewBox - stroke-width\n 0,\n );\n\n const strokeWidth = computed(() => {\n return width.value\n ? width.value - 2\n : '100%';\n });\n\n const strokeDashoffset = computed(() => props.loading ?\n undefined :\n (1 - localProgress.value) * strokeDasharray.value,\n );\n\n // Helpers\n const { isMobile } = useResponsive();\n\n return {\n root,\n rootStyles,\n headerStyles,\n labelStyles,\n percentStyles,\n footerStyles,\n progressBarBackgroundStyles,\n progressBarMainPartStyles,\n strokeDasharray,\n strokeDashoffset,\n strokeWidth,\n localProgress,\n localValue,\n percent,\n isLinearType,\n isCircleType,\n isShowingHeader,\n isShowingFooter,\n localColor,\n computedSize,\n };\n },\n});\n</script>\n"],"names":["ProgressColor","ProgressType","ProgressRoot","ProgressRootTypes","ProgressHeader","ProgressHeaderLabel","ProgressHeaderPercent","ProgressBarBackground","ProgressBarMain","ProgressBarAnimationTypes","ProgressBarColors","ProgressFooter","_sfc_main","defineComponent","props","root","ref","headerSlot","labelSlot","percentSlot","footerSlot","useSlots","width","useElementBounding","localProgress","computed","localValue","percent","isLinearType","isCircleType","isShowingHeader","isShowingFooter","localColor","computedSize","isMobile","rootStyles","Styles.ProgressRoot","Styles.ProgressRootTypes","headerStyles","Styles.ProgressHeader","labelStyles","Styles.ProgressHeaderLabel","percentStyles","Styles.ProgressHeaderPercent","footerStyles","Styles.ProgressFooter","progressBarBackgroundStyles","Styles.ProgressBarBackground","progressBarMainPartStyles","Styles.ProgressBarMain","Styles.ProgressBarAnimationTypes","Styles.ProgressBarColors","strokeDasharray","strokeWidth","strokeDashoffset","useResponsive","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_5","_hoisted_6","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","_openBlock","_createElementBlock","_Fragment","_normalizeClass","_renderSlot","_createElementVNode","_createCommentVNode","_hoisted_7"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"OrRadio-CJLJrxIS.mjs","sources":["../../../components/or-radio-v3/src/styles.ts","../../../components/or-radio-v3/src/OrRadio.vue"],"sourcesContent":["export const Radio: string[] = [\n // Layout\n 'layout-row',\n\n // Spacing\n 'gap-[10px] md:gap-sm',\n 'p-sm pl-[10px] md:p-none md:pl-none',\n];\n\nexport const RadioControl: string[] = [\n // Layout\n 'layout-inline-row justify-center',\n\n // Interactivity\n 'interactivity-click',\n\n // Shape\n 'rounded-full',\n\n // Box\n 'w-md+ md:w-md',\n 'h-md+ md:h-md',\n\n // Theme\n 'theme-preset-3-primary',\n 'dark:theme-preset-3-primary-dark',\n\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-border-outline border-1',\n 'dark:theme-border-outline-dark',\n\n // Theme (focus)\n 'focus-visible:theme-outline-primary focus-visible:outline-2',\n 'dark:focus-visible:theme-outline-primary-dark',\n\n // Theme (checked)\n 'checked:theme-preset-1-primary',\n 'dark:checked:theme-preset-1-primary-dark',\n\n // Theme (read-only)\n 'read-only:theme-border-outline',\n 'read-only:dark:theme-border-outline-dark',\n\n 'checked:read-only:theme-background-base',\n 'checked:read-only:dark:theme-background-base-dark',\n\n 'checked:read-only:theme-foreground-outline',\n 'checked:read-only:dark:theme-foreground-outline-dark',\n\n // Interactivity\n 'interactivity-click',\n\n // Interactivity (read-only)\n 'read-only:interactivity-none',\n];\n\nexport const RadioControlHandle: string[] = [\n // Box (children)\n 'after:w-sm after:md:w-xs',\n 'after:h-sm after:md:h-xs',\n\n // Shape (children)\n 'after:rounded-full',\n\n // Theme (checked / children)\n 'after:checked:bg-on-primary',\n 'dark:after:checked:bg-on-primary-dark',\n\n // Theme (checked + disabled / children)\n 'after:disabled:checked:bg-on-disabled',\n 'dark:after:disabled:checked:bg-on-disabled-dark',\n\n // Theme (checked + read-only / children)\n 'after:checked:read-only:bg-outline',\n 'dark:after:checked:read-only:bg-outline-dark',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <input\n :ref=\"'control'\"\n v-bind=\"attributes\"\n :class=\"controlStyles\"\n :type=\"'radio'\"\n :checked=\"checked\"\n :required=\"required\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n @change=\"$emit('change', $event); onChange()\"\n @click=\"$emit('click', $event)\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n >\n\n <template v-if=\"$slots.default || label\">\n <OrLabel\n :control-id=\"attributes.id\"\n :variant=\"labelVariant\"\n :selected=\"checked\"\n :required=\"required\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n >\n <slot>{{ label }}</slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, reactive, ref, toRef } from 'vue';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { LabelVariant, OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { Radio, RadioControl, RadioControlHandle } from './styles';\nimport { RadioModelValue, RadioValue } from './types';\n\nexport default defineComponent({\n name: 'OrRadio',\n\n components: {\n OrLabel,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<RadioModelValue>,\n default: undefined,\n },\n\n value: {\n type: undefined as unknown as PropType<RadioValue>,\n required: true,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n labelVariant: {\n type: String as PropType<`${LabelVariant}`>,\n default: () => LabelVariant.Toggle,\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'change',\n 'click',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'blur',\n ],\n\n setup(props, context) {\n const attributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n });\n\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-radio-v3',\n ...Radio,\n ]);\n\n const control = ref<HTMLElement>();\n\n const controlStyles = computed(() => [\n ...RadioControl,\n ...RadioControlHandle,\n ]);\n\n // State\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const checked = computed(() => {\n return model.value === props.value;\n });\n\n // Handlers\n function onChange(): void {\n model.value = props.value;\n }\n\n // Methods\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n\n return {\n attributes,\n\n root,\n rootStyles,\n\n control,\n controlStyles,\n\n checked,\n\n onChange,\n\n focus,\n blur,\n };\n },\n});\n</script>\n\n<style scoped>\ninput {\n line-height: 0;\n appearance: none;\n}\n</style>\n"],"names":["Radio","RadioControl","RadioControlHandle","_sfc_main","defineComponent","OrLabel","LabelVariant","props","context","attributes","reactive","useIdAttribute","useControlAttributes","root","ref","rootStyles","computed","control","controlStyles","model","useProxyModelValue","toRef","checked","onChange","focus","_a","blur","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createElementVNode","_mergeProps","_cache","$event","_hoisted_1","_createBlock","_component_OrLabel","_renderSlot"],"mappings":"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"}
1
+ {"version":3,"file":"OrRadio-CJLJrxIS.mjs","sources":["../../../components/or-radio-v3/src/styles.ts","../../../components/or-radio-v3/src/OrRadio.vue"],"sourcesContent":["export const Radio: string[] = [\n // Layout\n 'layout-row',\n\n // Spacing\n 'gap-[10px] md:gap-sm',\n 'p-sm pl-[10px] md:p-none md:pl-none',\n];\n\nexport const RadioControl: string[] = [\n // Layout\n 'layout-inline-row justify-center',\n\n // Interactivity\n 'interactivity-click',\n\n // Shape\n 'rounded-full',\n\n // Box\n 'w-md+ md:w-md',\n 'h-md+ md:h-md',\n\n // Theme\n 'theme-preset-3-primary',\n 'dark:theme-preset-3-primary-dark',\n\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-border-outline border-1',\n 'dark:theme-border-outline-dark',\n\n // Theme (focus)\n 'focus-visible:theme-outline-primary focus-visible:outline-2',\n 'dark:focus-visible:theme-outline-primary-dark',\n\n // Theme (checked)\n 'checked:theme-preset-1-primary',\n 'dark:checked:theme-preset-1-primary-dark',\n\n // Theme (read-only)\n 'read-only:theme-border-outline',\n 'read-only:dark:theme-border-outline-dark',\n\n 'checked:read-only:theme-background-base',\n 'checked:read-only:dark:theme-background-base-dark',\n\n 'checked:read-only:theme-foreground-outline',\n 'checked:read-only:dark:theme-foreground-outline-dark',\n\n // Interactivity\n 'interactivity-click',\n\n // Interactivity (read-only)\n 'read-only:interactivity-none',\n];\n\nexport const RadioControlHandle: string[] = [\n // Box (children)\n 'after:w-sm after:md:w-xs',\n 'after:h-sm after:md:h-xs',\n\n // Shape (children)\n 'after:rounded-full',\n\n // Theme (checked / children)\n 'after:checked:bg-on-primary',\n 'dark:after:checked:bg-on-primary-dark',\n\n // Theme (checked + disabled / children)\n 'after:disabled:checked:bg-on-disabled',\n 'dark:after:disabled:checked:bg-on-disabled-dark',\n\n // Theme (checked + read-only / children)\n 'after:checked:read-only:bg-outline',\n 'dark:after:checked:read-only:bg-outline-dark',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <input\n :ref=\"'control'\"\n v-bind=\"attributes\"\n :class=\"controlStyles\"\n :type=\"'radio'\"\n :checked=\"checked\"\n :required=\"required\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n @change=\"$emit('change', $event); onChange()\"\n @click=\"$emit('click', $event)\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n >\n\n <template v-if=\"$slots.default || label\">\n <OrLabel\n :control-id=\"attributes.id\"\n :variant=\"labelVariant\"\n :selected=\"checked\"\n :required=\"required\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n >\n <slot>{{ label }}</slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, computed, defineComponent, reactive, ref, toRef } from 'vue';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { LabelVariant, OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { Radio, RadioControl, RadioControlHandle } from './styles';\nimport { RadioModelValue, RadioValue } from './types';\n\nexport default defineComponent({\n name: 'OrRadio',\n\n components: {\n OrLabel,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<RadioModelValue>,\n default: undefined,\n },\n\n value: {\n type: undefined as unknown as PropType<RadioValue>,\n required: true,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n labelVariant: {\n type: String as PropType<`${LabelVariant}`>,\n default: () => LabelVariant.Toggle,\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'change',\n 'click',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'blur',\n ],\n\n setup(props, context) {\n const attributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n });\n\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-radio-v3',\n ...Radio,\n ]);\n\n const control = ref<HTMLElement>();\n\n const controlStyles = computed(() => [\n ...RadioControl,\n ...RadioControlHandle,\n ]);\n\n // State\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const checked = computed(() => {\n return model.value === props.value;\n });\n\n // Handlers\n function onChange(): void {\n model.value = props.value;\n }\n\n // Methods\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n\n return {\n attributes,\n\n root,\n rootStyles,\n\n control,\n controlStyles,\n\n checked,\n\n onChange,\n\n focus,\n blur,\n };\n },\n});\n</script>\n\n<style scoped>\ninput {\n line-height: 0;\n appearance: none;\n}\n</style>\n"],"names":["Radio","RadioControl","RadioControlHandle","_sfc_main","defineComponent","OrLabel","LabelVariant","props","context","attributes","reactive","useIdAttribute","useControlAttributes","root","ref","rootStyles","computed","control","controlStyles","model","useProxyModelValue","toRef","checked","onChange","focus","_a","blur","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createElementVNode","_mergeProps","disabled","readonly","_cache","$emit","$event","$slots","label","_hoisted_1","_createBlock","required","_renderSlot","_withCtx","_createCommentVNode"],"mappings":";;;;AAAO,MAAMA,IAAkB;AAAA;AAAA,EAE7B;AAAA;AAAA,EAGA;AAAA,EACA;AACF,GAEaC,IAAyB;AAAA;AAAA,EAEpC;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AACF,GAEaC,IAA+B;AAAA;AAAA,EAE1C;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AACF,GC/BAC,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,SAAAC;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,UAAU;AAAA,IACZ;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS,MAAMC,EAAa;AAAA,IAC9B;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,MAAMC,GAAOC,GAAS;AACpB,UAAMC,IAAaC,EAAS;AAAA,MAC1B,IAAIC,EAAe;AAAA,MACnB,GAAGC,EAAqB;AAAA,IAAA,CACzB,GAGKC,IAAOC,KAEPC,IAAaC,EAAS,MAAM;AAAA,MAChC;AAAA,MACA,GAAGhB;AAAA,IAAA,CACJ,GAEKiB,IAAUH,KAEVI,IAAgBF,EAAS,MAAM;AAAA,MACnC,GAAGf;AAAA,MACH,GAAGC;AAAA,IAAA,CACJ,GAGKiB,IAAQC,EAAmBC,EAAMd,GAAO,YAAY,GAAGC,EAAQ,IAAI,GAEnEc,IAAUN,EAAS,MAChBG,EAAM,UAAUZ,EAAM,KAC9B;AAGD,aAASgB,IAAiB;AACxB,MAAAJ,EAAM,QAAQZ,EAAM;AAAA,IACtB;AAGA,aAASiB,IAAc;;AACrB,OAAAC,IAAAR,EAAQ,UAAR,QAAAQ,EAAe;AAAA,IACjB;AAEA,aAASC,IAAa;;AACpB,OAAAD,IAAAR,EAAQ,UAAR,QAAAQ,EAAe;AAAA,IACjB;AAEO,WAAA;AAAA,MACL,YAAAhB;AAAA,MAEA,MAAAI;AAAA,MACA,YAAAE;AAAA,MAEA,SAAAE;AAAA,MACA,eAAAC;AAAA,MAEA,SAAAI;AAAA,MAEA,UAAAC;AAAA,MAEA,OAAAC;AAAA,MACA,MAAAE;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;YAzKCC,EAmCM,SAAA;AAjCE,SAAAC,EAAA,GAAYC,EAAA,OAAA;AAAA,IAAA,KAAA;AAAA,IAElB,OAAAC,EAaCC,EAbD,UAAA;AAAA,EAAA,GAAA;AAAA,IAIgBC,EAAA,SAAAC,EAAA,EAAA,KAAA,UAAA,GAAAF,EAAA,YAAA;AAAA,MACb,OAAOA,EAAET;AAAAA,MACT,MAAA;AAAA,MACA,SAAQS,EAAEG;AAAAA,MACV,UAAUC,EAAAA;AAAAA,MACV,UAAMJ,EAAA;AAAA,MACN,UAAKA,EAAA;AAAA,MACL,UAAKK,EAAEC,CAAAA,MAAAA,EAAAA,CAAAA,IAAAA,CAAAA,MAAAA;AAAAA,QAAAA,EAAAA,MAAK,UAAUC,CAAM,GAAAP,EAAA,SAAA;AAAA,MAAA;AAAA,MAC5B,SAAIK,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAE,MAAED,EAAK,MAAA,SAASC,CAAM;AAAA,MAjBjC,SAAAF,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAE,MAAAP,EAAA,MAAA,SAAAO,CAAA;AAAA,MAoBoBC,QAAAA,EAAO,OAAWC,EAAK,CAAA,IAAA,CAAAF,MAAAP,EAAA,MAAA,QAAAO,CAAA;AAAA,IAAA,CACrC,GAAA,MAAA,IAAAG,CAAA;AAAA,IArBNV,EAAA,OAAA,WAAAA,EAAA,SAAAH,EAsBmB,GAAAc,EAAEjC,GAAa;AAAA,MACzB,KAAA;AAAA,MACA,cAAUa,EAAO,WAAA;AAAA,MACjB,SAAQS,EAAEY;AAAAA,MACV,UAAUT,EAAAA;AAAAA,MACV,UAAUC,EAAAA;AAAAA,MAAAA,UAAAA,EAAAA;AAAAA,MAIM,UAAKJ,EAAA;AAAA,IAAA,GAAA;AAAA;QA/B9Ba,EA6BgCb,EAAA,QAAA,SAAA,CAAA,GAAA,QAAA,EAAA;AAAA,MAAA,CAAA;AAAA,MA7BhC,SAAAc,EAAA,MAAA;AAAA,QAAAD,EAAAb,EAAA,QAAA,WAAA,CAAA,GAAA,MAAA;AAAA;QAAA,GAAA,EAAA;AAAA,MAAA,CAAA;AAAA,MAAA,GAAA;AAAA,IAAA,GAAA,GAAA,CAAA,cAAA,WAAA,YAAA,YAAA,YAAA,UAAA,CAAA,KAAAe,EAAA,IAAA,EAAA;AAAA;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"OrRadioGroup-_n_7vdJU.mjs","sources":["../../../components/or-radio-group-v3/src/OrRadioGroup.vue"],"sourcesContent":["<template>\n <OrFormGroup\n :direction=\"direction\"\n :label=\"label\"\n :hint=\"hint\"\n :error=\"error\"\n :disabled=\"disabled\"\n :spacing=\"localSpacing\"\n >\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n\n <OrRadio\n v-for=\"option in options\"\n :key=\"option.label\"\n v-model=\"proxyModelValue\"\n :value=\"option.value\"\n :label=\"option.label\"\n :disabled=\"disabled || option.disabled\"\n :readonly=\"readonly || option.readonly\"\n />\n </OrFormGroup>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, defineComponent, toRef, computed } from 'vue';\nimport { useProxyModelValue, useResponsive } from '@onereach/ui-components-common/hooks';\nimport { FormGroupDirection, OrFormGroupV3 as OrFormGroup, FormGroupSpacing } from '@onereach/ui-components.or-form-group-v3';\nimport { OrRadioV3 as OrRadio, RadioModelValue } from '@onereach/ui-components.or-radio-v3';\nimport { RadioGroupOption } from './types';\n\nexport default defineComponent({\n name: 'OrRadioGroup',\n\n components: {\n OrFormGroup,\n OrRadio,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<RadioModelValue>,\n default: undefined,\n },\n\n options: {\n type: Array as PropType<RadioGroupOption[]>,\n default: () => [],\n },\n\n direction: {\n type: String as PropType<`${FormGroupDirection}`>,\n default: () => FormGroupDirection.Vertical,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: String,\n default: undefined,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n spacing: {\n type: String as PropType<`${FormGroupSpacing}`>,\n default: FormGroupSpacing.SM,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n setup(props, context) {\n // State\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const { isMobile } = useResponsive();\n const localSpacing = computed(() => isMobile.value ? FormGroupSpacing.NONE : props.spacing);\n return {\n proxyModelValue,\n localSpacing,\n };\n },\n});\n</script>\n"],"names":["_sfc_main","defineComponent","OrFormGroup","OrRadio","FormGroupDirection","FormGroupSpacing","props","context","proxyModelValue","useProxyModelValue","toRef","isMobile","useResponsive","localSpacing","computed","_resolveComponent","_openBlock","_createBlock","_component_OrFormGroup","_ctx","_renderSlot","_createElementBlock","_Fragment","_renderList","option","_component_OrRadio","_cache","$event"],"mappings":";;;;;AAgCA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,aAAAC;AAAA,IACA,SAAAC;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,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS,MAAMC,EAAmB;AAAA,IACpC;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;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,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAASC,EAAiB;AAAA,IAC5B;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,EACF;AAAA,EAEA,MAAMC,GAAOC,GAAS;AAEpB,UAAMC,IAAkBC,EAAmBC,EAAMJ,GAAO,YAAY,GAAGC,EAAQ,IAAI,GAE7E,EAAE,UAAAI,MAAaC,KACfC,IAAeC,EAAS,MAAMH,EAAS,QAAQN,EAAiB,OAAOC,EAAM,OAAO;AACnF,WAAA;AAAA,MACL,iBAAAE;AAAA,MACA,cAAAK;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;8BA1GCE,EAqBc,aAAA;SAnBNC,EAAO,GAAAC,EAAAC,GAAA;AAAA,IACZ,WAAMC,EAAI;AAAA,IACV,OAAOA,EAAA;AAAA,IACP,MAAUA,EAAA;AAAA,IACV,OAAOA,EAAE;AAAA,IAAA,UAAAA,EAAA;AAAA,IAEO,SAAKA,EAAA;AAAA,EAAA,GAAA;AAAA;MAKKC,EAAAD,EAAA,QAAA,OAAA;AAAA,IAAA,CAAA;AAAA;OACnBH,EAAA,EAAO,GAAKK,EAAAC,GAAA,MAAAC,EAAAJ,EAAA,SAAA,CAAAK,YACMP,EAAAQ,GAAA;AAAA,QAAA,KAAAD,EAAA;AAAA,QACvB,YAAOL,EAAO;AAAA,QACd,uBAAmBO,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAR,EAAA,kBAAAQ;AAAA,QACnB,OAAUH,EAAA;AAAA,QACV,OAAUA,EAAA;AAAA,QAAA,UAAAL,EAAA,YAAAK,EAAA;AAAA;;;;;;;"}
1
+ {"version":3,"file":"OrRadioGroup-_n_7vdJU.mjs","sources":["../../../components/or-radio-group-v3/src/OrRadioGroup.vue"],"sourcesContent":["<template>\n <OrFormGroup\n :direction=\"direction\"\n :label=\"label\"\n :hint=\"hint\"\n :error=\"error\"\n :disabled=\"disabled\"\n :spacing=\"localSpacing\"\n >\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n\n <OrRadio\n v-for=\"option in options\"\n :key=\"option.label\"\n v-model=\"proxyModelValue\"\n :value=\"option.value\"\n :label=\"option.label\"\n :disabled=\"disabled || option.disabled\"\n :readonly=\"readonly || option.readonly\"\n />\n </OrFormGroup>\n</template>\n\n<script lang=\"ts\">\nimport { PropType, defineComponent, toRef, computed } from 'vue';\nimport { useProxyModelValue, useResponsive } from '@onereach/ui-components-common/hooks';\nimport { FormGroupDirection, OrFormGroupV3 as OrFormGroup, FormGroupSpacing } from '@onereach/ui-components.or-form-group-v3';\nimport { OrRadioV3 as OrRadio, RadioModelValue } from '@onereach/ui-components.or-radio-v3';\nimport { RadioGroupOption } from './types';\n\nexport default defineComponent({\n name: 'OrRadioGroup',\n\n components: {\n OrFormGroup,\n OrRadio,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<RadioModelValue>,\n default: undefined,\n },\n\n options: {\n type: Array as PropType<RadioGroupOption[]>,\n default: () => [],\n },\n\n direction: {\n type: String as PropType<`${FormGroupDirection}`>,\n default: () => FormGroupDirection.Vertical,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: String,\n default: undefined,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n spacing: {\n type: String as PropType<`${FormGroupSpacing}`>,\n default: FormGroupSpacing.SM,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n setup(props, context) {\n // State\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const { isMobile } = useResponsive();\n const localSpacing = computed(() => isMobile.value ? FormGroupSpacing.NONE : props.spacing);\n return {\n proxyModelValue,\n localSpacing,\n };\n },\n});\n</script>\n"],"names":["_sfc_main","defineComponent","OrFormGroup","OrRadio","FormGroupDirection","FormGroupSpacing","props","context","proxyModelValue","useProxyModelValue","toRef","isMobile","useResponsive","localSpacing","computed","_resolveComponent","_openBlock","_createBlock","_component_OrFormGroup","hint","error","disabled","_ctx","_renderSlot","_createElementBlock","_Fragment","_renderList","option","_component_OrRadio","_cache","$event","readonly"],"mappings":";;;;;AAgCA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,aAAAC;AAAA,IACA,SAAAC;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,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS,MAAMC,EAAmB;AAAA,IACpC;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;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,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAASC,EAAiB;AAAA,IAC5B;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,EACF;AAAA,EAEA,MAAMC,GAAOC,GAAS;AAEpB,UAAMC,IAAkBC,EAAmBC,EAAMJ,GAAO,YAAY,GAAGC,EAAQ,IAAI,GAE7E,EAAE,UAAAI,MAAaC,KACfC,IAAeC,EAAS,MAAMH,EAAS,QAAQN,EAAiB,OAAOC,EAAM,OAAO;AACnF,WAAA;AAAA,MACL,iBAAAE;AAAA,MACA,cAAAK;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;8BA1GCE,EAqBc,aAAA;SAnBNC,EAAO,GAAAC,EAAAC,GAAA;AAAA,IACZ,WAAMC,EAAI;AAAA,IACV,OAAOC,EAAAA;AAAAA,IACP,MAAUC,EAAAA;AAAAA,IACV,OAAOC,EAAET;AAAAA,IAAAA,UAAAA,EAAAA;AAAAA,IAEO,SAAKS,EAAA;AAAA,EAAA,GAAA;AAAA;MAT1BC,EAc+BD,EAAA,QAAA,OAAA;AAAA,IAAA,CAAA;AAAA;OACnBN,EAAA,EAAO,GAAKQ,EAAAC,GAAA,MAAAC,EAAAJ,EAAA,SAAA,CAAAK,OAfxBX,EAAA,GAgB8BC,EAAAW,GAAA;AAAA,QAhB9B,KAAAD,EAAA;AAAA,QAiBO,YAAOL,EAAO;AAAA,QACd,uBAAmBO,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAR,EAAA,kBAAAQ;AAAA,QACnB,OAAUT,EAAAA;AAAAA,QACV,OAAUU,EAAAA;AAAAA,QAAAA,UAAAA,EAAAA,YAAAA,EAAAA;AAAAA;4EApBjB,GAAA,GAAA;AAAA,IAAA,CAAA;AAAA;;;;"}