@wordpress/block-library 7.14.1 → 7.15.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 (193) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/avatar/index.js +1 -1
  3. package/build/block/edit.native.js +1 -1
  4. package/build/block/edit.native.js.map +1 -1
  5. package/build/buttons/edit.native.js +1 -3
  6. package/build/buttons/edit.native.js.map +1 -1
  7. package/build/calendar/index.js +9 -0
  8. package/build/calendar/index.js.map +1 -1
  9. package/build/code/index.js +1 -1
  10. package/build/code/index.js.map +1 -1
  11. package/build/comments/edit/comments-legacy.js +1 -1
  12. package/build/comments/edit/comments-legacy.js.map +1 -1
  13. package/build/comments-pagination-next/index.js +1 -1
  14. package/build/comments-pagination-numbers/index.js +1 -1
  15. package/build/comments-pagination-previous/index.js +1 -1
  16. package/build/comments-title/edit.js +1 -1
  17. package/build/comments-title/edit.js.map +1 -1
  18. package/build/cover/edit/use-cover-is-dark.js +10 -7
  19. package/build/cover/edit/use-cover-is-dark.js.map +1 -1
  20. package/build/cover/index.js +9 -2
  21. package/build/cover/index.js.map +1 -1
  22. package/build/embed/deprecated.js +12 -6
  23. package/build/embed/deprecated.js.map +1 -1
  24. package/build/embed/index.js +12 -6
  25. package/build/embed/index.js.map +1 -1
  26. package/build/embed/transforms.js +12 -6
  27. package/build/embed/transforms.js.map +1 -1
  28. package/build/embed/util.js +12 -6
  29. package/build/embed/util.js.map +1 -1
  30. package/build/embed/variations.js +1 -1
  31. package/build/embed/variations.js.map +1 -1
  32. package/build/freeform/edit.js +5 -8
  33. package/build/freeform/edit.js.map +1 -1
  34. package/build/gallery/deprecated.js +4 -4
  35. package/build/gallery/deprecated.js.map +1 -1
  36. package/build/list-item/edit.js +2 -1
  37. package/build/list-item/edit.js.map +1 -1
  38. package/build/missing/edit.js +9 -2
  39. package/build/missing/edit.js.map +1 -1
  40. package/build/more/edit.js +1 -1
  41. package/build/more/edit.js.map +1 -1
  42. package/build/navigation/menu-items-to-blocks.js +16 -6
  43. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  44. package/build/post-excerpt/edit.js +1 -1
  45. package/build/post-excerpt/edit.js.map +1 -1
  46. package/build/post-navigation-link/edit.js +35 -4
  47. package/build/post-navigation-link/edit.js.map +1 -1
  48. package/build/post-navigation-link/index.js +6 -1
  49. package/build/post-navigation-link/index.js.map +1 -1
  50. package/build/post-template/edit.js +13 -28
  51. package/build/post-template/edit.js.map +1 -1
  52. package/build/query/edit/inspector-controls/index.js +4 -8
  53. package/build/query/edit/inspector-controls/index.js.map +1 -1
  54. package/build/query/edit/inspector-controls/sticky-control.js +1 -1
  55. package/build/query/edit/inspector-controls/sticky-control.js.map +1 -1
  56. package/build/query/edit/query-placeholder.js +2 -2
  57. package/build/query/edit/query-placeholder.js.map +1 -1
  58. package/build/query-title/edit.js +1 -1
  59. package/build/query-title/edit.js.map +1 -1
  60. package/build/quote/transforms.js +2 -2
  61. package/build/quote/transforms.js.map +1 -1
  62. package/build/read-more/edit.js +1 -1
  63. package/build/read-more/edit.js.map +1 -1
  64. package/build/site-tagline/index.js +1 -1
  65. package/build/social-links/edit.native.js +1 -0
  66. package/build/social-links/edit.native.js.map +1 -1
  67. package/build/template-part/edit/index.js +2 -2
  68. package/build/template-part/edit/index.js.map +1 -1
  69. package/build-module/avatar/index.js +1 -1
  70. package/build-module/block/edit.native.js +1 -1
  71. package/build-module/block/edit.native.js.map +1 -1
  72. package/build-module/buttons/edit.native.js +1 -2
  73. package/build-module/buttons/edit.native.js.map +1 -1
  74. package/build-module/calendar/index.js +9 -0
  75. package/build-module/calendar/index.js.map +1 -1
  76. package/build-module/code/index.js +1 -1
  77. package/build-module/code/index.js.map +1 -1
  78. package/build-module/comments/edit/comments-legacy.js +1 -1
  79. package/build-module/comments/edit/comments-legacy.js.map +1 -1
  80. package/build-module/comments-pagination-next/index.js +1 -1
  81. package/build-module/comments-pagination-numbers/index.js +1 -1
  82. package/build-module/comments-pagination-previous/index.js +1 -1
  83. package/build-module/comments-title/edit.js +1 -1
  84. package/build-module/comments-title/edit.js.map +1 -1
  85. package/build-module/cover/edit/use-cover-is-dark.js +9 -4
  86. package/build-module/cover/edit/use-cover-is-dark.js.map +1 -1
  87. package/build-module/cover/index.js +9 -2
  88. package/build-module/cover/index.js.map +1 -1
  89. package/build-module/embed/deprecated.js +12 -6
  90. package/build-module/embed/deprecated.js.map +1 -1
  91. package/build-module/embed/index.js +12 -6
  92. package/build-module/embed/index.js.map +1 -1
  93. package/build-module/embed/transforms.js +12 -6
  94. package/build-module/embed/transforms.js.map +1 -1
  95. package/build-module/embed/util.js +12 -6
  96. package/build-module/embed/util.js.map +1 -1
  97. package/build-module/embed/variations.js +1 -1
  98. package/build-module/embed/variations.js.map +1 -1
  99. package/build-module/freeform/edit.js +3 -6
  100. package/build-module/freeform/edit.js.map +1 -1
  101. package/build-module/gallery/deprecated.js +4 -4
  102. package/build-module/gallery/deprecated.js.map +1 -1
  103. package/build-module/list-item/edit.js +2 -1
  104. package/build-module/list-item/edit.js.map +1 -1
  105. package/build-module/missing/edit.js +11 -4
  106. package/build-module/missing/edit.js.map +1 -1
  107. package/build-module/more/edit.js +1 -1
  108. package/build-module/more/edit.js.map +1 -1
  109. package/build-module/navigation/menu-items-to-blocks.js +16 -6
  110. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  111. package/build-module/post-excerpt/edit.js +1 -1
  112. package/build-module/post-excerpt/edit.js.map +1 -1
  113. package/build-module/post-navigation-link/edit.js +37 -6
  114. package/build-module/post-navigation-link/edit.js.map +1 -1
  115. package/build-module/post-navigation-link/index.js +6 -1
  116. package/build-module/post-navigation-link/index.js.map +1 -1
  117. package/build-module/post-template/edit.js +14 -29
  118. package/build-module/post-template/edit.js.map +1 -1
  119. package/build-module/query/edit/inspector-controls/index.js +2 -6
  120. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  121. package/build-module/query/edit/inspector-controls/sticky-control.js +1 -1
  122. package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -1
  123. package/build-module/query/edit/query-placeholder.js +2 -2
  124. package/build-module/query/edit/query-placeholder.js.map +1 -1
  125. package/build-module/query-title/edit.js +1 -1
  126. package/build-module/query-title/edit.js.map +1 -1
  127. package/build-module/quote/transforms.js +2 -2
  128. package/build-module/quote/transforms.js.map +1 -1
  129. package/build-module/read-more/edit.js +1 -1
  130. package/build-module/read-more/edit.js.map +1 -1
  131. package/build-module/site-tagline/index.js +1 -1
  132. package/build-module/social-links/edit.native.js +1 -0
  133. package/build-module/social-links/edit.native.js.map +1 -1
  134. package/build-module/template-part/edit/index.js +3 -3
  135. package/build-module/template-part/edit/index.js.map +1 -1
  136. package/build-style/calendar/style-rtl.css +21 -12
  137. package/build-style/calendar/style.css +21 -12
  138. package/build-style/post-navigation-link/style-rtl.css +90 -0
  139. package/build-style/post-navigation-link/style.css +90 -0
  140. package/build-style/style-rtl.css +36 -12
  141. package/build-style/style.css +36 -12
  142. package/package.json +29 -29
  143. package/src/avatar/block.json +1 -1
  144. package/src/block/edit.native.js +1 -1
  145. package/src/buttons/edit.native.js +1 -2
  146. package/src/buttons/test/__snapshots__/edit.native.js.snap +28 -0
  147. package/src/buttons/test/edit.native.js +170 -0
  148. package/src/calendar/block.json +9 -0
  149. package/src/calendar/index.php +22 -1
  150. package/src/calendar/style.scss +28 -15
  151. package/src/code/index.js +1 -1
  152. package/src/columns/test/__snapshots__/edit.native.js.snap +219 -0
  153. package/src/columns/test/edit.native.js +432 -0
  154. package/src/comments/edit/comments-legacy.js +1 -1
  155. package/src/comments-pagination-next/block.json +1 -1
  156. package/src/comments-pagination-numbers/block.json +1 -1
  157. package/src/comments-pagination-previous/block.json +1 -1
  158. package/src/comments-title/edit.js +1 -1
  159. package/src/cover/edit/use-cover-is-dark.js +11 -7
  160. package/src/cover/index.js +8 -1
  161. package/src/cover/test/__snapshots__/edit.native.js.snap +64 -0
  162. package/src/cover/test/edit.native.js +136 -4
  163. package/src/embed/block.json +12 -6
  164. package/src/embed/test/index.native.js +1 -2
  165. package/src/embed/variations.js +1 -1
  166. package/src/freeform/edit.js +12 -10
  167. package/src/gallery/deprecated.js +4 -4
  168. package/src/group/test/__snapshots__/edit.native.js.snap +19 -0
  169. package/src/group/test/edit.native.js +102 -0
  170. package/src/list-item/edit.js +1 -0
  171. package/src/missing/edit.js +15 -4
  172. package/src/more/edit.js +1 -1
  173. package/src/navigation/menu-items-to-blocks.js +39 -22
  174. package/src/navigation/test/menu-items-to-blocks.js +6 -0
  175. package/src/post-excerpt/edit.js +1 -1
  176. package/src/post-featured-image/index.php +11 -18
  177. package/src/post-navigation-link/block.json +6 -1
  178. package/src/post-navigation-link/edit.js +64 -3
  179. package/src/post-navigation-link/index.php +23 -0
  180. package/src/post-navigation-link/style.scss +23 -0
  181. package/src/post-template/edit.js +14 -23
  182. package/src/query/edit/inspector-controls/index.js +2 -6
  183. package/src/query/edit/inspector-controls/sticky-control.js +1 -1
  184. package/src/query/edit/query-placeholder.js +4 -1
  185. package/src/query-title/edit.js +1 -1
  186. package/src/quote/transforms.js +1 -1
  187. package/src/read-more/edit.js +1 -1
  188. package/src/site-tagline/block.json +1 -1
  189. package/src/social-links/edit.native.js +7 -1
  190. package/src/social-links/test/__snapshots__/edit.native.js.snap +57 -0
  191. package/src/social-links/test/edit.native.js +199 -0
  192. package/src/style.scss +1 -0
  193. package/src/template-part/edit/index.js +60 -58
@@ -8,9 +8,9 @@ import classnames from 'classnames';
8
8
  * WordPress dependencies
9
9
  */
10
10
 
11
- import { ToggleControl, PanelBody } from '@wordpress/components';
11
+ import { __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, ToggleControl, PanelBody } from '@wordpress/components';
12
12
  import { InspectorControls, RichText, BlockControls, AlignmentToolbar, useBlockProps } from '@wordpress/block-editor';
13
- import { __ } from '@wordpress/i18n';
13
+ import { __, _x } from '@wordpress/i18n';
14
14
  export default function PostNavigationLinkEdit(_ref) {
15
15
  let {
16
16
  attributes: {
@@ -18,12 +18,19 @@ export default function PostNavigationLinkEdit(_ref) {
18
18
  label,
19
19
  showTitle,
20
20
  textAlign,
21
- linkLabel
21
+ linkLabel,
22
+ arrow
22
23
  },
23
24
  setAttributes
24
25
  } = _ref;
25
26
  const isNext = type === 'next';
26
27
  let placeholder = isNext ? __('Next') : __('Previous');
28
+ const arrowMap = {
29
+ none: '',
30
+ arrow: isNext ? '→' : '←',
31
+ chevron: isNext ? '»' : '«'
32
+ };
33
+ const displayArrow = arrowMap[arrow];
27
34
 
28
35
  if (showTitle) {
29
36
  /* translators: Label before for next and previous post. There is a space after the colon. */
@@ -49,14 +56,35 @@ export default function PostNavigationLinkEdit(_ref) {
49
56
  onChange: () => setAttributes({
50
57
  linkLabel: !linkLabel
51
58
  })
52
- }))), createElement(BlockControls, null, createElement(AlignmentToolbar, {
59
+ }), createElement(ToggleGroupControl, {
60
+ label: __('Arrow'),
61
+ value: arrow,
62
+ onChange: value => {
63
+ setAttributes({
64
+ arrow: value
65
+ });
66
+ },
67
+ help: __('A decorative arrow for the next and previous link.'),
68
+ isBlock: true
69
+ }, createElement(ToggleGroupControlOption, {
70
+ value: "none",
71
+ label: _x('None', 'Arrow option for Next/Previous link')
72
+ }), createElement(ToggleGroupControlOption, {
73
+ value: "arrow",
74
+ label: _x('Arrow', 'Arrow option for Next/Previous link')
75
+ }), createElement(ToggleGroupControlOption, {
76
+ value: "chevron",
77
+ label: _x('Chevron', 'Arrow option for Next/Previous link')
78
+ })))), createElement(BlockControls, null, createElement(AlignmentToolbar, {
53
79
  value: textAlign,
54
80
  onChange: nextAlign => {
55
81
  setAttributes({
56
82
  textAlign: nextAlign
57
83
  });
58
84
  }
59
- })), createElement("div", blockProps, createElement(RichText, {
85
+ })), createElement("div", blockProps, !isNext && displayArrow && createElement("span", {
86
+ className: `wp-block-post-navigation-link__arrow-previous is-arrow-${arrow}`
87
+ }, displayArrow), createElement(RichText, {
60
88
  tagName: "a",
61
89
  "aria-label": ariaLabel,
62
90
  placeholder: placeholder,
@@ -68,6 +96,9 @@ export default function PostNavigationLinkEdit(_ref) {
68
96
  }), showTitle && createElement("a", {
69
97
  href: "#post-navigation-pseudo-link",
70
98
  onClick: event => event.preventDefault()
71
- }, __('An example title'))));
99
+ }, __('An example title')), isNext && displayArrow && createElement("span", {
100
+ className: `wp-block-post-navigation-link__arrow-next is-arrow-${arrow}`,
101
+ "aria-hidden": true
102
+ }, displayArrow)));
72
103
  }
73
104
  //# sourceMappingURL=edit.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/post-navigation-link/edit.js"],"names":["classnames","ToggleControl","PanelBody","InspectorControls","RichText","BlockControls","AlignmentToolbar","useBlockProps","__","PostNavigationLinkEdit","attributes","type","label","showTitle","textAlign","linkLabel","setAttributes","isNext","placeholder","ariaLabel","blockProps","className","nextAlign","newLabel","event","preventDefault"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,aAAT,EAAwBC,SAAxB,QAAyC,uBAAzC;AACA,SACCC,iBADD,EAECC,QAFD,EAGCC,aAHD,EAICC,gBAJD,EAKCC,aALD,QAMO,yBANP;AAOA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,eAAe,SAASC,sBAAT,OAGX;AAAA,MAH4C;AAC/CC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,IAAF;AAAQC,MAAAA,KAAR;AAAeC,MAAAA,SAAf;AAA0BC,MAAAA,SAA1B;AAAqCC,MAAAA;AAArC,KADmC;AAE/CC,IAAAA;AAF+C,GAG5C;AACH,QAAMC,MAAM,GAAGN,IAAI,KAAK,MAAxB;AACA,MAAIO,WAAW,GAAGD,MAAM,GAAGT,EAAE,CAAE,MAAF,CAAL,GAAkBA,EAAE,CAAE,UAAF,CAA5C;;AAEA,MAAKK,SAAL,EAAiB;AAChB;AACAK,IAAAA,WAAW,GAAGD,MAAM,GAAGT,EAAE,CAAE,QAAF,CAAL,GAAoBA,EAAE,CAAE,YAAF,CAA1C;AACA;;AAED,QAAMW,SAAS,GAAGF,MAAM,GAAGT,EAAE,CAAE,WAAF,CAAL,GAAuBA,EAAE,CAAE,eAAF,CAAjD;AACA,QAAMY,UAAU,GAAGb,aAAa,CAAE;AACjCc,IAAAA,SAAS,EAAErB,UAAU,CAAE;AACtB,OAAG,kBAAkBc,SAAW,EAAhC,GAAqCA;AADf,KAAF;AADY,GAAF,CAAhC;AAKA,SACC,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD,QACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGN,EAAE,CAAE,6BAAF,CADX;AAEC,IAAA,IAAI,EAAGA,EAAE,CACR,4EADQ,CAFV;AAKC,IAAA,OAAO,EAAG,CAAC,CAAEK,SALd;AAMC,IAAA,QAAQ,EAAG,MACVG,aAAa,CAAE;AACdH,MAAAA,SAAS,EAAE,CAAEA;AADC,KAAF;AAPf,IADD,EAaGA,SAAS,IACV,cAAC,aAAD;AACC,IAAA,KAAK,EAAGL,EAAE,CACT,uCADS,CADX;AAIC,IAAA,OAAO,EAAG,CAAC,CAAEO,SAJd;AAKC,IAAA,QAAQ,EAAG,MACVC,aAAa,CAAE;AACdD,MAAAA,SAAS,EAAE,CAAEA;AADC,KAAF;AANf,IAdF,CADD,CADD,EA8BC,cAAC,aAAD,QACC,cAAC,gBAAD;AACC,IAAA,KAAK,EAAGD,SADT;AAEC,IAAA,QAAQ,EAAKQ,SAAF,IAAiB;AAC3BN,MAAAA,aAAa,CAAE;AAAEF,QAAAA,SAAS,EAAEQ;AAAb,OAAF,CAAb;AACA;AAJF,IADD,CA9BD,EAsCC,qBAAUF,UAAV,EACC,cAAC,QAAD;AACC,IAAA,OAAO,EAAC,GADT;AAEC,kBAAaD,SAFd;AAGC,IAAA,WAAW,EAAGD,WAHf;AAIC,IAAA,KAAK,EAAGN,KAJT;AAKC,IAAA,cAAc,EAAG,CAAE,WAAF,EAAe,aAAf,CALlB;AAMC,IAAA,QAAQ,EAAKW,QAAF,IACVP,aAAa,CAAE;AAAEJ,MAAAA,KAAK,EAAEW;AAAT,KAAF;AAPf,IADD,EAWGV,SAAS,IACV;AACC,IAAA,IAAI,EAAC,8BADN;AAEC,IAAA,OAAO,EAAKW,KAAF,IAAaA,KAAK,CAACC,cAAN;AAFxB,KAIGjB,EAAE,CAAE,kBAAF,CAJL,CAZF,CAtCD,CADD;AA6DA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { ToggleControl, PanelBody } from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tRichText,\n\tBlockControls,\n\tAlignmentToolbar,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\nexport default function PostNavigationLinkEdit( {\n\tattributes: { type, label, showTitle, textAlign, linkLabel },\n\tsetAttributes,\n} ) {\n\tconst isNext = type === 'next';\n\tlet placeholder = isNext ? __( 'Next' ) : __( 'Previous' );\n\n\tif ( showTitle ) {\n\t\t/* translators: Label before for next and previous post. There is a space after the colon. */\n\t\tplaceholder = isNext ? __( 'Next: ' ) : __( 'Previous: ' );\n\t}\n\n\tconst ariaLabel = isNext ? __( 'Next post' ) : __( 'Previous post' );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display the title as a link' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'If you have entered a custom label, it will be prepended before the title.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tchecked={ !! showTitle }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowTitle: ! showTitle,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{ showTitle && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t'Include the label as part of the link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tchecked={ !! linkLabel }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tlinkLabel: ! linkLabel,\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) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<RichText\n\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\taria-label={ ariaLabel }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\tallowedFormats={ [ 'core/bold', 'core/italic' ] }\n\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\tsetAttributes( { label: newLabel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ showTitle && (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref=\"#post-navigation-pseudo-link\"\n\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'An example title' ) }\n\t\t\t\t\t</a>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/post-navigation-link/edit.js"],"names":["classnames","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","ToggleControl","PanelBody","InspectorControls","RichText","BlockControls","AlignmentToolbar","useBlockProps","__","_x","PostNavigationLinkEdit","attributes","type","label","showTitle","textAlign","linkLabel","arrow","setAttributes","isNext","placeholder","arrowMap","none","chevron","displayArrow","ariaLabel","blockProps","className","value","nextAlign","newLabel","event","preventDefault"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SACCC,gCAAgC,IAAIC,kBADrC,EAECC,sCAAsC,IAAIC,wBAF3C,EAGCC,aAHD,EAICC,SAJD,QAKO,uBALP;AAMA,SACCC,iBADD,EAECC,QAFD,EAGCC,aAHD,EAICC,gBAJD,EAKCC,aALD,QAMO,yBANP;AAOA,SAASC,EAAT,EAAaC,EAAb,QAAuB,iBAAvB;AAEA,eAAe,SAASC,sBAAT,OAGX;AAAA,MAH4C;AAC/CC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,IAAF;AAAQC,MAAAA,KAAR;AAAeC,MAAAA,SAAf;AAA0BC,MAAAA,SAA1B;AAAqCC,MAAAA,SAArC;AAAgDC,MAAAA;AAAhD,KADmC;AAE/CC,IAAAA;AAF+C,GAG5C;AACH,QAAMC,MAAM,GAAGP,IAAI,KAAK,MAAxB;AACA,MAAIQ,WAAW,GAAGD,MAAM,GAAGX,EAAE,CAAE,MAAF,CAAL,GAAkBA,EAAE,CAAE,UAAF,CAA5C;AAEA,QAAMa,QAAQ,GAAG;AAChBC,IAAAA,IAAI,EAAE,EADU;AAEhBL,IAAAA,KAAK,EAAEE,MAAM,GAAG,GAAH,GAAS,GAFN;AAGhBI,IAAAA,OAAO,EAAEJ,MAAM,GAAG,GAAH,GAAS;AAHR,GAAjB;AAMA,QAAMK,YAAY,GAAGH,QAAQ,CAAEJ,KAAF,CAA7B;;AAEA,MAAKH,SAAL,EAAiB;AAChB;AACAM,IAAAA,WAAW,GAAGD,MAAM,GAAGX,EAAE,CAAE,QAAF,CAAL,GAAoBA,EAAE,CAAE,YAAF,CAA1C;AACA;;AAED,QAAMiB,SAAS,GAAGN,MAAM,GAAGX,EAAE,CAAE,WAAF,CAAL,GAAuBA,EAAE,CAAE,eAAF,CAAjD;AACA,QAAMkB,UAAU,GAAGnB,aAAa,CAAE;AACjCoB,IAAAA,SAAS,EAAE/B,UAAU,CAAE;AACtB,OAAG,kBAAkBmB,SAAW,EAAhC,GAAqCA;AADf,KAAF;AADY,GAAF,CAAhC;AAKA,SACC,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD,QACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGP,EAAE,CAAE,6BAAF,CADX;AAEC,IAAA,IAAI,EAAGA,EAAE,CACR,4EADQ,CAFV;AAKC,IAAA,OAAO,EAAG,CAAC,CAAEM,SALd;AAMC,IAAA,QAAQ,EAAG,MACVI,aAAa,CAAE;AACdJ,MAAAA,SAAS,EAAE,CAAEA;AADC,KAAF;AAPf,IADD,EAaGA,SAAS,IACV,cAAC,aAAD;AACC,IAAA,KAAK,EAAGN,EAAE,CACT,uCADS,CADX;AAIC,IAAA,OAAO,EAAG,CAAC,CAAEQ,SAJd;AAKC,IAAA,QAAQ,EAAG,MACVE,aAAa,CAAE;AACdF,MAAAA,SAAS,EAAE,CAAEA;AADC,KAAF;AANf,IAdF,EA0BC,cAAC,kBAAD;AACC,IAAA,KAAK,EAAGR,EAAE,CAAE,OAAF,CADX;AAEC,IAAA,KAAK,EAAGS,KAFT;AAGC,IAAA,QAAQ,EAAKW,KAAF,IAAa;AACvBV,MAAAA,aAAa,CAAE;AAAED,QAAAA,KAAK,EAAEW;AAAT,OAAF,CAAb;AACA,KALF;AAMC,IAAA,IAAI,EAAGpB,EAAE,CACR,oDADQ,CANV;AASC,IAAA,OAAO;AATR,KAWC,cAAC,wBAAD;AACC,IAAA,KAAK,EAAC,MADP;AAEC,IAAA,KAAK,EAAGC,EAAE,CACT,MADS,EAET,qCAFS;AAFX,IAXD,EAkBC,cAAC,wBAAD;AACC,IAAA,KAAK,EAAC,OADP;AAEC,IAAA,KAAK,EAAGA,EAAE,CACT,OADS,EAET,qCAFS;AAFX,IAlBD,EAyBC,cAAC,wBAAD;AACC,IAAA,KAAK,EAAC,SADP;AAEC,IAAA,KAAK,EAAGA,EAAE,CACT,SADS,EAET,qCAFS;AAFX,IAzBD,CA1BD,CADD,CADD,EA+DC,cAAC,aAAD,QACC,cAAC,gBAAD;AACC,IAAA,KAAK,EAAGM,SADT;AAEC,IAAA,QAAQ,EAAKc,SAAF,IAAiB;AAC3BX,MAAAA,aAAa,CAAE;AAAEH,QAAAA,SAAS,EAAEc;AAAb,OAAF,CAAb;AACA;AAJF,IADD,CA/DD,EAuEC,qBAAUH,UAAV,EACG,CAAEP,MAAF,IAAYK,YAAZ,IACD;AACC,IAAA,SAAS,EAAI,0DAA0DP,KAAO;AAD/E,KAGGO,YAHH,CAFF,EAQC,cAAC,QAAD;AACC,IAAA,OAAO,EAAC,GADT;AAEC,kBAAaC,SAFd;AAGC,IAAA,WAAW,EAAGL,WAHf;AAIC,IAAA,KAAK,EAAGP,KAJT;AAKC,IAAA,cAAc,EAAG,CAAE,WAAF,EAAe,aAAf,CALlB;AAMC,IAAA,QAAQ,EAAKiB,QAAF,IACVZ,aAAa,CAAE;AAAEL,MAAAA,KAAK,EAAEiB;AAAT,KAAF;AAPf,IARD,EAkBGhB,SAAS,IACV;AACC,IAAA,IAAI,EAAC,8BADN;AAEC,IAAA,OAAO,EAAKiB,KAAF,IAAaA,KAAK,CAACC,cAAN;AAFxB,KAIGxB,EAAE,CAAE,kBAAF,CAJL,CAnBF,EA0BGW,MAAM,IAAIK,YAAV,IACD;AACC,IAAA,SAAS,EAAI,sDAAsDP,KAAO,EAD3E;AAEC,mBAAc;AAFf,KAIGO,YAJH,CA3BF,CAvED,CADD;AA6GA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tToggleControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tRichText,\n\tBlockControls,\n\tAlignmentToolbar,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { __, _x } from '@wordpress/i18n';\n\nexport default function PostNavigationLinkEdit( {\n\tattributes: { type, label, showTitle, textAlign, linkLabel, arrow },\n\tsetAttributes,\n} ) {\n\tconst isNext = type === 'next';\n\tlet placeholder = isNext ? __( 'Next' ) : __( 'Previous' );\n\n\tconst arrowMap = {\n\t\tnone: '',\n\t\tarrow: isNext ? '→' : '←',\n\t\tchevron: isNext ? '»' : '«',\n\t};\n\n\tconst displayArrow = arrowMap[ arrow ];\n\n\tif ( showTitle ) {\n\t\t/* translators: Label before for next and previous post. There is a space after the colon. */\n\t\tplaceholder = isNext ? __( 'Next: ' ) : __( 'Previous: ' );\n\t}\n\n\tconst ariaLabel = isNext ? __( 'Next post' ) : __( 'Previous post' );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display the title as a link' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'If you have entered a custom label, it will be prepended before the title.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tchecked={ !! showTitle }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowTitle: ! showTitle,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{ showTitle && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t'Include the label as part of the link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tchecked={ !! linkLabel }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tlinkLabel: ! linkLabel,\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) }\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\tlabel={ __( 'Arrow' ) }\n\t\t\t\t\t\tvalue={ arrow }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetAttributes( { arrow: value } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'A decorative arrow for the next and previous link.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"none\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'None',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"arrow\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Arrow',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"chevron\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Chevron',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ ! isNext && displayArrow && (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ `wp-block-post-navigation-link__arrow-previous is-arrow-${ arrow }` }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ displayArrow }\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t\t<RichText\n\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\taria-label={ ariaLabel }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\tallowedFormats={ [ 'core/bold', 'core/italic' ] }\n\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\tsetAttributes( { label: newLabel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ showTitle && (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref=\"#post-navigation-pseudo-link\"\n\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'An example title' ) }\n\t\t\t\t\t</a>\n\t\t\t\t) }\n\t\t\t\t{ isNext && displayArrow && (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ `wp-block-post-navigation-link__arrow-next is-arrow-${ arrow }` }\n\t\t\t\t\t\taria-hidden={ true }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ displayArrow }\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
@@ -28,6 +28,10 @@ const metadata = {
28
28
  linkLabel: {
29
29
  type: "boolean",
30
30
  "default": false
31
+ },
32
+ arrow: {
33
+ type: "string",
34
+ "default": "none"
31
35
  }
32
36
  },
33
37
  supports: {
@@ -49,7 +53,8 @@ const metadata = {
49
53
  fontSize: true
50
54
  }
51
55
  }
52
- }
56
+ },
57
+ style: "wp-block-post-navigation-link"
53
58
  };
54
59
  import edit from './edit';
55
60
  import variations from './variations';
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/post-navigation-link/index.js"],"names":["initBlock","edit","variations","name","metadata","settings","init"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,SAAP,MAAsB,qBAAtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBJ,EAAAA,IADuB;AAEvBC,EAAAA;AAFuB,CAAjB;AAKP,OAAO,MAAMI,IAAI,GAAG,MAAMN,SAAS,CAAE;AAAEG,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAF,CAA5B","sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport variations from './variations';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/post-navigation-link/index.js"],"names":["initBlock","edit","variations","name","metadata","settings","init"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,SAAP,MAAsB,qBAAtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBJ,EAAAA,IADuB;AAEvBC,EAAAA;AAFuB,CAAjB;AAKP,OAAO,MAAMI,IAAI,GAAG,MAAMN,SAAS,CAAE;AAAEG,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAF,CAA5B","sourcesContent":["/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport variations from './variations';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
@@ -14,7 +14,7 @@ import { useSelect } from '@wordpress/data';
14
14
  import { __ } from '@wordpress/i18n';
15
15
  import { BlockContextProvider, __experimentalUseBlockPreview as useBlockPreview, useBlockProps, useInnerBlocksProps, store as blockEditorStore } from '@wordpress/block-editor';
16
16
  import { Spinner } from '@wordpress/components';
17
- import { store as coreStore, useEntityRecords } from '@wordpress/core-data';
17
+ import { store as coreStore } from '@wordpress/core-data';
18
18
  const TEMPLATE = [['core/post-title'], ['core/post-date'], ['core/post-excerpt']];
19
19
 
20
20
  function PostTemplateInnerBlocks() {
@@ -98,21 +98,6 @@ export default function PostTemplateEdit(_ref2) {
98
98
  page
99
99
  }] = queryContext;
100
100
  const [activeBlockContextId, setActiveBlockContextId] = useState();
101
- let categorySlug = null;
102
-
103
- if (templateSlug !== null && templateSlug !== void 0 && templateSlug.startsWith('category-')) {
104
- categorySlug = templateSlug.replace('category-', '');
105
- }
106
-
107
- const {
108
- records: categories,
109
- hasResolved: hasResolvedCategories
110
- } = useEntityRecords('taxonomy', 'category', {
111
- context: 'view',
112
- per_page: -1,
113
- _fields: ['id'],
114
- slug: categorySlug
115
- });
116
101
  const {
117
102
  posts,
118
103
  blocks
@@ -129,13 +114,19 @@ export default function PostTemplateEdit(_ref2) {
129
114
  per_page: -1,
130
115
  context: 'view'
131
116
  });
117
+ const templateCategory = inherit && (templateSlug === null || templateSlug === void 0 ? void 0 : templateSlug.startsWith('category-')) && getEntityRecords('taxonomy', 'category', {
118
+ context: 'view',
119
+ per_page: 1,
120
+ _fields: ['id'],
121
+ slug: templateSlug.replace('category-', '')
122
+ });
132
123
  const query = {
133
124
  offset: perPage ? perPage * (page - 1) + offset : 0,
134
125
  order,
135
126
  orderby: orderBy
136
- };
127
+ }; // There is no need to build the taxQuery if we inherit.
137
128
 
138
- if (taxQuery) {
129
+ if (taxQuery && !inherit) {
139
130
  // We have to build the tax query for the REST API and use as
140
131
  // keys the taxonomies `rest_base` with the `term ids` as values.
141
132
  const builtTaxQuery = Object.entries(taxQuery).reduce((accumulator, _ref3) => {
@@ -192,16 +183,10 @@ export default function PostTemplateEdit(_ref2) {
192
183
  if (templateSlug !== null && templateSlug !== void 0 && templateSlug.startsWith('archive-')) {
193
184
  query.postType = templateSlug.replace('archive-', '');
194
185
  postType = query.postType;
195
- } else if (!!categorySlug && hasResolvedCategories) {
196
- query.taxQuery = {
197
- category: categories.map(_ref5 => {
198
- let {
199
- id
200
- } = _ref5;
201
- return id;
202
- })
203
- };
204
- taxQuery = query.taxQuery;
186
+ } else if (templateCategory) {
187
+ var _templateCategory$;
188
+
189
+ query.categories = (_templateCategory$ = templateCategory[0]) === null || _templateCategory$ === void 0 ? void 0 : _templateCategory$.id;
205
190
  }
206
191
  } // When we preview Query Loop blocks we should prefer the current
207
192
  // block's postType, which is passed through block context.
@@ -214,7 +199,7 @@ export default function PostTemplateEdit(_ref2) {
214
199
  }),
215
200
  blocks: getBlocks(clientId)
216
201
  };
217
- }, [perPage, page, offset, order, orderBy, clientId, author, search, postType, exclude, sticky, inherit, templateSlug, taxQuery, parents, restQueryArgs, previewPostType, categories, categorySlug, hasResolvedCategories]);
202
+ }, [perPage, page, offset, order, orderBy, clientId, author, search, postType, exclude, sticky, inherit, templateSlug, taxQuery, parents, restQueryArgs, previewPostType]);
218
203
  const blockContexts = useMemo(() => posts === null || posts === void 0 ? void 0 : posts.map(post => ({
219
204
  postType: post.type,
220
205
  postId: post.id
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/post-template/edit.js"],"names":["classnames","memo","useMemo","useState","useSelect","__","BlockContextProvider","__experimentalUseBlockPreview","useBlockPreview","useBlockProps","useInnerBlocksProps","store","blockEditorStore","Spinner","coreStore","useEntityRecords","TEMPLATE","PostTemplateInnerBlocks","innerBlocksProps","className","template","PostTemplateBlockPreview","blocks","blockContextId","isHidden","setActiveBlockContextId","blockPreviewProps","props","handleOnClick","style","display","undefined","MemoizedPostTemplateBlockPreview","PostTemplateEdit","clientId","context","query","perPage","offset","postType","order","orderBy","author","search","exclude","sticky","inherit","taxQuery","parents","pages","restQueryArgs","queryContext","page","templateSlug","displayLayout","type","layoutType","columns","previewPostType","activeBlockContextId","categorySlug","startsWith","replace","records","categories","hasResolved","hasResolvedCategories","per_page","_fields","slug","posts","select","getEntityRecords","getTaxonomies","getBlocks","taxonomies","orderby","builtTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","taxonomy","find","rest_base","keys","length","assign","parent","category","map","id","usedPostType","blockContexts","post","postId","hasLayoutFlex","blockProps","blockContext"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { memo, useMemo, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockContextProvider,\n\t__experimentalUseBlockPreview as useBlockPreview,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Spinner } from '@wordpress/components';\nimport { store as coreStore, useEntityRecords } from '@wordpress/core-data';\n\nconst TEMPLATE = [\n\t[ 'core/post-title' ],\n\t[ 'core/post-date' ],\n\t[ 'core/post-excerpt' ],\n];\n\nfunction PostTemplateInnerBlocks() {\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{ className: 'wp-block-post' },\n\t\t{ template: TEMPLATE }\n\t);\n\treturn <li { ...innerBlocksProps } />;\n}\n\nfunction PostTemplateBlockPreview( {\n\tblocks,\n\tblockContextId,\n\tisHidden,\n\tsetActiveBlockContextId,\n} ) {\n\tconst blockPreviewProps = useBlockPreview( {\n\t\tblocks,\n\t\tprops: {\n\t\t\tclassName: 'wp-block-post',\n\t\t},\n\t} );\n\n\tconst handleOnClick = () => {\n\t\tsetActiveBlockContextId( blockContextId );\n\t};\n\n\tconst style = {\n\t\tdisplay: isHidden ? 'none' : undefined,\n\t};\n\n\treturn (\n\t\t<li\n\t\t\t{ ...blockPreviewProps }\n\t\t\ttabIndex={ 0 }\n\t\t\t// eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role\n\t\t\trole=\"button\"\n\t\t\tonClick={ handleOnClick }\n\t\t\tonKeyPress={ handleOnClick }\n\t\t\tstyle={ style }\n\t\t/>\n\t);\n}\n\nconst MemoizedPostTemplateBlockPreview = memo( PostTemplateBlockPreview );\n\nexport default function PostTemplateEdit( {\n\tclientId,\n\tcontext: {\n\t\tquery: {\n\t\t\tperPage,\n\t\t\toffset,\n\t\t\tpostType,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\tpages,\n\t\t\t// We gather extra query args to pass to the REST API call.\n\t\t\t// This way extenders of Query Loop can add their own query args,\n\t\t\t// and have accurate previews in the editor.\n\t\t\t// Noting though that these args should either be supported by the\n\t\t\t// REST API or be handled by custom REST filters like `rest_{$this->post_type}_query`.\n\t\t\t...restQueryArgs\n\t\t} = {},\n\t\tqueryContext = [ { page: 1 } ],\n\t\ttemplateSlug,\n\t\tdisplayLayout: { type: layoutType = 'flex', columns = 1 } = {},\n\t\tpreviewPostType,\n\t},\n} ) {\n\tconst [ { page } ] = queryContext;\n\tconst [ activeBlockContextId, setActiveBlockContextId ] = useState();\n\n\tlet categorySlug = null;\n\tif ( templateSlug?.startsWith( 'category-' ) ) {\n\t\tcategorySlug = templateSlug.replace( 'category-', '' );\n\t}\n\tconst { records: categories, hasResolved: hasResolvedCategories } =\n\t\tuseEntityRecords( 'taxonomy', 'category', {\n\t\t\tcontext: 'view',\n\t\t\tper_page: -1,\n\t\t\t_fields: [ 'id' ],\n\t\t\tslug: categorySlug,\n\t\t} );\n\n\tconst { posts, blocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomies } = select( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\t\t\tconst taxonomies = getTaxonomies( {\n\t\t\t\ttype: postType,\n\t\t\t\tper_page: -1,\n\t\t\t\tcontext: 'view',\n\t\t\t} );\n\t\t\tconst query = {\n\t\t\t\toffset: perPage ? perPage * ( page - 1 ) + offset : 0,\n\t\t\t\torder,\n\t\t\t\torderby: orderBy,\n\t\t\t};\n\t\t\tif ( taxQuery ) {\n\t\t\t\t// We have to build the tax query for the REST API and use as\n\t\t\t\t// keys the taxonomies `rest_base` with the `term ids` as values.\n\t\t\t\tconst builtTaxQuery = Object.entries( taxQuery ).reduce(\n\t\t\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\t\t\tconst taxonomy = taxonomies?.find(\n\t\t\t\t\t\t\t( { slug } ) => slug === taxonomySlug\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( taxonomy?.rest_base ) {\n\t\t\t\t\t\t\taccumulator[ taxonomy?.rest_base ] = terms;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn accumulator;\n\t\t\t\t\t},\n\t\t\t\t\t{}\n\t\t\t\t);\n\t\t\t\tif ( !! Object.keys( builtTaxQuery ).length ) {\n\t\t\t\t\tObject.assign( query, builtTaxQuery );\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( perPage ) {\n\t\t\t\tquery.per_page = perPage;\n\t\t\t}\n\t\t\tif ( author ) {\n\t\t\t\tquery.author = author;\n\t\t\t}\n\t\t\tif ( search ) {\n\t\t\t\tquery.search = search;\n\t\t\t}\n\t\t\tif ( exclude?.length ) {\n\t\t\t\tquery.exclude = exclude;\n\t\t\t}\n\t\t\tif ( parents?.length ) {\n\t\t\t\tquery.parent = parents;\n\t\t\t}\n\t\t\t// If sticky is not set, it will return all posts in the results.\n\t\t\t// If sticky is set to `only`, it will limit the results to sticky posts only.\n\t\t\t// If it is anything else, it will exclude sticky posts from results. For the record the value stored is `exclude`.\n\t\t\tif ( sticky ) {\n\t\t\t\tquery.sticky = sticky === 'only';\n\t\t\t}\n\t\t\t// If `inherit` is truthy, adjust conditionally the query to create a better preview.\n\t\t\tif ( inherit ) {\n\t\t\t\t// Change the post-type if needed.\n\t\t\t\tif ( templateSlug?.startsWith( 'archive-' ) ) {\n\t\t\t\t\tquery.postType = templateSlug.replace( 'archive-', '' );\n\t\t\t\t\tpostType = query.postType;\n\t\t\t\t} else if ( !! categorySlug && hasResolvedCategories ) {\n\t\t\t\t\tquery.taxQuery = {\n\t\t\t\t\t\tcategory: categories.map( ( { id } ) => id ),\n\t\t\t\t\t};\n\t\t\t\t\ttaxQuery = query.taxQuery;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// When we preview Query Loop blocks we should prefer the current\n\t\t\t// block's postType, which is passed through block context.\n\t\t\tconst usedPostType = previewPostType || postType;\n\t\t\treturn {\n\t\t\t\tposts: getEntityRecords( 'postType', usedPostType, {\n\t\t\t\t\t...query,\n\t\t\t\t\t...restQueryArgs,\n\t\t\t\t} ),\n\t\t\t\tblocks: getBlocks( clientId ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tperPage,\n\t\t\tpage,\n\t\t\toffset,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tclientId,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\tpostType,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttemplateSlug,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\trestQueryArgs,\n\t\t\tpreviewPostType,\n\t\t\tcategories,\n\t\t\tcategorySlug,\n\t\t\thasResolvedCategories,\n\t\t]\n\t);\n\tconst blockContexts = useMemo(\n\t\t() =>\n\t\t\tposts?.map( ( post ) => ( {\n\t\t\t\tpostType: post.type,\n\t\t\t\tpostId: post.id,\n\t\t\t} ) ),\n\t\t[ posts ]\n\t);\n\tconst hasLayoutFlex = layoutType === 'flex' && columns > 1;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'is-flex-container': hasLayoutFlex,\n\t\t\t[ `columns-${ columns }` ]: hasLayoutFlex,\n\t\t} ),\n\t} );\n\n\tif ( ! posts ) {\n\t\treturn (\n\t\t\t<p { ...blockProps }>\n\t\t\t\t<Spinner />\n\t\t\t</p>\n\t\t);\n\t}\n\n\tif ( ! posts.length ) {\n\t\treturn <p { ...blockProps }> { __( 'No results found.' ) }</p>;\n\t}\n\n\t// To avoid flicker when switching active block contexts, a preview is rendered\n\t// for each block context, but the preview for the active block context is hidden.\n\t// This ensures that when it is displayed again, the cached rendering of the\n\t// block preview is used, instead of having to re-render the preview from scratch.\n\treturn (\n\t\t<ul { ...blockProps }>\n\t\t\t{ blockContexts &&\n\t\t\t\tblockContexts.map( ( blockContext ) => (\n\t\t\t\t\t<BlockContextProvider\n\t\t\t\t\t\tkey={ blockContext.postId }\n\t\t\t\t\t\tvalue={ blockContext }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ blockContext.postId ===\n\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId ) ? (\n\t\t\t\t\t\t\t<PostTemplateInnerBlocks />\n\t\t\t\t\t\t) : null }\n\t\t\t\t\t\t<MemoizedPostTemplateBlockPreview\n\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\tblockContextId={ blockContext.postId }\n\t\t\t\t\t\t\tsetActiveBlockContextId={ setActiveBlockContextId }\n\t\t\t\t\t\t\tisHidden={\n\t\t\t\t\t\t\t\tblockContext.postId ===\n\t\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t) ) }\n\t\t</ul>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/post-template/edit.js"],"names":["classnames","memo","useMemo","useState","useSelect","__","BlockContextProvider","__experimentalUseBlockPreview","useBlockPreview","useBlockProps","useInnerBlocksProps","store","blockEditorStore","Spinner","coreStore","TEMPLATE","PostTemplateInnerBlocks","innerBlocksProps","className","template","PostTemplateBlockPreview","blocks","blockContextId","isHidden","setActiveBlockContextId","blockPreviewProps","props","handleOnClick","style","display","undefined","MemoizedPostTemplateBlockPreview","PostTemplateEdit","clientId","context","query","perPage","offset","postType","order","orderBy","author","search","exclude","sticky","inherit","taxQuery","parents","pages","restQueryArgs","queryContext","page","templateSlug","displayLayout","type","layoutType","columns","previewPostType","activeBlockContextId","posts","select","getEntityRecords","getTaxonomies","getBlocks","taxonomies","per_page","templateCategory","startsWith","_fields","slug","replace","orderby","builtTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","taxonomy","find","rest_base","keys","length","assign","parent","categories","id","usedPostType","blockContexts","map","post","postId","hasLayoutFlex","blockProps","blockContext"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { memo, useMemo, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockContextProvider,\n\t__experimentalUseBlockPreview as useBlockPreview,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Spinner } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\n\nconst TEMPLATE = [\n\t[ 'core/post-title' ],\n\t[ 'core/post-date' ],\n\t[ 'core/post-excerpt' ],\n];\n\nfunction PostTemplateInnerBlocks() {\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{ className: 'wp-block-post' },\n\t\t{ template: TEMPLATE }\n\t);\n\treturn <li { ...innerBlocksProps } />;\n}\n\nfunction PostTemplateBlockPreview( {\n\tblocks,\n\tblockContextId,\n\tisHidden,\n\tsetActiveBlockContextId,\n} ) {\n\tconst blockPreviewProps = useBlockPreview( {\n\t\tblocks,\n\t\tprops: {\n\t\t\tclassName: 'wp-block-post',\n\t\t},\n\t} );\n\n\tconst handleOnClick = () => {\n\t\tsetActiveBlockContextId( blockContextId );\n\t};\n\n\tconst style = {\n\t\tdisplay: isHidden ? 'none' : undefined,\n\t};\n\n\treturn (\n\t\t<li\n\t\t\t{ ...blockPreviewProps }\n\t\t\ttabIndex={ 0 }\n\t\t\t// eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role\n\t\t\trole=\"button\"\n\t\t\tonClick={ handleOnClick }\n\t\t\tonKeyPress={ handleOnClick }\n\t\t\tstyle={ style }\n\t\t/>\n\t);\n}\n\nconst MemoizedPostTemplateBlockPreview = memo( PostTemplateBlockPreview );\n\nexport default function PostTemplateEdit( {\n\tclientId,\n\tcontext: {\n\t\tquery: {\n\t\t\tperPage,\n\t\t\toffset,\n\t\t\tpostType,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\tpages,\n\t\t\t// We gather extra query args to pass to the REST API call.\n\t\t\t// This way extenders of Query Loop can add their own query args,\n\t\t\t// and have accurate previews in the editor.\n\t\t\t// Noting though that these args should either be supported by the\n\t\t\t// REST API or be handled by custom REST filters like `rest_{$this->post_type}_query`.\n\t\t\t...restQueryArgs\n\t\t} = {},\n\t\tqueryContext = [ { page: 1 } ],\n\t\ttemplateSlug,\n\t\tdisplayLayout: { type: layoutType = 'flex', columns = 1 } = {},\n\t\tpreviewPostType,\n\t},\n} ) {\n\tconst [ { page } ] = queryContext;\n\tconst [ activeBlockContextId, setActiveBlockContextId ] = useState();\n\tconst { posts, blocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomies } = select( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\t\t\tconst taxonomies = getTaxonomies( {\n\t\t\t\ttype: postType,\n\t\t\t\tper_page: -1,\n\t\t\t\tcontext: 'view',\n\t\t\t} );\n\t\t\tconst templateCategory =\n\t\t\t\tinherit &&\n\t\t\t\ttemplateSlug?.startsWith( 'category-' ) &&\n\t\t\t\tgetEntityRecords( 'taxonomy', 'category', {\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t\tper_page: 1,\n\t\t\t\t\t_fields: [ 'id' ],\n\t\t\t\t\tslug: templateSlug.replace( 'category-', '' ),\n\t\t\t\t} );\n\t\t\tconst query = {\n\t\t\t\toffset: perPage ? perPage * ( page - 1 ) + offset : 0,\n\t\t\t\torder,\n\t\t\t\torderby: orderBy,\n\t\t\t};\n\t\t\t// There is no need to build the taxQuery if we inherit.\n\t\t\tif ( taxQuery && ! inherit ) {\n\t\t\t\t// We have to build the tax query for the REST API and use as\n\t\t\t\t// keys the taxonomies `rest_base` with the `term ids` as values.\n\t\t\t\tconst builtTaxQuery = Object.entries( taxQuery ).reduce(\n\t\t\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\t\t\tconst taxonomy = taxonomies?.find(\n\t\t\t\t\t\t\t( { slug } ) => slug === taxonomySlug\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( taxonomy?.rest_base ) {\n\t\t\t\t\t\t\taccumulator[ taxonomy?.rest_base ] = terms;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn accumulator;\n\t\t\t\t\t},\n\t\t\t\t\t{}\n\t\t\t\t);\n\t\t\t\tif ( !! Object.keys( builtTaxQuery ).length ) {\n\t\t\t\t\tObject.assign( query, builtTaxQuery );\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( perPage ) {\n\t\t\t\tquery.per_page = perPage;\n\t\t\t}\n\t\t\tif ( author ) {\n\t\t\t\tquery.author = author;\n\t\t\t}\n\t\t\tif ( search ) {\n\t\t\t\tquery.search = search;\n\t\t\t}\n\t\t\tif ( exclude?.length ) {\n\t\t\t\tquery.exclude = exclude;\n\t\t\t}\n\t\t\tif ( parents?.length ) {\n\t\t\t\tquery.parent = parents;\n\t\t\t}\n\t\t\t// If sticky is not set, it will return all posts in the results.\n\t\t\t// If sticky is set to `only`, it will limit the results to sticky posts only.\n\t\t\t// If it is anything else, it will exclude sticky posts from results. For the record the value stored is `exclude`.\n\t\t\tif ( sticky ) {\n\t\t\t\tquery.sticky = sticky === 'only';\n\t\t\t}\n\t\t\t// If `inherit` is truthy, adjust conditionally the query to create a better preview.\n\t\t\tif ( inherit ) {\n\t\t\t\t// Change the post-type if needed.\n\t\t\t\tif ( templateSlug?.startsWith( 'archive-' ) ) {\n\t\t\t\t\tquery.postType = templateSlug.replace( 'archive-', '' );\n\t\t\t\t\tpostType = query.postType;\n\t\t\t\t} else if ( templateCategory ) {\n\t\t\t\t\tquery.categories = templateCategory[ 0 ]?.id;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// When we preview Query Loop blocks we should prefer the current\n\t\t\t// block's postType, which is passed through block context.\n\t\t\tconst usedPostType = previewPostType || postType;\n\t\t\treturn {\n\t\t\t\tposts: getEntityRecords( 'postType', usedPostType, {\n\t\t\t\t\t...query,\n\t\t\t\t\t...restQueryArgs,\n\t\t\t\t} ),\n\t\t\t\tblocks: getBlocks( clientId ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tperPage,\n\t\t\tpage,\n\t\t\toffset,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tclientId,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\tpostType,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttemplateSlug,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\trestQueryArgs,\n\t\t\tpreviewPostType,\n\t\t]\n\t);\n\tconst blockContexts = useMemo(\n\t\t() =>\n\t\t\tposts?.map( ( post ) => ( {\n\t\t\t\tpostType: post.type,\n\t\t\t\tpostId: post.id,\n\t\t\t} ) ),\n\t\t[ posts ]\n\t);\n\tconst hasLayoutFlex = layoutType === 'flex' && columns > 1;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'is-flex-container': hasLayoutFlex,\n\t\t\t[ `columns-${ columns }` ]: hasLayoutFlex,\n\t\t} ),\n\t} );\n\n\tif ( ! posts ) {\n\t\treturn (\n\t\t\t<p { ...blockProps }>\n\t\t\t\t<Spinner />\n\t\t\t</p>\n\t\t);\n\t}\n\n\tif ( ! posts.length ) {\n\t\treturn <p { ...blockProps }> { __( 'No results found.' ) }</p>;\n\t}\n\n\t// To avoid flicker when switching active block contexts, a preview is rendered\n\t// for each block context, but the preview for the active block context is hidden.\n\t// This ensures that when it is displayed again, the cached rendering of the\n\t// block preview is used, instead of having to re-render the preview from scratch.\n\treturn (\n\t\t<ul { ...blockProps }>\n\t\t\t{ blockContexts &&\n\t\t\t\tblockContexts.map( ( blockContext ) => (\n\t\t\t\t\t<BlockContextProvider\n\t\t\t\t\t\tkey={ blockContext.postId }\n\t\t\t\t\t\tvalue={ blockContext }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ blockContext.postId ===\n\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId ) ? (\n\t\t\t\t\t\t\t<PostTemplateInnerBlocks />\n\t\t\t\t\t\t) : null }\n\t\t\t\t\t\t<MemoizedPostTemplateBlockPreview\n\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\tblockContextId={ blockContext.postId }\n\t\t\t\t\t\t\tsetActiveBlockContextId={ setActiveBlockContextId }\n\t\t\t\t\t\t\tisHidden={\n\t\t\t\t\t\t\t\tblockContext.postId ===\n\t\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t) ) }\n\t\t</ul>\n\t);\n}\n"]}
@@ -1,16 +1,12 @@
1
1
  import { createElement, Fragment } from "@wordpress/element";
2
2
 
3
- /**
4
- * External dependencies
5
- */
6
- import { debounce } from 'lodash';
7
3
  /**
8
4
  * WordPress dependencies
9
5
  */
10
-
11
6
  import { PanelBody, TextControl, SelectControl, RangeControl, ToggleControl, Notice, __experimentalToolsPanel as ToolsPanel, __experimentalToolsPanelItem as ToolsPanelItem } from '@wordpress/components';
12
7
  import { __ } from '@wordpress/i18n';
13
8
  import { InspectorControls } from '@wordpress/block-editor';
9
+ import { debounce } from '@wordpress/compose';
14
10
  import { useEffect, useState, useCallback } from '@wordpress/element';
15
11
  /**
16
12
  * Internal dependencies
@@ -113,7 +109,7 @@ export default function QueryInspectorControls(_ref) {
113
109
  value: postType,
114
110
  label: __('Post type'),
115
111
  onChange: onPostTypeChange,
116
- help: __('WordPress contains different types of content and they are divided into collections called "Post types". By default there are a few different ones such as blog posts and pages, but plugins could add more.')
112
+ help: __('WordPress contains different types of content and they are divided into collections called Post types”. By default there are a few different ones such as blog posts and pages, but plugins could add more.')
117
113
  }), showColumnsControl && createElement(Fragment, null, createElement(RangeControl, {
118
114
  label: __('Columns'),
119
115
  value: displayLayout.columns,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/query/edit/inspector-controls/index.js"],"names":["debounce","PanelBody","TextControl","SelectControl","RangeControl","ToggleControl","Notice","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__","InspectorControls","useEffect","useState","useCallback","OrderControl","AuthorControl","ParentControl","TaxonomyControls","useTaxonomiesInfo","StickyControl","usePostTypes","useIsPostTypeHierarchical","useAllowedControls","isControlAllowed","QueryInspectorControls","attributes","setQuery","setDisplayLayout","query","displayLayout","order","orderBy","author","authorIds","postType","sticky","inherit","taxQuery","parents","allowedControls","showSticky","setShowSticky","postTypesTaxonomiesMap","postTypesSelectOptions","taxonomiesInfo","isPostTypeHierarchical","onPostTypeChange","newValue","updateQuery","supportedTaxonomies","updatedTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","includes","keys","length","undefined","querySearch","setQuerySearch","search","onChangeDebounced","cancel","showInheritControl","showPostTypeControl","showColumnsControl","type","showOrderControl","showStickyControl","showSettingsPanel","value","columns","Math","max","values","some"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { debounce } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tTextControl,\n\tSelectControl,\n\tRangeControl,\n\tToggleControl,\n\tNotice,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { useEffect, useState, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport OrderControl from './order-control';\nimport AuthorControl from './author-control';\nimport ParentControl from './parent-control';\nimport { TaxonomyControls, useTaxonomiesInfo } from './taxonomy-controls';\nimport StickyControl from './sticky-control';\nimport {\n\tusePostTypes,\n\tuseIsPostTypeHierarchical,\n\tuseAllowedControls,\n\tisControlAllowed,\n} from '../../utils';\n\nexport default function QueryInspectorControls( {\n\tattributes,\n\tsetQuery,\n\tsetDisplayLayout,\n} ) {\n\tconst { query, displayLayout } = attributes;\n\tconst {\n\t\torder,\n\t\torderBy,\n\t\tauthor: authorIds,\n\t\tpostType,\n\t\tsticky,\n\t\tinherit,\n\t\ttaxQuery,\n\t\tparents,\n\t} = query;\n\tconst allowedControls = useAllowedControls( attributes );\n\tconst [ showSticky, setShowSticky ] = useState( postType === 'post' );\n\tconst { postTypesTaxonomiesMap, postTypesSelectOptions } = usePostTypes();\n\tconst taxonomiesInfo = useTaxonomiesInfo( postType );\n\tconst isPostTypeHierarchical = useIsPostTypeHierarchical( postType );\n\tuseEffect( () => {\n\t\tsetShowSticky( postType === 'post' );\n\t}, [ postType ] );\n\tconst onPostTypeChange = ( newValue ) => {\n\t\tconst updateQuery = { postType: newValue };\n\t\t// We need to dynamically update the `taxQuery` property,\n\t\t// by removing any not supported taxonomy from the query.\n\t\tconst supportedTaxonomies = postTypesTaxonomiesMap[ newValue ];\n\t\tconst updatedTaxQuery = Object.entries( taxQuery || {} ).reduce(\n\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\tif ( supportedTaxonomies.includes( taxonomySlug ) ) {\n\t\t\t\t\taccumulator[ taxonomySlug ] = terms;\n\t\t\t\t}\n\t\t\t\treturn accumulator;\n\t\t\t},\n\t\t\t{}\n\t\t);\n\t\tupdateQuery.taxQuery = !! Object.keys( updatedTaxQuery ).length\n\t\t\t? updatedTaxQuery\n\t\t\t: undefined;\n\n\t\tif ( newValue !== 'post' ) {\n\t\t\tupdateQuery.sticky = '';\n\t\t}\n\t\t// We need to reset `parents` because they are tied to each post type.\n\t\tupdateQuery.parents = [];\n\t\tsetQuery( updateQuery );\n\t};\n\tconst [ querySearch, setQuerySearch ] = useState( query.search );\n\tconst onChangeDebounced = useCallback(\n\t\tdebounce( () => {\n\t\t\tif ( query.search !== querySearch ) {\n\t\t\t\tsetQuery( { search: querySearch } );\n\t\t\t}\n\t\t}, 250 ),\n\t\t[ querySearch, query.search ]\n\t);\n\tuseEffect( () => {\n\t\tonChangeDebounced();\n\t\treturn onChangeDebounced.cancel;\n\t}, [ querySearch, onChangeDebounced ] );\n\tconst showInheritControl = isControlAllowed( allowedControls, 'inherit' );\n\tconst showPostTypeControl =\n\t\t! inherit && isControlAllowed( allowedControls, 'postType' );\n\tconst showColumnsControl = displayLayout?.type === 'flex';\n\tconst showOrderControl =\n\t\t! inherit && isControlAllowed( allowedControls, 'order' );\n\tconst showStickyControl =\n\t\t! inherit &&\n\t\tshowSticky &&\n\t\tisControlAllowed( allowedControls, 'sticky' );\n\tconst showSettingsPanel =\n\t\tshowInheritControl ||\n\t\tshowPostTypeControl ||\n\t\tshowColumnsControl ||\n\t\tshowOrderControl ||\n\t\tshowStickyControl;\n\treturn (\n\t\t<>\n\t\t\t{ showSettingsPanel && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t{ showInheritControl && (\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Inherit query from template' ) }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Toggle to use the global query context that is set with the current template, such as an archive or search. Disable to customize the settings independently.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tchecked={ !! inherit }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetQuery( { inherit: !! value } )\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{ showPostTypeControl && (\n\t\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t\toptions={ postTypesSelectOptions }\n\t\t\t\t\t\t\t\tvalue={ postType }\n\t\t\t\t\t\t\t\tlabel={ __( 'Post type' ) }\n\t\t\t\t\t\t\t\tonChange={ onPostTypeChange }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'WordPress contains different types of content and they are divided into collections called \"Post types\". By default there are a few different ones such as blog posts and pages, but plugins could add more.'\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{ showColumnsControl && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\t\t\tvalue={ displayLayout.columns }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\tsetDisplayLayout( { columns: value } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\t\t\t\tmax={ Math.max( 6, displayLayout.columns ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ displayLayout.columns > 6 && (\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\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'This column count exceeds the recommended amount and may cause visual breakage.'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Notice>\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{ showOrderControl && (\n\t\t\t\t\t\t\t<OrderControl\n\t\t\t\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showStickyControl && (\n\t\t\t\t\t\t\t<StickyControl\n\t\t\t\t\t\t\t\tvalue={ sticky }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetQuery( { sticky: value } )\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</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t{ ! inherit && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<ToolsPanel\n\t\t\t\t\t\tclassName=\"block-library-query-toolspanel__filters\"\n\t\t\t\t\t\tlabel={ __( 'Filters' ) }\n\t\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\t\tsetQuery( {\n\t\t\t\t\t\t\t\tauthor: '',\n\t\t\t\t\t\t\t\tparents: [],\n\t\t\t\t\t\t\t\tsearch: '',\n\t\t\t\t\t\t\t\ttaxQuery: null,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\tsetQuerySearch( '' );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ !! taxonomiesInfo?.length &&\n\t\t\t\t\t\t\tisControlAllowed( allowedControls, 'taxQuery' ) && (\n\t\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Taxonomies' ) }\n\t\t\t\t\t\t\t\t\thasValue={ () =>\n\t\t\t\t\t\t\t\t\t\tObject.values( taxQuery || {} ).some(\n\t\t\t\t\t\t\t\t\t\t\t( terms ) => !! terms.length\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\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\t\tsetQuery( { taxQuery: null } )\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<TaxonomyControls\n\t\t\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\t\t\tquery={ query }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isControlAllowed( allowedControls, 'author' ) && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\thasValue={ () => !! authorIds }\n\t\t\t\t\t\t\t\tlabel={ __( 'Authors' ) }\n\t\t\t\t\t\t\t\tonDeselect={ () => setQuery( { author: '' } ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<AuthorControl\n\t\t\t\t\t\t\t\t\tvalue={ authorIds }\n\t\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isControlAllowed( allowedControls, 'search' ) && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\thasValue={ () => !! querySearch }\n\t\t\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\t\t\tonDeselect={ () => setQuerySearch( '' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\t\t\t\tvalue={ querySearch }\n\t\t\t\t\t\t\t\t\tonChange={ setQuerySearch }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isPostTypeHierarchical &&\n\t\t\t\t\t\t\t! isControlAllowed(\n\t\t\t\t\t\t\t\tallowedControls,\n\t\t\t\t\t\t\t\t'parents'\n\t\t\t\t\t\t\t) && (\n\t\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\t\thasValue={ () => !! parents?.length }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Parents' ) }\n\t\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\t\tsetQuery( { parents: [] } )\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<ParentControl\n\t\t\t\t\t\t\t\t\t\tparents={ parents }\n\t\t\t\t\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolsPanel>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/query/edit/inspector-controls/index.js"],"names":["PanelBody","TextControl","SelectControl","RangeControl","ToggleControl","Notice","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__","InspectorControls","debounce","useEffect","useState","useCallback","OrderControl","AuthorControl","ParentControl","TaxonomyControls","useTaxonomiesInfo","StickyControl","usePostTypes","useIsPostTypeHierarchical","useAllowedControls","isControlAllowed","QueryInspectorControls","attributes","setQuery","setDisplayLayout","query","displayLayout","order","orderBy","author","authorIds","postType","sticky","inherit","taxQuery","parents","allowedControls","showSticky","setShowSticky","postTypesTaxonomiesMap","postTypesSelectOptions","taxonomiesInfo","isPostTypeHierarchical","onPostTypeChange","newValue","updateQuery","supportedTaxonomies","updatedTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","includes","keys","length","undefined","querySearch","setQuerySearch","search","onChangeDebounced","cancel","showInheritControl","showPostTypeControl","showColumnsControl","type","showOrderControl","showStickyControl","showSettingsPanel","value","columns","Math","max","values","some"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tTextControl,\n\tSelectControl,\n\tRangeControl,\n\tToggleControl,\n\tNotice,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { debounce } from '@wordpress/compose';\nimport { useEffect, useState, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport OrderControl from './order-control';\nimport AuthorControl from './author-control';\nimport ParentControl from './parent-control';\nimport { TaxonomyControls, useTaxonomiesInfo } from './taxonomy-controls';\nimport StickyControl from './sticky-control';\nimport {\n\tusePostTypes,\n\tuseIsPostTypeHierarchical,\n\tuseAllowedControls,\n\tisControlAllowed,\n} from '../../utils';\n\nexport default function QueryInspectorControls( {\n\tattributes,\n\tsetQuery,\n\tsetDisplayLayout,\n} ) {\n\tconst { query, displayLayout } = attributes;\n\tconst {\n\t\torder,\n\t\torderBy,\n\t\tauthor: authorIds,\n\t\tpostType,\n\t\tsticky,\n\t\tinherit,\n\t\ttaxQuery,\n\t\tparents,\n\t} = query;\n\tconst allowedControls = useAllowedControls( attributes );\n\tconst [ showSticky, setShowSticky ] = useState( postType === 'post' );\n\tconst { postTypesTaxonomiesMap, postTypesSelectOptions } = usePostTypes();\n\tconst taxonomiesInfo = useTaxonomiesInfo( postType );\n\tconst isPostTypeHierarchical = useIsPostTypeHierarchical( postType );\n\tuseEffect( () => {\n\t\tsetShowSticky( postType === 'post' );\n\t}, [ postType ] );\n\tconst onPostTypeChange = ( newValue ) => {\n\t\tconst updateQuery = { postType: newValue };\n\t\t// We need to dynamically update the `taxQuery` property,\n\t\t// by removing any not supported taxonomy from the query.\n\t\tconst supportedTaxonomies = postTypesTaxonomiesMap[ newValue ];\n\t\tconst updatedTaxQuery = Object.entries( taxQuery || {} ).reduce(\n\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\tif ( supportedTaxonomies.includes( taxonomySlug ) ) {\n\t\t\t\t\taccumulator[ taxonomySlug ] = terms;\n\t\t\t\t}\n\t\t\t\treturn accumulator;\n\t\t\t},\n\t\t\t{}\n\t\t);\n\t\tupdateQuery.taxQuery = !! Object.keys( updatedTaxQuery ).length\n\t\t\t? updatedTaxQuery\n\t\t\t: undefined;\n\n\t\tif ( newValue !== 'post' ) {\n\t\t\tupdateQuery.sticky = '';\n\t\t}\n\t\t// We need to reset `parents` because they are tied to each post type.\n\t\tupdateQuery.parents = [];\n\t\tsetQuery( updateQuery );\n\t};\n\tconst [ querySearch, setQuerySearch ] = useState( query.search );\n\tconst onChangeDebounced = useCallback(\n\t\tdebounce( () => {\n\t\t\tif ( query.search !== querySearch ) {\n\t\t\t\tsetQuery( { search: querySearch } );\n\t\t\t}\n\t\t}, 250 ),\n\t\t[ querySearch, query.search ]\n\t);\n\tuseEffect( () => {\n\t\tonChangeDebounced();\n\t\treturn onChangeDebounced.cancel;\n\t}, [ querySearch, onChangeDebounced ] );\n\tconst showInheritControl = isControlAllowed( allowedControls, 'inherit' );\n\tconst showPostTypeControl =\n\t\t! inherit && isControlAllowed( allowedControls, 'postType' );\n\tconst showColumnsControl = displayLayout?.type === 'flex';\n\tconst showOrderControl =\n\t\t! inherit && isControlAllowed( allowedControls, 'order' );\n\tconst showStickyControl =\n\t\t! inherit &&\n\t\tshowSticky &&\n\t\tisControlAllowed( allowedControls, 'sticky' );\n\tconst showSettingsPanel =\n\t\tshowInheritControl ||\n\t\tshowPostTypeControl ||\n\t\tshowColumnsControl ||\n\t\tshowOrderControl ||\n\t\tshowStickyControl;\n\treturn (\n\t\t<>\n\t\t\t{ showSettingsPanel && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t{ showInheritControl && (\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Inherit query from template' ) }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Toggle to use the global query context that is set with the current template, such as an archive or search. Disable to customize the settings independently.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tchecked={ !! inherit }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetQuery( { inherit: !! value } )\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{ showPostTypeControl && (\n\t\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t\toptions={ postTypesSelectOptions }\n\t\t\t\t\t\t\t\tvalue={ postType }\n\t\t\t\t\t\t\t\tlabel={ __( 'Post type' ) }\n\t\t\t\t\t\t\t\tonChange={ onPostTypeChange }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'WordPress contains different types of content and they are divided into collections called “Post types”. By default there are a few different ones such as blog posts and pages, but plugins could add more.'\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{ showColumnsControl && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\t\t\tvalue={ displayLayout.columns }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\tsetDisplayLayout( { columns: value } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\t\t\t\tmax={ Math.max( 6, displayLayout.columns ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ displayLayout.columns > 6 && (\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\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'This column count exceeds the recommended amount and may cause visual breakage.'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Notice>\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{ showOrderControl && (\n\t\t\t\t\t\t\t<OrderControl\n\t\t\t\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showStickyControl && (\n\t\t\t\t\t\t\t<StickyControl\n\t\t\t\t\t\t\t\tvalue={ sticky }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetQuery( { sticky: value } )\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</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t{ ! inherit && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<ToolsPanel\n\t\t\t\t\t\tclassName=\"block-library-query-toolspanel__filters\"\n\t\t\t\t\t\tlabel={ __( 'Filters' ) }\n\t\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\t\tsetQuery( {\n\t\t\t\t\t\t\t\tauthor: '',\n\t\t\t\t\t\t\t\tparents: [],\n\t\t\t\t\t\t\t\tsearch: '',\n\t\t\t\t\t\t\t\ttaxQuery: null,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\tsetQuerySearch( '' );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ !! taxonomiesInfo?.length &&\n\t\t\t\t\t\t\tisControlAllowed( allowedControls, 'taxQuery' ) && (\n\t\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Taxonomies' ) }\n\t\t\t\t\t\t\t\t\thasValue={ () =>\n\t\t\t\t\t\t\t\t\t\tObject.values( taxQuery || {} ).some(\n\t\t\t\t\t\t\t\t\t\t\t( terms ) => !! terms.length\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\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\t\tsetQuery( { taxQuery: null } )\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<TaxonomyControls\n\t\t\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\t\t\tquery={ query }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isControlAllowed( allowedControls, 'author' ) && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\thasValue={ () => !! authorIds }\n\t\t\t\t\t\t\t\tlabel={ __( 'Authors' ) }\n\t\t\t\t\t\t\t\tonDeselect={ () => setQuery( { author: '' } ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<AuthorControl\n\t\t\t\t\t\t\t\t\tvalue={ authorIds }\n\t\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isControlAllowed( allowedControls, 'search' ) && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\thasValue={ () => !! querySearch }\n\t\t\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\t\t\tonDeselect={ () => setQuerySearch( '' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\t\t\t\tvalue={ querySearch }\n\t\t\t\t\t\t\t\t\tonChange={ setQuerySearch }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isPostTypeHierarchical &&\n\t\t\t\t\t\t\t! isControlAllowed(\n\t\t\t\t\t\t\t\tallowedControls,\n\t\t\t\t\t\t\t\t'parents'\n\t\t\t\t\t\t\t) && (\n\t\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\t\thasValue={ () => !! parents?.length }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Parents' ) }\n\t\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\t\tsetQuery( { parents: [] } )\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<ParentControl\n\t\t\t\t\t\t\t\t\t\tparents={ parents }\n\t\t\t\t\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolsPanel>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
@@ -25,7 +25,7 @@ export default function StickyControl(_ref) {
25
25
  options: stickyOptions,
26
26
  value: value,
27
27
  onChange: onChange,
28
- help: __('Blog posts can be "stickied", a feature that places them at the top of the front page of posts, keeping it there until new sticky posts are published.')
28
+ help: __('Blog posts can be stickied”, a feature that places them at the top of the front page of posts, keeping it there until new sticky posts are published.')
29
29
  });
30
30
  }
31
31
  //# sourceMappingURL=sticky-control.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/query/edit/inspector-controls/sticky-control.js"],"names":["SelectControl","__","stickyOptions","label","value","StickyControl","onChange"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,aAAT,QAA8B,uBAA9B;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,MAAMC,aAAa,GAAG,CACrB;AAAEC,EAAAA,KAAK,EAAEF,EAAE,CAAE,SAAF,CAAX;AAA0BG,EAAAA,KAAK,EAAE;AAAjC,CADqB,EAErB;AAAED,EAAAA,KAAK,EAAEF,EAAE,CAAE,SAAF,CAAX;AAA0BG,EAAAA,KAAK,EAAE;AAAjC,CAFqB,EAGrB;AAAED,EAAAA,KAAK,EAAEF,EAAE,CAAE,MAAF,CAAX;AAAuBG,EAAAA,KAAK,EAAE;AAA9B,CAHqB,CAAtB;AAMA,eAAe,SAASC,aAAT,OAA8C;AAAA,MAAtB;AAAED,IAAAA,KAAF;AAASE,IAAAA;AAAT,GAAsB;AAC5D,SACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGL,EAAE,CAAE,cAAF,CADX;AAEC,IAAA,OAAO,EAAGC,aAFX;AAGC,IAAA,KAAK,EAAGE,KAHT;AAIC,IAAA,QAAQ,EAAGE,QAJZ;AAKC,IAAA,IAAI,EAAGL,EAAE,CACR,wJADQ;AALV,IADD;AAWA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nconst stickyOptions = [\n\t{ label: __( 'Include' ), value: '' },\n\t{ label: __( 'Exclude' ), value: 'exclude' },\n\t{ label: __( 'Only' ), value: 'only' },\n];\n\nexport default function StickyControl( { value, onChange } ) {\n\treturn (\n\t\t<SelectControl\n\t\t\tlabel={ __( 'Sticky posts' ) }\n\t\t\toptions={ stickyOptions }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\thelp={ __(\n\t\t\t\t'Blog posts can be \"stickied\", a feature that places them at the top of the front page of posts, keeping it there until new sticky posts are published.'\n\t\t\t) }\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/query/edit/inspector-controls/sticky-control.js"],"names":["SelectControl","__","stickyOptions","label","value","StickyControl","onChange"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,aAAT,QAA8B,uBAA9B;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,MAAMC,aAAa,GAAG,CACrB;AAAEC,EAAAA,KAAK,EAAEF,EAAE,CAAE,SAAF,CAAX;AAA0BG,EAAAA,KAAK,EAAE;AAAjC,CADqB,EAErB;AAAED,EAAAA,KAAK,EAAEF,EAAE,CAAE,SAAF,CAAX;AAA0BG,EAAAA,KAAK,EAAE;AAAjC,CAFqB,EAGrB;AAAED,EAAAA,KAAK,EAAEF,EAAE,CAAE,MAAF,CAAX;AAAuBG,EAAAA,KAAK,EAAE;AAA9B,CAHqB,CAAtB;AAMA,eAAe,SAASC,aAAT,OAA8C;AAAA,MAAtB;AAAED,IAAAA,KAAF;AAASE,IAAAA;AAAT,GAAsB;AAC5D,SACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGL,EAAE,CAAE,cAAF,CADX;AAEC,IAAA,OAAO,EAAGC,aAFX;AAGC,IAAA,KAAK,EAAGE,KAHT;AAIC,IAAA,QAAQ,EAAGE,QAJZ;AAKC,IAAA,IAAI,EAAGL,EAAE,CACR,wJADQ;AALV,IADD;AAWA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nconst stickyOptions = [\n\t{ label: __( 'Include' ), value: '' },\n\t{ label: __( 'Exclude' ), value: 'exclude' },\n\t{ label: __( 'Only' ), value: 'only' },\n];\n\nexport default function StickyControl( { value, onChange } ) {\n\treturn (\n\t\t<SelectControl\n\t\t\tlabel={ __( 'Sticky posts' ) }\n\t\t\toptions={ stickyOptions }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\thelp={ __(\n\t\t\t\t'Blog posts can be stickied”, a feature that places them at the top of the front page of posts, keeping it there until new sticky posts are published.'\n\t\t\t) }\n\t\t/>\n\t);\n}\n"]}
@@ -10,7 +10,7 @@ import { useBlockProps, store as blockEditorStore, __experimentalBlockVariationP
10
10
  import { Button, Placeholder } from '@wordpress/components';
11
11
  import { __ } from '@wordpress/i18n';
12
12
  export default function QueryPlaceholder(_ref) {
13
- var _blockType$icon;
13
+ var _matchingVariation$ic, _blockType$icon;
14
14
 
15
15
  let {
16
16
  attributes,
@@ -42,7 +42,7 @@ export default function QueryPlaceholder(_ref) {
42
42
  };
43
43
  }, [name, clientId]);
44
44
  const matchingVariation = getMatchingVariation(attributes, allVariations);
45
- const icon = (matchingVariation === null || matchingVariation === void 0 ? void 0 : matchingVariation.icon) || (blockType === null || blockType === void 0 ? void 0 : (_blockType$icon = blockType.icon) === null || _blockType$icon === void 0 ? void 0 : _blockType$icon.src);
45
+ const icon = (matchingVariation === null || matchingVariation === void 0 ? void 0 : (_matchingVariation$ic = matchingVariation.icon) === null || _matchingVariation$ic === void 0 ? void 0 : _matchingVariation$ic.src) || (matchingVariation === null || matchingVariation === void 0 ? void 0 : matchingVariation.icon) || (blockType === null || blockType === void 0 ? void 0 : (_blockType$icon = blockType.icon) === null || _blockType$icon === void 0 ? void 0 : _blockType$icon.src);
46
46
  const label = (matchingVariation === null || matchingVariation === void 0 ? void 0 : matchingVariation.title) || (blockType === null || blockType === void 0 ? void 0 : blockType.title);
47
47
 
48
48
  if (isStartingBlank) {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/query/edit/query-placeholder.js"],"names":["useSelect","useDispatch","createBlocksFromInnerBlocksTemplate","store","blocksStore","useState","useBlockProps","blockEditorStore","__experimentalBlockVariationPicker","__experimentalGetMatchingVariation","getMatchingVariation","Button","Placeholder","__","QueryPlaceholder","attributes","clientId","name","openPatternSelectionModal","setAttributes","isStartingBlank","setIsStartingBlank","blockProps","blockType","allVariations","hasPatterns","select","getBlockVariations","getBlockType","getBlockRootClientId","__experimentalGetPatternsByBlockTypes","rootClientId","length","matchingVariation","icon","src","label","title","QueryVariationPicker","defaultVariation","scopeVariations","getDefaultBlockVariation","replaceInnerBlocks","nextVariation","query","postType","innerBlocks"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tcreateBlocksFromInnerBlocksTemplate,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport { useState } from '@wordpress/element';\nimport {\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalBlockVariationPicker,\n\t__experimentalGetMatchingVariation as getMatchingVariation,\n} from '@wordpress/block-editor';\nimport { Button, Placeholder } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nexport default function QueryPlaceholder( {\n\tattributes,\n\tclientId,\n\tname,\n\topenPatternSelectionModal,\n\tsetAttributes,\n} ) {\n\tconst [ isStartingBlank, setIsStartingBlank ] = useState( false );\n\tconst blockProps = useBlockProps();\n\n\tconst { blockType, allVariations, hasPatterns } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockVariations, getBlockType } = select( blocksStore );\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\t__experimentalGetPatternsByBlockTypes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tallVariations: getBlockVariations( name ),\n\t\t\t\thasPatterns: !! __experimentalGetPatternsByBlockTypes(\n\t\t\t\t\tname,\n\t\t\t\t\trootClientId\n\t\t\t\t).length,\n\t\t\t};\n\t\t},\n\t\t[ name, clientId ]\n\t);\n\n\tconst matchingVariation = getMatchingVariation( attributes, allVariations );\n\tconst icon = matchingVariation?.icon || blockType?.icon?.src;\n\tconst label = matchingVariation?.title || blockType?.title;\n\tif ( isStartingBlank ) {\n\t\treturn (\n\t\t\t<QueryVariationPicker\n\t\t\t\tclientId={ clientId }\n\t\t\t\tname={ name }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t/>\n\t\t);\n\t}\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<Placeholder\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tinstructions={ __(\n\t\t\t\t\t'Choose a pattern for the query loop or start blank.'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ !! hasPatterns && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ openPatternSelectionModal }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Choose' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsStartingBlank( true );\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Start blank' ) }\n\t\t\t\t</Button>\n\t\t\t</Placeholder>\n\t\t</div>\n\t);\n}\n\nfunction QueryVariationPicker( {\n\tclientId,\n\tname,\n\tattributes,\n\tsetAttributes,\n\ticon,\n\tlabel,\n} ) {\n\tconst { defaultVariation, scopeVariations } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockVariations,\n\t\t\t\tgetBlockType,\n\t\t\t\tgetDefaultBlockVariation,\n\t\t\t} = select( blocksStore );\n\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tdefaultVariation: getDefaultBlockVariation( name, 'block' ),\n\t\t\t\tscopeVariations: getBlockVariations( name, 'block' ),\n\t\t\t};\n\t\t},\n\t\t[ name ]\n\t);\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<__experimentalBlockVariationPicker\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tvariations={ scopeVariations }\n\t\t\t\tonSelect={ ( nextVariation = defaultVariation ) => {\n\t\t\t\t\tif ( nextVariation.attributes ) {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t...nextVariation.attributes,\n\t\t\t\t\t\t\tquery: {\n\t\t\t\t\t\t\t\t...nextVariation.attributes.query,\n\t\t\t\t\t\t\t\tpostType:\n\t\t\t\t\t\t\t\t\tattributes.query.postType ||\n\t\t\t\t\t\t\t\t\tnextVariation.attributes.query.postType,\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\tif ( nextVariation.innerBlocks ) {\n\t\t\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlocksFromInnerBlocksTemplate(\n\t\t\t\t\t\t\t\tnextVariation.innerBlocks\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tfalse\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/query/edit/query-placeholder.js"],"names":["useSelect","useDispatch","createBlocksFromInnerBlocksTemplate","store","blocksStore","useState","useBlockProps","blockEditorStore","__experimentalBlockVariationPicker","__experimentalGetMatchingVariation","getMatchingVariation","Button","Placeholder","__","QueryPlaceholder","attributes","clientId","name","openPatternSelectionModal","setAttributes","isStartingBlank","setIsStartingBlank","blockProps","blockType","allVariations","hasPatterns","select","getBlockVariations","getBlockType","getBlockRootClientId","__experimentalGetPatternsByBlockTypes","rootClientId","length","matchingVariation","icon","src","label","title","QueryVariationPicker","defaultVariation","scopeVariations","getDefaultBlockVariation","replaceInnerBlocks","nextVariation","query","postType","innerBlocks"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,WAApB,QAAuC,iBAAvC;AACA,SACCC,mCADD,EAECC,KAAK,IAAIC,WAFV,QAGO,mBAHP;AAIA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SACCC,aADD,EAECH,KAAK,IAAII,gBAFV,EAGCC,kCAHD,EAICC,kCAAkC,IAAIC,oBAJvC,QAKO,yBALP;AAMA,SAASC,MAAT,EAAiBC,WAAjB,QAAoC,uBAApC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,eAAe,SAASC,gBAAT,OAMX;AAAA;;AAAA,MANsC;AACzCC,IAAAA,UADyC;AAEzCC,IAAAA,QAFyC;AAGzCC,IAAAA,IAHyC;AAIzCC,IAAAA,yBAJyC;AAKzCC,IAAAA;AALyC,GAMtC;AACH,QAAM,CAAEC,eAAF,EAAmBC,kBAAnB,IAA0ChB,QAAQ,CAAE,KAAF,CAAxD;AACA,QAAMiB,UAAU,GAAGhB,aAAa,EAAhC;AAEA,QAAM;AAAEiB,IAAAA,SAAF;AAAaC,IAAAA,aAAb;AAA4BC,IAAAA;AAA5B,MAA4CzB,SAAS,CACxD0B,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA,kBAAF;AAAsBC,MAAAA;AAAtB,QAAuCF,MAAM,CAAEtB,WAAF,CAAnD;AACA,UAAM;AACLyB,MAAAA,oBADK;AAELC,MAAAA;AAFK,QAGFJ,MAAM,CAAEnB,gBAAF,CAHV;AAIA,UAAMwB,YAAY,GAAGF,oBAAoB,CAAEb,QAAF,CAAzC;AAEA,WAAO;AACNO,MAAAA,SAAS,EAAEK,YAAY,CAAEX,IAAF,CADjB;AAENO,MAAAA,aAAa,EAAEG,kBAAkB,CAAEV,IAAF,CAF3B;AAGNQ,MAAAA,WAAW,EAAE,CAAC,CAAEK,qCAAqC,CACpDb,IADoD,EAEpDc,YAFoD,CAArC,CAGdC;AANI,KAAP;AAQA,GAjByD,EAkB1D,CAAEf,IAAF,EAAQD,QAAR,CAlB0D,CAA3D;AAqBA,QAAMiB,iBAAiB,GAAGvB,oBAAoB,CAAEK,UAAF,EAAcS,aAAd,CAA9C;AACA,QAAMU,IAAI,GACT,CAAAD,iBAAiB,SAAjB,IAAAA,iBAAiB,WAAjB,qCAAAA,iBAAiB,CAAEC,IAAnB,gFAAyBC,GAAzB,MACAF,iBADA,aACAA,iBADA,uBACAA,iBAAiB,CAAEC,IADnB,MAEAX,SAFA,aAEAA,SAFA,0CAEAA,SAAS,CAAEW,IAFX,oDAEA,gBAAiBC,GAFjB,CADD;AAIA,QAAMC,KAAK,GAAG,CAAAH,iBAAiB,SAAjB,IAAAA,iBAAiB,WAAjB,YAAAA,iBAAiB,CAAEI,KAAnB,MAA4Bd,SAA5B,aAA4BA,SAA5B,uBAA4BA,SAAS,CAAEc,KAAvC,CAAd;;AACA,MAAKjB,eAAL,EAAuB;AACtB,WACC,cAAC,oBAAD;AACC,MAAA,QAAQ,EAAGJ,QADZ;AAEC,MAAA,IAAI,EAAGC,IAFR;AAGC,MAAA,UAAU,EAAGF,UAHd;AAIC,MAAA,aAAa,EAAGI,aAJjB;AAKC,MAAA,IAAI,EAAGe,IALR;AAMC,MAAA,KAAK,EAAGE;AANT,MADD;AAUA;;AACD,SACC,qBAAUd,UAAV,EACC,cAAC,WAAD;AACC,IAAA,IAAI,EAAGY,IADR;AAEC,IAAA,KAAK,EAAGE,KAFT;AAGC,IAAA,YAAY,EAAGvB,EAAE,CAChB,qDADgB;AAHlB,KAOG,CAAC,CAAEY,WAAH,IACD,cAAC,MAAD;AACC,IAAA,OAAO,EAAC,SADT;AAEC,IAAA,OAAO,EAAGP;AAFX,KAIGL,EAAE,CAAE,QAAF,CAJL,CARF,EAgBC,cAAC,MAAD;AACC,IAAA,OAAO,EAAC,WADT;AAEC,IAAA,OAAO,EAAG,MAAM;AACfQ,MAAAA,kBAAkB,CAAE,IAAF,CAAlB;AACA;AAJF,KAMGR,EAAE,CAAE,aAAF,CANL,CAhBD,CADD,CADD;AA6BA;;AAED,SAASyB,oBAAT,QAOI;AAAA,MAP2B;AAC9BtB,IAAAA,QAD8B;AAE9BC,IAAAA,IAF8B;AAG9BF,IAAAA,UAH8B;AAI9BI,IAAAA,aAJ8B;AAK9Be,IAAAA,IAL8B;AAM9BE,IAAAA;AAN8B,GAO3B;AACH,QAAM;AAAEG,IAAAA,gBAAF;AAAoBC,IAAAA;AAApB,MAAwCxC,SAAS,CACpD0B,MAAF,IAAc;AACb,UAAM;AACLC,MAAAA,kBADK;AAELC,MAAAA,YAFK;AAGLa,MAAAA;AAHK,QAIFf,MAAM,CAAEtB,WAAF,CAJV;AAMA,WAAO;AACNmB,MAAAA,SAAS,EAAEK,YAAY,CAAEX,IAAF,CADjB;AAENsB,MAAAA,gBAAgB,EAAEE,wBAAwB,CAAExB,IAAF,EAAQ,OAAR,CAFpC;AAGNuB,MAAAA,eAAe,EAAEb,kBAAkB,CAAEV,IAAF,EAAQ,OAAR;AAH7B,KAAP;AAKA,GAbqD,EActD,CAAEA,IAAF,CAdsD,CAAvD;AAgBA,QAAM;AAAEyB,IAAAA;AAAF,MAAyBzC,WAAW,CAAEM,gBAAF,CAA1C;AACA,QAAMe,UAAU,GAAGhB,aAAa,EAAhC;AACA,SACC,qBAAUgB,UAAV,EACC,cAAC,kCAAD;AACC,IAAA,IAAI,EAAGY,IADR;AAEC,IAAA,KAAK,EAAGE,KAFT;AAGC,IAAA,UAAU,EAAGI,eAHd;AAIC,IAAA,QAAQ,EAAG,YAAwC;AAAA,UAAtCG,aAAsC,uEAAtBJ,gBAAsB;;AAClD,UAAKI,aAAa,CAAC5B,UAAnB,EAAgC;AAC/BI,QAAAA,aAAa,CAAE,EACd,GAAGwB,aAAa,CAAC5B,UADH;AAEd6B,UAAAA,KAAK,EAAE,EACN,GAAGD,aAAa,CAAC5B,UAAd,CAAyB6B,KADtB;AAENC,YAAAA,QAAQ,EACP9B,UAAU,CAAC6B,KAAX,CAAiBC,QAAjB,IACAF,aAAa,CAAC5B,UAAd,CAAyB6B,KAAzB,CAA+BC;AAJ1B;AAFO,SAAF,CAAb;AASA;;AACD,UAAKF,aAAa,CAACG,WAAnB,EAAiC;AAChCJ,QAAAA,kBAAkB,CACjB1B,QADiB,EAEjBd,mCAAmC,CAClCyC,aAAa,CAACG,WADoB,CAFlB,EAKjB,KALiB,CAAlB;AAOA;AACD;AAzBF,IADD,CADD;AA+BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tcreateBlocksFromInnerBlocksTemplate,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport { useState } from '@wordpress/element';\nimport {\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalBlockVariationPicker,\n\t__experimentalGetMatchingVariation as getMatchingVariation,\n} from '@wordpress/block-editor';\nimport { Button, Placeholder } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nexport default function QueryPlaceholder( {\n\tattributes,\n\tclientId,\n\tname,\n\topenPatternSelectionModal,\n\tsetAttributes,\n} ) {\n\tconst [ isStartingBlank, setIsStartingBlank ] = useState( false );\n\tconst blockProps = useBlockProps();\n\n\tconst { blockType, allVariations, hasPatterns } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockVariations, getBlockType } = select( blocksStore );\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\t__experimentalGetPatternsByBlockTypes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tallVariations: getBlockVariations( name ),\n\t\t\t\thasPatterns: !! __experimentalGetPatternsByBlockTypes(\n\t\t\t\t\tname,\n\t\t\t\t\trootClientId\n\t\t\t\t).length,\n\t\t\t};\n\t\t},\n\t\t[ name, clientId ]\n\t);\n\n\tconst matchingVariation = getMatchingVariation( attributes, allVariations );\n\tconst icon =\n\t\tmatchingVariation?.icon?.src ||\n\t\tmatchingVariation?.icon ||\n\t\tblockType?.icon?.src;\n\tconst label = matchingVariation?.title || blockType?.title;\n\tif ( isStartingBlank ) {\n\t\treturn (\n\t\t\t<QueryVariationPicker\n\t\t\t\tclientId={ clientId }\n\t\t\t\tname={ name }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t/>\n\t\t);\n\t}\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<Placeholder\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tinstructions={ __(\n\t\t\t\t\t'Choose a pattern for the query loop or start blank.'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ !! hasPatterns && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ openPatternSelectionModal }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Choose' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsStartingBlank( true );\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Start blank' ) }\n\t\t\t\t</Button>\n\t\t\t</Placeholder>\n\t\t</div>\n\t);\n}\n\nfunction QueryVariationPicker( {\n\tclientId,\n\tname,\n\tattributes,\n\tsetAttributes,\n\ticon,\n\tlabel,\n} ) {\n\tconst { defaultVariation, scopeVariations } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockVariations,\n\t\t\t\tgetBlockType,\n\t\t\t\tgetDefaultBlockVariation,\n\t\t\t} = select( blocksStore );\n\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tdefaultVariation: getDefaultBlockVariation( name, 'block' ),\n\t\t\t\tscopeVariations: getBlockVariations( name, 'block' ),\n\t\t\t};\n\t\t},\n\t\t[ name ]\n\t);\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<__experimentalBlockVariationPicker\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tvariations={ scopeVariations }\n\t\t\t\tonSelect={ ( nextVariation = defaultVariation ) => {\n\t\t\t\t\tif ( nextVariation.attributes ) {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t...nextVariation.attributes,\n\t\t\t\t\t\t\tquery: {\n\t\t\t\t\t\t\t\t...nextVariation.attributes.query,\n\t\t\t\t\t\t\t\tpostType:\n\t\t\t\t\t\t\t\t\tattributes.query.postType ||\n\t\t\t\t\t\t\t\t\tnextVariation.attributes.query.postType,\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\tif ( nextVariation.innerBlocks ) {\n\t\t\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlocksFromInnerBlocksTemplate(\n\t\t\t\t\t\t\t\tnextVariation.innerBlocks\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tfalse\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"]}
@@ -62,7 +62,7 @@ export default function QueryTitleEdit(_ref) {
62
62
  showSearchTerm: !showSearchTerm
63
63
  }),
64
64
  checked: showSearchTerm
65
- }))), createElement(TagName, blockProps, showSearchTerm ? __('Search results for: "search term"') : __('Search results')));
65
+ }))), createElement(TagName, blockProps, showSearchTerm ? __('Search results for: search term') : __('Search results')));
66
66
  }
67
67
 
68
68
  return createElement(Fragment, null, createElement(BlockControls, {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/query-title/edit.js"],"names":["classnames","AlignmentControl","BlockControls","InspectorControls","useBlockProps","Warning","ToggleControl","PanelBody","__","HeadingLevelDropdown","SUPPORTED_TYPES","QueryTitleEdit","attributes","type","level","textAlign","showPrefix","showSearchTerm","setAttributes","TagName","blockProps","className","includes","titleElement","newLevel","nextAlign"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SACCC,gBADD,EAECC,aAFD,EAGCC,iBAHD,EAICC,aAJD,EAKCC,OALD,QAMO,yBANP;AAOA,SAASC,aAAT,EAAwBC,SAAxB,QAAyC,uBAAzC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,OAAOC,oBAAP,MAAiC,mCAAjC;AAEA,MAAMC,eAAe,GAAG,CAAE,SAAF,EAAa,QAAb,CAAxB;AAEA,eAAe,SAASC,cAAT,OAGX;AAAA,MAHoC;AACvCC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,IAAF;AAAQC,MAAAA,KAAR;AAAeC,MAAAA,SAAf;AAA0BC,MAAAA,UAA1B;AAAsCC,MAAAA;AAAtC,KAD2B;AAEvCC,IAAAA;AAFuC,GAGpC;AACH,QAAMC,OAAO,GAAI,IAAIL,KAAO,EAA5B;AACA,QAAMM,UAAU,GAAGhB,aAAa,CAAE;AACjCiB,IAAAA,SAAS,EAAErB,UAAU,CAAE,mCAAF,EAAuC;AAC3D,OAAG,kBAAkBe,SAAW,EAAhC,GAAqCA;AADsB,KAAvC;AADY,GAAF,CAAhC;;AAMA,MAAK,CAAEL,eAAe,CAACY,QAAhB,CAA0BT,IAA1B,CAAP,EAA0C;AACzC,WACC,qBAAUO,UAAV,EACC,cAAC,OAAD,QAAWZ,EAAE,CAAE,iCAAF,CAAb,CADD,CADD;AAKA;;AAED,MAAIe,YAAJ;;AACA,MAAKV,IAAI,KAAK,SAAd,EAA0B;AACzBU,IAAAA,YAAY,GACX,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,MAAA,KAAK,EAAGf,EAAE,CAAE,UAAF;AAArB,OACC,cAAC,aAAD;AACC,MAAA,KAAK,EAAGA,EAAE,CAAE,4BAAF,CADX;AAEC,MAAA,QAAQ,EAAG,MACVU,aAAa,CAAE;AAAEF,QAAAA,UAAU,EAAE,CAAEA;AAAhB,OAAF,CAHf;AAKC,MAAA,OAAO,EAAGA;AALX,MADD,CADD,CADD,EAYC,cAAC,OAAD,EAAcI,UAAd,EACGJ,UAAU,GACTR,EAAE,CAAE,oBAAF,CADO,GAETA,EAAE,CAAE,eAAF,CAHN,CAZD,CADD;AAoBA;;AAED,MAAKK,IAAI,KAAK,QAAd,EAAyB;AACxBU,IAAAA,YAAY,GACX,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,MAAA,KAAK,EAAGf,EAAE,CAAE,UAAF;AAArB,OACC,cAAC,aAAD;AACC,MAAA,KAAK,EAAGA,EAAE,CAAE,2BAAF,CADX;AAEC,MAAA,QAAQ,EAAG,MACVU,aAAa,CAAE;AACdD,QAAAA,cAAc,EAAE,CAAEA;AADJ,OAAF,CAHf;AAOC,MAAA,OAAO,EAAGA;AAPX,MADD,CADD,CADD,EAeC,cAAC,OAAD,EAAcG,UAAd,EACGH,cAAc,GACbT,EAAE,CAAE,mCAAF,CADW,GAEbA,EAAE,CAAE,gBAAF,CAHN,CAfD,CADD;AAuBA;;AAED,SACC,8BACC,cAAC,aAAD;AAAe,IAAA,KAAK,EAAC;AAArB,KACC,cAAC,oBAAD;AACC,IAAA,aAAa,EAAGM,KADjB;AAEC,IAAA,QAAQ,EAAKU,QAAF,IACVN,aAAa,CAAE;AAAEJ,MAAAA,KAAK,EAAEU;AAAT,KAAF;AAHf,IADD,EAOC,cAAC,gBAAD;AACC,IAAA,KAAK,EAAGT,SADT;AAEC,IAAA,QAAQ,EAAKU,SAAF,IAAiB;AAC3BP,MAAAA,aAAa,CAAE;AAAEH,QAAAA,SAAS,EAAEU;AAAb,OAAF,CAAb;AACA;AAJF,IAPD,CADD,EAeGF,YAfH,CADD;AAmBA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n} from '@wordpress/block-editor';\nimport { ToggleControl, PanelBody } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport HeadingLevelDropdown from '../heading/heading-level-dropdown';\n\nconst SUPPORTED_TYPES = [ 'archive', 'search' ];\n\nexport default function QueryTitleEdit( {\n\tattributes: { type, level, textAlign, showPrefix, showSearchTerm },\n\tsetAttributes,\n} ) {\n\tconst TagName = `h${ level }`;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( 'wp-block-query-title__placeholder', {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tif ( ! SUPPORTED_TYPES.includes( type ) ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>{ __( 'Provided type is not supported.' ) }</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tlet titleElement;\n\tif ( type === 'archive' ) {\n\t\ttitleElement = (\n\t\t\t<>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Show archive type in title' ) }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { showPrefix: ! showPrefix } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ showPrefix }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t{ showPrefix\n\t\t\t\t\t\t? __( 'Archive type: Name' )\n\t\t\t\t\t\t: __( 'Archive title' ) }\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\tif ( type === 'search' ) {\n\t\ttitleElement = (\n\t\t\t<>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Show search term in title' ) }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tshowSearchTerm: ! showSearchTerm,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ showSearchTerm }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t{ showSearchTerm\n\t\t\t\t\t\t? __( 'Search results for: \"search term\"' )\n\t\t\t\t\t\t: __( 'Search results' ) }\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\tselectedLevel={ level }\n\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t{ titleElement }\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/query-title/edit.js"],"names":["classnames","AlignmentControl","BlockControls","InspectorControls","useBlockProps","Warning","ToggleControl","PanelBody","__","HeadingLevelDropdown","SUPPORTED_TYPES","QueryTitleEdit","attributes","type","level","textAlign","showPrefix","showSearchTerm","setAttributes","TagName","blockProps","className","includes","titleElement","newLevel","nextAlign"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n} from '@wordpress/block-editor';\nimport { ToggleControl, PanelBody } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport HeadingLevelDropdown from '../heading/heading-level-dropdown';\n\nconst SUPPORTED_TYPES = [ 'archive', 'search' ];\n\nexport default function QueryTitleEdit( {\n\tattributes: { type, level, textAlign, showPrefix, showSearchTerm },\n\tsetAttributes,\n} ) {\n\tconst TagName = `h${ level }`;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( 'wp-block-query-title__placeholder', {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tif ( ! SUPPORTED_TYPES.includes( type ) ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>{ __( 'Provided type is not supported.' ) }</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tlet titleElement;\n\tif ( type === 'archive' ) {\n\t\ttitleElement = (\n\t\t\t<>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Show archive type in title' ) }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { showPrefix: ! showPrefix } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ showPrefix }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t{ showPrefix\n\t\t\t\t\t\t? __( 'Archive type: Name' )\n\t\t\t\t\t\t: __( 'Archive title' ) }\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\tif ( type === 'search' ) {\n\t\ttitleElement = (\n\t\t\t<>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Show search term in title' ) }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tshowSearchTerm: ! showSearchTerm,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ showSearchTerm }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t{ showSearchTerm\n\t\t\t\t\t\t? __( 'Search results for: search term' )\n\t\t\t\t\t\t: __( 'Search results' ) }\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\tselectedLevel={ level }\n\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t{ titleElement }\n\t\t</>\n\t);\n}\n"]}
@@ -19,9 +19,9 @@ const transforms = {
19
19
  anchor,
20
20
  fontSize,
21
21
  style
22
- }, createBlock('core/paragraph', {
22
+ }, [createBlock('core/paragraph', {
23
23
  content: value
24
- }));
24
+ })]);
25
25
  }
26
26
  }, {
27
27
  type: 'block',