@wordpress/dataviews 10.2.0 → 10.3.1-next.2f1c7c01b.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 (477) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/build/components/dataform/index.js +6 -2
  3. package/build/components/dataform/index.js.map +3 -3
  4. package/build/components/dataform-context/index.js +4 -2
  5. package/build/components/dataform-context/index.js.map +1 -1
  6. package/build/components/dataviews/index.js +8 -6
  7. package/build/components/dataviews/index.js.map +1 -1
  8. package/build/components/dataviews-bulk-actions/index.js +4 -2
  9. package/build/components/dataviews-bulk-actions/index.js.map +1 -1
  10. package/build/components/dataviews-context/index.js +3 -1
  11. package/build/components/dataviews-context/index.js.map +1 -1
  12. package/build/components/dataviews-filters/add-filter.js +4 -2
  13. package/build/components/dataviews-filters/add-filter.js.map +1 -1
  14. package/build/components/dataviews-filters/filter.js +20 -5
  15. package/build/components/dataviews-filters/filter.js.map +3 -3
  16. package/build/components/dataviews-filters/filters-toggled.js +3 -1
  17. package/build/components/dataviews-filters/filters-toggled.js.map +1 -1
  18. package/build/components/dataviews-filters/filters.js +3 -1
  19. package/build/components/dataviews-filters/filters.js.map +1 -1
  20. package/build/components/dataviews-filters/index.js +2 -0
  21. package/build/components/dataviews-filters/index.js.map +1 -1
  22. package/build/components/dataviews-filters/input-widget.js +3 -1
  23. package/build/components/dataviews-filters/input-widget.js.map +1 -1
  24. package/build/components/dataviews-filters/reset-filters.js +3 -1
  25. package/build/components/dataviews-filters/reset-filters.js.map +1 -1
  26. package/build/components/dataviews-filters/search-widget.js +8 -6
  27. package/build/components/dataviews-filters/search-widget.js.map +2 -2
  28. package/build/components/dataviews-filters/toggle.js +3 -1
  29. package/build/components/dataviews-filters/toggle.js.map +1 -1
  30. package/build/components/dataviews-filters/use-filters.js +2 -0
  31. package/build/components/dataviews-filters/use-filters.js.map +1 -1
  32. package/build/components/dataviews-filters/utils.js +4 -2
  33. package/build/components/dataviews-filters/utils.js.map +1 -1
  34. package/build/components/dataviews-footer/index.js +4 -2
  35. package/build/components/dataviews-footer/index.js.map +1 -1
  36. package/build/components/dataviews-item-actions/index.js +23 -4
  37. package/build/components/dataviews-item-actions/index.js.map +2 -2
  38. package/build/components/dataviews-layout/index.js +3 -1
  39. package/build/components/dataviews-layout/index.js.map +1 -1
  40. package/build/components/dataviews-pagination/index.js +3 -1
  41. package/build/components/dataviews-pagination/index.js.map +1 -1
  42. package/build/components/dataviews-picker/footer.js +4 -2
  43. package/build/components/dataviews-picker/footer.js.map +1 -1
  44. package/build/components/dataviews-picker/index.js +8 -6
  45. package/build/components/dataviews-picker/index.js.map +1 -1
  46. package/build/components/dataviews-search/index.js +4 -2
  47. package/build/components/dataviews-search/index.js.map +1 -1
  48. package/build/components/dataviews-selection-checkbox/index.js +3 -1
  49. package/build/components/dataviews-selection-checkbox/index.js.map +1 -1
  50. package/build/components/dataviews-view-config/index.js +6 -4
  51. package/build/components/dataviews-view-config/index.js.map +1 -1
  52. package/build/components/dataviews-view-config/infinite-scroll-toggle.js +3 -1
  53. package/build/components/dataviews-view-config/infinite-scroll-toggle.js.map +1 -1
  54. package/build/constants.js +36 -34
  55. package/build/constants.js.map +1 -1
  56. package/build/dataform-controls/array.js +4 -2
  57. package/build/dataform-controls/array.js.map +1 -1
  58. package/build/dataform-controls/checkbox.js +4 -2
  59. package/build/dataform-controls/checkbox.js.map +1 -1
  60. package/build/dataform-controls/color.js +5 -3
  61. package/build/dataform-controls/color.js.map +1 -1
  62. package/build/dataform-controls/date.js +8 -6
  63. package/build/dataform-controls/date.js.map +1 -1
  64. package/build/dataform-controls/datetime.js +11 -15
  65. package/build/dataform-controls/datetime.js.map +3 -3
  66. package/build/dataform-controls/email.js +3 -1
  67. package/build/dataform-controls/email.js.map +1 -1
  68. package/build/dataform-controls/index.js +4 -2
  69. package/build/dataform-controls/index.js.map +1 -1
  70. package/build/dataform-controls/integer.js +3 -1
  71. package/build/dataform-controls/integer.js.map +1 -1
  72. package/build/dataform-controls/number.js +3 -1
  73. package/build/dataform-controls/number.js.map +1 -1
  74. package/build/dataform-controls/password.js +3 -1
  75. package/build/dataform-controls/password.js.map +1 -1
  76. package/build/dataform-controls/radio.js +4 -2
  77. package/build/dataform-controls/radio.js.map +1 -1
  78. package/build/dataform-controls/select.js +4 -2
  79. package/build/dataform-controls/select.js.map +1 -1
  80. package/build/dataform-controls/telephone.js +3 -1
  81. package/build/dataform-controls/telephone.js.map +1 -1
  82. package/build/dataform-controls/text.js +3 -1
  83. package/build/dataform-controls/text.js.map +1 -1
  84. package/build/dataform-controls/textarea.js +4 -2
  85. package/build/dataform-controls/textarea.js.map +1 -1
  86. package/build/dataform-controls/toggle-group.js +4 -2
  87. package/build/dataform-controls/toggle-group.js.map +1 -1
  88. package/build/dataform-controls/toggle.js +4 -2
  89. package/build/dataform-controls/toggle.js.map +1 -1
  90. package/build/dataform-controls/url.js +3 -1
  91. package/build/dataform-controls/url.js.map +1 -1
  92. package/build/dataform-controls/utils/get-custom-validity.js +2 -0
  93. package/build/dataform-controls/utils/get-custom-validity.js.map +1 -1
  94. package/build/dataform-controls/utils/relative-date-control.js +4 -2
  95. package/build/dataform-controls/utils/relative-date-control.js.map +1 -1
  96. package/build/dataform-controls/utils/validated-input.js +4 -2
  97. package/build/dataform-controls/utils/validated-input.js.map +1 -1
  98. package/build/dataform-controls/utils/validated-number.js +4 -2
  99. package/build/dataform-controls/utils/validated-number.js.map +1 -1
  100. package/build/dataform-layouts/card/index.js +65 -34
  101. package/build/dataform-layouts/card/index.js.map +3 -3
  102. package/build/dataform-layouts/data-form-layout.js +8 -14
  103. package/build/dataform-layouts/data-form-layout.js.map +3 -3
  104. package/build/dataform-layouts/get-summary-fields.js +3 -1
  105. package/build/dataform-layouts/get-summary-fields.js.map +1 -1
  106. package/build/dataform-layouts/index.js +4 -2
  107. package/build/dataform-layouts/index.js.map +2 -2
  108. package/build/dataform-layouts/{normalize-form-fields.js → normalize-form.js} +39 -22
  109. package/build/dataform-layouts/normalize-form.js.map +7 -0
  110. package/build/dataform-layouts/panel/dropdown.js +9 -8
  111. package/build/dataform-layouts/panel/dropdown.js.map +2 -2
  112. package/build/dataform-layouts/panel/index.js +10 -14
  113. package/build/dataform-layouts/panel/index.js.map +2 -2
  114. package/build/dataform-layouts/panel/modal.js +9 -8
  115. package/build/dataform-layouts/panel/modal.js.map +2 -2
  116. package/build/dataform-layouts/panel/summary-button.js +3 -1
  117. package/build/dataform-layouts/panel/summary-button.js.map +1 -1
  118. package/build/dataform-layouts/regular/index.js +8 -10
  119. package/build/dataform-layouts/regular/index.js.map +2 -2
  120. package/build/dataform-layouts/row/index.js +10 -33
  121. package/build/dataform-layouts/row/index.js.map +3 -3
  122. package/build/dataviews-layouts/grid/index.js +4 -2
  123. package/build/dataviews-layouts/grid/index.js.map +1 -1
  124. package/build/dataviews-layouts/grid/preview-size-picker.js +4 -2
  125. package/build/dataviews-layouts/grid/preview-size-picker.js.map +1 -1
  126. package/build/dataviews-layouts/index.js +3 -1
  127. package/build/dataviews-layouts/index.js.map +1 -1
  128. package/build/dataviews-layouts/list/index.js +6 -6
  129. package/build/dataviews-layouts/list/index.js.map +2 -2
  130. package/build/dataviews-layouts/picker-grid/index.js +4 -2
  131. package/build/dataviews-layouts/picker-grid/index.js.map +1 -1
  132. package/build/dataviews-layouts/table/column-header-menu.js +6 -4
  133. package/build/dataviews-layouts/table/column-header-menu.js.map +1 -1
  134. package/build/dataviews-layouts/table/column-primary.js +3 -1
  135. package/build/dataviews-layouts/table/column-primary.js.map +1 -1
  136. package/build/dataviews-layouts/table/density-picker.js +3 -1
  137. package/build/dataviews-layouts/table/density-picker.js.map +1 -1
  138. package/build/dataviews-layouts/table/index.js +3 -1
  139. package/build/dataviews-layouts/table/index.js.map +1 -1
  140. package/build/dataviews-layouts/table/use-is-horizontal-scroll-end.js +3 -1
  141. package/build/dataviews-layouts/table/use-is-horizontal-scroll-end.js.map +1 -1
  142. package/build/dataviews-layouts/utils/get-data-by-group.js +2 -0
  143. package/build/dataviews-layouts/utils/get-data-by-group.js.map +1 -1
  144. package/build/dataviews-layouts/utils/grid-items.js +4 -2
  145. package/build/dataviews-layouts/utils/grid-items.js.map +1 -1
  146. package/build/dataviews-layouts/utils/item-click-wrapper.js +3 -1
  147. package/build/dataviews-layouts/utils/item-click-wrapper.js.map +1 -1
  148. package/build/dataviews-layouts/utils/preview-size-picker.js +4 -2
  149. package/build/dataviews-layouts/utils/preview-size-picker.js.map +1 -1
  150. package/build/field-types/array.js +3 -1
  151. package/build/field-types/array.js.map +1 -1
  152. package/build/field-types/boolean.js +3 -1
  153. package/build/field-types/boolean.js.map +1 -1
  154. package/build/field-types/color.js +3 -1
  155. package/build/field-types/color.js.map +1 -1
  156. package/build/field-types/date.js +4 -2
  157. package/build/field-types/date.js.map +1 -1
  158. package/build/field-types/datetime.js +17 -2
  159. package/build/field-types/datetime.js.map +3 -3
  160. package/build/field-types/email.js +4 -2
  161. package/build/field-types/email.js.map +1 -1
  162. package/build/field-types/index.js +3 -1
  163. package/build/field-types/index.js.map +1 -1
  164. package/build/field-types/integer.js +3 -1
  165. package/build/field-types/integer.js.map +1 -1
  166. package/build/field-types/media.js +2 -0
  167. package/build/field-types/media.js.map +1 -1
  168. package/build/field-types/number.js +3 -1
  169. package/build/field-types/number.js.map +1 -1
  170. package/build/field-types/password.js +3 -1
  171. package/build/field-types/password.js.map +1 -1
  172. package/build/field-types/telephone.js +3 -1
  173. package/build/field-types/telephone.js.map +1 -1
  174. package/build/field-types/text.js +3 -1
  175. package/build/field-types/text.js.map +1 -1
  176. package/build/field-types/url.js +3 -1
  177. package/build/field-types/url.js.map +1 -1
  178. package/build/{dataform-layouts/is-combined-field.js → field-types/utils/parse-date-time.js} +15 -11
  179. package/build/field-types/utils/parse-date-time.js.map +7 -0
  180. package/build/field-types/utils/render-from-elements.js +2 -0
  181. package/build/field-types/utils/render-from-elements.js.map +1 -1
  182. package/build/hooks/index.js +2 -0
  183. package/build/hooks/index.js.map +1 -1
  184. package/build/hooks/use-elements.js +3 -1
  185. package/build/hooks/use-elements.js.map +1 -1
  186. package/build/hooks/use-form-validity.js +425 -321
  187. package/build/hooks/use-form-validity.js.map +3 -3
  188. package/build/index.js +2 -0
  189. package/build/index.js.map +1 -1
  190. package/build/lock-unlock.js +3 -1
  191. package/build/lock-unlock.js.map +1 -1
  192. package/build/types/dataform.js +2 -0
  193. package/build/types/dataform.js.map +2 -2
  194. package/build/types/dataviews.js +2 -0
  195. package/build/types/dataviews.js.map +1 -1
  196. package/build/types/field-api.js +2 -0
  197. package/build/types/field-api.js.map +1 -1
  198. package/build/types/index.js +2 -0
  199. package/build/types/index.js.map +1 -1
  200. package/build/types/private.js +2 -0
  201. package/build/types/private.js.map +1 -1
  202. package/build/utils/filter-sort-and-paginate.js +3 -1
  203. package/build/utils/filter-sort-and-paginate.js.map +1 -1
  204. package/build/utils/has-elements.js +2 -0
  205. package/build/utils/has-elements.js.map +1 -1
  206. package/build/utils/normalize-fields.js +4 -2
  207. package/build/utils/normalize-fields.js.map +1 -1
  208. package/build-module/components/dataform/index.js +5 -2
  209. package/build-module/components/dataform/index.js.map +2 -2
  210. package/build-module/components/dataform-context/index.js +3 -2
  211. package/build-module/components/dataform-context/index.js.map +1 -1
  212. package/build-module/components/dataviews/index.js +7 -6
  213. package/build-module/components/dataviews/index.js.map +1 -1
  214. package/build-module/components/dataviews-bulk-actions/index.js +3 -2
  215. package/build-module/components/dataviews-bulk-actions/index.js.map +1 -1
  216. package/build-module/components/dataviews-context/index.js +2 -1
  217. package/build-module/components/dataviews-context/index.js.map +1 -1
  218. package/build-module/components/dataviews-filters/add-filter.js +3 -2
  219. package/build-module/components/dataviews-filters/add-filter.js.map +1 -1
  220. package/build-module/components/dataviews-filters/filter.js +19 -5
  221. package/build-module/components/dataviews-filters/filter.js.map +2 -2
  222. package/build-module/components/dataviews-filters/filters-toggled.js +2 -1
  223. package/build-module/components/dataviews-filters/filters-toggled.js.map +1 -1
  224. package/build-module/components/dataviews-filters/filters.js +2 -1
  225. package/build-module/components/dataviews-filters/filters.js.map +1 -1
  226. package/build-module/components/dataviews-filters/index.js +1 -0
  227. package/build-module/components/dataviews-filters/index.js.map +1 -1
  228. package/build-module/components/dataviews-filters/input-widget.js +2 -1
  229. package/build-module/components/dataviews-filters/input-widget.js.map +1 -1
  230. package/build-module/components/dataviews-filters/reset-filters.js +2 -1
  231. package/build-module/components/dataviews-filters/reset-filters.js.map +1 -1
  232. package/build-module/components/dataviews-filters/search-widget.js +7 -6
  233. package/build-module/components/dataviews-filters/search-widget.js.map +2 -2
  234. package/build-module/components/dataviews-filters/toggle.js +2 -1
  235. package/build-module/components/dataviews-filters/toggle.js.map +1 -1
  236. package/build-module/components/dataviews-filters/use-filters.js +1 -0
  237. package/build-module/components/dataviews-filters/use-filters.js.map +1 -1
  238. package/build-module/components/dataviews-filters/utils.js +3 -2
  239. package/build-module/components/dataviews-filters/utils.js.map +1 -1
  240. package/build-module/components/dataviews-footer/index.js +3 -2
  241. package/build-module/components/dataviews-footer/index.js.map +1 -1
  242. package/build-module/components/dataviews-item-actions/index.js +22 -4
  243. package/build-module/components/dataviews-item-actions/index.js.map +2 -2
  244. package/build-module/components/dataviews-layout/index.js +2 -1
  245. package/build-module/components/dataviews-layout/index.js.map +1 -1
  246. package/build-module/components/dataviews-pagination/index.js +2 -1
  247. package/build-module/components/dataviews-pagination/index.js.map +1 -1
  248. package/build-module/components/dataviews-picker/footer.js +3 -2
  249. package/build-module/components/dataviews-picker/footer.js.map +1 -1
  250. package/build-module/components/dataviews-picker/index.js +7 -6
  251. package/build-module/components/dataviews-picker/index.js.map +1 -1
  252. package/build-module/components/dataviews-search/index.js +3 -2
  253. package/build-module/components/dataviews-search/index.js.map +1 -1
  254. package/build-module/components/dataviews-selection-checkbox/index.js +2 -1
  255. package/build-module/components/dataviews-selection-checkbox/index.js.map +1 -1
  256. package/build-module/components/dataviews-view-config/index.js +5 -4
  257. package/build-module/components/dataviews-view-config/index.js.map +1 -1
  258. package/build-module/components/dataviews-view-config/infinite-scroll-toggle.js +2 -1
  259. package/build-module/components/dataviews-view-config/infinite-scroll-toggle.js.map +1 -1
  260. package/build-module/constants.js +35 -34
  261. package/build-module/constants.js.map +1 -1
  262. package/build-module/dataform-controls/array.js +3 -2
  263. package/build-module/dataform-controls/array.js.map +1 -1
  264. package/build-module/dataform-controls/checkbox.js +3 -2
  265. package/build-module/dataform-controls/checkbox.js.map +1 -1
  266. package/build-module/dataform-controls/color.js +4 -3
  267. package/build-module/dataform-controls/color.js.map +1 -1
  268. package/build-module/dataform-controls/date.js +7 -6
  269. package/build-module/dataform-controls/date.js.map +1 -1
  270. package/build-module/dataform-controls/datetime.js +7 -12
  271. package/build-module/dataform-controls/datetime.js.map +2 -2
  272. package/build-module/dataform-controls/email.js +2 -1
  273. package/build-module/dataform-controls/email.js.map +1 -1
  274. package/build-module/dataform-controls/index.js +3 -2
  275. package/build-module/dataform-controls/index.js.map +1 -1
  276. package/build-module/dataform-controls/integer.js +2 -1
  277. package/build-module/dataform-controls/integer.js.map +1 -1
  278. package/build-module/dataform-controls/number.js +2 -1
  279. package/build-module/dataform-controls/number.js.map +1 -1
  280. package/build-module/dataform-controls/password.js +2 -1
  281. package/build-module/dataform-controls/password.js.map +1 -1
  282. package/build-module/dataform-controls/radio.js +3 -2
  283. package/build-module/dataform-controls/radio.js.map +1 -1
  284. package/build-module/dataform-controls/select.js +3 -2
  285. package/build-module/dataform-controls/select.js.map +1 -1
  286. package/build-module/dataform-controls/telephone.js +2 -1
  287. package/build-module/dataform-controls/telephone.js.map +1 -1
  288. package/build-module/dataform-controls/text.js +2 -1
  289. package/build-module/dataform-controls/text.js.map +1 -1
  290. package/build-module/dataform-controls/textarea.js +3 -2
  291. package/build-module/dataform-controls/textarea.js.map +1 -1
  292. package/build-module/dataform-controls/toggle-group.js +3 -2
  293. package/build-module/dataform-controls/toggle-group.js.map +1 -1
  294. package/build-module/dataform-controls/toggle.js +3 -2
  295. package/build-module/dataform-controls/toggle.js.map +1 -1
  296. package/build-module/dataform-controls/url.js +2 -1
  297. package/build-module/dataform-controls/url.js.map +1 -1
  298. package/build-module/dataform-controls/utils/get-custom-validity.js +1 -0
  299. package/build-module/dataform-controls/utils/get-custom-validity.js.map +1 -1
  300. package/build-module/dataform-controls/utils/relative-date-control.js +3 -2
  301. package/build-module/dataform-controls/utils/relative-date-control.js.map +1 -1
  302. package/build-module/dataform-controls/utils/validated-input.js +3 -2
  303. package/build-module/dataform-controls/utils/validated-input.js.map +1 -1
  304. package/build-module/dataform-controls/utils/validated-number.js +3 -2
  305. package/build-module/dataform-controls/utils/validated-number.js.map +1 -1
  306. package/build-module/dataform-layouts/card/index.js +63 -33
  307. package/build-module/dataform-layouts/card/index.js.map +3 -3
  308. package/build-module/dataform-layouts/data-form-layout.js +8 -15
  309. package/build-module/dataform-layouts/data-form-layout.js.map +2 -2
  310. package/build-module/dataform-layouts/get-summary-fields.js +2 -1
  311. package/build-module/dataform-layouts/get-summary-fields.js.map +1 -1
  312. package/build-module/dataform-layouts/index.js +3 -2
  313. package/build-module/dataform-layouts/index.js.map +2 -2
  314. package/build-module/dataform-layouts/{normalize-form-fields.js → normalize-form.js} +34 -17
  315. package/build-module/dataform-layouts/normalize-form.js.map +7 -0
  316. package/build-module/dataform-layouts/panel/dropdown.js +7 -7
  317. package/build-module/dataform-layouts/panel/dropdown.js.map +2 -2
  318. package/build-module/dataform-layouts/panel/index.js +9 -14
  319. package/build-module/dataform-layouts/panel/index.js.map +2 -2
  320. package/build-module/dataform-layouts/panel/modal.js +7 -7
  321. package/build-module/dataform-layouts/panel/modal.js.map +2 -2
  322. package/build-module/dataform-layouts/panel/summary-button.js +2 -1
  323. package/build-module/dataform-layouts/panel/summary-button.js.map +1 -1
  324. package/build-module/dataform-layouts/regular/index.js +6 -9
  325. package/build-module/dataform-layouts/regular/index.js.map +2 -2
  326. package/build-module/dataform-layouts/row/index.js +9 -23
  327. package/build-module/dataform-layouts/row/index.js.map +2 -2
  328. package/build-module/dataviews-layouts/grid/index.js +3 -2
  329. package/build-module/dataviews-layouts/grid/index.js.map +1 -1
  330. package/build-module/dataviews-layouts/grid/preview-size-picker.js +3 -2
  331. package/build-module/dataviews-layouts/grid/preview-size-picker.js.map +1 -1
  332. package/build-module/dataviews-layouts/index.js +2 -1
  333. package/build-module/dataviews-layouts/index.js.map +1 -1
  334. package/build-module/dataviews-layouts/list/index.js +5 -6
  335. package/build-module/dataviews-layouts/list/index.js.map +2 -2
  336. package/build-module/dataviews-layouts/picker-grid/index.js +3 -2
  337. package/build-module/dataviews-layouts/picker-grid/index.js.map +1 -1
  338. package/build-module/dataviews-layouts/table/column-header-menu.js +5 -4
  339. package/build-module/dataviews-layouts/table/column-header-menu.js.map +1 -1
  340. package/build-module/dataviews-layouts/table/column-primary.js +2 -1
  341. package/build-module/dataviews-layouts/table/column-primary.js.map +1 -1
  342. package/build-module/dataviews-layouts/table/density-picker.js +2 -1
  343. package/build-module/dataviews-layouts/table/density-picker.js.map +1 -1
  344. package/build-module/dataviews-layouts/table/index.js +2 -1
  345. package/build-module/dataviews-layouts/table/index.js.map +1 -1
  346. package/build-module/dataviews-layouts/table/use-is-horizontal-scroll-end.js +2 -1
  347. package/build-module/dataviews-layouts/table/use-is-horizontal-scroll-end.js.map +1 -1
  348. package/build-module/dataviews-layouts/utils/get-data-by-group.js +1 -0
  349. package/build-module/dataviews-layouts/utils/get-data-by-group.js.map +1 -1
  350. package/build-module/dataviews-layouts/utils/grid-items.js +3 -2
  351. package/build-module/dataviews-layouts/utils/grid-items.js.map +1 -1
  352. package/build-module/dataviews-layouts/utils/item-click-wrapper.js +2 -1
  353. package/build-module/dataviews-layouts/utils/item-click-wrapper.js.map +1 -1
  354. package/build-module/dataviews-layouts/utils/preview-size-picker.js +3 -2
  355. package/build-module/dataviews-layouts/utils/preview-size-picker.js.map +1 -1
  356. package/build-module/field-types/array.js +2 -1
  357. package/build-module/field-types/array.js.map +1 -1
  358. package/build-module/field-types/boolean.js +2 -1
  359. package/build-module/field-types/boolean.js.map +1 -1
  360. package/build-module/field-types/color.js +2 -1
  361. package/build-module/field-types/color.js.map +1 -1
  362. package/build-module/field-types/date.js +3 -2
  363. package/build-module/field-types/date.js.map +1 -1
  364. package/build-module/field-types/datetime.js +16 -2
  365. package/build-module/field-types/datetime.js.map +2 -2
  366. package/build-module/field-types/email.js +3 -2
  367. package/build-module/field-types/email.js.map +1 -1
  368. package/build-module/field-types/index.js +2 -1
  369. package/build-module/field-types/index.js.map +1 -1
  370. package/build-module/field-types/integer.js +2 -1
  371. package/build-module/field-types/integer.js.map +1 -1
  372. package/build-module/field-types/media.js +1 -0
  373. package/build-module/field-types/media.js.map +1 -1
  374. package/build-module/field-types/number.js +2 -1
  375. package/build-module/field-types/number.js.map +1 -1
  376. package/build-module/field-types/password.js +2 -1
  377. package/build-module/field-types/password.js.map +1 -1
  378. package/build-module/field-types/telephone.js +2 -1
  379. package/build-module/field-types/telephone.js.map +1 -1
  380. package/build-module/field-types/text.js +2 -1
  381. package/build-module/field-types/text.js.map +1 -1
  382. package/build-module/field-types/url.js +2 -1
  383. package/build-module/field-types/url.js.map +1 -1
  384. package/build-module/field-types/utils/parse-date-time.js +14 -0
  385. package/build-module/field-types/utils/parse-date-time.js.map +7 -0
  386. package/build-module/field-types/utils/render-from-elements.js +1 -0
  387. package/build-module/field-types/utils/render-from-elements.js.map +1 -1
  388. package/build-module/hooks/index.js +1 -0
  389. package/build-module/hooks/index.js.map +1 -1
  390. package/build-module/hooks/use-elements.js +2 -1
  391. package/build-module/hooks/use-elements.js.map +1 -1
  392. package/build-module/hooks/use-form-validity.js +424 -321
  393. package/build-module/hooks/use-form-validity.js.map +3 -3
  394. package/build-module/index.js +1 -0
  395. package/build-module/index.js.map +1 -1
  396. package/build-module/lock-unlock.js +2 -1
  397. package/build-module/lock-unlock.js.map +1 -1
  398. package/build-module/utils/filter-sort-and-paginate.js +2 -1
  399. package/build-module/utils/filter-sort-and-paginate.js.map +1 -1
  400. package/build-module/utils/has-elements.js +1 -0
  401. package/build-module/utils/has-elements.js.map +1 -1
  402. package/build-module/utils/normalize-fields.js +3 -2
  403. package/build-module/utils/normalize-fields.js.map +1 -1
  404. package/build-types/components/dataform/index.d.ts.map +1 -1
  405. package/build-types/components/dataviews-filters/filter.d.ts.map +1 -1
  406. package/build-types/components/dataviews-item-actions/index.d.ts.map +1 -1
  407. package/build-types/dataform-controls/datetime.d.ts.map +1 -1
  408. package/build-types/dataform-layouts/card/index.d.ts +1 -1
  409. package/build-types/dataform-layouts/card/index.d.ts.map +1 -1
  410. package/build-types/dataform-layouts/data-form-layout.d.ts +4 -4
  411. package/build-types/dataform-layouts/data-form-layout.d.ts.map +1 -1
  412. package/build-types/dataform-layouts/index.d.ts +2 -2
  413. package/build-types/dataform-layouts/index.d.ts.map +1 -1
  414. package/build-types/dataform-layouts/normalize-form.d.ts +8 -0
  415. package/build-types/dataform-layouts/normalize-form.d.ts.map +1 -0
  416. package/build-types/dataform-layouts/panel/dropdown.d.ts +2 -2
  417. package/build-types/dataform-layouts/panel/dropdown.d.ts.map +1 -1
  418. package/build-types/dataform-layouts/panel/index.d.ts.map +1 -1
  419. package/build-types/dataform-layouts/panel/modal.d.ts +2 -2
  420. package/build-types/dataform-layouts/panel/modal.d.ts.map +1 -1
  421. package/build-types/dataform-layouts/regular/index.d.ts.map +1 -1
  422. package/build-types/dataform-layouts/row/index.d.ts.map +1 -1
  423. package/build-types/dataviews-layouts/list/index.d.ts.map +1 -1
  424. package/build-types/field-types/datetime.d.ts +1 -1
  425. package/build-types/field-types/datetime.d.ts.map +1 -1
  426. package/build-types/field-types/utils/parse-date-time.d.ts +2 -0
  427. package/build-types/field-types/utils/parse-date-time.d.ts.map +1 -0
  428. package/build-types/hooks/use-form-validity.d.ts.map +1 -1
  429. package/build-types/stories/dataform.story.d.ts +1 -10
  430. package/build-types/stories/dataform.story.d.ts.map +1 -1
  431. package/build-types/stories/dataviews-picker.story.d.ts +31 -0
  432. package/build-types/stories/dataviews-picker.story.d.ts.map +1 -1
  433. package/build-types/stories/dataviews.fixtures.d.ts.map +1 -1
  434. package/build-types/test/normalize-form.d.ts +2 -0
  435. package/build-types/test/normalize-form.d.ts.map +1 -0
  436. package/build-types/types/dataform.d.ts +12 -6
  437. package/build-types/types/dataform.d.ts.map +1 -1
  438. package/build-wp/index.js +738 -532
  439. package/package.json +15 -15
  440. package/src/components/dataform/index.tsx +3 -1
  441. package/src/components/dataviews-filters/filter.tsx +16 -1
  442. package/src/components/dataviews-item-actions/index.tsx +37 -14
  443. package/src/dataform-controls/datetime.tsx +3 -10
  444. package/src/dataform-layouts/card/index.tsx +45 -21
  445. package/src/dataform-layouts/data-form-layout.tsx +12 -23
  446. package/src/dataform-layouts/index.tsx +5 -3
  447. package/src/dataform-layouts/{normalize-form-fields.ts → normalize-form.ts} +39 -23
  448. package/src/dataform-layouts/panel/dropdown.tsx +10 -13
  449. package/src/dataform-layouts/panel/index.tsx +9 -24
  450. package/src/dataform-layouts/panel/modal.tsx +15 -15
  451. package/src/dataform-layouts/regular/index.tsx +7 -12
  452. package/src/dataform-layouts/row/index.tsx +13 -26
  453. package/src/dataviews-layouts/list/index.tsx +2 -5
  454. package/src/field-types/datetime.tsx +16 -5
  455. package/src/field-types/utils/parse-date-time.ts +17 -0
  456. package/src/hooks/use-form-validity.ts +572 -422
  457. package/src/stories/dataform.story.tsx +502 -454
  458. package/src/stories/dataviews-picker.story.tsx +155 -32
  459. package/src/stories/dataviews.fixtures.tsx +4 -1
  460. package/src/stories/field-types.story.tsx +7 -7
  461. package/src/test/normalize-form.ts +568 -0
  462. package/src/test/use-form-validity.ts +318 -33
  463. package/src/types/dataform.ts +12 -8
  464. package/tsconfig.tsbuildinfo +1 -1
  465. package/build/dataform-layouts/is-combined-field.js.map +0 -7
  466. package/build/dataform-layouts/normalize-form-fields.js.map +0 -7
  467. package/build-module/dataform-layouts/is-combined-field.js +0 -7
  468. package/build-module/dataform-layouts/is-combined-field.js.map +0 -7
  469. package/build-module/dataform-layouts/normalize-form-fields.js.map +0 -7
  470. package/build-types/dataform-layouts/is-combined-field.d.ts +0 -6
  471. package/build-types/dataform-layouts/is-combined-field.d.ts.map +0 -1
  472. package/build-types/dataform-layouts/normalize-form-fields.d.ts +0 -19
  473. package/build-types/dataform-layouts/normalize-form-fields.d.ts.map +0 -1
  474. package/build-types/test/normalize-form-fields.d.ts +0 -2
  475. package/build-types/test/normalize-form-fields.d.ts.map +0 -1
  476. package/src/dataform-layouts/is-combined-field.ts +0 -10
  477. package/src/test/normalize-form-fields.ts +0 -324
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/dataviews-layouts/table/index.tsx"],
4
4
  "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\nimport type { ComponentProps, ReactElement } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Spinner } from '@wordpress/components';\nimport {\n\tuseContext,\n\tuseEffect,\n\tuseId,\n\tuseRef,\n\tuseState,\n} from '@wordpress/element';\nimport { isAppleOS } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport DataViewsContext from '../../components/dataviews-context';\nimport DataViewsSelectionCheckbox from '../../components/dataviews-selection-checkbox';\nimport ItemActions from '../../components/dataviews-item-actions';\nimport { sortValues } from '../../constants';\nimport {\n\tuseSomeItemHasAPossibleBulkAction,\n\tuseHasAPossibleBulkAction,\n\tBulkSelectionCheckbox,\n} from '../../components/dataviews-bulk-actions';\nimport type {\n\tAction,\n\tNormalizedField,\n\tViewTable as ViewTableType,\n\tViewTableProps,\n} from '../../types';\nimport type { SetSelection } from '../../types/private';\nimport ColumnHeaderMenu from './column-header-menu';\nimport ColumnPrimary from './column-primary';\nimport { useIsHorizontalScrollEnd } from './use-is-horizontal-scroll-end';\nimport getDataByGroup from '../utils/get-data-by-group';\n\ninterface TableColumnFieldProps< Item > {\n\tfields: NormalizedField< Item >[];\n\tcolumn: string;\n\titem: Item;\n\talign?: 'start' | 'center' | 'end';\n}\n\ninterface TableRowProps< Item > {\n\thasBulkActions: boolean;\n\titem: Item;\n\tlevel?: number;\n\tactions: Action< Item >[];\n\tfields: NormalizedField< Item >[];\n\tid: string;\n\tview: ViewTableType;\n\ttitleField?: NormalizedField< Item >;\n\tmediaField?: NormalizedField< Item >;\n\tdescriptionField?: NormalizedField< Item >;\n\tselection: string[];\n\tgetItemId: ( item: Item ) => string;\n\tonChangeSelection: SetSelection;\n\tisItemClickable: ( item: Item ) => boolean;\n\tonClickItem?: ( item: Item ) => void;\n\trenderItemLink?: (\n\t\tprops: {\n\t\t\titem: Item;\n\t\t} & ComponentProps< 'a' >\n\t) => ReactElement;\n\tisActionsColumnSticky?: boolean;\n\tposinset?: number;\n}\n\nfunction TableColumnField< Item >( {\n\titem,\n\tfields,\n\tcolumn,\n\talign,\n}: TableColumnFieldProps< Item > ) {\n\tconst field = fields.find( ( f ) => f.id === column );\n\n\tif ( ! field ) {\n\t\treturn null;\n\t}\n\n\tconst className = clsx( 'dataviews-view-table__cell-content-wrapper', {\n\t\t'dataviews-view-table__cell-align-end': align === 'end',\n\t\t'dataviews-view-table__cell-align-center': align === 'center',\n\t} );\n\n\treturn (\n\t\t<div className={ className }>\n\t\t\t<field.render item={ item } field={ field } />\n\t\t</div>\n\t);\n}\n\nfunction TableRow< Item >( {\n\thasBulkActions,\n\titem,\n\tlevel,\n\tactions,\n\tfields,\n\tid,\n\tview,\n\ttitleField,\n\tmediaField,\n\tdescriptionField,\n\tselection,\n\tgetItemId,\n\tisItemClickable,\n\tonClickItem,\n\trenderItemLink,\n\tonChangeSelection,\n\tisActionsColumnSticky,\n\tposinset,\n}: TableRowProps< Item > ) {\n\tconst { paginationInfo } = useContext( DataViewsContext );\n\tconst hasPossibleBulkAction = useHasAPossibleBulkAction( actions, item );\n\tconst isSelected = hasPossibleBulkAction && selection.includes( id );\n\tconst [ isHovered, setIsHovered ] = useState( false );\n\tconst {\n\t\tshowTitle = true,\n\t\tshowMedia = true,\n\t\tshowDescription = true,\n\t\tinfiniteScrollEnabled,\n\t} = view;\n\tconst handleMouseEnter = () => {\n\t\tsetIsHovered( true );\n\t};\n\tconst handleMouseLeave = () => {\n\t\tsetIsHovered( false );\n\t};\n\n\t// Will be set to true if `onTouchStart` fires. This happens before\n\t// `onClick` and can be used to exclude touchscreen devices from certain\n\t// behaviours.\n\tconst isTouchDeviceRef = useRef( false );\n\tconst columns = view.fields ?? [];\n\tconst hasPrimaryColumn =\n\t\t( titleField && showTitle ) ||\n\t\t( mediaField && showMedia ) ||\n\t\t( descriptionField && showDescription );\n\n\treturn (\n\t\t<tr\n\t\t\tclassName={ clsx( 'dataviews-view-table__row', {\n\t\t\t\t'is-selected': hasPossibleBulkAction && isSelected,\n\t\t\t\t'is-hovered': isHovered,\n\t\t\t\t'has-bulk-actions': hasPossibleBulkAction,\n\t\t\t} ) }\n\t\t\tonMouseEnter={ handleMouseEnter }\n\t\t\tonMouseLeave={ handleMouseLeave }\n\t\t\tonTouchStart={ () => {\n\t\t\t\tisTouchDeviceRef.current = true;\n\t\t\t} }\n\t\t\taria-setsize={\n\t\t\t\tinfiniteScrollEnabled ? paginationInfo.totalItems : undefined\n\t\t\t}\n\t\t\taria-posinset={ posinset }\n\t\t\trole={ infiniteScrollEnabled ? 'article' : undefined }\n\t\t\tonClick={ ( event ) => {\n\t\t\t\tif ( ! hasPossibleBulkAction ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\t! isTouchDeviceRef.current &&\n\t\t\t\t\tdocument.getSelection()?.type !== 'Range'\n\t\t\t\t) {\n\t\t\t\t\tif ( isAppleOS() ? event.metaKey : event.ctrlKey ) {\n\t\t\t\t\t\t// Handle non-consecutive selection.\n\t\t\t\t\t\tonChangeSelection(\n\t\t\t\t\t\t\tselection.includes( id )\n\t\t\t\t\t\t\t\t? selection.filter(\n\t\t\t\t\t\t\t\t\t\t( itemId ) => id !== itemId\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: [ ...selection, id ]\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Handle single selection\n\t\t\t\t\t\tonChangeSelection(\n\t\t\t\t\t\t\tselection.includes( id )\n\t\t\t\t\t\t\t\t? selection.filter(\n\t\t\t\t\t\t\t\t\t\t( itemId ) => id !== itemId\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: [ id ]\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} }\n\t\t>\n\t\t\t{ hasBulkActions && (\n\t\t\t\t<td className=\"dataviews-view-table__checkbox-column\">\n\t\t\t\t\t<div className=\"dataviews-view-table__cell-content-wrapper\">\n\t\t\t\t\t\t<DataViewsSelectionCheckbox\n\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\tselection={ selection }\n\t\t\t\t\t\t\tonChangeSelection={ onChangeSelection }\n\t\t\t\t\t\t\tgetItemId={ getItemId }\n\t\t\t\t\t\t\ttitleField={ titleField }\n\t\t\t\t\t\t\tdisabled={ ! hasPossibleBulkAction }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</td>\n\t\t\t) }\n\t\t\t{ hasPrimaryColumn && (\n\t\t\t\t<td>\n\t\t\t\t\t<ColumnPrimary\n\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\tlevel={ level }\n\t\t\t\t\t\ttitleField={ showTitle ? titleField : undefined }\n\t\t\t\t\t\tmediaField={ showMedia ? mediaField : undefined }\n\t\t\t\t\t\tdescriptionField={\n\t\t\t\t\t\t\tshowDescription ? descriptionField : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisItemClickable={ isItemClickable }\n\t\t\t\t\t\tonClickItem={ onClickItem }\n\t\t\t\t\t\trenderItemLink={ renderItemLink }\n\t\t\t\t\t/>\n\t\t\t\t</td>\n\t\t\t) }\n\t\t\t{ columns.map( ( column: string ) => {\n\t\t\t\t// Explicit picks the supported styles.\n\t\t\t\tconst { width, maxWidth, minWidth, align } =\n\t\t\t\t\tview.layout?.styles?.[ column ] ?? {};\n\n\t\t\t\treturn (\n\t\t\t\t\t<td\n\t\t\t\t\t\tkey={ column }\n\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\twidth,\n\t\t\t\t\t\t\tmaxWidth,\n\t\t\t\t\t\t\tminWidth,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<TableColumnField\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\tcolumn={ column }\n\t\t\t\t\t\t\talign={ align }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</td>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t\t{ !! actions?.length && (\n\t\t\t\t// Disable reason: we are not making the element interactive,\n\t\t\t\t// but preventing any click events from bubbling up to the\n\t\t\t\t// table row. This allows us to add a click handler to the row\n\t\t\t\t// itself (to toggle row selection) without erroneously\n\t\t\t\t// intercepting click events from ItemActions.\n\n\t\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t\t<td\n\t\t\t\t\tclassName={ clsx( 'dataviews-view-table__actions-column', {\n\t\t\t\t\t\t'dataviews-view-table__actions-column--sticky': true,\n\t\t\t\t\t\t'dataviews-view-table__actions-column--stuck':\n\t\t\t\t\t\t\tisActionsColumnSticky,\n\t\t\t\t\t} ) }\n\t\t\t\t\tonClick={ ( e ) => e.stopPropagation() }\n\t\t\t\t>\n\t\t\t\t\t<ItemActions item={ item } actions={ actions } />\n\t\t\t\t</td>\n\t\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t) }\n\t\t</tr>\n\t);\n}\n\nfunction ViewTable< Item >( {\n\tactions,\n\tdata,\n\tfields,\n\tgetItemId,\n\tgetItemLevel,\n\tisLoading = false,\n\tonChangeView,\n\tonChangeSelection,\n\tselection,\n\tsetOpenedFilter,\n\tonClickItem,\n\tisItemClickable,\n\trenderItemLink,\n\tview,\n\tclassName,\n\tempty,\n}: ViewTableProps< Item > ) {\n\tconst { containerRef } = useContext( DataViewsContext );\n\tconst headerMenuRefs = useRef<\n\t\tMap< string, { node: HTMLButtonElement; fallback: string } >\n\t>( new Map() );\n\tconst headerMenuToFocusRef = useRef< HTMLButtonElement >();\n\tconst [ nextHeaderMenuToFocus, setNextHeaderMenuToFocus ] =\n\t\tuseState< HTMLButtonElement >();\n\tconst hasBulkActions = useSomeItemHasAPossibleBulkAction( actions, data );\n\n\tuseEffect( () => {\n\t\tif ( headerMenuToFocusRef.current ) {\n\t\t\theaderMenuToFocusRef.current.focus();\n\t\t\theaderMenuToFocusRef.current = undefined;\n\t\t}\n\t} );\n\n\tconst tableNoticeId = useId();\n\n\tconst isHorizontalScrollEnd = useIsHorizontalScrollEnd( {\n\t\tscrollContainerRef: containerRef,\n\t\tenabled: !! actions?.length,\n\t} );\n\n\tif ( nextHeaderMenuToFocus ) {\n\t\t// If we need to force focus, we short-circuit rendering here\n\t\t// to prevent any additional work while we handle that.\n\t\t// Clearing out the focus directive is necessary to make sure\n\t\t// future renders don't cause unexpected focus jumps.\n\t\theaderMenuToFocusRef.current = nextHeaderMenuToFocus;\n\t\tsetNextHeaderMenuToFocus( undefined );\n\t\treturn;\n\t}\n\n\tconst onHide = ( field: NormalizedField< Item > ) => {\n\t\tconst hidden = headerMenuRefs.current.get( field.id );\n\t\tconst fallback = hidden\n\t\t\t? headerMenuRefs.current.get( hidden.fallback )\n\t\t\t: undefined;\n\t\tsetNextHeaderMenuToFocus( fallback?.node );\n\t};\n\n\tconst hasData = !! data?.length;\n\n\tconst titleField = fields.find( ( field ) => field.id === view.titleField );\n\tconst mediaField = fields.find( ( field ) => field.id === view.mediaField );\n\tconst descriptionField = fields.find(\n\t\t( field ) => field.id === view.descriptionField\n\t);\n\n\tconst groupField = view.groupByField\n\t\t? fields.find( ( f ) => f.id === view.groupByField )\n\t\t: null;\n\tconst dataByGroup = groupField ? getDataByGroup( data, groupField ) : null;\n\tconst { showTitle = true, showMedia = true, showDescription = true } = view;\n\tconst hasPrimaryColumn =\n\t\t( titleField && showTitle ) ||\n\t\t( mediaField && showMedia ) ||\n\t\t( descriptionField && showDescription );\n\tconst columns = view.fields ?? [];\n\tconst headerMenuRef =\n\t\t( column: string, index: number ) => ( node: HTMLButtonElement ) => {\n\t\t\tif ( node ) {\n\t\t\t\theaderMenuRefs.current.set( column, {\n\t\t\t\t\tnode,\n\t\t\t\t\tfallback: columns[ index > 0 ? index - 1 : 1 ],\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\theaderMenuRefs.current.delete( column );\n\t\t\t}\n\t\t};\n\tconst isInfiniteScroll = view.infiniteScrollEnabled && ! dataByGroup;\n\n\treturn (\n\t\t<>\n\t\t\t<table\n\t\t\t\tclassName={ clsx( 'dataviews-view-table', className, {\n\t\t\t\t\t[ `has-${ view.layout?.density }-density` ]:\n\t\t\t\t\t\tview.layout?.density &&\n\t\t\t\t\t\t[ 'compact', 'comfortable' ].includes(\n\t\t\t\t\t\t\tview.layout.density\n\t\t\t\t\t\t),\n\t\t\t\t} ) }\n\t\t\t\taria-busy={ isLoading }\n\t\t\t\taria-describedby={ tableNoticeId }\n\t\t\t\trole={ isInfiniteScroll ? 'feed' : undefined }\n\t\t\t>\n\t\t\t\t<thead>\n\t\t\t\t\t<tr className=\"dataviews-view-table__row\">\n\t\t\t\t\t\t{ hasBulkActions && (\n\t\t\t\t\t\t\t<th\n\t\t\t\t\t\t\t\tclassName=\"dataviews-view-table__checkbox-column\"\n\t\t\t\t\t\t\t\tscope=\"col\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<BulkSelectionCheckbox\n\t\t\t\t\t\t\t\t\tselection={ selection }\n\t\t\t\t\t\t\t\t\tonChangeSelection={ onChangeSelection }\n\t\t\t\t\t\t\t\t\tdata={ data }\n\t\t\t\t\t\t\t\t\tactions={ actions }\n\t\t\t\t\t\t\t\t\tgetItemId={ getItemId }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</th>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ hasPrimaryColumn && (\n\t\t\t\t\t\t\t<th scope=\"col\">\n\t\t\t\t\t\t\t\t{ titleField && (\n\t\t\t\t\t\t\t\t\t<ColumnHeaderMenu\n\t\t\t\t\t\t\t\t\t\tref={ headerMenuRef(\n\t\t\t\t\t\t\t\t\t\t\ttitleField.id,\n\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tfieldId={ titleField.id }\n\t\t\t\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t\t\t\t\tonHide={ onHide }\n\t\t\t\t\t\t\t\t\t\tsetOpenedFilter={ setOpenedFilter }\n\t\t\t\t\t\t\t\t\t\tcanMove={ false }\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</th>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ columns.map( ( column, index ) => {\n\t\t\t\t\t\t\t// Explicit picks the supported styles.\n\t\t\t\t\t\t\tconst { width, maxWidth, minWidth, align } =\n\t\t\t\t\t\t\t\tview.layout?.styles?.[ column ] ?? {};\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<th\n\t\t\t\t\t\t\t\t\tkey={ column }\n\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\twidth,\n\t\t\t\t\t\t\t\t\t\tmaxWidth,\n\t\t\t\t\t\t\t\t\t\tminWidth,\n\t\t\t\t\t\t\t\t\t\ttextAlign: align,\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\taria-sort={\n\t\t\t\t\t\t\t\t\t\tview.sort?.direction &&\n\t\t\t\t\t\t\t\t\t\tview.sort?.field === column\n\t\t\t\t\t\t\t\t\t\t\t? sortValues[ view.sort.direction ]\n\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tscope=\"col\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ColumnHeaderMenu\n\t\t\t\t\t\t\t\t\t\tref={ headerMenuRef( column, index ) }\n\t\t\t\t\t\t\t\t\t\tfieldId={ column }\n\t\t\t\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t\t\t\t\tonHide={ onHide }\n\t\t\t\t\t\t\t\t\t\tsetOpenedFilter={ setOpenedFilter }\n\t\t\t\t\t\t\t\t\t\tcanMove={\n\t\t\t\t\t\t\t\t\t\t\tview.layout?.enableMoving ?? true\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</th>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t{ !! actions?.length && (\n\t\t\t\t\t\t\t<th\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t'dataviews-view-table__actions-column',\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t'dataviews-view-table__actions-column--sticky':\n\t\t\t\t\t\t\t\t\t\t\ttrue,\n\t\t\t\t\t\t\t\t\t\t'dataviews-view-table__actions-column--stuck':\n\t\t\t\t\t\t\t\t\t\t\t! isHorizontalScrollEnd,\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<span className=\"dataviews-view-table-header\">\n\t\t\t\t\t\t\t\t\t{ __( 'Actions' ) }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</th>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t{ /* Render grouped data if groupByField is specified */ }\n\t\t\t\t{ hasData && groupField && dataByGroup ? (\n\t\t\t\t\tArray.from( dataByGroup.entries() ).map(\n\t\t\t\t\t\t( [ groupName, groupItems ] ) => (\n\t\t\t\t\t\t\t<tbody key={ `group-${ groupName }` }>\n\t\t\t\t\t\t\t\t<tr className=\"dataviews-view-table__group-header-row\">\n\t\t\t\t\t\t\t\t\t<td\n\t\t\t\t\t\t\t\t\t\tcolSpan={\n\t\t\t\t\t\t\t\t\t\t\tcolumns.length +\n\t\t\t\t\t\t\t\t\t\t\t( hasPrimaryColumn ? 1 : 0 ) +\n\t\t\t\t\t\t\t\t\t\t\t( hasBulkActions ? 1 : 0 ) +\n\t\t\t\t\t\t\t\t\t\t\t( actions?.length ? 1 : 0 )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tclassName=\"dataviews-view-table__group-header-cell\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t\t// translators: 1: The label of the field e.g. \"Date\". 2: The value of the field, e.g.: \"May 2022\".\n\t\t\t\t\t\t\t\t\t\t\t__( '%1$s: %2$s' ),\n\t\t\t\t\t\t\t\t\t\t\tgroupField.label,\n\t\t\t\t\t\t\t\t\t\t\tgroupName\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t{ groupItems.map( ( item, index ) => (\n\t\t\t\t\t\t\t\t\t<TableRow\n\t\t\t\t\t\t\t\t\t\tkey={ getItemId( item ) }\n\t\t\t\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\t\t\t\tlevel={\n\t\t\t\t\t\t\t\t\t\t\tview.showLevels &&\n\t\t\t\t\t\t\t\t\t\t\ttypeof getItemLevel === 'function'\n\t\t\t\t\t\t\t\t\t\t\t\t? getItemLevel( item )\n\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\thasBulkActions={ hasBulkActions }\n\t\t\t\t\t\t\t\t\t\tactions={ actions }\n\t\t\t\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\t\t\t\tid={\n\t\t\t\t\t\t\t\t\t\t\tgetItemId( item ) ||\n\t\t\t\t\t\t\t\t\t\t\tindex.toString()\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\t\t\t\ttitleField={ titleField }\n\t\t\t\t\t\t\t\t\t\tmediaField={ mediaField }\n\t\t\t\t\t\t\t\t\t\tdescriptionField={ descriptionField }\n\t\t\t\t\t\t\t\t\t\tselection={ selection }\n\t\t\t\t\t\t\t\t\t\tgetItemId={ getItemId }\n\t\t\t\t\t\t\t\t\t\tonChangeSelection={ onChangeSelection }\n\t\t\t\t\t\t\t\t\t\tonClickItem={ onClickItem }\n\t\t\t\t\t\t\t\t\t\trenderItemLink={ renderItemLink }\n\t\t\t\t\t\t\t\t\t\tisItemClickable={ isItemClickable }\n\t\t\t\t\t\t\t\t\t\tisActionsColumnSticky={\n\t\t\t\t\t\t\t\t\t\t\t! isHorizontalScrollEnd\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) ) }\n\t\t\t\t\t\t\t</tbody>\n\t\t\t\t\t\t)\n\t\t\t\t\t)\n\t\t\t\t) : (\n\t\t\t\t\t<tbody>\n\t\t\t\t\t\t{ hasData &&\n\t\t\t\t\t\t\tdata.map( ( item, index ) => (\n\t\t\t\t\t\t\t\t<TableRow\n\t\t\t\t\t\t\t\t\tkey={ getItemId( item ) }\n\t\t\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\t\t\tlevel={\n\t\t\t\t\t\t\t\t\t\tview.showLevels &&\n\t\t\t\t\t\t\t\t\t\ttypeof getItemLevel === 'function'\n\t\t\t\t\t\t\t\t\t\t\t? getItemLevel( item )\n\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thasBulkActions={ hasBulkActions }\n\t\t\t\t\t\t\t\t\tactions={ actions }\n\t\t\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\t\t\tid={ getItemId( item ) || index.toString() }\n\t\t\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\t\t\ttitleField={ titleField }\n\t\t\t\t\t\t\t\t\tmediaField={ mediaField }\n\t\t\t\t\t\t\t\t\tdescriptionField={ descriptionField }\n\t\t\t\t\t\t\t\t\tselection={ selection }\n\t\t\t\t\t\t\t\t\tgetItemId={ getItemId }\n\t\t\t\t\t\t\t\t\tonChangeSelection={ onChangeSelection }\n\t\t\t\t\t\t\t\t\tonClickItem={ onClickItem }\n\t\t\t\t\t\t\t\t\trenderItemLink={ renderItemLink }\n\t\t\t\t\t\t\t\t\tisItemClickable={ isItemClickable }\n\t\t\t\t\t\t\t\t\tisActionsColumnSticky={\n\t\t\t\t\t\t\t\t\t\t! isHorizontalScrollEnd\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tposinset={\n\t\t\t\t\t\t\t\t\t\tisInfiniteScroll ? index + 1 : undefined\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</tbody>\n\t\t\t\t) }\n\t\t\t</table>\n\t\t\t<div\n\t\t\t\tclassName={ clsx( {\n\t\t\t\t\t'dataviews-loading': isLoading,\n\t\t\t\t\t'dataviews-no-results': ! hasData && ! isLoading,\n\t\t\t\t} ) }\n\t\t\t\tid={ tableNoticeId }\n\t\t\t>\n\t\t\t\t{ ! hasData &&\n\t\t\t\t\t( isLoading ? (\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</p>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tempty\n\t\t\t\t\t) ) }\n\t\t\t\t{ hasData && isLoading && (\n\t\t\t\t\t<p className=\"dataviews-loading-more\">\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t</p>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default ViewTable;\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": ["clsx", "DataViewsContext", "DataViewsSelectionCheckbox", "ColumnPrimary", "ItemActions", "getDataByGroup", "ColumnHeaderMenu"]
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/dataviews/src/dataviews-layouts/table/use-is-horizontal-scroll-end.ts
19
21
  var use_is_horizontal_scroll_end_exports = {};
20
22
  __export(use_is_horizontal_scroll_end_exports, {
21
23
  useIsHorizontalScrollEnd: () => useIsHorizontalScrollEnd
@@ -24,7 +26,7 @@ module.exports = __toCommonJS(use_is_horizontal_scroll_end_exports);
24
26
  var import_compose = require("@wordpress/compose");
25
27
  var import_element = require("@wordpress/element");
26
28
  var import_i18n = require("@wordpress/i18n");
27
- const isScrolledToEnd = (element) => {
29
+ var isScrolledToEnd = (element) => {
28
30
  if ((0, import_i18n.isRTL)()) {
29
31
  const scrollLeft = Math.abs(element.scrollLeft);
30
32
  return scrollLeft <= 1;
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/dataviews-layouts/table/use-is-horizontal-scroll-end.ts"],
4
4
  "sourcesContent": ["/**\n * External dependencies\n */\nimport type { MutableRefObject } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useDebounce } from '@wordpress/compose';\nimport { useCallback, useEffect, useState } from '@wordpress/element';\nimport { isRTL } from '@wordpress/i18n';\n\nconst isScrolledToEnd = ( element: Element ) => {\n\tif ( isRTL() ) {\n\t\tconst scrollLeft = Math.abs( element.scrollLeft );\n\t\treturn scrollLeft <= 1;\n\t}\n\n\treturn element.scrollLeft + element.clientWidth >= element.scrollWidth - 1;\n};\n\n/**\n * A hook to check if a given scroll container has reached the horizontal scroll end.\n *\n * The current way receives \"refs\" as arguments, but it lacks a mechanism to detect when a ref has changed.\n * As a result, when the \"ref\" is updated and attached to a new div, the computation should trigger again.\n * However, this isn't possible in the current setup because the hook is unaware that the ref has changed.\n *\n * See https://github.com/Automattic/wp-calypso/pull/103005#discussion_r2077567912.\n *\n * @param {Object} params The parameters for the hook.\n * @param {MutableRefObject<HTMLDivElement | null>} params.scrollContainerRef The ref to the scroll container element.\n * @param {boolean} [params.enabled=false] Whether the hook is enabled.\n * @return {boolean} - Returns true if the scroll container is scrolled to the end or false otherwise.\n */\nexport function useIsHorizontalScrollEnd( {\n\tscrollContainerRef,\n\tenabled = false,\n}: {\n\tscrollContainerRef: React.MutableRefObject< HTMLDivElement | null >;\n\tenabled?: boolean;\n} ): boolean {\n\tconst [ isHorizontalScrollEnd, setIsHorizontalScrollEnd ] =\n\t\tuseState( false );\n\n\tconst handleIsHorizontalScrollEnd = useDebounce(\n\t\tuseCallback( () => {\n\t\t\tconst scrollContainer = scrollContainerRef.current;\n\t\t\tif ( scrollContainer ) {\n\t\t\t\tsetIsHorizontalScrollEnd( isScrolledToEnd( scrollContainer ) );\n\t\t\t}\n\t\t}, [ scrollContainerRef, setIsHorizontalScrollEnd ] ),\n\t\t200\n\t);\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\ttypeof window === 'undefined' ||\n\t\t\t! enabled ||\n\t\t\t! scrollContainerRef.current\n\t\t) {\n\t\t\treturn () => {};\n\t\t}\n\n\t\thandleIsHorizontalScrollEnd();\n\t\tscrollContainerRef.current.addEventListener(\n\t\t\t'scroll',\n\t\t\thandleIsHorizontalScrollEnd\n\t\t);\n\t\twindow.addEventListener( 'resize', handleIsHorizontalScrollEnd );\n\n\t\treturn () => {\n\t\t\tscrollContainerRef.current?.removeEventListener(\n\t\t\t\t'scroll',\n\t\t\t\thandleIsHorizontalScrollEnd\n\t\t\t);\n\t\t\twindow.removeEventListener( 'resize', handleIsHorizontalScrollEnd );\n\t\t};\n\t}, [ scrollContainerRef, enabled ] );\n\n\treturn isHorizontalScrollEnd;\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,qBAA4B;AAC5B,qBAAiD;AACjD,kBAAsB;AAEtB,MAAM,kBAAkB,CAAE,YAAsB;AAC/C,UAAK,mBAAM,GAAI;AACd,UAAM,aAAa,KAAK,IAAK,QAAQ,UAAW;AAChD,WAAO,cAAc;AAAA,EACtB;AAEA,SAAO,QAAQ,aAAa,QAAQ,eAAe,QAAQ,cAAc;AAC1E;AAgBO,SAAS,yBAA0B;AAAA,EACzC;AAAA,EACA,UAAU;AACX,GAGa;AACZ,QAAM,CAAE,uBAAuB,wBAAyB,QACvD,yBAAU,KAAM;AAEjB,QAAM,kCAA8B;AAAA,QACnC,4BAAa,MAAM;AAClB,YAAM,kBAAkB,mBAAmB;AAC3C,UAAK,iBAAkB;AACtB,iCAA0B,gBAAiB,eAAgB,CAAE;AAAA,MAC9D;AAAA,IACD,GAAG,CAAE,oBAAoB,wBAAyB,CAAE;AAAA,IACpD;AAAA,EACD;AAEA,gCAAW,MAAM;AAChB,QACC,OAAO,WAAW,eAClB,CAAE,WACF,CAAE,mBAAmB,SACpB;AACD,aAAO,MAAM;AAAA,MAAC;AAAA,IACf;AAEA,gCAA4B;AAC5B,uBAAmB,QAAQ;AAAA,MAC1B;AAAA,MACA;AAAA,IACD;AACA,WAAO,iBAAkB,UAAU,2BAA4B;AAE/D,WAAO,MAAM;AACZ,yBAAmB,SAAS;AAAA,QAC3B;AAAA,QACA;AAAA,MACD;AACA,aAAO,oBAAqB,UAAU,2BAA4B;AAAA,IACnE;AAAA,EACD,GAAG,CAAE,oBAAoB,OAAQ,CAAE;AAEnC,SAAO;AACR;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,qBAA4B;AAC5B,qBAAiD;AACjD,kBAAsB;AAEtB,IAAM,kBAAkB,CAAE,YAAsB;AAC/C,UAAK,mBAAM,GAAI;AACd,UAAM,aAAa,KAAK,IAAK,QAAQ,UAAW;AAChD,WAAO,cAAc;AAAA,EACtB;AAEA,SAAO,QAAQ,aAAa,QAAQ,eAAe,QAAQ,cAAc;AAC1E;AAgBO,SAAS,yBAA0B;AAAA,EACzC;AAAA,EACA,UAAU;AACX,GAGa;AACZ,QAAM,CAAE,uBAAuB,wBAAyB,QACvD,yBAAU,KAAM;AAEjB,QAAM,kCAA8B;AAAA,QACnC,4BAAa,MAAM;AAClB,YAAM,kBAAkB,mBAAmB;AAC3C,UAAK,iBAAkB;AACtB,iCAA0B,gBAAiB,eAAgB,CAAE;AAAA,MAC9D;AAAA,IACD,GAAG,CAAE,oBAAoB,wBAAyB,CAAE;AAAA,IACpD;AAAA,EACD;AAEA,gCAAW,MAAM;AAChB,QACC,OAAO,WAAW,eAClB,CAAE,WACF,CAAE,mBAAmB,SACpB;AACD,aAAO,MAAM;AAAA,MAAC;AAAA,IACf;AAEA,gCAA4B;AAC5B,uBAAmB,QAAQ;AAAA,MAC1B;AAAA,MACA;AAAA,IACD;AACA,WAAO,iBAAkB,UAAU,2BAA4B;AAE/D,WAAO,MAAM;AACZ,yBAAmB,SAAS;AAAA,QAC3B;AAAA,QACA;AAAA,MACD;AACA,aAAO,oBAAqB,UAAU,2BAA4B;AAAA,IACnE;AAAA,EACD,GAAG,CAAE,oBAAoB,OAAQ,CAAE;AAEnC,SAAO;AACR;",
6
6
  "names": []
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/dataviews/src/dataviews-layouts/utils/get-data-by-group.ts
19
21
  var get_data_by_group_exports = {};
20
22
  __export(get_data_by_group_exports, {
21
23
  default: () => getDataByGroup
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/dataviews-layouts/utils/get-data-by-group.ts"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { NormalizedField } from '../../types';\n\nexport default function getDataByGroup< Item >(\n\tdata: any[],\n\tgroupByField: NormalizedField< Item >\n): Map< string, any[] > {\n\treturn data.reduce( ( groups: Map< string, typeof data >, item ) => {\n\t\tconst groupName = groupByField.getValue( { item } );\n\t\tif ( ! groups.has( groupName ) ) {\n\t\t\tgroups.set( groupName, [] );\n\t\t}\n\t\tgroups.get( groupName )?.push( item );\n\t\treturn groups;\n\t}, new Map< string, typeof data >() );\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAKe,SAAR,eACN,MACA,cACuB;AACvB,SAAO,KAAK,OAAQ,CAAE,QAAoC,SAAU;AACnE,UAAM,YAAY,aAAa,SAAU,EAAE,KAAK,CAAE;AAClD,QAAK,CAAE,OAAO,IAAK,SAAU,GAAI;AAChC,aAAO,IAAK,WAAW,CAAC,CAAE;AAAA,IAC3B;AACA,WAAO,IAAK,SAAU,GAAG,KAAM,IAAK;AACpC,WAAO;AAAA,EACR,GAAG,oBAAI,IAA2B,CAAE;AACrC;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAKe,SAAR,eACN,MACA,cACuB;AACvB,SAAO,KAAK,OAAQ,CAAE,QAAoC,SAAU;AACnE,UAAM,YAAY,aAAa,SAAU,EAAE,KAAK,CAAE;AAClD,QAAK,CAAE,OAAO,IAAK,SAAU,GAAI;AAChC,aAAO,IAAK,WAAW,CAAC,CAAE;AAAA,IAC3B;AACA,WAAO,IAAK,SAAU,GAAG,KAAM,IAAK;AACpC,WAAO;AAAA,EACR,GAAG,oBAAI,IAA2B,CAAE;AACrC;",
6
6
  "names": []
7
7
  }
@@ -26,15 +26,17 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // packages/dataviews/src/dataviews-layouts/utils/grid-items.tsx
29
31
  var grid_items_exports = {};
30
32
  __export(grid_items_exports, {
31
33
  GridItems: () => GridItems
32
34
  });
33
35
  module.exports = __toCommonJS(grid_items_exports);
34
- var import_jsx_runtime = require("react/jsx-runtime");
35
36
  var import_element = require("@wordpress/element");
36
37
  var import_clsx = __toESM(require("clsx"));
37
- const GridItems = (0, import_element.forwardRef)(({ className, previewSize, ...props }, ref) => {
38
+ var import_jsx_runtime = require("react/jsx-runtime");
39
+ var GridItems = (0, import_element.forwardRef)(({ className, previewSize, ...props }, ref) => {
38
40
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
39
41
  "div",
40
42
  {
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/dataviews-layouts/utils/grid-items.tsx"],
4
4
  "sourcesContent": ["/**\n * External dependencies\n */\nimport type { ComponentPropsWithoutRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\nexport const GridItems = forwardRef<\n\tHTMLDivElement,\n\t{\n\t\tclassName?: string;\n\t\tpreviewSize: number | undefined;\n\t} & ComponentPropsWithoutRef< 'div' >\n>( ( { className, previewSize, ...props }, ref ) => {\n\treturn (\n\t\t<div\n\t\t\tref={ ref }\n\t\t\tclassName={ clsx( 'dataviews-view-grid-items', className ) }\n\t\t\tstyle={ {\n\t\t\t\tgridTemplateColumns:\n\t\t\t\t\tpreviewSize &&\n\t\t\t\t\t`repeat(auto-fill, minmax(${ previewSize }px, 1fr))`,\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n} );\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuBE;AAfF,qBAA2B;AAK3B,kBAAiB;AAEV,MAAM,gBAAY,2BAMtB,CAAE,EAAE,WAAW,aAAa,GAAG,MAAM,GAAG,QAAS;AACnD,SACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA,eAAY,YAAAA,SAAM,6BAA6B,SAAU;AAAA,MACzD,OAAQ;AAAA,QACP,qBACC,eACA,4BAA6B,WAAY;AAAA,MAC3C;AAAA,MACE,GAAG;AAAA;AAAA,EACN;AAEF,CAAE;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,qBAA2B;AAK3B,kBAAiB;AAUf;AARK,IAAM,gBAAY,2BAMtB,CAAE,EAAE,WAAW,aAAa,GAAG,MAAM,GAAG,QAAS;AACnD,SACC;AAAA,IAAC;AAAA;AAAA,MACA;AAAA,MACA,eAAY,YAAAA,SAAM,6BAA6B,SAAU;AAAA,MACzD,OAAQ;AAAA,QACP,qBACC,eACA,4BAA6B,WAAY;AAAA,MAC3C;AAAA,MACE,GAAG;AAAA;AAAA,EACN;AAEF,CAAE;",
6
6
  "names": ["clsx"]
7
7
  }
@@ -16,13 +16,15 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/dataviews/src/dataviews-layouts/utils/item-click-wrapper.tsx
19
21
  var item_click_wrapper_exports = {};
20
22
  __export(item_click_wrapper_exports, {
21
23
  ItemClickWrapper: () => ItemClickWrapper
22
24
  });
23
25
  module.exports = __toCommonJS(item_click_wrapper_exports);
24
- var import_jsx_runtime = require("react/jsx-runtime");
25
26
  var import_element = require("@wordpress/element");
27
+ var import_jsx_runtime = require("react/jsx-runtime");
26
28
  function getClickableItemProps({
27
29
  item,
28
30
  isItemClickable,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/dataviews-layouts/utils/item-click-wrapper.tsx"],
4
4
  "sourcesContent": ["/**\n * External dependencies\n */\nimport type { ReactNode, ReactElement, ComponentProps } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { cloneElement } from '@wordpress/element';\n\nfunction getClickableItemProps< Item >( {\n\titem,\n\tisItemClickable,\n\tonClickItem,\n\tclassName,\n}: {\n\titem: Item;\n\tisItemClickable: ( item: Item ) => boolean;\n\tonClickItem?: ( item: Item ) => void;\n\tclassName?: string;\n} ) {\n\tif ( ! isItemClickable( item ) || ! onClickItem ) {\n\t\treturn { className };\n\t}\n\n\treturn {\n\t\tclassName: className\n\t\t\t? `${ className } ${ className }--clickable`\n\t\t\t: undefined,\n\t\trole: 'button',\n\t\ttabIndex: 0,\n\t\tonClick: ( event: React.MouseEvent ) => {\n\t\t\t// Prevents onChangeSelection from triggering.\n\t\t\tevent.stopPropagation();\n\t\t\tonClickItem( item );\n\t\t},\n\t\tonKeyDown: ( event: React.KeyboardEvent ) => {\n\t\t\tif (\n\t\t\t\tevent.key === 'Enter' ||\n\t\t\t\tevent.key === '' ||\n\t\t\t\tevent.key === ' '\n\t\t\t) {\n\t\t\t\t// Prevents onChangeSelection from triggering.\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tonClickItem( item );\n\t\t\t}\n\t\t},\n\t};\n}\n\nexport function ItemClickWrapper< Item >( {\n\titem,\n\tisItemClickable,\n\tonClickItem,\n\trenderItemLink,\n\tclassName,\n\tchildren,\n\t...extraProps\n}: {\n\titem: Item;\n\tisItemClickable: ( item: Item ) => boolean;\n\tonClickItem?: ( item: Item ) => void;\n\trenderItemLink?: (\n\t\tprops: {\n\t\t\titem: Item;\n\t\t} & ComponentProps< 'a' >\n\t) => ReactElement;\n\tclassName?: string;\n\tchildren: ReactNode;\n} ) {\n\t// Always render a wrapper element so layout and styling relying on the wrapper\n\t// still works even if the item is not clickable.\n\tif ( ! isItemClickable( item ) ) {\n\t\treturn (\n\t\t\t<div className={ className } { ...extraProps }>\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// If we have a renderItemLink, use it\n\tif ( renderItemLink ) {\n\t\tconst renderedElement = renderItemLink( {\n\t\t\titem,\n\t\t\tclassName: `${ className } ${ className }--clickable`,\n\t\t\t...extraProps,\n\t\t\tchildren,\n\t\t} );\n\n\t\t// Clone the element and enhance onClick to stop propagation\n\t\treturn cloneElement( renderedElement, {\n\t\t\tonClick: ( event: React.MouseEvent ) => {\n\t\t\t\t// Always stop propagation to prevent selection\n\t\t\t\tevent.stopPropagation();\n\n\t\t\t\t// If consumer provided an onClick, call it\n\t\t\t\tif ( renderedElement.props.onClick ) {\n\t\t\t\t\trenderedElement.props.onClick( event );\n\t\t\t\t}\n\t\t\t},\n\t\t\tonKeyDown: ( event: React.KeyboardEvent ) => {\n\t\t\t\tif (\n\t\t\t\t\tevent.key === 'Enter' ||\n\t\t\t\t\tevent.key === '' ||\n\t\t\t\t\tevent.key === ' '\n\t\t\t\t) {\n\t\t\t\t\t// Prevents onChangeSelection from triggering.\n\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t// If consumer provided an onKeyDown, call it\n\t\t\t\t\tif ( renderedElement.props.onKeyDown ) {\n\t\t\t\t\t\trenderedElement.props.onKeyDown( event );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t} );\n\t}\n\n\t// Otherwise use the classic click handler approach\n\tconst clickProps = getClickableItemProps( {\n\t\titem,\n\t\tisItemClickable,\n\t\tonClickItem,\n\t\tclassName,\n\t} );\n\n\treturn (\n\t\t<div { ...clickProps } { ...extraProps }>\n\t\t\t{ children }\n\t\t</div>\n\t);\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA0EG;AAlEH,qBAA6B;AAE7B,SAAS,sBAA+B;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAKI;AACH,MAAK,CAAE,gBAAiB,IAAK,KAAK,CAAE,aAAc;AACjD,WAAO,EAAE,UAAU;AAAA,EACpB;AAEA,SAAO;AAAA,IACN,WAAW,YACR,GAAI,SAAU,IAAK,SAAU,gBAC7B;AAAA,IACH,MAAM;AAAA,IACN,UAAU;AAAA,IACV,SAAS,CAAE,UAA6B;AAEvC,YAAM,gBAAgB;AACtB,kBAAa,IAAK;AAAA,IACnB;AAAA,IACA,WAAW,CAAE,UAAgC;AAC5C,UACC,MAAM,QAAQ,WACd,MAAM,QAAQ,MACd,MAAM,QAAQ,KACb;AAED,cAAM,gBAAgB;AACtB,oBAAa,IAAK;AAAA,MACnB;AAAA,IACD;AAAA,EACD;AACD;AAEO,SAAS,iBAA0B;AAAA,EACzC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACJ,GAWI;AAGH,MAAK,CAAE,gBAAiB,IAAK,GAAI;AAChC,WACC,4CAAC,SAAI,WAA0B,GAAG,YAC/B,UACH;AAAA,EAEF;AAGA,MAAK,gBAAiB;AACrB,UAAM,kBAAkB,eAAgB;AAAA,MACvC;AAAA,MACA,WAAW,GAAI,SAAU,IAAK,SAAU;AAAA,MACxC,GAAG;AAAA,MACH;AAAA,IACD,CAAE;AAGF,eAAO,6BAAc,iBAAiB;AAAA,MACrC,SAAS,CAAE,UAA6B;AAEvC,cAAM,gBAAgB;AAGtB,YAAK,gBAAgB,MAAM,SAAU;AACpC,0BAAgB,MAAM,QAAS,KAAM;AAAA,QACtC;AAAA,MACD;AAAA,MACA,WAAW,CAAE,UAAgC;AAC5C,YACC,MAAM,QAAQ,WACd,MAAM,QAAQ,MACd,MAAM,QAAQ,KACb;AAED,gBAAM,gBAAgB;AAEtB,cAAK,gBAAgB,MAAM,WAAY;AACtC,4BAAgB,MAAM,UAAW,KAAM;AAAA,UACxC;AAAA,QACD;AAAA,MACD;AAAA,IACD,CAAE;AAAA,EACH;AAGA,QAAM,aAAa,sBAAuB;AAAA,IACzC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD,CAAE;AAEF,SACC,4CAAC,SAAM,GAAG,YAAe,GAAG,YACzB,UACH;AAEF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,qBAA6B;AAkE1B;AAhEH,SAAS,sBAA+B;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD,GAKI;AACH,MAAK,CAAE,gBAAiB,IAAK,KAAK,CAAE,aAAc;AACjD,WAAO,EAAE,UAAU;AAAA,EACpB;AAEA,SAAO;AAAA,IACN,WAAW,YACR,GAAI,SAAU,IAAK,SAAU,gBAC7B;AAAA,IACH,MAAM;AAAA,IACN,UAAU;AAAA,IACV,SAAS,CAAE,UAA6B;AAEvC,YAAM,gBAAgB;AACtB,kBAAa,IAAK;AAAA,IACnB;AAAA,IACA,WAAW,CAAE,UAAgC;AAC5C,UACC,MAAM,QAAQ,WACd,MAAM,QAAQ,MACd,MAAM,QAAQ,KACb;AAED,cAAM,gBAAgB;AACtB,oBAAa,IAAK;AAAA,MACnB;AAAA,IACD;AAAA,EACD;AACD;AAEO,SAAS,iBAA0B;AAAA,EACzC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACJ,GAWI;AAGH,MAAK,CAAE,gBAAiB,IAAK,GAAI;AAChC,WACC,4CAAC,SAAI,WAA0B,GAAG,YAC/B,UACH;AAAA,EAEF;AAGA,MAAK,gBAAiB;AACrB,UAAM,kBAAkB,eAAgB;AAAA,MACvC;AAAA,MACA,WAAW,GAAI,SAAU,IAAK,SAAU;AAAA,MACxC,GAAG;AAAA,MACH;AAAA,IACD,CAAE;AAGF,eAAO,6BAAc,iBAAiB;AAAA,MACrC,SAAS,CAAE,UAA6B;AAEvC,cAAM,gBAAgB;AAGtB,YAAK,gBAAgB,MAAM,SAAU;AACpC,0BAAgB,MAAM,QAAS,KAAM;AAAA,QACtC;AAAA,MACD;AAAA,MACA,WAAW,CAAE,UAAgC;AAC5C,YACC,MAAM,QAAQ,WACd,MAAM,QAAQ,MACd,MAAM,QAAQ,KACb;AAED,gBAAM,gBAAgB;AAEtB,cAAK,gBAAgB,MAAM,WAAY;AACtC,4BAAgB,MAAM,UAAW,KAAM;AAAA,UACxC;AAAA,QACD;AAAA,MACD;AAAA,IACD,CAAE;AAAA,EACH;AAGA,QAAM,aAAa,sBAAuB;AAAA,IACzC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD,CAAE;AAEF,SACC,4CAAC,SAAM,GAAG,YAAe,GAAG,YACzB,UACH;AAEF;",
6
6
  "names": []
7
7
  }
@@ -26,17 +26,19 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // packages/dataviews/src/dataviews-layouts/utils/preview-size-picker.tsx
29
31
  var preview_size_picker_exports = {};
30
32
  __export(preview_size_picker_exports, {
31
33
  default: () => PreviewSizePicker
32
34
  });
33
35
  module.exports = __toCommonJS(preview_size_picker_exports);
34
- var import_jsx_runtime = require("react/jsx-runtime");
35
36
  var import_components = require("@wordpress/components");
36
37
  var import_i18n = require("@wordpress/i18n");
37
38
  var import_element = require("@wordpress/element");
38
39
  var import_dataviews_context = __toESM(require("../../components/dataviews-context"));
39
- const imageSizes = [
40
+ var import_jsx_runtime = require("react/jsx-runtime");
41
+ var imageSizes = [
40
42
  {
41
43
  value: 120,
42
44
  breakpoint: 1
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/dataviews-layouts/utils/preview-size-picker.tsx"],
4
4
  "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { RangeControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport DataViewsContext from '../../components/dataviews-context';\nimport type { ViewGrid } from '../../types';\n\nconst imageSizes = [\n\t{\n\t\tvalue: 120,\n\t\tbreakpoint: 1,\n\t},\n\t{\n\t\tvalue: 170,\n\t\tbreakpoint: 1,\n\t},\n\t{\n\t\tvalue: 230,\n\t\tbreakpoint: 1,\n\t},\n\t{\n\t\tvalue: 290,\n\t\tbreakpoint: 1112, // at minimum image width, 4 images display at this container size\n\t},\n\t{\n\t\tvalue: 350,\n\t\tbreakpoint: 1636, // at minimum image width, 6 images display at this container size\n\t},\n\t{\n\t\tvalue: 430,\n\t\tbreakpoint: 588, // at minimum image width, 2 images display at this container size\n\t},\n];\n\nexport default function PreviewSizePicker() {\n\tconst context = useContext( DataViewsContext );\n\tconst view = context.view as ViewGrid;\n\n\tconst breakValues = imageSizes.filter( ( size ) => {\n\t\treturn context.containerWidth >= size.breakpoint;\n\t} );\n\n\tconst layoutPreviewSize = view.layout?.previewSize ?? 230; // Default to the third smallest size if no preview size is set.\n\t// If the container has resized and the set preview size is no longer available,\n\t// we reset it to the next smallest size, or the smallest available size.\n\tconst previewSizeToUse =\n\t\tbreakValues\n\t\t\t.map( ( size, index ) => ( { ...size, index } ) )\n\t\t\t.filter( ( size ) => size.value <= layoutPreviewSize )\n\t\t\t.sort( ( a, b ) => b.value - a.value )[ 0 ]?.index ?? 0;\n\n\tconst marks = breakValues.map( ( size, index ) => {\n\t\treturn {\n\t\t\tvalue: index,\n\t\t};\n\t} );\n\n\treturn (\n\t\t<RangeControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\t__next40pxDefaultSize\n\t\t\tshowTooltip={ false }\n\t\t\tlabel={ __( 'Preview size' ) }\n\t\t\tvalue={ previewSizeToUse }\n\t\t\tmin={ 0 }\n\t\t\tmax={ breakValues.length - 1 }\n\t\t\twithInputField={ false }\n\t\t\tonChange={ ( value = 0 ) => {\n\t\t\t\tcontext.onChangeView( {\n\t\t\t\t\t...view,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...view.layout,\n\t\t\t\t\t\tpreviewSize: breakValues[ value ].value,\n\t\t\t\t\t},\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tstep={ 1 }\n\t\t\tmarks={ marks }\n\t\t/>\n\t);\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAgEE;AA7DF,wBAA6B;AAC7B,kBAAmB;AACnB,qBAA2B;AAK3B,+BAA6B;AAG7B,MAAM,aAAa;AAAA,EAClB;AAAA,IACC,OAAO;AAAA,IACP,YAAY;AAAA,EACb;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,YAAY;AAAA,EACb;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,YAAY;AAAA,EACb;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,YAAY;AAAA;AAAA,EACb;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,YAAY;AAAA;AAAA,EACb;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,YAAY;AAAA;AAAA,EACb;AACD;AAEe,SAAR,oBAAqC;AAC3C,QAAM,cAAU,2BAAY,yBAAAA,OAAiB;AAC7C,QAAM,OAAO,QAAQ;AAErB,QAAM,cAAc,WAAW,OAAQ,CAAE,SAAU;AAClD,WAAO,QAAQ,kBAAkB,KAAK;AAAA,EACvC,CAAE;AAEF,QAAM,oBAAoB,KAAK,QAAQ,eAAe;AAGtD,QAAM,mBACL,YACE,IAAK,CAAE,MAAM,WAAa,EAAE,GAAG,MAAM,MAAM,EAAI,EAC/C,OAAQ,CAAE,SAAU,KAAK,SAAS,iBAAkB,EACpD,KAAM,CAAE,GAAG,MAAO,EAAE,QAAQ,EAAE,KAAM,EAAG,CAAE,GAAG,SAAS;AAExD,QAAM,QAAQ,YAAY,IAAK,CAAE,MAAM,UAAW;AACjD,WAAO;AAAA,MACN,OAAO;AAAA,IACR;AAAA,EACD,CAAE;AAEF,SACC;AAAA,IAAC;AAAA;AAAA,MACA,yBAAuB;AAAA,MACvB,uBAAqB;AAAA,MACrB,aAAc;AAAA,MACd,WAAQ,gBAAI,cAAe;AAAA,MAC3B,OAAQ;AAAA,MACR,KAAM;AAAA,MACN,KAAM,YAAY,SAAS;AAAA,MAC3B,gBAAiB;AAAA,MACjB,UAAW,CAAE,QAAQ,MAAO;AAC3B,gBAAQ,aAAc;AAAA,UACrB,GAAG;AAAA,UACH,QAAQ;AAAA,YACP,GAAG,KAAK;AAAA,YACR,aAAa,YAAa,KAAM,EAAE;AAAA,UACnC;AAAA,QACD,CAAE;AAAA,MACH;AAAA,MACA,MAAO;AAAA,MACP;AAAA;AAAA,EACD;AAEF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,wBAA6B;AAC7B,kBAAmB;AACnB,qBAA2B;AAK3B,+BAA6B;AAsD3B;AAnDF,IAAM,aAAa;AAAA,EAClB;AAAA,IACC,OAAO;AAAA,IACP,YAAY;AAAA,EACb;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,YAAY;AAAA,EACb;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,YAAY;AAAA,EACb;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,YAAY;AAAA;AAAA,EACb;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,YAAY;AAAA;AAAA,EACb;AAAA,EACA;AAAA,IACC,OAAO;AAAA,IACP,YAAY;AAAA;AAAA,EACb;AACD;AAEe,SAAR,oBAAqC;AAC3C,QAAM,cAAU,2BAAY,yBAAAA,OAAiB;AAC7C,QAAM,OAAO,QAAQ;AAErB,QAAM,cAAc,WAAW,OAAQ,CAAE,SAAU;AAClD,WAAO,QAAQ,kBAAkB,KAAK;AAAA,EACvC,CAAE;AAEF,QAAM,oBAAoB,KAAK,QAAQ,eAAe;AAGtD,QAAM,mBACL,YACE,IAAK,CAAE,MAAM,WAAa,EAAE,GAAG,MAAM,MAAM,EAAI,EAC/C,OAAQ,CAAE,SAAU,KAAK,SAAS,iBAAkB,EACpD,KAAM,CAAE,GAAG,MAAO,EAAE,QAAQ,EAAE,KAAM,EAAG,CAAE,GAAG,SAAS;AAExD,QAAM,QAAQ,YAAY,IAAK,CAAE,MAAM,UAAW;AACjD,WAAO;AAAA,MACN,OAAO;AAAA,IACR;AAAA,EACD,CAAE;AAEF,SACC;AAAA,IAAC;AAAA;AAAA,MACA,yBAAuB;AAAA,MACvB,uBAAqB;AAAA,MACrB,aAAc;AAAA,MACd,WAAQ,gBAAI,cAAe;AAAA,MAC3B,OAAQ;AAAA,MACR,KAAM;AAAA,MACN,KAAM,YAAY,SAAS;AAAA,MAC3B,gBAAiB;AAAA,MACjB,UAAW,CAAE,QAAQ,MAAO;AAC3B,gBAAQ,aAAc;AAAA,UACrB,GAAG;AAAA,UACH,QAAQ;AAAA,YACP,GAAG,KAAK;AAAA,YACR,aAAa,YAAa,KAAM,EAAE;AAAA,UACnC;AAAA,QACD,CAAE;AAAA,MACH;AAAA,MACA,MAAO;AAAA,MACP;AAAA;AAAA,EACD;AAEF;",
6
6
  "names": ["DataViewsContext"]
7
7
  }
@@ -16,6 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/dataviews/src/field-types/array.tsx
19
21
  var array_exports = {};
20
22
  __export(array_exports, {
21
23
  default: () => array_default
@@ -37,7 +39,7 @@ function render({ item, field }) {
37
39
  const value = field.getValue({ item }) || [];
38
40
  return value.join(", ");
39
41
  }
40
- const arrayFieldType = {
42
+ var arrayFieldType = {
41
43
  sort,
42
44
  isValid: {
43
45
  elements: true,
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/field-types/array.tsx"],
4
4
  "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type {\n\tDataViewRenderFieldProps,\n\tSortDirection,\n\tFieldTypeDefinition,\n\tNormalizedField,\n} from '../types';\nimport {\n\tOPERATOR_IS_ALL,\n\tOPERATOR_IS_ANY,\n\tOPERATOR_IS_NONE,\n\tOPERATOR_IS_NOT_ALL,\n} from '../constants';\n\n// Sort arrays by length, then alphabetically by joined string\nfunction sort( valueA: any, valueB: any, direction: SortDirection ) {\n\tconst arrA = Array.isArray( valueA ) ? valueA : [];\n\tconst arrB = Array.isArray( valueB ) ? valueB : [];\n\tif ( arrA.length !== arrB.length ) {\n\t\treturn direction === 'asc'\n\t\t\t? arrA.length - arrB.length\n\t\t\t: arrB.length - arrA.length;\n\t}\n\n\tconst joinedA = arrA.join( ',' );\n\tconst joinedB = arrB.join( ',' );\n\treturn direction === 'asc'\n\t\t? joinedA.localeCompare( joinedB )\n\t\t: joinedB.localeCompare( joinedA );\n}\n\nfunction render( { item, field }: DataViewRenderFieldProps< any > ) {\n\tconst value = field.getValue( { item } ) || [];\n\treturn value.join( ', ' );\n}\n\nconst arrayFieldType: FieldTypeDefinition< any > = {\n\tsort,\n\tisValid: {\n\t\telements: true,\n\t\tcustom: ( item: any, field: NormalizedField< any > ) => {\n\t\t\tconst value = field.getValue( { item } );\n\n\t\t\tif (\n\t\t\t\t! [ undefined, '', null ].includes( value ) &&\n\t\t\t\t! Array.isArray( value )\n\t\t\t) {\n\t\t\t\treturn __( 'Value must be an array.' );\n\t\t\t}\n\n\t\t\t// Only allow strings for now. Can be extended to other types in the future.\n\t\t\tif ( ! value.every( ( v: any ) => typeof v === 'string' ) ) {\n\t\t\t\treturn __( 'Every value must be a string.' );\n\t\t\t}\n\n\t\t\treturn null;\n\t\t},\n\t},\n\tEdit: 'array', // Use array control\n\trender,\n\tenableSorting: true,\n\tfilterBy: {\n\t\tdefaultOperators: [ OPERATOR_IS_ANY, OPERATOR_IS_NONE ],\n\t\tvalidOperators: [\n\t\t\tOPERATOR_IS_ANY,\n\t\t\tOPERATOR_IS_NONE,\n\t\t\tOPERATOR_IS_ALL,\n\t\t\tOPERATOR_IS_NOT_ALL,\n\t\t],\n\t},\n};\n\nexport default arrayFieldType;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAAmB;AAWnB,uBAKO;AAGP,SAAS,KAAM,QAAa,QAAa,WAA2B;AACnE,QAAM,OAAO,MAAM,QAAS,MAAO,IAAI,SAAS,CAAC;AACjD,QAAM,OAAO,MAAM,QAAS,MAAO,IAAI,SAAS,CAAC;AACjD,MAAK,KAAK,WAAW,KAAK,QAAS;AAClC,WAAO,cAAc,QAClB,KAAK,SAAS,KAAK,SACnB,KAAK,SAAS,KAAK;AAAA,EACvB;AAEA,QAAM,UAAU,KAAK,KAAM,GAAI;AAC/B,QAAM,UAAU,KAAK,KAAM,GAAI;AAC/B,SAAO,cAAc,QAClB,QAAQ,cAAe,OAAQ,IAC/B,QAAQ,cAAe,OAAQ;AACnC;AAEA,SAAS,OAAQ,EAAE,MAAM,MAAM,GAAqC;AACnE,QAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE,KAAK,CAAC;AAC7C,SAAO,MAAM,KAAM,IAAK;AACzB;AAEA,MAAM,iBAA6C;AAAA,EAClD;AAAA,EACA,SAAS;AAAA,IACR,UAAU;AAAA,IACV,QAAQ,CAAE,MAAW,UAAmC;AACvD,YAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AAEvC,UACC,CAAE,CAAE,QAAW,IAAI,IAAK,EAAE,SAAU,KAAM,KAC1C,CAAE,MAAM,QAAS,KAAM,GACtB;AACD,mBAAO,gBAAI,yBAA0B;AAAA,MACtC;AAGA,UAAK,CAAE,MAAM,MAAO,CAAE,MAAY,OAAO,MAAM,QAAS,GAAI;AAC3D,mBAAO,gBAAI,+BAAgC;AAAA,MAC5C;AAEA,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EACA,MAAM;AAAA;AAAA,EACN;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,IACT,kBAAkB,CAAE,kCAAiB,iCAAiB;AAAA,IACtD,gBAAgB;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AACD;AAEA,IAAO,gBAAQ;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAAmB;AAWnB,uBAKO;AAGP,SAAS,KAAM,QAAa,QAAa,WAA2B;AACnE,QAAM,OAAO,MAAM,QAAS,MAAO,IAAI,SAAS,CAAC;AACjD,QAAM,OAAO,MAAM,QAAS,MAAO,IAAI,SAAS,CAAC;AACjD,MAAK,KAAK,WAAW,KAAK,QAAS;AAClC,WAAO,cAAc,QAClB,KAAK,SAAS,KAAK,SACnB,KAAK,SAAS,KAAK;AAAA,EACvB;AAEA,QAAM,UAAU,KAAK,KAAM,GAAI;AAC/B,QAAM,UAAU,KAAK,KAAM,GAAI;AAC/B,SAAO,cAAc,QAClB,QAAQ,cAAe,OAAQ,IAC/B,QAAQ,cAAe,OAAQ;AACnC;AAEA,SAAS,OAAQ,EAAE,MAAM,MAAM,GAAqC;AACnE,QAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE,KAAK,CAAC;AAC7C,SAAO,MAAM,KAAM,IAAK;AACzB;AAEA,IAAM,iBAA6C;AAAA,EAClD;AAAA,EACA,SAAS;AAAA,IACR,UAAU;AAAA,IACV,QAAQ,CAAE,MAAW,UAAmC;AACvD,YAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AAEvC,UACC,CAAE,CAAE,QAAW,IAAI,IAAK,EAAE,SAAU,KAAM,KAC1C,CAAE,MAAM,QAAS,KAAM,GACtB;AACD,mBAAO,gBAAI,yBAA0B;AAAA,MACtC;AAGA,UAAK,CAAE,MAAM,MAAO,CAAE,MAAY,OAAO,MAAM,QAAS,GAAI;AAC3D,mBAAO,gBAAI,+BAAgC;AAAA,MAC5C;AAEA,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EACA,MAAM;AAAA;AAAA,EACN;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,IACT,kBAAkB,CAAE,kCAAiB,iCAAiB;AAAA,IACtD,gBAAgB;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AACD;AAEA,IAAO,gBAAQ;",
6
6
  "names": []
7
7
  }
@@ -26,15 +26,17 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // packages/dataviews/src/field-types/boolean.tsx
29
31
  var boolean_exports = {};
30
32
  __export(boolean_exports, {
31
33
  default: () => boolean_default
32
34
  });
33
35
  module.exports = __toCommonJS(boolean_exports);
34
- var import_jsx_runtime = require("react/jsx-runtime");
35
36
  var import_i18n = require("@wordpress/i18n");
36
37
  var import_render_from_elements = __toESM(require("./utils/render-from-elements"));
37
38
  var import_constants = require("../constants");
39
+ var import_jsx_runtime = require("react/jsx-runtime");
38
40
  function sort(a, b, direction) {
39
41
  const boolA = Boolean(a);
40
42
  const boolB = Boolean(b);
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/field-types/boolean.tsx"],
4
4
  "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type {\n\tDataViewRenderFieldProps,\n\tSortDirection,\n\tFieldTypeDefinition,\n\tNormalizedField,\n} from '../types';\nimport RenderFromElements from './utils/render-from-elements';\nimport { OPERATOR_IS, OPERATOR_IS_NOT } from '../constants';\n\nfunction sort( a: any, b: any, direction: SortDirection ) {\n\tconst boolA = Boolean( a );\n\tconst boolB = Boolean( b );\n\n\tif ( boolA === boolB ) {\n\t\treturn 0;\n\t}\n\n\t// In ascending order, false comes before true\n\tif ( direction === 'asc' ) {\n\t\treturn boolA ? 1 : -1;\n\t}\n\n\t// In descending order, true comes before false\n\treturn boolA ? -1 : 1;\n}\n\nexport default {\n\tsort,\n\tisValid: {\n\t\telements: true,\n\t\tcustom: ( item: any, field: NormalizedField< any > ) => {\n\t\t\tconst value = field.getValue( { item } );\n\n\t\t\tif (\n\t\t\t\t! [ undefined, '', null ].includes( value ) &&\n\t\t\t\t! [ true, false ].includes( value )\n\t\t\t) {\n\t\t\t\treturn __( 'Value must be true, false, or undefined' );\n\t\t\t}\n\n\t\t\treturn null;\n\t\t},\n\t},\n\tEdit: 'checkbox',\n\trender: ( { item, field }: DataViewRenderFieldProps< any > ) => {\n\t\tif ( field.hasElements ) {\n\t\t\treturn <RenderFromElements item={ item } field={ field } />;\n\t\t}\n\n\t\tif ( field.getValue( { item } ) === true ) {\n\t\t\treturn __( 'True' );\n\t\t}\n\n\t\tif ( field.getValue( { item } ) === false ) {\n\t\t\treturn __( 'False' );\n\t\t}\n\n\t\treturn null;\n\t},\n\tenableSorting: true,\n\tfilterBy: {\n\t\tdefaultOperators: [ OPERATOR_IS, OPERATOR_IS_NOT ],\n\t\tvalidOperators: [ OPERATOR_IS, OPERATOR_IS_NOT ],\n\t},\n} satisfies FieldTypeDefinition< any >;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAsDU;AAnDV,kBAAmB;AAWnB,kCAA+B;AAC/B,uBAA6C;AAE7C,SAAS,KAAM,GAAQ,GAAQ,WAA2B;AACzD,QAAM,QAAQ,QAAS,CAAE;AACzB,QAAM,QAAQ,QAAS,CAAE;AAEzB,MAAK,UAAU,OAAQ;AACtB,WAAO;AAAA,EACR;AAGA,MAAK,cAAc,OAAQ;AAC1B,WAAO,QAAQ,IAAI;AAAA,EACpB;AAGA,SAAO,QAAQ,KAAK;AACrB;AAEA,IAAO,kBAAQ;AAAA,EACd;AAAA,EACA,SAAS;AAAA,IACR,UAAU;AAAA,IACV,QAAQ,CAAE,MAAW,UAAmC;AACvD,YAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AAEvC,UACC,CAAE,CAAE,QAAW,IAAI,IAAK,EAAE,SAAU,KAAM,KAC1C,CAAE,CAAE,MAAM,KAAM,EAAE,SAAU,KAAM,GACjC;AACD,mBAAO,gBAAI,yCAA0C;AAAA,MACtD;AAEA,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EACA,MAAM;AAAA,EACN,QAAQ,CAAE,EAAE,MAAM,MAAM,MAAwC;AAC/D,QAAK,MAAM,aAAc;AACxB,aAAO,4CAAC,4BAAAA,SAAA,EAAmB,MAAc,OAAgB;AAAA,IAC1D;AAEA,QAAK,MAAM,SAAU,EAAE,KAAK,CAAE,MAAM,MAAO;AAC1C,iBAAO,gBAAI,MAAO;AAAA,IACnB;AAEA,QAAK,MAAM,SAAU,EAAE,KAAK,CAAE,MAAM,OAAQ;AAC3C,iBAAO,gBAAI,OAAQ;AAAA,IACpB;AAEA,WAAO;AAAA,EACR;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,IACT,kBAAkB,CAAE,8BAAa,gCAAgB;AAAA,IACjD,gBAAgB,CAAE,8BAAa,gCAAgB;AAAA,EAChD;AACD;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAAmB;AAWnB,kCAA+B;AAC/B,uBAA6C;AAuCnC;AArCV,SAAS,KAAM,GAAQ,GAAQ,WAA2B;AACzD,QAAM,QAAQ,QAAS,CAAE;AACzB,QAAM,QAAQ,QAAS,CAAE;AAEzB,MAAK,UAAU,OAAQ;AACtB,WAAO;AAAA,EACR;AAGA,MAAK,cAAc,OAAQ;AAC1B,WAAO,QAAQ,IAAI;AAAA,EACpB;AAGA,SAAO,QAAQ,KAAK;AACrB;AAEA,IAAO,kBAAQ;AAAA,EACd;AAAA,EACA,SAAS;AAAA,IACR,UAAU;AAAA,IACV,QAAQ,CAAE,MAAW,UAAmC;AACvD,YAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AAEvC,UACC,CAAE,CAAE,QAAW,IAAI,IAAK,EAAE,SAAU,KAAM,KAC1C,CAAE,CAAE,MAAM,KAAM,EAAE,SAAU,KAAM,GACjC;AACD,mBAAO,gBAAI,yCAA0C;AAAA,MACtD;AAEA,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EACA,MAAM;AAAA,EACN,QAAQ,CAAE,EAAE,MAAM,MAAM,MAAwC;AAC/D,QAAK,MAAM,aAAc;AACxB,aAAO,4CAAC,4BAAAA,SAAA,EAAmB,MAAc,OAAgB;AAAA,IAC1D;AAEA,QAAK,MAAM,SAAU,EAAE,KAAK,CAAE,MAAM,MAAO;AAC1C,iBAAO,gBAAI,MAAO;AAAA,IACnB;AAEA,QAAK,MAAM,SAAU,EAAE,KAAK,CAAE,MAAM,OAAQ;AAC3C,iBAAO,gBAAI,OAAQ;AAAA,IACpB;AAEA,WAAO;AAAA,EACR;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,IACT,kBAAkB,CAAE,8BAAa,gCAAgB;AAAA,IACjD,gBAAgB,CAAE,8BAAa,gCAAgB;AAAA,EAChD;AACD;",
6
6
  "names": ["RenderFromElements"]
7
7
  }
@@ -26,16 +26,18 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // packages/dataviews/src/field-types/color.tsx
29
31
  var color_exports = {};
30
32
  __export(color_exports, {
31
33
  default: () => color_default
32
34
  });
33
35
  module.exports = __toCommonJS(color_exports);
34
- var import_jsx_runtime = require("react/jsx-runtime");
35
36
  var import_colord = require("colord");
36
37
  var import_i18n = require("@wordpress/i18n");
37
38
  var import_render_from_elements = __toESM(require("./utils/render-from-elements"));
38
39
  var import_constants = require("../constants");
40
+ var import_jsx_runtime = require("react/jsx-runtime");
39
41
  function sort(valueA, valueB, direction) {
40
42
  const colorA = (0, import_colord.colord)(valueA);
41
43
  const colorB = (0, import_colord.colord)(valueB);
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/field-types/color.tsx"],
4
4
  "sourcesContent": ["/**\n * External dependencies\n */\nimport { colord } from 'colord';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type {\n\tDataViewRenderFieldProps,\n\tSortDirection,\n\tNormalizedField,\n\tFieldTypeDefinition,\n} from '../types';\nimport RenderFromElements from './utils/render-from-elements';\nimport {\n\tOPERATOR_IS,\n\tOPERATOR_IS_ANY,\n\tOPERATOR_IS_NONE,\n\tOPERATOR_IS_NOT,\n} from '../constants';\n\nfunction sort( valueA: any, valueB: any, direction: SortDirection ) {\n\t// Convert colors to HSL for better sorting\n\tconst colorA = colord( valueA );\n\tconst colorB = colord( valueB );\n\n\tif ( ! colorA.isValid() && ! colorB.isValid() ) {\n\t\treturn 0;\n\t}\n\tif ( ! colorA.isValid() ) {\n\t\treturn direction === 'asc' ? 1 : -1;\n\t}\n\tif ( ! colorB.isValid() ) {\n\t\treturn direction === 'asc' ? -1 : 1;\n\t}\n\n\t// Sort by hue, then saturation, then lightness\n\tconst hslA = colorA.toHsl();\n\tconst hslB = colorB.toHsl();\n\n\tif ( hslA.h !== hslB.h ) {\n\t\treturn direction === 'asc' ? hslA.h - hslB.h : hslB.h - hslA.h;\n\t}\n\tif ( hslA.s !== hslB.s ) {\n\t\treturn direction === 'asc' ? hslA.s - hslB.s : hslB.s - hslA.s;\n\t}\n\treturn direction === 'asc' ? hslA.l - hslB.l : hslB.l - hslA.l;\n}\n\nexport default {\n\tsort,\n\tisValid: {\n\t\telements: true,\n\t\tcustom: ( item: any, field: NormalizedField< any > ) => {\n\t\t\tconst value = field.getValue( { item } );\n\n\t\t\tif (\n\t\t\t\t! [ undefined, '', null ].includes( value ) &&\n\t\t\t\t! colord( value ).isValid()\n\t\t\t) {\n\t\t\t\treturn __( 'Value must be a valid color.' );\n\t\t\t}\n\n\t\t\treturn null;\n\t\t},\n\t},\n\tEdit: 'color',\n\trender: ( { item, field }: DataViewRenderFieldProps< any > ) => {\n\t\tif ( field.hasElements ) {\n\t\t\treturn <RenderFromElements item={ item } field={ field } />;\n\t\t}\n\n\t\tconst value = field.getValue( { item } );\n\n\t\tif ( ! value || ! colord( value ).isValid() ) {\n\t\t\treturn value;\n\t\t}\n\n\t\t// Render color with visual preview\n\t\treturn (\n\t\t\t<div\n\t\t\t\tstyle={ { display: 'flex', alignItems: 'center', gap: '8px' } }\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\twidth: '16px',\n\t\t\t\t\t\theight: '16px',\n\t\t\t\t\t\tborderRadius: '50%',\n\t\t\t\t\t\tbackgroundColor: value,\n\t\t\t\t\t\tborder: '1px solid #ddd',\n\t\t\t\t\t\tflexShrink: 0,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<span>{ value }</span>\n\t\t\t</div>\n\t\t);\n\t},\n\tenableSorting: true,\n\tfilterBy: {\n\t\tdefaultOperators: [ OPERATOR_IS_ANY, OPERATOR_IS_NONE ],\n\t\tvalidOperators: [ OPERATOR_IS, OPERATOR_IS_NOT ],\n\t},\n} satisfies FieldTypeDefinition< any >;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA2EU;AAxEV,oBAAuB;AAKvB,kBAAmB;AAWnB,kCAA+B;AAC/B,uBAKO;AAEP,SAAS,KAAM,QAAa,QAAa,WAA2B;AAEnE,QAAM,aAAS,sBAAQ,MAAO;AAC9B,QAAM,aAAS,sBAAQ,MAAO;AAE9B,MAAK,CAAE,OAAO,QAAQ,KAAK,CAAE,OAAO,QAAQ,GAAI;AAC/C,WAAO;AAAA,EACR;AACA,MAAK,CAAE,OAAO,QAAQ,GAAI;AACzB,WAAO,cAAc,QAAQ,IAAI;AAAA,EAClC;AACA,MAAK,CAAE,OAAO,QAAQ,GAAI;AACzB,WAAO,cAAc,QAAQ,KAAK;AAAA,EACnC;AAGA,QAAM,OAAO,OAAO,MAAM;AAC1B,QAAM,OAAO,OAAO,MAAM;AAE1B,MAAK,KAAK,MAAM,KAAK,GAAI;AACxB,WAAO,cAAc,QAAQ,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK;AAAA,EAC9D;AACA,MAAK,KAAK,MAAM,KAAK,GAAI;AACxB,WAAO,cAAc,QAAQ,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK;AAAA,EAC9D;AACA,SAAO,cAAc,QAAQ,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK;AAC9D;AAEA,IAAO,gBAAQ;AAAA,EACd;AAAA,EACA,SAAS;AAAA,IACR,UAAU;AAAA,IACV,QAAQ,CAAE,MAAW,UAAmC;AACvD,YAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AAEvC,UACC,CAAE,CAAE,QAAW,IAAI,IAAK,EAAE,SAAU,KAAM,KAC1C,KAAE,sBAAQ,KAAM,EAAE,QAAQ,GACzB;AACD,mBAAO,gBAAI,8BAA+B;AAAA,MAC3C;AAEA,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EACA,MAAM;AAAA,EACN,QAAQ,CAAE,EAAE,MAAM,MAAM,MAAwC;AAC/D,QAAK,MAAM,aAAc;AACxB,aAAO,4CAAC,4BAAAA,SAAA,EAAmB,MAAc,OAAgB;AAAA,IAC1D;AAEA,UAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AAEvC,QAAK,CAAE,SAAS,KAAE,sBAAQ,KAAM,EAAE,QAAQ,GAAI;AAC7C,aAAO;AAAA,IACR;AAGA,WACC;AAAA,MAAC;AAAA;AAAA,QACA,OAAQ,EAAE,SAAS,QAAQ,YAAY,UAAU,KAAK,MAAM;AAAA,QAE5D;AAAA;AAAA,YAAC;AAAA;AAAA,cACA,OAAQ;AAAA,gBACP,OAAO;AAAA,gBACP,QAAQ;AAAA,gBACR,cAAc;AAAA,gBACd,iBAAiB;AAAA,gBACjB,QAAQ;AAAA,gBACR,YAAY;AAAA,cACb;AAAA;AAAA,UACD;AAAA,UACA,4CAAC,UAAO,iBAAO;AAAA;AAAA;AAAA,IAChB;AAAA,EAEF;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,IACT,kBAAkB,CAAE,kCAAiB,iCAAiB;AAAA,IACtD,gBAAgB,CAAE,8BAAa,gCAAgB;AAAA,EAChD;AACD;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,oBAAuB;AAKvB,kBAAmB;AAWnB,kCAA+B;AAC/B,uBAKO;AAkDG;AAhDV,SAAS,KAAM,QAAa,QAAa,WAA2B;AAEnE,QAAM,aAAS,sBAAQ,MAAO;AAC9B,QAAM,aAAS,sBAAQ,MAAO;AAE9B,MAAK,CAAE,OAAO,QAAQ,KAAK,CAAE,OAAO,QAAQ,GAAI;AAC/C,WAAO;AAAA,EACR;AACA,MAAK,CAAE,OAAO,QAAQ,GAAI;AACzB,WAAO,cAAc,QAAQ,IAAI;AAAA,EAClC;AACA,MAAK,CAAE,OAAO,QAAQ,GAAI;AACzB,WAAO,cAAc,QAAQ,KAAK;AAAA,EACnC;AAGA,QAAM,OAAO,OAAO,MAAM;AAC1B,QAAM,OAAO,OAAO,MAAM;AAE1B,MAAK,KAAK,MAAM,KAAK,GAAI;AACxB,WAAO,cAAc,QAAQ,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK;AAAA,EAC9D;AACA,MAAK,KAAK,MAAM,KAAK,GAAI;AACxB,WAAO,cAAc,QAAQ,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK;AAAA,EAC9D;AACA,SAAO,cAAc,QAAQ,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK;AAC9D;AAEA,IAAO,gBAAQ;AAAA,EACd;AAAA,EACA,SAAS;AAAA,IACR,UAAU;AAAA,IACV,QAAQ,CAAE,MAAW,UAAmC;AACvD,YAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AAEvC,UACC,CAAE,CAAE,QAAW,IAAI,IAAK,EAAE,SAAU,KAAM,KAC1C,KAAE,sBAAQ,KAAM,EAAE,QAAQ,GACzB;AACD,mBAAO,gBAAI,8BAA+B;AAAA,MAC3C;AAEA,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EACA,MAAM;AAAA,EACN,QAAQ,CAAE,EAAE,MAAM,MAAM,MAAwC;AAC/D,QAAK,MAAM,aAAc;AACxB,aAAO,4CAAC,4BAAAA,SAAA,EAAmB,MAAc,OAAgB;AAAA,IAC1D;AAEA,UAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AAEvC,QAAK,CAAE,SAAS,KAAE,sBAAQ,KAAM,EAAE,QAAQ,GAAI;AAC7C,aAAO;AAAA,IACR;AAGA,WACC;AAAA,MAAC;AAAA;AAAA,QACA,OAAQ,EAAE,SAAS,QAAQ,YAAY,UAAU,KAAK,MAAM;AAAA,QAE5D;AAAA;AAAA,YAAC;AAAA;AAAA,cACA,OAAQ;AAAA,gBACP,OAAO;AAAA,gBACP,QAAQ;AAAA,gBACR,cAAc;AAAA,gBACd,iBAAiB;AAAA,gBACjB,QAAQ;AAAA,gBACR,YAAY;AAAA,cACb;AAAA;AAAA,UACD;AAAA,UACA,4CAAC,UAAO,iBAAO;AAAA;AAAA;AAAA,IAChB;AAAA,EAEF;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,IACT,kBAAkB,CAAE,kCAAiB,iCAAiB;AAAA,IACtD,gBAAgB,CAAE,8BAAa,gCAAgB;AAAA,EAChD;AACD;",
6
6
  "names": ["RenderFromElements"]
7
7
  }
@@ -26,16 +26,18 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // packages/dataviews/src/field-types/date.tsx
29
31
  var date_exports = {};
30
32
  __export(date_exports, {
31
33
  default: () => date_default
32
34
  });
33
35
  module.exports = __toCommonJS(date_exports);
34
- var import_jsx_runtime = require("react/jsx-runtime");
35
36
  var import_date = require("@wordpress/date");
36
37
  var import_render_from_elements = __toESM(require("./utils/render-from-elements"));
37
38
  var import_constants = require("../constants");
38
- const getFormattedDate = (dateToDisplay) => (0, import_date.dateI18n)((0, import_date.getSettings)().formats.date, (0, import_date.getDate)(dateToDisplay));
39
+ var import_jsx_runtime = require("react/jsx-runtime");
40
+ var getFormattedDate = (dateToDisplay) => (0, import_date.dateI18n)((0, import_date.getSettings)().formats.date, (0, import_date.getDate)(dateToDisplay));
39
41
  function sort(a, b, direction) {
40
42
  const timeA = new Date(a).getTime();
41
43
  const timeB = new Date(b).getTime();
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/field-types/date.tsx"],
4
4
  "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { dateI18n, getDate, getSettings } from '@wordpress/date';\n\n/**\n * Internal dependencies\n */\nimport type {\n\tDataViewRenderFieldProps,\n\tSortDirection,\n\tFieldTypeDefinition,\n} from '../types';\nimport RenderFromElements from './utils/render-from-elements';\nimport {\n\tOPERATOR_ON,\n\tOPERATOR_NOT_ON,\n\tOPERATOR_BEFORE,\n\tOPERATOR_AFTER,\n\tOPERATOR_BEFORE_INC,\n\tOPERATOR_AFTER_INC,\n\tOPERATOR_IN_THE_PAST,\n\tOPERATOR_OVER,\n\tOPERATOR_BETWEEN,\n} from '../constants';\n\nconst getFormattedDate = ( dateToDisplay: string | null ) =>\n\tdateI18n( getSettings().formats.date, getDate( dateToDisplay ) );\n\nfunction sort( a: any, b: any, direction: SortDirection ) {\n\tconst timeA = new Date( a ).getTime();\n\tconst timeB = new Date( b ).getTime();\n\n\treturn direction === 'asc' ? timeA - timeB : timeB - timeA;\n}\n\nexport default {\n\tsort,\n\tEdit: 'date',\n\tisValid: {\n\t\telements: true,\n\t\tcustom: () => null,\n\t},\n\trender: ( { item, field }: DataViewRenderFieldProps< any > ) => {\n\t\tif ( field.hasElements ) {\n\t\t\treturn <RenderFromElements item={ item } field={ field } />;\n\t\t}\n\n\t\tconst value = field.getValue( { item } );\n\t\tif ( ! value ) {\n\t\t\treturn '';\n\t\t}\n\n\t\treturn getFormattedDate( value );\n\t},\n\tenableSorting: true,\n\tfilterBy: {\n\t\tdefaultOperators: [\n\t\t\tOPERATOR_ON,\n\t\t\tOPERATOR_NOT_ON,\n\t\t\tOPERATOR_BEFORE,\n\t\t\tOPERATOR_AFTER,\n\t\t\tOPERATOR_BEFORE_INC,\n\t\t\tOPERATOR_AFTER_INC,\n\t\t\tOPERATOR_IN_THE_PAST,\n\t\t\tOPERATOR_OVER,\n\t\t\tOPERATOR_BETWEEN,\n\t\t],\n\t\tvalidOperators: [\n\t\t\tOPERATOR_ON,\n\t\t\tOPERATOR_NOT_ON,\n\t\t\tOPERATOR_BEFORE,\n\t\t\tOPERATOR_AFTER,\n\t\t\tOPERATOR_BEFORE_INC,\n\t\t\tOPERATOR_AFTER_INC,\n\t\t\tOPERATOR_IN_THE_PAST,\n\t\t\tOPERATOR_OVER,\n\t\t\tOPERATOR_BETWEEN,\n\t\t],\n\t},\n} satisfies FieldTypeDefinition< any >;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA6CU;AA1CV,kBAA+C;AAU/C,kCAA+B;AAC/B,uBAUO;AAEP,MAAM,mBAAmB,CAAE,sBAC1B,0BAAU,yBAAY,EAAE,QAAQ,UAAM,qBAAS,aAAc,CAAE;AAEhE,SAAS,KAAM,GAAQ,GAAQ,WAA2B;AACzD,QAAM,QAAQ,IAAI,KAAM,CAAE,EAAE,QAAQ;AACpC,QAAM,QAAQ,IAAI,KAAM,CAAE,EAAE,QAAQ;AAEpC,SAAO,cAAc,QAAQ,QAAQ,QAAQ,QAAQ;AACtD;AAEA,IAAO,eAAQ;AAAA,EACd;AAAA,EACA,MAAM;AAAA,EACN,SAAS;AAAA,IACR,UAAU;AAAA,IACV,QAAQ,MAAM;AAAA,EACf;AAAA,EACA,QAAQ,CAAE,EAAE,MAAM,MAAM,MAAwC;AAC/D,QAAK,MAAM,aAAc;AACxB,aAAO,4CAAC,4BAAAA,SAAA,EAAmB,MAAc,OAAgB;AAAA,IAC1D;AAEA,UAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AACvC,QAAK,CAAE,OAAQ;AACd,aAAO;AAAA,IACR;AAEA,WAAO,iBAAkB,KAAM;AAAA,EAChC;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,IACT,kBAAkB;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,IACA,gBAAgB;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AACD;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAA+C;AAU/C,kCAA+B;AAC/B,uBAUO;AAqBG;AAnBV,IAAM,mBAAmB,CAAE,sBAC1B,0BAAU,yBAAY,EAAE,QAAQ,UAAM,qBAAS,aAAc,CAAE;AAEhE,SAAS,KAAM,GAAQ,GAAQ,WAA2B;AACzD,QAAM,QAAQ,IAAI,KAAM,CAAE,EAAE,QAAQ;AACpC,QAAM,QAAQ,IAAI,KAAM,CAAE,EAAE,QAAQ;AAEpC,SAAO,cAAc,QAAQ,QAAQ,QAAQ,QAAQ;AACtD;AAEA,IAAO,eAAQ;AAAA,EACd;AAAA,EACA,MAAM;AAAA,EACN,SAAS;AAAA,IACR,UAAU;AAAA,IACV,QAAQ,MAAM;AAAA,EACf;AAAA,EACA,QAAQ,CAAE,EAAE,MAAM,MAAM,MAAwC;AAC/D,QAAK,MAAM,aAAc;AACxB,aAAO,4CAAC,4BAAAA,SAAA,EAAmB,MAAc,OAAgB;AAAA,IAC1D;AAEA,UAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AACvC,QAAK,CAAE,OAAQ;AACd,aAAO;AAAA,IACR;AAEA,WAAO,iBAAkB,KAAM;AAAA,EAChC;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,IACT,kBAAkB;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,IACA,gBAAgB;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AACD;",
6
6
  "names": ["RenderFromElements"]
7
7
  }
@@ -26,14 +26,17 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // packages/dataviews/src/field-types/datetime.tsx
29
31
  var datetime_exports = {};
30
32
  __export(datetime_exports, {
31
33
  default: () => datetime_default
32
34
  });
33
35
  module.exports = __toCommonJS(datetime_exports);
34
- var import_jsx_runtime = require("react/jsx-runtime");
35
36
  var import_render_from_elements = __toESM(require("./utils/render-from-elements"));
37
+ var import_parse_date_time = __toESM(require("./utils/parse-date-time"));
36
38
  var import_constants = require("../constants");
39
+ var import_jsx_runtime = require("react/jsx-runtime");
37
40
  function sort(a, b, direction) {
38
41
  const timeA = new Date(a).getTime();
39
42
  const timeB = new Date(b).getTime();
@@ -47,7 +50,19 @@ var datetime_default = {
47
50
  },
48
51
  Edit: "datetime",
49
52
  render: ({ item, field }) => {
50
- return field.hasElements ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_render_from_elements.default, { item, field }) : field.getValue({ item });
53
+ if (field.elements) {
54
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_render_from_elements.default, { item, field });
55
+ }
56
+ const value = field.getValue({ item });
57
+ if (["", void 0, null].includes(value)) {
58
+ return null;
59
+ }
60
+ try {
61
+ const dateValue = (0, import_parse_date_time.default)(value);
62
+ return dateValue?.toLocaleString();
63
+ } catch (error) {
64
+ return null;
65
+ }
51
66
  },
52
67
  enableSorting: true,
53
68
  filterBy: {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/field-types/datetime.tsx"],
4
- "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type {\n\tDataViewRenderFieldProps,\n\tSortDirection,\n\tFieldTypeDefinition,\n} from '../types';\nimport RenderFromElements from './utils/render-from-elements';\nimport {\n\tOPERATOR_ON,\n\tOPERATOR_NOT_ON,\n\tOPERATOR_BEFORE,\n\tOPERATOR_AFTER,\n\tOPERATOR_BEFORE_INC,\n\tOPERATOR_AFTER_INC,\n\tOPERATOR_IN_THE_PAST,\n\tOPERATOR_OVER,\n} from '../constants';\n\nfunction sort( a: any, b: any, direction: SortDirection ) {\n\tconst timeA = new Date( a ).getTime();\n\tconst timeB = new Date( b ).getTime();\n\n\treturn direction === 'asc' ? timeA - timeB : timeB - timeA;\n}\n\nexport default {\n\tsort,\n\tisValid: {\n\t\telements: true,\n\t\tcustom: () => null,\n\t},\n\tEdit: 'datetime',\n\trender: ( { item, field }: DataViewRenderFieldProps< any > ) => {\n\t\treturn field.hasElements ? (\n\t\t\t<RenderFromElements item={ item } field={ field } />\n\t\t) : (\n\t\t\tfield.getValue( { item } )\n\t\t);\n\t},\n\tenableSorting: true,\n\tfilterBy: {\n\t\tdefaultOperators: [\n\t\t\tOPERATOR_ON,\n\t\t\tOPERATOR_NOT_ON,\n\t\t\tOPERATOR_BEFORE,\n\t\t\tOPERATOR_AFTER,\n\t\t\tOPERATOR_BEFORE_INC,\n\t\t\tOPERATOR_AFTER_INC,\n\t\t\tOPERATOR_IN_THE_PAST,\n\t\t\tOPERATOR_OVER,\n\t\t],\n\t\tvalidOperators: [\n\t\t\tOPERATOR_ON,\n\t\t\tOPERATOR_NOT_ON,\n\t\t\tOPERATOR_BEFORE,\n\t\t\tOPERATOR_AFTER,\n\t\t\tOPERATOR_BEFORE_INC,\n\t\t\tOPERATOR_AFTER_INC,\n\t\t\tOPERATOR_IN_THE_PAST,\n\t\t\tOPERATOR_OVER,\n\t\t],\n\t},\n} satisfies FieldTypeDefinition< any >;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAoCG;AA5BH,kCAA+B;AAC/B,uBASO;AAEP,SAAS,KAAM,GAAQ,GAAQ,WAA2B;AACzD,QAAM,QAAQ,IAAI,KAAM,CAAE,EAAE,QAAQ;AACpC,QAAM,QAAQ,IAAI,KAAM,CAAE,EAAE,QAAQ;AAEpC,SAAO,cAAc,QAAQ,QAAQ,QAAQ,QAAQ;AACtD;AAEA,IAAO,mBAAQ;AAAA,EACd;AAAA,EACA,SAAS;AAAA,IACR,UAAU;AAAA,IACV,QAAQ,MAAM;AAAA,EACf;AAAA,EACA,MAAM;AAAA,EACN,QAAQ,CAAE,EAAE,MAAM,MAAM,MAAwC;AAC/D,WAAO,MAAM,cACZ,4CAAC,4BAAAA,SAAA,EAAmB,MAAc,OAAgB,IAElD,MAAM,SAAU,EAAE,KAAK,CAAE;AAAA,EAE3B;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,IACT,kBAAkB;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,IACA,gBAAgB;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AACD;",
6
- "names": ["RenderFromElements"]
4
+ "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type {\n\tDataViewRenderFieldProps,\n\tSortDirection,\n\tFieldTypeDefinition,\n} from '../types';\nimport RenderFromElements from './utils/render-from-elements';\nimport parseDateTime from './utils/parse-date-time';\nimport {\n\tOPERATOR_ON,\n\tOPERATOR_NOT_ON,\n\tOPERATOR_BEFORE,\n\tOPERATOR_AFTER,\n\tOPERATOR_BEFORE_INC,\n\tOPERATOR_AFTER_INC,\n\tOPERATOR_IN_THE_PAST,\n\tOPERATOR_OVER,\n} from '../constants';\n\nfunction sort( a: any, b: any, direction: SortDirection ) {\n\tconst timeA = new Date( a ).getTime();\n\tconst timeB = new Date( b ).getTime();\n\n\treturn direction === 'asc' ? timeA - timeB : timeB - timeA;\n}\n\nexport default {\n\tsort,\n\tisValid: {\n\t\telements: true,\n\t\tcustom: () => null,\n\t},\n\tEdit: 'datetime',\n\trender: ( { item, field }: DataViewRenderFieldProps< any > ) => {\n\t\tif ( field.elements ) {\n\t\t\treturn <RenderFromElements item={ item } field={ field } />;\n\t\t}\n\n\t\tconst value = field.getValue( { item } );\n\t\tif ( [ '', undefined, null ].includes( value ) ) {\n\t\t\treturn null;\n\t\t}\n\n\t\ttry {\n\t\t\tconst dateValue = parseDateTime( value );\n\t\t\treturn dateValue?.toLocaleString();\n\t\t} catch ( error ) {\n\t\t\treturn null;\n\t\t}\n\t},\n\tenableSorting: true,\n\tfilterBy: {\n\t\tdefaultOperators: [\n\t\t\tOPERATOR_ON,\n\t\t\tOPERATOR_NOT_ON,\n\t\t\tOPERATOR_BEFORE,\n\t\t\tOPERATOR_AFTER,\n\t\t\tOPERATOR_BEFORE_INC,\n\t\t\tOPERATOR_AFTER_INC,\n\t\t\tOPERATOR_IN_THE_PAST,\n\t\t\tOPERATOR_OVER,\n\t\t],\n\t\tvalidOperators: [\n\t\t\tOPERATOR_ON,\n\t\t\tOPERATOR_NOT_ON,\n\t\t\tOPERATOR_BEFORE,\n\t\t\tOPERATOR_AFTER,\n\t\t\tOPERATOR_BEFORE_INC,\n\t\t\tOPERATOR_AFTER_INC,\n\t\t\tOPERATOR_IN_THE_PAST,\n\t\t\tOPERATOR_OVER,\n\t\t],\n\t},\n} satisfies FieldTypeDefinition< any >;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,kCAA+B;AAC/B,6BAA0B;AAC1B,uBASO;AAkBG;AAhBV,SAAS,KAAM,GAAQ,GAAQ,WAA2B;AACzD,QAAM,QAAQ,IAAI,KAAM,CAAE,EAAE,QAAQ;AACpC,QAAM,QAAQ,IAAI,KAAM,CAAE,EAAE,QAAQ;AAEpC,SAAO,cAAc,QAAQ,QAAQ,QAAQ,QAAQ;AACtD;AAEA,IAAO,mBAAQ;AAAA,EACd;AAAA,EACA,SAAS;AAAA,IACR,UAAU;AAAA,IACV,QAAQ,MAAM;AAAA,EACf;AAAA,EACA,MAAM;AAAA,EACN,QAAQ,CAAE,EAAE,MAAM,MAAM,MAAwC;AAC/D,QAAK,MAAM,UAAW;AACrB,aAAO,4CAAC,4BAAAA,SAAA,EAAmB,MAAc,OAAgB;AAAA,IAC1D;AAEA,UAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AACvC,QAAK,CAAE,IAAI,QAAW,IAAK,EAAE,SAAU,KAAM,GAAI;AAChD,aAAO;AAAA,IACR;AAEA,QAAI;AACH,YAAM,gBAAY,uBAAAC,SAAe,KAAM;AACvC,aAAO,WAAW,eAAe;AAAA,IAClC,SAAU,OAAQ;AACjB,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,IACT,kBAAkB;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,IACA,gBAAgB;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AACD;",
6
+ "names": ["RenderFromElements", "parseDateTime"]
7
7
  }
@@ -26,19 +26,21 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // packages/dataviews/src/field-types/email.tsx
29
31
  var email_exports = {};
30
32
  __export(email_exports, {
31
33
  default: () => email_default
32
34
  });
33
35
  module.exports = __toCommonJS(email_exports);
34
- var import_jsx_runtime = require("react/jsx-runtime");
35
36
  var import_i18n = require("@wordpress/i18n");
36
37
  var import_render_from_elements = __toESM(require("./utils/render-from-elements"));
37
38
  var import_constants = require("../constants");
39
+ var import_jsx_runtime = require("react/jsx-runtime");
38
40
  function sort(valueA, valueB, direction) {
39
41
  return direction === "asc" ? valueA.localeCompare(valueB) : valueB.localeCompare(valueA);
40
42
  }
41
- const emailRegex = /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
43
+ var emailRegex = /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
42
44
  var email_default = {
43
45
  sort,
44
46
  isValid: {
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/field-types/email.tsx"],
4
4
  "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type {\n\tDataViewRenderFieldProps,\n\tSortDirection,\n\tNormalizedField,\n\tFieldTypeDefinition,\n} from '../types';\nimport RenderFromElements from './utils/render-from-elements';\nimport {\n\tOPERATOR_IS,\n\tOPERATOR_IS_ALL,\n\tOPERATOR_IS_NOT_ALL,\n\tOPERATOR_IS_ANY,\n\tOPERATOR_IS_NONE,\n\tOPERATOR_IS_NOT,\n\tOPERATOR_CONTAINS,\n\tOPERATOR_NOT_CONTAINS,\n\tOPERATOR_STARTS_WITH,\n} from '../constants';\n\nfunction sort( valueA: any, valueB: any, direction: SortDirection ) {\n\treturn direction === 'asc'\n\t\t? valueA.localeCompare( valueB )\n\t\t: valueB.localeCompare( valueA );\n}\n\n// Email validation regex based on HTML5 spec\n// https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address\nconst emailRegex =\n\t/^[a-zA-Z0-9.!#$%&'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;\n\nexport default {\n\tsort,\n\tisValid: {\n\t\telements: true,\n\t\tcustom: ( item: any, field: NormalizedField< any > ) => {\n\t\t\tconst value = field.getValue( { item } );\n\n\t\t\tif (\n\t\t\t\t! [ undefined, '', null ].includes( value ) &&\n\t\t\t\t! emailRegex.test( value )\n\t\t\t) {\n\t\t\t\treturn __( 'Value must be a valid email address.' );\n\t\t\t}\n\n\t\t\treturn null;\n\t\t},\n\t},\n\tEdit: 'email',\n\trender: ( { item, field }: DataViewRenderFieldProps< any > ) => {\n\t\treturn field.hasElements ? (\n\t\t\t<RenderFromElements item={ item } field={ field } />\n\t\t) : (\n\t\t\tfield.getValue( { item } )\n\t\t);\n\t},\n\tenableSorting: true,\n\tfilterBy: {\n\t\tdefaultOperators: [ OPERATOR_IS_ANY, OPERATOR_IS_NONE ],\n\t\tvalidOperators: [\n\t\t\tOPERATOR_IS,\n\t\t\tOPERATOR_IS_NOT,\n\t\t\tOPERATOR_CONTAINS,\n\t\t\tOPERATOR_NOT_CONTAINS,\n\t\t\tOPERATOR_STARTS_WITH,\n\t\t\t// Multiple selection\n\t\t\tOPERATOR_IS_ANY,\n\t\t\tOPERATOR_IS_NONE,\n\t\t\tOPERATOR_IS_ALL,\n\t\t\tOPERATOR_IS_NOT_ALL,\n\t\t],\n\t},\n} satisfies FieldTypeDefinition< any >;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA0DG;AAvDH,kBAAmB;AAWnB,kCAA+B;AAC/B,uBAUO;AAEP,SAAS,KAAM,QAAa,QAAa,WAA2B;AACnE,SAAO,cAAc,QAClB,OAAO,cAAe,MAAO,IAC7B,OAAO,cAAe,MAAO;AACjC;AAIA,MAAM,aACL;AAED,IAAO,gBAAQ;AAAA,EACd;AAAA,EACA,SAAS;AAAA,IACR,UAAU;AAAA,IACV,QAAQ,CAAE,MAAW,UAAmC;AACvD,YAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AAEvC,UACC,CAAE,CAAE,QAAW,IAAI,IAAK,EAAE,SAAU,KAAM,KAC1C,CAAE,WAAW,KAAM,KAAM,GACxB;AACD,mBAAO,gBAAI,sCAAuC;AAAA,MACnD;AAEA,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EACA,MAAM;AAAA,EACN,QAAQ,CAAE,EAAE,MAAM,MAAM,MAAwC;AAC/D,WAAO,MAAM,cACZ,4CAAC,4BAAAA,SAAA,EAAmB,MAAc,OAAgB,IAElD,MAAM,SAAU,EAAE,KAAK,CAAE;AAAA,EAE3B;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,IACT,kBAAkB,CAAE,kCAAiB,iCAAiB;AAAA,IACtD,gBAAgB;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AACD;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAAmB;AAWnB,kCAA+B;AAC/B,uBAUO;AAiCJ;AA/BH,SAAS,KAAM,QAAa,QAAa,WAA2B;AACnE,SAAO,cAAc,QAClB,OAAO,cAAe,MAAO,IAC7B,OAAO,cAAe,MAAO;AACjC;AAIA,IAAM,aACL;AAED,IAAO,gBAAQ;AAAA,EACd;AAAA,EACA,SAAS;AAAA,IACR,UAAU;AAAA,IACV,QAAQ,CAAE,MAAW,UAAmC;AACvD,YAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AAEvC,UACC,CAAE,CAAE,QAAW,IAAI,IAAK,EAAE,SAAU,KAAM,KAC1C,CAAE,WAAW,KAAM,KAAM,GACxB;AACD,mBAAO,gBAAI,sCAAuC;AAAA,MACnD;AAEA,aAAO;AAAA,IACR;AAAA,EACD;AAAA,EACA,MAAM;AAAA,EACN,QAAQ,CAAE,EAAE,MAAM,MAAM,MAAwC;AAC/D,WAAO,MAAM,cACZ,4CAAC,4BAAAA,SAAA,EAAmB,MAAc,OAAgB,IAElD,MAAM,SAAU,EAAE,KAAK,CAAE;AAAA,EAE3B;AAAA,EACA,eAAe;AAAA,EACf,UAAU;AAAA,IACT,kBAAkB,CAAE,kCAAiB,iCAAiB;AAAA,IACtD,gBAAgB;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,MAEA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AACD;",
6
6
  "names": ["RenderFromElements"]
7
7
  }
@@ -26,12 +26,13 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // packages/dataviews/src/field-types/index.tsx
29
31
  var field_types_exports = {};
30
32
  __export(field_types_exports, {
31
33
  default: () => getFieldTypeDefinition
32
34
  });
33
35
  module.exports = __toCommonJS(field_types_exports);
34
- var import_jsx_runtime = require("react/jsx-runtime");
35
36
  var import_email = __toESM(require("./email"));
36
37
  var import_integer = __toESM(require("./integer"));
37
38
  var import_number = __toESM(require("./number"));
@@ -47,6 +48,7 @@ var import_color = __toESM(require("./color"));
47
48
  var import_url = __toESM(require("./url"));
48
49
  var import_render_from_elements = __toESM(require("./utils/render-from-elements"));
49
50
  var import_constants = require("../constants");
51
+ var import_jsx_runtime = require("react/jsx-runtime");
50
52
  function getFieldTypeDefinition(type) {
51
53
  if ("email" === type) {
52
54
  return import_email.default;
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/field-types/index.tsx"],
4
4
  "sourcesContent": ["/**\n * Internal dependencies\n */\nimport type {\n\tDataViewRenderFieldProps,\n\tFieldType,\n\tFieldTypeDefinition,\n\tSortDirection,\n} from '../types';\nimport { default as email } from './email';\nimport { default as integer } from './integer';\nimport { default as number } from './number';\nimport { default as text } from './text';\nimport { default as datetime } from './datetime';\nimport { default as date } from './date';\nimport { default as boolean } from './boolean';\nimport { default as media } from './media';\nimport { default as array } from './array';\nimport { default as password } from './password';\nimport { default as telephone } from './telephone';\nimport { default as color } from './color';\nimport { default as url } from './url';\nimport RenderFromElements from './utils/render-from-elements';\nimport { ALL_OPERATORS, OPERATOR_IS, OPERATOR_IS_NOT } from '../constants';\n\n/**\n *\n * @param {FieldType} type The field type definition to get.\n *\n * @return A field type definition.\n */\nexport default function getFieldTypeDefinition< Item >(\n\ttype?: FieldType\n): FieldTypeDefinition< Item > {\n\tif ( 'email' === type ) {\n\t\treturn email;\n\t}\n\n\tif ( 'integer' === type ) {\n\t\treturn integer;\n\t}\n\n\tif ( 'number' === type ) {\n\t\treturn number;\n\t}\n\n\tif ( 'text' === type ) {\n\t\treturn text;\n\t}\n\n\tif ( 'datetime' === type ) {\n\t\treturn datetime;\n\t}\n\n\tif ( 'date' === type ) {\n\t\treturn date;\n\t}\n\n\tif ( 'boolean' === type ) {\n\t\treturn boolean;\n\t}\n\n\tif ( 'media' === type ) {\n\t\treturn media;\n\t}\n\n\tif ( 'array' === type ) {\n\t\treturn array;\n\t}\n\n\tif ( 'password' === type ) {\n\t\treturn password;\n\t}\n\n\tif ( 'telephone' === type ) {\n\t\treturn telephone;\n\t}\n\n\tif ( 'color' === type ) {\n\t\treturn color;\n\t}\n\n\tif ( 'url' === type ) {\n\t\treturn url;\n\t}\n\n\t// This is a fallback for fields that don't provide a type.\n\t// It can be removed when the field.type is mandatory.\n\treturn {\n\t\tsort: ( a: any, b: any, direction: SortDirection ) => {\n\t\t\tif ( typeof a === 'number' && typeof b === 'number' ) {\n\t\t\t\treturn direction === 'asc' ? a - b : b - a;\n\t\t\t}\n\n\t\t\treturn direction === 'asc'\n\t\t\t\t? a.localeCompare( b )\n\t\t\t\t: b.localeCompare( a );\n\t\t},\n\t\tisValid: {\n\t\t\telements: true,\n\t\t\tcustom: () => null,\n\t\t},\n\t\tEdit: null,\n\t\trender: ( { item, field }: DataViewRenderFieldProps< Item > ) => {\n\t\t\treturn field.hasElements ? (\n\t\t\t\t<RenderFromElements item={ item } field={ field } />\n\t\t\t) : (\n\t\t\t\tfield.getValue( { item } )\n\t\t\t);\n\t\t},\n\t\tenableSorting: true,\n\t\tfilterBy: {\n\t\t\tdefaultOperators: [ OPERATOR_IS, OPERATOR_IS_NOT ],\n\t\t\tvalidOperators: ALL_OPERATORS,\n\t\t},\n\t};\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAyGI;AAhGJ,mBAAiC;AACjC,qBAAmC;AACnC,oBAAkC;AAClC,kBAAgC;AAChC,sBAAoC;AACpC,kBAAgC;AAChC,qBAAmC;AACnC,mBAAiC;AACjC,mBAAiC;AACjC,sBAAoC;AACpC,uBAAqC;AACrC,mBAAiC;AACjC,iBAA+B;AAC/B,kCAA+B;AAC/B,uBAA4D;AAQ7C,SAAR,uBACN,MAC8B;AAC9B,MAAK,YAAY,MAAO;AACvB,WAAO,aAAAA;AAAA,EACR;AAEA,MAAK,cAAc,MAAO;AACzB,WAAO,eAAAC;AAAA,EACR;AAEA,MAAK,aAAa,MAAO;AACxB,WAAO,cAAAC;AAAA,EACR;AAEA,MAAK,WAAW,MAAO;AACtB,WAAO,YAAAC;AAAA,EACR;AAEA,MAAK,eAAe,MAAO;AAC1B,WAAO,gBAAAC;AAAA,EACR;AAEA,MAAK,WAAW,MAAO;AACtB,WAAO,YAAAC;AAAA,EACR;AAEA,MAAK,cAAc,MAAO;AACzB,WAAO,eAAAC;AAAA,EACR;AAEA,MAAK,YAAY,MAAO;AACvB,WAAO,aAAAC;AAAA,EACR;AAEA,MAAK,YAAY,MAAO;AACvB,WAAO,aAAAC;AAAA,EACR;AAEA,MAAK,eAAe,MAAO;AAC1B,WAAO,gBAAAC;AAAA,EACR;AAEA,MAAK,gBAAgB,MAAO;AAC3B,WAAO,iBAAAC;AAAA,EACR;AAEA,MAAK,YAAY,MAAO;AACvB,WAAO,aAAAC;AAAA,EACR;AAEA,MAAK,UAAU,MAAO;AACrB,WAAO,WAAAC;AAAA,EACR;AAIA,SAAO;AAAA,IACN,MAAM,CAAE,GAAQ,GAAQ,cAA8B;AACrD,UAAK,OAAO,MAAM,YAAY,OAAO,MAAM,UAAW;AACrD,eAAO,cAAc,QAAQ,IAAI,IAAI,IAAI;AAAA,MAC1C;AAEA,aAAO,cAAc,QAClB,EAAE,cAAe,CAAE,IACnB,EAAE,cAAe,CAAE;AAAA,IACvB;AAAA,IACA,SAAS;AAAA,MACR,UAAU;AAAA,MACV,QAAQ,MAAM;AAAA,IACf;AAAA,IACA,MAAM;AAAA,IACN,QAAQ,CAAE,EAAE,MAAM,MAAM,MAAyC;AAChE,aAAO,MAAM,cACZ,4CAAC,4BAAAC,SAAA,EAAmB,MAAc,OAAgB,IAElD,MAAM,SAAU,EAAE,KAAK,CAAE;AAAA,IAE3B;AAAA,IACA,eAAe;AAAA,IACf,UAAU;AAAA,MACT,kBAAkB,CAAE,8BAAa,gCAAgB;AAAA,MACjD,gBAAgB;AAAA,IACjB;AAAA,EACD;AACD;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,mBAAiC;AACjC,qBAAmC;AACnC,oBAAkC;AAClC,kBAAgC;AAChC,sBAAoC;AACpC,kBAAgC;AAChC,qBAAmC;AACnC,mBAAiC;AACjC,mBAAiC;AACjC,sBAAoC;AACpC,uBAAqC;AACrC,mBAAiC;AACjC,iBAA+B;AAC/B,kCAA+B;AAC/B,uBAA4D;AAkFxD;AA1EW,SAAR,uBACN,MAC8B;AAC9B,MAAK,YAAY,MAAO;AACvB,WAAO,aAAAA;AAAA,EACR;AAEA,MAAK,cAAc,MAAO;AACzB,WAAO,eAAAC;AAAA,EACR;AAEA,MAAK,aAAa,MAAO;AACxB,WAAO,cAAAC;AAAA,EACR;AAEA,MAAK,WAAW,MAAO;AACtB,WAAO,YAAAC;AAAA,EACR;AAEA,MAAK,eAAe,MAAO;AAC1B,WAAO,gBAAAC;AAAA,EACR;AAEA,MAAK,WAAW,MAAO;AACtB,WAAO,YAAAC;AAAA,EACR;AAEA,MAAK,cAAc,MAAO;AACzB,WAAO,eAAAC;AAAA,EACR;AAEA,MAAK,YAAY,MAAO;AACvB,WAAO,aAAAC;AAAA,EACR;AAEA,MAAK,YAAY,MAAO;AACvB,WAAO,aAAAC;AAAA,EACR;AAEA,MAAK,eAAe,MAAO;AAC1B,WAAO,gBAAAC;AAAA,EACR;AAEA,MAAK,gBAAgB,MAAO;AAC3B,WAAO,iBAAAC;AAAA,EACR;AAEA,MAAK,YAAY,MAAO;AACvB,WAAO,aAAAC;AAAA,EACR;AAEA,MAAK,UAAU,MAAO;AACrB,WAAO,WAAAC;AAAA,EACR;AAIA,SAAO;AAAA,IACN,MAAM,CAAE,GAAQ,GAAQ,cAA8B;AACrD,UAAK,OAAO,MAAM,YAAY,OAAO,MAAM,UAAW;AACrD,eAAO,cAAc,QAAQ,IAAI,IAAI,IAAI;AAAA,MAC1C;AAEA,aAAO,cAAc,QAClB,EAAE,cAAe,CAAE,IACnB,EAAE,cAAe,CAAE;AAAA,IACvB;AAAA,IACA,SAAS;AAAA,MACR,UAAU;AAAA,MACV,QAAQ,MAAM;AAAA,IACf;AAAA,IACA,MAAM;AAAA,IACN,QAAQ,CAAE,EAAE,MAAM,MAAM,MAAyC;AAChE,aAAO,MAAM,cACZ,4CAAC,4BAAAC,SAAA,EAAmB,MAAc,OAAgB,IAElD,MAAM,SAAU,EAAE,KAAK,CAAE;AAAA,IAE3B;AAAA,IACA,eAAe;AAAA,IACf,UAAU;AAAA,MACT,kBAAkB,CAAE,8BAAa,gCAAgB;AAAA,MACjD,gBAAgB;AAAA,IACjB;AAAA,EACD;AACD;",
6
6
  "names": ["email", "integer", "number", "text", "datetime", "date", "boolean", "media", "array", "password", "telephone", "color", "url", "RenderFromElements"]
7
7
  }
@@ -26,15 +26,17 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // packages/dataviews/src/field-types/integer.tsx
29
31
  var integer_exports = {};
30
32
  __export(integer_exports, {
31
33
  default: () => integer_default
32
34
  });
33
35
  module.exports = __toCommonJS(integer_exports);
34
- var import_jsx_runtime = require("react/jsx-runtime");
35
36
  var import_i18n = require("@wordpress/i18n");
36
37
  var import_render_from_elements = __toESM(require("./utils/render-from-elements"));
37
38
  var import_constants = require("../constants");
39
+ var import_jsx_runtime = require("react/jsx-runtime");
38
40
  function sort(a, b, direction) {
39
41
  return direction === "asc" ? a - b : b - a;
40
42
  }