{"version":3,"file":"link.mjs","sources":["../../../packages/components/src/link.tsx"],"sourcesContent":["import { ElLink } from 'element-plus'\nimport type { App } from 'vue'\nimport type {\n  PowerfulTableHeaderProps,\n  SFCWithInstall,\n  SetDataType,\n} from '~/index'\nimport {\n  isProperty,\n  powerfulTableComponentProp,\n} from '~/powerful-table/src/powerful-table-data'\n\nconst Link = defineComponent({\n  name: 'PTLink',\n  props: {\n    ...powerfulTableComponentProp,\n    prop: {\n      type: Object as PropType<PowerfulTableHeaderProps>,\n      default: () => ({}),\n    },\n  },\n  emits: ['return-emit', 'component-emit'],\n  setup(props) {\n    const data = props.prop.data as SetDataType<'href'>\n\n    return () => (\n      <>\n        <ElLink\n          type={'primary'}\n          underline={false}\n          href={props.row[props.prop.prop]}\n          style={data?.style || {}}\n          {...{\n            target: data?.target || '_blank',\n            ...isProperty(\n              { row: props.row, index: props.index!, props: props.prop },\n              data?.property\n            ),\n          }}\n        >\n          {typeof data?.text == 'function' ? data?.text(props.row) : data?.text}\n        </ElLink>\n      </>\n    )\n  },\n})\n\nLink.install = (app: App) => {\n  app.component(Link.name!, Link)\n}\nexport const PTLink = Link as SFCWithInstall<typeof Link>\nexport default Link\n"],"names":["Link","defineComponent","powerfulTableComponentProp","props","data","_createVNode","_Fragment","ElLink","_mergeProps","isProperty","app","PTLink"],"mappings":";;;AAGA,MAAAA,IAAA,gBAAAC,EAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,IACA,GAAAC;AAAA,IACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA,OAAA,CAAA;AAAA,IACA;AAAA,EACA;AAAA,EACA,OAAA,CAAA,eAAA,gBAAA;AAAA,EACA,MAAAC,GAAA;AACA,UAAAC,IAAAD,EAAA,KAAA;AACA,WAAA,MAAAE,EAAAC,GAAA,MAAA,CAAAD,EAAAE,GAAAC,EAAA;AAAA,MACA,MAAA;AAAA,MACA,WAAA;AAAA,MACA,MAAAL,EAAA,IAAAA,EAAA,KAAA,IAAA;AAAA,MACA,QAAAC,KAAA,gBAAAA,EAAA,UAAA,CAAA;AAAA,IACA,GAAA;AAAA,MACA,SAAAA,KAAA,gBAAAA,EAAA,WAAA;AAAA,MACA,GAAAK,EAAA;AAAA,QACA,KAAAN,EAAA;AAAA,QACA,OAAAA,EAAA;AAAA,QACA,OAAAA,EAAA;AAAA,MACA,GAAAC,KAAA,gBAAAA,EAAA,QAAA;AAAA,IACA,CAAA,GAAA;AAAA,MACA,SAAA,MAAA,CAAA,QAAAA,KAAA,gBAAAA,EAAA,SAAA,aAAAA,KAAA,gBAAAA,EAAA,KAAAD,EAAA,OAAAC,KAAA,gBAAAA,EAAA,IAAA;AAAA,IACA,CAAA,CAAA,CAAA;AAAA,EACA;AACA,CAAA;AACAJ,EAAA,UAAA,CAAAU,MAAA;AACA,EAAAA,EAAA,UAAAV,EAAA,MAAAA,CAAA;AACA;AACA,MAAAW,IAAAX;"}