@wordpress/block-library 9.30.1-next.a730c9c8c.0 → 9.31.1-next.f56bd8138.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/accordion/edit.js +6 -5
  3. package/build/accordion/edit.js.map +1 -1
  4. package/build/accordion/index.js +40 -4
  5. package/build/accordion/index.js.map +1 -1
  6. package/build/accordion/save.js +2 -19
  7. package/build/accordion/save.js.map +1 -1
  8. package/build/accordion/view.js +50 -16
  9. package/build/accordion/view.js.map +1 -1
  10. package/build/accordion-content/index.js +15 -2
  11. package/build/accordion-content/index.js.map +1 -1
  12. package/build/accordion-header/edit.js +15 -39
  13. package/build/accordion-header/edit.js.map +1 -1
  14. package/build/accordion-header/index.js +6 -6
  15. package/build/accordion-header/index.js.map +1 -1
  16. package/build/accordion-header/save.js +15 -37
  17. package/build/accordion-header/save.js.map +1 -1
  18. package/build/accordion-panel/index.js +1 -2
  19. package/build/accordion-panel/index.js.map +1 -1
  20. package/build/avatar/hooks.js +7 -17
  21. package/build/avatar/hooks.js.map +1 -1
  22. package/build/navigation/index.js +2 -1
  23. package/build/navigation/index.js.map +1 -1
  24. package/build/navigation-link/index.js +2 -1
  25. package/build/navigation-link/index.js.map +1 -1
  26. package/build/navigation-submenu/index.js +2 -1
  27. package/build/navigation-submenu/index.js.map +1 -1
  28. package/build/page-list/index.js +2 -1
  29. package/build/page-list/index.js.map +1 -1
  30. package/build/post-author/edit.js +7 -6
  31. package/build/post-author/edit.js.map +1 -1
  32. package/build/post-time-to-read/edit.js +50 -7
  33. package/build/post-time-to-read/edit.js.map +1 -1
  34. package/build/post-time-to-read/index.js +8 -0
  35. package/build/post-time-to-read/index.js.map +1 -1
  36. package/build/term-description/edit.js +18 -2
  37. package/build/term-description/edit.js.map +1 -1
  38. package/build/term-description/index.js +1 -0
  39. package/build/term-description/index.js.map +1 -1
  40. package/build/term-description/use-term-description.js +85 -0
  41. package/build/term-description/use-term-description.js.map +1 -0
  42. package/build/term-template/edit.js +11 -7
  43. package/build/term-template/edit.js.map +1 -1
  44. package/build/term-template/index.js +1 -1
  45. package/build/terms-query/index.js +8 -2
  46. package/build/terms-query/index.js.map +1 -1
  47. package/build/terms-query/inspector-controls/advanced-controls.js +51 -0
  48. package/build/terms-query/inspector-controls/advanced-controls.js.map +1 -0
  49. package/build/terms-query/inspector-controls/display-options.js +87 -0
  50. package/build/terms-query/inspector-controls/display-options.js.map +1 -0
  51. package/build/terms-query/inspector-controls/empty-terms-control.js +38 -0
  52. package/build/terms-query/inspector-controls/empty-terms-control.js.map +1 -0
  53. package/build/terms-query/inspector-controls/hierarchy-control.js +40 -0
  54. package/build/terms-query/inspector-controls/hierarchy-control.js.map +1 -0
  55. package/build/terms-query/inspector-controls/index.js +127 -0
  56. package/build/terms-query/inspector-controls/index.js.map +1 -0
  57. package/build/terms-query/inspector-controls/max-terms-control.js +50 -0
  58. package/build/terms-query/inspector-controls/max-terms-control.js.map +1 -0
  59. package/build/terms-query/inspector-controls/ordering-controls.js +57 -0
  60. package/build/terms-query/inspector-controls/ordering-controls.js.map +1 -0
  61. package/build/terms-query/inspector-controls/taxonomy-control.js +52 -0
  62. package/build/terms-query/inspector-controls/taxonomy-control.js.map +1 -0
  63. package/build/utils/hooks.js +15 -0
  64. package/build/utils/hooks.js.map +1 -1
  65. package/build-module/accordion/edit.js +6 -5
  66. package/build-module/accordion/edit.js.map +1 -1
  67. package/build-module/accordion/index.js +41 -4
  68. package/build-module/accordion/index.js.map +1 -1
  69. package/build-module/accordion/save.js +2 -17
  70. package/build-module/accordion/save.js.map +1 -1
  71. package/build-module/accordion/view.js +51 -17
  72. package/build-module/accordion/view.js.map +1 -1
  73. package/build-module/accordion-content/index.js +15 -2
  74. package/build-module/accordion-content/index.js.map +1 -1
  75. package/build-module/accordion-header/edit.js +16 -39
  76. package/build-module/accordion-header/edit.js.map +1 -1
  77. package/build-module/accordion-header/index.js +6 -6
  78. package/build-module/accordion-header/index.js.map +1 -1
  79. package/build-module/accordion-header/save.js +16 -37
  80. package/build-module/accordion-header/save.js.map +1 -1
  81. package/build-module/accordion-panel/index.js +1 -2
  82. package/build-module/accordion-panel/index.js.map +1 -1
  83. package/build-module/avatar/hooks.js +5 -15
  84. package/build-module/avatar/hooks.js.map +1 -1
  85. package/build-module/navigation/index.js +2 -1
  86. package/build-module/navigation/index.js.map +1 -1
  87. package/build-module/navigation-link/index.js +2 -1
  88. package/build-module/navigation-link/index.js.map +1 -1
  89. package/build-module/navigation-submenu/index.js +2 -1
  90. package/build-module/navigation-submenu/index.js.map +1 -1
  91. package/build-module/page-list/index.js +2 -1
  92. package/build-module/page-list/index.js.map +1 -1
  93. package/build-module/post-author/edit.js +8 -7
  94. package/build-module/post-author/edit.js.map +1 -1
  95. package/build-module/post-time-to-read/edit.js +50 -9
  96. package/build-module/post-time-to-read/edit.js.map +1 -1
  97. package/build-module/post-time-to-read/index.js +8 -0
  98. package/build-module/post-time-to-read/index.js.map +1 -1
  99. package/build-module/term-description/edit.js +18 -2
  100. package/build-module/term-description/edit.js.map +1 -1
  101. package/build-module/term-description/index.js +1 -0
  102. package/build-module/term-description/index.js.map +1 -1
  103. package/build-module/term-description/use-term-description.js +79 -0
  104. package/build-module/term-description/use-term-description.js.map +1 -0
  105. package/build-module/term-template/edit.js +11 -7
  106. package/build-module/term-template/edit.js.map +1 -1
  107. package/build-module/term-template/index.js +1 -1
  108. package/build-module/terms-query/index.js +8 -2
  109. package/build-module/terms-query/index.js.map +1 -1
  110. package/build-module/terms-query/inspector-controls/advanced-controls.js +44 -0
  111. package/build-module/terms-query/inspector-controls/advanced-controls.js.map +1 -0
  112. package/build-module/terms-query/inspector-controls/display-options.js +80 -0
  113. package/build-module/terms-query/inspector-controls/display-options.js.map +1 -0
  114. package/build-module/terms-query/inspector-controls/empty-terms-control.js +31 -0
  115. package/build-module/terms-query/inspector-controls/empty-terms-control.js.map +1 -0
  116. package/build-module/terms-query/inspector-controls/hierarchy-control.js +33 -0
  117. package/build-module/terms-query/inspector-controls/hierarchy-control.js.map +1 -0
  118. package/build-module/terms-query/inspector-controls/index.js +119 -0
  119. package/build-module/terms-query/inspector-controls/index.js.map +1 -0
  120. package/build-module/terms-query/inspector-controls/max-terms-control.js +43 -0
  121. package/build-module/terms-query/inspector-controls/max-terms-control.js.map +1 -0
  122. package/build-module/terms-query/inspector-controls/ordering-controls.js +50 -0
  123. package/build-module/terms-query/inspector-controls/ordering-controls.js.map +1 -0
  124. package/build-module/terms-query/inspector-controls/taxonomy-control.js +45 -0
  125. package/build-module/terms-query/inspector-controls/taxonomy-control.js.map +1 -0
  126. package/build-module/utils/hooks.js +14 -0
  127. package/build-module/utils/hooks.js.map +1 -1
  128. package/build-style/accordion/style-rtl.css +15 -8
  129. package/build-style/accordion/style.css +15 -8
  130. package/build-style/style-rtl.css +15 -8
  131. package/build-style/style.css +15 -8
  132. package/package.json +35 -35
  133. package/src/accordion/block.json +17 -3
  134. package/src/accordion/edit.js +39 -34
  135. package/src/accordion/index.js +35 -1
  136. package/src/accordion/index.php +3 -19
  137. package/src/accordion/save.js +2 -16
  138. package/src/accordion/style.scss +16 -8
  139. package/src/accordion/view.js +64 -15
  140. package/src/accordion-content/block.json +15 -2
  141. package/src/accordion-content/index.php +2 -1
  142. package/src/accordion-header/block.json +6 -6
  143. package/src/accordion-header/edit.js +19 -56
  144. package/src/accordion-header/save.js +27 -49
  145. package/src/accordion-panel/block.json +1 -2
  146. package/src/avatar/hooks.js +5 -10
  147. package/src/navigation/block.json +2 -1
  148. package/src/navigation-link/block.json +2 -1
  149. package/src/navigation-submenu/block.json +2 -1
  150. package/src/page-list/block.json +2 -1
  151. package/src/post-author/edit.js +16 -7
  152. package/src/post-time-to-read/block.json +8 -0
  153. package/src/post-time-to-read/edit.js +71 -10
  154. package/src/post-time-to-read/index.php +29 -17
  155. package/src/term-description/block.json +1 -0
  156. package/src/term-description/edit.js +18 -3
  157. package/src/term-description/use-term-description.js +109 -0
  158. package/src/term-template/block.json +1 -1
  159. package/src/term-template/edit.js +11 -6
  160. package/src/term-template/index.php +13 -7
  161. package/src/terms-query/block.json +8 -2
  162. package/src/terms-query/inspector-controls/advanced-controls.js +37 -0
  163. package/src/terms-query/inspector-controls/display-options.js +87 -0
  164. package/src/terms-query/inspector-controls/empty-terms-control.js +30 -0
  165. package/src/terms-query/inspector-controls/hierarchy-control.js +30 -0
  166. package/src/terms-query/inspector-controls/index.js +137 -0
  167. package/src/terms-query/inspector-controls/max-terms-control.js +44 -0
  168. package/src/terms-query/inspector-controls/ordering-controls.js +55 -0
  169. package/src/terms-query/inspector-controls/taxonomy-control.js +41 -0
  170. package/src/utils/hooks.js +9 -0
  171. package/build/accordion-content/icons.js +0 -30
  172. package/build/accordion-content/icons.js.map +0 -1
  173. package/build/terms-query/inspector-controls.js +0 -231
  174. package/build/terms-query/inspector-controls.js.map +0 -1
  175. package/build-module/accordion-content/icons.js +0 -22
  176. package/build-module/accordion-content/icons.js.map +0 -1
  177. package/build-module/terms-query/inspector-controls.js +0 -224
  178. package/build-module/terms-query/inspector-controls.js.map +0 -1
  179. package/src/accordion-content/icons.js +0 -23
  180. package/src/terms-query/inspector-controls.js +0 -239
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__","__experimentalToolsPanelItem","ToolsPanelItem","ToggleControl","jsx","_jsx","HierarchyControl","attributes","setQuery","termQuery","hasValue","hierarchical","label","onDeselect","isShownByDefault","children","__nextHasNoMarginBottom","checked","onChange"],"sources":["@wordpress/block-library/src/terms-query/inspector-controls/hierarchy-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\tToggleControl,\n} from '@wordpress/components';\n\nexport default function HierarchyControl( { attributes, setQuery } ) {\n\tconst { termQuery } = attributes;\n\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\thasValue={ () => termQuery.hierarchical !== false }\n\t\t\tlabel={ __( 'Show hierarchy' ) }\n\t\t\tonDeselect={ () => setQuery( { hierarchical: false } ) }\n\t\t\tisShownByDefault\n\t\t>\n\t\t\t<ToggleControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Show hierarchy' ) }\n\t\t\t\tchecked={ termQuery.hierarchical }\n\t\t\t\tonChange={ ( hierarchical ) => {\n\t\t\t\t\tsetQuery( { hierarchical } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</ToolsPanelItem>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SACCC,4BAA4B,IAAIC,cAAc,EAC9CC,aAAa,QACP,uBAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE/B,eAAe,SAASC,gBAAgBA,CAAE;EAAEC,UAAU;EAAEC;AAAS,CAAC,EAAG;EACpE,MAAM;IAAEC;EAAU,CAAC,GAAGF,UAAU;EAEhC,oBACCF,IAAA,CAACH,cAAc;IACdQ,QAAQ,EAAGA,CAAA,KAAMD,SAAS,CAACE,YAAY,KAAK,KAAO;IACnDC,KAAK,EAAGZ,EAAE,CAAE,gBAAiB,CAAG;IAChCa,UAAU,EAAGA,CAAA,KAAML,QAAQ,CAAE;MAAEG,YAAY,EAAE;IAAM,CAAE,CAAG;IACxDG,gBAAgB;IAAAC,QAAA,eAEhBV,IAAA,CAACF,aAAa;MACba,uBAAuB;MACvBJ,KAAK,EAAGZ,EAAE,CAAE,gBAAiB,CAAG;MAChCiB,OAAO,EAAGR,SAAS,CAACE,YAAc;MAClCO,QAAQ,EAAKP,YAAY,IAAM;QAC9BH,QAAQ,CAAE;UAAEG;QAAa,CAAE,CAAC;MAC7B;IAAG,CACH;EAAC,CACa,CAAC;AAEnB","ignoreList":[]}
@@ -0,0 +1,119 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { __ } from '@wordpress/i18n';
5
+ import { __experimentalToolsPanel as ToolsPanel } from '@wordpress/components';
6
+ import { InspectorControls } from '@wordpress/block-editor';
7
+ import { store as coreStore } from '@wordpress/core-data';
8
+ import { useSelect } from '@wordpress/data';
9
+ import { useMemo } from '@wordpress/element';
10
+
11
+ /**
12
+ * Internal dependencies
13
+ */
14
+ import { useToolsPanelDropdownMenuProps } from '../../utils/hooks';
15
+ import TaxonomyControl from './taxonomy-control';
16
+ import OrderingControls from './ordering-controls';
17
+ import DisplayOptions from './display-options';
18
+ import HierarchyControl from './hierarchy-control';
19
+ import EmptyTermsControl from './empty-terms-control';
20
+ import MaxTermsControl from './max-terms-control';
21
+ import AdvancedControls from './advanced-controls';
22
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
23
+ const usePublicTaxonomies = () => {
24
+ const taxonomies = useSelect(select => select(coreStore).getTaxonomies({
25
+ per_page: -1
26
+ }), []);
27
+ return useMemo(() => {
28
+ return taxonomies?.filter(({
29
+ visibility
30
+ }) => visibility?.publicly_queryable) || [];
31
+ }, [taxonomies]);
32
+ };
33
+ export default function TermsQueryInspectorControls({
34
+ attributes,
35
+ setQuery,
36
+ setAttributes,
37
+ TagName,
38
+ clientId
39
+ }) {
40
+ const {
41
+ termQuery,
42
+ termsToShow
43
+ } = attributes;
44
+ const dropdownMenuProps = useToolsPanelDropdownMenuProps();
45
+ const taxonomies = usePublicTaxonomies();
46
+ const {
47
+ templateSlug
48
+ } = useSelect(select => {
49
+ // @wordpress/block-library should not depend on @wordpress/editor.
50
+ // Blocks can be loaded into a *non-post* block editor, so to avoid
51
+ // declaring @wordpress/editor as a dependency, we must access its
52
+ // store by string.
53
+ // The solution here is to split WP specific blocks from generic blocks.
54
+ // eslint-disable-next-line @wordpress/data-no-store-string-literals
55
+ const {
56
+ getEditedPostSlug
57
+ } = select('core/editor');
58
+ return {
59
+ templateSlug: getEditedPostSlug()
60
+ };
61
+ }, []);
62
+ const taxonomyOptions = taxonomies.map(taxonomy => ({
63
+ label: taxonomy.name,
64
+ value: taxonomy.slug
65
+ }));
66
+ const isTaxonomyHierarchical = taxonomies.find(taxonomy => taxonomy.slug === termQuery.taxonomy)?.hierarchical;
67
+ const isTaxonomyMatchingTemplate = typeof templateSlug === 'string' && templateSlug.includes(termQuery.taxonomy);
68
+ const displaySubtermsControl = isTaxonomyHierarchical && isTaxonomyMatchingTemplate;
69
+ return /*#__PURE__*/_jsxs(_Fragment, {
70
+ children: [/*#__PURE__*/_jsx(InspectorControls, {
71
+ children: /*#__PURE__*/_jsxs(ToolsPanel, {
72
+ label: __('Terms Query Settings'),
73
+ resetAll: () => {
74
+ setAttributes({
75
+ termQuery: {
76
+ taxonomy: 'category',
77
+ order: 'asc',
78
+ orderBy: 'name',
79
+ hideEmpty: true,
80
+ hierarchical: false,
81
+ parent: false,
82
+ perPage: 10
83
+ },
84
+ termsToShow: 'all'
85
+ });
86
+ },
87
+ dropdownMenuProps: dropdownMenuProps,
88
+ children: [/*#__PURE__*/_jsx(TaxonomyControl, {
89
+ attributes: attributes,
90
+ setQuery: setQuery,
91
+ setAttributes: setAttributes,
92
+ taxonomyOptions: taxonomyOptions
93
+ }), /*#__PURE__*/_jsx(OrderingControls, {
94
+ attributes: attributes,
95
+ setQuery: setQuery
96
+ }), /*#__PURE__*/_jsx(EmptyTermsControl, {
97
+ attributes: attributes,
98
+ setQuery: setQuery
99
+ }), /*#__PURE__*/_jsx(DisplayOptions, {
100
+ attributes: attributes,
101
+ setAttributes: setAttributes,
102
+ displayTopLevelControl: isTaxonomyHierarchical,
103
+ displaySubtermsControl: displaySubtermsControl
104
+ }), /*#__PURE__*/_jsx(MaxTermsControl, {
105
+ attributes: attributes,
106
+ setQuery: setQuery
107
+ }), isTaxonomyHierarchical && termsToShow === 'all' && /*#__PURE__*/_jsx(HierarchyControl, {
108
+ attributes: attributes,
109
+ setQuery: setQuery
110
+ })]
111
+ })
112
+ }), /*#__PURE__*/_jsx(AdvancedControls, {
113
+ TagName: TagName,
114
+ setAttributes: setAttributes,
115
+ clientId: clientId
116
+ })]
117
+ });
118
+ }
119
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__","__experimentalToolsPanel","ToolsPanel","InspectorControls","store","coreStore","useSelect","useMemo","useToolsPanelDropdownMenuProps","TaxonomyControl","OrderingControls","DisplayOptions","HierarchyControl","EmptyTermsControl","MaxTermsControl","AdvancedControls","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","usePublicTaxonomies","taxonomies","select","getTaxonomies","per_page","filter","visibility","publicly_queryable","TermsQueryInspectorControls","attributes","setQuery","setAttributes","TagName","clientId","termQuery","termsToShow","dropdownMenuProps","templateSlug","getEditedPostSlug","taxonomyOptions","map","taxonomy","label","name","value","slug","isTaxonomyHierarchical","find","hierarchical","isTaxonomyMatchingTemplate","includes","displaySubtermsControl","children","resetAll","order","orderBy","hideEmpty","parent","perPage","displayTopLevelControl"],"sources":["@wordpress/block-library/src/terms-query/inspector-controls/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalToolsPanel as ToolsPanel } from '@wordpress/components';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../../utils/hooks';\nimport TaxonomyControl from './taxonomy-control';\nimport OrderingControls from './ordering-controls';\nimport DisplayOptions from './display-options';\nimport HierarchyControl from './hierarchy-control';\nimport EmptyTermsControl from './empty-terms-control';\nimport MaxTermsControl from './max-terms-control';\nimport AdvancedControls from './advanced-controls';\n\nconst usePublicTaxonomies = () => {\n\tconst taxonomies = useSelect(\n\t\t( select ) => select( coreStore ).getTaxonomies( { per_page: -1 } ),\n\t\t[]\n\t);\n\treturn useMemo( () => {\n\t\treturn (\n\t\t\ttaxonomies?.filter(\n\t\t\t\t( { visibility } ) => visibility?.publicly_queryable\n\t\t\t) || []\n\t\t);\n\t}, [ taxonomies ] );\n};\n\nexport default function TermsQueryInspectorControls( {\n\tattributes,\n\tsetQuery,\n\tsetAttributes,\n\tTagName,\n\tclientId,\n} ) {\n\tconst { termQuery, termsToShow } = attributes;\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst taxonomies = usePublicTaxonomies();\n\n\tconst { templateSlug } = useSelect( ( select ) => {\n\t\t// @wordpress/block-library should not depend on @wordpress/editor.\n\t\t// Blocks can be loaded into a *non-post* block editor, so to avoid\n\t\t// declaring @wordpress/editor as a dependency, we must access its\n\t\t// store by string.\n\t\t// The solution here is to split WP specific blocks from generic blocks.\n\t\t// eslint-disable-next-line @wordpress/data-no-store-string-literals\n\t\tconst { getEditedPostSlug } = select( 'core/editor' );\n\t\treturn {\n\t\t\ttemplateSlug: getEditedPostSlug(),\n\t\t};\n\t}, [] );\n\n\tconst taxonomyOptions = taxonomies.map( ( taxonomy ) => ( {\n\t\tlabel: taxonomy.name,\n\t\tvalue: taxonomy.slug,\n\t} ) );\n\n\tconst isTaxonomyHierarchical = taxonomies.find(\n\t\t( taxonomy ) => taxonomy.slug === termQuery.taxonomy\n\t)?.hierarchical;\n\n\tconst isTaxonomyMatchingTemplate =\n\t\ttypeof templateSlug === 'string' &&\n\t\ttemplateSlug.includes( termQuery.taxonomy );\n\n\tconst displaySubtermsControl =\n\t\tisTaxonomyHierarchical && isTaxonomyMatchingTemplate;\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Terms Query Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\ttermQuery: {\n\t\t\t\t\t\t\t\ttaxonomy: 'category',\n\t\t\t\t\t\t\t\torder: 'asc',\n\t\t\t\t\t\t\t\torderBy: 'name',\n\t\t\t\t\t\t\t\thideEmpty: true,\n\t\t\t\t\t\t\t\thierarchical: false,\n\t\t\t\t\t\t\t\tparent: false,\n\t\t\t\t\t\t\t\tperPage: 10,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\ttermsToShow: 'all',\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<TaxonomyControl\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetQuery={ setQuery }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\ttaxonomyOptions={ taxonomyOptions }\n\t\t\t\t\t/>\n\t\t\t\t\t<OrderingControls\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetQuery={ setQuery }\n\t\t\t\t\t/>\n\t\t\t\t\t<EmptyTermsControl\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetQuery={ setQuery }\n\t\t\t\t\t/>\n\t\t\t\t\t<DisplayOptions\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tdisplayTopLevelControl={ isTaxonomyHierarchical }\n\t\t\t\t\t\tdisplaySubtermsControl={ displaySubtermsControl }\n\t\t\t\t\t/>\n\t\t\t\t\t<MaxTermsControl\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetQuery={ setQuery }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isTaxonomyHierarchical && termsToShow === 'all' && (\n\t\t\t\t\t\t<HierarchyControl\n\t\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\t\tsetQuery={ setQuery }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<AdvancedControls\n\t\t\t\tTagName={ TagName }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tclientId={ clientId }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,wBAAwB,IAAIC,UAAU,QAAQ,uBAAuB;AAC9E,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,OAAO,QAAQ,oBAAoB;;AAE5C;AACA;AACA;AACA,SAASC,8BAA8B,QAAQ,mBAAmB;AAClE,OAAOC,eAAe,MAAM,oBAAoB;AAChD,OAAOC,gBAAgB,MAAM,qBAAqB;AAClD,OAAOC,cAAc,MAAM,mBAAmB;AAC9C,OAAOC,gBAAgB,MAAM,qBAAqB;AAClD,OAAOC,iBAAiB,MAAM,uBAAuB;AACrD,OAAOC,eAAe,MAAM,qBAAqB;AACjD,OAAOC,gBAAgB,MAAM,qBAAqB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAEnD,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;EACjC,MAAMC,UAAU,GAAGjB,SAAS,CACzBkB,MAAM,IAAMA,MAAM,CAAEnB,SAAU,CAAC,CAACoB,aAAa,CAAE;IAAEC,QAAQ,EAAE,CAAC;EAAE,CAAE,CAAC,EACnE,EACD,CAAC;EACD,OAAOnB,OAAO,CAAE,MAAM;IACrB,OACCgB,UAAU,EAAEI,MAAM,CACjB,CAAE;MAAEC;IAAW,CAAC,KAAMA,UAAU,EAAEC,kBACnC,CAAC,IAAI,EAAE;EAET,CAAC,EAAE,CAAEN,UAAU,CAAG,CAAC;AACpB,CAAC;AAED,eAAe,SAASO,2BAA2BA,CAAE;EACpDC,UAAU;EACVC,QAAQ;EACRC,aAAa;EACbC,OAAO;EACPC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,SAAS;IAAEC;EAAY,CAAC,GAAGN,UAAU;EAC7C,MAAMO,iBAAiB,GAAG9B,8BAA8B,CAAC,CAAC;EAC1D,MAAMe,UAAU,GAAGD,mBAAmB,CAAC,CAAC;EAExC,MAAM;IAAEiB;EAAa,CAAC,GAAGjC,SAAS,CAAIkB,MAAM,IAAM;IACjD;IACA;IACA;IACA;IACA;IACA;IACA,MAAM;MAAEgB;IAAkB,CAAC,GAAGhB,MAAM,CAAE,aAAc,CAAC;IACrD,OAAO;MACNe,YAAY,EAAEC,iBAAiB,CAAC;IACjC,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMC,eAAe,GAAGlB,UAAU,CAACmB,GAAG,CAAIC,QAAQ,KAAQ;IACzDC,KAAK,EAAED,QAAQ,CAACE,IAAI;IACpBC,KAAK,EAAEH,QAAQ,CAACI;EACjB,CAAC,CAAG,CAAC;EAEL,MAAMC,sBAAsB,GAAGzB,UAAU,CAAC0B,IAAI,CAC3CN,QAAQ,IAAMA,QAAQ,CAACI,IAAI,KAAKX,SAAS,CAACO,QAC7C,CAAC,EAAEO,YAAY;EAEf,MAAMC,0BAA0B,GAC/B,OAAOZ,YAAY,KAAK,QAAQ,IAChCA,YAAY,CAACa,QAAQ,CAAEhB,SAAS,CAACO,QAAS,CAAC;EAE5C,MAAMU,sBAAsB,GAC3BL,sBAAsB,IAAIG,0BAA0B;EAErD,oBACChC,KAAA,CAAAE,SAAA;IAAAiC,QAAA,gBACCrC,IAAA,CAACd,iBAAiB;MAAAmD,QAAA,eACjBnC,KAAA,CAACjB,UAAU;QACV0C,KAAK,EAAG5C,EAAE,CAAE,sBAAuB,CAAG;QACtCuD,QAAQ,EAAGA,CAAA,KAAM;UAChBtB,aAAa,CAAE;YACdG,SAAS,EAAE;cACVO,QAAQ,EAAE,UAAU;cACpBa,KAAK,EAAE,KAAK;cACZC,OAAO,EAAE,MAAM;cACfC,SAAS,EAAE,IAAI;cACfR,YAAY,EAAE,KAAK;cACnBS,MAAM,EAAE,KAAK;cACbC,OAAO,EAAE;YACV,CAAC;YACDvB,WAAW,EAAE;UACd,CAAE,CAAC;QACJ,CAAG;QACHC,iBAAiB,EAAGA,iBAAmB;QAAAgB,QAAA,gBAEvCrC,IAAA,CAACR,eAAe;UACfsB,UAAU,EAAGA,UAAY;UACzBC,QAAQ,EAAGA,QAAU;UACrBC,aAAa,EAAGA,aAAe;UAC/BQ,eAAe,EAAGA;QAAiB,CACnC,CAAC,eACFxB,IAAA,CAACP,gBAAgB;UAChBqB,UAAU,EAAGA,UAAY;UACzBC,QAAQ,EAAGA;QAAU,CACrB,CAAC,eACFf,IAAA,CAACJ,iBAAiB;UACjBkB,UAAU,EAAGA,UAAY;UACzBC,QAAQ,EAAGA;QAAU,CACrB,CAAC,eACFf,IAAA,CAACN,cAAc;UACdoB,UAAU,EAAGA,UAAY;UACzBE,aAAa,EAAGA,aAAe;UAC/B4B,sBAAsB,EAAGb,sBAAwB;UACjDK,sBAAsB,EAAGA;QAAwB,CACjD,CAAC,eACFpC,IAAA,CAACH,eAAe;UACfiB,UAAU,EAAGA,UAAY;UACzBC,QAAQ,EAAGA;QAAU,CACrB,CAAC,EACAgB,sBAAsB,IAAIX,WAAW,KAAK,KAAK,iBAChDpB,IAAA,CAACL,gBAAgB;UAChBmB,UAAU,EAAGA,UAAY;UACzBC,QAAQ,EAAGA;QAAU,CACrB,CACD;MAAA,CACU;IAAC,CACK,CAAC,eACpBf,IAAA,CAACF,gBAAgB;MAChBmB,OAAO,EAAGA,OAAS;MACnBD,aAAa,EAAGA,aAAe;MAC/BE,QAAQ,EAAGA;IAAU,CACrB,CAAC;EAAA,CACD,CAAC;AAEL","ignoreList":[]}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { __ } from '@wordpress/i18n';
5
+ import { __experimentalToolsPanelItem as ToolsPanelItem, RangeControl } from '@wordpress/components';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ export default function MaxTermsControl({
8
+ attributes,
9
+ setQuery
10
+ }) {
11
+ const {
12
+ termQuery
13
+ } = attributes;
14
+
15
+ // Only show pagination control when not hierarchical.
16
+ if (termQuery.hierarchical) {
17
+ return null;
18
+ }
19
+ return /*#__PURE__*/_jsx(ToolsPanelItem, {
20
+ hasValue: () => termQuery.perPage !== 10,
21
+ label: __('Max terms'),
22
+ onDeselect: () => setQuery({
23
+ perPage: 10
24
+ }),
25
+ isShownByDefault: true,
26
+ children: /*#__PURE__*/_jsx(RangeControl, {
27
+ __nextHasNoMarginBottom: true,
28
+ __next40pxDefaultSize: true,
29
+ label: __('Max terms'),
30
+ value: termQuery.perPage,
31
+ min: 0,
32
+ max: 100,
33
+ onChange: perPage => {
34
+ // Show all terms (-1) when 0 is selected.
35
+ setQuery({
36
+ perPage: perPage === 0 ? -1 : perPage
37
+ });
38
+ },
39
+ help: __('Limit the number of terms you want to show. To show all terms, use 0 (zero).')
40
+ })
41
+ });
42
+ }
43
+ //# sourceMappingURL=max-terms-control.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__","__experimentalToolsPanelItem","ToolsPanelItem","RangeControl","jsx","_jsx","MaxTermsControl","attributes","setQuery","termQuery","hierarchical","hasValue","perPage","label","onDeselect","isShownByDefault","children","__nextHasNoMarginBottom","__next40pxDefaultSize","value","min","max","onChange","help"],"sources":["@wordpress/block-library/src/terms-query/inspector-controls/max-terms-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\tRangeControl,\n} from '@wordpress/components';\n\nexport default function MaxTermsControl( { attributes, setQuery } ) {\n\tconst { termQuery } = attributes;\n\n\t// Only show pagination control when not hierarchical.\n\tif ( termQuery.hierarchical ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\thasValue={ () => termQuery.perPage !== 10 }\n\t\t\tlabel={ __( 'Max terms' ) }\n\t\t\tonDeselect={ () => setQuery( { perPage: 10 } ) }\n\t\t\tisShownByDefault\n\t\t>\n\t\t\t<RangeControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tlabel={ __( 'Max terms' ) }\n\t\t\t\tvalue={ termQuery.perPage }\n\t\t\t\tmin={ 0 }\n\t\t\t\tmax={ 100 }\n\t\t\t\tonChange={ ( perPage ) => {\n\t\t\t\t\t// Show all terms (-1) when 0 is selected.\n\t\t\t\t\tsetQuery( {\n\t\t\t\t\t\tperPage: perPage === 0 ? -1 : perPage,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\thelp={ __(\n\t\t\t\t\t'Limit the number of terms you want to show. To show all terms, use 0 (zero).'\n\t\t\t\t) }\n\t\t\t/>\n\t\t</ToolsPanelItem>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SACCC,4BAA4B,IAAIC,cAAc,EAC9CC,YAAY,QACN,uBAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE/B,eAAe,SAASC,eAAeA,CAAE;EAAEC,UAAU;EAAEC;AAAS,CAAC,EAAG;EACnE,MAAM;IAAEC;EAAU,CAAC,GAAGF,UAAU;;EAEhC;EACA,IAAKE,SAAS,CAACC,YAAY,EAAG;IAC7B,OAAO,IAAI;EACZ;EAEA,oBACCL,IAAA,CAACH,cAAc;IACdS,QAAQ,EAAGA,CAAA,KAAMF,SAAS,CAACG,OAAO,KAAK,EAAI;IAC3CC,KAAK,EAAGb,EAAE,CAAE,WAAY,CAAG;IAC3Bc,UAAU,EAAGA,CAAA,KAAMN,QAAQ,CAAE;MAAEI,OAAO,EAAE;IAAG,CAAE,CAAG;IAChDG,gBAAgB;IAAAC,QAAA,eAEhBX,IAAA,CAACF,YAAY;MACZc,uBAAuB;MACvBC,qBAAqB;MACrBL,KAAK,EAAGb,EAAE,CAAE,WAAY,CAAG;MAC3BmB,KAAK,EAAGV,SAAS,CAACG,OAAS;MAC3BQ,GAAG,EAAG,CAAG;MACTC,GAAG,EAAG,GAAK;MACXC,QAAQ,EAAKV,OAAO,IAAM;QACzB;QACAJ,QAAQ,CAAE;UACTI,OAAO,EAAEA,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,GAAGA;QAC/B,CAAE,CAAC;MACJ,CAAG;MACHW,IAAI,EAAGvB,EAAE,CACR,8EACD;IAAG,CACH;EAAC,CACa,CAAC;AAEnB","ignoreList":[]}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { __ } from '@wordpress/i18n';
5
+ import { __experimentalToolsPanelItem as ToolsPanelItem, SelectControl } from '@wordpress/components';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ export default function OrderingControls({
8
+ attributes,
9
+ setQuery
10
+ }) {
11
+ const {
12
+ termQuery
13
+ } = attributes;
14
+ return /*#__PURE__*/_jsx(ToolsPanelItem, {
15
+ hasValue: () => termQuery.orderBy !== 'name' || termQuery.order !== 'asc',
16
+ label: __('Order by'),
17
+ onDeselect: () => setQuery({
18
+ orderBy: 'name',
19
+ order: 'asc'
20
+ }),
21
+ isShownByDefault: true,
22
+ children: /*#__PURE__*/_jsx(SelectControl, {
23
+ __nextHasNoMarginBottom: true,
24
+ __next40pxDefaultSize: true,
25
+ label: __('Order by'),
26
+ options: [{
27
+ label: __('Name: A → Z'),
28
+ value: 'name/asc'
29
+ }, {
30
+ label: __('Name: Z → A'),
31
+ value: 'name/desc'
32
+ }, {
33
+ label: __('Count, high to low'),
34
+ value: 'count/desc'
35
+ }, {
36
+ label: __('Count, low to high'),
37
+ value: 'count/asc'
38
+ }],
39
+ value: termQuery.orderBy + '/' + termQuery.order,
40
+ onChange: orderBy => {
41
+ const [newOrderBy, newOrder] = orderBy.split('/');
42
+ setQuery({
43
+ orderBy: newOrderBy,
44
+ order: newOrder
45
+ });
46
+ }
47
+ })
48
+ });
49
+ }
50
+ //# sourceMappingURL=ordering-controls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__","__experimentalToolsPanelItem","ToolsPanelItem","SelectControl","jsx","_jsx","OrderingControls","attributes","setQuery","termQuery","hasValue","orderBy","order","label","onDeselect","isShownByDefault","children","__nextHasNoMarginBottom","__next40pxDefaultSize","options","value","onChange","newOrderBy","newOrder","split"],"sources":["@wordpress/block-library/src/terms-query/inspector-controls/ordering-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\tSelectControl,\n} from '@wordpress/components';\n\nexport default function OrderingControls( { attributes, setQuery } ) {\n\tconst { termQuery } = attributes;\n\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\thasValue={ () =>\n\t\t\t\ttermQuery.orderBy !== 'name' || termQuery.order !== 'asc'\n\t\t\t}\n\t\t\tlabel={ __( 'Order by' ) }\n\t\t\tonDeselect={ () => setQuery( { orderBy: 'name', order: 'asc' } ) }\n\t\t\tisShownByDefault\n\t\t>\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tlabel={ __( 'Order by' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Name: A → Z' ),\n\t\t\t\t\t\tvalue: 'name/asc',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Name: Z → A' ),\n\t\t\t\t\t\tvalue: 'name/desc',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Count, high to low' ),\n\t\t\t\t\t\tvalue: 'count/desc',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Count, low to high' ),\n\t\t\t\t\t\tvalue: 'count/asc',\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t\tvalue={ termQuery.orderBy + '/' + termQuery.order }\n\t\t\t\tonChange={ ( orderBy ) => {\n\t\t\t\t\tconst [ newOrderBy, newOrder ] = orderBy.split( '/' );\n\t\t\t\t\tsetQuery( {\n\t\t\t\t\t\torderBy: newOrderBy,\n\t\t\t\t\t\torder: newOrder,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</ToolsPanelItem>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SACCC,4BAA4B,IAAIC,cAAc,EAC9CC,aAAa,QACP,uBAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE/B,eAAe,SAASC,gBAAgBA,CAAE;EAAEC,UAAU;EAAEC;AAAS,CAAC,EAAG;EACpE,MAAM;IAAEC;EAAU,CAAC,GAAGF,UAAU;EAEhC,oBACCF,IAAA,CAACH,cAAc;IACdQ,QAAQ,EAAGA,CAAA,KACVD,SAAS,CAACE,OAAO,KAAK,MAAM,IAAIF,SAAS,CAACG,KAAK,KAAK,KACpD;IACDC,KAAK,EAAGb,EAAE,CAAE,UAAW,CAAG;IAC1Bc,UAAU,EAAGA,CAAA,KAAMN,QAAQ,CAAE;MAAEG,OAAO,EAAE,MAAM;MAAEC,KAAK,EAAE;IAAM,CAAE,CAAG;IAClEG,gBAAgB;IAAAC,QAAA,eAEhBX,IAAA,CAACF,aAAa;MACbc,uBAAuB;MACvBC,qBAAqB;MACrBL,KAAK,EAAGb,EAAE,CAAE,UAAW,CAAG;MAC1BmB,OAAO,EAAG,CACT;QACCN,KAAK,EAAEb,EAAE,CAAE,aAAc,CAAC;QAC1BoB,KAAK,EAAE;MACR,CAAC,EACD;QACCP,KAAK,EAAEb,EAAE,CAAE,aAAc,CAAC;QAC1BoB,KAAK,EAAE;MACR,CAAC,EACD;QACCP,KAAK,EAAEb,EAAE,CAAE,oBAAqB,CAAC;QACjCoB,KAAK,EAAE;MACR,CAAC,EACD;QACCP,KAAK,EAAEb,EAAE,CAAE,oBAAqB,CAAC;QACjCoB,KAAK,EAAE;MACR,CAAC,CACC;MACHA,KAAK,EAAGX,SAAS,CAACE,OAAO,GAAG,GAAG,GAAGF,SAAS,CAACG,KAAO;MACnDS,QAAQ,EAAKV,OAAO,IAAM;QACzB,MAAM,CAAEW,UAAU,EAAEC,QAAQ,CAAE,GAAGZ,OAAO,CAACa,KAAK,CAAE,GAAI,CAAC;QACrDhB,QAAQ,CAAE;UACTG,OAAO,EAAEW,UAAU;UACnBV,KAAK,EAAEW;QACR,CAAE,CAAC;MACJ;IAAG,CACH;EAAC,CACa,CAAC;AAEnB","ignoreList":[]}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { __ } from '@wordpress/i18n';
5
+ import { __experimentalToolsPanelItem as ToolsPanelItem, SelectControl } from '@wordpress/components';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ export default function TaxonomyControl({
8
+ attributes,
9
+ setQuery,
10
+ setAttributes,
11
+ taxonomyOptions
12
+ }) {
13
+ const {
14
+ termQuery
15
+ } = attributes;
16
+ return /*#__PURE__*/_jsx(ToolsPanelItem, {
17
+ hasValue: () => termQuery.taxonomy !== 'category',
18
+ label: __('Taxonomy'),
19
+ onDeselect: () => {
20
+ setQuery({
21
+ taxonomy: 'category'
22
+ });
23
+ setAttributes({
24
+ termsToShow: 'all'
25
+ });
26
+ },
27
+ isShownByDefault: true,
28
+ children: /*#__PURE__*/_jsx(SelectControl, {
29
+ __nextHasNoMarginBottom: true,
30
+ __next40pxDefaultSize: true,
31
+ label: __('Taxonomy'),
32
+ options: taxonomyOptions,
33
+ value: termQuery.taxonomy,
34
+ onChange: selectedTaxonomy => {
35
+ setQuery({
36
+ taxonomy: selectedTaxonomy
37
+ });
38
+ setAttributes({
39
+ termsToShow: 'all'
40
+ });
41
+ }
42
+ })
43
+ });
44
+ }
45
+ //# sourceMappingURL=taxonomy-control.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__","__experimentalToolsPanelItem","ToolsPanelItem","SelectControl","jsx","_jsx","TaxonomyControl","attributes","setQuery","setAttributes","taxonomyOptions","termQuery","hasValue","taxonomy","label","onDeselect","termsToShow","isShownByDefault","children","__nextHasNoMarginBottom","__next40pxDefaultSize","options","value","onChange","selectedTaxonomy"],"sources":["@wordpress/block-library/src/terms-query/inspector-controls/taxonomy-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\tSelectControl,\n} from '@wordpress/components';\n\nexport default function TaxonomyControl( {\n\tattributes,\n\tsetQuery,\n\tsetAttributes,\n\ttaxonomyOptions,\n} ) {\n\tconst { termQuery } = attributes;\n\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\thasValue={ () => termQuery.taxonomy !== 'category' }\n\t\t\tlabel={ __( 'Taxonomy' ) }\n\t\t\tonDeselect={ () => {\n\t\t\t\tsetQuery( { taxonomy: 'category' } );\n\t\t\t\tsetAttributes( { termsToShow: 'all' } );\n\t\t\t} }\n\t\t\tisShownByDefault\n\t\t>\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tlabel={ __( 'Taxonomy' ) }\n\t\t\t\toptions={ taxonomyOptions }\n\t\t\t\tvalue={ termQuery.taxonomy }\n\t\t\t\tonChange={ ( selectedTaxonomy ) => {\n\t\t\t\t\tsetQuery( { taxonomy: selectedTaxonomy } );\n\t\t\t\t\tsetAttributes( { termsToShow: 'all' } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</ToolsPanelItem>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SACCC,4BAA4B,IAAIC,cAAc,EAC9CC,aAAa,QACP,uBAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE/B,eAAe,SAASC,eAAeA,CAAE;EACxCC,UAAU;EACVC,QAAQ;EACRC,aAAa;EACbC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC;EAAU,CAAC,GAAGJ,UAAU;EAEhC,oBACCF,IAAA,CAACH,cAAc;IACdU,QAAQ,EAAGA,CAAA,KAAMD,SAAS,CAACE,QAAQ,KAAK,UAAY;IACpDC,KAAK,EAAGd,EAAE,CAAE,UAAW,CAAG;IAC1Be,UAAU,EAAGA,CAAA,KAAM;MAClBP,QAAQ,CAAE;QAAEK,QAAQ,EAAE;MAAW,CAAE,CAAC;MACpCJ,aAAa,CAAE;QAAEO,WAAW,EAAE;MAAM,CAAE,CAAC;IACxC,CAAG;IACHC,gBAAgB;IAAAC,QAAA,eAEhBb,IAAA,CAACF,aAAa;MACbgB,uBAAuB;MACvBC,qBAAqB;MACrBN,KAAK,EAAGd,EAAE,CAAE,UAAW,CAAG;MAC1BqB,OAAO,EAAGX,eAAiB;MAC3BY,KAAK,EAAGX,SAAS,CAACE,QAAU;MAC5BU,QAAQ,EAAKC,gBAAgB,IAAM;QAClChB,QAAQ,CAAE;UAAEK,QAAQ,EAAEW;QAAiB,CAAE,CAAC;QAC1Cf,aAAa,CAAE;UAAEO,WAAW,EAAE;QAAM,CAAE,CAAC;MACxC;IAAG,CACH;EAAC,CACa,CAAC;AAEnB","ignoreList":[]}
@@ -86,6 +86,20 @@ export function useUploadMediaFromBlobURL(args = {}) {
86
86
  });
87
87
  }, [getSettings]);
88
88
  }
89
+ export function useDefaultAvatar() {
90
+ const {
91
+ avatarURL: defaultAvatarUrl
92
+ } = useSelect(select => {
93
+ const {
94
+ getSettings
95
+ } = select(blockEditorStore);
96
+ const {
97
+ __experimentalDiscussionSettings
98
+ } = getSettings();
99
+ return __experimentalDiscussionSettings;
100
+ });
101
+ return defaultAvatarUrl;
102
+ }
89
103
  export function useToolsPanelDropdownMenuProps() {
90
104
  const isMobile = useViewportMatch('medium', '<');
91
105
  return !isMobile ? {
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","useLayoutEffect","useEffect","useRef","getBlobByURL","isBlobURL","revokeBlobURL","store","blockEditorStore","coreStore","useViewportMatch","useCanEditEntity","kind","name","recordId","select","canUser","id","useUploadMediaFromBlobURL","args","latestArgsRef","hasUploadStartedRef","getSettings","current","url","file","allowedTypes","onChange","onError","mediaUpload","filesList","onFileChange","media","message","useToolsPanelDropdownMenuProps","isMobile","popoverProps","placement","offset"],"sources":["@wordpress/block-library/src/utils/hooks.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useLayoutEffect, useEffect, useRef } from '@wordpress/element';\nimport { getBlobByURL, isBlobURL, revokeBlobURL } from '@wordpress/blob';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Returns whether the current user can edit the given entity.\n *\n * @param {string} kind Entity kind.\n * @param {string} name Entity name.\n * @param {string} recordId Record's id.\n */\nexport function useCanEditEntity( kind, name, recordId ) {\n\treturn useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).canUser( 'update', {\n\t\t\t\tkind,\n\t\t\t\tname,\n\t\t\t\tid: recordId,\n\t\t\t} ),\n\t\t[ kind, name, recordId ]\n\t);\n}\n\n/**\n * Handles uploading a media file from a blob URL on mount.\n *\n * @param {Object} args Upload media arguments.\n * @param {string} args.url Blob URL.\n * @param {?Array} args.allowedTypes Array of allowed media types.\n * @param {Function} args.onChange Function called when the media is uploaded.\n * @param {Function} args.onError Function called when an error happens.\n */\nexport function useUploadMediaFromBlobURL( args = {} ) {\n\tconst latestArgsRef = useRef( args );\n\tconst hasUploadStartedRef = useRef( false );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\n\tuseLayoutEffect( () => {\n\t\tlatestArgsRef.current = args;\n\t} );\n\n\tuseEffect( () => {\n\t\t// Uploading is a special effect that can't be canceled via the cleanup method.\n\t\t// The extra check avoids duplicate uploads in development mode (React.StrictMode).\n\t\tif ( hasUploadStartedRef.current ) {\n\t\t\treturn;\n\t\t}\n\t\tif (\n\t\t\t! latestArgsRef.current.url ||\n\t\t\t! isBlobURL( latestArgsRef.current.url )\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst file = getBlobByURL( latestArgsRef.current.url );\n\t\tif ( ! file ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { url, allowedTypes, onChange, onError } = latestArgsRef.current;\n\t\tconst { mediaUpload } = getSettings();\n\n\t\tif ( ! mediaUpload ) {\n\t\t\treturn;\n\t\t}\n\n\t\thasUploadStartedRef.current = true;\n\n\t\tmediaUpload( {\n\t\t\tfilesList: [ file ],\n\t\t\tallowedTypes,\n\t\t\tonFileChange: ( [ media ] ) => {\n\t\t\t\tif ( isBlobURL( media?.url ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\trevokeBlobURL( url );\n\t\t\t\tonChange( media );\n\t\t\t\thasUploadStartedRef.current = false;\n\t\t\t},\n\t\t\tonError: ( message ) => {\n\t\t\t\trevokeBlobURL( url );\n\t\t\t\tonError( message );\n\t\t\t\thasUploadStartedRef.current = false;\n\t\t\t},\n\t\t} );\n\t}, [ getSettings ] );\n}\n\nexport function useToolsPanelDropdownMenuProps() {\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\treturn ! isMobile\n\t\t? {\n\t\t\t\tpopoverProps: {\n\t\t\t\t\tplacement: 'left-start',\n\t\t\t\t\t// For non-mobile, inner sidebar width (248px) - button width (24px) - border (1px) + padding (16px) + spacing (20px)\n\t\t\t\t\toffset: 259,\n\t\t\t\t},\n\t\t }\n\t\t: {};\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,eAAe,EAAEC,SAAS,EAAEC,MAAM,QAAQ,oBAAoB;AACvE,SAASC,YAAY,EAAEC,SAAS,EAAEC,aAAa,QAAQ,iBAAiB;AACxE,SAASC,KAAK,IAAIC,gBAAgB,QAAQ,yBAAyB;AACnE,SAASD,KAAK,IAAIE,SAAS,QAAQ,sBAAsB;AACzD,SAASC,gBAAgB,QAAQ,oBAAoB;;AAErD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,gBAAgBA,CAAEC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAG;EACxD,OAAOd,SAAS,CACbe,MAAM,IACPA,MAAM,CAAEN,SAAU,CAAC,CAACO,OAAO,CAAE,QAAQ,EAAE;IACtCJ,IAAI;IACJC,IAAI;IACJI,EAAE,EAAEH;EACL,CAAE,CAAC,EACJ,CAAEF,IAAI,EAAEC,IAAI,EAAEC,QAAQ,CACvB,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASI,yBAAyBA,CAAEC,IAAI,GAAG,CAAC,CAAC,EAAG;EACtD,MAAMC,aAAa,GAAGjB,MAAM,CAAEgB,IAAK,CAAC;EACpC,MAAME,mBAAmB,GAAGlB,MAAM,CAAE,KAAM,CAAC;EAC3C,MAAM;IAAEmB;EAAY,CAAC,GAAGtB,SAAS,CAAEQ,gBAAiB,CAAC;EAErDP,eAAe,CAAE,MAAM;IACtBmB,aAAa,CAACG,OAAO,GAAGJ,IAAI;EAC7B,CAAE,CAAC;EAEHjB,SAAS,CAAE,MAAM;IAChB;IACA;IACA,IAAKmB,mBAAmB,CAACE,OAAO,EAAG;MAClC;IACD;IACA,IACC,CAAEH,aAAa,CAACG,OAAO,CAACC,GAAG,IAC3B,CAAEnB,SAAS,CAAEe,aAAa,CAACG,OAAO,CAACC,GAAI,CAAC,EACvC;MACD;IACD;IAEA,MAAMC,IAAI,GAAGrB,YAAY,CAAEgB,aAAa,CAACG,OAAO,CAACC,GAAI,CAAC;IACtD,IAAK,CAAEC,IAAI,EAAG;MACb;IACD;IAEA,MAAM;MAAED,GAAG;MAAEE,YAAY;MAAEC,QAAQ;MAAEC;IAAQ,CAAC,GAAGR,aAAa,CAACG,OAAO;IACtE,MAAM;MAAEM;IAAY,CAAC,GAAGP,WAAW,CAAC,CAAC;IAErC,IAAK,CAAEO,WAAW,EAAG;MACpB;IACD;IAEAR,mBAAmB,CAACE,OAAO,GAAG,IAAI;IAElCM,WAAW,CAAE;MACZC,SAAS,EAAE,CAAEL,IAAI,CAAE;MACnBC,YAAY;MACZK,YAAY,EAAEA,CAAE,CAAEC,KAAK,CAAE,KAAM;QAC9B,IAAK3B,SAAS,CAAE2B,KAAK,EAAER,GAAI,CAAC,EAAG;UAC9B;QACD;QAEAlB,aAAa,CAAEkB,GAAI,CAAC;QACpBG,QAAQ,CAAEK,KAAM,CAAC;QACjBX,mBAAmB,CAACE,OAAO,GAAG,KAAK;MACpC,CAAC;MACDK,OAAO,EAAIK,OAAO,IAAM;QACvB3B,aAAa,CAAEkB,GAAI,CAAC;QACpBI,OAAO,CAAEK,OAAQ,CAAC;QAClBZ,mBAAmB,CAACE,OAAO,GAAG,KAAK;MACpC;IACD,CAAE,CAAC;EACJ,CAAC,EAAE,CAAED,WAAW,CAAG,CAAC;AACrB;AAEA,OAAO,SAASY,8BAA8BA,CAAA,EAAG;EAChD,MAAMC,QAAQ,GAAGzB,gBAAgB,CAAE,QAAQ,EAAE,GAAI,CAAC;EAClD,OAAO,CAAEyB,QAAQ,GACd;IACAC,YAAY,EAAE;MACbC,SAAS,EAAE,YAAY;MACvB;MACAC,MAAM,EAAE;IACT;EACA,CAAC,GACD,CAAC,CAAC;AACN","ignoreList":[]}
1
+ {"version":3,"names":["useSelect","useLayoutEffect","useEffect","useRef","getBlobByURL","isBlobURL","revokeBlobURL","store","blockEditorStore","coreStore","useViewportMatch","useCanEditEntity","kind","name","recordId","select","canUser","id","useUploadMediaFromBlobURL","args","latestArgsRef","hasUploadStartedRef","getSettings","current","url","file","allowedTypes","onChange","onError","mediaUpload","filesList","onFileChange","media","message","useDefaultAvatar","avatarURL","defaultAvatarUrl","__experimentalDiscussionSettings","useToolsPanelDropdownMenuProps","isMobile","popoverProps","placement","offset"],"sources":["@wordpress/block-library/src/utils/hooks.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useLayoutEffect, useEffect, useRef } from '@wordpress/element';\nimport { getBlobByURL, isBlobURL, revokeBlobURL } from '@wordpress/blob';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Returns whether the current user can edit the given entity.\n *\n * @param {string} kind Entity kind.\n * @param {string} name Entity name.\n * @param {string} recordId Record's id.\n */\nexport function useCanEditEntity( kind, name, recordId ) {\n\treturn useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).canUser( 'update', {\n\t\t\t\tkind,\n\t\t\t\tname,\n\t\t\t\tid: recordId,\n\t\t\t} ),\n\t\t[ kind, name, recordId ]\n\t);\n}\n\n/**\n * Handles uploading a media file from a blob URL on mount.\n *\n * @param {Object} args Upload media arguments.\n * @param {string} args.url Blob URL.\n * @param {?Array} args.allowedTypes Array of allowed media types.\n * @param {Function} args.onChange Function called when the media is uploaded.\n * @param {Function} args.onError Function called when an error happens.\n */\nexport function useUploadMediaFromBlobURL( args = {} ) {\n\tconst latestArgsRef = useRef( args );\n\tconst hasUploadStartedRef = useRef( false );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\n\tuseLayoutEffect( () => {\n\t\tlatestArgsRef.current = args;\n\t} );\n\n\tuseEffect( () => {\n\t\t// Uploading is a special effect that can't be canceled via the cleanup method.\n\t\t// The extra check avoids duplicate uploads in development mode (React.StrictMode).\n\t\tif ( hasUploadStartedRef.current ) {\n\t\t\treturn;\n\t\t}\n\t\tif (\n\t\t\t! latestArgsRef.current.url ||\n\t\t\t! isBlobURL( latestArgsRef.current.url )\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst file = getBlobByURL( latestArgsRef.current.url );\n\t\tif ( ! file ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst { url, allowedTypes, onChange, onError } = latestArgsRef.current;\n\t\tconst { mediaUpload } = getSettings();\n\n\t\tif ( ! mediaUpload ) {\n\t\t\treturn;\n\t\t}\n\n\t\thasUploadStartedRef.current = true;\n\n\t\tmediaUpload( {\n\t\t\tfilesList: [ file ],\n\t\t\tallowedTypes,\n\t\t\tonFileChange: ( [ media ] ) => {\n\t\t\t\tif ( isBlobURL( media?.url ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\trevokeBlobURL( url );\n\t\t\t\tonChange( media );\n\t\t\t\thasUploadStartedRef.current = false;\n\t\t\t},\n\t\t\tonError: ( message ) => {\n\t\t\t\trevokeBlobURL( url );\n\t\t\t\tonError( message );\n\t\t\t\thasUploadStartedRef.current = false;\n\t\t\t},\n\t\t} );\n\t}, [ getSettings ] );\n}\n\nexport function useDefaultAvatar() {\n\tconst { avatarURL: defaultAvatarUrl } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst { __experimentalDiscussionSettings } = getSettings();\n\t\treturn __experimentalDiscussionSettings;\n\t} );\n\treturn defaultAvatarUrl;\n}\n\nexport function useToolsPanelDropdownMenuProps() {\n\tconst isMobile = useViewportMatch( 'medium', '<' );\n\treturn ! isMobile\n\t\t? {\n\t\t\t\tpopoverProps: {\n\t\t\t\t\tplacement: 'left-start',\n\t\t\t\t\t// For non-mobile, inner sidebar width (248px) - button width (24px) - border (1px) + padding (16px) + spacing (20px)\n\t\t\t\t\toffset: 259,\n\t\t\t\t},\n\t\t }\n\t\t: {};\n}\n"],"mappings":"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","ignoreList":[]}
@@ -134,6 +134,10 @@
134
134
  /**
135
135
  * Reset the WP Admin page styles for Gutenberg-like pages.
136
136
  */
137
+ .wp-block-accordion {
138
+ box-sizing: border-box;
139
+ }
140
+
137
141
  .wp-block-accordion-content {
138
142
  display: grid;
139
143
  grid-template-rows: max-content 0fr;
@@ -142,7 +146,7 @@
142
146
  .wp-block-accordion-content.is-open {
143
147
  grid-template-rows: max-content 1fr;
144
148
  }
145
- .wp-block-accordion-content.is-open > .wp-block-accordion-header .accordion-content__toggle-icon.has-icon-plus {
149
+ .wp-block-accordion-content.is-open > .wp-block-accordion-header .accordion-content__toggle-icon {
146
150
  transform: rotate(-45deg);
147
151
  }
148
152
 
@@ -169,8 +173,16 @@
169
173
  width: 100%;
170
174
  }
171
175
 
172
- .accordion-content__toggle > span {
173
- width: 100%;
176
+ .accordion-content__toggle-title {
177
+ flex: 1;
178
+ }
179
+
180
+ .accordion-content__toggle-icon {
181
+ width: 1.2em;
182
+ height: 1.2em;
183
+ display: flex;
184
+ align-items: center;
185
+ justify-content: center;
174
186
  }
175
187
 
176
188
  .is-layout-flow > .wp-block-accordion-panel,
@@ -192,11 +204,6 @@
192
204
  background-color: unset;
193
205
  }
194
206
 
195
- .wp-block-accordion-header.icon-position-left .accordion-content__toggle {
196
- /* stylelint-disable-next-line declaration-property-value-allowed-list -- This should be refactored to not use the row-reverse value. */
197
- flex-direction: row-reverse;
198
- }
199
-
200
207
  .accordion-content__toggle:focus-visible {
201
208
  outline: 2px solid -webkit-focus-ring-color;
202
209
  outline-offset: 2px;
@@ -134,6 +134,10 @@
134
134
  /**
135
135
  * Reset the WP Admin page styles for Gutenberg-like pages.
136
136
  */
137
+ .wp-block-accordion {
138
+ box-sizing: border-box;
139
+ }
140
+
137
141
  .wp-block-accordion-content {
138
142
  display: grid;
139
143
  grid-template-rows: max-content 0fr;
@@ -142,7 +146,7 @@
142
146
  .wp-block-accordion-content.is-open {
143
147
  grid-template-rows: max-content 1fr;
144
148
  }
145
- .wp-block-accordion-content.is-open > .wp-block-accordion-header .accordion-content__toggle-icon.has-icon-plus {
149
+ .wp-block-accordion-content.is-open > .wp-block-accordion-header .accordion-content__toggle-icon {
146
150
  transform: rotate(45deg);
147
151
  }
148
152
 
@@ -169,8 +173,16 @@
169
173
  width: 100%;
170
174
  }
171
175
 
172
- .accordion-content__toggle > span {
173
- width: 100%;
176
+ .accordion-content__toggle-title {
177
+ flex: 1;
178
+ }
179
+
180
+ .accordion-content__toggle-icon {
181
+ width: 1.2em;
182
+ height: 1.2em;
183
+ display: flex;
184
+ align-items: center;
185
+ justify-content: center;
174
186
  }
175
187
 
176
188
  .is-layout-flow > .wp-block-accordion-panel,
@@ -192,11 +204,6 @@
192
204
  background-color: unset;
193
205
  }
194
206
 
195
- .wp-block-accordion-header.icon-position-left .accordion-content__toggle {
196
- /* stylelint-disable-next-line declaration-property-value-allowed-list -- This should be refactored to not use the row-reverse value. */
197
- flex-direction: row-reverse;
198
- }
199
-
200
207
  .accordion-content__toggle:focus-visible {
201
208
  outline: 2px solid -webkit-focus-ring-color;
202
209
  outline-offset: 2px;
@@ -135,6 +135,10 @@
135
135
  /**
136
136
  * Reset the WP Admin page styles for Gutenberg-like pages.
137
137
  */
138
+ .wp-block-accordion {
139
+ box-sizing: border-box;
140
+ }
141
+
138
142
  .wp-block-accordion-content {
139
143
  display: grid;
140
144
  grid-template-rows: max-content 0fr;
@@ -143,7 +147,7 @@
143
147
  .wp-block-accordion-content.is-open {
144
148
  grid-template-rows: max-content 1fr;
145
149
  }
146
- .wp-block-accordion-content.is-open > .wp-block-accordion-header .accordion-content__toggle-icon.has-icon-plus {
150
+ .wp-block-accordion-content.is-open > .wp-block-accordion-header .accordion-content__toggle-icon {
147
151
  transform: rotate(-45deg);
148
152
  }
149
153
 
@@ -170,8 +174,16 @@
170
174
  width: 100%;
171
175
  }
172
176
 
173
- .accordion-content__toggle > span {
174
- width: 100%;
177
+ .accordion-content__toggle-title {
178
+ flex: 1;
179
+ }
180
+
181
+ .accordion-content__toggle-icon {
182
+ width: 1.2em;
183
+ height: 1.2em;
184
+ display: flex;
185
+ align-items: center;
186
+ justify-content: center;
175
187
  }
176
188
 
177
189
  .is-layout-flow > .wp-block-accordion-panel,
@@ -193,11 +205,6 @@
193
205
  background-color: unset;
194
206
  }
195
207
 
196
- .wp-block-accordion-header.icon-position-left .accordion-content__toggle {
197
- /* stylelint-disable-next-line declaration-property-value-allowed-list -- This should be refactored to not use the row-reverse value. */
198
- flex-direction: row-reverse;
199
- }
200
-
201
208
  .accordion-content__toggle:focus-visible {
202
209
  outline: 2px solid -webkit-focus-ring-color;
203
210
  outline-offset: 2px;
@@ -135,6 +135,10 @@
135
135
  /**
136
136
  * Reset the WP Admin page styles for Gutenberg-like pages.
137
137
  */
138
+ .wp-block-accordion {
139
+ box-sizing: border-box;
140
+ }
141
+
138
142
  .wp-block-accordion-content {
139
143
  display: grid;
140
144
  grid-template-rows: max-content 0fr;
@@ -143,7 +147,7 @@
143
147
  .wp-block-accordion-content.is-open {
144
148
  grid-template-rows: max-content 1fr;
145
149
  }
146
- .wp-block-accordion-content.is-open > .wp-block-accordion-header .accordion-content__toggle-icon.has-icon-plus {
150
+ .wp-block-accordion-content.is-open > .wp-block-accordion-header .accordion-content__toggle-icon {
147
151
  transform: rotate(45deg);
148
152
  }
149
153
 
@@ -170,8 +174,16 @@
170
174
  width: 100%;
171
175
  }
172
176
 
173
- .accordion-content__toggle > span {
174
- width: 100%;
177
+ .accordion-content__toggle-title {
178
+ flex: 1;
179
+ }
180
+
181
+ .accordion-content__toggle-icon {
182
+ width: 1.2em;
183
+ height: 1.2em;
184
+ display: flex;
185
+ align-items: center;
186
+ justify-content: center;
175
187
  }
176
188
 
177
189
  .is-layout-flow > .wp-block-accordion-panel,
@@ -193,11 +205,6 @@
193
205
  background-color: unset;
194
206
  }
195
207
 
196
- .wp-block-accordion-header.icon-position-left .accordion-content__toggle {
197
- /* stylelint-disable-next-line declaration-property-value-allowed-list -- This should be refactored to not use the row-reverse value. */
198
- flex-direction: row-reverse;
199
- }
200
-
201
208
  .accordion-content__toggle:focus-visible {
202
209
  outline: 2px solid -webkit-focus-ring-color;
203
210
  outline-offset: 2px;