{"version":3,"file":"addonTextChildren.mjs","names":["React","CHILDREN_COMPONENT","INHERITED_NAME","getOriginChildren","isNode","addonTextChildren","Children","Text","Addon","isTextWrapIfEmptyChildren","arguments","length","undefined","children","createElement","toArray","some","element","isValidElement","type","Fragment","wrapChildren","inheritedNames","displayName","addonNames","Array","isArray","map","Component","concat","_toConsumableArray","find","name","includes"],"sources":["../src/addonTextChildren.tsx"],"sourcesContent":["import React from 'react';\nimport { CHILDREN_COMPONENT, INHERITED_NAME } from './core/index';\nimport getOriginChildren from './getOriginChildren';\nimport isNode from './isNode';\n\nfunction addonTextChildren(\n  Children: any,\n  Text: React.ComponentType<any>,\n  Addon: React.ComponentType | React.ComponentType[],\n  isTextWrapIfEmptyChildren = false,\n) {\n  const children = getOriginChildren(Children);\n  if (typeof children === 'function') {\n    return <Children />;\n  }\n\n  if (!isTextWrapIfEmptyChildren && !isNode(children)) {\n    return null;\n  }\n  return React.Children.toArray(children).some((element: any) => {\n    if (!React.isValidElement(element)) return false;\n    if (element.type === React.Fragment) return true;\n    if ((element.type as any)[CHILDREN_COMPONENT]) {\n      const wrapChildren: any = addonTextChildren(element.type, Text, Addon);\n      if (wrapChildren.type[CHILDREN_COMPONENT]) {\n        return true;\n      } else {\n        element = wrapChildren;\n      }\n    }\n    // @ts-ignore\n    const inheritedNames = element.type[INHERITED_NAME] || [element.type.displayName];\n    const addonNames = Array.isArray(Addon)\n      ? Addon.map((Component) => Component.displayName)\n      : [Addon.displayName];\n    return [Text.displayName, ...addonNames].find((name) => inheritedNames.includes(name));\n  }) ? (\n    <Children />\n  ) : (\n    <Text>\n      <Children />\n    </Text>\n  );\n}\n\nexport default addonTextChildren;\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,kBAAkB,EAAEC,cAAc,QAAQ,kBAAc;AACjE,OAAOC,iBAAiB,MAAM,yBAAqB;AACnD,OAAOC,MAAM,MAAM,cAAU;AAE7B,SAASC,iBAAiBA,CACxBC,QAAa,EACbC,IAA8B,EAC9BC,KAAkD,EAElD;EAAA,IADAC,yBAAyB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,KAAK;EAEjC,IAAMG,QAAQ,GAAGV,iBAAiB,CAACG,QAAQ,CAAC;EAC5C,IAAI,OAAOO,QAAQ,KAAK,UAAU,EAAE;IAClC,oBAAOb,KAAA,CAAAc,aAAA,CAACR,QAAQ,OAAG;EACrB;EAEA,IAAI,CAACG,yBAAyB,IAAI,CAACL,MAAM,CAACS,QAAQ,CAAC,EAAE;IACnD,OAAO,IAAI;EACb;EACA,OAAOb,KAAK,CAACM,QAAQ,CAACS,OAAO,CAACF,QAAQ,CAAC,CAACG,IAAI,CAAC,UAACC,OAAY,EAAK;IAC7D,IAAI,eAACjB,KAAK,CAACkB,cAAc,CAACD,OAAO,CAAC,EAAE,OAAO,KAAK;IAChD,IAAIA,OAAO,CAACE,IAAI,KAAKnB,KAAK,CAACoB,QAAQ,EAAE,OAAO,IAAI;IAChD,IAAKH,OAAO,CAACE,IAAI,CAASlB,kBAAkB,CAAC,EAAE;MAC7C,IAAMoB,YAAiB,GAAGhB,iBAAiB,CAACY,OAAO,CAACE,IAAI,EAAEZ,IAAI,EAAEC,KAAK,CAAC;MACtE,IAAIa,YAAY,CAACF,IAAI,CAAClB,kBAAkB,CAAC,EAAE;QACzC,OAAO,IAAI;MACb,CAAC,MAAM;QACLgB,OAAO,GAAGI,YAAY;MACxB;IACF;IACA;IACA,IAAMC,cAAc,GAAGL,OAAO,CAACE,IAAI,CAACjB,cAAc,CAAC,IAAI,CAACe,OAAO,CAACE,IAAI,CAACI,WAAW,CAAC;IACjF,IAAMC,UAAU,GAAGC,KAAK,CAACC,OAAO,CAAClB,KAAK,CAAC,GACnCA,KAAK,CAACmB,GAAG,CAAC,UAACC,SAAS;MAAA,OAAKA,SAAS,CAACL,WAAW;IAAA,EAAC,GAC/C,CAACf,KAAK,CAACe,WAAW,CAAC;IACvB,OAAO,CAAChB,IAAI,CAACgB,WAAW,EAAAM,MAAA,CAAAC,kBAAA,CAAKN,UAAU,GAAEO,IAAI,CAAC,UAACC,IAAI;MAAA,OAAKV,cAAc,CAACW,QAAQ,CAACD,IAAI,CAAC;IAAA,EAAC;EACxF,CAAC,CAAC,gBACAhC,KAAA,CAAAc,aAAA,CAACR,QAAQ,OAAG,gBAEZN,KAAA,CAAAc,aAAA,CAACP,IAAI,qBACHP,KAAA,CAAAc,aAAA,CAACR,QAAQ,OAAG,CAEf;AACH;AAEA,eAAeD,iBAAiB"}