@jsonforms/material-renderers 3.0.0-alpha.1 → 3.0.0-beta.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 (373) hide show
  1. package/docs/assets/js/search.json +1 -1
  2. package/docs/classes/combinatorproperties.html +2 -5
  3. package/docs/classes/materialanyofstringorenumcontrol.html +6 -9
  4. package/docs/classes/materialtablecontrol.html +4 -7
  5. package/docs/globals.html +878 -423
  6. package/docs/index.html +68 -59
  7. package/docs/interfaces/ajvprops.html +1 -4
  8. package/docs/interfaces/arraylayouttoolbarprops.html +5 -8
  9. package/docs/interfaces/categorizationstate.html +1 -4
  10. package/docs/interfaces/categorizationstepperstate.html +0 -3
  11. package/docs/interfaces/combinatorpropertiesprops.html +0 -3
  12. package/docs/interfaces/deletedialogprops.html +0 -3
  13. package/docs/interfaces/dispatchpropsofexpandpanel.html +3 -6
  14. package/docs/interfaces/emptytableprops.html +0 -3
  15. package/docs/interfaces/expandpanelprops.html +19 -22
  16. package/docs/interfaces/jsonformstheme.html +39 -49
  17. package/docs/interfaces/materialcategorizationlayoutrendererprops.html +5 -8
  18. package/docs/interfaces/materialcategorizationstepperlayoutrendererprops.html +1 -4
  19. package/docs/interfaces/materiallayoutrendererprops.html +0 -3
  20. package/docs/interfaces/materialtabletoolbarprops.html +9 -12
  21. package/docs/interfaces/muitextinputprops.html +2 -5
  22. package/docs/interfaces/nonemptycellcomponentprops.html +266 -0
  23. package/docs/interfaces/nonemptycellprops.html +0 -3
  24. package/docs/interfaces/nonemptyrowprops.html +80 -27
  25. package/docs/interfaces/ownoneofprops.html +0 -3
  26. package/docs/interfaces/ownpropsofexpandpanel.html +14 -17
  27. package/docs/interfaces/ownpropsofnonemptycell.html +0 -3
  28. package/docs/interfaces/statepropsofexpandpanel.html +16 -19
  29. package/docs/interfaces/tableheadercellprops.html +0 -3
  30. package/docs/interfaces/tablerowsprop.html +9 -12
  31. package/docs/interfaces/validationprops.html +2 -5
  32. package/docs/interfaces/withdeletedialogsupport.html +0 -3
  33. package/docs/interfaces/withinput.html +1 -4
  34. package/docs/interfaces/withoptionlabel.html +7 -7
  35. package/example/index.ts +7 -23
  36. package/lib/additional/ListWithDetailMasterItem.d.ts +3 -3
  37. package/lib/additional/MaterialLabelRenderer.d.ts +13 -13
  38. package/lib/additional/MaterialListWithDetailRenderer.d.ts +6 -6
  39. package/lib/additional/index.d.ts +4 -4
  40. package/lib/cells/CustomizableCells.d.ts +9 -9
  41. package/lib/cells/MaterialBooleanCell.d.ts +6 -6
  42. package/lib/cells/MaterialBooleanToggleCell.d.ts +6 -6
  43. package/lib/cells/MaterialDateCell.d.ts +6 -6
  44. package/lib/cells/MaterialEnumCell.d.ts +10 -10
  45. package/lib/cells/MaterialIntegerCell.d.ts +6 -6
  46. package/lib/cells/MaterialNumberCell.d.ts +10 -10
  47. package/lib/cells/MaterialNumberFormatCell.d.ts +10 -10
  48. package/lib/cells/MaterialOneOfEnumCell.d.ts +10 -10
  49. package/lib/cells/MaterialTextCell.d.ts +10 -10
  50. package/lib/cells/MaterialTimeCell.d.ts +6 -6
  51. package/lib/cells/index.d.ts +13 -13
  52. package/lib/complex/CombinatorProperties.d.ts +12 -12
  53. package/lib/complex/DeleteDialog.d.ts +11 -11
  54. package/lib/complex/MaterialAllOfRenderer.d.ts +6 -5
  55. package/lib/complex/MaterialAnyOfRenderer.d.ts +6 -5
  56. package/lib/complex/MaterialArrayControlRenderer.d.ts +5 -5
  57. package/lib/complex/MaterialEnumArrayRenderer.d.ts +6 -6
  58. package/lib/complex/MaterialObjectRenderer.d.ts +6 -5
  59. package/lib/complex/MaterialOneOfRenderer.d.ts +9 -8
  60. package/lib/complex/MaterialTableControl.d.ts +25 -10
  61. package/lib/complex/NoBorderTableCell.d.ts +3 -3
  62. package/lib/complex/TableToolbar.d.ts +15 -15
  63. package/lib/complex/ValidationIcon.d.ts +7 -11
  64. package/lib/complex/index.d.ts +19 -19
  65. package/lib/controls/MaterialAnyOfStringOrEnumControl.d.ts +9 -9
  66. package/lib/controls/MaterialBooleanControl.d.ts +6 -6
  67. package/lib/controls/MaterialBooleanToggleControl.d.ts +6 -6
  68. package/lib/controls/MaterialDateControl.d.ts +6 -9
  69. package/lib/controls/MaterialDateTimeControl.d.ts +6 -9
  70. package/lib/controls/MaterialEnumControl.d.ts +7 -6
  71. package/lib/controls/MaterialInputControl.d.ts +6 -9
  72. package/lib/controls/MaterialIntegerControl.d.ts +6 -6
  73. package/lib/controls/MaterialNativeControl.d.ts +6 -9
  74. package/lib/controls/MaterialNumberControl.d.ts +6 -6
  75. package/lib/controls/MaterialOneOfEnumControl.d.ts +7 -6
  76. package/lib/controls/MaterialOneOfRadioGroupControl.d.ts +6 -6
  77. package/lib/controls/MaterialRadioGroup.d.ts +3 -6
  78. package/lib/controls/MaterialRadioGroupControl.d.ts +6 -6
  79. package/lib/controls/MaterialSliderControl.d.ts +6 -9
  80. package/lib/controls/MaterialTextControl.d.ts +6 -6
  81. package/lib/controls/MaterialTimeControl.d.ts +6 -9
  82. package/lib/controls/index.d.ts +35 -35
  83. package/lib/index.d.ts +9 -9
  84. package/lib/jsonforms-react-material.cjs.js +1489 -0
  85. package/lib/jsonforms-react-material.cjs.js.map +1 -0
  86. package/lib/jsonforms-react-material.esm.js +1221 -0
  87. package/lib/jsonforms-react-material.esm.js.map +1 -0
  88. package/lib/layouts/ArrayToolbar.d.ts +9 -9
  89. package/lib/layouts/ExpandPanelRenderer.d.ts +51 -51
  90. package/lib/layouts/MaterialArrayLayout.d.ts +3 -13
  91. package/lib/layouts/MaterialArrayLayoutRenderer.d.ts +6 -6
  92. package/lib/layouts/MaterialCategorizationLayout.d.ts +17 -25
  93. package/lib/layouts/MaterialCategorizationStepperLayout.d.ts +13 -20
  94. package/lib/layouts/MaterialGroupLayout.d.ts +7 -7
  95. package/lib/layouts/MaterialHorizontalLayout.d.ts +10 -10
  96. package/lib/layouts/MaterialVerticalLayout.d.ts +10 -10
  97. package/lib/layouts/index.d.ts +6 -6
  98. package/lib/mui-controls/MuiAutocomplete.d.ts +9 -0
  99. package/lib/mui-controls/MuiCheckbox.d.ts +3 -3
  100. package/lib/mui-controls/MuiInputInteger.d.ts +3 -3
  101. package/lib/mui-controls/MuiInputNumber.d.ts +3 -3
  102. package/lib/mui-controls/MuiInputNumberFormat.d.ts +3 -3
  103. package/lib/mui-controls/MuiInputText.d.ts +9 -9
  104. package/lib/mui-controls/MuiInputTime.d.ts +3 -3
  105. package/lib/mui-controls/MuiSelect.d.ts +3 -3
  106. package/lib/mui-controls/MuiToggle.d.ts +3 -3
  107. package/lib/mui-controls/index.d.ts +7 -7
  108. package/lib/util/datejs.d.ts +3 -3
  109. package/lib/util/debounce.d.ts +1 -0
  110. package/lib/util/focus.d.ts +1 -0
  111. package/lib/util/index.d.ts +5 -3
  112. package/lib/util/layout.d.ts +15 -13
  113. package/lib/util/theme.d.ts +10 -10
  114. package/package.json +34 -28
  115. package/rollup.config.js +51 -0
  116. package/src/additional/ListWithDetailMasterItem.tsx +3 -6
  117. package/src/additional/MaterialLabelRenderer.tsx +1 -1
  118. package/src/additional/MaterialListWithDetailRenderer.tsx +1 -1
  119. package/src/cells/MaterialDateCell.tsx +1 -1
  120. package/src/cells/MaterialTimeCell.tsx +1 -0
  121. package/src/complex/CombinatorProperties.tsx +2 -2
  122. package/src/complex/DeleteDialog.tsx +2 -2
  123. package/src/complex/MaterialAllOfRenderer.tsx +3 -2
  124. package/src/complex/MaterialAnyOfRenderer.tsx +3 -2
  125. package/src/complex/MaterialArrayControlRenderer.tsx +1 -1
  126. package/src/complex/MaterialEnumArrayRenderer.tsx +4 -3
  127. package/src/complex/MaterialObjectRenderer.tsx +3 -2
  128. package/src/complex/MaterialOneOfRenderer.tsx +7 -7
  129. package/src/complex/MaterialTableControl.tsx +45 -37
  130. package/src/complex/NoBorderTableCell.tsx +10 -12
  131. package/src/complex/TableToolbar.tsx +9 -7
  132. package/src/complex/ValidationIcon.tsx +12 -19
  133. package/src/controls/MaterialAnyOfStringOrEnumControl.tsx +17 -14
  134. package/src/controls/MaterialBooleanControl.tsx +1 -1
  135. package/src/controls/MaterialBooleanToggleControl.tsx +1 -1
  136. package/src/controls/MaterialDateControl.tsx +87 -93
  137. package/src/controls/MaterialDateTimeControl.tsx +88 -96
  138. package/src/controls/MaterialEnumControl.tsx +12 -3
  139. package/src/controls/MaterialInputControl.tsx +65 -71
  140. package/src/controls/MaterialNativeControl.tsx +55 -59
  141. package/src/controls/MaterialOneOfEnumControl.tsx +13 -4
  142. package/src/controls/MaterialOneOfRadioGroupControl.tsx +4 -4
  143. package/src/controls/MaterialRadioGroup.tsx +73 -73
  144. package/src/controls/MaterialRadioGroupControl.tsx +1 -1
  145. package/src/controls/MaterialSliderControl.tsx +93 -88
  146. package/src/controls/MaterialTimeControl.tsx +87 -85
  147. package/src/layouts/ArrayToolbar.tsx +11 -7
  148. package/src/layouts/ExpandPanelRenderer.tsx +28 -32
  149. package/src/layouts/MaterialArrayLayout.tsx +73 -82
  150. package/src/layouts/MaterialArrayLayoutRenderer.tsx +1 -1
  151. package/src/layouts/MaterialCategorizationLayout.tsx +50 -67
  152. package/src/layouts/MaterialCategorizationStepperLayout.tsx +80 -88
  153. package/src/layouts/MaterialGroupLayout.tsx +1 -1
  154. package/src/{extended → mui-controls}/MuiAutocomplete.tsx +11 -9
  155. package/src/mui-controls/MuiCheckbox.tsx +2 -3
  156. package/src/mui-controls/MuiInputInteger.tsx +13 -10
  157. package/src/mui-controls/MuiInputNumber.tsx +10 -7
  158. package/src/mui-controls/MuiInputNumberFormat.tsx +9 -12
  159. package/src/mui-controls/MuiInputText.tsx +30 -21
  160. package/src/mui-controls/MuiInputTime.tsx +7 -5
  161. package/src/mui-controls/MuiSelect.tsx +4 -5
  162. package/src/mui-controls/MuiToggle.tsx +2 -3
  163. package/{lib/cells/MaterialNumberCell.js → src/util/debounce.ts} +20 -16
  164. package/{lib/util/index.js → src/util/focus.ts} +9 -7
  165. package/src/util/index.ts +2 -0
  166. package/src/util/layout.tsx +7 -8
  167. package/src/util/theme.ts +1 -1
  168. package/stats.html +3279 -0
  169. package/test/renderers/MaterialAllOfRenderer.test.tsx +1 -1
  170. package/test/renderers/MaterialAnyOfRenderer.test.tsx +15 -9
  171. package/test/renderers/MaterialAnyOfStringOrEnumControl.test.tsx +1 -1
  172. package/test/renderers/MaterialArrayControl.test.tsx +1 -1
  173. package/test/renderers/MaterialArrayLayout.test.tsx +39 -32
  174. package/test/renderers/MaterialBooleanCell.test.tsx +1 -1
  175. package/test/renderers/MaterialBooleanToggleCell.test.tsx +3 -2
  176. package/test/renderers/MaterialBooleanToggleControl.test.tsx +3 -2
  177. package/test/renderers/MaterialCategorizationLayout.test.tsx +76 -3
  178. package/test/renderers/MaterialCategorizationStepperLayout.test.tsx +79 -6
  179. package/test/renderers/MaterialDateCell.test.tsx +1 -1
  180. package/test/renderers/MaterialDateControl.test.tsx +5 -3
  181. package/test/renderers/MaterialDateTimeControl.test.tsx +5 -3
  182. package/test/renderers/MaterialEnumArrayRenderer.test.tsx +15 -7
  183. package/test/renderers/MaterialEnumCell.test.tsx +1 -1
  184. package/test/renderers/MaterialGroupLayout.test.tsx +1 -1
  185. package/test/renderers/MaterialInputControl.test.tsx +4 -4
  186. package/test/renderers/MaterialIntegerCell.test.tsx +42 -21
  187. package/test/renderers/MaterialLabelRenderer.test.tsx +1 -1
  188. package/test/renderers/MaterialLayouts.test.tsx +1 -1
  189. package/test/renderers/MaterialListWithDetailRenderer.test.tsx +2 -2
  190. package/test/renderers/MaterialNativeControl.test.tsx +2 -2
  191. package/test/renderers/MaterialNumberCell.test.tsx +46 -25
  192. package/test/renderers/MaterialObjectControl.test.tsx +1 -1
  193. package/test/renderers/MaterialOneOfEnumCell.test.tsx +1 -1
  194. package/test/renderers/MaterialOneOfRadioGroupControl.test.tsx +1 -1
  195. package/test/renderers/MaterialOneOfRenderer.test.tsx +17 -11
  196. package/test/renderers/MaterialRadioGroupControl.test.tsx +1 -1
  197. package/test/renderers/MaterialSliderControl.test.tsx +2 -2
  198. package/test/renderers/MaterialTextCell.test.tsx +47 -33
  199. package/test/renderers/MaterialTextControl.test.tsx +8 -4
  200. package/test/renderers/MaterialTimeCell.test.tsx +42 -21
  201. package/test/renderers/MaterialTimeControl.test.tsx +8 -6
  202. package/tsconfig.json +1 -2
  203. package/tsconfig.test.json +7 -0
  204. package/docs/classes/materialarraylayout.html +0 -777
  205. package/docs/classes/materialcategorizationlayoutrenderer.html +0 -786
  206. package/docs/classes/materialcategorizationstepperlayoutrenderer.html +0 -762
  207. package/docs/classes/materialdatecontrol.html +0 -825
  208. package/docs/classes/materialdatetimecontrol.html +0 -825
  209. package/docs/classes/materialinputcontrol.html +0 -825
  210. package/docs/classes/materialnativecontrol.html +0 -825
  211. package/docs/classes/materialradiogroup.html +0 -825
  212. package/docs/classes/materialslidercontrol.html +0 -825
  213. package/docs/classes/materialtimecontrol.html +0 -825
  214. package/docs/interfaces/materialarraylayoutstate.html +0 -157
  215. package/example/CustomAutocomplete.tsx +0 -54
  216. package/lib/additional/ListWithDetailMasterItem.js +0 -19
  217. package/lib/additional/ListWithDetailMasterItem.js.map +0 -1
  218. package/lib/additional/MaterialLabelRenderer.js +0 -47
  219. package/lib/additional/MaterialLabelRenderer.js.map +0 -1
  220. package/lib/additional/MaterialListWithDetailRenderer.js +0 -64
  221. package/lib/additional/MaterialListWithDetailRenderer.js.map +0 -1
  222. package/lib/additional/index.js +0 -34
  223. package/lib/additional/index.js.map +0 -1
  224. package/lib/cells/CustomizableCells.js +0 -45
  225. package/lib/cells/CustomizableCells.js.map +0 -1
  226. package/lib/cells/MaterialBooleanCell.js +0 -37
  227. package/lib/cells/MaterialBooleanCell.js.map +0 -1
  228. package/lib/cells/MaterialBooleanToggleCell.js +0 -38
  229. package/lib/cells/MaterialBooleanToggleCell.js.map +0 -1
  230. package/lib/cells/MaterialDateCell.js +0 -40
  231. package/lib/cells/MaterialDateCell.js.map +0 -1
  232. package/lib/cells/MaterialEnumCell.js +0 -39
  233. package/lib/cells/MaterialEnumCell.js.map +0 -1
  234. package/lib/cells/MaterialIntegerCell.js +0 -35
  235. package/lib/cells/MaterialIntegerCell.js.map +0 -1
  236. package/lib/cells/MaterialNumberCell.js.map +0 -1
  237. package/lib/cells/MaterialNumberFormatCell.js +0 -39
  238. package/lib/cells/MaterialNumberFormatCell.js.map +0 -1
  239. package/lib/cells/MaterialOneOfEnumCell.js +0 -39
  240. package/lib/cells/MaterialOneOfEnumCell.js.map +0 -1
  241. package/lib/cells/MaterialTextCell.js +0 -39
  242. package/lib/cells/MaterialTextCell.js.map +0 -1
  243. package/lib/cells/MaterialTimeCell.js +0 -35
  244. package/lib/cells/MaterialTimeCell.js.map +0 -1
  245. package/lib/cells/index.js +0 -60
  246. package/lib/cells/index.js.map +0 -1
  247. package/lib/complex/CombinatorProperties.js +0 -57
  248. package/lib/complex/CombinatorProperties.js.map +0 -1
  249. package/lib/complex/DeleteDialog.js +0 -41
  250. package/lib/complex/DeleteDialog.js.map +0 -1
  251. package/lib/complex/MaterialAllOfRenderer.js +0 -45
  252. package/lib/complex/MaterialAllOfRenderer.js.map +0 -1
  253. package/lib/complex/MaterialAnyOfRenderer.js +0 -49
  254. package/lib/complex/MaterialAnyOfRenderer.js.map +0 -1
  255. package/lib/complex/MaterialArrayControlRenderer.js +0 -55
  256. package/lib/complex/MaterialArrayControlRenderer.js.map +0 -1
  257. package/lib/complex/MaterialEnumArrayRenderer.js +0 -45
  258. package/lib/complex/MaterialEnumArrayRenderer.js.map +0 -1
  259. package/lib/complex/MaterialObjectRenderer.js +0 -49
  260. package/lib/complex/MaterialObjectRenderer.js.map +0 -1
  261. package/lib/complex/MaterialOneOfRenderer.js +0 -77
  262. package/lib/complex/MaterialOneOfRenderer.js.map +0 -1
  263. package/lib/complex/MaterialTableControl.js +0 -190
  264. package/lib/complex/MaterialTableControl.js.map +0 -1
  265. package/lib/complex/NoBorderTableCell.js +0 -41
  266. package/lib/complex/NoBorderTableCell.js.map +0 -1
  267. package/lib/complex/TableToolbar.js +0 -58
  268. package/lib/complex/TableToolbar.js.map +0 -1
  269. package/lib/complex/ValidationIcon.js +0 -48
  270. package/lib/complex/ValidationIcon.js.map +0 -1
  271. package/lib/complex/index.js +0 -47
  272. package/lib/complex/index.js.map +0 -1
  273. package/lib/controls/MaterialAnyOfStringOrEnumControl.js +0 -80
  274. package/lib/controls/MaterialAnyOfStringOrEnumControl.js.map +0 -1
  275. package/lib/controls/MaterialBooleanControl.js +0 -41
  276. package/lib/controls/MaterialBooleanControl.js.map +0 -1
  277. package/lib/controls/MaterialBooleanToggleControl.js +0 -41
  278. package/lib/controls/MaterialBooleanToggleControl.js.map +0 -1
  279. package/lib/controls/MaterialDateControl.js +0 -69
  280. package/lib/controls/MaterialDateControl.js.map +0 -1
  281. package/lib/controls/MaterialDateTimeControl.js +0 -71
  282. package/lib/controls/MaterialDateTimeControl.js.map +0 -1
  283. package/lib/controls/MaterialEnumControl.js +0 -36
  284. package/lib/controls/MaterialEnumControl.js.map +0 -1
  285. package/lib/controls/MaterialInputControl.js +0 -61
  286. package/lib/controls/MaterialInputControl.js.map +0 -1
  287. package/lib/controls/MaterialIntegerControl.js +0 -36
  288. package/lib/controls/MaterialIntegerControl.js.map +0 -1
  289. package/lib/controls/MaterialNativeControl.js +0 -55
  290. package/lib/controls/MaterialNativeControl.js.map +0 -1
  291. package/lib/controls/MaterialNumberControl.js +0 -36
  292. package/lib/controls/MaterialNumberControl.js.map +0 -1
  293. package/lib/controls/MaterialOneOfEnumControl.js +0 -36
  294. package/lib/controls/MaterialOneOfEnumControl.js.map +0 -1
  295. package/lib/controls/MaterialOneOfRadioGroupControl.js +0 -37
  296. package/lib/controls/MaterialOneOfRadioGroupControl.js.map +0 -1
  297. package/lib/controls/MaterialRadioGroup.js +0 -55
  298. package/lib/controls/MaterialRadioGroup.js.map +0 -1
  299. package/lib/controls/MaterialRadioGroupControl.js +0 -37
  300. package/lib/controls/MaterialRadioGroupControl.js.map +0 -1
  301. package/lib/controls/MaterialSliderControl.js +0 -74
  302. package/lib/controls/MaterialSliderControl.js.map +0 -1
  303. package/lib/controls/MaterialTextControl.js +0 -36
  304. package/lib/controls/MaterialTextControl.js.map +0 -1
  305. package/lib/controls/MaterialTimeControl.js +0 -66
  306. package/lib/controls/MaterialTimeControl.js.map +0 -1
  307. package/lib/controls/index.js +0 -91
  308. package/lib/controls/index.js.map +0 -1
  309. package/lib/extended/MaterialAutocompleteEnumControl.d.ts +0 -7
  310. package/lib/extended/MaterialAutocompleteEnumControl.js +0 -42
  311. package/lib/extended/MaterialAutocompleteEnumControl.js.map +0 -1
  312. package/lib/extended/MaterialAutocompleteOneOfEnumControl.d.ts +0 -7
  313. package/lib/extended/MaterialAutocompleteOneOfEnumControl.js +0 -42
  314. package/lib/extended/MaterialAutocompleteOneOfEnumControl.js.map +0 -1
  315. package/lib/extended/MuiAutocomplete.d.ts +0 -10
  316. package/lib/extended/MuiAutocomplete.js +0 -45
  317. package/lib/extended/MuiAutocomplete.js.map +0 -1
  318. package/lib/extended/index.d.ts +0 -10
  319. package/lib/extended/index.js +0 -48
  320. package/lib/extended/index.js.map +0 -1
  321. package/lib/index.js +0 -89
  322. package/lib/index.js.map +0 -1
  323. package/lib/jsonforms-material.js +0 -86
  324. package/lib/jsonforms-material.js.map +0 -1
  325. package/lib/layouts/ArrayToolbar.js +0 -27
  326. package/lib/layouts/ArrayToolbar.js.map +0 -1
  327. package/lib/layouts/ExpandPanelRenderer.js +0 -113
  328. package/lib/layouts/ExpandPanelRenderer.js.map +0 -1
  329. package/lib/layouts/MaterialArrayLayout.js +0 -66
  330. package/lib/layouts/MaterialArrayLayout.js.map +0 -1
  331. package/lib/layouts/MaterialArrayLayoutRenderer.js +0 -43
  332. package/lib/layouts/MaterialArrayLayoutRenderer.js.map +0 -1
  333. package/lib/layouts/MaterialCategorizationLayout.js +0 -88
  334. package/lib/layouts/MaterialCategorizationLayout.js.map +0 -1
  335. package/lib/layouts/MaterialCategorizationStepperLayout.js +0 -89
  336. package/lib/layouts/MaterialCategorizationStepperLayout.js.map +0 -1
  337. package/lib/layouts/MaterialGroupLayout.js +0 -52
  338. package/lib/layouts/MaterialGroupLayout.js.map +0 -1
  339. package/lib/layouts/MaterialHorizontalLayout.js +0 -51
  340. package/lib/layouts/MaterialHorizontalLayout.js.map +0 -1
  341. package/lib/layouts/MaterialVerticalLayout.js +0 -51
  342. package/lib/layouts/MaterialVerticalLayout.js.map +0 -1
  343. package/lib/layouts/index.js +0 -43
  344. package/lib/layouts/index.js.map +0 -1
  345. package/lib/mui-controls/MuiCheckbox.js +0 -40
  346. package/lib/mui-controls/MuiCheckbox.js.map +0 -1
  347. package/lib/mui-controls/MuiInputInteger.js +0 -41
  348. package/lib/mui-controls/MuiInputInteger.js.map +0 -1
  349. package/lib/mui-controls/MuiInputNumber.js +0 -41
  350. package/lib/mui-controls/MuiInputNumber.js.map +0 -1
  351. package/lib/mui-controls/MuiInputNumberFormat.js +0 -50
  352. package/lib/mui-controls/MuiInputNumberFormat.js.map +0 -1
  353. package/lib/mui-controls/MuiInputText.js +0 -64
  354. package/lib/mui-controls/MuiInputText.js.map +0 -1
  355. package/lib/mui-controls/MuiInputTime.js +0 -37
  356. package/lib/mui-controls/MuiInputTime.js.map +0 -1
  357. package/lib/mui-controls/MuiSelect.js +0 -38
  358. package/lib/mui-controls/MuiSelect.js.map +0 -1
  359. package/lib/mui-controls/MuiToggle.js +0 -39
  360. package/lib/mui-controls/MuiToggle.js.map +0 -1
  361. package/lib/mui-controls/index.js +0 -35
  362. package/lib/mui-controls/index.js.map +0 -1
  363. package/lib/util/datejs.js +0 -26
  364. package/lib/util/datejs.js.map +0 -1
  365. package/lib/util/index.js.map +0 -1
  366. package/lib/util/layout.js +0 -54
  367. package/lib/util/layout.js.map +0 -1
  368. package/lib/util/theme.js +0 -3
  369. package/lib/util/theme.js.map +0 -1
  370. package/src/extended/MaterialAutocompleteEnumControl.tsx +0 -55
  371. package/src/extended/MaterialAutocompleteOneOfEnumControl.tsx +0 -55
  372. package/src/extended/index.ts +0 -56
  373. package/webpack/webpack.build.js +0 -21
@@ -22,106 +22,108 @@
22
22
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23
23
  THE SOFTWARE.
24
24
  */
25
- import React from 'react';
25
+ import React, { useMemo } from 'react';
26
26
  import merge from 'lodash/merge';
27
27
  import {
28
28
  ControlProps,
29
- ControlState,
30
29
  isTimeControl,
31
30
  isDescriptionHidden,
32
31
  RankedTester,
33
32
  rankWith
34
33
  } from '@jsonforms/core';
35
- import { Control, withJsonFormsControlProps } from '@jsonforms/react';
36
- import { FormHelperText, Hidden } from '@material-ui/core';
34
+ import { withJsonFormsControlProps } from '@jsonforms/react';
35
+ import { FormHelperText, Hidden, TextField } from '@mui/material';
37
36
  import {
38
- KeyboardTimePicker,
39
- MuiPickersUtilsProvider
40
- } from '@material-ui/pickers';
41
- import DayjsUtils from '@date-io/dayjs';
42
- import { createOnChangeHandler, getData } from '../util';
37
+ TimePicker,
38
+ LocalizationProvider
39
+ } from '@mui/lab';
40
+ import AdapterDayjs from '@mui/lab/AdapterDayjs';
41
+ import { createOnChangeHandler, getData, useFocus } from '../util';
43
42
 
44
- export class MaterialTimeControl extends Control<
45
- ControlProps,
46
- ControlState
47
- > {
48
- render() {
43
+ export const MaterialTimeControl = (props: ControlProps) => {
44
+ const [focused, onFocus, onBlur] = useFocus();
49
45
  const {
50
- id,
51
- description,
52
- errors,
53
- label,
54
- uischema,
55
- visible,
56
- enabled,
57
- required,
58
- path,
59
- handleChange,
60
- data,
61
- config
62
- } = this.props;
63
- const appliedUiSchemaOptions = merge({}, config, uischema.options);
64
- const isValid = errors.length === 0;
46
+ id,
47
+ description,
48
+ errors,
49
+ label,
50
+ uischema,
51
+ visible,
52
+ enabled,
53
+ required,
54
+ path,
55
+ handleChange,
56
+ data,
57
+ config
58
+ } = props;
59
+ const appliedUiSchemaOptions = merge({}, config, uischema.options);
60
+ const isValid = errors.length === 0;
61
+
62
+ const showDescription = !isDescriptionHidden(
63
+ visible,
64
+ description,
65
+ focused,
66
+ appliedUiSchemaOptions.showUnfocusedDescription
67
+ );
65
68
 
66
- const showDescription = !isDescriptionHidden(
67
- visible,
68
- description,
69
- this.state.isFocused,
70
- appliedUiSchemaOptions.showUnfocusedDescription
71
- );
69
+ const format = appliedUiSchemaOptions.timeFormat ?? 'HH:mm';
70
+ const saveFormat = appliedUiSchemaOptions.timeSaveFormat ?? 'HH:mm:ss';
72
71
 
73
- const format = appliedUiSchemaOptions.timeFormat ?? 'HH:mm';
74
- const saveFormat = appliedUiSchemaOptions.timeSaveFormat ?? 'HH:mm';
72
+ const firstFormHelperText = showDescription
73
+ ? description
74
+ : !isValid
75
+ ? errors
76
+ : null;
77
+ const secondFormHelperText = showDescription && !isValid ? errors : null;
75
78
 
76
- const firstFormHelperText = showDescription
77
- ? description
78
- : !isValid
79
- ? errors
80
- : null;
81
- const secondFormHelperText = showDescription && !isValid ? errors : null;
79
+ const onChange = useMemo(() => createOnChangeHandler(
80
+ path,
81
+ handleChange,
82
+ saveFormat
83
+ ),[path, handleChange, saveFormat]);
82
84
 
83
- return (
84
- <Hidden xsUp={!visible}>
85
- <MuiPickersUtilsProvider utils={DayjsUtils}>
86
- <KeyboardTimePicker
87
- id={id + '-input'}
88
- required={required && !appliedUiSchemaOptions.hideRequiredAsterisk}
89
- label={label}
90
- error={!isValid}
91
- fullWidth={!appliedUiSchemaOptions.trim}
92
- onFocus={this.onFocus}
93
- onBlur={this.onBlur}
94
- InputLabelProps={data ? { shrink: true } : undefined}
95
- value={getData(data, saveFormat)}
96
- clearable
97
- onChange={createOnChangeHandler(
98
- path,
99
- handleChange,
100
- saveFormat
101
- )}
102
- format={format}
103
- ampm={!!appliedUiSchemaOptions.ampm}
104
- views={appliedUiSchemaOptions.views}
105
- disabled={!enabled}
106
- autoFocus={appliedUiSchemaOptions.focus}
107
- cancelLabel={appliedUiSchemaOptions.cancelLabel}
108
- clearLabel={appliedUiSchemaOptions.clearLabel}
109
- okLabel={appliedUiSchemaOptions.okLabel}
110
- invalidDateMessage={null}
111
- maxDateMessage={null}
112
- minDateMessage={null}
113
- />
114
- <FormHelperText error={!isValid && !showDescription}>
115
- {firstFormHelperText}
116
- </FormHelperText>
117
- <FormHelperText error={!isValid}>
118
- {secondFormHelperText}
119
- </FormHelperText>
120
- </MuiPickersUtilsProvider>
121
- </Hidden>
122
- );
123
- }
124
- }
85
+ return (
86
+ <Hidden xsUp={!visible}>
87
+ <LocalizationProvider dateAdapter={AdapterDayjs}>
88
+ <TimePicker
89
+ label={label}
90
+ value={getData(data, saveFormat)}
91
+ clearable
92
+ onChange={onChange}
93
+ inputFormat={format}
94
+ disableMaskedInput
95
+ ampm={!!appliedUiSchemaOptions.ampm}
96
+ views={appliedUiSchemaOptions.views}
97
+ disabled={!enabled}
98
+ cancelText={appliedUiSchemaOptions.cancelLabel}
99
+ clearText={appliedUiSchemaOptions.clearLabel}
100
+ okText={appliedUiSchemaOptions.okLabel}
101
+ renderInput={params => (
102
+ <TextField
103
+ {...params}
104
+ id={id + '-input'}
105
+ required={required && !appliedUiSchemaOptions.hideRequiredAsterisk}
106
+ autoFocus={appliedUiSchemaOptions.focus}
107
+ error={!isValid}
108
+ fullWidth={!appliedUiSchemaOptions.trim}
109
+ inputProps={{ ...params.inputProps, type: 'text' }}
110
+ InputLabelProps={data ? { shrink: true } : undefined}
111
+ onFocus={onFocus}
112
+ onBlur={onBlur}
113
+ variant={'standard'}
114
+ />
115
+ )}
116
+ />
117
+ <FormHelperText error={!isValid && !showDescription}>
118
+ {firstFormHelperText}
119
+ </FormHelperText>
120
+ <FormHelperText error={!isValid}>
121
+ {secondFormHelperText}
122
+ </FormHelperText>
123
+ </LocalizationProvider>
124
+ </Hidden>
125
+ );
126
+ };
125
127
 
126
128
  export const materialTimeControlTester: RankedTester = rankWith(
127
129
  4,
@@ -1,8 +1,12 @@
1
- import { Grid, Hidden, Tooltip } from '@material-ui/core';
2
- import IconButton from '@material-ui/core/IconButton';
3
- import Toolbar from '@material-ui/core/Toolbar';
4
- import Typography from '@material-ui/core/Typography';
5
- import AddIcon from '@material-ui/icons/Add';
1
+ import {
2
+ Grid,
3
+ IconButton,
4
+ Hidden,
5
+ Toolbar,
6
+ Tooltip,
7
+ Typography
8
+ } from '@mui/material';
9
+ import AddIcon from '@mui/icons-material/Add';
6
10
  import React from 'react';
7
11
  import ValidationIcon from '../complex/ValidationIcon';
8
12
  export interface ArrayLayoutToolbarProps {
@@ -22,7 +26,7 @@ export const ArrayLayoutToolbar = React.memo(
22
26
  }: ArrayLayoutToolbarProps) => {
23
27
  return (
24
28
  <Toolbar disableGutters={true}>
25
- <Grid container alignItems='center' justify='space-between'>
29
+ <Grid container alignItems='center' justifyContent='space-between'>
26
30
  <Grid item>
27
31
  <Typography variant={'h6'}>{label}</Typography>
28
32
  </Grid>
@@ -42,7 +46,7 @@ export const ArrayLayoutToolbar = React.memo(
42
46
  <IconButton
43
47
  aria-label={`Add to ${label}`}
44
48
  onClick={addItem(path, createDefault())}
45
- >
49
+ size='large'>
46
50
  <AddIcon />
47
51
  </IconButton>
48
52
  </Tooltip>
@@ -1,8 +1,7 @@
1
1
  import merge from 'lodash/merge';
2
2
  import get from 'lodash/get';
3
- import React, { ComponentType, Dispatch, Fragment, ReducerAction, useMemo, useState, useEffect } from 'react';
3
+ import React, { ComponentType, Dispatch, Fragment, ReducerAction, useMemo, useState, useEffect, useCallback } from 'react';
4
4
  import {
5
- areEqual,
6
5
  JsonFormsDispatch,
7
6
  JsonFormsStateContext,
8
7
  withJsonFormsContext
@@ -23,16 +22,18 @@ import {
23
22
  createId,
24
23
  removeId
25
24
  } from '@jsonforms/core';
26
- import IconButton from '@material-ui/core/IconButton';
27
- import Accordion from '@material-ui/core/Accordion';
28
- import AccordionSummary from '@material-ui/core/AccordionSummary';
29
- import AccordionDetails from '@material-ui/core/AccordionDetails';
30
- import { Grid } from '@material-ui/core';
31
- import ExpandMoreIcon from '@material-ui/icons/ExpandMore';
32
- import Avatar from '@material-ui/core/Avatar';
33
- import DeleteIcon from '@material-ui/icons/Delete';
34
- import ArrowUpward from '@material-ui/icons/ArrowUpward';
35
- import ArrowDownward from '@material-ui/icons/ArrowDownward';
25
+ import {
26
+ Accordion,
27
+ AccordionSummary,
28
+ AccordionDetails,
29
+ Avatar,
30
+ Grid,
31
+ IconButton
32
+ } from '@mui/material';
33
+ import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
34
+ import DeleteIcon from '@mui/icons-material/Delete';
35
+ import ArrowUpward from '@mui/icons-material/ArrowUpward';
36
+ import ArrowDownward from '@mui/icons-material/ArrowDownward';
36
37
 
37
38
  const iconStyle: any = { float: 'right' };
38
39
 
@@ -73,7 +74,7 @@ export interface ExpandPanelProps
73
74
  extends StatePropsOfExpandPanel,
74
75
  DispatchPropsOfExpandPanel {}
75
76
 
76
- const ExpandPanelRenderer = (props: ExpandPanelProps) => {
77
+ const ExpandPanelRendererComponent = (props: ExpandPanelProps) => {
77
78
  const [labelHtmlId] = useState<string>(createId('expand-panel'));
78
79
 
79
80
  useEffect(() => {
@@ -138,12 +139,12 @@ const ExpandPanelRenderer = (props: ExpandPanelProps) => {
138
139
  </Grid>
139
140
  </Grid>
140
141
  <Grid item xs={5} md={3}>
141
- <Grid container justify={'flex-end'}>
142
+ <Grid container justifyContent='flex-end'>
142
143
  <Grid item>
143
144
  <Grid
144
145
  container
145
146
  direction='row'
146
- justify='center'
147
+ justifyContent='center'
147
148
  alignItems='center'
148
149
  >
149
150
  {appliedUiSchemaOptions.showSortButtons ? (
@@ -154,7 +155,7 @@ const ExpandPanelRenderer = (props: ExpandPanelProps) => {
154
155
  style={iconStyle}
155
156
  disabled={!enableMoveUp}
156
157
  aria-label={`Move up`}
157
- >
158
+ size='large'>
158
159
  <ArrowUpward />
159
160
  </IconButton>
160
161
  </Grid>
@@ -164,7 +165,7 @@ const ExpandPanelRenderer = (props: ExpandPanelProps) => {
164
165
  style={iconStyle}
165
166
  disabled={!enableMoveDown}
166
167
  aria-label={`Move down`}
167
- >
168
+ size='large'>
168
169
  <ArrowDownward />
169
170
  </IconButton>
170
171
  </Grid>
@@ -177,7 +178,7 @@ const ExpandPanelRenderer = (props: ExpandPanelProps) => {
177
178
  onClick={removeItems(path, [index])}
178
179
  style={iconStyle}
179
180
  aria-label={`Delete`}
180
- >
181
+ size='large'>
181
182
  <DeleteIcon />
182
183
  </IconButton>
183
184
  </Grid>
@@ -201,6 +202,8 @@ const ExpandPanelRenderer = (props: ExpandPanelProps) => {
201
202
  );
202
203
  };
203
204
 
205
+ const ExpandPanelRenderer = React.memo(ExpandPanelRendererComponent);
206
+
204
207
  /**
205
208
  * Maps state to dispatch properties of an expand pandel control.
206
209
  *
@@ -210,7 +213,7 @@ const ExpandPanelRenderer = (props: ExpandPanelProps) => {
210
213
  export const ctxDispatchToExpandPanelProps: (
211
214
  dispatch: Dispatch<ReducerAction<any>>
212
215
  ) => DispatchPropsOfExpandPanel = dispatch => ({
213
- removeItems: (path: string, toDelete: number[]) => (event: any): void => {
216
+ removeItems: useCallback((path: string, toDelete: number[]) => (event: any): void => {
214
217
  event.stopPropagation();
215
218
  dispatch(
216
219
  update(path, array => {
@@ -221,8 +224,8 @@ export const ctxDispatchToExpandPanelProps: (
221
224
  return array;
222
225
  })
223
226
  );
224
- },
225
- moveUp: (path: string, toMove: number) => (event: any): void => {
227
+ }, [dispatch]),
228
+ moveUp: useCallback((path: string, toMove: number) => (event: any): void => {
226
229
  event.stopPropagation();
227
230
  dispatch(
228
231
  update(path, array => {
@@ -230,8 +233,8 @@ export const ctxDispatchToExpandPanelProps: (
230
233
  return array;
231
234
  })
232
235
  );
233
- },
234
- moveDown: (path: string, toMove: number) => (event: any): void => {
236
+ }, [dispatch]),
237
+ moveDown: useCallback((path: string, toMove: number) => (event: any): void => {
235
238
  event.stopPropagation();
236
239
  dispatch(
237
240
  update(path, array => {
@@ -239,7 +242,7 @@ export const ctxDispatchToExpandPanelProps: (
239
242
  return array;
240
243
  })
241
244
  );
242
- }
245
+ }, [dispatch])
243
246
  });
244
247
 
245
248
  /**
@@ -277,13 +280,6 @@ export const withJsonFormsExpandPanelProps = (
277
280
  Component: ComponentType<ExpandPanelProps>
278
281
  ): ComponentType<OwnPropsOfExpandPanel> =>
279
282
  withJsonFormsContext(
280
- withContextToExpandPanelProps(
281
- React.memo(
282
- Component,
283
- (prevProps: ExpandPanelProps, nextProps: ExpandPanelProps) =>
284
- areEqual(prevProps, nextProps)
285
- )
286
- )
287
- );
283
+ withContextToExpandPanelProps(Component));
288
284
 
289
285
  export default withJsonFormsExpandPanelProps(ExpandPanelRenderer);
@@ -23,7 +23,7 @@
23
23
  THE SOFTWARE.
24
24
  */
25
25
  import range from 'lodash/range';
26
- import React from 'react';
26
+ import React, {useState, useCallback} from 'react';
27
27
  import {
28
28
  ArrayLayoutProps,
29
29
  composePaths,
@@ -35,87 +35,78 @@ import { ArrayLayoutToolbar } from './ArrayToolbar';
35
35
  import ExpandPanelRenderer from './ExpandPanelRenderer';
36
36
  import merge from 'lodash/merge';
37
37
 
38
- interface MaterialArrayLayoutState {
39
- expanded: string | boolean;
40
- }
41
- export class MaterialArrayLayout extends React.PureComponent<
42
- ArrayLayoutProps,
43
- MaterialArrayLayoutState
44
- > {
45
- state: MaterialArrayLayoutState = {
46
- expanded: null
47
- };
48
- innerCreateDefaultValue = () => createDefaultValue(this.props.schema);
49
- handleChange = (panel: string) => (_event: any, expanded: boolean) => {
50
- this.setState({
51
- expanded: expanded ? panel : false
52
- });
53
- };
54
- isExpanded = (index: number) =>
55
- this.state.expanded === composePaths(this.props.path, `${index}`);
56
- render() {
57
- const {
58
- data,
59
- path,
60
- schema,
61
- uischema,
62
- errors,
63
- addItem,
64
- renderers,
65
- cells,
66
- label,
67
- required,
68
- rootSchema,
69
- config,
70
- uischemas
71
- } = this.props;
72
- const appliedUiSchemaOptions = merge(
73
- {},
74
- config,
75
- this.props.uischema.options
76
- );
38
+ const MaterialArrayLayoutComponent = (props: ArrayLayoutProps)=> {
39
+ const [expanded, setExpanded] = useState<string|boolean>(false);
40
+ const innerCreateDefaultValue = useCallback(() => createDefaultValue(props.schema), [props.schema]);
41
+ const handleChange = useCallback((panel: string) => (_event: any, expandedPanel: boolean) => {
42
+ setExpanded(expandedPanel ? panel : false)
43
+ }, []);
44
+ const isExpanded = (index: number) =>
45
+ expanded === composePaths(props.path, `${index}`);
46
+
47
+ const {
48
+ data,
49
+ path,
50
+ schema,
51
+ uischema,
52
+ errors,
53
+ addItem,
54
+ renderers,
55
+ cells,
56
+ label,
57
+ required,
58
+ rootSchema,
59
+ config,
60
+ uischemas
61
+ } = props;
62
+ const appliedUiSchemaOptions = merge(
63
+ {},
64
+ config,
65
+ props.uischema.options
66
+ );
77
67
 
78
- return (
68
+ return (
69
+ <div>
70
+ <ArrayLayoutToolbar
71
+ label={computeLabel(
72
+ label,
73
+ required,
74
+ appliedUiSchemaOptions.hideRequiredAsterisk
75
+ )}
76
+ errors={errors}
77
+ path={path}
78
+ addItem={addItem}
79
+ createDefault={innerCreateDefaultValue}
80
+ />
79
81
  <div>
80
- <ArrayLayoutToolbar
81
- label={computeLabel(
82
- label,
83
- required,
84
- appliedUiSchemaOptions.hideRequiredAsterisk
85
- )}
86
- errors={errors}
87
- path={path}
88
- addItem={addItem}
89
- createDefault={this.innerCreateDefaultValue}
90
- />
91
- <div>
92
- {data > 0 ? (
93
- map(range(data), index => {
94
- return (
95
- <ExpandPanelRenderer
96
- index={index}
97
- expanded={this.isExpanded(index)}
98
- schema={schema}
99
- path={path}
100
- handleExpansion={this.handleChange}
101
- uischema={uischema}
102
- renderers={renderers}
103
- cells={cells}
104
- key={index}
105
- rootSchema={rootSchema}
106
- enableMoveUp={index != 0}
107
- enableMoveDown={index < data - 1}
108
- config={config}
109
- childLabelProp={appliedUiSchemaOptions.elementLabelProp}
110
- uischemas={uischemas}
111
- />
112
- );
113
- })
114
- ) : (
115
- <p>No data</p>
116
- )}
117
- </div>
82
+ {data > 0 ? (
83
+ map(range(data), index => {
84
+ return (
85
+ <ExpandPanelRenderer
86
+ index={index}
87
+ expanded={isExpanded(index)}
88
+ schema={schema}
89
+ path={path}
90
+ handleExpansion={handleChange}
91
+ uischema={uischema}
92
+ renderers={renderers}
93
+ cells={cells}
94
+ key={index}
95
+ rootSchema={rootSchema}
96
+ enableMoveUp={index != 0}
97
+ enableMoveDown={index < data - 1}
98
+ config={config}
99
+ childLabelProp={appliedUiSchemaOptions.elementLabelProp}
100
+ uischemas={uischemas}
101
+ />
102
+ );
103
+ })
104
+ ) : (
105
+ <p>No data</p>
106
+ )}
118
107
  </div>
119
- );
120
- }
121
- }
108
+ </div>
109
+ );
110
+ };
111
+
112
+ export const MaterialArrayLayout = React.memo(MaterialArrayLayoutComponent);
@@ -30,7 +30,7 @@ import {
30
30
  RankedTester,
31
31
  rankWith
32
32
  } from '@jsonforms/core';
33
- import { Hidden } from '@material-ui/core';
33
+ import { Hidden } from '@mui/material';
34
34
  import { MaterialArrayLayout } from './MaterialArrayLayout';
35
35
  import { withJsonFormsArrayLayoutProps } from '@jsonforms/react';
36
36