{"version":3,"file":"PurePanel.cjs","sources":["../../../../../../packages/components/notification/src/PurePanel.tsx"],"sourcesContent":["import type { VueNode } from '@antdv/types';\nimport type { NotificationPureContentProps, NotificationPurePanelProps } from './interface';\nimport {\n  CheckCircleFilled,\n  CloseCircleFilled,\n  CloseOutlined,\n  ExclamationCircleFilled,\n  InfoCircleFilled,\n  LoadingOutlined,\n} from '@ant-design/icons-vue';\nimport { classNames, renderHelper } from '@antdv/utils';\nimport VcNotice from '@antdv/vue-components/vc-notification/src/Notice';\nimport { computed, defineComponent } from 'vue';\nimport useConfigInject from '../../config-provider/src/hooks/useConfigInject';\nimport useStyle from '../style';\n\nexport function getCloseIcon(prefixCls: string, closeIcon?: VueNode) {\n  return (\n    closeIcon || (\n      <span class={`${prefixCls}-close-x`}>\n        <CloseOutlined class={`${prefixCls}-close-icon`} />\n      </span>\n    )\n  );\n}\n\nexport const TypeIcon = {\n  info: <InfoCircleFilled />,\n  success: <CheckCircleFilled />,\n  error: <CloseCircleFilled />,\n  warning: <ExclamationCircleFilled />,\n  loading: <LoadingOutlined />,\n};\n\nconst typeToIcon = {\n  success: CheckCircleFilled,\n  info: InfoCircleFilled,\n  error: CloseCircleFilled,\n  warning: ExclamationCircleFilled,\n};\n\nexport function PureContent({\n  prefixCls,\n  icon,\n  type,\n  message,\n  description,\n  btn,\n}: NotificationPureContentProps) {\n  let iconNode = null;\n  if (icon) {\n    iconNode = <span class={`${prefixCls}-icon`}>{renderHelper(icon)}</span>;\n  } else if (type) {\n    const Icon = typeToIcon[type];\n    iconNode = <Icon class={`${prefixCls}-icon ${prefixCls}-icon-${type}`} />;\n  }\n\n  return (\n    <div\n      class={classNames({\n        [`${prefixCls}-with-icon`]: iconNode,\n      })}\n      role=\"alert\"\n    >\n      {iconNode}\n      <div class={`${prefixCls}-message`}>{message}</div>\n      <div class={`${prefixCls}-description`}>{description}</div>\n      {btn && <div class={`${prefixCls}-btn`}>{btn}</div>}\n    </div>\n  );\n}\n\n/** @private Internal Component. Do not use in your production. */\nexport default defineComponent<NotificationPurePanelProps>({\n  name: 'PurePanel',\n  inheritAttrs: false,\n  props: ['prefixCls', 'icon', 'type', 'message', 'description', 'btn', 'closeIcon'] as any,\n  setup(props) {\n    const { getPrefixCls } = useConfigInject('notification', props);\n    const prefixCls = computed(() => props.prefixCls || getPrefixCls('notification'));\n    const noticePrefixCls = computed(() => `${prefixCls.value}-notice`);\n\n    const [, hashId] = useStyle(prefixCls);\n    return () => {\n      return (\n        <VcNotice\n          {...props}\n          prefixCls={prefixCls.value}\n          class={classNames(hashId.value, `${noticePrefixCls.value}-pure-panel`)}\n          noticeKey=\"pure\"\n          duration={null}\n          closable={props.closable}\n          closeIcon={getCloseIcon(prefixCls.value, props.closeIcon)}\n        >\n          <PureContent\n            prefixCls={noticePrefixCls.value}\n            icon={props.icon}\n            type={props.type}\n            message={props.message}\n            description={props.description}\n            btn={props.btn}\n          />\n        </VcNotice>\n      );\n    };\n  },\n});\n"],"names":["getCloseIcon","prefixCls","closeIcon","_createVNode","CloseOutlined","TypeIcon","info","InfoCircleFilled","success","CheckCircleFilled","error","CloseCircleFilled","warning","ExclamationCircleFilled","loading","LoadingOutlined","typeToIcon","PureContent","icon","type","message","description","btn","iconNode","renderHelper","Icon","classNames","defineComponent","name","inheritAttrs","props","setup","getPrefixCls","useConfigInject","computed","noticePrefixCls","value","hashId","useStyle","VcNotice","closable","default"],"mappings":"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"}