@pautena/react-design-system 0.16.0 → 0.17.1

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 (590) hide show
  1. package/README.md +2 -2
  2. package/{action → dist/action}/action-header.d.ts +1 -1
  3. package/{action → dist/action}/action.d.ts +2 -2
  4. package/dist/action/index.d.ts +2 -0
  5. package/{autocomplete → dist/autocomplete}/autocomplete.d.ts +3 -3
  6. package/dist/autocomplete/index.d.ts +1 -0
  7. package/{board → dist/board}/board.d.ts +2 -2
  8. package/dist/board/index.d.ts +1 -0
  9. package/{bootstrap-dialog → dist/bootstrap-dialog}/bootstrap-dialog.d.ts +1 -1
  10. package/dist/bootstrap-dialog/index.d.ts +1 -0
  11. package/{bullet → dist/bullet}/bullet.d.ts +1 -1
  12. package/dist/bullet/index.d.ts +1 -0
  13. package/{center-container → dist/center-container}/center-container.d.ts +2 -2
  14. package/dist/center-container/index.d.ts +1 -0
  15. package/{confirm-dialog → dist/confirm-dialog}/confirm-dialog.d.ts +1 -1
  16. package/dist/confirm-dialog/index.d.ts +1 -0
  17. package/{content → dist/content}/content.d.ts +1 -1
  18. package/{content → dist/content}/content.types.d.ts +1 -1
  19. package/dist/content/index.d.ts +2 -0
  20. package/{content-placeholder → dist/content-placeholder}/content-placeholder.d.ts +1 -1
  21. package/dist/content-placeholder/index.d.ts +1 -0
  22. package/dist/date-range-calendar/index.d.ts +1 -0
  23. package/dist/date-range-picker/index.d.ts +1 -0
  24. package/{dialog → dist/dialog}/dialog.types.d.ts +1 -1
  25. package/dist/dialog/index.d.ts +2 -0
  26. package/{dialog → dist/dialog}/use-dialog.d.ts +1 -1
  27. package/dist/drawer/drawer.d.ts +4 -0
  28. package/{drawer → dist/drawer}/drawer.mock.d.ts +1 -1
  29. package/{drawer → dist/drawer}/drawer.types.d.ts +6 -6
  30. package/dist/drawer/index.d.ts +2 -0
  31. package/{drawer-app-bar → dist/drawer-app-bar}/drawer-app-bar.d.ts +1 -1
  32. package/dist/drawer-app-bar/index.d.ts +1 -0
  33. package/{drawer-content → dist/drawer-content}/drawer-content.d.ts +1 -1
  34. package/dist/drawer-content/index.d.ts +1 -0
  35. package/{drawer-item → dist/drawer-item}/drawer-item-link.d.ts +3 -3
  36. package/{drawer-item → dist/drawer-item}/drawer-item.d.ts +1 -1
  37. package/{drawer-item → dist/drawer-item}/drawer-menu-item.d.ts +3 -3
  38. package/dist/drawer-item/index.d.ts +3 -0
  39. package/{drawer-layout → dist/drawer-layout}/drawer-layout.d.ts +3 -3
  40. package/dist/drawer-layout/index.d.ts +1 -0
  41. package/{drawer-main → dist/drawer-main}/drawer-main.d.ts +1 -1
  42. package/dist/drawer-main/index.d.ts +1 -0
  43. package/{drawer-provider → dist/drawer-provider}/drawer-context.d.ts +2 -2
  44. package/{drawer-provider → dist/drawer-provider}/drawer-mixins.d.ts +1 -1
  45. package/{drawer-provider → dist/drawer-provider}/drawer.provider.d.ts +2 -2
  46. package/dist/drawer-provider/index.d.ts +3 -0
  47. package/{drawer-section → dist/drawer-section}/drawer-section.d.ts +1 -1
  48. package/dist/drawer-section/index.d.ts +1 -0
  49. package/dist/drawer-subheader/drawer-subheader.d.ts +9 -0
  50. package/dist/drawer-subheader/index.d.ts +1 -0
  51. package/{enhanced-remote-table → dist/enhanced-remote-table}/enhanced-remote-table.d.ts +2 -2
  52. package/{enhanced-remote-table → dist/enhanced-remote-table}/enhanced-remote-table.mock.d.ts +2 -2
  53. package/dist/enhanced-remote-table/index.d.ts +1 -0
  54. package/{enhanced-table → dist/enhanced-table}/enhanced-table.d.ts +2 -2
  55. package/{enhanced-table → dist/enhanced-table}/enhanced-table.mock.d.ts +1 -1
  56. package/dist/enhanced-table/index.d.ts +2 -0
  57. package/{expandable-alert → dist/expandable-alert}/expandable-alert.d.ts +4 -4
  58. package/dist/expandable-alert/index.d.ts +1 -0
  59. package/{form-dialog → dist/form-dialog}/form-dialog.d.ts +1 -1
  60. package/dist/form-dialog/index.d.ts +1 -0
  61. package/{generators → dist/generators}/generators.mock.d.ts +1 -1
  62. package/dist/generators/index.d.ts +1 -0
  63. package/{group-value-card → dist/group-value-card}/group-value-card.d.ts +1 -1
  64. package/{group-value-card → dist/group-value-card}/group-value-card.mock.d.ts +1 -1
  65. package/dist/group-value-card/index.d.ts +1 -0
  66. package/{header → dist/header}/header-title.d.ts +1 -1
  67. package/{header → dist/header}/header.d.ts +1 -1
  68. package/{header → dist/header}/header.dummy.d.ts +1 -1
  69. package/{header → dist/header}/header.types.d.ts +2 -2
  70. package/dist/header/index.d.ts +3 -0
  71. package/{header-layout → dist/header-layout}/header-layout.d.ts +3 -3
  72. package/dist/header-layout/index.d.ts +1 -0
  73. package/dist/index.cjs.js +341 -0
  74. package/dist/index.cjs.js.map +1 -0
  75. package/dist/index.d.ts +55 -0
  76. package/dist/index.es.js +47740 -0
  77. package/dist/index.es.js.map +1 -0
  78. package/dist/label/index.d.ts +1 -0
  79. package/{label → dist/label}/label.d.ts +1 -1
  80. package/dist/link-card/index.d.ts +1 -0
  81. package/{link-card → dist/link-card}/link-card.d.ts +1 -1
  82. package/dist/list-panel/index.d.ts +2 -0
  83. package/{list-panel → dist/list-panel}/list-panel-panel.d.ts +1 -1
  84. package/dist/list-panel/list-panel.context.d.ts +3 -0
  85. package/{list-panel → dist/list-panel}/list-panel.d.ts +1 -1
  86. package/{list-panel → dist/list-panel}/list-panel.mocks.d.ts +1 -1
  87. package/dist/loading-area/index.d.ts +1 -0
  88. package/dist/markdown/index.d.ts +1 -0
  89. package/{markdown → dist/markdown}/markdown.d.ts +6 -6
  90. package/dist/model-form/index.d.ts +1 -0
  91. package/{model-form → dist/model-form}/model-form-field.d.ts +1 -1
  92. package/{model-form → dist/model-form}/model-form.d.ts +1 -1
  93. package/dist/notification-center/index.d.ts +3 -0
  94. package/{notification-center → dist/notification-center}/notification-center.context.d.ts +2 -2
  95. package/{notification-center → dist/notification-center}/notification-center.hooks.d.ts +1 -1
  96. package/{notification-center → dist/notification-center}/notification-center.provider.d.ts +1 -1
  97. package/dist/object-details/index.d.ts +1 -0
  98. package/{object-details → dist/object-details}/object-details.d.ts +1 -1
  99. package/dist/placeholder/index.d.ts +1 -0
  100. package/{placeholder → dist/placeholder}/placeholder.d.ts +1 -1
  101. package/{placeholder → dist/placeholder}/placeholder.mock.d.ts +1 -1
  102. package/dist/query-container/index.d.ts +1 -0
  103. package/{query-container → dist/query-container}/query-container.d.ts +1 -1
  104. package/dist/search-input/index.d.ts +1 -0
  105. package/{search-input → dist/search-input}/search-input.d.ts +1 -1
  106. package/dist/select/index.d.ts +1 -0
  107. package/{select → dist/select}/select.d.ts +2 -2
  108. package/dist/sign-in/index.d.ts +1 -0
  109. package/dist/skeleton-card/index.d.ts +1 -0
  110. package/dist/skeleton-grid/index.d.ts +1 -0
  111. package/dist/tab-card/index.d.ts +2 -0
  112. package/{tab-card → dist/tab-card}/tab-card-panel.d.ts +2 -2
  113. package/dist/tab-card/tab-card.context.d.ts +3 -0
  114. package/{tab-card → dist/tab-card}/tab-card.d.ts +1 -1
  115. package/{tab-card → dist/tab-card}/tab-card.dummy.d.ts +1 -1
  116. package/dist/tab-panel/index.d.ts +1 -0
  117. package/dist/tab-provider/index.d.ts +2 -0
  118. package/dist/tab-provider/tab-provider.context.d.ts +4 -0
  119. package/{tab-provider → dist/tab-provider}/tab-provider.provider.d.ts +1 -1
  120. package/dist/table-list/index.d.ts +1 -0
  121. package/{table-list → dist/table-list}/table-list.d.ts +2 -2
  122. package/dist/text-field/index.d.ts +1 -0
  123. package/{text-field → dist/text-field}/text-field.d.ts +1 -1
  124. package/{utils → dist/utils}/breakpoints.d.ts +1 -1
  125. package/{utils → dist/utils}/forms.d.ts +1 -1
  126. package/dist/utils/index.d.ts +4 -0
  127. package/{utils → dist/utils}/theme.d.ts +1 -1
  128. package/dist/value-base/index.d.ts +2 -0
  129. package/{value-base → dist/value-base}/value-edit.d.ts +2 -2
  130. package/dist/value-boolean/index.d.ts +1 -0
  131. package/{value-boolean → dist/value-boolean}/value-boolean.d.ts +1 -1
  132. package/dist/value-card/index.d.ts +1 -0
  133. package/{value-card → dist/value-card}/value-card.d.ts +1 -1
  134. package/dist/value-content/index.d.ts +1 -0
  135. package/{value-content → dist/value-content}/value-content.d.ts +1 -1
  136. package/dist/value-datetime/index.d.ts +1 -0
  137. package/{value-datetime → dist/value-datetime}/value-datetime.d.ts +1 -1
  138. package/dist/value-image/index.d.ts +1 -0
  139. package/{value-image → dist/value-image}/value-image.d.ts +1 -1
  140. package/dist/value-item/index.d.ts +1 -0
  141. package/{value-item → dist/value-item}/value-item.d.ts +3 -3
  142. package/dist/value-label/index.d.ts +1 -0
  143. package/{value-label → dist/value-label}/value-label.d.ts +2 -2
  144. package/dist/value-rating/index.d.ts +1 -0
  145. package/{value-rating → dist/value-rating}/value-rating.d.ts +1 -1
  146. package/dist/value-text/index.d.ts +1 -0
  147. package/{value-text → dist/value-text}/value-text.d.ts +1 -1
  148. package/package.json +78 -7
  149. package/action/cjs/index.js +0 -2
  150. package/action/cjs/index.js.map +0 -1
  151. package/action/cjs/package.json +0 -12
  152. package/action/index.d.ts +0 -2
  153. package/action/index.js +0 -2
  154. package/action/index.js.map +0 -1
  155. package/action/package.json +0 -12
  156. package/autocomplete/cjs/index.js +0 -2
  157. package/autocomplete/cjs/index.js.map +0 -1
  158. package/autocomplete/cjs/package.json +0 -11
  159. package/autocomplete/index.d.ts +0 -1
  160. package/autocomplete/index.js +0 -2
  161. package/autocomplete/index.js.map +0 -1
  162. package/autocomplete/package.json +0 -11
  163. package/board/cjs/index.js +0 -2
  164. package/board/cjs/index.js.map +0 -1
  165. package/board/cjs/package.json +0 -12
  166. package/board/index.d.ts +0 -1
  167. package/board/index.js +0 -2
  168. package/board/index.js.map +0 -1
  169. package/board/package.json +0 -12
  170. package/bootstrap-dialog/cjs/index.js +0 -2
  171. package/bootstrap-dialog/cjs/index.js.map +0 -1
  172. package/bootstrap-dialog/cjs/package.json +0 -12
  173. package/bootstrap-dialog/index.d.ts +0 -1
  174. package/bootstrap-dialog/index.js +0 -2
  175. package/bootstrap-dialog/index.js.map +0 -1
  176. package/bootstrap-dialog/package.json +0 -12
  177. package/bullet/cjs/index.js +0 -2
  178. package/bullet/cjs/index.js.map +0 -1
  179. package/bullet/cjs/package.json +0 -11
  180. package/bullet/index.d.ts +0 -1
  181. package/bullet/index.js +0 -2
  182. package/bullet/index.js.map +0 -1
  183. package/bullet/package.json +0 -11
  184. package/center-container/cjs/index.js +0 -2
  185. package/center-container/cjs/index.js.map +0 -1
  186. package/center-container/cjs/package.json +0 -11
  187. package/center-container/index.d.ts +0 -1
  188. package/center-container/index.js +0 -2
  189. package/center-container/index.js.map +0 -1
  190. package/center-container/package.json +0 -11
  191. package/cjs/index.js +0 -2
  192. package/cjs/index.js.map +0 -1
  193. package/confirm-dialog/cjs/index.js +0 -2
  194. package/confirm-dialog/cjs/index.js.map +0 -1
  195. package/confirm-dialog/cjs/package.json +0 -12
  196. package/confirm-dialog/index.d.ts +0 -1
  197. package/confirm-dialog/index.js +0 -2
  198. package/confirm-dialog/index.js.map +0 -1
  199. package/confirm-dialog/package.json +0 -12
  200. package/content/cjs/index.js +0 -2
  201. package/content/cjs/index.js.map +0 -1
  202. package/content/cjs/package.json +0 -11
  203. package/content/index.d.ts +0 -2
  204. package/content/index.js +0 -2
  205. package/content/index.js.map +0 -1
  206. package/content/package.json +0 -11
  207. package/content-placeholder/cjs/index.js +0 -2
  208. package/content-placeholder/cjs/index.js.map +0 -1
  209. package/content-placeholder/cjs/package.json +0 -11
  210. package/content-placeholder/index.d.ts +0 -1
  211. package/content-placeholder/index.js +0 -2
  212. package/content-placeholder/index.js.map +0 -1
  213. package/content-placeholder/package.json +0 -11
  214. package/date-range-calendar/cjs/index.js +0 -2
  215. package/date-range-calendar/cjs/index.js.map +0 -1
  216. package/date-range-calendar/cjs/package.json +0 -13
  217. package/date-range-calendar/index.d.ts +0 -1
  218. package/date-range-calendar/index.js +0 -2
  219. package/date-range-calendar/index.js.map +0 -1
  220. package/date-range-calendar/package.json +0 -13
  221. package/date-range-picker/cjs/index.js +0 -2
  222. package/date-range-picker/cjs/index.js.map +0 -1
  223. package/date-range-picker/cjs/package.json +0 -14
  224. package/date-range-picker/index.d.ts +0 -1
  225. package/date-range-picker/index.js +0 -2
  226. package/date-range-picker/index.js.map +0 -1
  227. package/date-range-picker/package.json +0 -14
  228. package/dialog/cjs/index.js +0 -2
  229. package/dialog/cjs/index.js.map +0 -1
  230. package/dialog/cjs/package.json +0 -10
  231. package/dialog/index.d.ts +0 -2
  232. package/dialog/index.js +0 -2
  233. package/dialog/index.js.map +0 -1
  234. package/dialog/package.json +0 -10
  235. package/drawer/cjs/index.js +0 -2
  236. package/drawer/cjs/index.js.map +0 -1
  237. package/drawer/cjs/package.json +0 -12
  238. package/drawer/drawer.d.ts +0 -4
  239. package/drawer/index.d.ts +0 -2
  240. package/drawer/index.js +0 -2
  241. package/drawer/index.js.map +0 -1
  242. package/drawer/package.json +0 -12
  243. package/drawer-app-bar/cjs/index.js +0 -2
  244. package/drawer-app-bar/cjs/index.js.map +0 -1
  245. package/drawer-app-bar/cjs/package.json +0 -12
  246. package/drawer-app-bar/index.d.ts +0 -1
  247. package/drawer-app-bar/index.js +0 -2
  248. package/drawer-app-bar/index.js.map +0 -1
  249. package/drawer-app-bar/package.json +0 -12
  250. package/drawer-content/cjs/index.js +0 -2
  251. package/drawer-content/cjs/index.js.map +0 -1
  252. package/drawer-content/cjs/package.json +0 -12
  253. package/drawer-content/index.d.ts +0 -1
  254. package/drawer-content/index.js +0 -2
  255. package/drawer-content/index.js.map +0 -1
  256. package/drawer-content/package.json +0 -12
  257. package/drawer-item/cjs/index.js +0 -2
  258. package/drawer-item/cjs/index.js.map +0 -1
  259. package/drawer-item/cjs/package.json +0 -12
  260. package/drawer-item/index.d.ts +0 -3
  261. package/drawer-item/index.js +0 -2
  262. package/drawer-item/index.js.map +0 -1
  263. package/drawer-item/package.json +0 -12
  264. package/drawer-layout/cjs/index.js +0 -2
  265. package/drawer-layout/cjs/index.js.map +0 -1
  266. package/drawer-layout/cjs/package.json +0 -12
  267. package/drawer-layout/index.d.ts +0 -1
  268. package/drawer-layout/index.js +0 -2
  269. package/drawer-layout/index.js.map +0 -1
  270. package/drawer-layout/package.json +0 -12
  271. package/drawer-main/cjs/index.js +0 -2
  272. package/drawer-main/cjs/index.js.map +0 -1
  273. package/drawer-main/cjs/package.json +0 -12
  274. package/drawer-main/index.d.ts +0 -1
  275. package/drawer-main/index.js +0 -2
  276. package/drawer-main/index.js.map +0 -1
  277. package/drawer-main/package.json +0 -12
  278. package/drawer-provider/cjs/index.js +0 -2
  279. package/drawer-provider/cjs/index.js.map +0 -1
  280. package/drawer-provider/cjs/package.json +0 -12
  281. package/drawer-provider/index.d.ts +0 -3
  282. package/drawer-provider/index.js +0 -2
  283. package/drawer-provider/index.js.map +0 -1
  284. package/drawer-provider/package.json +0 -12
  285. package/drawer-section/cjs/index.js +0 -2
  286. package/drawer-section/cjs/index.js.map +0 -1
  287. package/drawer-section/cjs/package.json +0 -12
  288. package/drawer-section/index.d.ts +0 -1
  289. package/drawer-section/index.js +0 -2
  290. package/drawer-section/index.js.map +0 -1
  291. package/drawer-section/package.json +0 -12
  292. package/drawer-subheader/cjs/index.js +0 -2
  293. package/drawer-subheader/cjs/index.js.map +0 -1
  294. package/drawer-subheader/cjs/package.json +0 -10
  295. package/drawer-subheader/drawer-subheader.d.ts +0 -9
  296. package/drawer-subheader/index.d.ts +0 -1
  297. package/drawer-subheader/index.js +0 -2
  298. package/drawer-subheader/index.js.map +0 -1
  299. package/drawer-subheader/package.json +0 -10
  300. package/enhanced-remote-table/cjs/index.js +0 -2
  301. package/enhanced-remote-table/cjs/index.js.map +0 -1
  302. package/enhanced-remote-table/cjs/package.json +0 -12
  303. package/enhanced-remote-table/index.d.ts +0 -1
  304. package/enhanced-remote-table/index.js +0 -2
  305. package/enhanced-remote-table/index.js.map +0 -1
  306. package/enhanced-remote-table/package.json +0 -12
  307. package/enhanced-table/cjs/index.js +0 -2
  308. package/enhanced-table/cjs/index.js.map +0 -1
  309. package/enhanced-table/cjs/package.json +0 -12
  310. package/enhanced-table/index.d.ts +0 -2
  311. package/enhanced-table/index.js +0 -2
  312. package/enhanced-table/index.js.map +0 -1
  313. package/enhanced-table/package.json +0 -12
  314. package/expandable-alert/cjs/index.js +0 -2
  315. package/expandable-alert/cjs/index.js.map +0 -1
  316. package/expandable-alert/cjs/package.json +0 -12
  317. package/expandable-alert/index.d.ts +0 -1
  318. package/expandable-alert/index.js +0 -2
  319. package/expandable-alert/index.js.map +0 -1
  320. package/expandable-alert/package.json +0 -12
  321. package/form-dialog/cjs/index.js +0 -2
  322. package/form-dialog/cjs/index.js.map +0 -1
  323. package/form-dialog/cjs/package.json +0 -12
  324. package/form-dialog/index.d.ts +0 -1
  325. package/form-dialog/index.js +0 -2
  326. package/form-dialog/index.js.map +0 -1
  327. package/form-dialog/package.json +0 -12
  328. package/generators/cjs/index.js +0 -2
  329. package/generators/cjs/index.js.map +0 -1
  330. package/generators/cjs/package.json +0 -7
  331. package/generators/index.d.ts +0 -1
  332. package/generators/index.js +0 -2
  333. package/generators/index.js.map +0 -1
  334. package/generators/package.json +0 -7
  335. package/group-value-card/cjs/index.js +0 -2
  336. package/group-value-card/cjs/index.js.map +0 -1
  337. package/group-value-card/cjs/package.json +0 -11
  338. package/group-value-card/index.d.ts +0 -1
  339. package/group-value-card/index.js +0 -2
  340. package/group-value-card/index.js.map +0 -1
  341. package/group-value-card/package.json +0 -11
  342. package/header/cjs/index.js +0 -2
  343. package/header/cjs/index.js.map +0 -1
  344. package/header/cjs/package.json +0 -11
  345. package/header/index.d.ts +0 -3
  346. package/header/index.js +0 -2
  347. package/header/index.js.map +0 -1
  348. package/header/package.json +0 -11
  349. package/header-layout/cjs/index.js +0 -2
  350. package/header-layout/cjs/index.js.map +0 -1
  351. package/header-layout/cjs/package.json +0 -12
  352. package/header-layout/index.d.ts +0 -1
  353. package/header-layout/index.js +0 -2
  354. package/header-layout/index.js.map +0 -1
  355. package/header-layout/package.json +0 -12
  356. package/index.d.ts +0 -55
  357. package/index.js +0 -2
  358. package/index.js.map +0 -1
  359. package/label/cjs/index.js +0 -2
  360. package/label/cjs/index.js.map +0 -1
  361. package/label/cjs/package.json +0 -11
  362. package/label/index.d.ts +0 -1
  363. package/label/index.js +0 -2
  364. package/label/index.js.map +0 -1
  365. package/label/package.json +0 -11
  366. package/link-card/cjs/index.js +0 -2
  367. package/link-card/cjs/index.js.map +0 -1
  368. package/link-card/cjs/package.json +0 -11
  369. package/link-card/index.d.ts +0 -1
  370. package/link-card/index.js +0 -2
  371. package/link-card/index.js.map +0 -1
  372. package/link-card/package.json +0 -11
  373. package/list-panel/cjs/index.js +0 -2
  374. package/list-panel/cjs/index.js.map +0 -1
  375. package/list-panel/cjs/package.json +0 -11
  376. package/list-panel/index.d.ts +0 -2
  377. package/list-panel/index.js +0 -2
  378. package/list-panel/index.js.map +0 -1
  379. package/list-panel/list-panel.context.d.ts +0 -3
  380. package/list-panel/package.json +0 -11
  381. package/loading-area/cjs/index.js +0 -2
  382. package/loading-area/cjs/index.js.map +0 -1
  383. package/loading-area/cjs/package.json +0 -11
  384. package/loading-area/index.d.ts +0 -1
  385. package/loading-area/index.js +0 -2
  386. package/loading-area/index.js.map +0 -1
  387. package/loading-area/package.json +0 -11
  388. package/markdown/cjs/index.js +0 -2
  389. package/markdown/cjs/index.js.map +0 -1
  390. package/markdown/cjs/package.json +0 -10
  391. package/markdown/index.d.ts +0 -1
  392. package/markdown/index.js +0 -2
  393. package/markdown/index.js.map +0 -1
  394. package/markdown/package.json +0 -10
  395. package/model-form/cjs/index.js +0 -2
  396. package/model-form/cjs/index.js.map +0 -1
  397. package/model-form/cjs/package.json +0 -12
  398. package/model-form/index.d.ts +0 -1
  399. package/model-form/index.js +0 -2
  400. package/model-form/index.js.map +0 -1
  401. package/model-form/package.json +0 -12
  402. package/notification-center/cjs/index.js +0 -2
  403. package/notification-center/cjs/index.js.map +0 -1
  404. package/notification-center/cjs/package.json +0 -11
  405. package/notification-center/index.d.ts +0 -3
  406. package/notification-center/index.js +0 -2
  407. package/notification-center/index.js.map +0 -1
  408. package/notification-center/package.json +0 -11
  409. package/object-details/cjs/index.js +0 -2
  410. package/object-details/cjs/index.js.map +0 -1
  411. package/object-details/cjs/package.json +0 -15
  412. package/object-details/index.d.ts +0 -1
  413. package/object-details/index.js +0 -2
  414. package/object-details/index.js.map +0 -1
  415. package/object-details/package.json +0 -15
  416. package/placeholder/cjs/index.js +0 -2
  417. package/placeholder/cjs/index.js.map +0 -1
  418. package/placeholder/cjs/package.json +0 -11
  419. package/placeholder/index.d.ts +0 -1
  420. package/placeholder/index.js +0 -2
  421. package/placeholder/index.js.map +0 -1
  422. package/placeholder/package.json +0 -11
  423. package/query-container/cjs/index.js +0 -2
  424. package/query-container/cjs/index.js.map +0 -1
  425. package/query-container/cjs/package.json +0 -11
  426. package/query-container/index.d.ts +0 -1
  427. package/query-container/index.js +0 -2
  428. package/query-container/index.js.map +0 -1
  429. package/query-container/package.json +0 -11
  430. package/search-input/cjs/index.js +0 -2
  431. package/search-input/cjs/index.js.map +0 -1
  432. package/search-input/cjs/package.json +0 -13
  433. package/search-input/index.d.ts +0 -1
  434. package/search-input/index.js +0 -2
  435. package/search-input/index.js.map +0 -1
  436. package/search-input/package.json +0 -13
  437. package/select/cjs/index.js +0 -2
  438. package/select/cjs/index.js.map +0 -1
  439. package/select/cjs/package.json +0 -11
  440. package/select/index.d.ts +0 -1
  441. package/select/index.js +0 -2
  442. package/select/index.js.map +0 -1
  443. package/select/package.json +0 -11
  444. package/sign-in/cjs/index.js +0 -2
  445. package/sign-in/cjs/index.js.map +0 -1
  446. package/sign-in/cjs/package.json +0 -11
  447. package/sign-in/index.d.ts +0 -1
  448. package/sign-in/index.js +0 -2
  449. package/sign-in/index.js.map +0 -1
  450. package/sign-in/package.json +0 -11
  451. package/skeleton-card/cjs/index.js +0 -2
  452. package/skeleton-card/cjs/index.js.map +0 -1
  453. package/skeleton-card/cjs/package.json +0 -11
  454. package/skeleton-card/index.d.ts +0 -1
  455. package/skeleton-card/index.js +0 -2
  456. package/skeleton-card/index.js.map +0 -1
  457. package/skeleton-card/package.json +0 -11
  458. package/skeleton-grid/cjs/index.js +0 -2
  459. package/skeleton-grid/cjs/index.js.map +0 -1
  460. package/skeleton-grid/cjs/package.json +0 -11
  461. package/skeleton-grid/index.d.ts +0 -1
  462. package/skeleton-grid/index.js +0 -2
  463. package/skeleton-grid/index.js.map +0 -1
  464. package/skeleton-grid/package.json +0 -11
  465. package/tab-card/cjs/index.js +0 -2
  466. package/tab-card/cjs/index.js.map +0 -1
  467. package/tab-card/cjs/package.json +0 -11
  468. package/tab-card/index.d.ts +0 -2
  469. package/tab-card/index.js +0 -2
  470. package/tab-card/index.js.map +0 -1
  471. package/tab-card/package.json +0 -11
  472. package/tab-card/tab-card.context.d.ts +0 -3
  473. package/tab-panel/cjs/index.js +0 -2
  474. package/tab-panel/cjs/index.js.map +0 -1
  475. package/tab-panel/cjs/package.json +0 -11
  476. package/tab-panel/index.d.ts +0 -1
  477. package/tab-panel/index.js +0 -2
  478. package/tab-panel/index.js.map +0 -1
  479. package/tab-panel/package.json +0 -11
  480. package/tab-provider/cjs/index.js +0 -2
  481. package/tab-provider/cjs/index.js.map +0 -1
  482. package/tab-provider/cjs/package.json +0 -10
  483. package/tab-provider/index.d.ts +0 -2
  484. package/tab-provider/index.js +0 -2
  485. package/tab-provider/index.js.map +0 -1
  486. package/tab-provider/package.json +0 -10
  487. package/tab-provider/tab-provider.context.d.ts +0 -4
  488. package/table-list/cjs/index.js +0 -2
  489. package/table-list/cjs/index.js.map +0 -1
  490. package/table-list/cjs/package.json +0 -12
  491. package/table-list/index.d.ts +0 -1
  492. package/table-list/index.js +0 -2
  493. package/table-list/index.js.map +0 -1
  494. package/table-list/package.json +0 -12
  495. package/text-field/cjs/index.js +0 -2
  496. package/text-field/cjs/index.js.map +0 -1
  497. package/text-field/cjs/package.json +0 -11
  498. package/text-field/index.d.ts +0 -1
  499. package/text-field/index.js +0 -2
  500. package/text-field/index.js.map +0 -1
  501. package/text-field/package.json +0 -11
  502. package/utils/cjs/index.js +0 -2
  503. package/utils/cjs/index.js.map +0 -1
  504. package/utils/cjs/package.json +0 -10
  505. package/utils/index.d.ts +0 -4
  506. package/utils/index.js +0 -2
  507. package/utils/index.js.map +0 -1
  508. package/utils/package.json +0 -10
  509. package/value-base/cjs/index.js +0 -2
  510. package/value-base/cjs/index.js.map +0 -1
  511. package/value-base/cjs/package.json +0 -12
  512. package/value-base/index.d.ts +0 -2
  513. package/value-base/index.js +0 -2
  514. package/value-base/index.js.map +0 -1
  515. package/value-base/package.json +0 -12
  516. package/value-boolean/cjs/index.js +0 -2
  517. package/value-boolean/cjs/index.js.map +0 -1
  518. package/value-boolean/cjs/package.json +0 -12
  519. package/value-boolean/index.d.ts +0 -1
  520. package/value-boolean/index.js +0 -2
  521. package/value-boolean/index.js.map +0 -1
  522. package/value-boolean/package.json +0 -12
  523. package/value-card/cjs/index.js +0 -2
  524. package/value-card/cjs/index.js.map +0 -1
  525. package/value-card/cjs/package.json +0 -11
  526. package/value-card/index.d.ts +0 -1
  527. package/value-card/index.js +0 -2
  528. package/value-card/index.js.map +0 -1
  529. package/value-card/package.json +0 -11
  530. package/value-content/cjs/index.js +0 -2
  531. package/value-content/cjs/index.js.map +0 -1
  532. package/value-content/cjs/package.json +0 -11
  533. package/value-content/index.d.ts +0 -1
  534. package/value-content/index.js +0 -2
  535. package/value-content/index.js.map +0 -1
  536. package/value-content/package.json +0 -11
  537. package/value-datetime/cjs/index.js +0 -2
  538. package/value-datetime/cjs/index.js.map +0 -1
  539. package/value-datetime/cjs/package.json +0 -14
  540. package/value-datetime/index.d.ts +0 -1
  541. package/value-datetime/index.js +0 -2
  542. package/value-datetime/index.js.map +0 -1
  543. package/value-datetime/package.json +0 -14
  544. package/value-image/cjs/index.js +0 -2
  545. package/value-image/cjs/index.js.map +0 -1
  546. package/value-image/cjs/package.json +0 -11
  547. package/value-image/index.d.ts +0 -1
  548. package/value-image/index.js +0 -2
  549. package/value-image/index.js.map +0 -1
  550. package/value-image/package.json +0 -11
  551. package/value-item/cjs/index.js +0 -2
  552. package/value-item/cjs/index.js.map +0 -1
  553. package/value-item/cjs/package.json +0 -11
  554. package/value-item/index.d.ts +0 -1
  555. package/value-item/index.js +0 -2
  556. package/value-item/index.js.map +0 -1
  557. package/value-item/package.json +0 -11
  558. package/value-label/cjs/index.js +0 -2
  559. package/value-label/cjs/index.js.map +0 -1
  560. package/value-label/cjs/package.json +0 -12
  561. package/value-label/index.d.ts +0 -1
  562. package/value-label/index.js +0 -2
  563. package/value-label/index.js.map +0 -1
  564. package/value-label/package.json +0 -12
  565. package/value-rating/cjs/index.js +0 -2
  566. package/value-rating/cjs/index.js.map +0 -1
  567. package/value-rating/cjs/package.json +0 -12
  568. package/value-rating/index.d.ts +0 -1
  569. package/value-rating/index.js +0 -2
  570. package/value-rating/index.js.map +0 -1
  571. package/value-rating/package.json +0 -12
  572. package/value-text/cjs/index.js +0 -2
  573. package/value-text/cjs/index.js.map +0 -1
  574. package/value-text/cjs/package.json +0 -12
  575. package/value-text/index.d.ts +0 -1
  576. package/value-text/index.js +0 -2
  577. package/value-text/index.js.map +0 -1
  578. package/value-text/package.json +0 -12
  579. /package/{date-range-calendar → dist/date-range-calendar}/date-range-calendar.d.ts +0 -0
  580. /package/{date-range-picker → dist/date-range-picker}/date-range-picker.d.ts +0 -0
  581. /package/{enhanced-table → dist/enhanced-table}/enhanced-table-head.d.ts +0 -0
  582. /package/{generators → dist/generators}/generators.model.d.ts +0 -0
  583. /package/{loading-area → dist/loading-area}/loading-area.d.ts +0 -0
  584. /package/{sign-in → dist/sign-in}/sign-in.d.ts +0 -0
  585. /package/{skeleton-card → dist/skeleton-card}/skeleton-card.d.ts +0 -0
  586. /package/{skeleton-grid → dist/skeleton-grid}/skeleton-grid.d.ts +0 -0
  587. /package/{tab-panel → dist/tab-panel}/tab-panel.d.ts +0 -0
  588. /package/{utils → dist/utils}/arrays.d.ts +0 -0
  589. /package/{utils → dist/utils}/colors.d.ts +0 -0
  590. /package/{value-base → dist/value-base}/value-displays.types.d.ts +0 -0
package/label/index.js DELETED
@@ -1,2 +0,0 @@
1
- import{jsx as t}from"react/jsx-runtime";import r from"@mui/material/Box";import{useTheme as e}from"@mui/material/styles";const o={root:"RdsLabel-root"},a=({text:o,color:a,variant:i="default",textTransform:n="capitalize",sx:s})=>{const{palette:l,typography:c}=e(),g={default:"light"===l.mode?l.grey[100]:l.grey[900],primary:l.primary.light,secondary:l.secondary.light,info:l.info.light,warning:l.warning.light,error:l.error.light,success:l.success.light},f={default:l.getContrastText(g.default),primary:l.primary.contrastText,secondary:l.secondary.contrastText,info:l.info.contrastText,warning:l.warning.contrastText,error:l.error.contrastText,success:l.success.contrastText},m=a||g[i],p=a?l.getContrastText(a):f[i];return t(r,{height:24,minWidth:22,display:"inline-flex",justifyContent:"center",alignItems:"center",bgcolor:m,color:p,fontSize:c.caption.fontSize,fontWeight:c.fontWeightBold,lineHeight:0,textTransform:n,whiteSpace:"nowrap",borderRadius:2,role:"label","aria-label":`${o} ${i} label`,py:0,px:1,sx:{cursor:"default",...s},children:o})};export{a as Label,o as labelClasses};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../src/label/label.tsx"],"sourcesContent":["import Box from \"@mui/material/Box\";\nimport { SxProps, Theme, useTheme } from \"@mui/material/styles\";\n\nexport type LabelVariant =\n | \"primary\"\n | \"secondary\"\n | \"default\"\n | \"info\"\n | \"warning\"\n | \"error\"\n | \"success\";\n\nexport const labelClasses = {\n root: \"RdsLabel-root\",\n};\n\nexport interface LabelProps {\n /**\n * Content of the component\n */\n text: string;\n /**\n * Color palette used to draw the component\n */\n variant?: LabelVariant;\n /**\n * Background color. Overrides variant\n */\n color?: string;\n\n /**\n * Custom styles\n */\n sx?: SxProps<Theme>;\n\n /**\n * Show the text as uppercase\n */\n textTransform?: \"none\" | \"capitalize\" | \"uppercase\";\n}\n\n/**\n * Compact element to represent a text\n */\nexport const Label = ({\n text,\n color: colorProp,\n variant = \"default\",\n textTransform = \"capitalize\",\n sx,\n}: LabelProps) => {\n const { palette, typography } = useTheme();\n\n const backgroundColor: Record<LabelVariant, string> = {\n default: palette.mode === \"light\" ? palette.grey[100] : palette.grey[900],\n primary: palette.primary.light,\n secondary: palette.secondary.light,\n info: palette.info.light,\n warning: palette.warning.light,\n error: palette.error.light,\n success: palette.success.light,\n };\n\n const textColor: Record<LabelVariant, string> = {\n default: palette.getContrastText(backgroundColor.default),\n primary: palette.primary.contrastText,\n secondary: palette.secondary.contrastText,\n info: palette.info.contrastText,\n warning: palette.warning.contrastText,\n error: palette.error.contrastText,\n success: palette.success.contrastText,\n };\n\n const bgcolor = colorProp ? colorProp : backgroundColor[variant];\n const color = colorProp ? palette.getContrastText(colorProp) : textColor[variant];\n\n return (\n <Box\n height={24}\n minWidth={22}\n display=\"inline-flex\"\n justifyContent=\"center\"\n alignItems=\"center\"\n bgcolor={bgcolor}\n color={color}\n fontSize={typography.caption.fontSize}\n fontWeight={typography.fontWeightBold}\n lineHeight={0}\n textTransform={textTransform}\n whiteSpace=\"nowrap\"\n borderRadius={2}\n role=\"label\"\n aria-label={`${text} ${variant} label`}\n py={0}\n px={1}\n sx={{ cursor: \"default\", ...sx }}\n >\n {text}\n </Box>\n );\n};\n"],"names":["labelClasses","root","Label","text","color","colorProp","variant","textTransform","sx","palette","typography","useTheme","backgroundColor","default","mode","grey","primary","light","secondary","info","warning","error","success","textColor","getContrastText","contrastText","bgcolor","_jsx","Box","height","minWidth","display","justifyContent","alignItems","fontSize","caption","fontWeight","fontWeightBold","lineHeight","whiteSpace","borderRadius","role","py","px","cursor","children"],"mappings":"yHAYa,MAAAA,EAAe,CAC1BC,KAAM,iBA+BKC,EAAQ,EACnBC,OACAC,MAAOC,EACPC,UAAU,UACVC,gBAAgB,aAChBC,SAEA,MAAMC,QAAEA,EAAOC,WAAEA,GAAeC,IAE1BC,EAAgD,CACpDC,QAA0B,UAAjBJ,EAAQK,KAAmBL,EAAQM,KAAK,KAAON,EAAQM,KAAK,KACrEC,QAASP,EAAQO,QAAQC,MACzBC,UAAWT,EAAQS,UAAUD,MAC7BE,KAAMV,EAAQU,KAAKF,MACnBG,QAASX,EAAQW,QAAQH,MACzBI,MAAOZ,EAAQY,MAAMJ,MACrBK,QAASb,EAAQa,QAAQL,OAGrBM,EAA0C,CAC9CV,QAASJ,EAAQe,gBAAgBZ,EAAgBC,SACjDG,QAASP,EAAQO,QAAQS,aACzBP,UAAWT,EAAQS,UAAUO,aAC7BN,KAAMV,EAAQU,KAAKM,aACnBL,QAASX,EAAQW,QAAQK,aACzBJ,MAAOZ,EAAQY,MAAMI,aACrBH,QAASb,EAAQa,QAAQG,cAGrBC,EAAUrB,GAAwBO,EAAgBN,GAClDF,EAAQC,EAAYI,EAAQe,gBAAgBnB,GAAakB,EAAUjB,GAEzE,OACEqB,EAACC,EAAG,CACFC,OAAQ,GACRC,SAAU,GACVC,QAAQ,cACRC,eAAe,SACfC,WAAW,SACXP,QAASA,EACTtB,MAAOA,EACP8B,SAAUxB,EAAWyB,QAAQD,SAC7BE,WAAY1B,EAAW2B,eACvBC,WAAY,EACZ/B,cAAeA,EACfgC,WAAW,SACXC,aAAc,EACdC,KAAK,qBACO,GAAGtC,KAAQG,UACvBoC,GAAI,EACJC,GAAI,EACJnC,GAAI,CAAEoC,OAAQ,aAAcpC,GAE3BqC,SAAA1C,GACG"}
@@ -1,11 +0,0 @@
1
- {
2
- "name": "@pautena/react-design-system/label",
3
- "private": true,
4
- "main": "./cjs/index.js",
5
- "module": "./index.js",
6
- "types": "./index.d.ts",
7
- "dependencies": {
8
- "@mui/material": "^6.4.5",
9
- "react": "^19.0.0"
10
- }
11
- }
@@ -1,2 +0,0 @@
1
- "use strict";var r=require("react/jsx-runtime"),e=require("@mui/material/Paper"),i=require("@mui/material/Typography"),t=require("@mui/material/Link"),a=require("@mui/material/styles"),o=require("@mui/material/colors");exports.LinkCard=({variant:n="primary",title:l,message:m,href:s,linkText:u,sx:c})=>{const{palette:x}=a.useTheme(),d={p:3,display:"flex",flexDirection:"column",textDecoration:"none",backgroundColor:"light"===x.mode?o.grey[50]:o.grey[900],borderColor:o.grey[400],":hover":{borderColor:x[n].main,backgroundColor:"light"===x.mode?x.common.white:o.grey[800]}};return r.jsxs(e,{component:t,href:s,variant:"outlined",sx:{...d,...c},children:[r.jsx(i,{variant:"h6",children:l}),r.jsx(i,{variant:"caption",sx:{mt:2},children:m}),u&&r.jsx(i,{color:n,variant:"button",sx:{mt:2},children:u})]})};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/link-card/link-card.tsx"],"sourcesContent":["import Paper from \"@mui/material/Paper\";\nimport Typography from \"@mui/material/Typography\";\nimport Link from \"@mui/material/Link\";\nimport { SxProps, Theme, useTheme } from \"@mui/material/styles\";\nimport { grey } from \"@mui/material/colors\";\n\nexport type LinkCardVariant = \"primary\" | \"secondary\" | \"info\" | \"warning\" | \"error\";\nexport interface LinkCardProps {\n variant?: LinkCardVariant;\n href: string;\n title: string;\n message: string;\n linkText?: string;\n sx?: SxProps<Theme>;\n}\n\nexport const LinkCard = ({\n variant = \"primary\",\n title,\n message,\n href,\n linkText,\n sx,\n}: LinkCardProps) => {\n const { palette } = useTheme();\n\n const rootSx: SxProps<Theme> = {\n p: 3,\n display: \"flex\",\n flexDirection: \"column\",\n textDecoration: \"none\",\n backgroundColor: palette.mode === \"light\" ? grey[50] : grey[900],\n borderColor: grey[400],\n \":hover\": {\n borderColor: palette[variant].main,\n backgroundColor: palette.mode === \"light\" ? palette.common.white : grey[800],\n },\n };\n\n return (\n <Paper component={Link} href={href} variant=\"outlined\" sx={{ ...rootSx, ...sx }}>\n <Typography variant=\"h6\">{title}</Typography>\n <Typography variant=\"caption\" sx={{ mt: 2 }}>\n {message}\n </Typography>\n {linkText && (\n <Typography color={variant} variant=\"button\" sx={{ mt: 2 }}>\n {linkText}\n </Typography>\n )}\n </Paper>\n );\n};\n"],"names":["variant","title","message","href","linkText","sx","palette","useTheme","rootSx","p","display","flexDirection","textDecoration","backgroundColor","mode","grey","borderColor","main","common","white","_jsxs","Paper","component","Link","children","_jsx","Typography","jsx","mt","color"],"mappings":"4OAgBwB,EACtBA,UAAU,UACVC,QACAC,UACAC,OACAC,WACAC,SAEA,MAAMC,QAAEA,GAAYC,aAEdC,EAAyB,CAC7BC,EAAG,EACHC,QAAS,OACTC,cAAe,SACfC,eAAgB,OAChBC,gBAAkC,UAAjBP,EAAQQ,KAAmBC,EAAIA,KAAC,IAAMA,EAAIA,KAAC,KAC5DC,YAAaD,EAAIA,KAAC,KAClB,SAAU,CACRC,YAAaV,EAAQN,GAASiB,KAC9BJ,gBAAkC,UAAjBP,EAAQQ,KAAmBR,EAAQY,OAAOC,MAAQJ,EAAIA,KAAC,OAI5E,OACEK,OAACC,EAAM,CAAAC,UAAWC,EAAMpB,KAAMA,EAAMH,QAAQ,WAAWK,GAAI,IAAKG,KAAWH,GAAImB,SAAA,CAC7EC,MAACC,EAAU,CAAC1B,QAAQ,KAAMwB,SAAAvB,IAC1BwB,EAAAE,IAACD,EAAW,CAAA1B,QAAQ,UAAUK,GAAI,CAAEuB,GAAI,GACrCJ,SAAAtB,IAEFE,GACCqB,EAAAA,IAACC,EAAW,CAAAG,MAAO7B,EAASA,QAAQ,SAASK,GAAI,CAAEuB,GAAI,GACpDJ,SAAApB,MAGC"}
@@ -1,11 +0,0 @@
1
- {
2
- "name": "@pautena/react-design-system/link-card",
3
- "private": true,
4
- "main": "./cjs/index.js",
5
- "module": "./index.js",
6
- "types": "./index.d.ts",
7
- "dependencies": {
8
- "@mui/material": "^6.4.5",
9
- "react": "^19.0.0"
10
- }
11
- }
@@ -1 +0,0 @@
1
- export * from "./link-card";
@@ -1,2 +0,0 @@
1
- import{jsxs as r,jsx as o}from"react/jsx-runtime";import t from"@mui/material/Paper";import i from"@mui/material/Typography";import e from"@mui/material/Link";import{useTheme as m}from"@mui/material/styles";import{grey as a}from"@mui/material/colors";const n=({variant:n="primary",title:l,message:c,href:p,linkText:s,sx:d})=>{const{palette:h}=m(),u={p:3,display:"flex",flexDirection:"column",textDecoration:"none",backgroundColor:"light"===h.mode?a[50]:a[900],borderColor:a[400],":hover":{borderColor:h[n].main,backgroundColor:"light"===h.mode?h.common.white:a[800]}};return r(t,{component:e,href:p,variant:"outlined",sx:{...u,...d},children:[o(i,{variant:"h6",children:l}),o(i,{variant:"caption",sx:{mt:2},children:c}),s&&o(i,{color:n,variant:"button",sx:{mt:2},children:s})]})};export{n as LinkCard};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../src/link-card/link-card.tsx"],"sourcesContent":["import Paper from \"@mui/material/Paper\";\nimport Typography from \"@mui/material/Typography\";\nimport Link from \"@mui/material/Link\";\nimport { SxProps, Theme, useTheme } from \"@mui/material/styles\";\nimport { grey } from \"@mui/material/colors\";\n\nexport type LinkCardVariant = \"primary\" | \"secondary\" | \"info\" | \"warning\" | \"error\";\nexport interface LinkCardProps {\n variant?: LinkCardVariant;\n href: string;\n title: string;\n message: string;\n linkText?: string;\n sx?: SxProps<Theme>;\n}\n\nexport const LinkCard = ({\n variant = \"primary\",\n title,\n message,\n href,\n linkText,\n sx,\n}: LinkCardProps) => {\n const { palette } = useTheme();\n\n const rootSx: SxProps<Theme> = {\n p: 3,\n display: \"flex\",\n flexDirection: \"column\",\n textDecoration: \"none\",\n backgroundColor: palette.mode === \"light\" ? grey[50] : grey[900],\n borderColor: grey[400],\n \":hover\": {\n borderColor: palette[variant].main,\n backgroundColor: palette.mode === \"light\" ? palette.common.white : grey[800],\n },\n };\n\n return (\n <Paper component={Link} href={href} variant=\"outlined\" sx={{ ...rootSx, ...sx }}>\n <Typography variant=\"h6\">{title}</Typography>\n <Typography variant=\"caption\" sx={{ mt: 2 }}>\n {message}\n </Typography>\n {linkText && (\n <Typography color={variant} variant=\"button\" sx={{ mt: 2 }}>\n {linkText}\n </Typography>\n )}\n </Paper>\n );\n};\n"],"names":["LinkCard","variant","title","message","href","linkText","sx","palette","useTheme","rootSx","p","display","flexDirection","textDecoration","backgroundColor","mode","grey","borderColor","main","common","white","_jsxs","Paper","component","Link","children","_jsx","Typography","mt","color"],"mappings":"iQAgBaA,EAAW,EACtBC,UAAU,UACVC,QACAC,UACAC,OACAC,WACAC,SAEA,MAAMC,QAAEA,GAAYC,IAEdC,EAAyB,CAC7BC,EAAG,EACHC,QAAS,OACTC,cAAe,SACfC,eAAgB,OAChBC,gBAAkC,UAAjBP,EAAQQ,KAAmBC,EAAK,IAAMA,EAAK,KAC5DC,YAAaD,EAAK,KAClB,SAAU,CACRC,YAAaV,EAAQN,GAASiB,KAC9BJ,gBAAkC,UAAjBP,EAAQQ,KAAmBR,EAAQY,OAAOC,MAAQJ,EAAK,OAI5E,OACEK,EAACC,EAAM,CAAAC,UAAWC,EAAMpB,KAAMA,EAAMH,QAAQ,WAAWK,GAAI,IAAKG,KAAWH,GAAImB,SAAA,CAC7EC,EAACC,EAAU,CAAC1B,QAAQ,KAAMwB,SAAAvB,IAC1BwB,EAACC,EAAW,CAAA1B,QAAQ,UAAUK,GAAI,CAAEsB,GAAI,GACrCH,SAAAtB,IAEFE,GACCqB,EAACC,EAAW,CAAAE,MAAO5B,EAASA,QAAQ,SAASK,GAAI,CAAEsB,GAAI,GACpDH,SAAApB,MAGC"}
@@ -1,11 +0,0 @@
1
- {
2
- "name": "@pautena/react-design-system/link-card",
3
- "private": true,
4
- "main": "./cjs/index.js",
5
- "module": "./index.js",
6
- "types": "./index.d.ts",
7
- "dependencies": {
8
- "@mui/material": "^6.4.5",
9
- "react": "^19.0.0"
10
- }
11
- }
@@ -1,2 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),t=require("react"),r=require("@mui/material/Grid"),i=require("@mui/material/List"),a=require("@mui/material/ListItemButton"),l=require("@mui/material/ListItemText"),o=require("@mui/material/Paper"),n=require("@mui/material/Tooltip"),s=require("@mui/material"),u=require("@mui/material/colors");const m=t.createContext(void 0),h=m.Provider;exports.ListPanel=({items:m,defaultSelectedItem:p,colBreakpoint:c=3,listMode:d="panel",children:x,onSelectedItemChange:g=(()=>null)})=>{m.map((e=>e.path)).filter(Boolean);const y=(({lightWeight:e=100,darkWeight:t=900}={})=>{const{palette:r}=s.useTheme();return"light"===r.mode?r.grey[e]:r.grey[t]})(),{palette:q,typography:j}=s.useTheme(),[v,L]=t.useState(p);return e.jsx(h,{value:v,children:e.jsxs(r,{container:!0,bgcolor:y,height:1,children:[e.jsx(r,{item:!0,xs:c,pl:1,height:1,children:e.jsx(i,{sx:{height:1,overflowY:"auto"},children:m.map((({id:r,text:i,tooltip:o,path:m,href:h})=>{const p="navigation"===d?{component:s.Link,href:h}:{},c=t.createElement(a,{...p,key:r,dense:!0,onClick:()=>(e=>{L(e),g(e)})(r),"aria-label":i},e.jsx(l,{primary:i,primaryTypographyProps:{color:u.grey[600]}}));return o?e.jsx(n,{title:o,enterDelay:1500,placement:"right",children:c},r):c}))})}),e.jsx(r,{item:!0,xs:12-c,pl:1,py:1,pr:1,children:e.jsx(o,{elevation:0,sx:{width:1,height:1,backgroundColor:q.background.paper},children:x})})]})})},exports.ListPanelContext=m,exports.ListPanelContextProvider=h,exports.useListPanel=()=>t.useContext(m);
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/utils/theme.ts","../../../src/list-panel/list-panel.context.tsx","../../../src/list-panel/list-panel.tsx"],"sourcesContent":["import { Color, useTheme } from \"@mui/material\";\n\ntype KeyColor = keyof Color;\n\nexport const useGetDefaultThemeColor = ({\n lightWeight = 100,\n darkWeight = 900,\n}: { lightWeight?: KeyColor; darkWeight?: KeyColor } = {}) => {\n const { palette } = useTheme();\n return palette.mode === \"light\" ? palette.grey[lightWeight] : palette.grey[darkWeight];\n};\n","import { createContext, useContext } from \"react\";\n\nexport const ListPanelContext = createContext<string | undefined>(undefined);\nexport const ListPanelContextProvider = ListPanelContext.Provider;\nexport const useListPanel = () => useContext(ListPanelContext);\n","import Grid from \"@mui/material/Grid\";\nimport List from \"@mui/material/List\";\nimport ListItemButton from \"@mui/material/ListItemButton\";\nimport ListItemText from \"@mui/material/ListItemText\";\nimport Paper from \"@mui/material/Paper\";\nimport Tooltip from \"@mui/material/Tooltip\";\nimport { Link, useTheme } from \"@mui/material\";\nimport { PropsWithChildren, useState } from \"react\";\nimport { useGetDefaultThemeColor } from \"../utils\";\nimport { ListPanelContextProvider } from \"./list-panel.context\";\nimport { grey } from \"@mui/material/colors\";\n\nexport interface ListPanelItem {\n id: string;\n text: string;\n tooltip?: string;\n href?: string;\n path?: string;\n}\n\nexport type ListPanelProps = PropsWithChildren<{\n defaultSelectedItem?: string;\n items: ListPanelItem[];\n listMode?: \"panel\" | \"navigation\";\n colBreakpoint?: number;\n onSelectedItemChange?: (id: string) => void;\n}>;\n\nexport const ListPanel = ({\n items,\n defaultSelectedItem,\n colBreakpoint = 3,\n listMode = \"panel\",\n children,\n onSelectedItemChange = () => null,\n}: ListPanelProps) => {\n const paths = items.map((item) => item.path).filter(Boolean) as string[];\n\n const bgColor = useGetDefaultThemeColor();\n const { palette, typography } = useTheme();\n const [selectedItem, setSelectedItem] = useState(defaultSelectedItem);\n\n const handleSelectItem = (id: string) => {\n setSelectedItem(id);\n onSelectedItemChange(id);\n };\n\n return (\n <ListPanelContextProvider value={selectedItem}>\n <Grid container bgcolor={bgColor} height={1}>\n <Grid item xs={colBreakpoint} pl={1} height={1}>\n <List sx={{ height: 1, overflowY: \"auto\" }}>\n {items.map(({ id, text, tooltip, path, href }) => {\n const linkProps = listMode === \"navigation\" ? { component: Link, href } : {};\n\n const contentEl = (\n <ListItemButton\n {...linkProps}\n key={id}\n dense\n onClick={() => handleSelectItem(id)}\n aria-label={text}\n >\n <ListItemText\n primary={text}\n primaryTypographyProps={{\n color: grey[600],\n }}\n />\n </ListItemButton>\n );\n\n return tooltip ? (\n <Tooltip key={id} title={tooltip} enterDelay={1500} placement=\"right\">\n {contentEl}\n </Tooltip>\n ) : (\n contentEl\n );\n })}\n </List>\n </Grid>\n <Grid item xs={12 - colBreakpoint} pl={1} py={1} pr={1}>\n <Paper\n elevation={0}\n sx={{\n width: 1,\n height: 1,\n backgroundColor: palette.background.paper,\n }}\n >\n {children}\n </Paper>\n </Grid>\n </Grid>\n </ListPanelContextProvider>\n );\n};\n"],"names":["ListPanelContext","createContext","undefined","ListPanelContextProvider","Provider","items","defaultSelectedItem","colBreakpoint","listMode","children","onSelectedItemChange","map","item","path","filter","Boolean","bgColor","lightWeight","darkWeight","palette","useTheme","mode","grey","useGetDefaultThemeColor","typography","selectedItem","setSelectedItem","useState","_jsx","jsx","value","_jsxs","Grid","container","bgcolor","height","xs","pl","List","sx","overflowY","id","text","tooltip","href","linkProps","component","Link","contentEl","_createElement","ListItemButton","key","dense","onClick","handleSelectItem","ListItemText","primary","primaryTypographyProps","color","Tooltip","title","enterDelay","placement","py","pr","Paper","elevation","width","backgroundColor","background","paper","useContext"],"mappings":"sVAIO,MCFMA,EAAmBC,EAAaA,mBAAqBC,GACrDC,EAA2BH,EAAiBI,2BCyBhC,EACvBC,QACAC,sBACAC,gBAAgB,EAChBC,WAAW,QACXC,WACAC,uBAAuB,KAAM,UAEfL,EAAMM,KAAKC,GAASA,EAAKC,OAAMC,OAAOC,SAEpD,MAAMC,EFlC+B,GACrCC,cAAc,IACdC,aAAa,KACwC,MACrD,MAAMC,QAAEA,GAAYC,aACpB,MAAwB,UAAjBD,EAAQE,KAAmBF,EAAQG,KAAKL,GAAeE,EAAQG,KAAKJ,EAAW,EE6BtEK,IACVJ,QAAEA,EAAOK,WAAEA,GAAeJ,cACzBK,EAAcC,GAAmBC,EAAAA,SAASrB,GAOjD,OACEsB,EAAAC,IAAC1B,EAAwB,CAAC2B,MAAOL,EAC/BhB,SAAAsB,OAACC,EAAI,CAACC,WAAS,EAACC,QAASlB,EAASmB,OAAQ,EACxC1B,SAAA,CAAAmB,EAAAA,IAACI,EAAK,CAAApB,MAAK,EAAAwB,GAAI7B,EAAe8B,GAAI,EAAGF,OAAQ,EAC3C1B,SAAAmB,EAAAA,IAACU,EAAI,CAACC,GAAI,CAAEJ,OAAQ,EAAGK,UAAW,QAAQ/B,SACvCJ,EAAMM,KAAI,EAAG8B,KAAIC,OAAMC,UAAS9B,OAAM+B,WACrC,MAAMC,EAAyB,eAAbrC,EAA4B,CAAEsC,UAAWC,EAAIA,KAAEH,QAAS,CAAE,EAEtEI,EACJC,EAAAA,cAACC,MACKL,EACJM,IAAKV,EACLW,OACA,EAAAC,QAAS,IAlBA,CAACZ,IACxBf,EAAgBe,GAChB/B,EAAqB+B,EAAG,EAgBKa,CAAiBb,GAAG,aACvBC,GAEZd,EAAAA,IAAC2B,EACC,CAAAC,QAASd,EACTe,uBAAwB,CACtBC,MAAOpC,EAAIA,KAAC,SAMpB,OAAOqB,EACLf,EAAAA,IAAC+B,EAAO,CAAUC,MAAOjB,EAASkB,WAAY,KAAMC,UAAU,QAC3DrD,SAAAuC,GADWP,GAEJ,CAGX,QAIPb,EAAAA,IAACI,EAAI,CAACpB,MAAI,EAACwB,GAAI,GAAK7B,EAAe8B,GAAI,EAAG0B,GAAI,EAAGC,GAAI,EAACvD,SACpDmB,EAACC,IAAAoC,GACCC,UAAW,EACX3B,GAAI,CACF4B,MAAO,EACPhC,OAAQ,EACRiC,gBAAiBjD,EAAQkD,WAAWC,OACrC7D,SAEAA,UAIkB,qFD3FH,IAAM8D,EAAAA,WAAWvE"}
@@ -1,11 +0,0 @@
1
- {
2
- "name": "@pautena/react-design-system/list-panel",
3
- "private": true,
4
- "main": "./cjs/index.js",
5
- "module": "./index.js",
6
- "types": "./index.d.ts",
7
- "dependencies": {
8
- "@mui/material": "^6.4.5",
9
- "react": "^19.0.0"
10
- }
11
- }
@@ -1,2 +0,0 @@
1
- export * from "./list-panel";
2
- export * from "./list-panel.context";
@@ -1,2 +0,0 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{createContext as r,useContext as i,useState as o,createElement as m}from"react";import a from"@mui/material/Grid";import l from"@mui/material/List";import p from"@mui/material/ListItemButton";import n from"@mui/material/ListItemText";import h from"@mui/material/Paper";import c from"@mui/material/Tooltip";import{useTheme as d,Link as u}from"@mui/material";import{grey as g}from"@mui/material/colors";const s=r(void 0),f=s.Provider,y=()=>i(s),x=({items:r,defaultSelectedItem:i,colBreakpoint:s=3,listMode:y="panel",children:x,onSelectedItemChange:k=(()=>null)})=>{r.map((e=>e.path)).filter(Boolean);const v=(({lightWeight:e=100,darkWeight:t=900}={})=>{const{palette:r}=d();return"light"===r.mode?r.grey[e]:r.grey[t]})(),{palette:b,typography:I}=d(),[B,C]=o(i);return e(f,{value:B,children:t(a,{container:!0,bgcolor:v,height:1,children:[e(a,{item:!0,xs:s,pl:1,height:1,children:e(l,{sx:{height:1,overflowY:"auto"},children:r.map((({id:t,text:r,tooltip:i,path:o,href:a})=>{const l=m(p,{..."navigation"===y?{component:u,href:a}:{},key:t,dense:!0,onClick:()=>(e=>{C(e),k(e)})(t),"aria-label":r},e(n,{primary:r,primaryTypographyProps:{color:g[600]}}));return i?e(c,{title:i,enterDelay:1500,placement:"right",children:l},t):l}))})}),e(a,{item:!0,xs:12-s,pl:1,py:1,pr:1,children:e(h,{elevation:0,sx:{width:1,height:1,backgroundColor:b.background.paper},children:x})})]})})};export{x as ListPanel,s as ListPanelContext,f as ListPanelContextProvider,y as useListPanel};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../src/utils/theme.ts","../../src/list-panel/list-panel.context.tsx","../../src/list-panel/list-panel.tsx"],"sourcesContent":["import { Color, useTheme } from \"@mui/material\";\n\ntype KeyColor = keyof Color;\n\nexport const useGetDefaultThemeColor = ({\n lightWeight = 100,\n darkWeight = 900,\n}: { lightWeight?: KeyColor; darkWeight?: KeyColor } = {}) => {\n const { palette } = useTheme();\n return palette.mode === \"light\" ? palette.grey[lightWeight] : palette.grey[darkWeight];\n};\n","import { createContext, useContext } from \"react\";\n\nexport const ListPanelContext = createContext<string | undefined>(undefined);\nexport const ListPanelContextProvider = ListPanelContext.Provider;\nexport const useListPanel = () => useContext(ListPanelContext);\n","import Grid from \"@mui/material/Grid\";\nimport List from \"@mui/material/List\";\nimport ListItemButton from \"@mui/material/ListItemButton\";\nimport ListItemText from \"@mui/material/ListItemText\";\nimport Paper from \"@mui/material/Paper\";\nimport Tooltip from \"@mui/material/Tooltip\";\nimport { Link, useTheme } from \"@mui/material\";\nimport { PropsWithChildren, useState } from \"react\";\nimport { useGetDefaultThemeColor } from \"../utils\";\nimport { ListPanelContextProvider } from \"./list-panel.context\";\nimport { grey } from \"@mui/material/colors\";\n\nexport interface ListPanelItem {\n id: string;\n text: string;\n tooltip?: string;\n href?: string;\n path?: string;\n}\n\nexport type ListPanelProps = PropsWithChildren<{\n defaultSelectedItem?: string;\n items: ListPanelItem[];\n listMode?: \"panel\" | \"navigation\";\n colBreakpoint?: number;\n onSelectedItemChange?: (id: string) => void;\n}>;\n\nexport const ListPanel = ({\n items,\n defaultSelectedItem,\n colBreakpoint = 3,\n listMode = \"panel\",\n children,\n onSelectedItemChange = () => null,\n}: ListPanelProps) => {\n const paths = items.map((item) => item.path).filter(Boolean) as string[];\n\n const bgColor = useGetDefaultThemeColor();\n const { palette, typography } = useTheme();\n const [selectedItem, setSelectedItem] = useState(defaultSelectedItem);\n\n const handleSelectItem = (id: string) => {\n setSelectedItem(id);\n onSelectedItemChange(id);\n };\n\n return (\n <ListPanelContextProvider value={selectedItem}>\n <Grid container bgcolor={bgColor} height={1}>\n <Grid item xs={colBreakpoint} pl={1} height={1}>\n <List sx={{ height: 1, overflowY: \"auto\" }}>\n {items.map(({ id, text, tooltip, path, href }) => {\n const linkProps = listMode === \"navigation\" ? { component: Link, href } : {};\n\n const contentEl = (\n <ListItemButton\n {...linkProps}\n key={id}\n dense\n onClick={() => handleSelectItem(id)}\n aria-label={text}\n >\n <ListItemText\n primary={text}\n primaryTypographyProps={{\n color: grey[600],\n }}\n />\n </ListItemButton>\n );\n\n return tooltip ? (\n <Tooltip key={id} title={tooltip} enterDelay={1500} placement=\"right\">\n {contentEl}\n </Tooltip>\n ) : (\n contentEl\n );\n })}\n </List>\n </Grid>\n <Grid item xs={12 - colBreakpoint} pl={1} py={1} pr={1}>\n <Paper\n elevation={0}\n sx={{\n width: 1,\n height: 1,\n backgroundColor: palette.background.paper,\n }}\n >\n {children}\n </Paper>\n </Grid>\n </Grid>\n </ListPanelContextProvider>\n );\n};\n"],"names":["ListPanelContext","createContext","undefined","ListPanelContextProvider","Provider","useListPanel","useContext","ListPanel","items","defaultSelectedItem","colBreakpoint","listMode","children","onSelectedItemChange","map","item","path","filter","Boolean","bgColor","lightWeight","darkWeight","palette","useTheme","mode","grey","useGetDefaultThemeColor","typography","selectedItem","setSelectedItem","useState","_jsx","value","_jsxs","Grid","container","bgcolor","height","xs","pl","List","sx","overflowY","id","text","tooltip","href","contentEl","_createElement","ListItemButton","component","Link","key","dense","onClick","handleSelectItem","ListItemText","primary","primaryTypographyProps","color","Tooltip","title","enterDelay","placement","py","pr","Paper","elevation","width","backgroundColor","background","paper"],"mappings":"0cAIO,MCFMA,EAAmBC,OAAkCC,GACrDC,EAA2BH,EAAiBI,SAC5CC,EAAe,IAAMC,EAAWN,GCwBhCO,EAAY,EACvBC,QACAC,sBACAC,gBAAgB,EAChBC,WAAW,QACXC,WACAC,uBAAuB,KAAM,UAEfL,EAAMM,KAAKC,GAASA,EAAKC,OAAMC,OAAOC,SAEpD,MAAMC,EFlC+B,GACrCC,cAAc,IACdC,aAAa,KACwC,MACrD,MAAMC,QAAEA,GAAYC,IACpB,MAAwB,UAAjBD,EAAQE,KAAmBF,EAAQG,KAAKL,GAAeE,EAAQG,KAAKJ,EAAW,EE6BtEK,IACVJ,QAAEA,EAAOK,WAAEA,GAAeJ,KACzBK,EAAcC,GAAmBC,EAASrB,GAOjD,OACEsB,EAAC5B,EAAwB,CAAC6B,MAAOJ,EAC/BhB,SAAAqB,EAACC,EAAI,CAACC,WAAS,EAACC,QAASjB,EAASkB,OAAQ,EACxCzB,SAAA,CAAAmB,EAACG,EAAK,CAAAnB,MAAK,EAAAuB,GAAI5B,EAAe6B,GAAI,EAAGF,OAAQ,EAC3CzB,SAAAmB,EAACS,EAAI,CAACC,GAAI,CAAEJ,OAAQ,EAAGK,UAAW,QAAQ9B,SACvCJ,EAAMM,KAAI,EAAG6B,KAAIC,OAAMC,UAAS7B,OAAM8B,WACrC,MAEMC,EACJC,EAACC,MAH4B,eAAbtC,EAA4B,CAAEuC,UAAWC,EAAML,QAAS,CAAE,EAKxEM,IAAKT,EACLU,OACA,EAAAC,QAAS,IAlBA,CAACX,IACxBd,EAAgBc,GAChB9B,EAAqB8B,EAAG,EAgBKY,CAAiBZ,GAAG,aACvBC,GAEZb,EAACyB,EACC,CAAAC,QAASb,EACTc,uBAAwB,CACtBC,MAAOlC,EAAK,SAMpB,OAAOoB,EACLd,EAAC6B,EAAO,CAAUC,MAAOhB,EAASiB,WAAY,KAAMC,UAAU,QAC3DnD,SAAAmC,GADWJ,GAEJ,CAGX,QAIPZ,EAACG,EAAI,CAACnB,MAAI,EAACuB,GAAI,GAAK5B,EAAe6B,GAAI,EAAGyB,GAAI,EAAGC,GAAI,EAACrD,SACpDmB,EAACmC,GACCC,UAAW,EACX1B,GAAI,CACF2B,MAAO,EACP/B,OAAQ,EACRgC,gBAAiB/C,EAAQgD,WAAWC,OACrC3D,SAEAA,UAIkB"}
@@ -1,3 +0,0 @@
1
- export declare const ListPanelContext: import("react").Context<string | undefined>;
2
- export declare const ListPanelContextProvider: import("react").Provider<string | undefined>;
3
- export declare const useListPanel: () => string | undefined;
@@ -1,11 +0,0 @@
1
- {
2
- "name": "@pautena/react-design-system/list-panel",
3
- "private": true,
4
- "main": "./cjs/index.js",
5
- "module": "./index.js",
6
- "types": "./index.d.ts",
7
- "dependencies": {
8
- "@mui/material": "^6.4.5",
9
- "react": "^19.0.0"
10
- }
11
- }
@@ -1,2 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("@mui/material/CircularProgress"),i=require("@mui/material/Box");exports.LoadingArea=()=>e.jsx(i,{width:1,height:1,display:"flex",justifyContent:"center",alignItems:"center",children:e.jsx(r,{})});
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/loading-area/loading-area.tsx"],"sourcesContent":["import CircularProgress from \"@mui/material/CircularProgress\";\nimport Box from \"@mui/material/Box\";\n\n/**\n * Displays a centered loading indicator\n */\nexport const LoadingArea = () => {\n return (\n <Box width={1} height={1} display=\"flex\" justifyContent=\"center\" alignItems=\"center\">\n <CircularProgress />\n </Box>\n );\n};\n"],"names":["_jsx","Box","width","height","display","justifyContent","alignItems","children","CircularProgress"],"mappings":"+IAM2B,IAEvBA,EAAAA,IAACC,EAAG,CAACC,MAAO,EAAGC,OAAQ,EAAGC,QAAQ,OAAOC,eAAe,SAASC,WAAW,SAAQC,SAClFP,EAAAA,IAACQ,EAAmB,CAAA"}
@@ -1,11 +0,0 @@
1
- {
2
- "name": "@pautena/react-design-system/loading-area",
3
- "private": true,
4
- "main": "./cjs/index.js",
5
- "module": "./index.js",
6
- "types": "./index.d.ts",
7
- "dependencies": {
8
- "@mui/material": "^6.4.5",
9
- "react": "^19.0.0"
10
- }
11
- }
@@ -1 +0,0 @@
1
- export * from "./loading-area";
@@ -1,2 +0,0 @@
1
- import{jsx as r}from"react/jsx-runtime";import t from"@mui/material/CircularProgress";import e from"@mui/material/Box";const i=()=>r(e,{width:1,height:1,display:"flex",justifyContent:"center",alignItems:"center",children:r(t,{})});export{i as LoadingArea};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../src/loading-area/loading-area.tsx"],"sourcesContent":["import CircularProgress from \"@mui/material/CircularProgress\";\nimport Box from \"@mui/material/Box\";\n\n/**\n * Displays a centered loading indicator\n */\nexport const LoadingArea = () => {\n return (\n <Box width={1} height={1} display=\"flex\" justifyContent=\"center\" alignItems=\"center\">\n <CircularProgress />\n </Box>\n );\n};\n"],"names":["LoadingArea","_jsx","Box","width","height","display","justifyContent","alignItems","children","CircularProgress"],"mappings":"uHAMO,MAAMA,EAAc,IAEvBC,EAACC,EAAG,CAACC,MAAO,EAAGC,OAAQ,EAAGC,QAAQ,OAAOC,eAAe,SAASC,WAAW,SAAQC,SAClFP,EAACQ,EAAmB,CAAA"}
@@ -1,11 +0,0 @@
1
- {
2
- "name": "@pautena/react-design-system/loading-area",
3
- "private": true,
4
- "main": "./cjs/index.js",
5
- "module": "./index.js",
6
- "types": "./index.d.ts",
7
- "dependencies": {
8
- "@mui/material": "^6.4.5",
9
- "react": "^19.0.0"
10
- }
11
- }
@@ -1,2 +0,0 @@
1
- "use strict";var t=require("@mui/material/Typography");const o={overrides:{h1:{component:t,props:{gutterBottom:!0,variant:"h5"}},h2:{component:t,props:{gutterBottom:!0,variant:"h6"}},h3:{component:t,props:{gutterBottom:!0,variant:"subtitle1"}},h4:{component:t,props:{gutterBottom:!0,variant:"caption",paragraph:!0}},p:{component:t,props:{paragraph:!0}},a:{component:require("@mui/material/Link")},li:{component:"li"}}};exports.markdownMuiOptions=o;
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/markdown/markdown.tsx"],"sourcesContent":["import Typography from \"@mui/material/Typography\";\nimport Link from \"@mui/material/Link\";\n\nexport const markdownMuiOptions = {\n overrides: {\n h1: {\n component: Typography,\n props: {\n gutterBottom: true,\n variant: \"h5\",\n },\n },\n h2: { component: Typography, props: { gutterBottom: true, variant: \"h6\" } },\n h3: {\n component: Typography,\n props: { gutterBottom: true, variant: \"subtitle1\" },\n },\n h4: {\n component: Typography,\n props: { gutterBottom: true, variant: \"caption\", paragraph: true },\n },\n p: { component: Typography, props: { paragraph: true } },\n a: { component: Link },\n li: {\n component: \"li\",\n },\n },\n};\n"],"names":["markdownMuiOptions","overrides","h1","component","Typography","props","gutterBottom","variant","h2","h3","h4","paragraph","p","a","li"],"mappings":"uDAGa,MAAAA,EAAqB,CAChCC,UAAW,CACTC,GAAI,CACFC,UAAWC,EACXC,MAAO,CACLC,cAAc,EACdC,QAAS,OAGbC,GAAI,CAAEL,UAAWC,EAAYC,MAAO,CAAEC,cAAc,EAAMC,QAAS,OACnEE,GAAI,CACFN,UAAWC,EACXC,MAAO,CAAEC,cAAc,EAAMC,QAAS,cAExCG,GAAI,CACFP,UAAWC,EACXC,MAAO,CAAEC,cAAc,EAAMC,QAAS,UAAWI,WAAW,IAE9DC,EAAG,CAAET,UAAWC,EAAYC,MAAO,CAAEM,WAAW,IAChDE,EAAG,CAAEV,yCACLW,GAAI,CACFX,UAAW"}
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@pautena/react-design-system/markdown",
3
- "private": true,
4
- "main": "./cjs/index.js",
5
- "module": "./index.js",
6
- "types": "./index.d.ts",
7
- "dependencies": {
8
- "@mui/material": "^6.4.5"
9
- }
10
- }
@@ -1 +0,0 @@
1
- export * from "./markdown";
package/markdown/index.js DELETED
@@ -1,2 +0,0 @@
1
- import o from"@mui/material/Typography";import t from"@mui/material/Link";const p={overrides:{h1:{component:o,props:{gutterBottom:!0,variant:"h5"}},h2:{component:o,props:{gutterBottom:!0,variant:"h6"}},h3:{component:o,props:{gutterBottom:!0,variant:"subtitle1"}},h4:{component:o,props:{gutterBottom:!0,variant:"caption",paragraph:!0}},p:{component:o,props:{paragraph:!0}},a:{component:t},li:{component:"li"}}};export{p as markdownMuiOptions};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../src/markdown/markdown.tsx"],"sourcesContent":["import Typography from \"@mui/material/Typography\";\nimport Link from \"@mui/material/Link\";\n\nexport const markdownMuiOptions = {\n overrides: {\n h1: {\n component: Typography,\n props: {\n gutterBottom: true,\n variant: \"h5\",\n },\n },\n h2: { component: Typography, props: { gutterBottom: true, variant: \"h6\" } },\n h3: {\n component: Typography,\n props: { gutterBottom: true, variant: \"subtitle1\" },\n },\n h4: {\n component: Typography,\n props: { gutterBottom: true, variant: \"caption\", paragraph: true },\n },\n p: { component: Typography, props: { paragraph: true } },\n a: { component: Link },\n li: {\n component: \"li\",\n },\n },\n};\n"],"names":["markdownMuiOptions","overrides","h1","component","Typography","props","gutterBottom","variant","h2","h3","h4","paragraph","p","a","Link","li"],"mappings":"0EAGa,MAAAA,EAAqB,CAChCC,UAAW,CACTC,GAAI,CACFC,UAAWC,EACXC,MAAO,CACLC,cAAc,EACdC,QAAS,OAGbC,GAAI,CAAEL,UAAWC,EAAYC,MAAO,CAAEC,cAAc,EAAMC,QAAS,OACnEE,GAAI,CACFN,UAAWC,EACXC,MAAO,CAAEC,cAAc,EAAMC,QAAS,cAExCG,GAAI,CACFP,UAAWC,EACXC,MAAO,CAAEC,cAAc,EAAMC,QAAS,UAAWI,WAAW,IAE9DC,EAAG,CAAET,UAAWC,EAAYC,MAAO,CAAEM,WAAW,IAChDE,EAAG,CAAEV,UAAWW,GAChBC,GAAI,CACFZ,UAAW"}
@@ -1,10 +0,0 @@
1
- {
2
- "name": "@pautena/react-design-system/markdown",
3
- "private": true,
4
- "main": "./cjs/index.js",
5
- "module": "./index.js",
6
- "types": "./index.d.ts",
7
- "dependencies": {
8
- "@mui/material": "^6.4.5"
9
- }
10
- }
@@ -1,2 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),t=require("@mui/material/Button"),r=require("@mui/material/Grid"),i=require("react"),n=require("@mui/material/Box"),a=require("@mui/material/FormControlLabel"),l=require("@mui/material/Checkbox"),u=require("@mui/material/FormControl"),s=require("@mui/material/InputLabel"),o=require("@mui/material/Select"),d=require("@mui/material/MenuItem"),c=require("@mui/material/ListItemText"),m=require("@mui/material/TextField"),f=require("@mui/x-date-pickers"),h=require("@mui/material"),p=require("@mui/material/Paper"),g=require("@mui/material/Typography"),x=require("@mui/material/styles");const v={string:"",number:0,boolean:!1,enum:"",multienum:[],date:new Date(1970,0,1,0,0),time:new Date(1970,0,1,0,0),datetime:new Date(1970,0,1,0,0),group:{},"group[]":[],"string[]":[],"number[]":[]},b=(e,t)=>t&&t[e.id]||"default"in e&&e.default||v[e.type],j=({lightWeight:e=100,darkWeight:t=900}={})=>{const{palette:r}=h.useTheme();return"light"===r.mode?r.grey[e]:r.grey[t]},y=({title:t,subtitle:i,centered:a,children:l,dense:u})=>{const{typography:s}=x.useTheme(),o=j({lightWeight:200,darkWeight:800});return e.jsxs(p,{sx:{paddingBottom:u?0:1},children:[e.jsxs(n,{bgcolor:o,px:u?1:2,py:u?.5:1,lineHeight:u?0:void 0,children:[e.jsx(g,{variant:u?"body1":"h6",role:"heading","aria-level":1,children:t}),i&&e.jsx(g,{variant:u?"caption":"body2",role:"heading","aria-level":2,lineHeight:u?s.pxToRem(15):void 0,children:i})]}),e.jsx(r,{container:!0,padding:1,rowSpacing:u?1:2,justifyContent:a?"center":"flex-start",children:l})]})},q=({field:t,path:i=[],value:h,dense:p,update:g,onChangeValue:x})=>{const v=e=>{e.preventDefault(),x([...i,e.target.name],e.target.checked)},b=e=>{e.preventDefault(),x([...i,e.target.name],e.target.value)},C=e=>{e.preventDefault();const{value:t}=e.target,r="string"==typeof t?t.split(","):t;x([...i,e.target.name],r)},k=(e,t)=>{e.preventDefault();let r=e.target.value;"number"===t&&"string"==typeof r?r=parseInt(e.target.value,10):t.includes("[]")&&(r=e.target.value.split(",")),x([...i,e.target.name],r)},D=(e,t)=>{x([...i,t],e)};j({lightWeight:200,darkWeight:800});const{id:T,type:W,name:z,description:I,updatable:P=!0,required:w=!0,xs:S,sm:$,md:V,lg:A,xl:B}=t,F=!P&&g;let L;const M=p?"small":"medium";if("group"===W)L=e.jsx(y,{title:z,subtitle:I,dense:p,children:e.jsx(r,{container:!0,spacing:2,sx:{p:2},children:t.value.map((t=>e.jsx(q,{field:t,dense:p,path:[...i,T],value:h[t.id],update:g,onChangeValue:x},t.id)))})});else if("boolean"===W)L=e.jsx(n,{sx:{height:1,display:"flex",alignItems:"center"},children:e.jsx(a,{control:e.jsx(l,{name:T,size:M,onChange:v,checked:h,disabled:F}),label:z})});else if("enum"===W)L=e.jsxs(u,{fullWidth:!0,children:[e.jsx(s,{id:`${T}-select-label`,children:z}),e.jsx(o,{labelId:`${T}-select-label`,id:`${T}-select`,value:h,label:z,name:T,size:M,onChange:b,required:w,disabled:F,children:t.value.map((t=>e.jsx(d,{value:t,children:t},t)))})]});else if("multienum"===W)L=e.jsxs(u,{fullWidth:!0,children:[e.jsx(s,{id:`${T}-select-label`,children:z}),e.jsx(o,{labelId:`${T}-select-label`,id:`${T}-select`,value:h||[],renderValue:e=>e.join(", "),label:z,name:T,size:M,onChange:C,required:w,disabled:F,multiple:!0,children:t.value.map((t=>e.jsxs(d,{value:t,children:[e.jsx(l,{checked:(h||[]).includes(t)}),e.jsx(c,{primary:t})]},t)))})]});else if("date"===W)L=e.jsx(f.DesktopDatePicker,{label:z,format:t.format,value:h,slotProps:{field:{size:M}},disabled:F,onChange:e=>D(e,T)});else if("time"===W)L=e.jsx(f.TimePicker,{label:z,format:t.format,value:h,slotProps:{field:{size:M}},disabled:F,onChange:e=>D(e,T)});else if("datetime"===W)L=e.jsx(f.DateTimePicker,{label:z,format:t.format,value:h,slotProps:{field:{size:M}},disabled:F,onChange:e=>D(e,T)});else{if("group[]"===W)return null;L=W.includes("[]")?e.jsx(m,{required:w,type:"text",label:z,name:T,size:M,variant:"outlined",helperText:"Use comas to separate multiple values",fullWidth:!0,disabled:F,value:h.join(","),onChange:e=>k(e,W)}):e.jsx(m,{required:w,type:W,label:z,size:M,name:T,variant:"outlined",fullWidth:!0,value:h,disabled:F,onChange:e=>k(e,W)})}return e.jsx(r,{item:!0,xs:S,sm:$,md:V,lg:A,xl:B,children:L},T)};function C(e){return null!=e&&"object"==typeof e&&!0===e["@@functional/placeholder"]}function k(e){return function t(r){return 0===arguments.length||C(r)?t:e.apply(this,arguments)}}function D(e){return function t(r,i){switch(arguments.length){case 0:return t;case 1:return C(r)?t:k((function(t){return e(r,t)}));default:return C(r)&&C(i)?t:C(r)?k((function(t){return e(t,i)})):C(i)?k((function(t){return e(r,t)})):e(r,i)}}}function T(e){return function t(r,i,n){switch(arguments.length){case 0:return t;case 1:return C(r)?t:D((function(t,i){return e(r,t,i)}));case 2:return C(r)&&C(i)?t:C(r)?D((function(t,r){return e(t,i,r)})):C(i)?D((function(t,i){return e(r,t,i)})):k((function(t){return e(r,i,t)}));default:return C(r)&&C(i)&&C(n)?t:C(r)&&C(i)?D((function(t,r){return e(t,r,n)})):C(r)&&C(n)?D((function(t,r){return e(t,i,r)})):C(i)&&C(n)?D((function(t,i){return e(r,t,i)})):C(r)?k((function(t){return e(t,i,n)})):C(i)?k((function(t){return e(r,t,n)})):C(n)?k((function(t){return e(r,i,t)})):e(r,i,n)}}}var W=Array.isArray||function(e){return null!=e&&e.length>=0&&"[object Array]"===Object.prototype.toString.call(e)};var z=Number.isInteger||function(e){return e<<0===e};var I=k((function(e){return null==e})),P=T((function e(t,r,i){if(0===t.length)return r;var n=t[0];if(t.length>1){var a=!I(i)&&function(e,t){return Object.prototype.hasOwnProperty.call(t,e)}(n,i)&&"object"==typeof i[n]?i[n]:z(t[1])?[]:{};r=e(Array.prototype.slice.call(t,1),r,a)}return function(e,t,r){if(z(e)&&W(r)){var i=[].concat(r);return i[e]=t,i}var n={};for(var a in r)n[a]=r[a];return n[e]=t,n}(n,r,i)}));exports.ModelForm=({model:n,saveButtonText:a,dense:l,onSubmit:u,initialValues:s})=>{const o=i.useMemo((()=>((e,t=undefined)=>{const r={};return e.fields.forEach((e=>{if("group"===e.type){const i={};e.value.forEach((r=>{i[r.id]=b(r,t&&t[e.id])})),r[e.id]=i}else r[e.id]=b(e,t)})),r})(n,s)),[n,s]),[d,c]=i.useState(o),m=(e,t)=>{c((r=>P(e,t,r)))};return e.jsxs(r,{container:!0,component:"form",spacing:2,onSubmit:e=>{e.preventDefault(),u(d)},children:[n.fields.map((t=>e.jsx(q,{dense:l,field:t,value:d[t.id],update:!!s,onChangeValue:m},t.id))),e.jsx(r,{item:!0,xs:12,children:e.jsx(t,{type:"submit",variant:"contained",size:l?"small":"medium",children:a})})]})};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/generators/generators.model.ts","../../../src/utils/theme.ts","../../../src/group-value-card/group-value-card.tsx","../../../src/model-form/model-form-field.tsx","../../../node_modules/ramda/es/internal/_isPlaceholder.js","../../../node_modules/ramda/es/internal/_curry1.js","../../../node_modules/ramda/es/internal/_curry2.js","../../../node_modules/ramda/es/internal/_curry3.js","../../../node_modules/ramda/es/internal/_isArray.js","../../../node_modules/ramda/es/internal/_isInteger.js","../../../node_modules/ramda/es/isNil.js","../../../node_modules/ramda/es/assocPath.js","../../../node_modules/ramda/es/internal/_has.js","../../../node_modules/ramda/es/internal/_assoc.js","../../../src/model-form/model-form.tsx"],"sourcesContent":["/**\n * MODEL TYPES\n * Types used to specify the model\n */\nexport type ModelFieldTypes =\n | \"string\"\n | \"number\"\n | \"string[]\"\n | \"number[]\"\n | \"boolean\"\n | \"enum\"\n | \"multienum\"\n | \"date\"\n | \"time\"\n | \"datetime\";\n\ntype Base = {\n id: string;\n description: string;\n name: string;\n listable?: boolean;\n updatable?: boolean;\n required?: boolean;\n};\n\ntype Breakpoints = {\n xs?: number;\n sm?: number;\n md?: number;\n lg?: number;\n xl?: number;\n};\n\ntype StringField = {\n type: \"string\";\n};\n\ntype StringArrayField = {\n type: \"string[]\";\n};\n\ntype NumberField = {\n type: \"number\";\n};\n\ntype NumberArrayField = {\n type: \"number[]\";\n};\n\ntype BooleanField = {\n type: \"boolean\";\n};\n\ntype EnumField = {\n type: \"enum\";\n value: string[];\n};\n\ntype MultiEnumField = {\n type: \"multienum\";\n value: string[];\n};\n\ntype DateField = {\n type: \"date\";\n format: string;\n default: Date;\n};\n\ntype TimeField = {\n type: \"time\";\n format: string;\n default: Date;\n};\n\ntype DatetimeField = {\n type: \"datetime\";\n format: string;\n default: Date;\n};\n\ntype SingleFields =\n | StringField\n | NumberField\n | StringArrayField\n | NumberArrayField\n | BooleanField\n | EnumField\n | MultiEnumField\n | DateField\n | TimeField\n | DatetimeField;\n\nexport type GroupField = {\n type: \"group\";\n value: (Base & Breakpoints & SingleFields)[];\n} & Base;\n\nexport type ArrayGroupField = {\n type: \"group[]\";\n value: (Base & Breakpoints & SingleFields)[];\n} & Base;\n\ntype Fields = SingleFields | GroupField | ArrayGroupField;\nexport type ModelField = Base & Breakpoints & Fields;\n\nexport type Model = {\n fields: ModelField[];\n};\n\n/**\n * INSTANCE TYPES\n * Types used to represent an instance of a model specification\n */\nexport type BaseFieldType = string | number | boolean | Date;\nexport type ArrayFieldType = string[] | number[];\nexport type SingleFieldType = BaseFieldType | ArrayFieldType;\nexport type GroupInstanceType = { [key: string]: SingleFieldType };\nexport type ArrayInstanceType = { [key: string]: SingleFieldType }[];\nexport type FieldType = SingleFieldType | GroupInstanceType;\n\nexport interface BasicModelInstance {\n id: string;\n [key: string]: FieldType;\n}\n\n/**\n * UTILITIES\n * Some functions used in several places to help to manage models\n */\nconst InitialStateZeroValue: Record<ModelFieldTypes | \"group\" | \"group[]\", FieldType | undefined> =\n {\n string: \"\",\n number: 0,\n boolean: false,\n enum: \"\",\n multienum: [],\n date: new Date(1970, 0, 1, 0, 0),\n time: new Date(1970, 0, 1, 0, 0),\n datetime: new Date(1970, 0, 1, 0, 0),\n group: {},\n \"group[]\": [],\n \"string[]\": [],\n \"number[]\": [],\n };\n\nconst getFieldValueOrZero = (\n field: ModelField,\n values: BasicModelInstance | GroupInstanceType | undefined,\n) => {\n return (\n (values && values[field.id]) ||\n (\"default\" in field && field.default) ||\n InitialStateZeroValue[field.type]\n );\n};\n\nexport const newInstanceFromValuesOrZeroValue = <T extends BasicModelInstance>(\n model: Model,\n values: T | undefined = undefined,\n): T => {\n const obj: Record<string, FieldType | undefined> = {};\n\n model.fields.forEach((field) => {\n if (field.type === \"group\") {\n const value: GroupInstanceType = {};\n field.value.forEach((groupField) => {\n value[groupField.id] = getFieldValueOrZero(\n groupField,\n values && (values[field.id] as GroupInstanceType),\n ) as SingleFieldType;\n });\n obj[field.id] = value;\n } else {\n obj[field.id] = getFieldValueOrZero(field, values);\n }\n });\n\n return obj as T;\n};\n","import { Color, useTheme } from \"@mui/material\";\n\ntype KeyColor = keyof Color;\n\nexport const useGetDefaultThemeColor = ({\n lightWeight = 100,\n darkWeight = 900,\n}: { lightWeight?: KeyColor; darkWeight?: KeyColor } = {}) => {\n const { palette } = useTheme();\n return palette.mode === \"light\" ? palette.grey[lightWeight] : palette.grey[darkWeight];\n};\n","import Grid from \"@mui/material/Grid\";\nimport Paper from \"@mui/material/Paper\";\nimport Box from \"@mui/material/Box\";\nimport Typography from \"@mui/material/Typography\";\nimport { useTheme } from \"@mui/material/styles\";\nimport { useGetDefaultThemeColor } from \"../utils\";\nimport { ValueItemElement } from \"../value-item\";\n\nexport interface GroupValueCardProps {\n title: string;\n subtitle?: string;\n centered?: boolean;\n children: ValueItemElement | ValueItemElement[];\n dense?: boolean;\n}\n\nexport const GroupValueCard = ({\n title,\n subtitle,\n centered,\n children,\n dense,\n}: GroupValueCardProps) => {\n const { typography } = useTheme();\n const defaultColor = useGetDefaultThemeColor({ lightWeight: 200, darkWeight: 800 });\n\n return (\n <Paper\n sx={{\n paddingBottom: dense ? 0 : 1,\n }}\n >\n <Box\n bgcolor={defaultColor}\n px={dense ? 1 : 2}\n py={dense ? 0.5 : 1}\n lineHeight={dense ? 0 : undefined}\n >\n <Typography variant={dense ? \"body1\" : \"h6\"} role=\"heading\" aria-level={1}>\n {title}\n </Typography>\n {subtitle && (\n <Typography\n variant={dense ? \"caption\" : \"body2\"}\n role=\"heading\"\n aria-level={2}\n lineHeight={dense ? typography.pxToRem(15) : undefined}\n >\n {subtitle}\n </Typography>\n )}\n </Box>\n <Grid\n container\n padding={1}\n rowSpacing={dense ? 1 : 2}\n justifyContent={centered ? \"center\" : \"flex-start\"}\n >\n {children}\n </Grid>\n </Paper>\n );\n};\n","import Box from \"@mui/material/Box\";\nimport Grid from \"@mui/material/Grid\";\nimport FormControlLabel from \"@mui/material/FormControlLabel\";\nimport Checkbox from \"@mui/material/Checkbox\";\nimport FormControl from \"@mui/material/FormControl\";\nimport InputLabel from \"@mui/material/InputLabel\";\nimport Select from \"@mui/material/Select\";\nimport MenuItem from \"@mui/material/MenuItem\";\nimport ListItemText from \"@mui/material/ListItemText\";\nimport TextField from \"@mui/material/TextField\";\nimport { SelectChangeEvent } from \"@mui/material/Select\";\nimport { DesktopDatePicker, TimePicker, DateTimePicker } from \"@mui/x-date-pickers\";\nimport { ChangeEvent, ReactElement } from \"react\";\nimport { useGetDefaultThemeColor } from \"../utils\";\nimport { GroupValueCard } from \"../group-value-card\";\nimport {\n ArrayFieldType,\n FieldType,\n ModelField,\n ModelFieldTypes,\n} from \"../generators/generators.model\";\n\nexport interface ModelFormField {\n field: ModelField;\n update: boolean;\n dense?: boolean;\n path?: string[];\n value: any;\n onChangeValue: (path: string[], value: any) => void;\n}\n\nexport const ModelFormField = ({\n field,\n path = [],\n value,\n dense,\n update,\n onChangeValue,\n}: ModelFormField) => {\n const handleCheckboxChange = (e: ChangeEvent<HTMLInputElement>) => {\n e.preventDefault();\n onChangeValue([...path, e.target.name], e.target.checked);\n };\n\n const handleSelectChange = (e: SelectChangeEvent<FieldType>) => {\n e.preventDefault();\n onChangeValue([...path, e.target.name], e.target.value);\n };\n\n const handleMultiSelectChange = (e: SelectChangeEvent<FieldType>) => {\n e.preventDefault();\n const { value } = e.target;\n const newValue = typeof value === \"string\" ? value.split(\",\") : value;\n onChangeValue([...path, e.target.name], newValue);\n };\n\n const handleInputChange = (\n e: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>,\n type: ModelFieldTypes,\n ) => {\n e.preventDefault();\n\n let value: string | number | string[] | number[] = e.target.value;\n if (type === \"number\" && typeof value === \"string\") {\n value = parseInt(e.target.value, 10);\n } else if (type.includes(\"[]\")) {\n value = e.target.value.split(\",\");\n }\n onChangeValue([...path, e.target.name], value);\n };\n\n const handleDateChange = (value: FieldType | null, id: string) => {\n onChangeValue([...path, id], value);\n };\n\n const defaultColor = useGetDefaultThemeColor({ lightWeight: 200, darkWeight: 800 });\n\n const {\n id,\n type,\n name,\n description,\n updatable = true,\n required = true,\n xs,\n sm,\n md,\n lg,\n xl,\n } = field;\n const disabled: boolean = !updatable && update;\n\n let fieldInput: ReactElement;\n const size = dense ? \"small\" : \"medium\";\n if (type === \"group\") {\n fieldInput = (\n <GroupValueCard title={name} subtitle={description} dense={dense}>\n <Grid container spacing={2} sx={{ p: 2 }}>\n {field.value.map((f) => (\n <ModelFormField\n key={f.id}\n field={f}\n dense={dense}\n path={[...path, id]}\n value={value[f.id]}\n update={update}\n onChangeValue={onChangeValue}\n />\n ))}\n </Grid>\n </GroupValueCard>\n );\n } else if (type === \"boolean\") {\n fieldInput = (\n <Box sx={{ height: 1, display: \"flex\", alignItems: \"center\" }}>\n <FormControlLabel\n control={\n <Checkbox\n name={id}\n size={size}\n onChange={handleCheckboxChange}\n checked={value as boolean}\n disabled={disabled}\n />\n }\n label={name}\n />\n </Box>\n );\n } else if (type === \"enum\") {\n fieldInput = (\n <FormControl fullWidth>\n <InputLabel id={`${id}-select-label`}>{name}</InputLabel>\n <Select\n labelId={`${id}-select-label`}\n id={`${id}-select`}\n value={value}\n label={name}\n name={id}\n size={size}\n onChange={handleSelectChange}\n required={required}\n disabled={disabled}\n >\n {field.value.map((fieldValue) => (\n <MenuItem key={fieldValue} value={fieldValue}>\n {fieldValue}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n );\n } else if (type === \"multienum\") {\n fieldInput = (\n <FormControl fullWidth>\n <InputLabel id={`${id}-select-label`}>{name}</InputLabel>\n <Select\n labelId={`${id}-select-label`}\n id={`${id}-select`}\n value={value || []}\n renderValue={(selected) => (selected as ArrayFieldType).join(\", \")}\n label={name}\n name={id}\n size={size}\n onChange={handleMultiSelectChange}\n required={required}\n disabled={disabled}\n multiple\n >\n {field.value.map((fieldValue) => (\n <MenuItem key={fieldValue} value={fieldValue}>\n <Checkbox checked={((value as any[]) || []).includes(fieldValue)} />\n <ListItemText primary={fieldValue} />\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n );\n } else if (type === \"date\") {\n fieldInput = (\n <DesktopDatePicker\n label={name}\n format={field.format}\n value={value}\n slotProps={\n {\n field: {\n size,\n },\n } as any\n }\n disabled={disabled}\n onChange={(value) => handleDateChange(value, id)}\n />\n );\n } else if (type === \"time\") {\n fieldInput = (\n <TimePicker\n label={name}\n format={field.format}\n value={value}\n slotProps={\n {\n field: {\n size,\n },\n } as any\n }\n disabled={disabled}\n onChange={(value) => handleDateChange(value, id)}\n />\n );\n } else if (type === \"datetime\") {\n fieldInput = (\n <DateTimePicker\n label={name}\n format={field.format}\n value={value}\n slotProps={\n {\n field: {\n size,\n },\n } as any\n }\n disabled={disabled}\n onChange={(value) => handleDateChange(value, id)}\n />\n );\n } else if (type === \"group[]\") {\n return null;\n } else if (type.includes(\"[]\")) {\n fieldInput = (\n <TextField\n required={required}\n type=\"text\"\n label={name}\n name={id}\n size={size}\n variant=\"outlined\"\n helperText=\"Use comas to separate multiple values\"\n fullWidth\n disabled={disabled}\n value={(value as any[]).join(\",\")}\n onChange={(e) => handleInputChange(e, type)}\n />\n );\n } else {\n fieldInput = (\n <TextField\n required={required}\n type={type}\n label={name}\n size={size}\n name={id}\n variant=\"outlined\"\n fullWidth\n value={value}\n disabled={disabled}\n onChange={(e) => handleInputChange(e, type)}\n />\n );\n }\n\n return (\n <Grid item key={id} xs={xs} sm={sm} md={md} lg={lg} xl={xl}>\n {fieldInput}\n </Grid>\n );\n};\n","export default function _isPlaceholder(a) {\n return a != null && typeof a === 'object' && a['@@functional/placeholder'] === true;\n}","import _isPlaceholder from \"./_isPlaceholder.js\";\n\n/**\n * Optimized internal one-arity curry function.\n *\n * @private\n * @category Function\n * @param {Function} fn The function to curry.\n * @return {Function} The curried function.\n */\nexport default function _curry1(fn) {\n return function f1(a) {\n if (arguments.length === 0 || _isPlaceholder(a)) {\n return f1;\n } else {\n return fn.apply(this, arguments);\n }\n };\n}","import _curry1 from \"./_curry1.js\";\nimport _isPlaceholder from \"./_isPlaceholder.js\";\n\n/**\n * Optimized internal two-arity curry function.\n *\n * @private\n * @category Function\n * @param {Function} fn The function to curry.\n * @return {Function} The curried function.\n */\nexport default function _curry2(fn) {\n return function f2(a, b) {\n switch (arguments.length) {\n case 0:\n return f2;\n case 1:\n return _isPlaceholder(a) ? f2 : _curry1(function (_b) {\n return fn(a, _b);\n });\n default:\n return _isPlaceholder(a) && _isPlaceholder(b) ? f2 : _isPlaceholder(a) ? _curry1(function (_a) {\n return fn(_a, b);\n }) : _isPlaceholder(b) ? _curry1(function (_b) {\n return fn(a, _b);\n }) : fn(a, b);\n }\n };\n}","import _curry1 from \"./_curry1.js\";\nimport _curry2 from \"./_curry2.js\";\nimport _isPlaceholder from \"./_isPlaceholder.js\";\n\n/**\n * Optimized internal three-arity curry function.\n *\n * @private\n * @category Function\n * @param {Function} fn The function to curry.\n * @return {Function} The curried function.\n */\nexport default function _curry3(fn) {\n return function f3(a, b, c) {\n switch (arguments.length) {\n case 0:\n return f3;\n case 1:\n return _isPlaceholder(a) ? f3 : _curry2(function (_b, _c) {\n return fn(a, _b, _c);\n });\n case 2:\n return _isPlaceholder(a) && _isPlaceholder(b) ? f3 : _isPlaceholder(a) ? _curry2(function (_a, _c) {\n return fn(_a, b, _c);\n }) : _isPlaceholder(b) ? _curry2(function (_b, _c) {\n return fn(a, _b, _c);\n }) : _curry1(function (_c) {\n return fn(a, b, _c);\n });\n default:\n return _isPlaceholder(a) && _isPlaceholder(b) && _isPlaceholder(c) ? f3 : _isPlaceholder(a) && _isPlaceholder(b) ? _curry2(function (_a, _b) {\n return fn(_a, _b, c);\n }) : _isPlaceholder(a) && _isPlaceholder(c) ? _curry2(function (_a, _c) {\n return fn(_a, b, _c);\n }) : _isPlaceholder(b) && _isPlaceholder(c) ? _curry2(function (_b, _c) {\n return fn(a, _b, _c);\n }) : _isPlaceholder(a) ? _curry1(function (_a) {\n return fn(_a, b, c);\n }) : _isPlaceholder(b) ? _curry1(function (_b) {\n return fn(a, _b, c);\n }) : _isPlaceholder(c) ? _curry1(function (_c) {\n return fn(a, b, _c);\n }) : fn(a, b, c);\n }\n };\n}","/**\n * Tests whether or not an object is an array.\n *\n * @private\n * @param {*} val The object to test.\n * @return {Boolean} `true` if `val` is an array, `false` otherwise.\n * @example\n *\n * _isArray([]); //=> true\n * _isArray(null); //=> false\n * _isArray({}); //=> false\n */\nexport default Array.isArray || function _isArray(val) {\n return val != null && val.length >= 0 && Object.prototype.toString.call(val) === '[object Array]';\n};","/**\n * Determine if the passed argument is an integer.\n *\n * @private\n * @param {*} n\n * @category Type\n * @return {Boolean}\n */\nexport default Number.isInteger || function _isInteger(n) {\n return n << 0 === n;\n};","import _curry1 from \"./internal/_curry1.js\";\n\n/**\n * Checks if the input value is `null` or `undefined`.\n *\n * @func\n * @memberOf R\n * @since v0.9.0\n * @category Type\n * @sig * -> Boolean\n * @param {*} x The value to test.\n * @return {Boolean} `true` if `x` is `undefined` or `null`, otherwise `false`.\n * @example\n *\n * R.isNil(null); //=> true\n * R.isNil(undefined); //=> true\n * R.isNil(0); //=> false\n * R.isNil([]); //=> false\n */\nvar isNil = /*#__PURE__*/_curry1(function isNil(x) {\n return x == null;\n});\nexport default isNil;","import _curry3 from \"./internal/_curry3.js\";\nimport _has from \"./internal/_has.js\";\nimport _isInteger from \"./internal/_isInteger.js\";\nimport _assoc from \"./internal/_assoc.js\";\nimport isNil from \"./isNil.js\";\n\n/**\n * Makes a shallow clone of an object, setting or overriding the nodes required\n * to create the given path, and placing the specific value at the tail end of\n * that path. Note that this copies and flattens prototype properties onto the\n * new object as well. All non-primitive properties are copied by reference.\n *\n * @func\n * @memberOf R\n * @since v0.8.0\n * @category Object\n * @typedefn Idx = String | Int | Symbol\n * @sig [Idx] -> a -> {a} -> {a}\n * @param {Array} path the path to set\n * @param {*} val The new value\n * @param {Object} obj The object to clone\n * @return {Object} A new object equivalent to the original except along the specified path.\n * @see R.dissocPath\n * @example\n *\n * R.assocPath(['a', 'b', 'c'], 42, {a: {b: {c: 0}}}); //=> {a: {b: {c: 42}}}\n *\n * // Any missing or non-object keys in path will be overridden\n * R.assocPath(['a', 'b', 'c'], 42, {a: 5}); //=> {a: {b: {c: 42}}}\n */\nvar assocPath = /*#__PURE__*/_curry3(function assocPath(path, val, obj) {\n if (path.length === 0) {\n return val;\n }\n var idx = path[0];\n if (path.length > 1) {\n var nextObj = !isNil(obj) && _has(idx, obj) && typeof obj[idx] === 'object' ? obj[idx] : _isInteger(path[1]) ? [] : {};\n val = assocPath(Array.prototype.slice.call(path, 1), val, nextObj);\n }\n return _assoc(idx, val, obj);\n});\nexport default assocPath;","export default function _has(prop, obj) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}","import _isArray from \"./_isArray.js\";\nimport _isInteger from \"./_isInteger.js\";\n\n/**\n * Makes a shallow clone of an object, setting or overriding the specified\n * property with the given value. Note that this copies and flattens prototype\n * properties onto the new object as well. All non-primitive properties are\n * copied by reference.\n *\n * @private\n * @param {String|Number} prop The property name to set\n * @param {*} val The new value\n * @param {Object|Array} obj The object to clone\n * @return {Object|Array} A new object equivalent to the original except for the changed property.\n */\nexport default function _assoc(prop, val, obj) {\n if (_isInteger(prop) && _isArray(obj)) {\n var arr = [].concat(obj);\n arr[prop] = val;\n return arr;\n }\n var result = {};\n for (var p in obj) {\n result[p] = obj[p];\n }\n result[prop] = val;\n return result;\n}","import Button from \"@mui/material/Button\";\nimport Grid from \"@mui/material/Grid\";\nimport { FormEvent, useMemo } from \"react\";\nimport { useState } from \"react\";\nimport {\n Model,\n BasicModelInstance,\n FieldType,\n newInstanceFromValuesOrZeroValue,\n} from \"../generators\";\nimport { ModelFormField } from \"./model-form-field\";\nimport { assocPath } from \"ramda\";\n\nexport interface ModelFormProps<T extends BasicModelInstance> {\n model: Model;\n dense?: boolean;\n initialValues?: T;\n saveButtonText: string;\n onSubmit: (values: T) => void;\n}\n\nexport const ModelForm = <T extends BasicModelInstance>({\n model,\n saveButtonText,\n dense,\n onSubmit,\n initialValues,\n}: ModelFormProps<T>) => {\n const valuesInitialState = useMemo(\n () => newInstanceFromValuesOrZeroValue<T>(model, initialValues),\n [model, initialValues],\n );\n const [values, setValues] = useState<T>(valuesInitialState);\n\n const setKeyValue = (path: string[], value: FieldType | null) => {\n setValues((v) => assocPath(path, value, v));\n };\n\n const handleSubmit = (e: FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n onSubmit(values);\n };\n\n return (\n <Grid container component=\"form\" spacing={2} onSubmit={handleSubmit}>\n {model.fields.map((f) => (\n <ModelFormField\n key={f.id}\n dense={dense}\n field={f}\n value={values[f.id]}\n update={!!initialValues}\n onChangeValue={setKeyValue}\n />\n ))}\n <Grid item xs={12}>\n <Button type=\"submit\" variant=\"contained\" size={dense ? \"small\" : \"medium\"}>\n {saveButtonText}\n </Button>\n </Grid>\n </Grid>\n );\n};\n"],"names":["InitialStateZeroValue","string","number","boolean","enum","multienum","date","Date","time","datetime","group","getFieldValueOrZero","field","values","id","default","type","useGetDefaultThemeColor","lightWeight","darkWeight","palette","useTheme","mode","grey","GroupValueCard","title","subtitle","centered","children","dense","typography","defaultColor","_jsxs","jsxs","Paper","sx","paddingBottom","Box","bgcolor","px","py","lineHeight","undefined","_jsx","jsx","Typography","variant","role","pxToRem","Grid","container","padding","rowSpacing","justifyContent","ModelFormField","path","value","update","onChangeValue","handleCheckboxChange","e","preventDefault","target","name","checked","handleSelectChange","handleMultiSelectChange","newValue","split","handleInputChange","parseInt","includes","handleDateChange","description","updatable","required","xs","sm","md","lg","xl","disabled","fieldInput","size","spacing","p","map","f","height","display","alignItems","FormControlLabel","control","Checkbox","onChange","label","FormControl","fullWidth","InputLabel","Select","labelId","fieldValue","MenuItem","renderValue","selected","join","multiple","ListItemText","primary","DesktopDatePicker","format","slotProps","TimePicker","DateTimePicker","TextField","helperText","item","_isPlaceholder","a","_curry1","fn","f1","arguments","length","apply","this","_curry2","f2","b","_b","_a","_curry3","f3","c","_c","_isArray","Array","isArray","val","Object","prototype","toString","call","_isInteger","Number","isInteger","n","isNil","x","assocPath","obj","idx","nextObj","prop","hasOwnProperty","_has","slice","arr","concat","result","_assoc","model","saveButtonText","onSubmit","initialValues","valuesInitialState","useMemo","fields","forEach","groupField","newInstanceFromValuesOrZeroValue","setValues","useState","setKeyValue","v","component","Button"],"mappings":"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","x_google_ignoreList":[4,5,6,7,8,9,10,11,12,13]}
@@ -1,12 +0,0 @@
1
- {
2
- "name": "@pautena/react-design-system/model-form",
3
- "private": true,
4
- "main": "./cjs/index.js",
5
- "module": "./index.js",
6
- "types": "./index.d.ts",
7
- "dependencies": {
8
- "@mui/material": "^6.4.5",
9
- "@mui/x-date-pickers": "^7.27.0",
10
- "react": "^19.0.0"
11
- }
12
- }
@@ -1 +0,0 @@
1
- export * from "./model-form";
@@ -1,2 +0,0 @@
1
- import{jsxs as e,jsx as t}from"react/jsx-runtime";import r from"@mui/material/Button";import n from"@mui/material/Grid";import{useMemo as i,useState as l}from"react";import a from"@mui/material/Box";import o from"@mui/material/FormControlLabel";import u from"@mui/material/Checkbox";import m from"@mui/material/FormControl";import d from"@mui/material/InputLabel";import c from"@mui/material/Select";import s from"@mui/material/MenuItem";import f from"@mui/material/ListItemText";import p from"@mui/material/TextField";import{DesktopDatePicker as h,TimePicker as g,DateTimePicker as b}from"@mui/x-date-pickers";import{useTheme as v}from"@mui/material";import y from"@mui/material/Paper";import x from"@mui/material/Typography";import{useTheme as C}from"@mui/material/styles";const W={string:"",number:0,boolean:!1,enum:"",multienum:[],date:new Date(1970,0,1,0,0),time:new Date(1970,0,1,0,0),datetime:new Date(1970,0,1,0,0),group:{},"group[]":[],"string[]":[],"number[]":[]},j=(e,t)=>t&&t[e.id]||"default"in e&&e.default||W[e.type],z=({lightWeight:e=100,darkWeight:t=900}={})=>{const{palette:r}=v();return"light"===r.mode?r.grey[e]:r.grey[t]},k=({title:r,subtitle:i,centered:l,children:o,dense:u})=>{const{typography:m}=C(),d=z({lightWeight:200,darkWeight:800});return e(y,{sx:{paddingBottom:u?0:1},children:[e(a,{bgcolor:d,px:u?1:2,py:u?.5:1,lineHeight:u?0:void 0,children:[t(x,{variant:u?"body1":"h6",role:"heading","aria-level":1,children:r}),i&&t(x,{variant:u?"caption":"body2",role:"heading","aria-level":2,lineHeight:u?m.pxToRem(15):void 0,children:i})]}),t(n,{container:!0,padding:1,rowSpacing:u?1:2,justifyContent:l?"center":"flex-start",children:o})]})},D=({field:r,path:i=[],value:l,dense:v,update:y,onChangeValue:x})=>{const C=e=>{e.preventDefault(),x([...i,e.target.name],e.target.checked)},W=e=>{e.preventDefault(),x([...i,e.target.name],e.target.value)},j=e=>{e.preventDefault();const{value:t}=e.target,r="string"==typeof t?t.split(","):t;x([...i,e.target.name],r)},I=(e,t)=>{e.preventDefault();let r=e.target.value;"number"===t&&"string"==typeof r?r=parseInt(e.target.value,10):t.includes("[]")&&(r=e.target.value.split(",")),x([...i,e.target.name],r)},w=(e,t)=>{x([...i,t],e)};z({lightWeight:200,darkWeight:800});const{id:T,type:$,name:q,description:P,updatable:S=!0,required:V=!0,xs:A,sm:B,md:F,lg:L,xl:O}=r,E=!S&&y;let H;const G=v?"small":"medium";if("group"===$)H=t(k,{title:q,subtitle:P,dense:v,children:t(n,{container:!0,spacing:2,sx:{p:2},children:r.value.map((e=>t(D,{field:e,dense:v,path:[...i,T],value:l[e.id],update:y,onChangeValue:x},e.id)))})});else if("boolean"===$)H=t(a,{sx:{height:1,display:"flex",alignItems:"center"},children:t(o,{control:t(u,{name:T,size:G,onChange:C,checked:l,disabled:E}),label:q})});else if("enum"===$)H=e(m,{fullWidth:!0,children:[t(d,{id:`${T}-select-label`,children:q}),t(c,{labelId:`${T}-select-label`,id:`${T}-select`,value:l,label:q,name:T,size:G,onChange:W,required:V,disabled:E,children:r.value.map((e=>t(s,{value:e,children:e},e)))})]});else if("multienum"===$)H=e(m,{fullWidth:!0,children:[t(d,{id:`${T}-select-label`,children:q}),t(c,{labelId:`${T}-select-label`,id:`${T}-select`,value:l||[],renderValue:e=>e.join(", "),label:q,name:T,size:G,onChange:j,required:V,disabled:E,multiple:!0,children:r.value.map((r=>e(s,{value:r,children:[t(u,{checked:(l||[]).includes(r)}),t(f,{primary:r})]},r)))})]});else if("date"===$)H=t(h,{label:q,format:r.format,value:l,slotProps:{field:{size:G}},disabled:E,onChange:e=>w(e,T)});else if("time"===$)H=t(g,{label:q,format:r.format,value:l,slotProps:{field:{size:G}},disabled:E,onChange:e=>w(e,T)});else if("datetime"===$)H=t(b,{label:q,format:r.format,value:l,slotProps:{field:{size:G}},disabled:E,onChange:e=>w(e,T)});else{if("group[]"===$)return null;H=$.includes("[]")?t(p,{required:V,type:"text",label:q,name:T,size:G,variant:"outlined",helperText:"Use comas to separate multiple values",fullWidth:!0,disabled:E,value:l.join(","),onChange:e=>I(e,$)}):t(p,{required:V,type:$,label:q,size:G,name:T,variant:"outlined",fullWidth:!0,value:l,disabled:E,onChange:e=>I(e,$)})}return t(n,{item:!0,xs:A,sm:B,md:F,lg:L,xl:O,children:H},T)};function I(e){return null!=e&&"object"==typeof e&&!0===e["@@functional/placeholder"]}function w(e){return function t(r){return 0===arguments.length||I(r)?t:e.apply(this,arguments)}}function T(e){return function t(r,n){switch(arguments.length){case 0:return t;case 1:return I(r)?t:w((function(t){return e(r,t)}));default:return I(r)&&I(n)?t:I(r)?w((function(t){return e(t,n)})):I(n)?w((function(t){return e(r,t)})):e(r,n)}}}function $(e){return function t(r,n,i){switch(arguments.length){case 0:return t;case 1:return I(r)?t:T((function(t,n){return e(r,t,n)}));case 2:return I(r)&&I(n)?t:I(r)?T((function(t,r){return e(t,n,r)})):I(n)?T((function(t,n){return e(r,t,n)})):w((function(t){return e(r,n,t)}));default:return I(r)&&I(n)&&I(i)?t:I(r)&&I(n)?T((function(t,r){return e(t,r,i)})):I(r)&&I(i)?T((function(t,r){return e(t,n,r)})):I(n)&&I(i)?T((function(t,n){return e(r,t,n)})):I(r)?w((function(t){return e(t,n,i)})):I(n)?w((function(t){return e(r,t,i)})):I(i)?w((function(t){return e(r,n,t)})):e(r,n,i)}}}var q=Array.isArray||function(e){return null!=e&&e.length>=0&&"[object Array]"===Object.prototype.toString.call(e)};var P=Number.isInteger||function(e){return e<<0===e};var S=w((function(e){return null==e})),V=$((function e(t,r,n){if(0===t.length)return r;var i=t[0];if(t.length>1){var l=!S(n)&&function(e,t){return Object.prototype.hasOwnProperty.call(t,e)}(i,n)&&"object"==typeof n[i]?n[i]:P(t[1])?[]:{};r=e(Array.prototype.slice.call(t,1),r,l)}return function(e,t,r){if(P(e)&&q(r)){var n=[].concat(r);return n[e]=t,n}var i={};for(var l in r)i[l]=r[l];return i[e]=t,i}(i,r,n)}));const A=({model:a,saveButtonText:o,dense:u,onSubmit:m,initialValues:d})=>{const c=i((()=>((e,t=undefined)=>{const r={};return e.fields.forEach((e=>{if("group"===e.type){const n={};e.value.forEach((r=>{n[r.id]=j(r,t&&t[e.id])})),r[e.id]=n}else r[e.id]=j(e,t)})),r})(a,d)),[a,d]),[s,f]=l(c),p=(e,t)=>{f((r=>V(e,t,r)))};return e(n,{container:!0,component:"form",spacing:2,onSubmit:e=>{e.preventDefault(),m(s)},children:[a.fields.map((e=>t(D,{dense:u,field:e,value:s[e.id],update:!!d,onChangeValue:p},e.id))),t(n,{item:!0,xs:12,children:t(r,{type:"submit",variant:"contained",size:u?"small":"medium",children:o})})]})};export{A as ModelForm};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../src/generators/generators.model.ts","../../src/utils/theme.ts","../../src/group-value-card/group-value-card.tsx","../../src/model-form/model-form-field.tsx","../../node_modules/ramda/es/internal/_isPlaceholder.js","../../node_modules/ramda/es/internal/_curry1.js","../../node_modules/ramda/es/internal/_curry2.js","../../node_modules/ramda/es/internal/_curry3.js","../../node_modules/ramda/es/internal/_isArray.js","../../node_modules/ramda/es/internal/_isInteger.js","../../node_modules/ramda/es/isNil.js","../../node_modules/ramda/es/assocPath.js","../../node_modules/ramda/es/internal/_has.js","../../node_modules/ramda/es/internal/_assoc.js","../../src/model-form/model-form.tsx"],"sourcesContent":["/**\n * MODEL TYPES\n * Types used to specify the model\n */\nexport type ModelFieldTypes =\n | \"string\"\n | \"number\"\n | \"string[]\"\n | \"number[]\"\n | \"boolean\"\n | \"enum\"\n | \"multienum\"\n | \"date\"\n | \"time\"\n | \"datetime\";\n\ntype Base = {\n id: string;\n description: string;\n name: string;\n listable?: boolean;\n updatable?: boolean;\n required?: boolean;\n};\n\ntype Breakpoints = {\n xs?: number;\n sm?: number;\n md?: number;\n lg?: number;\n xl?: number;\n};\n\ntype StringField = {\n type: \"string\";\n};\n\ntype StringArrayField = {\n type: \"string[]\";\n};\n\ntype NumberField = {\n type: \"number\";\n};\n\ntype NumberArrayField = {\n type: \"number[]\";\n};\n\ntype BooleanField = {\n type: \"boolean\";\n};\n\ntype EnumField = {\n type: \"enum\";\n value: string[];\n};\n\ntype MultiEnumField = {\n type: \"multienum\";\n value: string[];\n};\n\ntype DateField = {\n type: \"date\";\n format: string;\n default: Date;\n};\n\ntype TimeField = {\n type: \"time\";\n format: string;\n default: Date;\n};\n\ntype DatetimeField = {\n type: \"datetime\";\n format: string;\n default: Date;\n};\n\ntype SingleFields =\n | StringField\n | NumberField\n | StringArrayField\n | NumberArrayField\n | BooleanField\n | EnumField\n | MultiEnumField\n | DateField\n | TimeField\n | DatetimeField;\n\nexport type GroupField = {\n type: \"group\";\n value: (Base & Breakpoints & SingleFields)[];\n} & Base;\n\nexport type ArrayGroupField = {\n type: \"group[]\";\n value: (Base & Breakpoints & SingleFields)[];\n} & Base;\n\ntype Fields = SingleFields | GroupField | ArrayGroupField;\nexport type ModelField = Base & Breakpoints & Fields;\n\nexport type Model = {\n fields: ModelField[];\n};\n\n/**\n * INSTANCE TYPES\n * Types used to represent an instance of a model specification\n */\nexport type BaseFieldType = string | number | boolean | Date;\nexport type ArrayFieldType = string[] | number[];\nexport type SingleFieldType = BaseFieldType | ArrayFieldType;\nexport type GroupInstanceType = { [key: string]: SingleFieldType };\nexport type ArrayInstanceType = { [key: string]: SingleFieldType }[];\nexport type FieldType = SingleFieldType | GroupInstanceType;\n\nexport interface BasicModelInstance {\n id: string;\n [key: string]: FieldType;\n}\n\n/**\n * UTILITIES\n * Some functions used in several places to help to manage models\n */\nconst InitialStateZeroValue: Record<ModelFieldTypes | \"group\" | \"group[]\", FieldType | undefined> =\n {\n string: \"\",\n number: 0,\n boolean: false,\n enum: \"\",\n multienum: [],\n date: new Date(1970, 0, 1, 0, 0),\n time: new Date(1970, 0, 1, 0, 0),\n datetime: new Date(1970, 0, 1, 0, 0),\n group: {},\n \"group[]\": [],\n \"string[]\": [],\n \"number[]\": [],\n };\n\nconst getFieldValueOrZero = (\n field: ModelField,\n values: BasicModelInstance | GroupInstanceType | undefined,\n) => {\n return (\n (values && values[field.id]) ||\n (\"default\" in field && field.default) ||\n InitialStateZeroValue[field.type]\n );\n};\n\nexport const newInstanceFromValuesOrZeroValue = <T extends BasicModelInstance>(\n model: Model,\n values: T | undefined = undefined,\n): T => {\n const obj: Record<string, FieldType | undefined> = {};\n\n model.fields.forEach((field) => {\n if (field.type === \"group\") {\n const value: GroupInstanceType = {};\n field.value.forEach((groupField) => {\n value[groupField.id] = getFieldValueOrZero(\n groupField,\n values && (values[field.id] as GroupInstanceType),\n ) as SingleFieldType;\n });\n obj[field.id] = value;\n } else {\n obj[field.id] = getFieldValueOrZero(field, values);\n }\n });\n\n return obj as T;\n};\n","import { Color, useTheme } from \"@mui/material\";\n\ntype KeyColor = keyof Color;\n\nexport const useGetDefaultThemeColor = ({\n lightWeight = 100,\n darkWeight = 900,\n}: { lightWeight?: KeyColor; darkWeight?: KeyColor } = {}) => {\n const { palette } = useTheme();\n return palette.mode === \"light\" ? palette.grey[lightWeight] : palette.grey[darkWeight];\n};\n","import Grid from \"@mui/material/Grid\";\nimport Paper from \"@mui/material/Paper\";\nimport Box from \"@mui/material/Box\";\nimport Typography from \"@mui/material/Typography\";\nimport { useTheme } from \"@mui/material/styles\";\nimport { useGetDefaultThemeColor } from \"../utils\";\nimport { ValueItemElement } from \"../value-item\";\n\nexport interface GroupValueCardProps {\n title: string;\n subtitle?: string;\n centered?: boolean;\n children: ValueItemElement | ValueItemElement[];\n dense?: boolean;\n}\n\nexport const GroupValueCard = ({\n title,\n subtitle,\n centered,\n children,\n dense,\n}: GroupValueCardProps) => {\n const { typography } = useTheme();\n const defaultColor = useGetDefaultThemeColor({ lightWeight: 200, darkWeight: 800 });\n\n return (\n <Paper\n sx={{\n paddingBottom: dense ? 0 : 1,\n }}\n >\n <Box\n bgcolor={defaultColor}\n px={dense ? 1 : 2}\n py={dense ? 0.5 : 1}\n lineHeight={dense ? 0 : undefined}\n >\n <Typography variant={dense ? \"body1\" : \"h6\"} role=\"heading\" aria-level={1}>\n {title}\n </Typography>\n {subtitle && (\n <Typography\n variant={dense ? \"caption\" : \"body2\"}\n role=\"heading\"\n aria-level={2}\n lineHeight={dense ? typography.pxToRem(15) : undefined}\n >\n {subtitle}\n </Typography>\n )}\n </Box>\n <Grid\n container\n padding={1}\n rowSpacing={dense ? 1 : 2}\n justifyContent={centered ? \"center\" : \"flex-start\"}\n >\n {children}\n </Grid>\n </Paper>\n );\n};\n","import Box from \"@mui/material/Box\";\nimport Grid from \"@mui/material/Grid\";\nimport FormControlLabel from \"@mui/material/FormControlLabel\";\nimport Checkbox from \"@mui/material/Checkbox\";\nimport FormControl from \"@mui/material/FormControl\";\nimport InputLabel from \"@mui/material/InputLabel\";\nimport Select from \"@mui/material/Select\";\nimport MenuItem from \"@mui/material/MenuItem\";\nimport ListItemText from \"@mui/material/ListItemText\";\nimport TextField from \"@mui/material/TextField\";\nimport { SelectChangeEvent } from \"@mui/material/Select\";\nimport { DesktopDatePicker, TimePicker, DateTimePicker } from \"@mui/x-date-pickers\";\nimport { ChangeEvent, ReactElement } from \"react\";\nimport { useGetDefaultThemeColor } from \"../utils\";\nimport { GroupValueCard } from \"../group-value-card\";\nimport {\n ArrayFieldType,\n FieldType,\n ModelField,\n ModelFieldTypes,\n} from \"../generators/generators.model\";\n\nexport interface ModelFormField {\n field: ModelField;\n update: boolean;\n dense?: boolean;\n path?: string[];\n value: any;\n onChangeValue: (path: string[], value: any) => void;\n}\n\nexport const ModelFormField = ({\n field,\n path = [],\n value,\n dense,\n update,\n onChangeValue,\n}: ModelFormField) => {\n const handleCheckboxChange = (e: ChangeEvent<HTMLInputElement>) => {\n e.preventDefault();\n onChangeValue([...path, e.target.name], e.target.checked);\n };\n\n const handleSelectChange = (e: SelectChangeEvent<FieldType>) => {\n e.preventDefault();\n onChangeValue([...path, e.target.name], e.target.value);\n };\n\n const handleMultiSelectChange = (e: SelectChangeEvent<FieldType>) => {\n e.preventDefault();\n const { value } = e.target;\n const newValue = typeof value === \"string\" ? value.split(\",\") : value;\n onChangeValue([...path, e.target.name], newValue);\n };\n\n const handleInputChange = (\n e: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>,\n type: ModelFieldTypes,\n ) => {\n e.preventDefault();\n\n let value: string | number | string[] | number[] = e.target.value;\n if (type === \"number\" && typeof value === \"string\") {\n value = parseInt(e.target.value, 10);\n } else if (type.includes(\"[]\")) {\n value = e.target.value.split(\",\");\n }\n onChangeValue([...path, e.target.name], value);\n };\n\n const handleDateChange = (value: FieldType | null, id: string) => {\n onChangeValue([...path, id], value);\n };\n\n const defaultColor = useGetDefaultThemeColor({ lightWeight: 200, darkWeight: 800 });\n\n const {\n id,\n type,\n name,\n description,\n updatable = true,\n required = true,\n xs,\n sm,\n md,\n lg,\n xl,\n } = field;\n const disabled: boolean = !updatable && update;\n\n let fieldInput: ReactElement;\n const size = dense ? \"small\" : \"medium\";\n if (type === \"group\") {\n fieldInput = (\n <GroupValueCard title={name} subtitle={description} dense={dense}>\n <Grid container spacing={2} sx={{ p: 2 }}>\n {field.value.map((f) => (\n <ModelFormField\n key={f.id}\n field={f}\n dense={dense}\n path={[...path, id]}\n value={value[f.id]}\n update={update}\n onChangeValue={onChangeValue}\n />\n ))}\n </Grid>\n </GroupValueCard>\n );\n } else if (type === \"boolean\") {\n fieldInput = (\n <Box sx={{ height: 1, display: \"flex\", alignItems: \"center\" }}>\n <FormControlLabel\n control={\n <Checkbox\n name={id}\n size={size}\n onChange={handleCheckboxChange}\n checked={value as boolean}\n disabled={disabled}\n />\n }\n label={name}\n />\n </Box>\n );\n } else if (type === \"enum\") {\n fieldInput = (\n <FormControl fullWidth>\n <InputLabel id={`${id}-select-label`}>{name}</InputLabel>\n <Select\n labelId={`${id}-select-label`}\n id={`${id}-select`}\n value={value}\n label={name}\n name={id}\n size={size}\n onChange={handleSelectChange}\n required={required}\n disabled={disabled}\n >\n {field.value.map((fieldValue) => (\n <MenuItem key={fieldValue} value={fieldValue}>\n {fieldValue}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n );\n } else if (type === \"multienum\") {\n fieldInput = (\n <FormControl fullWidth>\n <InputLabel id={`${id}-select-label`}>{name}</InputLabel>\n <Select\n labelId={`${id}-select-label`}\n id={`${id}-select`}\n value={value || []}\n renderValue={(selected) => (selected as ArrayFieldType).join(\", \")}\n label={name}\n name={id}\n size={size}\n onChange={handleMultiSelectChange}\n required={required}\n disabled={disabled}\n multiple\n >\n {field.value.map((fieldValue) => (\n <MenuItem key={fieldValue} value={fieldValue}>\n <Checkbox checked={((value as any[]) || []).includes(fieldValue)} />\n <ListItemText primary={fieldValue} />\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n );\n } else if (type === \"date\") {\n fieldInput = (\n <DesktopDatePicker\n label={name}\n format={field.format}\n value={value}\n slotProps={\n {\n field: {\n size,\n },\n } as any\n }\n disabled={disabled}\n onChange={(value) => handleDateChange(value, id)}\n />\n );\n } else if (type === \"time\") {\n fieldInput = (\n <TimePicker\n label={name}\n format={field.format}\n value={value}\n slotProps={\n {\n field: {\n size,\n },\n } as any\n }\n disabled={disabled}\n onChange={(value) => handleDateChange(value, id)}\n />\n );\n } else if (type === \"datetime\") {\n fieldInput = (\n <DateTimePicker\n label={name}\n format={field.format}\n value={value}\n slotProps={\n {\n field: {\n size,\n },\n } as any\n }\n disabled={disabled}\n onChange={(value) => handleDateChange(value, id)}\n />\n );\n } else if (type === \"group[]\") {\n return null;\n } else if (type.includes(\"[]\")) {\n fieldInput = (\n <TextField\n required={required}\n type=\"text\"\n label={name}\n name={id}\n size={size}\n variant=\"outlined\"\n helperText=\"Use comas to separate multiple values\"\n fullWidth\n disabled={disabled}\n value={(value as any[]).join(\",\")}\n onChange={(e) => handleInputChange(e, type)}\n />\n );\n } else {\n fieldInput = (\n <TextField\n required={required}\n type={type}\n label={name}\n size={size}\n name={id}\n variant=\"outlined\"\n fullWidth\n value={value}\n disabled={disabled}\n onChange={(e) => handleInputChange(e, type)}\n />\n );\n }\n\n return (\n <Grid item key={id} xs={xs} sm={sm} md={md} lg={lg} xl={xl}>\n {fieldInput}\n </Grid>\n );\n};\n","export default function _isPlaceholder(a) {\n return a != null && typeof a === 'object' && a['@@functional/placeholder'] === true;\n}","import _isPlaceholder from \"./_isPlaceholder.js\";\n\n/**\n * Optimized internal one-arity curry function.\n *\n * @private\n * @category Function\n * @param {Function} fn The function to curry.\n * @return {Function} The curried function.\n */\nexport default function _curry1(fn) {\n return function f1(a) {\n if (arguments.length === 0 || _isPlaceholder(a)) {\n return f1;\n } else {\n return fn.apply(this, arguments);\n }\n };\n}","import _curry1 from \"./_curry1.js\";\nimport _isPlaceholder from \"./_isPlaceholder.js\";\n\n/**\n * Optimized internal two-arity curry function.\n *\n * @private\n * @category Function\n * @param {Function} fn The function to curry.\n * @return {Function} The curried function.\n */\nexport default function _curry2(fn) {\n return function f2(a, b) {\n switch (arguments.length) {\n case 0:\n return f2;\n case 1:\n return _isPlaceholder(a) ? f2 : _curry1(function (_b) {\n return fn(a, _b);\n });\n default:\n return _isPlaceholder(a) && _isPlaceholder(b) ? f2 : _isPlaceholder(a) ? _curry1(function (_a) {\n return fn(_a, b);\n }) : _isPlaceholder(b) ? _curry1(function (_b) {\n return fn(a, _b);\n }) : fn(a, b);\n }\n };\n}","import _curry1 from \"./_curry1.js\";\nimport _curry2 from \"./_curry2.js\";\nimport _isPlaceholder from \"./_isPlaceholder.js\";\n\n/**\n * Optimized internal three-arity curry function.\n *\n * @private\n * @category Function\n * @param {Function} fn The function to curry.\n * @return {Function} The curried function.\n */\nexport default function _curry3(fn) {\n return function f3(a, b, c) {\n switch (arguments.length) {\n case 0:\n return f3;\n case 1:\n return _isPlaceholder(a) ? f3 : _curry2(function (_b, _c) {\n return fn(a, _b, _c);\n });\n case 2:\n return _isPlaceholder(a) && _isPlaceholder(b) ? f3 : _isPlaceholder(a) ? _curry2(function (_a, _c) {\n return fn(_a, b, _c);\n }) : _isPlaceholder(b) ? _curry2(function (_b, _c) {\n return fn(a, _b, _c);\n }) : _curry1(function (_c) {\n return fn(a, b, _c);\n });\n default:\n return _isPlaceholder(a) && _isPlaceholder(b) && _isPlaceholder(c) ? f3 : _isPlaceholder(a) && _isPlaceholder(b) ? _curry2(function (_a, _b) {\n return fn(_a, _b, c);\n }) : _isPlaceholder(a) && _isPlaceholder(c) ? _curry2(function (_a, _c) {\n return fn(_a, b, _c);\n }) : _isPlaceholder(b) && _isPlaceholder(c) ? _curry2(function (_b, _c) {\n return fn(a, _b, _c);\n }) : _isPlaceholder(a) ? _curry1(function (_a) {\n return fn(_a, b, c);\n }) : _isPlaceholder(b) ? _curry1(function (_b) {\n return fn(a, _b, c);\n }) : _isPlaceholder(c) ? _curry1(function (_c) {\n return fn(a, b, _c);\n }) : fn(a, b, c);\n }\n };\n}","/**\n * Tests whether or not an object is an array.\n *\n * @private\n * @param {*} val The object to test.\n * @return {Boolean} `true` if `val` is an array, `false` otherwise.\n * @example\n *\n * _isArray([]); //=> true\n * _isArray(null); //=> false\n * _isArray({}); //=> false\n */\nexport default Array.isArray || function _isArray(val) {\n return val != null && val.length >= 0 && Object.prototype.toString.call(val) === '[object Array]';\n};","/**\n * Determine if the passed argument is an integer.\n *\n * @private\n * @param {*} n\n * @category Type\n * @return {Boolean}\n */\nexport default Number.isInteger || function _isInteger(n) {\n return n << 0 === n;\n};","import _curry1 from \"./internal/_curry1.js\";\n\n/**\n * Checks if the input value is `null` or `undefined`.\n *\n * @func\n * @memberOf R\n * @since v0.9.0\n * @category Type\n * @sig * -> Boolean\n * @param {*} x The value to test.\n * @return {Boolean} `true` if `x` is `undefined` or `null`, otherwise `false`.\n * @example\n *\n * R.isNil(null); //=> true\n * R.isNil(undefined); //=> true\n * R.isNil(0); //=> false\n * R.isNil([]); //=> false\n */\nvar isNil = /*#__PURE__*/_curry1(function isNil(x) {\n return x == null;\n});\nexport default isNil;","import _curry3 from \"./internal/_curry3.js\";\nimport _has from \"./internal/_has.js\";\nimport _isInteger from \"./internal/_isInteger.js\";\nimport _assoc from \"./internal/_assoc.js\";\nimport isNil from \"./isNil.js\";\n\n/**\n * Makes a shallow clone of an object, setting or overriding the nodes required\n * to create the given path, and placing the specific value at the tail end of\n * that path. Note that this copies and flattens prototype properties onto the\n * new object as well. All non-primitive properties are copied by reference.\n *\n * @func\n * @memberOf R\n * @since v0.8.0\n * @category Object\n * @typedefn Idx = String | Int | Symbol\n * @sig [Idx] -> a -> {a} -> {a}\n * @param {Array} path the path to set\n * @param {*} val The new value\n * @param {Object} obj The object to clone\n * @return {Object} A new object equivalent to the original except along the specified path.\n * @see R.dissocPath\n * @example\n *\n * R.assocPath(['a', 'b', 'c'], 42, {a: {b: {c: 0}}}); //=> {a: {b: {c: 42}}}\n *\n * // Any missing or non-object keys in path will be overridden\n * R.assocPath(['a', 'b', 'c'], 42, {a: 5}); //=> {a: {b: {c: 42}}}\n */\nvar assocPath = /*#__PURE__*/_curry3(function assocPath(path, val, obj) {\n if (path.length === 0) {\n return val;\n }\n var idx = path[0];\n if (path.length > 1) {\n var nextObj = !isNil(obj) && _has(idx, obj) && typeof obj[idx] === 'object' ? obj[idx] : _isInteger(path[1]) ? [] : {};\n val = assocPath(Array.prototype.slice.call(path, 1), val, nextObj);\n }\n return _assoc(idx, val, obj);\n});\nexport default assocPath;","export default function _has(prop, obj) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}","import _isArray from \"./_isArray.js\";\nimport _isInteger from \"./_isInteger.js\";\n\n/**\n * Makes a shallow clone of an object, setting or overriding the specified\n * property with the given value. Note that this copies and flattens prototype\n * properties onto the new object as well. All non-primitive properties are\n * copied by reference.\n *\n * @private\n * @param {String|Number} prop The property name to set\n * @param {*} val The new value\n * @param {Object|Array} obj The object to clone\n * @return {Object|Array} A new object equivalent to the original except for the changed property.\n */\nexport default function _assoc(prop, val, obj) {\n if (_isInteger(prop) && _isArray(obj)) {\n var arr = [].concat(obj);\n arr[prop] = val;\n return arr;\n }\n var result = {};\n for (var p in obj) {\n result[p] = obj[p];\n }\n result[prop] = val;\n return result;\n}","import Button from \"@mui/material/Button\";\nimport Grid from \"@mui/material/Grid\";\nimport { FormEvent, useMemo } from \"react\";\nimport { useState } from \"react\";\nimport {\n Model,\n BasicModelInstance,\n FieldType,\n newInstanceFromValuesOrZeroValue,\n} from \"../generators\";\nimport { ModelFormField } from \"./model-form-field\";\nimport { assocPath } from \"ramda\";\n\nexport interface ModelFormProps<T extends BasicModelInstance> {\n model: Model;\n dense?: boolean;\n initialValues?: T;\n saveButtonText: string;\n onSubmit: (values: T) => void;\n}\n\nexport const ModelForm = <T extends BasicModelInstance>({\n model,\n saveButtonText,\n dense,\n onSubmit,\n initialValues,\n}: ModelFormProps<T>) => {\n const valuesInitialState = useMemo(\n () => newInstanceFromValuesOrZeroValue<T>(model, initialValues),\n [model, initialValues],\n );\n const [values, setValues] = useState<T>(valuesInitialState);\n\n const setKeyValue = (path: string[], value: FieldType | null) => {\n setValues((v) => assocPath(path, value, v));\n };\n\n const handleSubmit = (e: FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n onSubmit(values);\n };\n\n return (\n <Grid container component=\"form\" spacing={2} onSubmit={handleSubmit}>\n {model.fields.map((f) => (\n <ModelFormField\n key={f.id}\n dense={dense}\n field={f}\n value={values[f.id]}\n update={!!initialValues}\n onChangeValue={setKeyValue}\n />\n ))}\n <Grid item xs={12}>\n <Button type=\"submit\" variant=\"contained\" size={dense ? \"small\" : \"medium\"}>\n {saveButtonText}\n </Button>\n </Grid>\n </Grid>\n );\n};\n"],"names":["InitialStateZeroValue","string","number","boolean","enum","multienum","date","Date","time","datetime","group","getFieldValueOrZero","field","values","id","default","type","useGetDefaultThemeColor","lightWeight","darkWeight","palette","useTheme","mode","grey","GroupValueCard","title","subtitle","centered","children","dense","typography","defaultColor","_jsxs","Paper","sx","paddingBottom","Box","bgcolor","px","py","lineHeight","undefined","_jsx","Typography","variant","role","pxToRem","Grid","container","padding","rowSpacing","justifyContent","ModelFormField","path","value","update","onChangeValue","handleCheckboxChange","e","preventDefault","target","name","checked","handleSelectChange","handleMultiSelectChange","newValue","split","handleInputChange","parseInt","includes","handleDateChange","description","updatable","required","xs","sm","md","lg","xl","disabled","fieldInput","size","spacing","p","map","f","height","display","alignItems","FormControlLabel","control","Checkbox","onChange","label","FormControl","fullWidth","InputLabel","Select","labelId","fieldValue","MenuItem","renderValue","selected","join","multiple","ListItemText","primary","DesktopDatePicker","format","slotProps","TimePicker","DateTimePicker","TextField","helperText","item","_isPlaceholder","a","_curry1","fn","f1","arguments","length","apply","this","_curry2","f2","b","_b","_a","_curry3","f3","c","_c","_isArray","Array","isArray","val","Object","prototype","toString","call","_isInteger","Number","isInteger","n","isNil","x","assocPath","obj","idx","nextObj","prop","hasOwnProperty","_has","slice","arr","concat","result","_assoc","ModelForm","model","saveButtonText","onSubmit","initialValues","valuesInitialState","useMemo","fields","forEach","groupField","newInstanceFromValuesOrZeroValue","setValues","useState","setKeyValue","v","component","Button"],"mappings":"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","x_google_ignoreList":[4,5,6,7,8,9,10,11,12,13]}
@@ -1,12 +0,0 @@
1
- {
2
- "name": "@pautena/react-design-system/model-form",
3
- "private": true,
4
- "main": "./cjs/index.js",
5
- "module": "./index.js",
6
- "types": "./index.d.ts",
7
- "dependencies": {
8
- "@mui/material": "^6.4.5",
9
- "@mui/x-date-pickers": "^7.27.0",
10
- "react": "^19.0.0"
11
- }
12
- }
@@ -1,2 +0,0 @@
1
- "use strict";var e=require("react/jsx-runtime"),r=require("react"),t=require("@mui/material/Snackbar"),i=require("@mui/material/Alert"),o=require("@mui/material/AlertTitle");const n=new Error("NotificationCenterContext.Provider is required and was undefined"),s=r.createContext(void 0),a=()=>{const e=r.useContext(s);if(void 0===e)throw n;return e};exports.NotificationCenterContext=s,exports.NotificationCenterProvider=({children:n,autoHideDuration:a=6e3})=>{const[u,c]=r.useState(void 0),[d,l]=r.useState(!1),h=()=>{l(!1)};return e.jsxs(s.Provider,{value:{show:e=>{c(e),l(!0)},hide:h},children:[e.jsx(t,{open:d,autoHideDuration:a,onClose:h,anchorOrigin:{vertical:"top",horizontal:"right"},children:e.jsxs(i,{onClose:h,severity:u?.severity,"aria-label":u?.severity,sx:{width:"100%"},children:[u?.title&&e.jsx(o,{children:u?.title}),u?.message]})}),n]})},exports.NotificationCenterProviderUndefinedError=n,exports.useNotificationCenter=a,exports.useNotifyWhenValueChanges=(e,t,{from:i,to:o})=>{const n=r.useRef(void 0),{show:s}=a();r.useEffect((()=>{n.current===i&&t===o&&s(e),n.current=t}),[t])};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/notification-center/notification-center.context.ts","../../../src/notification-center/notification-center.provider.tsx","../../../src/notification-center/notification-center.hooks.ts"],"sourcesContent":["import { AlertColor } from \"@mui/material/Alert\";\nimport { createContext, useContext } from \"react\";\n\nexport const NotificationCenterProviderUndefinedError = new Error(\n \"NotificationCenterContext.Provider is required and was undefined\",\n);\n\nexport interface Notification {\n severity: AlertColor;\n title?: string;\n message: string;\n}\n\nexport interface NotificationCenterProps {\n show(notification: Notification): void;\n hide(): void;\n}\n\nexport const NotificationCenterContext = createContext<NotificationCenterProps | undefined>(\n undefined,\n);\n\nexport const useNotificationCenter = () => {\n const context = useContext(NotificationCenterContext);\n\n if (context === undefined) {\n throw NotificationCenterProviderUndefinedError;\n }\n\n return context;\n};\n","import { useState, PropsWithChildren } from \"react\";\nimport Snackbar from \"@mui/material/Snackbar\";\nimport Alert from \"@mui/material/Alert\";\nimport AlertTitle from \"@mui/material/AlertTitle\";\nimport { Notification, NotificationCenterContext } from \"./notification-center.context\";\n\nexport type NotificationCenterProviderProps = PropsWithChildren<{\n autoHideDuration?: number;\n}>;\n\nexport const NotificationCenterProvider = ({\n children,\n autoHideDuration = 6000,\n}: NotificationCenterProviderProps) => {\n const [notification, setNotification] = useState<Notification | undefined>(undefined);\n const [open, setOpen] = useState(false);\n const show = (notification: Notification) => {\n setNotification(notification);\n setOpen(true);\n };\n\n const hide = () => {\n setOpen(false);\n };\n\n return (\n <NotificationCenterContext.Provider\n value={{\n show,\n hide,\n }}\n >\n <Snackbar\n open={open}\n autoHideDuration={autoHideDuration}\n onClose={hide}\n anchorOrigin={{ vertical: \"top\", horizontal: \"right\" }}\n >\n <Alert\n onClose={hide}\n severity={notification?.severity}\n aria-label={notification?.severity}\n sx={{ width: \"100%\" }}\n >\n {notification?.title && <AlertTitle>{notification?.title}</AlertTitle>}\n {notification?.message}\n </Alert>\n </Snackbar>\n {children}\n </NotificationCenterContext.Provider>\n );\n};\n","import { useEffect, useRef } from \"react\";\nimport { useNotificationCenter, Notification } from \"./notification-center.context\";\n\nexport interface NotifyWhenValueChangesOptions<T> {\n from: T;\n to: T;\n}\n\nexport const useNotifyWhenValueChanges = <T>(\n notification: Notification,\n value: T | undefined,\n { from, to }: NotifyWhenValueChangesOptions<T>,\n) => {\n const prevRef = useRef<T>(undefined);\n const { show } = useNotificationCenter();\n\n useEffect(() => {\n if (prevRef.current === from && value === to) {\n show(notification);\n }\n prevRef.current = value;\n }, [value]);\n};\n"],"names":["NotificationCenterProviderUndefinedError","Error","NotificationCenterContext","createContext","undefined","useNotificationCenter","context","useContext","children","autoHideDuration","notification","setNotification","useState","open","setOpen","hide","_jsxs","Provider","value","show","_jsx","Snackbar","onClose","anchorOrigin","vertical","horizontal","Alert","severity","sx","width","title","jsx","AlertTitle","message","from","to","prevRef","useRef","useEffect","current"],"mappings":"oLAGaA,EAA2C,IAAIC,MAC1D,oEAcWC,EAA4BC,EAAaA,mBACpDC,GAGWC,EAAwB,KACnC,MAAMC,EAAUC,EAAUA,WAACL,GAE3B,QAAgBE,IAAZE,EACF,MAAMN,EAGR,OAAOM,CAAO,yECnB0B,EACxCE,WACAC,mBAAmB,QAEnB,MAAOC,EAAcC,GAAmBC,EAAAA,cAAmCR,IACpES,EAAMC,GAAWF,EAAAA,UAAS,GAM3BG,EAAO,KACXD,GAAQ,EAAM,EAGhB,OACEE,OAACd,EAA0Be,SAAQ,CACjCC,MAAO,CACLC,KAZQT,IACZC,EAAgBD,GAChBI,GAAQ,EAAK,EAWTC,QACDP,SAAA,CAEDY,MAACC,EACC,CAAAR,KAAMA,EACNJ,iBAAkBA,EAClBa,QAASP,EACTQ,aAAc,CAAEC,SAAU,MAAOC,WAAY,SAE7CjB,SAAAQ,OAACU,EACC,CAAAJ,QAASP,EACTY,SAAUjB,GAAciB,SAAQ,aACpBjB,GAAciB,SAC1BC,GAAI,CAAEC,MAAO,QAAQrB,SAAA,CAEpBE,GAAcoB,OAASV,EAAAW,IAACC,EAAY,CAAAxB,SAAAE,GAAcoB,QAClDpB,GAAcuB,aAGlBzB,IACkC,uHCzCA,CACvCE,EACAQ,GACEgB,OAAMC,SAER,MAAMC,EAAUC,EAAMA,YAAIjC,IACpBe,KAAEA,GAASd,IAEjBiC,EAAAA,WAAU,KACJF,EAAQG,UAAYL,GAAQhB,IAAUiB,GACxChB,EAAKT,GAEP0B,EAAQG,QAAUrB,CAAK,GACtB,CAACA,GAAO"}
@@ -1,11 +0,0 @@
1
- {
2
- "name": "@pautena/react-design-system/notification-center",
3
- "private": true,
4
- "main": "./cjs/index.js",
5
- "module": "./index.js",
6
- "types": "./index.d.ts",
7
- "dependencies": {
8
- "@mui/material": "^6.4.5",
9
- "react": "^19.0.0"
10
- }
11
- }
@@ -1,3 +0,0 @@
1
- export * from "./notification-center.provider";
2
- export * from "./notification-center.context";
3
- export * from "./notification-center.hooks";
@@ -1,2 +0,0 @@
1
- import{jsxs as r,jsx as e}from"react/jsx-runtime";import{createContext as i,useContext as t,useState as o,useRef as n,useEffect as a}from"react";import l from"@mui/material/Snackbar";import d from"@mui/material/Alert";import m from"@mui/material/AlertTitle";const c=new Error("NotificationCenterContext.Provider is required and was undefined"),s=i(void 0),u=()=>{const r=t(s);if(void 0===r)throw c;return r},h=({children:i,autoHideDuration:t=6e3})=>{const[n,a]=o(void 0),[c,u]=o(!1),h=()=>{u(!1)};return r(s.Provider,{value:{show:r=>{a(r),u(!0)},hide:h},children:[e(l,{open:c,autoHideDuration:t,onClose:h,anchorOrigin:{vertical:"top",horizontal:"right"},children:r(d,{onClose:h,severity:n?.severity,"aria-label":n?.severity,sx:{width:"100%"},children:[n?.title&&e(m,{children:n?.title}),n?.message]})}),i]})},v=(r,e,{from:i,to:t})=>{const o=n(void 0),{show:l}=u();a((()=>{o.current===i&&e===t&&l(r),o.current=e}),[e])};export{s as NotificationCenterContext,h as NotificationCenterProvider,c as NotificationCenterProviderUndefinedError,u as useNotificationCenter,v as useNotifyWhenValueChanges};
2
- //# sourceMappingURL=index.js.map