{"version":3,"file":"SubHeaderAction.mjs","names":["React","Children","useEffect","createTeleporter","useShellStore","SubHeaderActions","multiSources","SubHeaderActionsTarget","props","$","_c","t0","SubHeaderAction","children","setSubHeaderActionHasChildren","_temp","hasChildren","count","t1","t2","state"],"sources":["../../../src/utilities/utilityBar/SubHeaderAction.jsx"],"sourcesContent":["import React, { Children, useEffect } from 'react';\nimport { createTeleporter } from 'react-teleporter';\nimport { useShellStore } from '../../stores/shellStore';\n\nconst SubHeaderActions = createTeleporter({\n  multiSources: true\n});\n\n/**\n * @param {any} props\n */\nexport function SubHeaderActionsTarget(props) {\n  return <SubHeaderActions.Target {...props} />;\n}\n\n/**\n * Places a button in the App SubHeader\n */\nexport const SubHeaderAction = (props) => {\n  const { children, className, ...buttonProps } = props;\n\n  const setSubHeaderActionHasChildren = useShellStore(\n    (state) => state.setSubHeaderActionHasChildren\n  );\n\n  // 1. Derive the primitive boolean value first\n  const hasChildren = Children.count(children) > 0;\n\n  useEffect(() => {\n    // 2. Only run when the *status* changes, not the children object itself\n    setSubHeaderActionHasChildren(hasChildren);\n  }, [hasChildren, setSubHeaderActionHasChildren]);\n\n  return <SubHeaderActions.Source>{children}</SubHeaderActions.Source>;\n};\n"],"mappings":";;;;;AAIA,MAAMK,mBAAmBF,iBAAiB,EACxCG,cAAc,MACf,CAAC;;;;AAKF,SAAOC,uBAAAC,OAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;AAAA,KAAAF,EAAA,OAAAD,OAAA;AACEG,OAAA,sBAAA,cAAA,iBAAA,QAA6BH,MAAS;AAAAC,IAAA,KAAAD;AAAAC,IAAA,KAAAE;OAAAA,MAAAF,EAAA;AAAA,QAAtCE;;;;;AAMT,MAAaC,mBAAkBJ,UAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAC7B,MAAA,EAAAG,aAAgDL;CAEhD,MAAAM,gCAAsCV,cACpCW,MACD;CAGD,MAAAC,cAAoBf,SAAQgB,MAAOJ,SAAS,GAAG;CAAE,IAAAF;CAAA,IAAAO;AAAA,KAAAT,EAAA,OAAAO,eAAAP,EAAA,OAAAK,+BAAA;AAEvCH,aAAA;AAERG,iCAA8BE,YAAY;;AACzCE,OAAA,CAACF,aAAaF,8BAA8B;AAAAL,IAAA,KAAAO;AAAAP,IAAA,KAAAK;AAAAL,IAAA,KAAAE;AAAAF,IAAA,KAAAS;QAAA;AAAAP,OAAAF,EAAA;AAAAS,OAAAT,EAAA;;AAH/CP,WAAUS,IAGPO,GAA6C;CAAA,IAAAC;AAAA,KAAAV,EAAA,OAAAI,UAAA;AAEzCM,OAAA,sBAAA,cAAA,iBAAA,QAAA,MAA0BN,SAAmC;AAAAJ,IAAA,KAAAI;AAAAJ,IAAA,KAAAU;OAAAA,MAAAV,EAAA;AAAA,QAA7DU;;AAfsB,SAAAJ,MAAAK,OAAA;AAAA,QAIhBA,MAAKN"}