{"version":3,"file":"node-content.mjs","sources":["../../../../../../../packages/components/cascader-panel/src/node-content.tsx"],"sourcesContent":["import { Comment, defineComponent, inject } from 'vue'\nimport { useNamespace } from '@hd-front-end/hooks'\nimport { isArray } from '@hd-front-end/utils'\nimport { CASCADER_PANEL_INJECTION_KEY } from './types'\n\nimport type { PropType, VNode } from 'vue'\nimport type { CascaderNode } from './types'\n\nfunction isVNodeEmpty(vnodes?: VNode[] | VNode) {\n  return !!(isArray(vnodes)\n    ? vnodes.every(({ type }) => type === Comment)\n    : vnodes?.type === Comment)\n}\n\nexport default defineComponent({\n  name: 'NodeContent',\n  props: {\n    node: {\n      type: Object as PropType<CascaderNode>,\n      required: true,\n    },\n  },\n  setup(props) {\n    const ns = useNamespace('cascader-node')\n    const { renderLabelFn } = inject(CASCADER_PANEL_INJECTION_KEY)!\n    const { node } = props\n    const { data, label: nodeLabel } = node\n\n    const label = () => {\n      const renderLabel = renderLabelFn?.({ node, data })\n      return isVNodeEmpty(renderLabel) ? nodeLabel : renderLabel ?? nodeLabel\n    }\n    return () => <span class={ns.e('label')}>{label()}</span>\n  },\n})\n"],"names":["isVNodeEmpty","vnodes","isArray","every","type","Comment","defineComponent","name","props","node","Object","required","setup","ns","useNamespace","renderLabelFn","inject","CASCADER_PANEL_INJECTION_KEY","data","label","nodeLabel","renderLabel","_createVNode","e"],"mappings":";;;;;AAQA,SAASA,aAAaC,MAA0B,EAAA;AAC9C,EAAA,OAAO,CAAC,EAAEC,OAAAA,CAAQD,MAAM,CACpBA,GAAAA,MAAAA,CAAOE,MAAM,CAAC;AAAA,IAAEC,IAAAA;AAAAA,GAAWA,KAAAA,IAAAA,KAASC,OAAO,CAAA,GAAA,CAC3CJ,iCAAQG,IAASC,MAAAA,OAAAA,CAAAA,CAAAA;AACvB,CAAA;AAEA,kBAAeC,eAAgB,CAAA;AAAA,EAC7BC,IAAM,EAAA,aAAA;AAAA,EACNC,KAAO,EAAA;AAAA,IACLC,IAAM,EAAA;AAAA,MACJL,IAAMM,EAAAA,MAAAA;AAAAA,MACNC,QAAU,EAAA,IAAA;AAAA,KACZ;AAAA,GACF;AAAA,EACAC,MAAMJ,KAAO,EAAA;AACX,IAAMK,MAAAA,EAAAA,GAAKC,aAAa,eAAe,CAAA,CAAA;AACvC,IAAM,MAAA;AAAA,MAAEC,aAAAA;AAAAA,KAAc,GAAIC,OAAOC,4BAA4B,CAAA,CAAA;AAC7D,IAAM,MAAA;AAAA,MAAER,IAAAA;AAAAA,KAASD,GAAAA,KAAAA,CAAAA;AACjB,IAAM,MAAA;AAAA,MAAEU,IAAAA;AAAAA,MAAMC,KAAOC,EAAAA,SAAAA;AAAAA,KAAcX,GAAAA,IAAAA,CAAAA;AAEnC,IAAA,MAAMU,QAAQA,MAAM;AAClB,MAAA,MAAME,cAAcN,aAAgB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,aAAA,CAAA;AAAA,QAAEN,IAAAA;AAAAA,QAAMS,IAAAA;AAAAA,OAAK,CAAA,CAAA;AACjD,MAAA,OAAOlB,YAAaqB,CAAAA,WAAW,CAAID,GAAAA,SAAAA,GAAYC,WAAeD,IAAAA,IAAAA,GAAAA,WAAAA,GAAAA,SAAAA,CAAAA;AAAAA,KAChE,CAAA;AACA,IAAO,OAAA,MAAAE,YAAA,MAAA,EAAA;AAAA,MAAA,OAAA,EAAmBT,EAAGU,CAAAA,CAAAA,CAAE,OAAO,CAAA;AAAA,KAAIJ,EAAAA,CAAAA,KAAM,EAAC,CAAQ,CAAA,CAAA;AAAA,GAC3D;AACF,CAAC,CAAA;;;;"}