{"version":3,"file":"dialog-transition-3ae5e092.js","sources":["../../../node_modules/vuetify/lib/components/transitions/dialog-transition.mjs"],"sourcesContent":["import { createVNode as _createVNode, mergeProps as _mergeProps, resolveDirective as _resolveDirective } from \"vue\";\n// Utilities\nimport { Transition } from 'vue';\nimport { acceleratedEasing, animate, deceleratedEasing, genericComponent, nullifyTransforms, propsFactory, standardEasing } from \"../../util/index.mjs\"; // Types\nexport const makeVDialogTransitionProps = propsFactory({\n target: Object\n}, 'v-dialog-transition');\nexport const VDialogTransition = genericComponent()({\n name: 'VDialogTransition',\n props: makeVDialogTransitionProps(),\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n const functions = {\n onBeforeEnter(el) {\n el.style.pointerEvents = 'none';\n el.style.visibility = 'hidden';\n },\n async onEnter(el, done) {\n await new Promise(resolve => requestAnimationFrame(resolve));\n await new Promise(resolve => requestAnimationFrame(resolve));\n el.style.visibility = '';\n const {\n x,\n y,\n sx,\n sy,\n speed\n } = getDimensions(props.target, el);\n const animation = animate(el, [{\n transform: `translate(${x}px, ${y}px) scale(${sx}, ${sy})`,\n opacity: 0\n }, {}], {\n duration: 225 * speed,\n easing: deceleratedEasing\n });\n getChildren(el)?.forEach(el => {\n animate(el, [{\n opacity: 0\n }, {\n opacity: 0,\n offset: 0.33\n }, {}], {\n duration: 225 * 2 * speed,\n easing: standardEasing\n });\n });\n animation.finished.then(() => done());\n },\n onAfterEnter(el) {\n el.style.removeProperty('pointer-events');\n },\n onBeforeLeave(el) {\n el.style.pointerEvents = 'none';\n },\n async onLeave(el, done) {\n await new Promise(resolve => requestAnimationFrame(resolve));\n const {\n x,\n y,\n sx,\n sy,\n speed\n } = getDimensions(props.target, el);\n const animation = animate(el, [{}, {\n transform: `translate(${x}px, ${y}px) scale(${sx}, ${sy})`,\n opacity: 0\n }], {\n duration: 125 * speed,\n easing: acceleratedEasing\n });\n animation.finished.then(() => done());\n getChildren(el)?.forEach(el => {\n animate(el, [{}, {\n opacity: 0,\n offset: 0.2\n }, {\n opacity: 0\n }], {\n duration: 125 * 2 * speed,\n easing: standardEasing\n });\n });\n },\n onAfterLeave(el) {\n el.style.removeProperty('pointer-events');\n }\n };\n return () => {\n return props.target ? _createVNode(Transition, _mergeProps({\n \"name\": \"dialog-transition\"\n }, functions, {\n \"css\": false\n }), slots) : _createVNode(Transition, {\n \"name\": \"dialog-transition\"\n }, slots);\n };\n }\n});\n\n/** Animatable children (card, sheet, list) */\nfunction getChildren(el) {\n const els = el.querySelector(':scope > .v-card, :scope > .v-sheet, :scope > .v-list')?.children;\n return els && [...els];\n}\nfunction getDimensions(target, el) {\n const targetBox = target.getBoundingClientRect();\n const elBox = nullifyTransforms(el);\n const [originX, originY] = getComputedStyle(el).transformOrigin.split(' ').map(v => parseFloat(v));\n const [anchorSide, anchorOffset] = getComputedStyle(el).getPropertyValue('--v-overlay-anchor-origin').split(' ');\n let offsetX = targetBox.left + targetBox.width / 2;\n if (anchorSide === 'left' || anchorOffset === 'left') {\n offsetX -= targetBox.width / 2;\n } else if (anchorSide === 'right' || anchorOffset === 'right') {\n offsetX += targetBox.width / 2;\n }\n let offsetY = targetBox.top + targetBox.height / 2;\n if (anchorSide === 'top' || anchorOffset === 'top') {\n offsetY -= targetBox.height / 2;\n } else if (anchorSide === 'bottom' || anchorOffset === 'bottom') {\n offsetY += targetBox.height / 2;\n }\n const tsx = targetBox.width / elBox.width;\n const tsy = targetBox.height / elBox.height;\n const maxs = Math.max(1, tsx, tsy);\n const sx = tsx / maxs || 0;\n const sy = tsy / maxs || 0;\n\n // Animate elements larger than 12% of the screen area up to 1.5x slower\n const asa = elBox.width * elBox.height / (window.innerWidth * window.innerHeight);\n const speed = asa > 0.12 ? Math.min(1.5, (asa - 0.12) * 10 + 1) : 1;\n return {\n x: offsetX - (originX + elBox.left),\n y: offsetY - (originY + elBox.top),\n sx,\n sy,\n speed\n };\n}\n//# sourceMappingURL=dialog-transition.mjs.map"],"names":["makeVDialogTransitionProps","propsFactory","VDialogTransition","genericComponent","props","_ref","slots","functions","el","done","resolve","x","y","sx","sy","speed","getDimensions","animation","animate","deceleratedEasing","_a","getChildren","standardEasing","acceleratedEasing","_createVNode","Transition","_mergeProps","els","target","targetBox","elBox","nullifyTransforms","originX","originY","v","anchorSide","anchorOffset","offsetX","offsetY","tsx","tsy","maxs","asa"],"mappings":"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","x_google_ignoreList":[0]}