@wordpress/dataviews 9.1.1-next.f56bd8138.0 → 10.0.1-next.47f435fc9.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 (717) hide show
  1. package/CHANGELOG.md +41 -1
  2. package/README.md +43 -30
  3. package/build/components/dataform/index.js +42 -27
  4. package/build/components/dataform/index.js.map +7 -1
  5. package/build/components/dataform-context/index.js +33 -25
  6. package/build/components/dataform-context/index.js.map +7 -1
  7. package/build/components/dataviews/index.js +193 -156
  8. package/build/components/dataviews/index.js.map +7 -1
  9. package/build/components/dataviews-bulk-actions/index.js +264 -155
  10. package/build/components/dataviews-bulk-actions/index.js.map +7 -1
  11. package/build/components/dataviews-context/index.js +40 -36
  12. package/build/components/dataviews-context/index.js.map +7 -1
  13. package/build/components/dataviews-filters/add-filter.js +78 -73
  14. package/build/components/dataviews-filters/add-filter.js.map +7 -1
  15. package/build/components/dataviews-filters/filter.js +467 -262
  16. package/build/components/dataviews-filters/filter.js.map +7 -1
  17. package/build/components/dataviews-filters/filters-toggled.js +46 -0
  18. package/build/components/dataviews-filters/filters-toggled.js.map +7 -0
  19. package/build/components/dataviews-filters/filters.js +101 -0
  20. package/build/components/dataviews-filters/filters.js.map +7 -0
  21. package/build/components/dataviews-filters/index.js +46 -197
  22. package/build/components/dataviews-filters/index.js.map +7 -1
  23. package/build/components/dataviews-filters/input-widget.js +88 -89
  24. package/build/components/dataviews-filters/input-widget.js.map +7 -1
  25. package/build/components/dataviews-filters/reset-filters.js +50 -34
  26. package/build/components/dataviews-filters/reset-filters.js.map +7 -1
  27. package/build/components/dataviews-filters/search-widget.js +290 -205
  28. package/build/components/dataviews-filters/search-widget.js.map +7 -1
  29. package/build/components/dataviews-filters/toggle.js +124 -0
  30. package/build/components/dataviews-filters/toggle.js.map +7 -0
  31. package/build/components/dataviews-filters/use-filters.js +72 -0
  32. package/build/components/dataviews-filters/use-filters.js.map +7 -0
  33. package/build/components/dataviews-filters/utils.js +26 -10
  34. package/build/components/dataviews-filters/utils.js.map +7 -1
  35. package/build/components/dataviews-footer/index.js +54 -33
  36. package/build/components/dataviews-footer/index.js.map +7 -1
  37. package/build/components/dataviews-item-actions/index.js +187 -150
  38. package/build/components/dataviews-item-actions/index.js.map +7 -1
  39. package/build/components/dataviews-layout/index.js +64 -49
  40. package/build/components/dataviews-layout/index.js.map +7 -1
  41. package/build/components/dataviews-pagination/index.js +143 -99
  42. package/build/components/dataviews-pagination/index.js.map +7 -1
  43. package/build/components/dataviews-picker/footer.js +152 -101
  44. package/build/components/dataviews-picker/footer.js.map +7 -1
  45. package/build/components/dataviews-picker/index.js +173 -147
  46. package/build/components/dataviews-picker/index.js.map +7 -1
  47. package/build/components/dataviews-search/index.js +63 -46
  48. package/build/components/dataviews-search/index.js.map +7 -1
  49. package/build/components/dataviews-selection-checkbox/index.js +45 -35
  50. package/build/components/dataviews-selection-checkbox/index.js.map +7 -1
  51. package/build/components/dataviews-view-config/index.js +587 -512
  52. package/build/components/dataviews-view-config/index.js.map +7 -1
  53. package/build/components/dataviews-view-config/infinite-scroll-toggle.js +56 -39
  54. package/build/components/dataviews-view-config/infinite-scroll-toggle.js.map +7 -1
  55. package/build/constants.js +215 -108
  56. package/build/constants.js.map +7 -1
  57. package/build/dataform-controls/array.js +152 -141
  58. package/build/dataform-controls/array.js.map +7 -1
  59. package/build/dataform-controls/checkbox.js +79 -65
  60. package/build/dataform-controls/checkbox.js.map +7 -1
  61. package/build/dataform-controls/color.js +135 -118
  62. package/build/dataform-controls/color.js.map +7 -1
  63. package/build/dataform-controls/date.js +549 -350
  64. package/build/dataform-controls/date.js.map +7 -1
  65. package/build/dataform-controls/datetime.js +212 -146
  66. package/build/dataform-controls/datetime.js.map +7 -1
  67. package/build/dataform-controls/email.js +49 -31
  68. package/build/dataform-controls/email.js.map +7 -1
  69. package/build/dataform-controls/index.js +82 -63
  70. package/build/dataform-controls/index.js.map +7 -1
  71. package/build/dataform-controls/integer.js +36 -129
  72. package/build/dataform-controls/integer.js.map +7 -1
  73. package/build/dataform-controls/number.js +39 -0
  74. package/build/dataform-controls/number.js.map +7 -0
  75. package/build/dataform-controls/password.js +63 -37
  76. package/build/dataform-controls/password.js.map +7 -1
  77. package/build/dataform-controls/radio.js +82 -66
  78. package/build/dataform-controls/radio.js.map +7 -1
  79. package/build/dataform-controls/select.js +86 -87
  80. package/build/dataform-controls/select.js.map +7 -1
  81. package/build/dataform-controls/telephone.js +49 -31
  82. package/build/dataform-controls/telephone.js.map +7 -1
  83. package/build/dataform-controls/text.js +49 -29
  84. package/build/dataform-controls/text.js.map +7 -1
  85. package/build/dataform-controls/textarea.js +85 -70
  86. package/build/dataform-controls/textarea.js.map +7 -1
  87. package/build/dataform-controls/toggle-group.js +95 -70
  88. package/build/dataform-controls/toggle-group.js.map +7 -1
  89. package/build/dataform-controls/toggle.js +80 -66
  90. package/build/dataform-controls/toggle.js.map +7 -1
  91. package/build/dataform-controls/url.js +49 -31
  92. package/build/dataform-controls/url.js.map +7 -1
  93. package/build/dataform-controls/utils/relative-date-control.js +122 -0
  94. package/build/dataform-controls/utils/relative-date-control.js.map +7 -0
  95. package/build/dataform-controls/utils/validated-input.js +90 -70
  96. package/build/dataform-controls/utils/validated-input.js.map +7 -1
  97. package/build/dataform-controls/utils/validated-number.js +191 -0
  98. package/build/dataform-controls/utils/validated-number.js.map +7 -0
  99. package/build/dataform-layouts/card/index.js +214 -0
  100. package/build/dataform-layouts/card/index.js.map +7 -0
  101. package/build/dataform-layouts/data-form-layout.js +89 -0
  102. package/build/dataform-layouts/data-form-layout.js.map +7 -0
  103. package/build/dataform-layouts/get-summary-fields.js +45 -0
  104. package/build/dataform-layouts/get-summary-fields.js.map +7 -0
  105. package/build/dataform-layouts/index.js +99 -0
  106. package/build/dataform-layouts/index.js.map +7 -0
  107. package/build/dataform-layouts/is-combined-field.js +31 -0
  108. package/build/dataform-layouts/is-combined-field.js.map +7 -0
  109. package/build/dataform-layouts/normalize-form-fields.js +104 -0
  110. package/build/dataform-layouts/normalize-form-fields.js.map +7 -0
  111. package/build/dataform-layouts/panel/dropdown.js +147 -0
  112. package/build/dataform-layouts/panel/dropdown.js.map +7 -0
  113. package/build/dataform-layouts/panel/index.js +150 -0
  114. package/build/dataform-layouts/panel/index.js.map +7 -0
  115. package/build/dataform-layouts/panel/modal.js +166 -0
  116. package/build/dataform-layouts/panel/modal.js.map +7 -0
  117. package/build/dataform-layouts/panel/summary-button.js +93 -0
  118. package/build/dataform-layouts/panel/summary-button.js.map +7 -0
  119. package/build/dataform-layouts/regular/index.js +135 -0
  120. package/build/dataform-layouts/regular/index.js.map +7 -0
  121. package/build/dataform-layouts/row/index.js +116 -0
  122. package/build/dataform-layouts/row/index.js.map +7 -0
  123. package/build/dataviews-layouts/grid/index.js +337 -278
  124. package/build/dataviews-layouts/grid/index.js.map +7 -1
  125. package/build/dataviews-layouts/grid/preview-size-picker.js +94 -69
  126. package/build/dataviews-layouts/grid/preview-size-picker.js.map +7 -1
  127. package/build/dataviews-layouts/index.js +75 -48
  128. package/build/dataviews-layouts/index.js.map +7 -1
  129. package/build/dataviews-layouts/list/index.js +441 -354
  130. package/build/dataviews-layouts/list/index.js.map +7 -1
  131. package/build/dataviews-layouts/picker-grid/index.js +366 -297
  132. package/build/dataviews-layouts/picker-grid/index.js.map +7 -1
  133. package/build/dataviews-layouts/table/column-header-menu.js +144 -133
  134. package/build/dataviews-layouts/table/column-header-menu.js.map +7 -1
  135. package/build/dataviews-layouts/table/column-primary.js +86 -66
  136. package/build/dataviews-layouts/table/column-primary.js.map +7 -1
  137. package/build/dataviews-layouts/table/density-picker.js +86 -46
  138. package/build/dataviews-layouts/table/density-picker.js.map +7 -1
  139. package/build/dataviews-layouts/table/index.js +354 -319
  140. package/build/dataviews-layouts/table/index.js.map +7 -1
  141. package/build/dataviews-layouts/table/use-is-horizontal-scroll-end.js +55 -47
  142. package/build/dataviews-layouts/table/use-is-horizontal-scroll-end.js.map +7 -1
  143. package/build/dataviews-layouts/utils/get-data-by-group.js +24 -13
  144. package/build/dataviews-layouts/utils/get-data-by-group.js.map +7 -1
  145. package/build/dataviews-layouts/utils/grid-items.js +51 -34
  146. package/build/dataviews-layouts/utils/grid-items.js.map +7 -1
  147. package/build/dataviews-layouts/utils/item-click-wrapper.js +53 -31
  148. package/build/dataviews-layouts/utils/item-click-wrapper.js.map +7 -1
  149. package/build/dataviews-layouts/utils/preview-size-picker.js +94 -69
  150. package/build/dataviews-layouts/utils/preview-size-picker.js.map +7 -1
  151. package/build/field-types/array.js +46 -41
  152. package/build/field-types/array.js.map +7 -1
  153. package/build/field-types/boolean.js +50 -46
  154. package/build/field-types/boolean.js.map +7 -1
  155. package/build/field-types/color.js +78 -80
  156. package/build/field-types/color.js.map +7 -1
  157. package/build/field-types/date.js +67 -47
  158. package/build/field-types/date.js.map +7 -1
  159. package/build/field-types/datetime.js +61 -43
  160. package/build/field-types/datetime.js.map +7 -1
  161. package/build/field-types/email.js +57 -47
  162. package/build/field-types/email.js.map +7 -1
  163. package/build/field-types/index.js +83 -89
  164. package/build/field-types/index.js.map +7 -1
  165. package/build/field-types/integer.js +67 -45
  166. package/build/field-types/integer.js.map +7 -1
  167. package/build/field-types/media.js +25 -27
  168. package/build/field-types/media.js.map +7 -1
  169. package/build/field-types/number.js +86 -0
  170. package/build/field-types/number.js.map +7 -0
  171. package/build/field-types/password.js +39 -39
  172. package/build/field-types/password.js.map +7 -1
  173. package/build/field-types/telephone.js +54 -45
  174. package/build/field-types/telephone.js.map +7 -1
  175. package/build/field-types/text.js +54 -46
  176. package/build/field-types/text.js.map +7 -1
  177. package/build/field-types/url.js +54 -45
  178. package/build/field-types/url.js.map +7 -1
  179. package/build/field-types/utils/render-from-elements.js +31 -0
  180. package/build/field-types/utils/render-from-elements.js.map +7 -0
  181. package/build/index.js +50 -45
  182. package/build/index.js.map +7 -1
  183. package/build/lock-unlock.js +31 -14
  184. package/build/lock-unlock.js.map +7 -1
  185. package/build/types/dataform.js +17 -0
  186. package/build/types/dataform.js.map +7 -0
  187. package/build/types/dataviews.js +17 -0
  188. package/build/types/dataviews.js.map +7 -0
  189. package/build/types/field-api.js +17 -0
  190. package/build/types/field-api.js.map +7 -0
  191. package/build/types/index.js +17 -0
  192. package/build/types/index.js.map +7 -0
  193. package/build/types/private.js +17 -0
  194. package/build/types/private.js.map +7 -0
  195. package/build/utils/filter-sort-and-paginate.js +285 -0
  196. package/build/utils/filter-sort-and-paginate.js.map +7 -0
  197. package/build/utils/is-item-valid.js +75 -0
  198. package/build/utils/is-item-valid.js.map +7 -0
  199. package/build/utils/normalize-fields.js +158 -0
  200. package/build/utils/normalize-fields.js.map +7 -0
  201. package/build-module/components/dataform/index.js +15 -24
  202. package/build-module/components/dataform/index.js.map +7 -1
  203. package/build-module/components/dataform-context/index.js +11 -19
  204. package/build-module/components/dataform-context/index.js.map +7 -1
  205. package/build-module/components/dataviews/index.js +156 -131
  206. package/build-module/components/dataviews/index.js.map +7 -1
  207. package/build-module/components/dataviews-bulk-actions/index.js +227 -140
  208. package/build-module/components/dataviews-bulk-actions/index.js.map +7 -1
  209. package/build-module/components/dataviews-context/index.js +20 -30
  210. package/build-module/components/dataviews-context/index.js.map +7 -1
  211. package/build-module/components/dataviews-filters/add-filter.js +60 -68
  212. package/build-module/components/dataviews-filters/add-filter.js.map +7 -1
  213. package/build-module/components/dataviews-filters/filter.js +448 -231
  214. package/build-module/components/dataviews-filters/filter.js.map +7 -1
  215. package/build-module/components/dataviews-filters/filters-toggled.js +16 -0
  216. package/build-module/components/dataviews-filters/filters-toggled.js.map +7 -0
  217. package/build-module/components/dataviews-filters/filters.js +71 -0
  218. package/build-module/components/dataviews-filters/filters.js.map +7 -0
  219. package/build-module/components/dataviews-filters/index.js +11 -187
  220. package/build-module/components/dataviews-filters/index.js.map +7 -1
  221. package/build-module/components/dataviews-filters/input-widget.js +57 -81
  222. package/build-module/components/dataviews-filters/input-widget.js.map +7 -1
  223. package/build-module/components/dataviews-filters/reset-filters.js +33 -30
  224. package/build-module/components/dataviews-filters/reset-filters.js.map +7 -1
  225. package/build-module/components/dataviews-filters/search-widget.js +260 -195
  226. package/build-module/components/dataviews-filters/search-widget.js.map +7 -1
  227. package/build-module/components/dataviews-filters/toggle.js +94 -0
  228. package/build-module/components/dataviews-filters/toggle.js.map +7 -0
  229. package/build-module/components/dataviews-filters/use-filters.js +52 -0
  230. package/build-module/components/dataviews-filters/use-filters.js.map +7 -0
  231. package/build-module/components/dataviews-filters/utils.js +5 -6
  232. package/build-module/components/dataviews-filters/utils.js.map +7 -1
  233. package/build-module/components/dataviews-footer/index.js +28 -26
  234. package/build-module/components/dataviews-footer/index.js.map +7 -1
  235. package/build-module/components/dataviews-item-actions/index.js +170 -144
  236. package/build-module/components/dataviews-item-actions/index.js.map +7 -1
  237. package/build-module/components/dataviews-layout/index.js +35 -42
  238. package/build-module/components/dataviews-layout/index.js.map +7 -1
  239. package/build-module/components/dataviews-pagination/index.js +115 -92
  240. package/build-module/components/dataviews-pagination/index.js.map +7 -1
  241. package/build-module/components/dataviews-picker/footer.js +122 -93
  242. package/build-module/components/dataviews-picker/footer.js.map +7 -1
  243. package/build-module/components/dataviews-picker/index.js +139 -125
  244. package/build-module/components/dataviews-picker/index.js.map +7 -1
  245. package/build-module/components/dataviews-search/index.js +30 -35
  246. package/build-module/components/dataviews-search/index.js.map +7 -1
  247. package/build-module/components/dataviews-selection-checkbox/index.js +28 -31
  248. package/build-module/components/dataviews-selection-checkbox/index.js.map +7 -1
  249. package/build-module/components/dataviews-view-config/index.js +579 -504
  250. package/build-module/components/dataviews-view-config/index.js.map +7 -1
  251. package/build-module/components/dataviews-view-config/infinite-scroll-toggle.js +28 -33
  252. package/build-module/components/dataviews-view-config/infinite-scroll-toggle.js.map +7 -1
  253. package/build-module/constants.js +157 -101
  254. package/build-module/constants.js.map +7 -1
  255. package/build-module/dataform-controls/array.js +125 -137
  256. package/build-module/dataform-controls/array.js.map +7 -1
  257. package/build-module/dataform-controls/checkbox.js +51 -60
  258. package/build-module/dataform-controls/checkbox.js.map +7 -1
  259. package/build-module/dataform-controls/color.js +112 -114
  260. package/build-module/dataform-controls/color.js.map +7 -1
  261. package/build-module/dataform-controls/date.js +541 -337
  262. package/build-module/dataform-controls/date.js.map +7 -1
  263. package/build-module/dataform-controls/datetime.js +184 -136
  264. package/build-module/dataform-controls/datetime.js.map +7 -1
  265. package/build-module/dataform-controls/email.js +25 -27
  266. package/build-module/dataform-controls/email.js.map +7 -1
  267. package/build-module/dataform-controls/index.js +35 -43
  268. package/build-module/dataform-controls/index.js.map +7 -1
  269. package/build-module/dataform-controls/integer.js +8 -123
  270. package/build-module/dataform-controls/integer.js.map +7 -1
  271. package/build-module/dataform-controls/number.js +9 -0
  272. package/build-module/dataform-controls/number.js.map +7 -0
  273. package/build-module/dataform-controls/password.js +34 -29
  274. package/build-module/dataform-controls/password.js.map +7 -1
  275. package/build-module/dataform-controls/radio.js +55 -62
  276. package/build-module/dataform-controls/radio.js.map +7 -1
  277. package/build-module/dataform-controls/select.js +59 -83
  278. package/build-module/dataform-controls/select.js.map +7 -1
  279. package/build-module/dataform-controls/telephone.js +25 -27
  280. package/build-module/dataform-controls/telephone.js.map +7 -1
  281. package/build-module/dataform-controls/text.js +22 -25
  282. package/build-module/dataform-controls/text.js.map +7 -1
  283. package/build-module/dataform-controls/textarea.js +58 -66
  284. package/build-module/dataform-controls/textarea.js.map +7 -1
  285. package/build-module/dataform-controls/toggle-group.js +71 -66
  286. package/build-module/dataform-controls/toggle-group.js.map +7 -1
  287. package/build-module/dataform-controls/toggle.js +52 -61
  288. package/build-module/dataform-controls/toggle.js.map +7 -1
  289. package/build-module/dataform-controls/url.js +25 -27
  290. package/build-module/dataform-controls/url.js.map +7 -1
  291. package/build-module/dataform-controls/utils/relative-date-control.js +97 -0
  292. package/build-module/dataform-controls/utils/relative-date-control.js.map +7 -0
  293. package/build-module/dataform-controls/utils/validated-input.js +63 -66
  294. package/build-module/dataform-controls/utils/validated-input.js.map +7 -1
  295. package/build-module/dataform-controls/utils/validated-number.js +166 -0
  296. package/build-module/dataform-controls/utils/validated-number.js.map +7 -0
  297. package/build-module/dataform-layouts/card/index.js +180 -0
  298. package/build-module/dataform-layouts/card/index.js.map +7 -0
  299. package/build-module/dataform-layouts/data-form-layout.js +55 -0
  300. package/build-module/dataform-layouts/data-form-layout.js.map +7 -0
  301. package/build-module/dataform-layouts/get-summary-fields.js +21 -0
  302. package/build-module/dataform-layouts/get-summary-fields.js.map +7 -0
  303. package/build-module/dataform-layouts/index.js +68 -0
  304. package/build-module/dataform-layouts/index.js.map +7 -0
  305. package/build-module/dataform-layouts/is-combined-field.js +7 -0
  306. package/build-module/dataform-layouts/is-combined-field.js.map +7 -0
  307. package/build-module/dataform-layouts/normalize-form-fields.js +79 -0
  308. package/build-module/dataform-layouts/normalize-form-fields.js.map +7 -0
  309. package/build-module/dataform-layouts/panel/dropdown.js +124 -0
  310. package/build-module/dataform-layouts/panel/dropdown.js.map +7 -0
  311. package/build-module/dataform-layouts/panel/index.js +123 -0
  312. package/build-module/dataform-layouts/panel/index.js.map +7 -0
  313. package/build-module/dataform-layouts/panel/modal.js +141 -0
  314. package/build-module/dataform-layouts/panel/modal.js.map +7 -0
  315. package/build-module/dataform-layouts/panel/summary-button.js +73 -0
  316. package/build-module/dataform-layouts/panel/summary-button.js.map +7 -0
  317. package/build-module/dataform-layouts/regular/index.js +111 -0
  318. package/build-module/dataform-layouts/regular/index.js.map +7 -0
  319. package/build-module/dataform-layouts/row/index.js +91 -0
  320. package/build-module/dataform-layouts/row/index.js.map +7 -0
  321. package/build-module/dataviews-layouts/grid/index.js +316 -267
  322. package/build-module/dataviews-layouts/grid/index.js.map +7 -1
  323. package/build-module/dataviews-layouts/grid/preview-size-picker.js +66 -63
  324. package/build-module/dataviews-layouts/grid/preview-size-picker.js.map +7 -1
  325. package/build-module/dataviews-layouts/index.js +53 -42
  326. package/build-module/dataviews-layouts/index.js.map +7 -1
  327. package/build-module/dataviews-layouts/list/index.js +422 -339
  328. package/build-module/dataviews-layouts/list/index.js.map +7 -1
  329. package/build-module/dataviews-layouts/picker-grid/index.js +344 -288
  330. package/build-module/dataviews-layouts/picker-grid/index.js.map +7 -1
  331. package/build-module/dataviews-layouts/table/column-header-menu.js +129 -127
  332. package/build-module/dataviews-layouts/table/column-header-menu.js.map +7 -1
  333. package/build-module/dataviews-layouts/table/column-primary.js +71 -62
  334. package/build-module/dataviews-layouts/table/column-primary.js.map +7 -1
  335. package/build-module/dataviews-layouts/table/density-picker.js +61 -40
  336. package/build-module/dataviews-layouts/table/density-picker.js.map +7 -1
  337. package/build-module/dataviews-layouts/table/index.js +326 -302
  338. package/build-module/dataviews-layouts/table/index.js.map +7 -1
  339. package/build-module/dataviews-layouts/table/use-is-horizontal-scroll-end.js +31 -40
  340. package/build-module/dataviews-layouts/table/use-is-horizontal-scroll-end.js.map +7 -1
  341. package/build-module/dataviews-layouts/utils/get-data-by-group.js +7 -10
  342. package/build-module/dataviews-layouts/utils/get-data-by-group.js.map +7 -1
  343. package/build-module/dataviews-layouts/utils/grid-items.js +19 -28
  344. package/build-module/dataviews-layouts/utils/grid-items.js.map +7 -1
  345. package/build-module/dataviews-layouts/utils/item-click-wrapper.js +32 -28
  346. package/build-module/dataviews-layouts/utils/item-click-wrapper.js.map +7 -1
  347. package/build-module/dataviews-layouts/utils/preview-size-picker.js +66 -63
  348. package/build-module/dataviews-layouts/utils/preview-size-picker.js.map +7 -1
  349. package/build-module/field-types/array.js +32 -37
  350. package/build-module/field-types/array.js.map +7 -1
  351. package/build-module/field-types/boolean.js +20 -40
  352. package/build-module/field-types/boolean.js.map +7 -1
  353. package/build-module/field-types/color.js +50 -71
  354. package/build-module/field-types/color.js.map +7 -1
  355. package/build-module/field-types/date.js +49 -43
  356. package/build-module/field-types/date.js.map +7 -1
  357. package/build-module/field-types/datetime.js +42 -39
  358. package/build-module/field-types/datetime.js.map +7 -1
  359. package/build-module/field-types/email.js +38 -42
  360. package/build-module/field-types/email.js.map +7 -1
  361. package/build-module/field-types/index.js +42 -72
  362. package/build-module/field-types/index.js.map +7 -1
  363. package/build-module/field-types/integer.js +51 -41
  364. package/build-module/field-types/integer.js.map +7 -1
  365. package/build-module/field-types/media.js +7 -23
  366. package/build-module/field-types/media.js.map +7 -1
  367. package/build-module/field-types/number.js +78 -0
  368. package/build-module/field-types/number.js.map +7 -0
  369. package/build-module/field-types/password.js +11 -36
  370. package/build-module/field-types/password.js.map +7 -1
  371. package/build-module/field-types/telephone.js +35 -40
  372. package/build-module/field-types/telephone.js.map +7 -1
  373. package/build-module/field-types/text.js +35 -41
  374. package/build-module/field-types/text.js.map +7 -1
  375. package/build-module/field-types/url.js +35 -40
  376. package/build-module/field-types/url.js.map +7 -1
  377. package/build-module/field-types/utils/render-from-elements.js +11 -0
  378. package/build-module/field-types/utils/render-from-elements.js.map +7 -0
  379. package/build-module/index.js +15 -7
  380. package/build-module/index.js.map +7 -1
  381. package/build-module/lock-unlock.js +8 -7
  382. package/build-module/lock-unlock.js.map +7 -1
  383. package/build-module/types/dataform.js +1 -0
  384. package/build-module/types/dataform.js.map +7 -0
  385. package/build-module/types/dataviews.js +1 -0
  386. package/build-module/types/dataviews.js.map +7 -0
  387. package/build-module/types/field-api.js +1 -0
  388. package/build-module/types/field-api.js.map +7 -0
  389. package/build-module/types/index.js +1 -0
  390. package/build-module/types/index.js.map +7 -0
  391. package/build-module/types/private.js +1 -0
  392. package/build-module/types/private.js.map +7 -0
  393. package/build-module/utils/filter-sort-and-paginate.js +278 -0
  394. package/build-module/utils/filter-sort-and-paginate.js.map +7 -0
  395. package/build-module/utils/is-item-valid.js +45 -0
  396. package/build-module/utils/is-item-valid.js.map +7 -0
  397. package/build-module/utils/normalize-fields.js +132 -0
  398. package/build-module/utils/normalize-fields.js.map +7 -0
  399. package/build-style/style-rtl.css +73 -216
  400. package/build-style/style.css +73 -216
  401. package/build-types/components/dataviews/index.d.ts +3 -2
  402. package/build-types/components/dataviews/index.d.ts.map +1 -1
  403. package/build-types/components/dataviews-bulk-actions/index.d.ts +1 -1
  404. package/build-types/components/dataviews-bulk-actions/index.d.ts.map +1 -1
  405. package/build-types/components/dataviews-context/index.d.ts +1 -1
  406. package/build-types/components/dataviews-filters/filters-toggled.d.ts +5 -0
  407. package/build-types/components/dataviews-filters/filters-toggled.d.ts.map +1 -0
  408. package/build-types/components/dataviews-filters/filters.d.ts +6 -0
  409. package/build-types/components/dataviews-filters/filters.d.ts.map +1 -0
  410. package/build-types/components/dataviews-filters/index.d.ts +4 -8
  411. package/build-types/components/dataviews-filters/index.d.ts.map +1 -1
  412. package/build-types/components/dataviews-filters/toggle.d.ts +3 -0
  413. package/build-types/components/dataviews-filters/toggle.d.ts.map +1 -0
  414. package/build-types/components/dataviews-filters/use-filters.d.ts +4 -0
  415. package/build-types/components/dataviews-filters/use-filters.d.ts.map +1 -0
  416. package/build-types/components/dataviews-item-actions/index.d.ts.map +1 -1
  417. package/build-types/components/dataviews-picker/footer.d.ts.map +1 -1
  418. package/build-types/components/dataviews-picker/index.d.ts +3 -2
  419. package/build-types/components/dataviews-picker/index.d.ts.map +1 -1
  420. package/build-types/components/dataviews-selection-checkbox/index.d.ts +1 -1
  421. package/build-types/dataform-controls/date.d.ts.map +1 -1
  422. package/build-types/dataform-controls/datetime.d.ts.map +1 -1
  423. package/build-types/dataform-controls/index.d.ts.map +1 -1
  424. package/build-types/dataform-controls/integer.d.ts +4 -1
  425. package/build-types/dataform-controls/integer.d.ts.map +1 -1
  426. package/build-types/dataform-controls/number.d.ts +6 -0
  427. package/build-types/dataform-controls/number.d.ts.map +1 -0
  428. package/build-types/dataform-controls/select.d.ts.map +1 -1
  429. package/build-types/dataform-controls/utils/relative-date-control.d.ts +5 -0
  430. package/build-types/dataform-controls/utils/relative-date-control.d.ts.map +1 -0
  431. package/build-types/dataform-controls/utils/validated-number.d.ts +9 -0
  432. package/build-types/dataform-controls/utils/validated-number.d.ts.map +1 -0
  433. package/build-types/dataform-layouts/card/index.d.ts.map +1 -0
  434. package/build-types/dataform-layouts/data-form-layout.d.ts.map +1 -0
  435. package/build-types/dataform-layouts/get-summary-fields.d.ts +12 -0
  436. package/build-types/dataform-layouts/get-summary-fields.d.ts.map +1 -0
  437. package/build-types/{dataforms-layouts → dataform-layouts}/index.d.ts +0 -5
  438. package/build-types/dataform-layouts/index.d.ts.map +1 -0
  439. package/build-types/dataform-layouts/is-combined-field.d.ts.map +1 -0
  440. package/build-types/{normalize-form-fields.d.ts → dataform-layouts/normalize-form-fields.d.ts} +1 -1
  441. package/build-types/dataform-layouts/normalize-form-fields.d.ts.map +1 -0
  442. package/build-types/dataform-layouts/panel/dropdown.d.ts.map +1 -0
  443. package/build-types/dataform-layouts/panel/index.d.ts.map +1 -0
  444. package/build-types/dataform-layouts/panel/modal.d.ts.map +1 -0
  445. package/build-types/dataform-layouts/panel/summary-button.d.ts.map +1 -0
  446. package/build-types/dataform-layouts/regular/index.d.ts.map +1 -0
  447. package/build-types/dataform-layouts/row/index.d.ts.map +1 -0
  448. package/build-types/dataviews-layouts/list/index.d.ts.map +1 -1
  449. package/build-types/dataviews-layouts/picker-grid/index.d.ts.map +1 -1
  450. package/build-types/dataviews-layouts/utils/item-click-wrapper.d.ts +1 -1
  451. package/build-types/dataviews-layouts/utils/item-click-wrapper.d.ts.map +1 -1
  452. package/build-types/field-types/array.d.ts.map +1 -1
  453. package/build-types/field-types/boolean.d.ts +1 -0
  454. package/build-types/field-types/boolean.d.ts.map +1 -1
  455. package/build-types/field-types/color.d.ts +2 -1
  456. package/build-types/field-types/color.d.ts.map +1 -1
  457. package/build-types/field-types/date.d.ts +3 -2
  458. package/build-types/field-types/date.d.ts.map +1 -1
  459. package/build-types/field-types/datetime.d.ts +3 -2
  460. package/build-types/field-types/datetime.d.ts.map +1 -1
  461. package/build-types/field-types/email.d.ts +3 -2
  462. package/build-types/field-types/email.d.ts.map +1 -1
  463. package/build-types/field-types/index.d.ts.map +1 -1
  464. package/build-types/field-types/integer.d.ts +2 -1
  465. package/build-types/field-types/integer.d.ts.map +1 -1
  466. package/build-types/field-types/media.d.ts +2 -5
  467. package/build-types/field-types/media.d.ts.map +1 -1
  468. package/build-types/field-types/number.d.ts +21 -0
  469. package/build-types/field-types/number.d.ts.map +1 -0
  470. package/build-types/field-types/password.d.ts +3 -2
  471. package/build-types/field-types/password.d.ts.map +1 -1
  472. package/build-types/field-types/telephone.d.ts +4 -3
  473. package/build-types/field-types/telephone.d.ts.map +1 -1
  474. package/build-types/field-types/text.d.ts +4 -3
  475. package/build-types/field-types/text.d.ts.map +1 -1
  476. package/build-types/field-types/url.d.ts +4 -3
  477. package/build-types/field-types/url.d.ts.map +1 -1
  478. package/build-types/field-types/utils/render-from-elements.d.ts +6 -0
  479. package/build-types/field-types/utils/render-from-elements.d.ts.map +1 -0
  480. package/build-types/index.d.ts +2 -2
  481. package/build-types/index.d.ts.map +1 -1
  482. package/build-types/{components/dataform/stories/index.story.d.ts → stories/dataform.story.d.ts} +2 -2
  483. package/build-types/stories/dataform.story.d.ts.map +1 -0
  484. package/build-types/{components/dataviews-picker/stories/index.story.d.ts → stories/dataviews-picker.story.d.ts} +2 -2
  485. package/build-types/stories/dataviews-picker.story.d.ts.map +1 -0
  486. package/build-types/{components/dataviews/stories/fixtures.d.ts → stories/dataviews.fixtures.d.ts} +2 -2
  487. package/build-types/stories/dataviews.fixtures.d.ts.map +1 -0
  488. package/build-types/{components/dataviews/stories/index.story.d.ts → stories/dataviews.story.d.ts} +3 -3
  489. package/build-types/stories/dataviews.story.d.ts.map +1 -0
  490. package/build-types/stories/field-types.story.d.ts +134 -0
  491. package/build-types/stories/field-types.story.d.ts.map +1 -0
  492. package/build-types/types/dataform.d.ts +109 -0
  493. package/build-types/types/dataform.d.ts.map +1 -0
  494. package/build-types/types/dataviews.d.ts +333 -0
  495. package/build-types/types/dataviews.d.ts.map +1 -0
  496. package/build-types/types/field-api.d.ts +274 -0
  497. package/build-types/types/field-api.d.ts.map +1 -0
  498. package/build-types/types/index.d.ts +4 -0
  499. package/build-types/types/index.d.ts.map +1 -0
  500. package/build-types/{private-types.d.ts → types/private.d.ts} +1 -1
  501. package/build-types/types/private.d.ts.map +1 -0
  502. package/build-types/{filter-and-sort-data-view.d.ts → utils/filter-sort-and-paginate.d.ts} +3 -3
  503. package/build-types/utils/filter-sort-and-paginate.d.ts.map +1 -0
  504. package/build-types/{validation.d.ts → utils/is-item-valid.d.ts} +3 -3
  505. package/build-types/utils/is-item-valid.d.ts.map +1 -0
  506. package/build-types/utils/normalize-fields.d.ts +9 -0
  507. package/build-types/utils/normalize-fields.d.ts.map +1 -0
  508. package/build-wp/index.js +2471 -2212
  509. package/package.json +17 -19
  510. package/src/components/dataform/index.tsx +2 -2
  511. package/src/components/dataviews/index.tsx +10 -16
  512. package/src/components/dataviews/style.scss +4 -0
  513. package/src/components/dataviews-bulk-actions/index.tsx +1 -2
  514. package/src/components/dataviews-bulk-actions/style.scss +3 -0
  515. package/src/components/dataviews-context/index.ts +1 -1
  516. package/src/components/dataviews-filters/filters-toggled.tsx +20 -0
  517. package/src/components/dataviews-filters/filters.tsx +73 -0
  518. package/src/components/dataviews-filters/index.tsx +4 -246
  519. package/src/components/dataviews-filters/style.scss +13 -6
  520. package/src/components/dataviews-filters/toggle.tsx +118 -0
  521. package/src/components/dataviews-filters/use-filters.ts +73 -0
  522. package/src/components/dataviews-footer/style.scss +4 -0
  523. package/src/components/dataviews-item-actions/index.tsx +0 -1
  524. package/src/components/dataviews-item-actions/style.scss +3 -0
  525. package/src/components/dataviews-pagination/style.scss +3 -0
  526. package/src/components/dataviews-picker/footer.tsx +2 -4
  527. package/src/components/dataviews-picker/index.tsx +10 -16
  528. package/src/components/dataviews-picker/style.scss +2 -0
  529. package/src/components/dataviews-selection-checkbox/index.tsx +1 -1
  530. package/src/components/dataviews-selection-checkbox/style.scss +3 -0
  531. package/src/components/dataviews-view-config/style.scss +3 -0
  532. package/src/dataform-controls/date.tsx +372 -222
  533. package/src/dataform-controls/datetime.tsx +125 -59
  534. package/src/dataform-controls/index.tsx +2 -0
  535. package/src/dataform-controls/integer.tsx +3 -179
  536. package/src/dataform-controls/number.tsx +10 -0
  537. package/src/dataform-controls/select.tsx +1 -20
  538. package/src/dataform-controls/style.scss +2 -0
  539. package/src/dataform-controls/{relative-date-control.tsx → utils/relative-date-control.tsx} +37 -25
  540. package/src/dataform-controls/utils/validated-number.tsx +209 -0
  541. package/src/{dataforms-layouts → dataform-layouts}/card/index.tsx +103 -8
  542. package/src/dataform-layouts/card/style.scss +24 -0
  543. package/src/{dataforms-layouts → dataform-layouts}/data-form-layout.tsx +4 -2
  544. package/src/dataform-layouts/get-summary-fields.ts +42 -0
  545. package/src/{dataforms-layouts → dataform-layouts}/index.tsx +32 -2
  546. package/src/{normalize-form-fields.ts → dataform-layouts/normalize-form-fields.ts} +28 -1
  547. package/src/{dataforms-layouts → dataform-layouts}/panel/dropdown.tsx +1 -1
  548. package/src/{dataforms-layouts → dataform-layouts}/panel/index.tsx +79 -48
  549. package/src/{dataforms-layouts → dataform-layouts}/panel/modal.tsx +1 -1
  550. package/src/{dataforms-layouts → dataform-layouts}/panel/style.scss +3 -0
  551. package/src/{dataforms-layouts → dataform-layouts}/regular/index.tsx +1 -1
  552. package/src/{dataforms-layouts → dataform-layouts}/regular/style.scss +2 -0
  553. package/src/{dataforms-layouts → dataform-layouts}/row/index.tsx +2 -1
  554. package/src/dataform-layouts/style.scss +5 -0
  555. package/src/dataviews-layouts/grid/index.tsx +1 -1
  556. package/src/dataviews-layouts/grid/style.scss +8 -3
  557. package/src/dataviews-layouts/list/index.tsx +0 -2
  558. package/src/dataviews-layouts/list/style.scss +3 -0
  559. package/src/dataviews-layouts/picker-grid/index.tsx +16 -9
  560. package/src/dataviews-layouts/picker-grid/style.scss +8 -4
  561. package/src/dataviews-layouts/table/index.tsx +1 -1
  562. package/src/dataviews-layouts/table/style.scss +9 -0
  563. package/src/dataviews-layouts/utils/grid-items.scss +2 -0
  564. package/src/dataviews-layouts/utils/item-click-wrapper.tsx +40 -2
  565. package/src/field-types/array.tsx +1 -0
  566. package/src/field-types/boolean.tsx +2 -1
  567. package/src/field-types/color.tsx +2 -8
  568. package/src/field-types/{date.ts → date.tsx} +3 -14
  569. package/src/field-types/datetime.tsx +3 -18
  570. package/src/field-types/email.tsx +2 -8
  571. package/src/field-types/index.tsx +8 -20
  572. package/src/field-types/integer.tsx +2 -8
  573. package/src/field-types/media.tsx +3 -17
  574. package/src/field-types/number.tsx +96 -0
  575. package/src/field-types/password.tsx +3 -18
  576. package/src/field-types/telephone.tsx +3 -18
  577. package/src/field-types/text.tsx +3 -18
  578. package/src/field-types/url.tsx +3 -18
  579. package/src/{utils.ts → field-types/utils/render-from-elements.ts} +2 -2
  580. package/src/index.ts +2 -2
  581. package/src/{components/dataform/stories/index.story.tsx → stories/dataform.story.tsx} +217 -9
  582. package/src/{components/dataviews-picker/stories/index.story.tsx → stories/dataviews-picker.story.tsx} +5 -9
  583. package/src/{components/dataviews/stories/fixtures.tsx → stories/dataviews.fixtures.tsx} +27 -1
  584. package/src/{components/dataviews/stories/index.story.tsx → stories/dataviews.story.tsx} +8 -9
  585. package/src/{field-types/stories/index.story.tsx → stories/field-types.story.tsx} +86 -20
  586. package/src/style.scss +19 -18
  587. package/src/test/dataform.tsx +36 -0
  588. package/src/test/dataviews-picker.tsx +1 -1
  589. package/src/test/dataviews.tsx +1 -2
  590. package/src/test/{filter-and-sort-data-view.js → filter-sort-and-paginate.js} +63 -16
  591. package/src/test/normalize-fields.ts +23 -1
  592. package/src/test/normalize-form-fields.ts +54 -5
  593. package/src/test/validation.ts +235 -225
  594. package/src/types/dataform.ts +140 -0
  595. package/src/types/dataviews.ts +433 -0
  596. package/src/types/field-api.ts +350 -0
  597. package/src/types/index.ts +3 -0
  598. package/src/{filter-and-sort-data-view.ts → utils/filter-sort-and-paginate.ts} +4 -4
  599. package/src/{validation.ts → utils/is-item-valid.ts} +5 -3
  600. package/src/{normalize-fields.ts → utils/normalize-fields.ts} +6 -6
  601. package/tsconfig.tsbuildinfo +1 -1
  602. package/build/dataform-controls/relative-date-control.js +0 -105
  603. package/build/dataform-controls/relative-date-control.js.map +0 -1
  604. package/build/dataforms-layouts/card/index.js +0 -136
  605. package/build/dataforms-layouts/card/index.js.map +0 -1
  606. package/build/dataforms-layouts/data-form-layout.js +0 -71
  607. package/build/dataforms-layouts/data-form-layout.js.map +0 -1
  608. package/build/dataforms-layouts/index.js +0 -58
  609. package/build/dataforms-layouts/index.js.map +0 -1
  610. package/build/dataforms-layouts/is-combined-field.js +0 -14
  611. package/build/dataforms-layouts/is-combined-field.js.map +0 -1
  612. package/build/dataforms-layouts/panel/dropdown.js +0 -120
  613. package/build/dataforms-layouts/panel/dropdown.js.map +0 -1
  614. package/build/dataforms-layouts/panel/index.js +0 -126
  615. package/build/dataforms-layouts/panel/index.js.map +0 -1
  616. package/build/dataforms-layouts/panel/modal.js +0 -120
  617. package/build/dataforms-layouts/panel/modal.js.map +0 -1
  618. package/build/dataforms-layouts/panel/summary-button.js +0 -67
  619. package/build/dataforms-layouts/panel/summary-button.js.map +0 -1
  620. package/build/dataforms-layouts/regular/index.js +0 -116
  621. package/build/dataforms-layouts/regular/index.js.map +0 -1
  622. package/build/dataforms-layouts/row/index.js +0 -113
  623. package/build/dataforms-layouts/row/index.js.map +0 -1
  624. package/build/filter-and-sort-data-view.js +0 -313
  625. package/build/filter-and-sort-data-view.js.map +0 -1
  626. package/build/normalize-fields.js +0 -155
  627. package/build/normalize-fields.js.map +0 -1
  628. package/build/normalize-form-fields.js +0 -81
  629. package/build/normalize-form-fields.js.map +0 -1
  630. package/build/private-types.js +0 -6
  631. package/build/private-types.js.map +0 -1
  632. package/build/types.js +0 -6
  633. package/build/types.js.map +0 -1
  634. package/build/utils.js +0 -22
  635. package/build/utils.js.map +0 -1
  636. package/build/validation.js +0 -61
  637. package/build/validation.js.map +0 -1
  638. package/build-module/dataform-controls/relative-date-control.js +0 -96
  639. package/build-module/dataform-controls/relative-date-control.js.map +0 -1
  640. package/build-module/dataforms-layouts/card/index.js +0 -127
  641. package/build-module/dataforms-layouts/card/index.js.map +0 -1
  642. package/build-module/dataforms-layouts/data-form-layout.js +0 -62
  643. package/build-module/dataforms-layouts/data-form-layout.js.map +0 -1
  644. package/build-module/dataforms-layouts/index.js +0 -51
  645. package/build-module/dataforms-layouts/index.js.map +0 -1
  646. package/build-module/dataforms-layouts/is-combined-field.js +0 -8
  647. package/build-module/dataforms-layouts/is-combined-field.js.map +0 -1
  648. package/build-module/dataforms-layouts/panel/dropdown.js +0 -113
  649. package/build-module/dataforms-layouts/panel/dropdown.js.map +0 -1
  650. package/build-module/dataforms-layouts/panel/index.js +0 -119
  651. package/build-module/dataforms-layouts/panel/index.js.map +0 -1
  652. package/build-module/dataforms-layouts/panel/modal.js +0 -113
  653. package/build-module/dataforms-layouts/panel/modal.js.map +0 -1
  654. package/build-module/dataforms-layouts/panel/summary-button.js +0 -60
  655. package/build-module/dataforms-layouts/panel/summary-button.js.map +0 -1
  656. package/build-module/dataforms-layouts/regular/index.js +0 -109
  657. package/build-module/dataforms-layouts/regular/index.js.map +0 -1
  658. package/build-module/dataforms-layouts/row/index.js +0 -106
  659. package/build-module/dataforms-layouts/row/index.js.map +0 -1
  660. package/build-module/filter-and-sort-data-view.js +0 -305
  661. package/build-module/filter-and-sort-data-view.js.map +0 -1
  662. package/build-module/normalize-fields.js +0 -145
  663. package/build-module/normalize-fields.js.map +0 -1
  664. package/build-module/normalize-form-fields.js +0 -73
  665. package/build-module/normalize-form-fields.js.map +0 -1
  666. package/build-module/private-types.js +0 -2
  667. package/build-module/private-types.js.map +0 -1
  668. package/build-module/types.js +0 -2
  669. package/build-module/types.js.map +0 -1
  670. package/build-module/utils.js +0 -16
  671. package/build-module/utils.js.map +0 -1
  672. package/build-module/validation.js +0 -54
  673. package/build-module/validation.js.map +0 -1
  674. package/build-types/components/dataform/stories/index.story.d.ts.map +0 -1
  675. package/build-types/components/dataviews/stories/fixtures.d.ts.map +0 -1
  676. package/build-types/components/dataviews/stories/index.story.d.ts.map +0 -1
  677. package/build-types/components/dataviews-picker/stories/index.story.d.ts.map +0 -1
  678. package/build-types/dataform-controls/relative-date-control.d.ts +0 -47
  679. package/build-types/dataform-controls/relative-date-control.d.ts.map +0 -1
  680. package/build-types/dataforms-layouts/card/index.d.ts.map +0 -1
  681. package/build-types/dataforms-layouts/data-form-layout.d.ts.map +0 -1
  682. package/build-types/dataforms-layouts/index.d.ts.map +0 -1
  683. package/build-types/dataforms-layouts/is-combined-field.d.ts.map +0 -1
  684. package/build-types/dataforms-layouts/panel/dropdown.d.ts.map +0 -1
  685. package/build-types/dataforms-layouts/panel/index.d.ts.map +0 -1
  686. package/build-types/dataforms-layouts/panel/modal.d.ts.map +0 -1
  687. package/build-types/dataforms-layouts/panel/summary-button.d.ts.map +0 -1
  688. package/build-types/dataforms-layouts/regular/index.d.ts.map +0 -1
  689. package/build-types/dataforms-layouts/row/index.d.ts.map +0 -1
  690. package/build-types/field-types/stories/index.story.d.ts +0 -85
  691. package/build-types/field-types/stories/index.story.d.ts.map +0 -1
  692. package/build-types/filter-and-sort-data-view.d.ts.map +0 -1
  693. package/build-types/normalize-fields.d.ts +0 -12
  694. package/build-types/normalize-fields.d.ts.map +0 -1
  695. package/build-types/normalize-form-fields.d.ts.map +0 -1
  696. package/build-types/private-types.d.ts.map +0 -1
  697. package/build-types/types.d.ts +0 -688
  698. package/build-types/types.d.ts.map +0 -1
  699. package/build-types/utils.d.ts +0 -6
  700. package/build-types/utils.d.ts.map +0 -1
  701. package/build-types/validation.d.ts.map +0 -1
  702. package/src/dataforms-layouts/card/style.scss +0 -10
  703. package/src/types.ts +0 -891
  704. /package/build-types/{dataforms-layouts → dataform-layouts}/card/index.d.ts +0 -0
  705. /package/build-types/{dataforms-layouts → dataform-layouts}/data-form-layout.d.ts +0 -0
  706. /package/build-types/{dataforms-layouts → dataform-layouts}/is-combined-field.d.ts +0 -0
  707. /package/build-types/{dataforms-layouts → dataform-layouts}/panel/dropdown.d.ts +0 -0
  708. /package/build-types/{dataforms-layouts → dataform-layouts}/panel/index.d.ts +0 -0
  709. /package/build-types/{dataforms-layouts → dataform-layouts}/panel/modal.d.ts +0 -0
  710. /package/build-types/{dataforms-layouts → dataform-layouts}/panel/summary-button.d.ts +0 -0
  711. /package/build-types/{dataforms-layouts → dataform-layouts}/regular/index.d.ts +0 -0
  712. /package/build-types/{dataforms-layouts → dataform-layouts}/row/index.d.ts +0 -0
  713. /package/src/{dataforms-layouts → dataform-layouts}/is-combined-field.ts +0 -0
  714. /package/src/{dataforms-layouts → dataform-layouts}/panel/summary-button.tsx +0 -0
  715. /package/src/{dataforms-layouts → dataform-layouts}/row/style.scss +0 -0
  716. /package/src/{components/dataviews/stories/style.css → stories/dataviews.style.css} +0 -0
  717. /package/src/{private-types.tsx → types/private.ts} +0 -0
@@ -14,10 +14,10 @@ import { starFilled } from '@wordpress/icons';
14
14
  /**
15
15
  * Internal dependencies
16
16
  */
17
- import DataViews from '../../components/dataviews/index';
18
- import DataForm from '../../components/dataform/index';
19
- import { filterSortAndPaginate } from '../../filter-and-sort-data-view';
20
- import type { View, Form, Field } from '../../types';
17
+ import DataViews from '../components/dataviews/index';
18
+ import DataForm from '../components/dataform/index';
19
+ import filterSortAndPaginate from '../utils/filter-sort-and-paginate';
20
+ import type { View, Form, Field } from '../types';
21
21
 
22
22
  const meta = {
23
23
  title: 'DataViews/FieldTypes',
@@ -42,6 +42,7 @@ const meta = {
42
42
  'datetime',
43
43
  'email',
44
44
  'integer',
45
+ 'number',
45
46
  'password',
46
47
  'radio',
47
48
  'select',
@@ -80,7 +81,6 @@ const USDSuffix = () => (
80
81
  <span>USD</span>
81
82
  </InputControlSuffixWrapper>
82
83
  );
83
-
84
84
  type DataType = {
85
85
  id: number;
86
86
  text: string;
@@ -89,6 +89,8 @@ type DataType = {
89
89
  textWithTextarea: string;
90
90
  integer: number;
91
91
  integerWithElements: number;
92
+ number?: number;
93
+ numberWithElements?: number;
92
94
  boolean: boolean;
93
95
  booleanWithToggle: boolean;
94
96
  booleanWithElements: boolean;
@@ -127,6 +129,8 @@ const data: DataType[] = [
127
129
  textWithTextarea: 'Textarea',
128
130
  integer: 1,
129
131
  integerWithElements: 1,
132
+ number: 10.25,
133
+ numberWithElements: 2,
130
134
  boolean: true,
131
135
  booleanWithToggle: true,
132
136
  booleanWithElements: true,
@@ -135,7 +139,7 @@ const data: DataType[] = [
135
139
  date: '2021-01-01',
136
140
  dateWithElements: '2021-01-01',
137
141
  email: 'hi@example.com',
138
- emailWithElements: 'hi@example.com',
142
+ emailWithElements: 'bob@example.com',
139
143
  telephone: '+1-555-123-4567',
140
144
  telephoneWithElements: '+1-555-123-4567',
141
145
  color: '#ff6600',
@@ -211,6 +215,29 @@ const fields: Field< DataType >[] = [
211
215
  { value: 2, label: 'Two' },
212
216
  { value: 3, label: 'Three' },
213
217
  ],
218
+ setValue: ( { value } ) => ( {
219
+ integerWithElements: parseInt( value, 10 ),
220
+ } ),
221
+ },
222
+ {
223
+ id: 'number',
224
+ type: 'number',
225
+ label: 'Number',
226
+ description: 'Number field increments by 0.01.',
227
+ },
228
+ {
229
+ id: 'numberWithElements',
230
+ type: 'number',
231
+ label: 'Number (with elements)',
232
+ description: 'Number field with elements.',
233
+ elements: [
234
+ { value: 1, label: 'One' },
235
+ { value: 2, label: 'Two' },
236
+ { value: 3, label: 'Three' },
237
+ ],
238
+ setValue: ( { value } ) => ( {
239
+ numberWithElements: Number( value ),
240
+ } ),
214
241
  },
215
242
  {
216
243
  id: 'boolean',
@@ -234,6 +261,9 @@ const fields: Field< DataType >[] = [
234
261
  { value: true, label: 'It is true' },
235
262
  { value: false, label: 'It is false' },
236
263
  ],
264
+ setValue: ( { value } ) => ( {
265
+ booleanWithElements: value === 'true' ? true : false,
266
+ } ),
237
267
  },
238
268
  {
239
269
  id: 'datetime',
@@ -294,6 +324,9 @@ const fields: Field< DataType >[] = [
294
324
  { value: 'jane@example.com', label: 'Jane Doe' },
295
325
  { value: 'bob@example.com', label: 'Bob Smith' },
296
326
  ],
327
+ setValue: ( { value } ) => ( {
328
+ emailWithElements: value,
329
+ } ),
297
330
  },
298
331
  {
299
332
  id: 'telephone',
@@ -495,6 +528,7 @@ type ControlTypes =
495
528
  | 'datetime'
496
529
  | 'email'
497
530
  | 'integer'
531
+ | 'number'
498
532
  | 'password'
499
533
  | 'radio'
500
534
  | 'select'
@@ -622,7 +656,7 @@ const FieldTypeStory = ( {
622
656
  );
623
657
  };
624
658
 
625
- export const All = ( {
659
+ export const AllComponent = ( {
626
660
  type,
627
661
  Edit,
628
662
  }: {
@@ -631,8 +665,9 @@ export const All = ( {
631
665
  } ) => {
632
666
  return <FieldTypeStory fields={ fields } type={ type } Edit={ Edit } />;
633
667
  };
668
+ AllComponent.storyName = 'All types';
634
669
 
635
- export const Text = ( {
670
+ export const TextComponent = ( {
636
671
  type,
637
672
  Edit,
638
673
  }: {
@@ -646,8 +681,9 @@ export const Text = ( {
646
681
 
647
682
  return <FieldTypeStory fields={ textFields } type={ type } Edit={ Edit } />;
648
683
  };
684
+ TextComponent.storyName = 'text';
649
685
 
650
- export const Integer = ( {
686
+ export const IntegerComponent = ( {
651
687
  type,
652
688
  Edit,
653
689
  }: {
@@ -663,8 +699,27 @@ export const Integer = ( {
663
699
  <FieldTypeStory fields={ integerFields } type={ type } Edit={ Edit } />
664
700
  );
665
701
  };
702
+ IntegerComponent.storyName = 'integer';
703
+
704
+ export const NumberComponent = ( {
705
+ type,
706
+ Edit,
707
+ }: {
708
+ type: PanelTypes;
709
+ Edit: ControlTypes;
710
+ } ) => {
711
+ const numberFields = useMemo(
712
+ () => fields.filter( ( field ) => field.type === 'number' ),
713
+ []
714
+ );
715
+
716
+ return (
717
+ <FieldTypeStory fields={ numberFields } type={ type } Edit={ Edit } />
718
+ );
719
+ };
720
+ NumberComponent.storyName = 'number';
666
721
 
667
- export const Boolean = ( {
722
+ export const BooleanComponent = ( {
668
723
  type,
669
724
  Edit,
670
725
  }: {
@@ -680,8 +735,9 @@ export const Boolean = ( {
680
735
  <FieldTypeStory fields={ booleanFields } type={ type } Edit={ Edit } />
681
736
  );
682
737
  };
738
+ BooleanComponent.storyName = 'boolean';
683
739
 
684
- export const DateTime = ( {
740
+ export const DateTimeComponent = ( {
685
741
  type,
686
742
  Edit,
687
743
  }: {
@@ -697,8 +753,9 @@ export const DateTime = ( {
697
753
  <FieldTypeStory fields={ dateTimeFields } type={ type } Edit={ Edit } />
698
754
  );
699
755
  };
756
+ DateTimeComponent.storyName = 'datetime';
700
757
 
701
- export const Date = ( {
758
+ export const DateComponent = ( {
702
759
  type,
703
760
  Edit,
704
761
  }: {
@@ -712,8 +769,9 @@ export const Date = ( {
712
769
 
713
770
  return <FieldTypeStory fields={ dateFields } type={ type } Edit={ Edit } />;
714
771
  };
772
+ DateComponent.storyName = 'date';
715
773
 
716
- export const Email = ( {
774
+ export const EmailComponent = ( {
717
775
  type,
718
776
  Edit,
719
777
  }: {
@@ -729,8 +787,9 @@ export const Email = ( {
729
787
  <FieldTypeStory fields={ emailFields } type={ type } Edit={ Edit } />
730
788
  );
731
789
  };
790
+ EmailComponent.storyName = 'email';
732
791
 
733
- export const Telephone = ( {
792
+ export const TelephoneComponent = ( {
734
793
  type,
735
794
  Edit,
736
795
  }: {
@@ -750,8 +809,9 @@ export const Telephone = ( {
750
809
  />
751
810
  );
752
811
  };
812
+ TelephoneComponent.storyName = 'telephone';
753
813
 
754
- export const Url = ( {
814
+ export const UrlComponent = ( {
755
815
  type,
756
816
  Edit,
757
817
  }: {
@@ -765,8 +825,9 @@ export const Url = ( {
765
825
 
766
826
  return <FieldTypeStory fields={ urlFields } type={ type } Edit={ Edit } />;
767
827
  };
828
+ UrlComponent.storyName = 'url';
768
829
 
769
- export const Color = ( {
830
+ export const ColorComponent = ( {
770
831
  type,
771
832
  Edit,
772
833
  }: {
@@ -782,8 +843,9 @@ export const Color = ( {
782
843
  <FieldTypeStory fields={ colorFields } type={ type } Edit={ Edit } />
783
844
  );
784
845
  };
846
+ ColorComponent.storyName = 'color';
785
847
 
786
- export const Media = ( {
848
+ export const MediaComponent = ( {
787
849
  type,
788
850
  Edit,
789
851
  }: {
@@ -799,8 +861,9 @@ export const Media = ( {
799
861
  <FieldTypeStory fields={ mediaFields } type={ type } Edit={ Edit } />
800
862
  );
801
863
  };
864
+ MediaComponent.storyName = 'media';
802
865
 
803
- export const Array = ( {
866
+ export const ArrayComponent = ( {
804
867
  type,
805
868
  Edit,
806
869
  }: {
@@ -820,8 +883,9 @@ export const Array = ( {
820
883
  />
821
884
  );
822
885
  };
886
+ ArrayComponent.storyName = 'array';
823
887
 
824
- export const Password = ( {
888
+ export const PasswordComponent = ( {
825
889
  type,
826
890
  Edit,
827
891
  }: {
@@ -837,8 +901,9 @@ export const Password = ( {
837
901
  <FieldTypeStory fields={ passwordFields } type={ type } Edit={ Edit } />
838
902
  );
839
903
  };
904
+ PasswordComponent.storyName = 'password';
840
905
 
841
- export const NoType = ( {
906
+ export const NoTypeComponent = ( {
842
907
  type,
843
908
  Edit,
844
909
  }: {
@@ -854,3 +919,4 @@ export const NoType = ( {
854
919
  <FieldTypeStory fields={ noTypeFields } type={ type } Edit={ Edit } />
855
920
  );
856
921
  };
922
+ NoTypeComponent.storyName = 'No type';
package/src/style.scss CHANGED
@@ -1,20 +1,21 @@
1
- @import "./components/dataviews/style.scss";
2
- @import "./components/dataviews-bulk-actions/style.scss";
3
- @import "./components/dataviews-filters/style.scss";
4
- @import "./components/dataviews-footer/style.scss";
5
- @import "./components/dataviews-pagination/style.scss";
6
- @import "./components/dataviews-item-actions/style.scss";
7
- @import "./components/dataviews-picker/style.scss";
8
- @import "./components/dataviews-selection-checkbox/style.scss";
9
- @import "./components/dataviews-view-config/style.scss";
1
+ @use "./components/dataviews/style.scss" as *;
2
+ @use "./components/dataviews-bulk-actions/style.scss" as *;
3
+ @use "./components/dataviews-filters/style.scss" as *;
4
+ @use "./components/dataviews-footer/style.scss" as *;
5
+ @use "./components/dataviews-pagination/style.scss" as *;
6
+ @use "./components/dataviews-item-actions/style.scss" as *;
7
+ @use "./components/dataviews-picker/style.scss" as *;
8
+ @use "./components/dataviews-selection-checkbox/style.scss" as *;
9
+ @use "./components/dataviews-view-config/style.scss" as *;
10
10
 
11
- @import "./dataviews-layouts/grid/style.scss";
12
- @import "./dataviews-layouts/list/style.scss";
13
- @import "./dataviews-layouts/table/style.scss";
14
- @import "./dataviews-layouts/picker-grid/style.scss";
11
+ @use "./dataviews-layouts/grid/style.scss" as *;
12
+ @use "./dataviews-layouts/list/style.scss" as *;
13
+ @use "./dataviews-layouts/table/style.scss" as *;
14
+ @use "./dataviews-layouts/picker-grid/style.scss" as *;
15
15
 
16
- @import "./dataform-controls/style.scss";
17
- @import "./dataforms-layouts/panel/style.scss";
18
- @import "./dataforms-layouts/regular/style.scss";
19
- @import "./dataforms-layouts/card/style.scss";
20
- @import "./dataforms-layouts/row/style.scss";
16
+ @use "./dataform-controls/style.scss" as *;
17
+ @use "./dataform-layouts/panel/style.scss" as *;
18
+ @use "./dataform-layouts/regular/style.scss" as *;
19
+ @use "./dataform-layouts/card/style.scss" as *;
20
+ @use "./dataform-layouts/row/style.scss" as *;
21
+ @use "./dataform-layouts/style.scss" as *;
@@ -144,6 +144,42 @@ describe( 'DataForm component', () => {
144
144
  }
145
145
  } );
146
146
 
147
+ it( 'should allow decimal input for number fields', async () => {
148
+ const onChange = jest.fn();
149
+ const fieldsWithNumber = [
150
+ ...fields,
151
+ {
152
+ id: 'price',
153
+ label: 'Price',
154
+ type: 'number' as const,
155
+ },
156
+ ];
157
+ const formWithNumber = {
158
+ ...form,
159
+ fields: [ ...form.fields, 'price' ],
160
+ };
161
+ render(
162
+ <Dataform
163
+ onChange={ onChange }
164
+ fields={ fieldsWithNumber }
165
+ form={ formWithNumber }
166
+ data={ { ...data, price: 2.5 } }
167
+ />
168
+ );
169
+
170
+ const priceInput = screen.getByRole( 'spinbutton', {
171
+ name: /price/i,
172
+ } );
173
+ expect( priceInput ).toHaveValue( 2.5 );
174
+
175
+ const user = userEvent.setup();
176
+ await user.clear( priceInput );
177
+ await user.type( priceInput, '3.75' );
178
+
179
+ expect( onChange ).toHaveBeenLastCalledWith( { price: 3.75 } );
180
+ expect( priceInput ).toHaveValue( 3.75 );
181
+ } );
182
+
147
183
  it( 'should wrap fields in HStack when labelPosition is set to side', async () => {
148
184
  const { container } = render(
149
185
  <Dataform
@@ -15,7 +15,7 @@ import { useMemo, useState } from '@wordpress/element';
15
15
  import DataViewsPicker from '../components/dataviews-picker';
16
16
  import { LAYOUT_PICKER_GRID } from '../constants';
17
17
  import type { ActionButton, View, ViewPickerGrid } from '../types';
18
- import { filterSortAndPaginate } from '../filter-and-sort-data-view';
18
+ import filterSortAndPaginate from '../utils/filter-sort-and-paginate';
19
19
 
20
20
  type Data = {
21
21
  id: number;
@@ -15,7 +15,7 @@ import { useMemo, useState } from '@wordpress/element';
15
15
  import DataViews from '../components/dataviews';
16
16
  import { LAYOUT_GRID, LAYOUT_LIST, LAYOUT_TABLE } from '../constants';
17
17
  import type { Action, View } from '../types';
18
- import { filterSortAndPaginate } from '../filter-and-sort-data-view';
18
+ import filterSortAndPaginate from '../utils/filter-sort-and-paginate';
19
19
 
20
20
  type Data = {
21
21
  id: number;
@@ -89,7 +89,6 @@ const actions: Action< Data >[] = [
89
89
  {
90
90
  id: 'delete',
91
91
  label: 'Delete',
92
- isDestructive: true,
93
92
  supportsBulk: true,
94
93
  RenderModal: () => <div>Modal Content</div>,
95
94
  },
@@ -6,8 +6,8 @@ import { subDays, subYears } from 'date-fns';
6
6
  /**
7
7
  * Internal dependencies
8
8
  */
9
- import { filterSortAndPaginate } from '../filter-and-sort-data-view';
10
- import { data, fields } from '../components/dataviews/stories/fixtures';
9
+ import filterSortAndPaginate from '../utils/filter-sort-and-paginate';
10
+ import { data, fields } from '../stories/dataviews.fixtures';
11
11
 
12
12
  describe( 'filters', () => {
13
13
  it( 'should return empty if the data is empty', () => {
@@ -119,7 +119,7 @@ describe( 'filters', () => {
119
119
  );
120
120
 
121
121
  // Should find items with "Planet" in categories (case-insensitive)
122
- expect( result ).toHaveLength( 8 );
122
+ expect( result ).toHaveLength( 9 );
123
123
  expect( result.map( ( r ) => r.name.title ) ).toContain( 'Neptune' );
124
124
  expect( result.map( ( r ) => r.name.title ) ).toContain( 'Mercury' );
125
125
  expect( result.map( ( r ) => r.name.title ) ).toContain( 'Earth' );
@@ -158,7 +158,7 @@ describe( 'filters', () => {
158
158
  },
159
159
  fields
160
160
  );
161
- expect( result ).toHaveLength( 16 );
161
+ expect( result ).toHaveLength( 17 );
162
162
  expect( result[ 0 ].name.title ).toBe( 'Moon' );
163
163
  expect( result[ 1 ].name.title ).toBe( 'Io' );
164
164
  expect( result[ 2 ].name.title ).toBe( 'Europa' );
@@ -175,6 +175,9 @@ describe( 'filters', () => {
175
175
  expect( result[ 13 ].name.title ).toBe( 'Mars' );
176
176
  expect( result[ 14 ].name.title ).toBe( 'Jupiter' );
177
177
  expect( result[ 15 ].name.title ).toBe( 'Saturn' );
178
+ expect( result[ 16 ].name.title ).toBe(
179
+ 'Thessalonikopolymnianebuchodonossarinacharybdis'
180
+ );
178
181
  } );
179
182
 
180
183
  it( 'should search using IS ANY filter for STRING values', () => {
@@ -210,7 +213,7 @@ describe( 'filters', () => {
210
213
  },
211
214
  fields
212
215
  );
213
- expect( result ).toHaveLength( 10 );
216
+ expect( result ).toHaveLength( 11 );
214
217
  expect( result[ 0 ].name.title ).toBe( 'Moon' );
215
218
  expect( result[ 1 ].name.title ).toBe( 'Io' );
216
219
  expect( result[ 2 ].name.title ).toBe( 'Europa' );
@@ -221,6 +224,9 @@ describe( 'filters', () => {
221
224
  expect( result[ 7 ].name.title ).toBe( 'Triton' );
222
225
  expect( result[ 8 ].name.title ).toBe( 'Nereid' );
223
226
  expect( result[ 9 ].name.title ).toBe( 'Proteus' );
227
+ expect( result[ 10 ].name.title ).toBe(
228
+ 'Thessalonikopolymnianebuchodonossarinacharybdis'
229
+ );
224
230
  } );
225
231
 
226
232
  it( 'should search using IS ANY filter for ARRAY values', () => {
@@ -256,7 +262,7 @@ describe( 'filters', () => {
256
262
  },
257
263
  fields
258
264
  );
259
- expect( result ).toHaveLength( 14 );
265
+ expect( result ).toHaveLength( 15 );
260
266
  expect( result[ 0 ].name.title ).toBe( 'Moon' );
261
267
  expect( result[ 1 ].name.title ).toBe( 'Io' );
262
268
  expect( result[ 2 ].name.title ).toBe( 'Europa' );
@@ -271,6 +277,9 @@ describe( 'filters', () => {
271
277
  expect( result[ 11 ].name.title ).toBe( 'Jupiter' );
272
278
  expect( result[ 12 ].name.title ).toBe( 'Saturn' );
273
279
  expect( result[ 13 ].name.title ).toBe( 'Uranus' );
280
+ expect( result[ 14 ].name.title ).toBe(
281
+ 'Thessalonikopolymnianebuchodonossarinacharybdis'
282
+ );
274
283
  } );
275
284
 
276
285
  it( 'should search using IS ALL filter', () => {
@@ -339,7 +348,7 @@ describe( 'filters', () => {
339
348
  },
340
349
  fields
341
350
  );
342
- expect( result ).toHaveLength( 18 );
351
+ expect( result ).toHaveLength( 19 );
343
352
  expect( result[ 0 ].name.title ).toBe( 'Moon' );
344
353
  expect( result[ 1 ].name.title ).toBe( 'Io' );
345
354
  expect( result[ 2 ].name.title ).toBe( 'Europa' );
@@ -358,6 +367,9 @@ describe( 'filters', () => {
358
367
  expect( result[ 15 ].name.title ).toBe( 'Jupiter' );
359
368
  expect( result[ 16 ].name.title ).toBe( 'Saturn' );
360
369
  expect( result[ 17 ].name.title ).toBe( 'Uranus' );
370
+ expect( result[ 18 ].name.title ).toBe(
371
+ 'Thessalonikopolymnianebuchodonossarinacharybdis'
372
+ );
361
373
  } );
362
374
 
363
375
  it( 'should filter using LESS THAN operator for integer', () => {
@@ -463,7 +475,7 @@ describe( 'filters', () => {
463
475
  fields
464
476
  );
465
477
  // Should return items that don't contain "Solar system" in description
466
- expect( result ).toHaveLength( 11 );
478
+ expect( result ).toHaveLength( 12 );
467
479
  expect(
468
480
  result.filter( ( r ) =>
469
481
  r.name.description.includes( 'Solar system' )
@@ -479,6 +491,7 @@ describe( 'filters', () => {
479
491
  'Moon',
480
492
  'Nereid',
481
493
  'Proteus',
494
+ 'Thessalonikopolymnianebuchodonossarinacharybdis',
482
495
  'Triton',
483
496
  'Venus',
484
497
  ] );
@@ -648,7 +661,7 @@ describe( 'filters', () => {
648
661
  },
649
662
  fields
650
663
  );
651
- expect( result.length ).toBe( 16 );
664
+ expect( result.length ).toBe( 17 );
652
665
  expect( result.map( ( r ) => r.name.title ) ).not.toContain(
653
666
  'Neptune'
654
667
  );
@@ -722,6 +735,40 @@ describe( 'filters', () => {
722
735
  expect( result.map( ( r ) => r.name.title ) ).toEqual( [ 'Uranus' ] );
723
736
  } );
724
737
 
738
+ it( 'should filter decimal numbers within narrow BETWEEN ranges', () => {
739
+ const decimalData = [
740
+ { id: 1, price: 2.42 },
741
+ { id: 2, price: 2.58 },
742
+ { id: 3, price: 3.1 },
743
+ ];
744
+ const decimalFields = [
745
+ {
746
+ id: 'price',
747
+ type: 'number',
748
+ getValue: ( { item } ) => item.price,
749
+ filterBy: {
750
+ operators: [ 'between' ],
751
+ },
752
+ },
753
+ ];
754
+
755
+ const { data: result } = filterSortAndPaginate(
756
+ decimalData,
757
+ {
758
+ filters: [
759
+ {
760
+ field: 'price',
761
+ operator: 'between',
762
+ value: [ 2.4, 2.6 ],
763
+ },
764
+ ],
765
+ },
766
+ decimalFields
767
+ );
768
+
769
+ expect( result.map( ( r ) => r.id ).sort() ).toEqual( [ 1, 2 ] );
770
+ } );
771
+
725
772
  it( 'should filter dates inclusively between min and max using BETWEEN operator', () => {
726
773
  const { data: result } = filterSortAndPaginate(
727
774
  data,
@@ -863,7 +910,7 @@ describe( 'sorting', () => {
863
910
  fields
864
911
  );
865
912
 
866
- expect( result ).toHaveLength( 18 );
913
+ expect( result ).toHaveLength( 19 );
867
914
 
868
915
  expect( result[ 0 ].type ).toBe( 'Gas giant' );
869
916
  expect( result[ 0 ].name.title ).toBe( 'Saturn' );
@@ -911,7 +958,7 @@ describe( 'sorting', () => {
911
958
  fields
912
959
  );
913
960
 
914
- expect( result ).toHaveLength( 18 );
961
+ expect( result ).toHaveLength( 19 );
915
962
  expect( result[ 0 ].name.title ).toBe( 'Saturn' );
916
963
  expect( result[ 1 ].name.title ).toBe( 'Jupiter' );
917
964
  expect( result[ 2 ].name.title ).toBe( 'Uranus' );
@@ -945,7 +992,7 @@ describe( 'sorting', () => {
945
992
  },
946
993
  fields
947
994
  );
948
- expect( resultDesc ).toHaveLength( 18 );
995
+ expect( resultDesc ).toHaveLength( 19 );
949
996
  expect( resultDesc[ 0 ].name.title ).toBe( 'Europa' );
950
997
  expect( resultDesc[ 1 ].name.title ).toBe( 'Earth' );
951
998
  // Skip intermediate items
@@ -961,7 +1008,7 @@ describe( 'sorting', () => {
961
1008
  },
962
1009
  fields
963
1010
  );
964
- expect( resultAsc ).toHaveLength( 18 );
1011
+ expect( resultAsc ).toHaveLength( 19 );
965
1012
  expect( resultAsc[ 0 ].name.title ).toBe( 'Jupiter' );
966
1013
  expect( resultAsc[ 1 ].name.title ).toBe( 'Io' );
967
1014
  // Skip intermediate items
@@ -983,7 +1030,7 @@ describe( 'sorting', () => {
983
1030
  )
984
1031
  );
985
1032
 
986
- expect( result ).toHaveLength( 18 );
1033
+ expect( result ).toHaveLength( 19 );
987
1034
  expect( result[ 0 ].name.title ).toBe( 'Saturn' );
988
1035
  expect( result[ 1 ].name.title ).toBe( 'Jupiter' );
989
1036
  expect( result[ 2 ].name.title ).toBe( 'Uranus' );
@@ -1031,7 +1078,7 @@ describe( 'sorting', () => {
1031
1078
  }
1032
1079
  }
1033
1080
 
1034
- expect( groupCount ).toBe( 4 );
1081
+ expect( groupCount ).toBe( 5 );
1035
1082
  } );
1036
1083
  } );
1037
1084
 
@@ -1051,7 +1098,7 @@ describe( 'pagination', () => {
1051
1098
  expect( result[ 1 ].name.title ).toBe( 'Ganymede' );
1052
1099
  expect( paginationInfo ).toStrictEqual( {
1053
1100
  totalItems: data.length,
1054
- totalPages: 9,
1101
+ totalPages: 10,
1055
1102
  } );
1056
1103
  } );
1057
1104
  } );
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Internal dependencies
3
3
  */
4
- import { normalizeFields } from '../normalize-fields';
4
+ import normalizeFields from '../utils/normalize-fields';
5
5
  import type { Field } from '../types';
6
6
 
7
7
  describe( 'normalizeFields: default getValue', () => {
@@ -206,6 +206,28 @@ describe( 'normalizeFields: default getValue', () => {
206
206
  } );
207
207
  } );
208
208
 
209
+ it( 'returns the field type definition for number fields', () => {
210
+ const fields: Field< {} >[] = [
211
+ {
212
+ id: 'price',
213
+ type: 'number',
214
+ },
215
+ ];
216
+ const normalizedFields = normalizeFields( fields );
217
+ const result = normalizedFields[ 0 ].filterBy;
218
+ expect( result ).toStrictEqual( {
219
+ operators: [
220
+ 'is',
221
+ 'isNot',
222
+ 'lessThan',
223
+ 'greaterThan',
224
+ 'lessThanOrEqual',
225
+ 'greaterThanOrEqual',
226
+ 'between',
227
+ ],
228
+ } );
229
+ } );
230
+
209
231
  it( 'returns the field type definition for typed fields (for primary filters)', () => {
210
232
  const fields: Field< {} >[] = [
211
233
  {