@wordpress/dataviews 9.1.1-next.f56bd8138.0 → 10.0.1-next.47f435fc9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (717) hide show
  1. package/CHANGELOG.md +41 -1
  2. package/README.md +43 -30
  3. package/build/components/dataform/index.js +42 -27
  4. package/build/components/dataform/index.js.map +7 -1
  5. package/build/components/dataform-context/index.js +33 -25
  6. package/build/components/dataform-context/index.js.map +7 -1
  7. package/build/components/dataviews/index.js +193 -156
  8. package/build/components/dataviews/index.js.map +7 -1
  9. package/build/components/dataviews-bulk-actions/index.js +264 -155
  10. package/build/components/dataviews-bulk-actions/index.js.map +7 -1
  11. package/build/components/dataviews-context/index.js +40 -36
  12. package/build/components/dataviews-context/index.js.map +7 -1
  13. package/build/components/dataviews-filters/add-filter.js +78 -73
  14. package/build/components/dataviews-filters/add-filter.js.map +7 -1
  15. package/build/components/dataviews-filters/filter.js +467 -262
  16. package/build/components/dataviews-filters/filter.js.map +7 -1
  17. package/build/components/dataviews-filters/filters-toggled.js +46 -0
  18. package/build/components/dataviews-filters/filters-toggled.js.map +7 -0
  19. package/build/components/dataviews-filters/filters.js +101 -0
  20. package/build/components/dataviews-filters/filters.js.map +7 -0
  21. package/build/components/dataviews-filters/index.js +46 -197
  22. package/build/components/dataviews-filters/index.js.map +7 -1
  23. package/build/components/dataviews-filters/input-widget.js +88 -89
  24. package/build/components/dataviews-filters/input-widget.js.map +7 -1
  25. package/build/components/dataviews-filters/reset-filters.js +50 -34
  26. package/build/components/dataviews-filters/reset-filters.js.map +7 -1
  27. package/build/components/dataviews-filters/search-widget.js +290 -205
  28. package/build/components/dataviews-filters/search-widget.js.map +7 -1
  29. package/build/components/dataviews-filters/toggle.js +124 -0
  30. package/build/components/dataviews-filters/toggle.js.map +7 -0
  31. package/build/components/dataviews-filters/use-filters.js +72 -0
  32. package/build/components/dataviews-filters/use-filters.js.map +7 -0
  33. package/build/components/dataviews-filters/utils.js +26 -10
  34. package/build/components/dataviews-filters/utils.js.map +7 -1
  35. package/build/components/dataviews-footer/index.js +54 -33
  36. package/build/components/dataviews-footer/index.js.map +7 -1
  37. package/build/components/dataviews-item-actions/index.js +187 -150
  38. package/build/components/dataviews-item-actions/index.js.map +7 -1
  39. package/build/components/dataviews-layout/index.js +64 -49
  40. package/build/components/dataviews-layout/index.js.map +7 -1
  41. package/build/components/dataviews-pagination/index.js +143 -99
  42. package/build/components/dataviews-pagination/index.js.map +7 -1
  43. package/build/components/dataviews-picker/footer.js +152 -101
  44. package/build/components/dataviews-picker/footer.js.map +7 -1
  45. package/build/components/dataviews-picker/index.js +173 -147
  46. package/build/components/dataviews-picker/index.js.map +7 -1
  47. package/build/components/dataviews-search/index.js +63 -46
  48. package/build/components/dataviews-search/index.js.map +7 -1
  49. package/build/components/dataviews-selection-checkbox/index.js +45 -35
  50. package/build/components/dataviews-selection-checkbox/index.js.map +7 -1
  51. package/build/components/dataviews-view-config/index.js +587 -512
  52. package/build/components/dataviews-view-config/index.js.map +7 -1
  53. package/build/components/dataviews-view-config/infinite-scroll-toggle.js +56 -39
  54. package/build/components/dataviews-view-config/infinite-scroll-toggle.js.map +7 -1
  55. package/build/constants.js +215 -108
  56. package/build/constants.js.map +7 -1
  57. package/build/dataform-controls/array.js +152 -141
  58. package/build/dataform-controls/array.js.map +7 -1
  59. package/build/dataform-controls/checkbox.js +79 -65
  60. package/build/dataform-controls/checkbox.js.map +7 -1
  61. package/build/dataform-controls/color.js +135 -118
  62. package/build/dataform-controls/color.js.map +7 -1
  63. package/build/dataform-controls/date.js +549 -350
  64. package/build/dataform-controls/date.js.map +7 -1
  65. package/build/dataform-controls/datetime.js +212 -146
  66. package/build/dataform-controls/datetime.js.map +7 -1
  67. package/build/dataform-controls/email.js +49 -31
  68. package/build/dataform-controls/email.js.map +7 -1
  69. package/build/dataform-controls/index.js +82 -63
  70. package/build/dataform-controls/index.js.map +7 -1
  71. package/build/dataform-controls/integer.js +36 -129
  72. package/build/dataform-controls/integer.js.map +7 -1
  73. package/build/dataform-controls/number.js +39 -0
  74. package/build/dataform-controls/number.js.map +7 -0
  75. package/build/dataform-controls/password.js +63 -37
  76. package/build/dataform-controls/password.js.map +7 -1
  77. package/build/dataform-controls/radio.js +82 -66
  78. package/build/dataform-controls/radio.js.map +7 -1
  79. package/build/dataform-controls/select.js +86 -87
  80. package/build/dataform-controls/select.js.map +7 -1
  81. package/build/dataform-controls/telephone.js +49 -31
  82. package/build/dataform-controls/telephone.js.map +7 -1
  83. package/build/dataform-controls/text.js +49 -29
  84. package/build/dataform-controls/text.js.map +7 -1
  85. package/build/dataform-controls/textarea.js +85 -70
  86. package/build/dataform-controls/textarea.js.map +7 -1
  87. package/build/dataform-controls/toggle-group.js +95 -70
  88. package/build/dataform-controls/toggle-group.js.map +7 -1
  89. package/build/dataform-controls/toggle.js +80 -66
  90. package/build/dataform-controls/toggle.js.map +7 -1
  91. package/build/dataform-controls/url.js +49 -31
  92. package/build/dataform-controls/url.js.map +7 -1
  93. package/build/dataform-controls/utils/relative-date-control.js +122 -0
  94. package/build/dataform-controls/utils/relative-date-control.js.map +7 -0
  95. package/build/dataform-controls/utils/validated-input.js +90 -70
  96. package/build/dataform-controls/utils/validated-input.js.map +7 -1
  97. package/build/dataform-controls/utils/validated-number.js +191 -0
  98. package/build/dataform-controls/utils/validated-number.js.map +7 -0
  99. package/build/dataform-layouts/card/index.js +214 -0
  100. package/build/dataform-layouts/card/index.js.map +7 -0
  101. package/build/dataform-layouts/data-form-layout.js +89 -0
  102. package/build/dataform-layouts/data-form-layout.js.map +7 -0
  103. package/build/dataform-layouts/get-summary-fields.js +45 -0
  104. package/build/dataform-layouts/get-summary-fields.js.map +7 -0
  105. package/build/dataform-layouts/index.js +99 -0
  106. package/build/dataform-layouts/index.js.map +7 -0
  107. package/build/dataform-layouts/is-combined-field.js +31 -0
  108. package/build/dataform-layouts/is-combined-field.js.map +7 -0
  109. package/build/dataform-layouts/normalize-form-fields.js +104 -0
  110. package/build/dataform-layouts/normalize-form-fields.js.map +7 -0
  111. package/build/dataform-layouts/panel/dropdown.js +147 -0
  112. package/build/dataform-layouts/panel/dropdown.js.map +7 -0
  113. package/build/dataform-layouts/panel/index.js +150 -0
  114. package/build/dataform-layouts/panel/index.js.map +7 -0
  115. package/build/dataform-layouts/panel/modal.js +166 -0
  116. package/build/dataform-layouts/panel/modal.js.map +7 -0
  117. package/build/dataform-layouts/panel/summary-button.js +93 -0
  118. package/build/dataform-layouts/panel/summary-button.js.map +7 -0
  119. package/build/dataform-layouts/regular/index.js +135 -0
  120. package/build/dataform-layouts/regular/index.js.map +7 -0
  121. package/build/dataform-layouts/row/index.js +116 -0
  122. package/build/dataform-layouts/row/index.js.map +7 -0
  123. package/build/dataviews-layouts/grid/index.js +337 -278
  124. package/build/dataviews-layouts/grid/index.js.map +7 -1
  125. package/build/dataviews-layouts/grid/preview-size-picker.js +94 -69
  126. package/build/dataviews-layouts/grid/preview-size-picker.js.map +7 -1
  127. package/build/dataviews-layouts/index.js +75 -48
  128. package/build/dataviews-layouts/index.js.map +7 -1
  129. package/build/dataviews-layouts/list/index.js +441 -354
  130. package/build/dataviews-layouts/list/index.js.map +7 -1
  131. package/build/dataviews-layouts/picker-grid/index.js +366 -297
  132. package/build/dataviews-layouts/picker-grid/index.js.map +7 -1
  133. package/build/dataviews-layouts/table/column-header-menu.js +144 -133
  134. package/build/dataviews-layouts/table/column-header-menu.js.map +7 -1
  135. package/build/dataviews-layouts/table/column-primary.js +86 -66
  136. package/build/dataviews-layouts/table/column-primary.js.map +7 -1
  137. package/build/dataviews-layouts/table/density-picker.js +86 -46
  138. package/build/dataviews-layouts/table/density-picker.js.map +7 -1
  139. package/build/dataviews-layouts/table/index.js +354 -319
  140. package/build/dataviews-layouts/table/index.js.map +7 -1
  141. package/build/dataviews-layouts/table/use-is-horizontal-scroll-end.js +55 -47
  142. package/build/dataviews-layouts/table/use-is-horizontal-scroll-end.js.map +7 -1
  143. package/build/dataviews-layouts/utils/get-data-by-group.js +24 -13
  144. package/build/dataviews-layouts/utils/get-data-by-group.js.map +7 -1
  145. package/build/dataviews-layouts/utils/grid-items.js +51 -34
  146. package/build/dataviews-layouts/utils/grid-items.js.map +7 -1
  147. package/build/dataviews-layouts/utils/item-click-wrapper.js +53 -31
  148. package/build/dataviews-layouts/utils/item-click-wrapper.js.map +7 -1
  149. package/build/dataviews-layouts/utils/preview-size-picker.js +94 -69
  150. package/build/dataviews-layouts/utils/preview-size-picker.js.map +7 -1
  151. package/build/field-types/array.js +46 -41
  152. package/build/field-types/array.js.map +7 -1
  153. package/build/field-types/boolean.js +50 -46
  154. package/build/field-types/boolean.js.map +7 -1
  155. package/build/field-types/color.js +78 -80
  156. package/build/field-types/color.js.map +7 -1
  157. package/build/field-types/date.js +67 -47
  158. package/build/field-types/date.js.map +7 -1
  159. package/build/field-types/datetime.js +61 -43
  160. package/build/field-types/datetime.js.map +7 -1
  161. package/build/field-types/email.js +57 -47
  162. package/build/field-types/email.js.map +7 -1
  163. package/build/field-types/index.js +83 -89
  164. package/build/field-types/index.js.map +7 -1
  165. package/build/field-types/integer.js +67 -45
  166. package/build/field-types/integer.js.map +7 -1
  167. package/build/field-types/media.js +25 -27
  168. package/build/field-types/media.js.map +7 -1
  169. package/build/field-types/number.js +86 -0
  170. package/build/field-types/number.js.map +7 -0
  171. package/build/field-types/password.js +39 -39
  172. package/build/field-types/password.js.map +7 -1
  173. package/build/field-types/telephone.js +54 -45
  174. package/build/field-types/telephone.js.map +7 -1
  175. package/build/field-types/text.js +54 -46
  176. package/build/field-types/text.js.map +7 -1
  177. package/build/field-types/url.js +54 -45
  178. package/build/field-types/url.js.map +7 -1
  179. package/build/field-types/utils/render-from-elements.js +31 -0
  180. package/build/field-types/utils/render-from-elements.js.map +7 -0
  181. package/build/index.js +50 -45
  182. package/build/index.js.map +7 -1
  183. package/build/lock-unlock.js +31 -14
  184. package/build/lock-unlock.js.map +7 -1
  185. package/build/types/dataform.js +17 -0
  186. package/build/types/dataform.js.map +7 -0
  187. package/build/types/dataviews.js +17 -0
  188. package/build/types/dataviews.js.map +7 -0
  189. package/build/types/field-api.js +17 -0
  190. package/build/types/field-api.js.map +7 -0
  191. package/build/types/index.js +17 -0
  192. package/build/types/index.js.map +7 -0
  193. package/build/types/private.js +17 -0
  194. package/build/types/private.js.map +7 -0
  195. package/build/utils/filter-sort-and-paginate.js +285 -0
  196. package/build/utils/filter-sort-and-paginate.js.map +7 -0
  197. package/build/utils/is-item-valid.js +75 -0
  198. package/build/utils/is-item-valid.js.map +7 -0
  199. package/build/utils/normalize-fields.js +158 -0
  200. package/build/utils/normalize-fields.js.map +7 -0
  201. package/build-module/components/dataform/index.js +15 -24
  202. package/build-module/components/dataform/index.js.map +7 -1
  203. package/build-module/components/dataform-context/index.js +11 -19
  204. package/build-module/components/dataform-context/index.js.map +7 -1
  205. package/build-module/components/dataviews/index.js +156 -131
  206. package/build-module/components/dataviews/index.js.map +7 -1
  207. package/build-module/components/dataviews-bulk-actions/index.js +227 -140
  208. package/build-module/components/dataviews-bulk-actions/index.js.map +7 -1
  209. package/build-module/components/dataviews-context/index.js +20 -30
  210. package/build-module/components/dataviews-context/index.js.map +7 -1
  211. package/build-module/components/dataviews-filters/add-filter.js +60 -68
  212. package/build-module/components/dataviews-filters/add-filter.js.map +7 -1
  213. package/build-module/components/dataviews-filters/filter.js +448 -231
  214. package/build-module/components/dataviews-filters/filter.js.map +7 -1
  215. package/build-module/components/dataviews-filters/filters-toggled.js +16 -0
  216. package/build-module/components/dataviews-filters/filters-toggled.js.map +7 -0
  217. package/build-module/components/dataviews-filters/filters.js +71 -0
  218. package/build-module/components/dataviews-filters/filters.js.map +7 -0
  219. package/build-module/components/dataviews-filters/index.js +11 -187
  220. package/build-module/components/dataviews-filters/index.js.map +7 -1
  221. package/build-module/components/dataviews-filters/input-widget.js +57 -81
  222. package/build-module/components/dataviews-filters/input-widget.js.map +7 -1
  223. package/build-module/components/dataviews-filters/reset-filters.js +33 -30
  224. package/build-module/components/dataviews-filters/reset-filters.js.map +7 -1
  225. package/build-module/components/dataviews-filters/search-widget.js +260 -195
  226. package/build-module/components/dataviews-filters/search-widget.js.map +7 -1
  227. package/build-module/components/dataviews-filters/toggle.js +94 -0
  228. package/build-module/components/dataviews-filters/toggle.js.map +7 -0
  229. package/build-module/components/dataviews-filters/use-filters.js +52 -0
  230. package/build-module/components/dataviews-filters/use-filters.js.map +7 -0
  231. package/build-module/components/dataviews-filters/utils.js +5 -6
  232. package/build-module/components/dataviews-filters/utils.js.map +7 -1
  233. package/build-module/components/dataviews-footer/index.js +28 -26
  234. package/build-module/components/dataviews-footer/index.js.map +7 -1
  235. package/build-module/components/dataviews-item-actions/index.js +170 -144
  236. package/build-module/components/dataviews-item-actions/index.js.map +7 -1
  237. package/build-module/components/dataviews-layout/index.js +35 -42
  238. package/build-module/components/dataviews-layout/index.js.map +7 -1
  239. package/build-module/components/dataviews-pagination/index.js +115 -92
  240. package/build-module/components/dataviews-pagination/index.js.map +7 -1
  241. package/build-module/components/dataviews-picker/footer.js +122 -93
  242. package/build-module/components/dataviews-picker/footer.js.map +7 -1
  243. package/build-module/components/dataviews-picker/index.js +139 -125
  244. package/build-module/components/dataviews-picker/index.js.map +7 -1
  245. package/build-module/components/dataviews-search/index.js +30 -35
  246. package/build-module/components/dataviews-search/index.js.map +7 -1
  247. package/build-module/components/dataviews-selection-checkbox/index.js +28 -31
  248. package/build-module/components/dataviews-selection-checkbox/index.js.map +7 -1
  249. package/build-module/components/dataviews-view-config/index.js +579 -504
  250. package/build-module/components/dataviews-view-config/index.js.map +7 -1
  251. package/build-module/components/dataviews-view-config/infinite-scroll-toggle.js +28 -33
  252. package/build-module/components/dataviews-view-config/infinite-scroll-toggle.js.map +7 -1
  253. package/build-module/constants.js +157 -101
  254. package/build-module/constants.js.map +7 -1
  255. package/build-module/dataform-controls/array.js +125 -137
  256. package/build-module/dataform-controls/array.js.map +7 -1
  257. package/build-module/dataform-controls/checkbox.js +51 -60
  258. package/build-module/dataform-controls/checkbox.js.map +7 -1
  259. package/build-module/dataform-controls/color.js +112 -114
  260. package/build-module/dataform-controls/color.js.map +7 -1
  261. package/build-module/dataform-controls/date.js +541 -337
  262. package/build-module/dataform-controls/date.js.map +7 -1
  263. package/build-module/dataform-controls/datetime.js +184 -136
  264. package/build-module/dataform-controls/datetime.js.map +7 -1
  265. package/build-module/dataform-controls/email.js +25 -27
  266. package/build-module/dataform-controls/email.js.map +7 -1
  267. package/build-module/dataform-controls/index.js +35 -43
  268. package/build-module/dataform-controls/index.js.map +7 -1
  269. package/build-module/dataform-controls/integer.js +8 -123
  270. package/build-module/dataform-controls/integer.js.map +7 -1
  271. package/build-module/dataform-controls/number.js +9 -0
  272. package/build-module/dataform-controls/number.js.map +7 -0
  273. package/build-module/dataform-controls/password.js +34 -29
  274. package/build-module/dataform-controls/password.js.map +7 -1
  275. package/build-module/dataform-controls/radio.js +55 -62
  276. package/build-module/dataform-controls/radio.js.map +7 -1
  277. package/build-module/dataform-controls/select.js +59 -83
  278. package/build-module/dataform-controls/select.js.map +7 -1
  279. package/build-module/dataform-controls/telephone.js +25 -27
  280. package/build-module/dataform-controls/telephone.js.map +7 -1
  281. package/build-module/dataform-controls/text.js +22 -25
  282. package/build-module/dataform-controls/text.js.map +7 -1
  283. package/build-module/dataform-controls/textarea.js +58 -66
  284. package/build-module/dataform-controls/textarea.js.map +7 -1
  285. package/build-module/dataform-controls/toggle-group.js +71 -66
  286. package/build-module/dataform-controls/toggle-group.js.map +7 -1
  287. package/build-module/dataform-controls/toggle.js +52 -61
  288. package/build-module/dataform-controls/toggle.js.map +7 -1
  289. package/build-module/dataform-controls/url.js +25 -27
  290. package/build-module/dataform-controls/url.js.map +7 -1
  291. package/build-module/dataform-controls/utils/relative-date-control.js +97 -0
  292. package/build-module/dataform-controls/utils/relative-date-control.js.map +7 -0
  293. package/build-module/dataform-controls/utils/validated-input.js +63 -66
  294. package/build-module/dataform-controls/utils/validated-input.js.map +7 -1
  295. package/build-module/dataform-controls/utils/validated-number.js +166 -0
  296. package/build-module/dataform-controls/utils/validated-number.js.map +7 -0
  297. package/build-module/dataform-layouts/card/index.js +180 -0
  298. package/build-module/dataform-layouts/card/index.js.map +7 -0
  299. package/build-module/dataform-layouts/data-form-layout.js +55 -0
  300. package/build-module/dataform-layouts/data-form-layout.js.map +7 -0
  301. package/build-module/dataform-layouts/get-summary-fields.js +21 -0
  302. package/build-module/dataform-layouts/get-summary-fields.js.map +7 -0
  303. package/build-module/dataform-layouts/index.js +68 -0
  304. package/build-module/dataform-layouts/index.js.map +7 -0
  305. package/build-module/dataform-layouts/is-combined-field.js +7 -0
  306. package/build-module/dataform-layouts/is-combined-field.js.map +7 -0
  307. package/build-module/dataform-layouts/normalize-form-fields.js +79 -0
  308. package/build-module/dataform-layouts/normalize-form-fields.js.map +7 -0
  309. package/build-module/dataform-layouts/panel/dropdown.js +124 -0
  310. package/build-module/dataform-layouts/panel/dropdown.js.map +7 -0
  311. package/build-module/dataform-layouts/panel/index.js +123 -0
  312. package/build-module/dataform-layouts/panel/index.js.map +7 -0
  313. package/build-module/dataform-layouts/panel/modal.js +141 -0
  314. package/build-module/dataform-layouts/panel/modal.js.map +7 -0
  315. package/build-module/dataform-layouts/panel/summary-button.js +73 -0
  316. package/build-module/dataform-layouts/panel/summary-button.js.map +7 -0
  317. package/build-module/dataform-layouts/regular/index.js +111 -0
  318. package/build-module/dataform-layouts/regular/index.js.map +7 -0
  319. package/build-module/dataform-layouts/row/index.js +91 -0
  320. package/build-module/dataform-layouts/row/index.js.map +7 -0
  321. package/build-module/dataviews-layouts/grid/index.js +316 -267
  322. package/build-module/dataviews-layouts/grid/index.js.map +7 -1
  323. package/build-module/dataviews-layouts/grid/preview-size-picker.js +66 -63
  324. package/build-module/dataviews-layouts/grid/preview-size-picker.js.map +7 -1
  325. package/build-module/dataviews-layouts/index.js +53 -42
  326. package/build-module/dataviews-layouts/index.js.map +7 -1
  327. package/build-module/dataviews-layouts/list/index.js +422 -339
  328. package/build-module/dataviews-layouts/list/index.js.map +7 -1
  329. package/build-module/dataviews-layouts/picker-grid/index.js +344 -288
  330. package/build-module/dataviews-layouts/picker-grid/index.js.map +7 -1
  331. package/build-module/dataviews-layouts/table/column-header-menu.js +129 -127
  332. package/build-module/dataviews-layouts/table/column-header-menu.js.map +7 -1
  333. package/build-module/dataviews-layouts/table/column-primary.js +71 -62
  334. package/build-module/dataviews-layouts/table/column-primary.js.map +7 -1
  335. package/build-module/dataviews-layouts/table/density-picker.js +61 -40
  336. package/build-module/dataviews-layouts/table/density-picker.js.map +7 -1
  337. package/build-module/dataviews-layouts/table/index.js +326 -302
  338. package/build-module/dataviews-layouts/table/index.js.map +7 -1
  339. package/build-module/dataviews-layouts/table/use-is-horizontal-scroll-end.js +31 -40
  340. package/build-module/dataviews-layouts/table/use-is-horizontal-scroll-end.js.map +7 -1
  341. package/build-module/dataviews-layouts/utils/get-data-by-group.js +7 -10
  342. package/build-module/dataviews-layouts/utils/get-data-by-group.js.map +7 -1
  343. package/build-module/dataviews-layouts/utils/grid-items.js +19 -28
  344. package/build-module/dataviews-layouts/utils/grid-items.js.map +7 -1
  345. package/build-module/dataviews-layouts/utils/item-click-wrapper.js +32 -28
  346. package/build-module/dataviews-layouts/utils/item-click-wrapper.js.map +7 -1
  347. package/build-module/dataviews-layouts/utils/preview-size-picker.js +66 -63
  348. package/build-module/dataviews-layouts/utils/preview-size-picker.js.map +7 -1
  349. package/build-module/field-types/array.js +32 -37
  350. package/build-module/field-types/array.js.map +7 -1
  351. package/build-module/field-types/boolean.js +20 -40
  352. package/build-module/field-types/boolean.js.map +7 -1
  353. package/build-module/field-types/color.js +50 -71
  354. package/build-module/field-types/color.js.map +7 -1
  355. package/build-module/field-types/date.js +49 -43
  356. package/build-module/field-types/date.js.map +7 -1
  357. package/build-module/field-types/datetime.js +42 -39
  358. package/build-module/field-types/datetime.js.map +7 -1
  359. package/build-module/field-types/email.js +38 -42
  360. package/build-module/field-types/email.js.map +7 -1
  361. package/build-module/field-types/index.js +42 -72
  362. package/build-module/field-types/index.js.map +7 -1
  363. package/build-module/field-types/integer.js +51 -41
  364. package/build-module/field-types/integer.js.map +7 -1
  365. package/build-module/field-types/media.js +7 -23
  366. package/build-module/field-types/media.js.map +7 -1
  367. package/build-module/field-types/number.js +78 -0
  368. package/build-module/field-types/number.js.map +7 -0
  369. package/build-module/field-types/password.js +11 -36
  370. package/build-module/field-types/password.js.map +7 -1
  371. package/build-module/field-types/telephone.js +35 -40
  372. package/build-module/field-types/telephone.js.map +7 -1
  373. package/build-module/field-types/text.js +35 -41
  374. package/build-module/field-types/text.js.map +7 -1
  375. package/build-module/field-types/url.js +35 -40
  376. package/build-module/field-types/url.js.map +7 -1
  377. package/build-module/field-types/utils/render-from-elements.js +11 -0
  378. package/build-module/field-types/utils/render-from-elements.js.map +7 -0
  379. package/build-module/index.js +15 -7
  380. package/build-module/index.js.map +7 -1
  381. package/build-module/lock-unlock.js +8 -7
  382. package/build-module/lock-unlock.js.map +7 -1
  383. package/build-module/types/dataform.js +1 -0
  384. package/build-module/types/dataform.js.map +7 -0
  385. package/build-module/types/dataviews.js +1 -0
  386. package/build-module/types/dataviews.js.map +7 -0
  387. package/build-module/types/field-api.js +1 -0
  388. package/build-module/types/field-api.js.map +7 -0
  389. package/build-module/types/index.js +1 -0
  390. package/build-module/types/index.js.map +7 -0
  391. package/build-module/types/private.js +1 -0
  392. package/build-module/types/private.js.map +7 -0
  393. package/build-module/utils/filter-sort-and-paginate.js +278 -0
  394. package/build-module/utils/filter-sort-and-paginate.js.map +7 -0
  395. package/build-module/utils/is-item-valid.js +45 -0
  396. package/build-module/utils/is-item-valid.js.map +7 -0
  397. package/build-module/utils/normalize-fields.js +132 -0
  398. package/build-module/utils/normalize-fields.js.map +7 -0
  399. package/build-style/style-rtl.css +73 -216
  400. package/build-style/style.css +73 -216
  401. package/build-types/components/dataviews/index.d.ts +3 -2
  402. package/build-types/components/dataviews/index.d.ts.map +1 -1
  403. package/build-types/components/dataviews-bulk-actions/index.d.ts +1 -1
  404. package/build-types/components/dataviews-bulk-actions/index.d.ts.map +1 -1
  405. package/build-types/components/dataviews-context/index.d.ts +1 -1
  406. package/build-types/components/dataviews-filters/filters-toggled.d.ts +5 -0
  407. package/build-types/components/dataviews-filters/filters-toggled.d.ts.map +1 -0
  408. package/build-types/components/dataviews-filters/filters.d.ts +6 -0
  409. package/build-types/components/dataviews-filters/filters.d.ts.map +1 -0
  410. package/build-types/components/dataviews-filters/index.d.ts +4 -8
  411. package/build-types/components/dataviews-filters/index.d.ts.map +1 -1
  412. package/build-types/components/dataviews-filters/toggle.d.ts +3 -0
  413. package/build-types/components/dataviews-filters/toggle.d.ts.map +1 -0
  414. package/build-types/components/dataviews-filters/use-filters.d.ts +4 -0
  415. package/build-types/components/dataviews-filters/use-filters.d.ts.map +1 -0
  416. package/build-types/components/dataviews-item-actions/index.d.ts.map +1 -1
  417. package/build-types/components/dataviews-picker/footer.d.ts.map +1 -1
  418. package/build-types/components/dataviews-picker/index.d.ts +3 -2
  419. package/build-types/components/dataviews-picker/index.d.ts.map +1 -1
  420. package/build-types/components/dataviews-selection-checkbox/index.d.ts +1 -1
  421. package/build-types/dataform-controls/date.d.ts.map +1 -1
  422. package/build-types/dataform-controls/datetime.d.ts.map +1 -1
  423. package/build-types/dataform-controls/index.d.ts.map +1 -1
  424. package/build-types/dataform-controls/integer.d.ts +4 -1
  425. package/build-types/dataform-controls/integer.d.ts.map +1 -1
  426. package/build-types/dataform-controls/number.d.ts +6 -0
  427. package/build-types/dataform-controls/number.d.ts.map +1 -0
  428. package/build-types/dataform-controls/select.d.ts.map +1 -1
  429. package/build-types/dataform-controls/utils/relative-date-control.d.ts +5 -0
  430. package/build-types/dataform-controls/utils/relative-date-control.d.ts.map +1 -0
  431. package/build-types/dataform-controls/utils/validated-number.d.ts +9 -0
  432. package/build-types/dataform-controls/utils/validated-number.d.ts.map +1 -0
  433. package/build-types/dataform-layouts/card/index.d.ts.map +1 -0
  434. package/build-types/dataform-layouts/data-form-layout.d.ts.map +1 -0
  435. package/build-types/dataform-layouts/get-summary-fields.d.ts +12 -0
  436. package/build-types/dataform-layouts/get-summary-fields.d.ts.map +1 -0
  437. package/build-types/{dataforms-layouts → dataform-layouts}/index.d.ts +0 -5
  438. package/build-types/dataform-layouts/index.d.ts.map +1 -0
  439. package/build-types/dataform-layouts/is-combined-field.d.ts.map +1 -0
  440. package/build-types/{normalize-form-fields.d.ts → dataform-layouts/normalize-form-fields.d.ts} +1 -1
  441. package/build-types/dataform-layouts/normalize-form-fields.d.ts.map +1 -0
  442. package/build-types/dataform-layouts/panel/dropdown.d.ts.map +1 -0
  443. package/build-types/dataform-layouts/panel/index.d.ts.map +1 -0
  444. package/build-types/dataform-layouts/panel/modal.d.ts.map +1 -0
  445. package/build-types/dataform-layouts/panel/summary-button.d.ts.map +1 -0
  446. package/build-types/dataform-layouts/regular/index.d.ts.map +1 -0
  447. package/build-types/dataform-layouts/row/index.d.ts.map +1 -0
  448. package/build-types/dataviews-layouts/list/index.d.ts.map +1 -1
  449. package/build-types/dataviews-layouts/picker-grid/index.d.ts.map +1 -1
  450. package/build-types/dataviews-layouts/utils/item-click-wrapper.d.ts +1 -1
  451. package/build-types/dataviews-layouts/utils/item-click-wrapper.d.ts.map +1 -1
  452. package/build-types/field-types/array.d.ts.map +1 -1
  453. package/build-types/field-types/boolean.d.ts +1 -0
  454. package/build-types/field-types/boolean.d.ts.map +1 -1
  455. package/build-types/field-types/color.d.ts +2 -1
  456. package/build-types/field-types/color.d.ts.map +1 -1
  457. package/build-types/field-types/date.d.ts +3 -2
  458. package/build-types/field-types/date.d.ts.map +1 -1
  459. package/build-types/field-types/datetime.d.ts +3 -2
  460. package/build-types/field-types/datetime.d.ts.map +1 -1
  461. package/build-types/field-types/email.d.ts +3 -2
  462. package/build-types/field-types/email.d.ts.map +1 -1
  463. package/build-types/field-types/index.d.ts.map +1 -1
  464. package/build-types/field-types/integer.d.ts +2 -1
  465. package/build-types/field-types/integer.d.ts.map +1 -1
  466. package/build-types/field-types/media.d.ts +2 -5
  467. package/build-types/field-types/media.d.ts.map +1 -1
  468. package/build-types/field-types/number.d.ts +21 -0
  469. package/build-types/field-types/number.d.ts.map +1 -0
  470. package/build-types/field-types/password.d.ts +3 -2
  471. package/build-types/field-types/password.d.ts.map +1 -1
  472. package/build-types/field-types/telephone.d.ts +4 -3
  473. package/build-types/field-types/telephone.d.ts.map +1 -1
  474. package/build-types/field-types/text.d.ts +4 -3
  475. package/build-types/field-types/text.d.ts.map +1 -1
  476. package/build-types/field-types/url.d.ts +4 -3
  477. package/build-types/field-types/url.d.ts.map +1 -1
  478. package/build-types/field-types/utils/render-from-elements.d.ts +6 -0
  479. package/build-types/field-types/utils/render-from-elements.d.ts.map +1 -0
  480. package/build-types/index.d.ts +2 -2
  481. package/build-types/index.d.ts.map +1 -1
  482. package/build-types/{components/dataform/stories/index.story.d.ts → stories/dataform.story.d.ts} +2 -2
  483. package/build-types/stories/dataform.story.d.ts.map +1 -0
  484. package/build-types/{components/dataviews-picker/stories/index.story.d.ts → stories/dataviews-picker.story.d.ts} +2 -2
  485. package/build-types/stories/dataviews-picker.story.d.ts.map +1 -0
  486. package/build-types/{components/dataviews/stories/fixtures.d.ts → stories/dataviews.fixtures.d.ts} +2 -2
  487. package/build-types/stories/dataviews.fixtures.d.ts.map +1 -0
  488. package/build-types/{components/dataviews/stories/index.story.d.ts → stories/dataviews.story.d.ts} +3 -3
  489. package/build-types/stories/dataviews.story.d.ts.map +1 -0
  490. package/build-types/stories/field-types.story.d.ts +134 -0
  491. package/build-types/stories/field-types.story.d.ts.map +1 -0
  492. package/build-types/types/dataform.d.ts +109 -0
  493. package/build-types/types/dataform.d.ts.map +1 -0
  494. package/build-types/types/dataviews.d.ts +333 -0
  495. package/build-types/types/dataviews.d.ts.map +1 -0
  496. package/build-types/types/field-api.d.ts +274 -0
  497. package/build-types/types/field-api.d.ts.map +1 -0
  498. package/build-types/types/index.d.ts +4 -0
  499. package/build-types/types/index.d.ts.map +1 -0
  500. package/build-types/{private-types.d.ts → types/private.d.ts} +1 -1
  501. package/build-types/types/private.d.ts.map +1 -0
  502. package/build-types/{filter-and-sort-data-view.d.ts → utils/filter-sort-and-paginate.d.ts} +3 -3
  503. package/build-types/utils/filter-sort-and-paginate.d.ts.map +1 -0
  504. package/build-types/{validation.d.ts → utils/is-item-valid.d.ts} +3 -3
  505. package/build-types/utils/is-item-valid.d.ts.map +1 -0
  506. package/build-types/utils/normalize-fields.d.ts +9 -0
  507. package/build-types/utils/normalize-fields.d.ts.map +1 -0
  508. package/build-wp/index.js +2471 -2212
  509. package/package.json +17 -19
  510. package/src/components/dataform/index.tsx +2 -2
  511. package/src/components/dataviews/index.tsx +10 -16
  512. package/src/components/dataviews/style.scss +4 -0
  513. package/src/components/dataviews-bulk-actions/index.tsx +1 -2
  514. package/src/components/dataviews-bulk-actions/style.scss +3 -0
  515. package/src/components/dataviews-context/index.ts +1 -1
  516. package/src/components/dataviews-filters/filters-toggled.tsx +20 -0
  517. package/src/components/dataviews-filters/filters.tsx +73 -0
  518. package/src/components/dataviews-filters/index.tsx +4 -246
  519. package/src/components/dataviews-filters/style.scss +13 -6
  520. package/src/components/dataviews-filters/toggle.tsx +118 -0
  521. package/src/components/dataviews-filters/use-filters.ts +73 -0
  522. package/src/components/dataviews-footer/style.scss +4 -0
  523. package/src/components/dataviews-item-actions/index.tsx +0 -1
  524. package/src/components/dataviews-item-actions/style.scss +3 -0
  525. package/src/components/dataviews-pagination/style.scss +3 -0
  526. package/src/components/dataviews-picker/footer.tsx +2 -4
  527. package/src/components/dataviews-picker/index.tsx +10 -16
  528. package/src/components/dataviews-picker/style.scss +2 -0
  529. package/src/components/dataviews-selection-checkbox/index.tsx +1 -1
  530. package/src/components/dataviews-selection-checkbox/style.scss +3 -0
  531. package/src/components/dataviews-view-config/style.scss +3 -0
  532. package/src/dataform-controls/date.tsx +372 -222
  533. package/src/dataform-controls/datetime.tsx +125 -59
  534. package/src/dataform-controls/index.tsx +2 -0
  535. package/src/dataform-controls/integer.tsx +3 -179
  536. package/src/dataform-controls/number.tsx +10 -0
  537. package/src/dataform-controls/select.tsx +1 -20
  538. package/src/dataform-controls/style.scss +2 -0
  539. package/src/dataform-controls/{relative-date-control.tsx → utils/relative-date-control.tsx} +37 -25
  540. package/src/dataform-controls/utils/validated-number.tsx +209 -0
  541. package/src/{dataforms-layouts → dataform-layouts}/card/index.tsx +103 -8
  542. package/src/dataform-layouts/card/style.scss +24 -0
  543. package/src/{dataforms-layouts → dataform-layouts}/data-form-layout.tsx +4 -2
  544. package/src/dataform-layouts/get-summary-fields.ts +42 -0
  545. package/src/{dataforms-layouts → dataform-layouts}/index.tsx +32 -2
  546. package/src/{normalize-form-fields.ts → dataform-layouts/normalize-form-fields.ts} +28 -1
  547. package/src/{dataforms-layouts → dataform-layouts}/panel/dropdown.tsx +1 -1
  548. package/src/{dataforms-layouts → dataform-layouts}/panel/index.tsx +79 -48
  549. package/src/{dataforms-layouts → dataform-layouts}/panel/modal.tsx +1 -1
  550. package/src/{dataforms-layouts → dataform-layouts}/panel/style.scss +3 -0
  551. package/src/{dataforms-layouts → dataform-layouts}/regular/index.tsx +1 -1
  552. package/src/{dataforms-layouts → dataform-layouts}/regular/style.scss +2 -0
  553. package/src/{dataforms-layouts → dataform-layouts}/row/index.tsx +2 -1
  554. package/src/dataform-layouts/style.scss +5 -0
  555. package/src/dataviews-layouts/grid/index.tsx +1 -1
  556. package/src/dataviews-layouts/grid/style.scss +8 -3
  557. package/src/dataviews-layouts/list/index.tsx +0 -2
  558. package/src/dataviews-layouts/list/style.scss +3 -0
  559. package/src/dataviews-layouts/picker-grid/index.tsx +16 -9
  560. package/src/dataviews-layouts/picker-grid/style.scss +8 -4
  561. package/src/dataviews-layouts/table/index.tsx +1 -1
  562. package/src/dataviews-layouts/table/style.scss +9 -0
  563. package/src/dataviews-layouts/utils/grid-items.scss +2 -0
  564. package/src/dataviews-layouts/utils/item-click-wrapper.tsx +40 -2
  565. package/src/field-types/array.tsx +1 -0
  566. package/src/field-types/boolean.tsx +2 -1
  567. package/src/field-types/color.tsx +2 -8
  568. package/src/field-types/{date.ts → date.tsx} +3 -14
  569. package/src/field-types/datetime.tsx +3 -18
  570. package/src/field-types/email.tsx +2 -8
  571. package/src/field-types/index.tsx +8 -20
  572. package/src/field-types/integer.tsx +2 -8
  573. package/src/field-types/media.tsx +3 -17
  574. package/src/field-types/number.tsx +96 -0
  575. package/src/field-types/password.tsx +3 -18
  576. package/src/field-types/telephone.tsx +3 -18
  577. package/src/field-types/text.tsx +3 -18
  578. package/src/field-types/url.tsx +3 -18
  579. package/src/{utils.ts → field-types/utils/render-from-elements.ts} +2 -2
  580. package/src/index.ts +2 -2
  581. package/src/{components/dataform/stories/index.story.tsx → stories/dataform.story.tsx} +217 -9
  582. package/src/{components/dataviews-picker/stories/index.story.tsx → stories/dataviews-picker.story.tsx} +5 -9
  583. package/src/{components/dataviews/stories/fixtures.tsx → stories/dataviews.fixtures.tsx} +27 -1
  584. package/src/{components/dataviews/stories/index.story.tsx → stories/dataviews.story.tsx} +8 -9
  585. package/src/{field-types/stories/index.story.tsx → stories/field-types.story.tsx} +86 -20
  586. package/src/style.scss +19 -18
  587. package/src/test/dataform.tsx +36 -0
  588. package/src/test/dataviews-picker.tsx +1 -1
  589. package/src/test/dataviews.tsx +1 -2
  590. package/src/test/{filter-and-sort-data-view.js → filter-sort-and-paginate.js} +63 -16
  591. package/src/test/normalize-fields.ts +23 -1
  592. package/src/test/normalize-form-fields.ts +54 -5
  593. package/src/test/validation.ts +235 -225
  594. package/src/types/dataform.ts +140 -0
  595. package/src/types/dataviews.ts +433 -0
  596. package/src/types/field-api.ts +350 -0
  597. package/src/types/index.ts +3 -0
  598. package/src/{filter-and-sort-data-view.ts → utils/filter-sort-and-paginate.ts} +4 -4
  599. package/src/{validation.ts → utils/is-item-valid.ts} +5 -3
  600. package/src/{normalize-fields.ts → utils/normalize-fields.ts} +6 -6
  601. package/tsconfig.tsbuildinfo +1 -1
  602. package/build/dataform-controls/relative-date-control.js +0 -105
  603. package/build/dataform-controls/relative-date-control.js.map +0 -1
  604. package/build/dataforms-layouts/card/index.js +0 -136
  605. package/build/dataforms-layouts/card/index.js.map +0 -1
  606. package/build/dataforms-layouts/data-form-layout.js +0 -71
  607. package/build/dataforms-layouts/data-form-layout.js.map +0 -1
  608. package/build/dataforms-layouts/index.js +0 -58
  609. package/build/dataforms-layouts/index.js.map +0 -1
  610. package/build/dataforms-layouts/is-combined-field.js +0 -14
  611. package/build/dataforms-layouts/is-combined-field.js.map +0 -1
  612. package/build/dataforms-layouts/panel/dropdown.js +0 -120
  613. package/build/dataforms-layouts/panel/dropdown.js.map +0 -1
  614. package/build/dataforms-layouts/panel/index.js +0 -126
  615. package/build/dataforms-layouts/panel/index.js.map +0 -1
  616. package/build/dataforms-layouts/panel/modal.js +0 -120
  617. package/build/dataforms-layouts/panel/modal.js.map +0 -1
  618. package/build/dataforms-layouts/panel/summary-button.js +0 -67
  619. package/build/dataforms-layouts/panel/summary-button.js.map +0 -1
  620. package/build/dataforms-layouts/regular/index.js +0 -116
  621. package/build/dataforms-layouts/regular/index.js.map +0 -1
  622. package/build/dataforms-layouts/row/index.js +0 -113
  623. package/build/dataforms-layouts/row/index.js.map +0 -1
  624. package/build/filter-and-sort-data-view.js +0 -313
  625. package/build/filter-and-sort-data-view.js.map +0 -1
  626. package/build/normalize-fields.js +0 -155
  627. package/build/normalize-fields.js.map +0 -1
  628. package/build/normalize-form-fields.js +0 -81
  629. package/build/normalize-form-fields.js.map +0 -1
  630. package/build/private-types.js +0 -6
  631. package/build/private-types.js.map +0 -1
  632. package/build/types.js +0 -6
  633. package/build/types.js.map +0 -1
  634. package/build/utils.js +0 -22
  635. package/build/utils.js.map +0 -1
  636. package/build/validation.js +0 -61
  637. package/build/validation.js.map +0 -1
  638. package/build-module/dataform-controls/relative-date-control.js +0 -96
  639. package/build-module/dataform-controls/relative-date-control.js.map +0 -1
  640. package/build-module/dataforms-layouts/card/index.js +0 -127
  641. package/build-module/dataforms-layouts/card/index.js.map +0 -1
  642. package/build-module/dataforms-layouts/data-form-layout.js +0 -62
  643. package/build-module/dataforms-layouts/data-form-layout.js.map +0 -1
  644. package/build-module/dataforms-layouts/index.js +0 -51
  645. package/build-module/dataforms-layouts/index.js.map +0 -1
  646. package/build-module/dataforms-layouts/is-combined-field.js +0 -8
  647. package/build-module/dataforms-layouts/is-combined-field.js.map +0 -1
  648. package/build-module/dataforms-layouts/panel/dropdown.js +0 -113
  649. package/build-module/dataforms-layouts/panel/dropdown.js.map +0 -1
  650. package/build-module/dataforms-layouts/panel/index.js +0 -119
  651. package/build-module/dataforms-layouts/panel/index.js.map +0 -1
  652. package/build-module/dataforms-layouts/panel/modal.js +0 -113
  653. package/build-module/dataforms-layouts/panel/modal.js.map +0 -1
  654. package/build-module/dataforms-layouts/panel/summary-button.js +0 -60
  655. package/build-module/dataforms-layouts/panel/summary-button.js.map +0 -1
  656. package/build-module/dataforms-layouts/regular/index.js +0 -109
  657. package/build-module/dataforms-layouts/regular/index.js.map +0 -1
  658. package/build-module/dataforms-layouts/row/index.js +0 -106
  659. package/build-module/dataforms-layouts/row/index.js.map +0 -1
  660. package/build-module/filter-and-sort-data-view.js +0 -305
  661. package/build-module/filter-and-sort-data-view.js.map +0 -1
  662. package/build-module/normalize-fields.js +0 -145
  663. package/build-module/normalize-fields.js.map +0 -1
  664. package/build-module/normalize-form-fields.js +0 -73
  665. package/build-module/normalize-form-fields.js.map +0 -1
  666. package/build-module/private-types.js +0 -2
  667. package/build-module/private-types.js.map +0 -1
  668. package/build-module/types.js +0 -2
  669. package/build-module/types.js.map +0 -1
  670. package/build-module/utils.js +0 -16
  671. package/build-module/utils.js.map +0 -1
  672. package/build-module/validation.js +0 -54
  673. package/build-module/validation.js.map +0 -1
  674. package/build-types/components/dataform/stories/index.story.d.ts.map +0 -1
  675. package/build-types/components/dataviews/stories/fixtures.d.ts.map +0 -1
  676. package/build-types/components/dataviews/stories/index.story.d.ts.map +0 -1
  677. package/build-types/components/dataviews-picker/stories/index.story.d.ts.map +0 -1
  678. package/build-types/dataform-controls/relative-date-control.d.ts +0 -47
  679. package/build-types/dataform-controls/relative-date-control.d.ts.map +0 -1
  680. package/build-types/dataforms-layouts/card/index.d.ts.map +0 -1
  681. package/build-types/dataforms-layouts/data-form-layout.d.ts.map +0 -1
  682. package/build-types/dataforms-layouts/index.d.ts.map +0 -1
  683. package/build-types/dataforms-layouts/is-combined-field.d.ts.map +0 -1
  684. package/build-types/dataforms-layouts/panel/dropdown.d.ts.map +0 -1
  685. package/build-types/dataforms-layouts/panel/index.d.ts.map +0 -1
  686. package/build-types/dataforms-layouts/panel/modal.d.ts.map +0 -1
  687. package/build-types/dataforms-layouts/panel/summary-button.d.ts.map +0 -1
  688. package/build-types/dataforms-layouts/regular/index.d.ts.map +0 -1
  689. package/build-types/dataforms-layouts/row/index.d.ts.map +0 -1
  690. package/build-types/field-types/stories/index.story.d.ts +0 -85
  691. package/build-types/field-types/stories/index.story.d.ts.map +0 -1
  692. package/build-types/filter-and-sort-data-view.d.ts.map +0 -1
  693. package/build-types/normalize-fields.d.ts +0 -12
  694. package/build-types/normalize-fields.d.ts.map +0 -1
  695. package/build-types/normalize-form-fields.d.ts.map +0 -1
  696. package/build-types/private-types.d.ts.map +0 -1
  697. package/build-types/types.d.ts +0 -688
  698. package/build-types/types.d.ts.map +0 -1
  699. package/build-types/utils.d.ts +0 -6
  700. package/build-types/utils.d.ts.map +0 -1
  701. package/build-types/validation.d.ts.map +0 -1
  702. package/src/dataforms-layouts/card/style.scss +0 -10
  703. package/src/types.ts +0 -891
  704. /package/build-types/{dataforms-layouts → dataform-layouts}/card/index.d.ts +0 -0
  705. /package/build-types/{dataforms-layouts → dataform-layouts}/data-form-layout.d.ts +0 -0
  706. /package/build-types/{dataforms-layouts → dataform-layouts}/is-combined-field.d.ts +0 -0
  707. /package/build-types/{dataforms-layouts → dataform-layouts}/panel/dropdown.d.ts +0 -0
  708. /package/build-types/{dataforms-layouts → dataform-layouts}/panel/index.d.ts +0 -0
  709. /package/build-types/{dataforms-layouts → dataform-layouts}/panel/modal.d.ts +0 -0
  710. /package/build-types/{dataforms-layouts → dataform-layouts}/panel/summary-button.d.ts +0 -0
  711. /package/build-types/{dataforms-layouts → dataform-layouts}/regular/index.d.ts +0 -0
  712. /package/build-types/{dataforms-layouts → dataform-layouts}/row/index.d.ts +0 -0
  713. /package/src/{dataforms-layouts → dataform-layouts}/is-combined-field.ts +0 -0
  714. /package/src/{dataforms-layouts → dataform-layouts}/panel/summary-button.tsx +0 -0
  715. /package/src/{dataforms-layouts → dataform-layouts}/row/style.scss +0 -0
  716. /package/src/{components/dataviews/stories/style.css → stories/dataviews.style.css} +0 -0
  717. /package/src/{private-types.tsx → types/private.ts} +0 -0
@@ -1,316 +1,533 @@
1
- /**
2
- * External dependencies
3
- */
4
- import clsx from 'clsx';
5
- /**
6
- * WordPress dependencies
7
- */
8
- import { Dropdown, __experimentalVStack as VStack, __experimentalHStack as HStack, FlexItem, SelectControl, Tooltip, Icon } from '@wordpress/components';
9
- import { __, sprintf } from '@wordpress/i18n';
10
- import { useRef, createInterpolateElement } from '@wordpress/element';
11
- import { closeSmall } from '@wordpress/icons';
12
- const ENTER = 'Enter';
13
- const SPACE = ' ';
14
-
15
- /**
16
- * Internal dependencies
17
- */
18
- import SearchWidget from './search-widget';
19
- import InputWidget from './input-widget';
20
- import { OPERATORS, OPERATOR_IS, OPERATOR_IS_NOT, OPERATOR_IS_ANY, OPERATOR_IS_NONE, OPERATOR_IS_ALL, OPERATOR_IS_NOT_ALL, OPERATOR_LESS_THAN, OPERATOR_GREATER_THAN, OPERATOR_LESS_THAN_OR_EQUAL, OPERATOR_GREATER_THAN_OR_EQUAL, OPERATOR_CONTAINS, OPERATOR_NOT_CONTAINS, OPERATOR_STARTS_WITH, OPERATOR_BEFORE, OPERATOR_AFTER, OPERATOR_BEFORE_INC, OPERATOR_AFTER_INC, OPERATOR_BETWEEN, OPERATOR_ON, OPERATOR_NOT_ON, OPERATOR_IN_THE_PAST, OPERATOR_OVER } from '../../constants';
21
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import clsx from "clsx";
3
+ import {
4
+ Dropdown,
5
+ __experimentalVStack as VStack,
6
+ __experimentalHStack as HStack,
7
+ FlexItem,
8
+ SelectControl,
9
+ Tooltip,
10
+ Icon
11
+ } from "@wordpress/components";
12
+ import { __, sprintf } from "@wordpress/i18n";
13
+ import { useRef, createInterpolateElement } from "@wordpress/element";
14
+ import { closeSmall } from "@wordpress/icons";
15
+ const ENTER = "Enter";
16
+ const SPACE = " ";
17
+ import SearchWidget from "./search-widget";
18
+ import InputWidget from "./input-widget";
19
+ import {
20
+ OPERATORS,
21
+ OPERATOR_IS,
22
+ OPERATOR_IS_NOT,
23
+ OPERATOR_IS_ANY,
24
+ OPERATOR_IS_NONE,
25
+ OPERATOR_IS_ALL,
26
+ OPERATOR_IS_NOT_ALL,
27
+ OPERATOR_LESS_THAN,
28
+ OPERATOR_GREATER_THAN,
29
+ OPERATOR_LESS_THAN_OR_EQUAL,
30
+ OPERATOR_GREATER_THAN_OR_EQUAL,
31
+ OPERATOR_CONTAINS,
32
+ OPERATOR_NOT_CONTAINS,
33
+ OPERATOR_STARTS_WITH,
34
+ OPERATOR_BEFORE,
35
+ OPERATOR_AFTER,
36
+ OPERATOR_BEFORE_INC,
37
+ OPERATOR_AFTER_INC,
38
+ OPERATOR_BETWEEN,
39
+ OPERATOR_ON,
40
+ OPERATOR_NOT_ON,
41
+ OPERATOR_IN_THE_PAST,
42
+ OPERATOR_OVER
43
+ } from "../../constants";
22
44
  const FilterText = ({
23
45
  activeElements,
24
46
  filterInView,
25
47
  filter
26
48
  }) => {
27
- if (activeElements === undefined || activeElements.length === 0) {
49
+ if (activeElements === void 0 || activeElements.length === 0) {
28
50
  return filter.name;
29
51
  }
30
52
  const filterTextWrappers = {
31
- Name: /*#__PURE__*/_jsx("span", {
32
- className: "dataviews-filters__summary-filter-text-name"
33
- }),
34
- Value: /*#__PURE__*/_jsx("span", {
35
- className: "dataviews-filters__summary-filter-text-value"
36
- })
53
+ Name: /* @__PURE__ */ jsx("span", { className: "dataviews-filters__summary-filter-text-name" }),
54
+ Value: /* @__PURE__ */ jsx("span", { className: "dataviews-filters__summary-filter-text-value" })
37
55
  };
38
56
  if (filterInView?.operator === OPERATOR_IS_ANY) {
39
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Author is any: Admin, Editor". */
40
- __('<Name>%1$s is any: </Name><Value>%2$s</Value>'), filter.name, activeElements.map(element => element.label).join(', ')), filterTextWrappers);
57
+ return createInterpolateElement(
58
+ sprintf(
59
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Author is any: Admin, Editor". */
60
+ __("<Name>%1$s is any: </Name><Value>%2$s</Value>"),
61
+ filter.name,
62
+ activeElements.map((element) => element.label).join(", ")
63
+ ),
64
+ filterTextWrappers
65
+ );
41
66
  }
42
67
  if (filterInView?.operator === OPERATOR_IS_NONE) {
43
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Author is none: Admin, Editor". */
44
- __('<Name>%1$s is none: </Name><Value>%2$s</Value>'), filter.name, activeElements.map(element => element.label).join(', ')), filterTextWrappers);
68
+ return createInterpolateElement(
69
+ sprintf(
70
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Author is none: Admin, Editor". */
71
+ __("<Name>%1$s is none: </Name><Value>%2$s</Value>"),
72
+ filter.name,
73
+ activeElements.map((element) => element.label).join(", ")
74
+ ),
75
+ filterTextWrappers
76
+ );
45
77
  }
46
78
  if (filterInView?.operator === OPERATOR_IS_ALL) {
47
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Author is all: Admin, Editor". */
48
- __('<Name>%1$s is all: </Name><Value>%2$s</Value>'), filter.name, activeElements.map(element => element.label).join(', ')), filterTextWrappers);
79
+ return createInterpolateElement(
80
+ sprintf(
81
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Author is all: Admin, Editor". */
82
+ __("<Name>%1$s is all: </Name><Value>%2$s</Value>"),
83
+ filter.name,
84
+ activeElements.map((element) => element.label).join(", ")
85
+ ),
86
+ filterTextWrappers
87
+ );
49
88
  }
50
89
  if (filterInView?.operator === OPERATOR_IS_NOT_ALL) {
51
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Author is not all: Admin, Editor". */
52
- __('<Name>%1$s is not all: </Name><Value>%2$s</Value>'), filter.name, activeElements.map(element => element.label).join(', ')), filterTextWrappers);
90
+ return createInterpolateElement(
91
+ sprintf(
92
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Author is not all: Admin, Editor". */
93
+ __("<Name>%1$s is not all: </Name><Value>%2$s</Value>"),
94
+ filter.name,
95
+ activeElements.map((element) => element.label).join(", ")
96
+ ),
97
+ filterTextWrappers
98
+ );
53
99
  }
54
100
  if (filterInView?.operator === OPERATOR_IS) {
55
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Author is: Admin". */
56
- __('<Name>%1$s is: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
101
+ return createInterpolateElement(
102
+ sprintf(
103
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Author is: Admin". */
104
+ __("<Name>%1$s is: </Name><Value>%2$s</Value>"),
105
+ filter.name,
106
+ activeElements[0].label
107
+ ),
108
+ filterTextWrappers
109
+ );
57
110
  }
58
111
  if (filterInView?.operator === OPERATOR_IS_NOT) {
59
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Author is not: Admin". */
60
- __('<Name>%1$s is not: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
112
+ return createInterpolateElement(
113
+ sprintf(
114
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Author is not: Admin". */
115
+ __("<Name>%1$s is not: </Name><Value>%2$s</Value>"),
116
+ filter.name,
117
+ activeElements[0].label
118
+ ),
119
+ filterTextWrappers
120
+ );
61
121
  }
62
122
  if (filterInView?.operator === OPERATOR_LESS_THAN) {
63
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Price is less than: 10". */
64
- __('<Name>%1$s is less than: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
123
+ return createInterpolateElement(
124
+ sprintf(
125
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Price is less than: 10". */
126
+ __("<Name>%1$s is less than: </Name><Value>%2$s</Value>"),
127
+ filter.name,
128
+ activeElements[0].label
129
+ ),
130
+ filterTextWrappers
131
+ );
65
132
  }
66
133
  if (filterInView?.operator === OPERATOR_GREATER_THAN) {
67
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Price is greater than: 10". */
68
- __('<Name>%1$s is greater than: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
134
+ return createInterpolateElement(
135
+ sprintf(
136
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Price is greater than: 10". */
137
+ __("<Name>%1$s is greater than: </Name><Value>%2$s</Value>"),
138
+ filter.name,
139
+ activeElements[0].label
140
+ ),
141
+ filterTextWrappers
142
+ );
69
143
  }
70
144
  if (filterInView?.operator === OPERATOR_LESS_THAN_OR_EQUAL) {
71
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Price is less than or equal to: 10". */
72
- __('<Name>%1$s is less than or equal to: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
145
+ return createInterpolateElement(
146
+ sprintf(
147
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Price is less than or equal to: 10". */
148
+ __(
149
+ "<Name>%1$s is less than or equal to: </Name><Value>%2$s</Value>"
150
+ ),
151
+ filter.name,
152
+ activeElements[0].label
153
+ ),
154
+ filterTextWrappers
155
+ );
73
156
  }
74
157
  if (filterInView?.operator === OPERATOR_GREATER_THAN_OR_EQUAL) {
75
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Price is greater than or equal to: 10". */
76
- __('<Name>%1$s is greater than or equal to: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
158
+ return createInterpolateElement(
159
+ sprintf(
160
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Price is greater than or equal to: 10". */
161
+ __(
162
+ "<Name>%1$s is greater than or equal to: </Name><Value>%2$s</Value>"
163
+ ),
164
+ filter.name,
165
+ activeElements[0].label
166
+ ),
167
+ filterTextWrappers
168
+ );
77
169
  }
78
170
  if (filterInView?.operator === OPERATOR_CONTAINS) {
79
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Title contains: Mars". */
80
- __('<Name>%1$s contains: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
171
+ return createInterpolateElement(
172
+ sprintf(
173
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Title contains: Mars". */
174
+ __("<Name>%1$s contains: </Name><Value>%2$s</Value>"),
175
+ filter.name,
176
+ activeElements[0].label
177
+ ),
178
+ filterTextWrappers
179
+ );
81
180
  }
82
181
  if (filterInView?.operator === OPERATOR_NOT_CONTAINS) {
83
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Description doesn't contain: photo". */
84
- __("<Name>%1$s doesn't contain: </Name><Value>%2$s</Value>"), filter.name, activeElements[0].label), filterTextWrappers);
182
+ return createInterpolateElement(
183
+ sprintf(
184
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Description doesn't contain: photo". */
185
+ __("<Name>%1$s doesn't contain: </Name><Value>%2$s</Value>"),
186
+ filter.name,
187
+ activeElements[0].label
188
+ ),
189
+ filterTextWrappers
190
+ );
85
191
  }
86
192
  if (filterInView?.operator === OPERATOR_STARTS_WITH) {
87
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Title starts with: Mar". */
88
- __('<Name>%1$s starts with: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
193
+ return createInterpolateElement(
194
+ sprintf(
195
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Title starts with: Mar". */
196
+ __("<Name>%1$s starts with: </Name><Value>%2$s</Value>"),
197
+ filter.name,
198
+ activeElements[0].label
199
+ ),
200
+ filterTextWrappers
201
+ );
89
202
  }
90
203
  if (filterInView?.operator === OPERATOR_BEFORE) {
91
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Date is before: 2024-01-01". */
92
- __('<Name>%1$s is before: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
204
+ return createInterpolateElement(
205
+ sprintf(
206
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Date is before: 2024-01-01". */
207
+ __("<Name>%1$s is before: </Name><Value>%2$s</Value>"),
208
+ filter.name,
209
+ activeElements[0].label
210
+ ),
211
+ filterTextWrappers
212
+ );
93
213
  }
94
214
  if (filterInView?.operator === OPERATOR_AFTER) {
95
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Date is after: 2024-01-01". */
96
- __('<Name>%1$s is after: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
215
+ return createInterpolateElement(
216
+ sprintf(
217
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Date is after: 2024-01-01". */
218
+ __("<Name>%1$s is after: </Name><Value>%2$s</Value>"),
219
+ filter.name,
220
+ activeElements[0].label
221
+ ),
222
+ filterTextWrappers
223
+ );
97
224
  }
98
225
  if (filterInView?.operator === OPERATOR_BEFORE_INC) {
99
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Date is on or before: 2024-01-01". */
100
- __('<Name>%1$s is on or before: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
226
+ return createInterpolateElement(
227
+ sprintf(
228
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Date is on or before: 2024-01-01". */
229
+ __("<Name>%1$s is on or before: </Name><Value>%2$s</Value>"),
230
+ filter.name,
231
+ activeElements[0].label
232
+ ),
233
+ filterTextWrappers
234
+ );
101
235
  }
102
236
  if (filterInView?.operator === OPERATOR_AFTER_INC) {
103
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Date is on or after: 2024-01-01". */
104
- __('<Name>%1$s is on or after: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
237
+ return createInterpolateElement(
238
+ sprintf(
239
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Date is on or after: 2024-01-01". */
240
+ __("<Name>%1$s is on or after: </Name><Value>%2$s</Value>"),
241
+ filter.name,
242
+ activeElements[0].label
243
+ ),
244
+ filterTextWrappers
245
+ );
105
246
  }
106
247
  if (filterInView?.operator === OPERATOR_BETWEEN) {
107
- const {
108
- label
109
- } = activeElements[0];
110
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Min value. 3: Max value. e.g.: "Item count between (inc): 10 and 180". */
111
- __('<Name>%1$s between (inc): </Name><Value>%2$s and %3$s</Value>'), filter.name, label[0], label[1]), filterTextWrappers);
248
+ const { label } = activeElements[0];
249
+ return createInterpolateElement(
250
+ sprintf(
251
+ /* translators: 1: Filter name. 2: Min value. 3: Max value. e.g.: "Item count between (inc): 10 and 180". */
252
+ __(
253
+ "<Name>%1$s between (inc): </Name><Value>%2$s and %3$s</Value>"
254
+ ),
255
+ filter.name,
256
+ label[0],
257
+ label[1]
258
+ ),
259
+ filterTextWrappers
260
+ );
112
261
  }
113
262
  if (filterInView?.operator === OPERATOR_ON) {
114
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Date is: 2024-01-01". */
115
- __('<Name>%1$s is: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
263
+ return createInterpolateElement(
264
+ sprintf(
265
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Date is: 2024-01-01". */
266
+ __("<Name>%1$s is: </Name><Value>%2$s</Value>"),
267
+ filter.name,
268
+ activeElements[0].label
269
+ ),
270
+ filterTextWrappers
271
+ );
116
272
  }
117
273
  if (filterInView?.operator === OPERATOR_NOT_ON) {
118
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Date is not: 2024-01-01". */
119
- __('<Name>%1$s is not: </Name><Value>%2$s</Value>'), filter.name, activeElements[0].label), filterTextWrappers);
274
+ return createInterpolateElement(
275
+ sprintf(
276
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Date is not: 2024-01-01". */
277
+ __("<Name>%1$s is not: </Name><Value>%2$s</Value>"),
278
+ filter.name,
279
+ activeElements[0].label
280
+ ),
281
+ filterTextWrappers
282
+ );
120
283
  }
121
284
  if (filterInView?.operator === OPERATOR_IN_THE_PAST) {
122
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Date is in the past: 1 days". */
123
- __('<Name>%1$s is in the past: </Name><Value>%2$s</Value>'), filter.name, `${activeElements[0].value.value} ${activeElements[0].value.unit}`), filterTextWrappers);
285
+ return createInterpolateElement(
286
+ sprintf(
287
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Date is in the past: 1 days". */
288
+ __("<Name>%1$s is in the past: </Name><Value>%2$s</Value>"),
289
+ filter.name,
290
+ `${activeElements[0].value.value} ${activeElements[0].value.unit}`
291
+ ),
292
+ filterTextWrappers
293
+ );
124
294
  }
125
295
  if (filterInView?.operator === OPERATOR_OVER) {
126
- return createInterpolateElement(sprintf(/* translators: 1: Filter name. 2: Filter value. e.g.: "Date is over: 1 days ago". */
127
- __('<Name>%1$s is over: </Name><Value>%2$s</Value> ago'), filter.name, `${activeElements[0].value.value} ${activeElements[0].value.unit}`), filterTextWrappers);
296
+ return createInterpolateElement(
297
+ sprintf(
298
+ /* translators: 1: Filter name. 2: Filter value. e.g.: "Date is over: 1 days ago". */
299
+ __("<Name>%1$s is over: </Name><Value>%2$s</Value> ago"),
300
+ filter.name,
301
+ `${activeElements[0].value.value} ${activeElements[0].value.unit}`
302
+ ),
303
+ filterTextWrappers
304
+ );
128
305
  }
129
- return sprintf(/* translators: 1: Filter name e.g.: "Unknown status for Author". */
130
- __('Unknown status for %1$s'), filter.name);
306
+ return sprintf(
307
+ /* translators: 1: Filter name e.g.: "Unknown status for Author". */
308
+ __("Unknown status for %1$s"),
309
+ filter.name
310
+ );
131
311
  };
132
312
  function OperatorSelector({
133
313
  filter,
134
314
  view,
135
315
  onChangeView
136
316
  }) {
137
- const operatorOptions = filter.operators?.map(operator => ({
317
+ const operatorOptions = filter.operators?.map((operator) => ({
138
318
  value: operator,
139
319
  label: OPERATORS[operator]?.label
140
320
  }));
141
- const currentFilter = view.filters?.find(_filter => _filter.field === filter.field);
321
+ const currentFilter = view.filters?.find(
322
+ (_filter) => _filter.field === filter.field
323
+ );
142
324
  const value = currentFilter?.operator || filter.operators[0];
143
- return operatorOptions.length > 1 && /*#__PURE__*/_jsxs(HStack, {
144
- spacing: 2,
145
- justify: "flex-start",
146
- className: "dataviews-filters__summary-operators-container",
147
- children: [/*#__PURE__*/_jsx(FlexItem, {
148
- className: "dataviews-filters__summary-operators-filter-name",
149
- children: filter.name
150
- }), /*#__PURE__*/_jsx(SelectControl, {
151
- className: "dataviews-filters__summary-operators-filter-select",
152
- label: __('Conditions'),
153
- value: value,
154
- options: operatorOptions,
155
- onChange: newValue => {
156
- var _view$filters, _view$filters2;
157
- const operator = newValue;
158
- const currentOperator = currentFilter?.operator;
159
- const newFilters = currentFilter ? [...((_view$filters = view.filters) !== null && _view$filters !== void 0 ? _view$filters : []).map(_filter => {
160
- if (_filter.field === filter.field) {
161
- // Reset the value only when switching between operators that have different value types.
162
- const OPERATORS_SHOULD_RESET_VALUE = [OPERATOR_BETWEEN, OPERATOR_IN_THE_PAST, OPERATOR_OVER];
163
- const shouldResetValue = currentOperator && (OPERATORS_SHOULD_RESET_VALUE.includes(currentOperator) || OPERATORS_SHOULD_RESET_VALUE.includes(operator));
164
- return {
165
- ..._filter,
166
- value: shouldResetValue ? undefined : _filter.value,
167
- operator
168
- };
325
+ return operatorOptions.length > 1 && /* @__PURE__ */ jsxs(
326
+ HStack,
327
+ {
328
+ spacing: 2,
329
+ justify: "flex-start",
330
+ className: "dataviews-filters__summary-operators-container",
331
+ children: [
332
+ /* @__PURE__ */ jsx(FlexItem, { className: "dataviews-filters__summary-operators-filter-name", children: filter.name }),
333
+ /* @__PURE__ */ jsx(
334
+ SelectControl,
335
+ {
336
+ className: "dataviews-filters__summary-operators-filter-select",
337
+ label: __("Conditions"),
338
+ value,
339
+ options: operatorOptions,
340
+ onChange: (newValue) => {
341
+ const operator = newValue;
342
+ const currentOperator = currentFilter?.operator;
343
+ const newFilters = currentFilter ? [
344
+ ...(view.filters ?? []).map(
345
+ (_filter) => {
346
+ if (_filter.field === filter.field) {
347
+ const OPERATORS_SHOULD_RESET_VALUE = [
348
+ OPERATOR_BETWEEN,
349
+ OPERATOR_IN_THE_PAST,
350
+ OPERATOR_OVER
351
+ ];
352
+ const shouldResetValue = currentOperator && (OPERATORS_SHOULD_RESET_VALUE.includes(
353
+ currentOperator
354
+ ) || OPERATORS_SHOULD_RESET_VALUE.includes(
355
+ operator
356
+ ));
357
+ return {
358
+ ..._filter,
359
+ value: shouldResetValue ? void 0 : _filter.value,
360
+ operator
361
+ };
362
+ }
363
+ return _filter;
364
+ }
365
+ )
366
+ ] : [
367
+ ...view.filters ?? [],
368
+ {
369
+ field: filter.field,
370
+ operator,
371
+ value: void 0
372
+ }
373
+ ];
374
+ onChangeView({
375
+ ...view,
376
+ page: 1,
377
+ filters: newFilters
378
+ });
379
+ },
380
+ size: "small",
381
+ variant: "minimal",
382
+ __nextHasNoMarginBottom: true,
383
+ hideLabelFromVision: true
169
384
  }
170
- return _filter;
171
- })] : [...((_view$filters2 = view.filters) !== null && _view$filters2 !== void 0 ? _view$filters2 : []), {
172
- field: filter.field,
173
- operator,
174
- value: undefined
175
- }];
176
- onChangeView({
177
- ...view,
178
- page: 1,
179
- filters: newFilters
180
- });
181
- },
182
- size: "small",
183
- variant: "minimal",
184
- __nextHasNoMarginBottom: true,
185
- hideLabelFromVision: true
186
- })]
187
- });
385
+ )
386
+ ]
387
+ }
388
+ );
188
389
  }
189
- export default function Filter({
390
+ function Filter({
190
391
  addFilterRef,
191
392
  openedFilter,
192
393
  fields,
193
394
  ...commonProps
194
395
  }) {
195
396
  const toggleRef = useRef(null);
196
- const {
197
- filter,
198
- view,
199
- onChangeView
200
- } = commonProps;
201
- const filterInView = view.filters?.find(f => f.field === filter.field);
397
+ const { filter, view, onChangeView } = commonProps;
398
+ const filterInView = view.filters?.find(
399
+ (f) => f.field === filter.field
400
+ );
202
401
  let activeElements = [];
203
402
  if (filter.elements.length > 0) {
204
- activeElements = filter.elements.filter(element => {
403
+ activeElements = filter.elements.filter((element) => {
205
404
  if (filter.singleSelection) {
206
405
  return element.value === filterInView?.value;
207
406
  }
208
407
  return filterInView?.value?.includes(element.value);
209
408
  });
210
- } else if (filterInView?.value !== undefined) {
211
- activeElements = [{
212
- value: filterInView.value,
213
- label: filterInView.value
214
- }];
409
+ } else if (filterInView?.value !== void 0) {
410
+ activeElements = [
411
+ {
412
+ value: filterInView.value,
413
+ label: filterInView.value
414
+ }
415
+ ];
215
416
  }
216
417
  const isPrimary = filter.isPrimary;
217
418
  const isLocked = filterInView?.isLocked;
218
- const hasValues = !isLocked && filterInView?.value !== undefined;
419
+ const hasValues = !isLocked && filterInView?.value !== void 0;
219
420
  const canResetOrRemove = !isLocked && (!isPrimary || hasValues);
220
- return /*#__PURE__*/_jsx(Dropdown, {
221
- defaultOpen: openedFilter === filter.field,
222
- contentClassName: "dataviews-filters__summary-popover",
223
- popoverProps: {
224
- placement: 'bottom-start',
225
- role: 'dialog'
226
- },
227
- onClose: () => {
228
- toggleRef.current?.focus();
229
- },
230
- renderToggle: ({
231
- isOpen,
232
- onToggle
233
- }) => /*#__PURE__*/_jsxs("div", {
234
- className: "dataviews-filters__summary-chip-container",
235
- children: [/*#__PURE__*/_jsx(Tooltip, {
236
- text: sprintf(/* translators: 1: Filter name. */
237
- __('Filter by: %1$s'), filter.name.toLowerCase()),
238
- placement: "top",
239
- children: /*#__PURE__*/_jsx("div", {
240
- className: clsx('dataviews-filters__summary-chip', {
241
- 'has-reset': canResetOrRemove,
242
- 'has-values': hasValues,
243
- 'is-not-clickable': isLocked
244
- }),
245
- role: "button",
246
- tabIndex: isLocked ? -1 : 0,
247
- onClick: () => {
248
- if (!isLocked) {
249
- onToggle();
250
- }
251
- },
252
- onKeyDown: event => {
253
- if (!isLocked && [ENTER, SPACE].includes(event.key)) {
254
- onToggle();
255
- event.preventDefault();
256
- }
257
- },
258
- "aria-disabled": isLocked,
259
- "aria-pressed": isOpen,
260
- "aria-expanded": isOpen,
261
- ref: toggleRef,
262
- children: /*#__PURE__*/_jsx(FilterText, {
263
- activeElements: activeElements,
264
- filterInView: filterInView,
265
- filter: filter
266
- })
267
- })
268
- }), canResetOrRemove && /*#__PURE__*/_jsx(Tooltip, {
269
- text: isPrimary ? __('Reset') : __('Remove'),
270
- placement: "top",
271
- children: /*#__PURE__*/_jsx("button", {
272
- className: clsx('dataviews-filters__summary-chip-remove', {
273
- 'has-values': hasValues
274
- }),
275
- onClick: () => {
276
- onChangeView({
277
- ...view,
278
- page: 1,
279
- filters: view.filters?.filter(_filter => _filter.field !== filter.field)
280
- });
281
- // If the filter is not primary and can be removed, it will be added
282
- // back to the available filters from `Add filter` component.
283
- if (!isPrimary) {
284
- addFilterRef.current?.focus();
285
- } else {
286
- // If is primary, focus the toggle button.
287
- toggleRef.current?.focus();
288
- }
289
- },
290
- children: /*#__PURE__*/_jsx(Icon, {
291
- icon: closeSmall
292
- })
293
- })
294
- })]
295
- }),
296
- renderContent: () => {
297
- return /*#__PURE__*/_jsxs(VStack, {
298
- spacing: 0,
299
- justify: "flex-start",
300
- children: [/*#__PURE__*/_jsx(OperatorSelector, {
301
- ...commonProps
302
- }), commonProps.filter.elements.length > 0 ? /*#__PURE__*/_jsx(SearchWidget, {
303
- ...commonProps,
304
- filter: {
305
- ...commonProps.filter,
306
- elements: commonProps.filter.elements
421
+ return /* @__PURE__ */ jsx(
422
+ Dropdown,
423
+ {
424
+ defaultOpen: openedFilter === filter.field,
425
+ contentClassName: "dataviews-filters__summary-popover",
426
+ popoverProps: { placement: "bottom-start", role: "dialog" },
427
+ onClose: () => {
428
+ toggleRef.current?.focus();
429
+ },
430
+ renderToggle: ({ isOpen, onToggle }) => /* @__PURE__ */ jsxs("div", { className: "dataviews-filters__summary-chip-container", children: [
431
+ /* @__PURE__ */ jsx(
432
+ Tooltip,
433
+ {
434
+ text: sprintf(
435
+ /* translators: 1: Filter name. */
436
+ __("Filter by: %1$s"),
437
+ filter.name.toLowerCase()
438
+ ),
439
+ placement: "top",
440
+ children: /* @__PURE__ */ jsx(
441
+ "div",
442
+ {
443
+ className: clsx(
444
+ "dataviews-filters__summary-chip",
445
+ {
446
+ "has-reset": canResetOrRemove,
447
+ "has-values": hasValues,
448
+ "is-not-clickable": isLocked
449
+ }
450
+ ),
451
+ role: "button",
452
+ tabIndex: isLocked ? -1 : 0,
453
+ onClick: () => {
454
+ if (!isLocked) {
455
+ onToggle();
456
+ }
457
+ },
458
+ onKeyDown: (event) => {
459
+ if (!isLocked && [ENTER, SPACE].includes(event.key)) {
460
+ onToggle();
461
+ event.preventDefault();
462
+ }
463
+ },
464
+ "aria-disabled": isLocked,
465
+ "aria-pressed": isOpen,
466
+ "aria-expanded": isOpen,
467
+ ref: toggleRef,
468
+ children: /* @__PURE__ */ jsx(
469
+ FilterText,
470
+ {
471
+ activeElements,
472
+ filterInView,
473
+ filter
474
+ }
475
+ )
476
+ }
477
+ )
478
+ }
479
+ ),
480
+ canResetOrRemove && /* @__PURE__ */ jsx(
481
+ Tooltip,
482
+ {
483
+ text: isPrimary ? __("Reset") : __("Remove"),
484
+ placement: "top",
485
+ children: /* @__PURE__ */ jsx(
486
+ "button",
487
+ {
488
+ className: clsx(
489
+ "dataviews-filters__summary-chip-remove",
490
+ { "has-values": hasValues }
491
+ ),
492
+ onClick: () => {
493
+ onChangeView({
494
+ ...view,
495
+ page: 1,
496
+ filters: view.filters?.filter(
497
+ (_filter) => _filter.field !== filter.field
498
+ )
499
+ });
500
+ if (!isPrimary) {
501
+ addFilterRef.current?.focus();
502
+ } else {
503
+ toggleRef.current?.focus();
504
+ }
505
+ },
506
+ children: /* @__PURE__ */ jsx(Icon, { icon: closeSmall })
507
+ }
508
+ )
307
509
  }
308
- }) : /*#__PURE__*/_jsx(InputWidget, {
309
- ...commonProps,
310
- fields: fields
311
- })]
312
- });
510
+ )
511
+ ] }),
512
+ renderContent: () => {
513
+ return /* @__PURE__ */ jsxs(VStack, { spacing: 0, justify: "flex-start", children: [
514
+ /* @__PURE__ */ jsx(OperatorSelector, { ...commonProps }),
515
+ commonProps.filter.elements.length > 0 ? /* @__PURE__ */ jsx(
516
+ SearchWidget,
517
+ {
518
+ ...commonProps,
519
+ filter: {
520
+ ...commonProps.filter,
521
+ elements: commonProps.filter.elements
522
+ }
523
+ }
524
+ ) : /* @__PURE__ */ jsx(InputWidget, { ...commonProps, fields })
525
+ ] });
526
+ }
313
527
  }
314
- });
528
+ );
315
529
  }
316
- //# sourceMappingURL=filter.js.map
530
+ export {
531
+ Filter as default
532
+ };
533
+ //# sourceMappingURL=filter.js.map