@jsonforms/material-renderers 3.0.0-alpha.1 → 3.0.0-alpha.2

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 (293) 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 +803 -213
  6. package/docs/index.html +63 -42
  7. package/docs/interfaces/ajvprops.html +1 -4
  8. package/docs/interfaces/arraylayouttoolbarprops.html +0 -3
  9. package/docs/interfaces/categorizationstate.html +0 -3
  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 +0 -3
  17. package/docs/interfaces/materialcategorizationlayoutrendererprops.html +1 -4
  18. package/docs/interfaces/materialcategorizationstepperlayoutrendererprops.html +1 -4
  19. package/docs/interfaces/materiallayoutrendererprops.html +0 -3
  20. package/docs/interfaces/materialtabletoolbarprops.html +0 -3
  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 +0 -3
  32. package/docs/interfaces/withdeletedialogsupport.html +0 -3
  33. package/docs/interfaces/withinput.html +1 -4
  34. package/docs/interfaces/withoptionlabel.html +3 -6
  35. package/lib/additional/ListWithDetailMasterItem.d.ts +1 -1
  36. package/lib/additional/ListWithDetailMasterItem.js.map +1 -1
  37. package/lib/additional/MaterialLabelRenderer.d.ts +1 -1
  38. package/lib/additional/MaterialLabelRenderer.js +3 -1
  39. package/lib/additional/MaterialLabelRenderer.js.map +1 -1
  40. package/lib/additional/MaterialListWithDetailRenderer.d.ts +1 -1
  41. package/lib/additional/MaterialListWithDetailRenderer.js +3 -1
  42. package/lib/additional/MaterialListWithDetailRenderer.js.map +1 -1
  43. package/lib/additional/index.js +3 -2
  44. package/lib/additional/index.js.map +1 -1
  45. package/lib/cells/CustomizableCells.js +10 -9
  46. package/lib/cells/CustomizableCells.js.map +1 -1
  47. package/lib/cells/MaterialBooleanCell.d.ts +1 -1
  48. package/lib/cells/MaterialBooleanCell.js +3 -1
  49. package/lib/cells/MaterialBooleanCell.js.map +1 -1
  50. package/lib/cells/MaterialBooleanToggleCell.d.ts +1 -1
  51. package/lib/cells/MaterialBooleanToggleCell.js +3 -1
  52. package/lib/cells/MaterialBooleanToggleCell.js.map +1 -1
  53. package/lib/cells/MaterialDateCell.d.ts +1 -1
  54. package/lib/cells/MaterialDateCell.js +3 -1
  55. package/lib/cells/MaterialDateCell.js.map +1 -1
  56. package/lib/cells/MaterialEnumCell.d.ts +1 -1
  57. package/lib/cells/MaterialEnumCell.js +3 -1
  58. package/lib/cells/MaterialEnumCell.js.map +1 -1
  59. package/lib/cells/MaterialIntegerCell.d.ts +1 -1
  60. package/lib/cells/MaterialIntegerCell.js +3 -1
  61. package/lib/cells/MaterialIntegerCell.js.map +1 -1
  62. package/lib/cells/MaterialNumberCell.d.ts +1 -1
  63. package/lib/cells/MaterialNumberCell.js +3 -1
  64. package/lib/cells/MaterialNumberCell.js.map +1 -1
  65. package/lib/cells/MaterialNumberFormatCell.d.ts +1 -1
  66. package/lib/cells/MaterialNumberFormatCell.js +3 -1
  67. package/lib/cells/MaterialNumberFormatCell.js.map +1 -1
  68. package/lib/cells/MaterialOneOfEnumCell.d.ts +1 -1
  69. package/lib/cells/MaterialOneOfEnumCell.js +3 -1
  70. package/lib/cells/MaterialOneOfEnumCell.js.map +1 -1
  71. package/lib/cells/MaterialTextCell.d.ts +1 -1
  72. package/lib/cells/MaterialTextCell.js +3 -1
  73. package/lib/cells/MaterialTextCell.js.map +1 -1
  74. package/lib/cells/MaterialTimeCell.d.ts +1 -1
  75. package/lib/cells/MaterialTimeCell.js +3 -1
  76. package/lib/cells/MaterialTimeCell.js.map +1 -1
  77. package/lib/cells/index.js +11 -10
  78. package/lib/cells/index.js.map +1 -1
  79. package/lib/complex/CombinatorProperties.js +3 -1
  80. package/lib/complex/CombinatorProperties.js.map +1 -1
  81. package/lib/complex/DeleteDialog.js +1 -0
  82. package/lib/complex/DeleteDialog.js.map +1 -1
  83. package/lib/complex/MaterialAllOfRenderer.d.ts +3 -2
  84. package/lib/complex/MaterialAllOfRenderer.js +3 -1
  85. package/lib/complex/MaterialAllOfRenderer.js.map +1 -1
  86. package/lib/complex/MaterialAnyOfRenderer.d.ts +3 -2
  87. package/lib/complex/MaterialAnyOfRenderer.js +3 -1
  88. package/lib/complex/MaterialAnyOfRenderer.js.map +1 -1
  89. package/lib/complex/MaterialArrayControlRenderer.d.ts +1 -1
  90. package/lib/complex/MaterialArrayControlRenderer.js +3 -1
  91. package/lib/complex/MaterialArrayControlRenderer.js.map +1 -1
  92. package/lib/complex/MaterialEnumArrayRenderer.d.ts +2 -2
  93. package/lib/complex/MaterialEnumArrayRenderer.js +6 -3
  94. package/lib/complex/MaterialEnumArrayRenderer.js.map +1 -1
  95. package/lib/complex/MaterialObjectRenderer.d.ts +3 -2
  96. package/lib/complex/MaterialObjectRenderer.js +3 -1
  97. package/lib/complex/MaterialObjectRenderer.js.map +1 -1
  98. package/lib/complex/MaterialOneOfRenderer.d.ts +2 -1
  99. package/lib/complex/MaterialOneOfRenderer.js +5 -4
  100. package/lib/complex/MaterialOneOfRenderer.js.map +1 -1
  101. package/lib/complex/MaterialTableControl.d.ts +16 -1
  102. package/lib/complex/MaterialTableControl.js +16 -8
  103. package/lib/complex/MaterialTableControl.js.map +1 -1
  104. package/lib/complex/NoBorderTableCell.js.map +1 -1
  105. package/lib/complex/TableToolbar.js.map +1 -1
  106. package/lib/complex/ValidationIcon.d.ts +5 -3
  107. package/lib/complex/ValidationIcon.js.map +1 -1
  108. package/lib/complex/index.js +6 -5
  109. package/lib/complex/index.js.map +1 -1
  110. package/lib/controls/MaterialAnyOfStringOrEnumControl.d.ts +1 -1
  111. package/lib/controls/MaterialAnyOfStringOrEnumControl.js +17 -12
  112. package/lib/controls/MaterialAnyOfStringOrEnumControl.js.map +1 -1
  113. package/lib/controls/MaterialBooleanControl.d.ts +1 -1
  114. package/lib/controls/MaterialBooleanControl.js +3 -1
  115. package/lib/controls/MaterialBooleanControl.js.map +1 -1
  116. package/lib/controls/MaterialBooleanToggleControl.d.ts +1 -1
  117. package/lib/controls/MaterialBooleanToggleControl.js +3 -1
  118. package/lib/controls/MaterialBooleanToggleControl.js.map +1 -1
  119. package/lib/controls/MaterialDateControl.d.ts +3 -6
  120. package/lib/controls/MaterialDateControl.js +25 -29
  121. package/lib/controls/MaterialDateControl.js.map +1 -1
  122. package/lib/controls/MaterialDateTimeControl.d.ts +3 -6
  123. package/lib/controls/MaterialDateTimeControl.js +25 -29
  124. package/lib/controls/MaterialDateTimeControl.js.map +1 -1
  125. package/lib/controls/MaterialEnumControl.d.ts +1 -1
  126. package/lib/controls/MaterialEnumControl.js +3 -1
  127. package/lib/controls/MaterialEnumControl.js.map +1 -1
  128. package/lib/controls/MaterialInputControl.d.ts +2 -5
  129. package/lib/controls/MaterialInputControl.js +23 -28
  130. package/lib/controls/MaterialInputControl.js.map +1 -1
  131. package/lib/controls/MaterialIntegerControl.d.ts +1 -1
  132. package/lib/controls/MaterialIntegerControl.js +3 -1
  133. package/lib/controls/MaterialIntegerControl.js.map +1 -1
  134. package/lib/controls/MaterialNativeControl.d.ts +3 -6
  135. package/lib/controls/MaterialNativeControl.js +15 -19
  136. package/lib/controls/MaterialNativeControl.js.map +1 -1
  137. package/lib/controls/MaterialNumberControl.d.ts +1 -1
  138. package/lib/controls/MaterialNumberControl.js +3 -1
  139. package/lib/controls/MaterialNumberControl.js.map +1 -1
  140. package/lib/controls/MaterialOneOfEnumControl.d.ts +1 -1
  141. package/lib/controls/MaterialOneOfEnumControl.js +3 -1
  142. package/lib/controls/MaterialOneOfEnumControl.js.map +1 -1
  143. package/lib/controls/MaterialOneOfRadioGroupControl.d.ts +1 -1
  144. package/lib/controls/MaterialOneOfRadioGroupControl.js +3 -1
  145. package/lib/controls/MaterialOneOfRadioGroupControl.js.map +1 -1
  146. package/lib/controls/MaterialRadioGroup.d.ts +2 -5
  147. package/lib/controls/MaterialRadioGroup.js +15 -20
  148. package/lib/controls/MaterialRadioGroup.js.map +1 -1
  149. package/lib/controls/MaterialRadioGroupControl.d.ts +1 -1
  150. package/lib/controls/MaterialRadioGroupControl.js +3 -1
  151. package/lib/controls/MaterialRadioGroupControl.js.map +1 -1
  152. package/lib/controls/MaterialSliderControl.d.ts +3 -6
  153. package/lib/controls/MaterialSliderControl.js +35 -39
  154. package/lib/controls/MaterialSliderControl.js.map +1 -1
  155. package/lib/controls/MaterialTextControl.d.ts +1 -1
  156. package/lib/controls/MaterialTextControl.js +3 -1
  157. package/lib/controls/MaterialTextControl.js.map +1 -1
  158. package/lib/controls/MaterialTimeControl.d.ts +3 -6
  159. package/lib/controls/MaterialTimeControl.js +25 -29
  160. package/lib/controls/MaterialTimeControl.js.map +1 -1
  161. package/lib/controls/index.d.ts +10 -10
  162. package/lib/controls/index.js +16 -15
  163. package/lib/controls/index.js.map +1 -1
  164. package/lib/extended/MaterialAutocompleteEnumControl.d.ts +1 -1
  165. package/lib/extended/MaterialAutocompleteEnumControl.js +3 -1
  166. package/lib/extended/MaterialAutocompleteEnumControl.js.map +1 -1
  167. package/lib/extended/MaterialAutocompleteOneOfEnumControl.d.ts +1 -1
  168. package/lib/extended/MaterialAutocompleteOneOfEnumControl.js +3 -1
  169. package/lib/extended/MaterialAutocompleteOneOfEnumControl.js.map +1 -1
  170. package/lib/extended/MuiAutocomplete.d.ts +2 -2
  171. package/lib/extended/MuiAutocomplete.js +4 -3
  172. package/lib/extended/MuiAutocomplete.js.map +1 -1
  173. package/lib/extended/index.d.ts +2 -2
  174. package/lib/extended/index.js +2 -1
  175. package/lib/extended/index.js.map +1 -1
  176. package/lib/index.js +1 -0
  177. package/lib/index.js.map +1 -1
  178. package/lib/jsonforms-material.js +8 -8
  179. package/lib/jsonforms-material.js.map +1 -1
  180. package/lib/layouts/ArrayToolbar.js +1 -0
  181. package/lib/layouts/ArrayToolbar.js.map +1 -1
  182. package/lib/layouts/ExpandPanelRenderer.d.ts +3 -3
  183. package/lib/layouts/ExpandPanelRenderer.js +16 -13
  184. package/lib/layouts/ExpandPanelRenderer.js.map +1 -1
  185. package/lib/layouts/MaterialArrayLayout.d.ts +1 -11
  186. package/lib/layouts/MaterialArrayLayout.js +19 -31
  187. package/lib/layouts/MaterialArrayLayout.js.map +1 -1
  188. package/lib/layouts/MaterialArrayLayoutRenderer.d.ts +1 -1
  189. package/lib/layouts/MaterialArrayLayoutRenderer.js +3 -1
  190. package/lib/layouts/MaterialArrayLayoutRenderer.js.map +1 -1
  191. package/lib/layouts/MaterialCategorizationLayout.d.ts +2 -10
  192. package/lib/layouts/MaterialCategorizationLayout.js +31 -47
  193. package/lib/layouts/MaterialCategorizationLayout.js.map +1 -1
  194. package/lib/layouts/MaterialCategorizationStepperLayout.d.ts +2 -9
  195. package/lib/layouts/MaterialCategorizationStepperLayout.js +42 -53
  196. package/lib/layouts/MaterialCategorizationStepperLayout.js.map +1 -1
  197. package/lib/layouts/MaterialGroupLayout.d.ts +1 -1
  198. package/lib/layouts/MaterialGroupLayout.js +3 -1
  199. package/lib/layouts/MaterialGroupLayout.js.map +1 -1
  200. package/lib/layouts/MaterialHorizontalLayout.d.ts +1 -1
  201. package/lib/layouts/MaterialHorizontalLayout.js +3 -1
  202. package/lib/layouts/MaterialHorizontalLayout.js.map +1 -1
  203. package/lib/layouts/MaterialVerticalLayout.d.ts +1 -1
  204. package/lib/layouts/MaterialVerticalLayout.js +3 -1
  205. package/lib/layouts/MaterialVerticalLayout.js.map +1 -1
  206. package/lib/layouts/index.js +6 -5
  207. package/lib/layouts/index.js.map +1 -1
  208. package/lib/mui-controls/MuiCheckbox.js +2 -2
  209. package/lib/mui-controls/MuiCheckbox.js.map +1 -1
  210. package/lib/mui-controls/MuiInputInteger.js +9 -6
  211. package/lib/mui-controls/MuiInputInteger.js.map +1 -1
  212. package/lib/mui-controls/MuiInputNumber.js +9 -6
  213. package/lib/mui-controls/MuiInputNumber.js.map +1 -1
  214. package/lib/mui-controls/MuiInputNumberFormat.js +7 -8
  215. package/lib/mui-controls/MuiInputNumberFormat.js.map +1 -1
  216. package/lib/mui-controls/MuiInputText.js +11 -7
  217. package/lib/mui-controls/MuiInputText.js.map +1 -1
  218. package/lib/mui-controls/MuiInputTime.js +5 -3
  219. package/lib/mui-controls/MuiInputTime.js.map +1 -1
  220. package/lib/mui-controls/MuiSelect.js +3 -3
  221. package/lib/mui-controls/MuiSelect.js.map +1 -1
  222. package/lib/mui-controls/MuiToggle.js +2 -2
  223. package/lib/mui-controls/MuiToggle.js.map +1 -1
  224. package/lib/util/datejs.d.ts +2 -2
  225. package/lib/util/datejs.js +5 -2
  226. package/lib/util/datejs.js.map +1 -1
  227. package/lib/util/debounce.d.ts +1 -0
  228. package/lib/util/debounce.js +48 -0
  229. package/lib/util/debounce.js.map +1 -0
  230. package/lib/util/focus.d.ts +1 -0
  231. package/lib/util/focus.js +36 -0
  232. package/lib/util/focus.js.map +1 -0
  233. package/lib/util/index.d.ts +2 -0
  234. package/lib/util/index.js +3 -0
  235. package/lib/util/index.js.map +1 -1
  236. package/lib/util/layout.d.ts +2 -1
  237. package/lib/util/layout.js +8 -4
  238. package/lib/util/layout.js.map +1 -1
  239. package/package.json +5 -5
  240. package/src/cells/MaterialTimeCell.tsx +1 -0
  241. package/src/complex/MaterialAllOfRenderer.tsx +2 -1
  242. package/src/complex/MaterialAnyOfRenderer.tsx +2 -1
  243. package/src/complex/MaterialEnumArrayRenderer.tsx +1 -0
  244. package/src/complex/MaterialObjectRenderer.tsx +2 -1
  245. package/src/complex/MaterialOneOfRenderer.tsx +6 -6
  246. package/src/complex/MaterialTableControl.tsx +36 -24
  247. package/src/controls/MaterialAnyOfStringOrEnumControl.tsx +16 -12
  248. package/src/controls/MaterialDateControl.tsx +80 -85
  249. package/src/controls/MaterialDateTimeControl.tsx +83 -86
  250. package/src/controls/MaterialInputControl.tsx +62 -69
  251. package/src/controls/MaterialNativeControl.tsx +54 -57
  252. package/src/controls/MaterialRadioGroup.tsx +67 -69
  253. package/src/controls/MaterialSliderControl.tsx +92 -87
  254. package/src/controls/MaterialTimeControl.tsx +77 -80
  255. package/src/extended/MuiAutocomplete.tsx +2 -3
  256. package/src/layouts/ExpandPanelRenderer.tsx +11 -17
  257. package/src/layouts/MaterialArrayLayout.tsx +73 -82
  258. package/src/layouts/MaterialCategorizationLayout.tsx +49 -65
  259. package/src/layouts/MaterialCategorizationStepperLayout.tsx +79 -87
  260. package/src/mui-controls/MuiCheckbox.tsx +1 -2
  261. package/src/mui-controls/MuiInputInteger.tsx +12 -9
  262. package/src/mui-controls/MuiInputNumber.tsx +9 -6
  263. package/src/mui-controls/MuiInputNumberFormat.tsx +8 -11
  264. package/src/mui-controls/MuiInputText.tsx +17 -15
  265. package/src/mui-controls/MuiInputTime.tsx +6 -4
  266. package/src/mui-controls/MuiSelect.tsx +2 -3
  267. package/src/mui-controls/MuiToggle.tsx +1 -2
  268. package/src/util/debounce.ts +43 -0
  269. package/src/util/focus.ts +32 -0
  270. package/src/util/index.ts +2 -0
  271. package/src/util/layout.tsx +5 -6
  272. package/test/renderers/MaterialAnyOfRenderer.test.tsx +14 -8
  273. package/test/renderers/MaterialArrayLayout.test.tsx +6 -6
  274. package/test/renderers/MaterialCategorizationLayout.test.tsx +73 -0
  275. package/test/renderers/MaterialCategorizationStepperLayout.test.tsx +73 -0
  276. package/test/renderers/MaterialInputControl.test.tsx +3 -3
  277. package/test/renderers/MaterialIntegerCell.test.tsx +41 -20
  278. package/test/renderers/MaterialNumberCell.test.tsx +45 -24
  279. package/test/renderers/MaterialOneOfRenderer.test.tsx +7 -4
  280. package/test/renderers/MaterialTextCell.test.tsx +41 -20
  281. package/test/renderers/MaterialTimeCell.test.tsx +41 -20
  282. package/test/renderers/MaterialTimeControl.test.tsx +3 -3
  283. package/docs/classes/materialarraylayout.html +0 -777
  284. package/docs/classes/materialcategorizationlayoutrenderer.html +0 -786
  285. package/docs/classes/materialcategorizationstepperlayoutrenderer.html +0 -762
  286. package/docs/classes/materialdatecontrol.html +0 -825
  287. package/docs/classes/materialdatetimecontrol.html +0 -825
  288. package/docs/classes/materialinputcontrol.html +0 -825
  289. package/docs/classes/materialnativecontrol.html +0 -825
  290. package/docs/classes/materialradiogroup.html +0 -825
  291. package/docs/classes/materialslidercontrol.html +0 -825
  292. package/docs/classes/materialtimecontrol.html +0 -825
  293. package/docs/interfaces/materialarraylayoutstate.html +0 -157
@@ -196,7 +196,7 @@ describe('Material text cell', () => {
196
196
  expect(input.props().value).toBe('Foo');
197
197
  });
198
198
 
199
- it('should update via input event', () => {
199
+ it('should update via input event', (done) => {
200
200
  const core = initCore(minLengthSchema, uischema, data);
201
201
  const onChangeData: any = {
202
202
  data: undefined
@@ -214,10 +214,13 @@ describe('Material text cell', () => {
214
214
 
215
215
  const input = wrapper.find('input').first();
216
216
  input.simulate('change', { target: { value: 'Bar' } });
217
- expect(onChangeData.data.name).toBe('Bar');
217
+ setTimeout(() => {
218
+ expect(onChangeData.data.name).toBe('Bar');
219
+ done();
220
+ }, 1000);
218
221
  });
219
222
 
220
- it('should update via action', () => {
223
+ it('should update via action', (done) => {
221
224
  const core = initCore(minLengthSchema, uischema, data);
222
225
  wrapper = mount(
223
226
  <JsonFormsStateProvider initState={{ renderers: materialRenderers, core }}>
@@ -227,11 +230,14 @@ describe('Material text cell', () => {
227
230
  core.data = { ...core.data, name: 'Bar' };
228
231
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
229
232
  wrapper.update();
230
- const input = wrapper.find('input').first();
231
- expect(input.props().value).toBe('Bar');
233
+ setTimeout(() => {
234
+ const input = wrapper.find('input').first();
235
+ expect(input.props().value).toBe('Bar');
236
+ done();
237
+ }, 1000);
232
238
  });
233
239
 
234
- it('should update with undefined value', () => {
240
+ it('should update with undefined value', (done) => {
235
241
  const core = initCore(minLengthSchema, uischema, data);
236
242
  wrapper = mount(
237
243
  <JsonFormsStateProvider initState={{ renderers: materialRenderers, core }}>
@@ -241,11 +247,14 @@ describe('Material text cell', () => {
241
247
  core.data = { ...core.data, name: undefined };
242
248
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
243
249
  wrapper.update();
244
- const input = wrapper.find('input').first();
245
- expect(input.props().value).toBe('');
250
+ setTimeout(() => {
251
+ const input = wrapper.find('input').first();
252
+ expect(input.props().value).toBe('');
253
+ done();
254
+ }, 1000);
246
255
  });
247
256
 
248
- it('should update with null value', () => {
257
+ it('should update with null value', (done) => {
249
258
  const core = initCore(minLengthSchema, uischema, data);
250
259
  wrapper = mount(
251
260
  <JsonFormsStateProvider initState={{ renderers: materialRenderers, core }}>
@@ -255,11 +264,14 @@ describe('Material text cell', () => {
255
264
  core.data = { ...core.data, name: null };
256
265
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
257
266
  wrapper.update();
258
- const input = wrapper.find('input').first();
259
- expect(input.props().value).toBe('');
267
+ setTimeout(() => {
268
+ const input = wrapper.find('input').first();
269
+ expect(input.props().value).toBe('');
270
+ done();
271
+ }, 1000);
260
272
  });
261
273
 
262
- it('should not update if wrong ref', () => {
274
+ it('should not update if wrong ref', (done) => {
263
275
  const core = initCore(minLengthSchema, uischema, data);
264
276
  wrapper = mount(
265
277
  <JsonFormsStateProvider initState={{ renderers: materialRenderers, core }}>
@@ -269,11 +281,14 @@ describe('Material text cell', () => {
269
281
  core.data = { ...core.data, firstname: 'Bar' };
270
282
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
271
283
  wrapper.update();
272
- const input = wrapper.find('input').first();
273
- expect(input.props().value).toBe('Foo');
284
+ setTimeout(() => {
285
+ const input = wrapper.find('input').first();
286
+ expect(input.props().value).toBe('Foo');
287
+ done();
288
+ }, 1000);
274
289
  });
275
290
 
276
- it('should not update if null ref', () => {
291
+ it('should not update if null ref', (done) => {
277
292
  const core = initCore(minLengthSchema, uischema, data);
278
293
  wrapper = mount(
279
294
  <JsonFormsStateProvider initState={{ renderers: materialRenderers, core }}>
@@ -283,11 +298,14 @@ describe('Material text cell', () => {
283
298
  core.data = { ...core.data, null: 'Bar' };
284
299
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
285
300
  wrapper.update();
286
- const input = wrapper.find('input').first();
287
- expect(input.props().value).toBe('Foo');
301
+ setTimeout(() => {
302
+ const input = wrapper.find('input').first();
303
+ expect(input.props().value).toBe('Foo');
304
+ done();
305
+ }, 1000);
288
306
  });
289
307
 
290
- it('should not update if undefined ref', () => {
308
+ it('should not update if undefined ref', (done) => {
291
309
  const core = initCore(minLengthSchema, uischema, data);
292
310
  wrapper = mount(
293
311
  <JsonFormsStateProvider initState={{ renderers: materialRenderers, core }}>
@@ -297,8 +315,11 @@ describe('Material text cell', () => {
297
315
  core.data = { ...core.data, undefined: 'Bar' };
298
316
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
299
317
  wrapper.update();
300
- const input = wrapper.find('input').first();
301
- expect(input.props().value).toBe('Foo');
318
+ setTimeout(() => {
319
+ const input = wrapper.find('input').first();
320
+ expect(input.props().value).toBe('Foo');
321
+ done();
322
+ }, 1000);
302
323
  });
303
324
 
304
325
  it('can be disabled', () => {
@@ -174,7 +174,7 @@ describe('Material time cell', () => {
174
174
  expect(input.props().value).toBe('13:37');
175
175
  });
176
176
 
177
- it('should update via event', () => {
177
+ it('should update via event', (done) => {
178
178
  const core = initCore(schema, uischema, data);
179
179
  const onChangeData: any = {
180
180
  data: undefined
@@ -191,10 +191,13 @@ describe('Material time cell', () => {
191
191
  );
192
192
  const input = wrapper.find('input').first();
193
193
  input.simulate('change', { target: { value: '20:15' } });
194
- expect(onChangeData.data.foo).toBe('20:15');
194
+ setTimeout(() => {
195
+ expect(onChangeData.data.foo).toBe('20:15');
196
+ done();
197
+ }, 1000);
195
198
  });
196
199
 
197
- it('should update via action', () => {
200
+ it('should update via action', (done) => {
198
201
  const core = initCore(schema, uischema, data);
199
202
  wrapper = mount(
200
203
  <JsonFormsStateProvider initState={{ renderers: materialRenderers, core }}>
@@ -204,11 +207,14 @@ describe('Material time cell', () => {
204
207
  core.data = { ...core.data, foo: '20:15' };
205
208
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
206
209
  wrapper.update();
207
- const input = wrapper.find('input').first();
208
- expect(input.props().value).toBe('20:15');
210
+ setTimeout(() => {
211
+ const input = wrapper.find('input').first();
212
+ expect(input.props().value).toBe('20:15');
213
+ done();
214
+ }, 1000);
209
215
  });
210
216
 
211
- it('should update with null value', () => {
217
+ it('should update with null value', (done) => {
212
218
  const core = initCore(schema, uischema, data);
213
219
  wrapper = mount(
214
220
  <JsonFormsStateProvider initState={{ renderers: materialRenderers, core }}>
@@ -218,11 +224,14 @@ describe('Material time cell', () => {
218
224
  core.data = { ...core.data, foo: null };
219
225
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
220
226
  wrapper.update();
221
- const input = wrapper.find('input').first();
222
- expect(input.props().value).toBe('');
227
+ setTimeout(() => {
228
+ const input = wrapper.find('input').first();
229
+ expect(input.props().value).toBe('');
230
+ done();
231
+ }, 1000);
223
232
  });
224
233
 
225
- it('update with undefined value', () => {
234
+ it('update with undefined value', (done) => {
226
235
  const core = initCore(schema, uischema, data);
227
236
  wrapper = mount(
228
237
  <JsonFormsStateProvider initState={{ renderers: materialRenderers, core }}>
@@ -232,11 +241,14 @@ describe('Material time cell', () => {
232
241
  core.data = { ...core.data, foo: undefined };
233
242
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
234
243
  wrapper.update();
235
- const input = wrapper.find('input').first();
236
- expect(input.props().value).toBe('');
244
+ setTimeout(() => {
245
+ const input = wrapper.find('input').first();
246
+ expect(input.props().value).toBe('');
247
+ done();
248
+ }, 1000);
237
249
  });
238
250
 
239
- it('should update with wrong ref', () => {
251
+ it('should update with wrong ref', (done) => {
240
252
  const core = initCore(schema, uischema, data);
241
253
  wrapper = mount(
242
254
  <JsonFormsStateProvider initState={{ renderers: materialRenderers, core }}>
@@ -246,11 +258,14 @@ describe('Material time cell', () => {
246
258
  core.data = { ...core.data, bar: 'Bar' };
247
259
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
248
260
  wrapper.update();
249
- const input = wrapper.find('input').first();
250
- expect(input.props().value).toBe('13:37');
261
+ setTimeout(() => {
262
+ const input = wrapper.find('input').first();
263
+ expect(input.props().value).toBe('13:37');
264
+ done();
265
+ }, 1000);
251
266
  });
252
267
 
253
- it('should update with null ref', () => {
268
+ it('should update with null ref', (done) => {
254
269
  const core = initCore(schema, uischema, data);
255
270
  wrapper = mount(
256
271
  <JsonFormsStateProvider initState={{ renderers: materialRenderers, core }}>
@@ -260,11 +275,14 @@ describe('Material time cell', () => {
260
275
  core.data = { ...core.data, null: '20:15' };
261
276
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
262
277
  wrapper.update();
263
- const input = wrapper.find('input').first();
264
- expect(input.props().value).toBe('13:37');
278
+ setTimeout(() => {
279
+ const input = wrapper.find('input').first();
280
+ expect(input.props().value).toBe('13:37');
281
+ done();
282
+ }, 1000);
265
283
  });
266
284
 
267
- it('should update with undefined ref', () => {
285
+ it('should update with undefined ref', (done) => {
268
286
  const core = initCore(schema, uischema, data);
269
287
  wrapper = mount(
270
288
  <JsonFormsStateProvider initState={{ renderers: materialRenderers, core }}>
@@ -274,8 +292,11 @@ describe('Material time cell', () => {
274
292
  core.data = { ...core.data, undefined: '20:15' };
275
293
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
276
294
  wrapper.update();
277
- const input = wrapper.find('input').first();
278
- expect(input.props().value).toBe('13:37');
295
+ setTimeout(() => {
296
+ const input = wrapper.find('input').first();
297
+ expect(input.props().value).toBe('13:37');
298
+ done();
299
+ }, 1000);
279
300
  });
280
301
 
281
302
  it('can be disabled', () => {
@@ -40,7 +40,7 @@ import { initCore, TestEmitter } from './util';
40
40
 
41
41
  Enzyme.configure({ adapter: new Adapter() });
42
42
 
43
- const data = { foo: '13:37' };
43
+ const data = { foo: '13:37:05' };
44
44
  const schema = {
45
45
  type: 'object',
46
46
  properties: {
@@ -203,7 +203,7 @@ describe('Material time control', () => {
203
203
  );
204
204
  const input = wrapper.find('input').first();
205
205
  input.simulate('change', { target: { value: '08:40' } });
206
- expect(onChangeData.data.foo).toBe('08:40');
206
+ expect(onChangeData.data.foo).toBe('08:40:00');
207
207
  });
208
208
 
209
209
  it('should update via action', () => {
@@ -213,7 +213,7 @@ describe('Material time control', () => {
213
213
  <MaterialTimeControl schema={schema} uischema={uischema} />
214
214
  </JsonFormsStateProvider>
215
215
  );
216
- core.data = { ...core.data, foo: '08:40' };
216
+ core.data = { ...core.data, foo: '08:40:00' };
217
217
  wrapper.setProps({ initState: { renderers: materialRenderers, core }} );
218
218
  wrapper.update();
219
219
  const input = wrapper.find('input').first();