@soyfri/shared-library 2.0.0-beta.1 → 2.0.0-beta.3

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 (486) hide show
  1. package/package.json +164 -43
  2. package/.dockerignore +0 -8
  3. package/.github/workflows/publish.yml +0 -107
  4. package/.prettierrc +0 -3
  5. package/.storybook/main.ts +0 -19
  6. package/.storybook/preview.ts +0 -14
  7. package/.storybook/vitest.setup.ts +0 -9
  8. package/Dockerfile +0 -37
  9. package/build.js +0 -139
  10. package/chromatic.config.json +0 -5
  11. package/cleanDirectories.js +0 -40
  12. package/rollup.config.cjs +0 -87
  13. package/src/components/ActionMenu/ActionMenu.stories.tsx +0 -230
  14. package/src/components/ActionMenu/ActionMenu.tsx +0 -174
  15. package/src/components/ActionMenu/index.ts +0 -2
  16. package/src/components/AppBar/AppBar.stories.tsx +0 -272
  17. package/src/components/AppBar/AppBar.sx.ts +0 -32
  18. package/src/components/AppBar/AppBar.tsx +0 -123
  19. package/src/components/AppBar/AppBarBrand.tsx +0 -120
  20. package/src/components/AppBar/AppBarContext.ts +0 -25
  21. package/src/components/AppBar/AppBarMenuToggle.tsx +0 -90
  22. package/src/components/AppBar/AppBarUserMenu.tsx +0 -217
  23. package/src/components/AppBar/index.ts +0 -25
  24. package/src/components/Autocomplete/Autocomplete.definitions.ts +0 -477
  25. package/src/components/Autocomplete/Autocomplete.helpers.ts +0 -60
  26. package/src/components/Autocomplete/Autocomplete.stories.tsx +0 -748
  27. package/src/components/Autocomplete/Autocomplete.sx.ts +0 -30
  28. package/src/components/Autocomplete/Autocomplete.tsx +0 -361
  29. package/src/components/Autocomplete/Autocomplete.types.ts +0 -13
  30. package/src/components/Autocomplete/_parts/AutocompleteChips.tsx +0 -55
  31. package/src/components/Autocomplete/_parts/AutocompleteLoader.tsx +0 -17
  32. package/src/components/Autocomplete/_parts/AutocompleteOption.tsx +0 -31
  33. package/src/components/Autocomplete/index.ts +0 -12
  34. package/src/components/Avatar/Avatar.definitions.ts +0 -162
  35. package/src/components/Avatar/Avatar.stories.tsx +0 -258
  36. package/src/components/Avatar/Avatar.tsx +0 -206
  37. package/src/components/Avatar/index.ts +0 -1
  38. package/src/components/Button/Button.definition.ts +0 -97
  39. package/src/components/Button/Button.stories.tsx +0 -285
  40. package/src/components/Button/Button.tsx +0 -67
  41. package/src/components/Button/index.ts +0 -1
  42. package/src/components/Card/Card.definition.ts +0 -5
  43. package/src/components/Card/Card.stories.tsx +0 -221
  44. package/src/components/Card/Card.sx.ts +0 -104
  45. package/src/components/Card/Card.tsx +0 -200
  46. package/src/components/Card/index.ts +0 -9
  47. package/src/components/Chip/Chip.definitions.ts +0 -167
  48. package/src/components/Chip/Chip.stories.tsx +0 -265
  49. package/src/components/Chip/Chip.tsx +0 -61
  50. package/src/components/Chip/index.ts +0 -1
  51. package/src/components/Column/Column.tsx +0 -29
  52. package/src/components/Column/index.ts +0 -1
  53. package/src/components/DatePicker/DatePicker.definitions.ts +0 -228
  54. package/src/components/DatePicker/DatePicker.helpers.ts +0 -24
  55. package/src/components/DatePicker/DatePicker.stories.tsx +0 -309
  56. package/src/components/DatePicker/DatePicker.sx.ts +0 -33
  57. package/src/components/DatePicker/DatePicker.tsx +0 -189
  58. package/src/components/DatePicker/DatePicker.types.ts +0 -10
  59. package/src/components/DatePicker/index.ts +0 -9
  60. package/src/components/DateRangePicker/DateRangePicker.definitions.ts +0 -191
  61. package/src/components/DateRangePicker/DateRangePicker.stories.tsx +0 -252
  62. package/src/components/DateRangePicker/DateRangePicker.tsx +0 -56
  63. package/src/components/DateRangePicker/index.ts +0 -1
  64. package/src/components/DateTimePicker/DateTimePicker.definitions.ts +0 -256
  65. package/src/components/DateTimePicker/DateTimePicker.helpers.ts +0 -38
  66. package/src/components/DateTimePicker/DateTimePicker.stories.tsx +0 -418
  67. package/src/components/DateTimePicker/DateTimePicker.sx.ts +0 -30
  68. package/src/components/DateTimePicker/DateTimePicker.tsx +0 -225
  69. package/src/components/DateTimePicker/DateTimePicker.types.ts +0 -10
  70. package/src/components/DateTimePicker/index.ts +0 -9
  71. package/src/components/Drawer/Drawer.stories.tsx +0 -270
  72. package/src/components/Drawer/Drawer.sx.ts +0 -106
  73. package/src/components/Drawer/Drawer.tsx +0 -214
  74. package/src/components/Drawer/DrawerContext.ts +0 -26
  75. package/src/components/Drawer/DrawerItem.tsx +0 -110
  76. package/src/components/Drawer/index.ts +0 -10
  77. package/src/components/Flyout/Flyout.stories.tsx +0 -282
  78. package/src/components/Flyout/Flyout.tsx +0 -122
  79. package/src/components/Flyout/index.ts +0 -1
  80. package/src/components/Gallery/Gallery.definition.tsx +0 -37
  81. package/src/components/Gallery/Gallery.stories.tsx +0 -82
  82. package/src/components/Gallery/Gallery.tsx +0 -118
  83. package/src/components/Gallery/GalleryLightbox.tsx +0 -170
  84. package/src/components/Gallery/GalleryMain.tsx +0 -84
  85. package/src/components/Gallery/GalleryThumbnails.tsx +0 -106
  86. package/src/components/Gallery/index.ts +0 -1
  87. package/src/components/Icon/Icon.stories.tsx +0 -121
  88. package/src/components/Icon/Icon.tsx +0 -175
  89. package/src/components/Icon/index.ts +0 -2
  90. package/src/components/Input/Input.definitions.ts +0 -324
  91. package/src/components/Input/Input.helpers.ts +0 -49
  92. package/src/components/Input/Input.stories.tsx +0 -499
  93. package/src/components/Input/Input.sx.ts +0 -42
  94. package/src/components/Input/Input.tsx +0 -141
  95. package/src/components/Input/Input.types.ts +0 -10
  96. package/src/components/Input/index.ts +0 -9
  97. package/src/components/InputGroup/InputGroup.definitions.ts +0 -158
  98. package/src/components/InputGroup/InputGroup.stories.tsx +0 -267
  99. package/src/components/InputGroup/InputGroup.tsx +0 -179
  100. package/src/components/InputGroup/index.ts +0 -1
  101. package/src/components/MenuButton/MenuButton.stories.tsx +0 -197
  102. package/src/components/MenuButton/MenuButton.tsx +0 -100
  103. package/src/components/MenuButton/index.ts +0 -1
  104. package/src/components/Modal/Modal.stories.tsx +0 -721
  105. package/src/components/Modal/Modal.tsx +0 -355
  106. package/src/components/Modal/ModalBody.tsx +0 -16
  107. package/src/components/Modal/ModalFooter.tsx +0 -71
  108. package/src/components/Modal/ModalHeader.tsx +0 -18
  109. package/src/components/Modal/index.ts +0 -6
  110. package/src/components/PageLoader/PageLoader.stories.tsx +0 -217
  111. package/src/components/PageLoader/PageLoader.tsx +0 -96
  112. package/src/components/PageLoader/index.ts +0 -2
  113. package/src/components/ScrollTopButton/ScrollTopButton.stories.tsx +0 -158
  114. package/src/components/ScrollTopButton/ScrollTopButton.tsx +0 -135
  115. package/src/components/ScrollTopButton/index.ts +0 -8
  116. package/src/components/ScrollTopButton/scrollToTop.ts +0 -37
  117. package/src/components/Select/Select.definitions.ts +0 -602
  118. package/src/components/Select/Select.helpers.ts +0 -71
  119. package/src/components/Select/Select.stories.tsx +0 -687
  120. package/src/components/Select/Select.sx.ts +0 -14
  121. package/src/components/Select/Select.tsx +0 -429
  122. package/src/components/Select/Select.types.ts +0 -15
  123. package/src/components/Select/_parts/SelectMenuItem.tsx +0 -40
  124. package/src/components/Select/_parts/SelectSearchHeader.tsx +0 -51
  125. package/src/components/Select/_parts/SelectValue.tsx +0 -96
  126. package/src/components/Select/index.ts +0 -14
  127. package/src/components/Stat/Stat.stories.tsx +0 -85
  128. package/src/components/Stat/Stat.tsx +0 -117
  129. package/src/components/Stat/index.ts +0 -2
  130. package/src/components/StatusMessage/StatusMessage.stories.tsx +0 -130
  131. package/src/components/StatusMessage/StatusMessage.tsx +0 -162
  132. package/src/components/StatusMessage/index.ts +0 -2
  133. package/src/components/Stepper/Step.tsx +0 -21
  134. package/src/components/Stepper/Stepper.definition.ts +0 -75
  135. package/src/components/Stepper/Stepper.stories.tsx +0 -122
  136. package/src/components/Stepper/Stepper.tsx +0 -75
  137. package/src/components/Stepper/index.ts +0 -2
  138. package/src/components/Table/EmptyTable.png +0 -0
  139. package/src/components/Table/Table.definition.ts +0 -580
  140. package/src/components/Table/Table.stories.tsx +0 -853
  141. package/src/components/Table/Table.tsx +0 -495
  142. package/src/components/Table/data.ts +0 -134
  143. package/src/components/Table/exportsUtils.ts +0 -195
  144. package/src/components/Table/index.ts +0 -3
  145. package/src/components/Table/types.ts +0 -34
  146. package/src/components/Tabs/Tab.definition.ts +0 -53
  147. package/src/components/Tabs/Tab.tsx +0 -19
  148. package/src/components/Tabs/Tabs.stories.tsx +0 -118
  149. package/src/components/Tabs/Tabs.tsx +0 -99
  150. package/src/components/Tabs/_tabUtils.tsx +0 -4
  151. package/src/components/Tabs/index.ts +0 -2
  152. package/src/components/Timeline/Timeline.definition.ts +0 -43
  153. package/src/components/Timeline/Timeline.stories.tsx +0 -108
  154. package/src/components/Timeline/Timeline.tsx +0 -49
  155. package/src/components/Timeline/TimelineItem.tsx +0 -31
  156. package/src/components/Timeline/index.ts +0 -2
  157. package/src/components/Tooltip/Tooltip.stories.tsx +0 -129
  158. package/src/components/Tooltip/Tooltip.tsx +0 -58
  159. package/src/components/Tooltip/index.ts +0 -1
  160. package/src/components/_shared/formField.sx.ts +0 -118
  161. package/src/components/_shared/resolvePreset.ts +0 -35
  162. package/src/hooks/ClipBoard/ClipBoard.stories.tsx +0 -168
  163. package/src/hooks/ClipBoard/ClipBoard.tsx +0 -131
  164. package/src/hooks/ClipBoard/ClipboardUnifiedDemo.tsx +0 -111
  165. package/src/hooks/ClipBoard/index.ts +0 -1
  166. package/src/hooks/Wizard/Wizard.stories.tsx +0 -301
  167. package/src/hooks/Wizard/WizardContext.tsx +0 -166
  168. package/src/hooks/Wizard/index.ts +0 -6
  169. package/src/hooks/Wizard/useWizard.ts +0 -13
  170. package/src/index.ts +0 -17
  171. package/src/mui.ts +0 -44
  172. package/src/styles.css +0 -3
  173. package/src/theme/componentStyles.ts +0 -47
  174. package/src/theme/tokens.ts +0 -43
  175. package/tailwind.config.js +0 -10
  176. package/tsconfig.json +0 -48
  177. package/tsup.config.js +0 -41
  178. package/vite.config.js +0 -132
  179. package/vitest.config.ts +0 -35
  180. /package/{dist/Button-C17mExpd.cjs → Button-C17mExpd.cjs} +0 -0
  181. /package/{dist/Button-C17mExpd.cjs.map → Button-C17mExpd.cjs.map} +0 -0
  182. /package/{dist/Button-UkkP-bNw.js → Button-UkkP-bNw.js} +0 -0
  183. /package/{dist/Button-UkkP-bNw.js.map → Button-UkkP-bNw.js.map} +0 -0
  184. /package/{Readme.md → README.md} +0 -0
  185. /package/{dist/components → components}/ActionMenu/ActionMenu.cjs +0 -0
  186. /package/{dist/components → components}/ActionMenu/ActionMenu.cjs.map +0 -0
  187. /package/{dist/components → components}/ActionMenu/ActionMenu.d.ts +0 -0
  188. /package/{dist/components → components}/ActionMenu/ActionMenu.js +0 -0
  189. /package/{dist/components → components}/ActionMenu/ActionMenu.js.map +0 -0
  190. /package/{dist/components → components}/ActionMenu/index.d.ts +0 -0
  191. /package/{dist/components → components}/ActionMenu.d.ts +0 -0
  192. /package/{dist/components → components}/AppBar/AppBar.cjs +0 -0
  193. /package/{dist/components → components}/AppBar/AppBar.cjs.map +0 -0
  194. /package/{dist/components → components}/AppBar/AppBar.d.ts +0 -0
  195. /package/{dist/components → components}/AppBar/AppBar.js +0 -0
  196. /package/{dist/components → components}/AppBar/AppBar.js.map +0 -0
  197. /package/{dist/components → components}/AppBar/AppBar.sx.d.ts +0 -0
  198. /package/{dist/components → components}/AppBar/AppBarBrand.d.ts +0 -0
  199. /package/{dist/components → components}/AppBar/AppBarContext.d.ts +0 -0
  200. /package/{dist/components → components}/AppBar/AppBarMenuToggle.d.ts +0 -0
  201. /package/{dist/components → components}/AppBar/AppBarUserMenu.d.ts +0 -0
  202. /package/{dist/components → components}/AppBar/index.d.ts +0 -0
  203. /package/{dist/components → components}/AppBar.d.ts +0 -0
  204. /package/{dist/components → components}/Autocomplete/Autocomplete.cjs +0 -0
  205. /package/{dist/components → components}/Autocomplete/Autocomplete.cjs.map +0 -0
  206. /package/{dist/components → components}/Autocomplete/Autocomplete.d.ts +0 -0
  207. /package/{dist/components → components}/Autocomplete/Autocomplete.definitions.d.ts +0 -0
  208. /package/{dist/components → components}/Autocomplete/Autocomplete.helpers.d.ts +0 -0
  209. /package/{dist/components → components}/Autocomplete/Autocomplete.js +0 -0
  210. /package/{dist/components → components}/Autocomplete/Autocomplete.js.map +0 -0
  211. /package/{dist/components → components}/Autocomplete/Autocomplete.sx.d.ts +0 -0
  212. /package/{dist/components → components}/Autocomplete/Autocomplete.types.d.ts +0 -0
  213. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteChips.d.ts +0 -0
  214. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteLoader.d.ts +0 -0
  215. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteOption.d.ts +0 -0
  216. /package/{dist/components → components}/Autocomplete/index.d.ts +0 -0
  217. /package/{dist/components → components}/Autocomplete.d.ts +0 -0
  218. /package/{dist/components → components}/Avatar/Avatar.cjs +0 -0
  219. /package/{dist/components → components}/Avatar/Avatar.cjs.map +0 -0
  220. /package/{dist/components → components}/Avatar/Avatar.d.ts +0 -0
  221. /package/{dist/components → components}/Avatar/Avatar.definitions.d.ts +0 -0
  222. /package/{dist/components → components}/Avatar/Avatar.js +0 -0
  223. /package/{dist/components → components}/Avatar/Avatar.js.map +0 -0
  224. /package/{dist/components → components}/Avatar/index.d.ts +0 -0
  225. /package/{dist/components → components}/Avatar.d.ts +0 -0
  226. /package/{dist/components → components}/Button/Button.cjs +0 -0
  227. /package/{dist/components → components}/Button/Button.cjs.map +0 -0
  228. /package/{dist/components → components}/Button/Button.d.ts +0 -0
  229. /package/{dist/components → components}/Button/Button.definition.d.ts +0 -0
  230. /package/{dist/components → components}/Button/Button.js +0 -0
  231. /package/{dist/components → components}/Button/Button.js.map +0 -0
  232. /package/{dist/components → components}/Button/index.d.ts +0 -0
  233. /package/{dist/components → components}/Button.d.ts +0 -0
  234. /package/{dist/components → components}/Card/Card.cjs +0 -0
  235. /package/{dist/components → components}/Card/Card.cjs.map +0 -0
  236. /package/{dist/components → components}/Card/Card.d.ts +0 -0
  237. /package/{dist/components → components}/Card/Card.definition.d.ts +0 -0
  238. /package/{dist/components → components}/Card/Card.js +0 -0
  239. /package/{dist/components → components}/Card/Card.js.map +0 -0
  240. /package/{dist/components → components}/Card/Card.sx.d.ts +0 -0
  241. /package/{dist/components → components}/Card/index.d.ts +0 -0
  242. /package/{dist/components → components}/Card.d.ts +0 -0
  243. /package/{dist/components → components}/Chip/Chip.cjs +0 -0
  244. /package/{dist/components → components}/Chip/Chip.cjs.map +0 -0
  245. /package/{dist/components → components}/Chip/Chip.d.ts +0 -0
  246. /package/{dist/components → components}/Chip/Chip.definitions.d.ts +0 -0
  247. /package/{dist/components → components}/Chip/Chip.js +0 -0
  248. /package/{dist/components → components}/Chip/Chip.js.map +0 -0
  249. /package/{dist/components → components}/Chip/index.d.ts +0 -0
  250. /package/{dist/components → components}/Chip.d.ts +0 -0
  251. /package/{dist/components → components}/Column/Column.cjs +0 -0
  252. /package/{dist/components → components}/Column/Column.cjs.map +0 -0
  253. /package/{dist/components → components}/Column/Column.d.ts +0 -0
  254. /package/{dist/components → components}/Column/Column.js +0 -0
  255. /package/{dist/components → components}/Column/Column.js.map +0 -0
  256. /package/{dist/components → components}/Column/index.d.ts +0 -0
  257. /package/{dist/components → components}/Column.d.ts +0 -0
  258. /package/{dist/components → components}/DatePicker/DatePicker.cjs +0 -0
  259. /package/{dist/components → components}/DatePicker/DatePicker.cjs.map +0 -0
  260. /package/{dist/components → components}/DatePicker/DatePicker.d.ts +0 -0
  261. /package/{dist/components → components}/DatePicker/DatePicker.definitions.d.ts +0 -0
  262. /package/{dist/components → components}/DatePicker/DatePicker.helpers.d.ts +0 -0
  263. /package/{dist/components → components}/DatePicker/DatePicker.js +0 -0
  264. /package/{dist/components → components}/DatePicker/DatePicker.js.map +0 -0
  265. /package/{dist/components → components}/DatePicker/DatePicker.sx.d.ts +0 -0
  266. /package/{dist/components → components}/DatePicker/DatePicker.types.d.ts +0 -0
  267. /package/{dist/components → components}/DatePicker/index.d.ts +0 -0
  268. /package/{dist/components → components}/DatePicker.d.ts +0 -0
  269. /package/{dist/components → components}/DateRangePicker/DateRangePicker.cjs +0 -0
  270. /package/{dist/components → components}/DateRangePicker/DateRangePicker.cjs.map +0 -0
  271. /package/{dist/components → components}/DateRangePicker/DateRangePicker.d.ts +0 -0
  272. /package/{dist/components → components}/DateRangePicker/DateRangePicker.definitions.d.ts +0 -0
  273. /package/{dist/components → components}/DateRangePicker/DateRangePicker.js +0 -0
  274. /package/{dist/components → components}/DateRangePicker/DateRangePicker.js.map +0 -0
  275. /package/{dist/components → components}/DateRangePicker/index.d.ts +0 -0
  276. /package/{dist/components → components}/DateRangePicker.d.ts +0 -0
  277. /package/{dist/components → components}/DateTimePicker/DateTimePicker.cjs +0 -0
  278. /package/{dist/components → components}/DateTimePicker/DateTimePicker.cjs.map +0 -0
  279. /package/{dist/components → components}/DateTimePicker/DateTimePicker.d.ts +0 -0
  280. /package/{dist/components → components}/DateTimePicker/DateTimePicker.definitions.d.ts +0 -0
  281. /package/{dist/components → components}/DateTimePicker/DateTimePicker.helpers.d.ts +0 -0
  282. /package/{dist/components → components}/DateTimePicker/DateTimePicker.js +0 -0
  283. /package/{dist/components → components}/DateTimePicker/DateTimePicker.js.map +0 -0
  284. /package/{dist/components → components}/DateTimePicker/DateTimePicker.sx.d.ts +0 -0
  285. /package/{dist/components → components}/DateTimePicker/DateTimePicker.types.d.ts +0 -0
  286. /package/{dist/components → components}/DateTimePicker/index.d.ts +0 -0
  287. /package/{dist/components → components}/DateTimePicker.d.ts +0 -0
  288. /package/{dist/components → components}/Drawer/Drawer.cjs +0 -0
  289. /package/{dist/components → components}/Drawer/Drawer.cjs.map +0 -0
  290. /package/{dist/components → components}/Drawer/Drawer.d.ts +0 -0
  291. /package/{dist/components → components}/Drawer/Drawer.js +0 -0
  292. /package/{dist/components → components}/Drawer/Drawer.js.map +0 -0
  293. /package/{dist/components → components}/Drawer/Drawer.sx.d.ts +0 -0
  294. /package/{dist/components → components}/Drawer/DrawerContext.d.ts +0 -0
  295. /package/{dist/components → components}/Drawer/DrawerItem.d.ts +0 -0
  296. /package/{dist/components → components}/Drawer/index.d.ts +0 -0
  297. /package/{dist/components → components}/Drawer.d.ts +0 -0
  298. /package/{dist/components → components}/Flyout/Flyout.cjs +0 -0
  299. /package/{dist/components → components}/Flyout/Flyout.cjs.map +0 -0
  300. /package/{dist/components → components}/Flyout/Flyout.d.ts +0 -0
  301. /package/{dist/components → components}/Flyout/Flyout.js +0 -0
  302. /package/{dist/components → components}/Flyout/Flyout.js.map +0 -0
  303. /package/{dist/components → components}/Flyout/index.d.ts +0 -0
  304. /package/{dist/components → components}/Flyout.d.ts +0 -0
  305. /package/{dist/components → components}/Gallery/Gallery.cjs +0 -0
  306. /package/{dist/components → components}/Gallery/Gallery.cjs.map +0 -0
  307. /package/{dist/components → components}/Gallery/Gallery.d.ts +0 -0
  308. /package/{dist/components → components}/Gallery/Gallery.definition.d.ts +0 -0
  309. /package/{dist/components → components}/Gallery/Gallery.js +0 -0
  310. /package/{dist/components → components}/Gallery/Gallery.js.map +0 -0
  311. /package/{dist/components → components}/Gallery/GalleryLightbox.d.ts +0 -0
  312. /package/{dist/components → components}/Gallery/GalleryMain.d.ts +0 -0
  313. /package/{dist/components → components}/Gallery/GalleryThumbnails.d.ts +0 -0
  314. /package/{dist/components → components}/Gallery/index.d.ts +0 -0
  315. /package/{dist/components → components}/Gallery.d.ts +0 -0
  316. /package/{dist/components → components}/Icon/Icon.cjs +0 -0
  317. /package/{dist/components → components}/Icon/Icon.cjs.map +0 -0
  318. /package/{dist/components → components}/Icon/Icon.d.ts +0 -0
  319. /package/{dist/components → components}/Icon/Icon.js +0 -0
  320. /package/{dist/components → components}/Icon/Icon.js.map +0 -0
  321. /package/{dist/components → components}/Icon/index.d.ts +0 -0
  322. /package/{dist/components → components}/Icon.d.ts +0 -0
  323. /package/{dist/components → components}/Input/Input.cjs +0 -0
  324. /package/{dist/components → components}/Input/Input.cjs.map +0 -0
  325. /package/{dist/components → components}/Input/Input.d.ts +0 -0
  326. /package/{dist/components → components}/Input/Input.definitions.d.ts +0 -0
  327. /package/{dist/components → components}/Input/Input.helpers.d.ts +0 -0
  328. /package/{dist/components → components}/Input/Input.js +0 -0
  329. /package/{dist/components → components}/Input/Input.js.map +0 -0
  330. /package/{dist/components → components}/Input/Input.sx.d.ts +0 -0
  331. /package/{dist/components → components}/Input/Input.types.d.ts +0 -0
  332. /package/{dist/components → components}/Input/index.d.ts +0 -0
  333. /package/{dist/components → components}/Input.d.ts +0 -0
  334. /package/{dist/components → components}/InputGroup/InputGroup.cjs +0 -0
  335. /package/{dist/components → components}/InputGroup/InputGroup.cjs.map +0 -0
  336. /package/{dist/components → components}/InputGroup/InputGroup.d.ts +0 -0
  337. /package/{dist/components → components}/InputGroup/InputGroup.definitions.d.ts +0 -0
  338. /package/{dist/components → components}/InputGroup/InputGroup.js +0 -0
  339. /package/{dist/components → components}/InputGroup/InputGroup.js.map +0 -0
  340. /package/{dist/components → components}/InputGroup/index.d.ts +0 -0
  341. /package/{dist/components → components}/InputGroup.d.ts +0 -0
  342. /package/{dist/components → components}/MenuButton/MenuButton.cjs +0 -0
  343. /package/{dist/components → components}/MenuButton/MenuButton.cjs.map +0 -0
  344. /package/{dist/components → components}/MenuButton/MenuButton.d.ts +0 -0
  345. /package/{dist/components → components}/MenuButton/MenuButton.js +0 -0
  346. /package/{dist/components → components}/MenuButton/MenuButton.js.map +0 -0
  347. /package/{dist/components → components}/MenuButton/index.d.ts +0 -0
  348. /package/{dist/components → components}/MenuButton.d.ts +0 -0
  349. /package/{dist/components → components}/Modal/Modal.cjs +0 -0
  350. /package/{dist/components → components}/Modal/Modal.cjs.map +0 -0
  351. /package/{dist/components → components}/Modal/Modal.d.ts +0 -0
  352. /package/{dist/components → components}/Modal/Modal.js +0 -0
  353. /package/{dist/components → components}/Modal/Modal.js.map +0 -0
  354. /package/{dist/components → components}/Modal/ModalBody.d.ts +0 -0
  355. /package/{dist/components → components}/Modal/ModalFooter.d.ts +0 -0
  356. /package/{dist/components → components}/Modal/ModalHeader.d.ts +0 -0
  357. /package/{dist/components → components}/Modal/index.d.ts +0 -0
  358. /package/{dist/components → components}/Modal.d.ts +0 -0
  359. /package/{dist/components → components}/PageLoader/PageLoader.cjs +0 -0
  360. /package/{dist/components → components}/PageLoader/PageLoader.cjs.map +0 -0
  361. /package/{dist/components → components}/PageLoader/PageLoader.d.ts +0 -0
  362. /package/{dist/components → components}/PageLoader/PageLoader.js +0 -0
  363. /package/{dist/components → components}/PageLoader/PageLoader.js.map +0 -0
  364. /package/{dist/components → components}/PageLoader/index.d.ts +0 -0
  365. /package/{dist/components → components}/PageLoader.d.ts +0 -0
  366. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.cjs +0 -0
  367. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.cjs.map +0 -0
  368. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.d.ts +0 -0
  369. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.js +0 -0
  370. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.js.map +0 -0
  371. /package/{dist/components → components}/ScrollTopButton/index.d.ts +0 -0
  372. /package/{dist/components → components}/ScrollTopButton/scrollToTop.d.ts +0 -0
  373. /package/{dist/components → components}/ScrollTopButton.d.ts +0 -0
  374. /package/{dist/components → components}/Select/Select.cjs +0 -0
  375. /package/{dist/components → components}/Select/Select.cjs.map +0 -0
  376. /package/{dist/components → components}/Select/Select.d.ts +0 -0
  377. /package/{dist/components → components}/Select/Select.definitions.d.ts +0 -0
  378. /package/{dist/components → components}/Select/Select.helpers.d.ts +0 -0
  379. /package/{dist/components → components}/Select/Select.js +0 -0
  380. /package/{dist/components → components}/Select/Select.js.map +0 -0
  381. /package/{dist/components → components}/Select/Select.sx.d.ts +0 -0
  382. /package/{dist/components → components}/Select/Select.types.d.ts +0 -0
  383. /package/{dist/components → components}/Select/_parts/SelectMenuItem.d.ts +0 -0
  384. /package/{dist/components → components}/Select/_parts/SelectSearchHeader.d.ts +0 -0
  385. /package/{dist/components → components}/Select/_parts/SelectValue.d.ts +0 -0
  386. /package/{dist/components → components}/Select/index.d.ts +0 -0
  387. /package/{dist/components → components}/Select.d.ts +0 -0
  388. /package/{dist/components → components}/Stat/Stat.cjs +0 -0
  389. /package/{dist/components → components}/Stat/Stat.cjs.map +0 -0
  390. /package/{dist/components → components}/Stat/Stat.d.ts +0 -0
  391. /package/{dist/components → components}/Stat/Stat.js +0 -0
  392. /package/{dist/components → components}/Stat/Stat.js.map +0 -0
  393. /package/{dist/components → components}/Stat/index.d.ts +0 -0
  394. /package/{dist/components → components}/Stat.d.ts +0 -0
  395. /package/{dist/components → components}/StatusMessage/StatusMessage.cjs +0 -0
  396. /package/{dist/components → components}/StatusMessage/StatusMessage.cjs.map +0 -0
  397. /package/{dist/components → components}/StatusMessage/StatusMessage.d.ts +0 -0
  398. /package/{dist/components → components}/StatusMessage/StatusMessage.js +0 -0
  399. /package/{dist/components → components}/StatusMessage/StatusMessage.js.map +0 -0
  400. /package/{dist/components → components}/StatusMessage/index.d.ts +0 -0
  401. /package/{dist/components → components}/StatusMessage.d.ts +0 -0
  402. /package/{dist/components → components}/Stepper/Step.d.ts +0 -0
  403. /package/{dist/components → components}/Stepper/Stepper.cjs +0 -0
  404. /package/{dist/components → components}/Stepper/Stepper.cjs.map +0 -0
  405. /package/{dist/components → components}/Stepper/Stepper.d.ts +0 -0
  406. /package/{dist/components → components}/Stepper/Stepper.definition.d.ts +0 -0
  407. /package/{dist/components → components}/Stepper/Stepper.js +0 -0
  408. /package/{dist/components → components}/Stepper/Stepper.js.map +0 -0
  409. /package/{dist/components → components}/Stepper/index.d.ts +0 -0
  410. /package/{dist/components → components}/Stepper.d.ts +0 -0
  411. /package/{dist/components → components}/Table/Table.cjs +0 -0
  412. /package/{dist/components → components}/Table/Table.cjs.map +0 -0
  413. /package/{dist/components → components}/Table/Table.d.ts +0 -0
  414. /package/{dist/components → components}/Table/Table.definition.d.ts +0 -0
  415. /package/{dist/components → components}/Table/Table.js +0 -0
  416. /package/{dist/components → components}/Table/Table.js.map +0 -0
  417. /package/{dist/components → components}/Table/data.d.ts +0 -0
  418. /package/{dist/components → components}/Table/exportsUtils.d.ts +0 -0
  419. /package/{dist/components → components}/Table/index.d.ts +0 -0
  420. /package/{dist/components → components}/Table/types.d.ts +0 -0
  421. /package/{dist/components → components}/Table.d.ts +0 -0
  422. /package/{dist/components → components}/Tabs/Tab.d.ts +0 -0
  423. /package/{dist/components → components}/Tabs/Tab.definition.d.ts +0 -0
  424. /package/{dist/components → components}/Tabs/Tabs.cjs +0 -0
  425. /package/{dist/components → components}/Tabs/Tabs.cjs.map +0 -0
  426. /package/{dist/components → components}/Tabs/Tabs.d.ts +0 -0
  427. /package/{dist/components → components}/Tabs/Tabs.js +0 -0
  428. /package/{dist/components → components}/Tabs/Tabs.js.map +0 -0
  429. /package/{dist/components → components}/Tabs/_tabUtils.d.ts +0 -0
  430. /package/{dist/components → components}/Tabs/index.d.ts +0 -0
  431. /package/{dist/components → components}/Tabs.d.ts +0 -0
  432. /package/{dist/components → components}/Timeline/Timeline.cjs +0 -0
  433. /package/{dist/components → components}/Timeline/Timeline.cjs.map +0 -0
  434. /package/{dist/components → components}/Timeline/Timeline.d.ts +0 -0
  435. /package/{dist/components → components}/Timeline/Timeline.definition.d.ts +0 -0
  436. /package/{dist/components → components}/Timeline/Timeline.js +0 -0
  437. /package/{dist/components → components}/Timeline/Timeline.js.map +0 -0
  438. /package/{dist/components → components}/Timeline/TimelineItem.d.ts +0 -0
  439. /package/{dist/components → components}/Timeline/index.d.ts +0 -0
  440. /package/{dist/components → components}/Timeline.d.ts +0 -0
  441. /package/{dist/components → components}/Tooltip/Tooltip.cjs +0 -0
  442. /package/{dist/components → components}/Tooltip/Tooltip.cjs.map +0 -0
  443. /package/{dist/components → components}/Tooltip/Tooltip.d.ts +0 -0
  444. /package/{dist/components → components}/Tooltip/Tooltip.js +0 -0
  445. /package/{dist/components → components}/Tooltip/Tooltip.js.map +0 -0
  446. /package/{dist/components → components}/Tooltip/index.d.ts +0 -0
  447. /package/{dist/components → components}/Tooltip.d.ts +0 -0
  448. /package/{dist/components → components}/_shared/formField.sx.d.ts +0 -0
  449. /package/{dist/components → components}/_shared/resolvePreset.d.ts +0 -0
  450. /package/{dist/formField.sx-CQ1mbk9M.cjs → formField.sx-CQ1mbk9M.cjs} +0 -0
  451. /package/{dist/formField.sx-CQ1mbk9M.cjs.map → formField.sx-CQ1mbk9M.cjs.map} +0 -0
  452. /package/{dist/formField.sx-DfVbMe0V.js → formField.sx-DfVbMe0V.js} +0 -0
  453. /package/{dist/formField.sx-DfVbMe0V.js.map → formField.sx-DfVbMe0V.js.map} +0 -0
  454. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.cjs +0 -0
  455. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.cjs.map +0 -0
  456. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.d.ts +0 -0
  457. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.js +0 -0
  458. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.js.map +0 -0
  459. /package/{dist/hooks → hooks}/ClipBoard/ClipboardUnifiedDemo.d.ts +0 -0
  460. /package/{dist/hooks → hooks}/ClipBoard/index.d.ts +0 -0
  461. /package/{dist/hooks → hooks}/ClipBoard.d.ts +0 -0
  462. /package/{dist/hooks → hooks}/Wizard/Wizard.cjs +0 -0
  463. /package/{dist/hooks → hooks}/Wizard/Wizard.cjs.map +0 -0
  464. /package/{dist/hooks → hooks}/Wizard/Wizard.js +0 -0
  465. /package/{dist/hooks → hooks}/Wizard/Wizard.js.map +0 -0
  466. /package/{dist/hooks → hooks}/Wizard/WizardContext.d.ts +0 -0
  467. /package/{dist/hooks → hooks}/Wizard/index.d.ts +0 -0
  468. /package/{dist/hooks → hooks}/Wizard/useWizard.d.ts +0 -0
  469. /package/{dist/hooks → hooks}/Wizard.d.ts +0 -0
  470. /package/{dist/index.cjs → index.cjs} +0 -0
  471. /package/{dist/index.cjs.map → index.cjs.map} +0 -0
  472. /package/{dist/index.d.ts → index.d.ts} +0 -0
  473. /package/{dist/index.js → index.js} +0 -0
  474. /package/{dist/index.js.map → index.js.map} +0 -0
  475. /package/{dist/mui.d.ts → mui.d.ts} +0 -0
  476. /package/{dist/resolvePreset-B-IB0ehH.js → resolvePreset-B-IB0ehH.js} +0 -0
  477. /package/{dist/resolvePreset-B-IB0ehH.js.map → resolvePreset-B-IB0ehH.js.map} +0 -0
  478. /package/{dist/resolvePreset-CT3kU-K2.cjs → resolvePreset-CT3kU-K2.cjs} +0 -0
  479. /package/{dist/resolvePreset-CT3kU-K2.cjs.map → resolvePreset-CT3kU-K2.cjs.map} +0 -0
  480. /package/{dist/styles.css → styles.css} +0 -0
  481. /package/{dist/theme → theme}/componentStyles.d.ts +0 -0
  482. /package/{dist/theme → theme}/tokens.d.ts +0 -0
  483. /package/{dist/useWizard-CWdIxZzX.cjs → useWizard-CWdIxZzX.cjs} +0 -0
  484. /package/{dist/useWizard-CWdIxZzX.cjs.map → useWizard-CWdIxZzX.cjs.map} +0 -0
  485. /package/{dist/useWizard-CWq--C3o.js → useWizard-CWq--C3o.js} +0 -0
  486. /package/{dist/useWizard-CWq--C3o.js.map → useWizard-CWq--C3o.js.map} +0 -0
@@ -1,272 +0,0 @@
1
- import React, { useState } from 'react';
2
- import type { Meta, StoryObj } from '@storybook/react';
3
- import { Box, Typography, Button, IconButton, Tooltip } from '@mui/material';
4
- import NotificationsIcon from '@mui/icons-material/Notifications';
5
- import HelpOutlineIcon from '@mui/icons-material/HelpOutline';
6
- import PersonIcon from '@mui/icons-material/Person';
7
- import SettingsIcon from '@mui/icons-material/Settings';
8
- import LogoutIcon from '@mui/icons-material/Logout';
9
- import DashboardIcon from '@mui/icons-material/Dashboard';
10
-
11
- import { AppBar } from './AppBar';
12
- import { AppBarBrand } from './AppBarBrand';
13
- import { AppBarMenuToggle } from './AppBarMenuToggle';
14
- import { AppBarUserMenu } from './AppBarUserMenu';
15
-
16
- const meta: Meta<typeof AppBar> = {
17
- title: 'Components/AppBar',
18
- component: AppBar,
19
- tags: ['autodocs'],
20
- parameters: {
21
- layout: 'fullscreen',
22
- docs: {
23
- description: {
24
- component:
25
- 'AppBar (header superior) pensado como shell compositivo. El consumer arma su contenido con los sub-componentes `AppBarBrand`, `AppBarMenuToggle` y `AppBarUserMenu`, además de cualquier acción custom. Reemplaza el header de Metronic.',
26
- },
27
- },
28
- },
29
- argTypes: {
30
- position: {
31
- control: 'select',
32
- options: ['fixed', 'sticky', 'static', 'absolute', 'relative'],
33
- },
34
- color: {
35
- control: 'select',
36
- options: ['default', 'primary', 'secondary', 'transparent', 'inherit'],
37
- },
38
- elevation: { control: { type: 'number', min: 0, max: 24, step: 1 } },
39
- height: { control: { type: 'number', min: 48, max: 96, step: 4 } },
40
- },
41
- };
42
-
43
- export default meta;
44
- type Story = StoryObj<typeof AppBar>;
45
-
46
- // ── Helpers ──────────────────────────────────────────────────────────────
47
-
48
- const SampleLogo = () => (
49
- <Box
50
- sx={{
51
- width: 32,
52
- height: 32,
53
- borderRadius: 1,
54
- display: 'flex',
55
- alignItems: 'center',
56
- justifyContent: 'center',
57
- backgroundColor: 'primary.main',
58
- color: 'primary.contrastText',
59
- fontWeight: 700,
60
- fontSize: 14,
61
- }}
62
- >
63
- F
64
- </Box>
65
- );
66
-
67
- const SampleBody = () => (
68
- <Box sx={{ p: 3 }}>
69
- <Typography variant="h5" gutterBottom>
70
- Contenido de la página
71
- </Typography>
72
- <Typography variant="body2" color="text.secondary" sx={{ mb: 2 }}>
73
- Este bloque sólo demuestra el layout bajo el AppBar.
74
- </Typography>
75
- {Array.from({ length: 20 }).map((_, idx) => (
76
- <Typography key={idx} variant="body2" sx={{ mb: 1 }}>
77
- Línea {idx + 1} — contenido de ejemplo para scroll sticky.
78
- </Typography>
79
- ))}
80
- </Box>
81
- );
82
-
83
- const userMenuItems = [
84
- {
85
- label: 'Mi perfil',
86
- icon: <PersonIcon fontSize="small" />,
87
- onClick: () => console.log('profile'),
88
- },
89
- {
90
- label: 'Configuración',
91
- icon: <SettingsIcon fontSize="small" />,
92
- onClick: () => console.log('settings'),
93
- },
94
- {
95
- label: 'Cerrar sesión',
96
- icon: <LogoutIcon fontSize="small" />,
97
- onClick: () => console.log('logout'),
98
- danger: true,
99
- dividerBefore: true,
100
- },
101
- ];
102
-
103
- // ── Stories ──────────────────────────────────────────────────────────────
104
-
105
- export const BasicHeader: Story = {
106
- args: {
107
- position: 'sticky',
108
- color: 'default',
109
- elevation: 1,
110
- height: 64,
111
- },
112
- render: (args) => (
113
- <>
114
- <AppBar {...args}>
115
- <AppBarBrand
116
- logo={<SampleLogo />}
117
- title="Afiliaciones"
118
- subtitle="Panel administrativo"
119
- />
120
- </AppBar>
121
- <SampleBody />
122
- </>
123
- ),
124
- };
125
-
126
- export const WithMenuToggle: Story = {
127
- render: (args) => {
128
- const [open, setOpen] = useState(false);
129
- return (
130
- <>
131
- <AppBar
132
- {...args}
133
- onMenuToggle={() => setOpen((value) => !value)}
134
- menuOpen={open}
135
- >
136
- <AppBarMenuToggle />
137
- <AppBarBrand logo={<SampleLogo />} title="Afiliaciones" />
138
- </AppBar>
139
- <Box sx={{ p: 3 }}>
140
- <Typography variant="body2">
141
- Drawer {open ? 'abierto' : 'cerrado'} — el icono cambia según el
142
- estado. Click en el botón hamburguesa para alternar.
143
- </Typography>
144
- </Box>
145
- </>
146
- );
147
- },
148
- };
149
-
150
- export const WithUserMenu: Story = {
151
- render: (args) => (
152
- <>
153
- <AppBar {...args}>
154
- <AppBarBrand logo={<SampleLogo />} title="Afiliaciones" />
155
- <Box sx={{ flex: 1 }} />
156
- <AppBarUserMenu
157
- user={{
158
- name: 'Andrea Pineda',
159
- email: 'andrea@soyfri.com',
160
- }}
161
- items={userMenuItems}
162
- />
163
- </AppBar>
164
- <SampleBody />
165
- </>
166
- ),
167
- };
168
-
169
- export const CompleteDashboardHeader: Story = {
170
- render: (args) => {
171
- const [open, setOpen] = useState(true);
172
- return (
173
- <>
174
- <AppBar
175
- {...args}
176
- onMenuToggle={() => setOpen((value) => !value)}
177
- menuOpen={open}
178
- >
179
- <AppBarMenuToggle />
180
- <AppBarBrand
181
- logo={<SampleLogo />}
182
- title="Afiliaciones"
183
- subtitle="Panel administrativo"
184
- onClick={() => console.log('go home')}
185
- />
186
- <Box sx={{ flex: 1 }} />
187
- <Tooltip title="Notificaciones" arrow>
188
- <IconButton color="inherit">
189
- <NotificationsIcon />
190
- </IconButton>
191
- </Tooltip>
192
- <Tooltip title="Ayuda" arrow>
193
- <IconButton color="inherit">
194
- <HelpOutlineIcon />
195
- </IconButton>
196
- </Tooltip>
197
- <AppBarUserMenu
198
- user={{
199
- name: 'Andrea Pineda',
200
- email: 'andrea@soyfri.com',
201
- }}
202
- items={userMenuItems}
203
- />
204
- </AppBar>
205
- <SampleBody />
206
- </>
207
- );
208
- },
209
- };
210
-
211
- export const TransparentVariant: Story = {
212
- args: {
213
- color: 'transparent',
214
- elevation: 0,
215
- },
216
- render: (args) => (
217
- <Box
218
- sx={{
219
- minHeight: '100vh',
220
- background:
221
- 'linear-gradient(135deg, #f0f4ff 0%, #e6f7ff 50%, #fff5f5 100%)',
222
- }}
223
- >
224
- <AppBar {...args}>
225
- <AppBarBrand logo={<SampleLogo />} title="Afiliaciones" />
226
- <Box sx={{ flex: 1 }} />
227
- <Button variant="contained" color="primary" size="small">
228
- Iniciar sesión
229
- </Button>
230
- </AppBar>
231
- <Box sx={{ p: 3 }}>
232
- <Typography variant="h5">Landing page transparente</Typography>
233
- <Typography variant="body2" color="text.secondary">
234
- Sin sombra, con borde sutil — útil para headers sobre hero sections.
235
- </Typography>
236
- </Box>
237
- </Box>
238
- ),
239
- };
240
-
241
- export const PrimaryColorWithMenu: Story = {
242
- args: {
243
- color: 'primary',
244
- },
245
- render: (args) => {
246
- const [open, setOpen] = useState(false);
247
- return (
248
- <>
249
- <AppBar
250
- {...args}
251
- onMenuToggle={() => setOpen((value) => !value)}
252
- menuOpen={open}
253
- >
254
- <AppBarMenuToggle />
255
- <DashboardIcon sx={{ mr: 1 }} />
256
- <Typography variant="h6" sx={{ fontWeight: 700 }}>
257
- Dashboard
258
- </Typography>
259
- <Box sx={{ flex: 1 }} />
260
- <AppBarUserMenu
261
- user={{
262
- name: 'Andrea Pineda',
263
- email: 'andrea@soyfri.com',
264
- }}
265
- items={userMenuItems}
266
- />
267
- </AppBar>
268
- <SampleBody />
269
- </>
270
- );
271
- },
272
- };
@@ -1,32 +0,0 @@
1
- import type { SxProps, Theme } from '@mui/material/styles';
2
-
3
- export interface BuildAppBarSxArgs {
4
- /** Altura en px. Default: 64. */
5
- height?: number;
6
- /** Color del AppBar (se pasa al MuiAppBar). */
7
- transparent?: boolean;
8
- }
9
-
10
- /**
11
- * sx del root del MuiAppBar. Define altura fija y layout flex del Toolbar
12
- * interno. El color/elevación se dejan a las props nativas de MuiAppBar.
13
- */
14
- export function buildAppBarSx({
15
- height = 64,
16
- transparent = false,
17
- }: BuildAppBarSxArgs): SxProps<Theme> {
18
- return (theme) => ({
19
- minHeight: height,
20
- justifyContent: 'center',
21
- backgroundImage: 'none',
22
- ...(transparent && {
23
- backgroundColor: 'transparent',
24
- boxShadow: 'none',
25
- borderBottom: `1px solid ${theme.palette.divider}`,
26
- }),
27
- '& .MuiToolbar-root': {
28
- minHeight: height,
29
- gap: 1.5,
30
- },
31
- });
32
- }
@@ -1,123 +0,0 @@
1
- import React, { useMemo, type ReactNode } from 'react';
2
- import {
3
- AppBar as MuiAppBar,
4
- Toolbar,
5
- type AppBarProps as MuiAppBarProps,
6
- } from '@mui/material';
7
- import {
8
- useTheme,
9
- type SxProps,
10
- type Theme,
11
- } from '@mui/material/styles';
12
-
13
- import { AppBarContext } from './AppBarContext';
14
- import { buildAppBarSx } from './AppBar.sx';
15
- import { resolvePreset } from '../_shared/resolvePreset';
16
-
17
- export type AppBarPosition = 'fixed' | 'sticky' | 'static' | 'absolute' | 'relative';
18
- export type AppBarColor =
19
- | 'default'
20
- | 'primary'
21
- | 'secondary'
22
- | 'transparent'
23
- | 'inherit';
24
-
25
- export interface AppBarProps {
26
- /** Contenido del AppBar (típicamente sub-componentes + acciones custom). */
27
- children?: ReactNode;
28
- /** Posicionamiento. Default: `'sticky'`. */
29
- position?: AppBarPosition;
30
- /** Color. Default: `'default'`. */
31
- color?: AppBarColor;
32
- /** Nivel de sombra. Default: 1. */
33
- elevation?: number;
34
- /** Altura en px. Default: 64. */
35
- height?: number;
36
- /**
37
- * Handler del botón hamburguesa. Se expone vía AppBarContext para que el
38
- * sub-componente `<AppBarMenuToggle>` lo consuma sin prop drilling.
39
- */
40
- onMenuToggle?: () => void;
41
- /** Estado del drawer asociado (para que el icono del toggle cambie). */
42
- menuOpen?: boolean;
43
- /**
44
- * Nombre del preset de estilo registrado en `theme.styles.AppBar`.
45
- * - `"default"` (o ausente) = estilo built-in del paquete.
46
- */
47
- preset?: string;
48
- /** sx del root (se mergea después del preset). */
49
- sx?: SxProps<Theme>;
50
- /** sx del Toolbar interno. */
51
- toolbarSx?: SxProps<Theme>;
52
- className?: string;
53
- /** Otras props nativas del MuiAppBar (ej. `enableColorOnDark`). */
54
- appBarProps?: Omit<
55
- MuiAppBarProps,
56
- 'position' | 'color' | 'elevation' | 'sx' | 'children' | 'className'
57
- >;
58
- }
59
-
60
- /**
61
- * AppBar (header superior) del paquete. Se diseñó como un shell compositivo
62
- * — el consumer arma el contenido con los sub-componentes que exporta el
63
- * paquete (`AppBarBrand`, `AppBarMenuToggle`, `AppBarUserMenu`) + cualquier
64
- * otra cosa custom.
65
- *
66
- * Patrón recomendado para navegación en dashboards:
67
- *
68
- * ```tsx
69
- * <AppBar onMenuToggle={toggleDrawer}>
70
- * <AppBarMenuToggle />
71
- * <AppBarBrand logo={<Logo />} title="Afiliaciones" />
72
- * <Box sx={{ flex: 1 }} />
73
- * <AppBarUserMenu user={user} items={menuItems} />
74
- * </AppBar>
75
- * ```
76
- */
77
- export function AppBar({
78
- children,
79
- position = 'sticky',
80
- color = 'default',
81
- elevation = 1,
82
- height = 64,
83
- onMenuToggle,
84
- menuOpen,
85
- preset,
86
- sx,
87
- toolbarSx,
88
- className,
89
- appBarProps,
90
- }: AppBarProps) {
91
- const theme = useTheme();
92
- const presetSx = resolvePreset('AppBar', preset, theme);
93
-
94
- const transparent = color === 'transparent';
95
-
96
- const rootSx: SxProps<Theme> = [
97
- buildAppBarSx({ height, transparent }),
98
- ...(presetSx ? [presetSx] : []),
99
- ...(Array.isArray(sx) ? sx : sx ? [sx] : []),
100
- ];
101
-
102
- const contextValue = useMemo(
103
- () => ({ onMenuToggle, menuOpen }),
104
- [onMenuToggle, menuOpen],
105
- );
106
-
107
- return (
108
- <AppBarContext.Provider value={contextValue}>
109
- <MuiAppBar
110
- position={position}
111
- color={color === 'transparent' ? 'transparent' : color}
112
- elevation={elevation}
113
- className={className}
114
- sx={rootSx}
115
- {...appBarProps}
116
- >
117
- <Toolbar sx={toolbarSx}>{children}</Toolbar>
118
- </MuiAppBar>
119
- </AppBarContext.Provider>
120
- );
121
- }
122
-
123
- export default AppBar;
@@ -1,120 +0,0 @@
1
- import React, { type ReactNode, type MouseEvent } from 'react';
2
- import { Box, Typography } from '@mui/material';
3
- import type { SxProps, Theme } from '@mui/material/styles';
4
-
5
- export interface AppBarBrandProps {
6
- /** Logo (img, svg, componente). Se muestra a la izquierda del título. */
7
- logo?: ReactNode;
8
- /** Título del sistema. */
9
- title?: ReactNode;
10
- /** Subtítulo opcional (p.ej. nombre de módulo actual). */
11
- subtitle?: ReactNode;
12
- /** Handler de click sobre todo el brand (típicamente navega al home). */
13
- onClick?: (event: MouseEvent<HTMLDivElement>) => void;
14
- /** Oculta solo el título en viewports pequeños (mantiene el logo). Default: true. */
15
- hideTitleOnMobile?: boolean;
16
- sx?: SxProps<Theme>;
17
- className?: string;
18
- }
19
-
20
- /**
21
- * Brand del AppBar: combina logo + título + subtítulo opcional con un
22
- * click handler global (típicamente para navegar al home).
23
- *
24
- * ```tsx
25
- * <AppBarBrand
26
- * logo={<img src={logo} alt="" height={32} />}
27
- * title="Afiliaciones"
28
- * subtitle="Panel administrativo"
29
- * onClick={() => navigate('/')}
30
- * />
31
- * ```
32
- */
33
- export function AppBarBrand({
34
- logo,
35
- title,
36
- subtitle,
37
- onClick,
38
- hideTitleOnMobile = true,
39
- sx,
40
- className,
41
- }: AppBarBrandProps) {
42
- const clickable = !!onClick;
43
-
44
- const rootSx: SxProps<Theme> = [
45
- {
46
- display: 'flex',
47
- alignItems: 'center',
48
- gap: 1.25,
49
- cursor: clickable ? 'pointer' : 'default',
50
- userSelect: 'none',
51
- minWidth: 0,
52
- },
53
- ...(Array.isArray(sx) ? sx : sx ? [sx] : []),
54
- ];
55
-
56
- return (
57
- <Box
58
- role={clickable ? 'button' : undefined}
59
- tabIndex={clickable ? 0 : undefined}
60
- onClick={onClick}
61
- onKeyDown={(event) => {
62
- if (!clickable) return;
63
- if (event.key === 'Enter' || event.key === ' ') {
64
- event.preventDefault();
65
- onClick?.(event as unknown as MouseEvent<HTMLDivElement>);
66
- }
67
- }}
68
- className={className}
69
- sx={rootSx}
70
- >
71
- {logo && (
72
- <Box
73
- component="span"
74
- sx={{
75
- display: 'flex',
76
- alignItems: 'center',
77
- flexShrink: 0,
78
- }}
79
- >
80
- {logo}
81
- </Box>
82
- )}
83
- {(title || subtitle) && (
84
- <Box
85
- sx={{
86
- display: hideTitleOnMobile
87
- ? { xs: 'none', sm: 'flex' }
88
- : 'flex',
89
- flexDirection: 'column',
90
- minWidth: 0,
91
- lineHeight: 1.2,
92
- }}
93
- >
94
- {title && (
95
- <Typography
96
- component="span"
97
- variant="subtitle1"
98
- noWrap
99
- sx={{ fontWeight: 700 }}
100
- >
101
- {title}
102
- </Typography>
103
- )}
104
- {subtitle && (
105
- <Typography
106
- component="span"
107
- variant="caption"
108
- color="text.secondary"
109
- noWrap
110
- >
111
- {subtitle}
112
- </Typography>
113
- )}
114
- </Box>
115
- )}
116
- </Box>
117
- );
118
- }
119
-
120
- export default AppBarBrand;
@@ -1,25 +0,0 @@
1
- import { createContext, useContext } from 'react';
2
-
3
- /**
4
- * Context interno del AppBar. Permite que sub-componentes (MenuToggle, etc.)
5
- * consuman callbacks registrados en el AppBar padre sin tener que pasarlos
6
- * por props explícitas.
7
- */
8
- export interface AppBarContextValue {
9
- /** Handler del botón hamburguesa. Si es undefined, el toggle se oculta. */
10
- onMenuToggle?: () => void;
11
- /** Estado actual del drawer asociado (usado por el icono del toggle). */
12
- menuOpen?: boolean;
13
- }
14
-
15
- export const AppBarContext = createContext<AppBarContextValue | null>(null);
16
-
17
- /**
18
- * Hook para leer el contexto del AppBar. Si se llama fuera de un `<AppBar>`,
19
- * devuelve un objeto vacío — los sub-componentes caen en modo "standalone"
20
- * con sus defaults en lugar de romper.
21
- */
22
- export function useAppBarContext(): AppBarContextValue {
23
- const ctx = useContext(AppBarContext);
24
- return ctx ?? {};
25
- }
@@ -1,90 +0,0 @@
1
- import React, { type ReactNode } from 'react';
2
- import { IconButton, Tooltip } from '@mui/material';
3
- import MenuIcon from '@mui/icons-material/Menu';
4
- import MenuOpenIcon from '@mui/icons-material/MenuOpen';
5
- import type { SxProps, Theme } from '@mui/material/styles';
6
-
7
- import { useAppBarContext } from './AppBarContext';
8
-
9
- export interface AppBarMenuToggleProps {
10
- /**
11
- * Callback explícito. Si se omite, se consume del `AppBarContext`. Útil para
12
- * usar el toggle fuera de un `<AppBar>` (p.ej. en un header custom).
13
- */
14
- onClick?: () => void;
15
- /** Estado del drawer asociado. Si se omite, se lee del `AppBarContext`. */
16
- menuOpen?: boolean;
17
- /** Icono custom cuando el drawer está cerrado. Default: `<MenuIcon />`. */
18
- closedIcon?: ReactNode;
19
- /** Icono custom cuando el drawer está abierto. Default: `<MenuOpenIcon />`. */
20
- openIcon?: ReactNode;
21
- /** Texto de tooltip. Default: "Menú". */
22
- tooltip?: string;
23
- /** aria-label del botón. Default: el mismo tooltip. */
24
- ariaLabel?: string;
25
- /** Tamaño del IconButton. Default: `'medium'`. */
26
- size?: 'small' | 'medium' | 'large';
27
- /** Oculta el botón cuando no hay handler disponible. Default: true. */
28
- hideIfNoHandler?: boolean;
29
- sx?: SxProps<Theme>;
30
- className?: string;
31
- }
32
-
33
- /**
34
- * Botón hamburguesa del AppBar. Por default consume `onMenuToggle` y
35
- * `menuOpen` del `AppBarContext` (pattern composicional), pero permite
36
- * overrides explícitos si se usa fuera de un `<AppBar>`.
37
- *
38
- * ```tsx
39
- * <AppBar onMenuToggle={toggleDrawer} menuOpen={open}>
40
- * <AppBarMenuToggle />
41
- * ...
42
- * </AppBar>
43
- * ```
44
- */
45
- export function AppBarMenuToggle({
46
- onClick,
47
- menuOpen,
48
- closedIcon,
49
- openIcon,
50
- tooltip = 'Menú',
51
- ariaLabel,
52
- size = 'medium',
53
- hideIfNoHandler = true,
54
- sx,
55
- className,
56
- }: AppBarMenuToggleProps) {
57
- const ctx = useAppBarContext();
58
-
59
- const handler = onClick ?? ctx.onMenuToggle;
60
- const open = menuOpen ?? ctx.menuOpen ?? false;
61
-
62
- if (!handler && hideIfNoHandler) {
63
- return null;
64
- }
65
-
66
- const icon = open
67
- ? (openIcon ?? <MenuOpenIcon />)
68
- : (closedIcon ?? <MenuIcon />);
69
-
70
- return (
71
- <Tooltip title={tooltip} arrow>
72
- <span>
73
- <IconButton
74
- size={size}
75
- edge="start"
76
- color="inherit"
77
- aria-label={ariaLabel ?? tooltip}
78
- onClick={handler}
79
- disabled={!handler}
80
- className={className}
81
- sx={sx}
82
- >
83
- {icon}
84
- </IconButton>
85
- </span>
86
- </Tooltip>
87
- );
88
- }
89
-
90
- export default AppBarMenuToggle;