{"version":3,"file":"ModalCtrl.mjs","sources":[""],"sourcesContent":["import type { FC, PropsWithChildren, ReactElement } from \"react\";\r\nimport { useContext } from \"react\";\r\nimport { Btn } from \"../../btn\";\r\nimport { Locale } from \"../../locale\";\r\nimport type { TModalContext } from \"../config/types\";\r\nimport { ModalContext } from \"../context\";\r\n\r\n/**\r\n * Слот управления окном\r\n * @returns {ReactElement}\r\n */\r\nexport const ModalCtrl: FC<PropsWithChildren> = ({ children }): ReactElement => {\r\n\r\n  const { getCN, id } = useContext<TModalContext>(ModalContext);\r\n\r\n  const handlerCfg = {\r\n    \"data-js-modal-handler\": JSON.stringify({\r\n      action: \"close\",\r\n      id,\r\n    }),\r\n    tabIndex: 1,\r\n  };\r\n\r\n  return (\r\n    <aside className={getCN(\"ctrl\")}>\r\n      {children || (\r\n        <ul className={getCN(\"list\")}>\r\n          <li>\r\n            <Locale code={\"modals.closeBtn\"} attr={\"title\"}>\r\n              <Btn icon={\"close\"} iconSize={\"small\"} label={null} extraAttrs={handlerCfg} />\r\n            </Locale>\r\n          </li>\r\n        </ul>\r\n      )}\r\n    </aside>\r\n  );\r\n\r\n};\r\n"],"names":["ModalCtrl","children","getCN","id","useContext","ModalContext","handlerCfg","JSON","stringify","action","tabIndex","_jsx","className","Locale","code","attr","Btn","icon","iconSize","label","extraAttrs"],"mappings":"gMAWO,MAAMA,UAAmC,EAAGC,sBAEjD,MAAMC,MAAEA,MAAKC,GAAEA,IAAOC,WAA0BC,cAEhD,MAAMC,WAAa,CACjB,wBAAyBC,KAAKC,UAAU,CACtCC,OAAQ,QACRN,QAEFO,SAAU;AAGZ,OACEC,IAAA,QAAA,CAAOC,UAAWV,MAAM,QAAQD,SAC7BA,UACCU,IAAA,KAAA,CAAIC,UAAWV,MAAM,QAAQD,SAC3BU,IAAA,KAAA,CAAAV,SACEU,IAACE,OAAM,CAACC,KAAM,kBAAmBC,KAAM,QAAQd,SAC7CU,IAACK,IAAG,CAACC,KAAM,QAASC,SAAU,QAASC,MAAO,KAAMC,WAAYd"}