@wordpress/editor 13.30.0 → 13.32.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 (219) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +857 -0
  3. package/build/bindings/index.js +3 -1
  4. package/build/bindings/index.js.map +1 -1
  5. package/build/components/block-settings-menu/plugin-block-settings-menu-item.js +107 -0
  6. package/build/components/block-settings-menu/plugin-block-settings-menu-item.js.map +1 -0
  7. package/build/components/commands/index.js +1 -1
  8. package/build/components/commands/index.js.map +1 -1
  9. package/build/components/deprecated.js +158 -0
  10. package/build/components/deprecated.js.map +1 -1
  11. package/build/components/document-bar/index.js +7 -10
  12. package/build/components/document-bar/index.js.map +1 -1
  13. package/build/components/document-outline/index.js +1 -1
  14. package/build/components/document-outline/index.js.map +1 -1
  15. package/build/components/editor-canvas/edit-template-blocks-notification.js +2 -39
  16. package/build/components/editor-canvas/edit-template-blocks-notification.js.map +1 -1
  17. package/build/components/editor-canvas/index.js +3 -0
  18. package/build/components/editor-canvas/index.js.map +1 -1
  19. package/build/components/entities-saved-states/hooks/use-is-dirty.js +10 -16
  20. package/build/components/entities-saved-states/hooks/use-is-dirty.js.map +1 -1
  21. package/build/components/entities-saved-states/index.js +28 -88
  22. package/build/components/entities-saved-states/index.js.map +1 -1
  23. package/build/components/error-boundary/index.native.js +133 -0
  24. package/build/components/error-boundary/index.native.js.map +1 -0
  25. package/build/components/index.js +33 -8
  26. package/build/components/index.js.map +1 -1
  27. package/build/components/index.native.js +9 -1
  28. package/build/components/index.native.js.map +1 -1
  29. package/build/components/inserter-sidebar/index.js +5 -1
  30. package/build/components/inserter-sidebar/index.js.map +1 -1
  31. package/build/components/list-view-sidebar/index.js +2 -1
  32. package/build/components/list-view-sidebar/index.js.map +1 -1
  33. package/build/components/pattern-overrides-panel/index.js +30 -0
  34. package/build/components/pattern-overrides-panel/index.js.map +1 -0
  35. package/build/components/plugin-document-setting-panel/index.js +123 -0
  36. package/build/components/plugin-document-setting-panel/index.js.map +1 -0
  37. package/build/components/plugin-post-publish-panel/index.js +68 -0
  38. package/build/components/plugin-post-publish-panel/index.js.map +1 -0
  39. package/build/components/plugin-pre-publish-panel/index.js +71 -0
  40. package/build/components/plugin-pre-publish-panel/index.js.map +1 -0
  41. package/build/components/post-actions/actions.js +455 -0
  42. package/build/components/post-actions/actions.js.map +1 -0
  43. package/build/components/post-card-panel/index.js +93 -0
  44. package/build/components/post-card-panel/index.js.map +1 -0
  45. package/build/components/post-featured-image/index.js +3 -8
  46. package/build/components/post-featured-image/index.js.map +1 -1
  47. package/build/components/post-featured-image/panel.js +7 -3
  48. package/build/components/post-featured-image/panel.js.map +1 -1
  49. package/build/components/post-sync-status/index.js +0 -72
  50. package/build/components/post-sync-status/index.js.map +1 -1
  51. package/build/components/post-taxonomies/flat-term-selector.js +7 -3
  52. package/build/components/post-taxonomies/flat-term-selector.js.map +1 -1
  53. package/build/components/post-title/index.native.js +1 -1
  54. package/build/components/post-title/index.native.js.map +1 -1
  55. package/build/components/provider/disable-non-page-content-blocks.js +36 -20
  56. package/build/components/provider/disable-non-page-content-blocks.js.map +1 -1
  57. package/build/components/provider/index.js +1 -1
  58. package/build/components/provider/index.js.map +1 -1
  59. package/build/components/provider/use-block-editor-settings.js +8 -9
  60. package/build/components/provider/use-block-editor-settings.js.map +1 -1
  61. package/build/components/provider/use-hide-blocks-from-inserter.js +4 -3
  62. package/build/components/provider/use-hide-blocks-from-inserter.js.map +1 -1
  63. package/build/components/template-areas/index.js +70 -0
  64. package/build/components/template-areas/index.js.map +1 -0
  65. package/build/hooks/use-select-nearest-editable-block.js +87 -0
  66. package/build/hooks/use-select-nearest-editable-block.js.map +1 -0
  67. package/build/private-apis.js +6 -2
  68. package/build/private-apis.js.map +1 -1
  69. package/build/store/actions.js +46 -6
  70. package/build/store/actions.js.map +1 -1
  71. package/build/store/constants.js +3 -1
  72. package/build/store/constants.js.map +1 -1
  73. package/build/store/private-actions.js +80 -1
  74. package/build/store/private-actions.js.map +1 -1
  75. package/build/store/private-selectors.js +56 -3
  76. package/build/store/private-selectors.js.map +1 -1
  77. package/build/store/reducer.js +14 -1
  78. package/build/store/reducer.js.map +1 -1
  79. package/build/store/selectors.js +21 -11
  80. package/build/store/selectors.js.map +1 -1
  81. package/build/store/utils/get-filtered-template-parts.js +71 -0
  82. package/build/store/utils/get-filtered-template-parts.js.map +1 -0
  83. package/build-module/bindings/index.js +3 -1
  84. package/build-module/bindings/index.js.map +1 -1
  85. package/build-module/components/block-settings-menu/plugin-block-settings-menu-item.js +100 -0
  86. package/build-module/components/block-settings-menu/plugin-block-settings-menu-item.js.map +1 -0
  87. package/build-module/components/commands/index.js +1 -1
  88. package/build-module/components/commands/index.js.map +1 -1
  89. package/build-module/components/deprecated.js +159 -0
  90. package/build-module/components/deprecated.js.map +1 -1
  91. package/build-module/components/document-bar/index.js +8 -11
  92. package/build-module/components/document-bar/index.js.map +1 -1
  93. package/build-module/components/document-outline/index.js +1 -1
  94. package/build-module/components/document-outline/index.js.map +1 -1
  95. package/build-module/components/editor-canvas/edit-template-blocks-notification.js +4 -41
  96. package/build-module/components/editor-canvas/edit-template-blocks-notification.js.map +1 -1
  97. package/build-module/components/editor-canvas/index.js +3 -0
  98. package/build-module/components/editor-canvas/index.js.map +1 -1
  99. package/build-module/components/entities-saved-states/hooks/use-is-dirty.js +10 -16
  100. package/build-module/components/entities-saved-states/hooks/use-is-dirty.js.map +1 -1
  101. package/build-module/components/entities-saved-states/index.js +29 -89
  102. package/build-module/components/entities-saved-states/index.js.map +1 -1
  103. package/build-module/components/error-boundary/index.native.js +125 -0
  104. package/build-module/components/error-boundary/index.native.js.map +1 -0
  105. package/build-module/components/index.js +5 -1
  106. package/build-module/components/index.js.map +1 -1
  107. package/build-module/components/index.native.js +1 -0
  108. package/build-module/components/index.native.js.map +1 -1
  109. package/build-module/components/inserter-sidebar/index.js +5 -1
  110. package/build-module/components/inserter-sidebar/index.js.map +1 -1
  111. package/build-module/components/list-view-sidebar/index.js +2 -1
  112. package/build-module/components/list-view-sidebar/index.js.map +1 -1
  113. package/build-module/components/pattern-overrides-panel/index.js +23 -0
  114. package/build-module/components/pattern-overrides-panel/index.js.map +1 -0
  115. package/build-module/components/plugin-document-setting-panel/index.js +115 -0
  116. package/build-module/components/plugin-document-setting-panel/index.js.map +1 -0
  117. package/build-module/components/plugin-post-publish-panel/index.js +61 -0
  118. package/build-module/components/plugin-post-publish-panel/index.js.map +1 -0
  119. package/build-module/components/plugin-pre-publish-panel/index.js +64 -0
  120. package/build-module/components/plugin-pre-publish-panel/index.js.map +1 -0
  121. package/build-module/components/post-actions/actions.js +444 -0
  122. package/build-module/components/post-actions/actions.js.map +1 -0
  123. package/build-module/components/post-card-panel/index.js +85 -0
  124. package/build-module/components/post-card-panel/index.js.map +1 -0
  125. package/build-module/components/post-featured-image/index.js +4 -9
  126. package/build-module/components/post-featured-image/index.js.map +1 -1
  127. package/build-module/components/post-featured-image/panel.js +6 -2
  128. package/build-module/components/post-featured-image/panel.js.map +1 -1
  129. package/build-module/components/post-sync-status/index.js +2 -73
  130. package/build-module/components/post-sync-status/index.js.map +1 -1
  131. package/build-module/components/post-taxonomies/flat-term-selector.js +7 -3
  132. package/build-module/components/post-taxonomies/flat-term-selector.js.map +1 -1
  133. package/build-module/components/post-title/index.native.js +1 -1
  134. package/build-module/components/post-title/index.native.js.map +1 -1
  135. package/build-module/components/provider/disable-non-page-content-blocks.js +36 -20
  136. package/build-module/components/provider/disable-non-page-content-blocks.js.map +1 -1
  137. package/build-module/components/provider/index.js +1 -1
  138. package/build-module/components/provider/index.js.map +1 -1
  139. package/build-module/components/provider/use-block-editor-settings.js +9 -10
  140. package/build-module/components/provider/use-block-editor-settings.js.map +1 -1
  141. package/build-module/components/provider/use-hide-blocks-from-inserter.js +4 -3
  142. package/build-module/components/provider/use-hide-blocks-from-inserter.js.map +1 -1
  143. package/build-module/components/template-areas/index.js +63 -0
  144. package/build-module/components/template-areas/index.js.map +1 -0
  145. package/build-module/hooks/use-select-nearest-editable-block.js +80 -0
  146. package/build-module/hooks/use-select-nearest-editable-block.js.map +1 -0
  147. package/build-module/private-apis.js +6 -2
  148. package/build-module/private-apis.js.map +1 -1
  149. package/build-module/store/actions.js +37 -3
  150. package/build-module/store/actions.js.map +1 -1
  151. package/build-module/store/constants.js +2 -0
  152. package/build-module/store/constants.js.map +1 -1
  153. package/build-module/store/private-actions.js +78 -0
  154. package/build-module/store/private-actions.js.map +1 -1
  155. package/build-module/store/private-selectors.js +54 -3
  156. package/build-module/store/private-selectors.js.map +1 -1
  157. package/build-module/store/reducer.js +13 -1
  158. package/build-module/store/reducer.js.map +1 -1
  159. package/build-module/store/selectors.js +19 -10
  160. package/build-module/store/selectors.js.map +1 -1
  161. package/build-module/store/utils/get-filtered-template-parts.js +64 -0
  162. package/build-module/store/utils/get-filtered-template-parts.js.map +1 -0
  163. package/build-style/style-rtl.css +76 -33
  164. package/build-style/style.css +76 -33
  165. package/package.json +35 -33
  166. package/src/bindings/index.js +4 -1
  167. package/src/components/block-settings-menu/plugin-block-settings-menu-item.js +108 -0
  168. package/src/components/commands/index.js +1 -1
  169. package/src/components/deprecated.js +157 -0
  170. package/src/components/document-bar/index.js +12 -17
  171. package/src/components/document-bar/style.scss +9 -12
  172. package/src/components/document-outline/index.js +2 -1
  173. package/src/components/document-tools/style.scss +4 -11
  174. package/src/components/editor-canvas/edit-template-blocks-notification.js +6 -56
  175. package/src/components/editor-canvas/index.js +4 -0
  176. package/src/components/entities-saved-states/hooks/use-is-dirty.js +18 -22
  177. package/src/components/entities-saved-states/index.js +45 -121
  178. package/src/components/entities-saved-states/test/use-is-dirty.js +3 -0
  179. package/src/components/error-boundary/index.native.js +192 -0
  180. package/src/components/error-boundary/style.native.scss +116 -0
  181. package/src/components/index.js +5 -4
  182. package/src/components/index.native.js +1 -0
  183. package/src/components/inserter-sidebar/index.js +7 -1
  184. package/src/components/list-view-sidebar/index.js +1 -0
  185. package/src/components/list-view-sidebar/style.scss +1 -1
  186. package/src/components/pattern-overrides-panel/index.js +26 -0
  187. package/src/components/plugin-document-setting-panel/index.js +121 -0
  188. package/src/components/plugin-post-publish-panel/index.js +64 -0
  189. package/src/components/plugin-post-publish-panel/test/__snapshots__/index.js.snap +39 -0
  190. package/src/components/plugin-post-publish-panel/test/index.js +33 -0
  191. package/src/components/plugin-pre-publish-panel/index.js +67 -0
  192. package/src/components/plugin-pre-publish-panel/test/index.js +33 -0
  193. package/src/components/post-actions/actions.js +582 -0
  194. package/src/components/post-card-panel/index.js +108 -0
  195. package/src/components/post-card-panel/style.scss +32 -0
  196. package/src/components/post-featured-image/index.js +6 -15
  197. package/src/components/post-featured-image/panel.js +9 -3
  198. package/src/components/post-featured-image/style.scss +9 -13
  199. package/src/components/post-sync-status/index.js +1 -94
  200. package/src/components/post-taxonomies/flat-term-selector.js +13 -8
  201. package/src/components/post-title/index.native.js +1 -1
  202. package/src/components/provider/disable-non-page-content-blocks.js +40 -20
  203. package/src/components/provider/index.js +1 -1
  204. package/src/components/provider/test/disable-non-page-content-blocks.js +35 -14
  205. package/src/components/provider/use-block-editor-settings.js +11 -11
  206. package/src/components/provider/use-hide-blocks-from-inserter.js +5 -3
  207. package/src/components/template-areas/index.js +85 -0
  208. package/src/components/template-areas/style.scss +23 -0
  209. package/src/hooks/use-select-nearest-editable-block.js +95 -0
  210. package/src/private-apis.js +6 -2
  211. package/src/store/actions.js +37 -3
  212. package/src/store/constants.js +2 -0
  213. package/src/store/private-actions.js +111 -0
  214. package/src/store/private-selectors.js +105 -17
  215. package/src/store/reducer.js +13 -0
  216. package/src/store/selectors.js +50 -40
  217. package/src/store/utils/get-filtered-template-parts.js +69 -0
  218. package/src/store/utils/test/get-filtered-template-parts.js +189 -0
  219. package/src/style.scss +2 -0
@@ -4,31 +4,28 @@ import { createElement } from "react";
4
4
  */
5
5
  import { Button, Flex, FlexItem } from '@wordpress/components';
6
6
  import { __, _n, sprintf } from '@wordpress/i18n';
7
- import { useSelect, useDispatch } from '@wordpress/data';
8
7
  import { useCallback, useRef, createInterpolateElement } from '@wordpress/element';
9
- import { store as coreStore } from '@wordpress/core-data';
10
- import { store as blockEditorStore } from '@wordpress/block-editor';
11
- import { __experimentalUseDialog as useDialog } from '@wordpress/compose';
12
- import { store as noticesStore } from '@wordpress/notices';
8
+ import { __experimentalUseDialog as useDialog, useInstanceId } from '@wordpress/compose';
9
+ import { useDispatch } from '@wordpress/data';
13
10
 
14
11
  /**
15
12
  * Internal dependencies
16
13
  */
17
14
  import EntityTypeList from './entity-type-list';
18
15
  import { useIsDirty } from './hooks/use-is-dirty';
19
- const PUBLISH_ON_SAVE_ENTITIES = [{
20
- kind: 'postType',
21
- name: 'wp_navigation'
22
- }];
16
+ import { store as editorStore } from '../../store';
17
+ import { unlock } from '../../lock-unlock';
23
18
  function identity(values) {
24
19
  return values;
25
20
  }
26
21
  export default function EntitiesSavedStates({
27
- close
22
+ close,
23
+ renderDialog = undefined
28
24
  }) {
29
25
  const isDirtyProps = useIsDirty();
30
26
  return createElement(EntitiesSavedStatesExtensible, {
31
27
  close: close,
28
+ renderDialog: renderDialog,
32
29
  ...isDirtyProps
33
30
  });
34
31
  }
@@ -38,6 +35,7 @@ export function EntitiesSavedStatesExtensible({
38
35
  onSave = identity,
39
36
  saveEnabled: saveEnabledProp = undefined,
40
37
  saveLabel = __('Save'),
38
+ renderDialog = undefined,
41
39
  dirtyEntityRecords,
42
40
  isDirty,
43
41
  setUnselectedEntities,
@@ -45,19 +43,8 @@ export function EntitiesSavedStatesExtensible({
45
43
  }) {
46
44
  const saveButtonRef = useRef();
47
45
  const {
48
- editEntityRecord,
49
- saveEditedEntityRecord,
50
- __experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits
51
- } = useDispatch(coreStore);
52
- const {
53
- __unstableMarkLastChangeAsPersistent
54
- } = useDispatch(blockEditorStore);
55
- const {
56
- createSuccessNotice,
57
- createErrorNotice,
58
- removeNotice
59
- } = useDispatch(noticesStore);
60
-
46
+ saveDirtyEntities
47
+ } = unlock(useDispatch(editorStore));
61
48
  // To group entities by type.
62
49
  const partitionedSavables = dirtyEntityRecords.reduce((acc, record) => {
63
50
  const {
@@ -79,79 +66,21 @@ export function EntitiesSavedStatesExtensible({
79
66
  } = partitionedSavables;
80
67
  const sortedPartitionedSavables = [siteSavables, templateSavables, templatePartSavables, ...Object.values(contentSavables)].filter(Array.isArray);
81
68
  const saveEnabled = saveEnabledProp !== null && saveEnabledProp !== void 0 ? saveEnabledProp : isDirty;
82
- const {
83
- homeUrl
84
- } = useSelect(select => {
85
- const {
86
- getUnstableBase // Site index.
87
- } = select(coreStore);
88
- return {
89
- homeUrl: getUnstableBase()?.home
90
- };
91
- }, []);
92
- const saveCheckedEntities = () => {
93
- const saveNoticeId = 'site-editor-save-success';
94
- removeNotice(saveNoticeId);
95
- const entitiesToSave = dirtyEntityRecords.filter(({
96
- kind,
97
- name,
98
- key,
99
- property
100
- }) => {
101
- return !unselectedEntities.some(elt => elt.kind === kind && elt.name === name && elt.key === key && elt.property === property);
102
- });
103
- close(entitiesToSave);
104
- const siteItemsToSave = [];
105
- const pendingSavedRecords = [];
106
- entitiesToSave.forEach(({
107
- kind,
108
- name,
109
- key,
110
- property
111
- }) => {
112
- if ('root' === kind && 'site' === name) {
113
- siteItemsToSave.push(property);
114
- } else {
115
- if (PUBLISH_ON_SAVE_ENTITIES.some(typeToPublish => typeToPublish.kind === kind && typeToPublish.name === name)) {
116
- editEntityRecord(kind, name, key, {
117
- status: 'publish'
118
- });
119
- }
120
- pendingSavedRecords.push(saveEditedEntityRecord(kind, name, key));
121
- }
122
- });
123
- if (siteItemsToSave.length) {
124
- pendingSavedRecords.push(saveSpecifiedEntityEdits('root', 'site', undefined, siteItemsToSave));
125
- }
126
- __unstableMarkLastChangeAsPersistent();
127
- Promise.all(pendingSavedRecords).then(values => {
128
- return onSave(values);
129
- }).then(values => {
130
- if (values.some(value => typeof value === 'undefined')) {
131
- createErrorNotice(__('Saving failed.'));
132
- } else {
133
- createSuccessNotice(__('Site updated.'), {
134
- type: 'snackbar',
135
- id: saveNoticeId,
136
- actions: [{
137
- label: __('View site'),
138
- url: homeUrl
139
- }]
140
- });
141
- }
142
- }).catch(error => createErrorNotice(`${__('Saving failed.')} ${error}`));
143
- };
144
-
145
69
  // Explicitly define this with no argument passed. Using `close` on
146
70
  // its own will use the event object in place of the expected saved entities.
147
71
  const dismissPanel = useCallback(() => close(), [close]);
148
72
  const [saveDialogRef, saveDialogProps] = useDialog({
149
73
  onClose: () => dismissPanel()
150
74
  });
75
+ const dialogLabel = useInstanceId(EntitiesSavedStatesExtensible, 'label');
76
+ const dialogDescription = useInstanceId(EntitiesSavedStatesExtensible, 'description');
151
77
  return createElement("div", {
152
78
  ref: saveDialogRef,
153
79
  ...saveDialogProps,
154
- className: "entities-saved-states__panel"
80
+ className: "entities-saved-states__panel",
81
+ role: renderDialog ? 'dialog' : undefined,
82
+ "aria-labelledby": renderDialog ? dialogLabel : undefined,
83
+ "aria-describedby": renderDialog ? dialogDescription : undefined
155
84
  }, createElement(Flex, {
156
85
  className: "entities-saved-states__panel-header",
157
86
  gap: 2
@@ -161,7 +90,13 @@ export function EntitiesSavedStatesExtensible({
161
90
  ref: saveButtonRef,
162
91
  variant: "primary",
163
92
  disabled: !saveEnabled,
164
- onClick: saveCheckedEntities,
93
+ __experimentalIsFocusable: true,
94
+ onClick: () => saveDirtyEntities({
95
+ onSave,
96
+ dirtyEntityRecords,
97
+ entitiesToSkip: unselectedEntities,
98
+ close
99
+ }),
165
100
  className: "editor-entities-saved-states__save-button"
166
101
  }, saveLabel), createElement(FlexItem, {
167
102
  isBlock: true,
@@ -170,9 +105,14 @@ export function EntitiesSavedStatesExtensible({
170
105
  onClick: dismissPanel
171
106
  }, __('Cancel'))), createElement("div", {
172
107
  className: "entities-saved-states__text-prompt"
108
+ }, createElement("div", {
109
+ className: "entities-saved-states__text-prompt--header-wrapper",
110
+ id: renderDialog ? dialogLabel : undefined
173
111
  }, createElement("strong", {
174
112
  className: "entities-saved-states__text-prompt--header"
175
- }, __('Are you ready to save?')), additionalPrompt, createElement("p", null, isDirty ? createInterpolateElement(sprintf( /* translators: %d: number of site changes waiting to be saved. */
113
+ }, __('Are you ready to save?')), additionalPrompt), createElement("p", {
114
+ id: renderDialog ? dialogDescription : undefined
115
+ }, isDirty ? createInterpolateElement(sprintf( /* translators: %d: number of site changes waiting to be saved. */
176
116
  _n('There is <strong>%d site change</strong> waiting to be saved.', 'There are <strong>%d site changes</strong> waiting to be saved.', sortedPartitionedSavables.length), sortedPartitionedSavables.length), {
177
117
  strong: createElement("strong", null)
178
118
  }) : __('Select the items you want to save.'))), sortedPartitionedSavables.map(list => {
@@ -1 +1 @@
1
- {"version":3,"names":["Button","Flex","FlexItem","__","_n","sprintf","useSelect","useDispatch","useCallback","useRef","createInterpolateElement","store","coreStore","blockEditorStore","__experimentalUseDialog","useDialog","noticesStore","EntityTypeList","useIsDirty","PUBLISH_ON_SAVE_ENTITIES","kind","name","identity","values","EntitiesSavedStates","close","isDirtyProps","createElement","EntitiesSavedStatesExtensible","additionalPrompt","undefined","onSave","saveEnabled","saveEnabledProp","saveLabel","dirtyEntityRecords","isDirty","setUnselectedEntities","unselectedEntities","saveButtonRef","editEntityRecord","saveEditedEntityRecord","__experimentalSaveSpecifiedEntityEdits","saveSpecifiedEntityEdits","__unstableMarkLastChangeAsPersistent","createSuccessNotice","createErrorNotice","removeNotice","partitionedSavables","reduce","acc","record","push","site","siteSavables","wp_template","templateSavables","wp_template_part","templatePartSavables","contentSavables","sortedPartitionedSavables","Object","filter","Array","isArray","homeUrl","select","getUnstableBase","home","saveCheckedEntities","saveNoticeId","entitiesToSave","key","property","some","elt","siteItemsToSave","pendingSavedRecords","forEach","typeToPublish","status","length","Promise","all","then","value","type","id","actions","label","url","catch","error","dismissPanel","saveDialogRef","saveDialogProps","onClose","ref","className","gap","isBlock","as","variant","disabled","onClick","strong","map","list"],"sources":["@wordpress/editor/src/components/entities-saved-states/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, Flex, FlexItem } from '@wordpress/components';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tuseCallback,\n\tuseRef,\n\tcreateInterpolateElement,\n} from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { __experimentalUseDialog as useDialog } from '@wordpress/compose';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport EntityTypeList from './entity-type-list';\nimport { useIsDirty } from './hooks/use-is-dirty';\n\nconst PUBLISH_ON_SAVE_ENTITIES = [\n\t{\n\t\tkind: 'postType',\n\t\tname: 'wp_navigation',\n\t},\n];\n\nfunction identity( values ) {\n\treturn values;\n}\n\nexport default function EntitiesSavedStates( { close } ) {\n\tconst isDirtyProps = useIsDirty();\n\treturn (\n\t\t<EntitiesSavedStatesExtensible close={ close } { ...isDirtyProps } />\n\t);\n}\n\nexport function EntitiesSavedStatesExtensible( {\n\tadditionalPrompt = undefined,\n\tclose,\n\tonSave = identity,\n\tsaveEnabled: saveEnabledProp = undefined,\n\tsaveLabel = __( 'Save' ),\n\n\tdirtyEntityRecords,\n\tisDirty,\n\tsetUnselectedEntities,\n\tunselectedEntities,\n} ) {\n\tconst saveButtonRef = useRef();\n\tconst {\n\t\teditEntityRecord,\n\t\tsaveEditedEntityRecord,\n\t\t__experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits,\n\t} = useDispatch( coreStore );\n\n\tconst { __unstableMarkLastChangeAsPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tconst { createSuccessNotice, createErrorNotice, removeNotice } =\n\t\tuseDispatch( noticesStore );\n\n\t// To group entities by type.\n\tconst partitionedSavables = dirtyEntityRecords.reduce( ( acc, record ) => {\n\t\tconst { name } = record;\n\t\tif ( ! acc[ name ] ) {\n\t\t\tacc[ name ] = [];\n\t\t}\n\t\tacc[ name ].push( record );\n\t\treturn acc;\n\t}, {} );\n\n\t// Sort entity groups.\n\tconst {\n\t\tsite: siteSavables,\n\t\twp_template: templateSavables,\n\t\twp_template_part: templatePartSavables,\n\t\t...contentSavables\n\t} = partitionedSavables;\n\tconst sortedPartitionedSavables = [\n\t\tsiteSavables,\n\t\ttemplateSavables,\n\t\ttemplatePartSavables,\n\t\t...Object.values( contentSavables ),\n\t].filter( Array.isArray );\n\n\tconst saveEnabled = saveEnabledProp ?? isDirty;\n\n\tconst { homeUrl } = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetUnstableBase, // Site index.\n\t\t} = select( coreStore );\n\t\treturn {\n\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t};\n\t}, [] );\n\n\tconst saveCheckedEntities = () => {\n\t\tconst saveNoticeId = 'site-editor-save-success';\n\t\tremoveNotice( saveNoticeId );\n\t\tconst entitiesToSave = dirtyEntityRecords.filter(\n\t\t\t( { kind, name, key, property } ) => {\n\t\t\t\treturn ! unselectedEntities.some(\n\t\t\t\t\t( elt ) =>\n\t\t\t\t\t\telt.kind === kind &&\n\t\t\t\t\t\telt.name === name &&\n\t\t\t\t\t\telt.key === key &&\n\t\t\t\t\t\telt.property === property\n\t\t\t\t);\n\t\t\t}\n\t\t);\n\n\t\tclose( entitiesToSave );\n\n\t\tconst siteItemsToSave = [];\n\t\tconst pendingSavedRecords = [];\n\t\tentitiesToSave.forEach( ( { kind, name, key, property } ) => {\n\t\t\tif ( 'root' === kind && 'site' === name ) {\n\t\t\t\tsiteItemsToSave.push( property );\n\t\t\t} else {\n\t\t\t\tif (\n\t\t\t\t\tPUBLISH_ON_SAVE_ENTITIES.some(\n\t\t\t\t\t\t( typeToPublish ) =>\n\t\t\t\t\t\t\ttypeToPublish.kind === kind &&\n\t\t\t\t\t\t\ttypeToPublish.name === name\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\teditEntityRecord( kind, name, key, { status: 'publish' } );\n\t\t\t\t}\n\n\t\t\t\tpendingSavedRecords.push(\n\t\t\t\t\tsaveEditedEntityRecord( kind, name, key )\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\t\tif ( siteItemsToSave.length ) {\n\t\t\tpendingSavedRecords.push(\n\t\t\t\tsaveSpecifiedEntityEdits(\n\t\t\t\t\t'root',\n\t\t\t\t\t'site',\n\t\t\t\t\tundefined,\n\t\t\t\t\tsiteItemsToSave\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\n\t\t__unstableMarkLastChangeAsPersistent();\n\n\t\tPromise.all( pendingSavedRecords )\n\t\t\t.then( ( values ) => {\n\t\t\t\treturn onSave( values );\n\t\t\t} )\n\t\t\t.then( ( values ) => {\n\t\t\t\tif (\n\t\t\t\t\tvalues.some( ( value ) => typeof value === 'undefined' )\n\t\t\t\t) {\n\t\t\t\t\tcreateErrorNotice( __( 'Saving failed.' ) );\n\t\t\t\t} else {\n\t\t\t\t\tcreateSuccessNotice( __( 'Site updated.' ), {\n\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\tid: saveNoticeId,\n\t\t\t\t\t\tactions: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'View site' ),\n\t\t\t\t\t\t\t\turl: homeUrl,\n\t\t\t\t\t\t\t},\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\t.catch( ( error ) =>\n\t\t\t\tcreateErrorNotice( `${ __( 'Saving failed.' ) } ${ error }` )\n\t\t\t);\n\t};\n\n\t// Explicitly define this with no argument passed. Using `close` on\n\t// its own will use the event object in place of the expected saved entities.\n\tconst dismissPanel = useCallback( () => close(), [ close ] );\n\n\tconst [ saveDialogRef, saveDialogProps ] = useDialog( {\n\t\tonClose: () => dismissPanel(),\n\t} );\n\n\treturn (\n\t\t<div\n\t\t\tref={ saveDialogRef }\n\t\t\t{ ...saveDialogProps }\n\t\t\tclassName=\"entities-saved-states__panel\"\n\t\t>\n\t\t\t<Flex className=\"entities-saved-states__panel-header\" gap={ 2 }>\n\t\t\t\t<FlexItem\n\t\t\t\t\tisBlock\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tref={ saveButtonRef }\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tdisabled={ ! saveEnabled }\n\t\t\t\t\tonClick={ saveCheckedEntities }\n\t\t\t\t\tclassName=\"editor-entities-saved-states__save-button\"\n\t\t\t\t>\n\t\t\t\t\t{ saveLabel }\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem\n\t\t\t\t\tisBlock\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ dismissPanel }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\n\t\t\t<div className=\"entities-saved-states__text-prompt\">\n\t\t\t\t<strong className=\"entities-saved-states__text-prompt--header\">\n\t\t\t\t\t{ __( 'Are you ready to save?' ) }\n\t\t\t\t</strong>\n\t\t\t\t{ additionalPrompt }\n\t\t\t\t<p>\n\t\t\t\t\t{ isDirty\n\t\t\t\t\t\t? createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %d: number of site changes waiting to be saved. */\n\t\t\t\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t\t\t\t'There is <strong>%d site change</strong> waiting to be saved.',\n\t\t\t\t\t\t\t\t\t\t'There are <strong>%d site changes</strong> waiting to be saved.',\n\t\t\t\t\t\t\t\t\t\tsortedPartitionedSavables.length\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tsortedPartitionedSavables.length\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t{ strong: <strong /> }\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'Select the items you want to save.' ) }\n\t\t\t\t</p>\n\t\t\t</div>\n\n\t\t\t{ sortedPartitionedSavables.map( ( list ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<EntityTypeList\n\t\t\t\t\t\tkey={ list[ 0 ].name }\n\t\t\t\t\t\tlist={ list }\n\t\t\t\t\t\tunselectedEntities={ unselectedEntities }\n\t\t\t\t\t\tsetUnselectedEntities={ setUnselectedEntities }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["Button","Flex","FlexItem","__","_n","sprintf","useCallback","useRef","createInterpolateElement","__experimentalUseDialog","useDialog","useInstanceId","useDispatch","EntityTypeList","useIsDirty","store","editorStore","unlock","identity","values","EntitiesSavedStates","close","renderDialog","undefined","isDirtyProps","createElement","EntitiesSavedStatesExtensible","additionalPrompt","onSave","saveEnabled","saveEnabledProp","saveLabel","dirtyEntityRecords","isDirty","setUnselectedEntities","unselectedEntities","saveButtonRef","saveDirtyEntities","partitionedSavables","reduce","acc","record","name","push","site","siteSavables","wp_template","templateSavables","wp_template_part","templatePartSavables","contentSavables","sortedPartitionedSavables","Object","filter","Array","isArray","dismissPanel","saveDialogRef","saveDialogProps","onClose","dialogLabel","dialogDescription","ref","className","role","gap","isBlock","as","variant","disabled","__experimentalIsFocusable","onClick","entitiesToSkip","id","length","strong","map","list","key"],"sources":["@wordpress/editor/src/components/entities-saved-states/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, Flex, FlexItem } from '@wordpress/components';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport {\n\tuseCallback,\n\tuseRef,\n\tcreateInterpolateElement,\n} from '@wordpress/element';\nimport {\n\t__experimentalUseDialog as useDialog,\n\tuseInstanceId,\n} from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport EntityTypeList from './entity-type-list';\nimport { useIsDirty } from './hooks/use-is-dirty';\nimport { store as editorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\n\nfunction identity( values ) {\n\treturn values;\n}\n\nexport default function EntitiesSavedStates( {\n\tclose,\n\trenderDialog = undefined,\n} ) {\n\tconst isDirtyProps = useIsDirty();\n\treturn (\n\t\t<EntitiesSavedStatesExtensible\n\t\t\tclose={ close }\n\t\t\trenderDialog={ renderDialog }\n\t\t\t{ ...isDirtyProps }\n\t\t/>\n\t);\n}\n\nexport function EntitiesSavedStatesExtensible( {\n\tadditionalPrompt = undefined,\n\tclose,\n\tonSave = identity,\n\tsaveEnabled: saveEnabledProp = undefined,\n\tsaveLabel = __( 'Save' ),\n\trenderDialog = undefined,\n\tdirtyEntityRecords,\n\tisDirty,\n\tsetUnselectedEntities,\n\tunselectedEntities,\n} ) {\n\tconst saveButtonRef = useRef();\n\tconst { saveDirtyEntities } = unlock( useDispatch( editorStore ) );\n\t// To group entities by type.\n\tconst partitionedSavables = dirtyEntityRecords.reduce( ( acc, record ) => {\n\t\tconst { name } = record;\n\t\tif ( ! acc[ name ] ) {\n\t\t\tacc[ name ] = [];\n\t\t}\n\t\tacc[ name ].push( record );\n\t\treturn acc;\n\t}, {} );\n\n\t// Sort entity groups.\n\tconst {\n\t\tsite: siteSavables,\n\t\twp_template: templateSavables,\n\t\twp_template_part: templatePartSavables,\n\t\t...contentSavables\n\t} = partitionedSavables;\n\tconst sortedPartitionedSavables = [\n\t\tsiteSavables,\n\t\ttemplateSavables,\n\t\ttemplatePartSavables,\n\t\t...Object.values( contentSavables ),\n\t].filter( Array.isArray );\n\n\tconst saveEnabled = saveEnabledProp ?? isDirty;\n\t// Explicitly define this with no argument passed. Using `close` on\n\t// its own will use the event object in place of the expected saved entities.\n\tconst dismissPanel = useCallback( () => close(), [ close ] );\n\n\tconst [ saveDialogRef, saveDialogProps ] = useDialog( {\n\t\tonClose: () => dismissPanel(),\n\t} );\n\tconst dialogLabel = useInstanceId( EntitiesSavedStatesExtensible, 'label' );\n\tconst dialogDescription = useInstanceId(\n\t\tEntitiesSavedStatesExtensible,\n\t\t'description'\n\t);\n\n\treturn (\n\t\t<div\n\t\t\tref={ saveDialogRef }\n\t\t\t{ ...saveDialogProps }\n\t\t\tclassName=\"entities-saved-states__panel\"\n\t\t\trole={ renderDialog ? 'dialog' : undefined }\n\t\t\taria-labelledby={ renderDialog ? dialogLabel : undefined }\n\t\t\taria-describedby={ renderDialog ? dialogDescription : undefined }\n\t\t>\n\t\t\t<Flex className=\"entities-saved-states__panel-header\" gap={ 2 }>\n\t\t\t\t<FlexItem\n\t\t\t\t\tisBlock\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tref={ saveButtonRef }\n\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\tdisabled={ ! saveEnabled }\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\tsaveDirtyEntities( {\n\t\t\t\t\t\t\tonSave,\n\t\t\t\t\t\t\tdirtyEntityRecords,\n\t\t\t\t\t\t\tentitiesToSkip: unselectedEntities,\n\t\t\t\t\t\t\tclose,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tclassName=\"editor-entities-saved-states__save-button\"\n\t\t\t\t>\n\t\t\t\t\t{ saveLabel }\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem\n\t\t\t\t\tisBlock\n\t\t\t\t\tas={ Button }\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ dismissPanel }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\n\t\t\t<div className=\"entities-saved-states__text-prompt\">\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"entities-saved-states__text-prompt--header-wrapper\"\n\t\t\t\t\tid={ renderDialog ? dialogLabel : undefined }\n\t\t\t\t>\n\t\t\t\t\t<strong className=\"entities-saved-states__text-prompt--header\">\n\t\t\t\t\t\t{ __( 'Are you ready to save?' ) }\n\t\t\t\t\t</strong>\n\t\t\t\t\t{ additionalPrompt }\n\t\t\t\t</div>\n\t\t\t\t<p id={ renderDialog ? dialogDescription : undefined }>\n\t\t\t\t\t{ isDirty\n\t\t\t\t\t\t? createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: %d: number of site changes waiting to be saved. */\n\t\t\t\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t\t\t\t'There is <strong>%d site change</strong> waiting to be saved.',\n\t\t\t\t\t\t\t\t\t\t'There are <strong>%d site changes</strong> waiting to be saved.',\n\t\t\t\t\t\t\t\t\t\tsortedPartitionedSavables.length\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tsortedPartitionedSavables.length\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t{ strong: <strong /> }\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'Select the items you want to save.' ) }\n\t\t\t\t</p>\n\t\t\t</div>\n\n\t\t\t{ sortedPartitionedSavables.map( ( list ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<EntityTypeList\n\t\t\t\t\t\tkey={ list[ 0 ].name }\n\t\t\t\t\t\tlist={ list }\n\t\t\t\t\t\tunselectedEntities={ unselectedEntities }\n\t\t\t\t\t\tsetUnselectedEntities={ setUnselectedEntities }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
@@ -0,0 +1,125 @@
1
+ import { createElement } from "react";
2
+ /**
3
+ * External dependencies
4
+ */
5
+ import { ScrollView, Text, TouchableOpacity, View } from 'react-native';
6
+ import Clipboard from '@react-native-clipboard/clipboard';
7
+ import { SafeAreaView } from 'react-native-safe-area-context';
8
+
9
+ /**
10
+ * WordPress dependencies
11
+ */
12
+ import { Component } from '@wordpress/element';
13
+ import { __ } from '@wordpress/i18n';
14
+ import { select } from '@wordpress/data';
15
+ import { logException } from '@wordpress/react-native-bridge';
16
+ import { usePreferredColorSchemeStyle, withPreferredColorScheme } from '@wordpress/compose';
17
+ import { warning } from '@wordpress/icons';
18
+ import { Icon } from '@wordpress/components';
19
+
20
+ /**
21
+ * Internal dependencies
22
+ */
23
+ import { store as editorStore } from '../../store';
24
+ import styles from './style.scss';
25
+ function getContent() {
26
+ try {
27
+ // While `select` in a component is generally discouraged, it is
28
+ // used here because it (a) reduces the chance of data loss in the
29
+ // case of additional errors by performing a direct retrieval and
30
+ // (b) avoids the performance cost associated with unnecessary
31
+ // content serialization throughout the lifetime of a non-erroring
32
+ // application.
33
+ return select(editorStore).getEditedPostContent();
34
+ } catch (error) {}
35
+ }
36
+ function CopyButton({
37
+ text,
38
+ label,
39
+ accessibilityLabel,
40
+ accessibilityHint,
41
+ secondary = false
42
+ }) {
43
+ const containerStyle = usePreferredColorSchemeStyle(styles['copy-button__container'], styles['copy-button__container--dark']);
44
+ const containerSecondaryStyle = usePreferredColorSchemeStyle(styles['copy-button__container--secondary'], styles['copy-button__container--secondary-dark']);
45
+ const textStyle = usePreferredColorSchemeStyle(styles['copy-button__text'], styles['copy-button__text--dark']);
46
+ const textSecondaryStyle = usePreferredColorSchemeStyle(styles['copy-button__text--secondary'], styles['copy-button__text--secondary-dark']);
47
+ return createElement(TouchableOpacity, {
48
+ activeOpacity: 0.5,
49
+ accessibilityLabel: accessibilityLabel,
50
+ style: [containerStyle, secondary && containerSecondaryStyle],
51
+ accessibilityRole: 'button',
52
+ accessibilityHint: accessibilityHint,
53
+ onPress: () => {
54
+ Clipboard.setString(typeof text === 'function' ? text() : text || '');
55
+ }
56
+ }, createElement(Text, {
57
+ style: [textStyle, secondary && textSecondaryStyle]
58
+ }, label));
59
+ }
60
+ class ErrorBoundary extends Component {
61
+ constructor() {
62
+ super(...arguments);
63
+ this.state = {
64
+ error: null
65
+ };
66
+ }
67
+ componentDidCatch(error) {
68
+ logException(error, {
69
+ context: {
70
+ component_stack: error.componentStack
71
+ },
72
+ isHandled: true,
73
+ handledBy: 'Editor-level Error Boundary'
74
+ });
75
+ }
76
+ static getDerivedStateFromError(error) {
77
+ return {
78
+ error
79
+ };
80
+ }
81
+ render() {
82
+ const {
83
+ error
84
+ } = this.state;
85
+ if (!error) {
86
+ return this.props.children;
87
+ }
88
+ const {
89
+ getStylesFromColorScheme
90
+ } = this.props;
91
+ const iconContainerStyle = getStylesFromColorScheme(styles['error-boundary__icon-container'], styles['error-boundary__icon-container--dark']);
92
+ const titleStyle = getStylesFromColorScheme(styles['error-boundary__title'], styles['error-boundary__title--dark']);
93
+ const messageStyle = getStylesFromColorScheme(styles['error-boundary__message'], styles['error-boundary__message--dark']);
94
+ return createElement(SafeAreaView, null, createElement(ScrollView, {
95
+ style: styles['error-boundary__scroll'],
96
+ contentContainerStyle: styles['error-boundary__scroll-container']
97
+ }, createElement(View, {
98
+ style: styles['error-boundary__container']
99
+ }, createElement(View, {
100
+ style: iconContainerStyle
101
+ }, createElement(Icon, {
102
+ icon: warning,
103
+ ...styles['error-boundary__icon']
104
+ })), createElement(Text, {
105
+ style: titleStyle
106
+ }, __('The editor has encountered an unexpected error')), createElement(Text, {
107
+ style: messageStyle
108
+ }, __('You can copy your post text in case your content is impacted. Copy error details to debug and share with support.')), createElement(View, {
109
+ style: styles['error-boundary__actions-container']
110
+ }, createElement(CopyButton, {
111
+ label: __('Copy post text'),
112
+ accessibilityLabel: __('Button to copy post text'),
113
+ accessibilityHint: __('Tap here to copy post text'),
114
+ text: getContent
115
+ }), createElement(CopyButton, {
116
+ label: __('Copy error details'),
117
+ accessibilityLabel: __('Button to copy error details'),
118
+ accessibilityHint: __('Tap here to copy error details'),
119
+ text: error.stack,
120
+ secondary: true
121
+ })))));
122
+ }
123
+ }
124
+ export default withPreferredColorScheme(ErrorBoundary);
125
+ //# sourceMappingURL=index.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ScrollView","Text","TouchableOpacity","View","Clipboard","SafeAreaView","Component","__","select","logException","usePreferredColorSchemeStyle","withPreferredColorScheme","warning","Icon","store","editorStore","styles","getContent","getEditedPostContent","error","CopyButton","text","label","accessibilityLabel","accessibilityHint","secondary","containerStyle","containerSecondaryStyle","textStyle","textSecondaryStyle","createElement","activeOpacity","style","accessibilityRole","onPress","setString","ErrorBoundary","constructor","arguments","state","componentDidCatch","context","component_stack","componentStack","isHandled","handledBy","getDerivedStateFromError","render","props","children","getStylesFromColorScheme","iconContainerStyle","titleStyle","messageStyle","contentContainerStyle","icon","stack"],"sources":["@wordpress/editor/src/components/error-boundary/index.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { ScrollView, Text, TouchableOpacity, View } from 'react-native';\nimport Clipboard from '@react-native-clipboard/clipboard';\nimport { SafeAreaView } from 'react-native-safe-area-context';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { select } from '@wordpress/data';\nimport { logException } from '@wordpress/react-native-bridge';\nimport {\n\tusePreferredColorSchemeStyle,\n\twithPreferredColorScheme,\n} from '@wordpress/compose';\nimport { warning } from '@wordpress/icons';\nimport { Icon } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { store as editorStore } from '../../store';\nimport styles from './style.scss';\n\nfunction getContent() {\n\ttry {\n\t\t// While `select` in a component is generally discouraged, it is\n\t\t// used here because it (a) reduces the chance of data loss in the\n\t\t// case of additional errors by performing a direct retrieval and\n\t\t// (b) avoids the performance cost associated with unnecessary\n\t\t// content serialization throughout the lifetime of a non-erroring\n\t\t// application.\n\t\treturn select( editorStore ).getEditedPostContent();\n\t} catch ( error ) {}\n}\n\nfunction CopyButton( {\n\ttext,\n\tlabel,\n\taccessibilityLabel,\n\taccessibilityHint,\n\tsecondary = false,\n} ) {\n\tconst containerStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'copy-button__container' ],\n\t\tstyles[ 'copy-button__container--dark' ]\n\t);\n\n\tconst containerSecondaryStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'copy-button__container--secondary' ],\n\t\tstyles[ 'copy-button__container--secondary-dark' ]\n\t);\n\n\tconst textStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'copy-button__text' ],\n\t\tstyles[ 'copy-button__text--dark' ]\n\t);\n\n\tconst textSecondaryStyle = usePreferredColorSchemeStyle(\n\t\tstyles[ 'copy-button__text--secondary' ],\n\t\tstyles[ 'copy-button__text--secondary-dark' ]\n\t);\n\n\treturn (\n\t\t<TouchableOpacity\n\t\t\tactiveOpacity={ 0.5 }\n\t\t\taccessibilityLabel={ accessibilityLabel }\n\t\t\tstyle={ [ containerStyle, secondary && containerSecondaryStyle ] }\n\t\t\taccessibilityRole={ 'button' }\n\t\t\taccessibilityHint={ accessibilityHint }\n\t\t\tonPress={ () => {\n\t\t\t\tClipboard.setString(\n\t\t\t\t\ttypeof text === 'function' ? text() : text || ''\n\t\t\t\t);\n\t\t\t} }\n\t\t>\n\t\t\t<Text style={ [ textStyle, secondary && textSecondaryStyle ] }>\n\t\t\t\t{ label }\n\t\t\t</Text>\n\t\t</TouchableOpacity>\n\t);\n}\n\nclass ErrorBoundary extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.state = {\n\t\t\terror: null,\n\t\t};\n\t}\n\n\tcomponentDidCatch( error ) {\n\t\tlogException( error, {\n\t\t\tcontext: {\n\t\t\t\tcomponent_stack: error.componentStack,\n\t\t\t},\n\t\t\tisHandled: true,\n\t\t\thandledBy: 'Editor-level Error Boundary',\n\t\t} );\n\t}\n\n\tstatic getDerivedStateFromError( error ) {\n\t\treturn { error };\n\t}\n\n\trender() {\n\t\tconst { error } = this.state;\n\t\tif ( ! error ) {\n\t\t\treturn this.props.children;\n\t\t}\n\n\t\tconst { getStylesFromColorScheme } = this.props;\n\n\t\tconst iconContainerStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'error-boundary__icon-container' ],\n\t\t\tstyles[ 'error-boundary__icon-container--dark' ]\n\t\t);\n\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'error-boundary__title' ],\n\t\t\tstyles[ 'error-boundary__title--dark' ]\n\t\t);\n\n\t\tconst messageStyle = getStylesFromColorScheme(\n\t\t\tstyles[ 'error-boundary__message' ],\n\t\t\tstyles[ 'error-boundary__message--dark' ]\n\t\t);\n\n\t\treturn (\n\t\t\t<SafeAreaView>\n\t\t\t\t<ScrollView\n\t\t\t\t\tstyle={ styles[ 'error-boundary__scroll' ] }\n\t\t\t\t\tcontentContainerStyle={\n\t\t\t\t\t\tstyles[ 'error-boundary__scroll-container' ]\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<View style={ styles[ 'error-boundary__container' ] }>\n\t\t\t\t\t\t<View style={ iconContainerStyle }>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ticon={ warning }\n\t\t\t\t\t\t\t\t{ ...styles[ 'error-boundary__icon' ] }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t\t<Text style={ titleStyle }>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'The editor has encountered an unexpected error'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t<Text style={ messageStyle }>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'You can copy your post text in case your content is impacted. Copy error details to debug and share with support.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t<View\n\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\tstyles[ 'error-boundary__actions-container' ]\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<CopyButton\n\t\t\t\t\t\t\t\tlabel={ __( 'Copy post text' ) }\n\t\t\t\t\t\t\t\taccessibilityLabel={ __(\n\t\t\t\t\t\t\t\t\t'Button to copy post text'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\taccessibilityHint={ __(\n\t\t\t\t\t\t\t\t\t'Tap here to copy post text'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\ttext={ getContent }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<CopyButton\n\t\t\t\t\t\t\t\tlabel={ __( 'Copy error details' ) }\n\t\t\t\t\t\t\t\taccessibilityLabel={ __(\n\t\t\t\t\t\t\t\t\t'Button to copy error details'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\taccessibilityHint={ __(\n\t\t\t\t\t\t\t\t\t'Tap here to copy error details'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\ttext={ error.stack }\n\t\t\t\t\t\t\t\tsecondary\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</View>\n\t\t\t\t</ScrollView>\n\t\t\t</SafeAreaView>\n\t\t);\n\t}\n}\n\nexport default withPreferredColorScheme( ErrorBoundary );\n"],"mappings":"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"}
@@ -26,6 +26,10 @@ export { default as PageAttributesOrder } from './page-attributes/order';
26
26
  export { default as PageAttributesPanel } from './page-attributes/panel';
27
27
  export { default as PageAttributesParent } from './page-attributes/parent';
28
28
  export { default as PageTemplate } from './post-template/classic-theme';
29
+ export { default as PluginDocumentSettingPanel } from './plugin-document-setting-panel';
30
+ export { default as PluginBlockSettingsMenuItem } from './block-settings-menu/plugin-block-settings-menu-item';
31
+ export { default as PluginPostPublishPanel } from './plugin-post-publish-panel';
32
+ export { default as PluginPrePublishPanel } from './plugin-pre-publish-panel';
29
33
  export { default as PostTemplatePanel } from './post-template/panel';
30
34
  export { default as PostAuthor } from './post-author';
31
35
  export { default as PostAuthorCheck } from './post-author/check';
@@ -61,7 +65,7 @@ export { default as PostSlugCheck } from './post-slug/check';
61
65
  export { default as PostSticky } from './post-sticky';
62
66
  export { default as PostStickyCheck } from './post-sticky/check';
63
67
  export { default as PostSwitchToDraftButton } from './post-switch-to-draft-button';
64
- export { default as PostSyncStatus, PostSyncStatusModal } from './post-sync-status';
68
+ export { default as PostSyncStatus } from './post-sync-status';
65
69
  export { default as PostTaxonomies } from './post-taxonomies';
66
70
  export { FlatTermSelector as PostTaxonomiesFlatTermSelector } from './post-taxonomies/flat-term-selector';
67
71
  export { HierarchicalTermSelector as PostTaxonomiesHierarchicalTermSelector } from './post-taxonomies/hierarchical-term-selector';
@@ -1 +1 @@
1
- {"version":3,"names":["EditorKeyboardShortcuts","default","AutosaveMonitor","DocumentBar","DocumentOutline","DocumentOutlineCheck","EditorKeyboardShortcutsRegister","EditorHistoryRedo","EditorHistoryUndo","EditorNotices","EditorSnackbars","EntitiesSavedStates","useIsDirty","useEntitiesSavedStatesIsDirty","ErrorBoundary","LocalAutosaveMonitor","PageAttributesCheck","PageAttributesOrder","PageAttributesPanel","PageAttributesParent","PageTemplate","PostTemplatePanel","PostAuthor","PostAuthorCheck","PostAuthorPanel","PostComments","PostDiscussionPanel","PostExcerpt","PostExcerptCheck","PostExcerptPanel","PostFeaturedImage","PostFeaturedImageCheck","PostFeaturedImagePanel","PostFormat","PostFormatCheck","PostLastRevision","PostLastRevisionCheck","PostLastRevisionPanel","PostLockedModal","PostPendingStatus","PostPendingStatusCheck","PostPingbacks","PostPreviewButton","PostPublishButton","PostPublishButtonLabel","PostPublishPanel","PostSavedState","PostSchedule","PostScheduleCheck","PostScheduleLabel","usePostScheduleLabel","PostSchedulePanel","PostSlug","PostSlugCheck","PostSticky","PostStickyCheck","PostSwitchToDraftButton","PostSyncStatus","PostSyncStatusModal","PostTaxonomies","FlatTermSelector","PostTaxonomiesFlatTermSelector","HierarchicalTermSelector","PostTaxonomiesHierarchicalTermSelector","PostTaxonomiesCheck","PostTaxonomiesPanel","PostTextEditor","PostTitle","PostTitleRaw","PostTrash","PostTrashCheck","PostTypeSupportCheck","PostURL","PostURLCheck","PostURLLabel","usePostURLLabel","PostURLPanel","PostVisibility","PostVisibilityLabel","usePostVisibilityLabel","PostVisibilityCheck","TableOfContents","ThemeSupportCheck","UnsavedChangesWarning","WordCount","TimeToRead","CharacterCount","EditorProvider","VisualEditorGlobalKeyboardShortcuts","TextEditorGlobalKeyboardShortcuts"],"sources":["@wordpress/editor/src/components/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport EditorKeyboardShortcuts from './global-keyboard-shortcuts';\n\n// Block Creation Components.\nexport * from './autocompleters';\n\n// Post Related Components.\nexport { default as AutosaveMonitor } from './autosave-monitor';\nexport { default as DocumentBar } from './document-bar';\nexport { default as DocumentOutline } from './document-outline';\nexport { default as DocumentOutlineCheck } from './document-outline/check';\nexport { EditorKeyboardShortcuts };\nexport { default as EditorKeyboardShortcutsRegister } from './global-keyboard-shortcuts/register-shortcuts';\nexport { default as EditorHistoryRedo } from './editor-history/redo';\nexport { default as EditorHistoryUndo } from './editor-history/undo';\nexport { default as EditorNotices } from './editor-notices';\nexport { default as EditorSnackbars } from './editor-snackbars';\nexport { default as EntitiesSavedStates } from './entities-saved-states';\nexport { useIsDirty as useEntitiesSavedStatesIsDirty } from './entities-saved-states/hooks/use-is-dirty';\nexport { default as ErrorBoundary } from './error-boundary';\nexport { default as LocalAutosaveMonitor } from './local-autosave-monitor';\nexport { default as PageAttributesCheck } from './page-attributes/check';\nexport { default as PageAttributesOrder } from './page-attributes/order';\nexport { default as PageAttributesPanel } from './page-attributes/panel';\nexport { default as PageAttributesParent } from './page-attributes/parent';\nexport { default as PageTemplate } from './post-template/classic-theme';\nexport { default as PostTemplatePanel } from './post-template/panel';\nexport { default as PostAuthor } from './post-author';\nexport { default as PostAuthorCheck } from './post-author/check';\nexport { default as PostAuthorPanel } from './post-author/panel';\nexport { default as PostComments } from './post-comments';\nexport { default as PostDiscussionPanel } from './post-discussion/panel';\nexport { default as PostExcerpt } from './post-excerpt';\nexport { default as PostExcerptCheck } from './post-excerpt/check';\nexport { default as PostExcerptPanel } from './post-excerpt/panel';\nexport { default as PostFeaturedImage } from './post-featured-image';\nexport { default as PostFeaturedImageCheck } from './post-featured-image/check';\nexport { default as PostFeaturedImagePanel } from './post-featured-image/panel';\nexport { default as PostFormat } from './post-format';\nexport { default as PostFormatCheck } from './post-format/check';\nexport { default as PostLastRevision } from './post-last-revision';\nexport { default as PostLastRevisionCheck } from './post-last-revision/check';\nexport { default as PostLastRevisionPanel } from './post-last-revision/panel';\nexport { default as PostLockedModal } from './post-locked-modal';\nexport { default as PostPendingStatus } from './post-pending-status';\nexport { default as PostPendingStatusCheck } from './post-pending-status/check';\nexport { default as PostPingbacks } from './post-pingbacks';\nexport { default as PostPreviewButton } from './post-preview-button';\nexport { default as PostPublishButton } from './post-publish-button';\nexport { default as PostPublishButtonLabel } from './post-publish-button/label';\nexport { default as PostPublishPanel } from './post-publish-panel';\nexport { default as PostSavedState } from './post-saved-state';\nexport { default as PostSchedule } from './post-schedule';\nexport { default as PostScheduleCheck } from './post-schedule/check';\nexport {\n\tdefault as PostScheduleLabel,\n\tusePostScheduleLabel,\n} from './post-schedule/label';\nexport { default as PostSchedulePanel } from './post-schedule/panel';\nexport { default as PostSlug } from './post-slug';\nexport { default as PostSlugCheck } from './post-slug/check';\nexport { default as PostSticky } from './post-sticky';\nexport { default as PostStickyCheck } from './post-sticky/check';\nexport { default as PostSwitchToDraftButton } from './post-switch-to-draft-button';\nexport {\n\tdefault as PostSyncStatus,\n\tPostSyncStatusModal,\n} from './post-sync-status';\nexport { default as PostTaxonomies } from './post-taxonomies';\nexport { FlatTermSelector as PostTaxonomiesFlatTermSelector } from './post-taxonomies/flat-term-selector';\nexport { HierarchicalTermSelector as PostTaxonomiesHierarchicalTermSelector } from './post-taxonomies/hierarchical-term-selector';\nexport { default as PostTaxonomiesCheck } from './post-taxonomies/check';\nexport { default as PostTaxonomiesPanel } from './post-taxonomies/panel';\nexport { default as PostTextEditor } from './post-text-editor';\nexport { default as PostTitle } from './post-title';\nexport { default as PostTitleRaw } from './post-title/post-title-raw';\nexport { default as PostTrash } from './post-trash';\nexport { default as PostTrashCheck } from './post-trash/check';\nexport { default as PostTypeSupportCheck } from './post-type-support-check';\nexport { default as PostURL } from './post-url';\nexport { default as PostURLCheck } from './post-url/check';\nexport { default as PostURLLabel, usePostURLLabel } from './post-url/label';\nexport { default as PostURLPanel } from './post-url/panel';\nexport { default as PostVisibility } from './post-visibility';\nexport {\n\tdefault as PostVisibilityLabel,\n\tusePostVisibilityLabel,\n} from './post-visibility/label';\nexport { default as PostVisibilityCheck } from './post-visibility/check';\nexport { default as TableOfContents } from './table-of-contents';\nexport { default as ThemeSupportCheck } from './theme-support-check';\nexport { default as UnsavedChangesWarning } from './unsaved-changes-warning';\nexport { default as WordCount } from './word-count';\nexport { default as TimeToRead } from './time-to-read';\nexport { default as CharacterCount } from './character-count';\n\n// State Related Components.\nexport { default as EditorProvider } from './provider';\n\nexport * from './deprecated';\nexport const VisualEditorGlobalKeyboardShortcuts = EditorKeyboardShortcuts;\nexport const TextEditorGlobalKeyboardShortcuts = EditorKeyboardShortcuts;\n"],"mappings":"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"}
1
+ {"version":3,"names":["EditorKeyboardShortcuts","default","AutosaveMonitor","DocumentBar","DocumentOutline","DocumentOutlineCheck","EditorKeyboardShortcutsRegister","EditorHistoryRedo","EditorHistoryUndo","EditorNotices","EditorSnackbars","EntitiesSavedStates","useIsDirty","useEntitiesSavedStatesIsDirty","ErrorBoundary","LocalAutosaveMonitor","PageAttributesCheck","PageAttributesOrder","PageAttributesPanel","PageAttributesParent","PageTemplate","PluginDocumentSettingPanel","PluginBlockSettingsMenuItem","PluginPostPublishPanel","PluginPrePublishPanel","PostTemplatePanel","PostAuthor","PostAuthorCheck","PostAuthorPanel","PostComments","PostDiscussionPanel","PostExcerpt","PostExcerptCheck","PostExcerptPanel","PostFeaturedImage","PostFeaturedImageCheck","PostFeaturedImagePanel","PostFormat","PostFormatCheck","PostLastRevision","PostLastRevisionCheck","PostLastRevisionPanel","PostLockedModal","PostPendingStatus","PostPendingStatusCheck","PostPingbacks","PostPreviewButton","PostPublishButton","PostPublishButtonLabel","PostPublishPanel","PostSavedState","PostSchedule","PostScheduleCheck","PostScheduleLabel","usePostScheduleLabel","PostSchedulePanel","PostSlug","PostSlugCheck","PostSticky","PostStickyCheck","PostSwitchToDraftButton","PostSyncStatus","PostTaxonomies","FlatTermSelector","PostTaxonomiesFlatTermSelector","HierarchicalTermSelector","PostTaxonomiesHierarchicalTermSelector","PostTaxonomiesCheck","PostTaxonomiesPanel","PostTextEditor","PostTitle","PostTitleRaw","PostTrash","PostTrashCheck","PostTypeSupportCheck","PostURL","PostURLCheck","PostURLLabel","usePostURLLabel","PostURLPanel","PostVisibility","PostVisibilityLabel","usePostVisibilityLabel","PostVisibilityCheck","TableOfContents","ThemeSupportCheck","UnsavedChangesWarning","WordCount","TimeToRead","CharacterCount","EditorProvider","VisualEditorGlobalKeyboardShortcuts","TextEditorGlobalKeyboardShortcuts"],"sources":["@wordpress/editor/src/components/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport EditorKeyboardShortcuts from './global-keyboard-shortcuts';\n\n// Block Creation Components.\nexport * from './autocompleters';\n\n// Post Related Components.\nexport { default as AutosaveMonitor } from './autosave-monitor';\nexport { default as DocumentBar } from './document-bar';\nexport { default as DocumentOutline } from './document-outline';\nexport { default as DocumentOutlineCheck } from './document-outline/check';\nexport { EditorKeyboardShortcuts };\nexport { default as EditorKeyboardShortcutsRegister } from './global-keyboard-shortcuts/register-shortcuts';\nexport { default as EditorHistoryRedo } from './editor-history/redo';\nexport { default as EditorHistoryUndo } from './editor-history/undo';\nexport { default as EditorNotices } from './editor-notices';\nexport { default as EditorSnackbars } from './editor-snackbars';\nexport { default as EntitiesSavedStates } from './entities-saved-states';\nexport { useIsDirty as useEntitiesSavedStatesIsDirty } from './entities-saved-states/hooks/use-is-dirty';\nexport { default as ErrorBoundary } from './error-boundary';\nexport { default as LocalAutosaveMonitor } from './local-autosave-monitor';\nexport { default as PageAttributesCheck } from './page-attributes/check';\nexport { default as PageAttributesOrder } from './page-attributes/order';\nexport { default as PageAttributesPanel } from './page-attributes/panel';\nexport { default as PageAttributesParent } from './page-attributes/parent';\nexport { default as PageTemplate } from './post-template/classic-theme';\nexport { default as PluginDocumentSettingPanel } from './plugin-document-setting-panel';\nexport { default as PluginBlockSettingsMenuItem } from './block-settings-menu/plugin-block-settings-menu-item';\nexport { default as PluginPostPublishPanel } from './plugin-post-publish-panel';\nexport { default as PluginPrePublishPanel } from './plugin-pre-publish-panel';\nexport { default as PostTemplatePanel } from './post-template/panel';\nexport { default as PostAuthor } from './post-author';\nexport { default as PostAuthorCheck } from './post-author/check';\nexport { default as PostAuthorPanel } from './post-author/panel';\nexport { default as PostComments } from './post-comments';\nexport { default as PostDiscussionPanel } from './post-discussion/panel';\nexport { default as PostExcerpt } from './post-excerpt';\nexport { default as PostExcerptCheck } from './post-excerpt/check';\nexport { default as PostExcerptPanel } from './post-excerpt/panel';\nexport { default as PostFeaturedImage } from './post-featured-image';\nexport { default as PostFeaturedImageCheck } from './post-featured-image/check';\nexport { default as PostFeaturedImagePanel } from './post-featured-image/panel';\nexport { default as PostFormat } from './post-format';\nexport { default as PostFormatCheck } from './post-format/check';\nexport { default as PostLastRevision } from './post-last-revision';\nexport { default as PostLastRevisionCheck } from './post-last-revision/check';\nexport { default as PostLastRevisionPanel } from './post-last-revision/panel';\nexport { default as PostLockedModal } from './post-locked-modal';\nexport { default as PostPendingStatus } from './post-pending-status';\nexport { default as PostPendingStatusCheck } from './post-pending-status/check';\nexport { default as PostPingbacks } from './post-pingbacks';\nexport { default as PostPreviewButton } from './post-preview-button';\nexport { default as PostPublishButton } from './post-publish-button';\nexport { default as PostPublishButtonLabel } from './post-publish-button/label';\nexport { default as PostPublishPanel } from './post-publish-panel';\nexport { default as PostSavedState } from './post-saved-state';\nexport { default as PostSchedule } from './post-schedule';\nexport { default as PostScheduleCheck } from './post-schedule/check';\nexport {\n\tdefault as PostScheduleLabel,\n\tusePostScheduleLabel,\n} from './post-schedule/label';\nexport { default as PostSchedulePanel } from './post-schedule/panel';\nexport { default as PostSlug } from './post-slug';\nexport { default as PostSlugCheck } from './post-slug/check';\nexport { default as PostSticky } from './post-sticky';\nexport { default as PostStickyCheck } from './post-sticky/check';\nexport { default as PostSwitchToDraftButton } from './post-switch-to-draft-button';\nexport { default as PostSyncStatus } from './post-sync-status';\nexport { default as PostTaxonomies } from './post-taxonomies';\nexport { FlatTermSelector as PostTaxonomiesFlatTermSelector } from './post-taxonomies/flat-term-selector';\nexport { HierarchicalTermSelector as PostTaxonomiesHierarchicalTermSelector } from './post-taxonomies/hierarchical-term-selector';\nexport { default as PostTaxonomiesCheck } from './post-taxonomies/check';\nexport { default as PostTaxonomiesPanel } from './post-taxonomies/panel';\nexport { default as PostTextEditor } from './post-text-editor';\nexport { default as PostTitle } from './post-title';\nexport { default as PostTitleRaw } from './post-title/post-title-raw';\nexport { default as PostTrash } from './post-trash';\nexport { default as PostTrashCheck } from './post-trash/check';\nexport { default as PostTypeSupportCheck } from './post-type-support-check';\nexport { default as PostURL } from './post-url';\nexport { default as PostURLCheck } from './post-url/check';\nexport { default as PostURLLabel, usePostURLLabel } from './post-url/label';\nexport { default as PostURLPanel } from './post-url/panel';\nexport { default as PostVisibility } from './post-visibility';\nexport {\n\tdefault as PostVisibilityLabel,\n\tusePostVisibilityLabel,\n} from './post-visibility/label';\nexport { default as PostVisibilityCheck } from './post-visibility/check';\nexport { default as TableOfContents } from './table-of-contents';\nexport { default as ThemeSupportCheck } from './theme-support-check';\nexport { default as UnsavedChangesWarning } from './unsaved-changes-warning';\nexport { default as WordCount } from './word-count';\nexport { default as TimeToRead } from './time-to-read';\nexport { default as CharacterCount } from './character-count';\n\n// State Related Components.\nexport { default as EditorProvider } from './provider';\n\nexport * from './deprecated';\nexport const VisualEditorGlobalKeyboardShortcuts = EditorKeyboardShortcuts;\nexport const TextEditorGlobalKeyboardShortcuts = EditorKeyboardShortcuts;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,uBAAuB,MAAM,6BAA6B;;AAEjE;AACA,cAAc,kBAAkB;;AAEhC;AACA,SAASC,OAAO,IAAIC,eAAe,QAAQ,oBAAoB;AAC/D,SAASD,OAAO,IAAIE,WAAW,QAAQ,gBAAgB;AACvD,SAASF,OAAO,IAAIG,eAAe,QAAQ,oBAAoB;AAC/D,SAASH,OAAO,IAAII,oBAAoB,QAAQ,0BAA0B;AAC1E,SAASL,uBAAuB;AAChC,SAASC,OAAO,IAAIK,+BAA+B,QAAQ,gDAAgD;AAC3G,SAASL,OAAO,IAAIM,iBAAiB,QAAQ,uBAAuB;AACpE,SAASN,OAAO,IAAIO,iBAAiB,QAAQ,uBAAuB;AACpE,SAASP,OAAO,IAAIQ,aAAa,QAAQ,kBAAkB;AAC3D,SAASR,OAAO,IAAIS,eAAe,QAAQ,oBAAoB;AAC/D,SAAST,OAAO,IAAIU,mBAAmB,QAAQ,yBAAyB;AACxE,SAASC,UAAU,IAAIC,6BAA6B,QAAQ,4CAA4C;AACxG,SAASZ,OAAO,IAAIa,aAAa,QAAQ,kBAAkB;AAC3D,SAASb,OAAO,IAAIc,oBAAoB,QAAQ,0BAA0B;AAC1E,SAASd,OAAO,IAAIe,mBAAmB,QAAQ,yBAAyB;AACxE,SAASf,OAAO,IAAIgB,mBAAmB,QAAQ,yBAAyB;AACxE,SAAShB,OAAO,IAAIiB,mBAAmB,QAAQ,yBAAyB;AACxE,SAASjB,OAAO,IAAIkB,oBAAoB,QAAQ,0BAA0B;AAC1E,SAASlB,OAAO,IAAImB,YAAY,QAAQ,+BAA+B;AACvE,SAASnB,OAAO,IAAIoB,0BAA0B,QAAQ,iCAAiC;AACvF,SAASpB,OAAO,IAAIqB,2BAA2B,QAAQ,uDAAuD;AAC9G,SAASrB,OAAO,IAAIsB,sBAAsB,QAAQ,6BAA6B;AAC/E,SAAStB,OAAO,IAAIuB,qBAAqB,QAAQ,4BAA4B;AAC7E,SAASvB,OAAO,IAAIwB,iBAAiB,QAAQ,uBAAuB;AACpE,SAASxB,OAAO,IAAIyB,UAAU,QAAQ,eAAe;AACrD,SAASzB,OAAO,IAAI0B,eAAe,QAAQ,qBAAqB;AAChE,SAAS1B,OAAO,IAAI2B,eAAe,QAAQ,qBAAqB;AAChE,SAAS3B,OAAO,IAAI4B,YAAY,QAAQ,iBAAiB;AACzD,SAAS5B,OAAO,IAAI6B,mBAAmB,QAAQ,yBAAyB;AACxE,SAAS7B,OAAO,IAAI8B,WAAW,QAAQ,gBAAgB;AACvD,SAAS9B,OAAO,IAAI+B,gBAAgB,QAAQ,sBAAsB;AAClE,SAAS/B,OAAO,IAAIgC,gBAAgB,QAAQ,sBAAsB;AAClE,SAAShC,OAAO,IAAIiC,iBAAiB,QAAQ,uBAAuB;AACpE,SAASjC,OAAO,IAAIkC,sBAAsB,QAAQ,6BAA6B;AAC/E,SAASlC,OAAO,IAAImC,sBAAsB,QAAQ,6BAA6B;AAC/E,SAASnC,OAAO,IAAIoC,UAAU,QAAQ,eAAe;AACrD,SAASpC,OAAO,IAAIqC,eAAe,QAAQ,qBAAqB;AAChE,SAASrC,OAAO,IAAIsC,gBAAgB,QAAQ,sBAAsB;AAClE,SAAStC,OAAO,IAAIuC,qBAAqB,QAAQ,4BAA4B;AAC7E,SAASvC,OAAO,IAAIwC,qBAAqB,QAAQ,4BAA4B;AAC7E,SAASxC,OAAO,IAAIyC,eAAe,QAAQ,qBAAqB;AAChE,SAASzC,OAAO,IAAI0C,iBAAiB,QAAQ,uBAAuB;AACpE,SAAS1C,OAAO,IAAI2C,sBAAsB,QAAQ,6BAA6B;AAC/E,SAAS3C,OAAO,IAAI4C,aAAa,QAAQ,kBAAkB;AAC3D,SAAS5C,OAAO,IAAI6C,iBAAiB,QAAQ,uBAAuB;AACpE,SAAS7C,OAAO,IAAI8C,iBAAiB,QAAQ,uBAAuB;AACpE,SAAS9C,OAAO,IAAI+C,sBAAsB,QAAQ,6BAA6B;AAC/E,SAAS/C,OAAO,IAAIgD,gBAAgB,QAAQ,sBAAsB;AAClE,SAAShD,OAAO,IAAIiD,cAAc,QAAQ,oBAAoB;AAC9D,SAASjD,OAAO,IAAIkD,YAAY,QAAQ,iBAAiB;AACzD,SAASlD,OAAO,IAAImD,iBAAiB,QAAQ,uBAAuB;AACpE,SACCnD,OAAO,IAAIoD,iBAAiB,EAC5BC,oBAAoB,QACd,uBAAuB;AAC9B,SAASrD,OAAO,IAAIsD,iBAAiB,QAAQ,uBAAuB;AACpE,SAAStD,OAAO,IAAIuD,QAAQ,QAAQ,aAAa;AACjD,SAASvD,OAAO,IAAIwD,aAAa,QAAQ,mBAAmB;AAC5D,SAASxD,OAAO,IAAIyD,UAAU,QAAQ,eAAe;AACrD,SAASzD,OAAO,IAAI0D,eAAe,QAAQ,qBAAqB;AAChE,SAAS1D,OAAO,IAAI2D,uBAAuB,QAAQ,+BAA+B;AAClF,SAAS3D,OAAO,IAAI4D,cAAc,QAAQ,oBAAoB;AAC9D,SAAS5D,OAAO,IAAI6D,cAAc,QAAQ,mBAAmB;AAC7D,SAASC,gBAAgB,IAAIC,8BAA8B,QAAQ,sCAAsC;AACzG,SAASC,wBAAwB,IAAIC,sCAAsC,QAAQ,8CAA8C;AACjI,SAASjE,OAAO,IAAIkE,mBAAmB,QAAQ,yBAAyB;AACxE,SAASlE,OAAO,IAAImE,mBAAmB,QAAQ,yBAAyB;AACxE,SAASnE,OAAO,IAAIoE,cAAc,QAAQ,oBAAoB;AAC9D,SAASpE,OAAO,IAAIqE,SAAS,QAAQ,cAAc;AACnD,SAASrE,OAAO,IAAIsE,YAAY,QAAQ,6BAA6B;AACrE,SAAStE,OAAO,IAAIuE,SAAS,QAAQ,cAAc;AACnD,SAASvE,OAAO,IAAIwE,cAAc,QAAQ,oBAAoB;AAC9D,SAASxE,OAAO,IAAIyE,oBAAoB,QAAQ,2BAA2B;AAC3E,SAASzE,OAAO,IAAI0E,OAAO,QAAQ,YAAY;AAC/C,SAAS1E,OAAO,IAAI2E,YAAY,QAAQ,kBAAkB;AAC1D,SAAS3E,OAAO,IAAI4E,YAAY,EAAEC,eAAe,QAAQ,kBAAkB;AAC3E,SAAS7E,OAAO,IAAI8E,YAAY,QAAQ,kBAAkB;AAC1D,SAAS9E,OAAO,IAAI+E,cAAc,QAAQ,mBAAmB;AAC7D,SACC/E,OAAO,IAAIgF,mBAAmB,EAC9BC,sBAAsB,QAChB,yBAAyB;AAChC,SAASjF,OAAO,IAAIkF,mBAAmB,QAAQ,yBAAyB;AACxE,SAASlF,OAAO,IAAImF,eAAe,QAAQ,qBAAqB;AAChE,SAASnF,OAAO,IAAIoF,iBAAiB,QAAQ,uBAAuB;AACpE,SAASpF,OAAO,IAAIqF,qBAAqB,QAAQ,2BAA2B;AAC5E,SAASrF,OAAO,IAAIsF,SAAS,QAAQ,cAAc;AACnD,SAAStF,OAAO,IAAIuF,UAAU,QAAQ,gBAAgB;AACtD,SAASvF,OAAO,IAAIwF,cAAc,QAAQ,mBAAmB;;AAE7D;AACA,SAASxF,OAAO,IAAIyF,cAAc,QAAQ,YAAY;AAEtD,cAAc,cAAc;AAC5B,OAAO,MAAMC,mCAAmC,GAAG3F,uBAAuB;AAC1E,OAAO,MAAM4F,iCAAiC,GAAG5F,uBAAuB"}
@@ -10,5 +10,6 @@ export { default as EditorProvider } from './provider';
10
10
  // Other Components.
11
11
  export { default as EditorHelpTopics } from './editor-help';
12
12
  export { default as OfflineStatus } from './offline-status';
13
+ export { default as ErrorBoundary } from './error-boundary';
13
14
  export * from './deprecated';
14
15
  //# sourceMappingURL=index.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["default","AutosaveMonitor","PostTitle","EditorHistoryRedo","EditorHistoryUndo","EditorProvider","EditorHelpTopics","OfflineStatus"],"sources":["@wordpress/editor/src/components/index.native.js"],"sourcesContent":["// Post Related Components.\nexport { default as AutosaveMonitor } from './autosave-monitor';\nexport { default as PostTitle } from './post-title';\nexport { default as EditorHistoryRedo } from './editor-history/redo';\nexport { default as EditorHistoryUndo } from './editor-history/undo';\n\n// State Related Components.\nexport { default as EditorProvider } from './provider';\n\n// Other Components.\nexport { default as EditorHelpTopics } from './editor-help';\nexport { default as OfflineStatus } from './offline-status';\n\nexport * from './deprecated';\n"],"mappings":"AAAA;AACA,SAASA,OAAO,IAAIC,eAAe,QAAQ,oBAAoB;AAC/D,SAASD,OAAO,IAAIE,SAAS,QAAQ,cAAc;AACnD,SAASF,OAAO,IAAIG,iBAAiB,QAAQ,uBAAuB;AACpE,SAASH,OAAO,IAAII,iBAAiB,QAAQ,uBAAuB;;AAEpE;AACA,SAASJ,OAAO,IAAIK,cAAc,QAAQ,YAAY;;AAEtD;AACA,SAASL,OAAO,IAAIM,gBAAgB,QAAQ,eAAe;AAC3D,SAASN,OAAO,IAAIO,aAAa,QAAQ,kBAAkB;AAE3D,cAAc,cAAc"}
1
+ {"version":3,"names":["default","AutosaveMonitor","PostTitle","EditorHistoryRedo","EditorHistoryUndo","EditorProvider","EditorHelpTopics","OfflineStatus","ErrorBoundary"],"sources":["@wordpress/editor/src/components/index.native.js"],"sourcesContent":["// Post Related Components.\nexport { default as AutosaveMonitor } from './autosave-monitor';\nexport { default as PostTitle } from './post-title';\nexport { default as EditorHistoryRedo } from './editor-history/redo';\nexport { default as EditorHistoryUndo } from './editor-history/undo';\n\n// State Related Components.\nexport { default as EditorProvider } from './provider';\n\n// Other Components.\nexport { default as EditorHelpTopics } from './editor-help';\nexport { default as OfflineStatus } from './offline-status';\nexport { default as ErrorBoundary } from './error-boundary';\n\nexport * from './deprecated';\n"],"mappings":"AAAA;AACA,SAASA,OAAO,IAAIC,eAAe,QAAQ,oBAAoB;AAC/D,SAASD,OAAO,IAAIE,SAAS,QAAQ,cAAc;AACnD,SAASF,OAAO,IAAIG,iBAAiB,QAAQ,uBAAuB;AACpE,SAASH,OAAO,IAAII,iBAAiB,QAAQ,uBAAuB;;AAEpE;AACA,SAASJ,OAAO,IAAIK,cAAc,QAAQ,YAAY;;AAEtD;AACA,SAASL,OAAO,IAAIM,gBAAgB,QAAQ,eAAe;AAC3D,SAASN,OAAO,IAAIO,aAAa,QAAQ,kBAAkB;AAC3D,SAASP,OAAO,IAAIQ,aAAa,QAAQ,kBAAkB;AAE3D,cAAc,cAAc"}
@@ -16,7 +16,10 @@ import { store as preferencesStore } from '@wordpress/preferences';
16
16
  */
17
17
  import { unlock } from '../../lock-unlock';
18
18
  import { store as editorStore } from '../../store';
19
- export default function InserterSidebar() {
19
+ export default function InserterSidebar({
20
+ closeGeneralSidebar,
21
+ isRightSidebarOpen
22
+ }) {
20
23
  const {
21
24
  insertionPoint,
22
25
  showMostUsedBlocks
@@ -64,6 +67,7 @@ export default function InserterSidebar() {
64
67
  rootClientId: insertionPoint.rootClientId,
65
68
  __experimentalInsertionIndex: insertionPoint.insertionIndex,
66
69
  __experimentalFilterValue: insertionPoint.filterValue,
70
+ __experimentalOnPatternCategorySelection: isRightSidebarOpen ? closeGeneralSidebar : undefined,
67
71
  ref: libraryRef
68
72
  })));
69
73
  }
@@ -1 +1 @@
1
- {"version":3,"names":["useDispatch","useSelect","Button","VisuallyHidden","__experimentalLibrary","Library","close","useViewportMatch","__experimentalUseDialog","useDialog","__","useEffect","useRef","store","preferencesStore","unlock","editorStore","InserterSidebar","insertionPoint","showMostUsedBlocks","select","getInsertionPoint","get","setIsInserterOpened","isMobileViewport","TagName","inserterDialogRef","inserterDialogProps","onClose","focusOnMount","libraryRef","current","focusSearch","createElement","ref","className","icon","label","onClick","showInserterHelpPanel","shouldFocusBlock","rootClientId","__experimentalInsertionIndex","insertionIndex","__experimentalFilterValue","filterValue"],"sources":["@wordpress/editor/src/components/inserter-sidebar/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { Button, VisuallyHidden } from '@wordpress/components';\nimport { __experimentalLibrary as Library } from '@wordpress/block-editor';\nimport { close } from '@wordpress/icons';\nimport {\n\tuseViewportMatch,\n\t__experimentalUseDialog as useDialog,\n} from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editorStore } from '../../store';\n\nexport default function InserterSidebar() {\n\tconst { insertionPoint, showMostUsedBlocks } = useSelect( ( select ) => {\n\t\tconst { getInsertionPoint } = unlock( select( editorStore ) );\n\t\tconst { get } = select( preferencesStore );\n\t\treturn {\n\t\t\tinsertionPoint: getInsertionPoint(),\n\t\t\tshowMostUsedBlocks: get( 'core', 'mostUsedBlocks' ),\n\t\t};\n\t}, [] );\n\tconst { setIsInserterOpened } = useDispatch( editorStore );\n\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst TagName = ! isMobileViewport ? VisuallyHidden : 'div';\n\tconst [ inserterDialogRef, inserterDialogProps ] = useDialog( {\n\t\tonClose: () => setIsInserterOpened( false ),\n\t\tfocusOnMount: null,\n\t} );\n\n\tconst libraryRef = useRef();\n\tuseEffect( () => {\n\t\tlibraryRef.current.focusSearch();\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tref={ inserterDialogRef }\n\t\t\t{ ...inserterDialogProps }\n\t\t\tclassName=\"editor-inserter-sidebar\"\n\t\t>\n\t\t\t<TagName className=\"editor-inserter-sidebar__header\">\n\t\t\t\t<Button\n\t\t\t\t\ticon={ close }\n\t\t\t\t\tlabel={ __( 'Close block inserter' ) }\n\t\t\t\t\tonClick={ () => setIsInserterOpened( false ) }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t\t<div className=\"editor-inserter-sidebar__content\">\n\t\t\t\t<Library\n\t\t\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t\t\tshowInserterHelpPanel\n\t\t\t\t\tshouldFocusBlock={ isMobileViewport }\n\t\t\t\t\trootClientId={ insertionPoint.rootClientId }\n\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\tinsertionPoint.insertionIndex\n\t\t\t\t\t}\n\t\t\t\t\t__experimentalFilterValue={ insertionPoint.filterValue }\n\t\t\t\t\tref={ libraryRef }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,MAAM,EAAEC,cAAc,QAAQ,uBAAuB;AAC9D,SAASC,qBAAqB,IAAIC,OAAO,QAAQ,yBAAyB;AAC1E,SAASC,KAAK,QAAQ,kBAAkB;AACxC,SACCC,gBAAgB,EAChBC,uBAAuB,IAAIC,SAAS,QAC9B,oBAAoB;AAC3B,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,SAAS,EAAEC,MAAM,QAAQ,oBAAoB;AACtD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,wBAAwB;;AAElE;AACA;AACA;AACA,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASF,KAAK,IAAIG,WAAW,QAAQ,aAAa;AAElD,eAAe,SAASC,eAAeA,CAAA,EAAG;EACzC,MAAM;IAAEC,cAAc;IAAEC;EAAmB,CAAC,GAAGlB,SAAS,CAAImB,MAAM,IAAM;IACvE,MAAM;MAAEC;IAAkB,CAAC,GAAGN,MAAM,CAAEK,MAAM,CAAEJ,WAAY,CAAE,CAAC;IAC7D,MAAM;MAAEM;IAAI,CAAC,GAAGF,MAAM,CAAEN,gBAAiB,CAAC;IAC1C,OAAO;MACNI,cAAc,EAAEG,iBAAiB,CAAC,CAAC;MACnCF,kBAAkB,EAAEG,GAAG,CAAE,MAAM,EAAE,gBAAiB;IACnD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAM;IAAEC;EAAoB,CAAC,GAAGvB,WAAW,CAAEgB,WAAY,CAAC;EAE1D,MAAMQ,gBAAgB,GAAGjB,gBAAgB,CAAE,QAAQ,EAAE,GAAI,CAAC;EAC1D,MAAMkB,OAAO,GAAG,CAAED,gBAAgB,GAAGrB,cAAc,GAAG,KAAK;EAC3D,MAAM,CAAEuB,iBAAiB,EAAEC,mBAAmB,CAAE,GAAGlB,SAAS,CAAE;IAC7DmB,OAAO,EAAEA,CAAA,KAAML,mBAAmB,CAAE,KAAM,CAAC;IAC3CM,YAAY,EAAE;EACf,CAAE,CAAC;EAEH,MAAMC,UAAU,GAAGlB,MAAM,CAAC,CAAC;EAC3BD,SAAS,CAAE,MAAM;IAChBmB,UAAU,CAACC,OAAO,CAACC,WAAW,CAAC,CAAC;EACjC,CAAC,EAAE,EAAG,CAAC;EAEP,OACCC,aAAA;IACCC,GAAG,EAAGR,iBAAmB;IAAA,GACpBC,mBAAmB;IACxBQ,SAAS,EAAC;EAAyB,GAEnCF,aAAA,CAACR,OAAO;IAACU,SAAS,EAAC;EAAiC,GACnDF,aAAA,CAAC/B,MAAM;IACNkC,IAAI,EAAG9B,KAAO;IACd+B,KAAK,EAAG3B,EAAE,CAAE,sBAAuB,CAAG;IACtC4B,OAAO,EAAGA,CAAA,KAAMf,mBAAmB,CAAE,KAAM;EAAG,CAC9C,CACO,CAAC,EACVU,aAAA;IAAKE,SAAS,EAAC;EAAkC,GAChDF,aAAA,CAAC5B,OAAO;IACPc,kBAAkB,EAAGA,kBAAoB;IACzCoB,qBAAqB;IACrBC,gBAAgB,EAAGhB,gBAAkB;IACrCiB,YAAY,EAAGvB,cAAc,CAACuB,YAAc;IAC5CC,4BAA4B,EAC3BxB,cAAc,CAACyB,cACf;IACDC,yBAAyB,EAAG1B,cAAc,CAAC2B,WAAa;IACxDX,GAAG,EAAGJ;EAAY,CAClB,CACG,CACD,CAAC;AAER"}
1
+ {"version":3,"names":["useDispatch","useSelect","Button","VisuallyHidden","__experimentalLibrary","Library","close","useViewportMatch","__experimentalUseDialog","useDialog","__","useEffect","useRef","store","preferencesStore","unlock","editorStore","InserterSidebar","closeGeneralSidebar","isRightSidebarOpen","insertionPoint","showMostUsedBlocks","select","getInsertionPoint","get","setIsInserterOpened","isMobileViewport","TagName","inserterDialogRef","inserterDialogProps","onClose","focusOnMount","libraryRef","current","focusSearch","createElement","ref","className","icon","label","onClick","showInserterHelpPanel","shouldFocusBlock","rootClientId","__experimentalInsertionIndex","insertionIndex","__experimentalFilterValue","filterValue","__experimentalOnPatternCategorySelection","undefined"],"sources":["@wordpress/editor/src/components/inserter-sidebar/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { Button, VisuallyHidden } from '@wordpress/components';\nimport { __experimentalLibrary as Library } from '@wordpress/block-editor';\nimport { close } from '@wordpress/icons';\nimport {\n\tuseViewportMatch,\n\t__experimentalUseDialog as useDialog,\n} from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editorStore } from '../../store';\n\nexport default function InserterSidebar( {\n\tcloseGeneralSidebar,\n\tisRightSidebarOpen,\n} ) {\n\tconst { insertionPoint, showMostUsedBlocks } = useSelect( ( select ) => {\n\t\tconst { getInsertionPoint } = unlock( select( editorStore ) );\n\t\tconst { get } = select( preferencesStore );\n\t\treturn {\n\t\t\tinsertionPoint: getInsertionPoint(),\n\t\t\tshowMostUsedBlocks: get( 'core', 'mostUsedBlocks' ),\n\t\t};\n\t}, [] );\n\tconst { setIsInserterOpened } = useDispatch( editorStore );\n\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst TagName = ! isMobileViewport ? VisuallyHidden : 'div';\n\tconst [ inserterDialogRef, inserterDialogProps ] = useDialog( {\n\t\tonClose: () => setIsInserterOpened( false ),\n\t\tfocusOnMount: null,\n\t} );\n\n\tconst libraryRef = useRef();\n\tuseEffect( () => {\n\t\tlibraryRef.current.focusSearch();\n\t}, [] );\n\n\treturn (\n\t\t<div\n\t\t\tref={ inserterDialogRef }\n\t\t\t{ ...inserterDialogProps }\n\t\t\tclassName=\"editor-inserter-sidebar\"\n\t\t>\n\t\t\t<TagName className=\"editor-inserter-sidebar__header\">\n\t\t\t\t<Button\n\t\t\t\t\ticon={ close }\n\t\t\t\t\tlabel={ __( 'Close block inserter' ) }\n\t\t\t\t\tonClick={ () => setIsInserterOpened( false ) }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t\t<div className=\"editor-inserter-sidebar__content\">\n\t\t\t\t<Library\n\t\t\t\t\tshowMostUsedBlocks={ showMostUsedBlocks }\n\t\t\t\t\tshowInserterHelpPanel\n\t\t\t\t\tshouldFocusBlock={ isMobileViewport }\n\t\t\t\t\trootClientId={ insertionPoint.rootClientId }\n\t\t\t\t\t__experimentalInsertionIndex={\n\t\t\t\t\t\tinsertionPoint.insertionIndex\n\t\t\t\t\t}\n\t\t\t\t\t__experimentalFilterValue={ insertionPoint.filterValue }\n\t\t\t\t\t__experimentalOnPatternCategorySelection={\n\t\t\t\t\t\tisRightSidebarOpen ? closeGeneralSidebar : undefined\n\t\t\t\t\t}\n\t\t\t\t\tref={ libraryRef }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,MAAM,EAAEC,cAAc,QAAQ,uBAAuB;AAC9D,SAASC,qBAAqB,IAAIC,OAAO,QAAQ,yBAAyB;AAC1E,SAASC,KAAK,QAAQ,kBAAkB;AACxC,SACCC,gBAAgB,EAChBC,uBAAuB,IAAIC,SAAS,QAC9B,oBAAoB;AAC3B,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,SAAS,EAAEC,MAAM,QAAQ,oBAAoB;AACtD,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,wBAAwB;;AAElE;AACA;AACA;AACA,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASF,KAAK,IAAIG,WAAW,QAAQ,aAAa;AAElD,eAAe,SAASC,eAAeA,CAAE;EACxCC,mBAAmB;EACnBC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,cAAc;IAAEC;EAAmB,CAAC,GAAGpB,SAAS,CAAIqB,MAAM,IAAM;IACvE,MAAM;MAAEC;IAAkB,CAAC,GAAGR,MAAM,CAAEO,MAAM,CAAEN,WAAY,CAAE,CAAC;IAC7D,MAAM;MAAEQ;IAAI,CAAC,GAAGF,MAAM,CAAER,gBAAiB,CAAC;IAC1C,OAAO;MACNM,cAAc,EAAEG,iBAAiB,CAAC,CAAC;MACnCF,kBAAkB,EAAEG,GAAG,CAAE,MAAM,EAAE,gBAAiB;IACnD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAM;IAAEC;EAAoB,CAAC,GAAGzB,WAAW,CAAEgB,WAAY,CAAC;EAE1D,MAAMU,gBAAgB,GAAGnB,gBAAgB,CAAE,QAAQ,EAAE,GAAI,CAAC;EAC1D,MAAMoB,OAAO,GAAG,CAAED,gBAAgB,GAAGvB,cAAc,GAAG,KAAK;EAC3D,MAAM,CAAEyB,iBAAiB,EAAEC,mBAAmB,CAAE,GAAGpB,SAAS,CAAE;IAC7DqB,OAAO,EAAEA,CAAA,KAAML,mBAAmB,CAAE,KAAM,CAAC;IAC3CM,YAAY,EAAE;EACf,CAAE,CAAC;EAEH,MAAMC,UAAU,GAAGpB,MAAM,CAAC,CAAC;EAC3BD,SAAS,CAAE,MAAM;IAChBqB,UAAU,CAACC,OAAO,CAACC,WAAW,CAAC,CAAC;EACjC,CAAC,EAAE,EAAG,CAAC;EAEP,OACCC,aAAA;IACCC,GAAG,EAAGR,iBAAmB;IAAA,GACpBC,mBAAmB;IACxBQ,SAAS,EAAC;EAAyB,GAEnCF,aAAA,CAACR,OAAO;IAACU,SAAS,EAAC;EAAiC,GACnDF,aAAA,CAACjC,MAAM;IACNoC,IAAI,EAAGhC,KAAO;IACdiC,KAAK,EAAG7B,EAAE,CAAE,sBAAuB,CAAG;IACtC8B,OAAO,EAAGA,CAAA,KAAMf,mBAAmB,CAAE,KAAM;EAAG,CAC9C,CACO,CAAC,EACVU,aAAA;IAAKE,SAAS,EAAC;EAAkC,GAChDF,aAAA,CAAC9B,OAAO;IACPgB,kBAAkB,EAAGA,kBAAoB;IACzCoB,qBAAqB;IACrBC,gBAAgB,EAAGhB,gBAAkB;IACrCiB,YAAY,EAAGvB,cAAc,CAACuB,YAAc;IAC5CC,4BAA4B,EAC3BxB,cAAc,CAACyB,cACf;IACDC,yBAAyB,EAAG1B,cAAc,CAAC2B,WAAa;IACxDC,wCAAwC,EACvC7B,kBAAkB,GAAGD,mBAAmB,GAAG+B,SAC3C;IACDb,GAAG,EAAGJ;EAAY,CAClB,CACG,CACD,CAAC;AAER"}
@@ -116,7 +116,8 @@ export default function ListViewSidebar() {
116
116
  className: "editor-list-view-sidebar__close-button",
117
117
  icon: closeSmall,
118
118
  label: __('Close'),
119
- onClick: closeListView
119
+ onClick: closeListView,
120
+ size: "small"
120
121
  }), createElement(Tabs.TabList, {
121
122
  className: "editor-list-view-sidebar__tabs-tablist",
122
123
  ref: tabsRef