@wordpress/dataviews 3.0.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (274) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/README.md +19 -4
  3. package/build/{dataform.js → components/dataform/index.js} +5 -5
  4. package/build/components/dataform/index.js.map +1 -0
  5. package/build/components/dataviews/index.js +115 -0
  6. package/build/components/dataviews/index.js.map +1 -0
  7. package/build/{bulk-actions.js → components/dataviews-bulk-actions/index.js} +39 -16
  8. package/build/components/dataviews-bulk-actions/index.js.map +1 -0
  9. package/build/{bulk-actions-toolbar.js → components/dataviews-bulk-actions-toolbar/index.js} +36 -19
  10. package/build/components/dataviews-bulk-actions-toolbar/index.js.map +1 -0
  11. package/build/components/dataviews-context/index.js +36 -0
  12. package/build/components/dataviews-context/index.js.map +1 -0
  13. package/build/{add-filter.js → components/dataviews-filters/add-filter.js} +2 -2
  14. package/build/components/dataviews-filters/add-filter.js.map +1 -0
  15. package/build/{filter-summary.js → components/dataviews-filters/filter-summary.js} +9 -9
  16. package/build/components/dataviews-filters/filter-summary.js.map +1 -0
  17. package/build/{filters.js → components/dataviews-filters/index.js} +14 -15
  18. package/build/components/dataviews-filters/index.js.map +1 -0
  19. package/build/components/dataviews-filters/reset-filters.js.map +1 -0
  20. package/build/{search-widget.js → components/dataviews-filters/search-widget.js} +13 -13
  21. package/build/components/dataviews-filters/search-widget.js.map +1 -0
  22. package/build/{item-actions.js → components/dataviews-item-actions/index.js} +2 -2
  23. package/build/components/dataviews-item-actions/index.js.map +1 -0
  24. package/build/components/dataviews-layout/index.js +53 -0
  25. package/build/components/dataviews-layout/index.js.map +1 -0
  26. package/build/{pagination.js → components/dataviews-pagination/index.js} +16 -13
  27. package/build/components/dataviews-pagination/index.js.map +1 -0
  28. package/build/{search.js → components/dataviews-search/index.js} +10 -6
  29. package/build/components/dataviews-search/index.js.map +1 -0
  30. package/build/{single-selection-checkbox.js → components/dataviews-selection-checkbox/index.js} +6 -6
  31. package/build/components/dataviews-selection-checkbox/index.js.map +1 -0
  32. package/build/{view-actions.js → components/dataviews-view-config/index.js} +19 -16
  33. package/build/components/dataviews-view-config/index.js.map +1 -0
  34. package/build/index.js +2 -2
  35. package/build/index.js.map +1 -1
  36. package/build/layouts/grid/density-picker.js +143 -0
  37. package/build/layouts/grid/density-picker.js.map +1 -0
  38. package/build/{view-grid.js → layouts/grid/index.js} +34 -35
  39. package/build/layouts/grid/index.js.map +1 -0
  40. package/build/layouts/index.js +52 -0
  41. package/build/layouts/index.js.map +1 -0
  42. package/build/{view-list.js → layouts/list/index.js} +26 -23
  43. package/build/layouts/list/index.js.map +1 -0
  44. package/build/layouts/table/column-header-menu.js +196 -0
  45. package/build/layouts/table/column-header-menu.js.map +1 -0
  46. package/build/layouts/table/index.js +350 -0
  47. package/build/layouts/table/index.js.map +1 -0
  48. package/build/normalize-fields.js +1 -1
  49. package/build/normalize-fields.js.map +1 -1
  50. package/build/types.js.map +1 -1
  51. package/build-module/{dataform.js → components/dataform/index.js} +5 -5
  52. package/build-module/components/dataform/index.js.map +1 -0
  53. package/build-module/components/dataviews/index.js +108 -0
  54. package/build-module/components/dataviews/index.js.map +1 -0
  55. package/build-module/{bulk-actions.js → components/dataviews-bulk-actions/index.js} +39 -17
  56. package/build-module/components/dataviews-bulk-actions/index.js.map +1 -0
  57. package/build-module/{bulk-actions-toolbar.js → components/dataviews-bulk-actions-toolbar/index.js} +35 -19
  58. package/build-module/components/dataviews-bulk-actions-toolbar/index.js.map +1 -0
  59. package/build-module/components/dataviews-context/index.js +30 -0
  60. package/build-module/components/dataviews-context/index.js.map +1 -0
  61. package/build-module/{add-filter.js → components/dataviews-filters/add-filter.js} +2 -2
  62. package/build-module/components/dataviews-filters/add-filter.js.map +1 -0
  63. package/build-module/{filter-summary.js → components/dataviews-filters/filter-summary.js} +9 -9
  64. package/build-module/components/dataviews-filters/filter-summary.js.map +1 -0
  65. package/build-module/{filters.js → components/dataviews-filters/index.js} +15 -16
  66. package/build-module/components/dataviews-filters/index.js.map +1 -0
  67. package/build-module/components/dataviews-filters/reset-filters.js.map +1 -0
  68. package/build-module/{search-widget.js → components/dataviews-filters/search-widget.js} +13 -13
  69. package/build-module/components/dataviews-filters/search-widget.js.map +1 -0
  70. package/build-module/{item-actions.js → components/dataviews-item-actions/index.js} +2 -2
  71. package/build-module/components/dataviews-item-actions/index.js.map +1 -0
  72. package/build-module/components/dataviews-layout/index.js +45 -0
  73. package/build-module/components/dataviews-layout/index.js.map +1 -0
  74. package/build-module/{pagination.js → components/dataviews-pagination/index.js} +17 -15
  75. package/build-module/components/dataviews-pagination/index.js.map +1 -0
  76. package/build-module/{search.js → components/dataviews-search/index.js} +10 -7
  77. package/build-module/components/dataviews-search/index.js.map +1 -0
  78. package/build-module/{single-selection-checkbox.js → components/dataviews-selection-checkbox/index.js} +5 -5
  79. package/build-module/components/dataviews-selection-checkbox/index.js.map +1 -0
  80. package/build-module/{view-actions.js → components/dataviews-view-config/index.js} +19 -17
  81. package/build-module/components/dataviews-view-config/index.js.map +1 -0
  82. package/build-module/index.js +2 -2
  83. package/build-module/index.js.map +1 -1
  84. package/build-module/layouts/grid/density-picker.js +138 -0
  85. package/build-module/layouts/grid/density-picker.js.map +1 -0
  86. package/build-module/{view-grid.js → layouts/grid/index.js} +31 -32
  87. package/build-module/layouts/grid/index.js.map +1 -0
  88. package/build-module/layouts/index.js +43 -0
  89. package/build-module/layouts/index.js.map +1 -0
  90. package/build-module/{view-list.js → layouts/list/index.js} +24 -21
  91. package/build-module/layouts/list/index.js.map +1 -0
  92. package/build-module/layouts/table/column-header-menu.js +190 -0
  93. package/build-module/layouts/table/column-header-menu.js.map +1 -0
  94. package/build-module/layouts/table/index.js +344 -0
  95. package/build-module/layouts/table/index.js.map +1 -0
  96. package/build-module/normalize-fields.js +1 -1
  97. package/build-module/normalize-fields.js.map +1 -1
  98. package/build-module/types.js.map +1 -1
  99. package/build-style/style-rtl.css +607 -545
  100. package/build-style/style.css +607 -545
  101. package/build-types/{dataform.d.ts → components/dataform/index.d.ts} +2 -2
  102. package/build-types/components/dataform/index.d.ts.map +1 -0
  103. package/build-types/components/dataform/stories/index.story.d.ts +11 -0
  104. package/build-types/components/dataform/stories/index.story.d.ts.map +1 -0
  105. package/build-types/{dataviews.d.ts → components/dataviews/index.d.ts} +9 -7
  106. package/build-types/components/dataviews/index.d.ts.map +1 -0
  107. package/build-types/{stories → components/dataviews/stories}/fixtures.d.ts +7 -19
  108. package/build-types/components/dataviews/stories/fixtures.d.ts.map +1 -0
  109. package/build-types/components/dataviews/stories/index.story.d.ts +46 -0
  110. package/build-types/components/dataviews/stories/index.story.d.ts.map +1 -0
  111. package/build-types/components/dataviews-bulk-actions/index.d.ts +5 -0
  112. package/build-types/components/dataviews-bulk-actions/index.d.ts.map +1 -0
  113. package/build-types/components/dataviews-bulk-actions-toolbar/index.d.ts +2 -0
  114. package/build-types/components/dataviews-bulk-actions-toolbar/index.d.ts.map +1 -0
  115. package/build-types/components/dataviews-context/index.d.ts +26 -0
  116. package/build-types/components/dataviews-context/index.d.ts.map +1 -0
  117. package/build-types/{add-filter.d.ts → components/dataviews-filters/add-filter.d.ts} +1 -2
  118. package/build-types/components/dataviews-filters/add-filter.d.ts.map +1 -0
  119. package/build-types/{filter-summary.d.ts → components/dataviews-filters/filter-summary.d.ts} +1 -1
  120. package/build-types/components/dataviews-filters/filter-summary.d.ts.map +1 -0
  121. package/build-types/components/dataviews-filters/index.d.ts +4 -0
  122. package/build-types/components/dataviews-filters/index.d.ts.map +1 -0
  123. package/build-types/{reset-filters.d.ts → components/dataviews-filters/reset-filters.d.ts} +1 -2
  124. package/build-types/components/dataviews-filters/reset-filters.d.ts.map +1 -0
  125. package/build-types/{search-widget.d.ts → components/dataviews-filters/search-widget.d.ts} +1 -2
  126. package/build-types/components/dataviews-filters/search-widget.d.ts.map +1 -0
  127. package/build-types/{item-actions.d.ts → components/dataviews-item-actions/index.d.ts} +2 -2
  128. package/build-types/components/dataviews-item-actions/index.d.ts.map +1 -0
  129. package/build-types/components/dataviews-layout/index.d.ts +2 -0
  130. package/build-types/components/dataviews-layout/index.d.ts.map +1 -0
  131. package/build-types/components/dataviews-pagination/index.d.ts +4 -0
  132. package/build-types/components/dataviews-pagination/index.d.ts.map +1 -0
  133. package/build-types/components/dataviews-search/index.d.ts +6 -0
  134. package/build-types/components/dataviews-search/index.d.ts.map +1 -0
  135. package/build-types/components/dataviews-selection-checkbox/index.d.ts +16 -0
  136. package/build-types/components/dataviews-selection-checkbox/index.d.ts.map +1 -0
  137. package/build-types/components/dataviews-view-config/index.d.ts +8 -0
  138. package/build-types/components/dataviews-view-config/index.d.ts.map +1 -0
  139. package/build-types/index.d.ts +2 -2
  140. package/build-types/index.d.ts.map +1 -1
  141. package/build-types/layouts/grid/density-picker.d.ts +5 -0
  142. package/build-types/layouts/grid/density-picker.d.ts.map +1 -0
  143. package/build-types/layouts/grid/index.d.ts +3 -0
  144. package/build-types/layouts/grid/index.d.ts.map +1 -0
  145. package/build-types/{layouts.d.ts → layouts/index.d.ts} +6 -5
  146. package/build-types/layouts/index.d.ts.map +1 -0
  147. package/build-types/layouts/list/index.d.ts +3 -0
  148. package/build-types/layouts/list/index.d.ts.map +1 -0
  149. package/build-types/layouts/table/column-header-menu.d.ts +17 -0
  150. package/build-types/layouts/table/column-header-menu.d.ts.map +1 -0
  151. package/build-types/layouts/table/index.d.ts +4 -0
  152. package/build-types/layouts/table/index.d.ts.map +1 -0
  153. package/build-types/types.d.ts +42 -23
  154. package/build-types/types.d.ts.map +1 -1
  155. package/package.json +10 -10
  156. package/src/{dataform.tsx → components/dataform/index.tsx} +5 -5
  157. package/src/components/dataform/stories/index.story.tsx +42 -0
  158. package/src/components/dataviews/index.tsx +149 -0
  159. package/src/{stories → components/dataviews/stories}/fixtures.js +7 -11
  160. package/src/{stories → components/dataviews/stories}/index.story.js +17 -3
  161. package/src/components/dataviews/style.scss +97 -0
  162. package/src/{bulk-actions.tsx → components/dataviews-bulk-actions/index.tsx} +46 -29
  163. package/src/components/dataviews-bulk-actions/style.scss +7 -0
  164. package/src/{bulk-actions-toolbar.tsx → components/dataviews-bulk-actions-toolbar/index.tsx} +42 -30
  165. package/src/components/dataviews-bulk-actions-toolbar/style.scss +45 -0
  166. package/src/components/dataviews-context/index.ts +49 -0
  167. package/src/{add-filter.tsx → components/dataviews-filters/add-filter.tsx} +3 -3
  168. package/src/{filter-summary.tsx → components/dataviews-filters/filter-summary.tsx} +18 -10
  169. package/src/{filters.tsx → components/dataviews-filters/index.tsx} +10 -24
  170. package/src/{reset-filters.tsx → components/dataviews-filters/reset-filters.tsx} +1 -1
  171. package/src/{search-widget.tsx → components/dataviews-filters/search-widget.tsx} +14 -14
  172. package/src/components/dataviews-filters/style.scss +252 -0
  173. package/src/{item-actions.tsx → components/dataviews-item-actions/index.tsx} +2 -2
  174. package/src/components/dataviews-item-actions/style.scss +3 -0
  175. package/src/components/dataviews-layout/index.tsx +51 -0
  176. package/src/{pagination.tsx → components/dataviews-pagination/index.tsx} +13 -21
  177. package/src/components/dataviews-pagination/style.scss +26 -0
  178. package/src/{search.tsx → components/dataviews-search/index.tsx} +5 -10
  179. package/src/{single-selection-checkbox.tsx → components/dataviews-selection-checkbox/index.tsx} +9 -9
  180. package/src/components/dataviews-selection-checkbox/style.scss +14 -0
  181. package/src/{view-actions.tsx → components/dataviews-view-config/index.tsx} +16 -22
  182. package/src/index.ts +2 -2
  183. package/src/layouts/grid/density-picker.tsx +136 -0
  184. package/src/{view-grid.tsx → layouts/grid/index.tsx} +28 -29
  185. package/src/layouts/grid/style.scss +140 -0
  186. package/src/layouts/index.ts +66 -0
  187. package/src/{view-list.tsx → layouts/list/index.tsx} +30 -17
  188. package/src/layouts/list/style.scss +189 -0
  189. package/src/layouts/table/column-header-menu.tsx +268 -0
  190. package/src/layouts/table/index.tsx +471 -0
  191. package/src/layouts/table/style.scss +201 -0
  192. package/src/normalize-fields.ts +1 -1
  193. package/src/style.scss +11 -907
  194. package/src/test/filter-and-sort-data-view.js +1 -1
  195. package/src/types.ts +48 -24
  196. package/tsconfig.tsbuildinfo +1 -1
  197. package/build/add-filter.js.map +0 -1
  198. package/build/bulk-actions-toolbar.js.map +0 -1
  199. package/build/bulk-actions.js.map +0 -1
  200. package/build/dataform.js.map +0 -1
  201. package/build/dataviews.js +0 -125
  202. package/build/dataviews.js.map +0 -1
  203. package/build/filter-summary.js.map +0 -1
  204. package/build/filters.js.map +0 -1
  205. package/build/item-actions.js.map +0 -1
  206. package/build/layouts.js +0 -38
  207. package/build/layouts.js.map +0 -1
  208. package/build/pagination.js.map +0 -1
  209. package/build/reset-filters.js.map +0 -1
  210. package/build/search-widget.js.map +0 -1
  211. package/build/search.js.map +0 -1
  212. package/build/single-selection-checkbox.js.map +0 -1
  213. package/build/view-actions.js.map +0 -1
  214. package/build/view-grid.js.map +0 -1
  215. package/build/view-list.js.map +0 -1
  216. package/build/view-table.js +0 -400
  217. package/build/view-table.js.map +0 -1
  218. package/build-module/add-filter.js.map +0 -1
  219. package/build-module/bulk-actions-toolbar.js.map +0 -1
  220. package/build-module/bulk-actions.js.map +0 -1
  221. package/build-module/dataform.js.map +0 -1
  222. package/build-module/dataviews.js +0 -116
  223. package/build-module/dataviews.js.map +0 -1
  224. package/build-module/filter-summary.js.map +0 -1
  225. package/build-module/filters.js.map +0 -1
  226. package/build-module/item-actions.js.map +0 -1
  227. package/build-module/layouts.js +0 -30
  228. package/build-module/layouts.js.map +0 -1
  229. package/build-module/pagination.js.map +0 -1
  230. package/build-module/reset-filters.js.map +0 -1
  231. package/build-module/search-widget.js.map +0 -1
  232. package/build-module/search.js.map +0 -1
  233. package/build-module/single-selection-checkbox.js.map +0 -1
  234. package/build-module/view-actions.js.map +0 -1
  235. package/build-module/view-grid.js.map +0 -1
  236. package/build-module/view-list.js.map +0 -1
  237. package/build-module/view-table.js +0 -393
  238. package/build-module/view-table.js.map +0 -1
  239. package/build-types/add-filter.d.ts.map +0 -1
  240. package/build-types/bulk-actions-toolbar.d.ts +0 -13
  241. package/build-types/bulk-actions-toolbar.d.ts.map +0 -1
  242. package/build-types/bulk-actions.d.ts +0 -15
  243. package/build-types/bulk-actions.d.ts.map +0 -1
  244. package/build-types/dataform.d.ts.map +0 -1
  245. package/build-types/dataviews.d.ts.map +0 -1
  246. package/build-types/filter-summary.d.ts.map +0 -1
  247. package/build-types/filters.d.ts +0 -13
  248. package/build-types/filters.d.ts.map +0 -1
  249. package/build-types/item-actions.d.ts.map +0 -1
  250. package/build-types/layouts.d.ts.map +0 -1
  251. package/build-types/pagination.d.ts +0 -16
  252. package/build-types/pagination.d.ts.map +0 -1
  253. package/build-types/reset-filters.d.ts.map +0 -1
  254. package/build-types/search-widget.d.ts.map +0 -1
  255. package/build-types/search.d.ts +0 -13
  256. package/build-types/search.d.ts.map +0 -1
  257. package/build-types/single-selection-checkbox.d.ts +0 -17
  258. package/build-types/single-selection-checkbox.d.ts.map +0 -1
  259. package/build-types/stories/fixtures.d.ts.map +0 -1
  260. package/build-types/stories/index.story.d.ts +0 -29
  261. package/build-types/stories/index.story.d.ts.map +0 -1
  262. package/build-types/view-actions.d.ts +0 -12
  263. package/build-types/view-actions.d.ts.map +0 -1
  264. package/build-types/view-grid.d.ts +0 -4
  265. package/build-types/view-grid.d.ts.map +0 -1
  266. package/build-types/view-list.d.ts +0 -4
  267. package/build-types/view-list.d.ts.map +0 -1
  268. package/build-types/view-table.d.ts +0 -5
  269. package/build-types/view-table.d.ts.map +0 -1
  270. package/src/dataviews.tsx +0 -183
  271. package/src/layouts.ts +0 -39
  272. package/src/view-table.tsx +0 -592
  273. /package/build/{reset-filters.js → components/dataviews-filters/reset-filters.js} +0 -0
  274. /package/build-module/{reset-filters.js → components/dataviews-filters/reset-filters.js} +0 -0
@@ -1,29 +0,0 @@
1
- export default meta;
2
- export function Default(props: any): import("react").JSX.Element;
3
- export namespace Default {
4
- namespace args {
5
- export { actions };
6
- export namespace defaultLayouts {
7
- namespace table {
8
- namespace layout {
9
- let primaryField: string;
10
- }
11
- }
12
- namespace grid {
13
- export namespace layout_1 {
14
- export let mediaField: string;
15
- let primaryField_1: string;
16
- export { primaryField_1 as primaryField };
17
- }
18
- export { layout_1 as layout };
19
- }
20
- }
21
- }
22
- }
23
- declare namespace meta {
24
- export let title: string;
25
- export { DataViews as component };
26
- }
27
- import { actions } from './fixtures';
28
- import { DataViews } from '../index';
29
- //# sourceMappingURL=index.story.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../src/stories/index.story.js"],"names":[],"mappings":";AAmBO,iEAeN;;;;;;;;;;;;;;;;;;;;;;;;;wBAzBmD,YAAY;0BADtC,UAAU"}
@@ -1,12 +0,0 @@
1
- /// <reference types="react" />
2
- import type { NormalizedField, View, SupportedLayouts } from './types';
3
- interface ViewActionsProps<Item> {
4
- fields: NormalizedField<Item>[];
5
- view: View;
6
- onChangeView: (view: View) => void;
7
- defaultLayouts?: SupportedLayouts;
8
- }
9
- declare function _ViewActions<Item>({ fields, view, onChangeView, defaultLayouts, }: ViewActionsProps<Item>): import("react").JSX.Element;
10
- declare const ViewActions: typeof _ViewActions;
11
- export default ViewActions;
12
- //# sourceMappingURL=view-actions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"view-actions.d.ts","sourceRoot":"","sources":["../src/view-actions.tsx"],"names":[],"mappings":";AAuBA,OAAO,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAkCvE,UAAU,gBAAgB,CAAE,IAAI;IAC/B,MAAM,EAAE,eAAe,CAAE,IAAI,CAAE,EAAE,CAAC;IAClC,IAAI,EAAE,IAAI,CAAC;IACX,YAAY,EAAE,CAAE,IAAI,EAAE,IAAI,KAAM,IAAI,CAAC;IACrC,cAAc,CAAC,EAAE,gBAAgB,CAAC;CAClC;AA6ND,iBAAS,YAAY,CAAE,IAAI,EAAI,EAC9B,MAAM,EACN,IAAI,EACJ,YAAY,EACZ,cAAc,GACd,EAAE,gBAAgB,CAAE,IAAI,CAAE,+BAwD1B;AAGD,QAAA,MAAM,WAAW,qBAA8C,CAAC;AAEhE,eAAe,WAAW,CAAC"}
@@ -1,4 +0,0 @@
1
- /// <reference types="react" />
2
- import type { ViewGridProps } from './types';
3
- export default function ViewGrid<Item>({ actions, data, fields, getItemId, isLoading, onSelectionChange, selection, view, }: ViewGridProps<Item>): import("react").JSX.Element;
4
- //# sourceMappingURL=view-grid.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"view-grid.d.ts","sourceRoot":"","sources":["../src/view-grid.tsx"],"names":[],"mappings":";AAwBA,OAAO,KAAK,EAA2B,aAAa,EAAE,MAAM,SAAS,CAAC;AAmJtE,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAE,IAAI,EAAI,EACzC,OAAO,EACP,IAAI,EACJ,MAAM,EACN,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,SAAS,EACT,IAAI,GACJ,EAAE,aAAa,CAAE,IAAI,CAAE,+BAuEvB"}
@@ -1,4 +0,0 @@
1
- /// <reference types="react" />
2
- import type { ViewListProps } from './types';
3
- export default function ViewList<Item>(props: ViewListProps<Item>): import("react").JSX.Element;
4
- //# sourceMappingURL=view-list.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"view-list.d.ts","sourceRoot":"","sources":["../src/view-list.tsx"],"names":[],"mappings":";AAmCA,OAAO,KAAK,EAA2B,aAAa,EAAE,MAAM,SAAS,CAAC;AA8QtE,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAE,IAAI,EAAI,KAAK,EAAE,aAAa,CAAE,IAAI,CAAE,+BAyGrE"}
@@ -1,5 +0,0 @@
1
- /// <reference types="react" />
2
- import type { ViewTableProps } from './types';
3
- declare function ViewTable<Item>({ actions, data, fields, getItemId, isLoading, onChangeView, onSelectionChange, selection, setOpenedFilter, view, }: ViewTableProps<Item>): import("react").JSX.Element | undefined;
4
- export default ViewTable;
5
- //# sourceMappingURL=view-table.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"view-table.d.ts","sourceRoot":"","sources":["../src/view-table.tsx"],"names":[],"mappings":";AA8CA,OAAO,KAAK,EAKX,cAAc,EACd,MAAM,SAAS,CAAC;AA0WjB,iBAAS,SAAS,CAAE,IAAI,EAAI,EAC3B,OAAO,EACP,IAAI,EACJ,MAAM,EACN,SAAS,EACT,SAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,eAAe,EACf,IAAI,GACJ,EAAE,cAAc,CAAE,IAAI,CAAE,2CAoKxB;AAED,eAAe,SAAS,CAAC"}
package/src/dataviews.tsx DELETED
@@ -1,183 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import type { ComponentType } from 'react';
5
-
6
- /**
7
- * WordPress dependencies
8
- */
9
- import { __experimentalHStack as HStack } from '@wordpress/components';
10
- import { useMemo, useState } from '@wordpress/element';
11
-
12
- /**
13
- * Internal dependencies
14
- */
15
- import Pagination from './pagination';
16
- import ViewActions from './view-actions';
17
- import Filters from './filters';
18
- import Search from './search';
19
- import { LAYOUT_TABLE, LAYOUT_GRID } from './constants';
20
- import { VIEW_LAYOUTS } from './layouts';
21
- import {
22
- default as BulkActions,
23
- useSomeItemHasAPossibleBulkAction,
24
- } from './bulk-actions';
25
- import { normalizeFields } from './normalize-fields';
26
- import BulkActionsToolbar from './bulk-actions-toolbar';
27
- import type {
28
- Action,
29
- Field,
30
- View,
31
- ViewBaseProps,
32
- SupportedLayouts,
33
- } from './types';
34
- import type { SetSelection, SelectionOrUpdater } from './private-types';
35
-
36
- type ItemWithId = { id: string };
37
-
38
- type DataViewsProps< Item > = {
39
- view: View;
40
- onChangeView: ( view: View ) => void;
41
- fields: Field< Item >[];
42
- search?: boolean;
43
- searchLabel?: string;
44
- actions?: Action< Item >[];
45
- data: Item[];
46
- isLoading?: boolean;
47
- paginationInfo: {
48
- totalItems: number;
49
- totalPages: number;
50
- };
51
- defaultLayouts: SupportedLayouts;
52
- selection?: string[];
53
- setSelection?: SetSelection;
54
- onSelectionChange?: ( items: Item[] ) => void;
55
- } & ( Item extends ItemWithId
56
- ? { getItemId?: ( item: Item ) => string }
57
- : { getItemId: ( item: Item ) => string } );
58
-
59
- const defaultGetItemId = ( item: ItemWithId ) => item.id;
60
-
61
- const defaultOnSelectionChange = () => {};
62
-
63
- export default function DataViews< Item >( {
64
- view,
65
- onChangeView,
66
- fields,
67
- search = true,
68
- searchLabel = undefined,
69
- actions = [],
70
- data,
71
- getItemId = defaultGetItemId,
72
- isLoading = false,
73
- paginationInfo,
74
- defaultLayouts,
75
- selection: selectionProperty,
76
- setSelection: setSelectionProperty,
77
- onSelectionChange = defaultOnSelectionChange,
78
- }: DataViewsProps< Item > ) {
79
- const [ selectionState, setSelectionState ] = useState< string[] >( [] );
80
- const isUncontrolled =
81
- selectionProperty === undefined || setSelectionProperty === undefined;
82
- const selection = isUncontrolled ? selectionState : selectionProperty;
83
- const setSelection = isUncontrolled
84
- ? setSelectionState
85
- : setSelectionProperty;
86
- const [ openedFilter, setOpenedFilter ] = useState< string | null >( null );
87
-
88
- function setSelectionWithChange( value: SelectionOrUpdater ) {
89
- const newValue =
90
- typeof value === 'function' ? value( selection ) : value;
91
- onSelectionChange(
92
- data.filter( ( item ) => newValue.includes( getItemId( item ) ) )
93
- );
94
- return setSelection( value );
95
- }
96
-
97
- const ViewComponent = VIEW_LAYOUTS.find( ( v ) => v.type === view.type )
98
- ?.component as ComponentType< ViewBaseProps< Item > >;
99
- const _fields = useMemo( () => normalizeFields( fields ), [ fields ] );
100
-
101
- const hasPossibleBulkAction = useSomeItemHasAPossibleBulkAction(
102
- actions,
103
- data
104
- );
105
- const _selection = useMemo( () => {
106
- return selection.filter( ( id ) =>
107
- data.some( ( item ) => getItemId( item ) === id )
108
- );
109
- }, [ selection, data, getItemId ] );
110
- return (
111
- <div className="dataviews-wrapper">
112
- <HStack
113
- alignment="top"
114
- justify="start"
115
- className="dataviews-filters__view-actions"
116
- >
117
- <HStack
118
- justify="start"
119
- className="dataviews-filters__container"
120
- wrap
121
- >
122
- { search && (
123
- <Search
124
- label={ searchLabel }
125
- view={ view }
126
- onChangeView={ onChangeView }
127
- />
128
- ) }
129
- <Filters
130
- fields={ _fields }
131
- view={ view }
132
- onChangeView={ onChangeView }
133
- openedFilter={ openedFilter }
134
- setOpenedFilter={ setOpenedFilter }
135
- />
136
- </HStack>
137
- { [ LAYOUT_TABLE, LAYOUT_GRID ].includes( view.type ) &&
138
- hasPossibleBulkAction && (
139
- <BulkActions
140
- actions={ actions }
141
- data={ data }
142
- onSelectionChange={ setSelectionWithChange }
143
- selection={ _selection }
144
- getItemId={ getItemId }
145
- />
146
- ) }
147
- <ViewActions
148
- fields={ _fields }
149
- view={ view }
150
- onChangeView={ onChangeView }
151
- defaultLayouts={ defaultLayouts }
152
- />
153
- </HStack>
154
- <ViewComponent
155
- actions={ actions }
156
- data={ data }
157
- fields={ _fields }
158
- getItemId={ getItemId }
159
- isLoading={ isLoading }
160
- onChangeView={ onChangeView }
161
- onSelectionChange={ setSelectionWithChange }
162
- selection={ _selection }
163
- setOpenedFilter={ setOpenedFilter }
164
- view={ view }
165
- />
166
- <Pagination
167
- view={ view }
168
- onChangeView={ onChangeView }
169
- paginationInfo={ paginationInfo }
170
- />
171
- { [ LAYOUT_TABLE, LAYOUT_GRID ].includes( view.type ) &&
172
- hasPossibleBulkAction && (
173
- <BulkActionsToolbar
174
- data={ data }
175
- actions={ actions }
176
- selection={ _selection }
177
- onSelectionChange={ setSelectionWithChange }
178
- getItemId={ getItemId }
179
- />
180
- ) }
181
- </div>
182
- );
183
- }
package/src/layouts.ts DELETED
@@ -1,39 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { __, isRTL } from '@wordpress/i18n';
5
- import {
6
- blockTable,
7
- category,
8
- formatListBullets,
9
- formatListBulletsRTL,
10
- } from '@wordpress/icons';
11
-
12
- /**
13
- * Internal dependencies
14
- */
15
- import ViewTable from './view-table';
16
- import ViewGrid from './view-grid';
17
- import ViewList from './view-list';
18
- import { LAYOUT_GRID, LAYOUT_LIST, LAYOUT_TABLE } from './constants';
19
-
20
- export const VIEW_LAYOUTS = [
21
- {
22
- type: LAYOUT_TABLE,
23
- label: __( 'Table' ),
24
- component: ViewTable,
25
- icon: blockTable,
26
- },
27
- {
28
- type: LAYOUT_GRID,
29
- label: __( 'Grid' ),
30
- component: ViewGrid,
31
- icon: category,
32
- },
33
- {
34
- type: LAYOUT_LIST,
35
- label: __( 'List' ),
36
- component: ViewList,
37
- icon: isRTL() ? formatListBulletsRTL : formatListBullets,
38
- },
39
- ];