@nhtio/lucid-resourceful-vue-components 0.1.0-master-dc6af70b → 0.1.0-master-54839a90

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 (160) hide show
  1. package/{VBtn-CEYzcx0y.mjs → VBtn-C4WCntKg.mjs} +7 -7
  2. package/{VBtn-CEYzcx0y.mjs.map → VBtn-C4WCntKg.mjs.map} +1 -1
  3. package/{VDatePicker-BHcvHHhM.mjs → VDatePicker-DOCNk-HL.mjs} +61 -61
  4. package/{VDatePicker-BHcvHHhM.mjs.map → VDatePicker-DOCNk-HL.mjs.map} +1 -1
  5. package/{VEmptyState-CkYtN0q5.mjs → VEmptyState-CfouFZTg.mjs} +51 -51
  6. package/{VEmptyState-CkYtN0q5.mjs.map → VEmptyState-CfouFZTg.mjs.map} +1 -1
  7. package/{VHover-Bj6QrQff.mjs → VHover-DvUhdfsL.mjs} +3 -3
  8. package/{VHover-Bj6QrQff.mjs.map → VHover-DvUhdfsL.mjs.map} +1 -1
  9. package/{VListItem-BnxAmKd_.mjs → VListItem-BT-NXJyi.mjs} +36 -36
  10. package/{VListItem-BnxAmKd_.mjs.map → VListItem-BT-NXJyi.mjs.map} +1 -1
  11. package/{VMenu-BSB7YSpb.mjs → VMenu-Bk2NN8qb.mjs} +3 -3
  12. package/{VMenu-BSB7YSpb.mjs.map → VMenu-Bk2NN8qb.mjs.map} +1 -1
  13. package/{VPicker-DMOVvCIE.mjs → VPicker-DmY6CdER.mjs} +4 -4
  14. package/{VPicker-DMOVvCIE.mjs.map → VPicker-DmY6CdER.mjs.map} +1 -1
  15. package/{VRadioGroup-ByydeX8x.mjs → VRadioGroup-BO7XdtLS.mjs} +15 -15
  16. package/{VRadioGroup-ByydeX8x.mjs.map → VRadioGroup-BO7XdtLS.mjs.map} +1 -1
  17. package/{VRow-Dmn82Xaa.mjs → VRow-BhNJcY5-.mjs} +7 -7
  18. package/{VRow-Dmn82Xaa.mjs.map → VRow-BhNJcY5-.mjs.map} +1 -1
  19. package/{VSheet-B9ALb0PQ.mjs → VSheet-Bkr-m6FE.mjs} +2 -2
  20. package/{VSheet-B9ALb0PQ.mjs.map → VSheet-Bkr-m6FE.mjs.map} +1 -1
  21. package/{actions-BEmdy8bu.mjs → actions-ORUmfJR5.mjs} +14 -14
  22. package/{actions-BEmdy8bu.mjs.map → actions-ORUmfJR5.mjs.map} +1 -1
  23. package/{alert-DftADRGk.mjs → alert-pFT7pWTZ.mjs} +97 -94
  24. package/alert-pFT7pWTZ.mjs.map +1 -0
  25. package/{bigint-DiC37zMo.mjs → bigint-CCM0aPaS.mjs} +6 -6
  26. package/{bigint-DiC37zMo.mjs.map → bigint-CCM0aPaS.mjs.map} +1 -1
  27. package/{boolean-DZDryWHA.mjs → boolean-1-MOJPSu.mjs} +43 -43
  28. package/{boolean-DZDryWHA.mjs.map → boolean-1-MOJPSu.mjs.map} +1 -1
  29. package/{clipboard--JAZokR3.mjs → clipboard-CdGABqm1.mjs} +49 -49
  30. package/{clipboard--JAZokR3.mjs.map → clipboard-CdGABqm1.mjs.map} +1 -1
  31. package/{colorUtils-I1lKouL3.mjs → colorUtils-BdpqbLZS.mjs} +3 -3
  32. package/{colorUtils-I1lKouL3.mjs.map → colorUtils-BdpqbLZS.mjs.map} +1 -1
  33. package/{common-BDwb9uGU.mjs → common-Bi5RUD-n.mjs} +13 -13
  34. package/{common-BDwb9uGU.mjs.map → common-Bi5RUD-n.mjs.map} +1 -1
  35. package/{component-C-qp70Rp.mjs → component-DhEJuSE6.mjs} +2 -2
  36. package/{component-C-qp70Rp.mjs.map → component-DhEJuSE6.mjs.map} +1 -1
  37. package/components/autorefresh_controller.mjs +1 -1
  38. package/components/control_button.mjs +1 -1
  39. package/components/control_button_bar.mjs +2 -2
  40. package/components/control_menu.mjs +1 -1
  41. package/components/custom_field.mjs +1 -1
  42. package/components/exporter.mjs +1 -1
  43. package/components/fields/bigint.mjs +1 -1
  44. package/components/fields/boolean.mjs +1 -1
  45. package/components/fields/date.mjs +1 -1
  46. package/components/fields/date_time.mjs +1 -1
  47. package/components/fields/enum.mjs +1 -1
  48. package/components/fields/integer.mjs +1 -1
  49. package/components/fields/number.mjs +1 -1
  50. package/components/fields/string.mjs +1 -1
  51. package/components/fields/unsigned_integer.mjs +1 -1
  52. package/components/fields.mjs +9 -9
  53. package/components/form_with_validation.mjs +1 -1
  54. package/components/resourceful_alerter.mjs +1 -1
  55. package/components/resourceful_index.mjs +1 -1
  56. package/components/resourceful_record.mjs +2 -2
  57. package/components/resourceful_record_default_form.mjs +1 -1
  58. package/components/resourceful_record_form.mjs +1 -1
  59. package/components/sortable.mjs +1 -1
  60. package/components/svg_icon.mjs +1 -1
  61. package/components/timezone_picker.mjs +1 -1
  62. package/components.mjs +23 -23
  63. package/composables.mjs +11 -11
  64. package/{console-CAez8ceh.mjs → console-Dgoi3FwV.mjs} +2 -2
  65. package/{console-CAez8ceh.mjs.map → console-Dgoi3FwV.mjs.map} +1 -1
  66. package/{custom-Tm6_792A.mjs → custom-DQmbYYPh.mjs} +21 -21
  67. package/{custom-Tm6_792A.mjs.map → custom-DQmbYYPh.mjs.map} +1 -1
  68. package/{date-CxaBVvlO.mjs → date-E_8RP3gK.mjs} +21 -21
  69. package/{date-CxaBVvlO.mjs.map → date-E_8RP3gK.mjs.map} +1 -1
  70. package/{date_time-DhABUkGT.mjs → date_time-BmYl2TFi.mjs} +348 -348
  71. package/{date_time-DhABUkGT.mjs.map → date_time-BmYl2TFi.mjs.map} +1 -1
  72. package/{display-DazBkrbZ.mjs → display-B089h_sz.mjs} +27 -25
  73. package/display-B089h_sz.mjs.map +1 -0
  74. package/{display-DPktlWOz.mjs → display-dv4cOwRN.mjs} +9 -9
  75. package/{display-DPktlWOz.mjs.map → display-dv4cOwRN.mjs.map} +1 -1
  76. package/{display-BdjbLG1_.mjs → display-fXo4JeIS.mjs} +15 -15
  77. package/{display-BdjbLG1_.mjs.map → display-fXo4JeIS.mjs.map} +1 -1
  78. package/{elevation-DFBVIqom.mjs → elevation-YNOj0hSa.mjs} +38 -38
  79. package/{elevation-DFBVIqom.mjs.map → elevation-YNOj0hSa.mjs.map} +1 -1
  80. package/{enum-KB4xPkOL.mjs → enum-8itqseZa.mjs} +22 -22
  81. package/{enum-KB4xPkOL.mjs.map → enum-8itqseZa.mjs.map} +1 -1
  82. package/factories.mjs +1 -1
  83. package/{field_composer-CLJuJevf.mjs → field_composer-ugYyDQNY.mjs} +3 -3
  84. package/{field_composer-CLJuJevf.mjs.map → field_composer-ugYyDQNY.mjs.map} +1 -1
  85. package/{form-9YRVcrxM.mjs → form-BtDnRXYm.mjs} +45 -45
  86. package/{form-9YRVcrxM.mjs.map → form-BtDnRXYm.mjs.map} +1 -1
  87. package/{guards-BrpRx6ly.mjs → guards-Cby4QwzY.mjs} +2 -2
  88. package/{guards-BrpRx6ly.mjs.map → guards-Cby4QwzY.mjs.map} +1 -1
  89. package/guards.mjs +4 -4
  90. package/helpers.mjs +6 -6
  91. package/{index-BkjiQEyJ.mjs → index-3XRUa28C.mjs} +12 -12
  92. package/{index-BkjiQEyJ.mjs.map → index-3XRUa28C.mjs.map} +1 -1
  93. package/{index-DDobJ49b.mjs → index-BCQmj6cf.mjs} +13 -13
  94. package/{index-DDobJ49b.mjs.map → index-BCQmj6cf.mjs.map} +1 -1
  95. package/{index-UxsEIZVi.mjs → index-BgevbZTt.mjs} +10 -10
  96. package/{index-UxsEIZVi.mjs.map → index-BgevbZTt.mjs.map} +1 -1
  97. package/{index-CWwCXXNl.mjs → index-C-PCfO1S.mjs} +2 -2
  98. package/{index-CWwCXXNl.mjs.map → index-C-PCfO1S.mjs.map} +1 -1
  99. package/{index-DBXOwXpe.mjs → index-CSyOYGEi.mjs} +8 -8
  100. package/{index-DBXOwXpe.mjs.map → index-CSyOYGEi.mjs.map} +1 -1
  101. package/{index-DwOjHbRP.mjs → index-D9i1PRci.mjs} +5700 -5697
  102. package/{index-DwOjHbRP.mjs.map → index-D9i1PRci.mjs.map} +1 -1
  103. package/{index-BaOM0Cyz.mjs → index-DWv9iKZs.mjs} +21 -21
  104. package/{index-BaOM0Cyz.mjs.map → index-DWv9iKZs.mjs.map} +1 -1
  105. package/{index-Bs4A8qUO.mjs → index-VpcXNOpn.mjs} +2 -2
  106. package/{index-Bs4A8qUO.mjs.map → index-VpcXNOpn.mjs.map} +1 -1
  107. package/{index-BsazeUn6.mjs → index-fiZltUBs.mjs} +3 -3
  108. package/{index-BsazeUn6.mjs.map → index-fiZltUBs.mjs.map} +1 -1
  109. package/index.mjs +47 -47
  110. package/{integer-uzh0nwpb.mjs → integer-W2_SlKV1.mjs} +5 -5
  111. package/{integer-uzh0nwpb.mjs.map → integer-W2_SlKV1.mjs.map} +1 -1
  112. package/{mdi-C9DbASEx.mjs → mdi-DC1jeTJJ.mjs} +18 -18
  113. package/{mdi-C9DbASEx.mjs.map → mdi-DC1jeTJJ.mjs.map} +1 -1
  114. package/{number-CfHLDQFY.mjs → number-DgwZBxOw.mjs} +85 -85
  115. package/{number-CfHLDQFY.mjs.map → number-DgwZBxOw.mjs.map} +1 -1
  116. package/package.json +32 -32
  117. package/{position-CPuNp03H.mjs → position-B9VPkbhU.mjs} +2 -2
  118. package/{position-CPuNp03H.mjs.map → position-B9VPkbhU.mjs.map} +1 -1
  119. package/private/control-button-bar/props.d.ts +10 -10
  120. package/private/fields/bigint.d.ts +128 -128
  121. package/private/fields/boolean.d.ts +68 -68
  122. package/private/fields/common.d.ts +16 -16
  123. package/private/fields/custom.d.ts +2 -2
  124. package/private/fields/date.d.ts +24 -24
  125. package/private/fields/date_time.d.ts +24 -24
  126. package/private/fields/enum.d.ts +68 -68
  127. package/private/fields/integer.d.ts +107 -107
  128. package/private/fields/multiple.d.ts +17 -17
  129. package/private/fields/number.d.ts +46 -46
  130. package/private/fields/read_mode_renderer.d.ts +17 -17
  131. package/private/fields/string.d.ts +24 -24
  132. package/private/fields/unsigned_integer.d.ts +107 -107
  133. package/private/filtration/filter_group_condition_element.d.ts +36 -36
  134. package/private/resourceful-index/index.d.ts +17 -17
  135. package/private/resourceful-index/partials/_controls.d.ts +1 -1
  136. package/private/resourceful-index/partials/_per_page_selector.d.ts +1 -1
  137. package/private/resourceful-index/props.d.ts +34 -34
  138. package/private/resourceful-record/form.d.ts +12 -12
  139. package/private/resourceful-record/index.d.ts +13 -13
  140. package/private/resourceful-record/props.d.ts +20 -20
  141. package/private/sortable/index.d.ts +1 -1
  142. package/{props-KPFuptNy.mjs → props-COvhL78L.mjs} +8 -8
  143. package/{props-KPFuptNy.mjs.map → props-COvhL78L.mjs.map} +1 -1
  144. package/{props-Cq9daNwa.mjs → props-GYFmAF5-.mjs} +6 -6
  145. package/{props-Cq9daNwa.mjs.map → props-GYFmAF5-.mjs.map} +1 -1
  146. package/{renderers-COT3aAu3.mjs → renderers-BP4li2WT.mjs} +13 -13
  147. package/{renderers-COT3aAu3.mjs.map → renderers-BP4li2WT.mjs.map} +1 -1
  148. package/{string-DvwPf_Ob.mjs → string-RfpfCwEn.mjs} +180 -180
  149. package/{string-DvwPf_Ob.mjs.map → string-RfpfCwEn.mjs.map} +1 -1
  150. package/{unsigned_integer-C9nrNAn_.mjs → unsigned_integer-Cg6tbRJj.mjs} +4 -4
  151. package/{unsigned_integer-C9nrNAn_.mjs.map → unsigned_integer-Cg6tbRJj.mjs.map} +1 -1
  152. package/useRender-CfNJA_8a.mjs +9 -0
  153. package/{useRender-Dpj9Jrbr.mjs.map → useRender-CfNJA_8a.mjs.map} +1 -1
  154. package/{utils-DxV2ZNaE.mjs → utils-D3ZGaTyv.mjs} +50 -50
  155. package/{utils-DxV2ZNaE.mjs.map → utils-D3ZGaTyv.mjs.map} +1 -1
  156. package/{validation-CZ6xx4aX.mjs → validation-BF_JkNWB.mjs} +4 -4
  157. package/{validation-CZ6xx4aX.mjs.map → validation-BF_JkNWB.mjs.map} +1 -1
  158. package/alert-DftADRGk.mjs.map +0 -1
  159. package/display-DazBkrbZ.mjs.map +0 -1
  160. package/useRender-Dpj9Jrbr.mjs +0 -9
@@ -1 +0,0 @@
1
- {"version":3,"file":"alert-DftADRGk.mjs","sources":["../node_modules/.pnpm/@nhtio+vuetifiable@1.20250907.1/node_modules/@nhtio/vuetifiable/components/VEmptyState/VEmptyState.mjs","../src/private/ux/alert.ts"],"sourcesContent":["import { q as createVNode, F as Fragment } from \"../../vue.runtime.esm-bundler-BRffRTPw.mjs\";\nimport { VBtn } from \"../VBtn/VBtn.mjs\";\nimport { VDefaultsProvider } from \"../VDefaultsProvider/VDefaultsProvider.mjs\";\nimport { VIcon } from \"../VIcon/VIcon.mjs\";\nimport { I as IconValue } from \"../../mdi-CVSg0Nll.mjs\";\nimport { VImg } from \"../VImg/VImg.mjs\";\nimport { useBackgroundColor } from \"../../composables/color.mjs\";\nimport { makeComponentProps } from \"../../composables/component.mjs\";\nimport { makeDimensionProps, useDimension } from \"../../composables/dimensions.mjs\";\nimport { useDisplay } from \"../../composables/display.mjs\";\nimport { makeSizeProps } from \"../../composables/size.mjs\";\nimport { makeThemeProps, provideTheme } from \"../../composables/theme.mjs\";\nimport { convertToUnit } from \"../../util/helpers.mjs\";\nimport { genericComponent } from \"../../util/defineComponent.mjs\";\nimport { propsFactory } from \"../../util/propsFactory.mjs\";\nimport { useRender } from \"../../util/useRender.mjs\";\nconst makeVEmptyStateProps = propsFactory({\n actionText: String,\n bgColor: String,\n color: String,\n icon: IconValue,\n image: String,\n justify: {\n type: String,\n default: \"center\"\n },\n headline: String,\n title: String,\n text: String,\n textWidth: {\n type: [Number, String],\n default: 500\n },\n href: String,\n to: String,\n ...makeComponentProps(),\n ...makeDimensionProps(),\n ...makeSizeProps({\n size: void 0\n }),\n ...makeThemeProps()\n}, \"VEmptyState\");\nconst VEmptyState = genericComponent()({\n name: \"VEmptyState\",\n props: makeVEmptyStateProps(),\n emits: {\n \"click:action\": (e) => true\n },\n setup(props, {\n emit,\n slots\n }) {\n const {\n themeClasses\n } = provideTheme(props);\n const {\n backgroundColorClasses,\n backgroundColorStyles\n } = useBackgroundColor(() => props.bgColor);\n const {\n dimensionStyles\n } = useDimension(props);\n const {\n displayClasses\n } = useDisplay();\n function onClickAction(e) {\n emit(\"click:action\", e);\n }\n useRender(() => {\n var _a, _b, _c;\n const hasActions = !!(slots.actions || props.actionText);\n const hasHeadline = !!(slots.headline || props.headline);\n const hasTitle = !!(slots.title || props.title);\n const hasText = !!(slots.text || props.text);\n const hasMedia = !!(slots.media || props.image || props.icon);\n const size = props.size || (props.image ? 200 : 96);\n return createVNode(\"div\", {\n \"class\": [\"v-empty-state\", {\n [`v-empty-state--${props.justify}`]: true\n }, themeClasses.value, backgroundColorClasses.value, displayClasses.value, props.class],\n \"style\": [backgroundColorStyles.value, dimensionStyles.value, props.style]\n }, [hasMedia && createVNode(\"div\", {\n \"key\": \"media\",\n \"class\": \"v-empty-state__media\"\n }, [!slots.media ? createVNode(Fragment, null, [props.image ? createVNode(VImg, {\n \"key\": \"image\",\n \"src\": props.image,\n \"height\": size\n }, null) : props.icon ? createVNode(VIcon, {\n \"key\": \"icon\",\n \"color\": props.color,\n \"size\": size,\n \"icon\": props.icon\n }, null) : void 0]) : createVNode(VDefaultsProvider, {\n \"key\": \"media-defaults\",\n \"defaults\": {\n VImg: {\n src: props.image,\n height: size\n },\n VIcon: {\n size,\n icon: props.icon\n }\n }\n }, {\n default: () => [slots.media()]\n })]), hasHeadline && createVNode(\"div\", {\n \"key\": \"headline\",\n \"class\": \"v-empty-state__headline\"\n }, [((_a = slots.headline) == null ? void 0 : _a.call(slots)) ?? props.headline]), hasTitle && createVNode(\"div\", {\n \"key\": \"title\",\n \"class\": \"v-empty-state__title\"\n }, [((_b = slots.title) == null ? void 0 : _b.call(slots)) ?? props.title]), hasText && createVNode(\"div\", {\n \"key\": \"text\",\n \"class\": \"v-empty-state__text\",\n \"style\": {\n maxWidth: convertToUnit(props.textWidth)\n }\n }, [((_c = slots.text) == null ? void 0 : _c.call(slots)) ?? props.text]), slots.default && createVNode(\"div\", {\n \"key\": \"content\",\n \"class\": \"v-empty-state__content\"\n }, [slots.default()]), hasActions && createVNode(\"div\", {\n \"key\": \"actions\",\n \"class\": \"v-empty-state__actions\"\n }, [createVNode(VDefaultsProvider, {\n \"defaults\": {\n VBtn: {\n class: \"v-empty-state__action-btn\",\n color: props.color ?? \"surface-variant\",\n href: props.href,\n text: props.actionText,\n to: props.to\n }\n }\n }, {\n default: () => {\n var _a2;\n return [((_a2 = slots.actions) == null ? void 0 : _a2.call(slots, {\n props: {\n onClick: onClickAction\n }\n })) ?? createVNode(VBtn, {\n \"onClick\": onClickAction\n }, null)];\n }\n })])]);\n });\n return {};\n }\n});\nexport {\n VEmptyState,\n makeVEmptyStateProps\n};\n//# sourceMappingURL=VEmptyState.mjs.map\n","/* eslint-disable vue/one-component-per-file */\nimport { useI18n } from '../ioc'\nimport { SvgIcon } from '../svg-icon'\nimport { useScopedDisplay } from './display'\nimport { VImg } from 'vuetify/components/VImg'\nimport { useLocale, useDisplay } from 'vuetify'\nimport { VCard } from 'vuetify/components/VCard'\nimport { makeIdentifier } from '../common/utils'\nimport { ControlButton } from '../control-button'\nimport { VDialog } from 'vuetify/components/VDialog'\nimport { pick } from '@nhtio/vuetifiable/util/helpers'\nimport { mdiCheck, mdiClose, mdiOctagon } from '@mdi/js'\nimport { propsAndEmitsFactory } from '../common/factories'\nimport { default as infoSvg } from '../icons/info.svg?url'\nimport { default as errorSvg } from '../icons/error.svg?url'\nimport { useRender } from '@nhtio/vuetifiable/util/useRender'\nimport { TypedEventEmitter } from '@nhtio/tiny-typed-emitter'\nimport { default as successSvg } from '../icons/success.svg?url'\nimport { default as warningSvg } from '../icons/warning.svg?url'\nimport { IconValue } from '@nhtio/vuetifiable/composables/icons'\nimport { VContainer, VRow, VCol } from 'vuetify/components/VGrid'\nimport { default as questionSvg } from '../icons/question.svg?url'\nimport { makeVEmptyStateProps } from '@nhtio/vuetifiable/components/VEmptyState/VEmptyState'\nimport { defineComponent, h, isRef, ref, toRefs, computed, toValue, getCurrentInstance } from 'vue'\nimport type { EventMap } from '@nhtio/tiny-typed-emitter'\nimport type { makeVImgProps } from '@nhtio/vuetifiable/components/VImg/VImg'\nimport type { makeVRowProps } from '@nhtio/vuetifiable/components/VGrid/VRow'\nimport type { makeVCardProps } from '@nhtio/vuetifiable/components/VCard/VCard'\nimport type { makeVDialogProps } from '@nhtio/vuetifiable/components/VDialog/VDialog'\nimport type { makeVContainerProps } from '@nhtio/vuetifiable/components/VGrid/VContainer'\nimport type { ExtractPublicPropTypes, MaybeRef, ComponentPublicInstance, PropType } from 'vue'\n\ntype VEmptyStatePublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVEmptyStateProps>>\nexport type VImgPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVImgProps>>\ntype VDialogPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVDialogProps>>\ntype VCardPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVCardProps>>\ntype VContainerPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVContainerProps>>\ntype VRowPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVRowProps>>\ntype ScopedDisplayInstance = ReturnType<typeof useScopedDisplay>\n\n// type PropertiesOfRenderVNode = Parameters<typeof h>\n// type AlertOptionRenderable = PropertiesOfRenderVNode[0] | (() => PropertiesOfRenderVNode[0])\n\nexport type TernaryOperator = boolean | null\n\nexport type AlertIcon =\n | 'info'\n | 'error'\n | 'success'\n | 'warning'\n | 'question'\n | NonNullable<VImgPublicProps['src']>\n\nexport interface AlertOptions {\n icon: MaybeRef<AlertIcon>\n headline?: MaybeRef<VEmptyStatePublicProps['headline']>\n title?: MaybeRef<VEmptyStatePublicProps['title']>\n text?: MaybeRef<VEmptyStatePublicProps['text']>\n showConfirmButton?: MaybeRef<boolean>\n showDenyButton?: MaybeRef<boolean>\n showCancelButton?: MaybeRef<boolean>\n confirmButtonCta?: MaybeRef<string | undefined>\n denyButtonCta?: MaybeRef<string | undefined>\n cancelButtonCta?: MaybeRef<string | undefined>\n confirmButtonIcon?: MaybeRef<IconValue | undefined>\n denyButtonIcon?: MaybeRef<IconValue | undefined>\n cancelButtonIcon?: MaybeRef<IconValue | undefined>\n signal?: AbortSignal | undefined\n}\n\nexport interface AlertResult {\n isConfirmed: boolean\n isDenied: boolean\n isCanceled: boolean\n value: TernaryOperator\n}\n\nconst { makeProps: makeAlertComposableDialog, emits: alertComposableDialogEmits } =\n propsAndEmitsFactory(\n {\n icon: {\n type: [String, Function, Object] as PropType<AlertIcon | undefined>,\n default: undefined,\n },\n ...pick(makeVEmptyStateProps(), ['headline', 'title', 'text']),\n showConfirmButton: {\n type: Boolean,\n default: true,\n },\n showDenyButton: {\n type: Boolean,\n default: false,\n },\n showCancelButton: {\n type: Boolean,\n default: false,\n },\n confirmButtonCta: {\n type: String as PropType<string | undefined>,\n default: undefined,\n },\n denyButtonCta: {\n type: String as PropType<string | undefined>,\n default: undefined,\n },\n cancelButtonCta: {\n type: String as PropType<string | undefined>,\n default: undefined,\n },\n confirmButtonIcon: {\n type: IconValue,\n default: () => h(SvgIcon, { d: mdiCheck }),\n },\n denyButtonIcon: {\n type: IconValue,\n default: () => h(SvgIcon, { d: mdiClose }),\n },\n cancelButtonIcon: {\n type: IconValue,\n default: () => h(SvgIcon, { d: mdiOctagon }),\n },\n contained: {\n type: Boolean,\n default: false,\n },\n dividePrependIcon: {\n type: Boolean,\n default: true,\n },\n scopedDisplay: {\n type: Object as PropType<ReturnType<typeof useScopedDisplay>>,\n required: true,\n },\n uuid: {\n type: String as PropType<string>,\n required: true,\n },\n container: {\n type: [Object, HTMLElement] as PropType<\n HTMLElement | ComponentPublicInstance | null | undefined\n >,\n default: undefined,\n },\n },\n {\n 'click:confirm': (uuid: string) => 'string' === typeof uuid,\n 'click:deny': (uuid: string) => 'string' === typeof uuid,\n 'click:cancel': (uuid: string) => 'string' === typeof uuid,\n },\n 'AlertComposableDialog'\n )\n\nconst AlertComposableDialog = defineComponent({\n name: 'AlertComposableDialog',\n props: makeAlertComposableDialog(),\n emits: alertComposableDialogEmits,\n setup(props, { emit }) {\n const t = useI18n()\n const {\n icon,\n headline,\n title,\n text,\n showConfirmButton,\n showDenyButton,\n showCancelButton,\n confirmButtonCta,\n denyButtonCta,\n cancelButtonCta,\n confirmButtonIcon,\n denyButtonIcon,\n cancelButtonIcon,\n contained,\n dividePrependIcon,\n scopedDisplay,\n uuid,\n container,\n } = toRefs(props)\n const { isRtl } = useLocale()\n const { width, height } = useDisplay()\n const normalizedOrientation = computed<'landscape' | 'portrait' | 'square'>(() => {\n if (container.value && contained.value) {\n return scopedDisplay.value.orientation.value\n }\n if (width.value === height.value) return 'square'\n return width.value > height.value ? 'landscape' : 'portrait'\n })\n const normalizedIcon = computed<NonNullable<VImgPublicProps['src']>>(() => {\n if ('info' === icon.value) return infoSvg\n if ('error' === icon.value) return errorSvg\n if ('success' === icon.value) return successSvg\n if ('warning' === icon.value) return warningSvg\n if ('question' === icon.value) return questionSvg\n return icon.value as NonNullable<VImgPublicProps['src']>\n })\n const normalizedConfirmButtonCta = computed(() =>\n 'string' === typeof confirmButtonCta.value\n ? confirmButtonCta.value\n : showDenyButton.value\n ? t('resourceful.alert.disposition.confirm')\n : t('resourceful.alert.disposition.ok')\n )\n const normalizedDenyButtonCta = computed(\n () => denyButtonCta.value ?? t('resourceful.alert.disposition.deny')\n )\n const normalizedCancelButtonCta = computed(\n () => cancelButtonCta.value ?? t('resourceful.alert.disposition.cancel')\n )\n const getContainerHtmlElement = (): HTMLElement | null => {\n if (container.value instanceof HTMLElement) return container.value\n if (container.value && '$el' in container.value && container.value.$el instanceof HTMLElement)\n return container.value.$el\n return null\n }\n const dialogBindings = computed<VDialogPublicProps>(() => ({\n attach: contained.value && container.value ? (getContainerHtmlElement() ?? 'body') : 'body',\n absolute: contained.value,\n closeOnBack: false,\n closeOnContentClick: false,\n contained: contained.value,\n modelValue: true,\n persistent: true,\n retainFocus: true,\n scrim: true,\n maxWidth: 500,\n }))\n const cardBindings = computed<VCardPublicProps>(() => ({\n color: 'surface',\n }))\n const containerBindings = computed<VContainerPublicProps>(() => ({\n fluid: true,\n }))\n const rowBindings = computed<VRowPublicProps>(() => ({\n align: 'center',\n }))\n const imgBindings = computed<VImgPublicProps>(() => ({\n src: normalizedIcon.value,\n }))\n const actionsSlotContent = () => {\n const isReversed = true === isRtl.value || normalizedOrientation.value === 'landscape'\n let buttons = [\n showCancelButton.value\n ? h(ControlButton, {\n class: [\n {\n 'me-2': !isReversed && (showConfirmButton.value || showDenyButton.value),\n 'ms-2': isReversed && (showConfirmButton.value || showDenyButton.value),\n },\n 'mb-2',\n ],\n prependIcon: cancelButtonIcon.value,\n dividePrependIcon: dividePrependIcon.value,\n cta: normalizedCancelButtonCta.value,\n onClick: () => emit('click:cancel', uuid.value),\n color: 'surface-light',\n })\n : null,\n showDenyButton.value\n ? h(ControlButton, {\n class: [\n {\n 'me-2': !isReversed && showConfirmButton.value,\n 'ms-2': isReversed && showConfirmButton.value,\n },\n 'mb-2',\n ],\n prependIcon: denyButtonIcon.value,\n dividePrependIcon: dividePrependIcon.value,\n cta: normalizedDenyButtonCta.value,\n onClick: () => emit('click:deny', uuid.value),\n color: 'surface-light',\n })\n : null,\n showConfirmButton.value\n ? h(ControlButton, {\n class: ['mb-2'],\n prependIcon: confirmButtonIcon.value,\n dividePrependIcon: dividePrependIcon.value,\n cta: normalizedConfirmButtonCta.value,\n onClick: () => emit('click:confirm', uuid.value),\n color: 'surface-light',\n })\n : null,\n ]\n if (true === isReversed) {\n buttons = buttons.reverse()\n }\n return h(\n 'div',\n {\n class: [\n 'd-flex',\n 'w-100',\n 'flex-wrap',\n {\n 'justify-end': normalizedOrientation.value === 'landscape',\n 'justify-center': normalizedOrientation.value !== 'landscape',\n 'text-center': normalizedOrientation.value !== 'landscape',\n },\n ],\n },\n buttons\n )\n }\n const cardRef = ref<VCard | null>(null)\n useRender(() =>\n h(VDialog, dialogBindings.value, () =>\n h(\n VCard,\n {\n ref: cardRef,\n ...cardBindings.value,\n },\n () =>\n h(VContainer, containerBindings.value, () =>\n h(VRow, rowBindings.value, () => [\n normalizedOrientation.value === 'landscape'\n ? h(VCol, { cols: 4, class: ['d-flex', 'align-center'] }, () =>\n h(VImg, imgBindings.value)\n )\n : null,\n h(\n VCol,\n {\n cols: normalizedOrientation.value === 'landscape' ? 8 : 12,\n class: ['d-flex', 'flex-column', 'align-center', 'justify-center'],\n },\n () => [\n normalizedOrientation.value !== 'landscape'\n ? h(\n VRow,\n {\n justify: 'center',\n class: ['w-100'],\n },\n () => h(VCol, { cols: 6 }, () => h(VImg, imgBindings.value))\n )\n : null,\n headline.value\n ? h(\n VRow,\n {\n class: ['w-100'],\n },\n () =>\n h(\n VCol,\n {\n cols: 12,\n class: [\n 'd-flex',\n 'w-100',\n 'v-empty-state__headline',\n {\n 'justify-start': normalizedOrientation.value === 'landscape',\n 'text-start': normalizedOrientation.value === 'landscape',\n 'justify-center': normalizedOrientation.value !== 'landscape',\n 'text-center': normalizedOrientation.value !== 'landscape',\n },\n ],\n },\n () => headline.value\n )\n )\n : null,\n title.value\n ? h(\n VRow,\n {\n class: ['w-100'],\n },\n () =>\n h(\n VCol,\n {\n cols: 12,\n class: [\n 'd-flex',\n 'w-100',\n 'v-empty-state__title',\n {\n 'justify-start': normalizedOrientation.value === 'landscape',\n 'text-start': normalizedOrientation.value === 'landscape',\n 'justify-center': normalizedOrientation.value !== 'landscape',\n 'text-center': normalizedOrientation.value !== 'landscape',\n },\n ],\n },\n () => title.value\n )\n )\n : null,\n text.value\n ? h(\n VRow,\n {\n class: ['w-100'],\n },\n () =>\n h(\n VCol,\n {\n cols: 12,\n class: [\n 'd-flex',\n 'w-100',\n 'v-empty-state__text',\n {\n 'justify-start': normalizedOrientation.value === 'landscape',\n 'text-start': normalizedOrientation.value === 'landscape',\n 'justify-center': normalizedOrientation.value !== 'landscape',\n 'text-center': normalizedOrientation.value !== 'landscape',\n },\n ],\n },\n () => text.value\n )\n )\n : null,\n h(\n VRow,\n {\n class: ['w-100'],\n },\n () => h(VCol, { cols: 12 }, () => actionsSlotContent())\n ),\n ]\n ),\n ])\n )\n )\n )\n )\n return {\n normalizedOrientation,\n }\n },\n})\n\ntype AlertComposableDialogProps = ExtractPublicPropTypes<\n ReturnType<typeof makeAlertComposableDialog>\n>\n\ntype EnqueueableAlert = Omit<\n AlertComposableDialogProps,\n 'scopedDisplay' | 'contained' | 'dividePrependIcon'\n>\n\ntype AlertDialogEvents = EventMap<{\n disposition: [uuid: string, result: TernaryOperator]\n}>\n\nexport type FireAlertFn = (options: AlertOptions) => Promise<AlertResult>\n\nexport const useAlert = (\n container: MaybeRef<HTMLElement | ComponentPublicInstance | null> = null,\n contained: MaybeRef<boolean> = false,\n dividePrependIcon: MaybeRef<boolean> = true\n) => {\n const containerRef = isRef(container) ? container : ref(container)\n const scopedDisplay: ScopedDisplayInstance = useScopedDisplay(containerRef)\n const bus = new TypedEventEmitter<AlertDialogEvents>()\n const pendingAlerts = ref<EnqueueableAlert[]>([])\n const renderDialogs = () =>\n Array.from(pendingAlerts.value).map((opts) =>\n h(AlertComposableDialog, {\n ...opts,\n contained: toValue(contained),\n container: containerRef.value,\n dividePrependIcon: toValue(dividePrependIcon),\n scopedDisplay,\n key: opts.uuid,\n })\n )\n const fire: FireAlertFn = async (options: AlertOptions): Promise<AlertResult> => {\n const uuid = makeIdentifier('alert', 'alerts')\n const promise = new Promise<AlertResult>((resolve) => {\n const listener = (emittedUuid: string, result: TernaryOperator) => {\n if (emittedUuid === uuid) {\n bus.off('disposition', listener)\n resolve({\n isConfirmed: true === result,\n isDenied: false === result,\n isCanceled: null === result,\n value: result,\n })\n }\n }\n bus.on('disposition', listener)\n })\n const props: EnqueueableAlert = {\n 'icon': toValue(options.icon),\n 'headline': toValue(options.headline),\n 'title': toValue(options.title),\n 'text': toValue(options.text),\n 'showConfirmButton': toValue(options.showConfirmButton),\n 'showDenyButton': toValue(options.showDenyButton),\n 'showCancelButton': toValue(options.showCancelButton),\n 'confirmButtonCta': toValue(options.confirmButtonCta),\n 'denyButtonCta': toValue(options.denyButtonCta),\n 'cancelButtonCta': toValue(options.cancelButtonCta),\n 'confirmButtonIcon': toValue(options.confirmButtonIcon),\n 'denyButtonIcon': toValue(options.denyButtonIcon),\n 'cancelButtonIcon': toValue(options.cancelButtonIcon),\n 'uuid': uuid,\n 'onClick:cancel': () => bus.emit('disposition', uuid, null),\n 'onClick:confirm': () => bus.emit('disposition', uuid, true),\n 'onClick:deny': () => bus.emit('disposition', uuid, false),\n }\n if (options.signal) {\n if (options.signal.aborted) {\n // already aborted\n return {\n isConfirmed: false,\n isDenied: false,\n isCanceled: true,\n value: null,\n }\n }\n const abortListener = () => {\n bus.emit('disposition', uuid, null)\n }\n options.signal.addEventListener('abort', abortListener, { once: true })\n }\n pendingAlerts.value.push(props)\n const result = await promise\n const pendingAlertsIndex = pendingAlerts.value.findIndex((a) => a.uuid === uuid)\n if (pendingAlertsIndex > -1) {\n pendingAlerts.value.splice(pendingAlertsIndex, 1)\n }\n return result\n }\n return { renderDialogs, fire }\n}\n\nexport const UseAlertExample = defineComponent({\n name: 'UseAlertExample',\n setup() {\n const containerRef = ref<HTMLElement | null>(null)\n const { renderDialogs, fire } = useAlert(containerRef)\n return () =>\n h('div', { ref: containerRef }, [\n h('div', { class: ['w-100', 'd-flex'] }, [\n h(ControlButton, {\n class: ['me-2'],\n prependIcon: () => h(VImg, { src: errorSvg }),\n cta: 'Error',\n onClick: () =>\n fire({\n icon: 'error',\n headline: 'Error',\n title: 'This is an error alert',\n text: 'Something went wrong!',\n }).then((result) => {\n console.log('Alert result', result)\n alert(`Got Result: ${String(result.value)}`)\n }),\n }),\n h(ControlButton, {\n class: ['me-2'],\n prependIcon: () => h(VImg, { src: infoSvg }),\n cta: 'Info',\n onClick: () =>\n fire({\n icon: 'info',\n headline: 'Info',\n title: 'This is an info alert',\n text: 'Just so you know...',\n }).then((result) => {\n console.log('Alert result', result)\n alert(`Got Result: ${String(result.value)}`)\n }),\n }),\n h(ControlButton, {\n class: ['me-2'],\n prependIcon: () => h(VImg, { src: questionSvg }),\n cta: 'Question',\n onClick: () =>\n fire({\n icon: 'question',\n headline: 'Question',\n title: 'This is a question alert',\n text: 'Do you like questions?',\n showCancelButton: true,\n showDenyButton: true,\n }).then((result) => {\n console.log('Alert result', result)\n alert(`Got Result: ${String(result.value)}`)\n }),\n }),\n h(ControlButton, {\n class: ['me-2'],\n prependIcon: () => h(VImg, { src: successSvg }),\n cta: 'Success',\n onClick: () =>\n fire({\n icon: 'success',\n headline: 'Success',\n title: 'This is a success alert',\n text: 'Everything is working as expected!',\n }).then((result) => {\n console.log('Alert result', result)\n alert(`Got Result: ${String(result.value)}`)\n }),\n }),\n h(ControlButton, {\n class: ['me-2'],\n prependIcon: () => h(VImg, { src: warningSvg }),\n cta: 'Warning',\n onClick: () =>\n fire({\n icon: 'warning',\n headline: 'Warning',\n title: 'This is a warning alert',\n text: 'Be careful!',\n showCancelButton: true,\n }).then((result) => {\n console.log('Alert result', result)\n alert(`Got Result: ${String(result.value)}`)\n }),\n }),\n ]),\n renderDialogs(),\n ])\n },\n})\n\nexport const ResourcefulAlerter = defineComponent({\n name: 'ResourcefulAlerter',\n setup() {\n const current = getCurrentInstance()\n const containerRef = ref<HTMLElement | null>(null)\n const container = computed(() => current?.proxy?.$el ?? containerRef.value)\n const { renderDialogs, fire } = useAlert(container)\n useRender(() => h('div', { ref: containerRef }, [renderDialogs()]))\n return {\n fire,\n }\n },\n})\n\nexport type ResourcefulAlerter = typeof ResourcefulAlerter & ComponentPublicInstance\n"],"names":["makeVEmptyStateProps","propsFactory","IconValue","makeComponentProps","makeDimensionProps","makeSizeProps","makeThemeProps","genericComponent","props","emit","slots","themeClasses","provideTheme","backgroundColorClasses","backgroundColorStyles","useBackgroundColor","dimensionStyles","useDimension","displayClasses","useDisplay","onClickAction","e","useRender","_a","_b","_c","hasActions","hasHeadline","hasTitle","hasText","hasMedia","size","createVNode","VDefaultsProvider","Fragment","VImg","VIcon","convertToUnit","_a2","VBtn","makeAlertComposableDialog","alertComposableDialogEmits","propsAndEmitsFactory","pick","h","SvgIcon","mdiCheck","mdiClose","mdiOctagon","uuid","AlertComposableDialog","defineComponent","t","useI18n","icon","headline","title","text","showConfirmButton","showDenyButton","showCancelButton","confirmButtonCta","denyButtonCta","cancelButtonCta","confirmButtonIcon","denyButtonIcon","cancelButtonIcon","contained","dividePrependIcon","scopedDisplay","container","toRefs","isRtl","useLocale","width","height","normalizedOrientation","computed","normalizedIcon","infoSvg","errorSvg","successSvg","warningSvg","questionSvg","normalizedConfirmButtonCta","normalizedDenyButtonCta","normalizedCancelButtonCta","getContainerHtmlElement","dialogBindings","cardBindings","containerBindings","rowBindings","imgBindings","actionsSlotContent","isReversed","buttons","ControlButton","cardRef","ref","VDialog","VCard","VContainer","VRow","VCol","useAlert","containerRef","isRef","useScopedDisplay","bus","TypedEventEmitter","pendingAlerts","opts","toValue","options","makeIdentifier","promise","resolve","listener","emittedUuid","result","abortListener","pendingAlertsIndex","a","renderDialogs","fire","ResourcefulAlerter","current","getCurrentInstance"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"display-DazBkrbZ.mjs","sources":["../src/private/ux/display.ts"],"sourcesContent":["import { useDisplay } from 'vuetify'\nimport { toUnreactive } from '../common/utils'\nimport { debounce } from '@nhtio/vuetifiable/util/helpers'\nimport { IN_BROWSER, SUPPORTS_INTERSECTION } from '@nhtio/vuetifiable/util/globals'\nimport { getCurrentInstanceName } from '@nhtio/vuetifiable/util/getCurrentInstance'\nimport {\n reactive,\n shallowRef,\n triggerRef,\n toRefs,\n watch,\n onMounted,\n onUnmounted,\n nextTick,\n} from 'vue'\nimport type { Ref, ComponentPublicInstance, UnwrapRef, WatchStopHandle } from 'vue'\nimport type { DisplayInstance, DisplayBreakpoint, DisplayThresholds } from 'vuetify'\n\nexport const SUPPORTS_RESIZE_OBSERVATION = IN_BROWSER && 'ResizeObserver' in window\n\nexport const SUPPORTS_VISUAL_VIEWPORT = IN_BROWSER && 'visualViewport' in window\n\ntype DisplayPlatform = DisplayInstance['platform']\n\nexport type ReferencedContainer = Ref<HTMLElement | ComponentPublicInstance | null>\n\nexport const ScopedDisplayOrientation = ['landscape', 'portrait', 'square'] as const\nexport type ScopedDisplayOrientation = (typeof ScopedDisplayOrientation)[number]\n\nexport type ScopedDisplayInstance = DisplayInstance & {\n ssr: boolean\n intersecting: Ref<boolean>\n visible: Ref<boolean>\n orientation: Ref<ScopedDisplayOrientation>\n}\n\n// Extract the ref types as non-ref types and exclude functions\ntype InternalReactiveScopedDisplayStateTypes = {\n [key in keyof ScopedDisplayInstance]: ScopedDisplayInstance[key] extends Ref<any>\n ? UnwrapRef<ScopedDisplayInstance[key]>\n : ScopedDisplayInstance[key] extends Function\n ? never\n : ScopedDisplayInstance[key]\n}\n\n// Create a type that only includes the non-excluded keys\ntype InternalReactiveScopedDisplayState = {\n [K in keyof InternalReactiveScopedDisplayStateTypes as InternalReactiveScopedDisplayStateTypes[K] extends never\n ? never\n : K]: InternalReactiveScopedDisplayStateTypes[K]\n}\n\nexport const useScopedDisplay = (\n container: ReferencedContainer,\n name: string = getCurrentInstanceName('resourcefulComposables')\n) => {\n const vuetifyState = useDisplay({ mobile: null }, name)\n const {\n mobile,\n mobileBreakpoint,\n platform,\n thresholds,\n ssr,\n update: vuetifyUseDisplayUpdate,\n } = vuetifyState\n // despite the urge to use a Set here, an array is more peformant for doing simple iterations\n const watchStopHandles: WatchStopHandle[] = []\n let resizeObserver: ResizeObserver | undefined\n let intersectionObserver: IntersectionObserver | undefined\n const width = shallowRef<number>(0)\n const height = shallowRef<number>(0)\n const intersecting = shallowRef<boolean>(false)\n const visible = shallowRef<boolean>(false)\n const state = reactive<Omit<InternalReactiveScopedDisplayState, 'ssr'>>({\n xs: false,\n sm: false,\n md: false,\n lg: false,\n xl: false,\n xxl: false,\n smAndUp: false,\n mdAndUp: false,\n lgAndUp: false,\n xlAndUp: false,\n smAndDown: false,\n mdAndDown: false,\n lgAndDown: false,\n xlAndDown: false,\n name: 'xs' as const,\n width: 0,\n height: 0,\n mobile: false,\n mobileBreakpoint: toUnreactive(mobileBreakpoint),\n platform: toUnreactive(platform),\n thresholds: toUnreactive(thresholds),\n intersecting: false,\n visible: false,\n orientation: 'square' as ScopedDisplayOrientation,\n })\n const resizeObserverHandler = (entries: ResizeObserverEntry[]) => {\n let w: number = 0\n let h: number = 0\n for (const entry of entries) {\n if ('contentBoxSize' in entry && 'undefined' !== typeof entry.contentBoxSize) {\n const contentBoxSize = Array.isArray(entry.contentBoxSize)\n ? (entry.contentBoxSize[0] as ResizeObserverSize)\n : // Old versions of Firefox treat ResizeObserverSize as a single item\n (entry.contentBoxSize as unknown as ResizeObserverSize)\n w = contentBoxSize.inlineSize\n } else {\n w = entry.contentRect.width\n }\n h = entry.contentRect.height\n updateDimensions(w, h)\n }\n }\n const intersectionObserverHandler = (entries: IntersectionObserverEntry[]) => {\n const isIntersecting = entries.some((entry) => entry.isIntersecting)\n const isVisible = entries.some((entry) =>\n 'isVisible' in entry ? (entry as any).isVisible : entry.isIntersecting\n )\n intersecting.value = isIntersecting\n visible.value = isVisible\n triggerRef(intersecting)\n triggerRef(visible)\n }\n // helper utility to ensure that the width and height are updated\n const updateDimensions = (w: number = 0, h: number = 0) => {\n width.value = w\n height.value = h\n triggerRef(width)\n triggerRef(height)\n }\n // an exposed method to force an update of the display state\n const update = () => {\n vuetifyUseDisplayUpdate()\n const el = getContainerHtmlElement()\n if (el) {\n const rect = el.getBoundingClientRect()\n updateDimensions(rect.width, rect.height)\n } else {\n updateDimensions(0, 0)\n }\n }\n // helper utility to get the mobile breakpoint as a number for comparisons\n const getMobileBreakpointAsNumber = () => {\n if (typeof state.mobileBreakpoint === 'number') {\n return state.mobileBreakpoint\n }\n if (state.mobileBreakpoint in state.thresholds) {\n return state.thresholds[state.mobileBreakpoint]\n }\n // fallback to 600\n return 600\n }\n // helper utility to get the element from a referenced value\n // used to get the container element from the reference, and in watchers\n const getReferencedHtmlElement = (value: HTMLElement | ComponentPublicInstance | null) => {\n if (!value) return undefined\n if (value instanceof HTMLElement) return value\n if ('$el' in value && value.$el instanceof HTMLElement) {\n return value.$el\n }\n return undefined\n }\n // helper utility to get the referenced container element\n const getContainerHtmlElement = (): HTMLElement | undefined => {\n return getReferencedHtmlElement(container.value)\n }\n // observers for changes in the values from vuetify's useDisplay composable\n const vuetifyUseDisplayMobileObserver = (is: boolean) => {\n if (true === is) {\n state.mobile = true\n } else if (width.value < getMobileBreakpointAsNumber()) {\n state.mobile = true\n } else {\n state.mobile = false\n }\n }\n const vuetifyUseDisplayMobileBreakpointObserver = (is: number | DisplayBreakpoint) => {\n state.mobileBreakpoint = toUnreactive(is)\n queueMicrotask(() => vuetifyUseDisplayMobileObserver(mobile.value))\n }\n const vuetifyUseDisplayPlatformObserver = (is: DisplayPlatform) => {\n state.platform = toUnreactive(is)\n }\n const vuetifyUseDisplayThresholdsObserver = (is: DisplayThresholds) => {\n state.thresholds = toUnreactive(is)\n queueMicrotask(() => vuetifyUseDisplayMobileObserver(mobile.value))\n }\n const containerObserver = (\n is: HTMLElement | ComponentPublicInstance | null,\n was: HTMLElement | ComponentPublicInstance | null | undefined\n ) => {\n const newEl = getReferencedHtmlElement(is)\n const oldEl = getReferencedHtmlElement(was ?? null)\n if (newEl === oldEl) return\n if (intersectionObserver) {\n if (oldEl) {\n intersectionObserver.unobserve(oldEl)\n }\n if (newEl) {\n intersectionObserver.observe(newEl)\n }\n }\n if (resizeObserver) {\n if (oldEl) {\n resizeObserver.unobserve(oldEl)\n }\n if (newEl) {\n resizeObserver.observe(newEl)\n }\n }\n const el = getContainerHtmlElement()\n if (el) {\n const rect = el.getBoundingClientRect()\n updateDimensions(rect.width, rect.height)\n } else {\n updateDimensions(0, 0)\n }\n }\n const dimensionsObserver = debounce(() => {\n state.width = width.value\n state.height = height.value\n vuetifyUseDisplayMobileObserver(mobile.value)\n const xs = width.value < thresholds.value.sm\n const sm = width.value < thresholds.value.md && !xs\n const md = width.value < thresholds.value.lg && !(sm || xs)\n const lg = width.value < thresholds.value.xl && !(md || sm || xs)\n const xl = width.value < thresholds.value.xxl && !(lg || md || sm || xs)\n const xxl = width.value >= thresholds.value.xxl\n const breakpointName = xs ? 'xs' : sm ? 'sm' : md ? 'md' : lg ? 'lg' : xl ? 'xl' : 'xxl'\n const smAndUp = !xs\n const mdAndUp = !(xs || sm)\n const lgAndUp = !(xs || sm || md)\n const xlAndUp = !(xs || sm || md || lg)\n const smAndDown = !(md || lg || xl || xxl)\n const mdAndDown = !(lg || xl || xxl)\n const lgAndDown = !(xl || xxl)\n const xlAndDown = !xxl\n const orientation: ScopedDisplayOrientation =\n width.value > height.value ? 'landscape' : height.value > width.value ? 'portrait' : 'square'\n state.xs = xs\n state.sm = sm\n state.md = md\n state.lg = lg\n state.xl = xl\n state.xxl = xxl\n state.name = breakpointName\n state.smAndUp = smAndUp\n state.mdAndUp = mdAndUp\n state.lgAndUp = lgAndUp\n state.xlAndUp = xlAndUp\n state.smAndDown = smAndDown\n state.mdAndDown = mdAndDown\n state.lgAndDown = lgAndDown\n state.xlAndDown = xlAndDown\n state.orientation = orientation\n }, 50)\n const intersectionAndVisibilityObserver = debounce(() => {\n state.intersecting = intersecting.value\n state.visible = visible.value\n }, 50)\n const windowResizeHandler = debounce(() => {\n // Update Vuetify's display state (handles viewport breakpoints)\n vuetifyUseDisplayUpdate()\n // Give the process a tick and then force an update\n nextTick(update)\n }, 50)\n onMounted(() => {\n watchStopHandles.push(watch(mobile, vuetifyUseDisplayMobileObserver, { immediate: true }))\n watchStopHandles.push(\n watch(mobileBreakpoint, vuetifyUseDisplayMobileBreakpointObserver, { immediate: true })\n )\n watchStopHandles.push(watch(platform, vuetifyUseDisplayPlatformObserver, { immediate: true }))\n watchStopHandles.push(\n watch(thresholds, vuetifyUseDisplayThresholdsObserver, { immediate: true })\n )\n if (SUPPORTS_RESIZE_OBSERVATION) {\n resizeObserver = new ResizeObserver(resizeObserverHandler)\n }\n if (SUPPORTS_INTERSECTION) {\n intersectionObserver = new IntersectionObserver(intersectionObserverHandler)\n }\n watchStopHandles.push(watch(container, containerObserver, { immediate: true }))\n watchStopHandles.push(watch(width, dimensionsObserver, { immediate: true }))\n watchStopHandles.push(watch(height, dimensionsObserver, { immediate: true }))\n watchStopHandles.push(\n watch(intersecting, intersectionAndVisibilityObserver, { immediate: true })\n )\n watchStopHandles.push(watch(visible, intersectionAndVisibilityObserver, { immediate: true }))\n // Add window resize listener\n if (IN_BROWSER) {\n window.addEventListener('resize', windowResizeHandler)\n }\n // Add visual viewport listeners\n if (SUPPORTS_VISUAL_VIEWPORT) {\n window.visualViewport!.addEventListener('resize', windowResizeHandler)\n window.visualViewport!.addEventListener('scroll', windowResizeHandler)\n }\n })\n onUnmounted(() => {\n // Remove window resize listener\n if (IN_BROWSER) {\n window.removeEventListener('resize', windowResizeHandler)\n }\n // Remove visual viewport listeners\n if (SUPPORTS_VISUAL_VIEWPORT) {\n window.visualViewport!.removeEventListener('resize', windowResizeHandler)\n window.visualViewport!.removeEventListener('scroll', windowResizeHandler)\n }\n // clear all of the watch stop handles\n watchStopHandles.forEach((stopHandle) => stopHandle())\n watchStopHandles.splice(0, watchStopHandles.length)\n // cleanup the resize observer\n if (resizeObserver) {\n resizeObserver.disconnect()\n resizeObserver = undefined\n }\n // cleanup the intersection observer\n if (intersectionObserver) {\n intersectionObserver.disconnect()\n intersectionObserver = undefined\n }\n })\n return { ...toRefs(state), update, ssr: !!ssr }\n}\n"],"names":["SUPPORTS_RESIZE_OBSERVATION","IN_BROWSER","SUPPORTS_VISUAL_VIEWPORT","useScopedDisplay","container","name","getCurrentInstanceName","vuetifyState","useDisplay","mobile","mobileBreakpoint","platform","thresholds","ssr","vuetifyUseDisplayUpdate","watchStopHandles","resizeObserver","intersectionObserver","width","shallowRef","height","intersecting","visible","state","reactive","toUnreactive","resizeObserverHandler","entries","w","h","entry","updateDimensions","intersectionObserverHandler","isIntersecting","isVisible","triggerRef","update","el","getContainerHtmlElement","rect","getMobileBreakpointAsNumber","getReferencedHtmlElement","value","vuetifyUseDisplayMobileObserver","is","vuetifyUseDisplayMobileBreakpointObserver","vuetifyUseDisplayPlatformObserver","vuetifyUseDisplayThresholdsObserver","containerObserver","was","newEl","oldEl","dimensionsObserver","debounce","xs","sm","md","lg","xl","xxl","breakpointName","smAndUp","mdAndUp","lgAndUp","xlAndUp","smAndDown","mdAndDown","lgAndDown","xlAndDown","orientation","intersectionAndVisibilityObserver","windowResizeHandler","nextTick","onMounted","watch","SUPPORTS_INTERSECTION","onUnmounted","stopHandle","toRefs"],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import { B as r } from "./utils-DxV2ZNaE.mjs";
2
- function s(e) {
3
- const n = r("useRender");
4
- n.render = e;
5
- }
6
- export {
7
- s as u
8
- };
9
- //# sourceMappingURL=useRender-Dpj9Jrbr.mjs.map