UNPKG

tdesign-mobile-vue

Version:
1 lines 4.41 kB
{"version":3,"file":"overlay.mjs","sources":["../../src/overlay/overlay.tsx"],"sourcesContent":["import { Transition, computed, defineComponent } from 'vue';\nimport { preventDefault } from '../shared/dom';\nimport config from '../config';\nimport OverlayProps from './props';\nimport { usePrefixClass } from '../hooks/useClass';\nimport { useTNodeJSX } from '../hooks/tnode';\n\nconst { prefix } = config;\n\nexport default defineComponent({\n name: `${prefix}-overlay`,\n props: OverlayProps,\n setup(props) {\n const renderTNodeJSX = useTNodeJSX();\n const overlayClass = usePrefixClass('overlay');\n\n const overlayClasses = computed(() => ({\n [`${overlayClass.value}`]: true,\n [`${overlayClass.value}--active`]: props.visible,\n }));\n\n const overlayStyles = computed(() => {\n const arr = [];\n\n if (props.customStyle) {\n arr.push(props.customStyle);\n }\n if (props.zIndex) {\n arr.push(`z-index: ${props.zIndex}`);\n }\n if (props.duration) {\n arr.push(`transition-duration: ${props.duration}ms`);\n }\n if (props.backgroundColor) {\n arr.push(`background-color: ${props.backgroundColor}`);\n }\n return arr.join('; ');\n });\n\n const handleTouchMove = (e: TouchEvent) => {\n if (props.preventScrollThrough) {\n preventDefault(e, true);\n }\n };\n const handleClick = (e: MouseEvent) => {\n props.onClick?.({ e });\n };\n\n return () => (\n <Transition name={overlayClass.value}>\n <div\n v-show={props.visible}\n class={overlayClasses.value}\n style={overlayStyles.value}\n onClick={handleClick}\n onTouchmove={handleTouchMove}\n >\n {renderTNodeJSX('default')}\n </div>\n </Transition>\n );\n },\n});\n"],"names":["prefix","config","defineComponent","name","props","OverlayProps","setup","renderTNodeJSX","useTNodeJSX","overlayClass","usePrefixClass","overlayClasses","computed","_defineProperty","concat","value","visible","overlayStyles","arr","customStyle","push","zIndex","duration","backgroundColor","join","handleTouchMove","e","preventScrollThrough","preventDefault","handleClick","_props$onClick","onClick","call","_createVNode","Transition","default","_default","_withDirectives","_vShow"],"mappings":"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"}