@wordpress/dataviews 9.1.1-next.f56bd8138.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 (805) hide show
  1. package/CHANGELOG.md +44 -1
  2. package/README.md +140 -38
  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 -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 +473 -263
  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 +301 -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 +74 -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 +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 -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 +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 -297
  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 +156 -131
  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 +16 -0
  224. package/build-module/components/dataviews-filters/filters-toggled.js.map +7 -0
  225. package/build-module/components/dataviews-filters/filters.js +71 -0
  226. package/build-module/components/dataviews-filters/filters.js.map +7 -0
  227. package/build-module/components/dataviews-filters/index.js +11 -187
  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 +94 -0
  236. package/build-module/components/dataviews-filters/toggle.js.map +7 -0
  237. package/build-module/components/dataviews-filters/use-filters.js +54 -0
  238. package/build-module/components/dataviews-filters/use-filters.js.map +7 -0
  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 +139 -125
  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 -288
  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/index.d.ts +3 -2
  421. package/build-types/components/dataviews/index.d.ts.map +1 -1
  422. package/build-types/components/dataviews-bulk-actions/index.d.ts +1 -1
  423. package/build-types/components/dataviews-bulk-actions/index.d.ts.map +1 -1
  424. package/build-types/components/dataviews-context/index.d.ts +1 -1
  425. package/build-types/components/dataviews-filters/filter.d.ts +1 -1
  426. package/build-types/components/dataviews-filters/filter.d.ts.map +1 -1
  427. package/build-types/components/dataviews-filters/filters-toggled.d.ts +5 -0
  428. package/build-types/components/dataviews-filters/filters-toggled.d.ts.map +1 -0
  429. package/build-types/components/dataviews-filters/filters.d.ts +6 -0
  430. package/build-types/components/dataviews-filters/filters.d.ts.map +1 -0
  431. package/build-types/components/dataviews-filters/index.d.ts +4 -8
  432. package/build-types/components/dataviews-filters/index.d.ts.map +1 -1
  433. package/build-types/components/dataviews-filters/search-widget.d.ts.map +1 -1
  434. package/build-types/components/dataviews-filters/toggle.d.ts +3 -0
  435. package/build-types/components/dataviews-filters/toggle.d.ts.map +1 -0
  436. package/build-types/components/dataviews-filters/use-filters.d.ts +4 -0
  437. package/build-types/components/dataviews-filters/use-filters.d.ts.map +1 -0
  438. package/build-types/components/dataviews-item-actions/index.d.ts.map +1 -1
  439. package/build-types/components/dataviews-picker/footer.d.ts.map +1 -1
  440. package/build-types/components/dataviews-picker/index.d.ts +3 -2
  441. package/build-types/components/dataviews-picker/index.d.ts.map +1 -1
  442. package/build-types/components/dataviews-selection-checkbox/index.d.ts +1 -1
  443. package/build-types/dataform-controls/array.d.ts +1 -1
  444. package/build-types/dataform-controls/array.d.ts.map +1 -1
  445. package/build-types/dataform-controls/checkbox.d.ts +1 -1
  446. package/build-types/dataform-controls/checkbox.d.ts.map +1 -1
  447. package/build-types/dataform-controls/color.d.ts +1 -1
  448. package/build-types/dataform-controls/color.d.ts.map +1 -1
  449. package/build-types/dataform-controls/date.d.ts +1 -1
  450. package/build-types/dataform-controls/date.d.ts.map +1 -1
  451. package/build-types/dataform-controls/datetime.d.ts +1 -1
  452. package/build-types/dataform-controls/datetime.d.ts.map +1 -1
  453. package/build-types/dataform-controls/email.d.ts +1 -1
  454. package/build-types/dataform-controls/email.d.ts.map +1 -1
  455. package/build-types/dataform-controls/index.d.ts.map +1 -1
  456. package/build-types/dataform-controls/integer.d.ts +4 -1
  457. package/build-types/dataform-controls/integer.d.ts.map +1 -1
  458. package/build-types/dataform-controls/number.d.ts +6 -0
  459. package/build-types/dataform-controls/number.d.ts.map +1 -0
  460. package/build-types/dataform-controls/password.d.ts +1 -1
  461. package/build-types/dataform-controls/password.d.ts.map +1 -1
  462. package/build-types/dataform-controls/radio.d.ts +1 -1
  463. package/build-types/dataform-controls/radio.d.ts.map +1 -1
  464. package/build-types/dataform-controls/select.d.ts +1 -1
  465. package/build-types/dataform-controls/select.d.ts.map +1 -1
  466. package/build-types/dataform-controls/telephone.d.ts +1 -1
  467. package/build-types/dataform-controls/telephone.d.ts.map +1 -1
  468. package/build-types/dataform-controls/text.d.ts +1 -1
  469. package/build-types/dataform-controls/text.d.ts.map +1 -1
  470. package/build-types/dataform-controls/textarea.d.ts +1 -1
  471. package/build-types/dataform-controls/textarea.d.ts.map +1 -1
  472. package/build-types/dataform-controls/toggle-group.d.ts +1 -1
  473. package/build-types/dataform-controls/toggle-group.d.ts.map +1 -1
  474. package/build-types/dataform-controls/toggle.d.ts +1 -1
  475. package/build-types/dataform-controls/toggle.d.ts.map +1 -1
  476. package/build-types/dataform-controls/url.d.ts +1 -1
  477. package/build-types/dataform-controls/url.d.ts.map +1 -1
  478. package/build-types/dataform-controls/utils/get-custom-validity.d.ts +9 -0
  479. package/build-types/dataform-controls/utils/get-custom-validity.d.ts.map +1 -0
  480. package/build-types/dataform-controls/utils/relative-date-control.d.ts +5 -0
  481. package/build-types/dataform-controls/utils/relative-date-control.d.ts.map +1 -0
  482. package/build-types/dataform-controls/utils/validated-input.d.ts +1 -1
  483. package/build-types/dataform-controls/utils/validated-input.d.ts.map +1 -1
  484. package/build-types/dataform-controls/utils/validated-number.d.ts +9 -0
  485. package/build-types/dataform-controls/utils/validated-number.d.ts.map +1 -0
  486. package/build-types/{dataforms-layouts → dataform-layouts}/card/index.d.ts +1 -1
  487. package/build-types/dataform-layouts/card/index.d.ts.map +1 -0
  488. package/build-types/{dataforms-layouts → dataform-layouts}/data-form-layout.d.ts +5 -3
  489. package/build-types/dataform-layouts/data-form-layout.d.ts.map +1 -0
  490. package/build-types/dataform-layouts/get-summary-fields.d.ts +12 -0
  491. package/build-types/dataform-layouts/get-summary-fields.d.ts.map +1 -0
  492. package/build-types/{dataforms-layouts → dataform-layouts}/index.d.ts +0 -5
  493. package/build-types/dataform-layouts/index.d.ts.map +1 -0
  494. package/build-types/dataform-layouts/is-combined-field.d.ts.map +1 -0
  495. package/build-types/{normalize-form-fields.d.ts → dataform-layouts/normalize-form-fields.d.ts} +1 -1
  496. package/build-types/dataform-layouts/normalize-form-fields.d.ts.map +1 -0
  497. package/build-types/{dataforms-layouts → dataform-layouts}/panel/dropdown.d.ts +8 -7
  498. package/build-types/dataform-layouts/panel/dropdown.d.ts.map +1 -0
  499. package/build-types/{dataforms-layouts → dataform-layouts}/panel/index.d.ts +1 -1
  500. package/build-types/dataform-layouts/panel/index.d.ts.map +1 -0
  501. package/build-types/{dataforms-layouts → dataform-layouts}/panel/modal.d.ts +5 -5
  502. package/build-types/dataform-layouts/panel/modal.d.ts.map +1 -0
  503. package/build-types/dataform-layouts/panel/summary-button.d.ts.map +1 -0
  504. package/build-types/{dataforms-layouts → dataform-layouts}/regular/index.d.ts +1 -1
  505. package/build-types/dataform-layouts/regular/index.d.ts.map +1 -0
  506. package/build-types/{dataforms-layouts → dataform-layouts}/row/index.d.ts +1 -1
  507. package/build-types/dataform-layouts/row/index.d.ts.map +1 -0
  508. package/build-types/dataviews-layouts/list/index.d.ts.map +1 -1
  509. package/build-types/dataviews-layouts/picker-grid/index.d.ts.map +1 -1
  510. package/build-types/dataviews-layouts/utils/item-click-wrapper.d.ts +1 -1
  511. package/build-types/dataviews-layouts/utils/item-click-wrapper.d.ts.map +1 -1
  512. package/build-types/field-types/array.d.ts.map +1 -1
  513. package/build-types/field-types/boolean.d.ts +2 -1
  514. package/build-types/field-types/boolean.d.ts.map +1 -1
  515. package/build-types/field-types/color.d.ts +2 -1
  516. package/build-types/field-types/color.d.ts.map +1 -1
  517. package/build-types/field-types/date.d.ts +4 -3
  518. package/build-types/field-types/date.d.ts.map +1 -1
  519. package/build-types/field-types/datetime.d.ts +3 -2
  520. package/build-types/field-types/datetime.d.ts.map +1 -1
  521. package/build-types/field-types/email.d.ts +3 -2
  522. package/build-types/field-types/email.d.ts.map +1 -1
  523. package/build-types/field-types/index.d.ts.map +1 -1
  524. package/build-types/field-types/integer.d.ts +2 -1
  525. package/build-types/field-types/integer.d.ts.map +1 -1
  526. package/build-types/field-types/media.d.ts +2 -5
  527. package/build-types/field-types/media.d.ts.map +1 -1
  528. package/build-types/field-types/number.d.ts +21 -0
  529. package/build-types/field-types/number.d.ts.map +1 -0
  530. package/build-types/field-types/password.d.ts +4 -3
  531. package/build-types/field-types/password.d.ts.map +1 -1
  532. package/build-types/field-types/telephone.d.ts +4 -3
  533. package/build-types/field-types/telephone.d.ts.map +1 -1
  534. package/build-types/field-types/text.d.ts +4 -3
  535. package/build-types/field-types/text.d.ts.map +1 -1
  536. package/build-types/field-types/url.d.ts +4 -3
  537. package/build-types/field-types/url.d.ts.map +1 -1
  538. package/build-types/field-types/utils/render-from-elements.d.ts +6 -0
  539. package/build-types/field-types/utils/render-from-elements.d.ts.map +1 -0
  540. package/build-types/hooks/index.d.ts +5 -0
  541. package/build-types/hooks/index.d.ts.map +1 -0
  542. package/build-types/hooks/use-elements.d.ts +12 -0
  543. package/build-types/hooks/use-elements.d.ts.map +1 -0
  544. package/build-types/hooks/use-form-validity.d.ts +16 -0
  545. package/build-types/hooks/use-form-validity.d.ts.map +1 -0
  546. package/build-types/index.d.ts +2 -2
  547. package/build-types/index.d.ts.map +1 -1
  548. package/build-types/{components/dataform/stories/index.story.d.ts → stories/dataform.story.d.ts} +16 -6
  549. package/build-types/stories/dataform.story.d.ts.map +1 -0
  550. package/build-types/{components/dataviews-picker/stories/index.story.d.ts → stories/dataviews-picker.story.d.ts} +2 -2
  551. package/build-types/stories/dataviews-picker.story.d.ts.map +1 -0
  552. package/build-types/{components/dataviews/stories/fixtures.d.ts → stories/dataviews.fixtures.d.ts} +2 -2
  553. package/build-types/stories/dataviews.fixtures.d.ts.map +1 -0
  554. package/build-types/{components/dataviews/stories/index.story.d.ts → stories/dataviews.story.d.ts} +3 -3
  555. package/build-types/stories/dataviews.story.d.ts.map +1 -0
  556. package/build-types/stories/field-types.story.d.ts +157 -0
  557. package/build-types/stories/field-types.story.d.ts.map +1 -0
  558. package/build-types/test/use-form-validity.d.ts +2 -0
  559. package/build-types/test/use-form-validity.d.ts.map +1 -0
  560. package/build-types/types/dataform.d.ts +112 -0
  561. package/build-types/types/dataform.d.ts.map +1 -0
  562. package/build-types/types/dataviews.d.ts +341 -0
  563. package/build-types/types/dataviews.d.ts.map +1 -0
  564. package/build-types/types/field-api.d.ts +298 -0
  565. package/build-types/types/field-api.d.ts.map +1 -0
  566. package/build-types/types/index.d.ts +4 -0
  567. package/build-types/types/index.d.ts.map +1 -0
  568. package/build-types/{private-types.d.ts → types/private.d.ts} +1 -1
  569. package/build-types/types/private.d.ts.map +1 -0
  570. package/build-types/{filter-and-sort-data-view.d.ts → utils/filter-sort-and-paginate.d.ts} +3 -3
  571. package/build-types/utils/filter-sort-and-paginate.d.ts.map +1 -0
  572. package/build-types/utils/has-elements.d.ts +6 -0
  573. package/build-types/utils/has-elements.d.ts.map +1 -0
  574. package/build-types/utils/normalize-fields.d.ts +9 -0
  575. package/build-types/utils/normalize-fields.d.ts.map +1 -0
  576. package/build-wp/index.js +3241 -2787
  577. package/package.json +16 -18
  578. package/src/components/dataform/index.tsx +9 -3
  579. package/src/components/dataform-context/index.tsx +3 -1
  580. package/src/components/dataviews/index.tsx +10 -16
  581. package/src/components/dataviews/style.scss +4 -0
  582. package/src/components/dataviews-bulk-actions/index.tsx +1 -2
  583. package/src/components/dataviews-bulk-actions/style.scss +3 -0
  584. package/src/components/dataviews-context/index.ts +1 -1
  585. package/src/components/dataviews-filters/filter.tsx +11 -5
  586. package/src/components/dataviews-filters/filters-toggled.tsx +20 -0
  587. package/src/components/dataviews-filters/filters.tsx +73 -0
  588. package/src/components/dataviews-filters/index.tsx +4 -246
  589. package/src/components/dataviews-filters/search-widget.tsx +30 -3
  590. package/src/components/dataviews-filters/style.scss +21 -6
  591. package/src/components/dataviews-filters/toggle.tsx +118 -0
  592. package/src/components/dataviews-filters/use-filters.ts +75 -0
  593. package/src/components/dataviews-footer/style.scss +4 -0
  594. package/src/components/dataviews-item-actions/index.tsx +6 -2
  595. package/src/components/dataviews-item-actions/style.scss +3 -0
  596. package/src/components/dataviews-pagination/style.scss +3 -0
  597. package/src/components/dataviews-picker/footer.tsx +2 -4
  598. package/src/components/dataviews-picker/index.tsx +10 -16
  599. package/src/components/dataviews-picker/style.scss +2 -0
  600. package/src/components/dataviews-selection-checkbox/index.tsx +1 -1
  601. package/src/components/dataviews-selection-checkbox/style.scss +3 -0
  602. package/src/components/dataviews-view-config/style.scss +3 -0
  603. package/src/dataform-controls/array.tsx +16 -82
  604. package/src/dataform-controls/checkbox.tsx +5 -41
  605. package/src/dataform-controls/color.tsx +5 -37
  606. package/src/dataform-controls/date.tsx +375 -238
  607. package/src/dataform-controls/datetime.tsx +92 -60
  608. package/src/dataform-controls/email.tsx +2 -0
  609. package/src/dataform-controls/index.tsx +4 -1
  610. package/src/dataform-controls/integer.tsx +3 -179
  611. package/src/dataform-controls/number.tsx +10 -0
  612. package/src/dataform-controls/password.tsx +2 -0
  613. package/src/dataform-controls/radio.tsx +24 -55
  614. package/src/dataform-controls/select.tsx +14 -61
  615. package/src/dataform-controls/style.scss +2 -0
  616. package/src/dataform-controls/telephone.tsx +2 -0
  617. package/src/dataform-controls/text.tsx +2 -0
  618. package/src/dataform-controls/textarea.tsx +6 -42
  619. package/src/dataform-controls/toggle-group.tsx +38 -64
  620. package/src/dataform-controls/toggle.tsx +6 -42
  621. package/src/dataform-controls/url.tsx +2 -0
  622. package/src/dataform-controls/utils/get-custom-validity.ts +24 -0
  623. package/src/dataform-controls/{relative-date-control.tsx → utils/relative-date-control.tsx} +37 -25
  624. package/src/dataform-controls/utils/validated-input.tsx +4 -40
  625. package/src/dataform-controls/utils/validated-number.tsx +171 -0
  626. package/src/{dataforms-layouts → dataform-layouts}/card/index.tsx +106 -8
  627. package/src/dataform-layouts/card/style.scss +24 -0
  628. package/src/{dataforms-layouts → dataform-layouts}/data-form-layout.tsx +22 -5
  629. package/src/dataform-layouts/get-summary-fields.ts +42 -0
  630. package/src/{dataforms-layouts → dataform-layouts}/index.tsx +32 -2
  631. package/src/{normalize-form-fields.ts → dataform-layouts/normalize-form-fields.ts} +28 -1
  632. package/src/{dataforms-layouts → dataform-layouts}/panel/dropdown.tsx +36 -15
  633. package/src/{dataforms-layouts → dataform-layouts}/panel/index.tsx +88 -55
  634. package/src/{dataforms-layouts → dataform-layouts}/panel/modal.tsx +42 -31
  635. package/src/{dataforms-layouts → dataform-layouts}/panel/style.scss +3 -0
  636. package/src/{dataforms-layouts → dataform-layouts}/regular/index.tsx +5 -1
  637. package/src/{dataforms-layouts → dataform-layouts}/regular/style.scss +2 -0
  638. package/src/{dataforms-layouts → dataform-layouts}/row/index.tsx +9 -4
  639. package/src/dataform-layouts/style.scss +5 -0
  640. package/src/dataviews-layouts/grid/index.tsx +1 -1
  641. package/src/dataviews-layouts/grid/style.scss +8 -3
  642. package/src/dataviews-layouts/list/index.tsx +0 -2
  643. package/src/dataviews-layouts/list/style.scss +3 -0
  644. package/src/dataviews-layouts/picker-grid/index.tsx +16 -9
  645. package/src/dataviews-layouts/picker-grid/style.scss +8 -4
  646. package/src/dataviews-layouts/table/column-header-menu.tsx +1 -1
  647. package/src/dataviews-layouts/table/index.tsx +1 -1
  648. package/src/dataviews-layouts/table/style.scss +9 -0
  649. package/src/dataviews-layouts/utils/grid-items.scss +2 -0
  650. package/src/dataviews-layouts/utils/item-click-wrapper.tsx +40 -2
  651. package/src/field-types/array.tsx +1 -0
  652. package/src/field-types/boolean.tsx +4 -3
  653. package/src/field-types/color.tsx +4 -10
  654. package/src/field-types/{date.ts → date.tsx} +5 -16
  655. package/src/field-types/datetime.tsx +8 -21
  656. package/src/field-types/email.tsx +7 -11
  657. package/src/field-types/index.tsx +13 -23
  658. package/src/field-types/integer.tsx +7 -11
  659. package/src/field-types/media.tsx +3 -17
  660. package/src/field-types/number.tsx +92 -0
  661. package/src/field-types/password.tsx +8 -21
  662. package/src/field-types/telephone.tsx +8 -21
  663. package/src/field-types/text.tsx +8 -21
  664. package/src/field-types/url.tsx +8 -21
  665. package/src/field-types/utils/render-from-elements.tsx +29 -0
  666. package/src/hooks/index.ts +4 -0
  667. package/src/hooks/use-elements.ts +66 -0
  668. package/src/hooks/use-form-validity.ts +571 -0
  669. package/src/index.ts +2 -2
  670. package/src/{components/dataform/stories/index.story.tsx → stories/dataform.story.tsx} +455 -63
  671. package/src/{components/dataviews-picker/stories/index.story.tsx → stories/dataviews-picker.story.tsx} +5 -9
  672. package/src/{components/dataviews/stories/fixtures.tsx → stories/dataviews.fixtures.tsx} +36 -5
  673. package/src/{components/dataviews/stories/index.story.tsx → stories/dataviews.story.tsx} +8 -9
  674. package/src/{field-types/stories/index.story.tsx → stories/field-types.story.tsx} +244 -48
  675. package/src/style.scss +19 -18
  676. package/src/test/dataform.tsx +36 -0
  677. package/src/test/dataviews-picker.tsx +1 -1
  678. package/src/test/dataviews.tsx +1 -2
  679. package/src/test/{filter-and-sort-data-view.js → filter-sort-and-paginate.js} +63 -16
  680. package/src/test/normalize-fields.ts +23 -1
  681. package/src/test/normalize-form-fields.ts +54 -5
  682. package/src/test/use-form-validity.ts +546 -0
  683. package/src/types/dataform.ts +144 -0
  684. package/src/types/dataviews.ts +443 -0
  685. package/src/types/field-api.ts +381 -0
  686. package/src/types/index.ts +3 -0
  687. package/src/{filter-and-sort-data-view.ts → utils/filter-sort-and-paginate.ts} +4 -4
  688. package/src/utils/has-elements.ts +11 -0
  689. package/src/{normalize-fields.ts → utils/normalize-fields.ts} +13 -8
  690. package/tsconfig.tsbuildinfo +1 -1
  691. package/build/dataform-controls/relative-date-control.js +0 -105
  692. package/build/dataform-controls/relative-date-control.js.map +0 -1
  693. package/build/dataforms-layouts/card/index.js +0 -136
  694. package/build/dataforms-layouts/card/index.js.map +0 -1
  695. package/build/dataforms-layouts/data-form-layout.js +0 -71
  696. package/build/dataforms-layouts/data-form-layout.js.map +0 -1
  697. package/build/dataforms-layouts/index.js +0 -58
  698. package/build/dataforms-layouts/index.js.map +0 -1
  699. package/build/dataforms-layouts/is-combined-field.js +0 -14
  700. package/build/dataforms-layouts/is-combined-field.js.map +0 -1
  701. package/build/dataforms-layouts/panel/dropdown.js +0 -120
  702. package/build/dataforms-layouts/panel/dropdown.js.map +0 -1
  703. package/build/dataforms-layouts/panel/index.js +0 -126
  704. package/build/dataforms-layouts/panel/index.js.map +0 -1
  705. package/build/dataforms-layouts/panel/modal.js +0 -120
  706. package/build/dataforms-layouts/panel/modal.js.map +0 -1
  707. package/build/dataforms-layouts/panel/summary-button.js +0 -67
  708. package/build/dataforms-layouts/panel/summary-button.js.map +0 -1
  709. package/build/dataforms-layouts/regular/index.js +0 -116
  710. package/build/dataforms-layouts/regular/index.js.map +0 -1
  711. package/build/dataforms-layouts/row/index.js +0 -113
  712. package/build/dataforms-layouts/row/index.js.map +0 -1
  713. package/build/filter-and-sort-data-view.js +0 -313
  714. package/build/filter-and-sort-data-view.js.map +0 -1
  715. package/build/normalize-fields.js +0 -155
  716. package/build/normalize-fields.js.map +0 -1
  717. package/build/normalize-form-fields.js +0 -81
  718. package/build/normalize-form-fields.js.map +0 -1
  719. package/build/private-types.js +0 -6
  720. package/build/private-types.js.map +0 -1
  721. package/build/types.js +0 -6
  722. package/build/types.js.map +0 -1
  723. package/build/utils.js +0 -22
  724. package/build/utils.js.map +0 -1
  725. package/build/validation.js +0 -61
  726. package/build/validation.js.map +0 -1
  727. package/build-module/dataform-controls/relative-date-control.js +0 -96
  728. package/build-module/dataform-controls/relative-date-control.js.map +0 -1
  729. package/build-module/dataforms-layouts/card/index.js +0 -127
  730. package/build-module/dataforms-layouts/card/index.js.map +0 -1
  731. package/build-module/dataforms-layouts/data-form-layout.js +0 -62
  732. package/build-module/dataforms-layouts/data-form-layout.js.map +0 -1
  733. package/build-module/dataforms-layouts/index.js +0 -51
  734. package/build-module/dataforms-layouts/index.js.map +0 -1
  735. package/build-module/dataforms-layouts/is-combined-field.js +0 -8
  736. package/build-module/dataforms-layouts/is-combined-field.js.map +0 -1
  737. package/build-module/dataforms-layouts/panel/dropdown.js +0 -113
  738. package/build-module/dataforms-layouts/panel/dropdown.js.map +0 -1
  739. package/build-module/dataforms-layouts/panel/index.js +0 -119
  740. package/build-module/dataforms-layouts/panel/index.js.map +0 -1
  741. package/build-module/dataforms-layouts/panel/modal.js +0 -113
  742. package/build-module/dataforms-layouts/panel/modal.js.map +0 -1
  743. package/build-module/dataforms-layouts/panel/summary-button.js +0 -60
  744. package/build-module/dataforms-layouts/panel/summary-button.js.map +0 -1
  745. package/build-module/dataforms-layouts/regular/index.js +0 -109
  746. package/build-module/dataforms-layouts/regular/index.js.map +0 -1
  747. package/build-module/dataforms-layouts/row/index.js +0 -106
  748. package/build-module/dataforms-layouts/row/index.js.map +0 -1
  749. package/build-module/filter-and-sort-data-view.js +0 -305
  750. package/build-module/filter-and-sort-data-view.js.map +0 -1
  751. package/build-module/normalize-fields.js +0 -145
  752. package/build-module/normalize-fields.js.map +0 -1
  753. package/build-module/normalize-form-fields.js +0 -73
  754. package/build-module/normalize-form-fields.js.map +0 -1
  755. package/build-module/private-types.js +0 -2
  756. package/build-module/private-types.js.map +0 -1
  757. package/build-module/types.js +0 -2
  758. package/build-module/types.js.map +0 -1
  759. package/build-module/utils.js +0 -16
  760. package/build-module/utils.js.map +0 -1
  761. package/build-module/validation.js +0 -54
  762. package/build-module/validation.js.map +0 -1
  763. package/build-types/components/dataform/stories/index.story.d.ts.map +0 -1
  764. package/build-types/components/dataviews/stories/fixtures.d.ts.map +0 -1
  765. package/build-types/components/dataviews/stories/index.story.d.ts.map +0 -1
  766. package/build-types/components/dataviews-picker/stories/index.story.d.ts.map +0 -1
  767. package/build-types/dataform-controls/relative-date-control.d.ts +0 -47
  768. package/build-types/dataform-controls/relative-date-control.d.ts.map +0 -1
  769. package/build-types/dataforms-layouts/card/index.d.ts.map +0 -1
  770. package/build-types/dataforms-layouts/data-form-layout.d.ts.map +0 -1
  771. package/build-types/dataforms-layouts/index.d.ts.map +0 -1
  772. package/build-types/dataforms-layouts/is-combined-field.d.ts.map +0 -1
  773. package/build-types/dataforms-layouts/panel/dropdown.d.ts.map +0 -1
  774. package/build-types/dataforms-layouts/panel/index.d.ts.map +0 -1
  775. package/build-types/dataforms-layouts/panel/modal.d.ts.map +0 -1
  776. package/build-types/dataforms-layouts/panel/summary-button.d.ts.map +0 -1
  777. package/build-types/dataforms-layouts/regular/index.d.ts.map +0 -1
  778. package/build-types/dataforms-layouts/row/index.d.ts.map +0 -1
  779. package/build-types/field-types/stories/index.story.d.ts +0 -85
  780. package/build-types/field-types/stories/index.story.d.ts.map +0 -1
  781. package/build-types/filter-and-sort-data-view.d.ts.map +0 -1
  782. package/build-types/normalize-fields.d.ts +0 -12
  783. package/build-types/normalize-fields.d.ts.map +0 -1
  784. package/build-types/normalize-form-fields.d.ts.map +0 -1
  785. package/build-types/private-types.d.ts.map +0 -1
  786. package/build-types/test/validation.d.ts +0 -2
  787. package/build-types/test/validation.d.ts.map +0 -1
  788. package/build-types/types.d.ts +0 -688
  789. package/build-types/types.d.ts.map +0 -1
  790. package/build-types/utils.d.ts +0 -6
  791. package/build-types/utils.d.ts.map +0 -1
  792. package/build-types/validation.d.ts +0 -12
  793. package/build-types/validation.d.ts.map +0 -1
  794. package/src/dataforms-layouts/card/style.scss +0 -10
  795. package/src/test/validation.ts +0 -312
  796. package/src/types.ts +0 -891
  797. package/src/utils.ts +0 -15
  798. package/src/validation.ts +0 -91
  799. /package/build-types/{dataforms-layouts → dataform-layouts}/is-combined-field.d.ts +0 -0
  800. /package/build-types/{dataforms-layouts → dataform-layouts}/panel/summary-button.d.ts +0 -0
  801. /package/src/{dataforms-layouts → dataform-layouts}/is-combined-field.ts +0 -0
  802. /package/src/{dataforms-layouts → dataform-layouts}/panel/summary-button.tsx +0 -0
  803. /package/src/{dataforms-layouts → dataform-layouts}/row/style.scss +0 -0
  804. /package/src/{components/dataviews/stories/style.css → stories/dataviews.style.css} +0 -0
  805. /package/src/{private-types.tsx → types/private.ts} +0 -0
@@ -1 +1,7 @@
1
- {"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_i18n","_element","_icons","_searchWidget","_inputWidget","_constants","_jsxRuntime","ENTER","SPACE","FilterText","activeElements","filterInView","filter","undefined","length","name","filterTextWrappers","Name","jsx","className","Value","operator","OPERATOR_IS_ANY","createInterpolateElement","sprintf","__","map","element","label","join","OPERATOR_IS_NONE","OPERATOR_IS_ALL","OPERATOR_IS_NOT_ALL","OPERATOR_IS","OPERATOR_IS_NOT","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","value","unit","OPERATOR_OVER","OperatorSelector","view","onChangeView","operatorOptions","operators","OPERATORS","currentFilter","filters","find","_filter","field","jsxs","__experimentalHStack","spacing","justify","children","FlexItem","SelectControl","options","onChange","newValue","_view$filters","_view$filters2","currentOperator","newFilters","OPERATORS_SHOULD_RESET_VALUE","shouldResetValue","includes","page","size","variant","__nextHasNoMarginBottom","hideLabelFromVision","Filter","addFilterRef","openedFilter","fields","commonProps","toggleRef","useRef","f","elements","singleSelection","isPrimary","isLocked","hasValues","canResetOrRemove","Dropdown","defaultOpen","contentClassName","popoverProps","placement","role","onClose","current","focus","renderToggle","isOpen","onToggle","Tooltip","text","toLowerCase","clsx","tabIndex","onClick","onKeyDown","event","key","preventDefault","ref","Icon","icon","closeSmall","renderContent","__experimentalVStack","default"],"sources":["@wordpress/dataviews/src/components/dataviews-filters/filter.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\nimport type { RefObject } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tDropdown,\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n\tFlexItem,\n\tSelectControl,\n\tTooltip,\n\tIcon,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useRef, createInterpolateElement } from '@wordpress/element';\nimport { closeSmall } from '@wordpress/icons';\n\nconst ENTER = 'Enter';\nconst SPACE = ' ';\n\n/**\n * Internal dependencies\n */\nimport SearchWidget from './search-widget';\nimport InputWidget from './input-widget';\nimport {\n\tOPERATORS,\n\tOPERATOR_IS,\n\tOPERATOR_IS_NOT,\n\tOPERATOR_IS_ANY,\n\tOPERATOR_IS_NONE,\n\tOPERATOR_IS_ALL,\n\tOPERATOR_IS_NOT_ALL,\n\tOPERATOR_LESS_THAN,\n\tOPERATOR_GREATER_THAN,\n\tOPERATOR_LESS_THAN_OR_EQUAL,\n\tOPERATOR_GREATER_THAN_OR_EQUAL,\n\tOPERATOR_CONTAINS,\n\tOPERATOR_NOT_CONTAINS,\n\tOPERATOR_STARTS_WITH,\n\tOPERATOR_BEFORE,\n\tOPERATOR_AFTER,\n\tOPERATOR_BEFORE_INC,\n\tOPERATOR_AFTER_INC,\n\tOPERATOR_BETWEEN,\n\tOPERATOR_ON,\n\tOPERATOR_NOT_ON,\n\tOPERATOR_IN_THE_PAST,\n\tOPERATOR_OVER,\n} from '../../constants';\nimport type {\n\tFilter,\n\tNormalizedFilter,\n\tOperator,\n\tOption,\n\tView,\n\tNormalizedField,\n} from '../../types';\n\ninterface FilterTextProps {\n\tactiveElements: Option[];\n\tfilterInView?: Filter;\n\tfilter: NormalizedFilter;\n}\n\ninterface OperatorSelectorProps {\n\tfilter: NormalizedFilter;\n\tview: View;\n\tonChangeView: ( view: View ) => void;\n}\n\ninterface FilterProps extends OperatorSelectorProps {\n\taddFilterRef: RefObject< HTMLButtonElement >;\n\topenedFilter: string | null;\n\tfields: NormalizedField< any >[];\n}\n\nconst FilterText = ( {\n\tactiveElements,\n\tfilterInView,\n\tfilter,\n}: FilterTextProps ) => {\n\tif ( activeElements === undefined || activeElements.length === 0 ) {\n\t\treturn filter.name;\n\t}\n\n\tconst filterTextWrappers = {\n\t\tName: <span className=\"dataviews-filters__summary-filter-text-name\" />,\n\t\tValue: (\n\t\t\t<span className=\"dataviews-filters__summary-filter-text-value\" />\n\t\t),\n\t};\n\n\tif ( filterInView?.operator === OPERATOR_IS_ANY ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Author is any: Admin, Editor\". */\n\t\t\t\t__( '<Name>%1$s is any: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements.map( ( element ) => element.label ).join( ', ' )\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS_NONE ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Author is none: Admin, Editor\". */\n\t\t\t\t__( '<Name>%1$s is none: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements.map( ( element ) => element.label ).join( ', ' )\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS_ALL ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Author is all: Admin, Editor\". */\n\t\t\t\t__( '<Name>%1$s is all: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements.map( ( element ) => element.label ).join( ', ' )\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS_NOT_ALL ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Author is not all: Admin, Editor\". */\n\t\t\t\t__( '<Name>%1$s is not all: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements.map( ( element ) => element.label ).join( ', ' )\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Author is: Admin\". */\n\t\t\t\t__( '<Name>%1$s is: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS_NOT ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Author is not: Admin\". */\n\t\t\t\t__( '<Name>%1$s is not: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_LESS_THAN ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Price is less than: 10\". */\n\t\t\t\t__( '<Name>%1$s is less than: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_GREATER_THAN ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Price is greater than: 10\". */\n\t\t\t\t__( '<Name>%1$s is greater than: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_LESS_THAN_OR_EQUAL ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Price is less than or equal to: 10\". */\n\t\t\t\t__(\n\t\t\t\t\t'<Name>%1$s is less than or equal to: </Name><Value>%2$s</Value>'\n\t\t\t\t),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_GREATER_THAN_OR_EQUAL ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Price is greater than or equal to: 10\". */\n\t\t\t\t__(\n\t\t\t\t\t'<Name>%1$s is greater than or equal to: </Name><Value>%2$s</Value>'\n\t\t\t\t),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_CONTAINS ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Title contains: Mars\". */\n\t\t\t\t__( '<Name>%1$s contains: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_NOT_CONTAINS ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Description doesn't contain: photo\". */\n\t\t\t\t__( \"<Name>%1$s doesn't contain: </Name><Value>%2$s</Value>\" ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_STARTS_WITH ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Title starts with: Mar\". */\n\t\t\t\t__( '<Name>%1$s starts with: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_BEFORE ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is before: 2024-01-01\". */\n\t\t\t\t__( '<Name>%1$s is before: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_AFTER ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is after: 2024-01-01\". */\n\t\t\t\t__( '<Name>%1$s is after: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_BEFORE_INC ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is on or before: 2024-01-01\". */\n\t\t\t\t__( '<Name>%1$s is on or before: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_AFTER_INC ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is on or after: 2024-01-01\". */\n\t\t\t\t__( '<Name>%1$s is on or after: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_BETWEEN ) {\n\t\tconst { label } = activeElements[ 0 ];\n\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Min value. 3: Max value. e.g.: \"Item count between (inc): 10 and 180\". */\n\t\t\t\t__(\n\t\t\t\t\t'<Name>%1$s between (inc): </Name><Value>%2$s and %3$s</Value>'\n\t\t\t\t),\n\t\t\t\tfilter.name,\n\t\t\t\tlabel[ 0 ],\n\t\t\t\tlabel[ 1 ]\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_ON ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is: 2024-01-01\". */\n\t\t\t\t__( '<Name>%1$s is: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_NOT_ON ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is not: 2024-01-01\". */\n\t\t\t\t__( '<Name>%1$s is not: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IN_THE_PAST ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is in the past: 1 days\". */\n\t\t\t\t__( '<Name>%1$s is in the past: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\t`${ activeElements[ 0 ].value.value } ${ activeElements[ 0 ].value.unit }`\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_OVER ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is over: 1 days ago\". */\n\t\t\t\t__( '<Name>%1$s is over: </Name><Value>%2$s</Value> ago' ),\n\t\t\t\tfilter.name,\n\t\t\t\t`${ activeElements[ 0 ].value.value } ${ activeElements[ 0 ].value.unit }`\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\treturn sprintf(\n\t\t/* translators: 1: Filter name e.g.: \"Unknown status for Author\". */\n\t\t__( 'Unknown status for %1$s' ),\n\t\tfilter.name\n\t);\n};\n\nfunction OperatorSelector( {\n\tfilter,\n\tview,\n\tonChangeView,\n}: OperatorSelectorProps ) {\n\tconst operatorOptions = filter.operators?.map( ( operator ) => ( {\n\t\tvalue: operator,\n\t\tlabel: OPERATORS[ operator ]?.label,\n\t} ) );\n\tconst currentFilter = view.filters?.find(\n\t\t( _filter ) => _filter.field === filter.field\n\t);\n\tconst value = currentFilter?.operator || filter.operators[ 0 ];\n\treturn (\n\t\toperatorOptions.length > 1 && (\n\t\t\t<HStack\n\t\t\t\tspacing={ 2 }\n\t\t\t\tjustify=\"flex-start\"\n\t\t\t\tclassName=\"dataviews-filters__summary-operators-container\"\n\t\t\t>\n\t\t\t\t<FlexItem className=\"dataviews-filters__summary-operators-filter-name\">\n\t\t\t\t\t{ filter.name }\n\t\t\t\t</FlexItem>\n\n\t\t\t\t<SelectControl\n\t\t\t\t\tclassName=\"dataviews-filters__summary-operators-filter-select\"\n\t\t\t\t\tlabel={ __( 'Conditions' ) }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\toptions={ operatorOptions }\n\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\tconst operator = newValue as Operator;\n\t\t\t\t\t\tconst currentOperator = currentFilter?.operator;\n\t\t\t\t\t\tconst newFilters = currentFilter\n\t\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t\t...( view.filters ?? [] ).map(\n\t\t\t\t\t\t\t\t\t\t( _filter ) => {\n\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t_filter.field === filter.field\n\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\t// Reset the value only when switching between operators that have different value types.\n\t\t\t\t\t\t\t\t\t\t\t\tconst OPERATORS_SHOULD_RESET_VALUE =\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tOPERATOR_BETWEEN,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tOPERATOR_IN_THE_PAST,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tOPERATOR_OVER,\n\t\t\t\t\t\t\t\t\t\t\t\t\t];\n\t\t\t\t\t\t\t\t\t\t\t\tconst shouldResetValue =\n\t\t\t\t\t\t\t\t\t\t\t\t\tcurrentOperator &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t( OPERATORS_SHOULD_RESET_VALUE.includes(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcurrentOperator\n\t\t\t\t\t\t\t\t\t\t\t\t\t) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tOPERATORS_SHOULD_RESET_VALUE.includes(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toperator\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) );\n\n\t\t\t\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t\t\t\t..._filter,\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue: shouldResetValue\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: _filter.value,\n\t\t\t\t\t\t\t\t\t\t\t\t\toperator,\n\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\treturn _filter;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t ]\n\t\t\t\t\t\t\t: [\n\t\t\t\t\t\t\t\t\t...( view.filters ?? [] ),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tfield: filter.field,\n\t\t\t\t\t\t\t\t\t\toperator,\n\t\t\t\t\t\t\t\t\t\tvalue: undefined,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t ];\n\t\t\t\t\t\tonChangeView( {\n\t\t\t\t\t\t\t...view,\n\t\t\t\t\t\t\tpage: 1,\n\t\t\t\t\t\t\tfilters: newFilters,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tvariant=\"minimal\"\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t)\n\t);\n}\n\nexport default function Filter( {\n\taddFilterRef,\n\topenedFilter,\n\tfields,\n\t...commonProps\n}: FilterProps ) {\n\tconst toggleRef = useRef< HTMLDivElement >( null );\n\tconst { filter, view, onChangeView } = commonProps;\n\tconst filterInView = view.filters?.find(\n\t\t( f ) => f.field === filter.field\n\t);\n\n\tlet activeElements: Option[] = [];\n\n\tif ( filter.elements.length > 0 ) {\n\t\tactiveElements = filter.elements.filter( ( element ) => {\n\t\t\tif ( filter.singleSelection ) {\n\t\t\t\treturn element.value === filterInView?.value;\n\t\t\t}\n\t\t\treturn filterInView?.value?.includes( element.value );\n\t\t} );\n\t} else if ( filterInView?.value !== undefined ) {\n\t\tactiveElements = [\n\t\t\t{\n\t\t\t\tvalue: filterInView.value,\n\t\t\t\tlabel: filterInView.value,\n\t\t\t},\n\t\t];\n\t}\n\n\tconst isPrimary = filter.isPrimary;\n\tconst isLocked = filterInView?.isLocked;\n\tconst hasValues = ! isLocked && filterInView?.value !== undefined;\n\tconst canResetOrRemove = ! isLocked && ( ! isPrimary || hasValues );\n\treturn (\n\t\t<Dropdown\n\t\t\tdefaultOpen={ openedFilter === filter.field }\n\t\t\tcontentClassName=\"dataviews-filters__summary-popover\"\n\t\t\tpopoverProps={ { placement: 'bottom-start', role: 'dialog' } }\n\t\t\tonClose={ () => {\n\t\t\t\ttoggleRef.current?.focus();\n\t\t\t} }\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<div className=\"dataviews-filters__summary-chip-container\">\n\t\t\t\t\t<Tooltip\n\t\t\t\t\t\ttext={ sprintf(\n\t\t\t\t\t\t\t/* translators: 1: Filter name. */\n\t\t\t\t\t\t\t__( 'Filter by: %1$s' ),\n\t\t\t\t\t\t\tfilter.name.toLowerCase()\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'dataviews-filters__summary-chip',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'has-reset': canResetOrRemove,\n\t\t\t\t\t\t\t\t\t'has-values': hasValues,\n\t\t\t\t\t\t\t\t\t'is-not-clickable': isLocked,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\trole=\"button\"\n\t\t\t\t\t\t\ttabIndex={ isLocked ? -1 : 0 }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tif ( ! isLocked ) {\n\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t! isLocked &&\n\t\t\t\t\t\t\t\t\t[ ENTER, SPACE ].includes( event.key )\n\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\taria-disabled={ isLocked }\n\t\t\t\t\t\t\taria-pressed={ isOpen }\n\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\tref={ toggleRef }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FilterText\n\t\t\t\t\t\t\t\tactiveElements={ activeElements }\n\t\t\t\t\t\t\t\tfilterInView={ filterInView }\n\t\t\t\t\t\t\t\tfilter={ filter }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t\t{ canResetOrRemove && (\n\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\ttext={ isPrimary ? __( 'Reset' ) : __( 'Remove' ) }\n\t\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t'dataviews-filters__summary-chip-remove',\n\t\t\t\t\t\t\t\t\t{ 'has-values': hasValues }\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonChangeView( {\n\t\t\t\t\t\t\t\t\t\t...view,\n\t\t\t\t\t\t\t\t\t\tpage: 1,\n\t\t\t\t\t\t\t\t\t\tfilters: view.filters?.filter(\n\t\t\t\t\t\t\t\t\t\t\t( _filter ) =>\n\t\t\t\t\t\t\t\t\t\t\t\t_filter.field !== filter.field\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t// If the filter is not primary and can be removed, it will be added\n\t\t\t\t\t\t\t\t\t// back to the available filters from `Add filter` component.\n\t\t\t\t\t\t\t\t\tif ( ! isPrimary ) {\n\t\t\t\t\t\t\t\t\t\taddFilterRef.current?.focus();\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t// If is primary, focus the toggle button.\n\t\t\t\t\t\t\t\t\t\ttoggleRef.current?.focus();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Icon icon={ closeSmall } />\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\trenderContent={ () => {\n\t\t\t\treturn (\n\t\t\t\t\t<VStack spacing={ 0 } justify=\"flex-start\">\n\t\t\t\t\t\t<OperatorSelector { ...commonProps } />\n\t\t\t\t\t\t{ commonProps.filter.elements.length > 0 ? (\n\t\t\t\t\t\t\t<SearchWidget\n\t\t\t\t\t\t\t\t{ ...commonProps }\n\t\t\t\t\t\t\t\tfilter={ {\n\t\t\t\t\t\t\t\t\t...commonProps.filter,\n\t\t\t\t\t\t\t\t\telements: commonProps.filter.elements,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<InputWidget { ...commonProps } fields={ fields } />\n\t\t\t\t\t\t) }\n\t\t\t\t\t</VStack>\n\t\t\t\t);\n\t\t\t} }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/dataviews-filters/filter.tsx"],
4
+ "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\nimport type { RefObject } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tDropdown,\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n\tFlexItem,\n\tSelectControl,\n\tTooltip,\n\tIcon,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useRef, createInterpolateElement } from '@wordpress/element';\nimport { closeSmall } from '@wordpress/icons';\n\nconst ENTER = 'Enter';\nconst SPACE = ' ';\n\n/**\n * Internal dependencies\n */\nimport SearchWidget from './search-widget';\nimport InputWidget from './input-widget';\nimport {\n\tOPERATORS,\n\tOPERATOR_IS,\n\tOPERATOR_IS_NOT,\n\tOPERATOR_IS_ANY,\n\tOPERATOR_IS_NONE,\n\tOPERATOR_IS_ALL,\n\tOPERATOR_IS_NOT_ALL,\n\tOPERATOR_LESS_THAN,\n\tOPERATOR_GREATER_THAN,\n\tOPERATOR_LESS_THAN_OR_EQUAL,\n\tOPERATOR_GREATER_THAN_OR_EQUAL,\n\tOPERATOR_CONTAINS,\n\tOPERATOR_NOT_CONTAINS,\n\tOPERATOR_STARTS_WITH,\n\tOPERATOR_BEFORE,\n\tOPERATOR_AFTER,\n\tOPERATOR_BEFORE_INC,\n\tOPERATOR_AFTER_INC,\n\tOPERATOR_BETWEEN,\n\tOPERATOR_ON,\n\tOPERATOR_NOT_ON,\n\tOPERATOR_IN_THE_PAST,\n\tOPERATOR_OVER,\n} from '../../constants';\nimport type {\n\tFilter,\n\tNormalizedField,\n\tNormalizedFilter,\n\tOperator,\n\tOption,\n\tView,\n} from '../../types';\nimport useElements from '../../hooks/use-elements';\n\ninterface FilterTextProps {\n\tactiveElements: Option[];\n\tfilterInView?: Filter;\n\tfilter: NormalizedFilter;\n}\n\ninterface OperatorSelectorProps {\n\tfilter: NormalizedFilter;\n\tview: View;\n\tonChangeView: ( view: View ) => void;\n}\n\ninterface FilterProps extends OperatorSelectorProps {\n\taddFilterRef: RefObject< HTMLButtonElement >;\n\topenedFilter: string | null;\n\tfields: NormalizedField< any >[];\n}\n\nconst FilterText = ( {\n\tactiveElements,\n\tfilterInView,\n\tfilter,\n}: FilterTextProps ) => {\n\tif ( activeElements === undefined || activeElements.length === 0 ) {\n\t\treturn filter.name;\n\t}\n\n\tconst filterTextWrappers = {\n\t\tName: <span className=\"dataviews-filters__summary-filter-text-name\" />,\n\t\tValue: (\n\t\t\t<span className=\"dataviews-filters__summary-filter-text-value\" />\n\t\t),\n\t};\n\n\tif ( filterInView?.operator === OPERATOR_IS_ANY ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Author is any: Admin, Editor\". */\n\t\t\t\t__( '<Name>%1$s is any: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements.map( ( element ) => element.label ).join( ', ' )\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS_NONE ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Author is none: Admin, Editor\". */\n\t\t\t\t__( '<Name>%1$s is none: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements.map( ( element ) => element.label ).join( ', ' )\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS_ALL ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Author is all: Admin, Editor\". */\n\t\t\t\t__( '<Name>%1$s is all: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements.map( ( element ) => element.label ).join( ', ' )\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS_NOT_ALL ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Author is not all: Admin, Editor\". */\n\t\t\t\t__( '<Name>%1$s is not all: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements.map( ( element ) => element.label ).join( ', ' )\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Author is: Admin\". */\n\t\t\t\t__( '<Name>%1$s is: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS_NOT ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Author is not: Admin\". */\n\t\t\t\t__( '<Name>%1$s is not: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_LESS_THAN ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Price is less than: 10\". */\n\t\t\t\t__( '<Name>%1$s is less than: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_GREATER_THAN ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Price is greater than: 10\". */\n\t\t\t\t__( '<Name>%1$s is greater than: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_LESS_THAN_OR_EQUAL ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Price is less than or equal to: 10\". */\n\t\t\t\t__(\n\t\t\t\t\t'<Name>%1$s is less than or equal to: </Name><Value>%2$s</Value>'\n\t\t\t\t),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_GREATER_THAN_OR_EQUAL ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Price is greater than or equal to: 10\". */\n\t\t\t\t__(\n\t\t\t\t\t'<Name>%1$s is greater than or equal to: </Name><Value>%2$s</Value>'\n\t\t\t\t),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_CONTAINS ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Title contains: Mars\". */\n\t\t\t\t__( '<Name>%1$s contains: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_NOT_CONTAINS ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Description doesn't contain: photo\". */\n\t\t\t\t__( \"<Name>%1$s doesn't contain: </Name><Value>%2$s</Value>\" ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_STARTS_WITH ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Title starts with: Mar\". */\n\t\t\t\t__( '<Name>%1$s starts with: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_BEFORE ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is before: 2024-01-01\". */\n\t\t\t\t__( '<Name>%1$s is before: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_AFTER ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is after: 2024-01-01\". */\n\t\t\t\t__( '<Name>%1$s is after: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_BEFORE_INC ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is on or before: 2024-01-01\". */\n\t\t\t\t__( '<Name>%1$s is on or before: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_AFTER_INC ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is on or after: 2024-01-01\". */\n\t\t\t\t__( '<Name>%1$s is on or after: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_BETWEEN ) {\n\t\tconst { label } = activeElements[ 0 ];\n\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Min value. 3: Max value. e.g.: \"Item count between (inc): 10 and 180\". */\n\t\t\t\t__(\n\t\t\t\t\t'<Name>%1$s between (inc): </Name><Value>%2$s and %3$s</Value>'\n\t\t\t\t),\n\t\t\t\tfilter.name,\n\t\t\t\tlabel[ 0 ],\n\t\t\t\tlabel[ 1 ]\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_ON ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is: 2024-01-01\". */\n\t\t\t\t__( '<Name>%1$s is: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_NOT_ON ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is not: 2024-01-01\". */\n\t\t\t\t__( '<Name>%1$s is not: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IN_THE_PAST ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is in the past: 1 days\". */\n\t\t\t\t__( '<Name>%1$s is in the past: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\t`${ activeElements[ 0 ].value.value } ${ activeElements[ 0 ].value.unit }`\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_OVER ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 2: Filter value. e.g.: \"Date is over: 1 days ago\". */\n\t\t\t\t__( '<Name>%1$s is over: </Name><Value>%2$s</Value> ago' ),\n\t\t\t\tfilter.name,\n\t\t\t\t`${ activeElements[ 0 ].value.value } ${ activeElements[ 0 ].value.unit }`\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\treturn sprintf(\n\t\t/* translators: 1: Filter name e.g.: \"Unknown status for Author\". */\n\t\t__( 'Unknown status for %1$s' ),\n\t\tfilter.name\n\t);\n};\n\nfunction OperatorSelector( {\n\tfilter,\n\tview,\n\tonChangeView,\n}: OperatorSelectorProps ) {\n\tconst operatorOptions = filter.operators?.map( ( operator ) => ( {\n\t\tvalue: operator,\n\t\tlabel: OPERATORS[ operator ]?.label,\n\t} ) );\n\tconst currentFilter = view.filters?.find(\n\t\t( _filter ) => _filter.field === filter.field\n\t);\n\tconst value = currentFilter?.operator || filter.operators[ 0 ];\n\treturn (\n\t\toperatorOptions.length > 1 && (\n\t\t\t<HStack\n\t\t\t\tspacing={ 2 }\n\t\t\t\tjustify=\"flex-start\"\n\t\t\t\tclassName=\"dataviews-filters__summary-operators-container\"\n\t\t\t>\n\t\t\t\t<FlexItem className=\"dataviews-filters__summary-operators-filter-name\">\n\t\t\t\t\t{ filter.name }\n\t\t\t\t</FlexItem>\n\n\t\t\t\t<SelectControl\n\t\t\t\t\tclassName=\"dataviews-filters__summary-operators-filter-select\"\n\t\t\t\t\tlabel={ __( 'Conditions' ) }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\toptions={ operatorOptions }\n\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\tconst operator = newValue as Operator;\n\t\t\t\t\t\tconst currentOperator = currentFilter?.operator;\n\t\t\t\t\t\tconst newFilters = currentFilter\n\t\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t\t...( view.filters ?? [] ).map(\n\t\t\t\t\t\t\t\t\t\t( _filter ) => {\n\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t_filter.field === filter.field\n\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\t// Reset the value only when switching between operators that have different value types.\n\t\t\t\t\t\t\t\t\t\t\t\tconst OPERATORS_SHOULD_RESET_VALUE =\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tOPERATOR_BETWEEN,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tOPERATOR_IN_THE_PAST,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tOPERATOR_OVER,\n\t\t\t\t\t\t\t\t\t\t\t\t\t];\n\t\t\t\t\t\t\t\t\t\t\t\tconst shouldResetValue =\n\t\t\t\t\t\t\t\t\t\t\t\t\tcurrentOperator &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t( OPERATORS_SHOULD_RESET_VALUE.includes(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcurrentOperator\n\t\t\t\t\t\t\t\t\t\t\t\t\t) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tOPERATORS_SHOULD_RESET_VALUE.includes(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toperator\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) );\n\n\t\t\t\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t\t\t\t..._filter,\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue: shouldResetValue\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: _filter.value,\n\t\t\t\t\t\t\t\t\t\t\t\t\toperator,\n\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\treturn _filter;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t ]\n\t\t\t\t\t\t\t: [\n\t\t\t\t\t\t\t\t\t...( view.filters ?? [] ),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tfield: filter.field,\n\t\t\t\t\t\t\t\t\t\toperator,\n\t\t\t\t\t\t\t\t\t\tvalue: undefined,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t ];\n\t\t\t\t\t\tonChangeView( {\n\t\t\t\t\t\t\t...view,\n\t\t\t\t\t\t\tpage: 1,\n\t\t\t\t\t\t\tfilters: newFilters,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\tvariant=\"minimal\"\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t)\n\t);\n}\n\nexport default function Filter( {\n\taddFilterRef,\n\topenedFilter,\n\tfields,\n\t...commonProps\n}: FilterProps ) {\n\tconst toggleRef = useRef< HTMLDivElement >( null );\n\tconst { filter, view, onChangeView } = commonProps;\n\tconst filterInView = view.filters?.find(\n\t\t( f ) => f.field === filter.field\n\t);\n\n\tlet activeElements: Option[] = [];\n\n\tconst { elements } = useElements( {\n\t\telements: filter.elements,\n\t\tgetElements: filter.getElements,\n\t} );\n\n\tif ( elements.length > 0 ) {\n\t\tactiveElements = elements.filter( ( element ) => {\n\t\t\tif ( filter.singleSelection ) {\n\t\t\t\treturn element.value === filterInView?.value;\n\t\t\t}\n\t\t\treturn filterInView?.value?.includes( element.value );\n\t\t} );\n\t} else if ( filterInView?.value !== undefined ) {\n\t\tactiveElements = [\n\t\t\t{\n\t\t\t\tvalue: filterInView.value,\n\t\t\t\tlabel: filterInView.value,\n\t\t\t},\n\t\t];\n\t}\n\n\tconst isPrimary = filter.isPrimary;\n\tconst isLocked = filterInView?.isLocked;\n\tconst hasValues = ! isLocked && filterInView?.value !== undefined;\n\tconst canResetOrRemove = ! isLocked && ( ! isPrimary || hasValues );\n\treturn (\n\t\t<Dropdown\n\t\t\tdefaultOpen={ openedFilter === filter.field }\n\t\t\tcontentClassName=\"dataviews-filters__summary-popover\"\n\t\t\tpopoverProps={ { placement: 'bottom-start', role: 'dialog' } }\n\t\t\tonClose={ () => {\n\t\t\t\ttoggleRef.current?.focus();\n\t\t\t} }\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<div className=\"dataviews-filters__summary-chip-container\">\n\t\t\t\t\t<Tooltip\n\t\t\t\t\t\ttext={ sprintf(\n\t\t\t\t\t\t\t/* translators: 1: Filter name. */\n\t\t\t\t\t\t\t__( 'Filter by: %1$s' ),\n\t\t\t\t\t\t\tfilter.name.toLowerCase()\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'dataviews-filters__summary-chip',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'has-reset': canResetOrRemove,\n\t\t\t\t\t\t\t\t\t'has-values': hasValues,\n\t\t\t\t\t\t\t\t\t'is-not-clickable': isLocked,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\trole=\"button\"\n\t\t\t\t\t\t\ttabIndex={ isLocked ? -1 : 0 }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tif ( ! isLocked ) {\n\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t! isLocked &&\n\t\t\t\t\t\t\t\t\t[ ENTER, SPACE ].includes( event.key )\n\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\taria-disabled={ isLocked }\n\t\t\t\t\t\t\taria-pressed={ isOpen }\n\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\tref={ toggleRef }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FilterText\n\t\t\t\t\t\t\t\tactiveElements={ activeElements }\n\t\t\t\t\t\t\t\tfilterInView={ filterInView }\n\t\t\t\t\t\t\t\tfilter={ filter }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t\t{ canResetOrRemove && (\n\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\ttext={ isPrimary ? __( 'Reset' ) : __( 'Remove' ) }\n\t\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t'dataviews-filters__summary-chip-remove',\n\t\t\t\t\t\t\t\t\t{ 'has-values': hasValues }\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonChangeView( {\n\t\t\t\t\t\t\t\t\t\t...view,\n\t\t\t\t\t\t\t\t\t\tpage: 1,\n\t\t\t\t\t\t\t\t\t\tfilters: view.filters?.filter(\n\t\t\t\t\t\t\t\t\t\t\t( _filter ) =>\n\t\t\t\t\t\t\t\t\t\t\t\t_filter.field !== filter.field\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t// If the filter is not primary and can be removed, it will be added\n\t\t\t\t\t\t\t\t\t// back to the available filters from `Add filter` component.\n\t\t\t\t\t\t\t\t\tif ( ! isPrimary ) {\n\t\t\t\t\t\t\t\t\t\taddFilterRef.current?.focus();\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t// If is primary, focus the toggle button.\n\t\t\t\t\t\t\t\t\t\ttoggleRef.current?.focus();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Icon icon={ closeSmall } />\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\trenderContent={ () => {\n\t\t\t\treturn (\n\t\t\t\t\t<VStack spacing={ 0 } justify=\"flex-start\">\n\t\t\t\t\t\t<OperatorSelector { ...commonProps } />\n\t\t\t\t\t\t{ commonProps.filter.hasElements ? (\n\t\t\t\t\t\t\t<SearchWidget\n\t\t\t\t\t\t\t\t{ ...commonProps }\n\t\t\t\t\t\t\t\tfilter={ {\n\t\t\t\t\t\t\t\t\t...commonProps.filter,\n\t\t\t\t\t\t\t\t\telements,\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<InputWidget { ...commonProps } fields={ fields } />\n\t\t\t\t\t\t) }\n\t\t\t\t\t</VStack>\n\t\t\t\t);\n\t\t\t} }\n\t\t/>\n\t);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["HStack", "useElements", "clsx", "VStack", "SearchWidget", "InputWidget"]
7
+ }
@@ -0,0 +1,46 @@
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 filters_toggled_exports = {};
30
+ __export(filters_toggled_exports, {
31
+ default: () => filters_toggled_default
32
+ });
33
+ module.exports = __toCommonJS(filters_toggled_exports);
34
+ var import_jsx_runtime = require("react/jsx-runtime");
35
+ var import_element = require("@wordpress/element");
36
+ var import_dataviews_context = __toESM(require("../dataviews-context"));
37
+ var import_filters = __toESM(require("./filters"));
38
+ function FiltersToggled(props) {
39
+ const { isShowingFilter } = (0, import_element.useContext)(import_dataviews_context.default);
40
+ if (!isShowingFilter) {
41
+ return null;
42
+ }
43
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_filters.default, { ...props });
44
+ }
45
+ var filters_toggled_default = FiltersToggled;
46
+ //# sourceMappingURL=filters-toggled.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/dataviews-filters/filters-toggled.tsx"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport DataViewsContext from '../dataviews-context';\nimport Filters from './filters';\n\nfunction FiltersToggled( props: { className?: string } ) {\n\tconst { isShowingFilter } = useContext( DataViewsContext );\n\tif ( ! isShowingFilter ) {\n\t\treturn null;\n\t}\n\treturn <Filters { ...props } />;\n}\n\nexport default FiltersToggled;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAgBQ;AAbR,qBAA2B;AAK3B,+BAA6B;AAC7B,qBAAoB;AAEpB,SAAS,eAAgB,OAAgC;AACxD,QAAM,EAAE,gBAAgB,QAAI,2BAAY,yBAAAA,OAAiB;AACzD,MAAK,CAAE,iBAAkB;AACxB,WAAO;AAAA,EACR;AACA,SAAO,4CAAC,eAAAC,SAAA,EAAU,GAAG,OAAQ;AAC9B;AAEA,IAAO,0BAAQ;",
6
+ "names": ["DataViewsContext", "Filters"]
7
+ }
@@ -0,0 +1,101 @@
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 filters_exports = {};
30
+ __export(filters_exports, {
31
+ default: () => filters_default
32
+ });
33
+ module.exports = __toCommonJS(filters_exports);
34
+ var import_jsx_runtime = require("react/jsx-runtime");
35
+ var import_element = require("@wordpress/element");
36
+ var import_components = require("@wordpress/components");
37
+ var import_filter = __toESM(require("./filter"));
38
+ var import_add_filter = __toESM(require("./add-filter"));
39
+ var import_reset_filters = __toESM(require("./reset-filters"));
40
+ var import_use_filters = __toESM(require("./use-filters"));
41
+ var import_dataviews_context = __toESM(require("../dataviews-context"));
42
+ function Filters({ className }) {
43
+ const { fields, view, onChangeView, openedFilter, setOpenedFilter } = (0, import_element.useContext)(import_dataviews_context.default);
44
+ const addFilterRef = (0, import_element.useRef)(null);
45
+ const filters = (0, import_use_filters.default)(fields, view);
46
+ const addFilter = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
47
+ import_add_filter.default,
48
+ {
49
+ filters,
50
+ view,
51
+ onChangeView,
52
+ ref: addFilterRef,
53
+ setOpenedFilter
54
+ },
55
+ "add-filter"
56
+ );
57
+ const visibleFilters = filters.filter((filter) => filter.isVisible);
58
+ if (visibleFilters.length === 0) {
59
+ return null;
60
+ }
61
+ const filterComponents = [
62
+ ...visibleFilters.map((filter) => {
63
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
64
+ import_filter.default,
65
+ {
66
+ filter,
67
+ view,
68
+ fields,
69
+ onChangeView,
70
+ addFilterRef,
71
+ openedFilter
72
+ },
73
+ filter.field
74
+ );
75
+ }),
76
+ addFilter
77
+ ];
78
+ filterComponents.push(
79
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
80
+ import_reset_filters.default,
81
+ {
82
+ filters,
83
+ view,
84
+ onChangeView
85
+ },
86
+ "reset-filters"
87
+ )
88
+ );
89
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
90
+ import_components.__experimentalHStack,
91
+ {
92
+ justify: "flex-start",
93
+ style: { width: "fit-content" },
94
+ wrap: true,
95
+ className,
96
+ children: filterComponents
97
+ }
98
+ );
99
+ }
100
+ var filters_default = (0, import_element.memo)(Filters);
101
+ //# sourceMappingURL=filters.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/dataviews-filters/filters.tsx"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { memo, useContext, useRef } from '@wordpress/element';\nimport { __experimentalHStack as HStack } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport Filter from './filter';\nimport { default as AddFilter } from './add-filter';\nimport ResetFilters from './reset-filters';\nimport useFilters from './use-filters';\nimport DataViewsContext from '../dataviews-context';\n\nfunction Filters( { className }: { className?: string } ) {\n\tconst { fields, view, onChangeView, openedFilter, setOpenedFilter } =\n\t\tuseContext( DataViewsContext );\n\tconst addFilterRef = useRef< HTMLButtonElement >( null );\n\tconst filters = useFilters( fields, view );\n\tconst addFilter = (\n\t\t<AddFilter\n\t\t\tkey=\"add-filter\"\n\t\t\tfilters={ filters }\n\t\t\tview={ view }\n\t\t\tonChangeView={ onChangeView }\n\t\t\tref={ addFilterRef }\n\t\t\tsetOpenedFilter={ setOpenedFilter }\n\t\t/>\n\t);\n\tconst visibleFilters = filters.filter( ( filter ) => filter.isVisible );\n\tif ( visibleFilters.length === 0 ) {\n\t\treturn null;\n\t}\n\tconst filterComponents = [\n\t\t...visibleFilters.map( ( filter ) => {\n\t\t\treturn (\n\t\t\t\t<Filter\n\t\t\t\t\tkey={ filter.field }\n\t\t\t\t\tfilter={ filter }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\taddFilterRef={ addFilterRef }\n\t\t\t\t\topenedFilter={ openedFilter }\n\t\t\t\t/>\n\t\t\t);\n\t\t} ),\n\t\taddFilter,\n\t];\n\n\tfilterComponents.push(\n\t\t<ResetFilters\n\t\t\tkey=\"reset-filters\"\n\t\t\tfilters={ filters }\n\t\t\tview={ view }\n\t\t\tonChangeView={ onChangeView }\n\t\t/>\n\t);\n\n\treturn (\n\t\t<HStack\n\t\t\tjustify=\"flex-start\"\n\t\t\tstyle={ { width: 'fit-content' } }\n\t\t\twrap\n\t\t\tclassName={ className }\n\t\t>\n\t\t\t{ filterComponents }\n\t\t</HStack>\n\t);\n}\n\nexport default memo( Filters );\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAqBE;AAlBF,qBAAyC;AACzC,wBAA+C;AAK/C,oBAAmB;AACnB,wBAAqC;AACrC,2BAAyB;AACzB,yBAAuB;AACvB,+BAA6B;AAE7B,SAAS,QAAS,EAAE,UAAU,GAA4B;AACzD,QAAM,EAAE,QAAQ,MAAM,cAAc,cAAc,gBAAgB,QACjE,2BAAY,yBAAAA,OAAiB;AAC9B,QAAM,mBAAe,uBAA6B,IAAK;AACvD,QAAM,cAAU,mBAAAC,SAAY,QAAQ,IAAK;AACzC,QAAM,YACL;AAAA,IAAC,kBAAAC;AAAA,IAAA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA,KAAM;AAAA,MACN;AAAA;AAAA,IALI;AAAA,EAML;AAED,QAAM,iBAAiB,QAAQ,OAAQ,CAAE,WAAY,OAAO,SAAU;AACtE,MAAK,eAAe,WAAW,GAAI;AAClC,WAAO;AAAA,EACR;AACA,QAAM,mBAAmB;AAAA,IACxB,GAAG,eAAe,IAAK,CAAE,WAAY;AACpC,aACC;AAAA,QAAC,cAAAC;AAAA,QAAA;AAAA,UAEA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA;AAAA,QANM,OAAO;AAAA,MAOd;AAAA,IAEF,CAAE;AAAA,IACF;AAAA,EACD;AAEA,mBAAiB;AAAA,IAChB;AAAA,MAAC,qBAAAC;AAAA,MAAA;AAAA,QAEA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,MAHI;AAAA,IAIL;AAAA,EACD;AAEA,SACC;AAAA,IAAC,kBAAAC;AAAA,IAAA;AAAA,MACA,SAAQ;AAAA,MACR,OAAQ,EAAE,OAAO,cAAc;AAAA,MAC/B,MAAI;AAAA,MACJ;AAAA,MAEE;AAAA;AAAA,EACH;AAEF;AAEA,IAAO,sBAAQ,qBAAM,OAAQ;",
6
+ "names": ["DataViewsContext", "useFilters", "AddFilter", "Filter", "ResetFilters", "HStack"]
7
+ }
@@ -1,199 +1,48 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.FiltersToggle = FiltersToggle;
8
- exports.default = void 0;
9
- exports.useFilters = useFilters;
10
- var _element = require("@wordpress/element");
11
- var _components = require("@wordpress/components");
12
- var _icons = require("@wordpress/icons");
13
- var _i18n = require("@wordpress/i18n");
14
- var _filter = _interopRequireDefault(require("./filter"));
15
- var _addFilter = _interopRequireWildcard(require("./add-filter"));
16
- var _resetFilters = _interopRequireDefault(require("./reset-filters"));
17
- var _dataviewsContext = _interopRequireDefault(require("../dataviews-context"));
18
- var _constants = require("../../constants");
19
- var _jsxRuntime = require("react/jsx-runtime");
20
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
21
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
22
- /**
23
- * WordPress dependencies
24
- */
25
-
26
- /**
27
- * Internal dependencies
28
- */
29
-
30
- function useFilters(fields, view) {
31
- return (0, _element.useMemo)(() => {
32
- const filters = [];
33
- fields.forEach(field => {
34
- var _view$filters$some, _field$elements;
35
- if (field.filterBy === false || !field.elements?.length && !field.Edit) {
36
- return;
37
- }
38
- const operators = field.filterBy.operators;
39
- const isPrimary = !!field.filterBy?.isPrimary;
40
- const isLocked = (_view$filters$some = view.filters?.some(f => f.field === field.id && !!f.isLocked)) !== null && _view$filters$some !== void 0 ? _view$filters$some : false;
41
- filters.push({
42
- field: field.id,
43
- name: field.label,
44
- elements: (_field$elements = field.elements) !== null && _field$elements !== void 0 ? _field$elements : [],
45
- singleSelection: operators.some(op => _constants.SINGLE_SELECTION_OPERATORS.includes(op)),
46
- operators,
47
- isVisible: isLocked || isPrimary || !!view.filters?.some(f => f.field === field.id && _constants.ALL_OPERATORS.includes(f.operator)),
48
- isPrimary,
49
- isLocked
50
- });
51
- });
52
-
53
- // Sort filters by:
54
- // - locked filters go first
55
- // - primary filters go next
56
- // - then, sort by name
57
- filters.sort((a, b) => {
58
- if (a.isLocked && !b.isLocked) {
59
- return -1;
60
- }
61
- if (!a.isLocked && b.isLocked) {
62
- return 1;
63
- }
64
- if (a.isPrimary && !b.isPrimary) {
65
- return -1;
66
- }
67
- if (!a.isPrimary && b.isPrimary) {
68
- return 1;
69
- }
70
- return a.name.localeCompare(b.name);
71
- });
72
- return filters;
73
- }, [fields, view]);
74
- }
75
- function FiltersToggle() {
76
- const {
77
- filters,
78
- view,
79
- onChangeView,
80
- setOpenedFilter,
81
- isShowingFilter,
82
- setIsShowingFilter
83
- } = (0, _element.useContext)(_dataviewsContext.default);
84
- const buttonRef = (0, _element.useRef)(null);
85
- const onChangeViewWithFilterVisibility = (0, _element.useCallback)(_view => {
86
- onChangeView(_view);
87
- setIsShowingFilter(true);
88
- }, [onChangeView, setIsShowingFilter]);
89
- const visibleFilters = filters.filter(filter => filter.isVisible);
90
- const hasVisibleFilters = !!visibleFilters.length;
91
- if (filters.length === 0) {
92
- return null;
93
- }
94
- const addFilterButtonProps = {
95
- label: (0, _i18n.__)('Add filter'),
96
- 'aria-expanded': false,
97
- isPressed: false
98
- };
99
- const toggleFiltersButtonProps = {
100
- label: (0, _i18n._x)('Filter', 'verb'),
101
- 'aria-expanded': isShowingFilter,
102
- isPressed: isShowingFilter,
103
- onClick: () => {
104
- if (!isShowingFilter) {
105
- setOpenedFilter(null);
106
- }
107
- setIsShowingFilter(!isShowingFilter);
108
- }
109
- };
110
- const buttonComponent = /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
111
- ref: buttonRef,
112
- className: "dataviews-filters__visibility-toggle",
113
- size: "compact",
114
- icon: _icons.funnel,
115
- ...(hasVisibleFilters ? toggleFiltersButtonProps : addFilterButtonProps)
116
- });
117
- return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
118
- className: "dataviews-filters__container-visibility-toggle",
119
- children: !hasVisibleFilters ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_addFilter.AddFilterMenu, {
120
- filters: filters,
121
- view: view,
122
- onChangeView: onChangeViewWithFilterVisibility,
123
- setOpenedFilter: setOpenedFilter,
124
- triggerProps: {
125
- render: buttonComponent
126
- }
127
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(FilterVisibilityToggle, {
128
- buttonRef: buttonRef,
129
- filtersCount: view.filters?.length,
130
- children: buttonComponent
131
- })
132
- });
133
- }
134
- function FilterVisibilityToggle({
135
- buttonRef,
136
- filtersCount,
137
- children
138
- }) {
139
- // Focus the `add filter` button when unmounts.
140
- (0, _element.useEffect)(() => () => {
141
- buttonRef.current?.focus();
142
- }, [buttonRef]);
143
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
144
- children: [children, !!filtersCount && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
145
- className: "dataviews-filters-toggle__count",
146
- children: filtersCount
147
- })]
148
- });
149
- }
150
- function Filters({
151
- className
152
- }) {
153
- const {
154
- fields,
155
- view,
156
- onChangeView,
157
- openedFilter,
158
- setOpenedFilter
159
- } = (0, _element.useContext)(_dataviewsContext.default);
160
- const addFilterRef = (0, _element.useRef)(null);
161
- const filters = useFilters(fields, view);
162
- const addFilter = /*#__PURE__*/(0, _jsxRuntime.jsx)(_addFilter.default, {
163
- filters: filters,
164
- view: view,
165
- onChangeView: onChangeView,
166
- ref: addFilterRef,
167
- setOpenedFilter: setOpenedFilter
168
- }, "add-filter");
169
- const visibleFilters = filters.filter(filter => filter.isVisible);
170
- if (visibleFilters.length === 0) {
171
- return null;
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 });
172
17
  }
173
- const filterComponents = [...visibleFilters.map(filter => {
174
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_filter.default, {
175
- filter: filter,
176
- view: view,
177
- fields: fields,
178
- onChangeView: onChangeView,
179
- addFilterRef: addFilterRef,
180
- openedFilter: openedFilter
181
- }, filter.field);
182
- }), addFilter];
183
- filterComponents.push(/*#__PURE__*/(0, _jsxRuntime.jsx)(_resetFilters.default, {
184
- filters: filters,
185
- view: view,
186
- onChangeView: onChangeView
187
- }, "reset-filters"));
188
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalHStack, {
189
- justify: "flex-start",
190
- style: {
191
- width: 'fit-content'
192
- },
193
- wrap: true,
194
- className: className,
195
- children: filterComponents
196
- });
197
- }
198
- var _default = exports.default = (0, _element.memo)(Filters);
199
- //# sourceMappingURL=index.js.map
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 dataviews_filters_exports = {};
30
+ __export(dataviews_filters_exports, {
31
+ Filters: () => import_filters.default,
32
+ FiltersToggle: () => import_toggle.default,
33
+ FiltersToggled: () => import_filters_toggled.default,
34
+ useFilters: () => import_use_filters.default
35
+ });
36
+ module.exports = __toCommonJS(dataviews_filters_exports);
37
+ var import_filters = __toESM(require("./filters"));
38
+ var import_toggle = __toESM(require("./toggle"));
39
+ var import_use_filters = __toESM(require("./use-filters"));
40
+ var import_filters_toggled = __toESM(require("./filters-toggled"));
41
+ // Annotate the CommonJS export names for ESM import in node:
42
+ 0 && (module.exports = {
43
+ Filters,
44
+ FiltersToggle,
45
+ FiltersToggled,
46
+ useFilters
47
+ });
48
+ //# sourceMappingURL=index.js.map
@@ -1 +1,7 @@
1
- {"version":3,"names":["_element","require","_components","_icons","_i18n","_filter","_interopRequireDefault","_addFilter","_interopRequireWildcard","_resetFilters","_dataviewsContext","_constants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useFilters","fields","view","useMemo","filters","forEach","field","_view$filters$some","_field$elements","filterBy","elements","length","Edit","operators","isPrimary","isLocked","some","f","id","push","name","label","singleSelection","op","SINGLE_SELECTION_OPERATORS","includes","isVisible","ALL_OPERATORS","operator","sort","b","localeCompare","FiltersToggle","onChangeView","setOpenedFilter","isShowingFilter","setIsShowingFilter","useContext","DataViewsContext","buttonRef","useRef","onChangeViewWithFilterVisibility","useCallback","_view","visibleFilters","filter","hasVisibleFilters","addFilterButtonProps","__","isPressed","toggleFiltersButtonProps","_x","onClick","buttonComponent","jsx","Button","ref","className","size","icon","funnel","children","AddFilterMenu","triggerProps","render","FilterVisibilityToggle","filtersCount","useEffect","current","focus","jsxs","Fragment","Filters","openedFilter","addFilterRef","addFilter","filterComponents","map","__experimentalHStack","justify","style","width","wrap","_default","exports","memo"],"sources":["@wordpress/dataviews/src/components/dataviews-filters/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tmemo,\n\tuseContext,\n\tuseRef,\n\tuseMemo,\n\tuseCallback,\n\tuseEffect,\n} from '@wordpress/element';\nimport { __experimentalHStack as HStack, Button } from '@wordpress/components';\nimport { funnel } from '@wordpress/icons';\nimport { __, _x } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport Filter from './filter';\nimport { default as AddFilter, AddFilterMenu } from './add-filter';\nimport ResetFilters from './reset-filters';\nimport DataViewsContext from '../dataviews-context';\nimport { ALL_OPERATORS, SINGLE_SELECTION_OPERATORS } from '../../constants';\nimport type { NormalizedFilter, NormalizedField, View } from '../../types';\n\nexport function useFilters( fields: NormalizedField< any >[], view: View ) {\n\treturn useMemo( () => {\n\t\tconst filters: NormalizedFilter[] = [];\n\t\tfields.forEach( ( field ) => {\n\t\t\tif (\n\t\t\t\tfield.filterBy === false ||\n\t\t\t\t( ! field.elements?.length && ! field.Edit )\n\t\t\t) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst operators = field.filterBy.operators;\n\t\t\tconst isPrimary = !! field.filterBy?.isPrimary;\n\t\t\tconst isLocked =\n\t\t\t\tview.filters?.some(\n\t\t\t\t\t( f ) => f.field === field.id && !! f.isLocked\n\t\t\t\t) ?? false;\n\t\t\tfilters.push( {\n\t\t\t\tfield: field.id,\n\t\t\t\tname: field.label,\n\t\t\t\telements: field.elements ?? [],\n\t\t\t\tsingleSelection: operators.some( ( op ) =>\n\t\t\t\t\tSINGLE_SELECTION_OPERATORS.includes( op )\n\t\t\t\t),\n\t\t\t\toperators,\n\t\t\t\tisVisible:\n\t\t\t\t\tisLocked ||\n\t\t\t\t\tisPrimary ||\n\t\t\t\t\t!! view.filters?.some(\n\t\t\t\t\t\t( f ) =>\n\t\t\t\t\t\t\tf.field === field.id &&\n\t\t\t\t\t\t\tALL_OPERATORS.includes( f.operator )\n\t\t\t\t\t),\n\t\t\t\tisPrimary,\n\t\t\t\tisLocked,\n\t\t\t} );\n\t\t} );\n\n\t\t// Sort filters by:\n\t\t// - locked filters go first\n\t\t// - primary filters go next\n\t\t// - then, sort by name\n\t\tfilters.sort( ( a, b ) => {\n\t\t\tif ( a.isLocked && ! b.isLocked ) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\tif ( ! a.isLocked && b.isLocked ) {\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t\tif ( a.isPrimary && ! b.isPrimary ) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\tif ( ! a.isPrimary && b.isPrimary ) {\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t\treturn a.name.localeCompare( b.name );\n\t\t} );\n\t\treturn filters;\n\t}, [ fields, view ] );\n}\n\nexport function FiltersToggle() {\n\tconst {\n\t\tfilters,\n\t\tview,\n\t\tonChangeView,\n\t\tsetOpenedFilter,\n\t\tisShowingFilter,\n\t\tsetIsShowingFilter,\n\t} = useContext( DataViewsContext );\n\n\tconst buttonRef = useRef< HTMLButtonElement >( null );\n\tconst onChangeViewWithFilterVisibility = useCallback(\n\t\t( _view: View ) => {\n\t\t\tonChangeView( _view );\n\t\t\tsetIsShowingFilter( true );\n\t\t},\n\t\t[ onChangeView, setIsShowingFilter ]\n\t);\n\tconst visibleFilters = filters.filter( ( filter ) => filter.isVisible );\n\n\tconst hasVisibleFilters = !! visibleFilters.length;\n\tif ( filters.length === 0 ) {\n\t\treturn null;\n\t}\n\n\tconst addFilterButtonProps = {\n\t\tlabel: __( 'Add filter' ),\n\t\t'aria-expanded': false,\n\t\tisPressed: false,\n\t};\n\tconst toggleFiltersButtonProps = {\n\t\tlabel: _x( 'Filter', 'verb' ),\n\t\t'aria-expanded': isShowingFilter,\n\t\tisPressed: isShowingFilter,\n\t\tonClick: () => {\n\t\t\tif ( ! isShowingFilter ) {\n\t\t\t\tsetOpenedFilter( null );\n\t\t\t}\n\t\t\tsetIsShowingFilter( ! isShowingFilter );\n\t\t},\n\t};\n\tconst buttonComponent = (\n\t\t<Button\n\t\t\tref={ buttonRef }\n\t\t\tclassName=\"dataviews-filters__visibility-toggle\"\n\t\t\tsize=\"compact\"\n\t\t\ticon={ funnel }\n\t\t\t{ ...( hasVisibleFilters\n\t\t\t\t? toggleFiltersButtonProps\n\t\t\t\t: addFilterButtonProps ) }\n\t\t/>\n\t);\n\treturn (\n\t\t<div className=\"dataviews-filters__container-visibility-toggle\">\n\t\t\t{ ! hasVisibleFilters ? (\n\t\t\t\t<AddFilterMenu\n\t\t\t\t\tfilters={ filters }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeViewWithFilterVisibility }\n\t\t\t\t\tsetOpenedFilter={ setOpenedFilter }\n\t\t\t\t\ttriggerProps={ { render: buttonComponent } }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<FilterVisibilityToggle\n\t\t\t\t\tbuttonRef={ buttonRef }\n\t\t\t\t\tfiltersCount={ view.filters?.length }\n\t\t\t\t>\n\t\t\t\t\t{ buttonComponent }\n\t\t\t\t</FilterVisibilityToggle>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction FilterVisibilityToggle( {\n\tbuttonRef,\n\tfiltersCount,\n\tchildren,\n}: {\n\tbuttonRef: React.RefObject< HTMLButtonElement >;\n\tfiltersCount?: number;\n\tchildren: React.ReactNode;\n} ) {\n\t// Focus the `add filter` button when unmounts.\n\tuseEffect(\n\t\t() => () => {\n\t\t\tbuttonRef.current?.focus();\n\t\t},\n\t\t[ buttonRef ]\n\t);\n\treturn (\n\t\t<>\n\t\t\t{ children }\n\t\t\t{ !! filtersCount && (\n\t\t\t\t<span className=\"dataviews-filters-toggle__count\">\n\t\t\t\t\t{ filtersCount }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction Filters( { className }: { className?: string } ) {\n\tconst { fields, view, onChangeView, openedFilter, setOpenedFilter } =\n\t\tuseContext( DataViewsContext );\n\tconst addFilterRef = useRef< HTMLButtonElement >( null );\n\tconst filters = useFilters( fields, view );\n\tconst addFilter = (\n\t\t<AddFilter\n\t\t\tkey=\"add-filter\"\n\t\t\tfilters={ filters }\n\t\t\tview={ view }\n\t\t\tonChangeView={ onChangeView }\n\t\t\tref={ addFilterRef }\n\t\t\tsetOpenedFilter={ setOpenedFilter }\n\t\t/>\n\t);\n\tconst visibleFilters = filters.filter( ( filter ) => filter.isVisible );\n\tif ( visibleFilters.length === 0 ) {\n\t\treturn null;\n\t}\n\tconst filterComponents = [\n\t\t...visibleFilters.map( ( filter ) => {\n\t\t\treturn (\n\t\t\t\t<Filter\n\t\t\t\t\tkey={ filter.field }\n\t\t\t\t\tfilter={ filter }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\taddFilterRef={ addFilterRef }\n\t\t\t\t\topenedFilter={ openedFilter }\n\t\t\t\t/>\n\t\t\t);\n\t\t} ),\n\t\taddFilter,\n\t];\n\n\tfilterComponents.push(\n\t\t<ResetFilters\n\t\t\tkey=\"reset-filters\"\n\t\t\tfilters={ filters }\n\t\t\tview={ view }\n\t\t\tonChangeView={ onChangeView }\n\t\t/>\n\t);\n\n\treturn (\n\t\t<HStack\n\t\t\tjustify=\"flex-start\"\n\t\t\tstyle={ { width: 'fit-content' } }\n\t\t\twrap\n\t\t\tclassName={ className }\n\t\t>\n\t\t\t{ filterComponents }\n\t\t</HStack>\n\t);\n}\n\nexport default memo( Filters );\n"],"mappings":"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","ignoreList":[]}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/dataviews-filters/index.tsx"],
4
+ "sourcesContent": ["export { default as Filters } from './filters';\nexport { default as FiltersToggle } from './toggle';\nexport { default as useFilters } from './use-filters';\nexport { default as FiltersToggled } from './filters-toggled';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAmC;AACnC,oBAAyC;AACzC,yBAAsC;AACtC,6BAA0C;",
6
+ "names": []
7
+ }