yuyeon 0.0.42-rc26 → 0.0.42-rc27
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/dist/style.css +1 -1
- package/dist/yuyeon.js +2113 -2114
- package/dist/yuyeon.umd.cjs +6 -6
- package/lib/components/dialog/YDialog.mjs +4 -1
- package/lib/components/dialog/YDialog.mjs.map +1 -1
- package/lib/composables/layer-group.mjs +10 -3
- package/lib/composables/layer-group.mjs.map +1 -1
- package/package.json +1 -1
- package/types/components/dialog/YDialog.d.ts +416 -12
- package/types/components/dropdown/YDropdown.d.ts +6 -6
- package/types/components/layer/YLayer.d.ts +12 -12
- package/types/components/menu/YMenu.d.ts +5 -5
- package/types/components/select/YSelect.d.ts +27 -27
- package/types/components/tooltip/YTooltip.d.ts +9 -9
- package/types/composables/coordinate/index.d.ts +4 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createVNode as _createVNode, mergeProps as _mergeProps, Fragment as _Fragment } from "vue";
|
|
2
|
-
import { computed, defineComponent, getCurrentInstance, ref, shallowRef, watch } from 'vue';
|
|
2
|
+
import { computed, defineComponent, getCurrentInstance, onBeforeUnmount, ref, shallowRef, watch } from 'vue';
|
|
3
3
|
import { useModelDuplex } from "../../composables/communication.mjs";
|
|
4
4
|
import { useRender } from "../../composables/component.mjs";
|
|
5
5
|
import { chooseProps, omit } from "../../util/index.mjs";
|
|
@@ -146,6 +146,9 @@ export const YDialog = defineComponent({
|
|
|
146
146
|
}, {
|
|
147
147
|
immediate: true
|
|
148
148
|
});
|
|
149
|
+
onBeforeUnmount(() => {
|
|
150
|
+
preventInteractionBackground(false);
|
|
151
|
+
});
|
|
149
152
|
useRender(() => {
|
|
150
153
|
return _createVNode(_Fragment, null, [_createVNode(YLayer, _mergeProps({
|
|
151
154
|
"modelValue": active.value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YDialog.mjs","names":["computed","defineComponent","getCurrentInstance","ref","shallowRef","watch","useModelDuplex","useRender","chooseProps","omit","toStyleSizeValue","bindClasses","propsFactory","YCard","YLayer","pressYLayerProps","useActiveStack","pressYDialogPropsOptions","persistent","type","Boolean","default","dialogClasses","Array","String","Object","maximized","offset","scrim","YDialog","name","components","props","emits","setup","_ref","emit","slots","vm","$yuyeon","appContext","config","globalProperties","active","classes","boundClasses","styles","contentStyles","paddingTop","layer$","children","onFocusin","e","prevTarget","relatedTarget","target","testChildrenContains","layers","some","layer","content$","contains","value","document","includes","focusableSelector","focusables","querySelectorAll","filter","el","hasAttribute","matches","length","firstChild","lastChild","isSameNode","focus","installFocusTrap","addEventListener","dismantleFocusTrap","removeEventListener","tempScrollTop","tempScrollLeft","preventInteractionBackground","toggle","root$","root","activeLayers","getActiveLayers","filtered","ctx","modal","classList","scrollTop","documentElement","scrollLeft","add","style","top","left","isMe","remove","onUpdate","v","onClick","currentActive","disabled","baseEl","neo","old","immediate","_createVNode","_Fragment","_mergeProps","$event","_len","arguments","args","_key","base"],"sources":["../../../src/components/dialog/YDialog.tsx"],"sourcesContent":["import type { PropType } from 'vue';\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n ref,\n shallowRef,\n watch,\n} from 'vue';\n\nimport { useModelDuplex } from '../../composables/communication';\nimport { useRender } from '../../composables/component';\nimport { chooseProps, omit } from '../../util';\nimport { toStyleSizeValue } from '../../util/ui';\nimport { bindClasses, propsFactory } from '../../util/vue-component';\nimport { YCard } from '../card';\nimport { YLayer, pressYLayerProps } from '../layer';\nimport { useActiveStack } from '../layer/active-stack';\n\nimport './YDialog.scss';\n\nexport const pressYDialogPropsOptions = propsFactory(\n {\n persistent: {\n type: Boolean as PropType<boolean>,\n default: true,\n },\n dialogClasses: {\n type: [Array, String, Object] as PropType<\n string[] | string | Record<string, any>\n >,\n },\n maximized: Boolean as PropType<boolean>,\n offset: {\n type: String as PropType<string>,\n },\n ...omit(\n pressYLayerProps({\n scrim: true,\n }),\n ['offset', 'classes'],\n ),\n },\n 'YDialog',\n);\n\nexport const YDialog = defineComponent({\n name: 'YDialog',\n components: {\n YLayer,\n YCard,\n },\n props: pressYDialogPropsOptions(),\n emits: ['update:modelValue'],\n setup(props, { emit, slots }) {\n const vm = getCurrentInstance();\n const $yuyeon = vm?.appContext.config.globalProperties.$yuyeon;\n const active = useModelDuplex(props);\n\n const classes = computed(() => {\n const boundClasses = bindClasses(props.dialogClasses);\n return {\n ...boundClasses,\n 'y-dialog': true,\n 'y-dialog--maximized': props.maximized,\n };\n });\n\n const styles = computed(() => {\n return {\n ...(props.contentStyles ?? {}),\n paddingTop: toStyleSizeValue(props.offset),\n };\n });\n\n const layer$ = ref<typeof YLayer>();\n const { children } = useActiveStack(layer$, active, shallowRef(true));\n\n function onFocusin(e: FocusEvent) {\n const prevTarget = e.relatedTarget as HTMLElement | null;\n const target = e.target as HTMLElement | null;\n\n function testChildrenContains(layers: YLayer[]) {\n return layers.some((layer) => {\n return !layer.content$?.contains(target);\n });\n }\n\n if (\n prevTarget !== target &&\n layer$.value?.content$ &&\n ![document, layer$.value?.content$].includes(target) &&\n !layer$.value?.content$.contains(target) &&\n !testChildrenContains(children.value)\n ) {\n const focusableSelector =\n 'button, [href], input:not([type=\"hidden\"]), select, textarea, [tabindex]:not([tabindex=\"-1\"])';\n const focusables = [\n ...layer$.value.content$.querySelectorAll(focusableSelector),\n ].filter(\n (el) =>\n !el.hasAttribute('disabled') && !el.matches('[tabindex=\"-1\"]'),\n ) as HTMLElement[];\n if (!focusables.length) return;\n const firstChild = focusables[0];\n const lastChild = focusables[focusables.length - 1];\n if (target?.isSameNode(firstChild) || target?.isSameNode(lastChild)) {\n return;\n }\n if (firstChild === lastChild) {\n lastChild.focus();\n } else {\n firstChild.focus();\n }\n }\n }\n\n function installFocusTrap() {\n document.addEventListener('focusin', onFocusin);\n }\n\n function dismantleFocusTrap() {\n document.removeEventListener('focusin', onFocusin);\n }\n\n const tempScrollTop = ref(0);\n const tempScrollLeft = ref(0);\n\n function preventInteractionBackground(toggle: boolean) {\n const root$ = $yuyeon.root as HTMLElement;\n const activeLayers = layer$.value?.getActiveLayers();\n if (toggle) {\n const filtered = activeLayers?.filter((layer: any) => {\n return layer.ctx.modal;\n });\n if (\n (filtered && !filtered.length) ||\n !root$.classList.contains('y-dialog--virtual-scroll')\n ) {\n const scrollTop = document.documentElement.scrollTop;\n const scrollLeft = document.documentElement.scrollLeft;\n tempScrollTop.value = scrollTop;\n tempScrollLeft.value = scrollLeft;\n if (props.maximized) {\n document.documentElement.classList.add('y-dialog--prevent-scroll');\n }\n root$.classList.add('y-dialog--virtual-scroll');\n root$.style.top = toStyleSizeValue(-1 * scrollTop) || '';\n root$.style.left = toStyleSizeValue(-1 * scrollLeft) || '';\n }\n } else {\n const filtered = activeLayers?.filter((layer: any) => {\n return !layer$.value?.isMe(layer) && layer.ctx.modal;\n });\n if (filtered && !filtered.length) {\n root$.classList.remove('y-dialog--virtual-scroll');\n document.documentElement.classList.remove('y-dialog--prevent-scroll');\n root$.style.top = '';\n root$.style.left = '';\n document.documentElement.scrollTop = tempScrollTop.value;\n document.documentElement.scrollLeft = tempScrollLeft.value;\n }\n }\n }\n\n function onUpdate(v: boolean) {\n active.value = v;\n }\n\n function onClick(e: MouseEvent) {\n const currentActive = active.value;\n if (!props.disabled) {\n active.value = !currentActive;\n }\n }\n\n watch(\n () => layer$.value?.baseEl,\n (neo, old) => {\n if (neo) {\n neo.addEventListener('click', onClick);\n } else if (old) {\n old.removeEventListener('click', onClick);\n }\n },\n );\n\n watch(\n () => active.value,\n (neo) => {\n neo ? installFocusTrap() : dismantleFocusTrap();\n preventInteractionBackground(neo);\n },\n { immediate: true },\n );\n\n useRender(() => {\n return (\n <>\n <YLayer\n v-model={active.value}\n classes={classes.value}\n content-styles={styles.value}\n modal\n ref={layer$}\n {...omit(chooseProps(props, YLayer.props), ['contentStyles'])}\n >\n {{\n default: (...args: any[]) => slots.default?.(...args),\n base: slots.base,\n }}\n </YLayer>\n </>\n );\n });\n\n return {\n active,\n layer: layer$,\n classes,\n };\n },\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"YDialog.mjs","names":["computed","defineComponent","getCurrentInstance","onBeforeUnmount","ref","shallowRef","watch","useModelDuplex","useRender","chooseProps","omit","toStyleSizeValue","bindClasses","propsFactory","YCard","YLayer","pressYLayerProps","useActiveStack","pressYDialogPropsOptions","persistent","type","Boolean","default","dialogClasses","Array","String","Object","maximized","offset","scrim","YDialog","name","components","props","emits","setup","_ref","emit","slots","vm","$yuyeon","appContext","config","globalProperties","active","classes","boundClasses","styles","contentStyles","paddingTop","layer$","children","onFocusin","e","prevTarget","relatedTarget","target","testChildrenContains","layers","some","layer","content$","contains","value","document","includes","focusableSelector","focusables","querySelectorAll","filter","el","hasAttribute","matches","length","firstChild","lastChild","isSameNode","focus","installFocusTrap","addEventListener","dismantleFocusTrap","removeEventListener","tempScrollTop","tempScrollLeft","preventInteractionBackground","toggle","root$","root","activeLayers","getActiveLayers","filtered","ctx","modal","classList","scrollTop","documentElement","scrollLeft","add","style","top","left","isMe","remove","onUpdate","v","onClick","currentActive","disabled","baseEl","neo","old","immediate","_createVNode","_Fragment","_mergeProps","$event","_len","arguments","args","_key","base"],"sources":["../../../src/components/dialog/YDialog.tsx"],"sourcesContent":["import type { PropType } from 'vue';\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n onBeforeUnmount,\n ref,\n shallowRef,\n watch,\n} from 'vue';\n\nimport { useModelDuplex } from '../../composables/communication';\nimport { useRender } from '../../composables/component';\nimport { chooseProps, omit } from '../../util';\nimport { toStyleSizeValue } from '../../util/ui';\nimport { bindClasses, propsFactory } from '../../util/vue-component';\nimport { YCard } from '../card';\nimport { YLayer, pressYLayerProps } from '../layer';\nimport { useActiveStack } from '../layer/active-stack';\n\nimport './YDialog.scss';\n\nexport const pressYDialogPropsOptions = propsFactory(\n {\n persistent: {\n type: Boolean as PropType<boolean>,\n default: true,\n },\n dialogClasses: {\n type: [Array, String, Object] as PropType<\n string[] | string | Record<string, any>\n >,\n },\n maximized: Boolean as PropType<boolean>,\n offset: {\n type: String as PropType<string>,\n },\n ...omit(\n pressYLayerProps({\n scrim: true,\n }),\n ['offset', 'classes'],\n ),\n },\n 'YDialog',\n);\n\nexport const YDialog = defineComponent({\n name: 'YDialog',\n components: {\n YLayer,\n YCard,\n },\n props: pressYDialogPropsOptions(),\n emits: ['update:modelValue'],\n setup(props, { emit, slots }) {\n const vm = getCurrentInstance();\n const $yuyeon = vm?.appContext.config.globalProperties.$yuyeon;\n const active = useModelDuplex(props);\n\n const classes = computed(() => {\n const boundClasses = bindClasses(props.dialogClasses);\n return {\n ...boundClasses,\n 'y-dialog': true,\n 'y-dialog--maximized': props.maximized,\n };\n });\n\n const styles = computed(() => {\n return {\n ...(props.contentStyles ?? {}),\n paddingTop: toStyleSizeValue(props.offset),\n };\n });\n\n const layer$ = ref<typeof YLayer>();\n const { children } = useActiveStack(layer$, active, shallowRef(true));\n\n function onFocusin(e: FocusEvent) {\n const prevTarget = e.relatedTarget as HTMLElement | null;\n const target = e.target as HTMLElement | null;\n\n function testChildrenContains(layers: YLayer[]) {\n return layers.some((layer) => {\n return !layer.content$?.contains(target);\n });\n }\n\n if (\n prevTarget !== target &&\n layer$.value?.content$ &&\n ![document, layer$.value?.content$].includes(target) &&\n !layer$.value?.content$.contains(target) &&\n !testChildrenContains(children.value)\n ) {\n const focusableSelector =\n 'button, [href], input:not([type=\"hidden\"]), select, textarea, [tabindex]:not([tabindex=\"-1\"])';\n const focusables = [\n ...layer$.value.content$.querySelectorAll(focusableSelector),\n ].filter(\n (el) =>\n !el.hasAttribute('disabled') && !el.matches('[tabindex=\"-1\"]'),\n ) as HTMLElement[];\n if (!focusables.length) return;\n const firstChild = focusables[0];\n const lastChild = focusables[focusables.length - 1];\n if (target?.isSameNode(firstChild) || target?.isSameNode(lastChild)) {\n return;\n }\n if (firstChild === lastChild) {\n lastChild.focus();\n } else {\n firstChild.focus();\n }\n }\n }\n\n function installFocusTrap() {\n document.addEventListener('focusin', onFocusin);\n }\n\n function dismantleFocusTrap() {\n document.removeEventListener('focusin', onFocusin);\n }\n\n const tempScrollTop = ref(0);\n const tempScrollLeft = ref(0);\n\n function preventInteractionBackground(toggle: boolean) {\n const root$ = $yuyeon.root as HTMLElement;\n const activeLayers = layer$.value?.getActiveLayers();\n if (toggle) {\n const filtered = activeLayers?.filter((layer: any) => {\n return layer.ctx.modal;\n });\n if (\n (filtered && !filtered.length) ||\n !root$.classList.contains('y-dialog--virtual-scroll')\n ) {\n const scrollTop = document.documentElement.scrollTop;\n const scrollLeft = document.documentElement.scrollLeft;\n tempScrollTop.value = scrollTop;\n tempScrollLeft.value = scrollLeft;\n if (props.maximized) {\n document.documentElement.classList.add('y-dialog--prevent-scroll');\n }\n root$.classList.add('y-dialog--virtual-scroll');\n root$.style.top = toStyleSizeValue(-1 * scrollTop) || '';\n root$.style.left = toStyleSizeValue(-1 * scrollLeft) || '';\n }\n } else {\n const filtered = activeLayers?.filter((layer: any) => {\n return !layer$.value?.isMe(layer) && layer.ctx.modal;\n });\n if (filtered && !filtered.length) {\n root$.classList.remove('y-dialog--virtual-scroll');\n document.documentElement.classList.remove('y-dialog--prevent-scroll');\n root$.style.top = '';\n root$.style.left = '';\n document.documentElement.scrollTop = tempScrollTop.value;\n document.documentElement.scrollLeft = tempScrollLeft.value;\n }\n }\n }\n\n function onUpdate(v: boolean) {\n active.value = v;\n }\n\n function onClick(e: MouseEvent) {\n const currentActive = active.value;\n if (!props.disabled) {\n active.value = !currentActive;\n }\n }\n\n watch(\n () => layer$.value?.baseEl,\n (neo, old) => {\n if (neo) {\n neo.addEventListener('click', onClick);\n } else if (old) {\n old.removeEventListener('click', onClick);\n }\n },\n );\n\n watch(\n () => active.value,\n (neo) => {\n neo ? installFocusTrap() : dismantleFocusTrap();\n preventInteractionBackground(neo);\n },\n { immediate: true },\n );\n\n onBeforeUnmount(() => {\n preventInteractionBackground(false);\n });\n\n useRender(() => {\n return (\n <>\n <YLayer\n v-model={active.value}\n classes={classes.value}\n content-styles={styles.value}\n modal\n ref={layer$}\n {...omit(chooseProps(props, YLayer.props), ['contentStyles'])}\n >\n {{\n default: (...args: any[]) => slots.default?.(...args),\n base: slots.base,\n }}\n </YLayer>\n </>\n );\n });\n\n return {\n active,\n layer: layer$,\n classes,\n };\n },\n});\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { computed, getCurrentInstance, watch } from 'vue';
|
|
1
|
+
import { computed, getCurrentInstance, onBeforeUnmount, watch } from 'vue';
|
|
2
2
|
export const Y_LAYER_GROUP_CLASS_NAME = 'y-layer-group';
|
|
3
3
|
const layerGroupState = new WeakMap();
|
|
4
4
|
export function useLayerGroup(target) {
|
|
@@ -41,13 +41,20 @@ export function useLayerGroup(target) {
|
|
|
41
41
|
});
|
|
42
42
|
function getActiveLayers() {
|
|
43
43
|
const activeLayers = [];
|
|
44
|
-
layerGroupState.get(layerGroup.value)
|
|
45
|
-
|
|
44
|
+
const currentGroup = layerGroupState.get(layerGroup.value);
|
|
45
|
+
currentGroup?.forEach(value => {
|
|
46
|
+
if (value?.ctx?.active && !value?.isUnmounted) {
|
|
46
47
|
activeLayers.push(value);
|
|
47
48
|
}
|
|
48
49
|
});
|
|
49
50
|
return activeLayers;
|
|
50
51
|
}
|
|
52
|
+
function unregister() {
|
|
53
|
+
layerGroupState.get(layerGroup.value)?.delete(vm);
|
|
54
|
+
}
|
|
55
|
+
onBeforeUnmount(() => {
|
|
56
|
+
unregister();
|
|
57
|
+
});
|
|
51
58
|
return {
|
|
52
59
|
layerGroup,
|
|
53
60
|
layerGroupState,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layer-group.mjs","names":["computed","getCurrentInstance","watch","Y_LAYER_GROUP_CLASS_NAME","layerGroupState","WeakMap","useLayerGroup","target","vm","layerGroup","refTarget","value","targetEl","document","body","rootEl","root","vnode","el","parentElement","querySelector","nodeType","layerEl","createElement","className","appendChild","neo","old","has","get","delete","set","Set","add","immediate","getActiveLayers","activeLayers","forEach","ctx","active","push"],"sources":["../../src/composables/layer-group.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"layer-group.mjs","names":["computed","getCurrentInstance","onBeforeUnmount","watch","Y_LAYER_GROUP_CLASS_NAME","layerGroupState","WeakMap","useLayerGroup","target","vm","layerGroup","refTarget","value","targetEl","document","body","rootEl","root","vnode","el","parentElement","querySelector","nodeType","layerEl","createElement","className","appendChild","neo","old","has","get","delete","set","Set","add","immediate","getActiveLayers","activeLayers","currentGroup","forEach","ctx","active","isUnmounted","push","unregister"],"sources":["../../src/composables/layer-group.ts"],"sourcesContent":["import {computed, getCurrentInstance, onBeforeUnmount, watch} from 'vue';\r\nimport type { Ref, ComponentInternalInstance } from 'vue';\r\n\r\nexport const Y_LAYER_GROUP_CLASS_NAME = 'y-layer-group';\r\n\r\nconst layerGroupState = new WeakMap<HTMLElement, Set<any>>();\r\n\r\nexport function useLayerGroup(target?: Ref<string | Element>) {\r\n const vm = getCurrentInstance()!;\r\n\r\n const layerGroup = computed<HTMLElement>(() => {\r\n const refTarget = target?.value;\r\n let targetEl: Element = document.body;\r\n\r\n const rootEl = vm.root.vnode.el?.parentElement as HTMLElement;\r\n if (rootEl) {\r\n targetEl = rootEl;\r\n }\r\n\r\n if (typeof refTarget === 'string') {\r\n const el = document.querySelector(refTarget);\r\n if (el) {\r\n targetEl = el;\r\n }\r\n }\r\n if (refTarget && (refTarget as Element).nodeType === 1) {\r\n targetEl = refTarget as Element;\r\n }\r\n //\r\n let layerEl = targetEl.querySelector(`.${Y_LAYER_GROUP_CLASS_NAME}`);\r\n if (!layerEl) {\r\n layerEl = document.createElement('div');\r\n layerEl.className = Y_LAYER_GROUP_CLASS_NAME;\r\n targetEl.appendChild(layerEl);\r\n }\r\n return layerEl as HTMLElement;\r\n });\r\n\r\n watch(\r\n layerGroup,\r\n (neo, old) => {\r\n if (old && layerGroupState.has(old)) {\r\n layerGroupState.get(old)?.delete(vm);\r\n }\r\n if (!(layerGroupState.has(neo) && layerGroupState.get(neo))) {\r\n layerGroupState.set(neo, new Set());\r\n }\r\n layerGroupState.get(neo)?.add(vm);\r\n },\r\n { immediate: true },\r\n );\r\n\r\n function getActiveLayers() {\r\n const activeLayers: ComponentInternalInstance[] = [];\r\n const currentGroup = layerGroupState.get(layerGroup.value);\r\n currentGroup?.forEach((value) => {\r\n if (value?.ctx?.active && !value?.isUnmounted) {\r\n activeLayers.push(value);\r\n }\r\n });\r\n return activeLayers;\r\n }\r\n\r\n function unregister() {\r\n layerGroupState.get(layerGroup.value)?.delete(vm);\r\n }\r\n\r\n onBeforeUnmount(() => {\r\n unregister();\r\n });\r\n\r\n return { layerGroup, layerGroupState, getActiveLayers };\r\n}\r\n"],"mappings":"AAAA,SAAQA,QAAQ,EAAEC,kBAAkB,EAAEC,eAAe,EAAEC,KAAK,QAAO,KAAK;AAGxE,OAAO,MAAMC,wBAAwB,GAAG,eAAe;AAEvD,MAAMC,eAAe,GAAG,IAAIC,OAAO,CAAwB,CAAC;AAE5D,OAAO,SAASC,aAAaA,CAACC,MAA8B,EAAE;EAC5D,MAAMC,EAAE,GAAGR,kBAAkB,CAAC,CAAE;EAEhC,MAAMS,UAAU,GAAGV,QAAQ,CAAc,MAAM;IAC7C,MAAMW,SAAS,GAAGH,MAAM,EAAEI,KAAK;IAC/B,IAAIC,QAAiB,GAAGC,QAAQ,CAACC,IAAI;IAErC,MAAMC,MAAM,GAAGP,EAAE,CAACQ,IAAI,CAACC,KAAK,CAACC,EAAE,EAAEC,aAA4B;IAC7D,IAAIJ,MAAM,EAAE;MACVH,QAAQ,GAAGG,MAAM;IACnB;IAEA,IAAI,OAAOL,SAAS,KAAK,QAAQ,EAAE;MACjC,MAAMQ,EAAE,GAAGL,QAAQ,CAACO,aAAa,CAACV,SAAS,CAAC;MAC5C,IAAIQ,EAAE,EAAE;QACNN,QAAQ,GAAGM,EAAE;MACf;IACF;IACA,IAAIR,SAAS,IAAKA,SAAS,CAAaW,QAAQ,KAAK,CAAC,EAAE;MACtDT,QAAQ,GAAGF,SAAoB;IACjC;IACA;IACA,IAAIY,OAAO,GAAGV,QAAQ,CAACQ,aAAa,CAAE,IAAGjB,wBAAyB,EAAC,CAAC;IACpE,IAAI,CAACmB,OAAO,EAAE;MACZA,OAAO,GAAGT,QAAQ,CAACU,aAAa,CAAC,KAAK,CAAC;MACvCD,OAAO,CAACE,SAAS,GAAGrB,wBAAwB;MAC5CS,QAAQ,CAACa,WAAW,CAACH,OAAO,CAAC;IAC/B;IACA,OAAOA,OAAO;EAChB,CAAC,CAAC;EAEFpB,KAAK,CACHO,UAAU,EACV,CAACiB,GAAG,EAAEC,GAAG,KAAK;IACZ,IAAIA,GAAG,IAAIvB,eAAe,CAACwB,GAAG,CAACD,GAAG,CAAC,EAAE;MACnCvB,eAAe,CAACyB,GAAG,CAACF,GAAG,CAAC,EAAEG,MAAM,CAACtB,EAAE,CAAC;IACtC;IACA,IAAI,EAAEJ,eAAe,CAACwB,GAAG,CAACF,GAAG,CAAC,IAAItB,eAAe,CAACyB,GAAG,CAACH,GAAG,CAAC,CAAC,EAAE;MAC3DtB,eAAe,CAAC2B,GAAG,CAACL,GAAG,EAAE,IAAIM,GAAG,CAAC,CAAC,CAAC;IACrC;IACA5B,eAAe,CAACyB,GAAG,CAACH,GAAG,CAAC,EAAEO,GAAG,CAACzB,EAAE,CAAC;EACnC,CAAC,EACD;IAAE0B,SAAS,EAAE;EAAK,CACpB,CAAC;EAED,SAASC,eAAeA,CAAA,EAAG;IACzB,MAAMC,YAAyC,GAAG,EAAE;IACpD,MAAMC,YAAY,GAAGjC,eAAe,CAACyB,GAAG,CAACpB,UAAU,CAACE,KAAK,CAAC;IAC1D0B,YAAY,EAAEC,OAAO,CAAE3B,KAAK,IAAK;MAC/B,IAAIA,KAAK,EAAE4B,GAAG,EAAEC,MAAM,IAAI,CAAC7B,KAAK,EAAE8B,WAAW,EAAE;QAC7CL,YAAY,CAACM,IAAI,CAAC/B,KAAK,CAAC;MAC1B;IACF,CAAC,CAAC;IACF,OAAOyB,YAAY;EACrB;EAEA,SAASO,UAAUA,CAAA,EAAG;IACpBvC,eAAe,CAACyB,GAAG,CAACpB,UAAU,CAACE,KAAK,CAAC,EAAEmB,MAAM,CAACtB,EAAE,CAAC;EACnD;EAEAP,eAAe,CAAC,MAAM;IACpB0C,UAAU,CAAC,CAAC;EACd,CAAC,CAAC;EAEF,OAAO;IAAElC,UAAU;IAAEL,eAAe;IAAE+B;EAAgB,CAAC;AACzD"}
|
package/package.json
CHANGED
|
@@ -1,24 +1,352 @@
|
|
|
1
1
|
import type { PropType } from 'vue';
|
|
2
|
+
export declare const pressYDialogPropsOptions: <Defaults extends {
|
|
3
|
+
disabled?: unknown;
|
|
4
|
+
theme?: unknown;
|
|
5
|
+
width?: unknown;
|
|
6
|
+
height?: unknown;
|
|
7
|
+
modelValue?: unknown;
|
|
8
|
+
scrim?: unknown;
|
|
9
|
+
scrimOpacity?: unknown;
|
|
10
|
+
eager?: unknown;
|
|
11
|
+
contentClasses?: unknown;
|
|
12
|
+
closeClickScrim?: unknown;
|
|
13
|
+
contentStyles?: unknown;
|
|
14
|
+
openOnHover?: unknown;
|
|
15
|
+
openDelay?: unknown;
|
|
16
|
+
closeDelay?: unknown;
|
|
17
|
+
coordinateStrategy?: unknown;
|
|
18
|
+
position?: unknown;
|
|
19
|
+
align?: unknown;
|
|
20
|
+
origin?: unknown;
|
|
21
|
+
viewportMargin?: unknown;
|
|
22
|
+
minWidth?: unknown;
|
|
23
|
+
maxWidth?: unknown;
|
|
24
|
+
minHeight?: unknown;
|
|
25
|
+
maxHeight?: unknown;
|
|
26
|
+
transition?: unknown;
|
|
27
|
+
persistent?: unknown;
|
|
28
|
+
dialogClasses?: unknown;
|
|
29
|
+
maximized?: unknown;
|
|
30
|
+
offset?: unknown;
|
|
31
|
+
} = {}>(defaults?: Defaults | undefined) => {
|
|
32
|
+
disabled: unknown extends Defaults["disabled"] ? {
|
|
33
|
+
type: PropType<boolean>;
|
|
34
|
+
default: boolean;
|
|
35
|
+
} : Omit<{
|
|
36
|
+
type: PropType<boolean>;
|
|
37
|
+
default: boolean;
|
|
38
|
+
}, "type" | "default"> & {
|
|
39
|
+
type: PropType<unknown extends Defaults["disabled"] ? boolean : boolean | Defaults["disabled"]>;
|
|
40
|
+
default: unknown extends Defaults["disabled"] ? boolean : boolean | Defaults["disabled"];
|
|
41
|
+
};
|
|
42
|
+
theme: unknown extends Defaults["theme"] ? PropType<string> : {
|
|
43
|
+
type: PropType<unknown extends Defaults["theme"] ? string : string | Defaults["theme"]>;
|
|
44
|
+
default: unknown extends Defaults["theme"] ? string : string | Defaults["theme"];
|
|
45
|
+
};
|
|
46
|
+
width: unknown extends Defaults["width"] ? PropType<string | number> : {
|
|
47
|
+
type: PropType<unknown extends Defaults["width"] ? string | number : NonNullable<string | number> | Defaults["width"]>;
|
|
48
|
+
default: unknown extends Defaults["width"] ? string | number : NonNullable<string | number> | Defaults["width"];
|
|
49
|
+
};
|
|
50
|
+
height: unknown extends Defaults["height"] ? PropType<string | number> : {
|
|
51
|
+
type: PropType<unknown extends Defaults["height"] ? string | number : NonNullable<string | number> | Defaults["height"]>;
|
|
52
|
+
default: unknown extends Defaults["height"] ? string | number : NonNullable<string | number> | Defaults["height"];
|
|
53
|
+
};
|
|
54
|
+
modelValue: unknown extends Defaults["modelValue"] ? {
|
|
55
|
+
type: PropType<boolean>;
|
|
56
|
+
} : Omit<{
|
|
57
|
+
type: PropType<boolean>;
|
|
58
|
+
}, "type" | "default"> & {
|
|
59
|
+
type: PropType<unknown extends Defaults["modelValue"] ? boolean : boolean | Defaults["modelValue"]>;
|
|
60
|
+
default: unknown extends Defaults["modelValue"] ? boolean : boolean | Defaults["modelValue"];
|
|
61
|
+
};
|
|
62
|
+
scrim: unknown extends Defaults["scrim"] ? Omit<{
|
|
63
|
+
type: PropType<boolean>;
|
|
64
|
+
}, "type" | "default"> & {
|
|
65
|
+
type: PropType<boolean>;
|
|
66
|
+
default: boolean;
|
|
67
|
+
} : Omit<Omit<{
|
|
68
|
+
type: PropType<boolean>;
|
|
69
|
+
}, "type" | "default"> & {
|
|
70
|
+
type: PropType<boolean>;
|
|
71
|
+
default: boolean;
|
|
72
|
+
}, "type" | "default"> & {
|
|
73
|
+
type: PropType<unknown extends Defaults["scrim"] ? boolean : boolean | Defaults["scrim"]>;
|
|
74
|
+
default: unknown extends Defaults["scrim"] ? boolean : boolean | Defaults["scrim"];
|
|
75
|
+
};
|
|
76
|
+
scrimOpacity: unknown extends Defaults["scrimOpacity"] ? {
|
|
77
|
+
type: PropType<number>;
|
|
78
|
+
} : Omit<{
|
|
79
|
+
type: PropType<number>;
|
|
80
|
+
}, "type" | "default"> & {
|
|
81
|
+
type: PropType<unknown extends Defaults["scrimOpacity"] ? number : number | Defaults["scrimOpacity"]>;
|
|
82
|
+
default: unknown extends Defaults["scrimOpacity"] ? number : number | Defaults["scrimOpacity"];
|
|
83
|
+
};
|
|
84
|
+
eager: unknown extends Defaults["eager"] ? {
|
|
85
|
+
type: PropType<boolean>;
|
|
86
|
+
} : Omit<{
|
|
87
|
+
type: PropType<boolean>;
|
|
88
|
+
}, "type" | "default"> & {
|
|
89
|
+
type: PropType<unknown extends Defaults["eager"] ? boolean : boolean | Defaults["eager"]>;
|
|
90
|
+
default: unknown extends Defaults["eager"] ? boolean : boolean | Defaults["eager"];
|
|
91
|
+
};
|
|
92
|
+
contentClasses: unknown extends Defaults["contentClasses"] ? {
|
|
93
|
+
type: PropType<string | string[] | Record<string, any>>;
|
|
94
|
+
} : Omit<{
|
|
95
|
+
type: PropType<string | string[] | Record<string, any>>;
|
|
96
|
+
}, "type" | "default"> & {
|
|
97
|
+
type: PropType<unknown extends Defaults["contentClasses"] ? string | string[] | Record<string, any> : Defaults["contentClasses"] | NonNullable<string | string[] | Record<string, any>>>;
|
|
98
|
+
default: unknown extends Defaults["contentClasses"] ? string | string[] | Record<string, any> : Defaults["contentClasses"] | NonNullable<string | string[] | Record<string, any>>;
|
|
99
|
+
};
|
|
100
|
+
closeClickScrim: unknown extends Defaults["closeClickScrim"] ? {
|
|
101
|
+
type: PropType<boolean>;
|
|
102
|
+
} : Omit<{
|
|
103
|
+
type: PropType<boolean>;
|
|
104
|
+
}, "type" | "default"> & {
|
|
105
|
+
type: PropType<unknown extends Defaults["closeClickScrim"] ? boolean : boolean | Defaults["closeClickScrim"]>;
|
|
106
|
+
default: unknown extends Defaults["closeClickScrim"] ? boolean : boolean | Defaults["closeClickScrim"];
|
|
107
|
+
};
|
|
108
|
+
contentStyles: unknown extends Defaults["contentStyles"] ? {
|
|
109
|
+
type: PropType<import("vue").CSSProperties>;
|
|
110
|
+
default: () => void;
|
|
111
|
+
} : Omit<{
|
|
112
|
+
type: PropType<import("vue").CSSProperties>;
|
|
113
|
+
default: () => void;
|
|
114
|
+
}, "type" | "default"> & {
|
|
115
|
+
type: PropType<unknown extends Defaults["contentStyles"] ? import("vue").CSSProperties : import("vue").CSSProperties | Defaults["contentStyles"]>;
|
|
116
|
+
default: unknown extends Defaults["contentStyles"] ? import("vue").CSSProperties : import("vue").CSSProperties | Defaults["contentStyles"];
|
|
117
|
+
};
|
|
118
|
+
openOnHover: unknown extends Defaults["openOnHover"] ? {
|
|
119
|
+
type: PropType<boolean>;
|
|
120
|
+
default: boolean;
|
|
121
|
+
} : Omit<{
|
|
122
|
+
type: PropType<boolean>;
|
|
123
|
+
default: boolean;
|
|
124
|
+
}, "type" | "default"> & {
|
|
125
|
+
type: PropType<unknown extends Defaults["openOnHover"] ? boolean : boolean | Defaults["openOnHover"]>;
|
|
126
|
+
default: unknown extends Defaults["openOnHover"] ? boolean : boolean | Defaults["openOnHover"];
|
|
127
|
+
};
|
|
128
|
+
openDelay: unknown extends Defaults["openDelay"] ? {
|
|
129
|
+
type: PropType<number>;
|
|
130
|
+
default: number;
|
|
131
|
+
} : Omit<{
|
|
132
|
+
type: PropType<number>;
|
|
133
|
+
default: number;
|
|
134
|
+
}, "type" | "default"> & {
|
|
135
|
+
type: PropType<unknown extends Defaults["openDelay"] ? number : number | Defaults["openDelay"]>;
|
|
136
|
+
default: unknown extends Defaults["openDelay"] ? number : number | Defaults["openDelay"];
|
|
137
|
+
};
|
|
138
|
+
closeDelay: unknown extends Defaults["closeDelay"] ? {
|
|
139
|
+
type: PropType<number>;
|
|
140
|
+
default: number;
|
|
141
|
+
} : Omit<{
|
|
142
|
+
type: PropType<number>;
|
|
143
|
+
default: number;
|
|
144
|
+
}, "type" | "default"> & {
|
|
145
|
+
type: PropType<unknown extends Defaults["closeDelay"] ? number : number | Defaults["closeDelay"]>;
|
|
146
|
+
default: unknown extends Defaults["closeDelay"] ? number : number | Defaults["closeDelay"];
|
|
147
|
+
};
|
|
148
|
+
coordinateStrategy: unknown extends Defaults["coordinateStrategy"] ? {
|
|
149
|
+
type: PropType<"levitation" | "arrangement" | import("../../composables/coordinate").CoordinateStrategyFn>;
|
|
150
|
+
default: string;
|
|
151
|
+
} : Omit<{
|
|
152
|
+
type: PropType<"levitation" | "arrangement" | import("../../composables/coordinate").CoordinateStrategyFn>;
|
|
153
|
+
default: string;
|
|
154
|
+
}, "type" | "default"> & {
|
|
155
|
+
type: PropType<unknown extends Defaults["coordinateStrategy"] ? "levitation" | "arrangement" | import("../../composables/coordinate").CoordinateStrategyFn : NonNullable<"levitation" | "arrangement" | import("../../composables/coordinate").CoordinateStrategyFn> | Defaults["coordinateStrategy"]>;
|
|
156
|
+
default: unknown extends Defaults["coordinateStrategy"] ? "levitation" | "arrangement" | import("../../composables/coordinate").CoordinateStrategyFn : NonNullable<"levitation" | "arrangement" | import("../../composables/coordinate").CoordinateStrategyFn> | Defaults["coordinateStrategy"];
|
|
157
|
+
};
|
|
158
|
+
position: unknown extends Defaults["position"] ? {
|
|
159
|
+
type: PropType<"default" | "top" | "end" | "right" | "bottom" | "left" | "start">;
|
|
160
|
+
default: string;
|
|
161
|
+
} : Omit<{
|
|
162
|
+
type: PropType<"default" | "top" | "end" | "right" | "bottom" | "left" | "start">;
|
|
163
|
+
default: string;
|
|
164
|
+
}, "type" | "default"> & {
|
|
165
|
+
type: PropType<unknown extends Defaults["position"] ? "default" | "top" | "end" | "right" | "bottom" | "left" | "start" : NonNullable<"default" | "top" | "end" | "right" | "bottom" | "left" | "start"> | Defaults["position"]>;
|
|
166
|
+
default: unknown extends Defaults["position"] ? "default" | "top" | "end" | "right" | "bottom" | "left" | "start" : NonNullable<"default" | "top" | "end" | "right" | "bottom" | "left" | "start"> | Defaults["position"];
|
|
167
|
+
};
|
|
168
|
+
align: unknown extends Defaults["align"] ? {
|
|
169
|
+
type: PropType<"end" | "start" | "center">;
|
|
170
|
+
default: string;
|
|
171
|
+
} : Omit<{
|
|
172
|
+
type: PropType<"end" | "start" | "center">;
|
|
173
|
+
default: string;
|
|
174
|
+
}, "type" | "default"> & {
|
|
175
|
+
type: PropType<unknown extends Defaults["align"] ? "end" | "start" | "center" : NonNullable<"end" | "start" | "center"> | Defaults["align"]>;
|
|
176
|
+
default: unknown extends Defaults["align"] ? "end" | "start" | "center" : NonNullable<"end" | "start" | "center"> | Defaults["align"];
|
|
177
|
+
};
|
|
178
|
+
origin: unknown extends Defaults["origin"] ? {
|
|
179
|
+
type: StringConstructor;
|
|
180
|
+
default: string;
|
|
181
|
+
} : Omit<{
|
|
182
|
+
type: StringConstructor;
|
|
183
|
+
default: string;
|
|
184
|
+
}, "type" | "default"> & {
|
|
185
|
+
type: PropType<unknown extends Defaults["origin"] ? string : string | Defaults["origin"]>;
|
|
186
|
+
default: unknown extends Defaults["origin"] ? string : string | Defaults["origin"];
|
|
187
|
+
};
|
|
188
|
+
viewportMargin: unknown extends Defaults["viewportMargin"] ? {
|
|
189
|
+
type: NumberConstructor;
|
|
190
|
+
default: number;
|
|
191
|
+
} : Omit<{
|
|
192
|
+
type: NumberConstructor;
|
|
193
|
+
default: number;
|
|
194
|
+
}, "type" | "default"> & {
|
|
195
|
+
type: PropType<unknown extends Defaults["viewportMargin"] ? number : number | Defaults["viewportMargin"]>;
|
|
196
|
+
default: unknown extends Defaults["viewportMargin"] ? number : number | Defaults["viewportMargin"];
|
|
197
|
+
};
|
|
198
|
+
minWidth: unknown extends Defaults["minWidth"] ? PropType<string | number> : {
|
|
199
|
+
type: PropType<unknown extends Defaults["minWidth"] ? string | number : NonNullable<string | number> | Defaults["minWidth"]>;
|
|
200
|
+
default: unknown extends Defaults["minWidth"] ? string | number : NonNullable<string | number> | Defaults["minWidth"];
|
|
201
|
+
};
|
|
202
|
+
maxWidth: unknown extends Defaults["maxWidth"] ? PropType<string | number> : {
|
|
203
|
+
type: PropType<unknown extends Defaults["maxWidth"] ? string | number : NonNullable<string | number> | Defaults["maxWidth"]>;
|
|
204
|
+
default: unknown extends Defaults["maxWidth"] ? string | number : NonNullable<string | number> | Defaults["maxWidth"];
|
|
205
|
+
};
|
|
206
|
+
minHeight: unknown extends Defaults["minHeight"] ? PropType<string | number> : {
|
|
207
|
+
type: PropType<unknown extends Defaults["minHeight"] ? string | number : NonNullable<string | number> | Defaults["minHeight"]>;
|
|
208
|
+
default: unknown extends Defaults["minHeight"] ? string | number : NonNullable<string | number> | Defaults["minHeight"];
|
|
209
|
+
};
|
|
210
|
+
maxHeight: unknown extends Defaults["maxHeight"] ? PropType<string | number> : {
|
|
211
|
+
type: PropType<unknown extends Defaults["maxHeight"] ? string | number : NonNullable<string | number> | Defaults["maxHeight"]>;
|
|
212
|
+
default: unknown extends Defaults["maxHeight"] ? string | number : NonNullable<string | number> | Defaults["maxHeight"];
|
|
213
|
+
};
|
|
214
|
+
transition: unknown extends Defaults["transition"] ? {
|
|
215
|
+
type: PropType<string | (import("vue").TransitionProps & {
|
|
216
|
+
is?: import("vue").Component | undefined;
|
|
217
|
+
})>;
|
|
218
|
+
default: string;
|
|
219
|
+
} : Omit<{
|
|
220
|
+
type: PropType<string | (import("vue").TransitionProps & {
|
|
221
|
+
is?: import("vue").Component | undefined;
|
|
222
|
+
})>;
|
|
223
|
+
default: string;
|
|
224
|
+
}, "type" | "default"> & {
|
|
225
|
+
type: PropType<unknown extends Defaults["transition"] ? string | (import("vue").TransitionProps & {
|
|
226
|
+
is?: import("vue").Component | undefined;
|
|
227
|
+
}) : Defaults["transition"] | NonNullable<string | (import("vue").TransitionProps & {
|
|
228
|
+
is?: import("vue").Component | undefined;
|
|
229
|
+
})>>;
|
|
230
|
+
default: unknown extends Defaults["transition"] ? string | (import("vue").TransitionProps & {
|
|
231
|
+
is?: import("vue").Component | undefined;
|
|
232
|
+
}) : Defaults["transition"] | NonNullable<string | (import("vue").TransitionProps & {
|
|
233
|
+
is?: import("vue").Component | undefined;
|
|
234
|
+
})>;
|
|
235
|
+
};
|
|
236
|
+
persistent: unknown extends Defaults["persistent"] ? {
|
|
237
|
+
type: PropType<boolean>;
|
|
238
|
+
default: boolean;
|
|
239
|
+
} : Omit<{
|
|
240
|
+
type: PropType<boolean>;
|
|
241
|
+
default: boolean;
|
|
242
|
+
}, "type" | "default"> & {
|
|
243
|
+
type: PropType<unknown extends Defaults["persistent"] ? boolean : boolean | Defaults["persistent"]>;
|
|
244
|
+
default: unknown extends Defaults["persistent"] ? boolean : boolean | Defaults["persistent"];
|
|
245
|
+
};
|
|
246
|
+
dialogClasses: unknown extends Defaults["dialogClasses"] ? {
|
|
247
|
+
type: PropType<string | string[] | Record<string, any>>;
|
|
248
|
+
} : Omit<{
|
|
249
|
+
type: PropType<string | string[] | Record<string, any>>;
|
|
250
|
+
}, "type" | "default"> & {
|
|
251
|
+
type: PropType<unknown extends Defaults["dialogClasses"] ? string | string[] | Record<string, any> : NonNullable<string | string[] | Record<string, any>> | Defaults["dialogClasses"]>;
|
|
252
|
+
default: unknown extends Defaults["dialogClasses"] ? string | string[] | Record<string, any> : NonNullable<string | string[] | Record<string, any>> | Defaults["dialogClasses"];
|
|
253
|
+
};
|
|
254
|
+
maximized: unknown extends Defaults["maximized"] ? PropType<boolean> : {
|
|
255
|
+
type: PropType<unknown extends Defaults["maximized"] ? boolean : boolean | Defaults["maximized"]>;
|
|
256
|
+
default: unknown extends Defaults["maximized"] ? boolean : boolean | Defaults["maximized"];
|
|
257
|
+
};
|
|
258
|
+
offset: unknown extends Defaults["offset"] ? {
|
|
259
|
+
type: PropType<string>;
|
|
260
|
+
} : Omit<{
|
|
261
|
+
type: PropType<string>;
|
|
262
|
+
}, "type" | "default"> & {
|
|
263
|
+
type: PropType<unknown extends Defaults["offset"] ? string : string | Defaults["offset"]>;
|
|
264
|
+
default: unknown extends Defaults["offset"] ? string : string | Defaults["offset"];
|
|
265
|
+
};
|
|
266
|
+
};
|
|
2
267
|
export declare const YDialog: import("vue").DefineComponent<{
|
|
268
|
+
disabled: {
|
|
269
|
+
type: PropType<boolean>;
|
|
270
|
+
default: boolean;
|
|
271
|
+
};
|
|
272
|
+
theme: PropType<string>;
|
|
273
|
+
width: PropType<string | number>;
|
|
274
|
+
height: PropType<string | number>;
|
|
3
275
|
modelValue: {
|
|
4
276
|
type: PropType<boolean>;
|
|
5
277
|
};
|
|
6
|
-
|
|
278
|
+
scrim: Omit<{
|
|
279
|
+
type: PropType<boolean>;
|
|
280
|
+
}, "type" | "default"> & {
|
|
7
281
|
type: PropType<boolean>;
|
|
8
282
|
default: boolean;
|
|
9
283
|
};
|
|
10
|
-
|
|
284
|
+
scrimOpacity: {
|
|
285
|
+
type: PropType<number>;
|
|
286
|
+
};
|
|
287
|
+
eager: {
|
|
288
|
+
type: PropType<boolean>;
|
|
289
|
+
};
|
|
290
|
+
contentClasses: {
|
|
11
291
|
type: PropType<string | string[] | Record<string, any>>;
|
|
12
292
|
};
|
|
13
293
|
closeClickScrim: {
|
|
14
294
|
type: PropType<boolean>;
|
|
15
295
|
};
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
296
|
+
contentStyles: {
|
|
297
|
+
type: PropType<import("vue").CSSProperties>;
|
|
298
|
+
default: () => void;
|
|
299
|
+
};
|
|
300
|
+
openOnHover: {
|
|
19
301
|
type: PropType<boolean>;
|
|
20
302
|
default: boolean;
|
|
21
303
|
};
|
|
304
|
+
openDelay: {
|
|
305
|
+
type: PropType<number>;
|
|
306
|
+
default: number;
|
|
307
|
+
};
|
|
308
|
+
closeDelay: {
|
|
309
|
+
type: PropType<number>;
|
|
310
|
+
default: number;
|
|
311
|
+
};
|
|
312
|
+
coordinateStrategy: {
|
|
313
|
+
type: PropType<"levitation" | "arrangement" | import("../../composables/coordinate").CoordinateStrategyFn>;
|
|
314
|
+
default: string;
|
|
315
|
+
};
|
|
316
|
+
position: {
|
|
317
|
+
type: PropType<"default" | "top" | "end" | "right" | "bottom" | "left" | "start">;
|
|
318
|
+
default: string;
|
|
319
|
+
};
|
|
320
|
+
align: {
|
|
321
|
+
type: PropType<"end" | "start" | "center">;
|
|
322
|
+
default: string;
|
|
323
|
+
};
|
|
324
|
+
origin: {
|
|
325
|
+
type: StringConstructor;
|
|
326
|
+
default: string;
|
|
327
|
+
};
|
|
328
|
+
viewportMargin: {
|
|
329
|
+
type: NumberConstructor;
|
|
330
|
+
default: number;
|
|
331
|
+
};
|
|
332
|
+
minWidth: PropType<string | number>;
|
|
333
|
+
maxWidth: PropType<string | number>;
|
|
334
|
+
minHeight: PropType<string | number>;
|
|
335
|
+
maxHeight: PropType<string | number>;
|
|
336
|
+
transition: {
|
|
337
|
+
type: PropType<string | (import("vue").TransitionProps & {
|
|
338
|
+
is?: import("vue").Component | undefined;
|
|
339
|
+
})>;
|
|
340
|
+
default: string;
|
|
341
|
+
};
|
|
342
|
+
persistent: {
|
|
343
|
+
type: PropType<boolean>;
|
|
344
|
+
default: boolean;
|
|
345
|
+
};
|
|
346
|
+
dialogClasses: {
|
|
347
|
+
type: PropType<string | string[] | Record<string, any>>;
|
|
348
|
+
};
|
|
349
|
+
maximized: PropType<boolean>;
|
|
22
350
|
offset: {
|
|
23
351
|
type: PropType<string>;
|
|
24
352
|
};
|
|
@@ -50,7 +378,7 @@ export declare const YDialog: import("vue").DefineComponent<{
|
|
|
50
378
|
default: string;
|
|
51
379
|
};
|
|
52
380
|
offset: {
|
|
53
|
-
type:
|
|
381
|
+
type: PropType<string | number | string[]>;
|
|
54
382
|
};
|
|
55
383
|
viewportMargin: {
|
|
56
384
|
type: NumberConstructor;
|
|
@@ -1716,7 +2044,7 @@ export declare const YDialog: import("vue").DefineComponent<{
|
|
|
1716
2044
|
default: string;
|
|
1717
2045
|
};
|
|
1718
2046
|
offset: {
|
|
1719
|
-
type:
|
|
2047
|
+
type: PropType<string | number | string[]>;
|
|
1720
2048
|
};
|
|
1721
2049
|
viewportMargin: {
|
|
1722
2050
|
type: NumberConstructor;
|
|
@@ -1798,31 +2126,107 @@ export declare const YDialog: import("vue").DefineComponent<{
|
|
|
1798
2126
|
'y-dialog--maximized': boolean | undefined;
|
|
1799
2127
|
}>;
|
|
1800
2128
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
2129
|
+
disabled: {
|
|
2130
|
+
type: PropType<boolean>;
|
|
2131
|
+
default: boolean;
|
|
2132
|
+
};
|
|
2133
|
+
theme: PropType<string>;
|
|
2134
|
+
width: PropType<string | number>;
|
|
2135
|
+
height: PropType<string | number>;
|
|
1801
2136
|
modelValue: {
|
|
1802
2137
|
type: PropType<boolean>;
|
|
1803
2138
|
};
|
|
1804
|
-
|
|
2139
|
+
scrim: Omit<{
|
|
2140
|
+
type: PropType<boolean>;
|
|
2141
|
+
}, "type" | "default"> & {
|
|
1805
2142
|
type: PropType<boolean>;
|
|
1806
2143
|
default: boolean;
|
|
1807
2144
|
};
|
|
1808
|
-
|
|
2145
|
+
scrimOpacity: {
|
|
2146
|
+
type: PropType<number>;
|
|
2147
|
+
};
|
|
2148
|
+
eager: {
|
|
2149
|
+
type: PropType<boolean>;
|
|
2150
|
+
};
|
|
2151
|
+
contentClasses: {
|
|
1809
2152
|
type: PropType<string | string[] | Record<string, any>>;
|
|
1810
2153
|
};
|
|
1811
2154
|
closeClickScrim: {
|
|
1812
2155
|
type: PropType<boolean>;
|
|
1813
2156
|
};
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
2157
|
+
contentStyles: {
|
|
2158
|
+
type: PropType<import("vue").CSSProperties>;
|
|
2159
|
+
default: () => void;
|
|
2160
|
+
};
|
|
2161
|
+
openOnHover: {
|
|
2162
|
+
type: PropType<boolean>;
|
|
2163
|
+
default: boolean;
|
|
2164
|
+
};
|
|
2165
|
+
openDelay: {
|
|
2166
|
+
type: PropType<number>;
|
|
2167
|
+
default: number;
|
|
2168
|
+
};
|
|
2169
|
+
closeDelay: {
|
|
2170
|
+
type: PropType<number>;
|
|
2171
|
+
default: number;
|
|
2172
|
+
};
|
|
2173
|
+
coordinateStrategy: {
|
|
2174
|
+
type: PropType<"levitation" | "arrangement" | import("../../composables/coordinate").CoordinateStrategyFn>;
|
|
2175
|
+
default: string;
|
|
2176
|
+
};
|
|
2177
|
+
position: {
|
|
2178
|
+
type: PropType<"default" | "top" | "end" | "right" | "bottom" | "left" | "start">;
|
|
2179
|
+
default: string;
|
|
2180
|
+
};
|
|
2181
|
+
align: {
|
|
2182
|
+
type: PropType<"end" | "start" | "center">;
|
|
2183
|
+
default: string;
|
|
2184
|
+
};
|
|
2185
|
+
origin: {
|
|
2186
|
+
type: StringConstructor;
|
|
2187
|
+
default: string;
|
|
2188
|
+
};
|
|
2189
|
+
viewportMargin: {
|
|
2190
|
+
type: NumberConstructor;
|
|
2191
|
+
default: number;
|
|
2192
|
+
};
|
|
2193
|
+
minWidth: PropType<string | number>;
|
|
2194
|
+
maxWidth: PropType<string | number>;
|
|
2195
|
+
minHeight: PropType<string | number>;
|
|
2196
|
+
maxHeight: PropType<string | number>;
|
|
2197
|
+
transition: {
|
|
2198
|
+
type: PropType<string | (import("vue").TransitionProps & {
|
|
2199
|
+
is?: import("vue").Component | undefined;
|
|
2200
|
+
})>;
|
|
2201
|
+
default: string;
|
|
2202
|
+
};
|
|
2203
|
+
persistent: {
|
|
1817
2204
|
type: PropType<boolean>;
|
|
1818
2205
|
default: boolean;
|
|
1819
2206
|
};
|
|
2207
|
+
dialogClasses: {
|
|
2208
|
+
type: PropType<string | string[] | Record<string, any>>;
|
|
2209
|
+
};
|
|
2210
|
+
maximized: PropType<boolean>;
|
|
1820
2211
|
offset: {
|
|
1821
2212
|
type: PropType<string>;
|
|
1822
2213
|
};
|
|
1823
2214
|
}>> & {
|
|
1824
2215
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
1825
2216
|
}, {
|
|
2217
|
+
disabled: boolean;
|
|
1826
2218
|
scrim: boolean;
|
|
2219
|
+
contentStyles: import("vue").CSSProperties;
|
|
2220
|
+
openOnHover: boolean;
|
|
2221
|
+
openDelay: number;
|
|
2222
|
+
closeDelay: number;
|
|
2223
|
+
coordinateStrategy: "levitation" | "arrangement" | import("../../composables/coordinate").CoordinateStrategyFn;
|
|
2224
|
+
position: "default" | "top" | "end" | "right" | "bottom" | "left" | "start";
|
|
2225
|
+
align: "end" | "start" | "center";
|
|
2226
|
+
origin: string;
|
|
2227
|
+
viewportMargin: number;
|
|
2228
|
+
transition: string | (import("vue").TransitionProps & {
|
|
2229
|
+
is?: import("vue").Component | undefined;
|
|
2230
|
+
});
|
|
1827
2231
|
persistent: boolean;
|
|
1828
2232
|
}, {}>;
|