{"version":3,"file":"DrawerChild.cjs","sources":["../../../../../../packages/vue-components/vc-drawer/src/DrawerChild.tsx"],"sourcesContent":["import { classNames, KeyCode, omit } from '@antdv/utils';\nimport {\n  defineComponent,\n  nextTick,\n  onMounted,\n  onUnmounted,\n  shallowRef,\n  Transition,\n  watch,\n} from 'vue';\nimport { drawerChildProps } from './IDrawerPropTypes';\nimport { dataToArray, windowIsUndefined } from './utils';\n\nconst currentDrawer: Record<string, boolean> = {};\n\nexport interface scrollLockOptions {\n  container: HTMLElement;\n}\n\nconst DrawerChild = defineComponent({\n  compatConfig: { MODE: 3 },\n  inheritAttrs: false,\n  props: drawerChildProps(),\n  emits: ['close', 'handleClick', 'change'],\n  setup(props, { emit, slots }) {\n    const contentWrapper = shallowRef<HTMLElement>();\n    const dom = shallowRef<HTMLElement>();\n    const maskDom = shallowRef<HTMLElement>();\n    const handlerDom = shallowRef<HTMLElement>();\n    const contentDom = shallowRef<HTMLElement>();\n    let levelDom = [];\n    const drawerId = `drawer_id_${Number(\n      (Date.now() + Math.random())\n        .toString()\n        .replace('.', Math.round(Math.random() * 9).toString()),\n    ).toString(16)}`;\n\n    onMounted(() => {\n      nextTick(() => {\n        const { open, getContainer, showMask, autofocus } = props;\n        const container = getContainer?.();\n        getLevelDom(props);\n        if (open) {\n          if (container && container.parentNode === document.body)\n            currentDrawer[drawerId] = open;\n\n          nextTick(() => {\n            if (autofocus)\n              domFocus();\n          });\n          if (showMask)\n            props.scrollLocker?.lock();\n        }\n      });\n    });\n    watch(\n      () => props.level,\n      () => {\n        getLevelDom(props);\n      },\n      { flush: 'post' },\n    );\n    watch(\n      () => props.open,\n      () => {\n        const { open, getContainer, scrollLocker, showMask, autofocus } = props;\n        const container = getContainer?.();\n        if (container && container.parentNode === document.body)\n          currentDrawer[drawerId] = !!open;\n\n        if (open) {\n          if (autofocus)\n            domFocus();\n\n          if (showMask)\n            scrollLocker?.lock();\n        } else {\n          scrollLocker?.unLock();\n        }\n      },\n      { flush: 'post' },\n    );\n\n    onUnmounted(() => {\n      const { open } = props;\n      delete currentDrawer[drawerId];\n      if (open)\n        document.body.style.touchAction = '';\n\n      props.scrollLocker?.unLock();\n    });\n\n    watch(\n      () => props.placement,\n      (val) => {\n        if (val) {\n          // test 的 bug, 有动画过场，删除 dom\n          contentDom.value = null;\n        }\n      },\n    );\n\n    const domFocus = () => {\n      dom.value?.focus?.();\n    };\n\n    const onClose = (e: Event) => {\n      emit('close', e);\n    };\n\n    const onKeyDown = (e: KeyboardEvent) => {\n      if (e.keyCode === KeyCode.ESC) {\n        e.stopPropagation();\n        onClose(e);\n      }\n    };\n\n    const onAfterVisibleChange = () => {\n      const { open, afterVisibleChange } = props;\n      if (afterVisibleChange)\n        afterVisibleChange(!!open);\n    };\n\n    const getLevelDom = ({ level, getContainer }) => {\n      if (windowIsUndefined)\n        return;\n\n      const container = getContainer?.();\n      const parent = container ? (container.parentNode as HTMLElement) : null;\n      levelDom = [];\n      if (level === 'all') {\n        const children: HTMLElement[] = parent ? Array.prototype.slice.call(parent.children) : [];\n        children.forEach((child: HTMLElement) => {\n          if (\n            child.nodeName !== 'SCRIPT'\n            && child.nodeName !== 'STYLE'\n            && child.nodeName !== 'LINK'\n            && child !== container\n          ) {\n            levelDom.push(child);\n          }\n        });\n      } else if (level) {\n        dataToArray(level).forEach((key) => {\n          document.querySelectorAll(key).forEach((item) => {\n            levelDom.push(item);\n          });\n        });\n      }\n    };\n\n    const onHandleClick = (e) => {\n      emit('handleClick', e);\n    };\n\n    const canOpen = shallowRef(false);\n    watch(dom, () => {\n      nextTick(() => {\n        canOpen.value = true;\n      });\n    });\n\n    return () => {\n      const {\n        width,\n        height,\n        open: $open,\n        prefixCls,\n        placement,\n        level,\n        levelMove,\n        ease,\n        duration,\n        getContainer,\n        onChange,\n        afterVisibleChange,\n        showMask,\n        maskClosable,\n        maskStyle,\n        keyboard,\n        getOpenCount,\n        scrollLocker,\n        contentWrapperStyle,\n        style,\n        class: className,\n        rootClassName,\n        rootStyle,\n        maskMotion,\n        motion,\n        inline,\n        ...otherProps\n      } = props;\n      // 首次渲染都将是关闭状态。\n      const open = $open && canOpen.value;\n      const wrapperClassName = classNames(prefixCls, {\n        [`${prefixCls}-${placement}`]: true,\n        [`${prefixCls}-open`]: open,\n        [`${prefixCls}-inline`]: inline,\n        'no-mask': !showMask,\n        [rootClassName]: true,\n      });\n\n      const motionProps = typeof motion === 'function' ? motion(placement) : motion;\n      return (\n        <div\n          {...omit(otherProps, ['autofocus'])}\n          tabindex={-1}\n          class={wrapperClassName}\n          style={rootStyle}\n          ref={dom}\n          onKeydown={open && keyboard ? onKeyDown : undefined}\n        >\n          <Transition {...maskMotion}>\n            {showMask && (\n              <div\n                v-show={open}\n                class={`${prefixCls}-mask`}\n                onClick={maskClosable ? onClose : undefined}\n                style={maskStyle}\n                ref={maskDom}\n              />\n            )}\n          </Transition>\n          <Transition\n            {...motionProps}\n            onAfterEnter={onAfterVisibleChange}\n            onAfterLeave={onAfterVisibleChange}\n          >\n            <div\n              v-show={open}\n              class={`${prefixCls}-content-wrapper`}\n              style={[contentWrapperStyle]}\n              ref={contentWrapper}\n            >\n              <div class={[`${prefixCls}-content`, className]} style={style} ref={contentDom}>\n                {slots.default?.()}\n              </div>\n              {slots.handler\n                ? (\n                    <div onClick={onHandleClick} ref={handlerDom}>\n                      {slots.handler?.()}\n                    </div>\n                  )\n                : null}\n            </div>\n          </Transition>\n        </div>\n      );\n    };\n  },\n});\n\nexport default DrawerChild;\n"],"names":["currentDrawer","DrawerChild","defineComponent","compatConfig","MODE","inheritAttrs","props","drawerChildProps","emits","setup","emit","slots","contentWrapper","shallowRef","dom","maskDom","handlerDom","contentDom","levelDom","drawerId","Number","Date","now","Math","random","toString","replace","round","onMounted","nextTick","open","getContainer","showMask","autofocus","container","getLevelDom","parentNode","document","body","domFocus","scrollLocker","lock","watch","level","flush","unLock","onUnmounted","style","touchAction","placement","val","value","focus","onClose","e","onKeyDown","keyCode","KeyCode","ESC","stopPropagation","onAfterVisibleChange","afterVisibleChange","windowIsUndefined","parent","children","Array","prototype","slice","call","forEach","child","nodeName","push","dataToArray","key","querySelectorAll","item","onHandleClick","canOpen","width","height","$open","prefixCls","levelMove","ease","duration","onChange","maskClosable","maskStyle","keyboard","getOpenCount","contentWrapperStyle","class","className","rootClassName","rootStyle","maskMotion","motion","inline","otherProps","wrapperClassName","classNames","motionProps","_createVNode","omit","undefined","Transition","default","_withDirectives","_vShow","handler"],"mappings":"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"}