@wordpress/edit-site 5.20.0 → 5.21.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 (231) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/actions/trash-post.js +48 -0
  3. package/build/components/actions/trash-post.js.map +1 -0
  4. package/build/components/add-new-template/add-custom-template-modal-content.js +17 -13
  5. package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  6. package/build/components/block-editor/resize-handle.js +2 -1
  7. package/build/components/block-editor/resize-handle.js.map +1 -1
  8. package/build/components/create-template-part-modal/index.js +10 -6
  9. package/build/components/create-template-part-modal/index.js.map +1 -1
  10. package/build/components/dataviews/dataviews.js +41 -32
  11. package/build/components/dataviews/dataviews.js.map +1 -1
  12. package/build/components/dataviews/field-actions.js +30 -0
  13. package/build/components/dataviews/field-actions.js.map +1 -0
  14. package/build/components/dataviews/filters.js +61 -0
  15. package/build/components/dataviews/filters.js.map +1 -0
  16. package/build/components/dataviews/in-filter.js +51 -0
  17. package/build/components/dataviews/in-filter.js.map +1 -0
  18. package/build/components/dataviews/index.js +0 -7
  19. package/build/components/dataviews/index.js.map +1 -1
  20. package/build/components/dataviews/pagination.js +75 -27
  21. package/build/components/dataviews/pagination.js.map +1 -1
  22. package/build/components/dataviews/text-filter.js +18 -12
  23. package/build/components/dataviews/text-filter.js.map +1 -1
  24. package/build/components/dataviews/view-actions.js +94 -56
  25. package/build/components/dataviews/view-actions.js.map +1 -1
  26. package/build/components/dataviews/view-grid.js +59 -0
  27. package/build/components/dataviews/view-grid.js.map +1 -0
  28. package/build/components/dataviews/view-list.js +283 -0
  29. package/build/components/dataviews/view-list.js.map +1 -0
  30. package/build/components/editor/index.js +2 -1
  31. package/build/components/editor/index.js.map +1 -1
  32. package/build/components/global-styles/font-library-modal/context.js +16 -10
  33. package/build/components/global-styles/font-library-modal/context.js.map +1 -1
  34. package/build/components/global-styles/font-library-modal/font-collection.js +20 -6
  35. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  36. package/build/components/global-styles/screen-block.js +1 -2
  37. package/build/components/global-styles/screen-block.js.map +1 -1
  38. package/build/components/global-styles/screen-root.js +1 -2
  39. package/build/components/global-styles/screen-root.js.map +1 -1
  40. package/build/components/global-styles/ui.js +3 -4
  41. package/build/components/global-styles/ui.js.map +1 -1
  42. package/build/components/layout/index.js +10 -2
  43. package/build/components/layout/index.js.map +1 -1
  44. package/build/components/media/index.js +34 -0
  45. package/build/components/media/index.js.map +1 -0
  46. package/build/components/page-actions/index.js +0 -2
  47. package/build/components/page-actions/index.js.map +1 -1
  48. package/build/components/page-pages/index.js +153 -107
  49. package/build/components/page-pages/index.js.map +1 -1
  50. package/build/components/page-patterns/delete-category-menu-item.js +89 -0
  51. package/build/components/page-patterns/delete-category-menu-item.js.map +1 -0
  52. package/build/components/page-patterns/duplicate-menu-item.js +52 -131
  53. package/build/components/page-patterns/duplicate-menu-item.js.map +1 -1
  54. package/build/components/page-patterns/grid-item.js +1 -0
  55. package/build/components/page-patterns/grid-item.js.map +1 -1
  56. package/build/components/page-patterns/header.js +25 -3
  57. package/build/components/page-patterns/header.js.map +1 -1
  58. package/build/components/page-patterns/rename-category-menu-item.js +49 -0
  59. package/build/components/page-patterns/rename-category-menu-item.js.map +1 -0
  60. package/build/components/page-patterns/rename-menu-item.js +1 -1
  61. package/build/components/page-patterns/rename-menu-item.js.map +1 -1
  62. package/build/components/page-patterns/use-patterns.js +1 -0
  63. package/build/components/page-patterns/use-patterns.js.map +1 -1
  64. package/build/components/pattern-modal/duplicate.js +65 -0
  65. package/build/components/pattern-modal/duplicate.js.map +1 -0
  66. package/build/components/pattern-modal/index.js +24 -0
  67. package/build/components/pattern-modal/index.js.map +1 -0
  68. package/build/components/pattern-modal/rename.js +42 -0
  69. package/build/components/pattern-modal/rename.js.map +1 -0
  70. package/build/components/sidebar-edit-mode/template-panel/last-revision.js +3 -0
  71. package/build/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
  72. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +2 -2
  73. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
  74. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -3
  75. package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
  76. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js +29 -0
  77. package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js.map +1 -0
  78. package/build/components/sidebar-navigation-screen-template/home-template-details.js +12 -1
  79. package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
  80. package/build/hooks/commands/use-common-commands.js +1 -2
  81. package/build/hooks/commands/use-common-commands.js.map +1 -1
  82. package/build/hooks/commands/use-edit-mode-commands.js +49 -0
  83. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  84. package/build/lock-unlock.js +1 -1
  85. package/build/lock-unlock.js.map +1 -1
  86. package/build/store/selectors.js +4 -5
  87. package/build/store/selectors.js.map +1 -1
  88. package/build-module/components/actions/trash-post.js +41 -0
  89. package/build-module/components/actions/trash-post.js.map +1 -0
  90. package/build-module/components/add-new-template/add-custom-template-modal-content.js +16 -12
  91. package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
  92. package/build-module/components/block-editor/resize-handle.js +2 -1
  93. package/build-module/components/block-editor/resize-handle.js.map +1 -1
  94. package/build-module/components/create-template-part-modal/index.js +10 -6
  95. package/build-module/components/create-template-part-modal/index.js.map +1 -1
  96. package/build-module/components/dataviews/dataviews.js +40 -31
  97. package/build-module/components/dataviews/dataviews.js.map +1 -1
  98. package/build-module/components/dataviews/field-actions.js +22 -0
  99. package/build-module/components/dataviews/field-actions.js.map +1 -0
  100. package/build-module/components/dataviews/filters.js +53 -0
  101. package/build-module/components/dataviews/filters.js.map +1 -0
  102. package/build-module/components/dataviews/in-filter.js +43 -0
  103. package/build-module/components/dataviews/in-filter.js.map +1 -0
  104. package/build-module/components/dataviews/index.js +0 -1
  105. package/build-module/components/dataviews/index.js.map +1 -1
  106. package/build-module/components/dataviews/pagination.js +74 -28
  107. package/build-module/components/dataviews/pagination.js.map +1 -1
  108. package/build-module/components/dataviews/text-filter.js +19 -13
  109. package/build-module/components/dataviews/text-filter.js.map +1 -1
  110. package/build-module/components/dataviews/view-actions.js +95 -54
  111. package/build-module/components/dataviews/view-actions.js.map +1 -1
  112. package/build-module/components/dataviews/view-grid.js +51 -0
  113. package/build-module/components/dataviews/view-grid.js.map +1 -0
  114. package/build-module/components/dataviews/view-list.js +274 -0
  115. package/build-module/components/dataviews/view-list.js.map +1 -0
  116. package/build-module/components/editor/index.js +2 -1
  117. package/build-module/components/editor/index.js.map +1 -1
  118. package/build-module/components/global-styles/font-library-modal/context.js +16 -10
  119. package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
  120. package/build-module/components/global-styles/font-library-modal/font-collection.js +20 -6
  121. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  122. package/build-module/components/global-styles/screen-block.js +1 -2
  123. package/build-module/components/global-styles/screen-block.js.map +1 -1
  124. package/build-module/components/global-styles/screen-root.js +1 -2
  125. package/build-module/components/global-styles/screen-root.js.map +1 -1
  126. package/build-module/components/global-styles/ui.js +3 -4
  127. package/build-module/components/global-styles/ui.js.map +1 -1
  128. package/build-module/components/layout/index.js +11 -3
  129. package/build-module/components/layout/index.js.map +1 -1
  130. package/build-module/components/media/index.js +26 -0
  131. package/build-module/components/media/index.js.map +1 -0
  132. package/build-module/components/page-actions/index.js +0 -2
  133. package/build-module/components/page-actions/index.js.map +1 -1
  134. package/build-module/components/page-pages/index.js +156 -110
  135. package/build-module/components/page-pages/index.js.map +1 -1
  136. package/build-module/components/page-patterns/delete-category-menu-item.js +82 -0
  137. package/build-module/components/page-patterns/delete-category-menu-item.js.map +1 -0
  138. package/build-module/components/page-patterns/duplicate-menu-item.js +54 -133
  139. package/build-module/components/page-patterns/duplicate-menu-item.js.map +1 -1
  140. package/build-module/components/page-patterns/grid-item.js +1 -0
  141. package/build-module/components/page-patterns/grid-item.js.map +1 -1
  142. package/build-module/components/page-patterns/header.js +26 -4
  143. package/build-module/components/page-patterns/header.js.map +1 -1
  144. package/build-module/components/page-patterns/rename-category-menu-item.js +42 -0
  145. package/build-module/components/page-patterns/rename-category-menu-item.js.map +1 -0
  146. package/build-module/components/page-patterns/rename-menu-item.js +1 -1
  147. package/build-module/components/page-patterns/rename-menu-item.js.map +1 -1
  148. package/build-module/components/page-patterns/use-patterns.js +1 -0
  149. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  150. package/build-module/components/pattern-modal/duplicate.js +57 -0
  151. package/build-module/components/pattern-modal/duplicate.js.map +1 -0
  152. package/build-module/components/pattern-modal/index.js +14 -0
  153. package/build-module/components/pattern-modal/index.js.map +1 -0
  154. package/build-module/components/pattern-modal/rename.js +34 -0
  155. package/build-module/components/pattern-modal/rename.js.map +1 -0
  156. package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js +3 -0
  157. package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
  158. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +2 -2
  159. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
  160. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -3
  161. package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
  162. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js +22 -0
  163. package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js.map +1 -0
  164. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js +12 -1
  165. package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
  166. package/build-module/hooks/commands/use-common-commands.js +1 -2
  167. package/build-module/hooks/commands/use-common-commands.js.map +1 -1
  168. package/build-module/hooks/commands/use-edit-mode-commands.js +50 -1
  169. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  170. package/build-module/lock-unlock.js +1 -1
  171. package/build-module/lock-unlock.js.map +1 -1
  172. package/build-module/store/selectors.js +4 -5
  173. package/build-module/store/selectors.js.map +1 -1
  174. package/build-style/style-rtl.css +42 -9
  175. package/build-style/style.css +42 -9
  176. package/package.json +40 -40
  177. package/src/components/actions/trash-post.js +55 -0
  178. package/src/components/add-new-template/add-custom-template-modal-content.js +22 -17
  179. package/src/components/block-editor/resize-handle.js +1 -0
  180. package/src/components/create-template-part-modal/index.js +9 -5
  181. package/src/components/dataviews/README.md +107 -0
  182. package/src/components/dataviews/dataviews.js +44 -33
  183. package/src/components/dataviews/field-actions.js +28 -0
  184. package/src/components/dataviews/filters.js +57 -0
  185. package/src/components/dataviews/in-filter.js +47 -0
  186. package/src/components/dataviews/index.js +0 -1
  187. package/src/components/dataviews/pagination.js +71 -29
  188. package/src/components/dataviews/style.scss +11 -1
  189. package/src/components/dataviews/text-filter.js +19 -15
  190. package/src/components/dataviews/view-actions.js +108 -63
  191. package/src/components/dataviews/view-grid.js +60 -0
  192. package/src/components/dataviews/view-list.js +348 -0
  193. package/src/components/editor/index.js +2 -0
  194. package/src/components/global-styles/font-library-modal/context.js +17 -11
  195. package/src/components/global-styles/font-library-modal/font-collection.js +18 -10
  196. package/src/components/global-styles/screen-block.js +1 -2
  197. package/src/components/global-styles/screen-root.js +1 -2
  198. package/src/components/global-styles/style.scss +16 -4
  199. package/src/components/global-styles/ui.js +1 -2
  200. package/src/components/layout/index.js +12 -4
  201. package/src/components/media/index.js +25 -0
  202. package/src/components/page-actions/index.js +1 -7
  203. package/src/components/page-pages/index.js +156 -108
  204. package/src/components/page-pages/style.scss +3 -0
  205. package/src/components/page-patterns/delete-category-menu-item.js +104 -0
  206. package/src/components/page-patterns/duplicate-menu-item.js +68 -181
  207. package/src/components/page-patterns/grid-item.js +1 -0
  208. package/src/components/page-patterns/header.js +42 -6
  209. package/src/components/page-patterns/rename-category-menu-item.js +45 -0
  210. package/src/components/page-patterns/rename-menu-item.js +2 -2
  211. package/src/components/page-patterns/style.scss +8 -0
  212. package/src/components/page-patterns/use-patterns.js +5 -0
  213. package/src/components/pattern-modal/duplicate.js +53 -0
  214. package/src/components/pattern-modal/index.js +19 -0
  215. package/src/components/pattern-modal/rename.js +29 -0
  216. package/src/components/sidebar-edit-mode/template-panel/last-revision.js +4 -0
  217. package/src/components/sidebar-navigation-screen/style.scss +17 -5
  218. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +2 -7
  219. package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -8
  220. package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js +32 -0
  221. package/src/components/sidebar-navigation-screen-template/home-template-details.js +21 -7
  222. package/src/hooks/commands/use-common-commands.js +1 -2
  223. package/src/hooks/commands/use-edit-mode-commands.js +41 -0
  224. package/src/lock-unlock.js +1 -1
  225. package/src/store/selectors.js +9 -10
  226. package/src/style.scss +1 -0
  227. package/build/components/dataviews/list-view.js +0 -89
  228. package/build/components/dataviews/list-view.js.map +0 -1
  229. package/build-module/components/dataviews/list-view.js +0 -80
  230. package/build-module/components/dataviews/list-view.js.map +0 -1
  231. package/src/components/dataviews/list-view.js +0 -106
@@ -0,0 +1,32 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { useSelect } from '@wordpress/data';
5
+ import { store as coreStore } from '@wordpress/core-data';
6
+
7
+ /**
8
+ * Internal dependencies
9
+ */
10
+ import { NAVIGATION_POST_TYPE } from '../../utils/constants';
11
+
12
+ export default function useNavigationMenuTitle( id ) {
13
+ return useSelect(
14
+ ( select ) => {
15
+ if ( ! id ) {
16
+ return undefined;
17
+ }
18
+
19
+ const editedRecord = select( coreStore ).getEditedEntityRecord(
20
+ 'postType',
21
+ NAVIGATION_POST_TYPE,
22
+ id
23
+ );
24
+
25
+ // Do not display a 'trashed' navigation menu.
26
+ return editedRecord.status === 'trash'
27
+ ? undefined
28
+ : editedRecord.title;
29
+ },
30
+ [ id ]
31
+ );
32
+ }
@@ -116,14 +116,28 @@ export default function HomeTemplateDetails() {
116
116
  * which contains the template icon and fallback labels
117
117
  */
118
118
  const templateAreas = useMemo( () => {
119
+ // Keep track of template part IDs that have already been added to the array.
120
+ const templatePartIds = new Set();
121
+ const filterOutDuplicateTemplateParts = ( currentTemplatePart ) => {
122
+ // If the template part has already been added to the array, skip it.
123
+ if ( templatePartIds.has( currentTemplatePart.templatePart.id ) ) {
124
+ return;
125
+ }
126
+ // Add to the array of template part IDs.
127
+ templatePartIds.add( currentTemplatePart.templatePart.id );
128
+ return currentTemplatePart;
129
+ };
130
+
119
131
  return currentTemplateParts.length && templatePartAreas
120
- ? currentTemplateParts.map( ( { templatePart, block } ) => ( {
121
- ...templatePartAreas?.find(
122
- ( { area } ) => area === templatePart?.area
123
- ),
124
- ...templatePart,
125
- clientId: block.clientId,
126
- } ) )
132
+ ? currentTemplateParts
133
+ .filter( filterOutDuplicateTemplateParts )
134
+ .map( ( { templatePart, block } ) => ( {
135
+ ...templatePartAreas?.find(
136
+ ( { area } ) => area === templatePart?.area
137
+ ),
138
+ ...templatePart,
139
+ clientId: block.clientId,
140
+ } ) )
127
141
  : [];
128
142
  }, [ currentTemplateParts, templatePartAreas ] );
129
143
 
@@ -190,8 +190,7 @@ function useGlobalStylesOpenCssCommands() {
190
190
  : undefined;
191
191
 
192
192
  return {
193
- canEditCSS:
194
- !! globalStyles?._links?.[ 'wp:action-edit-css' ] ?? false,
193
+ canEditCSS: !! globalStyles?._links?.[ 'wp:action-edit-css' ],
195
194
  };
196
195
  }, [] );
197
196
  const { getCanvasMode } = unlock( useSelect( editSiteStore ) );
@@ -15,6 +15,7 @@ import {
15
15
  code,
16
16
  keyboard,
17
17
  listView,
18
+ symbol,
18
19
  } from '@wordpress/icons';
19
20
  import { useCommandLoader } from '@wordpress/commands';
20
21
  import { decodeEntities } from '@wordpress/html-entities';
@@ -32,6 +33,7 @@ import isTemplateRemovable from '../../utils/is-template-removable';
32
33
  import isTemplateRevertable from '../../utils/is-template-revertable';
33
34
  import { KEYBOARD_SHORTCUT_HELP_MODAL_NAME } from '../../components/keyboard-shortcut-help-modal';
34
35
  import { PREFERENCES_MODAL_NAME } from '../../components/preferences-modal';
36
+ import { PATTERN_MODALS } from '../../components/pattern-modal';
35
37
  import { unlock } from '../../lock-unlock';
36
38
  import { TEMPLATE_POST_TYPE } from '../../utils/constants';
37
39
 
@@ -359,6 +361,40 @@ function useEditUICommands() {
359
361
  };
360
362
  }
361
363
 
364
+ function usePatternCommands() {
365
+ const { isLoaded, record: pattern } = useEditedEntityRecord();
366
+ const { openModal } = useDispatch( interfaceStore );
367
+
368
+ if ( ! isLoaded ) {
369
+ return { isLoading: true, commands: [] };
370
+ }
371
+
372
+ const commands = [];
373
+
374
+ if ( pattern?.type === 'wp_block' ) {
375
+ commands.push( {
376
+ name: 'core/rename-pattern',
377
+ label: __( 'Rename pattern' ),
378
+ icon: symbol,
379
+ callback: ( { close } ) => {
380
+ openModal( PATTERN_MODALS.rename );
381
+ close();
382
+ },
383
+ } );
384
+ commands.push( {
385
+ name: 'core/duplicate-pattern',
386
+ label: __( 'Duplicate pattern' ),
387
+ icon: symbol,
388
+ callback: ( { close } ) => {
389
+ openModal( PATTERN_MODALS.duplicate );
390
+ close();
391
+ },
392
+ } );
393
+ }
394
+
395
+ return { isLoading: false, commands };
396
+ }
397
+
362
398
  export function useEditModeCommands() {
363
399
  useCommandLoader( {
364
400
  name: 'core/exit-code-editor',
@@ -377,6 +413,11 @@ export function useEditModeCommands() {
377
413
  hook: useManipulateDocumentCommands,
378
414
  } );
379
415
 
416
+ useCommandLoader( {
417
+ name: 'core/edit-site/patterns',
418
+ hook: usePatternCommands,
419
+ } );
420
+
380
421
  useCommandLoader( {
381
422
  name: 'core/edit-site/edit-ui',
382
423
  hook: useEditUICommands,
@@ -5,6 +5,6 @@ import { __dangerousOptInToUnstableAPIsOnlyForCoreModules } from '@wordpress/pri
5
5
 
6
6
  export const { lock, unlock } =
7
7
  __dangerousOptInToUnstableAPIsOnlyForCoreModules(
8
- 'I know using unstable features means my plugin or theme will inevitably break on the next WordPress release.',
8
+ 'I know using unstable features means my theme or plugin will inevitably break in the next version of WordPress.',
9
9
  '@wordpress/edit-site'
10
10
  );
@@ -292,22 +292,21 @@ export function isSaveViewOpened( state ) {
292
292
  * @return {Array} Template parts and their blocks in an array.
293
293
  */
294
294
  export const getCurrentTemplateTemplateParts = createRegistrySelector(
295
- ( select ) => ( state ) => {
296
- const templateType = getEditedPostType( state );
297
- const templateId = getEditedPostId( state );
298
- const template = select( coreDataStore ).getEditedEntityRecord(
299
- 'postType',
300
- templateType,
301
- templateId
302
- );
303
-
295
+ ( select ) => () => {
304
296
  const templateParts = select( coreDataStore ).getEntityRecords(
305
297
  'postType',
306
298
  TEMPLATE_PART_POST_TYPE,
307
299
  { per_page: -1 }
308
300
  );
309
301
 
310
- return getFilteredTemplatePartBlocks( template.blocks, templateParts );
302
+ const clientIds =
303
+ select( blockEditorStore ).__experimentalGetGlobalBlocksByName(
304
+ 'core/template-part'
305
+ );
306
+ const blocks =
307
+ select( blockEditorStore ).getBlocksByClientId( clientIds );
308
+
309
+ return getFilteredTemplatePartBlocks( blocks, templateParts );
311
310
  }
312
311
  );
313
312
 
package/src/style.scss CHANGED
@@ -11,6 +11,7 @@
11
11
  @import "./components/header-edit-mode/document-actions/style.scss";
12
12
  @import "./components/list/style.scss";
13
13
  @import "./components/page/style.scss";
14
+ @import "./components/page-pages/style.scss";
14
15
  @import "./components/page-patterns/style.scss";
15
16
  @import "./components/table/style.scss";
16
17
  @import "./components/sidebar-edit-mode/style.scss";
@@ -1,89 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _react = require("react");
9
- var _classnames = _interopRequireDefault(require("classnames"));
10
- var _reactTable = require("@tanstack/react-table");
11
- var _i18n = require("@wordpress/i18n");
12
- var _icons = require("@wordpress/icons");
13
- var _components = require("@wordpress/components");
14
- var _element = require("@wordpress/element");
15
- /**
16
- * External dependencies
17
- */
18
-
19
- /**
20
- * WordPress dependencies
21
- */
22
-
23
- const sortIcons = {
24
- asc: _icons.chevronUp,
25
- desc: _icons.chevronDown
26
- };
27
- function Header({
28
- header
29
- }) {
30
- if (header.isPlaceholder) {
31
- return null;
32
- }
33
- const text = (0, _reactTable.flexRender)(header.column.columnDef.header, header.getContext());
34
- if (!header.column.getCanSort()) {
35
- return text;
36
- }
37
- const sortDirection = header.column.getIsSorted();
38
- return (0, _react.createElement)(_components.Button, {
39
- onClick: header.column.getToggleSortingHandler(),
40
- icon: sortIcons[sortDirection],
41
- iconPosition: "right",
42
- text: text,
43
- style: {
44
- padding: 0
45
- }
46
- });
47
- }
48
- function ListView({
49
- dataView,
50
- className,
51
- isLoading = false
52
- }, ref) {
53
- const {
54
- rows
55
- } = dataView.getRowModel();
56
- const hasRows = !!rows?.length;
57
- if (isLoading) {
58
- // TODO:Add spinner or progress bar..
59
- return (0, _react.createElement)("h3", null, (0, _i18n.__)('Loading'));
60
- }
61
- return (0, _react.createElement)("div", {
62
- className: "dataviews-list-view-wrapper"
63
- }, hasRows && (0, _react.createElement)("table", {
64
- ref: ref,
65
- className: (0, _classnames.default)('dataviews-list-view', className)
66
- }, (0, _react.createElement)("thead", null, dataView.getHeaderGroups().map(headerGroup => (0, _react.createElement)("tr", {
67
- key: headerGroup.id
68
- }, headerGroup.headers.map(header => (0, _react.createElement)("th", {
69
- key: header.id,
70
- colSpan: header.colSpan,
71
- style: {
72
- width: header.column.columnDef.width || undefined,
73
- maxWidth: header.column.columnDef.maxWidth || undefined
74
- }
75
- }, (0, _react.createElement)(Header, {
76
- header: header
77
- })))))), (0, _react.createElement)("tbody", null, rows.map(row => (0, _react.createElement)("tr", {
78
- key: row.id
79
- }, row.getVisibleCells().map(cell => (0, _react.createElement)("td", {
80
- key: cell.id,
81
- style: {
82
- width: cell.column.columnDef.width || undefined,
83
- maxWidth: cell.column.columnDef.maxWidth || undefined
84
- }
85
- }, (0, _reactTable.flexRender)(cell.column.columnDef.cell, cell.getContext()))))))), !hasRows && (0, _react.createElement)("p", null, (0, _i18n.__)('no results')));
86
- }
87
- var _default = (0, _element.forwardRef)(ListView);
88
- exports.default = _default;
89
- //# sourceMappingURL=list-view.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_reactTable","_i18n","_icons","_components","_element","sortIcons","asc","chevronUp","desc","chevronDown","Header","header","isPlaceholder","text","flexRender","column","columnDef","getContext","getCanSort","sortDirection","getIsSorted","_react","createElement","Button","onClick","getToggleSortingHandler","icon","iconPosition","style","padding","ListView","dataView","className","isLoading","ref","rows","getRowModel","hasRows","length","__","classnames","getHeaderGroups","map","headerGroup","key","id","headers","colSpan","width","undefined","maxWidth","row","getVisibleCells","cell","_default","forwardRef","exports","default"],"sources":["@wordpress/edit-site/src/components/dataviews/list-view.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { flexRender } from '@tanstack/react-table';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { chevronDown, chevronUp } from '@wordpress/icons';\nimport { Button } from '@wordpress/components';\nimport { forwardRef } from '@wordpress/element';\n\nconst sortIcons = { asc: chevronUp, desc: chevronDown };\nfunction Header( { header } ) {\n\tif ( header.isPlaceholder ) {\n\t\treturn null;\n\t}\n\tconst text = flexRender(\n\t\theader.column.columnDef.header,\n\t\theader.getContext()\n\t);\n\tif ( ! header.column.getCanSort() ) {\n\t\treturn text;\n\t}\n\tconst sortDirection = header.column.getIsSorted();\n\treturn (\n\t\t<Button\n\t\t\tonClick={ header.column.getToggleSortingHandler() }\n\t\t\ticon={ sortIcons[ sortDirection ] }\n\t\t\ticonPosition=\"right\"\n\t\t\ttext={ text }\n\t\t\tstyle={ { padding: 0 } }\n\t\t/>\n\t);\n}\n\nfunction ListView( { dataView, className, isLoading = false }, ref ) {\n\tconst { rows } = dataView.getRowModel();\n\tconst hasRows = !! rows?.length;\n\tif ( isLoading ) {\n\t\t// TODO:Add spinner or progress bar..\n\t\treturn <h3>{ __( 'Loading' ) }</h3>;\n\t}\n\treturn (\n\t\t<div className=\"dataviews-list-view-wrapper\">\n\t\t\t{ hasRows && (\n\t\t\t\t<table\n\t\t\t\t\tref={ ref }\n\t\t\t\t\tclassName={ classnames( 'dataviews-list-view', className ) }\n\t\t\t\t>\n\t\t\t\t\t<thead>\n\t\t\t\t\t\t{ dataView.getHeaderGroups().map( ( headerGroup ) => (\n\t\t\t\t\t\t\t<tr key={ headerGroup.id }>\n\t\t\t\t\t\t\t\t{ headerGroup.headers.map( ( header ) => (\n\t\t\t\t\t\t\t\t\t<th\n\t\t\t\t\t\t\t\t\t\tkey={ header.id }\n\t\t\t\t\t\t\t\t\t\tcolSpan={ header.colSpan }\n\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.width ||\n\t\t\t\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\t\t\tmaxWidth:\n\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef\n\t\t\t\t\t\t\t\t\t\t\t\t\t.maxWidth || undefined,\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Header header={ header } />\n\t\t\t\t\t\t\t\t\t</th>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</thead>\n\t\t\t\t\t<tbody>\n\t\t\t\t\t\t{ rows.map( ( row ) => (\n\t\t\t\t\t\t\t<tr key={ row.id }>\n\t\t\t\t\t\t\t\t{ row.getVisibleCells().map( ( cell ) => (\n\t\t\t\t\t\t\t\t\t<td\n\t\t\t\t\t\t\t\t\t\tkey={ cell.id }\n\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t\t\tcell.column.columnDef.width ||\n\t\t\t\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\t\t\tmaxWidth:\n\t\t\t\t\t\t\t\t\t\t\t\tcell.column.columnDef\n\t\t\t\t\t\t\t\t\t\t\t\t\t.maxWidth || undefined,\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ flexRender(\n\t\t\t\t\t\t\t\t\t\t\tcell.column.columnDef.cell,\n\t\t\t\t\t\t\t\t\t\t\tcell.getContext()\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) ) }\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</tbody>\n\t\t\t\t</table>\n\t\t\t) }\n\t\t\t{ ! hasRows && <p>{ __( 'no results' ) }</p> }\n\t\t</div>\n\t);\n}\n\nexport default forwardRef( ListView );\n"],"mappings":"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"}
@@ -1,80 +0,0 @@
1
- import { createElement } from "react";
2
- /**
3
- * External dependencies
4
- */
5
- import classnames from 'classnames';
6
- import { flexRender } from '@tanstack/react-table';
7
-
8
- /**
9
- * WordPress dependencies
10
- */
11
- import { __ } from '@wordpress/i18n';
12
- import { chevronDown, chevronUp } from '@wordpress/icons';
13
- import { Button } from '@wordpress/components';
14
- import { forwardRef } from '@wordpress/element';
15
- const sortIcons = {
16
- asc: chevronUp,
17
- desc: chevronDown
18
- };
19
- function Header({
20
- header
21
- }) {
22
- if (header.isPlaceholder) {
23
- return null;
24
- }
25
- const text = flexRender(header.column.columnDef.header, header.getContext());
26
- if (!header.column.getCanSort()) {
27
- return text;
28
- }
29
- const sortDirection = header.column.getIsSorted();
30
- return createElement(Button, {
31
- onClick: header.column.getToggleSortingHandler(),
32
- icon: sortIcons[sortDirection],
33
- iconPosition: "right",
34
- text: text,
35
- style: {
36
- padding: 0
37
- }
38
- });
39
- }
40
- function ListView({
41
- dataView,
42
- className,
43
- isLoading = false
44
- }, ref) {
45
- const {
46
- rows
47
- } = dataView.getRowModel();
48
- const hasRows = !!rows?.length;
49
- if (isLoading) {
50
- // TODO:Add spinner or progress bar..
51
- return createElement("h3", null, __('Loading'));
52
- }
53
- return createElement("div", {
54
- className: "dataviews-list-view-wrapper"
55
- }, hasRows && createElement("table", {
56
- ref: ref,
57
- className: classnames('dataviews-list-view', className)
58
- }, createElement("thead", null, dataView.getHeaderGroups().map(headerGroup => createElement("tr", {
59
- key: headerGroup.id
60
- }, headerGroup.headers.map(header => createElement("th", {
61
- key: header.id,
62
- colSpan: header.colSpan,
63
- style: {
64
- width: header.column.columnDef.width || undefined,
65
- maxWidth: header.column.columnDef.maxWidth || undefined
66
- }
67
- }, createElement(Header, {
68
- header: header
69
- })))))), createElement("tbody", null, rows.map(row => createElement("tr", {
70
- key: row.id
71
- }, row.getVisibleCells().map(cell => createElement("td", {
72
- key: cell.id,
73
- style: {
74
- width: cell.column.columnDef.width || undefined,
75
- maxWidth: cell.column.columnDef.maxWidth || undefined
76
- }
77
- }, flexRender(cell.column.columnDef.cell, cell.getContext()))))))), !hasRows && createElement("p", null, __('no results')));
78
- }
79
- export default forwardRef(ListView);
80
- //# sourceMappingURL=list-view.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["classnames","flexRender","__","chevronDown","chevronUp","Button","forwardRef","sortIcons","asc","desc","Header","header","isPlaceholder","text","column","columnDef","getContext","getCanSort","sortDirection","getIsSorted","createElement","onClick","getToggleSortingHandler","icon","iconPosition","style","padding","ListView","dataView","className","isLoading","ref","rows","getRowModel","hasRows","length","getHeaderGroups","map","headerGroup","key","id","headers","colSpan","width","undefined","maxWidth","row","getVisibleCells","cell"],"sources":["@wordpress/edit-site/src/components/dataviews/list-view.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { flexRender } from '@tanstack/react-table';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { chevronDown, chevronUp } from '@wordpress/icons';\nimport { Button } from '@wordpress/components';\nimport { forwardRef } from '@wordpress/element';\n\nconst sortIcons = { asc: chevronUp, desc: chevronDown };\nfunction Header( { header } ) {\n\tif ( header.isPlaceholder ) {\n\t\treturn null;\n\t}\n\tconst text = flexRender(\n\t\theader.column.columnDef.header,\n\t\theader.getContext()\n\t);\n\tif ( ! header.column.getCanSort() ) {\n\t\treturn text;\n\t}\n\tconst sortDirection = header.column.getIsSorted();\n\treturn (\n\t\t<Button\n\t\t\tonClick={ header.column.getToggleSortingHandler() }\n\t\t\ticon={ sortIcons[ sortDirection ] }\n\t\t\ticonPosition=\"right\"\n\t\t\ttext={ text }\n\t\t\tstyle={ { padding: 0 } }\n\t\t/>\n\t);\n}\n\nfunction ListView( { dataView, className, isLoading = false }, ref ) {\n\tconst { rows } = dataView.getRowModel();\n\tconst hasRows = !! rows?.length;\n\tif ( isLoading ) {\n\t\t// TODO:Add spinner or progress bar..\n\t\treturn <h3>{ __( 'Loading' ) }</h3>;\n\t}\n\treturn (\n\t\t<div className=\"dataviews-list-view-wrapper\">\n\t\t\t{ hasRows && (\n\t\t\t\t<table\n\t\t\t\t\tref={ ref }\n\t\t\t\t\tclassName={ classnames( 'dataviews-list-view', className ) }\n\t\t\t\t>\n\t\t\t\t\t<thead>\n\t\t\t\t\t\t{ dataView.getHeaderGroups().map( ( headerGroup ) => (\n\t\t\t\t\t\t\t<tr key={ headerGroup.id }>\n\t\t\t\t\t\t\t\t{ headerGroup.headers.map( ( header ) => (\n\t\t\t\t\t\t\t\t\t<th\n\t\t\t\t\t\t\t\t\t\tkey={ header.id }\n\t\t\t\t\t\t\t\t\t\tcolSpan={ header.colSpan }\n\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.width ||\n\t\t\t\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\t\t\tmaxWidth:\n\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef\n\t\t\t\t\t\t\t\t\t\t\t\t\t.maxWidth || undefined,\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<Header header={ header } />\n\t\t\t\t\t\t\t\t\t</th>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</thead>\n\t\t\t\t\t<tbody>\n\t\t\t\t\t\t{ rows.map( ( row ) => (\n\t\t\t\t\t\t\t<tr key={ row.id }>\n\t\t\t\t\t\t\t\t{ row.getVisibleCells().map( ( cell ) => (\n\t\t\t\t\t\t\t\t\t<td\n\t\t\t\t\t\t\t\t\t\tkey={ cell.id }\n\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t\t\tcell.column.columnDef.width ||\n\t\t\t\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\t\t\tmaxWidth:\n\t\t\t\t\t\t\t\t\t\t\t\tcell.column.columnDef\n\t\t\t\t\t\t\t\t\t\t\t\t\t.maxWidth || undefined,\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ flexRender(\n\t\t\t\t\t\t\t\t\t\t\tcell.column.columnDef.cell,\n\t\t\t\t\t\t\t\t\t\t\tcell.getContext()\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) ) }\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</tbody>\n\t\t\t\t</table>\n\t\t\t) }\n\t\t\t{ ! hasRows && <p>{ __( 'no results' ) }</p> }\n\t\t</div>\n\t);\n}\n\nexport default forwardRef( ListView );\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,UAAU,MAAM,YAAY;AACnC,SAASC,UAAU,QAAQ,uBAAuB;;AAElD;AACA;AACA;AACA,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,WAAW,EAAEC,SAAS,QAAQ,kBAAkB;AACzD,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,UAAU,QAAQ,oBAAoB;AAE/C,MAAMC,SAAS,GAAG;EAAEC,GAAG,EAAEJ,SAAS;EAAEK,IAAI,EAAEN;AAAY,CAAC;AACvD,SAASO,MAAMA,CAAE;EAAEC;AAAO,CAAC,EAAG;EAC7B,IAAKA,MAAM,CAACC,aAAa,EAAG;IAC3B,OAAO,IAAI;EACZ;EACA,MAAMC,IAAI,GAAGZ,UAAU,CACtBU,MAAM,CAACG,MAAM,CAACC,SAAS,CAACJ,MAAM,EAC9BA,MAAM,CAACK,UAAU,CAAC,CACnB,CAAC;EACD,IAAK,CAAEL,MAAM,CAACG,MAAM,CAACG,UAAU,CAAC,CAAC,EAAG;IACnC,OAAOJ,IAAI;EACZ;EACA,MAAMK,aAAa,GAAGP,MAAM,CAACG,MAAM,CAACK,WAAW,CAAC,CAAC;EACjD,OACCC,aAAA,CAACf,MAAM;IACNgB,OAAO,EAAGV,MAAM,CAACG,MAAM,CAACQ,uBAAuB,CAAC,CAAG;IACnDC,IAAI,EAAGhB,SAAS,CAAEW,aAAa,CAAI;IACnCM,YAAY,EAAC,OAAO;IACpBX,IAAI,EAAGA,IAAM;IACbY,KAAK,EAAG;MAAEC,OAAO,EAAE;IAAE;EAAG,CACxB,CAAC;AAEJ;AAEA,SAASC,QAAQA,CAAE;EAAEC,QAAQ;EAAEC,SAAS;EAAEC,SAAS,GAAG;AAAM,CAAC,EAAEC,GAAG,EAAG;EACpE,MAAM;IAAEC;EAAK,CAAC,GAAGJ,QAAQ,CAACK,WAAW,CAAC,CAAC;EACvC,MAAMC,OAAO,GAAG,CAAC,CAAEF,IAAI,EAAEG,MAAM;EAC/B,IAAKL,SAAS,EAAG;IAChB;IACA,OAAOV,aAAA,aAAMlB,EAAE,CAAE,SAAU,CAAO,CAAC;EACpC;EACA,OACCkB,aAAA;IAAKS,SAAS,EAAC;EAA6B,GACzCK,OAAO,IACRd,aAAA;IACCW,GAAG,EAAGA,GAAK;IACXF,SAAS,EAAG7B,UAAU,CAAE,qBAAqB,EAAE6B,SAAU;EAAG,GAE5DT,aAAA,gBACGQ,QAAQ,CAACQ,eAAe,CAAC,CAAC,CAACC,GAAG,CAAIC,WAAW,IAC9ClB,aAAA;IAAImB,GAAG,EAAGD,WAAW,CAACE;EAAI,GACvBF,WAAW,CAACG,OAAO,CAACJ,GAAG,CAAI1B,MAAM,IAClCS,aAAA;IACCmB,GAAG,EAAG5B,MAAM,CAAC6B,EAAI;IACjBE,OAAO,EAAG/B,MAAM,CAAC+B,OAAS;IAC1BjB,KAAK,EAAG;MACPkB,KAAK,EACJhC,MAAM,CAACG,MAAM,CAACC,SAAS,CAAC4B,KAAK,IAC7BC,SAAS;MACVC,QAAQ,EACPlC,MAAM,CAACG,MAAM,CAACC,SAAS,CACrB8B,QAAQ,IAAID;IAChB;EAAG,GAEHxB,aAAA,CAACV,MAAM;IAACC,MAAM,EAAGA;EAAQ,CAAE,CACxB,CACH,CACC,CACH,CACI,CAAC,EACRS,aAAA,gBACGY,IAAI,CAACK,GAAG,CAAIS,GAAG,IAChB1B,aAAA;IAAImB,GAAG,EAAGO,GAAG,CAACN;EAAI,GACfM,GAAG,CAACC,eAAe,CAAC,CAAC,CAACV,GAAG,CAAIW,IAAI,IAClC5B,aAAA;IACCmB,GAAG,EAAGS,IAAI,CAACR,EAAI;IACff,KAAK,EAAG;MACPkB,KAAK,EACJK,IAAI,CAAClC,MAAM,CAACC,SAAS,CAAC4B,KAAK,IAC3BC,SAAS;MACVC,QAAQ,EACPG,IAAI,CAAClC,MAAM,CAACC,SAAS,CACnB8B,QAAQ,IAAID;IAChB;EAAG,GAED3C,UAAU,CACX+C,IAAI,CAAClC,MAAM,CAACC,SAAS,CAACiC,IAAI,EAC1BA,IAAI,CAAChC,UAAU,CAAC,CACjB,CACG,CACH,CACC,CACH,CACI,CACD,CACP,EACC,CAAEkB,OAAO,IAAId,aAAA,YAAKlB,EAAE,CAAE,YAAa,CAAM,CACvC,CAAC;AAER;AAEA,eAAeI,UAAU,CAAEqB,QAAS,CAAC"}
@@ -1,106 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import classnames from 'classnames';
5
- import { flexRender } from '@tanstack/react-table';
6
-
7
- /**
8
- * WordPress dependencies
9
- */
10
- import { __ } from '@wordpress/i18n';
11
- import { chevronDown, chevronUp } from '@wordpress/icons';
12
- import { Button } from '@wordpress/components';
13
- import { forwardRef } from '@wordpress/element';
14
-
15
- const sortIcons = { asc: chevronUp, desc: chevronDown };
16
- function Header( { header } ) {
17
- if ( header.isPlaceholder ) {
18
- return null;
19
- }
20
- const text = flexRender(
21
- header.column.columnDef.header,
22
- header.getContext()
23
- );
24
- if ( ! header.column.getCanSort() ) {
25
- return text;
26
- }
27
- const sortDirection = header.column.getIsSorted();
28
- return (
29
- <Button
30
- onClick={ header.column.getToggleSortingHandler() }
31
- icon={ sortIcons[ sortDirection ] }
32
- iconPosition="right"
33
- text={ text }
34
- style={ { padding: 0 } }
35
- />
36
- );
37
- }
38
-
39
- function ListView( { dataView, className, isLoading = false }, ref ) {
40
- const { rows } = dataView.getRowModel();
41
- const hasRows = !! rows?.length;
42
- if ( isLoading ) {
43
- // TODO:Add spinner or progress bar..
44
- return <h3>{ __( 'Loading' ) }</h3>;
45
- }
46
- return (
47
- <div className="dataviews-list-view-wrapper">
48
- { hasRows && (
49
- <table
50
- ref={ ref }
51
- className={ classnames( 'dataviews-list-view', className ) }
52
- >
53
- <thead>
54
- { dataView.getHeaderGroups().map( ( headerGroup ) => (
55
- <tr key={ headerGroup.id }>
56
- { headerGroup.headers.map( ( header ) => (
57
- <th
58
- key={ header.id }
59
- colSpan={ header.colSpan }
60
- style={ {
61
- width:
62
- header.column.columnDef.width ||
63
- undefined,
64
- maxWidth:
65
- header.column.columnDef
66
- .maxWidth || undefined,
67
- } }
68
- >
69
- <Header header={ header } />
70
- </th>
71
- ) ) }
72
- </tr>
73
- ) ) }
74
- </thead>
75
- <tbody>
76
- { rows.map( ( row ) => (
77
- <tr key={ row.id }>
78
- { row.getVisibleCells().map( ( cell ) => (
79
- <td
80
- key={ cell.id }
81
- style={ {
82
- width:
83
- cell.column.columnDef.width ||
84
- undefined,
85
- maxWidth:
86
- cell.column.columnDef
87
- .maxWidth || undefined,
88
- } }
89
- >
90
- { flexRender(
91
- cell.column.columnDef.cell,
92
- cell.getContext()
93
- ) }
94
- </td>
95
- ) ) }
96
- </tr>
97
- ) ) }
98
- </tbody>
99
- </table>
100
- ) }
101
- { ! hasRows && <p>{ __( 'no results' ) }</p> }
102
- </div>
103
- );
104
- }
105
-
106
- export default forwardRef( ListView );