@wordpress/dataviews 9.1.1-next.233ccab9b.0 → 10.0.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 (787) hide show
  1. package/CHANGELOG.md +42 -1
  2. package/README.md +137 -36
  3. package/build/components/dataform/index.js +52 -28
  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 -154
  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 +473 -263
  16. package/build/components/dataviews-filters/filter.js.map +7 -1
  17. package/build/components/dataviews-filters/filters-toggled.js +39 -25
  18. package/build/components/dataviews-filters/filters-toggled.js.map +7 -1
  19. package/build/components/dataviews-filters/filters.js +95 -67
  20. package/build/components/dataviews-filters/filters.js.map +7 -1
  21. package/build/components/dataviews-filters/index.js +44 -31
  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 +301 -205
  28. package/build/components/dataviews-filters/search-widget.js.map +7 -1
  29. package/build/components/dataviews-filters/toggle.js +88 -63
  30. package/build/components/dataviews-filters/toggle.js.map +7 -1
  31. package/build/components/dataviews-filters/use-filters.js +40 -29
  32. package/build/components/dataviews-filters/use-filters.js.map +7 -1
  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 +188 -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 -145
  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 +109 -145
  58. package/build/dataform-controls/array.js.map +7 -1
  59. package/build/dataform-controls/checkbox.js +56 -66
  60. package/build/dataform-controls/checkbox.js.map +7 -1
  61. package/build/dataform-controls/color.js +112 -119
  62. package/build/dataform-controls/color.js.map +7 -1
  63. package/build/dataform-controls/date.js +531 -349
  64. package/build/dataform-controls/date.js.map +7 -1
  65. package/build/dataform-controls/datetime.js +189 -148
  66. package/build/dataform-controls/datetime.js.map +7 -1
  67. package/build/dataform-controls/email.js +52 -32
  68. package/build/dataform-controls/email.js.map +7 -1
  69. package/build/dataform-controls/index.js +83 -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 +66 -38
  76. package/build/dataform-controls/password.js.map +7 -1
  77. package/build/dataform-controls/radio.js +61 -64
  78. package/build/dataform-controls/radio.js.map +7 -1
  79. package/build/dataform-controls/select.js +70 -88
  80. package/build/dataform-controls/select.js.map +7 -1
  81. package/build/dataform-controls/telephone.js +52 -32
  82. package/build/dataform-controls/telephone.js.map +7 -1
  83. package/build/dataform-controls/text.js +52 -30
  84. package/build/dataform-controls/text.js.map +7 -1
  85. package/build/dataform-controls/textarea.js +62 -71
  86. package/build/dataform-controls/textarea.js.map +7 -1
  87. package/build/dataform-controls/toggle-group.js +73 -66
  88. package/build/dataform-controls/toggle-group.js.map +7 -1
  89. package/build/dataform-controls/toggle.js +57 -67
  90. package/build/dataform-controls/toggle.js.map +7 -1
  91. package/build/dataform-controls/url.js +52 -32
  92. package/build/dataform-controls/url.js.map +7 -1
  93. package/build/dataform-controls/utils/get-custom-validity.js +35 -0
  94. package/build/dataform-controls/utils/get-custom-validity.js.map +7 -0
  95. package/build/dataform-controls/utils/relative-date-control.js +122 -0
  96. package/build/dataform-controls/utils/relative-date-control.js.map +7 -0
  97. package/build/dataform-controls/utils/validated-input.js +67 -71
  98. package/build/dataform-controls/utils/validated-input.js.map +7 -1
  99. package/build/dataform-controls/utils/validated-number.js +167 -0
  100. package/build/dataform-controls/utils/validated-number.js.map +7 -0
  101. package/build/dataform-layouts/card/index.js +217 -0
  102. package/build/dataform-layouts/card/index.js.map +7 -0
  103. package/build/dataform-layouts/data-form-layout.js +95 -0
  104. package/build/dataform-layouts/data-form-layout.js.map +7 -0
  105. package/build/dataform-layouts/get-summary-fields.js +45 -0
  106. package/build/dataform-layouts/get-summary-fields.js.map +7 -0
  107. package/build/dataform-layouts/index.js +99 -0
  108. package/build/dataform-layouts/index.js.map +7 -0
  109. package/build/dataform-layouts/is-combined-field.js +31 -0
  110. package/build/dataform-layouts/is-combined-field.js.map +7 -0
  111. package/build/dataform-layouts/normalize-form-fields.js +104 -0
  112. package/build/dataform-layouts/normalize-form-fields.js.map +7 -0
  113. package/build/dataform-layouts/panel/dropdown.js +159 -0
  114. package/build/dataform-layouts/panel/dropdown.js.map +7 -0
  115. package/build/dataform-layouts/panel/index.js +152 -0
  116. package/build/dataform-layouts/panel/index.js.map +7 -0
  117. package/build/dataform-layouts/panel/modal.js +176 -0
  118. package/build/dataform-layouts/panel/modal.js.map +7 -0
  119. package/build/dataform-layouts/panel/summary-button.js +93 -0
  120. package/build/dataform-layouts/panel/summary-button.js.map +7 -0
  121. package/build/dataform-layouts/regular/index.js +139 -0
  122. package/build/dataform-layouts/regular/index.js.map +7 -0
  123. package/build/dataform-layouts/row/index.js +120 -0
  124. package/build/dataform-layouts/row/index.js.map +7 -0
  125. package/build/dataviews-layouts/grid/index.js +337 -278
  126. package/build/dataviews-layouts/grid/index.js.map +7 -1
  127. package/build/dataviews-layouts/grid/preview-size-picker.js +94 -69
  128. package/build/dataviews-layouts/grid/preview-size-picker.js.map +7 -1
  129. package/build/dataviews-layouts/index.js +75 -48
  130. package/build/dataviews-layouts/index.js.map +7 -1
  131. package/build/dataviews-layouts/list/index.js +441 -354
  132. package/build/dataviews-layouts/list/index.js.map +7 -1
  133. package/build/dataviews-layouts/picker-grid/index.js +366 -300
  134. package/build/dataviews-layouts/picker-grid/index.js.map +7 -1
  135. package/build/dataviews-layouts/table/column-header-menu.js +144 -133
  136. package/build/dataviews-layouts/table/column-header-menu.js.map +7 -1
  137. package/build/dataviews-layouts/table/column-primary.js +86 -66
  138. package/build/dataviews-layouts/table/column-primary.js.map +7 -1
  139. package/build/dataviews-layouts/table/density-picker.js +86 -46
  140. package/build/dataviews-layouts/table/density-picker.js.map +7 -1
  141. package/build/dataviews-layouts/table/index.js +354 -319
  142. package/build/dataviews-layouts/table/index.js.map +7 -1
  143. package/build/dataviews-layouts/table/use-is-horizontal-scroll-end.js +55 -47
  144. package/build/dataviews-layouts/table/use-is-horizontal-scroll-end.js.map +7 -1
  145. package/build/dataviews-layouts/utils/get-data-by-group.js +24 -13
  146. package/build/dataviews-layouts/utils/get-data-by-group.js.map +7 -1
  147. package/build/dataviews-layouts/utils/grid-items.js +51 -34
  148. package/build/dataviews-layouts/utils/grid-items.js.map +7 -1
  149. package/build/dataviews-layouts/utils/item-click-wrapper.js +53 -31
  150. package/build/dataviews-layouts/utils/item-click-wrapper.js.map +7 -1
  151. package/build/dataviews-layouts/utils/preview-size-picker.js +94 -69
  152. package/build/dataviews-layouts/utils/preview-size-picker.js.map +7 -1
  153. package/build/field-types/array.js +46 -41
  154. package/build/field-types/array.js.map +7 -1
  155. package/build/field-types/boolean.js +52 -47
  156. package/build/field-types/boolean.js.map +7 -1
  157. package/build/field-types/color.js +79 -81
  158. package/build/field-types/color.js.map +7 -1
  159. package/build/field-types/date.js +69 -48
  160. package/build/field-types/date.js.map +7 -1
  161. package/build/field-types/datetime.js +62 -43
  162. package/build/field-types/datetime.js.map +7 -1
  163. package/build/field-types/email.js +58 -47
  164. package/build/field-types/email.js.map +7 -1
  165. package/build/field-types/index.js +84 -89
  166. package/build/field-types/index.js.map +7 -1
  167. package/build/field-types/integer.js +68 -45
  168. package/build/field-types/integer.js.map +7 -1
  169. package/build/field-types/media.js +25 -27
  170. package/build/field-types/media.js.map +7 -1
  171. package/build/field-types/number.js +95 -0
  172. package/build/field-types/number.js.map +7 -0
  173. package/build/field-types/password.js +40 -39
  174. package/build/field-types/password.js.map +7 -1
  175. package/build/field-types/telephone.js +55 -45
  176. package/build/field-types/telephone.js.map +7 -1
  177. package/build/field-types/text.js +55 -46
  178. package/build/field-types/text.js.map +7 -1
  179. package/build/field-types/url.js +55 -45
  180. package/build/field-types/url.js.map +7 -1
  181. package/build/field-types/utils/render-from-elements.js +52 -0
  182. package/build/field-types/utils/render-from-elements.js.map +7 -0
  183. package/build/hooks/index.js +39 -0
  184. package/build/hooks/index.js.map +7 -0
  185. package/build/hooks/use-elements.js +63 -0
  186. package/build/hooks/use-elements.js.map +7 -0
  187. package/build/hooks/use-form-validity.js +426 -0
  188. package/build/hooks/use-form-validity.js.map +7 -0
  189. package/build/index.js +50 -45
  190. package/build/index.js.map +7 -1
  191. package/build/lock-unlock.js +31 -14
  192. package/build/lock-unlock.js.map +7 -1
  193. package/build/types/dataform.js +17 -0
  194. package/build/types/dataform.js.map +7 -0
  195. package/build/types/dataviews.js +17 -0
  196. package/build/types/dataviews.js.map +7 -0
  197. package/build/types/field-api.js +17 -0
  198. package/build/types/field-api.js.map +7 -0
  199. package/build/types/index.js +17 -0
  200. package/build/types/index.js.map +7 -0
  201. package/build/types/private.js +17 -0
  202. package/build/types/private.js.map +7 -0
  203. package/build/utils/filter-sort-and-paginate.js +285 -0
  204. package/build/utils/filter-sort-and-paginate.js.map +7 -0
  205. package/build/utils/has-elements.js +27 -0
  206. package/build/utils/has-elements.js.map +7 -0
  207. package/build/utils/normalize-fields.js +160 -0
  208. package/build/utils/normalize-fields.js.map +7 -0
  209. package/build-module/components/dataform/index.js +25 -25
  210. package/build-module/components/dataform/index.js.map +7 -1
  211. package/build-module/components/dataform-context/index.js +11 -19
  212. package/build-module/components/dataform-context/index.js.map +7 -1
  213. package/build-module/components/dataviews/index.js +154 -127
  214. package/build-module/components/dataviews/index.js.map +7 -1
  215. package/build-module/components/dataviews-bulk-actions/index.js +227 -140
  216. package/build-module/components/dataviews-bulk-actions/index.js.map +7 -1
  217. package/build-module/components/dataviews-context/index.js +20 -30
  218. package/build-module/components/dataviews-context/index.js.map +7 -1
  219. package/build-module/components/dataviews-filters/add-filter.js +60 -68
  220. package/build-module/components/dataviews-filters/add-filter.js.map +7 -1
  221. package/build-module/components/dataviews-filters/filter.js +454 -232
  222. package/build-module/components/dataviews-filters/filter.js.map +7 -1
  223. package/build-module/components/dataviews-filters/filters-toggled.js +11 -19
  224. package/build-module/components/dataviews-filters/filters-toggled.js.map +7 -1
  225. package/build-module/components/dataviews-filters/filters.js +65 -59
  226. package/build-module/components/dataviews-filters/filters.js.map +7 -1
  227. package/build-module/components/dataviews-filters/index.js +11 -5
  228. package/build-module/components/dataviews-filters/index.js.map +7 -1
  229. package/build-module/components/dataviews-filters/input-widget.js +57 -81
  230. package/build-module/components/dataviews-filters/input-widget.js.map +7 -1
  231. package/build-module/components/dataviews-filters/reset-filters.js +33 -30
  232. package/build-module/components/dataviews-filters/reset-filters.js.map +7 -1
  233. package/build-module/components/dataviews-filters/search-widget.js +276 -195
  234. package/build-module/components/dataviews-filters/search-widget.js.map +7 -1
  235. package/build-module/components/dataviews-filters/toggle.js +58 -55
  236. package/build-module/components/dataviews-filters/toggle.js.map +7 -1
  237. package/build-module/components/dataviews-filters/use-filters.js +21 -23
  238. package/build-module/components/dataviews-filters/use-filters.js.map +7 -1
  239. package/build-module/components/dataviews-filters/utils.js +5 -6
  240. package/build-module/components/dataviews-filters/utils.js.map +7 -1
  241. package/build-module/components/dataviews-footer/index.js +28 -26
  242. package/build-module/components/dataviews-footer/index.js.map +7 -1
  243. package/build-module/components/dataviews-item-actions/index.js +171 -144
  244. package/build-module/components/dataviews-item-actions/index.js.map +7 -1
  245. package/build-module/components/dataviews-layout/index.js +35 -42
  246. package/build-module/components/dataviews-layout/index.js.map +7 -1
  247. package/build-module/components/dataviews-pagination/index.js +115 -92
  248. package/build-module/components/dataviews-pagination/index.js.map +7 -1
  249. package/build-module/components/dataviews-picker/footer.js +122 -93
  250. package/build-module/components/dataviews-picker/footer.js.map +7 -1
  251. package/build-module/components/dataviews-picker/index.js +137 -121
  252. package/build-module/components/dataviews-picker/index.js.map +7 -1
  253. package/build-module/components/dataviews-search/index.js +30 -35
  254. package/build-module/components/dataviews-search/index.js.map +7 -1
  255. package/build-module/components/dataviews-selection-checkbox/index.js +28 -31
  256. package/build-module/components/dataviews-selection-checkbox/index.js.map +7 -1
  257. package/build-module/components/dataviews-view-config/index.js +579 -504
  258. package/build-module/components/dataviews-view-config/index.js.map +7 -1
  259. package/build-module/components/dataviews-view-config/infinite-scroll-toggle.js +28 -33
  260. package/build-module/components/dataviews-view-config/infinite-scroll-toggle.js.map +7 -1
  261. package/build-module/constants.js +157 -101
  262. package/build-module/constants.js.map +7 -1
  263. package/build-module/dataform-controls/array.js +82 -141
  264. package/build-module/dataform-controls/array.js.map +7 -1
  265. package/build-module/dataform-controls/checkbox.js +28 -61
  266. package/build-module/dataform-controls/checkbox.js.map +7 -1
  267. package/build-module/dataform-controls/color.js +89 -115
  268. package/build-module/dataform-controls/color.js.map +7 -1
  269. package/build-module/dataform-controls/date.js +524 -337
  270. package/build-module/dataform-controls/date.js.map +7 -1
  271. package/build-module/dataform-controls/datetime.js +162 -139
  272. package/build-module/dataform-controls/datetime.js.map +7 -1
  273. package/build-module/dataform-controls/email.js +28 -28
  274. package/build-module/dataform-controls/email.js.map +7 -1
  275. package/build-module/dataform-controls/index.js +36 -43
  276. package/build-module/dataform-controls/index.js.map +7 -1
  277. package/build-module/dataform-controls/integer.js +8 -123
  278. package/build-module/dataform-controls/integer.js.map +7 -1
  279. package/build-module/dataform-controls/number.js +9 -0
  280. package/build-module/dataform-controls/number.js.map +7 -0
  281. package/build-module/dataform-controls/password.js +37 -30
  282. package/build-module/dataform-controls/password.js.map +7 -1
  283. package/build-module/dataform-controls/radio.js +34 -60
  284. package/build-module/dataform-controls/radio.js.map +7 -1
  285. package/build-module/dataform-controls/select.js +43 -84
  286. package/build-module/dataform-controls/select.js.map +7 -1
  287. package/build-module/dataform-controls/telephone.js +28 -28
  288. package/build-module/dataform-controls/telephone.js.map +7 -1
  289. package/build-module/dataform-controls/text.js +25 -26
  290. package/build-module/dataform-controls/text.js.map +7 -1
  291. package/build-module/dataform-controls/textarea.js +35 -67
  292. package/build-module/dataform-controls/textarea.js.map +7 -1
  293. package/build-module/dataform-controls/toggle-group.js +50 -62
  294. package/build-module/dataform-controls/toggle-group.js.map +7 -1
  295. package/build-module/dataform-controls/toggle.js +29 -62
  296. package/build-module/dataform-controls/toggle.js.map +7 -1
  297. package/build-module/dataform-controls/url.js +28 -28
  298. package/build-module/dataform-controls/url.js.map +7 -1
  299. package/build-module/dataform-controls/utils/get-custom-validity.js +15 -0
  300. package/build-module/dataform-controls/utils/get-custom-validity.js.map +7 -0
  301. package/build-module/dataform-controls/utils/relative-date-control.js +97 -0
  302. package/build-module/dataform-controls/utils/relative-date-control.js.map +7 -0
  303. package/build-module/dataform-controls/utils/validated-input.js +40 -67
  304. package/build-module/dataform-controls/utils/validated-input.js.map +7 -1
  305. package/build-module/dataform-controls/utils/validated-number.js +142 -0
  306. package/build-module/dataform-controls/utils/validated-number.js.map +7 -0
  307. package/build-module/dataform-layouts/card/index.js +183 -0
  308. package/build-module/dataform-layouts/card/index.js.map +7 -0
  309. package/build-module/dataform-layouts/data-form-layout.js +61 -0
  310. package/build-module/dataform-layouts/data-form-layout.js.map +7 -0
  311. package/build-module/dataform-layouts/get-summary-fields.js +21 -0
  312. package/build-module/dataform-layouts/get-summary-fields.js.map +7 -0
  313. package/build-module/dataform-layouts/index.js +68 -0
  314. package/build-module/dataform-layouts/index.js.map +7 -0
  315. package/build-module/dataform-layouts/is-combined-field.js +7 -0
  316. package/build-module/dataform-layouts/is-combined-field.js.map +7 -0
  317. package/build-module/dataform-layouts/normalize-form-fields.js +79 -0
  318. package/build-module/dataform-layouts/normalize-form-fields.js.map +7 -0
  319. package/build-module/dataform-layouts/panel/dropdown.js +136 -0
  320. package/build-module/dataform-layouts/panel/dropdown.js.map +7 -0
  321. package/build-module/dataform-layouts/panel/index.js +125 -0
  322. package/build-module/dataform-layouts/panel/index.js.map +7 -0
  323. package/build-module/dataform-layouts/panel/modal.js +151 -0
  324. package/build-module/dataform-layouts/panel/modal.js.map +7 -0
  325. package/build-module/dataform-layouts/panel/summary-button.js +73 -0
  326. package/build-module/dataform-layouts/panel/summary-button.js.map +7 -0
  327. package/build-module/dataform-layouts/regular/index.js +115 -0
  328. package/build-module/dataform-layouts/regular/index.js.map +7 -0
  329. package/build-module/dataform-layouts/row/index.js +95 -0
  330. package/build-module/dataform-layouts/row/index.js.map +7 -0
  331. package/build-module/dataviews-layouts/grid/index.js +316 -267
  332. package/build-module/dataviews-layouts/grid/index.js.map +7 -1
  333. package/build-module/dataviews-layouts/grid/preview-size-picker.js +66 -63
  334. package/build-module/dataviews-layouts/grid/preview-size-picker.js.map +7 -1
  335. package/build-module/dataviews-layouts/index.js +53 -42
  336. package/build-module/dataviews-layouts/index.js.map +7 -1
  337. package/build-module/dataviews-layouts/list/index.js +422 -339
  338. package/build-module/dataviews-layouts/list/index.js.map +7 -1
  339. package/build-module/dataviews-layouts/picker-grid/index.js +344 -291
  340. package/build-module/dataviews-layouts/picker-grid/index.js.map +7 -1
  341. package/build-module/dataviews-layouts/table/column-header-menu.js +129 -127
  342. package/build-module/dataviews-layouts/table/column-header-menu.js.map +7 -1
  343. package/build-module/dataviews-layouts/table/column-primary.js +71 -62
  344. package/build-module/dataviews-layouts/table/column-primary.js.map +7 -1
  345. package/build-module/dataviews-layouts/table/density-picker.js +61 -40
  346. package/build-module/dataviews-layouts/table/density-picker.js.map +7 -1
  347. package/build-module/dataviews-layouts/table/index.js +326 -302
  348. package/build-module/dataviews-layouts/table/index.js.map +7 -1
  349. package/build-module/dataviews-layouts/table/use-is-horizontal-scroll-end.js +31 -40
  350. package/build-module/dataviews-layouts/table/use-is-horizontal-scroll-end.js.map +7 -1
  351. package/build-module/dataviews-layouts/utils/get-data-by-group.js +7 -10
  352. package/build-module/dataviews-layouts/utils/get-data-by-group.js.map +7 -1
  353. package/build-module/dataviews-layouts/utils/grid-items.js +19 -28
  354. package/build-module/dataviews-layouts/utils/grid-items.js.map +7 -1
  355. package/build-module/dataviews-layouts/utils/item-click-wrapper.js +32 -28
  356. package/build-module/dataviews-layouts/utils/item-click-wrapper.js.map +7 -1
  357. package/build-module/dataviews-layouts/utils/preview-size-picker.js +66 -63
  358. package/build-module/dataviews-layouts/utils/preview-size-picker.js.map +7 -1
  359. package/build-module/field-types/array.js +32 -37
  360. package/build-module/field-types/array.js.map +7 -1
  361. package/build-module/field-types/boolean.js +22 -41
  362. package/build-module/field-types/boolean.js.map +7 -1
  363. package/build-module/field-types/color.js +51 -72
  364. package/build-module/field-types/color.js.map +7 -1
  365. package/build-module/field-types/date.js +51 -44
  366. package/build-module/field-types/date.js.map +7 -1
  367. package/build-module/field-types/datetime.js +43 -39
  368. package/build-module/field-types/datetime.js.map +7 -1
  369. package/build-module/field-types/email.js +39 -42
  370. package/build-module/field-types/email.js.map +7 -1
  371. package/build-module/field-types/index.js +43 -72
  372. package/build-module/field-types/index.js.map +7 -1
  373. package/build-module/field-types/integer.js +52 -41
  374. package/build-module/field-types/integer.js.map +7 -1
  375. package/build-module/field-types/media.js +7 -23
  376. package/build-module/field-types/media.js.map +7 -1
  377. package/build-module/field-types/number.js +77 -0
  378. package/build-module/field-types/number.js.map +7 -0
  379. package/build-module/field-types/password.js +12 -36
  380. package/build-module/field-types/password.js.map +7 -1
  381. package/build-module/field-types/telephone.js +36 -40
  382. package/build-module/field-types/telephone.js.map +7 -1
  383. package/build-module/field-types/text.js +36 -41
  384. package/build-module/field-types/text.js.map +7 -1
  385. package/build-module/field-types/url.js +36 -40
  386. package/build-module/field-types/url.js.map +7 -1
  387. package/build-module/field-types/utils/render-from-elements.js +22 -0
  388. package/build-module/field-types/utils/render-from-elements.js.map +7 -0
  389. package/build-module/hooks/index.js +5 -0
  390. package/build-module/hooks/index.js.map +7 -0
  391. package/build-module/hooks/use-elements.js +43 -0
  392. package/build-module/hooks/use-elements.js.map +7 -0
  393. package/build-module/hooks/use-form-validity.js +392 -0
  394. package/build-module/hooks/use-form-validity.js.map +7 -0
  395. package/build-module/index.js +15 -7
  396. package/build-module/index.js.map +7 -1
  397. package/build-module/lock-unlock.js +8 -7
  398. package/build-module/lock-unlock.js.map +7 -1
  399. package/build-module/types/dataform.js +1 -0
  400. package/build-module/types/dataform.js.map +7 -0
  401. package/build-module/types/dataviews.js +1 -0
  402. package/build-module/types/dataviews.js.map +7 -0
  403. package/build-module/types/field-api.js +1 -0
  404. package/build-module/types/field-api.js.map +7 -0
  405. package/build-module/types/index.js +1 -0
  406. package/build-module/types/index.js.map +7 -0
  407. package/build-module/types/private.js +1 -0
  408. package/build-module/types/private.js.map +7 -0
  409. package/build-module/utils/filter-sort-and-paginate.js +278 -0
  410. package/build-module/utils/filter-sort-and-paginate.js.map +7 -0
  411. package/build-module/utils/has-elements.js +7 -0
  412. package/build-module/utils/has-elements.js.map +7 -0
  413. package/build-module/utils/normalize-fields.js +134 -0
  414. package/build-module/utils/normalize-fields.js.map +7 -0
  415. package/build-style/style-rtl.css +81 -217
  416. package/build-style/style.css +81 -217
  417. package/build-types/components/dataform/index.d.ts +1 -1
  418. package/build-types/components/dataform/index.d.ts.map +1 -1
  419. package/build-types/components/dataform-context/index.d.ts.map +1 -1
  420. package/build-types/components/dataviews-bulk-actions/index.d.ts +1 -1
  421. package/build-types/components/dataviews-bulk-actions/index.d.ts.map +1 -1
  422. package/build-types/components/dataviews-context/index.d.ts +1 -1
  423. package/build-types/components/dataviews-filters/filter.d.ts +1 -1
  424. package/build-types/components/dataviews-filters/filter.d.ts.map +1 -1
  425. package/build-types/components/dataviews-filters/search-widget.d.ts.map +1 -1
  426. package/build-types/components/dataviews-filters/use-filters.d.ts.map +1 -1
  427. package/build-types/components/dataviews-item-actions/index.d.ts.map +1 -1
  428. package/build-types/components/dataviews-picker/footer.d.ts.map +1 -1
  429. package/build-types/components/dataviews-selection-checkbox/index.d.ts +1 -1
  430. package/build-types/dataform-controls/array.d.ts +1 -1
  431. package/build-types/dataform-controls/array.d.ts.map +1 -1
  432. package/build-types/dataform-controls/checkbox.d.ts +1 -1
  433. package/build-types/dataform-controls/checkbox.d.ts.map +1 -1
  434. package/build-types/dataform-controls/color.d.ts +1 -1
  435. package/build-types/dataform-controls/color.d.ts.map +1 -1
  436. package/build-types/dataform-controls/date.d.ts +1 -1
  437. package/build-types/dataform-controls/date.d.ts.map +1 -1
  438. package/build-types/dataform-controls/datetime.d.ts +1 -1
  439. package/build-types/dataform-controls/datetime.d.ts.map +1 -1
  440. package/build-types/dataform-controls/email.d.ts +1 -1
  441. package/build-types/dataform-controls/email.d.ts.map +1 -1
  442. package/build-types/dataform-controls/index.d.ts.map +1 -1
  443. package/build-types/dataform-controls/integer.d.ts +4 -1
  444. package/build-types/dataform-controls/integer.d.ts.map +1 -1
  445. package/build-types/dataform-controls/number.d.ts +6 -0
  446. package/build-types/dataform-controls/number.d.ts.map +1 -0
  447. package/build-types/dataform-controls/password.d.ts +1 -1
  448. package/build-types/dataform-controls/password.d.ts.map +1 -1
  449. package/build-types/dataform-controls/radio.d.ts +1 -1
  450. package/build-types/dataform-controls/radio.d.ts.map +1 -1
  451. package/build-types/dataform-controls/select.d.ts +1 -1
  452. package/build-types/dataform-controls/select.d.ts.map +1 -1
  453. package/build-types/dataform-controls/telephone.d.ts +1 -1
  454. package/build-types/dataform-controls/telephone.d.ts.map +1 -1
  455. package/build-types/dataform-controls/text.d.ts +1 -1
  456. package/build-types/dataform-controls/text.d.ts.map +1 -1
  457. package/build-types/dataform-controls/textarea.d.ts +1 -1
  458. package/build-types/dataform-controls/textarea.d.ts.map +1 -1
  459. package/build-types/dataform-controls/toggle-group.d.ts +1 -1
  460. package/build-types/dataform-controls/toggle-group.d.ts.map +1 -1
  461. package/build-types/dataform-controls/toggle.d.ts +1 -1
  462. package/build-types/dataform-controls/toggle.d.ts.map +1 -1
  463. package/build-types/dataform-controls/url.d.ts +1 -1
  464. package/build-types/dataform-controls/url.d.ts.map +1 -1
  465. package/build-types/dataform-controls/utils/get-custom-validity.d.ts +9 -0
  466. package/build-types/dataform-controls/utils/get-custom-validity.d.ts.map +1 -0
  467. package/build-types/dataform-controls/utils/relative-date-control.d.ts +5 -0
  468. package/build-types/dataform-controls/utils/relative-date-control.d.ts.map +1 -0
  469. package/build-types/dataform-controls/utils/validated-input.d.ts +1 -1
  470. package/build-types/dataform-controls/utils/validated-input.d.ts.map +1 -1
  471. package/build-types/dataform-controls/utils/validated-number.d.ts +9 -0
  472. package/build-types/dataform-controls/utils/validated-number.d.ts.map +1 -0
  473. package/build-types/{dataforms-layouts → dataform-layouts}/card/index.d.ts +1 -1
  474. package/build-types/dataform-layouts/card/index.d.ts.map +1 -0
  475. package/build-types/{dataforms-layouts → dataform-layouts}/data-form-layout.d.ts +5 -3
  476. package/build-types/dataform-layouts/data-form-layout.d.ts.map +1 -0
  477. package/build-types/dataform-layouts/get-summary-fields.d.ts +12 -0
  478. package/build-types/dataform-layouts/get-summary-fields.d.ts.map +1 -0
  479. package/build-types/{dataforms-layouts → dataform-layouts}/index.d.ts +0 -5
  480. package/build-types/dataform-layouts/index.d.ts.map +1 -0
  481. package/build-types/dataform-layouts/is-combined-field.d.ts.map +1 -0
  482. package/build-types/{normalize-form-fields.d.ts → dataform-layouts/normalize-form-fields.d.ts} +1 -1
  483. package/build-types/dataform-layouts/normalize-form-fields.d.ts.map +1 -0
  484. package/build-types/{dataforms-layouts → dataform-layouts}/panel/dropdown.d.ts +8 -7
  485. package/build-types/dataform-layouts/panel/dropdown.d.ts.map +1 -0
  486. package/build-types/{dataforms-layouts → dataform-layouts}/panel/index.d.ts +1 -1
  487. package/build-types/dataform-layouts/panel/index.d.ts.map +1 -0
  488. package/build-types/{dataforms-layouts → dataform-layouts}/panel/modal.d.ts +5 -5
  489. package/build-types/dataform-layouts/panel/modal.d.ts.map +1 -0
  490. package/build-types/dataform-layouts/panel/summary-button.d.ts.map +1 -0
  491. package/build-types/{dataforms-layouts → dataform-layouts}/regular/index.d.ts +1 -1
  492. package/build-types/dataform-layouts/regular/index.d.ts.map +1 -0
  493. package/build-types/{dataforms-layouts → dataform-layouts}/row/index.d.ts +1 -1
  494. package/build-types/dataform-layouts/row/index.d.ts.map +1 -0
  495. package/build-types/dataviews-layouts/list/index.d.ts.map +1 -1
  496. package/build-types/dataviews-layouts/utils/item-click-wrapper.d.ts +1 -1
  497. package/build-types/dataviews-layouts/utils/item-click-wrapper.d.ts.map +1 -1
  498. package/build-types/field-types/array.d.ts.map +1 -1
  499. package/build-types/field-types/boolean.d.ts +2 -1
  500. package/build-types/field-types/boolean.d.ts.map +1 -1
  501. package/build-types/field-types/color.d.ts +2 -1
  502. package/build-types/field-types/color.d.ts.map +1 -1
  503. package/build-types/field-types/date.d.ts +4 -3
  504. package/build-types/field-types/date.d.ts.map +1 -1
  505. package/build-types/field-types/datetime.d.ts +3 -2
  506. package/build-types/field-types/datetime.d.ts.map +1 -1
  507. package/build-types/field-types/email.d.ts +3 -2
  508. package/build-types/field-types/email.d.ts.map +1 -1
  509. package/build-types/field-types/index.d.ts.map +1 -1
  510. package/build-types/field-types/integer.d.ts +2 -1
  511. package/build-types/field-types/integer.d.ts.map +1 -1
  512. package/build-types/field-types/media.d.ts +2 -5
  513. package/build-types/field-types/media.d.ts.map +1 -1
  514. package/build-types/field-types/number.d.ts +21 -0
  515. package/build-types/field-types/number.d.ts.map +1 -0
  516. package/build-types/field-types/password.d.ts +4 -3
  517. package/build-types/field-types/password.d.ts.map +1 -1
  518. package/build-types/field-types/telephone.d.ts +4 -3
  519. package/build-types/field-types/telephone.d.ts.map +1 -1
  520. package/build-types/field-types/text.d.ts +4 -3
  521. package/build-types/field-types/text.d.ts.map +1 -1
  522. package/build-types/field-types/url.d.ts +4 -3
  523. package/build-types/field-types/url.d.ts.map +1 -1
  524. package/build-types/field-types/utils/render-from-elements.d.ts +6 -0
  525. package/build-types/field-types/utils/render-from-elements.d.ts.map +1 -0
  526. package/build-types/hooks/index.d.ts +5 -0
  527. package/build-types/hooks/index.d.ts.map +1 -0
  528. package/build-types/hooks/use-elements.d.ts +12 -0
  529. package/build-types/hooks/use-elements.d.ts.map +1 -0
  530. package/build-types/hooks/use-form-validity.d.ts +16 -0
  531. package/build-types/hooks/use-form-validity.d.ts.map +1 -0
  532. package/build-types/index.d.ts +2 -2
  533. package/build-types/index.d.ts.map +1 -1
  534. package/build-types/{components/dataform/stories/index.story.d.ts → stories/dataform.story.d.ts} +16 -6
  535. package/build-types/stories/dataform.story.d.ts.map +1 -0
  536. package/build-types/{components/dataviews-picker/stories/index.story.d.ts → stories/dataviews-picker.story.d.ts} +2 -2
  537. package/build-types/stories/dataviews-picker.story.d.ts.map +1 -0
  538. package/build-types/{components/dataviews/stories/fixtures.d.ts → stories/dataviews.fixtures.d.ts} +2 -2
  539. package/build-types/stories/dataviews.fixtures.d.ts.map +1 -0
  540. package/build-types/{components/dataviews/stories/index.story.d.ts → stories/dataviews.story.d.ts} +3 -3
  541. package/build-types/stories/dataviews.story.d.ts.map +1 -0
  542. package/build-types/stories/field-types.story.d.ts +157 -0
  543. package/build-types/stories/field-types.story.d.ts.map +1 -0
  544. package/build-types/test/use-form-validity.d.ts +2 -0
  545. package/build-types/test/use-form-validity.d.ts.map +1 -0
  546. package/build-types/types/dataform.d.ts +112 -0
  547. package/build-types/types/dataform.d.ts.map +1 -0
  548. package/build-types/types/dataviews.d.ts +341 -0
  549. package/build-types/types/dataviews.d.ts.map +1 -0
  550. package/build-types/types/field-api.d.ts +298 -0
  551. package/build-types/types/field-api.d.ts.map +1 -0
  552. package/build-types/types/index.d.ts +4 -0
  553. package/build-types/types/index.d.ts.map +1 -0
  554. package/build-types/{private-types.d.ts → types/private.d.ts} +1 -1
  555. package/build-types/types/private.d.ts.map +1 -0
  556. package/build-types/{filter-and-sort-data-view.d.ts → utils/filter-sort-and-paginate.d.ts} +3 -3
  557. package/build-types/utils/filter-sort-and-paginate.d.ts.map +1 -0
  558. package/build-types/utils/has-elements.d.ts +6 -0
  559. package/build-types/utils/has-elements.d.ts.map +1 -0
  560. package/build-types/utils/normalize-fields.d.ts +9 -0
  561. package/build-types/utils/normalize-fields.d.ts.map +1 -0
  562. package/build-wp/index.js +3151 -2714
  563. package/package.json +16 -18
  564. package/src/components/dataform/index.tsx +9 -3
  565. package/src/components/dataform-context/index.tsx +3 -1
  566. package/src/components/dataviews/index.tsx +2 -2
  567. package/src/components/dataviews/style.scss +4 -0
  568. package/src/components/dataviews-bulk-actions/index.tsx +1 -2
  569. package/src/components/dataviews-bulk-actions/style.scss +3 -0
  570. package/src/components/dataviews-context/index.ts +1 -1
  571. package/src/components/dataviews-filters/filter.tsx +11 -5
  572. package/src/components/dataviews-filters/search-widget.tsx +30 -3
  573. package/src/components/dataviews-filters/style.scss +21 -6
  574. package/src/components/dataviews-filters/use-filters.ts +4 -2
  575. package/src/components/dataviews-footer/style.scss +4 -0
  576. package/src/components/dataviews-item-actions/index.tsx +6 -2
  577. package/src/components/dataviews-item-actions/style.scss +3 -0
  578. package/src/components/dataviews-pagination/style.scss +3 -0
  579. package/src/components/dataviews-picker/footer.tsx +2 -4
  580. package/src/components/dataviews-picker/index.tsx +2 -2
  581. package/src/components/dataviews-picker/style.scss +2 -0
  582. package/src/components/dataviews-selection-checkbox/index.tsx +1 -1
  583. package/src/components/dataviews-selection-checkbox/style.scss +3 -0
  584. package/src/components/dataviews-view-config/style.scss +3 -0
  585. package/src/dataform-controls/array.tsx +16 -82
  586. package/src/dataform-controls/checkbox.tsx +5 -41
  587. package/src/dataform-controls/color.tsx +5 -37
  588. package/src/dataform-controls/date.tsx +375 -238
  589. package/src/dataform-controls/datetime.tsx +92 -60
  590. package/src/dataform-controls/email.tsx +2 -0
  591. package/src/dataform-controls/index.tsx +4 -1
  592. package/src/dataform-controls/integer.tsx +3 -179
  593. package/src/dataform-controls/number.tsx +10 -0
  594. package/src/dataform-controls/password.tsx +2 -0
  595. package/src/dataform-controls/radio.tsx +24 -55
  596. package/src/dataform-controls/select.tsx +14 -61
  597. package/src/dataform-controls/style.scss +2 -0
  598. package/src/dataform-controls/telephone.tsx +2 -0
  599. package/src/dataform-controls/text.tsx +2 -0
  600. package/src/dataform-controls/textarea.tsx +6 -42
  601. package/src/dataform-controls/toggle-group.tsx +38 -64
  602. package/src/dataform-controls/toggle.tsx +6 -42
  603. package/src/dataform-controls/url.tsx +2 -0
  604. package/src/dataform-controls/utils/get-custom-validity.ts +24 -0
  605. package/src/dataform-controls/{relative-date-control.tsx → utils/relative-date-control.tsx} +37 -25
  606. package/src/dataform-controls/utils/validated-input.tsx +4 -40
  607. package/src/dataform-controls/utils/validated-number.tsx +171 -0
  608. package/src/{dataforms-layouts → dataform-layouts}/card/index.tsx +106 -8
  609. package/src/dataform-layouts/card/style.scss +24 -0
  610. package/src/{dataforms-layouts → dataform-layouts}/data-form-layout.tsx +22 -5
  611. package/src/dataform-layouts/get-summary-fields.ts +42 -0
  612. package/src/{dataforms-layouts → dataform-layouts}/index.tsx +32 -2
  613. package/src/{normalize-form-fields.ts → dataform-layouts/normalize-form-fields.ts} +28 -1
  614. package/src/{dataforms-layouts → dataform-layouts}/panel/dropdown.tsx +36 -15
  615. package/src/{dataforms-layouts → dataform-layouts}/panel/index.tsx +88 -55
  616. package/src/{dataforms-layouts → dataform-layouts}/panel/modal.tsx +42 -31
  617. package/src/{dataforms-layouts → dataform-layouts}/panel/style.scss +3 -0
  618. package/src/{dataforms-layouts → dataform-layouts}/regular/index.tsx +5 -1
  619. package/src/{dataforms-layouts → dataform-layouts}/regular/style.scss +2 -0
  620. package/src/{dataforms-layouts → dataform-layouts}/row/index.tsx +9 -4
  621. package/src/dataform-layouts/style.scss +5 -0
  622. package/src/dataviews-layouts/grid/index.tsx +1 -1
  623. package/src/dataviews-layouts/grid/style.scss +8 -3
  624. package/src/dataviews-layouts/list/index.tsx +0 -2
  625. package/src/dataviews-layouts/list/style.scss +3 -0
  626. package/src/dataviews-layouts/picker-grid/index.tsx +1 -1
  627. package/src/dataviews-layouts/picker-grid/style.scss +8 -4
  628. package/src/dataviews-layouts/table/column-header-menu.tsx +1 -1
  629. package/src/dataviews-layouts/table/index.tsx +1 -1
  630. package/src/dataviews-layouts/table/style.scss +9 -0
  631. package/src/dataviews-layouts/utils/grid-items.scss +2 -0
  632. package/src/dataviews-layouts/utils/item-click-wrapper.tsx +40 -2
  633. package/src/field-types/array.tsx +1 -0
  634. package/src/field-types/boolean.tsx +4 -3
  635. package/src/field-types/color.tsx +4 -10
  636. package/src/field-types/{date.ts → date.tsx} +5 -16
  637. package/src/field-types/datetime.tsx +8 -21
  638. package/src/field-types/email.tsx +7 -11
  639. package/src/field-types/index.tsx +13 -23
  640. package/src/field-types/integer.tsx +7 -11
  641. package/src/field-types/media.tsx +3 -17
  642. package/src/field-types/number.tsx +92 -0
  643. package/src/field-types/password.tsx +8 -21
  644. package/src/field-types/telephone.tsx +8 -21
  645. package/src/field-types/text.tsx +8 -21
  646. package/src/field-types/url.tsx +8 -21
  647. package/src/field-types/utils/render-from-elements.tsx +29 -0
  648. package/src/hooks/index.ts +4 -0
  649. package/src/hooks/use-elements.ts +66 -0
  650. package/src/hooks/use-form-validity.ts +571 -0
  651. package/src/index.ts +2 -2
  652. package/src/{components/dataform/stories/index.story.tsx → stories/dataform.story.tsx} +455 -63
  653. package/src/{components/dataviews-picker/stories/index.story.tsx → stories/dataviews-picker.story.tsx} +5 -9
  654. package/src/{components/dataviews/stories/fixtures.tsx → stories/dataviews.fixtures.tsx} +36 -5
  655. package/src/{components/dataviews/stories/index.story.tsx → stories/dataviews.story.tsx} +7 -8
  656. package/src/{field-types/stories/index.story.tsx → stories/field-types.story.tsx} +244 -48
  657. package/src/style.scss +19 -18
  658. package/src/test/dataform.tsx +36 -0
  659. package/src/test/dataviews-picker.tsx +1 -1
  660. package/src/test/dataviews.tsx +1 -2
  661. package/src/test/{filter-and-sort-data-view.js → filter-sort-and-paginate.js} +63 -16
  662. package/src/test/normalize-fields.ts +23 -1
  663. package/src/test/normalize-form-fields.ts +54 -5
  664. package/src/test/use-form-validity.ts +546 -0
  665. package/src/types/dataform.ts +144 -0
  666. package/src/types/dataviews.ts +443 -0
  667. package/src/types/field-api.ts +381 -0
  668. package/src/types/index.ts +3 -0
  669. package/src/{filter-and-sort-data-view.ts → utils/filter-sort-and-paginate.ts} +4 -4
  670. package/src/utils/has-elements.ts +11 -0
  671. package/src/{normalize-fields.ts → utils/normalize-fields.ts} +13 -8
  672. package/tsconfig.tsbuildinfo +1 -1
  673. package/build/dataform-controls/relative-date-control.js +0 -105
  674. package/build/dataform-controls/relative-date-control.js.map +0 -1
  675. package/build/dataforms-layouts/card/index.js +0 -136
  676. package/build/dataforms-layouts/card/index.js.map +0 -1
  677. package/build/dataforms-layouts/data-form-layout.js +0 -71
  678. package/build/dataforms-layouts/data-form-layout.js.map +0 -1
  679. package/build/dataforms-layouts/index.js +0 -58
  680. package/build/dataforms-layouts/index.js.map +0 -1
  681. package/build/dataforms-layouts/is-combined-field.js +0 -14
  682. package/build/dataforms-layouts/is-combined-field.js.map +0 -1
  683. package/build/dataforms-layouts/panel/dropdown.js +0 -120
  684. package/build/dataforms-layouts/panel/dropdown.js.map +0 -1
  685. package/build/dataforms-layouts/panel/index.js +0 -126
  686. package/build/dataforms-layouts/panel/index.js.map +0 -1
  687. package/build/dataforms-layouts/panel/modal.js +0 -120
  688. package/build/dataforms-layouts/panel/modal.js.map +0 -1
  689. package/build/dataforms-layouts/panel/summary-button.js +0 -67
  690. package/build/dataforms-layouts/panel/summary-button.js.map +0 -1
  691. package/build/dataforms-layouts/regular/index.js +0 -116
  692. package/build/dataforms-layouts/regular/index.js.map +0 -1
  693. package/build/dataforms-layouts/row/index.js +0 -113
  694. package/build/dataforms-layouts/row/index.js.map +0 -1
  695. package/build/filter-and-sort-data-view.js +0 -313
  696. package/build/filter-and-sort-data-view.js.map +0 -1
  697. package/build/normalize-fields.js +0 -155
  698. package/build/normalize-fields.js.map +0 -1
  699. package/build/normalize-form-fields.js +0 -81
  700. package/build/normalize-form-fields.js.map +0 -1
  701. package/build/private-types.js +0 -6
  702. package/build/private-types.js.map +0 -1
  703. package/build/types.js +0 -6
  704. package/build/types.js.map +0 -1
  705. package/build/utils.js +0 -22
  706. package/build/utils.js.map +0 -1
  707. package/build/validation.js +0 -61
  708. package/build/validation.js.map +0 -1
  709. package/build-module/dataform-controls/relative-date-control.js +0 -96
  710. package/build-module/dataform-controls/relative-date-control.js.map +0 -1
  711. package/build-module/dataforms-layouts/card/index.js +0 -127
  712. package/build-module/dataforms-layouts/card/index.js.map +0 -1
  713. package/build-module/dataforms-layouts/data-form-layout.js +0 -62
  714. package/build-module/dataforms-layouts/data-form-layout.js.map +0 -1
  715. package/build-module/dataforms-layouts/index.js +0 -51
  716. package/build-module/dataforms-layouts/index.js.map +0 -1
  717. package/build-module/dataforms-layouts/is-combined-field.js +0 -8
  718. package/build-module/dataforms-layouts/is-combined-field.js.map +0 -1
  719. package/build-module/dataforms-layouts/panel/dropdown.js +0 -113
  720. package/build-module/dataforms-layouts/panel/dropdown.js.map +0 -1
  721. package/build-module/dataforms-layouts/panel/index.js +0 -119
  722. package/build-module/dataforms-layouts/panel/index.js.map +0 -1
  723. package/build-module/dataforms-layouts/panel/modal.js +0 -113
  724. package/build-module/dataforms-layouts/panel/modal.js.map +0 -1
  725. package/build-module/dataforms-layouts/panel/summary-button.js +0 -60
  726. package/build-module/dataforms-layouts/panel/summary-button.js.map +0 -1
  727. package/build-module/dataforms-layouts/regular/index.js +0 -109
  728. package/build-module/dataforms-layouts/regular/index.js.map +0 -1
  729. package/build-module/dataforms-layouts/row/index.js +0 -106
  730. package/build-module/dataforms-layouts/row/index.js.map +0 -1
  731. package/build-module/filter-and-sort-data-view.js +0 -305
  732. package/build-module/filter-and-sort-data-view.js.map +0 -1
  733. package/build-module/normalize-fields.js +0 -145
  734. package/build-module/normalize-fields.js.map +0 -1
  735. package/build-module/normalize-form-fields.js +0 -73
  736. package/build-module/normalize-form-fields.js.map +0 -1
  737. package/build-module/private-types.js +0 -2
  738. package/build-module/private-types.js.map +0 -1
  739. package/build-module/types.js +0 -2
  740. package/build-module/types.js.map +0 -1
  741. package/build-module/utils.js +0 -16
  742. package/build-module/utils.js.map +0 -1
  743. package/build-module/validation.js +0 -54
  744. package/build-module/validation.js.map +0 -1
  745. package/build-types/components/dataform/stories/index.story.d.ts.map +0 -1
  746. package/build-types/components/dataviews/stories/fixtures.d.ts.map +0 -1
  747. package/build-types/components/dataviews/stories/index.story.d.ts.map +0 -1
  748. package/build-types/components/dataviews-picker/stories/index.story.d.ts.map +0 -1
  749. package/build-types/dataform-controls/relative-date-control.d.ts +0 -47
  750. package/build-types/dataform-controls/relative-date-control.d.ts.map +0 -1
  751. package/build-types/dataforms-layouts/card/index.d.ts.map +0 -1
  752. package/build-types/dataforms-layouts/data-form-layout.d.ts.map +0 -1
  753. package/build-types/dataforms-layouts/index.d.ts.map +0 -1
  754. package/build-types/dataforms-layouts/is-combined-field.d.ts.map +0 -1
  755. package/build-types/dataforms-layouts/panel/dropdown.d.ts.map +0 -1
  756. package/build-types/dataforms-layouts/panel/index.d.ts.map +0 -1
  757. package/build-types/dataforms-layouts/panel/modal.d.ts.map +0 -1
  758. package/build-types/dataforms-layouts/panel/summary-button.d.ts.map +0 -1
  759. package/build-types/dataforms-layouts/regular/index.d.ts.map +0 -1
  760. package/build-types/dataforms-layouts/row/index.d.ts.map +0 -1
  761. package/build-types/field-types/stories/index.story.d.ts +0 -85
  762. package/build-types/field-types/stories/index.story.d.ts.map +0 -1
  763. package/build-types/filter-and-sort-data-view.d.ts.map +0 -1
  764. package/build-types/normalize-fields.d.ts +0 -12
  765. package/build-types/normalize-fields.d.ts.map +0 -1
  766. package/build-types/normalize-form-fields.d.ts.map +0 -1
  767. package/build-types/private-types.d.ts.map +0 -1
  768. package/build-types/test/validation.d.ts +0 -2
  769. package/build-types/test/validation.d.ts.map +0 -1
  770. package/build-types/types.d.ts +0 -688
  771. package/build-types/types.d.ts.map +0 -1
  772. package/build-types/utils.d.ts +0 -6
  773. package/build-types/utils.d.ts.map +0 -1
  774. package/build-types/validation.d.ts +0 -12
  775. package/build-types/validation.d.ts.map +0 -1
  776. package/src/dataforms-layouts/card/style.scss +0 -10
  777. package/src/test/validation.ts +0 -312
  778. package/src/types.ts +0 -891
  779. package/src/utils.ts +0 -15
  780. package/src/validation.ts +0 -91
  781. /package/build-types/{dataforms-layouts → dataform-layouts}/is-combined-field.d.ts +0 -0
  782. /package/build-types/{dataforms-layouts → dataform-layouts}/panel/summary-button.d.ts +0 -0
  783. /package/src/{dataforms-layouts → dataform-layouts}/is-combined-field.ts +0 -0
  784. /package/src/{dataforms-layouts → dataform-layouts}/panel/summary-button.tsx +0 -0
  785. /package/src/{dataforms-layouts → dataform-layouts}/row/style.scss +0 -0
  786. /package/src/{components/dataviews/stories/style.css → stories/dataviews.style.css} +0 -0
  787. /package/src/{private-types.tsx → types/private.ts} +0 -0
@@ -1,40 +1,60 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var email_exports = {};
30
+ __export(email_exports, {
31
+ default: () => Email
6
32
  });
7
- exports.default = Email;
8
- var _components = require("@wordpress/components");
9
- var _icons = require("@wordpress/icons");
10
- var _validatedInput = _interopRequireDefault(require("./utils/validated-input"));
11
- var _jsxRuntime = require("react/jsx-runtime");
12
- /**
13
- * WordPress dependencies
14
- */
15
-
16
- /**
17
- * Internal dependencies
18
- */
19
-
33
+ module.exports = __toCommonJS(email_exports);
34
+ var import_jsx_runtime = require("react/jsx-runtime");
35
+ var import_components = require("@wordpress/components");
36
+ var import_icons = require("@wordpress/icons");
37
+ var import_validated_input = __toESM(require("./utils/validated-input"));
20
38
  function Email({
21
39
  data,
22
40
  field,
23
41
  onChange,
24
- hideLabelFromVision
42
+ hideLabelFromVision,
43
+ validity
25
44
  }) {
26
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_validatedInput.default, {
27
- data,
28
- field,
29
- onChange,
30
- hideLabelFromVision,
31
- type: 'email',
32
- prefix: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalInputControlPrefixWrapper, {
33
- variant: "icon",
34
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
35
- icon: _icons.atSymbol
36
- })
37
- })
38
- });
45
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
46
+ import_validated_input.default,
47
+ {
48
+ ...{
49
+ data,
50
+ field,
51
+ onChange,
52
+ hideLabelFromVision,
53
+ validity,
54
+ type: "email",
55
+ prefix: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.__experimentalInputControlPrefixWrapper, { variant: "icon", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.Icon, { icon: import_icons.atSymbol }) })
56
+ }
57
+ }
58
+ );
39
59
  }
40
- //# sourceMappingURL=email.js.map
60
+ //# sourceMappingURL=email.js.map
@@ -1 +1,7 @@
1
- {"version":3,"names":["_components","require","_icons","_validatedInput","_interopRequireDefault","_jsxRuntime","Email","data","field","onChange","hideLabelFromVision","jsx","default","type","prefix","__experimentalInputControlPrefixWrapper","variant","children","Icon","icon","atSymbol"],"sources":["@wordpress/dataviews/src/dataform-controls/email.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tIcon,\n\t__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n} from '@wordpress/components';\nimport { atSymbol } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport type { DataFormControlProps } from '../types';\nimport ValidatedText from './utils/validated-input';\n\nexport default function Email< Item >( {\n\tdata,\n\tfield,\n\tonChange,\n\thideLabelFromVision,\n}: DataFormControlProps< Item > ) {\n\treturn (\n\t\t<ValidatedText\n\t\t\t{ ...{\n\t\t\t\tdata,\n\t\t\t\tfield,\n\t\t\t\tonChange,\n\t\t\t\thideLabelFromVision,\n\t\t\t\ttype: 'email',\n\t\t\t\tprefix: (\n\t\t\t\t\t<InputControlPrefixWrapper variant=\"icon\">\n\t\t\t\t\t\t<Icon icon={ atSymbol } />\n\t\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t\t),\n\t\t\t} }\n\t\t/>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAIA,IAAAC,MAAA,GAAAD,OAAA;AAMA,IAAAE,eAAA,GAAAC,sBAAA,CAAAH,OAAA;AAAoD,IAAAI,WAAA,GAAAJ,OAAA;AAbpD;AACA;AACA;;AAOA;AACA;AACA;;AAIe,SAASK,KAAKA,CAAU;EACtCC,IAAI;EACJC,KAAK;EACLC,QAAQ;EACRC;AAC6B,CAAC,EAAG;EACjC,oBACC,IAAAL,WAAA,CAAAM,GAAA,EAACR,eAAA,CAAAS,OAAa;IAEZL,IAAI;IACJC,KAAK;IACLC,QAAQ;IACRC,mBAAmB;IACnBG,IAAI,EAAE,OAAO;IACbC,MAAM,eACL,IAAAT,WAAA,CAAAM,GAAA,EAACX,WAAA,CAAAe,uCAAyB;MAACC,OAAO,EAAC,MAAM;MAAAC,QAAA,eACxC,IAAAZ,WAAA,CAAAM,GAAA,EAACX,WAAA,CAAAkB,IAAI;QAACC,IAAI,EAAGC;MAAU,CAAE;IAAC,CACA;EAC3B,CAEF,CAAC;AAEJ","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/dataform-controls/email.tsx"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport {\n\tIcon,\n\t__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n} from '@wordpress/components';\nimport { atSymbol } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport type { DataFormControlProps } from '../types';\nimport ValidatedText from './utils/validated-input';\n\nexport default function Email< Item >( {\n\tdata,\n\tfield,\n\tonChange,\n\thideLabelFromVision,\n\tvalidity,\n}: DataFormControlProps< Item > ) {\n\treturn (\n\t\t<ValidatedText\n\t\t\t{ ...{\n\t\t\t\tdata,\n\t\t\t\tfield,\n\t\t\t\tonChange,\n\t\t\t\thideLabelFromVision,\n\t\t\t\tvalidity,\n\t\t\t\ttype: 'email',\n\t\t\t\tprefix: (\n\t\t\t\t\t<InputControlPrefixWrapper variant=\"icon\">\n\t\t\t\t\t\t<Icon icon={ atSymbol } />\n\t\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t\t),\n\t\t\t} }\n\t\t/>\n\t);\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAiCM;AA9BN,wBAGO;AACP,mBAAyB;AAMzB,6BAA0B;AAEX,SAAR,MAAgC;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAAkC;AACjC,SACC;AAAA,IAAC,uBAAAA;AAAA,IAAA;AAAA,MACE,GAAG;AAAA,QACJ;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,MAAM;AAAA,QACN,QACC,4CAAC,kBAAAC,yCAAA,EAA0B,SAAQ,QAClC,sDAAC,0BAAK,MAAO,uBAAW,GACzB;AAAA,MAEF;AAAA;AAAA,EACD;AAEF;",
6
+ "names": ["ValidatedText", "InputControlPrefixWrapper"]
7
+ }
@@ -1,84 +1,99 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var dataform_controls_exports = {};
30
+ __export(dataform_controls_exports, {
31
+ getControl: () => getControl,
32
+ getControlByType: () => getControlByType
6
33
  });
7
- exports.getControl = getControl;
8
- exports.getControlByType = getControlByType;
9
- var _checkbox = _interopRequireDefault(require("./checkbox"));
10
- var _datetime = _interopRequireDefault(require("./datetime"));
11
- var _date = _interopRequireDefault(require("./date"));
12
- var _email = _interopRequireDefault(require("./email"));
13
- var _telephone = _interopRequireDefault(require("./telephone"));
14
- var _url = _interopRequireDefault(require("./url"));
15
- var _integer = _interopRequireDefault(require("./integer"));
16
- var _radio = _interopRequireDefault(require("./radio"));
17
- var _select = _interopRequireDefault(require("./select"));
18
- var _text = _interopRequireDefault(require("./text"));
19
- var _toggle = _interopRequireDefault(require("./toggle"));
20
- var _textarea = _interopRequireDefault(require("./textarea"));
21
- var _toggleGroup = _interopRequireDefault(require("./toggle-group"));
22
- var _array = _interopRequireDefault(require("./array"));
23
- var _color = _interopRequireDefault(require("./color"));
24
- var _password = _interopRequireDefault(require("./password"));
25
- var _jsxRuntime = require("react/jsx-runtime");
26
- /**
27
- * External dependencies
28
- */
29
-
30
- /**
31
- * Internal dependencies
32
- */
33
-
34
+ module.exports = __toCommonJS(dataform_controls_exports);
35
+ var import_jsx_runtime = require("react/jsx-runtime");
36
+ var import_checkbox = __toESM(require("./checkbox"));
37
+ var import_datetime = __toESM(require("./datetime"));
38
+ var import_date = __toESM(require("./date"));
39
+ var import_email = __toESM(require("./email"));
40
+ var import_telephone = __toESM(require("./telephone"));
41
+ var import_url = __toESM(require("./url"));
42
+ var import_integer = __toESM(require("./integer"));
43
+ var import_number = __toESM(require("./number"));
44
+ var import_radio = __toESM(require("./radio"));
45
+ var import_select = __toESM(require("./select"));
46
+ var import_text = __toESM(require("./text"));
47
+ var import_toggle = __toESM(require("./toggle"));
48
+ var import_textarea = __toESM(require("./textarea"));
49
+ var import_toggle_group = __toESM(require("./toggle-group"));
50
+ var import_array = __toESM(require("./array"));
51
+ var import_color = __toESM(require("./color"));
52
+ var import_password = __toESM(require("./password"));
53
+ var import_has_elements = __toESM(require("../utils/has-elements"));
34
54
  const FORM_CONTROLS = {
35
- array: _array.default,
36
- checkbox: _checkbox.default,
37
- color: _color.default,
38
- datetime: _datetime.default,
39
- date: _date.default,
40
- email: _email.default,
41
- telephone: _telephone.default,
42
- url: _url.default,
43
- integer: _integer.default,
44
- password: _password.default,
45
- radio: _radio.default,
46
- select: _select.default,
47
- text: _text.default,
48
- toggle: _toggle.default,
49
- textarea: _textarea.default,
50
- toggleGroup: _toggleGroup.default
55
+ array: import_array.default,
56
+ checkbox: import_checkbox.default,
57
+ color: import_color.default,
58
+ datetime: import_datetime.default,
59
+ date: import_date.default,
60
+ email: import_email.default,
61
+ telephone: import_telephone.default,
62
+ url: import_url.default,
63
+ integer: import_integer.default,
64
+ number: import_number.default,
65
+ password: import_password.default,
66
+ radio: import_radio.default,
67
+ select: import_select.default,
68
+ text: import_text.default,
69
+ toggle: import_toggle.default,
70
+ textarea: import_textarea.default,
71
+ toggleGroup: import_toggle_group.default
51
72
  };
52
73
  function isEditConfig(value) {
53
- return value && typeof value === 'object' && typeof value.control === 'string';
74
+ return value && typeof value === "object" && typeof value.control === "string";
54
75
  }
55
76
  function createConfiguredControl(config) {
56
- const {
57
- control,
58
- ...controlConfig
59
- } = config;
77
+ const { control, ...controlConfig } = config;
60
78
  const BaseControlType = getControlByType(control);
61
79
  return function ConfiguredControl(props) {
62
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(BaseControlType, {
63
- ...props,
64
- config: controlConfig
65
- });
80
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BaseControlType, { ...props, config: controlConfig });
66
81
  };
67
82
  }
68
83
  function getControl(field, fieldTypeDefinition) {
69
- if (typeof field.Edit === 'function') {
84
+ if (typeof field.Edit === "function") {
70
85
  return field.Edit;
71
86
  }
72
- if (typeof field.Edit === 'string') {
87
+ if (typeof field.Edit === "string") {
73
88
  return getControlByType(field.Edit);
74
89
  }
75
90
  if (isEditConfig(field.Edit)) {
76
91
  return createConfiguredControl(field.Edit);
77
92
  }
78
- if (field.elements && field.type !== 'array') {
79
- return getControlByType('select');
93
+ if ((0, import_has_elements.default)(field) && field.type !== "array") {
94
+ return getControlByType("select");
80
95
  }
81
- if (typeof fieldTypeDefinition.Edit === 'string') {
96
+ if (typeof fieldTypeDefinition.Edit === "string") {
82
97
  return getControlByType(fieldTypeDefinition.Edit);
83
98
  }
84
99
  if (isEditConfig(fieldTypeDefinition.Edit)) {
@@ -90,6 +105,11 @@ function getControlByType(type) {
90
105
  if (Object.keys(FORM_CONTROLS).includes(type)) {
91
106
  return FORM_CONTROLS[type];
92
107
  }
93
- throw 'Control ' + type + ' not found';
108
+ throw "Control " + type + " not found";
94
109
  }
95
- //# sourceMappingURL=index.js.map
110
+ // Annotate the CommonJS export names for ESM import in node:
111
+ 0 && (module.exports = {
112
+ getControl,
113
+ getControlByType
114
+ });
115
+ //# sourceMappingURL=index.js.map
@@ -1 +1,7 @@
1
- {"version":3,"names":["_checkbox","_interopRequireDefault","require","_datetime","_date","_email","_telephone","_url","_integer","_radio","_select","_text","_toggle","_textarea","_toggleGroup","_array","_color","_password","_jsxRuntime","FORM_CONTROLS","array","checkbox","color","datetime","date","email","telephone","url","integer","password","radio","select","text","toggle","textarea","toggleGroup","isEditConfig","value","control","createConfiguredControl","config","controlConfig","BaseControlType","getControlByType","ConfiguredControl","props","jsx","getControl","field","fieldTypeDefinition","Edit","elements","type","Object","keys","includes"],"sources":["@wordpress/dataviews/src/dataform-controls/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ComponentType } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type {\n\tDataFormControlProps,\n\tField,\n\tFieldTypeDefinition,\n\tEditConfig,\n} from '../types';\nimport checkbox from './checkbox';\nimport datetime from './datetime';\nimport date from './date';\nimport email from './email';\nimport telephone from './telephone';\nimport url from './url';\nimport integer from './integer';\nimport radio from './radio';\nimport select from './select';\nimport text from './text';\nimport toggle from './toggle';\nimport textarea from './textarea';\nimport toggleGroup from './toggle-group';\nimport array from './array';\nimport color from './color';\nimport password from './password';\n\ninterface FormControls {\n\t[ key: string ]: ComponentType< DataFormControlProps< any > >;\n}\n\nconst FORM_CONTROLS: FormControls = {\n\tarray,\n\tcheckbox,\n\tcolor,\n\tdatetime,\n\tdate,\n\temail,\n\ttelephone,\n\turl,\n\tinteger,\n\tpassword,\n\tradio,\n\tselect,\n\ttext,\n\ttoggle,\n\ttextarea,\n\ttoggleGroup,\n};\n\nfunction isEditConfig( value: any ): value is EditConfig {\n\treturn (\n\t\tvalue && typeof value === 'object' && typeof value.control === 'string'\n\t);\n}\n\nfunction createConfiguredControl( config: EditConfig ) {\n\tconst { control, ...controlConfig } = config;\n\tconst BaseControlType = getControlByType( control );\n\n\treturn function ConfiguredControl< Item >(\n\t\tprops: DataFormControlProps< Item >\n\t) {\n\t\treturn <BaseControlType { ...props } config={ controlConfig } />;\n\t};\n}\n\nexport function getControl< Item >(\n\tfield: Field< Item >,\n\tfieldTypeDefinition: FieldTypeDefinition< Item >\n) {\n\tif ( typeof field.Edit === 'function' ) {\n\t\treturn field.Edit;\n\t}\n\n\tif ( typeof field.Edit === 'string' ) {\n\t\treturn getControlByType( field.Edit );\n\t}\n\n\tif ( isEditConfig( field.Edit ) ) {\n\t\treturn createConfiguredControl( field.Edit );\n\t}\n\n\tif ( field.elements && field.type !== 'array' ) {\n\t\treturn getControlByType( 'select' );\n\t}\n\n\tif ( typeof fieldTypeDefinition.Edit === 'string' ) {\n\t\treturn getControlByType( fieldTypeDefinition.Edit );\n\t}\n\n\tif ( isEditConfig( fieldTypeDefinition.Edit ) ) {\n\t\treturn createConfiguredControl( fieldTypeDefinition.Edit );\n\t}\n\n\treturn fieldTypeDefinition.Edit;\n}\n\nexport function getControlByType( type: string ) {\n\tif ( Object.keys( FORM_CONTROLS ).includes( type ) ) {\n\t\treturn FORM_CONTROLS[ type ];\n\t}\n\n\tthrow 'Control ' + type + ' not found';\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/dataform-controls/index.tsx"],
4
+ "sourcesContent": ["/**\n * External dependencies\n */\nimport type { ComponentType } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type {\n\tDataFormControlProps,\n\tField,\n\tFieldTypeDefinition,\n\tEditConfig,\n} from '../types';\nimport checkbox from './checkbox';\nimport datetime from './datetime';\nimport date from './date';\nimport email from './email';\nimport telephone from './telephone';\nimport url from './url';\nimport integer from './integer';\nimport number from './number';\nimport radio from './radio';\nimport select from './select';\nimport text from './text';\nimport toggle from './toggle';\nimport textarea from './textarea';\nimport toggleGroup from './toggle-group';\nimport array from './array';\nimport color from './color';\nimport password from './password';\nimport hasElements from '../utils/has-elements';\n\ninterface FormControls {\n\t[ key: string ]: ComponentType< DataFormControlProps< any > >;\n}\n\nconst FORM_CONTROLS: FormControls = {\n\tarray,\n\tcheckbox,\n\tcolor,\n\tdatetime,\n\tdate,\n\temail,\n\ttelephone,\n\turl,\n\tinteger,\n\tnumber,\n\tpassword,\n\tradio,\n\tselect,\n\ttext,\n\ttoggle,\n\ttextarea,\n\ttoggleGroup,\n};\n\nfunction isEditConfig( value: any ): value is EditConfig {\n\treturn (\n\t\tvalue && typeof value === 'object' && typeof value.control === 'string'\n\t);\n}\n\nfunction createConfiguredControl( config: EditConfig ) {\n\tconst { control, ...controlConfig } = config;\n\tconst BaseControlType = getControlByType( control );\n\n\treturn function ConfiguredControl< Item >(\n\t\tprops: DataFormControlProps< Item >\n\t) {\n\t\treturn <BaseControlType { ...props } config={ controlConfig } />;\n\t};\n}\n\nexport function getControl< Item >(\n\tfield: Field< Item >,\n\tfieldTypeDefinition: FieldTypeDefinition< Item >\n) {\n\tif ( typeof field.Edit === 'function' ) {\n\t\treturn field.Edit;\n\t}\n\n\tif ( typeof field.Edit === 'string' ) {\n\t\treturn getControlByType( field.Edit );\n\t}\n\n\tif ( isEditConfig( field.Edit ) ) {\n\t\treturn createConfiguredControl( field.Edit );\n\t}\n\n\tif ( hasElements( field ) && field.type !== 'array' ) {\n\t\treturn getControlByType( 'select' );\n\t}\n\n\tif ( typeof fieldTypeDefinition.Edit === 'string' ) {\n\t\treturn getControlByType( fieldTypeDefinition.Edit );\n\t}\n\n\tif ( isEditConfig( fieldTypeDefinition.Edit ) ) {\n\t\treturn createConfiguredControl( fieldTypeDefinition.Edit );\n\t}\n\n\treturn fieldTypeDefinition.Edit;\n}\n\nexport function getControlByType( type: string ) {\n\tif ( Object.keys( FORM_CONTROLS ).includes( type ) ) {\n\t\treturn FORM_CONTROLS[ type ];\n\t}\n\n\tthrow 'Control ' + type + ' not found';\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAsES;AAxDT,sBAAqB;AACrB,sBAAqB;AACrB,kBAAiB;AACjB,mBAAkB;AAClB,uBAAsB;AACtB,iBAAgB;AAChB,qBAAoB;AACpB,oBAAmB;AACnB,mBAAkB;AAClB,oBAAmB;AACnB,kBAAiB;AACjB,oBAAmB;AACnB,sBAAqB;AACrB,0BAAwB;AACxB,mBAAkB;AAClB,mBAAkB;AAClB,sBAAqB;AACrB,0BAAwB;AAMxB,MAAM,gBAA8B;AAAA,EACnC,oBAAAA;AAAA,EACA,0BAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,0BAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,4BAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,wBAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,0BAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,0BAAAC;AAAA,EACA,iCAAAC;AACD;AAEA,SAAS,aAAc,OAAkC;AACxD,SACC,SAAS,OAAO,UAAU,YAAY,OAAO,MAAM,YAAY;AAEjE;AAEA,SAAS,wBAAyB,QAAqB;AACtD,QAAM,EAAE,SAAS,GAAG,cAAc,IAAI;AACtC,QAAM,kBAAkB,iBAAkB,OAAQ;AAElD,SAAO,SAAS,kBACf,OACC;AACD,WAAO,4CAAC,mBAAkB,GAAG,OAAQ,QAAS,eAAgB;AAAA,EAC/D;AACD;AAEO,SAAS,WACf,OACA,qBACC;AACD,MAAK,OAAO,MAAM,SAAS,YAAa;AACvC,WAAO,MAAM;AAAA,EACd;AAEA,MAAK,OAAO,MAAM,SAAS,UAAW;AACrC,WAAO,iBAAkB,MAAM,IAAK;AAAA,EACrC;AAEA,MAAK,aAAc,MAAM,IAAK,GAAI;AACjC,WAAO,wBAAyB,MAAM,IAAK;AAAA,EAC5C;AAEA,UAAK,oBAAAC,SAAa,KAAM,KAAK,MAAM,SAAS,SAAU;AACrD,WAAO,iBAAkB,QAAS;AAAA,EACnC;AAEA,MAAK,OAAO,oBAAoB,SAAS,UAAW;AACnD,WAAO,iBAAkB,oBAAoB,IAAK;AAAA,EACnD;AAEA,MAAK,aAAc,oBAAoB,IAAK,GAAI;AAC/C,WAAO,wBAAyB,oBAAoB,IAAK;AAAA,EAC1D;AAEA,SAAO,oBAAoB;AAC5B;AAEO,SAAS,iBAAkB,MAAe;AAChD,MAAK,OAAO,KAAM,aAAc,EAAE,SAAU,IAAK,GAAI;AACpD,WAAO,cAAe,IAAK;AAAA,EAC5B;AAEA,QAAM,aAAa,OAAO;AAC3B;",
6
+ "names": ["array", "checkbox", "color", "datetime", "date", "email", "telephone", "url", "integer", "number", "password", "radio", "select", "text", "toggle", "textarea", "toggleGroup", "hasElements"]
7
+ }
@@ -1,132 +1,39 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = Integer;
8
- var _deepmerge = _interopRequireDefault(require("deepmerge"));
9
- var _components = require("@wordpress/components");
10
- var _element = require("@wordpress/element");
11
- var _i18n = require("@wordpress/i18n");
12
- var _constants = require("../constants");
13
- var _lockUnlock = require("../lock-unlock");
14
- var _jsxRuntime = require("react/jsx-runtime");
15
- /**
16
- * External dependencies
17
- */
18
-
19
- /**
20
- * WordPress dependencies
21
- */
22
-
23
- /**
24
- * Internal dependencies
25
- */
26
-
27
- const {
28
- ValidatedNumberControl
29
- } = (0, _lockUnlock.unlock)(_components.privateApis);
30
- function BetweenControls({
31
- value,
32
- onChange,
33
- hideLabelFromVision
34
- }) {
35
- const [min = '', max = ''] = value;
36
- const onChangeMin = (0, _element.useCallback)(newValue => onChange([Number(newValue), max]), [onChange, max]);
37
- const onChangeMax = (0, _element.useCallback)(newValue => onChange([min, Number(newValue)]), [onChange, min]);
38
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.BaseControl, {
39
- __nextHasNoMarginBottom: true,
40
- help: (0, _i18n.__)('The max. value must be greater than the min. value.'),
41
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.Flex, {
42
- direction: "row",
43
- gap: 4,
44
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalNumberControl, {
45
- label: (0, _i18n.__)('Min.'),
46
- value: min,
47
- max: max ? Number(max) - 1 : undefined,
48
- onChange: onChangeMin,
49
- __next40pxDefaultSize: true,
50
- hideLabelFromVision: hideLabelFromVision
51
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalNumberControl, {
52
- label: (0, _i18n.__)('Max.'),
53
- value: max,
54
- min: min ? Number(min) + 1 : undefined,
55
- onChange: onChangeMax,
56
- __next40pxDefaultSize: true,
57
- hideLabelFromVision: hideLabelFromVision
58
- })]
59
- })
60
- });
61
- }
62
- function Integer({
63
- data,
64
- field,
65
- onChange,
66
- hideLabelFromVision,
67
- operator
68
- }) {
69
- var _getValue;
70
- const {
71
- label,
72
- description,
73
- getValue,
74
- setValue
75
- } = field;
76
- const value = (_getValue = getValue({
77
- item: data
78
- })) !== null && _getValue !== void 0 ? _getValue : '';
79
- const [customValidity, setCustomValidity] = (0, _element.useState)(undefined);
80
- const onChangeControl = (0, _element.useCallback)(newValue => {
81
- onChange(setValue({
82
- item: data,
83
- // Do not convert an empty string or undefined to a number,
84
- // otherwise there's a mismatch between the UI control (empty)
85
- // and the data relied by onChange (0).
86
- value: ['', undefined].includes(newValue) ? undefined : Number(newValue)
87
- }));
88
- }, [data, onChange, setValue]);
89
- const onChangeBetweenControls = (0, _element.useCallback)(newValue => {
90
- onChange(setValue({
91
- item: data,
92
- value: newValue
93
- }));
94
- }, [data, onChange, setValue]);
95
- const onValidateControl = (0, _element.useCallback)(newValue => {
96
- const message = field.isValid?.custom?.((0, _deepmerge.default)(data, setValue({
97
- item: data,
98
- value: [undefined, '', null].includes(newValue) ? undefined : Number(newValue)
99
- })), field);
100
- if (message) {
101
- setCustomValidity({
102
- type: 'invalid',
103
- message
104
- });
105
- return;
106
- }
107
- setCustomValidity(undefined);
108
- }, [data, field, setValue]);
109
- if (operator === _constants.OPERATOR_BETWEEN) {
110
- let valueBetween = ['', ''];
111
- if (Array.isArray(value) && value.length === 2 && value.every(element => typeof element === 'number' || element === '')) {
112
- valueBetween = value;
113
- }
114
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(BetweenControls, {
115
- value: valueBetween,
116
- onChange: onChangeBetweenControls,
117
- hideLabelFromVision: hideLabelFromVision
118
- });
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
119
17
  }
120
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(ValidatedNumberControl, {
121
- required: !!field.isValid?.required,
122
- onValidate: onValidateControl,
123
- customValidity: customValidity,
124
- label: label,
125
- help: description,
126
- value: value,
127
- onChange: onChangeControl,
128
- __next40pxDefaultSize: true,
129
- hideLabelFromVision: hideLabelFromVision
130
- });
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var integer_exports = {};
30
+ __export(integer_exports, {
31
+ default: () => Number
32
+ });
33
+ module.exports = __toCommonJS(integer_exports);
34
+ var import_jsx_runtime = require("react/jsx-runtime");
35
+ var import_validated_number = __toESM(require("./utils/validated-number"));
36
+ function Number(props) {
37
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_validated_number.default, { ...props, decimals: 0 });
131
38
  }
132
- //# sourceMappingURL=integer.js.map
39
+ //# sourceMappingURL=integer.js.map
@@ -1 +1,7 @@
1
- {"version":3,"names":["_deepmerge","_interopRequireDefault","require","_components","_element","_i18n","_constants","_lockUnlock","_jsxRuntime","ValidatedNumberControl","unlock","privateApis","BetweenControls","value","onChange","hideLabelFromVision","min","max","onChangeMin","useCallback","newValue","Number","onChangeMax","jsx","BaseControl","__nextHasNoMarginBottom","help","__","children","jsxs","Flex","direction","gap","__experimentalNumberControl","label","undefined","__next40pxDefaultSize","Integer","data","field","operator","_getValue","description","getValue","setValue","item","customValidity","setCustomValidity","useState","onChangeControl","includes","onChangeBetweenControls","onValidateControl","message","isValid","custom","deepMerge","type","OPERATOR_BETWEEN","valueBetween","Array","isArray","length","every","element","required","onValidate"],"sources":["@wordpress/dataviews/src/dataform-controls/integer.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport deepMerge from 'deepmerge';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tFlex,\n\tBaseControl,\n\t__experimentalNumberControl as NumberControl,\n\tprivateApis,\n} from '@wordpress/components';\nimport { useCallback, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { OPERATOR_BETWEEN } from '../constants';\nimport type { DataFormControlProps } from '../types';\nimport { unlock } from '../lock-unlock';\n\nconst { ValidatedNumberControl } = unlock( privateApis );\n\ntype IntegerBetween = [ number | string, number | string ];\n\nfunction BetweenControls( {\n\tvalue,\n\tonChange,\n\thideLabelFromVision,\n}: {\n\tvalue: IntegerBetween;\n\tonChange: ( [ min, max ]: IntegerBetween ) => void;\n\thideLabelFromVision?: boolean;\n} ) {\n\tconst [ min = '', max = '' ] = value;\n\n\tconst onChangeMin = useCallback(\n\t\t( newValue: string | undefined ) =>\n\t\t\tonChange( [ Number( newValue ), max ] ),\n\t\t[ onChange, max ]\n\t);\n\n\tconst onChangeMax = useCallback(\n\t\t( newValue: string | undefined ) =>\n\t\t\tonChange( [ min, Number( newValue ) ] ),\n\t\t[ onChange, min ]\n\t);\n\n\treturn (\n\t\t<BaseControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\thelp={ __( 'The max. value must be greater than the min. value.' ) }\n\t\t>\n\t\t\t<Flex direction=\"row\" gap={ 4 }>\n\t\t\t\t<NumberControl\n\t\t\t\t\tlabel={ __( 'Min.' ) }\n\t\t\t\t\tvalue={ min }\n\t\t\t\t\tmax={ max ? Number( max ) - 1 : undefined }\n\t\t\t\t\tonChange={ onChangeMin }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t\t/>\n\t\t\t\t<NumberControl\n\t\t\t\t\tlabel={ __( 'Max.' ) }\n\t\t\t\t\tvalue={ max }\n\t\t\t\t\tmin={ min ? Number( min ) + 1 : undefined }\n\t\t\t\t\tonChange={ onChangeMax }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t\t/>\n\t\t\t</Flex>\n\t\t</BaseControl>\n\t);\n}\n\nexport default function Integer< Item >( {\n\tdata,\n\tfield,\n\tonChange,\n\thideLabelFromVision,\n\toperator,\n}: DataFormControlProps< Item > ) {\n\tconst { label, description, getValue, setValue } = field;\n\tconst value = getValue( { item: data } ) ?? '';\n\tconst [ customValidity, setCustomValidity ] =\n\t\tuseState<\n\t\t\tReact.ComponentProps<\n\t\t\t\ttypeof ValidatedNumberControl\n\t\t\t>[ 'customValidity' ]\n\t\t>( undefined );\n\n\tconst onChangeControl = useCallback(\n\t\t( newValue: string | undefined ) => {\n\t\t\tonChange(\n\t\t\t\tsetValue( {\n\t\t\t\t\titem: data,\n\t\t\t\t\t// Do not convert an empty string or undefined to a number,\n\t\t\t\t\t// otherwise there's a mismatch between the UI control (empty)\n\t\t\t\t\t// and the data relied by onChange (0).\n\t\t\t\t\tvalue: [ '', undefined ].includes( newValue )\n\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t: Number( newValue ),\n\t\t\t\t} )\n\t\t\t);\n\t\t},\n\t\t[ data, onChange, setValue ]\n\t);\n\n\tconst onChangeBetweenControls = useCallback(\n\t\t( newValue: IntegerBetween ) => {\n\t\t\tonChange(\n\t\t\t\tsetValue( {\n\t\t\t\t\titem: data,\n\t\t\t\t\tvalue: newValue,\n\t\t\t\t} )\n\t\t\t);\n\t\t},\n\t\t[ data, onChange, setValue ]\n\t);\n\n\tconst onValidateControl = useCallback(\n\t\t( newValue: any ) => {\n\t\t\tconst message = field.isValid?.custom?.(\n\t\t\t\tdeepMerge(\n\t\t\t\t\tdata,\n\t\t\t\t\tsetValue( {\n\t\t\t\t\t\titem: data,\n\t\t\t\t\t\tvalue: [ undefined, '', null ].includes( newValue )\n\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t: Number( newValue ),\n\t\t\t\t\t} ) as Partial< Item >\n\t\t\t\t),\n\t\t\t\tfield\n\t\t\t);\n\n\t\t\tif ( message ) {\n\t\t\t\tsetCustomValidity( {\n\t\t\t\t\ttype: 'invalid',\n\t\t\t\t\tmessage,\n\t\t\t\t} );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tsetCustomValidity( undefined );\n\t\t},\n\t\t[ data, field, setValue ]\n\t);\n\n\tif ( operator === OPERATOR_BETWEEN ) {\n\t\tlet valueBetween: IntegerBetween = [ '', '' ];\n\t\tif (\n\t\t\tArray.isArray( value ) &&\n\t\t\tvalue.length === 2 &&\n\t\t\tvalue.every(\n\t\t\t\t( element ) => typeof element === 'number' || element === ''\n\t\t\t)\n\t\t) {\n\t\t\tvalueBetween = value as IntegerBetween;\n\t\t}\n\t\treturn (\n\t\t\t<BetweenControls\n\t\t\t\tvalue={ valueBetween }\n\t\t\t\tonChange={ onChangeBetweenControls }\n\t\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<ValidatedNumberControl\n\t\t\trequired={ !! field.isValid?.required }\n\t\t\tonValidate={ onValidateControl }\n\t\t\tcustomValidity={ customValidity }\n\t\t\tlabel={ label }\n\t\t\thelp={ description }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChangeControl }\n\t\t\t__next40pxDefaultSize\n\t\t\thideLabelFromVision={ hideLabelFromVision }\n\t\t/>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,WAAA,GAAAD,OAAA;AAMA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAKA,IAAAI,UAAA,GAAAJ,OAAA;AAEA,IAAAK,WAAA,GAAAL,OAAA;AAAwC,IAAAM,WAAA,GAAAN,OAAA;AAtBxC;AACA;AACA;;AAGA;AACA;AACA;;AAUA;AACA;AACA;;AAKA,MAAM;EAAEO;AAAuB,CAAC,GAAG,IAAAC,kBAAM,EAAEC,uBAAY,CAAC;AAIxD,SAASC,eAAeA,CAAE;EACzBC,KAAK;EACLC,QAAQ;EACRC;AAKD,CAAC,EAAG;EACH,MAAM,CAAEC,GAAG,GAAG,EAAE,EAAEC,GAAG,GAAG,EAAE,CAAE,GAAGJ,KAAK;EAEpC,MAAMK,WAAW,GAAG,IAAAC,oBAAW,EAC5BC,QAA4B,IAC7BN,QAAQ,CAAE,CAAEO,MAAM,CAAED,QAAS,CAAC,EAAEH,GAAG,CAAG,CAAC,EACxC,CAAEH,QAAQ,EAAEG,GAAG,CAChB,CAAC;EAED,MAAMK,WAAW,GAAG,IAAAH,oBAAW,EAC5BC,QAA4B,IAC7BN,QAAQ,CAAE,CAAEE,GAAG,EAAEK,MAAM,CAAED,QAAS,CAAC,CAAG,CAAC,EACxC,CAAEN,QAAQ,EAAEE,GAAG,CAChB,CAAC;EAED,oBACC,IAAAR,WAAA,CAAAe,GAAA,EAACpB,WAAA,CAAAqB,WAAW;IACXC,uBAAuB;IACvBC,IAAI,EAAG,IAAAC,QAAE,EAAE,qDAAsD,CAAG;IAAAC,QAAA,eAEpE,IAAApB,WAAA,CAAAqB,IAAA,EAAC1B,WAAA,CAAA2B,IAAI;MAACC,SAAS,EAAC,KAAK;MAACC,GAAG,EAAG,CAAG;MAAAJ,QAAA,gBAC9B,IAAApB,WAAA,CAAAe,GAAA,EAACpB,WAAA,CAAA8B,2BAAa;QACbC,KAAK,EAAG,IAAAP,QAAE,EAAE,MAAO,CAAG;QACtBd,KAAK,EAAGG,GAAK;QACbC,GAAG,EAAGA,GAAG,GAAGI,MAAM,CAAEJ,GAAI,CAAC,GAAG,CAAC,GAAGkB,SAAW;QAC3CrB,QAAQ,EAAGI,WAAa;QACxBkB,qBAAqB;QACrBrB,mBAAmB,EAAGA;MAAqB,CAC3C,CAAC,eACF,IAAAP,WAAA,CAAAe,GAAA,EAACpB,WAAA,CAAA8B,2BAAa;QACbC,KAAK,EAAG,IAAAP,QAAE,EAAE,MAAO,CAAG;QACtBd,KAAK,EAAGI,GAAK;QACbD,GAAG,EAAGA,GAAG,GAAGK,MAAM,CAAEL,GAAI,CAAC,GAAG,CAAC,GAAGmB,SAAW;QAC3CrB,QAAQ,EAAGQ,WAAa;QACxBc,qBAAqB;QACrBrB,mBAAmB,EAAGA;MAAqB,CAC3C,CAAC;IAAA,CACG;EAAC,CACK,CAAC;AAEhB;AAEe,SAASsB,OAAOA,CAAU;EACxCC,IAAI;EACJC,KAAK;EACLzB,QAAQ;EACRC,mBAAmB;EACnByB;AAC6B,CAAC,EAAG;EAAA,IAAAC,SAAA;EACjC,MAAM;IAAEP,KAAK;IAAEQ,WAAW;IAAEC,QAAQ;IAAEC;EAAS,CAAC,GAAGL,KAAK;EACxD,MAAM1B,KAAK,IAAA4B,SAAA,GAAGE,QAAQ,CAAE;IAAEE,IAAI,EAAEP;EAAK,CAAE,CAAC,cAAAG,SAAA,cAAAA,SAAA,GAAI,EAAE;EAC9C,MAAM,CAAEK,cAAc,EAAEC,iBAAiB,CAAE,GAC1C,IAAAC,iBAAQ,EAILb,SAAU,CAAC;EAEf,MAAMc,eAAe,GAAG,IAAA9B,oBAAW,EAChCC,QAA4B,IAAM;IACnCN,QAAQ,CACP8B,QAAQ,CAAE;MACTC,IAAI,EAAEP,IAAI;MACV;MACA;MACA;MACAzB,KAAK,EAAE,CAAE,EAAE,EAAEsB,SAAS,CAAE,CAACe,QAAQ,CAAE9B,QAAS,CAAC,GAC1Ce,SAAS,GACTd,MAAM,CAAED,QAAS;IACrB,CAAE,CACH,CAAC;EACF,CAAC,EACD,CAAEkB,IAAI,EAAExB,QAAQ,EAAE8B,QAAQ,CAC3B,CAAC;EAED,MAAMO,uBAAuB,GAAG,IAAAhC,oBAAW,EACxCC,QAAwB,IAAM;IAC/BN,QAAQ,CACP8B,QAAQ,CAAE;MACTC,IAAI,EAAEP,IAAI;MACVzB,KAAK,EAAEO;IACR,CAAE,CACH,CAAC;EACF,CAAC,EACD,CAAEkB,IAAI,EAAExB,QAAQ,EAAE8B,QAAQ,CAC3B,CAAC;EAED,MAAMQ,iBAAiB,GAAG,IAAAjC,oBAAW,EAClCC,QAAa,IAAM;IACpB,MAAMiC,OAAO,GAAGd,KAAK,CAACe,OAAO,EAAEC,MAAM,GACpC,IAAAC,kBAAS,EACRlB,IAAI,EACJM,QAAQ,CAAE;MACTC,IAAI,EAAEP,IAAI;MACVzB,KAAK,EAAE,CAAEsB,SAAS,EAAE,EAAE,EAAE,IAAI,CAAE,CAACe,QAAQ,CAAE9B,QAAS,CAAC,GAChDe,SAAS,GACTd,MAAM,CAAED,QAAS;IACrB,CAAE,CACH,CAAC,EACDmB,KACD,CAAC;IAED,IAAKc,OAAO,EAAG;MACdN,iBAAiB,CAAE;QAClBU,IAAI,EAAE,SAAS;QACfJ;MACD,CAAE,CAAC;MACH;IACD;IAEAN,iBAAiB,CAAEZ,SAAU,CAAC;EAC/B,CAAC,EACD,CAAEG,IAAI,EAAEC,KAAK,EAAEK,QAAQ,CACxB,CAAC;EAED,IAAKJ,QAAQ,KAAKkB,2BAAgB,EAAG;IACpC,IAAIC,YAA4B,GAAG,CAAE,EAAE,EAAE,EAAE,CAAE;IAC7C,IACCC,KAAK,CAACC,OAAO,CAAEhD,KAAM,CAAC,IACtBA,KAAK,CAACiD,MAAM,KAAK,CAAC,IAClBjD,KAAK,CAACkD,KAAK,CACRC,OAAO,IAAM,OAAOA,OAAO,KAAK,QAAQ,IAAIA,OAAO,KAAK,EAC3D,CAAC,EACA;MACDL,YAAY,GAAG9C,KAAuB;IACvC;IACA,oBACC,IAAAL,WAAA,CAAAe,GAAA,EAACX,eAAe;MACfC,KAAK,EAAG8C,YAAc;MACtB7C,QAAQ,EAAGqC,uBAAyB;MACpCpC,mBAAmB,EAAGA;IAAqB,CAC3C,CAAC;EAEJ;EAEA,oBACC,IAAAP,WAAA,CAAAe,GAAA,EAACd,sBAAsB;IACtBwD,QAAQ,EAAG,CAAC,CAAE1B,KAAK,CAACe,OAAO,EAAEW,QAAU;IACvCC,UAAU,EAAGd,iBAAmB;IAChCN,cAAc,EAAGA,cAAgB;IACjCZ,KAAK,EAAGA,KAAO;IACfR,IAAI,EAAGgB,WAAa;IACpB7B,KAAK,EAAGA,KAAO;IACfC,QAAQ,EAAGmC,eAAiB;IAC5Bb,qBAAqB;IACrBrB,mBAAmB,EAAGA;EAAqB,CAC3C,CAAC;AAEJ","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/dataform-controls/integer.tsx"],
4
+ "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { DataFormControlProps } from '../types';\nimport ValidatedNumber from './utils/validated-number';\n\nexport default function Number< Item >( props: DataFormControlProps< Item > ) {\n\treturn <ValidatedNumber { ...props } decimals={ 0 } />;\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOQ;AAHR,8BAA4B;AAEb,SAAR,OAAiC,OAAsC;AAC7E,SAAO,4CAAC,wBAAAA,SAAA,EAAkB,GAAG,OAAQ,UAAW,GAAI;AACrD;",
6
+ "names": ["ValidatedNumber"]
7
+ }
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var number_exports = {};
30
+ __export(number_exports, {
31
+ default: () => Number
32
+ });
33
+ module.exports = __toCommonJS(number_exports);
34
+ var import_jsx_runtime = require("react/jsx-runtime");
35
+ var import_validated_number = __toESM(require("./utils/validated-number"));
36
+ function Number(props) {
37
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_validated_number.default, { ...props, decimals: 2 });
38
+ }
39
+ //# sourceMappingURL=number.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/dataform-controls/number.tsx"],
4
+ "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { DataFormControlProps } from '../types';\nimport ValidatedNumber from './utils/validated-number';\n\nexport default function Number< Item >( props: DataFormControlProps< Item > ) {\n\t// TODO: remove this hardcoded value when the decimal number is configurable\n\treturn <ValidatedNumber { ...props } decimals={ 2 } />;\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQQ;AAJR,8BAA4B;AAEb,SAAR,OAAiC,OAAsC;AAE7E,SAAO,4CAAC,wBAAAA,SAAA,EAAkB,GAAG,OAAQ,UAAW,GAAI;AACrD;",
6
+ "names": ["ValidatedNumber"]
7
+ }