@nhtio/lucid-resourceful-vue-components 0.1.0-master-e14740ea → 0.1.0-master-dc6af70b
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{VBtn-DhfYEt9V.mjs → VBtn-CEYzcx0y.mjs} +8 -8
- package/{VBtn-DhfYEt9V.mjs.map → VBtn-CEYzcx0y.mjs.map} +1 -1
- package/{VDatePicker-D0OTAyvJ.mjs → VDatePicker-BHcvHHhM.mjs} +133 -133
- package/{VDatePicker-D0OTAyvJ.mjs.map → VDatePicker-BHcvHHhM.mjs.map} +1 -1
- package/{VEmptyState-BFrXSTJ-.mjs → VEmptyState-CkYtN0q5.mjs} +84 -84
- package/{VEmptyState-BFrXSTJ-.mjs.map → VEmptyState-CkYtN0q5.mjs.map} +1 -1
- package/{VHover-DLvOmsjv.mjs → VHover-Bj6QrQff.mjs} +3 -3
- package/{VHover-DLvOmsjv.mjs.map → VHover-Bj6QrQff.mjs.map} +1 -1
- package/{VListItem-LNaoM8S4.mjs → VListItem-BnxAmKd_.mjs} +55 -55
- package/{VListItem-LNaoM8S4.mjs.map → VListItem-BnxAmKd_.mjs.map} +1 -1
- package/{VMenu-9rTbTKtH.mjs → VMenu-BSB7YSpb.mjs} +28 -28
- package/{VMenu-9rTbTKtH.mjs.map → VMenu-BSB7YSpb.mjs.map} +1 -1
- package/{VPicker-BGuRD0KW.mjs → VPicker-DMOVvCIE.mjs} +5 -5
- package/{VPicker-BGuRD0KW.mjs.map → VPicker-DMOVvCIE.mjs.map} +1 -1
- package/{VRadioGroup-Dx_wEqzl.mjs → VRadioGroup-ByydeX8x.mjs} +21 -21
- package/{VRadioGroup-Dx_wEqzl.mjs.map → VRadioGroup-ByydeX8x.mjs.map} +1 -1
- package/{VRow-DaLdbIGw.mjs → VRow-Dmn82Xaa.mjs} +18 -18
- package/{VRow-DaLdbIGw.mjs.map → VRow-Dmn82Xaa.mjs.map} +1 -1
- package/{VSheet-DnIfs-1c.mjs → VSheet-B9ALb0PQ.mjs} +14 -14
- package/{VSheet-DnIfs-1c.mjs.map → VSheet-B9ALb0PQ.mjs.map} +1 -1
- package/{actions-8bWGsB-p.mjs → actions-BEmdy8bu.mjs} +11 -11
- package/{actions-8bWGsB-p.mjs.map → actions-BEmdy8bu.mjs.map} +1 -1
- package/{alert-IW1AIWZw.mjs → alert-DftADRGk.mjs} +13 -13
- package/{alert-IW1AIWZw.mjs.map → alert-DftADRGk.mjs.map} +1 -1
- package/{bigint-Jmfa2L4S.mjs → bigint-DiC37zMo.mjs} +6 -6
- package/{bigint-Jmfa2L4S.mjs.map → bigint-DiC37zMo.mjs.map} +1 -1
- package/{boolean-BEY7eBxf.mjs → boolean-DZDryWHA.mjs} +74 -74
- package/{boolean-BEY7eBxf.mjs.map → boolean-DZDryWHA.mjs.map} +1 -1
- package/{clipboard-BoKd7mFG.mjs → clipboard--JAZokR3.mjs} +14 -14
- package/{clipboard-BoKd7mFG.mjs.map → clipboard--JAZokR3.mjs.map} +1 -1
- package/{colorUtils-DmtKYNgW.mjs → colorUtils-I1lKouL3.mjs} +3 -3
- package/{colorUtils-DmtKYNgW.mjs.map → colorUtils-I1lKouL3.mjs.map} +1 -1
- package/{common-BeDAn4wu.mjs → common-BDwb9uGU.mjs} +8881 -8880
- package/common-BDwb9uGU.mjs.map +1 -0
- package/{component-CjPpW_A2.mjs → component-C-qp70Rp.mjs} +2 -2
- package/{component-CjPpW_A2.mjs.map → component-C-qp70Rp.mjs.map} +1 -1
- package/components/autorefresh_controller.mjs +1 -1
- package/components/control_button.mjs +1 -1
- package/components/control_button_bar.mjs +2 -2
- package/components/control_menu.mjs +1 -1
- package/components/custom_field.mjs +1 -1
- package/components/exporter.mjs +1 -1
- package/components/fields/bigint.mjs +1 -1
- package/components/fields/boolean.mjs +1 -1
- package/components/fields/date.mjs +1 -1
- package/components/fields/date_time.mjs +1 -1
- package/components/fields/enum.mjs +1 -1
- package/components/fields/integer.mjs +1 -1
- package/components/fields/number.mjs +1 -1
- package/components/fields/string.mjs +1 -1
- package/components/fields/unsigned_integer.mjs +1 -1
- package/components/fields.mjs +9 -9
- package/components/form_with_validation.mjs +1 -1
- package/components/resourceful_alerter.mjs +1 -1
- package/components/resourceful_index.mjs +1 -1
- package/components/resourceful_record.mjs +2 -2
- package/components/resourceful_record_default_form.mjs +1 -1
- package/components/resourceful_record_form.mjs +1 -1
- package/components/sortable.mjs +1 -1
- package/components/svg_icon.mjs +1 -1
- package/components/timezone_picker.mjs +1 -1
- package/components.mjs +23 -23
- package/composables.mjs +11 -11
- package/{console-CRXioSFP.mjs → console-CAez8ceh.mjs} +2 -2
- package/{console-CRXioSFP.mjs.map → console-CAez8ceh.mjs.map} +1 -1
- package/{custom-Y1WJVKP9.mjs → custom-Tm6_792A.mjs} +12 -12
- package/{custom-Y1WJVKP9.mjs.map → custom-Tm6_792A.mjs.map} +1 -1
- package/{date-BxEeCNWD.mjs → date-CxaBVvlO.mjs} +10 -10
- package/{date-BxEeCNWD.mjs.map → date-CxaBVvlO.mjs.map} +1 -1
- package/{date_time-6kpv7eDF.mjs → date_time-DhABUkGT.mjs} +169 -169
- package/{date_time-6kpv7eDF.mjs.map → date_time-DhABUkGT.mjs.map} +1 -1
- package/{display-DvzWa1QO.mjs → display-BdjbLG1_.mjs} +32 -32
- package/{display-DvzWa1QO.mjs.map → display-BdjbLG1_.mjs.map} +1 -1
- package/{display-CO0pTIEs.mjs → display-DPktlWOz.mjs} +42 -42
- package/{display-CO0pTIEs.mjs.map → display-DPktlWOz.mjs.map} +1 -1
- package/{display-kAyhIPBH.mjs → display-DazBkrbZ.mjs} +7 -7
- package/{display-kAyhIPBH.mjs.map → display-DazBkrbZ.mjs.map} +1 -1
- package/{elevation-CMzO50xm.mjs → elevation-DFBVIqom.mjs} +56 -56
- package/{elevation-CMzO50xm.mjs.map → elevation-DFBVIqom.mjs.map} +1 -1
- package/{enum-noYU2Cqh.mjs → enum-KB4xPkOL.mjs} +9 -9
- package/{enum-noYU2Cqh.mjs.map → enum-KB4xPkOL.mjs.map} +1 -1
- package/factories.mjs +1 -1
- package/{field_composer-DpJx0Oz1.mjs → field_composer-CLJuJevf.mjs} +7 -7
- package/{field_composer-DpJx0Oz1.mjs.map → field_composer-CLJuJevf.mjs.map} +1 -1
- package/{form-CDLcDPyU.mjs → form-9YRVcrxM.mjs} +17 -17
- package/{form-CDLcDPyU.mjs.map → form-9YRVcrxM.mjs.map} +1 -1
- package/{guards-B99p3BPj.mjs → guards-BrpRx6ly.mjs} +2 -2
- package/{guards-B99p3BPj.mjs.map → guards-BrpRx6ly.mjs.map} +1 -1
- package/guards.mjs +4 -4
- package/helpers.mjs +6 -6
- package/{index-B2rKM3mR.mjs → index-BaOM0Cyz.mjs} +8 -8
- package/{index-B2rKM3mR.mjs.map → index-BaOM0Cyz.mjs.map} +1 -1
- package/{index-C9UuBVyI.mjs → index-BkjiQEyJ.mjs} +12 -12
- package/{index-C9UuBVyI.mjs.map → index-BkjiQEyJ.mjs.map} +1 -1
- package/{index-slHxe6b-.mjs → index-Bs4A8qUO.mjs} +2 -2
- package/{index-slHxe6b-.mjs.map → index-Bs4A8qUO.mjs.map} +1 -1
- package/{index-BUpccfIz.mjs → index-BsazeUn6.mjs} +3 -3
- package/{index-BUpccfIz.mjs.map → index-BsazeUn6.mjs.map} +1 -1
- package/{index-BaWthszI.mjs → index-CWwCXXNl.mjs} +2 -2
- package/{index-BaWthszI.mjs.map → index-CWwCXXNl.mjs.map} +1 -1
- package/{index-Bi050X9r.mjs → index-DBXOwXpe.mjs} +6 -6
- package/{index-Bi050X9r.mjs.map → index-DBXOwXpe.mjs.map} +1 -1
- package/{index-CzI9mHIx.mjs → index-DDobJ49b.mjs} +7 -7
- package/{index-CzI9mHIx.mjs.map → index-DDobJ49b.mjs.map} +1 -1
- package/{index-CIvylvfa.mjs → index-DwOjHbRP.mjs} +44 -44
- package/{index-CIvylvfa.mjs.map → index-DwOjHbRP.mjs.map} +1 -1
- package/{index-bXmNb9jX.mjs → index-UxsEIZVi.mjs} +4 -4
- package/{index-bXmNb9jX.mjs.map → index-UxsEIZVi.mjs.map} +1 -1
- package/index.mjs +47 -47
- package/{integer-BIJ4_I8y.mjs → integer-uzh0nwpb.mjs} +3 -3
- package/{integer-BIJ4_I8y.mjs.map → integer-uzh0nwpb.mjs.map} +1 -1
- package/{mdi-CqMJqgQi.mjs → mdi-C9DbASEx.mjs} +40 -40
- package/{mdi-CqMJqgQi.mjs.map → mdi-C9DbASEx.mjs.map} +1 -1
- package/{number-z_LAINPM.mjs → number-CfHLDQFY.mjs} +28 -28
- package/{number-z_LAINPM.mjs.map → number-CfHLDQFY.mjs.map} +1 -1
- package/package.json +46 -46
- package/{position-Ai5XksAO.mjs → position-CPuNp03H.mjs} +2 -2
- package/{position-Ai5XksAO.mjs.map → position-CPuNp03H.mjs.map} +1 -1
- package/{props-BYX22zcE.mjs → props-Cq9daNwa.mjs} +4 -4
- package/{props-BYX22zcE.mjs.map → props-Cq9daNwa.mjs.map} +1 -1
- package/{props-p4f5Pa5h.mjs → props-KPFuptNy.mjs} +8 -8
- package/{props-p4f5Pa5h.mjs.map → props-KPFuptNy.mjs.map} +1 -1
- package/{renderers-BKUvrrVm.mjs → renderers-COT3aAu3.mjs} +13 -13
- package/{renderers-BKUvrrVm.mjs.map → renderers-COT3aAu3.mjs.map} +1 -1
- package/{string-Dmr8SRMf.mjs → string-DvwPf_Ob.mjs} +61 -61
- package/{string-Dmr8SRMf.mjs.map → string-DvwPf_Ob.mjs.map} +1 -1
- package/{unsigned_integer-BliPiCXO.mjs → unsigned_integer-C9nrNAn_.mjs} +4 -4
- package/{unsigned_integer-BliPiCXO.mjs.map → unsigned_integer-C9nrNAn_.mjs.map} +1 -1
- package/useRender-Dpj9Jrbr.mjs +9 -0
- package/{useRender-BD1xw5zG.mjs.map → useRender-Dpj9Jrbr.mjs.map} +1 -1
- package/{utils-DqXWb-4f.mjs → utils-DxV2ZNaE.mjs} +10 -10
- package/{utils-DqXWb-4f.mjs.map → utils-DxV2ZNaE.mjs.map} +1 -1
- package/{validation-DS3tTSk5.mjs → validation-CZ6xx4aX.mjs} +4 -4
- package/{validation-DS3tTSk5.mjs.map → validation-CZ6xx4aX.mjs.map} +1 -1
- package/VBtn.css +0 -1
- package/VDatePicker.css +0 -1
- package/VEmptyState.css +0 -1
- package/VListItem.css +0 -1
- package/VMenu.css +0 -1
- package/VPicker.css +0 -1
- package/VRadioGroup.css +0 -1
- package/VSheet.css +0 -1
- package/actions.css +0 -1
- package/boolean.css +0 -1
- package/clipboard.css +0 -1
- package/common-BeDAn4wu.mjs.map +0 -1
- package/common.css +0 -1
- package/date_time.css +0 -1
- package/display.css +0 -1
- package/display2.css +0 -1
- package/elevation.css +0 -1
- package/index.css +0 -1
- package/mdi.css +0 -1
- package/number.css +0 -1
- package/string.css +0 -1
- package/useRender-BD1xw5zG.mjs +0 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions-8bWGsB-p.mjs","sources":["../node_modules/.pnpm/vuetify@3.10.9_typescript@5.9.3_vue@3.5.24_typescript@5.9.3_/node_modules/vuetify/lib/components/VTooltip/VTooltip.js","../src/private/resourceful-index/actions.ts"],"sourcesContent":["import { mergeProps as _mergeProps, createVNode as _createVNode } from \"vue\";\n// Styles\nimport \"./VTooltip.css\";\n\n// Components\nimport { VOverlay } from \"../VOverlay/index.js\";\nimport { makeVOverlayProps } from \"../VOverlay/VOverlay.js\"; // Composables\nimport { forwardRefs } from \"../../composables/forwardRefs.js\";\nimport { useProxiedModel } from \"../../composables/proxiedModel.js\";\nimport { useScopeId } from \"../../composables/scopeId.js\"; // Utilities\nimport { computed, mergeProps, ref, toRef, useId } from 'vue';\nimport { genericComponent, omit, propsFactory, useRender } from \"../../util/index.js\"; // Types\nexport const makeVTooltipProps = propsFactory({\n id: String,\n interactive: Boolean,\n text: String,\n ...omit(makeVOverlayProps({\n closeOnBack: false,\n location: 'end',\n locationStrategy: 'connected',\n eager: true,\n minWidth: 0,\n offset: 10,\n openOnClick: false,\n openOnHover: true,\n origin: 'auto',\n scrim: false,\n scrollStrategy: 'reposition',\n transition: null\n }), ['absolute', 'persistent'])\n}, 'VTooltip');\nexport const VTooltip = genericComponent()({\n name: 'VTooltip',\n props: makeVTooltipProps(),\n emits: {\n 'update:modelValue': value => true\n },\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n const isActive = useProxiedModel(props, 'modelValue');\n const {\n scopeId\n } = useScopeId();\n const uid = useId();\n const id = toRef(() => props.id || `v-tooltip-${uid}`);\n const overlay = ref();\n const location = computed(() => {\n return props.location.split(' ').length > 1 ? props.location : props.location + ' center';\n });\n const origin = computed(() => {\n return props.origin === 'auto' || props.origin === 'overlap' || props.origin.split(' ').length > 1 || props.location.split(' ').length > 1 ? props.origin : props.origin + ' center';\n });\n const transition = toRef(() => {\n if (props.transition != null) return props.transition;\n return isActive.value ? 'scale-transition' : 'fade-transition';\n });\n const activatorProps = computed(() => mergeProps({\n 'aria-describedby': id.value\n }, props.activatorProps));\n useRender(() => {\n const overlayProps = VOverlay.filterProps(props);\n return _createVNode(VOverlay, _mergeProps({\n \"ref\": overlay,\n \"class\": ['v-tooltip', {\n 'v-tooltip--interactive': props.interactive\n }, props.class],\n \"style\": props.style,\n \"id\": id.value\n }, overlayProps, {\n \"modelValue\": isActive.value,\n \"onUpdate:modelValue\": $event => isActive.value = $event,\n \"transition\": transition.value,\n \"absolute\": true,\n \"location\": location.value,\n \"origin\": origin.value,\n \"persistent\": true,\n \"role\": \"tooltip\",\n \"activatorProps\": activatorProps.value,\n \"_disableGlobalStack\": true\n }, scopeId), {\n activator: slots.activator,\n default: function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return slots.default?.(...args) ?? props.text;\n }\n });\n });\n return forwardRefs({}, overlay);\n }\n});\n//# sourceMappingURL=VTooltip.js.map","import { useI18n } from '../ioc'\nimport { SvgIcon } from '../svg-icon'\nimport { VBtn } from 'vuetify/components/VBtn'\nimport { useClipboard } from '../ux/clipboard'\nimport { VMenu } from 'vuetify/components/VMenu'\nimport { VCard } from 'vuetify/components/VCard'\nimport { joi } from '@nhtio/lucid-resourceful/joi'\nimport { VHover } from 'vuetify/components/VHover'\nimport { VListItem } from 'vuetify/components/VList'\nimport { VTooltip } from 'vuetify/components/VTooltip'\nimport { SUPPORTS_VISUAL_VIEWPORT } from '../ux/display'\nimport { convertToUnit } from '@nhtio/vuetifiable/util/helpers'\nimport { IconValue } from '@nhtio/vuetifiable/composables/icons'\nimport { VSlideYTransition } from 'vuetify/components/transitions'\nimport { propsFactory } from '@nhtio/vuetifiable/util/propsFactory'\nimport { stripUndefinedValuesFromObject, toUnreactive } from '../common/utils'\nimport { mdiDotsVertical, mdiOpenInApp, mdiOpenInNew, mdiContentCopy } from '@mdi/js'\nimport { warn, computed, h, toValue, ref, onMounted, onBeforeUnmount, nextTick } from 'vue'\nimport type { makeVBtnProps } from '@nhtio/vuetifiable/components/VBtn/VBtn'\nimport type { makeVMenuProps } from '@nhtio/vuetifiable/components/VMenu/VMenu'\nimport type { NamedSlotParameters, ExtractSlotDefinitions } from '../common/types'\nimport type { makeVListItemProps } from '@nhtio/vuetifiable/components/VList/VListItem'\nimport type { makeVTooltipProps } from '@nhtio/vuetifiable/components/VTooltip/VTooltip'\nimport type { PropType, Ref, MaybeRef, ExtractPublicPropTypes, VNode, ComputedRef } from 'vue'\nimport type { makeTransitionProps } from '@nhtio/vuetifiable/components/transitions/createTransition'\n\nconst openInAppIcon = h(SvgIcon, { d: mdiOpenInApp })\nconst openInNewIcon = h(SvgIcon, { d: mdiOpenInNew })\nconst copyLinkIcon = h(SvgIcon, { d: mdiContentCopy })\n\ntype VListItemPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVListItemProps>>\ntype VBtnPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVBtnProps>>\ntype VMenuPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVMenuProps>>\ntype VTooltipPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVTooltipProps>>\ntype VSlideYTransitionPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeTransitionProps>>\ntype ExtractedVHoverSlots = ExtractSlotDefinitions<typeof VHover.slots>\ntype VHoverDefaultSlotProps = NamedSlotParameters<ExtractedVHoverSlots, 'default'>\ntype ExtractedVMenuSlots = ExtractSlotDefinitions<typeof VMenu.slots>\ntype VMenuActivatorSlotProps = NamedSlotParameters<ExtractedVMenuSlots, 'activator'>\ntype ExtractedVTooltipSlots = ExtractSlotDefinitions<typeof VTooltip.slots>\ntype VTooltipActivatorSlotProps = NamedSlotParameters<ExtractedVTooltipSlots, 'activator'>\n\nexport type ActionableRecord = {\n id: string | number\n [key: string]: any\n}\n\nexport type ActionIsActionableValidator = (record: ActionableRecord) => boolean\n\nexport type TernaryOperator = boolean | null\n\nexport type ActionCallback = (\n record: ActionableRecord\n) => TernaryOperator | Promise<TernaryOperator> | PromiseLike<TernaryOperator>\n\nexport type BulkActionResults = Map<ActionableRecord, TernaryOperator>\n\nexport type BulkActionCallback = (\n records: ActionableRecord[],\n updateProgress: (completed: number, total: number) => void\n) => BulkActionResults | Promise<BulkActionResults> | PromiseLike<BulkActionResults>\n\nexport type SuccessCallback = (results: BulkActionResults) => void\n\nexport type UndeterminedCallback = (results: BulkActionResults) => void\n\nexport type FailureCallback = (results: BulkActionResults) => void\n\nexport type CompleteCallback = (results: BulkActionResults) => void\n\ntype DispositionCallback = SuccessCallback | UndeterminedCallback | FailureCallback\n\nexport type ProgressCallback = (completed: number, total: number) => void\n\ninterface ResourcefulIndexAction {\n icon: IconValue\n title: string\n subtitle?: string | undefined\n pinned?: boolean | undefined\n actionable?: boolean | ActionIsActionableValidator | undefined\n maxSafeBulkActionRecords?: number | undefined\n maxBulkActionRecords?: number | undefined\n singleAsBulkActionMaxConcurrency?: number | undefined\n singleAsBulkActionStopOnError?: boolean | undefined\n}\n\nexport interface ResourcefulIndexUrlAction extends ResourcefulIndexAction {\n url: string | ((record: ActionableRecord) => string | null | undefined)\n target?: '_self' | '_blank' | '_parent' | '_top' | string | undefined\n}\n\nexport interface ResourcefulIndexFunctionAction extends ResourcefulIndexAction {\n action: ActionCallback\n bulkAction?: BulkActionCallback | undefined\n onSuccess?: SuccessCallback | undefined\n onUndetermined?: UndeterminedCallback | undefined\n onFailure?: FailureCallback | undefined\n onComplete?: CompleteCallback | undefined\n onProgress?: ProgressCallback | undefined\n}\n\nconst resourcefulIndexActionCommonSchema = {\n icon: joi\n .alternatives()\n .try(joi.string(), joi.object().unknown(true), joi.array(), joi.function())\n .required(),\n title: joi.string().required(),\n subtitle: joi.string().optional(),\n pinned: joi.boolean().optional(),\n actionable: joi.alternatives().try(joi.boolean(), joi.function()).optional(),\n maxSafeBulkActionRecords: joi.number().integer().min(1).optional(),\n maxBulkActionRecords: joi.number().integer().min(1).optional(),\n singleAsBulkActionMaxConcurrency: joi.number().integer().min(1).optional(),\n singleAsBulkActionStopOnError: joi.boolean().optional(),\n}\n\nconst resourcefulIndexUrlActionSchema = joi\n .object({\n ...resourcefulIndexActionCommonSchema,\n url: joi.alternatives().try(joi.string(), joi.function()).required(),\n target: joi.string().optional(),\n })\n .unknown(false)\n\nconst resourcefulIndexFunctionActionSchema = joi\n .object({\n ...resourcefulIndexActionCommonSchema,\n action: joi.function().required(),\n bulkAction: joi.function().optional(),\n onSuccess: joi.function().optional(),\n onUndetermined: joi.function().optional(),\n onFailure: joi.function().optional(),\n onComplete: joi.function().optional(),\n onProgress: joi.function().optional(),\n })\n .unknown(false)\n\nconst resourcefulIndexActionSchema = joi\n .alternatives()\n .try(resourcefulIndexUrlActionSchema, resourcefulIndexFunctionActionSchema)\n\nconst resourcefulIndexActionsSchema = joi.array().items(resourcefulIndexActionSchema)\n\nexport const isResourcefulIndexUrlAction = (val: unknown): val is ResourcefulIndexUrlAction => {\n const { error } = resourcefulIndexUrlActionSchema.validate(val, { abortEarly: true })\n return Boolean(!error)\n}\n\nexport const isResourcefulIndexFunctionAction = (\n val: unknown\n): val is ResourcefulIndexFunctionAction => {\n const { error } = resourcefulIndexFunctionActionSchema.validate(val, { abortEarly: true })\n return Boolean(!error)\n}\n\nconst isResourcefulIndexAction = (\n val: unknown\n): val is ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction => {\n const { error } = resourcefulIndexActionSchema.validate(val, { abortEarly: true })\n return Boolean(!error)\n}\n\nconst areResourcefulIndexActions = (\n val: unknown\n): val is Array<ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction> => {\n const { error } = resourcefulIndexActionsSchema.validate(val, { abortEarly: true })\n return Boolean(!error)\n}\n\nexport const makeResourcefulIndexActionsProps = propsFactory(\n {\n actions: {\n type: Array as PropType<Array<ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction>>,\n validator: areResourcefulIndexActions,\n default: () => [],\n },\n },\n 'ResourcefulIndexActions'\n)\n\nconst canPerformActionForRecord = (record: ActionableRecord, action: unknown) => {\n if (!isResourcefulIndexAction(action)) {\n return false\n }\n if (typeof action.actionable === 'boolean') {\n return action.actionable\n } else if (typeof action.actionable === 'function') {\n try {\n return action.actionable(record)\n } catch (e) {\n warn('Error evaluating actionable function for action:', action, e)\n return false\n }\n }\n}\n\nexport const canPerformBulkActionForRecords = (records: ActionableRecord[], action: unknown) => {\n if (!isResourcefulIndexAction(action)) return false\n if (\n records.length < 2 ||\n (typeof action.maxBulkActionRecords === 'number' &&\n records.length > action.maxBulkActionRecords)\n )\n return false\n if (isResourcefulIndexUrlAction(action)) {\n if (typeof action.url === 'function') {\n const fn = action.url as (record: ActionableRecord) => string | null | undefined\n const urls = records.map((record) => fn(record))\n return urls.some((url) => 'string' === typeof url && url.trim().length > 0)\n } else if (typeof action.url === 'string') {\n return true\n }\n return false\n } else if (isResourcefulIndexFunctionAction(action)) {\n return true\n }\n return false\n}\n\nconst canPerformBulkActionForActionableCount = (action: unknown, count: number) => {\n if (!isResourcefulIndexAction(action)) return false\n if (\n count < 2 ||\n (typeof action.maxBulkActionRecords === 'number' && count > action.maxBulkActionRecords)\n )\n return false\n return isResourcefulIndexUrlAction(action) || isResourcefulIndexFunctionAction(action)\n}\n\nconst canDisplayInBulkActionsDropdown = (action: unknown) => {\n if (!isResourcefulIndexAction(action)) return false\n if (typeof action.maxBulkActionRecords === 'number' && action.maxBulkActionRecords <= 1)\n return false\n return isResourcefulIndexUrlAction(action) || isResourcefulIndexFunctionAction(action)\n}\n\ntype BulkActionListItemOptions = Omit<\n VListItemPublicProps,\n | 'title'\n | 'subtitle'\n | 'icon'\n | 'prependIcon'\n | 'appendIcon'\n | 'value'\n | 'active'\n | 'onClick'\n | 'href'\n | 'replace'\n | 'to'\n | 'exact'\n | 'onClickOnce'\n | 'activeClass'\n | 'activeColor'\n | 'appendAvatar'\n | 'prependAvatar'\n | 'link'\n | 'nav'\n | 'disabled'\n>\n\nexport const useBulkActions = (\n actions: Ref<Array<ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction>>,\n allCount: Ref<number>,\n actionableCount: Ref<number>,\n onBulkActionInvoked: (\n action: ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction\n ) => void | Promise<void> | PromiseLike<void>,\n listItemOptions: MaybeRef<BulkActionListItemOptions> = {}\n) => {\n const bulkActionListItems: ComputedRef<Array<VNode>> = computed<Array<VNode>>(\n () =>\n Array.from(actions.value)\n .filter((v) => canDisplayInBulkActionsDropdown(v))\n .map((action, index) => {\n const opts: VListItemPublicProps = {\n ...toValue(listItemOptions),\n title: action.title,\n subtitle: action.subtitle,\n prependIcon: action.icon,\n disabled: !canPerformBulkActionForActionableCount(action, actionableCount.value),\n }\n return h(VListItem, {\n ...opts,\n key: `resourceful-index-bulk-action-${index}`,\n onClick: () => {\n if (onBulkActionInvoked) {\n onBulkActionInvoked(action)\n }\n },\n })\n }) as VNode[]\n )\n const canShowBulkActionList = computed(() => bulkActionListItems.value.length > 0)\n const bulkActionListDisabled = computed(\n () =>\n allCount.value === 0 ||\n Array.from(actions.value).every((a) => !canDisplayInBulkActionsDropdown(a))\n )\n\n return { bulkActionListItems, canShowBulkActionList, bulkActionListDisabled }\n}\n\nexport const useTableActions = (\n actions: Ref<Array<ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction>>,\n disabled: MaybeRef<string | boolean | undefined>,\n listItemOptions: MaybeRef<BulkActionListItemOptions> = {}\n) => {\n const { copy: copyToClipboard, renderClipboardFeedback } = useClipboard()\n const t = useI18n()\n const contextMenuX = ref<number | null>(null)\n const contextMenuY = ref<number | null>(null)\n const contextRecord = ref<ActionableRecord | null>(null)\n const contextAction = ref<ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction | null>(null)\n const closeContextMenu = () => {\n contextMenuX.value = null\n contextMenuY.value = null\n contextRecord.value = null\n contextAction.value = null\n }\n const contextMenuIsOpen = computed(() => {\n return (\n contextMenuX.value !== null &&\n contextMenuY.value !== null &&\n (contextRecord.value !== null || contextAction.value !== null)\n )\n })\n const contextMenuVariant = computed<'none' | 'record' | 'action'>(() => {\n if (contextMenuX.value === null || contextMenuY.value === null) return 'none'\n if (contextAction.value !== null) return 'action'\n if (contextRecord.value !== null) return 'record'\n return 'none'\n })\n const contextElement = ref<HTMLElement | null>(null)\n\n const recordsProcessingAction = ref<string[]>([])\n\n const processResourcefulIndexFunctionAction = async (\n action: ResourcefulIndexFunctionAction,\n record: ActionableRecord\n ) => {\n const recordId = String(record.id)\n if (recordsProcessingAction.value.includes(recordId)) return\n recordsProcessingAction.value.push(recordId)\n let result: TernaryOperator = null\n const callCallback = async (\n callback: DispositionCallback,\n rec: ActionableRecord,\n res: TernaryOperator\n ) => {\n const payload = new Map<ActionableRecord, TernaryOperator>([[rec, res]])\n try {\n await callback(payload)\n } catch (e) {\n warn('Error executing callback for action:', action, e)\n }\n }\n if (action.onProgress) {\n try {\n action.onProgress(0, 1)\n } catch (e) {\n warn('Error executing onProgress callback for action:', action, e)\n }\n }\n try {\n result = await action.action(record)\n } catch (e) {\n result = false\n warn('Error executing action function for record:', record, e)\n }\n const idx = recordsProcessingAction.value.indexOf(recordId)\n if (idx > -1) {\n recordsProcessingAction.value.splice(idx, 1)\n }\n if (action.onProgress) {\n try {\n action.onProgress(1, 1)\n } catch (e) {\n warn('Error executing onProgress callback for action:', action, e)\n }\n }\n const promises: Array<Promise<void>> = []\n if (action.onSuccess && result === true) {\n promises.push(callCallback(action.onSuccess, record, result))\n }\n if (action.onUndetermined && result === null) {\n promises.push(callCallback(action.onUndetermined, record, result))\n }\n if (action.onFailure && result === false) {\n promises.push(callCallback(action.onFailure, record, result))\n }\n if (action.onComplete) {\n promises.push(callCallback(action.onComplete, record, result))\n }\n if (promises.length > 0) {\n await Promise.all(promises)\n }\n return result\n }\n\n const actionForRecordIsProcessing = (record: ActionableRecord) => {\n if (record && 'id' in record) {\n const recordId = String(record.id)\n return recordsProcessingAction.value.includes(recordId)\n }\n return false\n }\n\n const actionsForRecordAreDisabled = (record: ActionableRecord) => {\n if (true === toValue(disabled)) return true\n return actionForRecordIsProcessing(record)\n }\n\n const isProcessing = computed(() => recordsProcessingAction.value.length > 0)\n\n const onPinnedActionContextMenuRequest = async (\n action: ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction,\n record: ActionableRecord,\n e: MouseEvent\n ) => {\n if (actionsForRecordAreDisabled(record)) return\n if (contextMenuIsOpen.value) {\n closeContextMenu()\n await nextTick()\n }\n contextMenuX.value = 'clientX' in e ? e.clientX : null\n contextMenuY.value = 'clientY' in e ? e.clientY : null\n contextRecord.value = record\n contextAction.value = action\n }\n const pinnedActions = computed(() =>\n actions.value.filter((a) => a.pinned && isResourcefulIndexAction(a))\n )\n const unpinnedActions = computed(() =>\n actions.value.filter((a) => !a.pinned && isResourcefulIndexAction(a))\n )\n const renderActionsForRecord = (record: ActionableRecord) => {\n const pinnedActionsForRecord = pinnedActions.value.filter((a) =>\n canPerformActionForRecord(record, a)\n )\n const unpinnedActionsForRecord = unpinnedActions.value.filter((a) =>\n canPerformActionForRecord(record, a)\n )\n if (pinnedActionsForRecord.length === 0 && unpinnedActionsForRecord.length === 0) return null\n const isActionProcessing = actionForRecordIsProcessing(record)\n return h(\n 'div',\n {\n class: ['__resourceful_index_actions_cell__actions', 'd-flex', 'align-center', 'mx-2'],\n },\n [\n ...pinnedActionsForRecord.map((action, index) => {\n const tooltipListItemOpts: VListItemPublicProps = {\n density: 'compact',\n ...toValue(listItemOptions),\n title: action.title,\n subtitle: action.subtitle,\n }\n const btnItemOpts: VBtnPublicProps = {\n // @ts-expect-error\n onContextmenu: (e: MouseEvent) => {\n if (e) {\n e.preventDefault()\n e.stopPropagation()\n e.stopImmediatePropagation()\n if (actionsForRecordAreDisabled(record)) return\n onPinnedActionContextMenuRequest(action, record, e)\n }\n },\n }\n if (isResourcefulIndexUrlAction(action)) {\n const href =\n typeof action.url === 'function' ? action.url(toUnreactive(record)) : action.url\n btnItemOpts.href = href || undefined\n // @ts-expect-error\n btnItemOpts.target = action.target || undefined\n } else if (isResourcefulIndexFunctionAction(action)) {\n // @ts-expect-error\n btnItemOpts.onClick = () =>\n processResourcefulIndexFunctionAction(action, toUnreactive(record))\n // @ts-expect-error\n btnItemOpts.onKeydown = (e: KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n processResourcefulIndexFunctionAction(action, toUnreactive(record))\n }\n }\n }\n return h(\n VHover,\n { key: `pinned-action-${index}` },\n {\n default: ({ isHovering, props: hoverProvidedProps }: VHoverDefaultSlotProps[0]) =>\n h(\n VTooltip,\n {\n openDelay: 750,\n interactive: false,\n // @ts-expect-error\n stickToTarget: true,\n } satisfies VTooltipPublicProps,\n {\n activator: ({\n isActive,\n props: tooltipActivatorProps,\n }: VTooltipActivatorSlotProps[0]) =>\n h(VBtn, {\n ...hoverProvidedProps,\n ...tooltipActivatorProps,\n ...btnItemOpts,\n variant: 'text',\n icon: action.icon,\n size: 'small',\n style: { opacity: isHovering || isActive ? 1 : 0.5 },\n class: [\n {\n 'me-2':\n index < pinnedActionsForRecord.length - 1 ||\n unpinnedActionsForRecord.length > 0,\n },\n ],\n disabled: Boolean(toValue(disabled)),\n } satisfies VBtnPublicProps),\n default: () =>\n h(VListItem, {\n ...tooltipListItemOpts,\n }),\n }\n ),\n }\n )\n }),\n unpinnedActionsForRecord.length === 0\n ? isActionProcessing\n ? h(VBtn, {\n icon: true,\n size: 'small',\n loading: true,\n variant: 'text',\n } satisfies VBtnPublicProps)\n : null\n : h(\n VHover,\n {},\n {\n default: ({ isHovering, props: hoverProvidedProps }: VHoverDefaultSlotProps[0]) =>\n h(VMenu, { closeOnContentClick: true } satisfies VMenuPublicProps, {\n activator: ({\n isActive,\n props: menuActivatorProps,\n }: VMenuActivatorSlotProps[0]) =>\n h(VBtn, {\n ...hoverProvidedProps,\n ...menuActivatorProps,\n variant: 'text',\n icon: () => h(SvgIcon, { d: mdiDotsVertical }),\n size: 'small',\n style: { opacity: isHovering || isActive ? 1 : 0.5 },\n class: [],\n loading: isActionProcessing,\n } satisfies VBtnPublicProps),\n default: () =>\n h(VCard, { color: 'surface' }, () => [\n ...unpinnedActionsForRecord.map((action, index) => {\n const key = `resourceful-index-action-${index}`\n const opts: VListItemPublicProps = {\n ...toValue(listItemOptions),\n title: action.title,\n subtitle: action.subtitle,\n prependIcon: action.icon,\n disabled: Boolean(toValue(disabled)),\n }\n if (isResourcefulIndexUrlAction(action)) {\n const href =\n typeof action.url === 'function'\n ? action.url(toUnreactive(record))\n : action.url\n opts.href = href || undefined\n // @ts-expect-error\n opts.target = action.target || undefined\n opts.link = typeof href === 'string' && href.trim().length > 0\n } else if (isResourcefulIndexFunctionAction(action)) {\n opts.onClick = () =>\n processResourcefulIndexFunctionAction(action, toUnreactive(record))\n // @ts-expect-error\n opts.onKeydown = (e: KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n processResourcefulIndexFunctionAction(action, toUnreactive(record))\n }\n }\n }\n return h(VListItem, { ...opts, key })\n }),\n ]),\n }),\n }\n ),\n ]\n )\n }\n const reactiveContextMenuRenderer = () => {\n const additionalStyles =\n null === contextMenuY.value || null === contextMenuX.value\n ? { width: 0, height: 0, overflow: 'hidden' }\n : {}\n return h(\n 'div',\n {\n ref: contextElement,\n style: {\n position: 'fixed',\n top: null === contextMenuY.value ? 0 : convertToUnit(contextMenuY.value),\n left: null === contextMenuX.value ? 0 : convertToUnit(contextMenuX.value),\n zIndex: 5,\n ...additionalStyles,\n },\n },\n h(\n VSlideYTransition,\n {\n mode: 'in-out',\n } satisfies VSlideYTransitionPublicProps,\n () => {\n const variant = contextMenuVariant.value\n if (variant === 'action') {\n return h(VCard, { color: 'surface', minHeight: 40, minWidth: 50 }, () => {\n const opts: VListItemPublicProps = {\n ...toValue(listItemOptions),\n disabled: Boolean(toValue(disabled)),\n }\n const action: ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction | null =\n toValue(contextAction.value)\n if (isResourcefulIndexUrlAction(action)) {\n const href =\n typeof action.url === 'function'\n ? action.url(toUnreactive(contextRecord.value!))\n : action.url\n opts.href = href || undefined\n return [\n h(VListItem, {\n ...opts,\n title: t('resourceful.action.openInApp'),\n prependIcon: () => openInAppIcon,\n onClick: () => {\n closeContextMenu()\n },\n }),\n h(VListItem, {\n ...opts,\n title: t('resourceful.action.openInNew'),\n prependIcon: () => openInNewIcon,\n target: '_blank',\n onClick: () => {\n closeContextMenu()\n },\n }),\n h(\n VListItem,\n stripUndefinedValuesFromObject({\n ...opts,\n title: t('resourceful.action.copyLink'),\n prependIcon: () => copyLinkIcon,\n href: undefined,\n onClick: () => {\n if ('string' === typeof href && href.trim().length > 0) {\n copyToClipboard(href)\n }\n closeContextMenu()\n },\n })\n ),\n ]\n } else if (isResourcefulIndexFunctionAction(action)) {\n return [\n h(VListItem, {\n ...opts,\n title: action.title,\n subtitle: action.subtitle,\n prependIcon: action.icon,\n onClick: () => {\n processResourcefulIndexFunctionAction(\n action,\n toUnreactive(contextRecord.value!)\n )\n closeContextMenu()\n },\n }),\n ]\n }\n return null\n })\n } else if (variant === 'record') {\n return h(VCard, { color: 'surface', minHeight: 40, minWidth: 50 }, () =>\n Array.from(actions.value).map((action, index) => {\n const key = `resourceful-index-context-menu-action-${index}`\n const opts: VListItemPublicProps = {\n ...toValue(listItemOptions),\n title: action.title,\n subtitle: action.subtitle,\n prependIcon: action.icon,\n disabled: Boolean(toValue(disabled)),\n }\n if (isResourcefulIndexUrlAction(action)) {\n const href =\n typeof action.url === 'function'\n ? action.url(toUnreactive(contextRecord.value!))\n : action.url\n opts.href = href || undefined\n // @ts-expect-error\n opts.target = action.target || undefined\n opts.link = typeof href === 'string' && href.trim().length > 0\n opts.onClick = () => {\n closeContextMenu()\n }\n // @ts-expect-error\n opts.onKeydown = (e: KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n closeContextMenu()\n }\n }\n } else if (isResourcefulIndexFunctionAction(action)) {\n opts.onClick = () => {\n processResourcefulIndexFunctionAction(\n action,\n toUnreactive(contextRecord.value!)\n )\n closeContextMenu()\n }\n // @ts-expect-error\n opts.onKeydown = (e: KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n processResourcefulIndexFunctionAction(\n action,\n toUnreactive(contextRecord.value!)\n )\n closeContextMenu()\n }\n }\n }\n return h(VListItem, { ...opts, key })\n })\n )\n }\n return null\n }\n )\n )\n }\n const openContextMenuForRecord = async (e: MouseEvent | TouchEvent, record: ActionableRecord) => {\n if (actionsForRecordAreDisabled(record)) return\n if (contextMenuIsOpen.value) {\n closeContextMenu()\n await nextTick()\n }\n contextMenuX.value =\n 'clientX' in e\n ? e.clientX\n : 'touches' in e && e.touches.length > 0\n ? e.touches[0].clientX\n : null\n contextMenuY.value =\n 'clientY' in e\n ? e.clientY\n : 'touches' in e && e.touches.length > 0\n ? e.touches[0].clientY\n : null\n contextAction.value = null\n contextRecord.value = record\n }\n const windowClickListener = (e: MouseEvent) => {\n if (contextElement.value === null) return\n if (contextElement.value?.contains(e.target as Node)) return\n closeContextMenu()\n }\n const windowContextMenuListener = (e: MouseEvent) => {\n if (contextElement.value === null) return\n if (contextElement.value?.contains(e.target as Node)) return\n closeContextMenu()\n }\n const windowTouchListener = (e: TouchEvent) => {\n if (contextElement.value === null) return\n if (contextElement.value?.contains(e.target as Node)) return\n closeContextMenu()\n }\n onMounted(() => {\n window.addEventListener('click', windowClickListener)\n window.addEventListener('contextmenu', windowContextMenuListener)\n window.addEventListener('touchstart', windowTouchListener)\n window.addEventListener('scroll', closeContextMenu)\n window.addEventListener('resize', closeContextMenu)\n if (SUPPORTS_VISUAL_VIEWPORT) {\n window.visualViewport!.addEventListener('scroll', closeContextMenu)\n window.visualViewport!.addEventListener('resize', closeContextMenu)\n }\n })\n onBeforeUnmount(() => {\n closeContextMenu()\n window.removeEventListener('click', windowClickListener)\n window.removeEventListener('contextmenu', windowContextMenuListener)\n window.removeEventListener('touchstart', windowTouchListener)\n window.removeEventListener('scroll', closeContextMenu)\n window.removeEventListener('resize', closeContextMenu)\n if (SUPPORTS_VISUAL_VIEWPORT) {\n window.visualViewport!.removeEventListener('scroll', closeContextMenu)\n window.visualViewport!.removeEventListener('resize', closeContextMenu)\n }\n })\n return {\n renderActionsForRecord,\n reactiveContextMenuRenderer,\n openContextMenuForRecord,\n renderClipboardFeedback,\n contextMenuIsOpen,\n actionForRecordIsProcessing,\n isProcessing,\n }\n}\n"],"names":["makeVTooltipProps","propsFactory","omit","makeVOverlayProps","VTooltip","genericComponent","value","props","_ref","slots","isActive","useProxiedModel","scopeId","useScopeId","uid","useId","id","toRef","overlay","ref","location","computed","origin","transition","activatorProps","mergeProps","useRender","overlayProps","VOverlay","_createVNode","_mergeProps","$event","_len","args","_key","forwardRefs","openInAppIcon","h","SvgIcon","mdiOpenInApp","openInNewIcon","mdiOpenInNew","copyLinkIcon","mdiContentCopy","resourcefulIndexActionCommonSchema","joi","resourcefulIndexUrlActionSchema","resourcefulIndexFunctionActionSchema","resourcefulIndexActionSchema","resourcefulIndexActionsSchema","isResourcefulIndexUrlAction","val","error","isResourcefulIndexFunctionAction","isResourcefulIndexAction","areResourcefulIndexActions","makeResourcefulIndexActionsProps","canPerformActionForRecord","record","action","e","warn","canPerformBulkActionForRecords","records","fn","url","canPerformBulkActionForActionableCount","count","canDisplayInBulkActionsDropdown","useBulkActions","actions","allCount","actionableCount","onBulkActionInvoked","listItemOptions","bulkActionListItems","v","index","opts","toValue","VListItem","canShowBulkActionList","bulkActionListDisabled","a","useTableActions","disabled","copyToClipboard","renderClipboardFeedback","useClipboard","t","useI18n","contextMenuX","contextMenuY","contextRecord","contextAction","closeContextMenu","contextMenuIsOpen","contextMenuVariant","contextElement","recordsProcessingAction","processResourcefulIndexFunctionAction","recordId","result","callCallback","callback","rec","res","payload","idx","promises","actionForRecordIsProcessing","actionsForRecordAreDisabled","isProcessing","onPinnedActionContextMenuRequest","nextTick","pinnedActions","unpinnedActions","renderActionsForRecord","pinnedActionsForRecord","unpinnedActionsForRecord","isActionProcessing","tooltipListItemOpts","btnItemOpts","href","toUnreactive","VHover","isHovering","hoverProvidedProps","tooltipActivatorProps","VBtn","VMenu","menuActivatorProps","mdiDotsVertical","VCard","key","reactiveContextMenuRenderer","additionalStyles","convertToUnit","VSlideYTransition","variant","stripUndefinedValuesFromObject","openContextMenuForRecord","windowClickListener","windowContextMenuListener","windowTouchListener","onMounted","SUPPORTS_VISUAL_VIEWPORT","onBeforeUnmount"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"actions-BEmdy8bu.mjs","sources":["../node_modules/.pnpm/vuetify@3.10.9_typescript@5.9.3_vue@3.5.24_typescript@5.9.3_/node_modules/vuetify/lib/components/VTooltip/VTooltip.js","../src/private/resourceful-index/actions.ts"],"sourcesContent":["import { mergeProps as _mergeProps, createVNode as _createVNode } from \"vue\";\n// Styles\nimport \"./VTooltip.css\";\n\n// Components\nimport { VOverlay } from \"../VOverlay/index.js\";\nimport { makeVOverlayProps } from \"../VOverlay/VOverlay.js\"; // Composables\nimport { forwardRefs } from \"../../composables/forwardRefs.js\";\nimport { useProxiedModel } from \"../../composables/proxiedModel.js\";\nimport { useScopeId } from \"../../composables/scopeId.js\"; // Utilities\nimport { computed, mergeProps, ref, toRef, useId } from 'vue';\nimport { genericComponent, omit, propsFactory, useRender } from \"../../util/index.js\"; // Types\nexport const makeVTooltipProps = propsFactory({\n id: String,\n interactive: Boolean,\n text: String,\n ...omit(makeVOverlayProps({\n closeOnBack: false,\n location: 'end',\n locationStrategy: 'connected',\n eager: true,\n minWidth: 0,\n offset: 10,\n openOnClick: false,\n openOnHover: true,\n origin: 'auto',\n scrim: false,\n scrollStrategy: 'reposition',\n transition: null\n }), ['absolute', 'persistent'])\n}, 'VTooltip');\nexport const VTooltip = genericComponent()({\n name: 'VTooltip',\n props: makeVTooltipProps(),\n emits: {\n 'update:modelValue': value => true\n },\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n const isActive = useProxiedModel(props, 'modelValue');\n const {\n scopeId\n } = useScopeId();\n const uid = useId();\n const id = toRef(() => props.id || `v-tooltip-${uid}`);\n const overlay = ref();\n const location = computed(() => {\n return props.location.split(' ').length > 1 ? props.location : props.location + ' center';\n });\n const origin = computed(() => {\n return props.origin === 'auto' || props.origin === 'overlap' || props.origin.split(' ').length > 1 || props.location.split(' ').length > 1 ? props.origin : props.origin + ' center';\n });\n const transition = toRef(() => {\n if (props.transition != null) return props.transition;\n return isActive.value ? 'scale-transition' : 'fade-transition';\n });\n const activatorProps = computed(() => mergeProps({\n 'aria-describedby': id.value\n }, props.activatorProps));\n useRender(() => {\n const overlayProps = VOverlay.filterProps(props);\n return _createVNode(VOverlay, _mergeProps({\n \"ref\": overlay,\n \"class\": ['v-tooltip', {\n 'v-tooltip--interactive': props.interactive\n }, props.class],\n \"style\": props.style,\n \"id\": id.value\n }, overlayProps, {\n \"modelValue\": isActive.value,\n \"onUpdate:modelValue\": $event => isActive.value = $event,\n \"transition\": transition.value,\n \"absolute\": true,\n \"location\": location.value,\n \"origin\": origin.value,\n \"persistent\": true,\n \"role\": \"tooltip\",\n \"activatorProps\": activatorProps.value,\n \"_disableGlobalStack\": true\n }, scopeId), {\n activator: slots.activator,\n default: function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return slots.default?.(...args) ?? props.text;\n }\n });\n });\n return forwardRefs({}, overlay);\n }\n});\n//# sourceMappingURL=VTooltip.js.map","import { useI18n } from '../ioc'\nimport { SvgIcon } from '../svg-icon'\nimport { VBtn } from 'vuetify/components/VBtn'\nimport { useClipboard } from '../ux/clipboard'\nimport { VMenu } from 'vuetify/components/VMenu'\nimport { VCard } from 'vuetify/components/VCard'\nimport { joi } from '@nhtio/lucid-resourceful/joi'\nimport { VHover } from 'vuetify/components/VHover'\nimport { VListItem } from 'vuetify/components/VList'\nimport { VTooltip } from 'vuetify/components/VTooltip'\nimport { SUPPORTS_VISUAL_VIEWPORT } from '../ux/display'\nimport { convertToUnit } from '@nhtio/vuetifiable/util/helpers'\nimport { IconValue } from '@nhtio/vuetifiable/composables/icons'\nimport { VSlideYTransition } from 'vuetify/components/transitions'\nimport { propsFactory } from '@nhtio/vuetifiable/util/propsFactory'\nimport { stripUndefinedValuesFromObject, toUnreactive } from '../common/utils'\nimport { mdiDotsVertical, mdiOpenInApp, mdiOpenInNew, mdiContentCopy } from '@mdi/js'\nimport { warn, computed, h, toValue, ref, onMounted, onBeforeUnmount, nextTick } from 'vue'\nimport type { makeVBtnProps } from '@nhtio/vuetifiable/components/VBtn/VBtn'\nimport type { makeVMenuProps } from '@nhtio/vuetifiable/components/VMenu/VMenu'\nimport type { NamedSlotParameters, ExtractSlotDefinitions } from '../common/types'\nimport type { makeVListItemProps } from '@nhtio/vuetifiable/components/VList/VListItem'\nimport type { makeVTooltipProps } from '@nhtio/vuetifiable/components/VTooltip/VTooltip'\nimport type { PropType, Ref, MaybeRef, ExtractPublicPropTypes, VNode, ComputedRef } from 'vue'\nimport type { makeTransitionProps } from '@nhtio/vuetifiable/components/transitions/createTransition'\n\nconst openInAppIcon = h(SvgIcon, { d: mdiOpenInApp })\nconst openInNewIcon = h(SvgIcon, { d: mdiOpenInNew })\nconst copyLinkIcon = h(SvgIcon, { d: mdiContentCopy })\n\ntype VListItemPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVListItemProps>>\ntype VBtnPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVBtnProps>>\ntype VMenuPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVMenuProps>>\ntype VTooltipPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeVTooltipProps>>\ntype VSlideYTransitionPublicProps = ExtractPublicPropTypes<ReturnType<typeof makeTransitionProps>>\ntype ExtractedVHoverSlots = ExtractSlotDefinitions<typeof VHover.slots>\ntype VHoverDefaultSlotProps = NamedSlotParameters<ExtractedVHoverSlots, 'default'>\ntype ExtractedVMenuSlots = ExtractSlotDefinitions<typeof VMenu.slots>\ntype VMenuActivatorSlotProps = NamedSlotParameters<ExtractedVMenuSlots, 'activator'>\ntype ExtractedVTooltipSlots = ExtractSlotDefinitions<typeof VTooltip.slots>\ntype VTooltipActivatorSlotProps = NamedSlotParameters<ExtractedVTooltipSlots, 'activator'>\n\nexport type ActionableRecord = {\n id: string | number\n [key: string]: any\n}\n\nexport type ActionIsActionableValidator = (record: ActionableRecord) => boolean\n\nexport type TernaryOperator = boolean | null\n\nexport type ActionCallback = (\n record: ActionableRecord\n) => TernaryOperator | Promise<TernaryOperator> | PromiseLike<TernaryOperator>\n\nexport type BulkActionResults = Map<ActionableRecord, TernaryOperator>\n\nexport type BulkActionCallback = (\n records: ActionableRecord[],\n updateProgress: (completed: number, total: number) => void\n) => BulkActionResults | Promise<BulkActionResults> | PromiseLike<BulkActionResults>\n\nexport type SuccessCallback = (results: BulkActionResults) => void\n\nexport type UndeterminedCallback = (results: BulkActionResults) => void\n\nexport type FailureCallback = (results: BulkActionResults) => void\n\nexport type CompleteCallback = (results: BulkActionResults) => void\n\ntype DispositionCallback = SuccessCallback | UndeterminedCallback | FailureCallback\n\nexport type ProgressCallback = (completed: number, total: number) => void\n\ninterface ResourcefulIndexAction {\n icon: IconValue\n title: string\n subtitle?: string | undefined\n pinned?: boolean | undefined\n actionable?: boolean | ActionIsActionableValidator | undefined\n maxSafeBulkActionRecords?: number | undefined\n maxBulkActionRecords?: number | undefined\n singleAsBulkActionMaxConcurrency?: number | undefined\n singleAsBulkActionStopOnError?: boolean | undefined\n}\n\nexport interface ResourcefulIndexUrlAction extends ResourcefulIndexAction {\n url: string | ((record: ActionableRecord) => string | null | undefined)\n target?: '_self' | '_blank' | '_parent' | '_top' | string | undefined\n}\n\nexport interface ResourcefulIndexFunctionAction extends ResourcefulIndexAction {\n action: ActionCallback\n bulkAction?: BulkActionCallback | undefined\n onSuccess?: SuccessCallback | undefined\n onUndetermined?: UndeterminedCallback | undefined\n onFailure?: FailureCallback | undefined\n onComplete?: CompleteCallback | undefined\n onProgress?: ProgressCallback | undefined\n}\n\nconst resourcefulIndexActionCommonSchema = {\n icon: joi\n .alternatives()\n .try(joi.string(), joi.object().unknown(true), joi.array(), joi.function())\n .required(),\n title: joi.string().required(),\n subtitle: joi.string().optional(),\n pinned: joi.boolean().optional(),\n actionable: joi.alternatives().try(joi.boolean(), joi.function()).optional(),\n maxSafeBulkActionRecords: joi.number().integer().min(1).optional(),\n maxBulkActionRecords: joi.number().integer().min(1).optional(),\n singleAsBulkActionMaxConcurrency: joi.number().integer().min(1).optional(),\n singleAsBulkActionStopOnError: joi.boolean().optional(),\n}\n\nconst resourcefulIndexUrlActionSchema = joi\n .object({\n ...resourcefulIndexActionCommonSchema,\n url: joi.alternatives().try(joi.string(), joi.function()).required(),\n target: joi.string().optional(),\n })\n .unknown(false)\n\nconst resourcefulIndexFunctionActionSchema = joi\n .object({\n ...resourcefulIndexActionCommonSchema,\n action: joi.function().required(),\n bulkAction: joi.function().optional(),\n onSuccess: joi.function().optional(),\n onUndetermined: joi.function().optional(),\n onFailure: joi.function().optional(),\n onComplete: joi.function().optional(),\n onProgress: joi.function().optional(),\n })\n .unknown(false)\n\nconst resourcefulIndexActionSchema = joi\n .alternatives()\n .try(resourcefulIndexUrlActionSchema, resourcefulIndexFunctionActionSchema)\n\nconst resourcefulIndexActionsSchema = joi.array().items(resourcefulIndexActionSchema)\n\nexport const isResourcefulIndexUrlAction = (val: unknown): val is ResourcefulIndexUrlAction => {\n const { error } = resourcefulIndexUrlActionSchema.validate(val, { abortEarly: true })\n return Boolean(!error)\n}\n\nexport const isResourcefulIndexFunctionAction = (\n val: unknown\n): val is ResourcefulIndexFunctionAction => {\n const { error } = resourcefulIndexFunctionActionSchema.validate(val, { abortEarly: true })\n return Boolean(!error)\n}\n\nconst isResourcefulIndexAction = (\n val: unknown\n): val is ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction => {\n const { error } = resourcefulIndexActionSchema.validate(val, { abortEarly: true })\n return Boolean(!error)\n}\n\nconst areResourcefulIndexActions = (\n val: unknown\n): val is Array<ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction> => {\n const { error } = resourcefulIndexActionsSchema.validate(val, { abortEarly: true })\n return Boolean(!error)\n}\n\nexport const makeResourcefulIndexActionsProps = propsFactory(\n {\n actions: {\n type: Array as PropType<Array<ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction>>,\n validator: areResourcefulIndexActions,\n default: () => [],\n },\n },\n 'ResourcefulIndexActions'\n)\n\nconst canPerformActionForRecord = (record: ActionableRecord, action: unknown) => {\n if (!isResourcefulIndexAction(action)) {\n return false\n }\n if (typeof action.actionable === 'boolean') {\n return action.actionable\n } else if (typeof action.actionable === 'function') {\n try {\n return action.actionable(record)\n } catch (e) {\n warn('Error evaluating actionable function for action:', action, e)\n return false\n }\n }\n}\n\nexport const canPerformBulkActionForRecords = (records: ActionableRecord[], action: unknown) => {\n if (!isResourcefulIndexAction(action)) return false\n if (\n records.length < 2 ||\n (typeof action.maxBulkActionRecords === 'number' &&\n records.length > action.maxBulkActionRecords)\n )\n return false\n if (isResourcefulIndexUrlAction(action)) {\n if (typeof action.url === 'function') {\n const fn = action.url as (record: ActionableRecord) => string | null | undefined\n const urls = records.map((record) => fn(record))\n return urls.some((url) => 'string' === typeof url && url.trim().length > 0)\n } else if (typeof action.url === 'string') {\n return true\n }\n return false\n } else if (isResourcefulIndexFunctionAction(action)) {\n return true\n }\n return false\n}\n\nconst canPerformBulkActionForActionableCount = (action: unknown, count: number) => {\n if (!isResourcefulIndexAction(action)) return false\n if (\n count < 2 ||\n (typeof action.maxBulkActionRecords === 'number' && count > action.maxBulkActionRecords)\n )\n return false\n return isResourcefulIndexUrlAction(action) || isResourcefulIndexFunctionAction(action)\n}\n\nconst canDisplayInBulkActionsDropdown = (action: unknown) => {\n if (!isResourcefulIndexAction(action)) return false\n if (typeof action.maxBulkActionRecords === 'number' && action.maxBulkActionRecords <= 1)\n return false\n return isResourcefulIndexUrlAction(action) || isResourcefulIndexFunctionAction(action)\n}\n\ntype BulkActionListItemOptions = Omit<\n VListItemPublicProps,\n | 'title'\n | 'subtitle'\n | 'icon'\n | 'prependIcon'\n | 'appendIcon'\n | 'value'\n | 'active'\n | 'onClick'\n | 'href'\n | 'replace'\n | 'to'\n | 'exact'\n | 'onClickOnce'\n | 'activeClass'\n | 'activeColor'\n | 'appendAvatar'\n | 'prependAvatar'\n | 'link'\n | 'nav'\n | 'disabled'\n>\n\nexport const useBulkActions = (\n actions: Ref<Array<ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction>>,\n allCount: Ref<number>,\n actionableCount: Ref<number>,\n onBulkActionInvoked: (\n action: ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction\n ) => void | Promise<void> | PromiseLike<void>,\n listItemOptions: MaybeRef<BulkActionListItemOptions> = {}\n) => {\n const bulkActionListItems: ComputedRef<Array<VNode>> = computed<Array<VNode>>(\n () =>\n Array.from(actions.value)\n .filter((v) => canDisplayInBulkActionsDropdown(v))\n .map((action, index) => {\n const opts: VListItemPublicProps = {\n ...toValue(listItemOptions),\n title: action.title,\n subtitle: action.subtitle,\n prependIcon: action.icon,\n disabled: !canPerformBulkActionForActionableCount(action, actionableCount.value),\n }\n return h(VListItem, {\n ...opts,\n key: `resourceful-index-bulk-action-${index}`,\n onClick: () => {\n if (onBulkActionInvoked) {\n onBulkActionInvoked(action)\n }\n },\n })\n }) as VNode[]\n )\n const canShowBulkActionList = computed(() => bulkActionListItems.value.length > 0)\n const bulkActionListDisabled = computed(\n () =>\n allCount.value === 0 ||\n Array.from(actions.value).every((a) => !canDisplayInBulkActionsDropdown(a))\n )\n\n return { bulkActionListItems, canShowBulkActionList, bulkActionListDisabled }\n}\n\nexport const useTableActions = (\n actions: Ref<Array<ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction>>,\n disabled: MaybeRef<string | boolean | undefined>,\n listItemOptions: MaybeRef<BulkActionListItemOptions> = {}\n) => {\n const { copy: copyToClipboard, renderClipboardFeedback } = useClipboard()\n const t = useI18n()\n const contextMenuX = ref<number | null>(null)\n const contextMenuY = ref<number | null>(null)\n const contextRecord = ref<ActionableRecord | null>(null)\n const contextAction = ref<ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction | null>(null)\n const closeContextMenu = () => {\n contextMenuX.value = null\n contextMenuY.value = null\n contextRecord.value = null\n contextAction.value = null\n }\n const contextMenuIsOpen = computed(() => {\n return (\n contextMenuX.value !== null &&\n contextMenuY.value !== null &&\n (contextRecord.value !== null || contextAction.value !== null)\n )\n })\n const contextMenuVariant = computed<'none' | 'record' | 'action'>(() => {\n if (contextMenuX.value === null || contextMenuY.value === null) return 'none'\n if (contextAction.value !== null) return 'action'\n if (contextRecord.value !== null) return 'record'\n return 'none'\n })\n const contextElement = ref<HTMLElement | null>(null)\n\n const recordsProcessingAction = ref<string[]>([])\n\n const processResourcefulIndexFunctionAction = async (\n action: ResourcefulIndexFunctionAction,\n record: ActionableRecord\n ) => {\n const recordId = String(record.id)\n if (recordsProcessingAction.value.includes(recordId)) return\n recordsProcessingAction.value.push(recordId)\n let result: TernaryOperator = null\n const callCallback = async (\n callback: DispositionCallback,\n rec: ActionableRecord,\n res: TernaryOperator\n ) => {\n const payload = new Map<ActionableRecord, TernaryOperator>([[rec, res]])\n try {\n await callback(payload)\n } catch (e) {\n warn('Error executing callback for action:', action, e)\n }\n }\n if (action.onProgress) {\n try {\n action.onProgress(0, 1)\n } catch (e) {\n warn('Error executing onProgress callback for action:', action, e)\n }\n }\n try {\n result = await action.action(record)\n } catch (e) {\n result = false\n warn('Error executing action function for record:', record, e)\n }\n const idx = recordsProcessingAction.value.indexOf(recordId)\n if (idx > -1) {\n recordsProcessingAction.value.splice(idx, 1)\n }\n if (action.onProgress) {\n try {\n action.onProgress(1, 1)\n } catch (e) {\n warn('Error executing onProgress callback for action:', action, e)\n }\n }\n const promises: Array<Promise<void>> = []\n if (action.onSuccess && result === true) {\n promises.push(callCallback(action.onSuccess, record, result))\n }\n if (action.onUndetermined && result === null) {\n promises.push(callCallback(action.onUndetermined, record, result))\n }\n if (action.onFailure && result === false) {\n promises.push(callCallback(action.onFailure, record, result))\n }\n if (action.onComplete) {\n promises.push(callCallback(action.onComplete, record, result))\n }\n if (promises.length > 0) {\n await Promise.all(promises)\n }\n return result\n }\n\n const actionForRecordIsProcessing = (record: ActionableRecord) => {\n if (record && 'id' in record) {\n const recordId = String(record.id)\n return recordsProcessingAction.value.includes(recordId)\n }\n return false\n }\n\n const actionsForRecordAreDisabled = (record: ActionableRecord) => {\n if (true === toValue(disabled)) return true\n return actionForRecordIsProcessing(record)\n }\n\n const isProcessing = computed(() => recordsProcessingAction.value.length > 0)\n\n const onPinnedActionContextMenuRequest = async (\n action: ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction,\n record: ActionableRecord,\n e: MouseEvent\n ) => {\n if (actionsForRecordAreDisabled(record)) return\n if (contextMenuIsOpen.value) {\n closeContextMenu()\n await nextTick()\n }\n contextMenuX.value = 'clientX' in e ? e.clientX : null\n contextMenuY.value = 'clientY' in e ? e.clientY : null\n contextRecord.value = record\n contextAction.value = action\n }\n const pinnedActions = computed(() =>\n actions.value.filter((a) => a.pinned && isResourcefulIndexAction(a))\n )\n const unpinnedActions = computed(() =>\n actions.value.filter((a) => !a.pinned && isResourcefulIndexAction(a))\n )\n const renderActionsForRecord = (record: ActionableRecord) => {\n const pinnedActionsForRecord = pinnedActions.value.filter((a) =>\n canPerformActionForRecord(record, a)\n )\n const unpinnedActionsForRecord = unpinnedActions.value.filter((a) =>\n canPerformActionForRecord(record, a)\n )\n if (pinnedActionsForRecord.length === 0 && unpinnedActionsForRecord.length === 0) return null\n const isActionProcessing = actionForRecordIsProcessing(record)\n return h(\n 'div',\n {\n class: ['__resourceful_index_actions_cell__actions', 'd-flex', 'align-center', 'mx-2'],\n },\n [\n ...pinnedActionsForRecord.map((action, index) => {\n const tooltipListItemOpts: VListItemPublicProps = {\n density: 'compact',\n ...toValue(listItemOptions),\n title: action.title,\n subtitle: action.subtitle,\n }\n const btnItemOpts: VBtnPublicProps = {\n // @ts-expect-error\n onContextmenu: (e: MouseEvent) => {\n if (e) {\n e.preventDefault()\n e.stopPropagation()\n e.stopImmediatePropagation()\n if (actionsForRecordAreDisabled(record)) return\n onPinnedActionContextMenuRequest(action, record, e)\n }\n },\n }\n if (isResourcefulIndexUrlAction(action)) {\n const href =\n typeof action.url === 'function' ? action.url(toUnreactive(record)) : action.url\n btnItemOpts.href = href || undefined\n // @ts-expect-error\n btnItemOpts.target = action.target || undefined\n } else if (isResourcefulIndexFunctionAction(action)) {\n // @ts-expect-error\n btnItemOpts.onClick = () =>\n processResourcefulIndexFunctionAction(action, toUnreactive(record))\n // @ts-expect-error\n btnItemOpts.onKeydown = (e: KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n processResourcefulIndexFunctionAction(action, toUnreactive(record))\n }\n }\n }\n return h(\n VHover,\n { key: `pinned-action-${index}` },\n {\n default: ({ isHovering, props: hoverProvidedProps }: VHoverDefaultSlotProps[0]) =>\n h(\n VTooltip,\n {\n openDelay: 750,\n interactive: false,\n // @ts-expect-error\n stickToTarget: true,\n } satisfies VTooltipPublicProps,\n {\n activator: ({\n isActive,\n props: tooltipActivatorProps,\n }: VTooltipActivatorSlotProps[0]) =>\n h(VBtn, {\n ...hoverProvidedProps,\n ...tooltipActivatorProps,\n ...btnItemOpts,\n variant: 'text',\n icon: action.icon,\n size: 'small',\n style: { opacity: isHovering || isActive ? 1 : 0.5 },\n class: [\n {\n 'me-2':\n index < pinnedActionsForRecord.length - 1 ||\n unpinnedActionsForRecord.length > 0,\n },\n ],\n disabled: Boolean(toValue(disabled)),\n } satisfies VBtnPublicProps),\n default: () =>\n h(VListItem, {\n ...tooltipListItemOpts,\n }),\n }\n ),\n }\n )\n }),\n unpinnedActionsForRecord.length === 0\n ? isActionProcessing\n ? h(VBtn, {\n icon: true,\n size: 'small',\n loading: true,\n variant: 'text',\n } satisfies VBtnPublicProps)\n : null\n : h(\n VHover,\n {},\n {\n default: ({ isHovering, props: hoverProvidedProps }: VHoverDefaultSlotProps[0]) =>\n h(VMenu, { closeOnContentClick: true } satisfies VMenuPublicProps, {\n activator: ({\n isActive,\n props: menuActivatorProps,\n }: VMenuActivatorSlotProps[0]) =>\n h(VBtn, {\n ...hoverProvidedProps,\n ...menuActivatorProps,\n variant: 'text',\n icon: () => h(SvgIcon, { d: mdiDotsVertical }),\n size: 'small',\n style: { opacity: isHovering || isActive ? 1 : 0.5 },\n class: [],\n loading: isActionProcessing,\n } satisfies VBtnPublicProps),\n default: () =>\n h(VCard, { color: 'surface' }, () => [\n ...unpinnedActionsForRecord.map((action, index) => {\n const key = `resourceful-index-action-${index}`\n const opts: VListItemPublicProps = {\n ...toValue(listItemOptions),\n title: action.title,\n subtitle: action.subtitle,\n prependIcon: action.icon,\n disabled: Boolean(toValue(disabled)),\n }\n if (isResourcefulIndexUrlAction(action)) {\n const href =\n typeof action.url === 'function'\n ? action.url(toUnreactive(record))\n : action.url\n opts.href = href || undefined\n // @ts-expect-error\n opts.target = action.target || undefined\n opts.link = typeof href === 'string' && href.trim().length > 0\n } else if (isResourcefulIndexFunctionAction(action)) {\n opts.onClick = () =>\n processResourcefulIndexFunctionAction(action, toUnreactive(record))\n // @ts-expect-error\n opts.onKeydown = (e: KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n processResourcefulIndexFunctionAction(action, toUnreactive(record))\n }\n }\n }\n return h(VListItem, { ...opts, key })\n }),\n ]),\n }),\n }\n ),\n ]\n )\n }\n const reactiveContextMenuRenderer = () => {\n const additionalStyles =\n null === contextMenuY.value || null === contextMenuX.value\n ? { width: 0, height: 0, overflow: 'hidden' }\n : {}\n return h(\n 'div',\n {\n ref: contextElement,\n style: {\n position: 'fixed',\n top: null === contextMenuY.value ? 0 : convertToUnit(contextMenuY.value),\n left: null === contextMenuX.value ? 0 : convertToUnit(contextMenuX.value),\n zIndex: 5,\n ...additionalStyles,\n },\n },\n h(\n VSlideYTransition,\n {\n mode: 'in-out',\n } satisfies VSlideYTransitionPublicProps,\n () => {\n const variant = contextMenuVariant.value\n if (variant === 'action') {\n return h(VCard, { color: 'surface', minHeight: 40, minWidth: 50 }, () => {\n const opts: VListItemPublicProps = {\n ...toValue(listItemOptions),\n disabled: Boolean(toValue(disabled)),\n }\n const action: ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction | null =\n toValue(contextAction.value)\n if (isResourcefulIndexUrlAction(action)) {\n const href =\n typeof action.url === 'function'\n ? action.url(toUnreactive(contextRecord.value!))\n : action.url\n opts.href = href || undefined\n return [\n h(VListItem, {\n ...opts,\n title: t('resourceful.action.openInApp'),\n prependIcon: () => openInAppIcon,\n onClick: () => {\n closeContextMenu()\n },\n }),\n h(VListItem, {\n ...opts,\n title: t('resourceful.action.openInNew'),\n prependIcon: () => openInNewIcon,\n target: '_blank',\n onClick: () => {\n closeContextMenu()\n },\n }),\n h(\n VListItem,\n stripUndefinedValuesFromObject({\n ...opts,\n title: t('resourceful.action.copyLink'),\n prependIcon: () => copyLinkIcon,\n href: undefined,\n onClick: () => {\n if ('string' === typeof href && href.trim().length > 0) {\n copyToClipboard(href)\n }\n closeContextMenu()\n },\n })\n ),\n ]\n } else if (isResourcefulIndexFunctionAction(action)) {\n return [\n h(VListItem, {\n ...opts,\n title: action.title,\n subtitle: action.subtitle,\n prependIcon: action.icon,\n onClick: () => {\n processResourcefulIndexFunctionAction(\n action,\n toUnreactive(contextRecord.value!)\n )\n closeContextMenu()\n },\n }),\n ]\n }\n return null\n })\n } else if (variant === 'record') {\n return h(VCard, { color: 'surface', minHeight: 40, minWidth: 50 }, () =>\n Array.from(actions.value).map((action, index) => {\n const key = `resourceful-index-context-menu-action-${index}`\n const opts: VListItemPublicProps = {\n ...toValue(listItemOptions),\n title: action.title,\n subtitle: action.subtitle,\n prependIcon: action.icon,\n disabled: Boolean(toValue(disabled)),\n }\n if (isResourcefulIndexUrlAction(action)) {\n const href =\n typeof action.url === 'function'\n ? action.url(toUnreactive(contextRecord.value!))\n : action.url\n opts.href = href || undefined\n // @ts-expect-error\n opts.target = action.target || undefined\n opts.link = typeof href === 'string' && href.trim().length > 0\n opts.onClick = () => {\n closeContextMenu()\n }\n // @ts-expect-error\n opts.onKeydown = (e: KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n closeContextMenu()\n }\n }\n } else if (isResourcefulIndexFunctionAction(action)) {\n opts.onClick = () => {\n processResourcefulIndexFunctionAction(\n action,\n toUnreactive(contextRecord.value!)\n )\n closeContextMenu()\n }\n // @ts-expect-error\n opts.onKeydown = (e: KeyboardEvent) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n processResourcefulIndexFunctionAction(\n action,\n toUnreactive(contextRecord.value!)\n )\n closeContextMenu()\n }\n }\n }\n return h(VListItem, { ...opts, key })\n })\n )\n }\n return null\n }\n )\n )\n }\n const openContextMenuForRecord = async (e: MouseEvent | TouchEvent, record: ActionableRecord) => {\n if (actionsForRecordAreDisabled(record)) return\n if (contextMenuIsOpen.value) {\n closeContextMenu()\n await nextTick()\n }\n contextMenuX.value =\n 'clientX' in e\n ? e.clientX\n : 'touches' in e && e.touches.length > 0\n ? e.touches[0].clientX\n : null\n contextMenuY.value =\n 'clientY' in e\n ? e.clientY\n : 'touches' in e && e.touches.length > 0\n ? e.touches[0].clientY\n : null\n contextAction.value = null\n contextRecord.value = record\n }\n const windowClickListener = (e: MouseEvent) => {\n if (contextElement.value === null) return\n if (contextElement.value?.contains(e.target as Node)) return\n closeContextMenu()\n }\n const windowContextMenuListener = (e: MouseEvent) => {\n if (contextElement.value === null) return\n if (contextElement.value?.contains(e.target as Node)) return\n closeContextMenu()\n }\n const windowTouchListener = (e: TouchEvent) => {\n if (contextElement.value === null) return\n if (contextElement.value?.contains(e.target as Node)) return\n closeContextMenu()\n }\n onMounted(() => {\n window.addEventListener('click', windowClickListener)\n window.addEventListener('contextmenu', windowContextMenuListener)\n window.addEventListener('touchstart', windowTouchListener)\n window.addEventListener('scroll', closeContextMenu)\n window.addEventListener('resize', closeContextMenu)\n if (SUPPORTS_VISUAL_VIEWPORT) {\n window.visualViewport!.addEventListener('scroll', closeContextMenu)\n window.visualViewport!.addEventListener('resize', closeContextMenu)\n }\n })\n onBeforeUnmount(() => {\n closeContextMenu()\n window.removeEventListener('click', windowClickListener)\n window.removeEventListener('contextmenu', windowContextMenuListener)\n window.removeEventListener('touchstart', windowTouchListener)\n window.removeEventListener('scroll', closeContextMenu)\n window.removeEventListener('resize', closeContextMenu)\n if (SUPPORTS_VISUAL_VIEWPORT) {\n window.visualViewport!.removeEventListener('scroll', closeContextMenu)\n window.visualViewport!.removeEventListener('resize', closeContextMenu)\n }\n })\n return {\n renderActionsForRecord,\n reactiveContextMenuRenderer,\n openContextMenuForRecord,\n renderClipboardFeedback,\n contextMenuIsOpen,\n actionForRecordIsProcessing,\n isProcessing,\n }\n}\n"],"names":["makeVTooltipProps","propsFactory","omit","makeVOverlayProps","VTooltip","genericComponent","value","props","_ref","slots","isActive","useProxiedModel","scopeId","useScopeId","uid","useId","id","toRef","overlay","ref","location","computed","origin","transition","activatorProps","mergeProps","useRender","overlayProps","VOverlay","_createVNode","_mergeProps","$event","_len","args","_key","forwardRefs","openInAppIcon","h","SvgIcon","mdiOpenInApp","openInNewIcon","mdiOpenInNew","copyLinkIcon","mdiContentCopy","resourcefulIndexActionCommonSchema","joi","resourcefulIndexUrlActionSchema","resourcefulIndexFunctionActionSchema","resourcefulIndexActionSchema","resourcefulIndexActionsSchema","isResourcefulIndexUrlAction","val","error","isResourcefulIndexFunctionAction","isResourcefulIndexAction","areResourcefulIndexActions","makeResourcefulIndexActionsProps","canPerformActionForRecord","record","action","e","warn","canPerformBulkActionForRecords","records","fn","url","canPerformBulkActionForActionableCount","count","canDisplayInBulkActionsDropdown","useBulkActions","actions","allCount","actionableCount","onBulkActionInvoked","listItemOptions","bulkActionListItems","v","index","opts","toValue","VListItem","canShowBulkActionList","bulkActionListDisabled","a","useTableActions","disabled","copyToClipboard","renderClipboardFeedback","useClipboard","t","useI18n","contextMenuX","contextMenuY","contextRecord","contextAction","closeContextMenu","contextMenuIsOpen","contextMenuVariant","contextElement","recordsProcessingAction","processResourcefulIndexFunctionAction","recordId","result","callCallback","callback","rec","res","payload","idx","promises","actionForRecordIsProcessing","actionsForRecordAreDisabled","isProcessing","onPinnedActionContextMenuRequest","nextTick","pinnedActions","unpinnedActions","renderActionsForRecord","pinnedActionsForRecord","unpinnedActionsForRecord","isActionProcessing","tooltipListItemOpts","btnItemOpts","href","toUnreactive","VHover","isHovering","hoverProvidedProps","tooltipActivatorProps","VBtn","VMenu","menuActivatorProps","mdiDotsVertical","VCard","key","reactiveContextMenuRenderer","additionalStyles","convertToUnit","VSlideYTransition","variant","stripUndefinedValuesFromObject","openContextMenuForRecord","windowClickListener","windowContextMenuListener","windowTouchListener","onMounted","SUPPORTS_VISUAL_VIEWPORT","onBeforeUnmount"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { a as ie } from "./ioc-Du_Tgg-1.mjs";
|
|
2
|
-
import { S as E } from "./index-
|
|
3
|
-
import { u as se } from "./display-
|
|
2
|
+
import { S as E } from "./index-CWwCXXNl.mjs";
|
|
3
|
+
import { u as se } from "./display-DazBkrbZ.mjs";
|
|
4
4
|
import { useLocale as ce, useDisplay as re } from "vuetify";
|
|
5
|
-
import { p as ue, E as c, F as de, w as me,
|
|
6
|
-
import { C as k } from "./index-
|
|
7
|
-
import { V as ye, l as pe, g as he, n as Ce } from "./mdi-
|
|
5
|
+
import { p as ue, E as c, F as de, w as me, a as ve, x as fe, m as ge } from "./utils-DxV2ZNaE.mjs";
|
|
6
|
+
import { C as k } from "./index-UxsEIZVi.mjs";
|
|
7
|
+
import { V as ye, l as pe, g as he, n as Ce } from "./mdi-C9DbASEx.mjs";
|
|
8
8
|
import { i as L, e as W, s as G, q as H } from "./question-BZ_Klr0o.mjs";
|
|
9
|
-
import { u as P } from "./useRender-
|
|
9
|
+
import { u as P } from "./useRender-Dpj9Jrbr.mjs";
|
|
10
10
|
import { l as Be } from "./index-CFtnmFDF.mjs";
|
|
11
11
|
import { w as M } from "./warning-D1tzZbaa.mjs";
|
|
12
|
-
import { I as R, g as ke } from "./elevation-
|
|
13
|
-
import { V as xe } from "./VBtn-
|
|
14
|
-
import { m as we, a as Ie, b as Se, p as De, u as be, c as Ve, d as _e, e as Ae, f as Re, g as F, V as Te } from "./display-
|
|
15
|
-
import { m as je } from "./component-
|
|
12
|
+
import { I as R, g as ke } from "./elevation-DFBVIqom.mjs";
|
|
13
|
+
import { V as xe } from "./VBtn-CEYzcx0y.mjs";
|
|
14
|
+
import { m as we, a as Ie, b as Se, p as De, u as be, c as Ve, d as _e, e as Ae, f as Re, g as F, V as Te } from "./display-DPktlWOz.mjs";
|
|
15
|
+
import { m as je } from "./component-C-qp70Rp.mjs";
|
|
16
16
|
import { defineComponent as $, toRefs as Ee, computed as d, ref as A, h as t, getCurrentInstance as Pe, isRef as $e, toValue as i } from "vue";
|
|
17
|
-
import { V as ze, a as D, b as x } from "./VRow-
|
|
18
|
-
import { c as w } from "./display-
|
|
17
|
+
import { V as ze, a as D, b as x } from "./VRow-Dmn82Xaa.mjs";
|
|
18
|
+
import { c as w } from "./display-BdjbLG1_.mjs";
|
|
19
19
|
const N = ue({
|
|
20
20
|
actionText: String,
|
|
21
21
|
bgColor: String,
|
|
@@ -592,4 +592,4 @@ export {
|
|
|
592
592
|
ot as R,
|
|
593
593
|
Q as u
|
|
594
594
|
};
|
|
595
|
-
//# sourceMappingURL=alert-
|
|
595
|
+
//# sourceMappingURL=alert-DftADRGk.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alert-IW1AIWZw.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":";;;;;;;;;;;;;;;;;;AAgBA,MAAMA,IAAuBC,GAAa;AAAA,EACxC,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,OAAO;AAAA,EACP,MAAMC;AAAA,EACN,OAAO;AAAA,EACP,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA,EACb;AAAA,EACE,UAAU;AAAA,EACV,OAAO;AAAA,EACP,MAAM;AAAA,EACN,WAAW;AAAA,IACT,MAAM,CAAC,QAAQ,MAAM;AAAA,IACrB,SAAS;AAAA,EACb;AAAA,EACE,MAAM;AAAA,EACN,IAAI;AAAA,EACJ,GAAGC,GAAkB;AAAA,EACrB,GAAGC,GAAkB;AAAA,EACrB,GAAGC,GAAc;AAAA,IACf,MAAM;AAAA,EACV,CAAG;AAAA,EACD,GAAGC,GAAc;AACnB,GAAG,aAAa;AACIC,KAAmB;AAAA,EACrC,MAAM;AAAA,EACN,OAAOP,EAAoB;AAAA,EAC3B,OAAO;AAAA,IACL,gBAAgB,CAAC,MAAM;AAAA,EAC3B;AAAA,EACE,MAAMQ,GAAO;AAAA,IACX,MAAAC;AAAA,IACA,OAAAC;AAAA,EACJ,GAAK;AACD,UAAM;AAAA,MACJ,cAAAC;AAAA,IACN,IAAQC,GAAaJ,CAAK,GAChB;AAAA,MACJ,wBAAAK;AAAA,MACA,uBAAAC;AAAA,IACN,IAAQC,GAAmB,MAAMP,EAAM,OAAO,GACpC;AAAA,MACJ,iBAAAQ;AAAA,IACN,IAAQC,GAAaT,CAAK,GAChB;AAAA,MACJ,gBAAAU;AAAA,IACN,IAAQC,GAAU;AACd,aAASC,EAAcC,GAAG;AACxB,MAAAZ,EAAK,gBAAgBY,CAAC;AAAA,IACxB;AACA,WAAAC,EAAU,MAAM;AACd,UAAIC,GAAIC,GAAIC;AACZ,YAAMC,IAAa,CAAC,EAAEhB,EAAM,WAAWF,EAAM,aACvCmB,IAAc,CAAC,EAAEjB,EAAM,YAAYF,EAAM,WACzCoB,IAAW,CAAC,EAAElB,EAAM,SAASF,EAAM,QACnCqB,IAAU,CAAC,EAAEnB,EAAM,QAAQF,EAAM,OACjCsB,IAAW,CAAC,EAAEpB,EAAM,SAASF,EAAM,SAASA,EAAM,OAClDuB,IAAOvB,EAAM,SAASA,EAAM,QAAQ,MAAM;AAChD,aAAOwB,EAAY,OAAO;AAAA,QACxB,OAAS,CAAC,iBAAiB;AAAA,UACzB,CAAC,kBAAkBxB,EAAM,OAAO,EAAE,GAAG;AAAA,QAC/C,GAAWG,EAAa,OAAOE,EAAuB,OAAOK,EAAe,OAAOV,EAAM,KAAK;AAAA,QACtF,OAAS,CAACM,EAAsB,OAAOE,EAAgB,OAAOR,EAAM,KAAK;AAAA,MACjF,GAAS,CAACsB,KAAYE,EAAY,OAAO;AAAA,QACjC,KAAO;AAAA,QACP,OAAS;AAAA,MACjB,GAAS,CAAEtB,EAAM,QASWsB,EAAYC,GAAmB;AAAA,QACnD,KAAO;AAAA,QACP,UAAY;AAAA,UACV,MAAM;AAAA,YACJ,KAAKzB,EAAM;AAAA,YACX,QAAQuB;AAAA,UACpB;AAAA,UACU,OAAO;AAAA,YACL,MAAAA;AAAA,YACA,MAAMvB,EAAM;AAAA,UACxB;AAAA,QACA;AAAA,MACA,GAAS;AAAA,QACD,SAAS,MAAM,CAACE,EAAM,MAAK,CAAE;AAAA,MACrC,CAAO,IAvBkBsB,EAAYE,IAAU,MAAM,CAAC1B,EAAM,QAAQwB,EAAYG,IAAM;AAAA,QAC9E,KAAO;AAAA,QACP,KAAO3B,EAAM;AAAA,QACb,QAAUuB;AAAA,MAClB,GAAS,IAAI,IAAIvB,EAAM,OAAOwB,EAAYI,IAAO;AAAA,QACzC,KAAO;AAAA,QACP,OAAS5B,EAAM;AAAA,QACf,MAAQuB;AAAA,QACR,MAAQvB,EAAM;AAAA,MACtB,GAAS,IAAI,IAAI,MAAM,CAAC,CAchB,CAAC,GAAGmB,KAAeK,EAAY,OAAO;AAAA,QACtC,KAAO;AAAA,QACP,OAAS;AAAA,MACjB,GAAS,GAAGT,IAAKb,EAAM,aAAa,OAAO,SAASa,EAAG,KAAKb,CAAK,MAAMF,EAAM,QAAQ,CAAC,GAAGoB,KAAYI,EAAY,OAAO;AAAA,QAChH,KAAO;AAAA,QACP,OAAS;AAAA,MACjB,GAAS,GAAGR,IAAKd,EAAM,UAAU,OAAO,SAASc,EAAG,KAAKd,CAAK,MAAMF,EAAM,KAAK,CAAC,GAAGqB,KAAWG,EAAY,OAAO;AAAA,QACzG,KAAO;AAAA,QACP,OAAS;AAAA,QACT,OAAS;AAAA,UACP,UAAUK,GAAc7B,EAAM,SAAS;AAAA,QACjD;AAAA,MACA,GAAS,GAAGiB,IAAKf,EAAM,SAAS,OAAO,SAASe,EAAG,KAAKf,CAAK,MAAMF,EAAM,IAAI,CAAC,GAAGE,EAAM,WAAWsB,EAAY,OAAO;AAAA,QAC7G,KAAO;AAAA,QACP,OAAS;AAAA,MACjB,GAAS,CAACtB,EAAM,QAAO,CAAE,CAAC,GAAGgB,KAAcM,EAAY,OAAO;AAAA,QACtD,KAAO;AAAA,QACP,OAAS;AAAA,MACjB,GAAS,CAACA,EAAYC,GAAmB;AAAA,QACjC,UAAY;AAAA,UACV,MAAM;AAAA,YACJ,OAAO;AAAA,YACP,OAAOzB,EAAM,SAAS;AAAA,YACtB,MAAMA,EAAM;AAAA,YACZ,MAAMA,EAAM;AAAA,YACZ,IAAIA,EAAM;AAAA,UACtB;AAAA,QACA;AAAA,MACA,GAAS;AAAA,QACD,SAAS,MAAM;AACb,cAAI8B;AACJ,iBAAO,GAAGA,IAAM5B,EAAM,YAAY,OAAO,SAAS4B,EAAI,KAAK5B,GAAO;AAAA,YAChE,OAAO;AAAA,cACL,SAASU;AAAA,YACvB;AAAA,UACA,CAAW,MAAMY,EAAYO,IAAM;AAAA,YACvB,SAAWnB;AAAA,UACvB,GAAa,IAAI,CAAC;AAAA,QACV;AAAA,MACR,CAAO,CAAC,CAAC,CAAC,CAAC;AAAA,IACP,CAAC,GACM,CAAA;AAAA,EACT;AACF,CAAC;ACzED,MAAM,EAAE,WAAWoB,IAA2B,OAAOC,OACnDC;AAAA,EACE;AAAA,IACE,MAAM;AAAA,MACJ,MAAM,CAAC,QAAQ,UAAU,MAAM;AAAA,MAC/B,SAAS;AAAA,IAAA;AAAA,IAEX,GAAGC,GAAK3C,EAAA,GAAwB,CAAC,YAAY,SAAS,MAAM,CAAC;AAAA,IAC7D,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,IAEX,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,IAEX,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,IAEX,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,IAEX,eAAe;AAAA,MACb,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,IAEX,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,IAEX,mBAAmB;AAAA,MACjB,MAAME;AAAA,MACN,SAAS,MAAM0C,EAAEC,GAAS,EAAE,GAAGC,IAAU;AAAA,IAAA;AAAA,IAE3C,gBAAgB;AAAA,MACd,MAAM5C;AAAA,MACN,SAAS,MAAM0C,EAAEC,GAAS,EAAE,GAAGE,IAAU;AAAA,IAAA;AAAA,IAE3C,kBAAkB;AAAA,MAChB,MAAM7C;AAAA,MACN,SAAS,MAAM0C,EAAEC,GAAS,EAAE,GAAGG,IAAY;AAAA,IAAA;AAAA,IAE7C,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,IAEX,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,IAEX,eAAe;AAAA,MACb,MAAM;AAAA,MACN,UAAU;AAAA,IAAA;AAAA,IAEZ,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU;AAAA,IAAA;AAAA,IAEZ,WAAW;AAAA,MACT,MAAM,CAAC,QAAQ,WAAW;AAAA,MAG1B,SAAS;AAAA,IAAA;AAAA,EACX;AAAA,EAEF;AAAA,IACE,iBAAiB,CAACC,MAA8B,OAAOA,KAApB;AAAA,IACnC,cAAc,CAACA,MAA8B,OAAOA,KAApB;AAAA,IAChC,gBAAgB,CAACA,MAA8B,OAAOA,KAApB;AAAA,EAAoB;AAAA,EAExD;AACF,GAEIC,KAAwBC,EAAgB;AAAA,EAC5C,MAAM;AAAA,EACN,OAAOX,GAAA;AAAA,EACP,OAAOC;AAAA,EACP,MAAMjC,GAAO,EAAE,MAAAC,KAAQ;AACrB,UAAM2C,IAAIC,GAAA,GACJ;AAAA,MACJ,MAAAC;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,MAAAC;AAAA,MACA,mBAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,eAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,mBAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,WAAAC;AAAA,MACA,mBAAAC;AAAA,MACA,eAAAC;AAAA,MACA,MAAApB;AAAA,MACA,WAAAqB;AAAA,IAAA,IACEC,GAAO/D,CAAK,GACV,EAAE,OAAAgE,EAAA,IAAUC,GAAA,GACZ,EAAE,OAAAC,GAAO,QAAAC,EAAA,IAAWxD,GAAA,GACpByD,IAAwBC,EAA8C,MACtEP,EAAU,SAASH,EAAU,QACxBE,EAAc,MAAM,YAAY,QAErCK,EAAM,UAAUC,EAAO,QAAc,WAClCD,EAAM,QAAQC,EAAO,QAAQ,cAAc,UACnD,GACKG,IAAiBD,EAA8C,MACpDvB,EAAK,UAAhB,SAA8ByB,IAClBzB,EAAK,UAAjB,UAA+B0B,IACjB1B,EAAK,UAAnB,YAAiC2B,IACnB3B,EAAK,UAAnB,YAAiC4B,IAClB5B,EAAK,UAApB,aAAkC6B,IAC/B7B,EAAK,KACb,GACK8B,IAA6BP;AAAA,MAAS,MAC7B,OAAOhB,EAAiB,SAArC,WACIA,EAAiB,QACjBF,EAAe,QACbP,EAAE,uCAAuC,IACzCA,EAAE,kCAAkC;AAAA,IAAA,GAEtCiC,IAA0BR;AAAA,MAC9B,MAAMf,EAAc,SAASV,EAAE,oCAAoC;AAAA,IAAA,GAE/DkC,IAA4BT;AAAA,MAChC,MAAMd,EAAgB,SAASX,EAAE,sCAAsC;AAAA,IAAA,GAEnEmC,IAA0B,MAC1BjB,EAAU,iBAAiB,cAAoBA,EAAU,QACzDA,EAAU,SAAS,SAASA,EAAU,SAASA,EAAU,MAAM,eAAe,cACzEA,EAAU,MAAM,MAClB,MAEHkB,KAAiBX,EAA6B,OAAO;AAAA,MACzD,QAAQV,EAAU,SAASG,EAAU,QAASiB,EAAA,KAA6B,SAAU;AAAA,MACrF,UAAUpB,EAAU;AAAA,MACpB,aAAa;AAAA,MACb,qBAAqB;AAAA,MACrB,WAAWA,EAAU;AAAA,MACrB,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,aAAa;AAAA,MACb,OAAO;AAAA,MACP,UAAU;AAAA,IAAA,EACV,GACIsB,KAAeZ,EAA2B,OAAO;AAAA,MACrD,OAAO;AAAA,IAAA,EACP,GACIa,KAAoBb,EAAgC,OAAO;AAAA,MAC/D,OAAO;AAAA,IAAA,EACP,GACIc,KAAcd,EAA0B,OAAO;AAAA,MACnD,OAAO;AAAA,IAAA,EACP,GACIe,IAAcf,EAA0B,OAAO;AAAA,MACnD,KAAKC,EAAe;AAAA,IAAA,EACpB,GACIe,KAAqB,MAAM;AAC/B,YAAMC,IAAsBtB,EAAM,UAAf,MAAwBI,EAAsB,UAAU;AAC3E,UAAImB,IAAU;AAAA,QACZnC,EAAiB,QACbhB,EAAEoD,GAAe;AAAA,UACf,OAAO;AAAA,YACL;AAAA,cACE,QAAQ,CAACF,MAAepC,EAAkB,SAASC,EAAe;AAAA,cAClE,QAAQmC,MAAepC,EAAkB,SAASC,EAAe;AAAA,YAAA;AAAA,YAEnE;AAAA,UAAA;AAAA,UAEF,aAAaO,EAAiB;AAAA,UAC9B,mBAAmBE,EAAkB;AAAA,UACrC,KAAKkB,EAA0B;AAAA,UAC/B,SAAS,MAAM7E,EAAK,gBAAgBwC,EAAK,KAAK;AAAA,UAC9C,OAAO;AAAA,QAAA,CACR,IACD;AAAA,QACJU,EAAe,QACXf,EAAEoD,GAAe;AAAA,UACf,OAAO;AAAA,YACL;AAAA,cACE,QAAQ,CAACF,KAAcpC,EAAkB;AAAA,cACzC,QAAQoC,KAAcpC,EAAkB;AAAA,YAAA;AAAA,YAE1C;AAAA,UAAA;AAAA,UAEF,aAAaO,EAAe;AAAA,UAC5B,mBAAmBG,EAAkB;AAAA,UACrC,KAAKiB,EAAwB;AAAA,UAC7B,SAAS,MAAM5E,EAAK,cAAcwC,EAAK,KAAK;AAAA,UAC5C,OAAO;AAAA,QAAA,CACR,IACD;AAAA,QACJS,EAAkB,QACdd,EAAEoD,GAAe;AAAA,UACf,OAAO,CAAC,MAAM;AAAA,UACd,aAAahC,EAAkB;AAAA,UAC/B,mBAAmBI,EAAkB;AAAA,UACrC,KAAKgB,EAA2B;AAAA,UAChC,SAAS,MAAM3E,EAAK,iBAAiBwC,EAAK,KAAK;AAAA,UAC/C,OAAO;AAAA,QAAA,CACR,IACD;AAAA,MAAA;AAEN,aAAa6C,MAAT,OACFC,IAAUA,EAAQ,QAAA,IAEbnD;AAAA,QACL;AAAA,QACA;AAAA,UACE,OAAO;AAAA,YACL;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,cACE,eAAegC,EAAsB,UAAU;AAAA,cAC/C,kBAAkBA,EAAsB,UAAU;AAAA,cAClD,eAAeA,EAAsB,UAAU;AAAA,YAAA;AAAA,UACjD;AAAA,QACF;AAAA,QAEFmB;AAAA,MAAA;AAAA,IAEJ,GACME,KAAUC,EAAkB,IAAI;AACtC,WAAA5E;AAAA,MAAU,MACRsB;AAAA,QAAEuD;AAAA,QAASX,GAAe;AAAA,QAAO,MAC/B5C;AAAA,UACEwD;AAAA,UACA;AAAA,YACE,KAAKH;AAAA,YACL,GAAGR,GAAa;AAAA,UAAA;AAAA,UAElB,MACE7C;AAAA,YAAEyD;AAAA,YAAYX,GAAkB;AAAA,YAAO,MACrC9C,EAAE0D,GAAMX,GAAY,OAAO,MAAM;AAAA,cAC/Bf,EAAsB,UAAU,cAC5BhC;AAAA,gBAAE2D;AAAA,gBAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,cAAc,EAAA;AAAA,gBAAK,MACtD3D,EAAET,GAAMyD,EAAY,KAAK;AAAA,cAAA,IAE3B;AAAA,cACJhD;AAAA,gBACE2D;AAAA,gBACA;AAAA,kBACE,MAAM3B,EAAsB,UAAU,cAAc,IAAI;AAAA,kBACxD,OAAO,CAAC,UAAU,eAAe,gBAAgB,gBAAgB;AAAA,gBAAA;AAAA,gBAEnE,MAAM;AAAA,kBACJA,EAAsB,UAAU,cAC5BhC;AAAA,oBACE0D;AAAA,oBACA;AAAA,sBACE,SAAS;AAAA,sBACT,OAAO,CAAC,OAAO;AAAA,oBAAA;AAAA,oBAEjB,MAAM1D,EAAE2D,GAAM,EAAE,MAAM,KAAK,MAAM3D,EAAET,GAAMyD,EAAY,KAAK,CAAC;AAAA,kBAAA,IAE7D;AAAA,kBACJrC,EAAS,QACLX;AAAA,oBACE0D;AAAA,oBACA;AAAA,sBACE,OAAO,CAAC,OAAO;AAAA,oBAAA;AAAA,oBAEjB,MACE1D;AAAA,sBACE2D;AAAA,sBACA;AAAA,wBACE,MAAM;AAAA,wBACN,OAAO;AAAA,0BACL;AAAA,0BACA;AAAA,0BACA;AAAA,0BACA;AAAA,4BACE,iBAAiB3B,EAAsB,UAAU;AAAA,4BACjD,cAAcA,EAAsB,UAAU;AAAA,4BAC9C,kBAAkBA,EAAsB,UAAU;AAAA,4BAClD,eAAeA,EAAsB,UAAU;AAAA,0BAAA;AAAA,wBACjD;AAAA,sBACF;AAAA,sBAEF,MAAMrB,EAAS;AAAA,oBAAA;AAAA,kBACjB,IAEJ;AAAA,kBACJC,EAAM,QACFZ;AAAA,oBACE0D;AAAA,oBACA;AAAA,sBACE,OAAO,CAAC,OAAO;AAAA,oBAAA;AAAA,oBAEjB,MACE1D;AAAA,sBACE2D;AAAA,sBACA;AAAA,wBACE,MAAM;AAAA,wBACN,OAAO;AAAA,0BACL;AAAA,0BACA;AAAA,0BACA;AAAA,0BACA;AAAA,4BACE,iBAAiB3B,EAAsB,UAAU;AAAA,4BACjD,cAAcA,EAAsB,UAAU;AAAA,4BAC9C,kBAAkBA,EAAsB,UAAU;AAAA,4BAClD,eAAeA,EAAsB,UAAU;AAAA,0BAAA;AAAA,wBACjD;AAAA,sBACF;AAAA,sBAEF,MAAMpB,EAAM;AAAA,oBAAA;AAAA,kBACd,IAEJ;AAAA,kBACJC,EAAK,QACDb;AAAA,oBACE0D;AAAA,oBACA;AAAA,sBACE,OAAO,CAAC,OAAO;AAAA,oBAAA;AAAA,oBAEjB,MACE1D;AAAA,sBACE2D;AAAA,sBACA;AAAA,wBACE,MAAM;AAAA,wBACN,OAAO;AAAA,0BACL;AAAA,0BACA;AAAA,0BACA;AAAA,0BACA;AAAA,4BACE,iBAAiB3B,EAAsB,UAAU;AAAA,4BACjD,cAAcA,EAAsB,UAAU;AAAA,4BAC9C,kBAAkBA,EAAsB,UAAU;AAAA,4BAClD,eAAeA,EAAsB,UAAU;AAAA,0BAAA;AAAA,wBACjD;AAAA,sBACF;AAAA,sBAEF,MAAMnB,EAAK;AAAA,oBAAA;AAAA,kBACb,IAEJ;AAAA,kBACJb;AAAA,oBACE0D;AAAA,oBACA;AAAA,sBACE,OAAO,CAAC,OAAO;AAAA,oBAAA;AAAA,oBAEjB,MAAM1D,EAAE2D,GAAM,EAAE,MAAM,GAAA,GAAM,MAAMV,GAAA,CAAoB;AAAA,kBAAA;AAAA,gBACxD;AAAA,cACF;AAAA,YACF,CACD;AAAA,UAAA;AAAA,QACH;AAAA,MACJ;AAAA,IACF,GAEK;AAAA,MACL,uBAAAjB;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC,GAiBY4B,IAAW,CACtBlC,IAAoE,MACpEH,IAA+B,IAC/BC,IAAuC,OACpC;AACH,QAAMqC,IAAeC,GAAMpC,CAAS,IAAIA,IAAY4B,EAAI5B,CAAS,GAC3DD,IAAuCsC,GAAiBF,CAAY,GACpEG,IAAM,IAAIC,GAAA,GACVC,IAAgBZ,EAAwB,EAAE;AAsEhD,SAAO,EAAE,eArEa,MACpB,MAAM,KAAKY,EAAc,KAAK,EAAE;AAAA,IAAI,CAACC,MACnCnE,EAAEM,IAAuB;AAAA,MACvB,GAAG6D;AAAA,MACH,WAAWC,EAAQ7C,CAAS;AAAA,MAC5B,WAAWsC,EAAa;AAAA,MACxB,mBAAmBO,EAAQ5C,CAAiB;AAAA,MAC5C,eAAAC;AAAA,MACA,KAAK0C,EAAK;AAAA,IAAA,CACX;AAAA,EAAA,GA4DmB,MA1DE,OAAOE,MAAgD;AAC/E,UAAMhE,IAAOiE,GAAe,SAAS,QAAQ,GACvCC,IAAU,IAAI,QAAqB,CAACC,MAAY;AACpD,YAAMC,IAAW,CAACC,GAAqBC,MAA4B;AACjE,QAAID,MAAgBrE,MAClB2D,EAAI,IAAI,eAAeS,CAAQ,GAC/BD,EAAQ;AAAA,UACN,aAAsBG,MAAT;AAAA,UACb,UAAoBA,MAAV;AAAA,UACV,YAAqBA,MAAT;AAAA,UACZ,OAAOA;AAAAA,QAAA,CACR;AAAA,MAEL;AACA,MAAAX,EAAI,GAAG,eAAeS,CAAQ;AAAA,IAChC,CAAC,GACK7G,IAA0B;AAAA,MAC9B,MAAQwG,EAAQC,EAAQ,IAAI;AAAA,MAC5B,UAAYD,EAAQC,EAAQ,QAAQ;AAAA,MACpC,OAASD,EAAQC,EAAQ,KAAK;AAAA,MAC9B,MAAQD,EAAQC,EAAQ,IAAI;AAAA,MAC5B,mBAAqBD,EAAQC,EAAQ,iBAAiB;AAAA,MACtD,gBAAkBD,EAAQC,EAAQ,cAAc;AAAA,MAChD,kBAAoBD,EAAQC,EAAQ,gBAAgB;AAAA,MACpD,kBAAoBD,EAAQC,EAAQ,gBAAgB;AAAA,MACpD,eAAiBD,EAAQC,EAAQ,aAAa;AAAA,MAC9C,iBAAmBD,EAAQC,EAAQ,eAAe;AAAA,MAClD,mBAAqBD,EAAQC,EAAQ,iBAAiB;AAAA,MACtD,gBAAkBD,EAAQC,EAAQ,cAAc;AAAA,MAChD,kBAAoBD,EAAQC,EAAQ,gBAAgB;AAAA,MACpD,MAAQhE;AAAA,MACR,kBAAkB,MAAM2D,EAAI,KAAK,eAAe3D,GAAM,IAAI;AAAA,MAC1D,mBAAmB,MAAM2D,EAAI,KAAK,eAAe3D,GAAM,EAAI;AAAA,MAC3D,gBAAgB,MAAM2D,EAAI,KAAK,eAAe3D,GAAM,EAAK;AAAA,IAAA;AAE3D,QAAIgE,EAAQ,QAAQ;AAClB,UAAIA,EAAQ,OAAO;AAEjB,eAAO;AAAA,UACL,aAAa;AAAA,UACb,UAAU;AAAA,UACV,YAAY;AAAA,UACZ,OAAO;AAAA,QAAA;AAGX,YAAMO,IAAgB,MAAM;AAC1B,QAAAZ,EAAI,KAAK,eAAe3D,GAAM,IAAI;AAAA,MACpC;AACA,MAAAgE,EAAQ,OAAO,iBAAiB,SAASO,GAAe,EAAE,MAAM,IAAM;AAAA,IACxE;AACA,IAAAV,EAAc,MAAM,KAAKtG,CAAK;AAC9B,UAAM+G,IAAS,MAAMJ,GACfM,IAAqBX,EAAc,MAAM,UAAU,CAACY,MAAMA,EAAE,SAASzE,CAAI;AAC/E,WAAIwE,IAAqB,MACvBX,EAAc,MAAM,OAAOW,GAAoB,CAAC,GAE3CF;AAAA,EACT,EACwB;AAC1B;AAE+BpE,EAAgB;AAAA,EAC7C,MAAM;AAAA,EACN,QAAQ;AACN,UAAMsD,IAAeP,EAAwB,IAAI,GAC3C,EAAE,eAAAyB,GAAe,MAAAC,MAASpB,EAASC,CAAY;AACrD,WAAO,MACL7D,EAAE,OAAO,EAAE,KAAK6D,KAAgB;AAAA,MAC9B7D,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,QAAQ,KAAK;AAAA,QACvCA,EAAEoD,GAAe;AAAA,UACf,OAAO,CAAC,MAAM;AAAA,UACd,aAAa,MAAMpD,EAAET,GAAM,EAAE,KAAK6C,GAAU;AAAA,UAC5C,KAAK;AAAA,UACL,SAAS,MACP4C,EAAK;AAAA,YACH,MAAM;AAAA,YACN,UAAU;AAAA,YACV,OAAO;AAAA,YACP,MAAM;AAAA,UAAA,CACP,EAAE,KAAK,CAACL,MAAW;AAClB,oBAAQ,IAAI,gBAAgBA,CAAM,GAClC,MAAM,eAAe,OAAOA,EAAO,KAAK,CAAC,EAAE;AAAA,UAC7C,CAAC;AAAA,QAAA,CACJ;AAAA,QACD3E,EAAEoD,GAAe;AAAA,UACf,OAAO,CAAC,MAAM;AAAA,UACd,aAAa,MAAMpD,EAAET,GAAM,EAAE,KAAK4C,GAAS;AAAA,UAC3C,KAAK;AAAA,UACL,SAAS,MACP6C,EAAK;AAAA,YACH,MAAM;AAAA,YACN,UAAU;AAAA,YACV,OAAO;AAAA,YACP,MAAM;AAAA,UAAA,CACP,EAAE,KAAK,CAACL,MAAW;AAClB,oBAAQ,IAAI,gBAAgBA,CAAM,GAClC,MAAM,eAAe,OAAOA,EAAO,KAAK,CAAC,EAAE;AAAA,UAC7C,CAAC;AAAA,QAAA,CACJ;AAAA,QACD3E,EAAEoD,GAAe;AAAA,UACf,OAAO,CAAC,MAAM;AAAA,UACd,aAAa,MAAMpD,EAAET,GAAM,EAAE,KAAKgD,GAAa;AAAA,UAC/C,KAAK;AAAA,UACL,SAAS,MACPyC,EAAK;AAAA,YACH,MAAM;AAAA,YACN,UAAU;AAAA,YACV,OAAO;AAAA,YACP,MAAM;AAAA,YACN,kBAAkB;AAAA,YAClB,gBAAgB;AAAA,UAAA,CACjB,EAAE,KAAK,CAACL,MAAW;AAClB,oBAAQ,IAAI,gBAAgBA,CAAM,GAClC,MAAM,eAAe,OAAOA,EAAO,KAAK,CAAC,EAAE;AAAA,UAC7C,CAAC;AAAA,QAAA,CACJ;AAAA,QACD3E,EAAEoD,GAAe;AAAA,UACf,OAAO,CAAC,MAAM;AAAA,UACd,aAAa,MAAMpD,EAAET,GAAM,EAAE,KAAK8C,GAAY;AAAA,UAC9C,KAAK;AAAA,UACL,SAAS,MACP2C,EAAK;AAAA,YACH,MAAM;AAAA,YACN,UAAU;AAAA,YACV,OAAO;AAAA,YACP,MAAM;AAAA,UAAA,CACP,EAAE,KAAK,CAACL,MAAW;AAClB,oBAAQ,IAAI,gBAAgBA,CAAM,GAClC,MAAM,eAAe,OAAOA,EAAO,KAAK,CAAC,EAAE;AAAA,UAC7C,CAAC;AAAA,QAAA,CACJ;AAAA,QACD3E,EAAEoD,GAAe;AAAA,UACf,OAAO,CAAC,MAAM;AAAA,UACd,aAAa,MAAMpD,EAAET,GAAM,EAAE,KAAK+C,GAAY;AAAA,UAC9C,KAAK;AAAA,UACL,SAAS,MACP0C,EAAK;AAAA,YACH,MAAM;AAAA,YACN,UAAU;AAAA,YACV,OAAO;AAAA,YACP,MAAM;AAAA,YACN,kBAAkB;AAAA,UAAA,CACnB,EAAE,KAAK,CAACL,MAAW;AAClB,oBAAQ,IAAI,gBAAgBA,CAAM,GAClC,MAAM,eAAe,OAAOA,EAAO,KAAK,CAAC,EAAE;AAAA,UAC7C,CAAC;AAAA,QAAA,CACJ;AAAA,MAAA,CACF;AAAA,MACDI,EAAA;AAAA,IAAc,CACf;AAAA,EACL;AACF,CAAC;AAEM,MAAME,KAAqB1E,EAAgB;AAAA,EAChD,MAAM;AAAA,EACN,QAAQ;AACN,UAAM2E,IAAUC,GAAA,GACVtB,IAAeP,EAAwB,IAAI,GAC3C5B,IAAYO,EAAS,MAAMiD,GAAS,OAAO,OAAOrB,EAAa,KAAK,GACpE,EAAE,eAAAkB,GAAe,MAAAC,MAASpB,EAASlC,CAAS;AAClD,WAAAhD,EAAU,MAAMsB,EAAE,OAAO,EAAE,KAAK6D,KAAgB,CAACkB,EAAA,CAAe,CAAC,CAAC,GAC3D;AAAA,MACL,MAAAC;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;","x_google_ignoreList":[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,10 +1,10 @@
|
|
|
1
1
|
import { B as y, f as Je } from "./big_number_formatter-BGfIwlog.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import { u as Ze } from "./field_composer-
|
|
4
|
-
import { p as $e, x as Z, y as et,
|
|
2
|
+
import { m as Le, c as Qe, V as Ye, a as b } from "./common-BDwb9uGU.mjs";
|
|
3
|
+
import { u as Ze } from "./field_composer-CLJuJevf.mjs";
|
|
4
|
+
import { p as $e, x as Z, y as et, a as tt, s as nt, c as $ } from "./utils-DxV2ZNaE.mjs";
|
|
5
5
|
import { defineComponent as rt, toRefs as c, computed as s, h as u } from "vue";
|
|
6
|
-
import { m as ot, a as at } from "./number-
|
|
7
|
-
import { V as ee } from "./display-
|
|
6
|
+
import { m as ot, a as at } from "./number-CfHLDQFY.mjs";
|
|
7
|
+
import { V as ee } from "./display-BdjbLG1_.mjs";
|
|
8
8
|
const it = $e(
|
|
9
9
|
{
|
|
10
10
|
...et(at(), ["min", "max", "precision"]),
|
|
@@ -418,4 +418,4 @@ const it = $e(
|
|
|
418
418
|
export {
|
|
419
419
|
yt as R
|
|
420
420
|
};
|
|
421
|
-
//# sourceMappingURL=bigint-
|
|
421
|
+
//# sourceMappingURL=bigint-DiC37zMo.mjs.map
|