@onereach/ui-components 27.0.2-beta.6105.0 → 27.0.2-beta.6106.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 (181) hide show
  1. package/dist/esm/{OrAutocomplete-DlXRmjAE.mjs → OrAutocomplete-BMyFCKjB.mjs} +9 -9
  2. package/dist/esm/{OrAutocomplete-DlXRmjAE.mjs.map → OrAutocomplete-BMyFCKjB.mjs.map} +1 -1
  3. package/dist/esm/{OrBottomSheet-CALU9i4F.mjs → OrBottomSheet-DQ83BBtJ.mjs} +2 -2
  4. package/dist/esm/OrBottomSheet-DQ83BBtJ.mjs.map +1 -0
  5. package/dist/esm/{OrButtonGroup-CdrVIn4g.mjs → OrButtonGroup-CzWH9eea.mjs} +18 -18
  6. package/dist/esm/OrButtonGroup-CzWH9eea.mjs.map +1 -0
  7. package/dist/esm/{OrCardCollection-Cf6Mlpbu.mjs → OrCardCollection-DuyDtPAS.mjs} +4 -4
  8. package/dist/esm/{OrCardCollection-Cf6Mlpbu.mjs.map → OrCardCollection-DuyDtPAS.mjs.map} +1 -1
  9. package/dist/esm/{OrCheckbox-BOjpvXxF.mjs → OrCheckbox-B_121oYu.mjs} +3 -3
  10. package/dist/esm/{OrCheckbox-BOjpvXxF.mjs.map → OrCheckbox-B_121oYu.mjs.map} +1 -1
  11. package/dist/esm/{OrCheckboxGroup-DsfhAyGT.mjs → OrCheckboxGroup-Db0mdVfM.mjs} +2 -2
  12. package/dist/esm/{OrCheckboxGroup-DsfhAyGT.mjs.map → OrCheckboxGroup-Db0mdVfM.mjs.map} +1 -1
  13. package/dist/esm/{OrCheckboxTree-BMYhaqZA.mjs → OrCheckboxTree-Com4vL18.mjs} +2 -2
  14. package/dist/esm/{OrCheckboxTree-BMYhaqZA.mjs.map → OrCheckboxTree-Com4vL18.mjs.map} +1 -1
  15. package/dist/esm/{OrCode-D7xM4MLP.mjs → OrCode-CVTfoJyM.mjs} +4 -4
  16. package/dist/esm/{OrCode-D7xM4MLP.mjs.map → OrCode-CVTfoJyM.mjs.map} +1 -1
  17. package/dist/esm/{OrCombinedInput-pzorWu6M.mjs → OrCombinedInput-BNkXzDBe.mjs} +10 -10
  18. package/dist/esm/OrCombinedInput-BNkXzDBe.mjs.map +1 -0
  19. package/dist/esm/{OrConfirm-BrgS7882.mjs → OrConfirm-CeUSyKEp.mjs} +2 -2
  20. package/dist/esm/{OrConfirm-BrgS7882.mjs.map → OrConfirm-CeUSyKEp.mjs.map} +1 -1
  21. package/dist/esm/{OrContextMenu-DPkHnqgT.mjs → OrContextMenu-DcT0nnkQ.mjs} +3 -3
  22. package/dist/esm/{OrContextMenu-DPkHnqgT.mjs.map → OrContextMenu-DcT0nnkQ.mjs.map} +1 -1
  23. package/dist/esm/{OrDataGrid-Dp5pb_w8.mjs → OrDataGrid-BJiaRanm.mjs} +14 -14
  24. package/dist/esm/{OrDataGrid-Dp5pb_w8.mjs.map → OrDataGrid-BJiaRanm.mjs.map} +1 -1
  25. package/dist/esm/{OrDateFormat-DZhcitT0.mjs → OrDateFormat-DAWQiFzM.mjs} +2 -2
  26. package/dist/esm/{OrDateFormat-DZhcitT0.mjs.map → OrDateFormat-DAWQiFzM.mjs.map} +1 -1
  27. package/dist/esm/{OrDatePicker-Bf9CdxNp.mjs → OrDatePicker-Ifk1LBLg.mjs} +6 -6
  28. package/dist/esm/{OrDatePicker-Bf9CdxNp.mjs.map → OrDatePicker-Ifk1LBLg.mjs.map} +1 -1
  29. package/dist/esm/{OrDateRangePicker-J0Tfg3pN.mjs → OrDateRangePicker-Bof0o04S.mjs} +6 -6
  30. package/dist/esm/{OrDateRangePicker-J0Tfg3pN.mjs.map → OrDateRangePicker-Bof0o04S.mjs.map} +1 -1
  31. package/dist/esm/{OrDateTimeFormat-BLpFA-BD.mjs → OrDateTimeFormat-DM_xsd5r.mjs} +2 -2
  32. package/dist/esm/{OrDateTimeFormat-BLpFA-BD.mjs.map → OrDateTimeFormat-DM_xsd5r.mjs.map} +1 -1
  33. package/dist/esm/{OrDateTimePicker-itTCNryF.mjs → OrDateTimePicker-D9QS_dRK.mjs} +2 -2
  34. package/dist/esm/{OrDateTimePicker-itTCNryF.mjs.map → OrDateTimePicker-D9QS_dRK.mjs.map} +1 -1
  35. package/dist/esm/{OrDateTimePicker.vue_vue_type_script_lang-Cvenftkt.mjs → OrDateTimePicker.vue_vue_type_script_lang-8aFx3wpJ.mjs} +7 -7
  36. package/dist/esm/{OrDateTimePicker.vue_vue_type_script_lang-Cvenftkt.mjs.map → OrDateTimePicker.vue_vue_type_script_lang-8aFx3wpJ.mjs.map} +1 -1
  37. package/dist/esm/{OrEditorTabs-BELjrrI7.mjs → OrEditorTabs-Bh2K-4Ri.mjs} +4 -4
  38. package/dist/esm/{OrEditorTabs-BELjrrI7.mjs.map → OrEditorTabs-Bh2K-4Ri.mjs.map} +1 -1
  39. package/dist/esm/{OrFilter-OdRbXJoe.mjs → OrFilter-Bcw2JmIE.mjs} +3 -3
  40. package/dist/esm/{OrFilter-OdRbXJoe.mjs.map → OrFilter-Bcw2JmIE.mjs.map} +1 -1
  41. package/dist/esm/{OrFilterPopover-DpZsF63k.mjs → OrFilterPopover-BBEzdSDi.mjs} +3 -3
  42. package/dist/esm/{OrFilterPopover-DpZsF63k.mjs.map → OrFilterPopover-BBEzdSDi.mjs.map} +1 -1
  43. package/dist/esm/{OrFilterTrigger-CZ-7CIOH.mjs → OrFilterTrigger-SjWE1kLx.mjs} +2 -2
  44. package/dist/esm/{OrFilterTrigger-CZ-7CIOH.mjs.map → OrFilterTrigger-SjWE1kLx.mjs.map} +1 -1
  45. package/dist/esm/{OrIconButton-BuRmTHpT.mjs → OrIconButton-D1pxfMA_.mjs} +2 -2
  46. package/dist/esm/{OrIconButton-BuRmTHpT.mjs.map → OrIconButton-D1pxfMA_.mjs.map} +1 -1
  47. package/dist/esm/{OrInlineInput-Bfq5_wSj.mjs → OrInlineInput-BPt6D5QF.mjs} +2 -2
  48. package/dist/esm/{OrInlineInput-Bfq5_wSj.mjs.map → OrInlineInput-BPt6D5QF.mjs.map} +1 -1
  49. package/dist/esm/{OrInlineTextarea-sBAI13VJ.mjs → OrInlineTextarea-CadTst3o.mjs} +2 -2
  50. package/dist/esm/{OrInlineTextarea-sBAI13VJ.mjs.map → OrInlineTextarea-CadTst3o.mjs.map} +1 -1
  51. package/dist/esm/{OrInput-B7gtqbPo.mjs → OrInput-CzRxZM3i.mjs} +4 -4
  52. package/dist/esm/{OrInput-B7gtqbPo.mjs.map → OrInput-CzRxZM3i.mjs.map} +1 -1
  53. package/dist/esm/{OrInputBox-GluEHy2J.mjs → OrInputBox-6ciokFdU.mjs} +2 -2
  54. package/dist/esm/{OrInputBox-GluEHy2J.mjs.map → OrInputBox-6ciokFdU.mjs.map} +1 -1
  55. package/dist/esm/{OrInputBox.vue_vue_type_script_lang-CJ5X0_FT.mjs → OrInputBox.vue_vue_type_script_lang-q2L7rmth.mjs} +16 -16
  56. package/dist/esm/OrInputBox.vue_vue_type_script_lang-q2L7rmth.mjs.map +1 -0
  57. package/dist/esm/{OrList-B1m0OvOM.mjs → OrList-Dsr37TgO.mjs} +2 -2
  58. package/dist/esm/{OrList-B1m0OvOM.mjs.map → OrList-Dsr37TgO.mjs.map} +1 -1
  59. package/dist/esm/{OrMenu-DdcBdA4v.mjs → OrMenu-Cc6IzYWK.mjs} +2 -2
  60. package/dist/esm/{OrMenu-DdcBdA4v.mjs.map → OrMenu-Cc6IzYWK.mjs.map} +1 -1
  61. package/dist/esm/{OrMenuItem-CFz6OW23.mjs → OrMenuItem-KgHok8gW.mjs} +3 -3
  62. package/dist/esm/{OrMenuItem-CFz6OW23.mjs.map → OrMenuItem-KgHok8gW.mjs.map} +1 -1
  63. package/dist/esm/{OrModal-btf3bd3k.mjs → OrModal-D1gCHnN1.mjs} +2 -2
  64. package/dist/esm/{OrModal-btf3bd3k.mjs.map → OrModal-D1gCHnN1.mjs.map} +1 -1
  65. package/dist/esm/{OrNotification-BfguyG3y.mjs → OrNotification-DObxgRie.mjs} +2 -2
  66. package/dist/esm/{OrNotification-BfguyG3y.mjs.map → OrNotification-DObxgRie.mjs.map} +1 -1
  67. package/dist/esm/{OrPagination-ePWsnwsu.mjs → OrPagination-DRBRRL2g.mjs} +3 -3
  68. package/dist/esm/{OrPagination-ePWsnwsu.mjs.map → OrPagination-DRBRRL2g.mjs.map} +1 -1
  69. package/dist/esm/{OrPopover-DsFw4mp2.mjs → OrPopover-DDoG-KKY.mjs} +2 -2
  70. package/dist/esm/{OrPopover-DsFw4mp2.mjs.map → OrPopover-DDoG-KKY.mjs.map} +1 -1
  71. package/dist/esm/{OrRadio-DdFBJaoq.mjs → OrRadio-BZN3fBLW.mjs} +9 -9
  72. package/dist/esm/{OrRadio-DdFBJaoq.mjs.map → OrRadio-BZN3fBLW.mjs.map} +1 -1
  73. package/dist/esm/{OrRadioGroup-CHxkcLRh.mjs → OrRadioGroup-PJcCPCFn.mjs} +2 -2
  74. package/dist/esm/{OrRadioGroup-CHxkcLRh.mjs.map → OrRadioGroup-PJcCPCFn.mjs.map} +1 -1
  75. package/dist/esm/{OrRangeSlider-CCy-Y7EH.mjs → OrRangeSlider-PAzeqzie.mjs} +3 -3
  76. package/dist/esm/{OrRangeSlider-CCy-Y7EH.mjs.map → OrRangeSlider-PAzeqzie.mjs.map} +1 -1
  77. package/dist/esm/{OrResizeablePanel-BBoIfFxF.mjs → OrResizeablePanel-DxPqTbtV.mjs} +7 -7
  78. package/dist/esm/{OrResizeablePanel-BBoIfFxF.mjs.map → OrResizeablePanel-DxPqTbtV.mjs.map} +1 -1
  79. package/dist/esm/{OrRichTextEditor-BKzdfq3L.mjs → OrRichTextEditor-hSmFPW-b.mjs} +8 -8
  80. package/dist/esm/{OrRichTextEditor-BKzdfq3L.mjs.map → OrRichTextEditor-hSmFPW-b.mjs.map} +1 -1
  81. package/dist/esm/{OrRichTooltip-tlx0W9ck.mjs → OrRichTooltip-CDQEAeML.mjs} +2 -2
  82. package/dist/esm/{OrRichTooltip-tlx0W9ck.mjs.map → OrRichTooltip-CDQEAeML.mjs.map} +1 -1
  83. package/dist/esm/{OrSearch-Bk-OZj06.mjs → OrSearch-Csld1hBq.mjs} +3 -3
  84. package/dist/esm/{OrSearch-Bk-OZj06.mjs.map → OrSearch-Csld1hBq.mjs.map} +1 -1
  85. package/dist/esm/{OrSelect-DguQ28_x.mjs → OrSelect-DBhNKmRX.mjs} +12 -12
  86. package/dist/esm/{OrSelect-DguQ28_x.mjs.map → OrSelect-DBhNKmRX.mjs.map} +1 -1
  87. package/dist/esm/{OrSlider-zUTsz1DB.mjs → OrSlider-DHIaTguY.mjs} +2 -2
  88. package/dist/esm/{OrSlider-zUTsz1DB.mjs.map → OrSlider-DHIaTguY.mjs.map} +1 -1
  89. package/dist/esm/{OrSlider.vue_vue_type_script_lang-ggTiRZpX.mjs → OrSlider.vue_vue_type_script_lang--k0M0Q7N.mjs} +2 -2
  90. package/dist/esm/{OrSlider.vue_vue_type_script_lang-ggTiRZpX.mjs.map → OrSlider.vue_vue_type_script_lang--k0M0Q7N.mjs.map} +1 -1
  91. package/dist/esm/{OrSorting-BGeIMkZ5.mjs → OrSorting-ihkkh12O.mjs} +3 -3
  92. package/dist/esm/{OrSorting-BGeIMkZ5.mjs.map → OrSorting-ihkkh12O.mjs.map} +1 -1
  93. package/dist/esm/{OrSubMenuItem-BIOJeBwe.mjs → OrSubMenuItem-BBg7SvWQ.mjs} +4 -4
  94. package/dist/esm/{OrSubMenuItem-BIOJeBwe.mjs.map → OrSubMenuItem-BBg7SvWQ.mjs.map} +1 -1
  95. package/dist/esm/{OrSwitch-IqjDSZBa.mjs → OrSwitch-BtoXDsZx.mjs} +25 -25
  96. package/dist/esm/{OrSwitch-IqjDSZBa.mjs.map → OrSwitch-BtoXDsZx.mjs.map} +1 -1
  97. package/dist/esm/{OrTabs-DUihTKOm.mjs → OrTabs-eXFvC3c6.mjs} +3 -3
  98. package/dist/esm/{OrTabs-DUihTKOm.mjs.map → OrTabs-eXFvC3c6.mjs.map} +1 -1
  99. package/dist/esm/{OrTag-D-GAZ0Hm.mjs → OrTag-DWp6cMUp.mjs} +2 -2
  100. package/dist/esm/{OrTag-D-GAZ0Hm.mjs.map → OrTag-DWp6cMUp.mjs.map} +1 -1
  101. package/dist/esm/{OrTagInput-pvlecpHE.mjs → OrTagInput-DIMSvMNK.mjs} +6 -6
  102. package/dist/esm/{OrTagInput-pvlecpHE.mjs.map → OrTagInput-DIMSvMNK.mjs.map} +1 -1
  103. package/dist/esm/{OrTags-CMPGvbL2.mjs → OrTags-DKwmNfkN.mjs} +3 -3
  104. package/dist/esm/{OrTags-CMPGvbL2.mjs.map → OrTags-DKwmNfkN.mjs.map} +1 -1
  105. package/dist/esm/{OrTextarea-BiRhqut0.mjs → OrTextarea-sLey7v2k.mjs} +3 -3
  106. package/dist/esm/{OrTextarea-BiRhqut0.mjs.map → OrTextarea-sLey7v2k.mjs.map} +1 -1
  107. package/dist/esm/{OrTimeFormat-BXROOym-.mjs → OrTimeFormat-Bs_Jfd9U.mjs} +2 -2
  108. package/dist/esm/{OrTimeFormat-BXROOym-.mjs.map → OrTimeFormat-Bs_Jfd9U.mjs.map} +1 -1
  109. package/dist/esm/{OrTimePicker-CgfdcXpZ.mjs → OrTimePicker-C_pYA5Yn.mjs} +6 -6
  110. package/dist/esm/{OrTimePicker-CgfdcXpZ.mjs.map → OrTimePicker-C_pYA5Yn.mjs.map} +1 -1
  111. package/dist/esm/{OrTimeRangePicker-CNfAlhK1.mjs → OrTimeRangePicker-b2Ec1RQg.mjs} +6 -6
  112. package/dist/esm/{OrTimeRangePicker-CNfAlhK1.mjs.map → OrTimeRangePicker-b2Ec1RQg.mjs.map} +1 -1
  113. package/dist/esm/{OrTooltip-CAvo-mxv.mjs → OrTooltip-cverJ1se.mjs} +2 -2
  114. package/dist/esm/{OrTooltip-CAvo-mxv.mjs.map → OrTooltip-cverJ1se.mjs.map} +1 -1
  115. package/dist/esm/components/index.mjs +59 -59
  116. package/dist/esm/components/or-autocomplete-v3/index.mjs +1 -1
  117. package/dist/esm/components/or-bottom-sheet-v3/index.mjs +1 -1
  118. package/dist/esm/components/or-button-group-v3/index.mjs +1 -1
  119. package/dist/esm/components/or-card-collection-v3/index.mjs +1 -1
  120. package/dist/esm/components/or-checkbox-group-v3/index.mjs +1 -1
  121. package/dist/esm/components/or-checkbox-tree-v3/index.mjs +1 -1
  122. package/dist/esm/components/or-checkbox-v3/index.mjs +1 -1
  123. package/dist/esm/components/or-code-v3/index.mjs +1 -1
  124. package/dist/esm/components/or-combined-input-v3/index.mjs +1 -1
  125. package/dist/esm/components/or-confirm-v3/index.mjs +1 -1
  126. package/dist/esm/components/or-context-menu-v3/index.mjs +1 -1
  127. package/dist/esm/components/or-data-grid-v3/index.mjs +1 -1
  128. package/dist/esm/components/or-date-format-v3/index.mjs +1 -1
  129. package/dist/esm/components/or-date-picker-v3/index.mjs +1 -1
  130. package/dist/esm/components/or-date-range-picker-v3/index.mjs +1 -1
  131. package/dist/esm/components/or-date-time-format-v3/index.mjs +1 -1
  132. package/dist/esm/components/or-date-time-picker-v3/index.mjs +2 -2
  133. package/dist/esm/components/or-editor-tabs-v3/index.mjs +1 -1
  134. package/dist/esm/components/or-filter-popover-v3/index.mjs +1 -1
  135. package/dist/esm/components/or-filter-trigger-v3/index.mjs +1 -1
  136. package/dist/esm/components/or-filter-v3/index.mjs +1 -1
  137. package/dist/esm/components/or-icon-button-v3/index.mjs +1 -1
  138. package/dist/esm/components/or-inline-input-v3/index.mjs +1 -1
  139. package/dist/esm/components/or-inline-textarea-v3/index.mjs +1 -1
  140. package/dist/esm/components/or-input-box-v3/index.mjs +2 -2
  141. package/dist/esm/components/or-input-v3/index.mjs +1 -1
  142. package/dist/esm/components/or-list-v3/index.mjs +1 -1
  143. package/dist/esm/components/or-menu-item-v3/index.mjs +1 -1
  144. package/dist/esm/components/or-menu-v3/index.mjs +1 -1
  145. package/dist/esm/components/or-modal-v3/index.mjs +1 -1
  146. package/dist/esm/components/or-notification-v3/index.mjs +1 -1
  147. package/dist/esm/components/or-pagination-v3/index.mjs +1 -1
  148. package/dist/esm/components/or-popover-v3/index.mjs +1 -1
  149. package/dist/esm/components/or-radio-group-v3/index.mjs +1 -1
  150. package/dist/esm/components/or-radio-v3/index.mjs +1 -1
  151. package/dist/esm/components/or-range-slider-v3/index.mjs +1 -1
  152. package/dist/esm/components/or-resizeable-panel-v3/index.mjs +1 -1
  153. package/dist/esm/components/or-rich-text-editor-v3/index.mjs +1 -1
  154. package/dist/esm/components/or-rich-tooltip-v3/index.mjs +1 -1
  155. package/dist/esm/components/or-search-v3/index.mjs +1 -1
  156. package/dist/esm/components/or-select-v3/index.mjs +1 -1
  157. package/dist/esm/components/or-sidebar-v3/index.mjs +1 -1
  158. package/dist/esm/components/or-slider-v3/index.mjs +2 -2
  159. package/dist/esm/components/or-sorting-v3/index.mjs +1 -1
  160. package/dist/esm/components/or-sub-menu-item-v3/index.mjs +1 -1
  161. package/dist/esm/components/or-switch-v3/index.mjs +1 -1
  162. package/dist/esm/components/or-tabs-v3/index.mjs +1 -1
  163. package/dist/esm/components/or-tag-input-v3/index.mjs +1 -1
  164. package/dist/esm/components/or-tag-v3/index.mjs +1 -1
  165. package/dist/esm/components/or-tags-v3/index.mjs +1 -1
  166. package/dist/esm/components/or-textarea-v3/index.mjs +1 -1
  167. package/dist/esm/components/or-time-format-v3/index.mjs +1 -1
  168. package/dist/esm/components/or-time-picker-v3/index.mjs +1 -1
  169. package/dist/esm/components/or-time-range-picker-v3/index.mjs +1 -1
  170. package/dist/esm/components/or-toast-v3/index.mjs +1 -1
  171. package/dist/esm/components/or-tooltip-v3/index.mjs +1 -1
  172. package/dist/esm/index.mjs +59 -59
  173. package/dist/esm/{props-Cm5FStaL.mjs → props-BoHyDesf.mjs} +2 -2
  174. package/dist/esm/{props-Cm5FStaL.mjs.map → props-BoHyDesf.mjs.map} +1 -1
  175. package/dist/esm/{types-DrXNmeDl.mjs → types-5RPO11-2.mjs} +2 -2
  176. package/dist/esm/{types-DrXNmeDl.mjs.map → types-5RPO11-2.mjs.map} +1 -1
  177. package/package.json +3 -3
  178. package/dist/esm/OrBottomSheet-CALU9i4F.mjs.map +0 -1
  179. package/dist/esm/OrButtonGroup-CdrVIn4g.mjs.map +0 -1
  180. package/dist/esm/OrCombinedInput-pzorWu6M.mjs.map +0 -1
  181. package/dist/esm/OrInputBox.vue_vue_type_script_lang-CJ5X0_FT.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"OrCheckboxTree-BMYhaqZA.mjs","sources":["../../../components/or-checkbox-tree-v3/src/styles.ts","../../../components/or-checkbox-tree-v3/src/utils/extractChildrenValues.ts","../../../components/or-checkbox-tree-v3/src/OrCheckboxTree.vue"],"sourcesContent":["export const CheckboxTreeRoot: string[] = [\n // Layout\n 'flex',\n 'flex-col',\n\n // Spacing\n 'md:gap-sm',\n];\n\nexport const CheckboxTreeRootParent: string[] = [\n // Layout\n 'flex',\n 'flex-row',\n 'gap-xs',\n];\n","import { flattenDeep } from '@onereach/ui-components-common/utils';\n\nimport { CheckboxTreeNode, CheckboxTreeValue } from '../types';\n\nconst getChildValues = (children?: CheckboxTreeNode[]): CheckboxTreeValue[] | undefined => {\n return children?.map((child) => {\n if (child.disabled) {\n return undefined;\n }\n if (child.children) {\n return getChildValues(child.children);\n } else {\n return child.value;\n }\n });\n};\n\nexport function extractChildrenValues(children: CheckboxTreeNode[]): string[] {\n return flattenDeep(getChildValues(children)).filter(Boolean) as string[];\n}\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"hasChildren\">\n <div :class=\"parentStyles\">\n <template v-if=\"collapsible\">\n <OrButton\n :variant=\"'link'\"\n :disabled=\"disabled\"\n @click=\"setIsOpen(!isOpen)\"\n >\n <OrIcon\n :class=\"[isOpen ? 'rotate-[180deg]': 'rotate-0']\"\n :icon=\"'arrow_drop_down'\"\n :size=\"'l'\"\n />\n </OrButton>\n </template>\n\n <OrCheckbox\n :model-value=\"isAllChildrenSelected\"\n :value=\"true\"\n :indeterminate=\"isIntermediate\"\n :loading=\"localLoading\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n @click=\"handleParentClick\"\n >\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </OrCheckbox>\n </div>\n\n <div\n v-if=\"hasChildren && isOpen\"\n :class=\"[collapsible ? 'ml-2xl' : 'ml-lg']\"\n >\n <OrCheckboxTree\n v-for=\"child in item.children\"\n :key=\"child.value || child.label\"\n v-model=\"proxyModelValue\"\n :class=\"['mt-xs']\"\n :item=\"child\"\n :collapsible=\"child.collapsible\"\n :expanded=\"child.expanded\"\n :loading=\"localLoading\"\n :disabled=\"disabled || child.disabled\"\n :readonly=\"readonly || child.readonly\"\n >\n <template v-slot:checkboxLabel=\"{ item: checkboxItem }\">\n <slot\n name=\"checkboxLabel\"\n :item=\"checkboxItem\"\n >\n {{ checkboxItem.label }}\n </slot>\n </template>\n </OrCheckboxTree>\n </div>\n </template>\n\n <template v-else>\n <OrCheckbox\n v-model=\"proxyModelValue\"\n :value=\"item.value\"\n :loading=\"localLoading\"\n :disabled=\"disabled || item.disabled\"\n :readonly=\"readonly || item.readonly\"\n >\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </OrCheckbox>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrCheckboxV3 as OrCheckbox } from '@onereach/ui-components.or-checkbox-v3';\nimport { OrIconV3 as OrIcon } from '@onereach/ui-components.or-icon-v3';\nimport { useToggle } from '@vueuse/core';\nimport { PropType, computed, defineComponent, toRefs, watch } from 'vue';\n\nimport { CheckboxTreeRoot, CheckboxTreeRootParent } from './styles';\nimport { CheckboxTreeNode } from './types';\nimport { extractChildrenValues } from './utils/extractChildrenValues';\n\nexport default defineComponent({\n name: 'OrCheckboxTree',\n\n components: {\n OrIcon,\n OrCheckbox,\n OrButton,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n\n item: {\n type: Object as PropType<CheckboxTreeNode>,\n required: true,\n },\n\n collapsible: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n expanded: {\n type: Boolean,\n default: true,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n setup(props, context) {\n // State\n const { modelValue, item, expanded } = toRefs(props);\n const children = computed(() => item.value.children || []);\n const hasChildren = computed(() => children.value.length > 0);\n\n const childrenValues = computed(() => {\n return hasChildren.value ? extractChildrenValues(children.value) : [];\n });\n\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n const localLoading = computed(() => Boolean(props.loading || item.value.loading));\n\n const isAnyChildrenSelected = computed(() => {\n return proxyModelValue.value?.some((value) => childrenValues.value.includes(value));\n });\n\n const isAllChildrenSelected = computed(() => {\n return childrenValues.value.length > 0\n && childrenValues.value.every((value) => proxyModelValue.value?.includes(value));\n });\n\n const isIntermediate = computed(() => {\n return isAnyChildrenSelected.value && !isAllChildrenSelected.value;\n });\n\n const [isOpen, setIsOpen] = useToggle(expanded.value);\n\n watch(expanded, (value) => {\n if (value !== undefined) {\n setIsOpen(value);\n }\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-checkbox-tree-v3',\n ...CheckboxTreeRoot,\n ]);\n\n // Styles\n const parentStyles = computed(() => [\n ...CheckboxTreeRootParent,\n ]);\n\n // Methods\n const handleParentClick = () => {\n if (isAllChildrenSelected.value) {\n proxyModelValue.value = proxyModelValue.value.filter((value) => {\n return !childrenValues.value.includes(value);\n });\n } else {\n proxyModelValue.value = [\n ...new Set([\n ...proxyModelValue.value,\n ...childrenValues.value,\n ]),\n ];\n }\n };\n\n return {\n rootStyles,\n parentStyles,\n hasChildren,\n proxyModelValue,\n localLoading,\n isOpen,\n setIsOpen,\n isIntermediate,\n isAllChildrenSelected,\n isAnyChildrenSelected,\n childrenValues,\n handleParentClick,\n };\n },\n});\n</script>\n"],"names":["CheckboxTreeRoot","CheckboxTreeRootParent","getChildValues","children","child","extractChildrenValues","flattenDeep","_sfc_main","defineComponent","OrIcon","OrCheckbox","OrButton","props","context","modelValue","item","expanded","toRefs","computed","hasChildren","childrenValues","proxyModelValue","useProxyModelValue","localLoading","isAnyChildrenSelected","_a","value","isAllChildrenSelected","isIntermediate","isOpen","setIsOpen","useToggle","watch","rootStyles","parentStyles","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_Fragment","_createElementVNode","_createBlock","_component_OrButton","_cache","$event","_withCtx","_createVNode","_component_OrIcon","_createCommentVNode","_component_OrCheckbox","_renderList","_component_OrCheckboxTree","_renderSlot","checkboxItem"],"mappings":"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"}
1
+ {"version":3,"file":"OrCheckboxTree-Com4vL18.mjs","sources":["../../../components/or-checkbox-tree-v3/src/styles.ts","../../../components/or-checkbox-tree-v3/src/utils/extractChildrenValues.ts","../../../components/or-checkbox-tree-v3/src/OrCheckboxTree.vue"],"sourcesContent":["export const CheckboxTreeRoot: string[] = [\n // Layout\n 'flex',\n 'flex-col',\n\n // Spacing\n 'md:gap-sm',\n];\n\nexport const CheckboxTreeRootParent: string[] = [\n // Layout\n 'flex',\n 'flex-row',\n 'gap-xs',\n];\n","import { flattenDeep } from '@onereach/ui-components-common/utils';\n\nimport { CheckboxTreeNode, CheckboxTreeValue } from '../types';\n\nconst getChildValues = (children?: CheckboxTreeNode[]): CheckboxTreeValue[] | undefined => {\n return children?.map((child) => {\n if (child.disabled) {\n return undefined;\n }\n if (child.children) {\n return getChildValues(child.children);\n } else {\n return child.value;\n }\n });\n};\n\nexport function extractChildrenValues(children: CheckboxTreeNode[]): string[] {\n return flattenDeep(getChildValues(children)).filter(Boolean) as string[];\n}\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"hasChildren\">\n <div :class=\"parentStyles\">\n <template v-if=\"collapsible\">\n <OrButton\n :variant=\"'link'\"\n :disabled=\"disabled\"\n @click=\"setIsOpen(!isOpen)\"\n >\n <OrIcon\n :class=\"[isOpen ? 'rotate-[180deg]': 'rotate-0']\"\n :icon=\"'arrow_drop_down'\"\n :size=\"'l'\"\n />\n </OrButton>\n </template>\n\n <OrCheckbox\n :model-value=\"isAllChildrenSelected\"\n :value=\"true\"\n :indeterminate=\"isIntermediate\"\n :loading=\"localLoading\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n @click=\"handleParentClick\"\n >\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </OrCheckbox>\n </div>\n\n <div\n v-if=\"hasChildren && isOpen\"\n :class=\"[collapsible ? 'ml-2xl' : 'ml-lg']\"\n >\n <OrCheckboxTree\n v-for=\"child in item.children\"\n :key=\"child.value || child.label\"\n v-model=\"proxyModelValue\"\n :class=\"['mt-xs']\"\n :item=\"child\"\n :collapsible=\"child.collapsible\"\n :expanded=\"child.expanded\"\n :loading=\"localLoading\"\n :disabled=\"disabled || child.disabled\"\n :readonly=\"readonly || child.readonly\"\n >\n <template v-slot:checkboxLabel=\"{ item: checkboxItem }\">\n <slot\n name=\"checkboxLabel\"\n :item=\"checkboxItem\"\n >\n {{ checkboxItem.label }}\n </slot>\n </template>\n </OrCheckboxTree>\n </div>\n </template>\n\n <template v-else>\n <OrCheckbox\n v-model=\"proxyModelValue\"\n :value=\"item.value\"\n :loading=\"localLoading\"\n :disabled=\"disabled || item.disabled\"\n :readonly=\"readonly || item.readonly\"\n >\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </OrCheckbox>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrCheckboxV3 as OrCheckbox } from '@onereach/ui-components.or-checkbox-v3';\nimport { OrIconV3 as OrIcon } from '@onereach/ui-components.or-icon-v3';\nimport { useToggle } from '@vueuse/core';\nimport { PropType, computed, defineComponent, toRefs, watch } from 'vue';\n\nimport { CheckboxTreeRoot, CheckboxTreeRootParent } from './styles';\nimport { CheckboxTreeNode } from './types';\nimport { extractChildrenValues } from './utils/extractChildrenValues';\n\nexport default defineComponent({\n name: 'OrCheckboxTree',\n\n components: {\n OrIcon,\n OrCheckbox,\n OrButton,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n\n item: {\n type: Object as PropType<CheckboxTreeNode>,\n required: true,\n },\n\n collapsible: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n expanded: {\n type: Boolean,\n default: true,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n setup(props, context) {\n // State\n const { modelValue, item, expanded } = toRefs(props);\n const children = computed(() => item.value.children || []);\n const hasChildren = computed(() => children.value.length > 0);\n\n const childrenValues = computed(() => {\n return hasChildren.value ? extractChildrenValues(children.value) : [];\n });\n\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n const localLoading = computed(() => Boolean(props.loading || item.value.loading));\n\n const isAnyChildrenSelected = computed(() => {\n return proxyModelValue.value?.some((value) => childrenValues.value.includes(value));\n });\n\n const isAllChildrenSelected = computed(() => {\n return childrenValues.value.length > 0\n && childrenValues.value.every((value) => proxyModelValue.value?.includes(value));\n });\n\n const isIntermediate = computed(() => {\n return isAnyChildrenSelected.value && !isAllChildrenSelected.value;\n });\n\n const [isOpen, setIsOpen] = useToggle(expanded.value);\n\n watch(expanded, (value) => {\n if (value !== undefined) {\n setIsOpen(value);\n }\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-checkbox-tree-v3',\n ...CheckboxTreeRoot,\n ]);\n\n // Styles\n const parentStyles = computed(() => [\n ...CheckboxTreeRootParent,\n ]);\n\n // Methods\n const handleParentClick = () => {\n if (isAllChildrenSelected.value) {\n proxyModelValue.value = proxyModelValue.value.filter((value) => {\n return !childrenValues.value.includes(value);\n });\n } else {\n proxyModelValue.value = [\n ...new Set([\n ...proxyModelValue.value,\n ...childrenValues.value,\n ]),\n ];\n }\n };\n\n return {\n rootStyles,\n parentStyles,\n hasChildren,\n proxyModelValue,\n localLoading,\n isOpen,\n setIsOpen,\n isIntermediate,\n isAllChildrenSelected,\n isAnyChildrenSelected,\n childrenValues,\n handleParentClick,\n };\n },\n});\n</script>\n"],"names":["CheckboxTreeRoot","CheckboxTreeRootParent","getChildValues","children","child","extractChildrenValues","flattenDeep","_sfc_main","defineComponent","OrIcon","OrCheckbox","OrButton","props","context","modelValue","item","expanded","toRefs","computed","hasChildren","childrenValues","proxyModelValue","useProxyModelValue","localLoading","isAnyChildrenSelected","_a","value","isAllChildrenSelected","isIntermediate","isOpen","setIsOpen","useToggle","watch","rootStyles","parentStyles","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_Fragment","_createElementVNode","_createBlock","_component_OrButton","_cache","$event","_withCtx","_createVNode","_component_OrIcon","_createCommentVNode","_component_OrCheckbox","_renderList","_component_OrCheckboxTree","_renderSlot","checkboxItem"],"mappings":"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"}
@@ -2,13 +2,13 @@ import { indentWithTab as ro } from "@codemirror/commands";
2
2
  import { Compartment as F, EditorState as H } from "@codemirror/state";
3
3
  import { keymap as no, EditorView as k } from "@codemirror/view";
4
4
  import { useIdAttribute as lo, useControlAttributes as ao, useValidationAttributes as so, useProxyModelValue as io, useTheme as uo } from "@onereach/ui-components-common/hooks";
5
- import { O as co } from "./OrIconButton-BuRmTHpT.mjs";
6
- import { O as mo } from "./OrModal-btf3bd3k.mjs";
5
+ import { O as co } from "./OrIconButton-D1pxfMA_.mjs";
6
+ import { O as mo } from "./OrModal-D1gCHnN1.mjs";
7
7
  import { basicSetup as fo } from "codemirror";
8
8
  import { defineComponent as D, ref as h, computed as B, resolveComponent as p, openBlock as I, createElementBlock as L, normalizeClass as V, createVNode as v, withCtx as n, renderSlot as a, createTextVNode as g, toDisplayString as C, createElementVNode as W, withDirectives as z, createBlock as R, vShow as J, createCommentVNode as G, reactive as po, toRef as yo, watch as T, onMounted as bo, onUnmounted as ho, createSlots as A, withModifiers as vo } from "vue";
9
9
  import { O as go } from "./OrError-B5ihH6-3.mjs";
10
10
  import { O as Co } from "./OrHint-NvbZyURY.mjs";
11
- import { O as So } from "./OrInputBox-GluEHy2J.mjs";
11
+ import { O as So } from "./OrInputBox-6ciokFdU.mjs";
12
12
  import { O as Oo } from "./OrLabel-K7_HgvcK.mjs";
13
13
  import { _ as P } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
14
14
  const wo = [
@@ -499,4 +499,4 @@ export {
499
499
  c as C,
500
500
  Po as O
501
501
  };
502
- //# sourceMappingURL=OrCode-D7xM4MLP.mjs.map
502
+ //# sourceMappingURL=OrCode-CVTfoJyM.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"OrCode-D7xM4MLP.mjs","sources":["../../../components/or-code-v3/src/styles.ts","../../../components/or-code-v3/src/partials/OrCodeControl.vue","../../../components/or-code-v3/src/props.ts","../../../components/or-code-v3/src/OrCode.vue"],"sourcesContent":["export const Code: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const CodeControlRoot: string[] = [\n // Layout\n 'layout-column',\n\n // Sizing\n 'h-full',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const CodeControl: string[] = [\n // Layout\n 'grid',\n\n // Box\n 'w-full',\n 'h-full',\n\n // Spacing\n '!mx-0',\n '!my-0',\n\n // Theme\n 'theme-background-transparent',\n\n // todo: https://onereach.atlassian.net/browse/UI-580\n 'dark:invert dark:hue-rotate-180',\n];\n\nexport const CodeModal: string[] = [\n // Sizing\n '!h-full',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrLabel\n :control-id=\"controlId\"\n :variant=\"'input'\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n\n <OrInputBox\n :class=\"['grow']\"\n :size=\"'m'\"\n :invalid=\"!!error || !!$slots.error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n >\n <div\n :ref=\"'control'\"\n :class=\"controlStyles\"\n />\n </OrInputBox>\n\n <template v-if=\"$slots.hint || hint\">\n <OrHint\n v-show=\"!error\"\n :disabled=\"disabled\"\n >\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n </OrHint>\n </template>\n\n <OrError\n v-show=\"typeof error === 'string' && error.length > 0 || $slots.error\"\n :disabled=\"disabled\"\n >\n <slot name=\"error\">\n {{ error }}\n </slot>\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { OrErrorV3 as OrError } from '@onereach/ui-components.or-error-v3';\nimport { OrHintV3 as OrHint } from '@onereach/ui-components.or-hint-v3';\nimport { OrInputBoxV3 as OrInputBox } from '@onereach/ui-components.or-input-box-v3';\nimport { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { computed, defineComponent, ref } from 'vue';\n\nimport { CodeControl, CodeControlRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrCodeControl',\n\n components: {\n OrError,\n OrHint,\n OrInputBox,\n OrLabel,\n },\n\n props: {\n error: {\n type: [String, Boolean],\n default: undefined,\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n controlId: {\n type: String,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n },\n\n expose: [\n 'root',\n 'control',\n\n 'focus',\n 'blur',\n ],\n\n setup() {\n // Refs\n const root = ref<HTMLElement>();\n const control = ref<HTMLElement>();\n\n // Methods\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n // Styles\n const rootStyles = computed(() => [\n 'or-code-control-v3',\n ...CodeControlRoot,\n ]);\n\n const controlStyles = computed(() => [\n ...CodeControl,\n ]);\n\n return {\n root,\n control,\n rootStyles,\n controlStyles,\n focus,\n blur,\n };\n },\n});\n</script>\n","export enum CodeLanguage {\n HTML = 'html',\n CSS = 'css',\n JS = 'js',\n TS = 'ts',\n JSON = 'json',\n MD = 'md',\n}\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrCodeControl\n :ref=\"'control'\"\n :control-id=\"controlAttributes.id\"\n :label=\"label\"\n :hint=\"hint\"\n :error=\"error\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n >\n <template v-slot:label>\n <slot name=\"label\">\n {{ label }}\n </slot>\n </template>\n <template v-slot:addon>\n <div :class=\"['layout-row', 'gap-xs']\">\n <slot name=\"addon\" />\n\n <OrIconButton\n v-if=\"enableFullscreen\"\n :icon=\"'fullscreen'\"\n @click.stop=\"openFullscreen()\"\n />\n </div>\n </template>\n <template v-slot:hint>\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n </template>\n <template\n v-if=\"$slots.error\"\n v-slot:error\n >\n <slot name=\"error\" />\n </template>\n </OrCodeControl>\n\n <OrModal\n :ref=\"'modal'\"\n :additional-styles=\"modalStyles\"\n :size=\"'l'\"\n >\n <template v-slot:header>\n <slot name=\"label\">\n {{ label }}\n </slot>\n </template>\n\n <OrCodeControl\n :ref=\"'fullscreenControl'\"\n :control-id=\"controlAttributes.id\"\n :hint=\"hint\"\n :error=\"error\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n >\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n <template\n v-if=\"$slots.error\"\n v-slot:error\n >\n <slot name=\"error\" />\n </template>\n </OrCodeControl>\n\n <template\n v-if=\"$slots.modalFooter\"\n v-slot:footer\n >\n <slot name=\"modalFooter\" />\n </template>\n </OrModal>\n </div>\n</template>\n\n<script lang=\"ts\">\n\n/* Codemirror core */\n\nimport { indentWithTab } from '@codemirror/commands';\nimport { Compartment, EditorState, Extension } from '@codemirror/state';\nimport { EditorView, keymap } from '@codemirror/view';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue, useTheme, useValidationAttributes } from '@onereach/ui-components-common/hooks';\n\n/* Components */\nimport { OrIconButtonV3 as OrIconButton } from '@onereach/ui-components.or-icon-button-v3';\nimport { OrModalV3 as OrModal } from '@onereach/ui-components.or-modal-v3';\nimport { basicSetup } from 'codemirror';\nimport { PropType, computed, defineComponent, onMounted, onUnmounted, reactive, ref, toRef, watch } from 'vue';\n\nimport OrCodeControl from './partials/OrCodeControl.vue';\nimport { CodeLanguage } from './props';\nimport { Code, CodeControl, CodeModal } from './styles';\n\nexport default defineComponent({\n name: 'OrCode',\n\n components: {\n OrModal,\n OrCodeControl,\n OrIconButton,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: undefined,\n },\n\n language: {\n type: String as PropType<CodeLanguage>,\n default: () => CodeLanguage.JS,\n },\n\n extensions: {\n type: Array as PropType<Extension[]>,\n default: () => [],\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: [String, Boolean],\n default: undefined,\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n // todo: review flag prop, seems better to set 'false' default value\n enableFullscreen: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'input',\n 'keydown',\n 'keyup',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'editorView',\n 'control',\n 'fullscreenControl',\n 'modal',\n\n 'focus',\n 'blur',\n 'openFullscreen',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n const control = ref<InstanceType<typeof OrCodeControl>>();\n const fullscreenControl = ref<InstanceType<typeof OrCodeControl>>();\n\n const modal = ref<InstanceType<typeof OrModal>>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-code-v3',\n ...Code,\n ]);\n\n const controlStyles = computed(() => [\n ...CodeControl,\n ]);\n\n const modalStyles = computed(() => [\n ...CodeModal,\n ]);\n\n const addedExtensionCompartment = new Compartment();\n const languageExtensionCompartment = new Compartment();\n const readonlyExtensionCompartment = new Compartment();\n const disabledExtensionCompartment = new Compartment();\n\n // State\n const controlAttributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n ...useValidationAttributes(),\n });\n\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const getLanguageExtension = async (language: CodeLanguage) => {\n switch (language) {\n case CodeLanguage.HTML:\n return (await import('@codemirror/lang-html')).html();\n\n case CodeLanguage.CSS:\n return (await import('@codemirror/lang-css')).css();\n\n case CodeLanguage.JS:\n return (await import('@codemirror/lang-javascript')).javascript();\n\n case CodeLanguage.TS:\n return (await import('@codemirror/lang-javascript')).javascript({ typescript: true });\n\n case CodeLanguage.JSON:\n return (await import('@codemirror/lang-json')).json();\n\n case CodeLanguage.MD:\n return (await import('@codemirror/lang-markdown')).markdown();\n }\n };\n\n // Methods\n function focus(): void {\n (control.value?.focus as unknown as () => void)?.();\n }\n\n function blur(): void {\n (control.value?.blur as unknown as () => void)?.();\n }\n\n function openFullscreen(): void {\n (modal.value?.open as unknown as () => void)?.();\n }\n\n // #region Codemirror\n const theme = useTheme();\n const defaultExtensions = [\n basicSetup,\n\n keymap.of([\n indentWithTab,\n ]),\n\n EditorView.domEventHandlers({\n input: (event) => {\n context.emit('input', event);\n },\n\n keydown: (event) => {\n context.emit('keydown', event);\n },\n\n keyup: (event) => {\n context.emit('keyup', event);\n },\n\n focus: (event) => {\n context.emit('focus', event);\n },\n\n blur: (event) => {\n context.emit('blur', event);\n },\n }),\n\n EditorView.theme({\n '&': {\n overflow: 'hidden',\n\n color: theme.textColor['on-background'],\n backgroundColor: 'transparent',\n },\n\n '&.cm-focused': {\n outline: 'none',\n },\n\n '.cm-scroller': {\n fontFamily: theme.fontFamily['caption'],\n fontWeight: theme.fontWeight['caption'],\n fontSize: theme.fontSize['caption'],\n lineHeight: theme.lineHeight['caption'],\n },\n\n '.cm-gutters': {\n color: theme.textColor['on-background'],\n backgroundColor: theme.backgroundColor['primary-opacity-0-12'],\n borderColor: theme.borderColor['outline'],\n\n backdropFilter: 'blur(2px)',\n },\n\n '.cm-activeLineGutter, .cm-activeLine': {\n backgroundColor: theme.backgroundColor['primary-opacity-0-08'],\n },\n }),\n ];\n\n const state = EditorState.create({\n doc: proxyModelValue.value,\n\n extensions: [\n ...defaultExtensions,\n languageExtensionCompartment.of([]),\n addedExtensionCompartment.of(props.extensions),\n readonlyExtensionCompartment.of([EditorState.readOnly.of(props.readonly)]),\n disabledExtensionCompartment.of([EditorView.editable.of(!props.disabled)]),\n ],\n });\n\n const editorView = new EditorView({\n state,\n\n dispatch: (transaction) => {\n editorView.update([\n transaction,\n ]);\n\n if (transaction.docChanged) {\n proxyModelValue.value = String(editorView.state.doc);\n }\n },\n });\n\n watch(proxyModelValue, (value) => {\n if (editorView.composing) return;\n if (editorView.state.doc.toString() === value) return;\n\n const modelValue = value ?? '';\n const { selection } = editorView.state;\n\n editorView!.dispatch({\n changes: {\n from: 0,\n to: editorView!.state.doc.length,\n insert: modelValue,\n },\n\n selection: selection.ranges.some((range) => range.to > modelValue.length) ? { anchor: modelValue.length } : selection,\n });\n });\n\n watch([\n () => props.extensions,\n () => props.language,\n () => props.readonly,\n () => props.disabled,\n ], async ([extensions, language, readonly, disabled], [, prevLanguage, pevReadonly, pevDisabled]) => {\n let effects = [];\n\n if (readonly !== pevReadonly) {\n effects.push(readonlyExtensionCompartment.reconfigure(EditorState.readOnly.of(readonly)));\n }\n\n if (disabled !== pevDisabled) {\n effects.push(disabledExtensionCompartment.reconfigure(EditorView.editable.of(!disabled)));\n }\n\n if (language !== prevLanguage) {\n const languageExt = await getLanguageExtension(language as CodeLanguage);\n\n effects.push(languageExtensionCompartment.reconfigure([languageExt]));\n }\n\n effects.push(addedExtensionCompartment.reconfigure(extensions));\n\n editorView!.dispatch({ effects });\n }, { immediate: true });\n // #endregion\n\n // Effects\n watch(() => modal.value?.state, (value) => {\n setTimeout(() => {\n if (value === 'open') {\n (fullscreenControl.value?.control as unknown as HTMLElement)?.append(editorView.dom);\n } else {\n (control.value?.control as unknown as HTMLElement)?.append(editorView.dom);\n }\n });\n });\n\n // Lifecycle\n onMounted(() => {\n (control.value?.control as unknown as HTMLElement)?.append(editorView.dom);\n });\n\n onUnmounted(() => {\n editorView.destroy();\n });\n\n return {\n root,\n editorView,\n control,\n fullscreenControl,\n modal,\n rootStyles,\n controlStyles,\n modalStyles,\n controlAttributes,\n proxyModelValue,\n focus,\n blur,\n openFullscreen,\n };\n },\n});\n</script>\n"],"names":["Code","CodeControlRoot","CodeControl","CodeModal","_sfc_main$1","defineComponent","OrError","OrHint","OrInputBox","OrLabel","root","ref","control","focus","_a","blur","rootStyles","computed","controlStyles","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_component_OrLabel","_renderSlot","_createVNode","_component_OrInputBox","_withCtx","_createElementVNode","_withDirectives","_createBlock","_component_OrHint","_createCommentVNode","_component_OrError","CodeLanguage","_sfc_main","OrModal","OrCodeControl","OrIconButton","props","context","fullscreenControl","modal","modalStyles","addedExtensionCompartment","Compartment","languageExtensionCompartment","readonlyExtensionCompartment","disabledExtensionCompartment","controlAttributes","reactive","useIdAttribute","useControlAttributes","useValidationAttributes","proxyModelValue","useProxyModelValue","toRef","getLanguageExtension","language","_b","openFullscreen","theme","useTheme","defaultExtensions","basicSetup","keymap","indentWithTab","EditorView","event","state","EditorState","editorView","transaction","watch","value","modelValue","selection","range","extensions","readonly","disabled","prevLanguage","pevReadonly","pevDisabled","effects","languageExt","_d","_c","onMounted","onUnmounted","_component_OrCodeControl","_createSlots","_hoisted_1","_component_OrIconButton","_component_OrModal"],"mappings":"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"}
1
+ {"version":3,"file":"OrCode-CVTfoJyM.mjs","sources":["../../../components/or-code-v3/src/styles.ts","../../../components/or-code-v3/src/partials/OrCodeControl.vue","../../../components/or-code-v3/src/props.ts","../../../components/or-code-v3/src/OrCode.vue"],"sourcesContent":["export const Code: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const CodeControlRoot: string[] = [\n // Layout\n 'layout-column',\n\n // Sizing\n 'h-full',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const CodeControl: string[] = [\n // Layout\n 'grid',\n\n // Box\n 'w-full',\n 'h-full',\n\n // Spacing\n '!mx-0',\n '!my-0',\n\n // Theme\n 'theme-background-transparent',\n\n // todo: https://onereach.atlassian.net/browse/UI-580\n 'dark:invert dark:hue-rotate-180',\n];\n\nexport const CodeModal: string[] = [\n // Sizing\n '!h-full',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrLabel\n :control-id=\"controlId\"\n :variant=\"'input'\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n\n <OrInputBox\n :class=\"['grow']\"\n :size=\"'m'\"\n :invalid=\"!!error || !!$slots.error\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n >\n <div\n :ref=\"'control'\"\n :class=\"controlStyles\"\n />\n </OrInputBox>\n\n <template v-if=\"$slots.hint || hint\">\n <OrHint\n v-show=\"!error\"\n :disabled=\"disabled\"\n >\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n </OrHint>\n </template>\n\n <OrError\n v-show=\"typeof error === 'string' && error.length > 0 || $slots.error\"\n :disabled=\"disabled\"\n >\n <slot name=\"error\">\n {{ error }}\n </slot>\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { OrErrorV3 as OrError } from '@onereach/ui-components.or-error-v3';\nimport { OrHintV3 as OrHint } from '@onereach/ui-components.or-hint-v3';\nimport { OrInputBoxV3 as OrInputBox } from '@onereach/ui-components.or-input-box-v3';\nimport { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { computed, defineComponent, ref } from 'vue';\n\nimport { CodeControl, CodeControlRoot } from '../styles';\n\nexport default defineComponent({\n name: 'OrCodeControl',\n\n components: {\n OrError,\n OrHint,\n OrInputBox,\n OrLabel,\n },\n\n props: {\n error: {\n type: [String, Boolean],\n default: undefined,\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n controlId: {\n type: String,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n },\n\n expose: [\n 'root',\n 'control',\n\n 'focus',\n 'blur',\n ],\n\n setup() {\n // Refs\n const root = ref<HTMLElement>();\n const control = ref<HTMLElement>();\n\n // Methods\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n // Styles\n const rootStyles = computed(() => [\n 'or-code-control-v3',\n ...CodeControlRoot,\n ]);\n\n const controlStyles = computed(() => [\n ...CodeControl,\n ]);\n\n return {\n root,\n control,\n rootStyles,\n controlStyles,\n focus,\n blur,\n };\n },\n});\n</script>\n","export enum CodeLanguage {\n HTML = 'html',\n CSS = 'css',\n JS = 'js',\n TS = 'ts',\n JSON = 'json',\n MD = 'md',\n}\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <OrCodeControl\n :ref=\"'control'\"\n :control-id=\"controlAttributes.id\"\n :label=\"label\"\n :hint=\"hint\"\n :error=\"error\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n >\n <template v-slot:label>\n <slot name=\"label\">\n {{ label }}\n </slot>\n </template>\n <template v-slot:addon>\n <div :class=\"['layout-row', 'gap-xs']\">\n <slot name=\"addon\" />\n\n <OrIconButton\n v-if=\"enableFullscreen\"\n :icon=\"'fullscreen'\"\n @click.stop=\"openFullscreen()\"\n />\n </div>\n </template>\n <template v-slot:hint>\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n </template>\n <template\n v-if=\"$slots.error\"\n v-slot:error\n >\n <slot name=\"error\" />\n </template>\n </OrCodeControl>\n\n <OrModal\n :ref=\"'modal'\"\n :additional-styles=\"modalStyles\"\n :size=\"'l'\"\n >\n <template v-slot:header>\n <slot name=\"label\">\n {{ label }}\n </slot>\n </template>\n\n <OrCodeControl\n :ref=\"'fullscreenControl'\"\n :control-id=\"controlAttributes.id\"\n :hint=\"hint\"\n :error=\"error\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n >\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n <template\n v-if=\"$slots.error\"\n v-slot:error\n >\n <slot name=\"error\" />\n </template>\n </OrCodeControl>\n\n <template\n v-if=\"$slots.modalFooter\"\n v-slot:footer\n >\n <slot name=\"modalFooter\" />\n </template>\n </OrModal>\n </div>\n</template>\n\n<script lang=\"ts\">\n\n/* Codemirror core */\n\nimport { indentWithTab } from '@codemirror/commands';\nimport { Compartment, EditorState, Extension } from '@codemirror/state';\nimport { EditorView, keymap } from '@codemirror/view';\nimport { useControlAttributes, useIdAttribute, useProxyModelValue, useTheme, useValidationAttributes } from '@onereach/ui-components-common/hooks';\n\n/* Components */\nimport { OrIconButtonV3 as OrIconButton } from '@onereach/ui-components.or-icon-button-v3';\nimport { OrModalV3 as OrModal } from '@onereach/ui-components.or-modal-v3';\nimport { basicSetup } from 'codemirror';\nimport { PropType, computed, defineComponent, onMounted, onUnmounted, reactive, ref, toRef, watch } from 'vue';\n\nimport OrCodeControl from './partials/OrCodeControl.vue';\nimport { CodeLanguage } from './props';\nimport { Code, CodeControl, CodeModal } from './styles';\n\nexport default defineComponent({\n name: 'OrCode',\n\n components: {\n OrModal,\n OrCodeControl,\n OrIconButton,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: String,\n default: undefined,\n },\n\n language: {\n type: String as PropType<CodeLanguage>,\n default: () => CodeLanguage.JS,\n },\n\n extensions: {\n type: Array as PropType<Extension[]>,\n default: () => [],\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: [String, Boolean],\n default: undefined,\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n // todo: review flag prop, seems better to set 'false' default value\n enableFullscreen: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'input',\n 'keydown',\n 'keyup',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'editorView',\n 'control',\n 'fullscreenControl',\n 'modal',\n\n 'focus',\n 'blur',\n 'openFullscreen',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n const control = ref<InstanceType<typeof OrCodeControl>>();\n const fullscreenControl = ref<InstanceType<typeof OrCodeControl>>();\n\n const modal = ref<InstanceType<typeof OrModal>>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-code-v3',\n ...Code,\n ]);\n\n const controlStyles = computed(() => [\n ...CodeControl,\n ]);\n\n const modalStyles = computed(() => [\n ...CodeModal,\n ]);\n\n const addedExtensionCompartment = new Compartment();\n const languageExtensionCompartment = new Compartment();\n const readonlyExtensionCompartment = new Compartment();\n const disabledExtensionCompartment = new Compartment();\n\n // State\n const controlAttributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n ...useValidationAttributes(),\n });\n\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const getLanguageExtension = async (language: CodeLanguage) => {\n switch (language) {\n case CodeLanguage.HTML:\n return (await import('@codemirror/lang-html')).html();\n\n case CodeLanguage.CSS:\n return (await import('@codemirror/lang-css')).css();\n\n case CodeLanguage.JS:\n return (await import('@codemirror/lang-javascript')).javascript();\n\n case CodeLanguage.TS:\n return (await import('@codemirror/lang-javascript')).javascript({ typescript: true });\n\n case CodeLanguage.JSON:\n return (await import('@codemirror/lang-json')).json();\n\n case CodeLanguage.MD:\n return (await import('@codemirror/lang-markdown')).markdown();\n }\n };\n\n // Methods\n function focus(): void {\n (control.value?.focus as unknown as () => void)?.();\n }\n\n function blur(): void {\n (control.value?.blur as unknown as () => void)?.();\n }\n\n function openFullscreen(): void {\n (modal.value?.open as unknown as () => void)?.();\n }\n\n // #region Codemirror\n const theme = useTheme();\n const defaultExtensions = [\n basicSetup,\n\n keymap.of([\n indentWithTab,\n ]),\n\n EditorView.domEventHandlers({\n input: (event) => {\n context.emit('input', event);\n },\n\n keydown: (event) => {\n context.emit('keydown', event);\n },\n\n keyup: (event) => {\n context.emit('keyup', event);\n },\n\n focus: (event) => {\n context.emit('focus', event);\n },\n\n blur: (event) => {\n context.emit('blur', event);\n },\n }),\n\n EditorView.theme({\n '&': {\n overflow: 'hidden',\n\n color: theme.textColor['on-background'],\n backgroundColor: 'transparent',\n },\n\n '&.cm-focused': {\n outline: 'none',\n },\n\n '.cm-scroller': {\n fontFamily: theme.fontFamily['caption'],\n fontWeight: theme.fontWeight['caption'],\n fontSize: theme.fontSize['caption'],\n lineHeight: theme.lineHeight['caption'],\n },\n\n '.cm-gutters': {\n color: theme.textColor['on-background'],\n backgroundColor: theme.backgroundColor['primary-opacity-0-12'],\n borderColor: theme.borderColor['outline'],\n\n backdropFilter: 'blur(2px)',\n },\n\n '.cm-activeLineGutter, .cm-activeLine': {\n backgroundColor: theme.backgroundColor['primary-opacity-0-08'],\n },\n }),\n ];\n\n const state = EditorState.create({\n doc: proxyModelValue.value,\n\n extensions: [\n ...defaultExtensions,\n languageExtensionCompartment.of([]),\n addedExtensionCompartment.of(props.extensions),\n readonlyExtensionCompartment.of([EditorState.readOnly.of(props.readonly)]),\n disabledExtensionCompartment.of([EditorView.editable.of(!props.disabled)]),\n ],\n });\n\n const editorView = new EditorView({\n state,\n\n dispatch: (transaction) => {\n editorView.update([\n transaction,\n ]);\n\n if (transaction.docChanged) {\n proxyModelValue.value = String(editorView.state.doc);\n }\n },\n });\n\n watch(proxyModelValue, (value) => {\n if (editorView.composing) return;\n if (editorView.state.doc.toString() === value) return;\n\n const modelValue = value ?? '';\n const { selection } = editorView.state;\n\n editorView!.dispatch({\n changes: {\n from: 0,\n to: editorView!.state.doc.length,\n insert: modelValue,\n },\n\n selection: selection.ranges.some((range) => range.to > modelValue.length) ? { anchor: modelValue.length } : selection,\n });\n });\n\n watch([\n () => props.extensions,\n () => props.language,\n () => props.readonly,\n () => props.disabled,\n ], async ([extensions, language, readonly, disabled], [, prevLanguage, pevReadonly, pevDisabled]) => {\n let effects = [];\n\n if (readonly !== pevReadonly) {\n effects.push(readonlyExtensionCompartment.reconfigure(EditorState.readOnly.of(readonly)));\n }\n\n if (disabled !== pevDisabled) {\n effects.push(disabledExtensionCompartment.reconfigure(EditorView.editable.of(!disabled)));\n }\n\n if (language !== prevLanguage) {\n const languageExt = await getLanguageExtension(language as CodeLanguage);\n\n effects.push(languageExtensionCompartment.reconfigure([languageExt]));\n }\n\n effects.push(addedExtensionCompartment.reconfigure(extensions));\n\n editorView!.dispatch({ effects });\n }, { immediate: true });\n // #endregion\n\n // Effects\n watch(() => modal.value?.state, (value) => {\n setTimeout(() => {\n if (value === 'open') {\n (fullscreenControl.value?.control as unknown as HTMLElement)?.append(editorView.dom);\n } else {\n (control.value?.control as unknown as HTMLElement)?.append(editorView.dom);\n }\n });\n });\n\n // Lifecycle\n onMounted(() => {\n (control.value?.control as unknown as HTMLElement)?.append(editorView.dom);\n });\n\n onUnmounted(() => {\n editorView.destroy();\n });\n\n return {\n root,\n editorView,\n control,\n fullscreenControl,\n modal,\n rootStyles,\n controlStyles,\n modalStyles,\n controlAttributes,\n proxyModelValue,\n focus,\n blur,\n openFullscreen,\n };\n },\n});\n</script>\n"],"names":["Code","CodeControlRoot","CodeControl","CodeModal","_sfc_main$1","defineComponent","OrError","OrHint","OrInputBox","OrLabel","root","ref","control","focus","_a","blur","rootStyles","computed","controlStyles","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_component_OrLabel","_renderSlot","_createVNode","_component_OrInputBox","_withCtx","_createElementVNode","_withDirectives","_createBlock","_component_OrHint","_createCommentVNode","_component_OrError","CodeLanguage","_sfc_main","OrModal","OrCodeControl","OrIconButton","props","context","fullscreenControl","modal","modalStyles","addedExtensionCompartment","Compartment","languageExtensionCompartment","readonlyExtensionCompartment","disabledExtensionCompartment","controlAttributes","reactive","useIdAttribute","useControlAttributes","useValidationAttributes","proxyModelValue","useProxyModelValue","toRef","getLanguageExtension","language","_b","openFullscreen","theme","useTheme","defaultExtensions","basicSetup","keymap","indentWithTab","EditorView","event","state","EditorState","editorView","transaction","watch","value","modelValue","selection","range","extensions","readonly","disabled","prevLanguage","pevReadonly","pevDisabled","effects","languageExt","_d","_c","onMounted","onUnmounted","_component_OrCodeControl","_createSlots","_hoisted_1","_component_OrIconButton","_component_OrModal"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { O } from "./OrError-B5ihH6-3.mjs";
2
2
  import { O as $ } from "./OrHint-NvbZyURY.mjs";
3
- import { a as g } from "./OrInputBox.vue_vue_type_script_lang-CJ5X0_FT.mjs";
3
+ import { a as g } from "./OrInputBox.vue_vue_type_script_lang-q2L7rmth.mjs";
4
4
  import { defineComponent as C, ref as S, computed as p, resolveComponent as t, openBlock as n, createElementBlock as B, normalizeClass as u, createBlock as m, withCtx as o, renderSlot as r, createTextVNode as i, toDisplayString as l, createCommentVNode as f, createElementVNode as w, withDirectives as b, vShow as v, createVNode as q } from "vue";
5
5
  import { O as E } from "./OrLabel-K7_HgvcK.mjs";
6
6
  import { _ as k } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
@@ -15,14 +15,14 @@ const z = [
15
15
  // Box
16
16
  "w-full",
17
17
  // Position (.or-input-box-v3)
18
- "children:[&_.or-input-box-v3]:relative",
18
+ "[&_.or-input-box-v3]:children:relative",
19
19
  // Position (.or-input-box-v3/focus)
20
- "[&_.or-input-box-v3:focus-within>*]:z-10",
20
+ "focus-within:[&_.or-input-box-v3]:children:z-10",
21
21
  // Spacing (.or-input-box-v3)
22
- "children:[&:not(:first-child)]:[&_.or-input-box-v3]:-ml-[1px]",
22
+ "[&_.or-input-box-v3]:[&:not(:first-child)]:children:-ml-[1px]",
23
23
  // Shape (.or-input-box-v3)
24
- "children:[&:not(:first-child)]:[&_.or-input-box-v3]:rounded-l-0",
25
- "children:[&:not(:last-child)]:[&_.or-input-box-v3]:rounded-r-0"
24
+ "[&_.or-input-box-v3]:[&:not(:first-child)]:children:rounded-l-0",
25
+ "[&_.or-input-box-v3]:[&:not(:last-child)]:children:rounded-r-0"
26
26
  ], V = C({
27
27
  name: "OrCombinedInput",
28
28
  components: {
@@ -80,7 +80,7 @@ const z = [
80
80
  }
81
81
  });
82
82
  function N(e, d, a, s, G, H) {
83
- const c = t("OrLabel"), y = t("OrHint"), h = t("OrError");
83
+ const c = t("OrLabel"), h = t("OrHint"), y = t("OrError");
84
84
  return n(), B("div", {
85
85
  ref: "root",
86
86
  class: u(e.rootStyles)
@@ -113,7 +113,7 @@ function N(e, d, a, s, G, H) {
113
113
  disabled: e.disabled
114
114
  })
115
115
  ], 2),
116
- e.$slots.hint || e.hint ? b((n(), m(y, {
116
+ e.$slots.hint || e.hint ? b((n(), m(h, {
117
117
  key: 1,
118
118
  disabled: e.disabled
119
119
  }, {
@@ -126,7 +126,7 @@ function N(e, d, a, s, G, H) {
126
126
  }, 8, ["disabled"])), [
127
127
  [v, !e.error]
128
128
  ]) : f("", !0),
129
- b(q(h, { disabled: e.disabled }, {
129
+ b(q(y, { disabled: e.disabled }, {
130
130
  default: o(() => [
131
131
  i(l(e.error), 1)
132
132
  ]),
@@ -140,4 +140,4 @@ const J = /* @__PURE__ */ k(V, [["render", N]]);
140
140
  export {
141
141
  J as O
142
142
  };
143
- //# sourceMappingURL=OrCombinedInput-pzorWu6M.mjs.map
143
+ //# sourceMappingURL=OrCombinedInput-BNkXzDBe.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrCombinedInput-BNkXzDBe.mjs","sources":["../../../components/or-combined-input-v3/src/styles.ts","../../../components/or-combined-input-v3/src/OrCombinedInput.vue"],"sourcesContent":["export const CombinedInput: string[] = [\n // Layout\n 'layout-column',\n\n // Spacing\n 'gap-xs',\n];\n\nexport const CombinedInputControlGroup: string[] = [\n // Layout\n 'layout-row',\n\n // Box\n 'w-full',\n\n // Position (.or-input-box-v3)\n '[&_.or-input-box-v3]:children:relative',\n\n // Position (.or-input-box-v3/focus)\n 'focus-within:[&_.or-input-box-v3]:children:z-10',\n\n // Spacing (.or-input-box-v3)\n '[&_.or-input-box-v3]:[&:not(:first-child)]:children:-ml-[1px]',\n\n // Shape (.or-input-box-v3)\n '[&_.or-input-box-v3]:[&:not(:first-child)]:children:rounded-l-0',\n '[&_.or-input-box-v3]:[&:not(:last-child)]:children:rounded-r-0',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"$slots.label || $slots.addon || label\">\n <OrLabel\n :variant=\"'input'\"\n :required=\"required\"\n :disabled=\"disabled\"\n >\n <slot name=\"label\">\n {{ label }}\n </slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n </template>\n\n <div :class=\"controlGroup\">\n <slot\n :variant=\"variant\"\n :size=\"size\"\n :error=\"!!error\"\n :required=\"required\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n />\n </div>\n\n <template v-if=\"$slots.hint || hint\">\n <OrHint\n v-show=\"!error\"\n :disabled=\"disabled\"\n >\n <slot name=\"hint\">\n {{ hint }}\n </slot>\n </OrHint>\n </template>\n\n <OrError\n v-show=\"typeof error === 'string' && error.length > 0\"\n :disabled=\"disabled\"\n >\n {{ error }}\n </OrError>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { OrErrorV3 as OrError } from '@onereach/ui-components.or-error-v3';\nimport { OrHintV3 as OrHint } from '@onereach/ui-components.or-hint-v3';\nimport { InputBoxSize, InputBoxVariant } from '@onereach/ui-components.or-input-box-v3';\nimport { OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { computed, defineComponent, PropType, ref } from 'vue';\n\nimport { CombinedInput, CombinedInputControlGroup } from './styles';\n\nexport default defineComponent({\n name: 'OrCombinedInput',\n\n components: {\n OrError,\n OrHint,\n OrLabel,\n },\n\n props: {\n variant: {\n type: String as PropType<`${InputBoxVariant}`>,\n default: undefined,\n },\n\n size: {\n type: String as PropType<`${InputBoxSize}`>,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n hint: {\n type: String,\n default: undefined,\n },\n\n error: {\n type: [String, Boolean],\n default: undefined,\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n },\n\n setup(props) {\n // Refs\n const root = ref<HTMLElement>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-combined-input-v3',\n ...CombinedInput,\n ...props.variant === InputBoxVariant.Embedded ? ['grow'] : [],\n ]);\n\n const controlGroup = computed(() => [\n ...CombinedInputControlGroup,\n ]);\n\n return {\n root,\n rootStyles,\n controlGroup,\n };\n },\n});\n</script>\n"],"names":["CombinedInput","CombinedInputControlGroup","_sfc_main","defineComponent","OrError","OrHint","OrLabel","props","root","ref","rootStyles","computed","InputBoxVariant","controlGroup","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createBlock","_component_OrLabel","_renderSlot","_createCommentVNode","_createElementVNode","_component_OrHint","_withDirectives","_createVNode","_component_OrError","_withCtx"],"mappings":";;;;;;AAAO,MAAMA,IAA0B;AAAA;AAAA,EAErC;AAAA;AAAA,EAGA;AACF,GAEaC,IAAsC;AAAA;AAAA,EAEjD;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AACF,GCkCAC,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,SAAAC;AAAA,IACA,QAAAC;AAAA,IACA,SAAAC;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM,CAAC,QAAQ,OAAO;AAAA,MACtB,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,MAAMC,GAAO;AAEX,UAAMC,IAAOC,KAGPC,IAAaC,EAAS,MAAM;AAAA,MAChC;AAAA,MACA,GAAGX;AAAA,MACH,GAAGO,EAAM,YAAYK,EAAgB,WAAW,CAAC,MAAM,IAAI,CAAC;AAAA,IAAA,CAC7D,GAEKC,IAAeF,EAAS,MAAM;AAAA,MAClC,GAAGV;AAAA,IAAA,CACJ;AAEM,WAAA;AAAA,MACL,MAAAO;AAAA,MACA,YAAAE;AAAA,MACA,cAAAG;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;+CApICC,EAgDM,SAAA;SA9CEC,EAAY,GAAAC,EAAA,OAAA;AAAA,IAAA,KAAA;AAAA,IAEF,OAAAC,EAAgBC,EAAO,UAAA;AAAA,EAAA,GAAA;AAAA,wDAElBC,EAAAC,GAAA;AAAA,MAChB,KAAA;AAAA,MACA,SAAQ;AAAA,MAAA,UAAAF,EAAA;AAAA,MAMQ,UAAKA,EAAA;AAAA,IAAA,GAAA;AAAA;QAFfG,EAAAH,EAAA,QAAA,OAAA;AAAA,MAAA,CAAA;AAAA;;;;;;OAiBL,GAAA,CAAA,YAAA,UAAA,CAAA,KATAI,EAAK,IAAE,EAAA;AAAA,IAAAC,EAAA,OAAA;AAAA,MACX,OAOEN,EAAAC,EAAA,YAAA;AAAA,IAAA,GAAA;AAAA,QALOA,EAAI,QAAA,WAAA;AAAA,QACV,SAASA,EAAA;AAAA,QACT,MAAUA,EAAA;AAAA,QACV,QAAQ,CAAEA,EAAA;AAAA,QACV,UAAUA,EAAA;AAAA,QAAA,UAAAA,EAAA;AAAA;MAIC,CAAA;AAAA,IAAA,GAAA,CAAA;AAAA,iCAGDH,EAAQ,GAAAI,EAAAK,GAAA;AAAA,MAAA,KAAA;AAAA;;;;;;;;;;IAYV,CAAA,IAAAF,EAAA,IAAA,EAAA;AAAA,IAAHG,EAAAC,EAAAC,GAAA,EAAA,UAAAT,EAAA,YAAA;AAAA,MAAA,SAAAU,EAAA,MAAA;AAAA;;;;;;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { usePopoverState as H } from "@onereach/ui-components-common/hooks";
2
2
  import { O as K } from "./OrButton-ZxDr22t7.mjs";
3
3
  import { a as $ } from "./OrButton.vue_vue_type_script_lang-CkMyXNEI.mjs";
4
- import { O as M } from "./OrInput-B7gtqbPo.mjs";
4
+ import { O as M } from "./OrInput-CzRxZM3i.mjs";
5
5
  import { O as R } from "./OrOverlay-BzbAwvpo.mjs";
6
6
  import { O as U } from "./OrText-3zAJU5xf.mjs";
7
7
  import { useMagicKeys as G, whenever as J, onClickOutside as Q } from "@vueuse/core";
@@ -288,4 +288,4 @@ export {
288
288
  u as C,
289
289
  So as O
290
290
  };
291
- //# sourceMappingURL=OrConfirm-BrgS7882.mjs.map
291
+ //# sourceMappingURL=OrConfirm-CeUSyKEp.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"OrConfirm-BrgS7882.mjs","sources":["../../../components/or-confirm-v3/src/props.ts","../../../components/or-confirm-v3/src/styles.ts","../../../components/or-confirm-v3/src/OrConfirm.vue"],"sourcesContent":["export enum ConfirmType {\n D = 'd', // destructive / dangerous\n C = 'c', // consequential / common\n}\n","import { ConfirmType } from './props';\n\nexport const Confirm: string[] = [\n // Position\n 'fixed md:static',\n\n 'left-0',\n 'right-0',\n 'bottom-0',\n\n // Layout\n 'layout-column',\n\n // Box\n 'w-full md:w-[theme(tokens.confirm-dialog-width)]',\n\n // Spacing\n 'px-lg',\n 'py-lg',\n\n 'gap-md',\n\n // Shape\n 'md:rounded-md',\n\n // Elevation\n 'shadow-modal',\n 'dark:shadow-modal-dark',\n\n // Typography\n 'typography-body-2-regular',\n\n // Theme\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-foreground-default',\n 'dark:theme-foreground-default-dark',\n];\n\nexport const ConfirmHeader: string[] = [\n // Layout\n 'layout-row justify-between',\n\n // Typography\n 'typography-headline-3',\n];\n\nexport const ConfirmInput: string[] = [\n // Box\n 'w-full',\n\n // Spacing\n 'mt-md',\n];\n\nexport const ConfirmFooter: string[] = [\n // Spacing\n 'gap-md',\n];\n\nexport const ConfirmFooterTypes: Record<ConfirmType, string[]> = {\n [ConfirmType.C]: [\n // Layout\n 'layout-row',\n ],\n\n [ConfirmType.D]: [\n // Layout\n 'layout-row-reverse',\n ],\n};\n\nexport const ConfirmFooterButtons: string[] = [\n // Layout\n '!grow',\n\n // Box\n 'w-auto md:w-[theme(tokens.confirm-dialog-action-width)]',\n];\n","<template>\n <OrOverlay\n v-if=\"state === 'open'\"\n :fullscreen=\"true\"\n >\n <div\n v-bind=\"$attrs\"\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :role=\"'alertdialog'\"\n >\n <div :class=\"headerStyles\">\n <slot name=\"header\">\n <OrText\n :text=\"titleText\"\n :slice-index=\"4\"\n />\n </slot>\n </div>\n\n <div class=\"grow\">\n <div class=\"overflow-y-auto overflow-x-hidden\">\n <slot />\n </div>\n <div\n v-if=\"confirmationText\"\n :class=\"inputBoxStyles\"\n >\n <OrInput\n :ref=\"'confirmationInput'\"\n v-model=\"confirmationValue\"\n :label=\"textConfirmationLabel\"\n :placeholder=\"textConfirmationPlaceholder\"\n @focus=\"onInputFocus\"\n @blur=\"onInputBlur\"\n />\n </div>\n </div>\n\n <slot\n name=\"footer\"\n :confirm=\"confirm\"\n :cancel=\"close\"\n >\n <div :class=\"footerStyles\">\n <OrButton\n :class=\"buttonsStyles\"\n :variant=\"'outlined'\"\n :disabled=\"loading\"\n @click=\"close()\"\n >\n {{ cancelButtonText }}\n </OrButton>\n\n <OrButton\n :ref=\"'confirmationButton'\"\n :class=\"buttonsStyles\"\n :color=\"confirmButtonColor\"\n :loading=\"loading\"\n :disabled=\"isConfirmationButtonDisabled\"\n @click=\"onConfirmClick\"\n >\n {{ confirmButtonText }}\n </OrButton>\n </div>\n </slot>\n </div>\n </OrOverlay>\n</template>\n\n<script lang=\"ts\">\nimport { usePopoverState } from '@onereach/ui-components-common/hooks';\nimport { ButtonColor, OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrInputV3 as OrInput } from '@onereach/ui-components.or-input-v3';\nimport { OrOverlayV3 as OrOverlay } from '@onereach/ui-components.or-overlay-v3';\nimport { OrTextV3 as OrText } from '@onereach/ui-components.or-text-v3';\nimport { onClickOutside, useMagicKeys, whenever } from '@vueuse/core';\nimport { logicAnd } from '@vueuse/math';\nimport { PropType, computed, defineComponent, ref, toRef, watch } from 'vue';\n\nimport { ConfirmType } from './props';\nimport { Confirm, ConfirmFooter, ConfirmFooterButtons, ConfirmFooterTypes, ConfirmHeader, ConfirmInput } from './styles';\n\nexport default defineComponent({\n name: 'OrConfirm',\n\n components: {\n OrOverlay,\n OrButton,\n OrInput,\n OrText,\n },\n\n inheritAttrs: false,\n\n props: {\n isOpen: {\n type: Boolean,\n default: false,\n },\n\n titleText: {\n type: String,\n required: false,\n default: null,\n },\n\n confirmButtonText: {\n type: String,\n default: 'Confirm',\n },\n\n autoCloseOnConfirm: {\n type: Boolean,\n default: true,\n },\n\n closeOnClickOutside: {\n type: Boolean,\n default: true,\n },\n\n cancelButtonText: {\n type: String,\n default: 'Cancel',\n },\n\n confirmType: {\n type: String as PropType<`${ConfirmType}`>,\n default: () => ConfirmType.C,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n required: false,\n default: false,\n },\n\n confirmationText: {\n type: String,\n default: undefined,\n },\n\n textConfirmationLabel: {\n type: String,\n default: undefined,\n },\n\n textConfirmationPlaceholder: {\n type: String,\n default: undefined,\n },\n },\n\n emits: [\n 'update:state',\n\n 'open',\n 'close',\n 'confirm',\n ],\n\n expose: [\n 'root',\n\n 'state',\n\n 'open',\n 'close',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n\n const confirmationInput = ref<InstanceType<typeof OrInput>>();\n const confirmationButton = ref<InstanceType<typeof OrButton>>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-confirm-v3',\n ...Confirm,\n ]);\n\n const headerStyles = computed(() => [\n ...ConfirmHeader,\n ]);\n\n const inputBoxStyles = computed(() => [\n ...ConfirmInput,\n ]);\n\n const footerStyles = computed(() => [\n ...ConfirmFooter,\n ...ConfirmFooterTypes[props.confirmType],\n ]);\n\n const buttonsStyles = computed(() => [\n ...ConfirmFooterButtons,\n ]);\n\n // State\n const { state, open, close } = usePopoverState(toRef(props, 'isOpen'), context.emit);\n const isInputActive = ref(false);\n const confirmationValue = ref('');\n\n watch(state, () => {\n confirmationValue.value = '';\n });\n\n const { escape, enter } = useMagicKeys();\n\n const isInvalid = computed(() => {\n return !!props.confirmationText && props.confirmationText !== confirmationValue.value;\n });\n\n const isConfirmationButtonDisabled = computed(() => !!props.disabled || isInvalid.value);\n\n const confirmButtonColor = computed(() =>\n props.confirmType === ConfirmType.C ? ButtonColor.Primary : ButtonColor.Danger,\n );\n\n // Methods\n function confirm(): void {\n if (!props.disabled && !isInvalid.value) {\n context.emit('confirm');\n }\n }\n\n function onInputFocus(): void {\n isInputActive.value = true;\n }\n\n function onInputBlur(): void {\n isInputActive.value = false;\n }\n\n function onConfirmClick(): void {\n confirm();\n if (props.autoCloseOnConfirm) {\n close();\n }\n }\n // Events\n watch(escape, (val) => {\n if (val) close();\n });\n\n // types here are used for fixing TS2349\n watch(confirmationInput as any, (val: InstanceType<typeof OrInput>) =>\n (val?.focus as (() => void) | undefined)?.());\n\n // types here are used for fixing TS2349\n watch(confirmationButton as any, (val: InstanceType<typeof OrButton>) => {\n if (val && !props.confirmationText) {\n const button = val.root as HTMLButtonElement | undefined;\n button?.focus();\n }\n });\n\n whenever(logicAnd(enter, isInputActive), () => confirm());\n\n // #region Click Outside\n onClickOutside(root, () => {\n props.closeOnClickOutside ? close() : undefined;\n });\n // #endregion\n\n return {\n root,\n confirmationInput,\n confirmationButton,\n confirmationValue,\n confirmButtonColor,\n isInvalid,\n isConfirmationButtonDisabled,\n state,\n isInputActive,\n escape,\n rootStyles,\n headerStyles,\n inputBoxStyles,\n footerStyles,\n buttonsStyles,\n confirm,\n onConfirmClick,\n open,\n close,\n onInputFocus,\n onInputBlur,\n };\n },\n});\n</script>\n"],"names":["ConfirmType","Confirm","ConfirmHeader","ConfirmInput","ConfirmFooter","ConfirmFooterTypes","ConfirmFooterButtons","_sfc_main","defineComponent","OrOverlay","OrButton","OrInput","OrText","props","context","root","ref","confirmationInput","confirmationButton","rootStyles","computed","headerStyles","inputBoxStyles","footerStyles","buttonsStyles","state","open","close","usePopoverState","toRef","isInputActive","confirmationValue","watch","escape","enter","useMagicKeys","isInvalid","isConfirmationButtonDisabled","confirmButtonColor","ButtonColor","confirm","onInputFocus","onInputBlur","onConfirmClick","val","_a","button","whenever","logicAnd","onClickOutside","_component_OrOverlay","_resolveComponent","_ctx","_openBlock","_createBlock","_withCtx","_createElementVNode","_mergeProps","_normalizeClass","_createVNode","_component_OrText","_hoisted_1","_hoisted_2","_renderSlot","_createElementBlock","_component_OrInput","_cache","$event","_createCommentVNode","_component_OrButton"],"mappings":"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"}
1
+ {"version":3,"file":"OrConfirm-CeUSyKEp.mjs","sources":["../../../components/or-confirm-v3/src/props.ts","../../../components/or-confirm-v3/src/styles.ts","../../../components/or-confirm-v3/src/OrConfirm.vue"],"sourcesContent":["export enum ConfirmType {\n D = 'd', // destructive / dangerous\n C = 'c', // consequential / common\n}\n","import { ConfirmType } from './props';\n\nexport const Confirm: string[] = [\n // Position\n 'fixed md:static',\n\n 'left-0',\n 'right-0',\n 'bottom-0',\n\n // Layout\n 'layout-column',\n\n // Box\n 'w-full md:w-[theme(tokens.confirm-dialog-width)]',\n\n // Spacing\n 'px-lg',\n 'py-lg',\n\n 'gap-md',\n\n // Shape\n 'md:rounded-md',\n\n // Elevation\n 'shadow-modal',\n 'dark:shadow-modal-dark',\n\n // Typography\n 'typography-body-2-regular',\n\n // Theme\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-foreground-default',\n 'dark:theme-foreground-default-dark',\n];\n\nexport const ConfirmHeader: string[] = [\n // Layout\n 'layout-row justify-between',\n\n // Typography\n 'typography-headline-3',\n];\n\nexport const ConfirmInput: string[] = [\n // Box\n 'w-full',\n\n // Spacing\n 'mt-md',\n];\n\nexport const ConfirmFooter: string[] = [\n // Spacing\n 'gap-md',\n];\n\nexport const ConfirmFooterTypes: Record<ConfirmType, string[]> = {\n [ConfirmType.C]: [\n // Layout\n 'layout-row',\n ],\n\n [ConfirmType.D]: [\n // Layout\n 'layout-row-reverse',\n ],\n};\n\nexport const ConfirmFooterButtons: string[] = [\n // Layout\n '!grow',\n\n // Box\n 'w-auto md:w-[theme(tokens.confirm-dialog-action-width)]',\n];\n","<template>\n <OrOverlay\n v-if=\"state === 'open'\"\n :fullscreen=\"true\"\n >\n <div\n v-bind=\"$attrs\"\n :ref=\"'root'\"\n :class=\"rootStyles\"\n :role=\"'alertdialog'\"\n >\n <div :class=\"headerStyles\">\n <slot name=\"header\">\n <OrText\n :text=\"titleText\"\n :slice-index=\"4\"\n />\n </slot>\n </div>\n\n <div class=\"grow\">\n <div class=\"overflow-y-auto overflow-x-hidden\">\n <slot />\n </div>\n <div\n v-if=\"confirmationText\"\n :class=\"inputBoxStyles\"\n >\n <OrInput\n :ref=\"'confirmationInput'\"\n v-model=\"confirmationValue\"\n :label=\"textConfirmationLabel\"\n :placeholder=\"textConfirmationPlaceholder\"\n @focus=\"onInputFocus\"\n @blur=\"onInputBlur\"\n />\n </div>\n </div>\n\n <slot\n name=\"footer\"\n :confirm=\"confirm\"\n :cancel=\"close\"\n >\n <div :class=\"footerStyles\">\n <OrButton\n :class=\"buttonsStyles\"\n :variant=\"'outlined'\"\n :disabled=\"loading\"\n @click=\"close()\"\n >\n {{ cancelButtonText }}\n </OrButton>\n\n <OrButton\n :ref=\"'confirmationButton'\"\n :class=\"buttonsStyles\"\n :color=\"confirmButtonColor\"\n :loading=\"loading\"\n :disabled=\"isConfirmationButtonDisabled\"\n @click=\"onConfirmClick\"\n >\n {{ confirmButtonText }}\n </OrButton>\n </div>\n </slot>\n </div>\n </OrOverlay>\n</template>\n\n<script lang=\"ts\">\nimport { usePopoverState } from '@onereach/ui-components-common/hooks';\nimport { ButtonColor, OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrInputV3 as OrInput } from '@onereach/ui-components.or-input-v3';\nimport { OrOverlayV3 as OrOverlay } from '@onereach/ui-components.or-overlay-v3';\nimport { OrTextV3 as OrText } from '@onereach/ui-components.or-text-v3';\nimport { onClickOutside, useMagicKeys, whenever } from '@vueuse/core';\nimport { logicAnd } from '@vueuse/math';\nimport { PropType, computed, defineComponent, ref, toRef, watch } from 'vue';\n\nimport { ConfirmType } from './props';\nimport { Confirm, ConfirmFooter, ConfirmFooterButtons, ConfirmFooterTypes, ConfirmHeader, ConfirmInput } from './styles';\n\nexport default defineComponent({\n name: 'OrConfirm',\n\n components: {\n OrOverlay,\n OrButton,\n OrInput,\n OrText,\n },\n\n inheritAttrs: false,\n\n props: {\n isOpen: {\n type: Boolean,\n default: false,\n },\n\n titleText: {\n type: String,\n required: false,\n default: null,\n },\n\n confirmButtonText: {\n type: String,\n default: 'Confirm',\n },\n\n autoCloseOnConfirm: {\n type: Boolean,\n default: true,\n },\n\n closeOnClickOutside: {\n type: Boolean,\n default: true,\n },\n\n cancelButtonText: {\n type: String,\n default: 'Cancel',\n },\n\n confirmType: {\n type: String as PropType<`${ConfirmType}`>,\n default: () => ConfirmType.C,\n },\n\n loading: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n required: false,\n default: false,\n },\n\n confirmationText: {\n type: String,\n default: undefined,\n },\n\n textConfirmationLabel: {\n type: String,\n default: undefined,\n },\n\n textConfirmationPlaceholder: {\n type: String,\n default: undefined,\n },\n },\n\n emits: [\n 'update:state',\n\n 'open',\n 'close',\n 'confirm',\n ],\n\n expose: [\n 'root',\n\n 'state',\n\n 'open',\n 'close',\n ],\n\n setup(props, context) {\n // Refs\n const root = ref<HTMLElement>();\n\n const confirmationInput = ref<InstanceType<typeof OrInput>>();\n const confirmationButton = ref<InstanceType<typeof OrButton>>();\n\n // Styles\n const rootStyles = computed(() => [\n 'or-confirm-v3',\n ...Confirm,\n ]);\n\n const headerStyles = computed(() => [\n ...ConfirmHeader,\n ]);\n\n const inputBoxStyles = computed(() => [\n ...ConfirmInput,\n ]);\n\n const footerStyles = computed(() => [\n ...ConfirmFooter,\n ...ConfirmFooterTypes[props.confirmType],\n ]);\n\n const buttonsStyles = computed(() => [\n ...ConfirmFooterButtons,\n ]);\n\n // State\n const { state, open, close } = usePopoverState(toRef(props, 'isOpen'), context.emit);\n const isInputActive = ref(false);\n const confirmationValue = ref('');\n\n watch(state, () => {\n confirmationValue.value = '';\n });\n\n const { escape, enter } = useMagicKeys();\n\n const isInvalid = computed(() => {\n return !!props.confirmationText && props.confirmationText !== confirmationValue.value;\n });\n\n const isConfirmationButtonDisabled = computed(() => !!props.disabled || isInvalid.value);\n\n const confirmButtonColor = computed(() =>\n props.confirmType === ConfirmType.C ? ButtonColor.Primary : ButtonColor.Danger,\n );\n\n // Methods\n function confirm(): void {\n if (!props.disabled && !isInvalid.value) {\n context.emit('confirm');\n }\n }\n\n function onInputFocus(): void {\n isInputActive.value = true;\n }\n\n function onInputBlur(): void {\n isInputActive.value = false;\n }\n\n function onConfirmClick(): void {\n confirm();\n if (props.autoCloseOnConfirm) {\n close();\n }\n }\n // Events\n watch(escape, (val) => {\n if (val) close();\n });\n\n // types here are used for fixing TS2349\n watch(confirmationInput as any, (val: InstanceType<typeof OrInput>) =>\n (val?.focus as (() => void) | undefined)?.());\n\n // types here are used for fixing TS2349\n watch(confirmationButton as any, (val: InstanceType<typeof OrButton>) => {\n if (val && !props.confirmationText) {\n const button = val.root as HTMLButtonElement | undefined;\n button?.focus();\n }\n });\n\n whenever(logicAnd(enter, isInputActive), () => confirm());\n\n // #region Click Outside\n onClickOutside(root, () => {\n props.closeOnClickOutside ? close() : undefined;\n });\n // #endregion\n\n return {\n root,\n confirmationInput,\n confirmationButton,\n confirmationValue,\n confirmButtonColor,\n isInvalid,\n isConfirmationButtonDisabled,\n state,\n isInputActive,\n escape,\n rootStyles,\n headerStyles,\n inputBoxStyles,\n footerStyles,\n buttonsStyles,\n confirm,\n onConfirmClick,\n open,\n close,\n onInputFocus,\n onInputBlur,\n };\n },\n});\n</script>\n"],"names":["ConfirmType","Confirm","ConfirmHeader","ConfirmInput","ConfirmFooter","ConfirmFooterTypes","ConfirmFooterButtons","_sfc_main","defineComponent","OrOverlay","OrButton","OrInput","OrText","props","context","root","ref","confirmationInput","confirmationButton","rootStyles","computed","headerStyles","inputBoxStyles","footerStyles","buttonsStyles","state","open","close","usePopoverState","toRef","isInputActive","confirmationValue","watch","escape","enter","useMagicKeys","isInvalid","isConfirmationButtonDisabled","confirmButtonColor","ButtonColor","confirm","onInputFocus","onInputBlur","onConfirmClick","val","_a","button","whenever","logicAnd","onClickOutside","_component_OrOverlay","_resolveComponent","_ctx","_openBlock","_createBlock","_withCtx","_createElementVNode","_mergeProps","_normalizeClass","_createVNode","_component_OrText","_hoisted_1","_hoisted_2","_renderSlot","_createElementBlock","_component_OrInput","_cache","$event","_createCommentVNode","_component_OrButton"],"mappings":";;;;;;;;;;AAAY,IAAAA,sBAAAA,OACVA,EAAA,IAAI,KACJA,EAAA,IAAI,KAFMA,IAAAA,KAAA,CAAA,CAAA;ACEL,MAAMC,KAAoB;AAAA;AAAA,EAE/B;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EAEA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AACF,GAEaC,KAA0B;AAAA;AAAA,EAErC;AAAA;AAAA,EAGA;AACF,GAEaC,KAAyB;AAAA;AAAA,EAEpC;AAAA;AAAA,EAGA;AACF,GAEaC,KAA0B;AAAA;AAAA,EAErC;AACF,GAEaC,KAAoD;AAAA,EAC/D,CAACL,EAAY,CAAC,GAAG;AAAA;AAAA,IAEf;AAAA,EACF;AAAA,EAEA,CAACA,EAAY,CAAC,GAAG;AAAA;AAAA,IAEf;AAAA,EACF;AACF,GAEaM,KAAiC;AAAA;AAAA,EAE5C;AAAA;AAAA,EAGA;AACF,GCIAC,KAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,WAAAC;AAAA,IACA,UAAAC;AAAA,IACA,SAAAC;AAAA,IACA,QAAAC;AAAA,EACF;AAAA,EAEA,cAAc;AAAA,EAEd,OAAO;AAAA,IACL,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,WAAW;AAAA,MACT,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACX;AAAA,IAEA,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,oBAAoB;AAAA,MAClB,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,qBAAqB;AAAA,MACnB,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,aAAa;AAAA,MACX,MAAM;AAAA,MACN,SAAS,MAAMZ,EAAY;AAAA,IAC7B;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,UAAU;AAAA,MACV,SAAS;AAAA,IACX;AAAA,IAEA,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,uBAAuB;AAAA,MACrB,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,6BAA6B;AAAA,MAC3B,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,MAAMa,GAAOC,GAAS;AAEpB,UAAMC,IAAOC,KAEPC,IAAoBD,KACpBE,IAAqBF,KAGrBG,IAAaC,EAAS,MAAM;AAAA,MAChC;AAAA,MACA,GAAGnB;AAAA,IAAA,CACJ,GAEKoB,IAAeD,EAAS,MAAM;AAAA,MAClC,GAAGlB;AAAA,IAAA,CACJ,GAEKoB,IAAiBF,EAAS,MAAM;AAAA,MACpC,GAAGjB;AAAA,IAAA,CACJ,GAEKoB,IAAeH,EAAS,MAAM;AAAA,MAClC,GAAGhB;AAAA,MACH,GAAGC,GAAmBQ,EAAM,WAAW;AAAA,IAAA,CACxC,GAEKW,IAAgBJ,EAAS,MAAM;AAAA,MACnC,GAAGd;AAAA,IAAA,CACJ,GAGK,EAAE,OAAAmB,GAAO,MAAAC,GAAM,OAAAC,EAAM,IAAIC,EAAgBC,EAAMhB,GAAO,QAAQ,GAAGC,EAAQ,IAAI,GAC7EgB,IAAgBd,EAAI,EAAK,GACzBe,IAAoBf,EAAI,EAAE;AAEhC,IAAAgB,EAAMP,GAAO,MAAM;AACjB,MAAAM,EAAkB,QAAQ;AAAA,IAAA,CAC3B;AAED,UAAM,EAAE,QAAAE,GAAQ,OAAAC,EAAM,IAAIC,EAAa,GAEjCC,IAAYhB,EAAS,MAClB,CAAC,CAACP,EAAM,oBAAoBA,EAAM,qBAAqBkB,EAAkB,KACjF,GAEKM,IAA+BjB,EAAS,MAAM,CAAC,CAACP,EAAM,YAAYuB,EAAU,KAAK,GAEjFE,IAAqBlB;AAAA,MAAS,MAClCP,EAAM,gBAAgBb,EAAY,IAAIuC,EAAY,UAAUA,EAAY;AAAA,IAAA;AAI1E,aAASC,IAAgB;AACvB,MAAI,CAAC3B,EAAM,YAAY,CAACuB,EAAU,SAChCtB,EAAQ,KAAK,SAAS;AAAA,IAE1B;AAEA,aAAS2B,IAAqB;AAC5B,MAAAX,EAAc,QAAQ;AAAA,IACxB;AAEA,aAASY,IAAoB;AAC3B,MAAAZ,EAAc,QAAQ;AAAA,IACxB;AAEA,aAASa,IAAuB;AACtB,MAAAH,KACJ3B,EAAM,sBACFc;IAEV;AAEM,WAAAK,EAAAC,GAAQ,CAACW,MAAQ;AACrB,MAAIA,KAAWjB;IAAA,CAChB,GAGDK,EAAMf,GAA0B,CAAC2B,MAC9B;;AAAA,cAAAC,IAAAD,KAAA,gBAAAA,EAAK,UAAL,gBAAAC,EAAA,KAAAD;AAAA,KAA2C,GAGxCZ,EAAAd,GAA2B,CAAC0B,MAAuC;AACnE,UAAAA,KAAO,CAAC/B,EAAM,kBAAkB;AAClC,cAAMiC,IAASF,EAAI;AACnB,QAAAE,KAAA,QAAAA,EAAQ;AAAA,MACV;AAAA,IAAA,CACD,GAEDC,EAASC,EAASd,GAAOJ,CAAa,GAAG,MAAMU,GAAS,GAGxDS,EAAelC,GAAM,MAAM;AACnB,MAAAF,EAAA,uBAAsBc,EAAU;AAAA,IAAA,CACvC,GAGM;AAAA,MACL,MAAAZ;AAAA,MACA,mBAAAE;AAAA,MACA,oBAAAC;AAAA,MACA,mBAAAa;AAAA,MACA,oBAAAO;AAAA,MACA,WAAAF;AAAA,MACA,8BAAAC;AAAA,MACA,OAAAZ;AAAA,MACA,eAAAK;AAAA,MACA,QAAAG;AAAA,MACA,YAAAd;AAAA,MACA,cAAAE;AAAA,MACA,gBAAAC;AAAA,MACA,cAAAC;AAAA,MACA,eAAAC;AAAA,MACA,SAAAgB;AAAA,MACA,gBAAAG;AAAA,MACA,MAAAjB;AAAA,MACA,OAAAC;AAAA,MACA,cAAAc;AAAA,MACA,aAAAC;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;8DAvScQ,IAAAC,EAAA,WAAA;AACA,SAAAC,EAAA,UAAA,UAAAC,EAAA,GAAEC,EAAIJ,GAAA;AAAA,IAAA,KAAA;AAAA;;aAITK,EAAM,MAAA;AAAA,MAAAC,EACJ,OAAUC,EAAAL,EAAA,QAAA;AAAA,QACjB,KAAI;AAAA,QAAA,OAAAA,EAAA;AAAA,QAEL,MAAA;AAAA,MAAA,CAAM,GAAA;AAAA,QAAAI,EAAA,OAAA;AAAA,UACJ,OAKOE,EAAAN,EAAA,YAAA;AAAA,QAAA,GAAA;AAAA,YAHIA,EAAS,QAAA,UAAA,CAAA,GAAA,MAAA;AAAA,YAAAO,EACfC,GAAc;AAAA,cAAA,MAAAR,EAAA;AAAA;;UAKrB,CAAA;AAAA,QACE,GAAA,CAAA;AAAA,QACUI,EAAA,OAAAK,IAAA;AAAA,UAAAL,EAAA,OAAAM,IAAA;AAAA,YAGFC,EAAgBX,EAAA,QAAA,SAAA;AAAA,UAAA,CAAA;AAAA,qCACdY,GAAA,OAAA;AAAA,YAAA,KAAA;AAAA,YAER,OAOEN,EAAAN,EAAA,cAAA;AAAA,UAAA,GAAA;AAAA,YALSO,EAAAM,GAAA;AAAA,cAAA,KAAA;AAAA,cACR,YAAOb,EAAA;AAAA,cACP,uBAAac,EAA2B,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAf,EAAA,oBAAAe;AAAA,cACxC,OAAKf,EAAE;AAAA,cACP,aAAMA,EAAA;AAAA,cAAA,SAAAA,EAAA;AAAA;;mBAKbgB,EA0BO,IAAA,EAAA;AAAA,QAAA,CAAA;AAAA,UAvBIhB,EAAK,QAAA,UAAA;AAAA,UAuBT,SAAAA,EAAA;AAAA,UArBL,QAAAA,EAAA;AAAA,QAAA,GAAW,MAAA;AAAA,UAAAI,EAAA,OAAA;AAAA,YACT,OAOWE,EAAAN,EAAA,YAAA;AAAA,UAAA,GAAA;AAAA,cALCiB,GAAU;AAAA,cACnB,OAAiBX,EAAAN,EAAA,aAAA;AAAA,cACjB,SAAK;AAAA,cAAA,UAAAA,EAAA;AAAA,cAEgB,SAAAc,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAf,EAAA;YAAA,GAAA;AAAA;;;cAGxB,GAAA;AAAA,YACG,GAAA,GAAG,CAAE,SAAoB,UAAA,CAAA;AAAA,YAAAO,EACpBU,GAAE;AAAA,cACP,KAAK;AAAA,cACL,OAAOX,EAASN,EAAA,aAAA;AAAA,cAChB,OAAUA,EAAA;AAAA,cACV,SAAOA,EAAA;AAAA,cAAA,UAAAA,EAAA;AAAA;;;;;;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { usePopoverState as d } from "@onereach/ui-components-common/hooks";
2
- import { O as g } from "./OrMenu-DdcBdA4v.mjs";
3
- import { a as O } from "./OrPopover-DsFw4mp2.mjs";
2
+ import { O as g } from "./OrMenu-Cc6IzYWK.mjs";
3
+ import { a as O } from "./OrPopover-DDoG-KKY.mjs";
4
4
  import { defineComponent as C, toRefs as v, watch as M, ref as p, resolveComponent as x, openBlock as y, createBlock as B, withCtx as P, renderSlot as $ } from "vue";
5
5
  import "@onereach/ui-components-common/utils";
6
6
  import "@floating-ui/dom";
@@ -84,4 +84,4 @@ const W = /* @__PURE__ */ S(b, [["render", h]]);
84
84
  export {
85
85
  W as O
86
86
  };
87
- //# sourceMappingURL=OrContextMenu-DPkHnqgT.mjs.map
87
+ //# sourceMappingURL=OrContextMenu-DcT0nnkQ.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"OrContextMenu-DPkHnqgT.mjs","sources":["../../../components/or-context-menu-v3/src/OrContextMenu.vue"],"sourcesContent":["<template>\n <OrMenu\n :is-open=\"state === 'open'\"\n :trigger=\"triggerPoint\"\n :placement=\"placement\"\n :offset=\"offset\"\n @update:state=\"$event === 'open' ? open() : close()\"\n >\n <slot :reference=\"reference\" />\n </OrMenu>\n</template>\n\n<script lang=\"ts\">\nimport { VirtualElement } from '@floating-ui/dom';\nimport { usePopoverState } from '@onereach/ui-components-common/hooks';\nimport { OrMenuV3 as OrMenu } from '@onereach/ui-components.or-menu-v3';\nimport { PopoverOffset, PopoverPlacement } from '@onereach/ui-components.or-popover-v3';\nimport { PropType, defineComponent, ref, toRefs, watch } from 'vue';\n\nexport default defineComponent({\n name: 'OrContextMenu',\n\n components: {\n OrMenu,\n },\n\n props: {\n trigger: {\n type: Object as PropType<HTMLElement>,\n default: undefined,\n },\n\n placement: {\n type: String as PropType<`${PopoverPlacement}`>,\n default: () => PopoverPlacement.BottomStart,\n },\n\n offset: {\n type: [Number, Object, Function] as PropType<PopoverOffset>,\n default: 0,\n },\n\n externalControl: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:state',\n\n 'open',\n 'close',\n ],\n\n expose: [\n 'state',\n\n 'open',\n 'openWith',\n 'close',\n 'toggle',\n ],\n\n setup(props, context) {\n // Props\n const { trigger } = toRefs(props);\n\n watch(trigger, (trigger, prevTrigger) => {\n if (trigger) {\n trigger.addEventListener('contextmenu', onContextMenu);\n }\n\n if (prevTrigger) {\n prevTrigger.removeEventListener('contextmenu', onContextMenu);\n }\n }, { immediate: true });\n\n // State\n const { state, open, close, toggle } = usePopoverState(ref(false), context.emit);\n\n const reference = ref<any>();\n\n const triggerPoint = ref<VirtualElement>();\n\n // Handlers\n function onContextMenu(event: MouseEvent): void {\n event.preventDefault();\n\n triggerPoint.value = {\n getBoundingClientRect: () => new DOMRect(event.x, event.y),\n };\n\n if (!props.externalControl) {\n open();\n }\n }\n\n // Methods\n function openWith(value?: any): void {\n reference.value = value;\n\n open();\n }\n\n return {\n state,\n reference,\n\n open,\n openWith,\n close,\n toggle,\n\n triggerPoint,\n };\n },\n});\n</script>\n"],"names":["_sfc_main","defineComponent","OrMenu","PopoverPlacement","props","context","trigger","toRefs","watch","prevTrigger","onContextMenu","state","open","close","toggle","usePopoverState","ref","reference","triggerPoint","event","openWith","value","_resolveComponent","_openBlock","_createBlock","_component_OrMenu","_ctx","_cache","$event"],"mappings":";;;;;;;AAmBA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,QAAAC;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS,MAAMC,EAAiB;AAAA,IAClC;AAAA,IAEA,QAAQ;AAAA,MACN,MAAM,CAAC,QAAQ,QAAQ,QAAQ;AAAA,MAC/B,SAAS;AAAA,IACX;AAAA,IAEA,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,MAAMC,GAAOC,GAAS;AAEpB,UAAM,EAAE,SAAAC,EAAA,IAAYC,EAAOH,CAAK;AAE1B,IAAAI,EAAAF,GAAS,CAACA,GAASG,MAAgB;AACvC,MAAIH,KACFA,EAAQ,iBAAiB,eAAeI,CAAa,GAGnDD,KACUA,EAAA,oBAAoB,eAAeC,CAAa;AAAA,IAC9D,GACC,EAAE,WAAW,GAAA,CAAM;AAGhB,UAAA,EAAE,OAAAC,GAAO,MAAAC,GAAM,OAAAC,GAAO,QAAAC,EAAW,IAAAC,EAAgBC,EAAI,EAAK,GAAGX,EAAQ,IAAI,GAEzEY,IAAYD,KAEZE,IAAeF;AAGrB,aAASN,EAAcS,GAAyB;AAC9C,MAAAA,EAAM,eAAe,GAErBD,EAAa,QAAQ;AAAA,QACnB,uBAAuB,MAAM,IAAI,QAAQC,EAAM,GAAGA,EAAM,CAAC;AAAA,MAAA,GAGtDf,EAAM,mBACJQ;IAET;AAGA,aAASQ,EAASC,GAAmB;AACnC,MAAAJ,EAAU,QAAQI,GAEbT;IACP;AAEO,WAAA;AAAA,MACL,OAAAD;AAAA,MACA,WAAAM;AAAA,MAEA,MAAAL;AAAA,MACA,UAAAQ;AAAA,MACA,OAAAP;AAAA,MACA,QAAAC;AAAA,MAEA,cAAAI;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;YApHCI,EAQS,QAAA;AANN,SAAAC,EAAA,GAAqBC,EAAAC,GAAA;AAAA,IACrB,WAAWC,EAAS,UAAA;AAAA,IACpB,SAAQA,EAAA;AAAA,IACR,WAAYA,EAAA;AAAA,IAAA,QAAAA,EAAA;AAAA,sBAEbC,EAA+B,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAA,MAAA,SAAAF,EAAA,KAAA,IAAAA,EAAA,MAAA;AAAA,EAAA,GAAA;AAAA;;;;;;;"}
1
+ {"version":3,"file":"OrContextMenu-DcT0nnkQ.mjs","sources":["../../../components/or-context-menu-v3/src/OrContextMenu.vue"],"sourcesContent":["<template>\n <OrMenu\n :is-open=\"state === 'open'\"\n :trigger=\"triggerPoint\"\n :placement=\"placement\"\n :offset=\"offset\"\n @update:state=\"$event === 'open' ? open() : close()\"\n >\n <slot :reference=\"reference\" />\n </OrMenu>\n</template>\n\n<script lang=\"ts\">\nimport { VirtualElement } from '@floating-ui/dom';\nimport { usePopoverState } from '@onereach/ui-components-common/hooks';\nimport { OrMenuV3 as OrMenu } from '@onereach/ui-components.or-menu-v3';\nimport { PopoverOffset, PopoverPlacement } from '@onereach/ui-components.or-popover-v3';\nimport { PropType, defineComponent, ref, toRefs, watch } from 'vue';\n\nexport default defineComponent({\n name: 'OrContextMenu',\n\n components: {\n OrMenu,\n },\n\n props: {\n trigger: {\n type: Object as PropType<HTMLElement>,\n default: undefined,\n },\n\n placement: {\n type: String as PropType<`${PopoverPlacement}`>,\n default: () => PopoverPlacement.BottomStart,\n },\n\n offset: {\n type: [Number, Object, Function] as PropType<PopoverOffset>,\n default: 0,\n },\n\n externalControl: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:state',\n\n 'open',\n 'close',\n ],\n\n expose: [\n 'state',\n\n 'open',\n 'openWith',\n 'close',\n 'toggle',\n ],\n\n setup(props, context) {\n // Props\n const { trigger } = toRefs(props);\n\n watch(trigger, (trigger, prevTrigger) => {\n if (trigger) {\n trigger.addEventListener('contextmenu', onContextMenu);\n }\n\n if (prevTrigger) {\n prevTrigger.removeEventListener('contextmenu', onContextMenu);\n }\n }, { immediate: true });\n\n // State\n const { state, open, close, toggle } = usePopoverState(ref(false), context.emit);\n\n const reference = ref<any>();\n\n const triggerPoint = ref<VirtualElement>();\n\n // Handlers\n function onContextMenu(event: MouseEvent): void {\n event.preventDefault();\n\n triggerPoint.value = {\n getBoundingClientRect: () => new DOMRect(event.x, event.y),\n };\n\n if (!props.externalControl) {\n open();\n }\n }\n\n // Methods\n function openWith(value?: any): void {\n reference.value = value;\n\n open();\n }\n\n return {\n state,\n reference,\n\n open,\n openWith,\n close,\n toggle,\n\n triggerPoint,\n };\n },\n});\n</script>\n"],"names":["_sfc_main","defineComponent","OrMenu","PopoverPlacement","props","context","trigger","toRefs","watch","prevTrigger","onContextMenu","state","open","close","toggle","usePopoverState","ref","reference","triggerPoint","event","openWith","value","_resolveComponent","_openBlock","_createBlock","_component_OrMenu","_ctx","_cache","$event"],"mappings":";;;;;;;AAmBA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EAEN,YAAY;AAAA,IACV,QAAAC;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS,MAAMC,EAAiB;AAAA,IAClC;AAAA,IAEA,QAAQ;AAAA,MACN,MAAM,CAAC,QAAQ,QAAQ,QAAQ;AAAA,MAC/B,SAAS;AAAA,IACX;AAAA,IAEA,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AAAA,EAEA,OAAO;AAAA,IACL;AAAA,IAEA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,MAAMC,GAAOC,GAAS;AAEpB,UAAM,EAAE,SAAAC,EAAA,IAAYC,EAAOH,CAAK;AAE1B,IAAAI,EAAAF,GAAS,CAACA,GAASG,MAAgB;AACvC,MAAIH,KACFA,EAAQ,iBAAiB,eAAeI,CAAa,GAGnDD,KACUA,EAAA,oBAAoB,eAAeC,CAAa;AAAA,IAC9D,GACC,EAAE,WAAW,GAAA,CAAM;AAGhB,UAAA,EAAE,OAAAC,GAAO,MAAAC,GAAM,OAAAC,GAAO,QAAAC,EAAW,IAAAC,EAAgBC,EAAI,EAAK,GAAGX,EAAQ,IAAI,GAEzEY,IAAYD,KAEZE,IAAeF;AAGrB,aAASN,EAAcS,GAAyB;AAC9C,MAAAA,EAAM,eAAe,GAErBD,EAAa,QAAQ;AAAA,QACnB,uBAAuB,MAAM,IAAI,QAAQC,EAAM,GAAGA,EAAM,CAAC;AAAA,MAAA,GAGtDf,EAAM,mBACJQ;IAET;AAGA,aAASQ,EAASC,GAAmB;AACnC,MAAAJ,EAAU,QAAQI,GAEbT;IACP;AAEO,WAAA;AAAA,MACL,OAAAD;AAAA,MACA,WAAAM;AAAA,MAEA,MAAAL;AAAA,MACA,UAAAQ;AAAA,MACA,OAAAP;AAAA,MACA,QAAAC;AAAA,MAEA,cAAAI;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;YApHCI,EAQS,QAAA;AANN,SAAAC,EAAA,GAAqBC,EAAAC,GAAA;AAAA,IACrB,WAAWC,EAAS,UAAA;AAAA,IACpB,SAAQA,EAAA;AAAA,IACR,WAAYA,EAAA;AAAA,IAAA,QAAAA,EAAA;AAAA,sBAEbC,EAA+B,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAA,MAAA,SAAAF,EAAA,KAAA,IAAAA,EAAA,MAAA;AAAA,EAAA,GAAA;AAAA;;;;;;;"}
@@ -1,24 +1,24 @@
1
1
  import { flatten as Se } from "@onereach/ui-components-common/helpers";
2
- import { O as fe } from "./OrCheckbox-BOjpvXxF.mjs";
3
- import { O as Ce } from "./OrIconButton-BuRmTHpT.mjs";
4
- import { O as Te } from "./OrPagination-ePWsnwsu.mjs";
5
- import { O as Ge } from "./OrSearch-Bk-OZj06.mjs";
2
+ import { O as fe } from "./OrCheckbox-B_121oYu.mjs";
3
+ import { O as Ce } from "./OrIconButton-D1pxfMA_.mjs";
4
+ import { O as Te } from "./OrPagination-DRBRRL2g.mjs";
5
+ import { O as Ge } from "./OrSearch-Csld1hBq.mjs";
6
6
  import { O as Ve } from "./OrSkeletonArea.vue_vue_type_script_lang-jgRhbZ0X.mjs";
7
7
  import { defineComponent as M, ref as T, computed as r, openBlock as n, createElementBlock as b, normalizeClass as u, renderSlot as m, createCommentVNode as k, resolveComponent as v, normalizeStyle as K, createBlock as O, watch as ge, onUnmounted as Ie, createElementVNode as le, withModifiers as ae, createVNode as P, mergeProps as Me, withCtx as $, reactive as ue, onMounted as Re, createSlots as oe, normalizeProps as We, guardReactiveProps as Ee, Fragment as ee, renderList as te, createTextVNode as re, toDisplayString as se } from "vue";
8
8
  import { useElementSize as ze, useDebounceFn as me, useResizeObserver as Fe } from "@vueuse/core";
9
9
  import { _ as R } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
10
- import { O as He } from "./OrDatePicker-Bf9CdxNp.mjs";
11
- import { O as je } from "./OrDateTimePicker-itTCNryF.mjs";
12
- import "./OrDateTimePicker.vue_vue_type_script_lang-Cvenftkt.mjs";
10
+ import { O as He } from "./OrDatePicker-Ifk1LBLg.mjs";
11
+ import { O as je } from "./OrDateTimePicker-D9QS_dRK.mjs";
12
+ import "./OrDateTimePicker.vue_vue_type_script_lang-8aFx3wpJ.mjs";
13
13
  import "@onereach/ui-components-common/types";
14
- import { O as Pe } from "./OrInput-B7gtqbPo.mjs";
14
+ import { O as Pe } from "./OrInput-CzRxZM3i.mjs";
15
15
  import { O as Ne } from "./OrRating-CAwz23JA.mjs";
16
- import { O as Ue } from "./OrSelect-DguQ28_x.mjs";
17
- import { O as Ae } from "./OrSwitch-IqjDSZBa.mjs";
18
- import { O as Le } from "./OrTagInput-pvlecpHE.mjs";
19
- import { O as qe } from "./OrTimePicker-CgfdcXpZ.mjs";
16
+ import { O as Ue } from "./OrSelect-DBhNKmRX.mjs";
17
+ import { O as Ae } from "./OrSwitch-BtoXDsZx.mjs";
18
+ import { O as Le } from "./OrTagInput-DIMSvMNK.mjs";
19
+ import { O as qe } from "./OrTimePicker-C_pYA5Yn.mjs";
20
20
  import { O as Be } from "./OrIcon-k8cyvh-D.mjs";
21
- import { O as Ke } from "./OrNotification-BfguyG3y.mjs";
21
+ import { O as Ke } from "./OrNotification-DObxgRie.mjs";
22
22
  const Xe = [
23
23
  // Layout
24
24
  "layout-row",
@@ -1944,4 +1944,4 @@ export {
1944
1944
  ca as q,
1945
1945
  ha as r
1946
1946
  };
1947
- //# sourceMappingURL=OrDataGrid-Dp5pb_w8.mjs.map
1947
+ //# sourceMappingURL=OrDataGrid-BJiaRanm.mjs.map