{"version":3,"file":"Result.mjs","sources":["../../../../../../packages/components/result/src/Result.tsx"],"sourcesContent":["import type { SlotsType, VNodeTypes } from 'vue';\nimport { classNames } from '@antdv/utils';\nimport { computed, defineComponent } from 'vue';\nimport useConfigInject from '../../config-provider/src/hooks/useConfigInject';\nimport useStyle from '../style';\n\nimport { ExceptionMap, IconMap } from './constant';\nimport { resultProps } from './props';\n\n// ExceptionImageMap keys\nconst ExceptionStatus = Object.keys(ExceptionMap);\n\nexport default defineComponent({\n  compatConfig: { MODE: 3 },\n  name: 'AResult',\n  inheritAttrs: false,\n  props: resultProps(),\n  PRESENTED_IMAGE_403: ExceptionMap[403],\n  PRESENTED_IMAGE_404: ExceptionMap[404],\n  PRESENTED_IMAGE_500: ExceptionMap[500],\n  slots: Object as SlotsType<{\n    title?: any\n    subTitle?: any\n    icon?: any\n    extra?: any\n    default?: any\n  }>,\n  setup(props, { slots, attrs }) {\n    const { prefixCls, direction } = useConfigInject('result', props);\n\n    const [wrapSSR, hashId] = useStyle(prefixCls);\n\n    const className = computed(() =>\n      classNames(prefixCls.value, hashId.value, `${prefixCls.value}-${props.status}`, {\n        [`${prefixCls.value}-rtl`]: direction.value === 'rtl',\n      }),\n    );\n\n    const renderIcon = (prefixCls: string, { status, icon }) => {\n      if (ExceptionStatus.includes(`${status}`)) {\n        const SVGComponent = ExceptionMap[status];\n        return (\n          <div class={`${prefixCls}-icon ${prefixCls}-image`}>\n            <SVGComponent />\n          </div>\n        );\n      }\n      const IconComponent = IconMap[status];\n      const iconNode = icon || <IconComponent />;\n      return <div class={`${prefixCls}-icon`}>{iconNode}</div>;\n    };\n\n    const renderExtra = (prefixCls: string, extra: VNodeTypes) => extra && <div class={`${prefixCls}-extra`}>{extra}</div>;\n\n    return () => {\n      const title = props.title ?? slots.title?.();\n      const subTitle = props.subTitle ?? slots.subTitle?.();\n      const icon = props.icon ?? slots.icon?.();\n      const extra = props.extra ?? slots.extra?.();\n      const pre = prefixCls.value;\n      return wrapSSR(\n        <div {...attrs} class={[className.value, attrs.class]}>\n          {renderIcon(pre, { status: props.status, icon })}\n          <div class={`${pre}-title`}>{title}</div>\n          {subTitle && <div class={`${pre}-subtitle`}>{subTitle}</div>}\n          {renderExtra(pre, extra)}\n          {slots.default && <div class={`${pre}-content`}>{slots.default()}</div>}\n        </div>,\n      );\n    };\n  },\n});\n"],"names":["ExceptionStatus","Object","keys","ExceptionMap","compatConfig","MODE","name","inheritAttrs","props","resultProps","PRESENTED_IMAGE_403","PRESENTED_IMAGE_404","PRESENTED_IMAGE_500","slots","setup","attrs","prefixCls","direction","useConfigInject","wrapSSR","hashId","useStyle","className","computed","classNames","value","status","renderIcon","icon","includes","SVGComponent","_createVNode","IconComponent","IconMap","iconNode","renderExtra","extra","title","subTitle","pre","class","default"],"mappings":"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"}