@zidsa/zidmui 2.0.2 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. package/README.md +1 -1
  2. package/dist/react/cjs/components/app-checkbox.js +43 -0
  3. package/dist/react/cjs/components/app-checkbox.js.map +1 -0
  4. package/dist/react/cjs/components/app-dialog-with-features.js +85 -0
  5. package/dist/react/cjs/components/app-dialog-with-features.js.map +1 -0
  6. package/dist/react/cjs/components/app-dialog.js +52 -0
  7. package/dist/react/cjs/components/app-dialog.js.map +1 -0
  8. package/dist/react/cjs/components/app-empty-state.js +106 -0
  9. package/dist/react/cjs/components/app-empty-state.js.map +1 -0
  10. package/dist/react/cjs/components/app-icon-button.js +30 -0
  11. package/dist/react/cjs/components/app-icon-button.js.map +1 -0
  12. package/dist/react/cjs/components/app-input-radio-card.js +86 -0
  13. package/dist/react/cjs/components/app-input-radio-card.js.map +1 -0
  14. package/dist/react/cjs/components/app-input-radio.js +69 -0
  15. package/dist/react/cjs/components/app-input-radio.js.map +1 -0
  16. package/dist/react/cjs/components/app-pagination.js +19 -0
  17. package/dist/react/cjs/components/app-pagination.js.map +1 -0
  18. package/dist/react/cjs/components/app-radio-group.js +46 -0
  19. package/dist/react/cjs/components/app-radio-group.js.map +1 -0
  20. package/dist/react/cjs/components/app-status.js +4 -0
  21. package/dist/react/cjs/components/app-status.js.map +1 -1
  22. package/dist/react/cjs/components/app-switch-group.js +34 -0
  23. package/dist/react/cjs/components/app-switch-group.js.map +1 -0
  24. package/dist/react/cjs/components/app-switch.js +25 -0
  25. package/dist/react/cjs/components/app-switch.js.map +1 -0
  26. package/dist/react/cjs/components/app-tabs.js +51 -0
  27. package/dist/react/cjs/components/app-tabs.js.map +1 -0
  28. package/dist/react/cjs/stories/css/Button.stories.js +133 -0
  29. package/dist/react/cjs/stories/css/Button.stories.js.map +1 -0
  30. package/dist/react/cjs/stories/css/Card.stories.js +145 -0
  31. package/dist/react/cjs/stories/css/Card.stories.js.map +1 -0
  32. package/dist/react/cjs/stories/css/Checkbox.stories.js +138 -0
  33. package/dist/react/cjs/stories/css/Checkbox.stories.js.map +1 -0
  34. package/dist/react/cjs/stories/css/ComponentReference.stories.js +139 -0
  35. package/dist/react/cjs/stories/css/ComponentReference.stories.js.map +1 -0
  36. package/dist/react/cjs/stories/css/Input.stories.js +162 -0
  37. package/dist/react/cjs/stories/css/Input.stories.js.map +1 -0
  38. package/dist/react/cjs/stories/css/ListItem.stories.js +166 -0
  39. package/dist/react/cjs/stories/css/ListItem.stories.js.map +1 -0
  40. package/dist/react/cjs/stories/css/Modal.stories.js +121 -0
  41. package/dist/react/cjs/stories/css/Modal.stories.js.map +1 -0
  42. package/dist/react/cjs/stories/css/Radio.stories.js +118 -0
  43. package/dist/react/cjs/stories/css/Radio.stories.js.map +1 -0
  44. package/dist/react/cjs/stories/css/Select.stories.js +187 -0
  45. package/dist/react/cjs/stories/css/Select.stories.js.map +1 -0
  46. package/dist/react/cjs/stories/css/Status.stories.js +59 -0
  47. package/dist/react/cjs/stories/css/Status.stories.js.map +1 -0
  48. package/dist/react/cjs/stories/css/Switch.stories.js +136 -0
  49. package/dist/react/cjs/stories/css/Switch.stories.js.map +1 -0
  50. package/dist/react/cjs/stories/css/Table.stories.js +171 -0
  51. package/dist/react/cjs/stories/css/Table.stories.js.map +1 -0
  52. package/dist/react/cjs/stories/css/Tooltip.stories.js +99 -0
  53. package/dist/react/cjs/stories/css/Tooltip.stories.js.map +1 -0
  54. package/dist/react/cjs/stories/css/Utilities.stories.js +136 -0
  55. package/dist/react/cjs/stories/css/Utilities.stories.js.map +1 -0
  56. package/dist/react/cjs/stories/design/Colors.stories.js +8 -2
  57. package/dist/react/cjs/stories/design/Colors.stories.js.map +1 -1
  58. package/dist/react/cjs/stories/design/Typography.stories.js +116 -0
  59. package/dist/react/cjs/stories/design/Typography.stories.js.map +1 -0
  60. package/dist/react/cjs/stories/design/spacing/CSS.stories.js +61 -0
  61. package/dist/react/cjs/stories/design/spacing/CSS.stories.js.map +1 -0
  62. package/dist/react/cjs/stories/design/{Spacing.stories.js → spacing/React.stories.js} +8 -8
  63. package/dist/react/cjs/stories/design/spacing/React.stories.js.map +1 -0
  64. package/dist/react/cjs/stories/react/AppCheckbox.stories.js +67 -0
  65. package/dist/react/cjs/stories/react/AppCheckbox.stories.js.map +1 -0
  66. package/dist/react/cjs/stories/react/AppDialog.stories.js +129 -0
  67. package/dist/react/cjs/stories/react/AppDialog.stories.js.map +1 -0
  68. package/dist/react/cjs/stories/react/AppDialogWithFeatures.stories.js +127 -0
  69. package/dist/react/cjs/stories/react/AppDialogWithFeatures.stories.js.map +1 -0
  70. package/dist/react/cjs/stories/react/AppEmptyState.stories.js +157 -0
  71. package/dist/react/cjs/stories/react/AppEmptyState.stories.js.map +1 -0
  72. package/dist/react/cjs/stories/react/AppIconButton.stories.js +53 -0
  73. package/dist/react/cjs/stories/react/AppIconButton.stories.js.map +1 -0
  74. package/dist/react/cjs/stories/react/AppInputBase.stories.js +91 -72
  75. package/dist/react/cjs/stories/react/AppInputBase.stories.js.map +1 -1
  76. package/dist/react/cjs/stories/react/AppInputBaseSearch.stories.js +34 -26
  77. package/dist/react/cjs/stories/react/AppInputBaseSearch.stories.js.map +1 -1
  78. package/dist/react/cjs/stories/react/AppInputRadio.stories.js +262 -0
  79. package/dist/react/cjs/stories/react/AppInputRadio.stories.js.map +1 -0
  80. package/dist/react/cjs/stories/react/AppInputRadioCard.stories.js +126 -0
  81. package/dist/react/cjs/stories/react/AppInputRadioCard.stories.js.map +1 -0
  82. package/dist/react/cjs/stories/react/AppPagination.stories.js +71 -0
  83. package/dist/react/cjs/stories/react/AppPagination.stories.js.map +1 -0
  84. package/dist/react/cjs/stories/react/AppRadioGroup.stories.js +145 -0
  85. package/dist/react/cjs/stories/react/AppRadioGroup.stories.js.map +1 -0
  86. package/dist/react/cjs/stories/react/AppSwitch.stories.js +138 -0
  87. package/dist/react/cjs/stories/react/AppSwitch.stories.js.map +1 -0
  88. package/dist/react/cjs/stories/react/AppTabs.stories.js +100 -0
  89. package/dist/react/cjs/stories/react/AppTabs.stories.js.map +1 -0
  90. package/dist/react/cjs/theme/components/checkbox.js +18 -0
  91. package/dist/react/cjs/theme/components/checkbox.js.map +1 -0
  92. package/dist/react/cjs/theme/components/dialog.js +46 -0
  93. package/dist/react/cjs/theme/components/dialog.js.map +1 -0
  94. package/dist/react/cjs/theme/components/divider.js +11 -0
  95. package/dist/react/cjs/theme/components/divider.js.map +1 -0
  96. package/dist/react/cjs/theme/components/form-group.js +11 -0
  97. package/dist/react/cjs/theme/components/form-group.js.map +1 -0
  98. package/dist/react/cjs/theme/components/icon-button.js +137 -0
  99. package/dist/react/cjs/theme/components/icon-button.js.map +1 -0
  100. package/dist/react/cjs/theme/components/pagination.js +53 -0
  101. package/dist/react/cjs/theme/components/pagination.js.map +1 -0
  102. package/dist/react/cjs/theme/components/radio.js +88 -0
  103. package/dist/react/cjs/theme/components/radio.js.map +1 -0
  104. package/dist/react/cjs/theme/components/skeleton.js +9 -0
  105. package/dist/react/cjs/theme/components/skeleton.js.map +1 -0
  106. package/dist/react/cjs/theme/components/switch.js +145 -0
  107. package/dist/react/cjs/theme/components/switch.js.map +1 -0
  108. package/dist/react/cjs/theme/components/tab.js +11 -0
  109. package/dist/react/cjs/theme/components/tab.js.map +1 -0
  110. package/dist/react/cjs/theme/components/tabs.js +98 -0
  111. package/dist/react/cjs/theme/components/tabs.js.map +1 -0
  112. package/dist/react/cjs/theme/components.js +34 -5
  113. package/dist/react/cjs/theme/components.js.map +1 -1
  114. package/dist/react/cjs/theme/palette.js +30 -30
  115. package/dist/react/cjs/theme/palette.js.map +1 -1
  116. package/dist/react/es/components/app-checkbox.js +43 -0
  117. package/dist/react/es/components/app-checkbox.js.map +1 -0
  118. package/dist/react/es/components/app-dialog-with-features.js +85 -0
  119. package/dist/react/es/components/app-dialog-with-features.js.map +1 -0
  120. package/dist/react/es/components/app-dialog.js +52 -0
  121. package/dist/react/es/components/app-dialog.js.map +1 -0
  122. package/dist/react/es/components/app-empty-state.js +106 -0
  123. package/dist/react/es/components/app-empty-state.js.map +1 -0
  124. package/dist/react/es/components/app-icon-button.js +30 -0
  125. package/dist/react/es/components/app-icon-button.js.map +1 -0
  126. package/dist/react/es/components/app-input-radio-card.js +86 -0
  127. package/dist/react/es/components/app-input-radio-card.js.map +1 -0
  128. package/dist/react/es/components/app-input-radio.js +69 -0
  129. package/dist/react/es/components/app-input-radio.js.map +1 -0
  130. package/dist/react/es/components/app-pagination.js +19 -0
  131. package/dist/react/es/components/app-pagination.js.map +1 -0
  132. package/dist/react/es/components/app-radio-group.js +46 -0
  133. package/dist/react/es/components/app-radio-group.js.map +1 -0
  134. package/dist/react/es/components/app-status.js +4 -0
  135. package/dist/react/es/components/app-status.js.map +1 -1
  136. package/dist/react/es/components/app-switch-group.js +34 -0
  137. package/dist/react/es/components/app-switch-group.js.map +1 -0
  138. package/dist/react/es/components/app-switch.js +25 -0
  139. package/dist/react/es/components/app-switch.js.map +1 -0
  140. package/dist/react/es/components/app-tabs.js +51 -0
  141. package/dist/react/es/components/app-tabs.js.map +1 -0
  142. package/dist/react/es/stories/css/Button.stories.js +133 -0
  143. package/dist/react/es/stories/css/Button.stories.js.map +1 -0
  144. package/dist/react/es/stories/css/Card.stories.js +145 -0
  145. package/dist/react/es/stories/css/Card.stories.js.map +1 -0
  146. package/dist/react/es/stories/css/Checkbox.stories.js +138 -0
  147. package/dist/react/es/stories/css/Checkbox.stories.js.map +1 -0
  148. package/dist/react/es/stories/css/ComponentReference.stories.js +139 -0
  149. package/dist/react/es/stories/css/ComponentReference.stories.js.map +1 -0
  150. package/dist/react/es/stories/css/Input.stories.js +162 -0
  151. package/dist/react/es/stories/css/Input.stories.js.map +1 -0
  152. package/dist/react/es/stories/css/ListItem.stories.js +166 -0
  153. package/dist/react/es/stories/css/ListItem.stories.js.map +1 -0
  154. package/dist/react/es/stories/css/Modal.stories.js +121 -0
  155. package/dist/react/es/stories/css/Modal.stories.js.map +1 -0
  156. package/dist/react/es/stories/css/Radio.stories.js +118 -0
  157. package/dist/react/es/stories/css/Radio.stories.js.map +1 -0
  158. package/dist/react/es/stories/css/Select.stories.js +187 -0
  159. package/dist/react/es/stories/css/Select.stories.js.map +1 -0
  160. package/dist/react/es/stories/css/Status.stories.js +59 -0
  161. package/dist/react/es/stories/css/Status.stories.js.map +1 -0
  162. package/dist/react/es/stories/css/Switch.stories.js +136 -0
  163. package/dist/react/es/stories/css/Switch.stories.js.map +1 -0
  164. package/dist/react/es/stories/css/Table.stories.js +171 -0
  165. package/dist/react/es/stories/css/Table.stories.js.map +1 -0
  166. package/dist/react/es/stories/css/Tooltip.stories.js +99 -0
  167. package/dist/react/es/stories/css/Tooltip.stories.js.map +1 -0
  168. package/dist/react/es/stories/css/Utilities.stories.js +136 -0
  169. package/dist/react/es/stories/css/Utilities.stories.js.map +1 -0
  170. package/dist/react/es/stories/design/Colors.stories.js +8 -2
  171. package/dist/react/es/stories/design/Colors.stories.js.map +1 -1
  172. package/dist/react/es/stories/design/Typography.stories.js +116 -0
  173. package/dist/react/es/stories/design/Typography.stories.js.map +1 -0
  174. package/dist/react/es/stories/design/spacing/CSS.stories.js +61 -0
  175. package/dist/react/es/stories/design/spacing/CSS.stories.js.map +1 -0
  176. package/dist/react/es/stories/design/{Spacing.stories.js → spacing/React.stories.js} +8 -8
  177. package/dist/react/es/stories/design/spacing/React.stories.js.map +1 -0
  178. package/dist/react/es/stories/react/AppCheckbox.stories.js +67 -0
  179. package/dist/react/es/stories/react/AppCheckbox.stories.js.map +1 -0
  180. package/dist/react/es/stories/react/AppDialog.stories.js +129 -0
  181. package/dist/react/es/stories/react/AppDialog.stories.js.map +1 -0
  182. package/dist/react/es/stories/react/AppDialogWithFeatures.stories.js +127 -0
  183. package/dist/react/es/stories/react/AppDialogWithFeatures.stories.js.map +1 -0
  184. package/dist/react/es/stories/react/AppEmptyState.stories.js +157 -0
  185. package/dist/react/es/stories/react/AppEmptyState.stories.js.map +1 -0
  186. package/dist/react/es/stories/react/AppIconButton.stories.js +53 -0
  187. package/dist/react/es/stories/react/AppIconButton.stories.js.map +1 -0
  188. package/dist/react/es/stories/react/AppInputBase.stories.js +91 -72
  189. package/dist/react/es/stories/react/AppInputBase.stories.js.map +1 -1
  190. package/dist/react/es/stories/react/AppInputBaseSearch.stories.js +34 -26
  191. package/dist/react/es/stories/react/AppInputBaseSearch.stories.js.map +1 -1
  192. package/dist/react/es/stories/react/AppInputRadio.stories.js +262 -0
  193. package/dist/react/es/stories/react/AppInputRadio.stories.js.map +1 -0
  194. package/dist/react/es/stories/react/AppInputRadioCard.stories.js +126 -0
  195. package/dist/react/es/stories/react/AppInputRadioCard.stories.js.map +1 -0
  196. package/dist/react/es/stories/react/AppPagination.stories.js +71 -0
  197. package/dist/react/es/stories/react/AppPagination.stories.js.map +1 -0
  198. package/dist/react/es/stories/react/AppRadioGroup.stories.js +145 -0
  199. package/dist/react/es/stories/react/AppRadioGroup.stories.js.map +1 -0
  200. package/dist/react/es/stories/react/AppSwitch.stories.js +138 -0
  201. package/dist/react/es/stories/react/AppSwitch.stories.js.map +1 -0
  202. package/dist/react/es/stories/react/AppTabs.stories.js +100 -0
  203. package/dist/react/es/stories/react/AppTabs.stories.js.map +1 -0
  204. package/dist/react/es/theme/components/checkbox.js +18 -0
  205. package/dist/react/es/theme/components/checkbox.js.map +1 -0
  206. package/dist/react/es/theme/components/dialog.js +46 -0
  207. package/dist/react/es/theme/components/dialog.js.map +1 -0
  208. package/dist/react/es/theme/components/divider.js +11 -0
  209. package/dist/react/es/theme/components/divider.js.map +1 -0
  210. package/dist/react/es/theme/components/form-group.js +11 -0
  211. package/dist/react/es/theme/components/form-group.js.map +1 -0
  212. package/dist/react/es/theme/components/icon-button.js +137 -0
  213. package/dist/react/es/theme/components/icon-button.js.map +1 -0
  214. package/dist/react/es/theme/components/pagination.js +53 -0
  215. package/dist/react/es/theme/components/pagination.js.map +1 -0
  216. package/dist/react/es/theme/components/radio.js +88 -0
  217. package/dist/react/es/theme/components/radio.js.map +1 -0
  218. package/dist/react/es/theme/components/skeleton.js +9 -0
  219. package/dist/react/es/theme/components/skeleton.js.map +1 -0
  220. package/dist/react/es/theme/components/switch.js +145 -0
  221. package/dist/react/es/theme/components/switch.js.map +1 -0
  222. package/dist/react/es/theme/components/tab.js +11 -0
  223. package/dist/react/es/theme/components/tab.js.map +1 -0
  224. package/dist/react/es/theme/components/tabs.js +98 -0
  225. package/dist/react/es/theme/components/tabs.js.map +1 -0
  226. package/dist/react/es/theme/components.js +34 -5
  227. package/dist/react/es/theme/components.js.map +1 -1
  228. package/dist/react/es/theme/palette.js +20 -20
  229. package/dist/react/es/theme/palette.js.map +1 -1
  230. package/dist/react/types/components/app-checkbox.d.ts +11 -0
  231. package/dist/react/types/components/app-dialog-with-features.d.ts +16 -0
  232. package/dist/react/types/components/app-dialog.d.ts +15 -0
  233. package/dist/react/types/components/app-empty-state.d.ts +22 -0
  234. package/dist/react/types/components/app-icon-button.d.ts +14 -0
  235. package/dist/react/types/components/app-input-radio-card.d.ts +15 -0
  236. package/dist/react/types/components/app-input-radio.d.ts +24 -0
  237. package/dist/react/types/components/app-pagination.d.ts +5 -0
  238. package/dist/react/types/components/app-radio-group.d.ts +13 -0
  239. package/dist/react/types/components/app-status.d.ts +1 -1
  240. package/dist/react/types/components/app-switch-group.d.ts +13 -0
  241. package/dist/react/types/components/app-switch.d.ts +10 -0
  242. package/dist/react/types/components/app-tabs.d.ts +13 -0
  243. package/dist/react/types/stories/css/Button.stories.d.ts +15 -0
  244. package/dist/react/types/stories/css/Card.stories.d.ts +16 -0
  245. package/dist/react/types/stories/css/Checkbox.stories.d.ts +14 -0
  246. package/dist/react/types/stories/css/ComponentReference.stories.d.ts +13 -0
  247. package/dist/react/types/stories/css/Input.stories.d.ts +15 -0
  248. package/dist/react/types/stories/css/ListItem.stories.d.ts +15 -0
  249. package/dist/react/types/stories/css/Modal.stories.d.ts +14 -0
  250. package/dist/react/types/stories/css/Radio.stories.d.ts +13 -0
  251. package/dist/react/types/stories/css/Select.stories.d.ts +14 -0
  252. package/dist/react/types/stories/css/Status.stories.d.ts +11 -0
  253. package/dist/react/types/stories/css/Switch.stories.d.ts +14 -0
  254. package/dist/react/types/stories/css/Table.stories.d.ts +14 -0
  255. package/dist/react/types/stories/css/Tooltip.stories.d.ts +14 -0
  256. package/dist/react/types/stories/css/Utilities.stories.d.ts +12 -0
  257. package/dist/react/types/stories/design/Typography.stories.d.ts +12 -0
  258. package/dist/react/types/stories/design/spacing/CSS.stories.d.ts +11 -0
  259. package/dist/react/types/stories/react/AppCheckbox.stories.d.ts +32 -0
  260. package/dist/react/types/stories/react/AppDialog.stories.d.ts +31 -0
  261. package/dist/react/types/stories/react/AppDialogWithFeatures.stories.d.ts +22 -0
  262. package/dist/react/types/stories/react/AppEmptyState.stories.d.ts +39 -0
  263. package/dist/react/types/stories/react/AppIconButton.stories.d.ts +15 -0
  264. package/dist/react/types/stories/react/AppInputRadio.stories.d.ts +55 -0
  265. package/dist/react/types/stories/react/AppInputRadioCard.stories.d.ts +37 -0
  266. package/dist/react/types/stories/react/AppPagination.stories.d.ts +35 -0
  267. package/dist/react/types/stories/react/AppRadioGroup.stories.d.ts +44 -0
  268. package/dist/react/types/stories/react/AppSwitch.stories.d.ts +38 -0
  269. package/dist/react/types/stories/react/AppTabs.stories.d.ts +22 -0
  270. package/dist/react/types/theme/components/checkbox.d.ts +2 -0
  271. package/dist/react/types/theme/components/dialog.d.ts +5 -0
  272. package/dist/react/types/theme/components/divider.d.ts +2 -0
  273. package/dist/react/types/theme/components/form-group.d.ts +2 -0
  274. package/dist/react/types/theme/components/icon-button.d.ts +2 -0
  275. package/dist/react/types/theme/components/pagination.d.ts +2 -0
  276. package/dist/react/types/theme/components/radio.d.ts +2 -0
  277. package/dist/react/types/theme/components/skeleton.d.ts +2 -0
  278. package/dist/react/types/theme/components/switch.d.ts +2 -0
  279. package/dist/react/types/theme/components/tab.d.ts +2 -0
  280. package/dist/react/types/theme/components/tabs.d.ts +2 -0
  281. package/dist/tsconfig.tsbuildinfo +1 -1
  282. package/package.json +1 -1
  283. package/dist/react/cjs/node_modules/.pnpm/@mui_system@7.3.5_@emotion_react@11.14.0_@types_react@19.2.14_react@19.2.4__@emotion_st_11ad1bc919f221d0594f2562584c38ea/node_modules/@mui/system/esm/colorManipulator/colorManipulator.js +0 -102
  284. package/dist/react/cjs/node_modules/.pnpm/@mui_system@7.3.5_@emotion_react@11.14.0_@types_react@19.2.14_react@19.2.4__@emotion_st_11ad1bc919f221d0594f2562584c38ea/node_modules/@mui/system/esm/colorManipulator/colorManipulator.js.map +0 -1
  285. package/dist/react/cjs/node_modules/.pnpm/@mui_utils@7.3.5_@types_react@19.2.14_react@19.2.4/node_modules/@mui/utils/esm/clamp/clamp.js +0 -6
  286. package/dist/react/cjs/node_modules/.pnpm/@mui_utils@7.3.5_@types_react@19.2.14_react@19.2.4/node_modules/@mui/utils/esm/clamp/clamp.js.map +0 -1
  287. package/dist/react/cjs/node_modules/.pnpm/@mui_utils@7.3.5_@types_react@19.2.14_react@19.2.4/node_modules/@mui/utils/esm/formatMuiErrorMessage/formatMuiErrorMessage.js +0 -8
  288. package/dist/react/cjs/node_modules/.pnpm/@mui_utils@7.3.5_@types_react@19.2.14_react@19.2.4/node_modules/@mui/utils/esm/formatMuiErrorMessage/formatMuiErrorMessage.js.map +0 -1
  289. package/dist/react/cjs/stories/design/Spacing.stories.js.map +0 -1
  290. package/dist/react/es/node_modules/.pnpm/@mui_system@7.3.5_@emotion_react@11.14.0_@types_react@19.2.14_react@19.2.4__@emotion_st_11ad1bc919f221d0594f2562584c38ea/node_modules/@mui/system/esm/colorManipulator/colorManipulator.js +0 -102
  291. package/dist/react/es/node_modules/.pnpm/@mui_system@7.3.5_@emotion_react@11.14.0_@types_react@19.2.14_react@19.2.4__@emotion_st_11ad1bc919f221d0594f2562584c38ea/node_modules/@mui/system/esm/colorManipulator/colorManipulator.js.map +0 -1
  292. package/dist/react/es/node_modules/.pnpm/@mui_utils@7.3.5_@types_react@19.2.14_react@19.2.4/node_modules/@mui/utils/esm/clamp/clamp.js +0 -7
  293. package/dist/react/es/node_modules/.pnpm/@mui_utils@7.3.5_@types_react@19.2.14_react@19.2.4/node_modules/@mui/utils/esm/clamp/clamp.js.map +0 -1
  294. package/dist/react/es/node_modules/.pnpm/@mui_utils@7.3.5_@types_react@19.2.14_react@19.2.4/node_modules/@mui/utils/esm/formatMuiErrorMessage/formatMuiErrorMessage.js +0 -9
  295. package/dist/react/es/node_modules/.pnpm/@mui_utils@7.3.5_@types_react@19.2.14_react@19.2.4/node_modules/@mui/utils/esm/formatMuiErrorMessage/formatMuiErrorMessage.js.map +0 -1
  296. package/dist/react/es/stories/design/Spacing.stories.js.map +0 -1
  297. /package/dist/react/types/stories/design/{Spacing.stories.d.ts → spacing/React.stories.d.ts} +0 -0
package/README.md CHANGED
@@ -24,7 +24,7 @@ pnpm add @zidsa/zidmui
24
24
  ### Peer dependencies
25
25
 
26
26
  ```sh
27
- pnpm add @mui/material @mui/lab react react-dom react-hook-form use-debounce
27
+ pnpm add @zidsa/zidmui react react-dom use-debounce @mui/material @mui/lab @emotion/styled
28
28
  ```
29
29
 
30
30
  ## Documentation
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const material = require("@mui/material");
5
+ const AppCheckbox = ({
6
+ label = "",
7
+ labelProps,
8
+ name = "",
9
+ checked,
10
+ disabled = false,
11
+ onChange = () => {
12
+ },
13
+ checkboxProps
14
+ }) => {
15
+ return /* @__PURE__ */ jsxRuntime.jsx(
16
+ material.FormControlLabel,
17
+ {
18
+ label,
19
+ disabled,
20
+ control: /* @__PURE__ */ jsxRuntime.jsx(
21
+ AppCheckboxStyled,
22
+ {
23
+ name,
24
+ checked,
25
+ disabled,
26
+ onChange,
27
+ ...checkboxProps
28
+ }
29
+ ),
30
+ ...labelProps
31
+ }
32
+ );
33
+ };
34
+ const AppCheckboxStyled = material.styled(material.Checkbox)(({ theme }) => ({
35
+ paddingInlineStart: 0,
36
+ paddingInlineEnd: theme.spacing(0.5),
37
+ "> svg": {
38
+ width: theme.spacing(2.5),
39
+ height: theme.spacing(2.5)
40
+ }
41
+ }));
42
+ exports.AppCheckbox = AppCheckbox;
43
+ //# sourceMappingURL=app-checkbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-checkbox.js","sources":["../../../../src/components/app-checkbox.tsx"],"sourcesContent":["import {\n Checkbox,\n type CheckboxProps,\n FormControlLabel,\n type FormControlLabelProps,\n styled,\n} from '@mui/material';\n\n//\n//\n\nexport interface AppCheckboxProps {\n label?: string | React.ReactNode;\n labelProps?: Omit<FormControlLabelProps, 'control' | 'label'>;\n name?: string;\n checked?: boolean;\n disabled?: boolean;\n onChange?: CheckboxProps['onChange'];\n checkboxProps?: Omit<CheckboxProps, 'checked' | 'onChange' | 'name' | 'disabled'>;\n}\n\nexport const AppCheckbox: React.FC<AppCheckboxProps> = ({\n label = '',\n labelProps,\n name = '',\n checked,\n disabled = false,\n onChange = () => {},\n checkboxProps,\n}) => {\n return (\n <FormControlLabel\n label={label}\n disabled={disabled}\n control={\n <AppCheckboxStyled\n name={name}\n checked={checked}\n disabled={disabled}\n onChange={onChange}\n {...checkboxProps}\n />\n }\n {...labelProps}\n />\n );\n};\n\n//\n\nconst AppCheckboxStyled = styled(Checkbox)(({ theme }) => ({\n paddingInlineStart: 0,\n paddingInlineEnd: theme.spacing(0.5),\n '> svg': {\n width: theme.spacing(2.5),\n height: theme.spacing(2.5),\n },\n}));\n"],"names":["jsx","FormControlLabel","styled","Checkbox"],"mappings":";;;;AAqBO,MAAM,cAA0C,CAAC;AAAA,EACtD,QAAQ;AAAA,EACR;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA,WAAW;AAAA,EACX,WAAW,MAAM;AAAA,EAAC;AAAA,EAClB;AACF,MAAM;AACJ,SACEA,2BAAAA;AAAAA,IAACC,SAAAA;AAAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,SACED,2BAAAA;AAAAA,QAAC;AAAA,QAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACC,GAAG;AAAA,QAAA;AAAA,MAAA;AAAA,MAGP,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AAIA,MAAM,oBAAoBE,SAAAA,OAAOC,SAAAA,QAAQ,EAAE,CAAC,EAAE,aAAa;AAAA,EACzD,oBAAoB;AAAA,EACpB,kBAAkB,MAAM,QAAQ,GAAG;AAAA,EACnC,SAAS;AAAA,IACP,OAAO,MAAM,QAAQ,GAAG;AAAA,IACxB,QAAQ,MAAM,QAAQ,GAAG;AAAA,EAAA;AAE7B,EAAE;;"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const material = require("@mui/material");
5
+ const appDialog = require("./app-dialog.js");
6
+ const appInputBaseSearch = require("./app-input-base-search.js");
7
+ const appPagination = require("./app-pagination.js");
8
+ const stackColumn = require("./stack-column.js");
9
+ const stackRow = require("./stack-row.js");
10
+ const AppDialogWithFeatures = ({
11
+ open,
12
+ onClose,
13
+ search,
14
+ onSearchChange,
15
+ title,
16
+ searchProps,
17
+ pagination,
18
+ children,
19
+ isLoading,
20
+ contentProps,
21
+ ...props
22
+ }) => {
23
+ return /* @__PURE__ */ jsxRuntime.jsx(
24
+ appDialog.AppDialog,
25
+ {
26
+ open,
27
+ onClose,
28
+ title,
29
+ fullWidth: true,
30
+ dialogContentProps: { sx: { overflow: "hidden" } },
31
+ ...props,
32
+ children: /* @__PURE__ */ jsxRuntime.jsxs(Content, { children: [
33
+ isLoading && /* @__PURE__ */ jsxRuntime.jsx(stackRow.StackRow, { width: "100%", height: 160, alignItems: "center", justifyContent: "center", children: /* @__PURE__ */ jsxRuntime.jsx(material.CircularProgress, {}) }),
34
+ !isLoading && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
35
+ (search || onSearchChange) && /* @__PURE__ */ jsxRuntime.jsx(
36
+ SearchInput,
37
+ {
38
+ fullWidth: true,
39
+ value: search,
40
+ onChange: (e) => onSearchChange?.(e.target.value),
41
+ name: "search",
42
+ size: "small",
43
+ ...searchProps
44
+ }
45
+ ),
46
+ /* @__PURE__ */ jsxRuntime.jsx(stackColumn.StackColumn, { gap: 2, maxHeight: "500px", overflow: "auto", ...contentProps, children }),
47
+ pagination && /* @__PURE__ */ jsxRuntime.jsx(stackRow.StackRow, { alignItems: "center", justifyContent: "center", children: /* @__PURE__ */ jsxRuntime.jsx(
48
+ appPagination.AppPagination,
49
+ {
50
+ size: "medium",
51
+ count: pagination.count,
52
+ page: pagination.page,
53
+ onChange: pagination.onChange
54
+ }
55
+ ) })
56
+ ] })
57
+ ] })
58
+ }
59
+ );
60
+ };
61
+ const SearchInput = material.styled(appInputBaseSearch.AppInputBaseSearch)(({ theme }) => ({
62
+ marginTop: 0,
63
+ ".MuiInputBase-root": {
64
+ paddingLeft: theme.spacing(2),
65
+ paddingRight: theme.spacing(2),
66
+ fieldset: {
67
+ borderRadius: theme.spacing(40),
68
+ paddingLeft: theme.spacing(2),
69
+ paddingRight: theme.spacing(2)
70
+ },
71
+ input: { paddingLeft: theme.spacing(1) }
72
+ },
73
+ ".MuiInputAdornment-root": {
74
+ marginLeft: theme.spacing(0),
75
+ marginRight: theme.spacing(0),
76
+ pointerEvents: "none"
77
+ }
78
+ }));
79
+ const Content = material.styled(material.Box)(({ theme }) => ({
80
+ display: "grid",
81
+ gridTemplateRows: "auto 1fr auto",
82
+ gap: theme.spacing(2)
83
+ }));
84
+ exports.AppDialogWithFeatures = AppDialogWithFeatures;
85
+ //# sourceMappingURL=app-dialog-with-features.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-dialog-with-features.js","sources":["../../../../src/components/app-dialog-with-features.tsx"],"sourcesContent":["import { Box, StackProps, CircularProgress, styled } from '@mui/material';\n\nimport { AppDialog, AppDialogProps } from './app-dialog';\nimport { AppInputSearchProps, AppInputBaseSearch } from './app-input-base-search';\nimport { AppPagination, AppPaginationProps } from './app-pagination';\nimport { StackColumn } from './stack-column';\nimport { StackRow } from './stack-row';\n\n//\n//\n\nexport type AppDialogWithFeaturesProps = AppDialogProps & {\n open: boolean;\n onClose: () => void;\n search: string;\n onSearchChange?: (search: string) => void;\n searchProps?: AppInputSearchProps;\n pagination?: AppPaginationProps;\n isLoading?: boolean;\n contentProps?: StackProps;\n children?: React.ReactNode;\n};\n\nexport const AppDialogWithFeatures: React.FC<AppDialogWithFeaturesProps> = ({\n open,\n onClose,\n search,\n onSearchChange,\n title,\n searchProps,\n pagination,\n children,\n isLoading,\n contentProps,\n ...props\n}) => {\n return (\n <AppDialog\n open={open}\n onClose={onClose}\n title={title}\n fullWidth\n dialogContentProps={{ sx: { overflow: 'hidden' } }}\n {...props}\n >\n <Content>\n {isLoading && (\n <StackRow width=\"100%\" height={160} alignItems=\"center\" justifyContent=\"center\">\n <CircularProgress />\n </StackRow>\n )}\n\n {!isLoading && (\n <>\n {/* Search */}\n {(search || onSearchChange) && (\n <SearchInput\n fullWidth\n value={search}\n onChange={e => onSearchChange?.(e.target.value)}\n name=\"search\"\n size=\"small\"\n {...searchProps}\n />\n )}\n\n {/* Main content */}\n <StackColumn gap={2} maxHeight=\"500px\" overflow=\"auto\" {...contentProps}>\n {children}\n </StackColumn>\n\n {/* Pagination */}\n {pagination && (\n <StackRow alignItems=\"center\" justifyContent=\"center\">\n <AppPagination\n size=\"medium\"\n count={pagination.count}\n page={pagination.page}\n onChange={pagination.onChange}\n />\n </StackRow>\n )}\n </>\n )}\n </Content>\n </AppDialog>\n );\n};\n\n//\n\nconst SearchInput = styled(AppInputBaseSearch)(({ theme }) => ({\n marginTop: 0,\n '.MuiInputBase-root': {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n fieldset: {\n borderRadius: theme.spacing(40),\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(2),\n },\n\n input: { paddingLeft: theme.spacing(1) },\n },\n '.MuiInputAdornment-root': {\n marginLeft: theme.spacing(0),\n marginRight: theme.spacing(0),\n pointerEvents: 'none',\n },\n}));\n\nconst Content = styled(Box)(({ theme }) => ({\n display: 'grid',\n gridTemplateRows: 'auto 1fr auto',\n gap: theme.spacing(2),\n}));\n"],"names":["jsx","AppDialog","StackRow","CircularProgress","jsxs","Fragment","StackColumn","AppPagination","styled","AppInputBaseSearch","Box"],"mappings":";;;;;;;;;AAuBO,MAAM,wBAA8D,CAAC;AAAA,EAC1E;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,SACEA,2BAAAA;AAAAA,IAACC,UAAAA;AAAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,WAAS;AAAA,MACT,oBAAoB,EAAE,IAAI,EAAE,UAAU,WAAS;AAAA,MAC9C,GAAG;AAAA,MAEJ,0CAAC,SAAA,EACE,UAAA;AAAA,QAAA,aACCD,2BAAAA,IAACE,mBAAA,EAAS,OAAM,QAAO,QAAQ,KAAK,YAAW,UAAS,gBAAe,UACrE,UAAAF,2BAAAA,IAACG,SAAAA,kBAAA,CAAA,CAAiB,GACpB;AAAA,QAGD,CAAC,aACAC,2BAAAA,KAAAC,WAAAA,UAAA,EAEI,UAAA;AAAA,WAAA,UAAU,mBACVL,2BAAAA;AAAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAS;AAAA,cACT,OAAO;AAAA,cACP,UAAU,CAAA,MAAK,iBAAiB,EAAE,OAAO,KAAK;AAAA,cAC9C,MAAK;AAAA,cACL,MAAK;AAAA,cACJ,GAAG;AAAA,YAAA;AAAA,UAAA;AAAA,UAKRA,2BAAAA,IAACM,YAAAA,aAAA,EAAY,KAAK,GAAG,WAAU,SAAQ,UAAS,QAAQ,GAAG,cACxD,SAAA,CACH;AAAA,UAGC,cACCN,2BAAAA,IAACE,SAAAA,UAAA,EAAS,YAAW,UAAS,gBAAe,UAC3C,UAAAF,2BAAAA;AAAAA,YAACO,cAAAA;AAAAA,YAAA;AAAA,cACC,MAAK;AAAA,cACL,OAAO,WAAW;AAAA,cAClB,MAAM,WAAW;AAAA,cACjB,UAAU,WAAW;AAAA,YAAA;AAAA,UAAA,EACvB,CACF;AAAA,QAAA,EAAA,CAEJ;AAAA,MAAA,EAAA,CAEJ;AAAA,IAAA;AAAA,EAAA;AAGN;AAIA,MAAM,cAAcC,SAAAA,OAAOC,mBAAAA,kBAAkB,EAAE,CAAC,EAAE,aAAa;AAAA,EAC7D,WAAW;AAAA,EACX,sBAAsB;AAAA,IACpB,aAAa,MAAM,QAAQ,CAAC;AAAA,IAC5B,cAAc,MAAM,QAAQ,CAAC;AAAA,IAC7B,UAAU;AAAA,MACR,cAAc,MAAM,QAAQ,EAAE;AAAA,MAC9B,aAAa,MAAM,QAAQ,CAAC;AAAA,MAC5B,cAAc,MAAM,QAAQ,CAAC;AAAA,IAAA;AAAA,IAG/B,OAAO,EAAE,aAAa,MAAM,QAAQ,CAAC,EAAA;AAAA,EAAE;AAAA,EAEzC,2BAA2B;AAAA,IACzB,YAAY,MAAM,QAAQ,CAAC;AAAA,IAC3B,aAAa,MAAM,QAAQ,CAAC;AAAA,IAC5B,eAAe;AAAA,EAAA;AAEnB,EAAE;AAEF,MAAM,UAAUD,SAAAA,OAAOE,SAAAA,GAAG,EAAE,CAAC,EAAE,aAAa;AAAA,EAC1C,SAAS;AAAA,EACT,kBAAkB;AAAA,EAClB,KAAK,MAAM,QAAQ,CAAC;AACtB,EAAE;;"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const material = require("@mui/material");
5
+ const appTypography = require("./app-typography.js");
6
+ const stackColumn = require("./stack-column.js");
7
+ const AppDialog = ({
8
+ title,
9
+ description,
10
+ descriptionProps,
11
+ children,
12
+ titleStackProps,
13
+ actions,
14
+ titleProps,
15
+ actionsProps,
16
+ darkerBackdrop,
17
+ dialogContentProps,
18
+ slotProps,
19
+ ...props
20
+ }) => {
21
+ const theme = material.useTheme();
22
+ return /* @__PURE__ */ jsxRuntime.jsxs(
23
+ material.Dialog,
24
+ {
25
+ fullWidth: true,
26
+ maxWidth: "sm",
27
+ slotProps: {
28
+ paper: {
29
+ elevation: 4,
30
+ ...slotProps?.paper
31
+ },
32
+ backdrop: {
33
+ sx: {
34
+ backgroundColor: darkerBackdrop ? theme.palette.background.darkBackdrop : ""
35
+ },
36
+ ...slotProps?.backdrop
37
+ }
38
+ },
39
+ ...props,
40
+ children: [
41
+ (title || description) && /* @__PURE__ */ jsxRuntime.jsx(material.DialogTitle, { ...titleProps, children: /* @__PURE__ */ jsxRuntime.jsxs(stackColumn.StackColumn, { ...titleStackProps, gap: 3, children: [
42
+ title,
43
+ description && /* @__PURE__ */ jsxRuntime.jsx(appTypography.AppTypography, { variant: "body2", ...descriptionProps, children: description })
44
+ ] }) }),
45
+ /* @__PURE__ */ jsxRuntime.jsx(material.DialogContent, { ...dialogContentProps, children }),
46
+ actions && /* @__PURE__ */ jsxRuntime.jsx(material.DialogActions, { ...actionsProps, children: actions })
47
+ ]
48
+ }
49
+ );
50
+ };
51
+ exports.AppDialog = AppDialog;
52
+ //# sourceMappingURL=app-dialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-dialog.js","sources":["../../../../src/components/app-dialog.tsx"],"sourcesContent":["import {\n Dialog,\n DialogProps,\n DialogActions,\n DialogActionsProps,\n DialogContent,\n DialogContentProps,\n DialogTitle,\n DialogTitleProps,\n StackProps,\n useTheme,\n} from '@mui/material';\nimport { AppTypographyProps, AppTypography } from './app-typography';\nimport { StackColumn } from './stack-column';\n\n//\n//\n\nexport type AppDialogProps = DialogProps & {\n title?: React.ReactNode;\n description?: React.ReactNode;\n descriptionProps?: AppTypographyProps;\n titleStackProps?: StackProps;\n titleProps?: DialogTitleProps;\n actions?: React.ReactNode;\n actionsProps?: DialogActionsProps;\n children: React.ReactNode;\n dialogContentProps?: DialogContentProps;\n darkerBackdrop?: boolean;\n};\n\nexport const AppDialog = ({\n title,\n description,\n descriptionProps,\n children,\n titleStackProps,\n actions,\n titleProps,\n actionsProps,\n darkerBackdrop,\n dialogContentProps,\n slotProps,\n ...props\n}: AppDialogProps) => {\n const theme = useTheme();\n\n return (\n <Dialog\n fullWidth\n maxWidth=\"sm\"\n slotProps={{\n paper: {\n elevation: 4,\n ...slotProps?.paper,\n },\n backdrop: {\n sx: {\n backgroundColor: darkerBackdrop ? theme.palette.background.darkBackdrop : '',\n },\n ...slotProps?.backdrop,\n },\n }}\n {...props}\n >\n {(title || description) && (\n <DialogTitle {...titleProps}>\n <StackColumn {...titleStackProps} gap={3}>\n {title}\n {description && (\n <AppTypography variant=\"body2\" {...descriptionProps}>\n {description}\n </AppTypography>\n )}\n </StackColumn>\n </DialogTitle>\n )}\n <DialogContent {...dialogContentProps}>{children}</DialogContent>\n\n {actions && <DialogActions {...actionsProps}>{actions}</DialogActions>}\n </Dialog>\n );\n};\n"],"names":["useTheme","jsxs","Dialog","jsx","DialogTitle","StackColumn","AppTypography","DialogContent","DialogActions"],"mappings":";;;;;;AA+BO,MAAM,YAAY,CAAC;AAAA,EACxB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAsB;AACpB,QAAM,QAAQA,SAAAA,SAAA;AAEd,SACEC,2BAAAA;AAAAA,IAACC,SAAAA;AAAAA,IAAA;AAAA,MACC,WAAS;AAAA,MACT,UAAS;AAAA,MACT,WAAW;AAAA,QACT,OAAO;AAAA,UACL,WAAW;AAAA,UACX,GAAG,WAAW;AAAA,QAAA;AAAA,QAEhB,UAAU;AAAA,UACR,IAAI;AAAA,YACF,iBAAiB,iBAAiB,MAAM,QAAQ,WAAW,eAAe;AAAA,UAAA;AAAA,UAE5E,GAAG,WAAW;AAAA,QAAA;AAAA,MAChB;AAAA,MAED,GAAG;AAAA,MAEF,UAAA;AAAA,SAAA,SAAS,gBACTC,2BAAAA,IAACC,SAAAA,aAAA,EAAa,GAAG,YACf,0CAACC,YAAAA,aAAA,EAAa,GAAG,iBAAiB,KAAK,GACpC,UAAA;AAAA,UAAA;AAAA,UACA,eACCF,2BAAAA,IAACG,cAAAA,eAAA,EAAc,SAAQ,SAAS,GAAG,kBAChC,UAAA,YAAA,CACH;AAAA,QAAA,EAAA,CAEJ,EAAA,CACF;AAAA,QAEFH,2BAAAA,IAACI,SAAAA,eAAA,EAAe,GAAG,oBAAqB,SAAA,CAAS;AAAA,QAEhD,WAAWJ,2BAAAA,IAACK,SAAAA,eAAA,EAAe,GAAG,cAAe,UAAA,QAAA,CAAQ;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG5D;;"}
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ const material = require("@mui/material");
6
+ const appTypography = require("./app-typography.js");
7
+ const stackColumn = require("./stack-column.js");
8
+ const stackRow = require("./stack-row.js");
9
+ const AppEmptyState = ({
10
+ size = "small",
11
+ variant = "default",
12
+ title,
13
+ titleProps,
14
+ description,
15
+ descriptionProps,
16
+ subDescription,
17
+ subDescriptionProps,
18
+ icon,
19
+ iconProps,
20
+ iconBoxProps,
21
+ customIconComponent,
22
+ imageUrl,
23
+ imageProps,
24
+ children,
25
+ containerProps
26
+ }) => {
27
+ const isBoxImage = icon?.props?.component === "img";
28
+ const theme = material.useTheme();
29
+ let iconSize = "large";
30
+ let titleSize = "h4";
31
+ let iconBoxSize = 120;
32
+ let iconColor = "action";
33
+ const iconBoxVariantProps = {
34
+ bgcolor: "_components.iconButton.primary.hover",
35
+ border: `none`
36
+ };
37
+ if (size === "small") {
38
+ iconSize = "medium";
39
+ titleSize = "h6";
40
+ iconBoxSize = 100;
41
+ }
42
+ if (variant === "error") {
43
+ iconBoxVariantProps.bgcolor = theme.palette._components.alert.error.background;
44
+ iconBoxVariantProps.border = `1px solid ${theme.palette._components.alert.error.border}`;
45
+ iconColor = "error";
46
+ }
47
+ if (variant === "warning") {
48
+ iconBoxVariantProps.bgcolor = theme.palette._components.alert.warning.background;
49
+ iconBoxVariantProps.border = `1px solid ${theme.palette._components.alert.warning.border}`;
50
+ }
51
+ if (variant === "success") {
52
+ iconBoxVariantProps.bgcolor = theme.palette._components.alert.success.background;
53
+ iconBoxVariantProps.border = `1px solid ${theme.palette._components.alert.success.border}`;
54
+ }
55
+ return /* @__PURE__ */ jsxRuntime.jsxs(
56
+ material.Box,
57
+ {
58
+ width: "100%",
59
+ height: "100%",
60
+ rowGap: size === "small" ? 2 : 3,
61
+ px: 2,
62
+ py: 6,
63
+ display: "flex",
64
+ flexDirection: "column",
65
+ alignItems: "center",
66
+ justifyContent: "center",
67
+ ...containerProps,
68
+ children: [
69
+ imageUrl ? /* @__PURE__ */ jsxRuntime.jsx(
70
+ material.Box,
71
+ {
72
+ component: "img",
73
+ src: imageUrl,
74
+ width: 240,
75
+ height: 160,
76
+ bgcolor: "_components.emptyState.imageBackground",
77
+ ...imageProps
78
+ }
79
+ ) : icon && !isBoxImage ? /* @__PURE__ */ jsxRuntime.jsx(
80
+ material.Box,
81
+ {
82
+ display: "flex",
83
+ justifyContent: "center",
84
+ alignItems: "center",
85
+ borderRadius: 99,
86
+ width: iconBoxSize,
87
+ height: iconBoxSize,
88
+ maxWidth: iconBoxSize,
89
+ maxHeight: iconBoxSize,
90
+ ...iconBoxVariantProps,
91
+ ...iconBoxProps,
92
+ children: React.cloneElement(icon, { fontSize: iconSize, color: iconColor, ...iconProps })
93
+ }
94
+ ) : icon && isBoxImage ? icon : customIconComponent,
95
+ (title || description || subDescription) && /* @__PURE__ */ jsxRuntime.jsxs(stackColumn.StackColumn, { gap: size === "small" ? 0 : 0.5, maxWidth: 600, textAlign: "center", children: [
96
+ title && /* @__PURE__ */ jsxRuntime.jsx(appTypography.AppTypography, { variant: titleSize, ...titleProps, children: title }),
97
+ description && /* @__PURE__ */ jsxRuntime.jsx(appTypography.AppTypography, { variant: "body2", color: "textTertiary", ...descriptionProps, children: description }),
98
+ subDescription && /* @__PURE__ */ jsxRuntime.jsx(appTypography.AppTypography, { mt: 3, variant: "body2", color: "textTertiary", ...subDescriptionProps, children: subDescription })
99
+ ] }),
100
+ children && /* @__PURE__ */ jsxRuntime.jsx(stackRow.StackRow, { children })
101
+ ]
102
+ }
103
+ );
104
+ };
105
+ exports.AppEmptyState = AppEmptyState;
106
+ //# sourceMappingURL=app-empty-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-empty-state.js","sources":["../../../../src/components/app-empty-state.tsx"],"sourcesContent":["import React, { FC } from 'react';\n\nimport { Box, type BoxProps, type SvgIconProps, useTheme } from '@mui/material';\nimport { AppTypographyProps, AppTypography } from './app-typography';\nimport { StackColumn } from './stack-column';\nimport { StackRow } from './stack-row';\n\n//\n//\n\nexport interface AppEmptyStateProps {\n size?: 'standard' | 'small';\n variant?: 'default' | 'error' | 'warning' | 'success';\n\n title?: React.ReactNode;\n titleProps?: AppTypographyProps;\n\n icon?: React.ReactElement<SvgIconProps>;\n iconProps?: SvgIconProps;\n iconBoxProps?: BoxProps;\n customIconComponent?: React.ReactElement<SvgIconProps>;\n\n description?: React.ReactNode;\n descriptionProps?: AppTypographyProps;\n\n subDescription?: React.ReactNode;\n subDescriptionProps?: AppTypographyProps;\n\n imageUrl?: string;\n imageProps?: BoxProps;\n\n children?: React.ReactNode;\n containerProps?: BoxProps;\n}\n\nexport const AppEmptyState: FC<AppEmptyStateProps> = ({\n size = 'small',\n variant = 'default',\n\n title,\n titleProps,\n description,\n descriptionProps,\n\n subDescription,\n subDescriptionProps,\n\n icon,\n iconProps,\n iconBoxProps,\n customIconComponent,\n\n imageUrl,\n imageProps,\n\n children,\n containerProps,\n}) => {\n const isBoxImage = icon?.props?.component === 'img';\n\n const theme = useTheme();\n\n let iconSize: SvgIconProps['fontSize'] = 'large';\n let titleSize: AppTypographyProps['variant'] = 'h4';\n let iconBoxSize = 120;\n let iconColor: SvgIconProps['color'] = 'action';\n\n const iconBoxVariantProps = {\n bgcolor: '_components.iconButton.primary.hover',\n border: `none`,\n };\n\n if (size === 'small') {\n iconSize = 'medium';\n titleSize = 'h6';\n iconBoxSize = 100;\n }\n\n if (variant === 'error') {\n iconBoxVariantProps.bgcolor = theme.palette._components.alert.error.background;\n iconBoxVariantProps.border = `1px solid ${theme.palette._components.alert.error.border}`;\n iconColor = 'error';\n }\n\n if (variant === 'warning') {\n iconBoxVariantProps.bgcolor = theme.palette._components.alert.warning.background;\n iconBoxVariantProps.border = `1px solid ${theme.palette._components.alert.warning.border}`;\n }\n\n if (variant === 'success') {\n iconBoxVariantProps.bgcolor = theme.palette._components.alert.success.background;\n iconBoxVariantProps.border = `1px solid ${theme.palette._components.alert.success.border}`;\n }\n\n return (\n <Box\n width=\"100%\"\n height=\"100%\"\n rowGap={size === 'small' ? 2 : 3}\n px={2}\n py={6}\n display=\"flex\"\n flexDirection=\"column\"\n alignItems=\"center\"\n justifyContent=\"center\"\n {...containerProps}\n >\n {imageUrl ? (\n <Box\n component=\"img\"\n src={imageUrl}\n width={240}\n height={160}\n bgcolor=\"_components.emptyState.imageBackground\"\n {...imageProps}\n />\n ) : icon && !isBoxImage ? (\n <Box\n display=\"flex\"\n justifyContent=\"center\"\n alignItems=\"center\"\n borderRadius={99}\n width={iconBoxSize}\n height={iconBoxSize}\n maxWidth={iconBoxSize}\n maxHeight={iconBoxSize}\n {...iconBoxVariantProps}\n {...iconBoxProps}\n >\n {React.cloneElement(icon, { fontSize: iconSize, color: iconColor, ...iconProps })}\n </Box>\n ) : icon && isBoxImage ? (\n icon\n ) : (\n customIconComponent\n )}\n {(title || description || subDescription) && (\n <StackColumn gap={size === 'small' ? 0 : 0.5} maxWidth={600} textAlign=\"center\">\n {title && (\n <AppTypography variant={titleSize} {...titleProps}>\n {title}\n </AppTypography>\n )}\n {description && (\n <AppTypography variant=\"body2\" color=\"textTertiary\" {...descriptionProps}>\n {description}\n </AppTypography>\n )}\n {subDescription && (\n <AppTypography mt={3} variant=\"body2\" color=\"textTertiary\" {...subDescriptionProps}>\n {subDescription}\n </AppTypography>\n )}\n </StackColumn>\n )}\n {children && <StackRow>{children}</StackRow>}\n </Box>\n );\n};\n"],"names":["useTheme","jsxs","Box","jsx","StackColumn","AppTypography","StackRow"],"mappings":";;;;;;;;AAmCO,MAAM,gBAAwC,CAAC;AAAA,EACpD,OAAO;AAAA,EACP,UAAU;AAAA,EAEV;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,aAAa,MAAM,OAAO,cAAc;AAE9C,QAAM,QAAQA,SAAAA,SAAA;AAEd,MAAI,WAAqC;AACzC,MAAI,YAA2C;AAC/C,MAAI,cAAc;AAClB,MAAI,YAAmC;AAEvC,QAAM,sBAAsB;AAAA,IAC1B,SAAS;AAAA,IACT,QAAQ;AAAA,EAAA;AAGV,MAAI,SAAS,SAAS;AACpB,eAAW;AACX,gBAAY;AACZ,kBAAc;AAAA,EAChB;AAEA,MAAI,YAAY,SAAS;AACvB,wBAAoB,UAAU,MAAM,QAAQ,YAAY,MAAM,MAAM;AACpE,wBAAoB,SAAS,aAAa,MAAM,QAAQ,YAAY,MAAM,MAAM,MAAM;AACtF,gBAAY;AAAA,EACd;AAEA,MAAI,YAAY,WAAW;AACzB,wBAAoB,UAAU,MAAM,QAAQ,YAAY,MAAM,QAAQ;AACtE,wBAAoB,SAAS,aAAa,MAAM,QAAQ,YAAY,MAAM,QAAQ,MAAM;AAAA,EAC1F;AAEA,MAAI,YAAY,WAAW;AACzB,wBAAoB,UAAU,MAAM,QAAQ,YAAY,MAAM,QAAQ;AACtE,wBAAoB,SAAS,aAAa,MAAM,QAAQ,YAAY,MAAM,QAAQ,MAAM;AAAA,EAC1F;AAEA,SACEC,2BAAAA;AAAAA,IAACC,SAAAA;AAAAA,IAAA;AAAA,MACC,OAAM;AAAA,MACN,QAAO;AAAA,MACP,QAAQ,SAAS,UAAU,IAAI;AAAA,MAC/B,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,SAAQ;AAAA,MACR,eAAc;AAAA,MACd,YAAW;AAAA,MACX,gBAAe;AAAA,MACd,GAAG;AAAA,MAEH,UAAA;AAAA,QAAA,WACCC,2BAAAA;AAAAA,UAACD,SAAAA;AAAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,KAAK;AAAA,YACL,OAAO;AAAA,YACP,QAAQ;AAAA,YACR,SAAQ;AAAA,YACP,GAAG;AAAA,UAAA;AAAA,QAAA,IAEJ,QAAQ,CAAC,aACXC,2BAAAA;AAAAA,UAACD,SAAAA;AAAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,gBAAe;AAAA,YACf,YAAW;AAAA,YACX,cAAc;AAAA,YACd,OAAO;AAAA,YACP,QAAQ;AAAA,YACR,UAAU;AAAA,YACV,WAAW;AAAA,YACV,GAAG;AAAA,YACH,GAAG;AAAA,YAEH,UAAA,MAAM,aAAa,MAAM,EAAE,UAAU,UAAU,OAAO,WAAW,GAAG,UAAA,CAAW;AAAA,UAAA;AAAA,QAAA,IAEhF,QAAQ,aACV,OAEA;AAAA,SAEA,SAAS,eAAe,mBACxBD,2BAAAA,KAACG,YAAAA,aAAA,EAAY,KAAK,SAAS,UAAU,IAAI,KAAK,UAAU,KAAK,WAAU,UACpE,UAAA;AAAA,UAAA,wCACEC,cAAAA,eAAA,EAAc,SAAS,WAAY,GAAG,YACpC,UAAA,OACH;AAAA,UAED,8CACEA,6BAAA,EAAc,SAAQ,SAAQ,OAAM,gBAAgB,GAAG,kBACrD,UAAA,YAAA,CACH;AAAA,UAED,kBACCF,2BAAAA,IAACE,cAAAA,eAAA,EAAc,IAAI,GAAG,SAAQ,SAAQ,OAAM,gBAAgB,GAAG,qBAC5D,UAAA,eAAA,CACH;AAAA,QAAA,GAEJ;AAAA,QAED,YAAYF,2BAAAA,IAACG,mBAAA,EAAU,SAAA,CAAS;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGvC;;"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const material = require("@mui/material");
5
+ const appTooltip = require("./app-tooltip.js");
6
+ const AppIconButton = ({
7
+ ref,
8
+ color = "secondary",
9
+ size = "small",
10
+ children,
11
+ content,
12
+ tooltip,
13
+ tooltipProps,
14
+ sx,
15
+ ...props
16
+ }) => {
17
+ if (!tooltip) {
18
+ return /* @__PURE__ */ jsxRuntime.jsxs(material.IconButton, { component: "button", color, size, ref, sx, ...props, children: [
19
+ children,
20
+ content
21
+ ] });
22
+ }
23
+ return /* @__PURE__ */ jsxRuntime.jsx(appTooltip.AppTooltip, { description: tooltip, disableInteractive: true, ...tooltipProps, children: /* @__PURE__ */ jsxRuntime.jsx(material.Box, { children: /* @__PURE__ */ jsxRuntime.jsxs(material.IconButton, { component: "button", color, size, ref, sx, ...props, children: [
24
+ children,
25
+ content
26
+ ] }) }) });
27
+ };
28
+ AppIconButton.displayName = "AppIconButton";
29
+ exports.AppIconButton = AppIconButton;
30
+ //# sourceMappingURL=app-icon-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-icon-button.js","sources":["../../../../src/components/app-icon-button.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Box, IconButton, type IconButtonProps } from '@mui/material';\nimport { AppTooltip, AppTooltipProps } from './app-tooltip';\n\n//\n//\n\nexport type AppIconButtonProps = Omit<IconButtonProps, 'component'> & {\n content?: React.ReactNode;\n href?: string;\n tooltip?: string | null;\n tooltipProps?: Omit<AppTooltipProps, 'children' | 'title'>;\n hideBorder?: boolean;\n};\n\nexport const AppIconButton = ({\n ref,\n color = 'secondary',\n size = 'small',\n children,\n content,\n tooltip,\n tooltipProps,\n sx,\n ...props\n}: AppIconButtonProps) => {\n if (!tooltip) {\n return (\n <IconButton component=\"button\" color={color} size={size} ref={ref} sx={sx} {...props}>\n {children}\n {content}\n </IconButton>\n );\n }\n\n return (\n <AppTooltip description={tooltip} disableInteractive {...tooltipProps}>\n <Box>\n <IconButton component=\"button\" color={color} size={size} ref={ref} sx={sx} {...props}>\n {children}\n {content}\n </IconButton>\n </Box>\n </AppTooltip>\n );\n};\n\nAppIconButton.displayName = 'AppIconButton';\n"],"names":["jsxs","IconButton","AppTooltip","jsx","Box"],"mappings":";;;;;AAgBO,MAAM,gBAAgB,CAAC;AAAA,EAC5B;AAAA,EACA,QAAQ;AAAA,EACR,OAAO;AAAA,EACP;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAA0B;AACxB,MAAI,CAAC,SAAS;AACZ,WACEA,gCAACC,SAAAA,cAAW,WAAU,UAAS,OAAc,MAAY,KAAU,IAAS,GAAG,OAC5E,UAAA;AAAA,MAAA;AAAA,MACA;AAAA,IAAA,GACH;AAAA,EAEJ;AAEA,wCACGC,WAAAA,YAAA,EAAW,aAAa,SAAS,oBAAkB,MAAE,GAAG,cACvD,UAAAC,2BAAAA,IAACC,SAAAA,OACC,UAAAJ,gCAACC,SAAAA,YAAA,EAAW,WAAU,UAAS,OAAc,MAAY,KAAU,IAAS,GAAG,OAC5E,UAAA;AAAA,IAAA;AAAA,IACA;AAAA,EAAA,EAAA,CACH,GACF,GACF;AAEJ;AAEA,cAAc,cAAc;;"}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const material = require("@mui/material");
5
+ const appTypography = require("./app-typography.js");
6
+ const stackColumn = require("./stack-column.js");
7
+ const stackRow = require("./stack-row.js");
8
+ const AppInputRadioCard = ({
9
+ label,
10
+ labelProps,
11
+ labelContainerProps,
12
+ description,
13
+ descriptionProps,
14
+ radioProps,
15
+ isLoading,
16
+ labelSuffix,
17
+ icon,
18
+ ...props
19
+ }) => {
20
+ return /* @__PURE__ */ jsxRuntime.jsx(
21
+ FormControlLabelStyled,
22
+ {
23
+ ...props,
24
+ control: /* @__PURE__ */ jsxRuntime.jsx(RadioStyled, { ...radioProps }),
25
+ label: /* @__PURE__ */ jsxRuntime.jsxs(stackRow.StackRow, { justifyContent: "space-between", alignItems: "center", children: [
26
+ /* @__PURE__ */ jsxRuntime.jsxs(stackColumn.StackColumn, { gap: 0, overflow: "hidden", ...labelContainerProps, children: [
27
+ isLoading && /* @__PURE__ */ jsxRuntime.jsx(CircularProgressStyled, {}),
28
+ typeof label === "string" ? /* @__PURE__ */ jsxRuntime.jsxs(stackRow.StackRow, { width: "100%", justifyContent: "space-between", children: [
29
+ /* @__PURE__ */ jsxRuntime.jsx(appTypography.AppTypography, { variant: "body2", ...labelProps, children: label }),
30
+ labelSuffix ? labelSuffix : null
31
+ ] }) : label,
32
+ description && /* @__PURE__ */ jsxRuntime.jsx(RadioDescriptionStyled, { variant: "caption", color: "text.tertiary", ...descriptionProps, children: description })
33
+ ] }),
34
+ icon
35
+ ] })
36
+ }
37
+ );
38
+ };
39
+ const FormControlLabelStyled = material.styled(material.FormControlLabel)(({ theme }) => {
40
+ return {
41
+ position: "relative",
42
+ display: "flex",
43
+ alignItems: "flex-start",
44
+ gap: theme.spacing(0.5),
45
+ margin: 0,
46
+ padding: theme.spacing(1.5),
47
+ border: `solid 1px ${theme.palette.colors.neutral[100]}`,
48
+ borderRadius: theme.shape.standardBorderRadius,
49
+ ":has(:checked)": {
50
+ backgroundColor: theme.palette.colors.primary[50],
51
+ borderColor: "#AE72FF80"
52
+ },
53
+ overflow: "hidden",
54
+ "> .MuiFormControlLabel-label": {
55
+ overflow: "hidden"
56
+ },
57
+ "& .MuiFormControlLabel-label": {
58
+ width: "100%"
59
+ }
60
+ };
61
+ });
62
+ const RadioStyled = material.styled(material.Radio)(({ theme }) => {
63
+ return {
64
+ width: theme.spacing(2.5),
65
+ minWidth: theme.spacing(2.5),
66
+ height: theme.spacing(2.5),
67
+ padding: 0
68
+ };
69
+ });
70
+ const RadioDescriptionStyled = material.styled(appTypography.AppTypography)(() => {
71
+ return {
72
+ display: "-webkit-box",
73
+ WebkitLineClamp: 3,
74
+ WebkitBoxOrient: "vertical",
75
+ overflow: "hidden"
76
+ };
77
+ });
78
+ const CircularProgressStyled = material.styled(material.CircularProgress)(() => {
79
+ return {
80
+ position: "absolute",
81
+ left: "calc(50% - 20px)",
82
+ top: "calc(50% - 20px)"
83
+ };
84
+ });
85
+ exports.AppInputRadioCard = AppInputRadioCard;
86
+ //# sourceMappingURL=app-input-radio-card.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-input-radio-card.js","sources":["../../../../src/components/app-input-radio-card.tsx"],"sourcesContent":["import React from 'react';\nimport {\n FormControlLabelProps,\n StackProps,\n RadioProps,\n FormControlLabel,\n Radio,\n CircularProgress,\n styled,\n} from '@mui/material';\nimport { AppTypographyProps, AppTypography } from './app-typography';\nimport { StackColumn } from './stack-column';\nimport { StackRow } from './stack-row';\n\n//\n//\n\nexport type AppInputRadioCardProps = Omit<FormControlLabelProps, 'control' | 'label'> & {\n label: string | React.ReactNode;\n labelProps?: AppTypographyProps;\n labelContainerProps?: StackProps;\n description?: React.ReactNode;\n descriptionProps?: AppTypographyProps;\n radioProps?: RadioProps;\n isLoading?: boolean;\n labelSuffix?: React.ReactNode;\n icon?: React.ReactNode;\n};\n\nexport const AppInputRadioCard: React.FC<AppInputRadioCardProps> = ({\n label,\n labelProps,\n labelContainerProps,\n description,\n descriptionProps,\n radioProps,\n isLoading,\n labelSuffix,\n icon,\n ...props\n}) => {\n return (\n <FormControlLabelStyled\n {...props}\n control={<RadioStyled {...radioProps} />}\n label={\n <StackRow justifyContent=\"space-between\" alignItems=\"center\">\n <StackColumn gap={0} overflow=\"hidden\" {...labelContainerProps}>\n {isLoading && <CircularProgressStyled />}\n\n {typeof label === 'string' ? (\n <StackRow width=\"100%\" justifyContent=\"space-between\">\n <AppTypography variant=\"body2\" {...labelProps}>\n {label}\n </AppTypography>\n {labelSuffix ? labelSuffix : null}\n </StackRow>\n ) : (\n label\n )}\n {description && (\n <RadioDescriptionStyled variant=\"caption\" color=\"text.tertiary\" {...descriptionProps}>\n {description}\n </RadioDescriptionStyled>\n )}\n </StackColumn>\n\n {icon}\n </StackRow>\n }\n />\n );\n};\n\n//\n\nconst FormControlLabelStyled = styled(FormControlLabel)(({ theme }) => {\n return {\n position: 'relative',\n display: 'flex',\n alignItems: 'flex-start',\n gap: theme.spacing(0.5),\n margin: 0,\n padding: theme.spacing(1.5),\n border: `solid 1px ${theme.palette.colors.neutral[100]}`,\n borderRadius: theme.shape.standardBorderRadius,\n ':has(:checked)': {\n backgroundColor: theme.palette.colors.primary[50],\n borderColor: '#AE72FF80',\n },\n overflow: 'hidden',\n '> .MuiFormControlLabel-label': {\n overflow: 'hidden',\n },\n '& .MuiFormControlLabel-label': {\n width: '100%',\n },\n };\n});\n\nconst RadioStyled = styled(Radio)(({ theme }) => {\n return {\n width: theme.spacing(2.5),\n minWidth: theme.spacing(2.5),\n height: theme.spacing(2.5),\n padding: 0,\n };\n});\n\nconst RadioDescriptionStyled = styled(AppTypography)(() => {\n return {\n display: '-webkit-box',\n WebkitLineClamp: 3,\n WebkitBoxOrient: 'vertical',\n overflow: 'hidden',\n };\n});\n\nconst CircularProgressStyled = styled(CircularProgress)(() => {\n return {\n position: 'absolute',\n left: 'calc(50% - 20px)',\n top: 'calc(50% - 20px)',\n };\n});\n"],"names":["jsx","jsxs","StackRow","StackColumn","AppTypography","styled","FormControlLabel","Radio","CircularProgress"],"mappings":";;;;;;;AA6BO,MAAM,oBAAsD,CAAC;AAAA,EAClE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,SACEA,2BAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAG;AAAA,MACJ,SAASA,2BAAAA,IAAC,aAAA,EAAa,GAAG,WAAA,CAAY;AAAA,MACtC,OACEC,2BAAAA,KAACC,SAAAA,UAAA,EAAS,gBAAe,iBAAgB,YAAW,UAClD,UAAA;AAAA,QAAAD,gCAACE,YAAAA,eAAY,KAAK,GAAG,UAAS,UAAU,GAAG,qBACxC,UAAA;AAAA,UAAA,4CAAc,wBAAA,EAAuB;AAAA,UAErC,OAAO,UAAU,WAChBF,2BAAAA,KAACC,SAAAA,YAAS,OAAM,QAAO,gBAAe,iBACpC,UAAA;AAAA,YAAAF,+BAACI,cAAAA,eAAA,EAAc,SAAQ,SAAS,GAAG,YAChC,UAAA,OACH;AAAA,YACC,cAAc,cAAc;AAAA,UAAA,EAAA,CAC/B,IAEA;AAAA,UAED,8CACE,wBAAA,EAAuB,SAAQ,WAAU,OAAM,iBAAiB,GAAG,kBACjE,UAAA,YAAA,CACH;AAAA,QAAA,GAEJ;AAAA,QAEC;AAAA,MAAA,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAIR;AAIA,MAAM,yBAAyBC,SAAAA,OAAOC,SAAAA,gBAAgB,EAAE,CAAC,EAAE,YAAY;AACrE,SAAO;AAAA,IACL,UAAU;AAAA,IACV,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,KAAK,MAAM,QAAQ,GAAG;AAAA,IACtB,QAAQ;AAAA,IACR,SAAS,MAAM,QAAQ,GAAG;AAAA,IAC1B,QAAQ,aAAa,MAAM,QAAQ,OAAO,QAAQ,GAAG,CAAC;AAAA,IACtD,cAAc,MAAM,MAAM;AAAA,IAC1B,kBAAkB;AAAA,MAChB,iBAAiB,MAAM,QAAQ,OAAO,QAAQ,EAAE;AAAA,MAChD,aAAa;AAAA,IAAA;AAAA,IAEf,UAAU;AAAA,IACV,gCAAgC;AAAA,MAC9B,UAAU;AAAA,IAAA;AAAA,IAEZ,gCAAgC;AAAA,MAC9B,OAAO;AAAA,IAAA;AAAA,EACT;AAEJ,CAAC;AAED,MAAM,cAAcD,SAAAA,OAAOE,SAAAA,KAAK,EAAE,CAAC,EAAE,YAAY;AAC/C,SAAO;AAAA,IACL,OAAO,MAAM,QAAQ,GAAG;AAAA,IACxB,UAAU,MAAM,QAAQ,GAAG;AAAA,IAC3B,QAAQ,MAAM,QAAQ,GAAG;AAAA,IACzB,SAAS;AAAA,EAAA;AAEb,CAAC;AAED,MAAM,yBAAyBF,SAAAA,OAAOD,cAAAA,aAAa,EAAE,MAAM;AACzD,SAAO;AAAA,IACL,SAAS;AAAA,IACT,iBAAiB;AAAA,IACjB,iBAAiB;AAAA,IACjB,UAAU;AAAA,EAAA;AAEd,CAAC;AAED,MAAM,yBAAyBC,SAAAA,OAAOG,SAAAA,gBAAgB,EAAE,MAAM;AAC5D,SAAO;AAAA,IACL,UAAU;AAAA,IACV,MAAM;AAAA,IACN,KAAK;AAAA,EAAA;AAET,CAAC;;"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const material = require("@mui/material");
5
+ const appTypography = require("./app-typography.js");
6
+ const AppInputRadio = ({
7
+ row,
8
+ name,
9
+ label,
10
+ helperText,
11
+ options = [],
12
+ size = "medium",
13
+ color = "primary",
14
+ labelPlacement = "end",
15
+ boxProps,
16
+ error,
17
+ disabled,
18
+ radioProps,
19
+ formControlProps,
20
+ labelProps,
21
+ ...props
22
+ }) => {
23
+ return /* @__PURE__ */ jsxRuntime.jsx(material.Box, { display: "flex", flexDirection: "column", alignItems: "flex-start", ...boxProps, children: /* @__PURE__ */ jsxRuntime.jsxs(material.FormControl, { error, variant: "standard", disabled, ...formControlProps, children: [
24
+ label && /* @__PURE__ */ jsxRuntime.jsx(appTypography.AppTypography, { variant: "body1", ...labelProps, children: label }),
25
+ /* @__PURE__ */ jsxRuntime.jsx(
26
+ material.RadioGroup,
27
+ {
28
+ row,
29
+ ...props,
30
+ name,
31
+ sx: props.sx ? props.sx : row ? { gap: 1.5 } : { gap: 0 },
32
+ children: options.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
33
+ AppRadioLabel,
34
+ {
35
+ value: option.value,
36
+ name,
37
+ control: /* @__PURE__ */ jsxRuntime.jsx(
38
+ material.Radio,
39
+ {
40
+ size,
41
+ color,
42
+ ...radioProps,
43
+ name,
44
+ disabled: option.disabled
45
+ }
46
+ ),
47
+ label: option.label,
48
+ labelPlacement
49
+ },
50
+ option.value
51
+ ))
52
+ }
53
+ ),
54
+ /* @__PURE__ */ jsxRuntime.jsx(StyledFormHelperText, { error, disabled, children: error || helperText })
55
+ ] }) });
56
+ };
57
+ const StyledFormHelperText = material.styled(material.FormHelperText)({
58
+ marginTop: 0
59
+ });
60
+ const AppRadioLabel = material.styled(material.FormControlLabel)(({ theme }) => {
61
+ return {
62
+ marginInline: 0,
63
+ gap: theme.spacing(0.5),
64
+ marginLeft: 0,
65
+ minHeight: 38
66
+ };
67
+ });
68
+ exports.AppInputRadio = AppInputRadio;
69
+ //# sourceMappingURL=app-input-radio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-input-radio.js","sources":["../../../../src/components/app-input-radio.tsx"],"sourcesContent":["//TODO: Warning: Failed prop type: Invalid prop `fontSize` of value `large` supplied to `RadioButtonIcon`, expected one of [\"small\",\"medium\"].\n// https://github.com/mui/material-ui/issues/40143 - someone already created issue in MUI repo\n\nimport {\n RadioGroupProps,\n BoxProps,\n RadioProps,\n FormControlProps,\n Box,\n FormControl,\n RadioGroup,\n Radio,\n FormHelperText,\n FormControlLabel,\n styled,\n} from '@mui/material';\nimport { AppTypographyProps, AppTypography } from './app-typography';\n\ntype Option = {\n value: string;\n label: React.ReactNode;\n disabled?: boolean;\n};\n\nexport type AppInputRadioProps = RadioGroupProps & {\n name: string;\n options: Option[];\n label?: string;\n helperText?: string;\n size?: 'small' | 'medium' | 'large';\n color?: 'primary' | 'error';\n labelPlacement?: 'end' | 'start';\n disabled?: boolean;\n error?: boolean;\n boxProps?: BoxProps;\n radioProps?: RadioProps;\n formControlProps?: FormControlProps;\n labelProps?: AppTypographyProps;\n};\n\nexport const AppInputRadio = ({\n row,\n name,\n label,\n helperText,\n options = [],\n size = 'medium',\n color = 'primary',\n labelPlacement = 'end',\n boxProps,\n error,\n disabled,\n radioProps,\n formControlProps,\n labelProps,\n ...props\n}: AppInputRadioProps) => {\n return (\n <Box display=\"flex\" flexDirection=\"column\" alignItems=\"flex-start\" {...boxProps}>\n <FormControl error={error} variant=\"standard\" disabled={disabled} {...formControlProps}>\n {label && (\n <AppTypography variant=\"body1\" {...labelProps}>\n {label}\n </AppTypography>\n )}\n <RadioGroup\n row={row}\n {...props}\n name={name}\n sx={props.sx ? props.sx : row ? { gap: 1.5 } : { gap: 0 }}\n >\n {options.map(option => (\n <AppRadioLabel\n key={option.value}\n value={option.value}\n name={name}\n control={\n <Radio\n size={size}\n color={color}\n {...radioProps}\n name={name}\n disabled={option.disabled}\n />\n }\n label={option.label}\n labelPlacement={labelPlacement}\n />\n ))}\n </RadioGroup>\n <StyledFormHelperText error={error} disabled={disabled}>\n {error || helperText}\n </StyledFormHelperText>\n </FormControl>\n </Box>\n );\n};\n\nconst StyledFormHelperText = styled(FormHelperText)({\n marginTop: 0,\n});\n\nconst AppRadioLabel = styled(FormControlLabel)(({ theme }) => {\n return {\n marginInline: 0,\n gap: theme.spacing(0.5),\n marginLeft: 0,\n minHeight: 38,\n };\n});\n"],"names":["Box","FormControl","AppTypography","jsx","RadioGroup","Radio","styled","FormHelperText","FormControlLabel"],"mappings":";;;;;AAwCO,MAAM,gBAAgB,CAAC;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU,CAAA;AAAA,EACV,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,iBAAiB;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAA0B;AACxB,wCACGA,cAAA,EAAI,SAAQ,QAAO,eAAc,UAAS,YAAW,cAAc,GAAG,UACrE,0CAACC,sBAAA,EAAY,OAAc,SAAQ,YAAW,UAAqB,GAAG,kBACnE,UAAA;AAAA,IAAA,wCACEC,cAAAA,eAAA,EAAc,SAAQ,SAAS,GAAG,YAChC,UAAA,OACH;AAAA,IAEFC,2BAAAA;AAAAA,MAACC,SAAAA;AAAAA,MAAA;AAAA,QACC;AAAA,QACC,GAAG;AAAA,QACJ;AAAA,QACA,IAAI,MAAM,KAAK,MAAM,KAAK,MAAM,EAAE,KAAK,IAAA,IAAQ,EAAE,KAAK,EAAA;AAAA,QAErD,UAAA,QAAQ,IAAI,CAAA,WACXD,2BAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YAEC,OAAO,OAAO;AAAA,YACd;AAAA,YACA,SACEA,2BAAAA;AAAAA,cAACE,SAAAA;AAAAA,cAAA;AAAA,gBACC;AAAA,gBACA;AAAA,gBACC,GAAG;AAAA,gBACJ;AAAA,gBACA,UAAU,OAAO;AAAA,cAAA;AAAA,YAAA;AAAA,YAGrB,OAAO,OAAO;AAAA,YACd;AAAA,UAAA;AAAA,UAbK,OAAO;AAAA,QAAA,CAef;AAAA,MAAA;AAAA,IAAA;AAAA,IAEHF,2BAAAA,IAAC,sBAAA,EAAqB,OAAc,UACjC,mBAAS,WAAA,CACZ;AAAA,EAAA,EAAA,CACF,EAAA,CACF;AAEJ;AAEA,MAAM,uBAAuBG,SAAAA,OAAOC,SAAAA,cAAc,EAAE;AAAA,EAClD,WAAW;AACb,CAAC;AAED,MAAM,gBAAgBD,SAAAA,OAAOE,SAAAA,gBAAgB,EAAE,CAAC,EAAE,YAAY;AAC5D,SAAO;AAAA,IACL,cAAc;AAAA,IACd,KAAK,MAAM,QAAQ,GAAG;AAAA,IACtB,YAAY;AAAA,IACZ,WAAW;AAAA,EAAA;AAEf,CAAC;;"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const material = require("@mui/material");
5
+ const AppPagination = (props) => {
6
+ return /* @__PURE__ */ jsxRuntime.jsx(
7
+ material.Pagination,
8
+ {
9
+ variant: "outlined",
10
+ size: "medium",
11
+ shape: "rounded",
12
+ showFirstButton: true,
13
+ showLastButton: true,
14
+ ...props
15
+ }
16
+ );
17
+ };
18
+ exports.AppPagination = AppPagination;
19
+ //# sourceMappingURL=app-pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-pagination.js","sources":["../../../../src/components/app-pagination.tsx"],"sourcesContent":["import { Pagination, type PaginationProps } from '@mui/material';\n\n//\n//\n\nexport type AppPaginationProps = Omit<PaginationProps, 'variant' | 'color' | 'shape' | 'size'> & {\n size?: 'medium' | 'large';\n};\n\nexport const AppPagination = (props: AppPaginationProps) => {\n return (\n <Pagination\n variant=\"outlined\"\n size=\"medium\"\n shape=\"rounded\"\n showFirstButton\n showLastButton\n {...props}\n />\n );\n};\n"],"names":["jsx","Pagination"],"mappings":";;;;AASO,MAAM,gBAAgB,CAAC,UAA8B;AAC1D,SACEA,2BAAAA;AAAAA,IAACC,SAAAA;AAAAA,IAAA;AAAA,MACC,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,OAAM;AAAA,MACN,iBAAe;AAAA,MACf,gBAAc;AAAA,MACb,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;;"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const material = require("@mui/material");
5
+ const AppRadioGroup = ({
6
+ name,
7
+ label,
8
+ options,
9
+ disabled = false,
10
+ row = true,
11
+ value,
12
+ onChange,
13
+ labelProps,
14
+ radioSize = "medium",
15
+ sx
16
+ }) => {
17
+ return /* @__PURE__ */ jsxRuntime.jsxs(material.Box, { children: [
18
+ label && /* @__PURE__ */ jsxRuntime.jsx(AppRadioGroupLegend, { disabled, component: "legend", children: label }),
19
+ /* @__PURE__ */ jsxRuntime.jsx(material.RadioGroup, { row, name, onChange, sx, value, children: options.map((option, i) => /* @__PURE__ */ jsxRuntime.jsx(
20
+ AppRadioGroupLabel,
21
+ {
22
+ disabled,
23
+ ...option,
24
+ control: /* @__PURE__ */ jsxRuntime.jsx(material.Radio, { disableRipple: true, size: radioSize }),
25
+ ...labelProps
26
+ },
27
+ i
28
+ )) })
29
+ ] });
30
+ };
31
+ const AppRadioGroupLabel = material.styled(material.FormControlLabel)(({ theme }) => {
32
+ return {
33
+ marginInline: 0,
34
+ gap: theme.spacing(0.5)
35
+ };
36
+ });
37
+ const AppRadioGroupLegend = material.styled(material.FormLabel)(({ theme }) => {
38
+ return {
39
+ fontWeight: theme.typography.subtitle2.fontWeight,
40
+ fontSize: theme.typography.subtitle2.fontSize,
41
+ lineHeight: theme.typography.subtitle2.lineHeight,
42
+ marginBottom: theme.spacing(1.5)
43
+ };
44
+ });
45
+ exports.AppRadioGroup = AppRadioGroup;
46
+ //# sourceMappingURL=app-radio-group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-radio-group.js","sources":["../../../../src/components/app-radio-group.tsx"],"sourcesContent":["import {\n RadioGroupProps,\n FormControlLabelProps,\n Box,\n RadioGroup,\n Radio,\n FormControlLabel,\n FormLabel,\n styled,\n} from '@mui/material';\n\n//\n//\n\n// For this component, the control is omitted from the options\n// to ensure that developers do not pass different controls.\nexport interface AppRadioGroupProps extends RadioGroupProps {\n name: string;\n label?: string;\n options: Omit<FormControlLabelProps, 'control'>[];\n disabled?: boolean;\n row?: boolean;\n value?: string;\n onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;\n labelProps?: Omit<FormControlLabelProps, 'control' | 'label'>;\n radioSize?: 'small' | 'medium' | 'large';\n}\n\nexport const AppRadioGroup: React.FC<AppRadioGroupProps> = ({\n name,\n label,\n options,\n disabled = false,\n row = true,\n value,\n onChange,\n labelProps,\n radioSize = 'medium',\n sx,\n}: AppRadioGroupProps) => {\n return (\n <Box>\n {label && (\n <AppRadioGroupLegend disabled={disabled} component=\"legend\">\n {label}\n </AppRadioGroupLegend>\n )}\n\n <RadioGroup row={row} name={name} onChange={onChange} sx={sx} value={value}>\n {options.map((option, i) => (\n <AppRadioGroupLabel\n key={i}\n disabled={disabled}\n {...option}\n control={<Radio disableRipple size={radioSize} />}\n {...labelProps}\n />\n ))}\n </RadioGroup>\n </Box>\n );\n};\n\n//\n\nconst AppRadioGroupLabel = styled(FormControlLabel)(({ theme }) => {\n return {\n marginInline: 0,\n gap: theme.spacing(0.5),\n };\n});\n\nconst AppRadioGroupLegend = styled(FormLabel)<{ component?: string }>(({ theme }) => {\n return {\n fontWeight: theme.typography.subtitle2.fontWeight,\n fontSize: theme.typography.subtitle2.fontSize,\n lineHeight: theme.typography.subtitle2.lineHeight,\n marginBottom: theme.spacing(1.5),\n };\n});\n"],"names":["Box","jsx","RadioGroup","Radio","styled","FormControlLabel","FormLabel"],"mappings":";;;;AA4BO,MAAM,gBAA8C,CAAC;AAAA,EAC1D;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX,MAAM;AAAA,EACN;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AAAA,EACZ;AACF,MAA0B;AACxB,yCACGA,cAAA,EACE,UAAA;AAAA,IAAA,SACCC,2BAAAA,IAAC,qBAAA,EAAoB,UAAoB,WAAU,UAChD,UAAA,OACH;AAAA,IAGFA,2BAAAA,IAACC,SAAAA,YAAA,EAAW,KAAU,MAAY,UAAoB,IAAQ,OAC3D,UAAA,QAAQ,IAAI,CAAC,QAAQ,MACpBD,2BAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QAEC;AAAA,QACC,GAAG;AAAA,QACJ,SAASA,2BAAAA,IAACE,gBAAA,EAAM,eAAa,MAAC,MAAM,WAAW;AAAA,QAC9C,GAAG;AAAA,MAAA;AAAA,MAJC;AAAA,IAAA,CAMR,EAAA,CACH;AAAA,EAAA,GACF;AAEJ;AAIA,MAAM,qBAAqBC,SAAAA,OAAOC,SAAAA,gBAAgB,EAAE,CAAC,EAAE,YAAY;AACjE,SAAO;AAAA,IACL,cAAc;AAAA,IACd,KAAK,MAAM,QAAQ,GAAG;AAAA,EAAA;AAE1B,CAAC;AAED,MAAM,sBAAsBD,SAAAA,OAAOE,SAAAA,SAAS,EAA0B,CAAC,EAAE,YAAY;AACnF,SAAO;AAAA,IACL,YAAY,MAAM,WAAW,UAAU;AAAA,IACvC,UAAU,MAAM,WAAW,UAAU;AAAA,IACrC,YAAY,MAAM,WAAW,UAAU;AAAA,IACvC,cAAc,MAAM,QAAQ,GAAG;AAAA,EAAA;AAEnC,CAAC;;"}