@wordpress/edit-site 3.0.26 → 3.0.29

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 (130) hide show
  1. package/build/components/add-new-template/new-template-part.js +4 -1
  2. package/build/components/add-new-template/new-template-part.js.map +1 -1
  3. package/build/components/editor/global-styles-renderer.js +7 -3
  4. package/build/components/editor/global-styles-renderer.js.map +1 -1
  5. package/build/components/error-boundary/index.js +11 -27
  6. package/build/components/error-boundary/index.js.map +1 -1
  7. package/build/components/error-boundary/warning.js +70 -0
  8. package/build/components/error-boundary/warning.js.map +1 -0
  9. package/build/components/global-styles/screen-background-color.js +8 -9
  10. package/build/components/global-styles/screen-background-color.js.map +1 -1
  11. package/build/components/global-styles/screen-link-color.js +6 -10
  12. package/build/components/global-styles/screen-link-color.js.map +1 -1
  13. package/build/components/global-styles/screen-text-color.js +6 -10
  14. package/build/components/global-styles/screen-text-color.js.map +1 -1
  15. package/build/components/header/more-menu/index.js +68 -39
  16. package/build/components/header/more-menu/index.js.map +1 -1
  17. package/build/{plugins → components/header/more-menu}/site-export.js +0 -0
  18. package/build/components/header/more-menu/site-export.js.map +1 -0
  19. package/build/{plugins → components/header/more-menu}/welcome-guide-menu-item.js +1 -1
  20. package/build/components/header/more-menu/welcome-guide-menu-item.js.map +1 -0
  21. package/build/components/header/tools-more-menu-group/index.js +1 -5
  22. package/build/components/header/tools-more-menu-group/index.js.map +1 -1
  23. package/build/components/keyboard-shortcut-help-modal/config.js +45 -0
  24. package/build/components/keyboard-shortcut-help-modal/config.js.map +1 -0
  25. package/build/components/keyboard-shortcut-help-modal/dynamic-shortcut.js +56 -0
  26. package/build/components/keyboard-shortcut-help-modal/dynamic-shortcut.js.map +1 -0
  27. package/build/components/keyboard-shortcut-help-modal/index.js +137 -0
  28. package/build/components/keyboard-shortcut-help-modal/index.js.map +1 -0
  29. package/build/components/keyboard-shortcut-help-modal/shortcut.js +65 -0
  30. package/build/components/keyboard-shortcut-help-modal/shortcut.js.map +1 -0
  31. package/build/components/keyboard-shortcuts/index.js +9 -0
  32. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  33. package/build/components/list/added-by.js +51 -50
  34. package/build/components/list/added-by.js.map +1 -1
  35. package/build/components/list/table.js +3 -1
  36. package/build/components/list/table.js.map +1 -1
  37. package/build/components/routes/redirect-to-homepage.js +106 -0
  38. package/build/components/routes/redirect-to-homepage.js.map +1 -0
  39. package/build/components/template-part-converter/convert-to-template-part.js +4 -1
  40. package/build/components/template-part-converter/convert-to-template-part.js.map +1 -1
  41. package/build/components/url-query-controller/index.js +1 -38
  42. package/build/components/url-query-controller/index.js.map +1 -1
  43. package/build/index.js +23 -4
  44. package/build/index.js.map +1 -1
  45. package/build/store/actions.js +7 -25
  46. package/build/store/actions.js.map +1 -1
  47. package/build-module/components/add-new-template/new-template-part.js +4 -1
  48. package/build-module/components/add-new-template/new-template-part.js.map +1 -1
  49. package/build-module/components/editor/global-styles-renderer.js +6 -3
  50. package/build-module/components/editor/global-styles-renderer.js.map +1 -1
  51. package/build-module/components/error-boundary/index.js +9 -26
  52. package/build-module/components/error-boundary/index.js.map +1 -1
  53. package/build-module/components/error-boundary/warning.js +60 -0
  54. package/build-module/components/error-boundary/warning.js.map +1 -0
  55. package/build-module/components/global-styles/screen-background-color.js +8 -10
  56. package/build-module/components/global-styles/screen-background-color.js.map +1 -1
  57. package/build-module/components/global-styles/screen-link-color.js +7 -11
  58. package/build-module/components/global-styles/screen-link-color.js.map +1 -1
  59. package/build-module/components/global-styles/screen-text-color.js +7 -11
  60. package/build-module/components/global-styles/screen-text-color.js.map +1 -1
  61. package/build-module/components/header/more-menu/index.js +65 -40
  62. package/build-module/components/header/more-menu/index.js.map +1 -1
  63. package/build-module/{plugins → components/header/more-menu}/site-export.js +0 -0
  64. package/build-module/components/header/more-menu/site-export.js.map +1 -0
  65. package/build-module/{plugins → components/header/more-menu}/welcome-guide-menu-item.js +1 -1
  66. package/build-module/components/header/more-menu/welcome-guide-menu-item.js.map +1 -0
  67. package/build-module/components/header/tools-more-menu-group/index.js +2 -5
  68. package/build-module/components/header/tools-more-menu-group/index.js.map +1 -1
  69. package/build-module/components/keyboard-shortcut-help-modal/config.js +36 -0
  70. package/build-module/components/keyboard-shortcut-help-modal/config.js.map +1 -0
  71. package/build-module/components/keyboard-shortcut-help-modal/dynamic-shortcut.js +44 -0
  72. package/build-module/components/keyboard-shortcut-help-modal/dynamic-shortcut.js.map +1 -0
  73. package/build-module/components/keyboard-shortcut-help-modal/index.js +120 -0
  74. package/build-module/components/keyboard-shortcut-help-modal/index.js.map +1 -0
  75. package/build-module/components/keyboard-shortcut-help-modal/shortcut.js +58 -0
  76. package/build-module/components/keyboard-shortcut-help-modal/shortcut.js.map +1 -0
  77. package/build-module/components/keyboard-shortcuts/index.js +9 -0
  78. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  79. package/build-module/components/list/added-by.js +52 -51
  80. package/build-module/components/list/added-by.js.map +1 -1
  81. package/build-module/components/list/table.js +2 -1
  82. package/build-module/components/list/table.js.map +1 -1
  83. package/build-module/components/routes/redirect-to-homepage.js +94 -0
  84. package/build-module/components/routes/redirect-to-homepage.js.map +1 -0
  85. package/build-module/components/template-part-converter/convert-to-template-part.js +4 -1
  86. package/build-module/components/template-part-converter/convert-to-template-part.js.map +1 -1
  87. package/build-module/components/url-query-controller/index.js +3 -40
  88. package/build-module/components/url-query-controller/index.js.map +1 -1
  89. package/build-module/index.js +20 -3
  90. package/build-module/index.js.map +1 -1
  91. package/build-module/store/actions.js +7 -23
  92. package/build-module/store/actions.js.map +1 -1
  93. package/build-style/style-rtl.css +51 -0
  94. package/build-style/style.css +51 -0
  95. package/package.json +13 -13
  96. package/src/components/add-new-template/new-template-part.js +7 -1
  97. package/src/components/editor/global-styles-renderer.js +7 -1
  98. package/src/components/error-boundary/index.js +11 -28
  99. package/src/components/error-boundary/warning.js +59 -0
  100. package/src/components/global-styles/screen-background-color.js +6 -9
  101. package/src/components/global-styles/screen-link-color.js +6 -14
  102. package/src/components/global-styles/screen-text-color.js +6 -14
  103. package/src/components/header/more-menu/index.js +103 -44
  104. package/src/{plugins → components/header/more-menu}/site-export.js +0 -0
  105. package/src/{plugins → components/header/more-menu}/welcome-guide-menu-item.js +1 -1
  106. package/src/components/header/tools-more-menu-group/index.js +2 -7
  107. package/src/components/keyboard-shortcut-help-modal/config.js +27 -0
  108. package/src/components/keyboard-shortcut-help-modal/dynamic-shortcut.js +41 -0
  109. package/src/components/keyboard-shortcut-help-modal/index.js +135 -0
  110. package/src/components/keyboard-shortcut-help-modal/shortcut.js +73 -0
  111. package/src/components/keyboard-shortcut-help-modal/style.scss +66 -0
  112. package/src/components/keyboard-shortcuts/index.js +10 -0
  113. package/src/components/list/added-by.js +57 -63
  114. package/src/components/list/table.js +5 -2
  115. package/src/components/routes/redirect-to-homepage.js +94 -0
  116. package/src/components/template-part-converter/convert-to-template-part.js +6 -1
  117. package/src/components/url-query-controller/index.js +3 -35
  118. package/src/index.js +25 -2
  119. package/src/store/actions.js +7 -35
  120. package/src/store/test/actions.js +0 -90
  121. package/src/style.scss +1 -0
  122. package/build/plugins/index.js +0 -28
  123. package/build/plugins/index.js.map +0 -1
  124. package/build/plugins/site-export.js.map +0 -1
  125. package/build/plugins/welcome-guide-menu-item.js.map +0 -1
  126. package/build-module/plugins/index.js +0 -20
  127. package/build-module/plugins/index.js.map +0 -1
  128. package/build-module/plugins/site-export.js.map +0 -1
  129. package/build-module/plugins/welcome-guide-menu-item.js.map +0 -1
  130. package/src/plugins/index.js +0 -24
@@ -10,7 +10,7 @@ import { MenuItem } from '@wordpress/components';
10
10
  * Internal dependencies
11
11
  */
12
12
 
13
- import { store as editSiteStore } from '../store';
13
+ import { store as editSiteStore } from '../../../store';
14
14
  export default function WelcomeGuideMenuItem() {
15
15
  const {
16
16
  toggleFeature
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/header/more-menu/welcome-guide-menu-item.js"],"names":["__","useDispatch","MenuItem","store","editSiteStore","WelcomeGuideMenuItem","toggleFeature"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,WAAT,QAA4B,iBAA5B;AACA,SAASC,QAAT,QAAyB,uBAAzB;AAEA;AACA;AACA;;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,gBAAvC;AAEA,eAAe,SAASC,oBAAT,GAAgC;AAC9C,QAAM;AAAEC,IAAAA;AAAF,MAAoBL,WAAW,CAAEG,aAAF,CAArC;AAEA,SACC,cAAC,QAAD;AAAU,IAAA,OAAO,EAAG,MAAME,aAAa,CAAE,cAAF;AAAvC,KACGN,EAAE,CAAE,eAAF,CADL,CADD;AAKA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch } from '@wordpress/data';\nimport { MenuItem } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../../store';\n\nexport default function WelcomeGuideMenuItem() {\n\tconst { toggleFeature } = useDispatch( editSiteStore );\n\n\treturn (\n\t\t<MenuItem onClick={ () => toggleFeature( 'welcomeGuide' ) }>\n\t\t\t{ __( 'Welcome Guide' ) }\n\t\t</MenuItem>\n\t);\n}\n"]}
@@ -8,8 +8,7 @@ import { isEmpty } from 'lodash';
8
8
  * WordPress dependencies
9
9
  */
10
10
 
11
- import { createSlotFill, MenuGroup } from '@wordpress/components';
12
- import { __ } from '@wordpress/i18n';
11
+ import { createSlotFill } from '@wordpress/components';
13
12
  const {
14
13
  Fill: ToolsMoreMenuGroup,
15
14
  Slot
@@ -21,9 +20,7 @@ ToolsMoreMenuGroup.Slot = _ref => {
21
20
  } = _ref;
22
21
  return createElement(Slot, {
23
22
  fillProps: fillProps
24
- }, fills => !isEmpty(fills) && createElement(MenuGroup, {
25
- label: __('Tools')
26
- }, fills));
23
+ }, fills => !isEmpty(fills) && fills);
27
24
  };
28
25
 
29
26
  export default ToolsMoreMenuGroup;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/header/tools-more-menu-group/index.js"],"names":["isEmpty","createSlotFill","MenuGroup","__","Fill","ToolsMoreMenuGroup","Slot","fillProps","fills"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SAASC,cAAT,EAAyBC,SAAzB,QAA0C,uBAA1C;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,MAAM;AAAEC,EAAAA,IAAI,EAAEC,kBAAR;AAA4BC,EAAAA;AAA5B,IAAqCL,cAAc,CACxD,4BADwD,CAAzD;;AAIAI,kBAAkB,CAACC,IAAnB,GAA0B;AAAA,MAAE;AAAEC,IAAAA;AAAF,GAAF;AAAA,SACzB,cAAC,IAAD;AAAM,IAAA,SAAS,EAAGA;AAAlB,KACKC,KAAF,IACD,CAAER,OAAO,CAAEQ,KAAF,CAAT,IACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGL,EAAE,CAAE,OAAF;AAArB,KAAqCK,KAArC,CAHH,CADyB;AAAA,CAA1B;;AAUA,eAAeH,kBAAf","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createSlotFill, MenuGroup } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nconst { Fill: ToolsMoreMenuGroup, Slot } = createSlotFill(\n\t'EditSiteToolsMoreMenuGroup'\n);\n\nToolsMoreMenuGroup.Slot = ( { fillProps } ) => (\n\t<Slot fillProps={ fillProps }>\n\t\t{ ( fills ) =>\n\t\t\t! isEmpty( fills ) && (\n\t\t\t\t<MenuGroup label={ __( 'Tools' ) }>{ fills }</MenuGroup>\n\t\t\t)\n\t\t}\n\t</Slot>\n);\n\nexport default ToolsMoreMenuGroup;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/header/tools-more-menu-group/index.js"],"names":["isEmpty","createSlotFill","Fill","ToolsMoreMenuGroup","Slot","fillProps","fills"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SAASC,cAAT,QAA+B,uBAA/B;AAEA,MAAM;AAAEC,EAAAA,IAAI,EAAEC,kBAAR;AAA4BC,EAAAA;AAA5B,IAAqCH,cAAc,CACxD,4BADwD,CAAzD;;AAIAE,kBAAkB,CAACC,IAAnB,GAA0B;AAAA,MAAE;AAAEC,IAAAA;AAAF,GAAF;AAAA,SACzB,cAAC,IAAD;AAAM,IAAA,SAAS,EAAGA;AAAlB,KACKC,KAAF,IAAa,CAAEN,OAAO,CAAEM,KAAF,CAAT,IAAsBA,KADtC,CADyB;AAAA,CAA1B;;AAMA,eAAeH,kBAAf","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createSlotFill } from '@wordpress/components';\n\nconst { Fill: ToolsMoreMenuGroup, Slot } = createSlotFill(\n\t'EditSiteToolsMoreMenuGroup'\n);\n\nToolsMoreMenuGroup.Slot = ( { fillProps } ) => (\n\t<Slot fillProps={ fillProps }>\n\t\t{ ( fills ) => ! isEmpty( fills ) && fills }\n\t</Slot>\n);\n\nexport default ToolsMoreMenuGroup;\n"]}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { __ } from '@wordpress/i18n';
5
+ export const textFormattingShortcuts = [{
6
+ keyCombination: {
7
+ modifier: 'primary',
8
+ character: 'b'
9
+ },
10
+ description: __('Make the selected text bold.')
11
+ }, {
12
+ keyCombination: {
13
+ modifier: 'primary',
14
+ character: 'i'
15
+ },
16
+ description: __('Make the selected text italic.')
17
+ }, {
18
+ keyCombination: {
19
+ modifier: 'primary',
20
+ character: 'k'
21
+ },
22
+ description: __('Convert the selected text into a link.')
23
+ }, {
24
+ keyCombination: {
25
+ modifier: 'primaryShift',
26
+ character: 'k'
27
+ },
28
+ description: __('Remove a link.')
29
+ }, {
30
+ keyCombination: {
31
+ modifier: 'primary',
32
+ character: 'u'
33
+ },
34
+ description: __('Underline the selected text.')
35
+ }];
36
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/keyboard-shortcut-help-modal/config.js"],"names":["__","textFormattingShortcuts","keyCombination","modifier","character","description"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA,OAAO,MAAMC,uBAAuB,GAAG,CACtC;AACCC,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,8BAAF;AAFhB,CADsC,EAKtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,gCAAF;AAFhB,CALsC,EAStC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,wCAAF;AAFhB,CATsC,EAatC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,cAAZ;AAA4BC,IAAAA,SAAS,EAAE;AAAvC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,gBAAF;AAFhB,CAbsC,EAiBtC;AACCE,EAAAA,cAAc,EAAE;AAAEC,IAAAA,QAAQ,EAAE,SAAZ;AAAuBC,IAAAA,SAAS,EAAE;AAAlC,GADjB;AAECC,EAAAA,WAAW,EAAEL,EAAE,CAAE,8BAAF;AAFhB,CAjBsC,CAAhC","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nexport const textFormattingShortcuts = [\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'b' },\n\t\tdescription: __( 'Make the selected text bold.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'i' },\n\t\tdescription: __( 'Make the selected text italic.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'k' },\n\t\tdescription: __( 'Convert the selected text into a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primaryShift', character: 'k' },\n\t\tdescription: __( 'Remove a link.' ),\n\t},\n\t{\n\t\tkeyCombination: { modifier: 'primary', character: 'u' },\n\t\tdescription: __( 'Underline the selected text.' ),\n\t},\n];\n"]}
@@ -0,0 +1,44 @@
1
+ import { createElement } from "@wordpress/element";
2
+
3
+ /**
4
+ * WordPress dependencies
5
+ */
6
+ import { useSelect } from '@wordpress/data';
7
+ import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
8
+ /**
9
+ * Internal dependencies
10
+ */
11
+
12
+ import Shortcut from './shortcut';
13
+ export default function DynamicShortcut(_ref) {
14
+ let {
15
+ name
16
+ } = _ref;
17
+ const {
18
+ keyCombination,
19
+ description,
20
+ aliases
21
+ } = useSelect(select => {
22
+ const {
23
+ getShortcutKeyCombination,
24
+ getShortcutDescription,
25
+ getShortcutAliases
26
+ } = select(keyboardShortcutsStore);
27
+ return {
28
+ keyCombination: getShortcutKeyCombination(name),
29
+ aliases: getShortcutAliases(name),
30
+ description: getShortcutDescription(name)
31
+ };
32
+ }, [name]);
33
+
34
+ if (!keyCombination) {
35
+ return null;
36
+ }
37
+
38
+ return createElement(Shortcut, {
39
+ keyCombination: keyCombination,
40
+ description: description,
41
+ aliases: aliases
42
+ });
43
+ }
44
+ //# sourceMappingURL=dynamic-shortcut.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/keyboard-shortcut-help-modal/dynamic-shortcut.js"],"names":["useSelect","store","keyboardShortcutsStore","Shortcut","DynamicShortcut","name","keyCombination","description","aliases","select","getShortcutKeyCombination","getShortcutDescription","getShortcutAliases"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,iBAA1B;AACA,SAASC,KAAK,IAAIC,sBAAlB,QAAgD,+BAAhD;AAEA;AACA;AACA;;AACA,OAAOC,QAAP,MAAqB,YAArB;AAEA,eAAe,SAASC,eAAT,OAAqC;AAAA,MAAX;AAAEC,IAAAA;AAAF,GAAW;AACnD,QAAM;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA,WAAlB;AAA+BC,IAAAA;AAA/B,MAA2CR,SAAS,CACvDS,MAAF,IAAc;AACb,UAAM;AACLC,MAAAA,yBADK;AAELC,MAAAA,sBAFK;AAGLC,MAAAA;AAHK,QAIFH,MAAM,CAAEP,sBAAF,CAJV;AAMA,WAAO;AACNI,MAAAA,cAAc,EAAEI,yBAAyB,CAAEL,IAAF,CADnC;AAENG,MAAAA,OAAO,EAAEI,kBAAkB,CAAEP,IAAF,CAFrB;AAGNE,MAAAA,WAAW,EAAEI,sBAAsB,CAAEN,IAAF;AAH7B,KAAP;AAKA,GAbwD,EAczD,CAAEA,IAAF,CAdyD,CAA1D;;AAiBA,MAAK,CAAEC,cAAP,EAAwB;AACvB,WAAO,IAAP;AACA;;AAED,SACC,cAAC,QAAD;AACC,IAAA,cAAc,EAAGA,cADlB;AAEC,IAAA,WAAW,EAAGC,WAFf;AAGC,IAAA,OAAO,EAAGC;AAHX,IADD;AAOA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n\n/**\n * Internal dependencies\n */\nimport Shortcut from './shortcut';\n\nexport default function DynamicShortcut( { name } ) {\n\tconst { keyCombination, description, aliases } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetShortcutKeyCombination,\n\t\t\t\tgetShortcutDescription,\n\t\t\t\tgetShortcutAliases,\n\t\t\t} = select( keyboardShortcutsStore );\n\n\t\t\treturn {\n\t\t\t\tkeyCombination: getShortcutKeyCombination( name ),\n\t\t\t\taliases: getShortcutAliases( name ),\n\t\t\t\tdescription: getShortcutDescription( name ),\n\t\t\t};\n\t\t},\n\t\t[ name ]\n\t);\n\n\tif ( ! keyCombination ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Shortcut\n\t\t\tkeyCombination={ keyCombination }\n\t\t\tdescription={ description }\n\t\t\taliases={ aliases }\n\t\t/>\n\t);\n}\n"]}
@@ -0,0 +1,120 @@
1
+ import { createElement } from "@wordpress/element";
2
+
3
+ /**
4
+ * External dependencies
5
+ */
6
+ import classnames from 'classnames';
7
+ import { isString } from 'lodash';
8
+ /**
9
+ * WordPress dependencies
10
+ */
11
+
12
+ import { Modal } from '@wordpress/components';
13
+ import { __ } from '@wordpress/i18n';
14
+ import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
15
+ import { useSelect } from '@wordpress/data';
16
+ /**
17
+ * Internal dependencies
18
+ */
19
+
20
+ import { textFormattingShortcuts } from './config';
21
+ import Shortcut from './shortcut';
22
+ import DynamicShortcut from './dynamic-shortcut';
23
+
24
+ const ShortcutList = _ref => {
25
+ let {
26
+ shortcuts
27
+ } = _ref;
28
+ return (
29
+ /*
30
+ * Disable reason: The `list` ARIA role is redundant but
31
+ * Safari+VoiceOver won't announce the list otherwise.
32
+ */
33
+
34
+ /* eslint-disable jsx-a11y/no-redundant-roles */
35
+ createElement("ul", {
36
+ className: "edit-site-keyboard-shortcut-help-modal__shortcut-list",
37
+ role: "list"
38
+ }, shortcuts.map((shortcut, index) => createElement("li", {
39
+ className: "edit-site-keyboard-shortcut-help-modal__shortcut",
40
+ key: index
41
+ }, isString(shortcut) ? createElement(DynamicShortcut, {
42
+ name: shortcut
43
+ }) : createElement(Shortcut, shortcut))))
44
+ /* eslint-enable jsx-a11y/no-redundant-roles */
45
+
46
+ );
47
+ };
48
+
49
+ const ShortcutSection = _ref2 => {
50
+ let {
51
+ title,
52
+ shortcuts,
53
+ className
54
+ } = _ref2;
55
+ return createElement("section", {
56
+ className: classnames('edit-site-keyboard-shortcut-help-modal__section', className)
57
+ }, !!title && createElement("h2", {
58
+ className: "edit-site-keyboard-shortcut-help-modal__section-title"
59
+ }, title), createElement(ShortcutList, {
60
+ shortcuts: shortcuts
61
+ }));
62
+ };
63
+
64
+ const ShortcutCategorySection = _ref3 => {
65
+ let {
66
+ title,
67
+ categoryName,
68
+ additionalShortcuts = []
69
+ } = _ref3;
70
+ const categoryShortcuts = useSelect(select => {
71
+ return select(keyboardShortcutsStore).getCategoryShortcuts(categoryName);
72
+ }, [categoryName]);
73
+ return createElement(ShortcutSection, {
74
+ title: title,
75
+ shortcuts: categoryShortcuts.concat(additionalShortcuts)
76
+ });
77
+ };
78
+
79
+ export default function KeyboardShortcutHelpModal(_ref4) {
80
+ let {
81
+ isModalActive,
82
+ toggleModal
83
+ } = _ref4;
84
+
85
+ if (!isModalActive) {
86
+ return null;
87
+ }
88
+
89
+ return createElement(Modal, {
90
+ className: "edit-site-keyboard-shortcut-help-modal",
91
+ title: __('Keyboard shortcuts'),
92
+ closeLabel: __('Close'),
93
+ onRequestClose: toggleModal
94
+ }, createElement(ShortcutSection, {
95
+ className: "edit-site-keyboard-shortcut-help-modal__main-shortcuts",
96
+ shortcuts: ['core/edit-site/keyboard-shortcuts']
97
+ }), createElement(ShortcutCategorySection, {
98
+ title: __('Global shortcuts'),
99
+ categoryName: "global"
100
+ }), createElement(ShortcutCategorySection, {
101
+ title: __('Selection shortcuts'),
102
+ categoryName: "selection"
103
+ }), createElement(ShortcutCategorySection, {
104
+ title: __('Block shortcuts'),
105
+ categoryName: "block",
106
+ additionalShortcuts: [{
107
+ keyCombination: {
108
+ character: '/'
109
+ },
110
+ description: __('Change the block type after adding a new paragraph.'),
111
+
112
+ /* translators: The forward-slash character. e.g. '/'. */
113
+ ariaLabel: __('Forward-slash')
114
+ }]
115
+ }), createElement(ShortcutSection, {
116
+ title: __('Text formatting'),
117
+ shortcuts: textFormattingShortcuts
118
+ }));
119
+ }
120
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/keyboard-shortcut-help-modal/index.js"],"names":["classnames","isString","Modal","__","store","keyboardShortcutsStore","useSelect","textFormattingShortcuts","Shortcut","DynamicShortcut","ShortcutList","shortcuts","map","shortcut","index","ShortcutSection","title","className","ShortcutCategorySection","categoryName","additionalShortcuts","categoryShortcuts","select","getCategoryShortcuts","concat","KeyboardShortcutHelpModal","isModalActive","toggleModal","keyCombination","character","description","ariaLabel"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { isString } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Modal } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { textFormattingShortcuts } from './config';\nimport Shortcut from './shortcut';\nimport DynamicShortcut from './dynamic-shortcut';\n\nconst ShortcutList = ( { shortcuts } ) => (\n\t/*\n\t * Disable reason: The `list` ARIA role is redundant but\n\t * Safari+VoiceOver won't announce the list otherwise.\n\t */\n\t/* eslint-disable jsx-a11y/no-redundant-roles */\n\t<ul\n\t\tclassName=\"edit-site-keyboard-shortcut-help-modal__shortcut-list\"\n\t\trole=\"list\"\n\t>\n\t\t{ shortcuts.map( ( shortcut, index ) => (\n\t\t\t<li\n\t\t\t\tclassName=\"edit-site-keyboard-shortcut-help-modal__shortcut\"\n\t\t\t\tkey={ index }\n\t\t\t>\n\t\t\t\t{ isString( shortcut ) ? (\n\t\t\t\t\t<DynamicShortcut name={ shortcut } />\n\t\t\t\t) : (\n\t\t\t\t\t<Shortcut { ...shortcut } />\n\t\t\t\t) }\n\t\t\t</li>\n\t\t) ) }\n\t</ul>\n\t/* eslint-enable jsx-a11y/no-redundant-roles */\n);\n\nconst ShortcutSection = ( { title, shortcuts, className } ) => (\n\t<section\n\t\tclassName={ classnames(\n\t\t\t'edit-site-keyboard-shortcut-help-modal__section',\n\t\t\tclassName\n\t\t) }\n\t>\n\t\t{ !! title && (\n\t\t\t<h2 className=\"edit-site-keyboard-shortcut-help-modal__section-title\">\n\t\t\t\t{ title }\n\t\t\t</h2>\n\t\t) }\n\t\t<ShortcutList shortcuts={ shortcuts } />\n\t</section>\n);\n\nconst ShortcutCategorySection = ( {\n\ttitle,\n\tcategoryName,\n\tadditionalShortcuts = [],\n} ) => {\n\tconst categoryShortcuts = useSelect(\n\t\t( select ) => {\n\t\t\treturn select( keyboardShortcutsStore ).getCategoryShortcuts(\n\t\t\t\tcategoryName\n\t\t\t);\n\t\t},\n\t\t[ categoryName ]\n\t);\n\n\treturn (\n\t\t<ShortcutSection\n\t\t\ttitle={ title }\n\t\t\tshortcuts={ categoryShortcuts.concat( additionalShortcuts ) }\n\t\t/>\n\t);\n};\n\nexport default function KeyboardShortcutHelpModal( {\n\tisModalActive,\n\ttoggleModal,\n} ) {\n\tif ( ! isModalActive ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\tclassName=\"edit-site-keyboard-shortcut-help-modal\"\n\t\t\ttitle={ __( 'Keyboard shortcuts' ) }\n\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\tonRequestClose={ toggleModal }\n\t\t>\n\t\t\t<ShortcutSection\n\t\t\t\tclassName=\"edit-site-keyboard-shortcut-help-modal__main-shortcuts\"\n\t\t\t\tshortcuts={ [ 'core/edit-site/keyboard-shortcuts' ] }\n\t\t\t/>\n\t\t\t<ShortcutCategorySection\n\t\t\t\ttitle={ __( 'Global shortcuts' ) }\n\t\t\t\tcategoryName=\"global\"\n\t\t\t/>\n\n\t\t\t<ShortcutCategorySection\n\t\t\t\ttitle={ __( 'Selection shortcuts' ) }\n\t\t\t\tcategoryName=\"selection\"\n\t\t\t/>\n\n\t\t\t<ShortcutCategorySection\n\t\t\t\ttitle={ __( 'Block shortcuts' ) }\n\t\t\t\tcategoryName=\"block\"\n\t\t\t\tadditionalShortcuts={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tkeyCombination: { character: '/' },\n\t\t\t\t\t\tdescription: __(\n\t\t\t\t\t\t\t'Change the block type after adding a new paragraph.'\n\t\t\t\t\t\t),\n\t\t\t\t\t\t/* translators: The forward-slash character. e.g. '/'. */\n\t\t\t\t\t\tariaLabel: __( 'Forward-slash' ),\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t/>\n\t\t\t<ShortcutSection\n\t\t\t\ttitle={ __( 'Text formatting' ) }\n\t\t\t\tshortcuts={ textFormattingShortcuts }\n\t\t\t/>\n\t\t</Modal>\n\t);\n}\n"]}
@@ -0,0 +1,58 @@
1
+ import { createElement } from "@wordpress/element";
2
+
3
+ /**
4
+ * External dependencies
5
+ */
6
+ import { castArray } from 'lodash';
7
+ /**
8
+ * WordPress dependencies
9
+ */
10
+
11
+ import { Fragment } from '@wordpress/element';
12
+ import { displayShortcutList, shortcutAriaLabel } from '@wordpress/keycodes';
13
+
14
+ function KeyCombination(_ref) {
15
+ let {
16
+ keyCombination,
17
+ forceAriaLabel
18
+ } = _ref;
19
+ const shortcut = keyCombination.modifier ? displayShortcutList[keyCombination.modifier](keyCombination.character) : keyCombination.character;
20
+ const ariaLabel = keyCombination.modifier ? shortcutAriaLabel[keyCombination.modifier](keyCombination.character) : keyCombination.character;
21
+ return createElement("kbd", {
22
+ className: "edit-site-keyboard-shortcut-help-modal__shortcut-key-combination",
23
+ "aria-label": forceAriaLabel || ariaLabel
24
+ }, castArray(shortcut).map((character, index) => {
25
+ if (character === '+') {
26
+ return createElement(Fragment, {
27
+ key: index
28
+ }, character);
29
+ }
30
+
31
+ return createElement("kbd", {
32
+ key: index,
33
+ className: "edit-site-keyboard-shortcut-help-modal__shortcut-key"
34
+ }, character);
35
+ }));
36
+ }
37
+
38
+ export default function Shortcut(_ref2) {
39
+ let {
40
+ description,
41
+ keyCombination,
42
+ aliases = [],
43
+ ariaLabel
44
+ } = _ref2;
45
+ return createElement(Fragment, null, createElement("div", {
46
+ className: "edit-site-keyboard-shortcut-help-modal__shortcut-description"
47
+ }, description), createElement("div", {
48
+ className: "edit-site-keyboard-shortcut-help-modal__shortcut-term"
49
+ }, createElement(KeyCombination, {
50
+ keyCombination: keyCombination,
51
+ forceAriaLabel: ariaLabel
52
+ }), aliases.map((alias, index) => createElement(KeyCombination, {
53
+ keyCombination: alias,
54
+ forceAriaLabel: ariaLabel,
55
+ key: index
56
+ }))));
57
+ }
58
+ //# sourceMappingURL=shortcut.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/keyboard-shortcut-help-modal/shortcut.js"],"names":["castArray","Fragment","displayShortcutList","shortcutAriaLabel","KeyCombination","keyCombination","forceAriaLabel","shortcut","modifier","character","ariaLabel","map","index","Shortcut","description","aliases","alias"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,QAA1B;AAEA;AACA;AACA;;AACA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SAASC,mBAAT,EAA8BC,iBAA9B,QAAuD,qBAAvD;;AAEA,SAASC,cAAT,OAA8D;AAAA,MAArC;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA;AAAlB,GAAqC;AAC7D,QAAMC,QAAQ,GAAGF,cAAc,CAACG,QAAf,GACdN,mBAAmB,CAAEG,cAAc,CAACG,QAAjB,CAAnB,CACAH,cAAc,CAACI,SADf,CADc,GAIdJ,cAAc,CAACI,SAJlB;AAKA,QAAMC,SAAS,GAAGL,cAAc,CAACG,QAAf,GACfL,iBAAiB,CAAEE,cAAc,CAACG,QAAjB,CAAjB,CACAH,cAAc,CAACI,SADf,CADe,GAIfJ,cAAc,CAACI,SAJlB;AAMA,SACC;AACC,IAAA,SAAS,EAAC,kEADX;AAEC,kBAAaH,cAAc,IAAII;AAFhC,KAIGV,SAAS,CAAEO,QAAF,CAAT,CAAsBI,GAAtB,CAA2B,CAAEF,SAAF,EAAaG,KAAb,KAAwB;AACpD,QAAKH,SAAS,KAAK,GAAnB,EAAyB;AACxB,aAAO,cAAC,QAAD;AAAU,QAAA,GAAG,EAAGG;AAAhB,SAA0BH,SAA1B,CAAP;AACA;;AAED,WACC;AACC,MAAA,GAAG,EAAGG,KADP;AAEC,MAAA,SAAS,EAAC;AAFX,OAIGH,SAJH,CADD;AAQA,GAbC,CAJH,CADD;AAqBA;;AAED,eAAe,SAASI,QAAT,QAKX;AAAA,MAL8B;AACjCC,IAAAA,WADiC;AAEjCT,IAAAA,cAFiC;AAGjCU,IAAAA,OAAO,GAAG,EAHuB;AAIjCL,IAAAA;AAJiC,GAK9B;AACH,SACC,8BACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACGI,WADH,CADD,EAIC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,cAAC,cAAD;AACC,IAAA,cAAc,EAAGT,cADlB;AAEC,IAAA,cAAc,EAAGK;AAFlB,IADD,EAKGK,OAAO,CAACJ,GAAR,CAAa,CAAEK,KAAF,EAASJ,KAAT,KACd,cAAC,cAAD;AACC,IAAA,cAAc,EAAGI,KADlB;AAEC,IAAA,cAAc,EAAGN,SAFlB;AAGC,IAAA,GAAG,EAAGE;AAHP,IADC,CALH,CAJD,CADD;AAoBA","sourcesContent":["/**\n * External dependencies\n */\nimport { castArray } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Fragment } from '@wordpress/element';\nimport { displayShortcutList, shortcutAriaLabel } from '@wordpress/keycodes';\n\nfunction KeyCombination( { keyCombination, forceAriaLabel } ) {\n\tconst shortcut = keyCombination.modifier\n\t\t? displayShortcutList[ keyCombination.modifier ](\n\t\t\t\tkeyCombination.character\n\t\t )\n\t\t: keyCombination.character;\n\tconst ariaLabel = keyCombination.modifier\n\t\t? shortcutAriaLabel[ keyCombination.modifier ](\n\t\t\t\tkeyCombination.character\n\t\t )\n\t\t: keyCombination.character;\n\n\treturn (\n\t\t<kbd\n\t\t\tclassName=\"edit-site-keyboard-shortcut-help-modal__shortcut-key-combination\"\n\t\t\taria-label={ forceAriaLabel || ariaLabel }\n\t\t>\n\t\t\t{ castArray( shortcut ).map( ( character, index ) => {\n\t\t\t\tif ( character === '+' ) {\n\t\t\t\t\treturn <Fragment key={ index }>{ character }</Fragment>;\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\t<kbd\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\tclassName=\"edit-site-keyboard-shortcut-help-modal__shortcut-key\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ character }\n\t\t\t\t\t</kbd>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</kbd>\n\t);\n}\n\nexport default function Shortcut( {\n\tdescription,\n\tkeyCombination,\n\taliases = [],\n\tariaLabel,\n} ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-keyboard-shortcut-help-modal__shortcut-description\">\n\t\t\t\t{ description }\n\t\t\t</div>\n\t\t\t<div className=\"edit-site-keyboard-shortcut-help-modal__shortcut-term\">\n\t\t\t\t<KeyCombination\n\t\t\t\t\tkeyCombination={ keyCombination }\n\t\t\t\t\tforceAriaLabel={ ariaLabel }\n\t\t\t\t/>\n\t\t\t\t{ aliases.map( ( alias, index ) => (\n\t\t\t\t\t<KeyCombination\n\t\t\t\t\t\tkeyCombination={ alias }\n\t\t\t\t\t\tforceAriaLabel={ ariaLabel }\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
@@ -124,6 +124,15 @@ function KeyboardShortcutsRegister() {
124
124
  character: ','
125
125
  }
126
126
  });
127
+ registerShortcut({
128
+ name: 'core/edit-site/keyboard-shortcuts',
129
+ category: 'main',
130
+ description: __('Display these keyboard shortcuts.'),
131
+ keyCombination: {
132
+ modifier: 'access',
133
+ character: 'h'
134
+ }
135
+ });
127
136
  registerShortcut({
128
137
  name: 'core/edit-site/next-region',
129
138
  category: 'global',
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/keyboard-shortcuts/index.js"],"names":["useEffect","useShortcut","store","keyboardShortcutsStore","useDispatch","useSelect","__","coreStore","interfaceStore","editSiteStore","SIDEBAR_BLOCK","STORE_NAME","KeyboardShortcuts","openEntitiesSavedStates","__experimentalGetDirtyEntityRecords","isSavingEntityRecord","isListViewOpen","select","isListViewOpened","isBlockInspectorOpen","getActiveComplementaryArea","name","redo","undo","setIsListViewOpened","enableComplementaryArea","disableComplementaryArea","event","preventDefault","dirtyEntityRecords","isDirty","length","isSaving","some","record","kind","key","KeyboardShortcutsRegister","registerShortcut","category","description","keyCombination","modifier","character","aliases","Register"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport {\n\tuseShortcut,\n\tstore as keyboardShortcutsStore,\n} from '@wordpress/keyboard-shortcuts';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { SIDEBAR_BLOCK } from '../sidebar/constants';\nimport { STORE_NAME } from '../../store/constants';\n\nfunction KeyboardShortcuts( { openEntitiesSavedStates } ) {\n\tconst {\n\t\t__experimentalGetDirtyEntityRecords,\n\t\tisSavingEntityRecord,\n\t} = useSelect( coreStore );\n\tconst isListViewOpen = useSelect(\n\t\t( select ) => select( editSiteStore ).isListViewOpened(),\n\t\t[]\n\t);\n\tconst isBlockInspectorOpen = useSelect(\n\t\t( select ) =>\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t) === SIDEBAR_BLOCK,\n\t\t[]\n\t);\n\tconst { redo, undo } = useDispatch( coreStore );\n\tconst { setIsListViewOpened } = useDispatch( editSiteStore );\n\tconst { enableComplementaryArea, disableComplementaryArea } = useDispatch(\n\t\tinterfaceStore\n\t);\n\n\tuseShortcut( 'core/edit-site/save', ( event ) => {\n\t\tevent.preventDefault();\n\n\t\tconst dirtyEntityRecords = __experimentalGetDirtyEntityRecords();\n\t\tconst isDirty = !! dirtyEntityRecords.length;\n\t\tconst isSaving = dirtyEntityRecords.some( ( record ) =>\n\t\t\tisSavingEntityRecord( record.kind, record.name, record.key )\n\t\t);\n\n\t\tif ( ! isSaving && isDirty ) {\n\t\t\topenEntitiesSavedStates();\n\t\t}\n\t} );\n\n\tuseShortcut( 'core/edit-site/undo', ( event ) => {\n\t\tundo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/edit-site/redo', ( event ) => {\n\t\tredo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/edit-site/toggle-list-view', () => {\n\t\tsetIsListViewOpened( ! isListViewOpen );\n\t} );\n\n\tuseShortcut( 'core/edit-site/toggle-block-settings-sidebar', ( event ) => {\n\t\t// This shortcut has no known clashes, but use preventDefault to prevent any\n\t\t// obscure shortcuts from triggering.\n\t\tevent.preventDefault();\n\n\t\tif ( isBlockInspectorOpen ) {\n\t\t\tdisableComplementaryArea( STORE_NAME );\n\t\t} else {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_BLOCK );\n\t\t}\n\t} );\n\n\treturn null;\n}\n\nfunction KeyboardShortcutsRegister() {\n\t// Registering the shortcuts\n\tconst { registerShortcut } = useDispatch( keyboardShortcutsStore );\n\tuseEffect( () => {\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/save',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Save your changes.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 's',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/undo',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Undo your last changes.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 'z',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/redo',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Redo your last undo.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: 'z',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/toggle-list-view',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Open the block list view.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: 'o',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/toggle-block-settings-sidebar',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Show or hide the block settings sidebar.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: ',',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/next-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the next part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrl',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'n',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/previous-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the previous part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrlShift',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'p',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\t}, [ registerShortcut ] );\n\n\treturn null;\n}\n\nKeyboardShortcuts.Register = KeyboardShortcutsRegister;\nexport default KeyboardShortcuts;\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/keyboard-shortcuts/index.js"],"names":["useEffect","useShortcut","store","keyboardShortcutsStore","useDispatch","useSelect","__","coreStore","interfaceStore","editSiteStore","SIDEBAR_BLOCK","STORE_NAME","KeyboardShortcuts","openEntitiesSavedStates","__experimentalGetDirtyEntityRecords","isSavingEntityRecord","isListViewOpen","select","isListViewOpened","isBlockInspectorOpen","getActiveComplementaryArea","name","redo","undo","setIsListViewOpened","enableComplementaryArea","disableComplementaryArea","event","preventDefault","dirtyEntityRecords","isDirty","length","isSaving","some","record","kind","key","KeyboardShortcutsRegister","registerShortcut","category","description","keyCombination","modifier","character","aliases","Register"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport {\n\tuseShortcut,\n\tstore as keyboardShortcutsStore,\n} from '@wordpress/keyboard-shortcuts';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { SIDEBAR_BLOCK } from '../sidebar/constants';\nimport { STORE_NAME } from '../../store/constants';\n\nfunction KeyboardShortcuts( { openEntitiesSavedStates } ) {\n\tconst {\n\t\t__experimentalGetDirtyEntityRecords,\n\t\tisSavingEntityRecord,\n\t} = useSelect( coreStore );\n\tconst isListViewOpen = useSelect(\n\t\t( select ) => select( editSiteStore ).isListViewOpened(),\n\t\t[]\n\t);\n\tconst isBlockInspectorOpen = useSelect(\n\t\t( select ) =>\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t) === SIDEBAR_BLOCK,\n\t\t[]\n\t);\n\tconst { redo, undo } = useDispatch( coreStore );\n\tconst { setIsListViewOpened } = useDispatch( editSiteStore );\n\tconst { enableComplementaryArea, disableComplementaryArea } = useDispatch(\n\t\tinterfaceStore\n\t);\n\n\tuseShortcut( 'core/edit-site/save', ( event ) => {\n\t\tevent.preventDefault();\n\n\t\tconst dirtyEntityRecords = __experimentalGetDirtyEntityRecords();\n\t\tconst isDirty = !! dirtyEntityRecords.length;\n\t\tconst isSaving = dirtyEntityRecords.some( ( record ) =>\n\t\t\tisSavingEntityRecord( record.kind, record.name, record.key )\n\t\t);\n\n\t\tif ( ! isSaving && isDirty ) {\n\t\t\topenEntitiesSavedStates();\n\t\t}\n\t} );\n\n\tuseShortcut( 'core/edit-site/undo', ( event ) => {\n\t\tundo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/edit-site/redo', ( event ) => {\n\t\tredo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/edit-site/toggle-list-view', () => {\n\t\tsetIsListViewOpened( ! isListViewOpen );\n\t} );\n\n\tuseShortcut( 'core/edit-site/toggle-block-settings-sidebar', ( event ) => {\n\t\t// This shortcut has no known clashes, but use preventDefault to prevent any\n\t\t// obscure shortcuts from triggering.\n\t\tevent.preventDefault();\n\n\t\tif ( isBlockInspectorOpen ) {\n\t\t\tdisableComplementaryArea( STORE_NAME );\n\t\t} else {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_BLOCK );\n\t\t}\n\t} );\n\n\treturn null;\n}\n\nfunction KeyboardShortcutsRegister() {\n\t// Registering the shortcuts\n\tconst { registerShortcut } = useDispatch( keyboardShortcutsStore );\n\tuseEffect( () => {\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/save',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Save your changes.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 's',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/undo',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Undo your last changes.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primary',\n\t\t\t\tcharacter: 'z',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/redo',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Redo your last undo.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: 'z',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/toggle-list-view',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Open the block list view.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: 'o',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/toggle-block-settings-sidebar',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Show or hide the block settings sidebar.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'primaryShift',\n\t\t\t\tcharacter: ',',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/keyboard-shortcuts',\n\t\t\tcategory: 'main',\n\t\t\tdescription: __( 'Display these keyboard shortcuts.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'access',\n\t\t\t\tcharacter: 'h',\n\t\t\t},\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/next-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the next part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrl',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'n',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/previous-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the previous part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrlShift',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'p',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\t}, [ registerShortcut ] );\n\n\treturn null;\n}\n\nKeyboardShortcuts.Register = KeyboardShortcutsRegister;\nexport default KeyboardShortcuts;\n"]}
@@ -12,7 +12,7 @@ import { __experimentalHStack as HStack, Icon, Tooltip } from '@wordpress/compon
12
12
  import { store as coreStore } from '@wordpress/core-data';
13
13
  import { useSelect } from '@wordpress/data';
14
14
  import { useState } from '@wordpress/element';
15
- import { commentAuthorAvatar as authorIcon, layout as themeIcon, plugins as pluginIcon } from '@wordpress/icons';
15
+ import { commentAuthorAvatar as authorIcon, layout as themeIcon, plugins as pluginIcon, globe as globeIcon } from '@wordpress/icons';
16
16
  import { __ } from '@wordpress/i18n';
17
17
  const TEMPLATE_POST_TYPE_NAMES = ['wp_template', 'wp_template_part'];
18
18
 
@@ -31,67 +31,75 @@ function CustomizedTooltip(_ref) {
31
31
  }, children);
32
32
  }
33
33
 
34
- function AddedByTheme(_ref2) {
35
- var _theme$name;
36
-
34
+ function BaseAddedBy(_ref2) {
37
35
  let {
38
- slug,
36
+ text,
37
+ icon,
38
+ imageUrl,
39
39
  isCustomized
40
40
  } = _ref2;
41
- const theme = useSelect(select => select(coreStore).getTheme(slug), [slug]);
41
+ const [isImageLoaded, setIsImageLoaded] = useState(false);
42
42
  return createElement(HStack, {
43
43
  alignment: "left"
44
44
  }, createElement(CustomizedTooltip, {
45
45
  isCustomized: isCustomized
46
- }, createElement("div", {
46
+ }, imageUrl ? createElement("div", {
47
+ className: classnames('edit-site-list-added-by__avatar', {
48
+ 'is-loaded': isImageLoaded
49
+ })
50
+ }, createElement("img", {
51
+ onLoad: () => setIsImageLoaded(true),
52
+ alt: "",
53
+ src: imageUrl
54
+ })) : createElement("div", {
47
55
  className: classnames('edit-site-list-added-by__icon', {
48
56
  'is-customized': isCustomized
49
57
  })
50
58
  }, createElement(Icon, {
51
- icon: themeIcon
52
- }))), createElement("span", null, (theme === null || theme === void 0 ? void 0 : (_theme$name = theme.name) === null || _theme$name === void 0 ? void 0 : _theme$name.rendered) || slug));
59
+ icon: icon
60
+ }))), createElement("span", null, text));
53
61
  }
54
62
 
55
- function AddedByPlugin(_ref3) {
63
+ function AddedByTheme(_ref3) {
64
+ var _theme$name;
65
+
56
66
  let {
57
67
  slug,
58
68
  isCustomized
59
69
  } = _ref3;
70
+ const theme = useSelect(select => select(coreStore).getTheme(slug), [slug]);
71
+ return createElement(BaseAddedBy, {
72
+ icon: themeIcon,
73
+ text: (theme === null || theme === void 0 ? void 0 : (_theme$name = theme.name) === null || _theme$name === void 0 ? void 0 : _theme$name.rendered) || slug,
74
+ isCustomized: isCustomized
75
+ });
76
+ }
77
+
78
+ function AddedByPlugin(_ref4) {
79
+ let {
80
+ slug,
81
+ isCustomized
82
+ } = _ref4;
60
83
  const plugin = useSelect(select => select(coreStore).getPlugin(slug), [slug]);
61
- return createElement(HStack, {
62
- alignment: "left"
63
- }, createElement(CustomizedTooltip, {
84
+ return createElement(BaseAddedBy, {
85
+ icon: pluginIcon,
86
+ text: (plugin === null || plugin === void 0 ? void 0 : plugin.name) || slug,
64
87
  isCustomized: isCustomized
65
- }, createElement("div", {
66
- className: "edit-site-list-added-by__icon"
67
- }, createElement(Icon, {
68
- icon: pluginIcon
69
- }))), createElement("span", null, (plugin === null || plugin === void 0 ? void 0 : plugin.name) || slug));
88
+ });
70
89
  }
71
90
 
72
- function AddedByAuthor(_ref4) {
91
+ function AddedByAuthor(_ref5) {
73
92
  var _user$avatar_urls;
74
93
 
75
94
  let {
76
95
  id
77
- } = _ref4;
96
+ } = _ref5;
78
97
  const user = useSelect(select => select(coreStore).getUser(id), [id]);
79
- const [isImageLoaded, setIsImageLoaded] = useState(false);
80
- const avatarURL = user === null || user === void 0 ? void 0 : (_user$avatar_urls = user.avatar_urls) === null || _user$avatar_urls === void 0 ? void 0 : _user$avatar_urls[48];
81
- const hasAvatar = !!avatarURL;
82
- return createElement(HStack, {
83
- alignment: "left"
84
- }, createElement("div", {
85
- className: classnames(hasAvatar ? 'edit-site-list-added-by__avatar' : 'edit-site-list-added-by__icon', {
86
- 'is-loaded': isImageLoaded
87
- })
88
- }, hasAvatar ? createElement("img", {
89
- onLoad: () => setIsImageLoaded(true),
90
- alt: "",
91
- src: avatarURL
92
- }) : createElement(Icon, {
93
- icon: authorIcon
94
- })), createElement("span", null, user === null || user === void 0 ? void 0 : user.nickname));
98
+ return createElement(BaseAddedBy, {
99
+ icon: authorIcon,
100
+ imageUrl: user === null || user === void 0 ? void 0 : (_user$avatar_urls = user.avatar_urls) === null || _user$avatar_urls === void 0 ? void 0 : _user$avatar_urls[48],
101
+ text: user === null || user === void 0 ? void 0 : user.nickname
102
+ });
95
103
  }
96
104
 
97
105
  function AddedBySite() {
@@ -107,29 +115,22 @@ function AddedBySite() {
107
115
  } = select(coreStore);
108
116
  const siteData = getEntityRecord('root', '__unstableBase');
109
117
  return {
110
- name: siteData.name,
118
+ name: siteData === null || siteData === void 0 ? void 0 : siteData.name,
111
119
  logoURL: siteData !== null && siteData !== void 0 && siteData.site_logo ? (_getMedia = getMedia(siteData.site_logo)) === null || _getMedia === void 0 ? void 0 : _getMedia.source_url : undefined
112
120
  };
113
121
  }, []);
114
- const [isImageLoaded, setIsImageLoaded] = useState(false);
115
- return createElement(HStack, {
116
- alignment: "left"
117
- }, createElement("div", {
118
- className: classnames('edit-site-list-added-by__avatar', {
119
- 'is-loaded': isImageLoaded
120
- })
121
- }, createElement("img", {
122
- onLoad: () => setIsImageLoaded(true),
123
- alt: "",
124
- src: logoURL
125
- })), createElement("span", null, name));
122
+ return createElement(BaseAddedBy, {
123
+ icon: globeIcon,
124
+ imageUrl: logoURL,
125
+ text: name
126
+ });
126
127
  }
127
128
 
128
- export default function AddedBy(_ref5) {
129
+ export default function AddedBy(_ref6) {
129
130
  let {
130
131
  templateType,
131
132
  template
132
- } = _ref5;
133
+ } = _ref6;
133
134
 
134
135
  if (!template) {
135
136
  return;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/list/added-by.js"],"names":["classnames","__experimentalHStack","HStack","Icon","Tooltip","store","coreStore","useSelect","useState","commentAuthorAvatar","authorIcon","layout","themeIcon","plugins","pluginIcon","__","TEMPLATE_POST_TYPE_NAMES","CustomizedTooltip","isCustomized","children","AddedByTheme","slug","theme","select","getTheme","name","rendered","AddedByPlugin","plugin","getPlugin","AddedByAuthor","id","user","getUser","isImageLoaded","setIsImageLoaded","avatarURL","avatar_urls","hasAvatar","nickname","AddedBySite","logoURL","getEntityRecord","getMedia","siteData","site_logo","source_url","undefined","AddedBy","templateType","template","includes","has_theme_file","origin","source","author"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\tIcon,\n\tTooltip,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport {\n\tcommentAuthorAvatar as authorIcon,\n\tlayout as themeIcon,\n\tplugins as pluginIcon,\n} from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\nconst TEMPLATE_POST_TYPE_NAMES = [ 'wp_template', 'wp_template_part' ];\n\nfunction CustomizedTooltip( { isCustomized, children } ) {\n\tif ( ! isCustomized ) {\n\t\treturn children;\n\t}\n\n\treturn (\n\t\t<Tooltip text={ __( 'This template has been customized' ) }>\n\t\t\t{ children }\n\t\t</Tooltip>\n\t);\n}\n\nfunction AddedByTheme( { slug, isCustomized } ) {\n\tconst theme = useSelect(\n\t\t( select ) => select( coreStore ).getTheme( slug ),\n\t\t[ slug ]\n\t);\n\n\treturn (\n\t\t<HStack alignment=\"left\">\n\t\t\t<CustomizedTooltip isCustomized={ isCustomized }>\n\t\t\t\t<div\n\t\t\t\t\tclassName={ classnames( 'edit-site-list-added-by__icon', {\n\t\t\t\t\t\t'is-customized': isCustomized,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<Icon icon={ themeIcon } />\n\t\t\t\t</div>\n\t\t\t</CustomizedTooltip>\n\t\t\t<span>{ theme?.name?.rendered || slug }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction AddedByPlugin( { slug, isCustomized } ) {\n\tconst plugin = useSelect(\n\t\t( select ) => select( coreStore ).getPlugin( slug ),\n\t\t[ slug ]\n\t);\n\n\treturn (\n\t\t<HStack alignment=\"left\">\n\t\t\t<CustomizedTooltip isCustomized={ isCustomized }>\n\t\t\t\t<div className=\"edit-site-list-added-by__icon\">\n\t\t\t\t\t<Icon icon={ pluginIcon } />\n\t\t\t\t</div>\n\t\t\t</CustomizedTooltip>\n\t\t\t<span>{ plugin?.name || slug }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction AddedByAuthor( { id } ) {\n\tconst user = useSelect( ( select ) => select( coreStore ).getUser( id ), [\n\t\tid,\n\t] );\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\n\tconst avatarURL = user?.avatar_urls?.[ 48 ];\n\tconst hasAvatar = !! avatarURL;\n\n\treturn (\n\t\t<HStack alignment=\"left\">\n\t\t\t<div\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\thasAvatar\n\t\t\t\t\t\t? 'edit-site-list-added-by__avatar'\n\t\t\t\t\t\t: 'edit-site-list-added-by__icon',\n\t\t\t\t\t{\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ hasAvatar ? (\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ avatarURL }\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<Icon icon={ authorIcon } />\n\t\t\t\t) }\n\t\t\t</div>\n\t\t\t<span>{ user?.nickname }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction AddedBySite() {\n\tconst { name, logoURL } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, getMedia } = select( coreStore );\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\n\t\treturn {\n\t\t\tname: siteData.name,\n\t\t\tlogoURL: siteData?.site_logo\n\t\t\t\t? getMedia( siteData.site_logo )?.source_url\n\t\t\t\t: undefined,\n\t\t};\n\t}, [] );\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\n\treturn (\n\t\t<HStack alignment=\"left\">\n\t\t\t<div\n\t\t\t\tclassName={ classnames( 'edit-site-list-added-by__avatar', {\n\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<img\n\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\talt=\"\"\n\t\t\t\t\tsrc={ logoURL }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<span>{ name }</span>\n\t\t</HStack>\n\t);\n}\n\nexport default function AddedBy( { templateType, template } ) {\n\tif ( ! template ) {\n\t\treturn;\n\t}\n\n\tif ( TEMPLATE_POST_TYPE_NAMES.includes( templateType ) ) {\n\t\t// Template originally provided by a theme, but customized by a user.\n\t\t// Templates originally didn't have the 'origin' field so identify\n\t\t// older customized templates by checking for no origin and a 'theme'\n\t\t// or 'custom' source.\n\t\tif (\n\t\t\ttemplate.has_theme_file &&\n\t\t\t( template.origin === 'theme' ||\n\t\t\t\t( ! template.origin &&\n\t\t\t\t\t[ 'theme', 'custom' ].includes( template.source ) ) )\n\t\t) {\n\t\t\treturn (\n\t\t\t\t<AddedByTheme\n\t\t\t\t\tslug={ template.theme }\n\t\t\t\t\tisCustomized={ template.source === 'custom' }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\t// Template originally provided by a plugin, but customized by a user.\n\t\tif ( template.has_theme_file && template.origin === 'plugin' ) {\n\t\t\treturn (\n\t\t\t\t<AddedByPlugin\n\t\t\t\t\tslug={ template.theme }\n\t\t\t\t\tisCustomized={ template.source === 'custom' }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\t// Template was created from scratch, but has no author. Author support\n\t\t// was only added to templates in WordPress 5.9. Fallback to showing the\n\t\t// site logo and title.\n\t\tif (\n\t\t\t! template.has_theme_file &&\n\t\t\ttemplate.source === 'custom' &&\n\t\t\t! template.author\n\t\t) {\n\t\t\treturn <AddedBySite />;\n\t\t}\n\t}\n\n\t// Simply show the author for templates created from scratch that have an\n\t// author or for any other post type.\n\treturn <AddedByAuthor id={ template.author } />;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/list/added-by.js"],"names":["classnames","__experimentalHStack","HStack","Icon","Tooltip","store","coreStore","useSelect","useState","commentAuthorAvatar","authorIcon","layout","themeIcon","plugins","pluginIcon","globe","globeIcon","__","TEMPLATE_POST_TYPE_NAMES","CustomizedTooltip","isCustomized","children","BaseAddedBy","text","icon","imageUrl","isImageLoaded","setIsImageLoaded","AddedByTheme","slug","theme","select","getTheme","name","rendered","AddedByPlugin","plugin","getPlugin","AddedByAuthor","id","user","getUser","avatar_urls","nickname","AddedBySite","logoURL","getEntityRecord","getMedia","siteData","site_logo","source_url","undefined","AddedBy","templateType","template","includes","has_theme_file","origin","source","author"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\tIcon,\n\tTooltip,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport {\n\tcommentAuthorAvatar as authorIcon,\n\tlayout as themeIcon,\n\tplugins as pluginIcon,\n\tglobe as globeIcon,\n} from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\nconst TEMPLATE_POST_TYPE_NAMES = [ 'wp_template', 'wp_template_part' ];\n\nfunction CustomizedTooltip( { isCustomized, children } ) {\n\tif ( ! isCustomized ) {\n\t\treturn children;\n\t}\n\n\treturn (\n\t\t<Tooltip text={ __( 'This template has been customized' ) }>\n\t\t\t{ children }\n\t\t</Tooltip>\n\t);\n}\n\nfunction BaseAddedBy( { text, icon, imageUrl, isCustomized } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\n\treturn (\n\t\t<HStack alignment=\"left\">\n\t\t\t<CustomizedTooltip isCustomized={ isCustomized }>\n\t\t\t\t{ imageUrl ? (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'edit-site-list-added-by__avatar',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'is-loaded': isImageLoaded,\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\t\t<img\n\t\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'edit-site-list-added-by__icon',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'is-customized': isCustomized,\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\t\t<Icon icon={ icon } />\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t</CustomizedTooltip>\n\t\t\t<span>{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction AddedByTheme( { slug, isCustomized } ) {\n\tconst theme = useSelect(\n\t\t( select ) => select( coreStore ).getTheme( slug ),\n\t\t[ slug ]\n\t);\n\n\treturn (\n\t\t<BaseAddedBy\n\t\t\ticon={ themeIcon }\n\t\t\ttext={ theme?.name?.rendered || slug }\n\t\t\tisCustomized={ isCustomized }\n\t\t/>\n\t);\n}\n\nfunction AddedByPlugin( { slug, isCustomized } ) {\n\tconst plugin = useSelect(\n\t\t( select ) => select( coreStore ).getPlugin( slug ),\n\t\t[ slug ]\n\t);\n\n\treturn (\n\t\t<BaseAddedBy\n\t\t\ticon={ pluginIcon }\n\t\t\ttext={ plugin?.name || slug }\n\t\t\tisCustomized={ isCustomized }\n\t\t/>\n\t);\n}\n\nfunction AddedByAuthor( { id } ) {\n\tconst user = useSelect( ( select ) => select( coreStore ).getUser( id ), [\n\t\tid,\n\t] );\n\n\treturn (\n\t\t<BaseAddedBy\n\t\t\ticon={ authorIcon }\n\t\t\timageUrl={ user?.avatar_urls?.[ 48 ] }\n\t\t\ttext={ user?.nickname }\n\t\t/>\n\t);\n}\n\nfunction AddedBySite() {\n\tconst { name, logoURL } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, getMedia } = select( coreStore );\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\n\t\treturn {\n\t\t\tname: siteData?.name,\n\t\t\tlogoURL: siteData?.site_logo\n\t\t\t\t? getMedia( siteData.site_logo )?.source_url\n\t\t\t\t: undefined,\n\t\t};\n\t}, [] );\n\n\treturn (\n\t\t<BaseAddedBy icon={ globeIcon } imageUrl={ logoURL } text={ name } />\n\t);\n}\n\nexport default function AddedBy( { templateType, template } ) {\n\tif ( ! template ) {\n\t\treturn;\n\t}\n\n\tif ( TEMPLATE_POST_TYPE_NAMES.includes( templateType ) ) {\n\t\t// Template originally provided by a theme, but customized by a user.\n\t\t// Templates originally didn't have the 'origin' field so identify\n\t\t// older customized templates by checking for no origin and a 'theme'\n\t\t// or 'custom' source.\n\t\tif (\n\t\t\ttemplate.has_theme_file &&\n\t\t\t( template.origin === 'theme' ||\n\t\t\t\t( ! template.origin &&\n\t\t\t\t\t[ 'theme', 'custom' ].includes( template.source ) ) )\n\t\t) {\n\t\t\treturn (\n\t\t\t\t<AddedByTheme\n\t\t\t\t\tslug={ template.theme }\n\t\t\t\t\tisCustomized={ template.source === 'custom' }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\t// Template originally provided by a plugin, but customized by a user.\n\t\tif ( template.has_theme_file && template.origin === 'plugin' ) {\n\t\t\treturn (\n\t\t\t\t<AddedByPlugin\n\t\t\t\t\tslug={ template.theme }\n\t\t\t\t\tisCustomized={ template.source === 'custom' }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\t// Template was created from scratch, but has no author. Author support\n\t\t// was only added to templates in WordPress 5.9. Fallback to showing the\n\t\t// site logo and title.\n\t\tif (\n\t\t\t! template.has_theme_file &&\n\t\t\ttemplate.source === 'custom' &&\n\t\t\t! template.author\n\t\t) {\n\t\t\treturn <AddedBySite />;\n\t\t}\n\t}\n\n\t// Simply show the author for templates created from scratch that have an\n\t// author or for any other post type.\n\treturn <AddedByAuthor id={ template.author } />;\n}\n"]}