@soyfri/shared-library 1.5.0-beta.4 → 2.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (564) hide show
  1. package/.dockerignore +8 -0
  2. package/.github/workflows/publish.yml +107 -0
  3. package/.prettierrc +3 -0
  4. package/.storybook/main.ts +19 -0
  5. package/.storybook/preview.ts +14 -0
  6. package/.storybook/vitest.setup.ts +9 -0
  7. package/Dockerfile +37 -0
  8. package/build.js +102 -0
  9. package/chromatic.config.json +5 -0
  10. package/cleanDirectories.js +40 -0
  11. package/dist/components/ActionMenu/ActionMenu.cjs +107 -0
  12. package/dist/components/ActionMenu/ActionMenu.cjs.map +1 -0
  13. package/dist/components/ActionMenu/ActionMenu.d.ts +60 -0
  14. package/dist/components/ActionMenu/ActionMenu.js +107 -0
  15. package/dist/components/ActionMenu/ActionMenu.js.map +1 -0
  16. package/dist/components/ActionMenu/index.d.ts +2 -0
  17. package/dist/components/ActionMenu.d.ts +6 -0
  18. package/dist/components/AppBar/AppBar.cjs +346 -0
  19. package/dist/components/AppBar/AppBar.cjs.map +1 -0
  20. package/dist/components/AppBar/AppBar.d.ts +55 -0
  21. package/dist/components/AppBar/AppBar.js +346 -0
  22. package/dist/components/AppBar/AppBar.js.map +1 -0
  23. package/dist/components/AppBar/AppBar.sx.d.ts +12 -0
  24. package/dist/components/AppBar/AppBarBrand.d.ts +31 -0
  25. package/dist/components/AppBar/AppBarContext.d.ts +18 -0
  26. package/dist/components/AppBar/AppBarMenuToggle.d.ts +39 -0
  27. package/dist/components/AppBar/AppBarUserMenu.d.ts +65 -0
  28. package/dist/components/AppBar/index.d.ts +12 -0
  29. package/dist/components/AppBar.d.ts +6 -0
  30. package/dist/components/Autocomplete/Autocomplete.cjs +314 -0
  31. package/dist/components/Autocomplete/Autocomplete.cjs.map +1 -0
  32. package/dist/components/Autocomplete/Autocomplete.d.ts +83 -0
  33. package/{components → dist/components}/Autocomplete/Autocomplete.definitions.d.ts +6 -0
  34. package/dist/components/Autocomplete/Autocomplete.helpers.d.ts +18 -0
  35. package/dist/components/Autocomplete/Autocomplete.js +314 -0
  36. package/dist/components/Autocomplete/Autocomplete.js.map +1 -0
  37. package/dist/components/Autocomplete/Autocomplete.sx.d.ts +7 -0
  38. package/dist/components/Autocomplete/Autocomplete.types.d.ts +1 -0
  39. package/dist/components/Autocomplete/_parts/AutocompleteChips.d.ts +19 -0
  40. package/dist/components/Autocomplete/_parts/AutocompleteLoader.d.ts +9 -0
  41. package/dist/components/Autocomplete/_parts/AutocompleteOption.d.ts +19 -0
  42. package/dist/components/Autocomplete/index.d.ts +2 -0
  43. package/dist/components/Autocomplete.d.ts +6 -0
  44. package/dist/components/Avatar/Avatar.cjs +163 -0
  45. package/dist/components/Avatar/Avatar.cjs.map +1 -0
  46. package/dist/components/Avatar/Avatar.d.ts +33 -0
  47. package/dist/components/Avatar/Avatar.definitions.d.ts +11 -0
  48. package/dist/components/Avatar/Avatar.js +163 -0
  49. package/dist/components/Avatar/Avatar.js.map +1 -0
  50. package/dist/components/Card/Card.cjs +187 -0
  51. package/dist/components/Card/Card.cjs.map +1 -0
  52. package/dist/components/Card/Card.d.ts +83 -0
  53. package/dist/components/Card/Card.js +187 -0
  54. package/dist/components/Card/Card.js.map +1 -0
  55. package/dist/components/Card/Card.sx.d.ts +17 -0
  56. package/dist/components/Card/index.d.ts +4 -0
  57. package/dist/components/Card.d.ts +6 -0
  58. package/dist/components/DatePicker/DatePicker.cjs +203 -0
  59. package/dist/components/DatePicker/DatePicker.cjs.map +1 -0
  60. package/dist/components/DatePicker/DatePicker.d.ts +56 -0
  61. package/{components → dist/components}/DatePicker/DatePicker.definitions.d.ts +1 -0
  62. package/dist/components/DatePicker/DatePicker.helpers.d.ts +7 -0
  63. package/dist/components/DatePicker/DatePicker.js +203 -0
  64. package/dist/components/DatePicker/DatePicker.js.map +1 -0
  65. package/dist/components/DatePicker/DatePicker.sx.d.ts +9 -0
  66. package/dist/components/DatePicker/DatePicker.types.d.ts +1 -0
  67. package/dist/components/DatePicker/index.d.ts +2 -0
  68. package/dist/components/DatePicker.d.ts +6 -0
  69. package/dist/components/DateTimePicker/DateTimePicker.cjs +222 -0
  70. package/dist/components/DateTimePicker/DateTimePicker.cjs.map +1 -0
  71. package/dist/components/DateTimePicker/DateTimePicker.d.ts +65 -0
  72. package/{components → dist/components}/DateTimePicker/DateTimePicker.definitions.d.ts +1 -0
  73. package/dist/components/DateTimePicker/DateTimePicker.helpers.d.ts +11 -0
  74. package/dist/components/DateTimePicker/DateTimePicker.js +222 -0
  75. package/dist/components/DateTimePicker/DateTimePicker.js.map +1 -0
  76. package/dist/components/DateTimePicker/DateTimePicker.sx.d.ts +7 -0
  77. package/dist/components/DateTimePicker/DateTimePicker.types.d.ts +1 -0
  78. package/dist/components/DateTimePicker/index.d.ts +2 -0
  79. package/dist/components/DateTimePicker.d.ts +6 -0
  80. package/dist/components/Drawer/Drawer.cjs +271 -0
  81. package/dist/components/Drawer/Drawer.cjs.map +1 -0
  82. package/dist/components/Drawer/Drawer.d.ts +51 -0
  83. package/dist/components/Drawer/Drawer.js +271 -0
  84. package/dist/components/Drawer/Drawer.js.map +1 -0
  85. package/dist/components/Drawer/Drawer.sx.d.ts +23 -0
  86. package/dist/components/Drawer/DrawerContext.d.ts +18 -0
  87. package/dist/components/Drawer/DrawerItem.d.ts +35 -0
  88. package/dist/components/Drawer/index.d.ts +6 -0
  89. package/dist/components/Drawer.d.ts +6 -0
  90. package/{components → dist/components}/Icon/Icon.cjs +44 -3
  91. package/dist/components/Icon/Icon.cjs.map +1 -0
  92. package/dist/components/Icon/Icon.d.ts +54 -0
  93. package/{components → dist/components}/Icon/Icon.js +44 -3
  94. package/dist/components/Icon/Icon.js.map +1 -0
  95. package/dist/components/Input/Input.cjs +175 -0
  96. package/dist/components/Input/Input.cjs.map +1 -0
  97. package/dist/components/Input/Input.d.ts +37 -0
  98. package/{components → dist/components}/Input/Input.definitions.d.ts +5 -2
  99. package/dist/components/Input/Input.helpers.d.ts +14 -0
  100. package/dist/components/Input/Input.js +175 -0
  101. package/dist/components/Input/Input.js.map +1 -0
  102. package/dist/components/Input/Input.sx.d.ts +8 -0
  103. package/dist/components/Input/Input.types.d.ts +1 -0
  104. package/dist/components/Input/index.d.ts +2 -0
  105. package/dist/components/Input.d.ts +6 -0
  106. package/dist/components/InputGroup/InputGroup.cjs +139 -0
  107. package/dist/components/InputGroup/InputGroup.cjs.map +1 -0
  108. package/dist/components/InputGroup/InputGroup.d.ts +42 -0
  109. package/dist/components/InputGroup/InputGroup.definitions.d.ts +6 -0
  110. package/dist/components/InputGroup/InputGroup.js +139 -0
  111. package/dist/components/InputGroup/InputGroup.js.map +1 -0
  112. package/dist/components/Modal/Modal.cjs +319 -0
  113. package/dist/components/Modal/Modal.cjs.map +1 -0
  114. package/dist/components/Modal/Modal.d.ts +65 -0
  115. package/dist/components/Modal/Modal.js +319 -0
  116. package/dist/components/Modal/Modal.js.map +1 -0
  117. package/{components → dist/components}/Modal/ModalFooter.d.ts +9 -1
  118. package/dist/components/Modal/index.d.ts +6 -0
  119. package/dist/components/PageLoader/PageLoader.cjs +61 -0
  120. package/dist/components/PageLoader/PageLoader.cjs.map +1 -0
  121. package/dist/components/PageLoader/PageLoader.d.ts +38 -0
  122. package/dist/components/PageLoader/PageLoader.js +61 -0
  123. package/dist/components/PageLoader/PageLoader.js.map +1 -0
  124. package/dist/components/PageLoader/index.d.ts +2 -0
  125. package/dist/components/PageLoader.d.ts +6 -0
  126. package/dist/components/ScrollTopButton/ScrollTopButton.cjs +79 -0
  127. package/dist/components/ScrollTopButton/ScrollTopButton.cjs.map +1 -0
  128. package/dist/components/ScrollTopButton/ScrollTopButton.d.ts +48 -0
  129. package/dist/components/ScrollTopButton/ScrollTopButton.js +79 -0
  130. package/dist/components/ScrollTopButton/ScrollTopButton.js.map +1 -0
  131. package/dist/components/ScrollTopButton/index.d.ts +4 -0
  132. package/dist/components/ScrollTopButton/scrollToTop.d.ts +29 -0
  133. package/dist/components/ScrollTopButton.d.ts +6 -0
  134. package/dist/components/Select/Select.cjs +448 -0
  135. package/dist/components/Select/Select.cjs.map +1 -0
  136. package/{components → dist/components}/Select/Select.d.ts +33 -13
  137. package/{components → dist/components}/Select/Select.definitions.d.ts +3 -0
  138. package/dist/components/Select/Select.helpers.d.ts +28 -0
  139. package/dist/components/Select/Select.js +448 -0
  140. package/dist/components/Select/Select.js.map +1 -0
  141. package/dist/components/Select/Select.sx.d.ts +7 -0
  142. package/dist/components/Select/Select.types.d.ts +1 -0
  143. package/dist/components/Select/_parts/SelectMenuItem.d.ts +20 -0
  144. package/dist/components/Select/_parts/SelectSearchHeader.d.ts +15 -0
  145. package/dist/components/Select/_parts/SelectValue.d.ts +22 -0
  146. package/dist/components/Select/index.d.ts +2 -0
  147. package/dist/components/Select.d.ts +6 -0
  148. package/{components → dist/components}/Stat/Stat.cjs +1 -1
  149. package/{components → dist/components}/Stat/Stat.js +1 -1
  150. package/{components → dist/components}/Stepper/Stepper.cjs +4 -1
  151. package/dist/components/Stepper/Stepper.cjs.map +1 -0
  152. package/{components → dist/components}/Stepper/Stepper.d.ts +5 -0
  153. package/{components → dist/components}/Stepper/Stepper.js +4 -1
  154. package/dist/components/Stepper/Stepper.js.map +1 -0
  155. package/dist/components/_shared/formField.sx.d.ts +33 -0
  156. package/dist/components/_shared/resolvePreset.d.ts +18 -0
  157. package/dist/formField.sx-CQ1mbk9M.cjs +76 -0
  158. package/dist/formField.sx-CQ1mbk9M.cjs.map +1 -0
  159. package/dist/formField.sx-DfVbMe0V.js +77 -0
  160. package/dist/formField.sx-DfVbMe0V.js.map +1 -0
  161. package/dist/hooks/Wizard/Wizard.cjs +7 -0
  162. package/dist/hooks/Wizard/Wizard.cjs.map +1 -0
  163. package/dist/hooks/Wizard/Wizard.js +7 -0
  164. package/dist/hooks/Wizard/Wizard.js.map +1 -0
  165. package/dist/hooks/Wizard/WizardContext.d.ts +67 -0
  166. package/dist/hooks/Wizard/index.d.ts +3 -0
  167. package/dist/hooks/Wizard/useWizard.d.ts +9 -0
  168. package/dist/hooks/Wizard.d.ts +2 -0
  169. package/dist/index.cjs +100 -0
  170. package/dist/index.cjs.map +1 -0
  171. package/dist/index.d.ts +3 -0
  172. package/dist/index.js +31 -0
  173. package/{index.js.map → dist/index.js.map} +1 -1
  174. package/dist/mui.d.ts +5 -0
  175. package/dist/resolvePreset-B-IB0ehH.js +15 -0
  176. package/dist/resolvePreset-B-IB0ehH.js.map +1 -0
  177. package/dist/resolvePreset-CT3kU-K2.cjs +14 -0
  178. package/dist/resolvePreset-CT3kU-K2.cjs.map +1 -0
  179. package/dist/theme/componentStyles.d.ts +32 -0
  180. package/dist/theme/tokens.d.ts +28 -0
  181. package/dist/useWizard-CWdIxZzX.cjs +94 -0
  182. package/dist/useWizard-CWdIxZzX.cjs.map +1 -0
  183. package/dist/useWizard-CWq--C3o.js +95 -0
  184. package/dist/useWizard-CWq--C3o.js.map +1 -0
  185. package/package.json +43 -134
  186. package/rollup.config.cjs +87 -0
  187. package/src/components/ActionMenu/ActionMenu.stories.tsx +230 -0
  188. package/src/components/ActionMenu/ActionMenu.tsx +174 -0
  189. package/src/components/ActionMenu/index.ts +2 -0
  190. package/src/components/AppBar/AppBar.stories.tsx +272 -0
  191. package/src/components/AppBar/AppBar.sx.ts +32 -0
  192. package/src/components/AppBar/AppBar.tsx +123 -0
  193. package/src/components/AppBar/AppBarBrand.tsx +120 -0
  194. package/src/components/AppBar/AppBarContext.ts +25 -0
  195. package/src/components/AppBar/AppBarMenuToggle.tsx +90 -0
  196. package/src/components/AppBar/AppBarUserMenu.tsx +217 -0
  197. package/src/components/AppBar/index.ts +25 -0
  198. package/src/components/Autocomplete/Autocomplete.definitions.ts +477 -0
  199. package/src/components/Autocomplete/Autocomplete.helpers.ts +60 -0
  200. package/src/components/Autocomplete/Autocomplete.stories.tsx +748 -0
  201. package/src/components/Autocomplete/Autocomplete.sx.ts +30 -0
  202. package/src/components/Autocomplete/Autocomplete.tsx +361 -0
  203. package/src/components/Autocomplete/Autocomplete.types.ts +13 -0
  204. package/src/components/Autocomplete/_parts/AutocompleteChips.tsx +55 -0
  205. package/src/components/Autocomplete/_parts/AutocompleteLoader.tsx +17 -0
  206. package/src/components/Autocomplete/_parts/AutocompleteOption.tsx +31 -0
  207. package/src/components/Autocomplete/index.ts +12 -0
  208. package/src/components/Avatar/Avatar.definitions.ts +162 -0
  209. package/src/components/Avatar/Avatar.stories.tsx +258 -0
  210. package/src/components/Avatar/Avatar.tsx +206 -0
  211. package/src/components/Avatar/index.ts +1 -0
  212. package/src/components/Button/Button.definition.ts +97 -0
  213. package/src/components/Button/Button.stories.tsx +285 -0
  214. package/src/components/Button/Button.tsx +67 -0
  215. package/src/components/Button/index.ts +1 -0
  216. package/src/components/Card/Card.definition.ts +5 -0
  217. package/src/components/Card/Card.stories.tsx +221 -0
  218. package/src/components/Card/Card.sx.ts +104 -0
  219. package/src/components/Card/Card.tsx +200 -0
  220. package/src/components/Card/index.ts +9 -0
  221. package/src/components/Chip/Chip.definitions.ts +167 -0
  222. package/src/components/Chip/Chip.stories.tsx +265 -0
  223. package/src/components/Chip/Chip.tsx +61 -0
  224. package/src/components/Chip/index.ts +1 -0
  225. package/src/components/Column/Column.tsx +29 -0
  226. package/src/components/Column/index.ts +1 -0
  227. package/src/components/DatePicker/DatePicker.definitions.ts +228 -0
  228. package/src/components/DatePicker/DatePicker.helpers.ts +24 -0
  229. package/src/components/DatePicker/DatePicker.stories.tsx +309 -0
  230. package/src/components/DatePicker/DatePicker.sx.ts +33 -0
  231. package/src/components/DatePicker/DatePicker.tsx +189 -0
  232. package/src/components/DatePicker/DatePicker.types.ts +10 -0
  233. package/src/components/DatePicker/index.ts +9 -0
  234. package/src/components/DateRangePicker/DateRangePicker.definitions.ts +191 -0
  235. package/src/components/DateRangePicker/DateRangePicker.stories.tsx +252 -0
  236. package/src/components/DateRangePicker/DateRangePicker.tsx +56 -0
  237. package/src/components/DateRangePicker/index.ts +1 -0
  238. package/src/components/DateTimePicker/DateTimePicker.definitions.ts +256 -0
  239. package/src/components/DateTimePicker/DateTimePicker.helpers.ts +38 -0
  240. package/src/components/DateTimePicker/DateTimePicker.stories.tsx +418 -0
  241. package/src/components/DateTimePicker/DateTimePicker.sx.ts +30 -0
  242. package/src/components/DateTimePicker/DateTimePicker.tsx +225 -0
  243. package/src/components/DateTimePicker/DateTimePicker.types.ts +10 -0
  244. package/src/components/DateTimePicker/index.ts +9 -0
  245. package/src/components/Drawer/Drawer.stories.tsx +270 -0
  246. package/src/components/Drawer/Drawer.sx.ts +106 -0
  247. package/src/components/Drawer/Drawer.tsx +214 -0
  248. package/src/components/Drawer/DrawerContext.ts +26 -0
  249. package/src/components/Drawer/DrawerItem.tsx +110 -0
  250. package/src/components/Drawer/index.ts +10 -0
  251. package/src/components/Flyout/Flyout.stories.tsx +282 -0
  252. package/src/components/Flyout/Flyout.tsx +122 -0
  253. package/src/components/Flyout/index.ts +1 -0
  254. package/src/components/Gallery/Gallery.definition.tsx +37 -0
  255. package/src/components/Gallery/Gallery.stories.tsx +82 -0
  256. package/src/components/Gallery/Gallery.tsx +118 -0
  257. package/src/components/Gallery/GalleryLightbox.tsx +170 -0
  258. package/src/components/Gallery/GalleryMain.tsx +84 -0
  259. package/src/components/Gallery/GalleryThumbnails.tsx +106 -0
  260. package/src/components/Gallery/index.ts +1 -0
  261. package/src/components/Icon/Icon.stories.tsx +121 -0
  262. package/src/components/Icon/Icon.tsx +175 -0
  263. package/src/components/Icon/index.ts +2 -0
  264. package/src/components/Input/Input.definitions.ts +324 -0
  265. package/src/components/Input/Input.helpers.ts +49 -0
  266. package/src/components/Input/Input.stories.tsx +499 -0
  267. package/src/components/Input/Input.sx.ts +42 -0
  268. package/src/components/Input/Input.tsx +141 -0
  269. package/src/components/Input/Input.types.ts +10 -0
  270. package/src/components/Input/index.ts +9 -0
  271. package/src/components/InputGroup/InputGroup.definitions.ts +158 -0
  272. package/src/components/InputGroup/InputGroup.stories.tsx +267 -0
  273. package/src/components/InputGroup/InputGroup.tsx +179 -0
  274. package/src/components/InputGroup/index.ts +1 -0
  275. package/src/components/MenuButton/MenuButton.stories.tsx +197 -0
  276. package/src/components/MenuButton/MenuButton.tsx +100 -0
  277. package/src/components/MenuButton/index.ts +1 -0
  278. package/src/components/Modal/Modal.stories.tsx +721 -0
  279. package/src/components/Modal/Modal.tsx +355 -0
  280. package/src/components/Modal/ModalBody.tsx +16 -0
  281. package/src/components/Modal/ModalFooter.tsx +71 -0
  282. package/src/components/Modal/ModalHeader.tsx +18 -0
  283. package/src/components/Modal/index.ts +6 -0
  284. package/src/components/PageLoader/PageLoader.stories.tsx +217 -0
  285. package/src/components/PageLoader/PageLoader.tsx +96 -0
  286. package/src/components/PageLoader/index.ts +2 -0
  287. package/src/components/ScrollTopButton/ScrollTopButton.stories.tsx +158 -0
  288. package/src/components/ScrollTopButton/ScrollTopButton.tsx +135 -0
  289. package/src/components/ScrollTopButton/index.ts +8 -0
  290. package/src/components/ScrollTopButton/scrollToTop.ts +37 -0
  291. package/src/components/Select/Select.definitions.ts +602 -0
  292. package/src/components/Select/Select.helpers.ts +71 -0
  293. package/src/components/Select/Select.stories.tsx +687 -0
  294. package/src/components/Select/Select.sx.ts +14 -0
  295. package/src/components/Select/Select.tsx +429 -0
  296. package/src/components/Select/Select.types.ts +15 -0
  297. package/src/components/Select/_parts/SelectMenuItem.tsx +40 -0
  298. package/src/components/Select/_parts/SelectSearchHeader.tsx +51 -0
  299. package/src/components/Select/_parts/SelectValue.tsx +96 -0
  300. package/src/components/Select/index.ts +14 -0
  301. package/src/components/Stat/Stat.stories.tsx +85 -0
  302. package/src/components/Stat/Stat.tsx +117 -0
  303. package/src/components/Stat/index.ts +2 -0
  304. package/src/components/StatusMessage/StatusMessage.stories.tsx +130 -0
  305. package/src/components/StatusMessage/StatusMessage.tsx +162 -0
  306. package/src/components/StatusMessage/index.ts +2 -0
  307. package/src/components/Stepper/Step.tsx +21 -0
  308. package/src/components/Stepper/Stepper.definition.ts +75 -0
  309. package/src/components/Stepper/Stepper.stories.tsx +122 -0
  310. package/src/components/Stepper/Stepper.tsx +75 -0
  311. package/src/components/Stepper/index.ts +2 -0
  312. package/src/components/Table/EmptyTable.png +0 -0
  313. package/src/components/Table/Table.definition.ts +580 -0
  314. package/src/components/Table/Table.stories.tsx +853 -0
  315. package/src/components/Table/Table.tsx +495 -0
  316. package/src/components/Table/data.ts +134 -0
  317. package/src/components/Table/exportsUtils.ts +195 -0
  318. package/src/components/Table/index.ts +3 -0
  319. package/src/components/Table/types.ts +34 -0
  320. package/src/components/Tabs/Tab.definition.ts +53 -0
  321. package/src/components/Tabs/Tab.tsx +19 -0
  322. package/src/components/Tabs/Tabs.stories.tsx +118 -0
  323. package/src/components/Tabs/Tabs.tsx +99 -0
  324. package/src/components/Tabs/_tabUtils.tsx +4 -0
  325. package/src/components/Tabs/index.ts +2 -0
  326. package/src/components/Timeline/Timeline.definition.ts +43 -0
  327. package/src/components/Timeline/Timeline.stories.tsx +108 -0
  328. package/src/components/Timeline/Timeline.tsx +49 -0
  329. package/src/components/Timeline/TimelineItem.tsx +31 -0
  330. package/src/components/Timeline/index.ts +2 -0
  331. package/src/components/Tooltip/Tooltip.stories.tsx +129 -0
  332. package/src/components/Tooltip/Tooltip.tsx +58 -0
  333. package/src/components/Tooltip/index.ts +1 -0
  334. package/src/components/_shared/formField.sx.ts +118 -0
  335. package/src/components/_shared/resolvePreset.ts +35 -0
  336. package/src/hooks/ClipBoard/ClipBoard.stories.tsx +168 -0
  337. package/src/hooks/ClipBoard/ClipBoard.tsx +131 -0
  338. package/src/hooks/ClipBoard/ClipboardUnifiedDemo.tsx +111 -0
  339. package/src/hooks/ClipBoard/index.ts +1 -0
  340. package/src/hooks/Wizard/Wizard.stories.tsx +301 -0
  341. package/src/hooks/Wizard/WizardContext.tsx +166 -0
  342. package/src/hooks/Wizard/index.ts +6 -0
  343. package/src/hooks/Wizard/useWizard.ts +13 -0
  344. package/src/index.ts +17 -0
  345. package/src/mui.ts +44 -0
  346. package/src/styles.css +3 -0
  347. package/src/theme/componentStyles.ts +47 -0
  348. package/src/theme/tokens.ts +43 -0
  349. package/tailwind.config.js +10 -0
  350. package/tsconfig.json +48 -0
  351. package/tsup.config.js +41 -0
  352. package/vite.config.js +132 -0
  353. package/vitest.config.ts +35 -0
  354. package/DatePicker-BSNboVhN.js +0 -201
  355. package/DatePicker-BSNboVhN.js.map +0 -1
  356. package/DatePicker-BoqxWAhj.cjs +0 -200
  357. package/DatePicker-BoqxWAhj.cjs.map +0 -1
  358. package/Input-DFHs7cJ_.js +0 -171
  359. package/Input-DFHs7cJ_.js.map +0 -1
  360. package/Input-c8MwNNPg.cjs +0 -170
  361. package/Input-c8MwNNPg.cjs.map +0 -1
  362. package/Select-BO2N56sm.cjs +0 -411
  363. package/Select-BO2N56sm.cjs.map +0 -1
  364. package/Select-BcLkyHSE.js +0 -412
  365. package/Select-BcLkyHSE.js.map +0 -1
  366. package/components/Autocomplete/Autocomplete.cjs +0 -132
  367. package/components/Autocomplete/Autocomplete.cjs.map +0 -1
  368. package/components/Autocomplete/Autocomplete.d.ts +0 -28
  369. package/components/Autocomplete/Autocomplete.js +0 -132
  370. package/components/Autocomplete/Autocomplete.js.map +0 -1
  371. package/components/Autocomplete/index.d.ts +0 -1
  372. package/components/Autocomplete.d.ts +0 -2
  373. package/components/Avatar/Avatar.cjs +0 -126
  374. package/components/Avatar/Avatar.cjs.map +0 -1
  375. package/components/Avatar/Avatar.d.ts +0 -19
  376. package/components/Avatar/Avatar.js +0 -126
  377. package/components/Avatar/Avatar.js.map +0 -1
  378. package/components/Card/Card.cjs +0 -28
  379. package/components/Card/Card.cjs.map +0 -1
  380. package/components/Card/Card.d.ts +0 -13
  381. package/components/Card/Card.js +0 -28
  382. package/components/Card/Card.js.map +0 -1
  383. package/components/Card/index.d.ts +0 -1
  384. package/components/Card.d.ts +0 -2
  385. package/components/DatePicker/DatePicker.cjs +0 -5
  386. package/components/DatePicker/DatePicker.cjs.map +0 -1
  387. package/components/DatePicker/DatePicker.d.ts +0 -18
  388. package/components/DatePicker/DatePicker.js +0 -5
  389. package/components/DatePicker/DatePicker.js.map +0 -1
  390. package/components/DatePicker/index.d.ts +0 -1
  391. package/components/DatePicker.d.ts +0 -2
  392. package/components/DateTimePicker/DateTimePicker.cjs +0 -208
  393. package/components/DateTimePicker/DateTimePicker.cjs.map +0 -1
  394. package/components/DateTimePicker/DateTimePicker.d.ts +0 -28
  395. package/components/DateTimePicker/DateTimePicker.js +0 -208
  396. package/components/DateTimePicker/DateTimePicker.js.map +0 -1
  397. package/components/DateTimePicker/index.d.ts +0 -1
  398. package/components/DateTimePicker.d.ts +0 -2
  399. package/components/Icon/Icon.cjs.map +0 -1
  400. package/components/Icon/Icon.d.ts +0 -21
  401. package/components/Icon/Icon.js.map +0 -1
  402. package/components/Input/Input.cjs +0 -5
  403. package/components/Input/Input.cjs.map +0 -1
  404. package/components/Input/Input.d.ts +0 -32
  405. package/components/Input/Input.js +0 -5
  406. package/components/Input/Input.js.map +0 -1
  407. package/components/Input/index.d.ts +0 -1
  408. package/components/Input.d.ts +0 -2
  409. package/components/InputGroup/InputGroup.cjs +0 -126
  410. package/components/InputGroup/InputGroup.cjs.map +0 -1
  411. package/components/InputGroup/InputGroup.d.ts +0 -6
  412. package/components/InputGroup/InputGroup.js +0 -126
  413. package/components/InputGroup/InputGroup.js.map +0 -1
  414. package/components/Modal/Modal.cjs +0 -209
  415. package/components/Modal/Modal.cjs.map +0 -1
  416. package/components/Modal/Modal.d.ts +0 -29
  417. package/components/Modal/Modal.js +0 -209
  418. package/components/Modal/Modal.js.map +0 -1
  419. package/components/Modal/index.d.ts +0 -1
  420. package/components/Select/Select.cjs +0 -6
  421. package/components/Select/Select.cjs.map +0 -1
  422. package/components/Select/Select.js +0 -6
  423. package/components/Select/Select.js.map +0 -1
  424. package/components/Select/index.d.ts +0 -1
  425. package/components/Select.d.ts +0 -2
  426. package/components/Stepper/Stepper.cjs.map +0 -1
  427. package/components/Stepper/Stepper.js.map +0 -1
  428. package/index.cjs +0 -2
  429. package/index.cjs.map +0 -1
  430. package/index.d.ts +0 -0
  431. package/index.js +0 -2
  432. /package/{README.md → Readme.md} +0 -0
  433. /package/{Button-C17mExpd.cjs → dist/Button-C17mExpd.cjs} +0 -0
  434. /package/{Button-C17mExpd.cjs.map → dist/Button-C17mExpd.cjs.map} +0 -0
  435. /package/{Button-UkkP-bNw.js → dist/Button-UkkP-bNw.js} +0 -0
  436. /package/{Button-UkkP-bNw.js.map → dist/Button-UkkP-bNw.js.map} +0 -0
  437. /package/{components → dist/components}/Avatar/index.d.ts +0 -0
  438. /package/{components → dist/components}/Avatar.d.ts +0 -0
  439. /package/{components → dist/components}/Button/Button.cjs +0 -0
  440. /package/{components → dist/components}/Button/Button.cjs.map +0 -0
  441. /package/{components → dist/components}/Button/Button.d.ts +0 -0
  442. /package/{components → dist/components}/Button/Button.definition.d.ts +0 -0
  443. /package/{components → dist/components}/Button/Button.js +0 -0
  444. /package/{components → dist/components}/Button/Button.js.map +0 -0
  445. /package/{components → dist/components}/Button/index.d.ts +0 -0
  446. /package/{components → dist/components}/Button.d.ts +0 -0
  447. /package/{components → dist/components}/Card/Card.definition.d.ts +0 -0
  448. /package/{components → dist/components}/Chip/Chip.cjs +0 -0
  449. /package/{components → dist/components}/Chip/Chip.cjs.map +0 -0
  450. /package/{components → dist/components}/Chip/Chip.d.ts +0 -0
  451. /package/{components → dist/components}/Chip/Chip.definitions.d.ts +0 -0
  452. /package/{components → dist/components}/Chip/Chip.js +0 -0
  453. /package/{components → dist/components}/Chip/Chip.js.map +0 -0
  454. /package/{components → dist/components}/Chip/index.d.ts +0 -0
  455. /package/{components → dist/components}/Chip.d.ts +0 -0
  456. /package/{components → dist/components}/Column/Column.cjs +0 -0
  457. /package/{components → dist/components}/Column/Column.cjs.map +0 -0
  458. /package/{components → dist/components}/Column/Column.d.ts +0 -0
  459. /package/{components → dist/components}/Column/Column.js +0 -0
  460. /package/{components → dist/components}/Column/Column.js.map +0 -0
  461. /package/{components → dist/components}/Column/index.d.ts +0 -0
  462. /package/{components → dist/components}/Column.d.ts +0 -0
  463. /package/{components → dist/components}/DateRangePicker/DateRangePicker.cjs +0 -0
  464. /package/{components → dist/components}/DateRangePicker/DateRangePicker.cjs.map +0 -0
  465. /package/{components → dist/components}/DateRangePicker/DateRangePicker.d.ts +0 -0
  466. /package/{components → dist/components}/DateRangePicker/DateRangePicker.definitions.d.ts +0 -0
  467. /package/{components → dist/components}/DateRangePicker/DateRangePicker.js +0 -0
  468. /package/{components → dist/components}/DateRangePicker/DateRangePicker.js.map +0 -0
  469. /package/{components → dist/components}/DateRangePicker/index.d.ts +0 -0
  470. /package/{components → dist/components}/DateRangePicker.d.ts +0 -0
  471. /package/{components → dist/components}/Flyout/Flyout.cjs +0 -0
  472. /package/{components → dist/components}/Flyout/Flyout.cjs.map +0 -0
  473. /package/{components → dist/components}/Flyout/Flyout.d.ts +0 -0
  474. /package/{components → dist/components}/Flyout/Flyout.js +0 -0
  475. /package/{components → dist/components}/Flyout/Flyout.js.map +0 -0
  476. /package/{components → dist/components}/Flyout/index.d.ts +0 -0
  477. /package/{components → dist/components}/Flyout.d.ts +0 -0
  478. /package/{components → dist/components}/Gallery/Gallery.cjs +0 -0
  479. /package/{components → dist/components}/Gallery/Gallery.cjs.map +0 -0
  480. /package/{components → dist/components}/Gallery/Gallery.d.ts +0 -0
  481. /package/{components → dist/components}/Gallery/Gallery.definition.d.ts +0 -0
  482. /package/{components → dist/components}/Gallery/Gallery.js +0 -0
  483. /package/{components → dist/components}/Gallery/Gallery.js.map +0 -0
  484. /package/{components → dist/components}/Gallery/GalleryLightbox.d.ts +0 -0
  485. /package/{components → dist/components}/Gallery/GalleryMain.d.ts +0 -0
  486. /package/{components → dist/components}/Gallery/GalleryThumbnails.d.ts +0 -0
  487. /package/{components → dist/components}/Gallery/index.d.ts +0 -0
  488. /package/{components → dist/components}/Gallery.d.ts +0 -0
  489. /package/{components → dist/components}/Icon/index.d.ts +0 -0
  490. /package/{components → dist/components}/Icon.d.ts +0 -0
  491. /package/{components → dist/components}/InputGroup/index.d.ts +0 -0
  492. /package/{components → dist/components}/InputGroup.d.ts +0 -0
  493. /package/{components → dist/components}/MenuButton/MenuButton.cjs +0 -0
  494. /package/{components → dist/components}/MenuButton/MenuButton.cjs.map +0 -0
  495. /package/{components → dist/components}/MenuButton/MenuButton.d.ts +0 -0
  496. /package/{components → dist/components}/MenuButton/MenuButton.js +0 -0
  497. /package/{components → dist/components}/MenuButton/MenuButton.js.map +0 -0
  498. /package/{components → dist/components}/MenuButton/index.d.ts +0 -0
  499. /package/{components → dist/components}/MenuButton.d.ts +0 -0
  500. /package/{components → dist/components}/Modal/ModalBody.d.ts +0 -0
  501. /package/{components → dist/components}/Modal/ModalHeader.d.ts +0 -0
  502. /package/{components → dist/components}/Modal.d.ts +0 -0
  503. /package/{components → dist/components}/Stat/Stat.cjs.map +0 -0
  504. /package/{components → dist/components}/Stat/Stat.d.ts +0 -0
  505. /package/{components → dist/components}/Stat/Stat.js.map +0 -0
  506. /package/{components → dist/components}/Stat/index.d.ts +0 -0
  507. /package/{components → dist/components}/Stat.d.ts +0 -0
  508. /package/{components → dist/components}/StatusMessage/StatusMessage.cjs +0 -0
  509. /package/{components → dist/components}/StatusMessage/StatusMessage.cjs.map +0 -0
  510. /package/{components → dist/components}/StatusMessage/StatusMessage.d.ts +0 -0
  511. /package/{components → dist/components}/StatusMessage/StatusMessage.js +0 -0
  512. /package/{components → dist/components}/StatusMessage/StatusMessage.js.map +0 -0
  513. /package/{components → dist/components}/StatusMessage/index.d.ts +0 -0
  514. /package/{components → dist/components}/StatusMessage.d.ts +0 -0
  515. /package/{components → dist/components}/Stepper/Step.d.ts +0 -0
  516. /package/{components → dist/components}/Stepper/Stepper.definition.d.ts +0 -0
  517. /package/{components → dist/components}/Stepper/index.d.ts +0 -0
  518. /package/{components → dist/components}/Stepper.d.ts +0 -0
  519. /package/{components → dist/components}/Table/Table.cjs +0 -0
  520. /package/{components → dist/components}/Table/Table.cjs.map +0 -0
  521. /package/{components → dist/components}/Table/Table.d.ts +0 -0
  522. /package/{components → dist/components}/Table/Table.definition.d.ts +0 -0
  523. /package/{components → dist/components}/Table/Table.js +0 -0
  524. /package/{components → dist/components}/Table/Table.js.map +0 -0
  525. /package/{components → dist/components}/Table/data.d.ts +0 -0
  526. /package/{components → dist/components}/Table/exportsUtils.d.ts +0 -0
  527. /package/{components → dist/components}/Table/index.d.ts +0 -0
  528. /package/{components → dist/components}/Table/types.d.ts +0 -0
  529. /package/{components → dist/components}/Table.d.ts +0 -0
  530. /package/{components → dist/components}/Tabs/Tab.d.ts +0 -0
  531. /package/{components → dist/components}/Tabs/Tab.definition.d.ts +0 -0
  532. /package/{components → dist/components}/Tabs/Tabs.cjs +0 -0
  533. /package/{components → dist/components}/Tabs/Tabs.cjs.map +0 -0
  534. /package/{components → dist/components}/Tabs/Tabs.d.ts +0 -0
  535. /package/{components → dist/components}/Tabs/Tabs.js +0 -0
  536. /package/{components → dist/components}/Tabs/Tabs.js.map +0 -0
  537. /package/{components → dist/components}/Tabs/_tabUtils.d.ts +0 -0
  538. /package/{components → dist/components}/Tabs/index.d.ts +0 -0
  539. /package/{components → dist/components}/Tabs.d.ts +0 -0
  540. /package/{components → dist/components}/Timeline/Timeline.cjs +0 -0
  541. /package/{components → dist/components}/Timeline/Timeline.cjs.map +0 -0
  542. /package/{components → dist/components}/Timeline/Timeline.d.ts +0 -0
  543. /package/{components → dist/components}/Timeline/Timeline.definition.d.ts +0 -0
  544. /package/{components → dist/components}/Timeline/Timeline.js +0 -0
  545. /package/{components → dist/components}/Timeline/Timeline.js.map +0 -0
  546. /package/{components → dist/components}/Timeline/TimelineItem.d.ts +0 -0
  547. /package/{components → dist/components}/Timeline/index.d.ts +0 -0
  548. /package/{components → dist/components}/Timeline.d.ts +0 -0
  549. /package/{components → dist/components}/Tooltip/Tooltip.cjs +0 -0
  550. /package/{components → dist/components}/Tooltip/Tooltip.cjs.map +0 -0
  551. /package/{components → dist/components}/Tooltip/Tooltip.d.ts +0 -0
  552. /package/{components → dist/components}/Tooltip/Tooltip.js +0 -0
  553. /package/{components → dist/components}/Tooltip/Tooltip.js.map +0 -0
  554. /package/{components → dist/components}/Tooltip/index.d.ts +0 -0
  555. /package/{components → dist/components}/Tooltip.d.ts +0 -0
  556. /package/{hooks → dist/hooks}/ClipBoard/ClipBoard.cjs +0 -0
  557. /package/{hooks → dist/hooks}/ClipBoard/ClipBoard.cjs.map +0 -0
  558. /package/{hooks → dist/hooks}/ClipBoard/ClipBoard.d.ts +0 -0
  559. /package/{hooks → dist/hooks}/ClipBoard/ClipBoard.js +0 -0
  560. /package/{hooks → dist/hooks}/ClipBoard/ClipBoard.js.map +0 -0
  561. /package/{hooks → dist/hooks}/ClipBoard/ClipboardUnifiedDemo.d.ts +0 -0
  562. /package/{hooks → dist/hooks}/ClipBoard/index.d.ts +0 -0
  563. /package/{hooks → dist/hooks}/ClipBoard.d.ts +0 -0
  564. /package/{index.css → dist/styles.css} +0 -0
@@ -0,0 +1,2 @@
1
+ export { ActionMenu, default } from './ActionMenu';
2
+ export type { ActionMenuProps, ActionMenuItem } from './ActionMenu';
@@ -0,0 +1,6 @@
1
+ export * from './ActionMenu/index'
2
+ export {}
3
+ import _default from './ActionMenu/index'
4
+ export default _default
5
+ export * from './ActionMenu/index'
6
+ export {}
@@ -0,0 +1,346 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
+ var __spreadValues = (a, b) => {
10
+ for (var prop in b || (b = {}))
11
+ if (__hasOwnProp.call(b, prop))
12
+ __defNormalProp(a, prop, b[prop]);
13
+ if (__getOwnPropSymbols)
14
+ for (var prop of __getOwnPropSymbols(b)) {
15
+ if (__propIsEnum.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ }
18
+ return a;
19
+ };
20
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
22
+ const jsxRuntime = require("react/jsx-runtime");
23
+ const React = require("react");
24
+ const material = require("@mui/material");
25
+ const styles = require("@mui/material/styles");
26
+ const resolvePreset = require("../../resolvePreset-CT3kU-K2.cjs");
27
+ const MenuIcon = require("@mui/icons-material/Menu");
28
+ const MenuOpenIcon = require("@mui/icons-material/MenuOpen");
29
+ const AppBarContext = React.createContext(null);
30
+ function useAppBarContext() {
31
+ const ctx = React.useContext(AppBarContext);
32
+ return ctx != null ? ctx : {};
33
+ }
34
+ function buildAppBarSx({
35
+ height = 64,
36
+ transparent = false
37
+ }) {
38
+ return (theme) => __spreadProps(__spreadValues({
39
+ minHeight: height,
40
+ justifyContent: "center",
41
+ backgroundImage: "none"
42
+ }, transparent && {
43
+ backgroundColor: "transparent",
44
+ boxShadow: "none",
45
+ borderBottom: `1px solid ${theme.palette.divider}`
46
+ }), {
47
+ "& .MuiToolbar-root": {
48
+ minHeight: height,
49
+ gap: 1.5
50
+ }
51
+ });
52
+ }
53
+ function AppBar({
54
+ children,
55
+ position = "sticky",
56
+ color = "default",
57
+ elevation = 1,
58
+ height = 64,
59
+ onMenuToggle,
60
+ menuOpen,
61
+ preset,
62
+ sx,
63
+ toolbarSx,
64
+ className,
65
+ appBarProps
66
+ }) {
67
+ const theme = styles.useTheme();
68
+ const presetSx = resolvePreset.resolvePreset("AppBar", preset, theme);
69
+ const transparent = color === "transparent";
70
+ const rootSx = [
71
+ buildAppBarSx({ height, transparent }),
72
+ ...presetSx ? [presetSx] : [],
73
+ ...Array.isArray(sx) ? sx : sx ? [sx] : []
74
+ ];
75
+ const contextValue = React.useMemo(
76
+ () => ({ onMenuToggle, menuOpen }),
77
+ [onMenuToggle, menuOpen]
78
+ );
79
+ return /* @__PURE__ */ jsxRuntime.jsx(AppBarContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsxRuntime.jsx(
80
+ material.AppBar,
81
+ __spreadProps(__spreadValues({
82
+ position,
83
+ color: color === "transparent" ? "transparent" : color,
84
+ elevation,
85
+ className,
86
+ sx: rootSx
87
+ }, appBarProps), {
88
+ children: /* @__PURE__ */ jsxRuntime.jsx(material.Toolbar, { sx: toolbarSx, children })
89
+ })
90
+ ) });
91
+ }
92
+ function AppBarBrand({
93
+ logo,
94
+ title,
95
+ subtitle,
96
+ onClick,
97
+ hideTitleOnMobile = true,
98
+ sx,
99
+ className
100
+ }) {
101
+ const clickable = !!onClick;
102
+ const rootSx = [
103
+ {
104
+ display: "flex",
105
+ alignItems: "center",
106
+ gap: 1.25,
107
+ cursor: clickable ? "pointer" : "default",
108
+ userSelect: "none",
109
+ minWidth: 0
110
+ },
111
+ ...Array.isArray(sx) ? sx : sx ? [sx] : []
112
+ ];
113
+ return /* @__PURE__ */ jsxRuntime.jsxs(
114
+ material.Box,
115
+ {
116
+ role: clickable ? "button" : void 0,
117
+ tabIndex: clickable ? 0 : void 0,
118
+ onClick,
119
+ onKeyDown: (event) => {
120
+ if (!clickable) return;
121
+ if (event.key === "Enter" || event.key === " ") {
122
+ event.preventDefault();
123
+ onClick == null ? void 0 : onClick(event);
124
+ }
125
+ },
126
+ className,
127
+ sx: rootSx,
128
+ children: [
129
+ logo && /* @__PURE__ */ jsxRuntime.jsx(
130
+ material.Box,
131
+ {
132
+ component: "span",
133
+ sx: {
134
+ display: "flex",
135
+ alignItems: "center",
136
+ flexShrink: 0
137
+ },
138
+ children: logo
139
+ }
140
+ ),
141
+ (title || subtitle) && /* @__PURE__ */ jsxRuntime.jsxs(
142
+ material.Box,
143
+ {
144
+ sx: {
145
+ display: hideTitleOnMobile ? { xs: "none", sm: "flex" } : "flex",
146
+ flexDirection: "column",
147
+ minWidth: 0,
148
+ lineHeight: 1.2
149
+ },
150
+ children: [
151
+ title && /* @__PURE__ */ jsxRuntime.jsx(
152
+ material.Typography,
153
+ {
154
+ component: "span",
155
+ variant: "subtitle1",
156
+ noWrap: true,
157
+ sx: { fontWeight: 700 },
158
+ children: title
159
+ }
160
+ ),
161
+ subtitle && /* @__PURE__ */ jsxRuntime.jsx(
162
+ material.Typography,
163
+ {
164
+ component: "span",
165
+ variant: "caption",
166
+ color: "text.secondary",
167
+ noWrap: true,
168
+ children: subtitle
169
+ }
170
+ )
171
+ ]
172
+ }
173
+ )
174
+ ]
175
+ }
176
+ );
177
+ }
178
+ function AppBarMenuToggle({
179
+ onClick,
180
+ menuOpen,
181
+ closedIcon,
182
+ openIcon,
183
+ tooltip = "Menú",
184
+ ariaLabel,
185
+ size = "medium",
186
+ hideIfNoHandler = true,
187
+ sx,
188
+ className
189
+ }) {
190
+ var _a;
191
+ const ctx = useAppBarContext();
192
+ const handler = onClick != null ? onClick : ctx.onMenuToggle;
193
+ const open = (_a = menuOpen != null ? menuOpen : ctx.menuOpen) != null ? _a : false;
194
+ if (!handler && hideIfNoHandler) {
195
+ return null;
196
+ }
197
+ const icon = open ? openIcon != null ? openIcon : /* @__PURE__ */ jsxRuntime.jsx(MenuOpenIcon, {}) : closedIcon != null ? closedIcon : /* @__PURE__ */ jsxRuntime.jsx(MenuIcon, {});
198
+ return /* @__PURE__ */ jsxRuntime.jsx(material.Tooltip, { title: tooltip, arrow: true, children: /* @__PURE__ */ jsxRuntime.jsx("span", { children: /* @__PURE__ */ jsxRuntime.jsx(
199
+ material.IconButton,
200
+ {
201
+ size,
202
+ edge: "start",
203
+ color: "inherit",
204
+ "aria-label": ariaLabel != null ? ariaLabel : tooltip,
205
+ onClick: handler,
206
+ disabled: !handler,
207
+ className,
208
+ sx,
209
+ children: icon
210
+ }
211
+ ) }) });
212
+ }
213
+ function computeInitials(name) {
214
+ var _a, _b, _c, _d;
215
+ if (typeof name !== "string") return "?";
216
+ const parts = name.trim().split(/\s+/).filter(Boolean);
217
+ if (parts.length === 0) return "?";
218
+ const first = (_b = (_a = parts[0]) == null ? void 0 : _a.charAt(0)) != null ? _b : "";
219
+ const last = parts.length > 1 ? (_d = (_c = parts[parts.length - 1]) == null ? void 0 : _c.charAt(0)) != null ? _d : "" : "";
220
+ return (first + last).toUpperCase();
221
+ }
222
+ function AppBarUserMenu({
223
+ user,
224
+ items,
225
+ hideUserHeader = false,
226
+ triggerTooltip = "Cuenta",
227
+ avatarSize = 36,
228
+ menuSx,
229
+ triggerSx,
230
+ className
231
+ }) {
232
+ var _a;
233
+ const [anchorEl, setAnchorEl] = React.useState(null);
234
+ const open = Boolean(anchorEl);
235
+ const handleOpen = (event) => {
236
+ setAnchorEl(event.currentTarget);
237
+ };
238
+ const handleClose = () => setAnchorEl(null);
239
+ const handleItemClick = (event, item) => {
240
+ var _a2;
241
+ event.stopPropagation();
242
+ (_a2 = item.onClick) == null ? void 0 : _a2.call(item, event);
243
+ handleClose();
244
+ };
245
+ const initials = (_a = user == null ? void 0 : user.initials) != null ? _a : computeInitials(user == null ? void 0 : user.name);
246
+ const showUserHeader = !hideUserHeader && ((user == null ? void 0 : user.name) || (user == null ? void 0 : user.email));
247
+ return /* @__PURE__ */ jsxRuntime.jsxs(material.Box, { component: "span", className, children: [
248
+ /* @__PURE__ */ jsxRuntime.jsx(material.Tooltip, { title: triggerTooltip, arrow: true, children: /* @__PURE__ */ jsxRuntime.jsx(
249
+ material.IconButton,
250
+ {
251
+ onClick: handleOpen,
252
+ size: "small",
253
+ "aria-label": triggerTooltip,
254
+ "aria-haspopup": "menu",
255
+ "aria-expanded": open || void 0,
256
+ sx: [{ p: 0.5 }, ...Array.isArray(triggerSx) ? triggerSx : triggerSx ? [triggerSx] : []],
257
+ children: /* @__PURE__ */ jsxRuntime.jsx(
258
+ material.Avatar,
259
+ {
260
+ src: user == null ? void 0 : user.avatarUrl,
261
+ sx: {
262
+ width: avatarSize,
263
+ height: avatarSize,
264
+ fontSize: avatarSize * 0.4,
265
+ fontWeight: 600
266
+ },
267
+ children: !(user == null ? void 0 : user.avatarUrl) && initials
268
+ }
269
+ )
270
+ }
271
+ ) }),
272
+ /* @__PURE__ */ jsxRuntime.jsxs(
273
+ material.Menu,
274
+ {
275
+ anchorEl,
276
+ open,
277
+ onClose: handleClose,
278
+ anchorOrigin: { vertical: "bottom", horizontal: "right" },
279
+ transformOrigin: { vertical: "top", horizontal: "right" },
280
+ slotProps: {
281
+ paper: {
282
+ sx: __spreadValues({ minWidth: 240 }, menuSx)
283
+ }
284
+ },
285
+ children: [
286
+ showUserHeader && /* @__PURE__ */ jsxRuntime.jsxs(
287
+ material.Box,
288
+ {
289
+ sx: {
290
+ px: 2,
291
+ py: 1.25,
292
+ display: "flex",
293
+ flexDirection: "column",
294
+ gap: 0.25
295
+ },
296
+ children: [
297
+ (user == null ? void 0 : user.name) && /* @__PURE__ */ jsxRuntime.jsx(material.Typography, { variant: "subtitle2", noWrap: true, sx: { fontWeight: 700 }, children: user.name }),
298
+ (user == null ? void 0 : user.email) && /* @__PURE__ */ jsxRuntime.jsx(material.Typography, { variant: "caption", color: "text.secondary", noWrap: true, children: user.email })
299
+ ]
300
+ }
301
+ ),
302
+ showUserHeader && /* @__PURE__ */ jsxRuntime.jsx(material.Divider, {}),
303
+ items.map((item, idx) => {
304
+ var _a2;
305
+ const key = (_a2 = item.key) != null ? _a2 : `${String(item.label)}-${idx}`;
306
+ const node = /* @__PURE__ */ jsxRuntime.jsxs(
307
+ material.MenuItem,
308
+ {
309
+ disabled: item.disabled,
310
+ onClick: (event) => handleItemClick(event, item),
311
+ sx: (theme) => ({
312
+ color: item.danger ? theme.palette.error.main : "inherit",
313
+ "& .MuiListItemIcon-root": {
314
+ color: item.danger ? theme.palette.error.main : "inherit",
315
+ minWidth: 32
316
+ }
317
+ }),
318
+ children: [
319
+ item.icon && /* @__PURE__ */ jsxRuntime.jsx(material.ListItemIcon, { children: item.icon }),
320
+ /* @__PURE__ */ jsxRuntime.jsx(material.ListItemText, { primary: item.label })
321
+ ]
322
+ },
323
+ key
324
+ );
325
+ if (item.dividerBefore && idx > 0) {
326
+ return /* @__PURE__ */ jsxRuntime.jsxs(React.Fragment, { children: [
327
+ /* @__PURE__ */ jsxRuntime.jsx(material.Divider, {}),
328
+ node
329
+ ] }, `${key}-frag`);
330
+ }
331
+ return node;
332
+ })
333
+ ]
334
+ }
335
+ )
336
+ ] });
337
+ }
338
+ exports.AppBar = AppBar;
339
+ exports.AppBarBrand = AppBarBrand;
340
+ exports.AppBarContext = AppBarContext;
341
+ exports.AppBarMenuToggle = AppBarMenuToggle;
342
+ exports.AppBarUserMenu = AppBarUserMenu;
343
+ exports.buildAppBarSx = buildAppBarSx;
344
+ exports.default = AppBar;
345
+ exports.useAppBarContext = useAppBarContext;
346
+ //# sourceMappingURL=AppBar.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppBar.cjs","sources":["../../../src/components/AppBar/AppBarContext.ts","../../../src/components/AppBar/AppBar.sx.ts","../../../src/components/AppBar/AppBar.tsx","../../../src/components/AppBar/AppBarBrand.tsx","../../../src/components/AppBar/AppBarMenuToggle.tsx","../../../src/components/AppBar/AppBarUserMenu.tsx"],"sourcesContent":["import { createContext, useContext } from 'react';\n\n/**\n * Context interno del AppBar. Permite que sub-componentes (MenuToggle, etc.)\n * consuman callbacks registrados en el AppBar padre sin tener que pasarlos\n * por props explícitas.\n */\nexport interface AppBarContextValue {\n /** Handler del botón hamburguesa. Si es undefined, el toggle se oculta. */\n onMenuToggle?: () => void;\n /** Estado actual del drawer asociado (usado por el icono del toggle). */\n menuOpen?: boolean;\n}\n\nexport const AppBarContext = createContext<AppBarContextValue | null>(null);\n\n/**\n * Hook para leer el contexto del AppBar. Si se llama fuera de un `<AppBar>`,\n * devuelve un objeto vacío — los sub-componentes caen en modo \"standalone\"\n * con sus defaults en lugar de romper.\n */\nexport function useAppBarContext(): AppBarContextValue {\n const ctx = useContext(AppBarContext);\n return ctx ?? {};\n}\n","import type { SxProps, Theme } from '@mui/material/styles';\n\nexport interface BuildAppBarSxArgs {\n /** Altura en px. Default: 64. */\n height?: number;\n /** Color del AppBar (se pasa al MuiAppBar). */\n transparent?: boolean;\n}\n\n/**\n * sx del root del MuiAppBar. Define altura fija y layout flex del Toolbar\n * interno. El color/elevación se dejan a las props nativas de MuiAppBar.\n */\nexport function buildAppBarSx({\n height = 64,\n transparent = false,\n}: BuildAppBarSxArgs): SxProps<Theme> {\n return (theme) => ({\n minHeight: height,\n justifyContent: 'center',\n backgroundImage: 'none',\n ...(transparent && {\n backgroundColor: 'transparent',\n boxShadow: 'none',\n borderBottom: `1px solid ${theme.palette.divider}`,\n }),\n '& .MuiToolbar-root': {\n minHeight: height,\n gap: 1.5,\n },\n });\n}\n","import React, { useMemo, type ReactNode } from 'react';\nimport {\n AppBar as MuiAppBar,\n Toolbar,\n type AppBarProps as MuiAppBarProps,\n} from '@mui/material';\nimport {\n useTheme,\n type SxProps,\n type Theme,\n} from '@mui/material/styles';\n\nimport { AppBarContext } from './AppBarContext';\nimport { buildAppBarSx } from './AppBar.sx';\nimport { resolvePreset } from '../_shared/resolvePreset';\n\nexport type AppBarPosition = 'fixed' | 'sticky' | 'static' | 'absolute' | 'relative';\nexport type AppBarColor =\n | 'default'\n | 'primary'\n | 'secondary'\n | 'transparent'\n | 'inherit';\n\nexport interface AppBarProps {\n /** Contenido del AppBar (típicamente sub-componentes + acciones custom). */\n children?: ReactNode;\n /** Posicionamiento. Default: `'sticky'`. */\n position?: AppBarPosition;\n /** Color. Default: `'default'`. */\n color?: AppBarColor;\n /** Nivel de sombra. Default: 1. */\n elevation?: number;\n /** Altura en px. Default: 64. */\n height?: number;\n /**\n * Handler del botón hamburguesa. Se expone vía AppBarContext para que el\n * sub-componente `<AppBarMenuToggle>` lo consuma sin prop drilling.\n */\n onMenuToggle?: () => void;\n /** Estado del drawer asociado (para que el icono del toggle cambie). */\n menuOpen?: boolean;\n /**\n * Nombre del preset de estilo registrado en `theme.styles.AppBar`.\n * - `\"default\"` (o ausente) = estilo built-in del paquete.\n */\n preset?: string;\n /** sx del root (se mergea después del preset). */\n sx?: SxProps<Theme>;\n /** sx del Toolbar interno. */\n toolbarSx?: SxProps<Theme>;\n className?: string;\n /** Otras props nativas del MuiAppBar (ej. `enableColorOnDark`). */\n appBarProps?: Omit<\n MuiAppBarProps,\n 'position' | 'color' | 'elevation' | 'sx' | 'children' | 'className'\n >;\n}\n\n/**\n * AppBar (header superior) del paquete. Se diseñó como un shell compositivo\n * — el consumer arma el contenido con los sub-componentes que exporta el\n * paquete (`AppBarBrand`, `AppBarMenuToggle`, `AppBarUserMenu`) + cualquier\n * otra cosa custom.\n *\n * Patrón recomendado para navegación en dashboards:\n *\n * ```tsx\n * <AppBar onMenuToggle={toggleDrawer}>\n * <AppBarMenuToggle />\n * <AppBarBrand logo={<Logo />} title=\"Afiliaciones\" />\n * <Box sx={{ flex: 1 }} />\n * <AppBarUserMenu user={user} items={menuItems} />\n * </AppBar>\n * ```\n */\nexport function AppBar({\n children,\n position = 'sticky',\n color = 'default',\n elevation = 1,\n height = 64,\n onMenuToggle,\n menuOpen,\n preset,\n sx,\n toolbarSx,\n className,\n appBarProps,\n}: AppBarProps) {\n const theme = useTheme();\n const presetSx = resolvePreset('AppBar', preset, theme);\n\n const transparent = color === 'transparent';\n\n const rootSx: SxProps<Theme> = [\n buildAppBarSx({ height, transparent }),\n ...(presetSx ? [presetSx] : []),\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n const contextValue = useMemo(\n () => ({ onMenuToggle, menuOpen }),\n [onMenuToggle, menuOpen],\n );\n\n return (\n <AppBarContext.Provider value={contextValue}>\n <MuiAppBar\n position={position}\n color={color === 'transparent' ? 'transparent' : color}\n elevation={elevation}\n className={className}\n sx={rootSx}\n {...appBarProps}\n >\n <Toolbar sx={toolbarSx}>{children}</Toolbar>\n </MuiAppBar>\n </AppBarContext.Provider>\n );\n}\n\nexport default AppBar;\n","import React, { type ReactNode, type MouseEvent } from 'react';\nimport { Box, Typography } from '@mui/material';\nimport type { SxProps, Theme } from '@mui/material/styles';\n\nexport interface AppBarBrandProps {\n /** Logo (img, svg, componente). Se muestra a la izquierda del título. */\n logo?: ReactNode;\n /** Título del sistema. */\n title?: ReactNode;\n /** Subtítulo opcional (p.ej. nombre de módulo actual). */\n subtitle?: ReactNode;\n /** Handler de click sobre todo el brand (típicamente navega al home). */\n onClick?: (event: MouseEvent<HTMLDivElement>) => void;\n /** Oculta solo el título en viewports pequeños (mantiene el logo). Default: true. */\n hideTitleOnMobile?: boolean;\n sx?: SxProps<Theme>;\n className?: string;\n}\n\n/**\n * Brand del AppBar: combina logo + título + subtítulo opcional con un\n * click handler global (típicamente para navegar al home).\n *\n * ```tsx\n * <AppBarBrand\n * logo={<img src={logo} alt=\"\" height={32} />}\n * title=\"Afiliaciones\"\n * subtitle=\"Panel administrativo\"\n * onClick={() => navigate('/')}\n * />\n * ```\n */\nexport function AppBarBrand({\n logo,\n title,\n subtitle,\n onClick,\n hideTitleOnMobile = true,\n sx,\n className,\n}: AppBarBrandProps) {\n const clickable = !!onClick;\n\n const rootSx: SxProps<Theme> = [\n {\n display: 'flex',\n alignItems: 'center',\n gap: 1.25,\n cursor: clickable ? 'pointer' : 'default',\n userSelect: 'none',\n minWidth: 0,\n },\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n return (\n <Box\n role={clickable ? 'button' : undefined}\n tabIndex={clickable ? 0 : undefined}\n onClick={onClick}\n onKeyDown={(event) => {\n if (!clickable) return;\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n onClick?.(event as unknown as MouseEvent<HTMLDivElement>);\n }\n }}\n className={className}\n sx={rootSx}\n >\n {logo && (\n <Box\n component=\"span\"\n sx={{\n display: 'flex',\n alignItems: 'center',\n flexShrink: 0,\n }}\n >\n {logo}\n </Box>\n )}\n {(title || subtitle) && (\n <Box\n sx={{\n display: hideTitleOnMobile\n ? { xs: 'none', sm: 'flex' }\n : 'flex',\n flexDirection: 'column',\n minWidth: 0,\n lineHeight: 1.2,\n }}\n >\n {title && (\n <Typography\n component=\"span\"\n variant=\"subtitle1\"\n noWrap\n sx={{ fontWeight: 700 }}\n >\n {title}\n </Typography>\n )}\n {subtitle && (\n <Typography\n component=\"span\"\n variant=\"caption\"\n color=\"text.secondary\"\n noWrap\n >\n {subtitle}\n </Typography>\n )}\n </Box>\n )}\n </Box>\n );\n}\n\nexport default AppBarBrand;\n","import React, { type ReactNode } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport MenuIcon from '@mui/icons-material/Menu';\nimport MenuOpenIcon from '@mui/icons-material/MenuOpen';\nimport type { SxProps, Theme } from '@mui/material/styles';\n\nimport { useAppBarContext } from './AppBarContext';\n\nexport interface AppBarMenuToggleProps {\n /**\n * Callback explícito. Si se omite, se consume del `AppBarContext`. Útil para\n * usar el toggle fuera de un `<AppBar>` (p.ej. en un header custom).\n */\n onClick?: () => void;\n /** Estado del drawer asociado. Si se omite, se lee del `AppBarContext`. */\n menuOpen?: boolean;\n /** Icono custom cuando el drawer está cerrado. Default: `<MenuIcon />`. */\n closedIcon?: ReactNode;\n /** Icono custom cuando el drawer está abierto. Default: `<MenuOpenIcon />`. */\n openIcon?: ReactNode;\n /** Texto de tooltip. Default: \"Menú\". */\n tooltip?: string;\n /** aria-label del botón. Default: el mismo tooltip. */\n ariaLabel?: string;\n /** Tamaño del IconButton. Default: `'medium'`. */\n size?: 'small' | 'medium' | 'large';\n /** Oculta el botón cuando no hay handler disponible. Default: true. */\n hideIfNoHandler?: boolean;\n sx?: SxProps<Theme>;\n className?: string;\n}\n\n/**\n * Botón hamburguesa del AppBar. Por default consume `onMenuToggle` y\n * `menuOpen` del `AppBarContext` (pattern composicional), pero permite\n * overrides explícitos si se usa fuera de un `<AppBar>`.\n *\n * ```tsx\n * <AppBar onMenuToggle={toggleDrawer} menuOpen={open}>\n * <AppBarMenuToggle />\n * ...\n * </AppBar>\n * ```\n */\nexport function AppBarMenuToggle({\n onClick,\n menuOpen,\n closedIcon,\n openIcon,\n tooltip = 'Menú',\n ariaLabel,\n size = 'medium',\n hideIfNoHandler = true,\n sx,\n className,\n}: AppBarMenuToggleProps) {\n const ctx = useAppBarContext();\n\n const handler = onClick ?? ctx.onMenuToggle;\n const open = menuOpen ?? ctx.menuOpen ?? false;\n\n if (!handler && hideIfNoHandler) {\n return null;\n }\n\n const icon = open\n ? (openIcon ?? <MenuOpenIcon />)\n : (closedIcon ?? <MenuIcon />);\n\n return (\n <Tooltip title={tooltip} arrow>\n <span>\n <IconButton\n size={size}\n edge=\"start\"\n color=\"inherit\"\n aria-label={ariaLabel ?? tooltip}\n onClick={handler}\n disabled={!handler}\n className={className}\n sx={sx}\n >\n {icon}\n </IconButton>\n </span>\n </Tooltip>\n );\n}\n\nexport default AppBarMenuToggle;\n","import React, { useState, type ReactNode, type MouseEvent } from 'react';\nimport {\n Avatar,\n Box,\n Divider,\n IconButton,\n ListItemIcon,\n ListItemText,\n Menu,\n MenuItem,\n Tooltip,\n Typography,\n} from '@mui/material';\nimport type { SxProps, Theme } from '@mui/material/styles';\n\nexport interface AppBarUserMenuItem {\n /** Key única. Si no se provee, se usa el label. */\n key?: string;\n /** Texto del item. */\n label: ReactNode;\n /** Icono opcional a la izquierda. */\n icon?: ReactNode;\n /** Handler de click. */\n onClick?: (event: MouseEvent<HTMLLIElement>) => void;\n /** Deshabilita el item. */\n disabled?: boolean;\n /** Pinta el item en color error (típico para \"Cerrar sesión\"). */\n danger?: boolean;\n /** Inserta un `<Divider />` ANTES de este item. */\n dividerBefore?: boolean;\n}\n\nexport interface AppBarUserMenuUser {\n /** Nombre a mostrar en el header del menú. */\n name?: ReactNode;\n /** Email / subtítulo secundario. */\n email?: ReactNode;\n /** URL del avatar. Si se omite, se muestran iniciales del `name`. */\n avatarUrl?: string;\n /** Iniciales custom. Si se omite, se calculan del `name`. */\n initials?: string;\n}\n\nexport interface AppBarUserMenuProps {\n /** Datos del usuario a mostrar. */\n user?: AppBarUserMenuUser;\n /** Items del menú. */\n items: AppBarUserMenuItem[];\n /**\n * Si `true`, oculta la fila con nombre + email en el tope del menú.\n * Default: `false`.\n */\n hideUserHeader?: boolean;\n /** Tooltip del trigger. Default: \"Cuenta\". */\n triggerTooltip?: string;\n /** Tamaño del Avatar en px. Default: 36. */\n avatarSize?: number;\n /** sx del Paper del Menu. */\n menuSx?: SxProps<Theme>;\n /** sx del trigger (IconButton). */\n triggerSx?: SxProps<Theme>;\n className?: string;\n}\n\nfunction computeInitials(name?: ReactNode): string {\n if (typeof name !== 'string') return '?';\n const parts = name.trim().split(/\\s+/).filter(Boolean);\n if (parts.length === 0) return '?';\n const first = parts[0]?.charAt(0) ?? '';\n const last = parts.length > 1 ? (parts[parts.length - 1]?.charAt(0) ?? '') : '';\n return (first + last).toUpperCase();\n}\n\n/**\n * Menú de usuario del AppBar: avatar clickable que despliega un menú con la\n * info del usuario (nombre + email) y una lista de acciones (perfil, cerrar\n * sesión, etc).\n *\n * ```tsx\n * <AppBarUserMenu\n * user={{ name: 'Andrea', email: 'a@soyfri.com' }}\n * items={[\n * { label: 'Perfil', icon: <PersonIcon />, onClick: goToProfile },\n * { label: 'Cerrar sesión', icon: <LogoutIcon />, onClick: logout, danger: true, dividerBefore: true },\n * ]}\n * />\n * ```\n */\nexport function AppBarUserMenu({\n user,\n items,\n hideUserHeader = false,\n triggerTooltip = 'Cuenta',\n avatarSize = 36,\n menuSx,\n triggerSx,\n className,\n}: AppBarUserMenuProps) {\n const [anchorEl, setAnchorEl] = useState<HTMLElement | null>(null);\n const open = Boolean(anchorEl);\n\n const handleOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n const handleClose = () => setAnchorEl(null);\n\n const handleItemClick = (\n event: MouseEvent<HTMLLIElement>,\n item: AppBarUserMenuItem,\n ) => {\n event.stopPropagation();\n item.onClick?.(event);\n handleClose();\n };\n\n const initials = user?.initials ?? computeInitials(user?.name);\n const showUserHeader = !hideUserHeader && (user?.name || user?.email);\n\n return (\n <Box component=\"span\" className={className}>\n <Tooltip title={triggerTooltip} arrow>\n <IconButton\n onClick={handleOpen}\n size=\"small\"\n aria-label={triggerTooltip}\n aria-haspopup=\"menu\"\n aria-expanded={open || undefined}\n sx={[{ p: 0.5 }, ...(Array.isArray(triggerSx) ? triggerSx : triggerSx ? [triggerSx] : [])]}\n >\n <Avatar\n src={user?.avatarUrl}\n sx={{\n width: avatarSize,\n height: avatarSize,\n fontSize: avatarSize * 0.4,\n fontWeight: 600,\n }}\n >\n {!user?.avatarUrl && initials}\n </Avatar>\n </IconButton>\n </Tooltip>\n\n <Menu\n anchorEl={anchorEl}\n open={open}\n onClose={handleClose}\n anchorOrigin={{ vertical: 'bottom', horizontal: 'right' }}\n transformOrigin={{ vertical: 'top', horizontal: 'right' }}\n slotProps={{\n paper: {\n sx: { minWidth: 240, ...(menuSx as any) },\n },\n }}\n >\n {showUserHeader && (\n <Box\n sx={{\n px: 2,\n py: 1.25,\n display: 'flex',\n flexDirection: 'column',\n gap: 0.25,\n }}\n >\n {user?.name && (\n <Typography variant=\"subtitle2\" noWrap sx={{ fontWeight: 700 }}>\n {user.name}\n </Typography>\n )}\n {user?.email && (\n <Typography variant=\"caption\" color=\"text.secondary\" noWrap>\n {user.email}\n </Typography>\n )}\n </Box>\n )}\n {showUserHeader && <Divider />}\n\n {items.map((item, idx) => {\n const key = item.key ?? `${String(item.label)}-${idx}`;\n const node = (\n <MenuItem\n key={key}\n disabled={item.disabled}\n onClick={(event) => handleItemClick(event, item)}\n sx={(theme) => ({\n color: item.danger ? theme.palette.error.main : 'inherit',\n '& .MuiListItemIcon-root': {\n color: item.danger\n ? theme.palette.error.main\n : 'inherit',\n minWidth: 32,\n },\n })}\n >\n {item.icon && <ListItemIcon>{item.icon}</ListItemIcon>}\n <ListItemText primary={item.label} />\n </MenuItem>\n );\n\n if (item.dividerBefore && idx > 0) {\n return (\n <React.Fragment key={`${key}-frag`}>\n <Divider />\n {node}\n </React.Fragment>\n );\n }\n return node;\n })}\n </Menu>\n </Box>\n );\n}\n\nexport default AppBarUserMenu;\n"],"names":["createContext","useContext","useTheme","resolvePreset","useMemo","jsx","MuiAppBar","Toolbar","jsxs","Box","Typography","Tooltip","IconButton","useState","_a","Avatar","Menu","Divider","MenuItem","ListItemIcon","ListItemText"],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ import { ReactNode } from 'react';
2
+ import { AppBarProps as MuiAppBarProps } from '@mui/material';
3
+ import { SxProps, Theme } from '@mui/material/styles';
4
+ export type AppBarPosition = 'fixed' | 'sticky' | 'static' | 'absolute' | 'relative';
5
+ export type AppBarColor = 'default' | 'primary' | 'secondary' | 'transparent' | 'inherit';
6
+ export interface AppBarProps {
7
+ /** Contenido del AppBar (típicamente sub-componentes + acciones custom). */
8
+ children?: ReactNode;
9
+ /** Posicionamiento. Default: `'sticky'`. */
10
+ position?: AppBarPosition;
11
+ /** Color. Default: `'default'`. */
12
+ color?: AppBarColor;
13
+ /** Nivel de sombra. Default: 1. */
14
+ elevation?: number;
15
+ /** Altura en px. Default: 64. */
16
+ height?: number;
17
+ /**
18
+ * Handler del botón hamburguesa. Se expone vía AppBarContext para que el
19
+ * sub-componente `<AppBarMenuToggle>` lo consuma sin prop drilling.
20
+ */
21
+ onMenuToggle?: () => void;
22
+ /** Estado del drawer asociado (para que el icono del toggle cambie). */
23
+ menuOpen?: boolean;
24
+ /**
25
+ * Nombre del preset de estilo registrado en `theme.styles.AppBar`.
26
+ * - `"default"` (o ausente) = estilo built-in del paquete.
27
+ */
28
+ preset?: string;
29
+ /** sx del root (se mergea después del preset). */
30
+ sx?: SxProps<Theme>;
31
+ /** sx del Toolbar interno. */
32
+ toolbarSx?: SxProps<Theme>;
33
+ className?: string;
34
+ /** Otras props nativas del MuiAppBar (ej. `enableColorOnDark`). */
35
+ appBarProps?: Omit<MuiAppBarProps, 'position' | 'color' | 'elevation' | 'sx' | 'children' | 'className'>;
36
+ }
37
+ /**
38
+ * AppBar (header superior) del paquete. Se diseñó como un shell compositivo
39
+ * — el consumer arma el contenido con los sub-componentes que exporta el
40
+ * paquete (`AppBarBrand`, `AppBarMenuToggle`, `AppBarUserMenu`) + cualquier
41
+ * otra cosa custom.
42
+ *
43
+ * Patrón recomendado para navegación en dashboards:
44
+ *
45
+ * ```tsx
46
+ * <AppBar onMenuToggle={toggleDrawer}>
47
+ * <AppBarMenuToggle />
48
+ * <AppBarBrand logo={<Logo />} title="Afiliaciones" />
49
+ * <Box sx={{ flex: 1 }} />
50
+ * <AppBarUserMenu user={user} items={menuItems} />
51
+ * </AppBar>
52
+ * ```
53
+ */
54
+ export declare function AppBar({ children, position, color, elevation, height, onMenuToggle, menuOpen, preset, sx, toolbarSx, className, appBarProps, }: AppBarProps): import("react/jsx-runtime").JSX.Element;
55
+ export default AppBar;