{"version":3,"file":"Row.mjs","sources":["../../../../../../packages/components/descriptions/src/Row.tsx"],"sourcesContent":["import type { CSSProperties, FunctionalComponent, VNode } from 'vue';\nimport type { CellConfig, DescRowProps } from './interface';\nimport { getClass, getSlot, getStyle } from '@antdv/utils';\nimport Cell from './Cell';\nimport { useProviderContext } from './useContext';\n\nconst Row: FunctionalComponent<DescRowProps> = (props) => {\n  const renderCells = (\n    items: VNode[],\n    { colon, prefixCls, bordered },\n    {\n      component,\n      type,\n      showLabel,\n      showContent,\n      labelStyle: rootLabelStyle,\n      contentStyle: rootContentStyle,\n    }: CellConfig & { labelStyle?: CSSProperties, contentStyle?: CSSProperties },\n  ) => {\n    return items.map((item, index) => {\n      const itemProps = item.props || {};\n      const {\n        prefixCls: itemPrefixCls = prefixCls,\n        span = 1,\n        labelStyle = itemProps['label-style'],\n        contentStyle = itemProps['content-style'],\n        label = (item.children as any)?.label?.(),\n      } = itemProps;\n      const children = getSlot(item);\n      const className = getClass(item);\n      const style = getStyle(item);\n      const { key } = item;\n      if (typeof component === 'string') {\n        return (\n          <Cell\n            key={`${type}-${String(key) || index}`}\n            class={className}\n            style={style}\n            labelStyle={{ ...rootLabelStyle, ...labelStyle }}\n            contentStyle={{ ...rootContentStyle, ...contentStyle }}\n            span={span}\n            colon={colon}\n            component={component}\n            itemPrefixCls={itemPrefixCls}\n            bordered={bordered}\n            label={showLabel ? label : null}\n            content={showContent ? children : null}\n          />\n        );\n      }\n\n      return [\n        <Cell\n          key={`label-${String(key) || index}`}\n          class={className}\n          style={{ ...rootLabelStyle, ...style, ...labelStyle }}\n          span={1}\n          colon={colon}\n          component={component[0]}\n          itemPrefixCls={itemPrefixCls}\n          bordered={bordered}\n          label={label}\n        />,\n        <Cell\n          key={`content-${String(key) || index}`}\n          class={className}\n          style={{ ...rootContentStyle, ...style, ...contentStyle }}\n          span={span * 2 - 1}\n          component={component[1]}\n          itemPrefixCls={itemPrefixCls}\n          bordered={bordered}\n          content={children}\n        />,\n      ];\n    });\n  };\n\n  const { prefixCls, vertical, row, index, bordered } = props;\n  const { labelStyle, contentStyle } = useProviderContext();\n  if (vertical) {\n    return (\n      <>\n        <tr key={`label-${index}`} class={`${prefixCls}-row`}>\n          {renderCells(row, props, {\n            component: 'th',\n            type: 'label',\n            showLabel: true,\n            labelStyle: labelStyle.value,\n            contentStyle: contentStyle.value,\n          })}\n        </tr>\n        <tr key={`content-${index}`} class={`${prefixCls}-row`}>\n          {renderCells(row, props, {\n            component: 'td',\n            type: 'content',\n            showContent: true,\n            labelStyle: labelStyle.value,\n            contentStyle: contentStyle.value,\n          })}\n        </tr>\n      </>\n    );\n  }\n\n  return (\n    <tr key={index} class={`${prefixCls}-row`}>\n      {renderCells(row, props, {\n        component: bordered ? ['th', 'td'] : 'td',\n        type: 'item',\n        showLabel: true,\n        showContent: true,\n        labelStyle: labelStyle.value,\n        contentStyle: contentStyle.value,\n      })}\n    </tr>\n  );\n};\n\nexport default Row;\n"],"names":["Row","props","renderCells","items","colon","prefixCls","bordered","component","type","showLabel","showContent","labelStyle","rootLabelStyle","contentStyle","rootContentStyle","map","item","index","itemProps","itemPrefixCls","span","label","children","getSlot","className","getClass","style","getStyle","key","_createVNode","Cell","String","vertical","row","useProviderContext","_Fragment","value"],"mappings":"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"}