@wordpress/edit-site 6.0.0 → 6.0.2

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 (145) hide show
  1. package/build/components/add-new-page/index.js +2 -1
  2. package/build/components/add-new-page/index.js.map +1 -1
  3. package/build/components/block-editor/inserter-media-categories.js +1 -1
  4. package/build/components/block-editor/inserter-media-categories.js.map +1 -1
  5. package/build/components/editor/index.js +54 -60
  6. package/build/components/editor/index.js.map +1 -1
  7. package/build/components/editor/use-editor-title.js +39 -0
  8. package/build/components/editor/use-editor-title.js.map +1 -0
  9. package/build/components/global-styles/font-library-modal/installed-fonts.js +1 -0
  10. package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  11. package/build/components/global-styles/screen-css.js +1 -1
  12. package/build/components/global-styles/screen-css.js.map +1 -1
  13. package/build/components/global-styles/screen-revisions/index.js +4 -23
  14. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  15. package/build/components/global-styles/screen-revisions/revisions-buttons.js +1 -1
  16. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  17. package/build/components/global-styles/shadows-edit-panel.js +1 -0
  18. package/build/components/global-styles/shadows-edit-panel.js.map +1 -1
  19. package/build/components/global-styles/variations/variation.js +11 -16
  20. package/build/components/global-styles/variations/variation.js.map +1 -1
  21. package/build/components/global-styles/variations/variations-color.js +2 -1
  22. package/build/components/global-styles/variations/variations-color.js.map +1 -1
  23. package/build/components/global-styles/variations/variations-typography.js +1 -0
  24. package/build/components/global-styles/variations/variations-typography.js.map +1 -1
  25. package/build/components/global-styles-sidebar/index.js +2 -0
  26. package/build/components/global-styles-sidebar/index.js.map +1 -1
  27. package/build/components/layout/index.js +16 -59
  28. package/build/components/layout/index.js.map +1 -1
  29. package/build/components/page-patterns/index.js +5 -5
  30. package/build/components/page-patterns/index.js.map +1 -1
  31. package/build/components/pagination/index.js +17 -8
  32. package/build/components/pagination/index.js.map +1 -1
  33. package/build/components/sidebar-dataviews/dataview-item.js +6 -2
  34. package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
  35. package/build/components/sidebar-navigation-screen/index.js +1 -1
  36. package/build/components/sidebar-navigation-screen/index.js.map +1 -1
  37. package/build/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +1 -0
  38. package/build/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js.map +1 -1
  39. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +1 -0
  40. package/build/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -1
  41. package/build/components/sidebar-navigation-screen-patterns/category-item.js +1 -1
  42. package/build/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  43. package/build/components/sidebar-navigation-screen-patterns/index.js +1 -1
  44. package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  45. package/build/components/site-hub/index.js +38 -128
  46. package/build/components/site-hub/index.js.map +1 -1
  47. package/build/deprecated.js +11 -0
  48. package/build/deprecated.js.map +1 -1
  49. package/build/hooks/push-changes-to-global-styles/index.js +3 -2
  50. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  51. package/build/lock-unlock.js +1 -1
  52. package/build/lock-unlock.js.map +1 -1
  53. package/build/store/private-actions.js +33 -18
  54. package/build/store/private-actions.js.map +1 -1
  55. package/build-module/components/add-new-page/index.js +2 -1
  56. package/build-module/components/add-new-page/index.js.map +1 -1
  57. package/build-module/components/block-editor/inserter-media-categories.js +1 -1
  58. package/build-module/components/block-editor/inserter-media-categories.js.map +1 -1
  59. package/build-module/components/editor/index.js +54 -60
  60. package/build-module/components/editor/index.js.map +1 -1
  61. package/build-module/components/editor/use-editor-title.js +31 -0
  62. package/build-module/components/editor/use-editor-title.js.map +1 -0
  63. package/build-module/components/global-styles/font-library-modal/installed-fonts.js +1 -0
  64. package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
  65. package/build-module/components/global-styles/screen-css.js +1 -1
  66. package/build-module/components/global-styles/screen-css.js.map +1 -1
  67. package/build-module/components/global-styles/screen-revisions/index.js +4 -23
  68. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  69. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +1 -1
  70. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  71. package/build-module/components/global-styles/shadows-edit-panel.js +1 -0
  72. package/build-module/components/global-styles/shadows-edit-panel.js.map +1 -1
  73. package/build-module/components/global-styles/variations/variation.js +11 -16
  74. package/build-module/components/global-styles/variations/variation.js.map +1 -1
  75. package/build-module/components/global-styles/variations/variations-color.js +3 -2
  76. package/build-module/components/global-styles/variations/variations-color.js.map +1 -1
  77. package/build-module/components/global-styles/variations/variations-typography.js +1 -0
  78. package/build-module/components/global-styles/variations/variations-typography.js.map +1 -1
  79. package/build-module/components/global-styles-sidebar/index.js +2 -0
  80. package/build-module/components/global-styles-sidebar/index.js.map +1 -1
  81. package/build-module/components/layout/index.js +18 -61
  82. package/build-module/components/layout/index.js.map +1 -1
  83. package/build-module/components/page-patterns/index.js +5 -5
  84. package/build-module/components/page-patterns/index.js.map +1 -1
  85. package/build-module/components/pagination/index.js +17 -8
  86. package/build-module/components/pagination/index.js.map +1 -1
  87. package/build-module/components/sidebar-dataviews/dataview-item.js +6 -2
  88. package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
  89. package/build-module/components/sidebar-navigation-screen/index.js +1 -1
  90. package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
  91. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +1 -0
  92. package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js.map +1 -1
  93. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +1 -0
  94. package/build-module/components/sidebar-navigation-screen-navigation-menu/rename-modal.js.map +1 -1
  95. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js +2 -2
  96. package/build-module/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
  97. package/build-module/components/sidebar-navigation-screen-patterns/index.js +1 -1
  98. package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
  99. package/build-module/components/site-hub/index.js +40 -130
  100. package/build-module/components/site-hub/index.js.map +1 -1
  101. package/build-module/deprecated.js +11 -0
  102. package/build-module/deprecated.js.map +1 -1
  103. package/build-module/hooks/push-changes-to-global-styles/index.js +3 -2
  104. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  105. package/build-module/lock-unlock.js +1 -1
  106. package/build-module/lock-unlock.js.map +1 -1
  107. package/build-module/store/private-actions.js +33 -18
  108. package/build-module/store/private-actions.js.map +1 -1
  109. package/build-style/style-rtl.css +43 -85
  110. package/build-style/style.css +43 -85
  111. package/package.json +41 -41
  112. package/src/components/add-new-page/index.js +2 -1
  113. package/src/components/block-editor/inserter-media-categories.js +1 -3
  114. package/src/components/block-editor/style.scss +11 -0
  115. package/src/components/editor/index.js +69 -96
  116. package/src/components/editor/style.scss +1 -5
  117. package/src/components/editor/use-editor-title.js +35 -0
  118. package/src/components/global-styles/font-library-modal/installed-fonts.js +1 -0
  119. package/src/components/global-styles/screen-css.js +1 -1
  120. package/src/components/global-styles/screen-revisions/index.js +4 -24
  121. package/src/components/global-styles/screen-revisions/revisions-buttons.js +1 -1
  122. package/src/components/global-styles/screen-revisions/style.scss +4 -8
  123. package/src/components/global-styles/shadows-edit-panel.js +1 -0
  124. package/src/components/global-styles/variations/variation.js +14 -19
  125. package/src/components/global-styles/variations/variations-color.js +12 -4
  126. package/src/components/global-styles/variations/variations-typography.js +5 -1
  127. package/src/components/global-styles-sidebar/index.js +2 -0
  128. package/src/components/layout/index.js +17 -67
  129. package/src/components/layout/style.scss +18 -58
  130. package/src/components/page-patterns/index.js +15 -12
  131. package/src/components/pagination/index.js +21 -16
  132. package/src/components/sidebar-dataviews/dataview-item.js +6 -2
  133. package/src/components/sidebar-navigation-screen/index.js +1 -1
  134. package/src/components/sidebar-navigation-screen/style.scss +2 -2
  135. package/src/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +1 -0
  136. package/src/components/sidebar-navigation-screen-navigation-menu/rename-modal.js +1 -0
  137. package/src/components/sidebar-navigation-screen-patterns/category-item.js +11 -2
  138. package/src/components/sidebar-navigation-screen-patterns/index.js +5 -1
  139. package/src/components/site-hub/index.js +55 -146
  140. package/src/components/site-hub/style.scss +1 -4
  141. package/src/components/site-icon/style.scss +0 -4
  142. package/src/deprecated.js +14 -0
  143. package/src/hooks/push-changes-to-global-styles/index.js +3 -2
  144. package/src/lock-unlock.js +1 -1
  145. package/src/store/private-actions.js +58 -30
@@ -1 +1 @@
1
- {"version":3,"names":["__","ExternalLink","privateApis","blockEditorPrivateApis","unlock","ScreenHeader","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","useGlobalStyle","AdvancedPanel","StylesAdvancedPanel","ScreenCSS","description","style","undefined","shouldDecodeEncode","inheritedStyle","setStyle","children","title","href","className","value","onChange","inheritedValue"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-css.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { ExternalLink } from '@wordpress/components';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport ScreenHeader from './header';\n\nconst { useGlobalStyle, AdvancedPanel: StylesAdvancedPanel } = unlock(\n\tblockEditorPrivateApis\n);\n\nfunction ScreenCSS() {\n\tconst description = __(\n\t\t'Add your own CSS to customize the appearance and layout of your site.'\n\t);\n\tconst [ style ] = useGlobalStyle( '', undefined, 'user', {\n\t\tshouldDecodeEncode: false,\n\t} );\n\tconst [ inheritedStyle, setStyle ] = useGlobalStyle( '', undefined, 'all', {\n\t\tshouldDecodeEncode: false,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'CSS' ) }\n\t\t\t\tdescription={\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ description }\n\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\thref=\"https://wordpress.org/documentation/article/css/\"\n\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-css-help-link\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Learn more about CSS' ) }\n\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t</>\n\t\t\t\t}\n\t\t\t/>\n\t\t\t<div className=\"edit-site-global-styles-screen-css\">\n\t\t\t\t<StylesAdvancedPanel\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default ScreenCSS;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,WAAW,IAAIC,sBAAsB,QAAQ,yBAAyB;;AAE/E;AACA;AACA;AACA,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,OAAOC,YAAY,MAAM,UAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEpC,MAAM;EAAEC,cAAc;EAAEC,aAAa,EAAEC;AAAoB,CAAC,GAAGV,MAAM,CACpED,sBACD,CAAC;AAED,SAASY,SAASA,CAAA,EAAG;EACpB,MAAMC,WAAW,GAAGhB,EAAE,CACrB,uEACD,CAAC;EACD,MAAM,CAAEiB,KAAK,CAAE,GAAGL,cAAc,CAAE,EAAE,EAAEM,SAAS,EAAE,MAAM,EAAE;IACxDC,kBAAkB,EAAE;EACrB,CAAE,CAAC;EACH,MAAM,CAAEC,cAAc,EAAEC,QAAQ,CAAE,GAAGT,cAAc,CAAE,EAAE,EAAEM,SAAS,EAAE,KAAK,EAAE;IAC1EC,kBAAkB,EAAE;EACrB,CAAE,CAAC;EAEH,oBACCR,KAAA,CAAAF,SAAA;IAAAa,QAAA,gBACCf,IAAA,CAACF,YAAY;MACZkB,KAAK,EAAGvB,EAAE,CAAE,KAAM,CAAG;MACrBgB,WAAW,eACVL,KAAA,CAAAF,SAAA;QAAAa,QAAA,GACGN,WAAW,eACbT,IAAA,CAACN,YAAY;UACZuB,IAAI,EAAC,kDAAkD;UACvDC,SAAS,EAAC,8CAA8C;UAAAH,QAAA,EAEtDtB,EAAE,CAAE,sBAAuB;QAAC,CACjB,CAAC;MAAA,CACd;IACF,CACD,CAAC,eACFO,IAAA;MAAKkB,SAAS,EAAC,oCAAoC;MAAAH,QAAA,eAClDf,IAAA,CAACO,mBAAmB;QACnBY,KAAK,EAAGT,KAAO;QACfU,QAAQ,EAAGN,QAAU;QACrBO,cAAc,EAAGR;MAAgB,CACjC;IAAC,CACE,CAAC;EAAA,CACL,CAAC;AAEL;AAEA,eAAeL,SAAS","ignoreList":[]}
1
+ {"version":3,"names":["__","ExternalLink","privateApis","blockEditorPrivateApis","unlock","ScreenHeader","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","useGlobalStyle","AdvancedPanel","StylesAdvancedPanel","ScreenCSS","description","style","undefined","shouldDecodeEncode","inheritedStyle","setStyle","children","title","href","className","value","onChange","inheritedValue"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-css.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { ExternalLink } from '@wordpress/components';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport ScreenHeader from './header';\n\nconst { useGlobalStyle, AdvancedPanel: StylesAdvancedPanel } = unlock(\n\tblockEditorPrivateApis\n);\n\nfunction ScreenCSS() {\n\tconst description = __(\n\t\t'Add your own CSS to customize the appearance and layout of your site.'\n\t);\n\tconst [ style ] = useGlobalStyle( '', undefined, 'user', {\n\t\tshouldDecodeEncode: false,\n\t} );\n\tconst [ inheritedStyle, setStyle ] = useGlobalStyle( '', undefined, 'all', {\n\t\tshouldDecodeEncode: false,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'CSS' ) }\n\t\t\t\tdescription={\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ description }\n\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\thref=\"https://developer.wordpress.org/advanced-administration/wordpress/css/\"\n\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-css-help-link\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Learn more about CSS' ) }\n\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t</>\n\t\t\t\t}\n\t\t\t/>\n\t\t\t<div className=\"edit-site-global-styles-screen-css\">\n\t\t\t\t<StylesAdvancedPanel\n\t\t\t\t\tvalue={ style }\n\t\t\t\t\tonChange={ setStyle }\n\t\t\t\t\tinheritedValue={ inheritedStyle }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default ScreenCSS;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,YAAY,QAAQ,uBAAuB;AACpD,SAASC,WAAW,IAAIC,sBAAsB,QAAQ,yBAAyB;;AAE/E;AACA;AACA;AACA,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,OAAOC,YAAY,MAAM,UAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEpC,MAAM;EAAEC,cAAc;EAAEC,aAAa,EAAEC;AAAoB,CAAC,GAAGV,MAAM,CACpED,sBACD,CAAC;AAED,SAASY,SAASA,CAAA,EAAG;EACpB,MAAMC,WAAW,GAAGhB,EAAE,CACrB,uEACD,CAAC;EACD,MAAM,CAAEiB,KAAK,CAAE,GAAGL,cAAc,CAAE,EAAE,EAAEM,SAAS,EAAE,MAAM,EAAE;IACxDC,kBAAkB,EAAE;EACrB,CAAE,CAAC;EACH,MAAM,CAAEC,cAAc,EAAEC,QAAQ,CAAE,GAAGT,cAAc,CAAE,EAAE,EAAEM,SAAS,EAAE,KAAK,EAAE;IAC1EC,kBAAkB,EAAE;EACrB,CAAE,CAAC;EAEH,oBACCR,KAAA,CAAAF,SAAA;IAAAa,QAAA,gBACCf,IAAA,CAACF,YAAY;MACZkB,KAAK,EAAGvB,EAAE,CAAE,KAAM,CAAG;MACrBgB,WAAW,eACVL,KAAA,CAAAF,SAAA;QAAAa,QAAA,GACGN,WAAW,eACbT,IAAA,CAACN,YAAY;UACZuB,IAAI,EAAC,wEAAwE;UAC7EC,SAAS,EAAC,8CAA8C;UAAAH,QAAA,EAEtDtB,EAAE,CAAE,sBAAuB;QAAC,CACjB,CAAC;MAAA,CACd;IACF,CACD,CAAC,eACFO,IAAA;MAAKkB,SAAS,EAAC,oCAAoC;MAAAH,QAAA,eAClDf,IAAA,CAACO,mBAAmB;QACnBY,KAAK,EAAGT,KAAO;QACfU,QAAQ,EAAGN,QAAU;QACrBO,cAAc,EAAGR;MAAgB,CACjC;IAAC,CACE,CAAC;EAAA,CACL,CAAC;AAEL;AAEA,eAAeL,SAAS","ignoreList":[]}
@@ -67,26 +67,10 @@ function ScreenRevisions() {
67
67
  setEditorCanvasContainerView(canvasContainerView);
68
68
  };
69
69
  const restoreRevision = revision => {
70
- setUserConfig(() => ({
71
- styles: revision?.styles,
72
- settings: revision?.settings,
73
- _links: revision?._links
74
- }));
70
+ setUserConfig(() => revision);
75
71
  setIsLoadingRevisionWithUnsavedChanges(false);
76
72
  onCloseRevisions();
77
73
  };
78
- const selectRevision = revision => {
79
- setCurrentlySelectedRevision({
80
- /*
81
- * The default must be an empty object so that
82
- * `mergeBaseAndUserConfigs()` can merge them correctly.
83
- */
84
- styles: revision?.styles || {},
85
- settings: revision?.settings || {},
86
- _links: revision?._links || {},
87
- id: revision?.id
88
- });
89
- };
90
74
  useEffect(() => {
91
75
  if (!editorCanvasContainerView || !editorCanvasContainerView.startsWith('global-styles-revisions')) {
92
76
  goTo('/'); // Return to global styles main panel.
@@ -109,11 +93,7 @@ function ScreenRevisions() {
109
93
  * See: https://github.com/WordPress/gutenberg/issues/55866
110
94
  */
111
95
  if (shouldSelectFirstItem) {
112
- setCurrentlySelectedRevision({
113
- styles: firstRevision?.styles || {},
114
- settings: firstRevision?.settings || {},
115
- id: firstRevision?.id
116
- });
96
+ setCurrentlySelectedRevision(firstRevision);
117
97
  }
118
98
  }, [shouldSelectFirstItem, firstRevision]);
119
99
 
@@ -141,7 +121,7 @@ function ScreenRevisions() {
141
121
  userConfig: currentlySelectedRevision,
142
122
  closeButtonLabel: __('Close revisions')
143
123
  })), /*#__PURE__*/_jsx(RevisionsButtons, {
144
- onChange: selectRevision,
124
+ onChange: setCurrentlySelectedRevision,
145
125
  selectedRevisionId: currentlySelectedRevisionId,
146
126
  userRevisions: currentRevisions,
147
127
  canApplyRevision: isLoadButtonEnabled,
@@ -162,6 +142,7 @@ function ScreenRevisions() {
162
142
  confirmButtonText: __('Apply'),
163
143
  onConfirm: () => restoreRevision(currentlySelectedRevision),
164
144
  onCancel: () => setIsLoadingRevisionWithUnsavedChanges(false),
145
+ size: "medium",
165
146
  children: __('Are you sure you want to apply this revision? Any unsaved changes will be lost.')
166
147
  })]
167
148
  });
@@ -1 +1 @@
1
- {"version":3,"names":["__","sprintf","__experimentalUseNavigator","useNavigator","__experimentalConfirmDialog","ConfirmDialog","Spinner","useSelect","useDispatch","useContext","useState","useEffect","privateApis","blockEditorPrivateApis","store","blockEditorStore","ScreenHeader","unlock","Revisions","editSiteStore","useGlobalStylesRevisions","RevisionsButtons","StyleBook","Pagination","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","GlobalStylesContext","areGlobalStyleConfigsEqual","PAGE_SIZE","ScreenRevisions","goTo","user","currentEditorGlobalStyles","setUserConfig","blocks","editorCanvasContainerView","select","getEditorCanvasContainerView","getBlocks","currentPage","setCurrentPage","currentRevisions","setCurrentRevisions","revisions","isLoading","hasUnsavedChanges","revisionsCount","query","per_page","page","numPages","Math","ceil","currentlySelectedRevision","setCurrentlySelectedRevision","isLoadingRevisionWithUnsavedChanges","setIsLoadingRevisionWithUnsavedChanges","setEditorCanvasContainerView","selectedRevisionMatchesEditorStyles","onCloseRevisions","canvasContainerView","undefined","restoreRevision","revision","styles","settings","_links","selectRevision","id","startsWith","length","firstRevision","currentlySelectedRevisionId","shouldSelectFirstItem","isLoadButtonEnabled","hasRevisions","children","title","description","onBack","className","userConfig","isSelected","onClose","closeButtonLabel","onChange","selectedRevisionId","userRevisions","canApplyRevision","onApplyRevision","changePage","totalItems","disabled","label","isOpen","confirmButtonText","onConfirm","onCancel"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tSpinner,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useContext, useState, useEffect } from '@wordpress/element';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from '../header';\nimport { unlock } from '../../../lock-unlock';\nimport Revisions from '../../revisions';\nimport { store as editSiteStore } from '../../../store';\nimport useGlobalStylesRevisions from './use-global-styles-revisions';\nimport RevisionsButtons from './revisions-buttons';\nimport StyleBook from '../../style-book';\nimport Pagination from '../../pagination';\n\nconst { GlobalStylesContext, areGlobalStyleConfigsEqual } = unlock(\n\tblockEditorPrivateApis\n);\n\nconst PAGE_SIZE = 10;\n\nfunction ScreenRevisions() {\n\tconst { goTo } = useNavigator();\n\tconst { user: currentEditorGlobalStyles, setUserConfig } =\n\t\tuseContext( GlobalStylesContext );\n\tconst { blocks, editorCanvasContainerView } = useSelect(\n\t\t( select ) => ( {\n\t\t\teditorCanvasContainerView: unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t).getEditorCanvasContainerView(),\n\t\t\tblocks: select( blockEditorStore ).getBlocks(),\n\t\t} ),\n\t\t[]\n\t);\n\tconst [ currentPage, setCurrentPage ] = useState( 1 );\n\tconst [ currentRevisions, setCurrentRevisions ] = useState( [] );\n\tconst { revisions, isLoading, hasUnsavedChanges, revisionsCount } =\n\t\tuseGlobalStylesRevisions( {\n\t\t\tquery: {\n\t\t\t\tper_page: PAGE_SIZE,\n\t\t\t\tpage: currentPage,\n\t\t\t},\n\t\t} );\n\n\tconst numPages = Math.ceil( revisionsCount / PAGE_SIZE );\n\n\tconst [ currentlySelectedRevision, setCurrentlySelectedRevision ] =\n\t\tuseState( currentEditorGlobalStyles );\n\tconst [\n\t\tisLoadingRevisionWithUnsavedChanges,\n\t\tsetIsLoadingRevisionWithUnsavedChanges,\n\t] = useState( false );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst selectedRevisionMatchesEditorStyles = areGlobalStyleConfigsEqual(\n\t\tcurrentlySelectedRevision,\n\t\tcurrentEditorGlobalStyles\n\t);\n\n\tconst onCloseRevisions = () => {\n\t\tgoTo( '/' ); // Return to global styles main panel.\n\t\tconst canvasContainerView =\n\t\t\teditorCanvasContainerView === 'global-styles-revisions:style-book'\n\t\t\t\t? 'style-book'\n\t\t\t\t: undefined;\n\t\tsetEditorCanvasContainerView( canvasContainerView );\n\t};\n\n\tconst restoreRevision = ( revision ) => {\n\t\tsetUserConfig( () => ( {\n\t\t\tstyles: revision?.styles,\n\t\t\tsettings: revision?.settings,\n\t\t\t_links: revision?._links,\n\t\t} ) );\n\t\tsetIsLoadingRevisionWithUnsavedChanges( false );\n\t\tonCloseRevisions();\n\t};\n\n\tconst selectRevision = ( revision ) => {\n\t\tsetCurrentlySelectedRevision( {\n\t\t\t/*\n\t\t\t * The default must be an empty object so that\n\t\t\t * `mergeBaseAndUserConfigs()` can merge them correctly.\n\t\t\t */\n\t\t\tstyles: revision?.styles || {},\n\t\t\tsettings: revision?.settings || {},\n\t\t\t_links: revision?._links || {},\n\t\t\tid: revision?.id,\n\t\t} );\n\t};\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\t! editorCanvasContainerView ||\n\t\t\t! editorCanvasContainerView.startsWith( 'global-styles-revisions' )\n\t\t) {\n\t\t\tgoTo( '/' ); // Return to global styles main panel.\n\t\t}\n\t}, [ editorCanvasContainerView ] );\n\n\tuseEffect( () => {\n\t\tif ( ! isLoading && revisions.length ) {\n\t\t\tsetCurrentRevisions( revisions );\n\t\t}\n\t}, [ revisions, isLoading ] );\n\n\tconst firstRevision = revisions[ 0 ];\n\tconst currentlySelectedRevisionId = currentlySelectedRevision?.id;\n\tconst shouldSelectFirstItem =\n\t\t!! firstRevision?.id &&\n\t\t! selectedRevisionMatchesEditorStyles &&\n\t\t! currentlySelectedRevisionId;\n\n\tuseEffect( () => {\n\t\t/*\n\t\t * Ensure that the first item is selected and loaded into the preview pane\n\t\t * when no revision is selected and the selected styles don't match the current editor styles.\n\t\t * This is required in case editor styles are changed outside the revisions panel,\n\t\t * e.g., via the reset styles function of useGlobalStylesReset().\n\t\t * See: https://github.com/WordPress/gutenberg/issues/55866\n\t\t */\n\t\tif ( shouldSelectFirstItem ) {\n\t\t\tsetCurrentlySelectedRevision( {\n\t\t\t\tstyles: firstRevision?.styles || {},\n\t\t\t\tsettings: firstRevision?.settings || {},\n\t\t\t\tid: firstRevision?.id,\n\t\t\t} );\n\t\t}\n\t}, [ shouldSelectFirstItem, firstRevision ] );\n\n\t// Only display load button if there is a revision to load,\n\t// and it is different from the current editor styles.\n\tconst isLoadButtonEnabled =\n\t\t!! currentlySelectedRevisionId &&\n\t\tcurrentlySelectedRevisionId !== 'unsaved' &&\n\t\t! selectedRevisionMatchesEditorStyles;\n\tconst hasRevisions = !! currentRevisions.length;\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={\n\t\t\t\t\trevisionsCount &&\n\t\t\t\t\t// translators: %s: number of revisions.\n\t\t\t\t\tsprintf( __( 'Revisions (%s)' ), revisionsCount )\n\t\t\t\t}\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Click on previously saved styles to preview them. To restore a selected version to the editor, hit \"Apply.\" When you\\'re ready, use the Save button to save your changes.'\n\t\t\t\t) }\n\t\t\t\tonBack={ onCloseRevisions }\n\t\t\t/>\n\t\t\t{ ! hasRevisions && (\n\t\t\t\t<Spinner className=\"edit-site-global-styles-screen-revisions__loading\" />\n\t\t\t) }\n\t\t\t{ hasRevisions &&\n\t\t\t\t( editorCanvasContainerView ===\n\t\t\t\t'global-styles-revisions:style-book' ? (\n\t\t\t\t\t<StyleBook\n\t\t\t\t\t\tuserConfig={ currentlySelectedRevision }\n\t\t\t\t\t\tisSelected={ () => {} }\n\t\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\t\tsetEditorCanvasContainerView(\n\t\t\t\t\t\t\t\t'global-styles-revisions'\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\t\t<Revisions\n\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\tuserConfig={ currentlySelectedRevision }\n\t\t\t\t\t\tcloseButtonLabel={ __( 'Close revisions' ) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t<RevisionsButtons\n\t\t\t\tonChange={ selectRevision }\n\t\t\t\tselectedRevisionId={ currentlySelectedRevisionId }\n\t\t\t\tuserRevisions={ currentRevisions }\n\t\t\t\tcanApplyRevision={ isLoadButtonEnabled }\n\t\t\t\tonApplyRevision={ () =>\n\t\t\t\t\thasUnsavedChanges\n\t\t\t\t\t\t? setIsLoadingRevisionWithUnsavedChanges( true )\n\t\t\t\t\t\t: restoreRevision( currentlySelectedRevision )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t{ numPages > 1 && (\n\t\t\t\t<div className=\"edit-site-global-styles-screen-revisions__footer\">\n\t\t\t\t\t<Pagination\n\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__pagination\"\n\t\t\t\t\t\tcurrentPage={ currentPage }\n\t\t\t\t\t\tnumPages={ numPages }\n\t\t\t\t\t\tchangePage={ setCurrentPage }\n\t\t\t\t\t\ttotalItems={ revisionsCount }\n\t\t\t\t\t\tdisabled={ isLoading }\n\t\t\t\t\t\tlabel={ __( 'Global Styles pagination navigation' ) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ isLoadingRevisionWithUnsavedChanges && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tisOpen={ isLoadingRevisionWithUnsavedChanges }\n\t\t\t\t\tconfirmButtonText={ __( 'Apply' ) }\n\t\t\t\t\tonConfirm={ () =>\n\t\t\t\t\t\trestoreRevision( currentlySelectedRevision )\n\t\t\t\t\t}\n\t\t\t\t\tonCancel={ () =>\n\t\t\t\t\t\tsetIsLoadingRevisionWithUnsavedChanges( false )\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Are you sure you want to apply this revision? Any unsaved changes will be lost.'\n\t\t\t\t\t) }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default ScreenRevisions;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","sprintf","__experimentalUseNavigator","useNavigator","__experimentalConfirmDialog","ConfirmDialog","Spinner","useSelect","useDispatch","useContext","useState","useEffect","privateApis","blockEditorPrivateApis","store","blockEditorStore","ScreenHeader","unlock","Revisions","editSiteStore","useGlobalStylesRevisions","RevisionsButtons","StyleBook","Pagination","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","GlobalStylesContext","areGlobalStyleConfigsEqual","PAGE_SIZE","ScreenRevisions","goTo","user","currentEditorGlobalStyles","setUserConfig","blocks","editorCanvasContainerView","select","getEditorCanvasContainerView","getBlocks","currentPage","setCurrentPage","currentRevisions","setCurrentRevisions","revisions","isLoading","hasUnsavedChanges","revisionsCount","query","per_page","page","numPages","Math","ceil","currentlySelectedRevision","setCurrentlySelectedRevision","isLoadingRevisionWithUnsavedChanges","setIsLoadingRevisionWithUnsavedChanges","setEditorCanvasContainerView","selectedRevisionMatchesEditorStyles","onCloseRevisions","canvasContainerView","undefined","restoreRevision","revision","startsWith","length","firstRevision","currentlySelectedRevisionId","id","shouldSelectFirstItem","isLoadButtonEnabled","hasRevisions","children","title","description","onBack","className","userConfig","isSelected","onClose","closeButtonLabel","onChange","selectedRevisionId","userRevisions","canApplyRevision","onApplyRevision","changePage","totalItems","disabled","label","isOpen","confirmButtonText","onConfirm","onCancel","size"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tSpinner,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useContext, useState, useEffect } from '@wordpress/element';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from '../header';\nimport { unlock } from '../../../lock-unlock';\nimport Revisions from '../../revisions';\nimport { store as editSiteStore } from '../../../store';\nimport useGlobalStylesRevisions from './use-global-styles-revisions';\nimport RevisionsButtons from './revisions-buttons';\nimport StyleBook from '../../style-book';\nimport Pagination from '../../pagination';\n\nconst { GlobalStylesContext, areGlobalStyleConfigsEqual } = unlock(\n\tblockEditorPrivateApis\n);\n\nconst PAGE_SIZE = 10;\n\nfunction ScreenRevisions() {\n\tconst { goTo } = useNavigator();\n\tconst { user: currentEditorGlobalStyles, setUserConfig } =\n\t\tuseContext( GlobalStylesContext );\n\tconst { blocks, editorCanvasContainerView } = useSelect(\n\t\t( select ) => ( {\n\t\t\teditorCanvasContainerView: unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t).getEditorCanvasContainerView(),\n\t\t\tblocks: select( blockEditorStore ).getBlocks(),\n\t\t} ),\n\t\t[]\n\t);\n\tconst [ currentPage, setCurrentPage ] = useState( 1 );\n\tconst [ currentRevisions, setCurrentRevisions ] = useState( [] );\n\tconst { revisions, isLoading, hasUnsavedChanges, revisionsCount } =\n\t\tuseGlobalStylesRevisions( {\n\t\t\tquery: {\n\t\t\t\tper_page: PAGE_SIZE,\n\t\t\t\tpage: currentPage,\n\t\t\t},\n\t\t} );\n\n\tconst numPages = Math.ceil( revisionsCount / PAGE_SIZE );\n\n\tconst [ currentlySelectedRevision, setCurrentlySelectedRevision ] =\n\t\tuseState( currentEditorGlobalStyles );\n\tconst [\n\t\tisLoadingRevisionWithUnsavedChanges,\n\t\tsetIsLoadingRevisionWithUnsavedChanges,\n\t] = useState( false );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst selectedRevisionMatchesEditorStyles = areGlobalStyleConfigsEqual(\n\t\tcurrentlySelectedRevision,\n\t\tcurrentEditorGlobalStyles\n\t);\n\n\tconst onCloseRevisions = () => {\n\t\tgoTo( '/' ); // Return to global styles main panel.\n\t\tconst canvasContainerView =\n\t\t\teditorCanvasContainerView === 'global-styles-revisions:style-book'\n\t\t\t\t? 'style-book'\n\t\t\t\t: undefined;\n\t\tsetEditorCanvasContainerView( canvasContainerView );\n\t};\n\n\tconst restoreRevision = ( revision ) => {\n\t\tsetUserConfig( () => revision );\n\t\tsetIsLoadingRevisionWithUnsavedChanges( false );\n\t\tonCloseRevisions();\n\t};\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\t! editorCanvasContainerView ||\n\t\t\t! editorCanvasContainerView.startsWith( 'global-styles-revisions' )\n\t\t) {\n\t\t\tgoTo( '/' ); // Return to global styles main panel.\n\t\t}\n\t}, [ editorCanvasContainerView ] );\n\n\tuseEffect( () => {\n\t\tif ( ! isLoading && revisions.length ) {\n\t\t\tsetCurrentRevisions( revisions );\n\t\t}\n\t}, [ revisions, isLoading ] );\n\n\tconst firstRevision = revisions[ 0 ];\n\tconst currentlySelectedRevisionId = currentlySelectedRevision?.id;\n\tconst shouldSelectFirstItem =\n\t\t!! firstRevision?.id &&\n\t\t! selectedRevisionMatchesEditorStyles &&\n\t\t! currentlySelectedRevisionId;\n\n\tuseEffect( () => {\n\t\t/*\n\t\t * Ensure that the first item is selected and loaded into the preview pane\n\t\t * when no revision is selected and the selected styles don't match the current editor styles.\n\t\t * This is required in case editor styles are changed outside the revisions panel,\n\t\t * e.g., via the reset styles function of useGlobalStylesReset().\n\t\t * See: https://github.com/WordPress/gutenberg/issues/55866\n\t\t */\n\t\tif ( shouldSelectFirstItem ) {\n\t\t\tsetCurrentlySelectedRevision( firstRevision );\n\t\t}\n\t}, [ shouldSelectFirstItem, firstRevision ] );\n\n\t// Only display load button if there is a revision to load,\n\t// and it is different from the current editor styles.\n\tconst isLoadButtonEnabled =\n\t\t!! currentlySelectedRevisionId &&\n\t\tcurrentlySelectedRevisionId !== 'unsaved' &&\n\t\t! selectedRevisionMatchesEditorStyles;\n\tconst hasRevisions = !! currentRevisions.length;\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={\n\t\t\t\t\trevisionsCount &&\n\t\t\t\t\t// translators: %s: number of revisions.\n\t\t\t\t\tsprintf( __( 'Revisions (%s)' ), revisionsCount )\n\t\t\t\t}\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Click on previously saved styles to preview them. To restore a selected version to the editor, hit \"Apply.\" When you\\'re ready, use the Save button to save your changes.'\n\t\t\t\t) }\n\t\t\t\tonBack={ onCloseRevisions }\n\t\t\t/>\n\t\t\t{ ! hasRevisions && (\n\t\t\t\t<Spinner className=\"edit-site-global-styles-screen-revisions__loading\" />\n\t\t\t) }\n\t\t\t{ hasRevisions &&\n\t\t\t\t( editorCanvasContainerView ===\n\t\t\t\t'global-styles-revisions:style-book' ? (\n\t\t\t\t\t<StyleBook\n\t\t\t\t\t\tuserConfig={ currentlySelectedRevision }\n\t\t\t\t\t\tisSelected={ () => {} }\n\t\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\t\tsetEditorCanvasContainerView(\n\t\t\t\t\t\t\t\t'global-styles-revisions'\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\t\t<Revisions\n\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\tuserConfig={ currentlySelectedRevision }\n\t\t\t\t\t\tcloseButtonLabel={ __( 'Close revisions' ) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t<RevisionsButtons\n\t\t\t\tonChange={ setCurrentlySelectedRevision }\n\t\t\t\tselectedRevisionId={ currentlySelectedRevisionId }\n\t\t\t\tuserRevisions={ currentRevisions }\n\t\t\t\tcanApplyRevision={ isLoadButtonEnabled }\n\t\t\t\tonApplyRevision={ () =>\n\t\t\t\t\thasUnsavedChanges\n\t\t\t\t\t\t? setIsLoadingRevisionWithUnsavedChanges( true )\n\t\t\t\t\t\t: restoreRevision( currentlySelectedRevision )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t{ numPages > 1 && (\n\t\t\t\t<div className=\"edit-site-global-styles-screen-revisions__footer\">\n\t\t\t\t\t<Pagination\n\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__pagination\"\n\t\t\t\t\t\tcurrentPage={ currentPage }\n\t\t\t\t\t\tnumPages={ numPages }\n\t\t\t\t\t\tchangePage={ setCurrentPage }\n\t\t\t\t\t\ttotalItems={ revisionsCount }\n\t\t\t\t\t\tdisabled={ isLoading }\n\t\t\t\t\t\tlabel={ __( 'Global Styles pagination navigation' ) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ isLoadingRevisionWithUnsavedChanges && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tisOpen={ isLoadingRevisionWithUnsavedChanges }\n\t\t\t\t\tconfirmButtonText={ __( 'Apply' ) }\n\t\t\t\t\tonConfirm={ () =>\n\t\t\t\t\t\trestoreRevision( currentlySelectedRevision )\n\t\t\t\t\t}\n\t\t\t\t\tonCancel={ () =>\n\t\t\t\t\t\tsetIsLoadingRevisionWithUnsavedChanges( false )\n\t\t\t\t\t}\n\t\t\t\t\tsize=\"medium\"\n\t\t\t\t>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Are you sure you want to apply this revision? Any unsaved changes will be lost.'\n\t\t\t\t\t) }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default ScreenRevisions;\n"],"mappings":"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","ignoreList":[]}
@@ -133,6 +133,7 @@ function RevisionsButtons({
133
133
  "aria-current": isSelected,
134
134
  children: [/*#__PURE__*/_jsx(Button, {
135
135
  className: "edit-site-global-styles-screen-revisions__revision-button",
136
+ __experimentalIsFocusable: true,
136
137
  disabled: isSelected,
137
138
  onClick: () => {
138
139
  onChange(revision);
@@ -168,7 +169,6 @@ function RevisionsButtons({
168
169
  className: "edit-site-global-styles-screen-revisions__applied-text",
169
170
  children: __('These styles are already applied to your site.')
170
171
  }) : /*#__PURE__*/_jsx(Button, {
171
- disabled: areStylesEqual,
172
172
  size: "compact",
173
173
  variant: "primary",
174
174
  className: "edit-site-global-styles-screen-revisions__apply-button",
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","__","sprintf","Button","dateI18n","getDate","humanTimeDiff","getSettings","store","coreStore","useSelect","privateApis","blockEditorPrivateApis","unlock","jsx","_jsx","jsxs","_jsxs","DAY_IN_MILLISECONDS","getGlobalStylesChanges","ChangesSummary","revision","previousRevision","changes","maxResults","length","className","children","map","change","getRevisionLabel","id","authorDisplayName","formattedModifiedDate","areStylesEqual","RevisionsButtons","userRevisions","selectedRevisionId","onChange","canApplyRevision","onApplyRevision","currentThemeName","currentUser","select","getCurrentTheme","getCurrentUser","currentTheme","name","rendered","stylesheet","dateNowInMs","getTime","datetimeAbbreviated","formats","role","index","author","modified","isUnsaved","revisionAuthor","authorAvatar","avatar_urls","isFirstItem","isSelected","isReset","modifiedDate","displayDate","revisionLabel","disabled","onClick","dateTime","alt","src","size","variant"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/revisions-buttons.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { dateI18n, getDate, humanTimeDiff, getSettings } from '@wordpress/date';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\n\nconst DAY_IN_MILLISECONDS = 60 * 60 * 1000 * 24;\nconst { getGlobalStylesChanges } = unlock( blockEditorPrivateApis );\n\nfunction ChangesSummary( { revision, previousRevision } ) {\n\tconst changes = getGlobalStylesChanges( revision, previousRevision, {\n\t\tmaxResults: 7,\n\t} );\n\n\tif ( ! changes.length ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ul\n\t\t\tdata-testid=\"global-styles-revision-changes\"\n\t\t\tclassName=\"edit-site-global-styles-screen-revisions__changes\"\n\t\t>\n\t\t\t{ changes.map( ( change ) => (\n\t\t\t\t<li key={ change }>{ change }</li>\n\t\t\t) ) }\n\t\t</ul>\n\t);\n}\n\n/**\n * Returns a button label for the revision.\n *\n * @param {string|number} id A revision object.\n * @param {string} authorDisplayName Author name.\n * @param {string} formattedModifiedDate Revision modified date formatted.\n * @param {boolean} areStylesEqual Whether the revision matches the current editor styles.\n * @return {string} Translated label.\n */\nfunction getRevisionLabel(\n\tid,\n\tauthorDisplayName,\n\tformattedModifiedDate,\n\tareStylesEqual\n) {\n\tif ( 'parent' === id ) {\n\t\treturn __( 'Reset the styles to the theme defaults' );\n\t}\n\n\tif ( 'unsaved' === id ) {\n\t\treturn sprintf(\n\t\t\t/* translators: %s: author display name */\n\t\t\t__( 'Unsaved changes by %s' ),\n\t\t\tauthorDisplayName\n\t\t);\n\t}\n\n\treturn areStylesEqual\n\t\t? sprintf(\n\t\t\t\t// translators: %1$s: author display name, %2$s: revision creation date.\n\t\t\t\t__(\n\t\t\t\t\t'Changes saved by %1$s on %2$s. This revision matches current editor styles.'\n\t\t\t\t),\n\t\t\t\tauthorDisplayName,\n\t\t\t\tformattedModifiedDate\n\t\t )\n\t\t: sprintf(\n\t\t\t\t// translators: %1$s: author display name, %2$s: revision creation date.\n\t\t\t\t__( 'Changes saved by %1$s on %2$s' ),\n\t\t\t\tauthorDisplayName,\n\t\t\t\tformattedModifiedDate\n\t\t );\n}\n\n/**\n * Returns a rendered list of revisions buttons.\n *\n * @typedef {Object} props\n * @property {Array<Object>} userRevisions A collection of user revisions.\n * @property {number} selectedRevisionId The id of the currently-selected revision.\n * @property {Function} onChange Callback fired when a revision is selected.\n *\n * @param {props} Component props.\n * @return {JSX.Element} The modal component.\n */\nfunction RevisionsButtons( {\n\tuserRevisions,\n\tselectedRevisionId,\n\tonChange,\n\tcanApplyRevision,\n\tonApplyRevision,\n} ) {\n\tconst { currentThemeName, currentUser } = useSelect( ( select ) => {\n\t\tconst { getCurrentTheme, getCurrentUser } = select( coreStore );\n\t\tconst currentTheme = getCurrentTheme();\n\t\treturn {\n\t\t\tcurrentThemeName:\n\t\t\t\tcurrentTheme?.name?.rendered || currentTheme?.stylesheet,\n\t\t\tcurrentUser: getCurrentUser(),\n\t\t};\n\t}, [] );\n\tconst dateNowInMs = getDate().getTime();\n\tconst { datetimeAbbreviated } = getSettings().formats;\n\n\treturn (\n\t\t<ol\n\t\t\tclassName=\"edit-site-global-styles-screen-revisions__revisions-list\"\n\t\t\taria-label={ __( 'Global styles revisions list' ) }\n\t\t\trole=\"group\"\n\t\t>\n\t\t\t{ userRevisions.map( ( revision, index ) => {\n\t\t\t\tconst { id, author, modified } = revision;\n\t\t\t\tconst isUnsaved = 'unsaved' === id;\n\t\t\t\t// Unsaved changes are created by the current user.\n\t\t\t\tconst revisionAuthor = isUnsaved ? currentUser : author;\n\t\t\t\tconst authorDisplayName = revisionAuthor?.name || __( 'User' );\n\t\t\t\tconst authorAvatar = revisionAuthor?.avatar_urls?.[ '48' ];\n\t\t\t\tconst isFirstItem = index === 0;\n\t\t\t\tconst isSelected = selectedRevisionId\n\t\t\t\t\t? selectedRevisionId === id\n\t\t\t\t\t: isFirstItem;\n\t\t\t\tconst areStylesEqual = ! canApplyRevision && isSelected;\n\t\t\t\tconst isReset = 'parent' === id;\n\t\t\t\tconst modifiedDate = getDate( modified );\n\t\t\t\tconst displayDate =\n\t\t\t\t\tmodified &&\n\t\t\t\t\tdateNowInMs - modifiedDate.getTime() > DAY_IN_MILLISECONDS\n\t\t\t\t\t\t? dateI18n( datetimeAbbreviated, modifiedDate )\n\t\t\t\t\t\t: humanTimeDiff( modified );\n\t\t\t\tconst revisionLabel = getRevisionLabel(\n\t\t\t\t\tid,\n\t\t\t\t\tauthorDisplayName,\n\t\t\t\t\tdateI18n( datetimeAbbreviated, modifiedDate ),\n\t\t\t\t\tareStylesEqual\n\t\t\t\t);\n\n\t\t\t\treturn (\n\t\t\t\t\t<li\n\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t'edit-site-global-styles-screen-revisions__revision-item',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'is-selected': isSelected,\n\t\t\t\t\t\t\t\t'is-active': areStylesEqual,\n\t\t\t\t\t\t\t\t'is-reset': isReset,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\taria-current={ isSelected }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__revision-button\"\n\t\t\t\t\t\t\tdisabled={ isSelected }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonChange( revision );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\taria-label={ revisionLabel }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isReset ? (\n\t\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__description\">\n\t\t\t\t\t\t\t\t\t{ __( 'Default styles' ) }\n\t\t\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__meta\">\n\t\t\t\t\t\t\t\t\t\t{ currentThemeName }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__description\">\n\t\t\t\t\t\t\t\t\t{ isUnsaved ? (\n\t\t\t\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__date\">\n\t\t\t\t\t\t\t\t\t\t\t{ __( '(Unsaved)' ) }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<time\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__date\"\n\t\t\t\t\t\t\t\t\t\t\tdateTime={ modified }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ displayDate }\n\t\t\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__meta\">\n\t\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\t\talt={ authorDisplayName }\n\t\t\t\t\t\t\t\t\t\t\tsrc={ authorAvatar }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{ authorDisplayName }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t{ isSelected && (\n\t\t\t\t\t\t\t\t\t\t<ChangesSummary\n\t\t\t\t\t\t\t\t\t\t\trevision={ revision }\n\t\t\t\t\t\t\t\t\t\t\tpreviousRevision={\n\t\t\t\t\t\t\t\t\t\t\t\tindex < userRevisions.length\n\t\t\t\t\t\t\t\t\t\t\t\t\t? userRevisions[ index + 1 ]\n\t\t\t\t\t\t\t\t\t\t\t\t\t: {}\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t{ isSelected &&\n\t\t\t\t\t\t\t( areStylesEqual ? (\n\t\t\t\t\t\t\t\t<p className=\"edit-site-global-styles-screen-revisions__applied-text\">\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'These styles are already applied to your site.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tdisabled={ areStylesEqual }\n\t\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__apply-button\"\n\t\t\t\t\t\t\t\t\tonClick={ onApplyRevision }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ isReset\n\t\t\t\t\t\t\t\t\t\t? __( 'Reset to defaults' )\n\t\t\t\t\t\t\t\t\t\t: __( 'Apply' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t</li>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</ol>\n\t);\n}\n\nexport default RevisionsButtons;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,QAAQ,EAAEC,OAAO,EAAEC,aAAa,EAAEC,WAAW,QAAQ,iBAAiB;AAC/E,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,WAAW,IAAIC,sBAAsB,QAAQ,yBAAyB;;AAE/E;AACA;AACA;AACA,SAASC,MAAM,QAAQ,sBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAE9C,MAAMC,mBAAmB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,EAAE;AAC/C,MAAM;EAAEC;AAAuB,CAAC,GAAGN,MAAM,CAAED,sBAAuB,CAAC;AAEnE,SAASQ,cAAcA,CAAE;EAAEC,QAAQ;EAAEC;AAAiB,CAAC,EAAG;EACzD,MAAMC,OAAO,GAAGJ,sBAAsB,CAAEE,QAAQ,EAAEC,gBAAgB,EAAE;IACnEE,UAAU,EAAE;EACb,CAAE,CAAC;EAEH,IAAK,CAAED,OAAO,CAACE,MAAM,EAAG;IACvB,OAAO,IAAI;EACZ;EAEA,oBACCV,IAAA;IACC,eAAY,gCAAgC;IAC5CW,SAAS,EAAC,mDAAmD;IAAAC,QAAA,EAE3DJ,OAAO,CAACK,GAAG,CAAIC,MAAM,iBACtBd,IAAA;MAAAY,QAAA,EAAqBE;IAAM,GAAjBA,MAAuB,CAChC;EAAC,CACA,CAAC;AAEP;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,gBAAgBA,CACxBC,EAAE,EACFC,iBAAiB,EACjBC,qBAAqB,EACrBC,cAAc,EACb;EACD,IAAK,QAAQ,KAAKH,EAAE,EAAG;IACtB,OAAO9B,EAAE,CAAE,wCAAyC,CAAC;EACtD;EAEA,IAAK,SAAS,KAAK8B,EAAE,EAAG;IACvB,OAAO7B,OAAO,EACb;IACAD,EAAE,CAAE,uBAAwB,CAAC,EAC7B+B,iBACD,CAAC;EACF;EAEA,OAAOE,cAAc,GAClBhC,OAAO;EACP;EACAD,EAAE,CACD,6EACD,CAAC,EACD+B,iBAAiB,EACjBC,qBACA,CAAC,GACD/B,OAAO;EACP;EACAD,EAAE,CAAE,+BAAgC,CAAC,EACrC+B,iBAAiB,EACjBC,qBACA,CAAC;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASE,gBAAgBA,CAAE;EAC1BC,aAAa;EACbC,kBAAkB;EAClBC,QAAQ;EACRC,gBAAgB;EAChBC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,gBAAgB;IAAEC;EAAY,CAAC,GAAGhC,SAAS,CAAIiC,MAAM,IAAM;IAClE,MAAM;MAAEC,eAAe;MAAEC;IAAe,CAAC,GAAGF,MAAM,CAAElC,SAAU,CAAC;IAC/D,MAAMqC,YAAY,GAAGF,eAAe,CAAC,CAAC;IACtC,OAAO;MACNH,gBAAgB,EACfK,YAAY,EAAEC,IAAI,EAAEC,QAAQ,IAAIF,YAAY,EAAEG,UAAU;MACzDP,WAAW,EAAEG,cAAc,CAAC;IAC7B,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAMK,WAAW,GAAG7C,OAAO,CAAC,CAAC,CAAC8C,OAAO,CAAC,CAAC;EACvC,MAAM;IAAEC;EAAoB,CAAC,GAAG7C,WAAW,CAAC,CAAC,CAAC8C,OAAO;EAErD,oBACCtC,IAAA;IACCW,SAAS,EAAC,0DAA0D;IACpE,cAAazB,EAAE,CAAE,8BAA+B,CAAG;IACnDqD,IAAI,EAAC,OAAO;IAAA3B,QAAA,EAEVS,aAAa,CAACR,GAAG,CAAE,CAAEP,QAAQ,EAAEkC,KAAK,KAAM;MAC3C,MAAM;QAAExB,EAAE;QAAEyB,MAAM;QAAEC;MAAS,CAAC,GAAGpC,QAAQ;MACzC,MAAMqC,SAAS,GAAG,SAAS,KAAK3B,EAAE;MAClC;MACA,MAAM4B,cAAc,GAAGD,SAAS,GAAGhB,WAAW,GAAGc,MAAM;MACvD,MAAMxB,iBAAiB,GAAG2B,cAAc,EAAEZ,IAAI,IAAI9C,EAAE,CAAE,MAAO,CAAC;MAC9D,MAAM2D,YAAY,GAAGD,cAAc,EAAEE,WAAW,GAAI,IAAI,CAAE;MAC1D,MAAMC,WAAW,GAAGP,KAAK,KAAK,CAAC;MAC/B,MAAMQ,UAAU,GAAG1B,kBAAkB,GAClCA,kBAAkB,KAAKN,EAAE,GACzB+B,WAAW;MACd,MAAM5B,cAAc,GAAG,CAAEK,gBAAgB,IAAIwB,UAAU;MACvD,MAAMC,OAAO,GAAG,QAAQ,KAAKjC,EAAE;MAC/B,MAAMkC,YAAY,GAAG5D,OAAO,CAAEoD,QAAS,CAAC;MACxC,MAAMS,WAAW,GAChBT,QAAQ,IACRP,WAAW,GAAGe,YAAY,CAACd,OAAO,CAAC,CAAC,GAAGjC,mBAAmB,GACvDd,QAAQ,CAAEgD,mBAAmB,EAAEa,YAAa,CAAC,GAC7C3D,aAAa,CAAEmD,QAAS,CAAC;MAC7B,MAAMU,aAAa,GAAGrC,gBAAgB,CACrCC,EAAE,EACFC,iBAAiB,EACjB5B,QAAQ,CAAEgD,mBAAmB,EAAEa,YAAa,CAAC,EAC7C/B,cACD,CAAC;MAED,oBACCjB,KAAA;QACCS,SAAS,EAAG1B,IAAI,CACf,yDAAyD,EACzD;UACC,aAAa,EAAE+D,UAAU;UACzB,WAAW,EAAE7B,cAAc;UAC3B,UAAU,EAAE8B;QACb,CACD,CAAG;QAEH,gBAAeD,UAAY;QAAApC,QAAA,gBAE3BZ,IAAA,CAACZ,MAAM;UACNuB,SAAS,EAAC,2DAA2D;UACrE0C,QAAQ,EAAGL,UAAY;UACvBM,OAAO,EAAGA,CAAA,KAAM;YACf/B,QAAQ,CAAEjB,QAAS,CAAC;UACrB,CAAG;UACH,cAAa8C,aAAe;UAAAxC,QAAA,EAE1BqC,OAAO,gBACR/C,KAAA;YAAMS,SAAS,EAAC,uDAAuD;YAAAC,QAAA,GACpE1B,EAAE,CAAE,gBAAiB,CAAC,eACxBc,IAAA;cAAMW,SAAS,EAAC,gDAAgD;cAAAC,QAAA,EAC7Dc;YAAgB,CACb,CAAC;UAAA,CACF,CAAC,gBAEPxB,KAAA;YAAMS,SAAS,EAAC,uDAAuD;YAAAC,QAAA,GACpE+B,SAAS,gBACV3C,IAAA;cAAMW,SAAS,EAAC,gDAAgD;cAAAC,QAAA,EAC7D1B,EAAE,CAAE,WAAY;YAAC,CACd,CAAC,gBAEPc,IAAA;cACCW,SAAS,EAAC,gDAAgD;cAC1D4C,QAAQ,EAAGb,QAAU;cAAA9B,QAAA,EAEnBuC;YAAW,CACR,CACN,eACDjD,KAAA;cAAMS,SAAS,EAAC,gDAAgD;cAAAC,QAAA,gBAC/DZ,IAAA;gBACCwD,GAAG,EAAGvC,iBAAmB;gBACzBwC,GAAG,EAAGZ;cAAc,CACpB,CAAC,EACA5B,iBAAiB;YAAA,CACd,CAAC,EACL+B,UAAU,iBACXhD,IAAA,CAACK,cAAc;cACdC,QAAQ,EAAGA,QAAU;cACrBC,gBAAgB,EACfiC,KAAK,GAAGnB,aAAa,CAACX,MAAM,GACzBW,aAAa,CAAEmB,KAAK,GAAG,CAAC,CAAE,GAC1B,CAAC;YACJ,CACD,CACD;UAAA,CACI;QACN,CACM,CAAC,EACPQ,UAAU,KACT7B,cAAc,gBACfnB,IAAA;UAAGW,SAAS,EAAC,wDAAwD;UAAAC,QAAA,EAClE1B,EAAE,CACH,gDACD;QAAC,CACC,CAAC,gBAEJc,IAAA,CAACZ,MAAM;UACNiE,QAAQ,EAAGlC,cAAgB;UAC3BuC,IAAI,EAAC,SAAS;UACdC,OAAO,EAAC,SAAS;UACjBhD,SAAS,EAAC,wDAAwD;UAClE2C,OAAO,EAAG7B,eAAiB;UAAAb,QAAA,EAEzBqC,OAAO,GACN/D,EAAE,CAAE,mBAAoB,CAAC,GACzBA,EAAE,CAAE,OAAQ;QAAC,CACT,CACR,CAAE;MAAA,GAvEE8B,EAwEH,CAAC;IAEP,CAAE;EAAC,CACA,CAAC;AAEP;AAEA,eAAeI,gBAAgB","ignoreList":[]}
1
+ {"version":3,"names":["clsx","__","sprintf","Button","dateI18n","getDate","humanTimeDiff","getSettings","store","coreStore","useSelect","privateApis","blockEditorPrivateApis","unlock","jsx","_jsx","jsxs","_jsxs","DAY_IN_MILLISECONDS","getGlobalStylesChanges","ChangesSummary","revision","previousRevision","changes","maxResults","length","className","children","map","change","getRevisionLabel","id","authorDisplayName","formattedModifiedDate","areStylesEqual","RevisionsButtons","userRevisions","selectedRevisionId","onChange","canApplyRevision","onApplyRevision","currentThemeName","currentUser","select","getCurrentTheme","getCurrentUser","currentTheme","name","rendered","stylesheet","dateNowInMs","getTime","datetimeAbbreviated","formats","role","index","author","modified","isUnsaved","revisionAuthor","authorAvatar","avatar_urls","isFirstItem","isSelected","isReset","modifiedDate","displayDate","revisionLabel","__experimentalIsFocusable","disabled","onClick","dateTime","alt","src","size","variant"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-revisions/revisions-buttons.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { dateI18n, getDate, humanTimeDiff, getSettings } from '@wordpress/date';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\n\nconst DAY_IN_MILLISECONDS = 60 * 60 * 1000 * 24;\nconst { getGlobalStylesChanges } = unlock( blockEditorPrivateApis );\n\nfunction ChangesSummary( { revision, previousRevision } ) {\n\tconst changes = getGlobalStylesChanges( revision, previousRevision, {\n\t\tmaxResults: 7,\n\t} );\n\n\tif ( ! changes.length ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ul\n\t\t\tdata-testid=\"global-styles-revision-changes\"\n\t\t\tclassName=\"edit-site-global-styles-screen-revisions__changes\"\n\t\t>\n\t\t\t{ changes.map( ( change ) => (\n\t\t\t\t<li key={ change }>{ change }</li>\n\t\t\t) ) }\n\t\t</ul>\n\t);\n}\n\n/**\n * Returns a button label for the revision.\n *\n * @param {string|number} id A revision object.\n * @param {string} authorDisplayName Author name.\n * @param {string} formattedModifiedDate Revision modified date formatted.\n * @param {boolean} areStylesEqual Whether the revision matches the current editor styles.\n * @return {string} Translated label.\n */\nfunction getRevisionLabel(\n\tid,\n\tauthorDisplayName,\n\tformattedModifiedDate,\n\tareStylesEqual\n) {\n\tif ( 'parent' === id ) {\n\t\treturn __( 'Reset the styles to the theme defaults' );\n\t}\n\n\tif ( 'unsaved' === id ) {\n\t\treturn sprintf(\n\t\t\t/* translators: %s: author display name */\n\t\t\t__( 'Unsaved changes by %s' ),\n\t\t\tauthorDisplayName\n\t\t);\n\t}\n\n\treturn areStylesEqual\n\t\t? sprintf(\n\t\t\t\t// translators: %1$s: author display name, %2$s: revision creation date.\n\t\t\t\t__(\n\t\t\t\t\t'Changes saved by %1$s on %2$s. This revision matches current editor styles.'\n\t\t\t\t),\n\t\t\t\tauthorDisplayName,\n\t\t\t\tformattedModifiedDate\n\t\t )\n\t\t: sprintf(\n\t\t\t\t// translators: %1$s: author display name, %2$s: revision creation date.\n\t\t\t\t__( 'Changes saved by %1$s on %2$s' ),\n\t\t\t\tauthorDisplayName,\n\t\t\t\tformattedModifiedDate\n\t\t );\n}\n\n/**\n * Returns a rendered list of revisions buttons.\n *\n * @typedef {Object} props\n * @property {Array<Object>} userRevisions A collection of user revisions.\n * @property {number} selectedRevisionId The id of the currently-selected revision.\n * @property {Function} onChange Callback fired when a revision is selected.\n *\n * @param {props} Component props.\n * @return {JSX.Element} The modal component.\n */\nfunction RevisionsButtons( {\n\tuserRevisions,\n\tselectedRevisionId,\n\tonChange,\n\tcanApplyRevision,\n\tonApplyRevision,\n} ) {\n\tconst { currentThemeName, currentUser } = useSelect( ( select ) => {\n\t\tconst { getCurrentTheme, getCurrentUser } = select( coreStore );\n\t\tconst currentTheme = getCurrentTheme();\n\t\treturn {\n\t\t\tcurrentThemeName:\n\t\t\t\tcurrentTheme?.name?.rendered || currentTheme?.stylesheet,\n\t\t\tcurrentUser: getCurrentUser(),\n\t\t};\n\t}, [] );\n\tconst dateNowInMs = getDate().getTime();\n\tconst { datetimeAbbreviated } = getSettings().formats;\n\n\treturn (\n\t\t<ol\n\t\t\tclassName=\"edit-site-global-styles-screen-revisions__revisions-list\"\n\t\t\taria-label={ __( 'Global styles revisions list' ) }\n\t\t\trole=\"group\"\n\t\t>\n\t\t\t{ userRevisions.map( ( revision, index ) => {\n\t\t\t\tconst { id, author, modified } = revision;\n\t\t\t\tconst isUnsaved = 'unsaved' === id;\n\t\t\t\t// Unsaved changes are created by the current user.\n\t\t\t\tconst revisionAuthor = isUnsaved ? currentUser : author;\n\t\t\t\tconst authorDisplayName = revisionAuthor?.name || __( 'User' );\n\t\t\t\tconst authorAvatar = revisionAuthor?.avatar_urls?.[ '48' ];\n\t\t\t\tconst isFirstItem = index === 0;\n\t\t\t\tconst isSelected = selectedRevisionId\n\t\t\t\t\t? selectedRevisionId === id\n\t\t\t\t\t: isFirstItem;\n\t\t\t\tconst areStylesEqual = ! canApplyRevision && isSelected;\n\t\t\t\tconst isReset = 'parent' === id;\n\t\t\t\tconst modifiedDate = getDate( modified );\n\t\t\t\tconst displayDate =\n\t\t\t\t\tmodified &&\n\t\t\t\t\tdateNowInMs - modifiedDate.getTime() > DAY_IN_MILLISECONDS\n\t\t\t\t\t\t? dateI18n( datetimeAbbreviated, modifiedDate )\n\t\t\t\t\t\t: humanTimeDiff( modified );\n\t\t\t\tconst revisionLabel = getRevisionLabel(\n\t\t\t\t\tid,\n\t\t\t\t\tauthorDisplayName,\n\t\t\t\t\tdateI18n( datetimeAbbreviated, modifiedDate ),\n\t\t\t\t\tareStylesEqual\n\t\t\t\t);\n\n\t\t\t\treturn (\n\t\t\t\t\t<li\n\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t'edit-site-global-styles-screen-revisions__revision-item',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'is-selected': isSelected,\n\t\t\t\t\t\t\t\t'is-active': areStylesEqual,\n\t\t\t\t\t\t\t\t'is-reset': isReset,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tkey={ id }\n\t\t\t\t\t\taria-current={ isSelected }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__revision-button\"\n\t\t\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\t\t\tdisabled={ isSelected }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonChange( revision );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\taria-label={ revisionLabel }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isReset ? (\n\t\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__description\">\n\t\t\t\t\t\t\t\t\t{ __( 'Default styles' ) }\n\t\t\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__meta\">\n\t\t\t\t\t\t\t\t\t\t{ currentThemeName }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__description\">\n\t\t\t\t\t\t\t\t\t{ isUnsaved ? (\n\t\t\t\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__date\">\n\t\t\t\t\t\t\t\t\t\t\t{ __( '(Unsaved)' ) }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<time\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__date\"\n\t\t\t\t\t\t\t\t\t\t\tdateTime={ modified }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ displayDate }\n\t\t\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t<span className=\"edit-site-global-styles-screen-revisions__meta\">\n\t\t\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\t\t\talt={ authorDisplayName }\n\t\t\t\t\t\t\t\t\t\t\tsrc={ authorAvatar }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{ authorDisplayName }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t{ isSelected && (\n\t\t\t\t\t\t\t\t\t\t<ChangesSummary\n\t\t\t\t\t\t\t\t\t\t\trevision={ revision }\n\t\t\t\t\t\t\t\t\t\t\tpreviousRevision={\n\t\t\t\t\t\t\t\t\t\t\t\tindex < userRevisions.length\n\t\t\t\t\t\t\t\t\t\t\t\t\t? userRevisions[ index + 1 ]\n\t\t\t\t\t\t\t\t\t\t\t\t\t: {}\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t{ isSelected &&\n\t\t\t\t\t\t\t( areStylesEqual ? (\n\t\t\t\t\t\t\t\t<p className=\"edit-site-global-styles-screen-revisions__applied-text\">\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'These styles are already applied to your site.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-screen-revisions__apply-button\"\n\t\t\t\t\t\t\t\t\tonClick={ onApplyRevision }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ isReset\n\t\t\t\t\t\t\t\t\t\t? __( 'Reset to defaults' )\n\t\t\t\t\t\t\t\t\t\t: __( 'Apply' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t</li>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</ol>\n\t);\n}\n\nexport default RevisionsButtons;\n"],"mappings":"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","ignoreList":[]}
@@ -144,6 +144,7 @@ export default function ShadowsEditPanel() {
144
144
  setIsConfirmDialogVisible(false);
145
145
  },
146
146
  confirmButtonText: __('Delete'),
147
+ size: "medium",
147
148
  children: sprintf(
148
149
  // translators: %s: name of the shadow
149
150
  'Are you sure you want to delete "%s"?', selectedShadow.name)
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalSpacer","Spacer","__experimentalItemGroup","ItemGroup","__experimentalHeading","Heading","__experimentalInputControl","InputControl","__experimentalUnitControl","UnitControl","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","__experimentalGrid","Grid","__experimentalDropdownContentWrapper","DropdownContentWrapper","__experimentalUseNavigator","useNavigator","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalConfirmDialog","ConfirmDialog","Dropdown","RangeControl","Button","Flex","FlexItem","ColorPalette","Modal","privateApis","componentsPrivateApis","__","sprintf","blockEditorPrivateApis","plus","shadow","shadowIcon","reset","settings","moreVertical","useState","useMemo","unlock","Subtitle","ScreenHeader","defaultShadow","getShadowParts","shadowStringToObject","shadowObjectToString","CUSTOM_VALUE_SETTINGS","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useGlobalSetting","DropdownMenuV2","DropdownMenu","DropdownMenuItemV2","DropdownMenuItem","DropdownMenuItemLabelV2","DropdownMenuItemLabel","customShadowMenuItems","label","action","presetShadowMenuItems","ShadowsEditPanel","params","category","slug","goTo","shadows","setShadows","baseShadows","undefined","selectedShadow","setSelectedShadow","find","baseSelectedShadow","b","isConfirmDialogVisible","setIsConfirmDialogVisible","isRenameModalVisible","setIsRenameModalVisible","shadowName","setShadowName","name","onShadowChange","updatedShadows","map","s","onMenuClick","handleShadowDelete","filter","handleShadowRename","newName","title","children","justify","marginTop","marginBottom","paddingX","trigger","size","icon","item","onClick","disabled","className","ShadowsPreview","ShadowEditor","onChange","isOpen","onConfirm","onCancel","confirmButtonText","onRequestClose","onSubmit","event","preventDefault","autoComplete","placeholder","value","expanded","variant","type","shadowStyle","boxShadow","align","style","shadowParts","onChangeShadowPart","index","part","join","onAddShadowPart","push","onRemoveShadowPart","splice","spacing","level","isBordered","isSeparated","ShadowItem","canRemove","length","onRemove","popoverProps","placement","offset","shift","shadowObj","newShadow","renderToggle","onToggle","toggleProps","removeButtonProps","ariaLabel","tooltip","flexGrow","inset","renderContent","paddingSize","ShadowPopover","__experimentalIsRenderedInSidebar","enableAlpha","key","clearable","color","isBlock","hideLabelFromVision","__next40pxDefaultSize","columns","gap","ShadowInputControl","x","hasNegativeRange","y","blur","spread","_CUSTOM_VALUE_SETTING","_CUSTOM_VALUE_SETTING2","_CUSTOM_VALUE_SETTING3","isCustomInput","setIsCustomInput","parsedQuantity","parsedUnit","sliderOnChange","next","onValueChange","isNumeric","isNaN","parseFloat","nextValue","isPressed","withInputField","__nextHasNoMarginBottom","min","max","step"],"sources":["@wordpress/edit-site/src/components/global-styles/shadows-edit-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHeading as Heading,\n\t__experimentalInputControl as InputControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n\t__experimentalGrid as Grid,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdown,\n\tRangeControl,\n\tButton,\n\tFlex,\n\tFlexItem,\n\tColorPalette,\n\tModal,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport {\n\tplus,\n\tshadow as shadowIcon,\n\treset,\n\tsettings,\n\tmoreVertical,\n} from '@wordpress/icons';\nimport { useState, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport Subtitle from './subtitle';\nimport ScreenHeader from './header';\nimport { defaultShadow } from './shadows-panel';\nimport {\n\tgetShadowParts,\n\tshadowStringToObject,\n\tshadowObjectToString,\n\tCUSTOM_VALUE_SETTINGS,\n} from './shadow-utils';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuItemV2: DropdownMenuItem,\n\tDropdownMenuItemLabelV2: DropdownMenuItemLabel,\n} = unlock( componentsPrivateApis );\n\nconst customShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Rename' ),\n\t\taction: 'rename',\n\t},\n\t{\n\t\tlabel: __( 'Delete' ),\n\t\taction: 'delete',\n\t},\n];\n\nconst presetShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Reset' ),\n\t\taction: 'reset',\n\t},\n];\n\nexport default function ShadowsEditPanel() {\n\tconst {\n\t\tparams: { category, slug },\n\t\tgoTo,\n\t} = useNavigator();\n\tconst [ shadows, setShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`\n\t);\n\tconst [ baseShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`,\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst [ selectedShadow, setSelectedShadow ] = useState( () =>\n\t\t( shadows || [] ).find( ( shadow ) => shadow.slug === slug )\n\t);\n\tconst baseSelectedShadow = useMemo(\n\t\t() => ( baseShadows || [] ).find( ( b ) => b.slug === slug ),\n\t\t[ baseShadows, slug ]\n\t);\n\tconst [ isConfirmDialogVisible, setIsConfirmDialogVisible ] =\n\t\tuseState( false );\n\tconst [ isRenameModalVisible, setIsRenameModalVisible ] = useState( false );\n\tconst [ shadowName, setShadowName ] = useState( selectedShadow.name );\n\n\tconst onShadowChange = ( shadow ) => {\n\t\tsetSelectedShadow( { ...selectedShadow, shadow } );\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, shadow } : s\n\t\t);\n\t\tsetShadows( updatedShadows );\n\t};\n\n\tconst onMenuClick = ( action ) => {\n\t\tif ( action === 'reset' ) {\n\t\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\t\ts.slug === slug ? baseSelectedShadow : s\n\t\t\t);\n\t\t\tsetSelectedShadow( baseSelectedShadow );\n\t\t\tsetShadows( updatedShadows );\n\t\t} else if ( action === 'delete' ) {\n\t\t\tsetIsConfirmDialogVisible( true );\n\t\t} else if ( action === 'rename' ) {\n\t\t\tsetIsRenameModalVisible( true );\n\t\t}\n\t};\n\n\tconst handleShadowDelete = () => {\n\t\tconst updatedShadows = shadows.filter( ( s ) => s.slug !== slug );\n\t\tsetShadows( updatedShadows );\n\t\tgoTo( `/shadows` );\n\t};\n\n\tconst handleShadowRename = ( newName ) => {\n\t\tif ( ! newName ) {\n\t\t\treturn;\n\t\t}\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, name: newName } : s\n\t\t);\n\t\tsetSelectedShadow( { ...selectedShadow, name: newName } );\n\t\tsetShadows( updatedShadows );\n\t};\n\n\treturn ! selectedShadow ? (\n\t\t<ScreenHeader title=\"\" />\n\t) : (\n\t\t<>\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<ScreenHeader title={ selectedShadow.name } />\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Spacer marginTop={ 2 } marginBottom={ 0 } paddingX={ 4 }>\n\t\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ ( category === 'custom'\n\t\t\t\t\t\t\t\t? customShadowMenuItems\n\t\t\t\t\t\t\t\t: presetShadowMenuItems\n\t\t\t\t\t\t\t).map( ( item ) => (\n\t\t\t\t\t\t\t\t<DropdownMenuItem\n\t\t\t\t\t\t\t\t\tkey={ item.action }\n\t\t\t\t\t\t\t\t\tonClick={ () => onMenuClick( item.action ) }\n\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\titem.action === 'reset' &&\n\t\t\t\t\t\t\t\t\t\tselectedShadow.shadow ===\n\t\t\t\t\t\t\t\t\t\t\tbaseSelectedShadow.shadow\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t\t\t{ item.label }\n\t\t\t\t\t\t\t\t\t</DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</DropdownMenu>\n\t\t\t\t\t</Spacer>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t\t<div className=\"edit-site-global-styles-screen\">\n\t\t\t\t<ShadowsPreview shadow={ selectedShadow.shadow } />\n\t\t\t\t<ShadowEditor\n\t\t\t\t\tshadow={ selectedShadow.shadow }\n\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ isConfirmDialogVisible && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tisOpen\n\t\t\t\t\tonConfirm={ () => {\n\t\t\t\t\t\thandleShadowDelete();\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonCancel={ () => {\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\t>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t// translators: %s: name of the shadow\n\t\t\t\t\t\t'Are you sure you want to delete \"%s\"?',\n\t\t\t\t\t\tselectedShadow.name\n\t\t\t\t\t) }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t\t{ isRenameModalVisible && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Rename' ) }\n\t\t\t\t\tonRequestClose={ () => setIsRenameModalVisible( false ) }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t>\n\t\t\t\t\t<form\n\t\t\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\thandleShadowRename( shadowName );\n\t\t\t\t\t\t\tsetIsRenameModalVisible( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\tplaceholder={ __( 'Shadow name' ) }\n\t\t\t\t\t\t\tvalue={ shadowName }\n\t\t\t\t\t\t\tonChange={ ( value ) => setShadowName( value ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Spacer marginBottom={ 6 } />\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"block-editor-shadow-edit-modal__actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetIsRenameModalVisible( false )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction ShadowsPreview( { shadow } ) {\n\tconst shadowStyle = {\n\t\tboxShadow: shadow,\n\t};\n\n\treturn (\n\t\t<Spacer marginBottom={ 4 } marginTop={ -2 }>\n\t\t\t<HStack\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-panel\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-block\"\n\t\t\t\t\tstyle={ shadowStyle }\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t</Spacer>\n\t);\n}\n\nfunction ShadowEditor( { shadow, onChange } ) {\n\tconst shadowParts = useMemo( () => getShadowParts( shadow ), [ shadow ] );\n\n\tconst onChangeShadowPart = ( index, part ) => {\n\t\tshadowParts[ index ] = part;\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onAddShadowPart = () => {\n\t\tshadowParts.push( defaultShadow );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onRemoveShadowPart = ( index ) => {\n\t\tshadowParts.splice( index, 1 );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t\t<Flex\n\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\tclassName=\"edit-site-global-styles__shadows-panel__title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Shadows' ) }</Subtitle>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<FlexItem className=\"edit-site-global-styles__shadows-panel__options-container\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\t\tlabel={ __( 'Add shadow' ) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonAddShadowPart();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t\t<Spacer />\n\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t{ shadowParts.map( ( part, index ) => (\n\t\t\t\t\t<ShadowItem\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\tshadow={ part }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonChangeShadowPart( index, value )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcanRemove={ shadowParts.length > 1 }\n\t\t\t\t\t\tonRemove={ () => onRemoveShadowPart( index ) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ShadowItem( { shadow, onChange, canRemove, onRemove } ) {\n\tconst popoverProps = {\n\t\tplacement: 'left-start',\n\t\toffset: 36,\n\t\tshift: true,\n\t};\n\tconst shadowObj = useMemo(\n\t\t() => shadowStringToObject( shadow ),\n\t\t[ shadow ]\n\t);\n\tconst onShadowChange = ( newShadow ) => {\n\t\tonChange( shadowObjectToString( newShadow ) );\n\t};\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ popoverProps }\n\t\t\tclassName=\"edit-site-global-styles__shadow-editor__dropdown\"\n\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\tconst toggleProps = {\n\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__dropdown-toggle',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t};\n\t\t\t\tconst removeButtonProps = {\n\t\t\t\t\tonClick: onRemove,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__remove-button',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\tariaLabel: __( 'Remove shadow' ),\n\t\t\t\t\ttooltip: __( 'Remove shadow' ),\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<HStack align=\"center\" justify=\"flex-start\" spacing={ 0 }>\n\t\t\t\t\t\t<FlexItem style={ { flexGrow: 1 } }>\n\t\t\t\t\t\t\t<Button icon={ shadowIcon } { ...toggleProps }>\n\t\t\t\t\t\t\t\t{ shadowObj.inset\n\t\t\t\t\t\t\t\t\t? __( 'Inner shadow' )\n\t\t\t\t\t\t\t\t\t: __( 'Drop shadow' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t{ canRemove && (\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ticon={ reset }\n\t\t\t\t\t\t\t\t\t{ ...removeButtonProps }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</HStack>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t<div className=\"edit-site-global-styles__shadow-editor__dropdown-content\">\n\t\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\t\tshadowObj={ shadowObj }\n\t\t\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nfunction ShadowPopover( { shadowObj, onChange } ) {\n\tconst __experimentalIsRenderedInSidebar = true;\n\tconst enableAlpha = true;\n\n\tconst onShadowChange = ( key, value ) => {\n\t\tconst newShadow = {\n\t\t\t...shadowObj,\n\t\t\t[ key ]: value,\n\t\t};\n\t\tonChange( newShadow );\n\t};\n\n\treturn (\n\t\t<div className=\"edit-site-global-styles__shadow-editor-panel\">\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<Heading level={ 5 }>{ __( 'Shadow' ) }</Heading>\n\t\t\t\t<div className=\"edit-site-global-styles__shadow-editor-color-palette\">\n\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvalue={ shadowObj.color }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'color', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<ToggleGroupControl\n\t\t\t\t\tvalue={ shadowObj.inset ? 'inset' : 'outset' }\n\t\t\t\t\tisBlock\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tonShadowChange( 'inset', value === 'inset' )\n\t\t\t\t\t}\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\tvalue=\"outset\"\n\t\t\t\t\t\tlabel={ __( 'Outset' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\tvalue=\"inset\"\n\t\t\t\t\t\tlabel={ __( 'Inset' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToggleGroupControl>\n\t\t\t\t<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'X Position' ) }\n\t\t\t\t\t\tvalue={ shadowObj.x }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'x', value ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Y Position' ) }\n\t\t\t\t\t\tvalue={ shadowObj.y }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'y', value ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Blur' ) }\n\t\t\t\t\t\tvalue={ shadowObj.blur }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'blur', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Spread' ) }\n\t\t\t\t\t\tvalue={ shadowObj.spread }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'spread', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Grid>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nfunction ShadowInputControl( { label, value, onChange, hasNegativeRange } ) {\n\tconst [ isCustomInput, setIsCustomInput ] = useState( false );\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( value );\n\n\tconst sliderOnChange = ( next ) => {\n\t\tonChange(\n\t\t\tnext !== undefined ? [ next, parsedUnit || 'px' ].join( '' ) : '0px'\n\t\t);\n\t};\n\tconst onValueChange = ( next ) => {\n\t\tconst isNumeric = next !== undefined && ! isNaN( parseFloat( next ) );\n\t\tconst nextValue = isNumeric ? next : '0px';\n\t\tonChange( nextValue );\n\t};\n\n\treturn (\n\t\t<VStack justify=\"flex-start\">\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<Subtitle>{ label }</Subtitle>\n\t\t\t\t<Button\n\t\t\t\t\tlabel={ __( 'Use custom size' ) }\n\t\t\t\t\ticon={ settings }\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsCustomInput( ! isCustomInput );\n\t\t\t\t\t} }\n\t\t\t\t\tisPressed={ isCustomInput }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t\t{ isCustomInput ? (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onValueChange }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<RangeControl\n\t\t\t\t\tvalue={ parsedQuantity ?? 0 }\n\t\t\t\t\tonChange={ sliderOnChange }\n\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tmin={\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\t\t? -(\n\t\t\t\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]\n\t\t\t\t\t\t\t\t\t\t?.max ?? 10\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: 0\n\t\t\t\t\t}\n\t\t\t\t\tmax={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.max ?? 10\n\t\t\t\t\t}\n\t\t\t\t\tstep={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.step ?? 0.1\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalSpacer","Spacer","__experimentalItemGroup","ItemGroup","__experimentalHeading","Heading","__experimentalInputControl","InputControl","__experimentalUnitControl","UnitControl","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","__experimentalGrid","Grid","__experimentalDropdownContentWrapper","DropdownContentWrapper","__experimentalUseNavigator","useNavigator","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalConfirmDialog","ConfirmDialog","Dropdown","RangeControl","Button","Flex","FlexItem","ColorPalette","Modal","privateApis","componentsPrivateApis","__","sprintf","blockEditorPrivateApis","plus","shadow","shadowIcon","reset","settings","moreVertical","useState","useMemo","unlock","Subtitle","ScreenHeader","defaultShadow","getShadowParts","shadowStringToObject","shadowObjectToString","CUSTOM_VALUE_SETTINGS","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useGlobalSetting","DropdownMenuV2","DropdownMenu","DropdownMenuItemV2","DropdownMenuItem","DropdownMenuItemLabelV2","DropdownMenuItemLabel","customShadowMenuItems","label","action","presetShadowMenuItems","ShadowsEditPanel","params","category","slug","goTo","shadows","setShadows","baseShadows","undefined","selectedShadow","setSelectedShadow","find","baseSelectedShadow","b","isConfirmDialogVisible","setIsConfirmDialogVisible","isRenameModalVisible","setIsRenameModalVisible","shadowName","setShadowName","name","onShadowChange","updatedShadows","map","s","onMenuClick","handleShadowDelete","filter","handleShadowRename","newName","title","children","justify","marginTop","marginBottom","paddingX","trigger","size","icon","item","onClick","disabled","className","ShadowsPreview","ShadowEditor","onChange","isOpen","onConfirm","onCancel","confirmButtonText","onRequestClose","onSubmit","event","preventDefault","autoComplete","placeholder","value","expanded","variant","type","shadowStyle","boxShadow","align","style","shadowParts","onChangeShadowPart","index","part","join","onAddShadowPart","push","onRemoveShadowPart","splice","spacing","level","isBordered","isSeparated","ShadowItem","canRemove","length","onRemove","popoverProps","placement","offset","shift","shadowObj","newShadow","renderToggle","onToggle","toggleProps","removeButtonProps","ariaLabel","tooltip","flexGrow","inset","renderContent","paddingSize","ShadowPopover","__experimentalIsRenderedInSidebar","enableAlpha","key","clearable","color","isBlock","hideLabelFromVision","__next40pxDefaultSize","columns","gap","ShadowInputControl","x","hasNegativeRange","y","blur","spread","_CUSTOM_VALUE_SETTING","_CUSTOM_VALUE_SETTING2","_CUSTOM_VALUE_SETTING3","isCustomInput","setIsCustomInput","parsedQuantity","parsedUnit","sliderOnChange","next","onValueChange","isNumeric","isNaN","parseFloat","nextValue","isPressed","withInputField","__nextHasNoMarginBottom","min","max","step"],"sources":["@wordpress/edit-site/src/components/global-styles/shadows-edit-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHeading as Heading,\n\t__experimentalInputControl as InputControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n\t__experimentalGrid as Grid,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdown,\n\tRangeControl,\n\tButton,\n\tFlex,\n\tFlexItem,\n\tColorPalette,\n\tModal,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport {\n\tplus,\n\tshadow as shadowIcon,\n\treset,\n\tsettings,\n\tmoreVertical,\n} from '@wordpress/icons';\nimport { useState, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport Subtitle from './subtitle';\nimport ScreenHeader from './header';\nimport { defaultShadow } from './shadows-panel';\nimport {\n\tgetShadowParts,\n\tshadowStringToObject,\n\tshadowObjectToString,\n\tCUSTOM_VALUE_SETTINGS,\n} from './shadow-utils';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuItemV2: DropdownMenuItem,\n\tDropdownMenuItemLabelV2: DropdownMenuItemLabel,\n} = unlock( componentsPrivateApis );\n\nconst customShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Rename' ),\n\t\taction: 'rename',\n\t},\n\t{\n\t\tlabel: __( 'Delete' ),\n\t\taction: 'delete',\n\t},\n];\n\nconst presetShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Reset' ),\n\t\taction: 'reset',\n\t},\n];\n\nexport default function ShadowsEditPanel() {\n\tconst {\n\t\tparams: { category, slug },\n\t\tgoTo,\n\t} = useNavigator();\n\tconst [ shadows, setShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`\n\t);\n\tconst [ baseShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`,\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst [ selectedShadow, setSelectedShadow ] = useState( () =>\n\t\t( shadows || [] ).find( ( shadow ) => shadow.slug === slug )\n\t);\n\tconst baseSelectedShadow = useMemo(\n\t\t() => ( baseShadows || [] ).find( ( b ) => b.slug === slug ),\n\t\t[ baseShadows, slug ]\n\t);\n\tconst [ isConfirmDialogVisible, setIsConfirmDialogVisible ] =\n\t\tuseState( false );\n\tconst [ isRenameModalVisible, setIsRenameModalVisible ] = useState( false );\n\tconst [ shadowName, setShadowName ] = useState( selectedShadow.name );\n\n\tconst onShadowChange = ( shadow ) => {\n\t\tsetSelectedShadow( { ...selectedShadow, shadow } );\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, shadow } : s\n\t\t);\n\t\tsetShadows( updatedShadows );\n\t};\n\n\tconst onMenuClick = ( action ) => {\n\t\tif ( action === 'reset' ) {\n\t\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\t\ts.slug === slug ? baseSelectedShadow : s\n\t\t\t);\n\t\t\tsetSelectedShadow( baseSelectedShadow );\n\t\t\tsetShadows( updatedShadows );\n\t\t} else if ( action === 'delete' ) {\n\t\t\tsetIsConfirmDialogVisible( true );\n\t\t} else if ( action === 'rename' ) {\n\t\t\tsetIsRenameModalVisible( true );\n\t\t}\n\t};\n\n\tconst handleShadowDelete = () => {\n\t\tconst updatedShadows = shadows.filter( ( s ) => s.slug !== slug );\n\t\tsetShadows( updatedShadows );\n\t\tgoTo( `/shadows` );\n\t};\n\n\tconst handleShadowRename = ( newName ) => {\n\t\tif ( ! newName ) {\n\t\t\treturn;\n\t\t}\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, name: newName } : s\n\t\t);\n\t\tsetSelectedShadow( { ...selectedShadow, name: newName } );\n\t\tsetShadows( updatedShadows );\n\t};\n\n\treturn ! selectedShadow ? (\n\t\t<ScreenHeader title=\"\" />\n\t) : (\n\t\t<>\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<ScreenHeader title={ selectedShadow.name } />\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Spacer marginTop={ 2 } marginBottom={ 0 } paddingX={ 4 }>\n\t\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ ( category === 'custom'\n\t\t\t\t\t\t\t\t? customShadowMenuItems\n\t\t\t\t\t\t\t\t: presetShadowMenuItems\n\t\t\t\t\t\t\t).map( ( item ) => (\n\t\t\t\t\t\t\t\t<DropdownMenuItem\n\t\t\t\t\t\t\t\t\tkey={ item.action }\n\t\t\t\t\t\t\t\t\tonClick={ () => onMenuClick( item.action ) }\n\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\titem.action === 'reset' &&\n\t\t\t\t\t\t\t\t\t\tselectedShadow.shadow ===\n\t\t\t\t\t\t\t\t\t\t\tbaseSelectedShadow.shadow\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t\t\t{ item.label }\n\t\t\t\t\t\t\t\t\t</DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</DropdownMenu>\n\t\t\t\t\t</Spacer>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t\t<div className=\"edit-site-global-styles-screen\">\n\t\t\t\t<ShadowsPreview shadow={ selectedShadow.shadow } />\n\t\t\t\t<ShadowEditor\n\t\t\t\t\tshadow={ selectedShadow.shadow }\n\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ isConfirmDialogVisible && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tisOpen\n\t\t\t\t\tonConfirm={ () => {\n\t\t\t\t\t\thandleShadowDelete();\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonCancel={ () => {\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\t\tsize=\"medium\"\n\t\t\t\t>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t// translators: %s: name of the shadow\n\t\t\t\t\t\t'Are you sure you want to delete \"%s\"?',\n\t\t\t\t\t\tselectedShadow.name\n\t\t\t\t\t) }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t\t{ isRenameModalVisible && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Rename' ) }\n\t\t\t\t\tonRequestClose={ () => setIsRenameModalVisible( false ) }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t>\n\t\t\t\t\t<form\n\t\t\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\thandleShadowRename( shadowName );\n\t\t\t\t\t\t\tsetIsRenameModalVisible( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\tplaceholder={ __( 'Shadow name' ) }\n\t\t\t\t\t\t\tvalue={ shadowName }\n\t\t\t\t\t\t\tonChange={ ( value ) => setShadowName( value ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Spacer marginBottom={ 6 } />\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"block-editor-shadow-edit-modal__actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetIsRenameModalVisible( false )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction ShadowsPreview( { shadow } ) {\n\tconst shadowStyle = {\n\t\tboxShadow: shadow,\n\t};\n\n\treturn (\n\t\t<Spacer marginBottom={ 4 } marginTop={ -2 }>\n\t\t\t<HStack\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-panel\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-block\"\n\t\t\t\t\tstyle={ shadowStyle }\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t</Spacer>\n\t);\n}\n\nfunction ShadowEditor( { shadow, onChange } ) {\n\tconst shadowParts = useMemo( () => getShadowParts( shadow ), [ shadow ] );\n\n\tconst onChangeShadowPart = ( index, part ) => {\n\t\tshadowParts[ index ] = part;\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onAddShadowPart = () => {\n\t\tshadowParts.push( defaultShadow );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onRemoveShadowPart = ( index ) => {\n\t\tshadowParts.splice( index, 1 );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t\t<Flex\n\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\tclassName=\"edit-site-global-styles__shadows-panel__title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Shadows' ) }</Subtitle>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<FlexItem className=\"edit-site-global-styles__shadows-panel__options-container\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\t\tlabel={ __( 'Add shadow' ) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonAddShadowPart();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t\t<Spacer />\n\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t{ shadowParts.map( ( part, index ) => (\n\t\t\t\t\t<ShadowItem\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\tshadow={ part }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonChangeShadowPart( index, value )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcanRemove={ shadowParts.length > 1 }\n\t\t\t\t\t\tonRemove={ () => onRemoveShadowPart( index ) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ShadowItem( { shadow, onChange, canRemove, onRemove } ) {\n\tconst popoverProps = {\n\t\tplacement: 'left-start',\n\t\toffset: 36,\n\t\tshift: true,\n\t};\n\tconst shadowObj = useMemo(\n\t\t() => shadowStringToObject( shadow ),\n\t\t[ shadow ]\n\t);\n\tconst onShadowChange = ( newShadow ) => {\n\t\tonChange( shadowObjectToString( newShadow ) );\n\t};\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ popoverProps }\n\t\t\tclassName=\"edit-site-global-styles__shadow-editor__dropdown\"\n\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\tconst toggleProps = {\n\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__dropdown-toggle',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t};\n\t\t\t\tconst removeButtonProps = {\n\t\t\t\t\tonClick: onRemove,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__remove-button',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\tariaLabel: __( 'Remove shadow' ),\n\t\t\t\t\ttooltip: __( 'Remove shadow' ),\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<HStack align=\"center\" justify=\"flex-start\" spacing={ 0 }>\n\t\t\t\t\t\t<FlexItem style={ { flexGrow: 1 } }>\n\t\t\t\t\t\t\t<Button icon={ shadowIcon } { ...toggleProps }>\n\t\t\t\t\t\t\t\t{ shadowObj.inset\n\t\t\t\t\t\t\t\t\t? __( 'Inner shadow' )\n\t\t\t\t\t\t\t\t\t: __( 'Drop shadow' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t{ canRemove && (\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ticon={ reset }\n\t\t\t\t\t\t\t\t\t{ ...removeButtonProps }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</HStack>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t<div className=\"edit-site-global-styles__shadow-editor__dropdown-content\">\n\t\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\t\tshadowObj={ shadowObj }\n\t\t\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nfunction ShadowPopover( { shadowObj, onChange } ) {\n\tconst __experimentalIsRenderedInSidebar = true;\n\tconst enableAlpha = true;\n\n\tconst onShadowChange = ( key, value ) => {\n\t\tconst newShadow = {\n\t\t\t...shadowObj,\n\t\t\t[ key ]: value,\n\t\t};\n\t\tonChange( newShadow );\n\t};\n\n\treturn (\n\t\t<div className=\"edit-site-global-styles__shadow-editor-panel\">\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<Heading level={ 5 }>{ __( 'Shadow' ) }</Heading>\n\t\t\t\t<div className=\"edit-site-global-styles__shadow-editor-color-palette\">\n\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvalue={ shadowObj.color }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'color', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<ToggleGroupControl\n\t\t\t\t\tvalue={ shadowObj.inset ? 'inset' : 'outset' }\n\t\t\t\t\tisBlock\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tonShadowChange( 'inset', value === 'inset' )\n\t\t\t\t\t}\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\tvalue=\"outset\"\n\t\t\t\t\t\tlabel={ __( 'Outset' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\tvalue=\"inset\"\n\t\t\t\t\t\tlabel={ __( 'Inset' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToggleGroupControl>\n\t\t\t\t<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'X Position' ) }\n\t\t\t\t\t\tvalue={ shadowObj.x }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'x', value ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Y Position' ) }\n\t\t\t\t\t\tvalue={ shadowObj.y }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'y', value ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Blur' ) }\n\t\t\t\t\t\tvalue={ shadowObj.blur }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'blur', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Spread' ) }\n\t\t\t\t\t\tvalue={ shadowObj.spread }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'spread', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Grid>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nfunction ShadowInputControl( { label, value, onChange, hasNegativeRange } ) {\n\tconst [ isCustomInput, setIsCustomInput ] = useState( false );\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( value );\n\n\tconst sliderOnChange = ( next ) => {\n\t\tonChange(\n\t\t\tnext !== undefined ? [ next, parsedUnit || 'px' ].join( '' ) : '0px'\n\t\t);\n\t};\n\tconst onValueChange = ( next ) => {\n\t\tconst isNumeric = next !== undefined && ! isNaN( parseFloat( next ) );\n\t\tconst nextValue = isNumeric ? next : '0px';\n\t\tonChange( nextValue );\n\t};\n\n\treturn (\n\t\t<VStack justify=\"flex-start\">\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<Subtitle>{ label }</Subtitle>\n\t\t\t\t<Button\n\t\t\t\t\tlabel={ __( 'Use custom size' ) }\n\t\t\t\t\ticon={ settings }\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsCustomInput( ! isCustomInput );\n\t\t\t\t\t} }\n\t\t\t\t\tisPressed={ isCustomInput }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t\t{ isCustomInput ? (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onValueChange }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<RangeControl\n\t\t\t\t\tvalue={ parsedQuantity ?? 0 }\n\t\t\t\t\tonChange={ sliderOnChange }\n\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tmin={\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\t\t? -(\n\t\t\t\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]\n\t\t\t\t\t\t\t\t\t\t?.max ?? 10\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: 0\n\t\t\t\t\t}\n\t\t\t\t\tmax={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.max ?? 10\n\t\t\t\t\t}\n\t\t\t\t\tstep={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.step ?? 0.1\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -15,6 +15,7 @@ import { privateApis as editorPrivateApis } from '@wordpress/editor';
15
15
  /**
16
16
  * Internal dependencies
17
17
  */
18
+ import { filterObjectByProperty } from '../../../hooks/use-theme-style-variations/use-theme-style-variations-by-property';
18
19
  import { unlock } from '../../../lock-unlock';
19
20
  import { jsx as _jsx } from "react/jsx-runtime";
20
21
  const {
@@ -27,7 +28,8 @@ const {
27
28
  export default function Variation({
28
29
  variation,
29
30
  children,
30
- isPill
31
+ isPill,
32
+ property
31
33
  }) {
32
34
  const [isFocused, setIsFocused] = useState(false);
33
35
  const {
@@ -36,25 +38,18 @@ export default function Variation({
36
38
  setUserConfig
37
39
  } = useContext(GlobalStylesContext);
38
40
  const context = useMemo(() => {
39
- var _variation$settings, _variation$styles, _variation$_links;
41
+ let merged = mergeBaseAndUserConfigs(base, variation);
42
+ if (property) {
43
+ merged = filterObjectByProperty(merged, property);
44
+ }
40
45
  return {
41
- user: {
42
- settings: (_variation$settings = variation.settings) !== null && _variation$settings !== void 0 ? _variation$settings : {},
43
- styles: (_variation$styles = variation.styles) !== null && _variation$styles !== void 0 ? _variation$styles : {},
44
- _links: (_variation$_links = variation._links) !== null && _variation$_links !== void 0 ? _variation$_links : {}
45
- },
46
+ user: variation,
46
47
  base,
47
- merged: mergeBaseAndUserConfigs(base, variation),
48
+ merged,
48
49
  setUserConfig: () => {}
49
50
  };
50
- }, [variation, base]);
51
- const selectVariation = () => {
52
- setUserConfig(() => ({
53
- settings: variation.settings,
54
- styles: variation.styles,
55
- _links: variation._links
56
- }));
57
- };
51
+ }, [variation, base, property]);
52
+ const selectVariation = () => setUserConfig(variation);
58
53
  const selectOnEnter = event => {
59
54
  if (event.keyCode === ENTER) {
60
55
  event.preventDefault();
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","useMemo","useContext","useState","ENTER","__","sprintf","privateApis","blockEditorPrivateApis","editorPrivateApis","unlock","jsx","_jsx","mergeBaseAndUserConfigs","GlobalStylesContext","areGlobalStyleConfigsEqual","Variation","variation","children","isPill","isFocused","setIsFocused","base","user","setUserConfig","context","_variation$settings","_variation$styles","_variation$_links","settings","styles","_links","merged","selectVariation","selectOnEnter","event","keyCode","preventDefault","isActive","label","title","description","Provider","value","className","role","onClick","onKeyDown","tabIndex","onFocus","onBlur"],"sources":["@wordpress/edit-site/src/components/global-styles/variations/variation.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo, useContext, useState } from '@wordpress/element';\nimport { ENTER } from '@wordpress/keycodes';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\n\nconst { mergeBaseAndUserConfigs } = unlock( editorPrivateApis );\nconst { GlobalStylesContext, areGlobalStyleConfigsEqual } = unlock(\n\tblockEditorPrivateApis\n);\n\nexport default function Variation( { variation, children, isPill } ) {\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\tconst { base, user, setUserConfig } = useContext( GlobalStylesContext );\n\tconst context = useMemo(\n\t\t() => ( {\n\t\t\tuser: {\n\t\t\t\tsettings: variation.settings ?? {},\n\t\t\t\tstyles: variation.styles ?? {},\n\t\t\t\t_links: variation._links ?? {},\n\t\t\t},\n\t\t\tbase,\n\t\t\tmerged: mergeBaseAndUserConfigs( base, variation ),\n\t\t\tsetUserConfig: () => {},\n\t\t} ),\n\t\t[ variation, base ]\n\t);\n\n\tconst selectVariation = () => {\n\t\tsetUserConfig( () => ( {\n\t\t\tsettings: variation.settings,\n\t\t\tstyles: variation.styles,\n\t\t\t_links: variation._links,\n\t\t} ) );\n\t};\n\n\tconst selectOnEnter = ( event ) => {\n\t\tif ( event.keyCode === ENTER ) {\n\t\t\tevent.preventDefault();\n\t\t\tselectVariation();\n\t\t}\n\t};\n\n\tconst isActive = useMemo(\n\t\t() => areGlobalStyleConfigsEqual( user, variation ),\n\t\t[ user, variation ]\n\t);\n\n\tlet label = variation?.title;\n\tif ( variation?.description ) {\n\t\tlabel = sprintf(\n\t\t\t/* translators: %1$s: variation title. %2$s variation description. */\n\t\t\t__( '%1$s (%2$s)' ),\n\t\t\tvariation?.title,\n\t\t\tvariation?.description\n\t\t);\n\t}\n\n\treturn (\n\t\t<GlobalStylesContext.Provider value={ context }>\n\t\t\t<div\n\t\t\t\tclassName={ clsx( 'edit-site-global-styles-variations_item', {\n\t\t\t\t\t'is-active': isActive,\n\t\t\t\t} ) }\n\t\t\t\trole=\"button\"\n\t\t\t\tonClick={ selectVariation }\n\t\t\t\tonKeyDown={ selectOnEnter }\n\t\t\t\ttabIndex=\"0\"\n\t\t\t\taria-label={ label }\n\t\t\t\taria-current={ isActive }\n\t\t\t\tonFocus={ () => setIsFocused( true ) }\n\t\t\t\tonBlur={ () => setIsFocused( false ) }\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t'edit-site-global-styles-variations_item-preview',\n\t\t\t\t\t\t{ 'is-pill': isPill }\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ children( isFocused ) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</GlobalStylesContext.Provider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","useMemo","useContext","useState","ENTER","__","sprintf","privateApis","blockEditorPrivateApis","editorPrivateApis","filterObjectByProperty","unlock","jsx","_jsx","mergeBaseAndUserConfigs","GlobalStylesContext","areGlobalStyleConfigsEqual","Variation","variation","children","isPill","property","isFocused","setIsFocused","base","user","setUserConfig","context","merged","selectVariation","selectOnEnter","event","keyCode","preventDefault","isActive","label","title","description","Provider","value","className","role","onClick","onKeyDown","tabIndex","onFocus","onBlur"],"sources":["@wordpress/edit-site/src/components/global-styles/variations/variation.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo, useContext, useState } from '@wordpress/element';\nimport { ENTER } from '@wordpress/keycodes';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { filterObjectByProperty } from '../../../hooks/use-theme-style-variations/use-theme-style-variations-by-property';\nimport { unlock } from '../../../lock-unlock';\n\nconst { mergeBaseAndUserConfigs } = unlock( editorPrivateApis );\nconst { GlobalStylesContext, areGlobalStyleConfigsEqual } = unlock(\n\tblockEditorPrivateApis\n);\n\nexport default function Variation( { variation, children, isPill, property } ) {\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\tconst { base, user, setUserConfig } = useContext( GlobalStylesContext );\n\n\tconst context = useMemo( () => {\n\t\tlet merged = mergeBaseAndUserConfigs( base, variation );\n\t\tif ( property ) {\n\t\t\tmerged = filterObjectByProperty( merged, property );\n\t\t}\n\t\treturn {\n\t\t\tuser: variation,\n\t\t\tbase,\n\t\t\tmerged,\n\t\t\tsetUserConfig: () => {},\n\t\t};\n\t}, [ variation, base, property ] );\n\n\tconst selectVariation = () => setUserConfig( variation );\n\n\tconst selectOnEnter = ( event ) => {\n\t\tif ( event.keyCode === ENTER ) {\n\t\t\tevent.preventDefault();\n\t\t\tselectVariation();\n\t\t}\n\t};\n\n\tconst isActive = useMemo(\n\t\t() => areGlobalStyleConfigsEqual( user, variation ),\n\t\t[ user, variation ]\n\t);\n\n\tlet label = variation?.title;\n\tif ( variation?.description ) {\n\t\tlabel = sprintf(\n\t\t\t/* translators: %1$s: variation title. %2$s variation description. */\n\t\t\t__( '%1$s (%2$s)' ),\n\t\t\tvariation?.title,\n\t\t\tvariation?.description\n\t\t);\n\t}\n\n\treturn (\n\t\t<GlobalStylesContext.Provider value={ context }>\n\t\t\t<div\n\t\t\t\tclassName={ clsx( 'edit-site-global-styles-variations_item', {\n\t\t\t\t\t'is-active': isActive,\n\t\t\t\t} ) }\n\t\t\t\trole=\"button\"\n\t\t\t\tonClick={ selectVariation }\n\t\t\t\tonKeyDown={ selectOnEnter }\n\t\t\t\ttabIndex=\"0\"\n\t\t\t\taria-label={ label }\n\t\t\t\taria-current={ isActive }\n\t\t\t\tonFocus={ () => setIsFocused( true ) }\n\t\t\t\tonBlur={ () => setIsFocused( false ) }\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t'edit-site-global-styles-variations_item-preview',\n\t\t\t\t\t\t{ 'is-pill': isPill }\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ children( isFocused ) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</GlobalStylesContext.Provider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * WordPress dependencies
3
3
  */
4
- import { __experimentalVStack as VStack } from '@wordpress/components';
4
+ import { __experimentalVStack as VStack, __experimentalGrid as Grid } from '@wordpress/components';
5
5
 
6
6
  /**
7
7
  * Internal dependencies
@@ -27,11 +27,12 @@ export default function ColorVariations({
27
27
  children: [title && /*#__PURE__*/_jsx(Subtitle, {
28
28
  level: 3,
29
29
  children: title
30
- }), /*#__PURE__*/_jsx(VStack, {
30
+ }), /*#__PURE__*/_jsx(Grid, {
31
31
  spacing: gap,
32
32
  children: colorVariations.map((variation, index) => /*#__PURE__*/_jsx(Variation, {
33
33
  variation: variation,
34
34
  isPill: true,
35
+ property: "color",
35
36
  children: () => /*#__PURE__*/_jsx(StylesPreviewColors, {})
36
37
  }, index))
37
38
  })]
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalVStack","VStack","StylesPreviewColors","useColorVariations","Subtitle","Variation","jsx","_jsx","jsxs","_jsxs","ColorVariations","title","gap","colorVariations","length","spacing","children","level","map","variation","index","isPill"],"sources":["@wordpress/edit-site/src/components/global-styles/variations/variations-color.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalVStack as VStack } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport StylesPreviewColors from '../preview-colors';\nimport { useColorVariations } from '../hooks';\nimport Subtitle from '../subtitle';\nimport Variation from './variation';\n\nexport default function ColorVariations( { title, gap = 2 } ) {\n\tconst colorVariations = useColorVariations();\n\n\t// Return null if there is only one variation (the default).\n\tif ( colorVariations?.length <= 1 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<VStack spacing={ 3 }>\n\t\t\t{ title && <Subtitle level={ 3 }>{ title }</Subtitle> }\n\t\t\t<VStack spacing={ gap }>\n\t\t\t\t{ colorVariations.map( ( variation, index ) => (\n\t\t\t\t\t<Variation key={ index } variation={ variation } isPill>\n\t\t\t\t\t\t{ () => <StylesPreviewColors /> }\n\t\t\t\t\t</Variation>\n\t\t\t\t) ) }\n\t\t\t</VStack>\n\t\t</VStack>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,oBAAoB,IAAIC,MAAM,QAAQ,uBAAuB;;AAEtE;AACA;AACA;AACA,OAAOC,mBAAmB,MAAM,mBAAmB;AACnD,SAASC,kBAAkB,QAAQ,UAAU;AAC7C,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,SAAS,MAAM,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEpC,eAAe,SAASC,eAAeA,CAAE;EAAEC,KAAK;EAAEC,GAAG,GAAG;AAAE,CAAC,EAAG;EAC7D,MAAMC,eAAe,GAAGV,kBAAkB,CAAC,CAAC;;EAE5C;EACA,IAAKU,eAAe,EAAEC,MAAM,IAAI,CAAC,EAAG;IACnC,OAAO,IAAI;EACZ;EAEA,oBACCL,KAAA,CAACR,MAAM;IAACc,OAAO,EAAG,CAAG;IAAAC,QAAA,GAClBL,KAAK,iBAAIJ,IAAA,CAACH,QAAQ;MAACa,KAAK,EAAG,CAAG;MAAAD,QAAA,EAAGL;IAAK,CAAY,CAAC,eACrDJ,IAAA,CAACN,MAAM;MAACc,OAAO,EAAGH,GAAK;MAAAI,QAAA,EACpBH,eAAe,CAACK,GAAG,CAAE,CAAEC,SAAS,EAAEC,KAAK,kBACxCb,IAAA,CAACF,SAAS;QAAec,SAAS,EAAGA,SAAW;QAACE,MAAM;QAAAL,QAAA,EACpDA,CAAA,kBAAMT,IAAA,CAACL,mBAAmB,IAAE;MAAC,GADfkB,KAEN,CACV;IAAC,CACI,CAAC;EAAA,CACF,CAAC;AAEX","ignoreList":[]}
1
+ {"version":3,"names":["__experimentalVStack","VStack","__experimentalGrid","Grid","StylesPreviewColors","useColorVariations","Subtitle","Variation","jsx","_jsx","jsxs","_jsxs","ColorVariations","title","gap","colorVariations","length","spacing","children","level","map","variation","index","isPill","property"],"sources":["@wordpress/edit-site/src/components/global-styles/variations/variations-color.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalGrid as Grid,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport StylesPreviewColors from '../preview-colors';\nimport { useColorVariations } from '../hooks';\nimport Subtitle from '../subtitle';\nimport Variation from './variation';\n\nexport default function ColorVariations( { title, gap = 2 } ) {\n\tconst colorVariations = useColorVariations();\n\n\t// Return null if there is only one variation (the default).\n\tif ( colorVariations?.length <= 1 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<VStack spacing={ 3 }>\n\t\t\t{ title && <Subtitle level={ 3 }>{ title }</Subtitle> }\n\t\t\t<Grid spacing={ gap }>\n\t\t\t\t{ colorVariations.map( ( variation, index ) => (\n\t\t\t\t\t<Variation\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\tvariation={ variation }\n\t\t\t\t\t\tisPill\n\t\t\t\t\t\tproperty=\"color\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ () => <StylesPreviewColors /> }\n\t\t\t\t\t</Variation>\n\t\t\t\t) ) }\n\t\t\t</Grid>\n\t\t</VStack>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MAAM,EAC9BC,kBAAkB,IAAIC,IAAI,QACpB,uBAAuB;;AAE9B;AACA;AACA;AACA,OAAOC,mBAAmB,MAAM,mBAAmB;AACnD,SAASC,kBAAkB,QAAQ,UAAU;AAC7C,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,SAAS,MAAM,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEpC,eAAe,SAASC,eAAeA,CAAE;EAAEC,KAAK;EAAEC,GAAG,GAAG;AAAE,CAAC,EAAG;EAC7D,MAAMC,eAAe,GAAGV,kBAAkB,CAAC,CAAC;;EAE5C;EACA,IAAKU,eAAe,EAAEC,MAAM,IAAI,CAAC,EAAG;IACnC,OAAO,IAAI;EACZ;EAEA,oBACCL,KAAA,CAACV,MAAM;IAACgB,OAAO,EAAG,CAAG;IAAAC,QAAA,GAClBL,KAAK,iBAAIJ,IAAA,CAACH,QAAQ;MAACa,KAAK,EAAG,CAAG;MAAAD,QAAA,EAAGL;IAAK,CAAY,CAAC,eACrDJ,IAAA,CAACN,IAAI;MAACc,OAAO,EAAGH,GAAK;MAAAI,QAAA,EAClBH,eAAe,CAACK,GAAG,CAAE,CAAEC,SAAS,EAAEC,KAAK,kBACxCb,IAAA,CAACF,SAAS;QAETc,SAAS,EAAGA,SAAW;QACvBE,MAAM;QACNC,QAAQ,EAAC,OAAO;QAAAN,QAAA,EAEdA,CAAA,kBAAMT,IAAA,CAACL,mBAAmB,IAAE;MAAC,GALzBkB,KAMI,CACV;IAAC,CACE,CAAC;EAAA,CACA,CAAC;AAEX","ignoreList":[]}
@@ -34,6 +34,7 @@ export default function TypographyVariations({
34
34
  className: "edit-site-global-styles-style-variations-container",
35
35
  children: typographyVariations && typographyVariations.length && typographyVariations.map((variation, index) => /*#__PURE__*/_jsx(Variation, {
36
36
  variation: variation,
37
+ property: "typography",
37
38
  children: isFocused => /*#__PURE__*/_jsx(PreviewIframe, {
38
39
  label: variation?.title,
39
40
  isFocused: isFocused,
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalGrid","Grid","__experimentalVStack","HStack","VStack","useTypographyVariations","TypographyExample","PreviewIframe","Variation","Subtitle","jsx","_jsx","jsxs","_jsxs","TypographyVariations","title","gap","typographyVariations","length","spacing","children","level","columns","className","map","variation","index","isFocused","label","ratio","key","justify","style","height","overflow","fontSize"],"sources":["@wordpress/edit-site/src/components/global-styles/variations/variations-typography.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalGrid as Grid,\n\t__experimentalVStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { useTypographyVariations } from '../hooks';\nimport TypographyExample from '../typography-example';\nimport PreviewIframe from '../preview-iframe';\nimport Variation from './variation';\nimport Subtitle from '../subtitle';\n\nexport default function TypographyVariations( { title, gap = 2 } ) {\n\tconst typographyVariations = useTypographyVariations();\n\n\t// Return null if there is only one variation (the default).\n\tif ( typographyVariations?.length <= 1 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<VStack spacing={ 3 }>\n\t\t\t{ title && <Subtitle level={ 3 }>{ title }</Subtitle> }\n\t\t\t<Grid\n\t\t\t\tcolumns={ 3 }\n\t\t\t\tgap={ gap }\n\t\t\t\tclassName=\"edit-site-global-styles-style-variations-container\"\n\t\t\t>\n\t\t\t\t{ typographyVariations &&\n\t\t\t\t\ttypographyVariations.length &&\n\t\t\t\t\ttypographyVariations.map( ( variation, index ) => (\n\t\t\t\t\t\t<Variation key={ index } variation={ variation }>\n\t\t\t\t\t\t\t{ ( isFocused ) => (\n\t\t\t\t\t\t\t\t<PreviewIframe\n\t\t\t\t\t\t\t\t\tlabel={ variation?.title }\n\t\t\t\t\t\t\t\t\tisFocused={ isFocused }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ ( { ratio, key } ) => (\n\t\t\t\t\t\t\t\t\t\t<HStack\n\t\t\t\t\t\t\t\t\t\t\tkey={ key }\n\t\t\t\t\t\t\t\t\t\t\tspacing={ 10 * ratio }\n\t\t\t\t\t\t\t\t\t\t\tjustify=\"center\"\n\t\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\t\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<TypographyExample\n\t\t\t\t\t\t\t\t\t\t\t\tvariation={ variation }\n\t\t\t\t\t\t\t\t\t\t\t\tfontSize={ 85 * ratio }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</PreviewIframe>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Variation>\n\t\t\t\t\t) ) }\n\t\t\t</Grid>\n\t\t</VStack>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,kBAAkB,IAAIC,IAAI,EAC1BC,oBAAoB,IAAIC,MAAM,EAC9BD,oBAAoB,IAAIE,MAAM,QACxB,uBAAuB;;AAE9B;AACA;AACA;AACA,SAASC,uBAAuB,QAAQ,UAAU;AAClD,OAAOC,iBAAiB,MAAM,uBAAuB;AACrD,OAAOC,aAAa,MAAM,mBAAmB;AAC7C,OAAOC,SAAS,MAAM,aAAa;AACnC,OAAOC,QAAQ,MAAM,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEnC,eAAe,SAASC,oBAAoBA,CAAE;EAAEC,KAAK;EAAEC,GAAG,GAAG;AAAE,CAAC,EAAG;EAClE,MAAMC,oBAAoB,GAAGZ,uBAAuB,CAAC,CAAC;;EAEtD;EACA,IAAKY,oBAAoB,EAAEC,MAAM,IAAI,CAAC,EAAG;IACxC,OAAO,IAAI;EACZ;EAEA,oBACCL,KAAA,CAACT,MAAM;IAACe,OAAO,EAAG,CAAG;IAAAC,QAAA,GAClBL,KAAK,iBAAIJ,IAAA,CAACF,QAAQ;MAACY,KAAK,EAAG,CAAG;MAAAD,QAAA,EAAGL;IAAK,CAAY,CAAC,eACrDJ,IAAA,CAACV,IAAI;MACJqB,OAAO,EAAG,CAAG;MACbN,GAAG,EAAGA,GAAK;MACXO,SAAS,EAAC,oDAAoD;MAAAH,QAAA,EAE5DH,oBAAoB,IACrBA,oBAAoB,CAACC,MAAM,IAC3BD,oBAAoB,CAACO,GAAG,CAAE,CAAEC,SAAS,EAAEC,KAAK,kBAC3Cf,IAAA,CAACH,SAAS;QAAeiB,SAAS,EAAGA,SAAW;QAAAL,QAAA,EAC3CO,SAAS,iBACZhB,IAAA,CAACJ,aAAa;UACbqB,KAAK,EAAGH,SAAS,EAAEV,KAAO;UAC1BY,SAAS,EAAGA,SAAW;UAAAP,QAAA,EAErBA,CAAE;YAAES,KAAK;YAAEC;UAAI,CAAC,kBACjBnB,IAAA,CAACR,MAAM;YAENgB,OAAO,EAAG,EAAE,GAAGU,KAAO;YACtBE,OAAO,EAAC,QAAQ;YAChBC,KAAK,EAAG;cACPC,MAAM,EAAE,MAAM;cACdC,QAAQ,EAAE;YACX,CAAG;YAAAd,QAAA,eAEHT,IAAA,CAACL,iBAAiB;cACjBmB,SAAS,EAAGA,SAAW;cACvBU,QAAQ,EAAG,EAAE,GAAGN;YAAO,CACvB;UAAC,GAXIC,GAYC;QACR,CACa;MACf,GAvBeJ,KAwBN,CACV;IAAC,CACC,CAAC;EAAA,CACA,CAAC;AAEX","ignoreList":[]}
1
+ {"version":3,"names":["__experimentalGrid","Grid","__experimentalVStack","HStack","VStack","useTypographyVariations","TypographyExample","PreviewIframe","Variation","Subtitle","jsx","_jsx","jsxs","_jsxs","TypographyVariations","title","gap","typographyVariations","length","spacing","children","level","columns","className","map","variation","index","property","isFocused","label","ratio","key","justify","style","height","overflow","fontSize"],"sources":["@wordpress/edit-site/src/components/global-styles/variations/variations-typography.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalGrid as Grid,\n\t__experimentalVStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { useTypographyVariations } from '../hooks';\nimport TypographyExample from '../typography-example';\nimport PreviewIframe from '../preview-iframe';\nimport Variation from './variation';\nimport Subtitle from '../subtitle';\n\nexport default function TypographyVariations( { title, gap = 2 } ) {\n\tconst typographyVariations = useTypographyVariations();\n\n\t// Return null if there is only one variation (the default).\n\tif ( typographyVariations?.length <= 1 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<VStack spacing={ 3 }>\n\t\t\t{ title && <Subtitle level={ 3 }>{ title }</Subtitle> }\n\t\t\t<Grid\n\t\t\t\tcolumns={ 3 }\n\t\t\t\tgap={ gap }\n\t\t\t\tclassName=\"edit-site-global-styles-style-variations-container\"\n\t\t\t>\n\t\t\t\t{ typographyVariations &&\n\t\t\t\t\ttypographyVariations.length &&\n\t\t\t\t\ttypographyVariations.map( ( variation, index ) => (\n\t\t\t\t\t\t<Variation\n\t\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\t\tvariation={ variation }\n\t\t\t\t\t\t\tproperty=\"typography\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ ( isFocused ) => (\n\t\t\t\t\t\t\t\t<PreviewIframe\n\t\t\t\t\t\t\t\t\tlabel={ variation?.title }\n\t\t\t\t\t\t\t\t\tisFocused={ isFocused }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ ( { ratio, key } ) => (\n\t\t\t\t\t\t\t\t\t\t<HStack\n\t\t\t\t\t\t\t\t\t\t\tkey={ key }\n\t\t\t\t\t\t\t\t\t\t\tspacing={ 10 * ratio }\n\t\t\t\t\t\t\t\t\t\t\tjustify=\"center\"\n\t\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\t\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<TypographyExample\n\t\t\t\t\t\t\t\t\t\t\t\tvariation={ variation }\n\t\t\t\t\t\t\t\t\t\t\t\tfontSize={ 85 * ratio }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</PreviewIframe>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Variation>\n\t\t\t\t\t) ) }\n\t\t\t</Grid>\n\t\t</VStack>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,kBAAkB,IAAIC,IAAI,EAC1BC,oBAAoB,IAAIC,MAAM,EAC9BD,oBAAoB,IAAIE,MAAM,QACxB,uBAAuB;;AAE9B;AACA;AACA;AACA,SAASC,uBAAuB,QAAQ,UAAU;AAClD,OAAOC,iBAAiB,MAAM,uBAAuB;AACrD,OAAOC,aAAa,MAAM,mBAAmB;AAC7C,OAAOC,SAAS,MAAM,aAAa;AACnC,OAAOC,QAAQ,MAAM,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEnC,eAAe,SAASC,oBAAoBA,CAAE;EAAEC,KAAK;EAAEC,GAAG,GAAG;AAAE,CAAC,EAAG;EAClE,MAAMC,oBAAoB,GAAGZ,uBAAuB,CAAC,CAAC;;EAEtD;EACA,IAAKY,oBAAoB,EAAEC,MAAM,IAAI,CAAC,EAAG;IACxC,OAAO,IAAI;EACZ;EAEA,oBACCL,KAAA,CAACT,MAAM;IAACe,OAAO,EAAG,CAAG;IAAAC,QAAA,GAClBL,KAAK,iBAAIJ,IAAA,CAACF,QAAQ;MAACY,KAAK,EAAG,CAAG;MAAAD,QAAA,EAAGL;IAAK,CAAY,CAAC,eACrDJ,IAAA,CAACV,IAAI;MACJqB,OAAO,EAAG,CAAG;MACbN,GAAG,EAAGA,GAAK;MACXO,SAAS,EAAC,oDAAoD;MAAAH,QAAA,EAE5DH,oBAAoB,IACrBA,oBAAoB,CAACC,MAAM,IAC3BD,oBAAoB,CAACO,GAAG,CAAE,CAAEC,SAAS,EAAEC,KAAK,kBAC3Cf,IAAA,CAACH,SAAS;QAETiB,SAAS,EAAGA,SAAW;QACvBE,QAAQ,EAAC,YAAY;QAAAP,QAAA,EAEjBQ,SAAS,iBACZjB,IAAA,CAACJ,aAAa;UACbsB,KAAK,EAAGJ,SAAS,EAAEV,KAAO;UAC1Ba,SAAS,EAAGA,SAAW;UAAAR,QAAA,EAErBA,CAAE;YAAEU,KAAK;YAAEC;UAAI,CAAC,kBACjBpB,IAAA,CAACR,MAAM;YAENgB,OAAO,EAAG,EAAE,GAAGW,KAAO;YACtBE,OAAO,EAAC,QAAQ;YAChBC,KAAK,EAAG;cACPC,MAAM,EAAE,MAAM;cACdC,QAAQ,EAAE;YACX,CAAG;YAAAf,QAAA,eAEHT,IAAA,CAACL,iBAAiB;cACjBmB,SAAS,EAAGA,SAAW;cACvBW,QAAQ,EAAG,EAAE,GAAGN;YAAO,CACvB;UAAC,GAXIC,GAYC;QACR,CACa;MACf,GA1BKL,KA2BI,CACV;IAAC,CACC,CAAC;EAAA,CACA,CAAC;AAEX","ignoreList":[]}