@wordpress/block-library 9.18.0 → 9.19.1
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.
- package/CHANGELOG.md +6 -0
- package/build/cover/edit/index.js +3 -1
- package/build/cover/edit/index.js.map +1 -1
- package/build/form/edit.js +4 -2
- package/build/form/edit.js.map +1 -1
- package/build/image/view.js +4 -4
- package/build/image/view.js.map +1 -1
- package/build/latest-posts/edit.js +2 -1
- package/build/latest-posts/edit.js.map +1 -1
- package/build/navigation/use-template-part-area-label.js +7 -6
- package/build/navigation/use-template-part-area-label.js.map +1 -1
- package/build/navigation/view.js +2 -2
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-link/edit.js +2 -1
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-submenu/edit.js +2 -1
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/post-author/edit.js +1 -1
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-name/edit.js +2 -2
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-comments-count/index.js +8 -1
- package/build/post-comments-count/index.js.map +1 -1
- package/build/post-navigation-link/edit.js +1 -1
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +2 -0
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/order-control.js +3 -2
- package/build/query/edit/inspector-controls/order-control.js.map +1 -1
- package/build/query/utils.js +45 -0
- package/build/query/utils.js.map +1 -1
- package/build/query/view.js +2 -2
- package/build/query/view.js.map +1 -1
- package/build/query-total/index.js +2 -2
- package/build/query-total/index.js.map +1 -1
- package/build/search/view.js +2 -2
- package/build/search/view.js.map +1 -1
- package/build/site-logo/edit.js +2 -5
- package/build/site-logo/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +1 -1
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/utils/hooks.js +1 -1
- package/build/template-part/edit/utils/hooks.js.map +1 -1
- package/build/video/edit-common-settings.js +10 -3
- package/build/video/edit-common-settings.js.map +1 -1
- package/build-module/cover/edit/index.js +3 -1
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/form/edit.js +4 -2
- package/build-module/form/edit.js.map +1 -1
- package/build-module/image/view.js +5 -5
- package/build-module/image/view.js.map +1 -1
- package/build-module/latest-posts/edit.js +2 -1
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/navigation/use-template-part-area-label.js +7 -6
- package/build-module/navigation/use-template-part-area-label.js.map +1 -1
- package/build-module/navigation/view.js +3 -3
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-link/edit.js +2 -1
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +2 -1
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/post-author/edit.js +1 -1
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author-name/edit.js +2 -2
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-comments-count/index.js +8 -1
- package/build-module/post-comments-count/index.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +1 -1
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +3 -1
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/order-control.js +3 -2
- package/build-module/query/edit/inspector-controls/order-control.js.map +1 -1
- package/build-module/query/utils.js +44 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query/view.js +3 -3
- package/build-module/query/view.js.map +1 -1
- package/build-module/query-total/index.js +2 -2
- package/build-module/query-total/index.js.map +1 -1
- package/build-module/search/view.js +3 -3
- package/build-module/search/view.js.map +1 -1
- package/build-module/site-logo/edit.js +2 -5
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js +1 -1
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/utils/hooks.js +1 -1
- package/build-module/template-part/edit/utils/hooks.js.map +1 -1
- package/build-module/video/edit-common-settings.js +10 -3
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-style/editor-rtl.css +6 -9
- package/build-style/editor.css +6 -9
- package/build-style/navigation-link/editor-rtl.css +5 -9
- package/build-style/navigation-link/editor.css +5 -9
- package/build-style/post-comments-count/style-rtl.css +103 -0
- package/build-style/post-comments-count/style.css +103 -0
- package/build-style/pullquote/style-rtl.css +4 -0
- package/build-style/pullquote/style.css +4 -0
- package/build-style/social-link/editor-rtl.css +1 -0
- package/build-style/social-link/editor.css +1 -0
- package/build-style/style-rtl.css +8 -0
- package/build-style/style.css +8 -0
- package/package.json +35 -35
- package/src/cover/edit/index.js +2 -0
- package/src/cover/test/edit.js +6 -6
- package/src/form/edit.js +2 -0
- package/src/image/view.js +10 -5
- package/src/latest-posts/edit.js +1 -0
- package/src/navigation/use-template-part-area-label.js +6 -6
- package/src/navigation/view.js +8 -3
- package/src/navigation-link/edit.js +1 -0
- package/src/navigation-link/editor.scss +3 -24
- package/src/navigation-submenu/edit.js +1 -0
- package/src/post-author/edit.js +1 -1
- package/src/post-author-name/edit.js +4 -4
- package/src/post-comments-count/block.json +8 -1
- package/src/post-comments-count/style.scss +4 -0
- package/src/post-navigation-link/edit.js +1 -1
- package/src/pullquote/style.scss +4 -0
- package/src/query/edit/inspector-controls/index.js +3 -1
- package/src/query/edit/inspector-controls/order-control.js +9 -3
- package/src/query/utils.js +58 -0
- package/src/query/view.js +8 -3
- package/src/query-total/block.json +2 -2
- package/src/query-total/index.php +4 -2
- package/src/search/view.js +8 -3
- package/src/site-logo/edit.js +1 -5
- package/src/site-title/index.php +1 -1
- package/src/social-link/editor.scss +1 -0
- package/src/style.scss +1 -0
- package/src/template-part/edit/advanced-controls.js +1 -1
- package/src/template-part/edit/utils/hooks.js +1 -1
- package/src/template-part/index.php +3 -1
- package/src/video/edit-common-settings.js +11 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { store, getContext, getElement } from '@wordpress/interactivity';
|
|
4
|
+
import { store, getContext, getElement, withSyncEvent } from '@wordpress/interactivity';
|
|
5
5
|
const isValidLink = ref => ref && ref instanceof window.HTMLAnchorElement && ref.href && (!ref.target || ref.target === '_self') && ref.origin === window.location.origin;
|
|
6
6
|
const isValidEvent = event => event.button === 0 &&
|
|
7
7
|
// Left clicks only.
|
|
@@ -14,7 +14,7 @@ const isValidEvent = event => event.button === 0 &&
|
|
|
14
14
|
!event.shiftKey && !event.defaultPrevented;
|
|
15
15
|
store('core/query', {
|
|
16
16
|
actions: {
|
|
17
|
-
|
|
17
|
+
navigate: withSyncEvent(function* (event) {
|
|
18
18
|
const ctx = getContext();
|
|
19
19
|
const {
|
|
20
20
|
ref
|
|
@@ -32,7 +32,7 @@ store('core/query', {
|
|
|
32
32
|
const firstAnchor = `.wp-block-post-template a[href]`;
|
|
33
33
|
queryRef.querySelector(firstAnchor)?.focus();
|
|
34
34
|
}
|
|
35
|
-
},
|
|
35
|
+
}),
|
|
36
36
|
*prefetch() {
|
|
37
37
|
const {
|
|
38
38
|
ref
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["store","getContext","getElement","isValidLink","ref","window","HTMLAnchorElement","href","target","origin","location","isValidEvent","event","button","metaKey","ctrlKey","altKey","shiftKey","defaultPrevented","actions","navigate","ctx","queryRef","closest","preventDefault","url","firstAnchor","querySelector","focus","prefetch","callbacks","lock"],"sources":["@wordpress/block-library/src/query/view.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {
|
|
1
|
+
{"version":3,"names":["store","getContext","getElement","withSyncEvent","isValidLink","ref","window","HTMLAnchorElement","href","target","origin","location","isValidEvent","event","button","metaKey","ctrlKey","altKey","shiftKey","defaultPrevented","actions","navigate","ctx","queryRef","closest","preventDefault","url","firstAnchor","querySelector","focus","prefetch","callbacks","lock"],"sources":["@wordpress/block-library/src/query/view.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tstore,\n\tgetContext,\n\tgetElement,\n\twithSyncEvent,\n} from '@wordpress/interactivity';\n\nconst isValidLink = ( ref ) =>\n\tref &&\n\tref instanceof window.HTMLAnchorElement &&\n\tref.href &&\n\t( ! ref.target || ref.target === '_self' ) &&\n\tref.origin === window.location.origin;\n\nconst isValidEvent = ( event ) =>\n\tevent.button === 0 && // Left clicks only.\n\t! event.metaKey && // Open in new tab (Mac).\n\t! event.ctrlKey && // Open in new tab (Windows).\n\t! event.altKey && // Download.\n\t! event.shiftKey &&\n\t! event.defaultPrevented;\n\nstore(\n\t'core/query',\n\t{\n\t\tactions: {\n\t\t\tnavigate: withSyncEvent( function* ( event ) {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tconst queryRef = ref.closest(\n\t\t\t\t\t'.wp-block-query[data-wp-router-region]'\n\t\t\t\t);\n\n\t\t\t\tif ( isValidLink( ref ) && isValidEvent( event ) ) {\n\t\t\t\t\tevent.preventDefault();\n\n\t\t\t\t\tconst { actions } = yield import(\n\t\t\t\t\t\t'@wordpress/interactivity-router'\n\t\t\t\t\t);\n\t\t\t\t\tyield actions.navigate( ref.href );\n\t\t\t\t\tctx.url = ref.href;\n\n\t\t\t\t\t// Focus the first anchor of the Query block.\n\t\t\t\t\tconst firstAnchor = `.wp-block-post-template a[href]`;\n\t\t\t\t\tqueryRef.querySelector( firstAnchor )?.focus();\n\t\t\t\t}\n\t\t\t} ),\n\t\t\t*prefetch() {\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tif ( isValidLink( ref ) ) {\n\t\t\t\t\tconst { actions } = yield import(\n\t\t\t\t\t\t'@wordpress/interactivity-router'\n\t\t\t\t\t);\n\t\t\t\t\tyield actions.prefetch( ref.href );\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tcallbacks: {\n\t\t\t*prefetch() {\n\t\t\t\tconst { url } = getContext();\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tif ( url && isValidLink( ref ) ) {\n\t\t\t\t\tconst { actions } = yield import(\n\t\t\t\t\t\t'@wordpress/interactivity-router'\n\t\t\t\t\t);\n\t\t\t\t\tyield actions.prefetch( ref.href );\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t},\n\t{ lock: true }\n);\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,KAAK,EACLC,UAAU,EACVC,UAAU,EACVC,aAAa,QACP,0BAA0B;AAEjC,MAAMC,WAAW,GAAKC,GAAG,IACxBA,GAAG,IACHA,GAAG,YAAYC,MAAM,CAACC,iBAAiB,IACvCF,GAAG,CAACG,IAAI,KACN,CAAEH,GAAG,CAACI,MAAM,IAAIJ,GAAG,CAACI,MAAM,KAAK,OAAO,CAAE,IAC1CJ,GAAG,CAACK,MAAM,KAAKJ,MAAM,CAACK,QAAQ,CAACD,MAAM;AAEtC,MAAME,YAAY,GAAKC,KAAK,IAC3BA,KAAK,CAACC,MAAM,KAAK,CAAC;AAAI;AACtB,CAAED,KAAK,CAACE,OAAO;AAAI;AACnB,CAAEF,KAAK,CAACG,OAAO;AAAI;AACnB,CAAEH,KAAK,CAACI,MAAM;AAAI;AAClB,CAAEJ,KAAK,CAACK,QAAQ,IAChB,CAAEL,KAAK,CAACM,gBAAgB;AAEzBnB,KAAK,CACJ,YAAY,EACZ;EACCoB,OAAO,EAAE;IACRC,QAAQ,EAAElB,aAAa,CAAE,WAAYU,KAAK,EAAG;MAC5C,MAAMS,GAAG,GAAGrB,UAAU,CAAC,CAAC;MACxB,MAAM;QAAEI;MAAI,CAAC,GAAGH,UAAU,CAAC,CAAC;MAC5B,MAAMqB,QAAQ,GAAGlB,GAAG,CAACmB,OAAO,CAC3B,wCACD,CAAC;MAED,IAAKpB,WAAW,CAAEC,GAAI,CAAC,IAAIO,YAAY,CAAEC,KAAM,CAAC,EAAG;QAClDA,KAAK,CAACY,cAAc,CAAC,CAAC;QAEtB,MAAM;UAAEL;QAAQ,CAAC,GAAG,MAAM,MAAM,CAC/B,iCACD,CAAC;QACD,MAAMA,OAAO,CAACC,QAAQ,CAAEhB,GAAG,CAACG,IAAK,CAAC;QAClCc,GAAG,CAACI,GAAG,GAAGrB,GAAG,CAACG,IAAI;;QAElB;QACA,MAAMmB,WAAW,GAAG,iCAAiC;QACrDJ,QAAQ,CAACK,aAAa,CAAED,WAAY,CAAC,EAAEE,KAAK,CAAC,CAAC;MAC/C;IACD,CAAE,CAAC;IACH,CAACC,QAAQA,CAAA,EAAG;MACX,MAAM;QAAEzB;MAAI,CAAC,GAAGH,UAAU,CAAC,CAAC;MAC5B,IAAKE,WAAW,CAAEC,GAAI,CAAC,EAAG;QACzB,MAAM;UAAEe;QAAQ,CAAC,GAAG,MAAM,MAAM,CAC/B,iCACD,CAAC;QACD,MAAMA,OAAO,CAACU,QAAQ,CAAEzB,GAAG,CAACG,IAAK,CAAC;MACnC;IACD;EACD,CAAC;EACDuB,SAAS,EAAE;IACV,CAACD,QAAQA,CAAA,EAAG;MACX,MAAM;QAAEJ;MAAI,CAAC,GAAGzB,UAAU,CAAC,CAAC;MAC5B,MAAM;QAAEI;MAAI,CAAC,GAAGH,UAAU,CAAC,CAAC;MAC5B,IAAKwB,GAAG,IAAItB,WAAW,CAAEC,GAAI,CAAC,EAAG;QAChC,MAAM;UAAEe;QAAQ,CAAC,GAAG,MAAM,MAAM,CAC/B,iCACD,CAAC;QACD,MAAMA,OAAO,CAACU,QAAQ,CAAEzB,GAAG,CAACG,IAAK,CAAC;MACnC;IACD;EACD;AACD,CAAC,EACD;EAAEwB,IAAI,EAAE;AAAK,CACd,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["metadata","$schema","apiVersion","name","title","category","ancestor","description","textdomain","attributes","displayType","type","usesContext","supports","align","html","spacing","margin","padding","color","gradients","
|
|
1
|
+
{"version":3,"names":["metadata","$schema","apiVersion","name","title","category","ancestor","description","textdomain","attributes","displayType","type","usesContext","supports","align","html","spacing","margin","padding","color","gradients","__experimentalDefaultControls","background","text","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","__experimentalBorder","radius","width","style","edit","initBlock","queryTotal","settings","icon","init"],"sources":["@wordpress/block-library/src/query-total/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport initBlock from '../utils/init-block';\nimport { queryTotal } from './icons';\n\n/* Block settings */\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon: queryTotal,\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AAFA,MAAAA,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,WAAA;MAAAC,IAAA;MAAA;IAAA;EAAA;EAAAC,WAAA;EAAAC,QAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,OAAA;MAAAC,MAAA;MAAAC,OAAA;IAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAX,6BAAA;QAAAI,QAAA;MAAA;IAAA;IAAAQ,oBAAA;MAAAC,MAAA;MAAAf,KAAA;MAAAgB,KAAA;MAAAC,KAAA;MAAAf,6BAAA;QAAAa,MAAA;QAAAf,KAAA;QAAAgB,KAAA;QAAAC,KAAA;MAAA;IAAA;EAAA;EAAAA,KAAA;AAAA;AAIA,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,SAAS,MAAM,qBAAqB;AAC3C,SAASC,UAAU,QAAQ,SAAS;;AAEpC;AACA,MAAM;EAAEpC;AAAK,CAAC,GAAGH,QAAQ;AACzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAMqC,QAAQ,GAAG;EACvBC,IAAI,EAAEF,UAAU;EAChBF;AACD,CAAC;AAED,OAAO,MAAMK,IAAI,GAAGA,CAAA,KAAMJ,SAAS,CAAE;EAAEnC,IAAI;EAAEH,QAAQ;EAAEwC;AAAS,CAAE,CAAC","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { store, getContext, getElement } from '@wordpress/interactivity';
|
|
4
|
+
import { store, getContext, getElement, withSyncEvent } from '@wordpress/interactivity';
|
|
5
5
|
const {
|
|
6
6
|
actions
|
|
7
7
|
} = store('core/search', {
|
|
@@ -35,7 +35,7 @@ const {
|
|
|
35
35
|
}
|
|
36
36
|
},
|
|
37
37
|
actions: {
|
|
38
|
-
openSearchInput(event
|
|
38
|
+
openSearchInput: withSyncEvent(event => {
|
|
39
39
|
const ctx = getContext();
|
|
40
40
|
const {
|
|
41
41
|
ref
|
|
@@ -45,7 +45,7 @@ const {
|
|
|
45
45
|
ctx.isSearchInputVisible = true;
|
|
46
46
|
ref.parentElement.querySelector('input').focus();
|
|
47
47
|
}
|
|
48
|
-
},
|
|
48
|
+
}),
|
|
49
49
|
closeSearchInput() {
|
|
50
50
|
const ctx = getContext();
|
|
51
51
|
ctx.isSearchInputVisible = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["store","getContext","getElement","actions","state","ariaLabel","isSearchInputVisible","ariaLabelCollapsed","ariaLabelExpanded","ariaControls","inputId","type","tabindex","openSearchInput","event","ctx","ref","preventDefault","parentElement","querySelector","focus","closeSearchInput","handleSearchKeydown","key","handleSearchFocusout","contains","relatedTarget","target","window","document","activeElement","lock"],"sources":["@wordpress/block-library/src/search/view.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {
|
|
1
|
+
{"version":3,"names":["store","getContext","getElement","withSyncEvent","actions","state","ariaLabel","isSearchInputVisible","ariaLabelCollapsed","ariaLabelExpanded","ariaControls","inputId","type","tabindex","openSearchInput","event","ctx","ref","preventDefault","parentElement","querySelector","focus","closeSearchInput","handleSearchKeydown","key","handleSearchFocusout","contains","relatedTarget","target","window","document","activeElement","lock"],"sources":["@wordpress/block-library/src/search/view.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tstore,\n\tgetContext,\n\tgetElement,\n\twithSyncEvent,\n} from '@wordpress/interactivity';\n\nconst { actions } = store(\n\t'core/search',\n\t{\n\t\tstate: {\n\t\t\tget ariaLabel() {\n\t\t\t\tconst {\n\t\t\t\t\tisSearchInputVisible,\n\t\t\t\t\tariaLabelCollapsed,\n\t\t\t\t\tariaLabelExpanded,\n\t\t\t\t} = getContext();\n\t\t\t\treturn isSearchInputVisible\n\t\t\t\t\t? ariaLabelExpanded\n\t\t\t\t\t: ariaLabelCollapsed;\n\t\t\t},\n\t\t\tget ariaControls() {\n\t\t\t\tconst { isSearchInputVisible, inputId } = getContext();\n\t\t\t\treturn isSearchInputVisible ? null : inputId;\n\t\t\t},\n\t\t\tget type() {\n\t\t\t\tconst { isSearchInputVisible } = getContext();\n\t\t\t\treturn isSearchInputVisible ? 'submit' : 'button';\n\t\t\t},\n\t\t\tget tabindex() {\n\t\t\t\tconst { isSearchInputVisible } = getContext();\n\t\t\t\treturn isSearchInputVisible ? '0' : '-1';\n\t\t\t},\n\t\t},\n\t\tactions: {\n\t\t\topenSearchInput: withSyncEvent( ( event ) => {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tif ( ! ctx.isSearchInputVisible ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tctx.isSearchInputVisible = true;\n\t\t\t\t\tref.parentElement.querySelector( 'input' ).focus();\n\t\t\t\t}\n\t\t\t} ),\n\t\t\tcloseSearchInput() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tctx.isSearchInputVisible = false;\n\t\t\t},\n\t\t\thandleSearchKeydown( event ) {\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\t// If Escape close the menu.\n\t\t\t\tif ( event?.key === 'Escape' ) {\n\t\t\t\t\tactions.closeSearchInput();\n\t\t\t\t\tref.querySelector( 'button' ).focus();\n\t\t\t\t}\n\t\t\t},\n\t\t\thandleSearchFocusout( event ) {\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\t// If focus is outside search form, and in the document, close menu\n\t\t\t\t// event.target === The element losing focus\n\t\t\t\t// event.relatedTarget === The element receiving focus (if any)\n\t\t\t\t// When focusout is outside the document,\n\t\t\t\t// `window.document.activeElement` doesn't change.\n\t\t\t\tif (\n\t\t\t\t\t! ref.contains( event.relatedTarget ) &&\n\t\t\t\t\tevent.target !== window.document.activeElement\n\t\t\t\t) {\n\t\t\t\t\tactions.closeSearchInput();\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t},\n\t{ lock: true }\n);\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,KAAK,EACLC,UAAU,EACVC,UAAU,EACVC,aAAa,QACP,0BAA0B;AAEjC,MAAM;EAAEC;AAAQ,CAAC,GAAGJ,KAAK,CACxB,aAAa,EACb;EACCK,KAAK,EAAE;IACN,IAAIC,SAASA,CAAA,EAAG;MACf,MAAM;QACLC,oBAAoB;QACpBC,kBAAkB;QAClBC;MACD,CAAC,GAAGR,UAAU,CAAC,CAAC;MAChB,OAAOM,oBAAoB,GACxBE,iBAAiB,GACjBD,kBAAkB;IACtB,CAAC;IACD,IAAIE,YAAYA,CAAA,EAAG;MAClB,MAAM;QAAEH,oBAAoB;QAAEI;MAAQ,CAAC,GAAGV,UAAU,CAAC,CAAC;MACtD,OAAOM,oBAAoB,GAAG,IAAI,GAAGI,OAAO;IAC7C,CAAC;IACD,IAAIC,IAAIA,CAAA,EAAG;MACV,MAAM;QAAEL;MAAqB,CAAC,GAAGN,UAAU,CAAC,CAAC;MAC7C,OAAOM,oBAAoB,GAAG,QAAQ,GAAG,QAAQ;IAClD,CAAC;IACD,IAAIM,QAAQA,CAAA,EAAG;MACd,MAAM;QAAEN;MAAqB,CAAC,GAAGN,UAAU,CAAC,CAAC;MAC7C,OAAOM,oBAAoB,GAAG,GAAG,GAAG,IAAI;IACzC;EACD,CAAC;EACDH,OAAO,EAAE;IACRU,eAAe,EAAEX,aAAa,CAAIY,KAAK,IAAM;MAC5C,MAAMC,GAAG,GAAGf,UAAU,CAAC,CAAC;MACxB,MAAM;QAAEgB;MAAI,CAAC,GAAGf,UAAU,CAAC,CAAC;MAC5B,IAAK,CAAEc,GAAG,CAACT,oBAAoB,EAAG;QACjCQ,KAAK,CAACG,cAAc,CAAC,CAAC;QACtBF,GAAG,CAACT,oBAAoB,GAAG,IAAI;QAC/BU,GAAG,CAACE,aAAa,CAACC,aAAa,CAAE,OAAQ,CAAC,CAACC,KAAK,CAAC,CAAC;MACnD;IACD,CAAE,CAAC;IACHC,gBAAgBA,CAAA,EAAG;MAClB,MAAMN,GAAG,GAAGf,UAAU,CAAC,CAAC;MACxBe,GAAG,CAACT,oBAAoB,GAAG,KAAK;IACjC,CAAC;IACDgB,mBAAmBA,CAAER,KAAK,EAAG;MAC5B,MAAM;QAAEE;MAAI,CAAC,GAAGf,UAAU,CAAC,CAAC;MAC5B;MACA,IAAKa,KAAK,EAAES,GAAG,KAAK,QAAQ,EAAG;QAC9BpB,OAAO,CAACkB,gBAAgB,CAAC,CAAC;QAC1BL,GAAG,CAACG,aAAa,CAAE,QAAS,CAAC,CAACC,KAAK,CAAC,CAAC;MACtC;IACD,CAAC;IACDI,oBAAoBA,CAAEV,KAAK,EAAG;MAC7B,MAAM;QAAEE;MAAI,CAAC,GAAGf,UAAU,CAAC,CAAC;MAC5B;MACA;MACA;MACA;MACA;MACA,IACC,CAAEe,GAAG,CAACS,QAAQ,CAAEX,KAAK,CAACY,aAAc,CAAC,IACrCZ,KAAK,CAACa,MAAM,KAAKC,MAAM,CAACC,QAAQ,CAACC,aAAa,EAC7C;QACD3B,OAAO,CAACkB,gBAAgB,CAAC,CAAC;MAC3B;IACD;EACD;AACD,CAAC,EACD;EAAEU,IAAI,EAAE;AAAK,CACd,CAAC","ignoreList":[]}
|
|
@@ -452,10 +452,6 @@ export default function LogoEdit({
|
|
|
452
452
|
setTemporaryURL();
|
|
453
453
|
};
|
|
454
454
|
const onFilesDrop = filesList => {
|
|
455
|
-
if (filesList?.length > 1) {
|
|
456
|
-
onUploadError(__('Only one image can be used as a site logo.'));
|
|
457
|
-
return;
|
|
458
|
-
}
|
|
459
455
|
getSettings().mediaUpload({
|
|
460
456
|
allowedTypes: ALLOWED_MEDIA_TYPES,
|
|
461
457
|
filesList,
|
|
@@ -466,7 +462,8 @@ export default function LogoEdit({
|
|
|
466
462
|
}
|
|
467
463
|
onInitialSelectLogo(image);
|
|
468
464
|
},
|
|
469
|
-
onError: onUploadError
|
|
465
|
+
onError: onUploadError,
|
|
466
|
+
multiple: false
|
|
470
467
|
});
|
|
471
468
|
};
|
|
472
469
|
const mediaReplaceFlowProps = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","isBlobURL","createInterpolateElement","useEffect","useState","__","isRTL","PanelBody","RangeControl","ResizableBox","Spinner","ToggleControl","ToolbarButton","Placeholder","Button","DropZone","FlexItem","__experimentalItemGroup","ItemGroup","__experimentalHStack","HStack","__experimentalTruncate","Truncate","useViewportMatch","BlockControls","InspectorControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","store","blockEditorStore","__experimentalImageEditor","ImageEditor","useSelect","useDispatch","coreStore","crop","upload","noticesStore","MIN_SIZE","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_MEDIA_TYPES","ACCEPT_MEDIA_STRING","SiteLogo","alt","attributes","align","width","height","isLink","linkTarget","shouldSyncIcon","isSelected","setAttributes","setLogo","logoUrl","siteUrl","logoId","iconId","setIcon","canUserEdit","isLargeViewport","isWideAligned","includes","isResizable","naturalWidth","naturalHeight","setNaturalSize","isEditingImage","setIsEditingImage","toggleSelection","imageEditing","maxWidth","title","select","settings","getSettings","siteEntities","getEntityRecord","name","onResizeStart","onResizeStop","img","children","className","src","onLoad","event","target","imgWrapper","href","rel","onClick","preventDefault","style","defaultWidth","currentWidth","ratio","currentHeight","minWidth","Math","ceil","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","canEditImage","imgEdit","id","url","onSaveImage","imageAttributes","onFinishEditing","size","showHandle","maxHeight","lockAspectRatio","enable","top","right","bottom","left","direction","elt","delta","parseInt","shouldUseNewUrl","window","__experimentalUseCustomizerSiteLogoUrl","siteIconSettingsUrl","syncSiteIconHelpText","a","__nextHasNoMarginBottom","__next40pxDefaultSize","label","onChange","newWidth","min","max","initialPosition","value","disabled","checked","undefined","help","group","icon","SiteLogoReplaceFlow","mediaURL","mediaReplaceProps","allowedTypes","accept","InspectorLogoPreview","media","itemGroupProps","alt_text","source_url","slug","logoSlug","media_details","logoMediaDetails","logoLabel","sizes","full","file","as","justify","numberOfLines","LogoEdit","siteLogoId","siteIconId","mediaItemData","isRequestingMediaItem","canUser","getEditedEntityRecord","_canUserEdit","kind","siteSettings","siteData","_siteLogoId","site_logo","_siteIconId","site_icon","mediaItem","getMedia","context","_isRequestingMediaItem","hasFinishedResolution","home","temporaryURL","setTemporaryURL","editEntityRecord","newValue","shouldForceSync","onInitialSelectLogo","onSelectLogo","onRemoveLogo","createErrorNotice","onUploadError","message","type","onFilesDrop","filesList","length","mediaUpload","onFileChange","image","onError","mediaReplaceFlowProps","onSelect","onReset","controls","logoImage","isLoading","placeholder","content","placeholderClassName","preview","withIllustration","classes","blockProps","mediaInspectorPanel","isBordered","renderToggle","props","mediaLibraryButton","open","variant","showTooltip","tooltipPosition"],"sources":["@wordpress/block-library/src/site-logo/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tcreateInterpolateElement,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tToggleControl,\n\tToolbarButton,\n\tPlaceholder,\n\tButton,\n\tDropZone,\n\tFlexItem,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalTruncate as Truncate,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalImageEditor as ImageEditor,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { crop, upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { MIN_SIZE } from '../image/constants';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst ACCEPT_MEDIA_STRING = 'image/*';\n\nconst SiteLogo = ( {\n\talt,\n\tattributes: { align, width, height, isLink, linkTarget, shouldSyncIcon },\n\tisSelected,\n\tsetAttributes,\n\tsetLogo,\n\tlogoUrl,\n\tsiteUrl,\n\tlogoId,\n\ticonId,\n\tsetIcon,\n\tcanUserEdit,\n} ) => {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst isResizable = ! isWideAligned && isLargeViewport;\n\tconst [ { naturalWidth, naturalHeight }, setNaturalSize ] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst { toggleSelection } = useDispatch( blockEditorStore );\n\tconst { imageEditing, maxWidth, title } = useSelect( ( select ) => {\n\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\tconst siteEntities = select( coreStore ).getEntityRecord(\n\t\t\t'root',\n\t\t\t'__unstableBase'\n\t\t);\n\t\treturn {\n\t\t\ttitle: siteEntities?.name,\n\t\t\timageEditing: settings.imageEditing,\n\t\t\tmaxWidth: settings.maxWidth,\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Turn the `Use as site icon` toggle off if it is on but the logo and icon have\n\t\t// fallen out of sync. This can happen if the toggle is saved in the `on` position,\n\t\t// but changes are later made to the site icon in the Customizer.\n\t\tif ( shouldSyncIcon && logoId !== iconId ) {\n\t\t\tsetAttributes( { shouldSyncIcon: false } );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tconst img = (\n\t\t<>\n\t\t\t<img\n\t\t\t\tclassName=\"custom-logo\"\n\t\t\t\tsrc={ logoUrl }\n\t\t\t\talt={ alt }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetNaturalSize( {\n\t\t\t\t\t\tnaturalWidth: event.target.naturalWidth,\n\t\t\t\t\t\tnaturalHeight: event.target.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ isBlobURL( logoUrl ) && <Spinner /> }\n\t\t</>\n\t);\n\n\tlet imgWrapper = img;\n\n\t// Disable reason: Image itself is not meant to be interactive, but\n\t// should direct focus to block.\n\tif ( isLink ) {\n\t\timgWrapper = (\n\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t<a\n\t\t\t\thref={ siteUrl }\n\t\t\t\tclassName=\"custom-logo-link\"\n\t\t\t\trel=\"home\"\n\t\t\t\ttitle={ title }\n\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t>\n\t\t\t\t{ img }\n\t\t\t</a>\n\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t);\n\t}\n\n\tif ( ! isResizable || ! naturalWidth || ! naturalHeight ) {\n\t\treturn <div style={ { width, height } }>{ imgWrapper }</div>;\n\t}\n\n\t// Set the default width to a responsible size.\n\t// Note that this width is also set in the attached frontend CSS file.\n\tconst defaultWidth = 120;\n\n\tconst currentWidth = width || defaultWidth;\n\tconst ratio = naturalWidth / naturalHeight;\n\tconst currentHeight = currentWidth / ratio;\n\tconst minWidth =\n\t\tnaturalWidth < naturalHeight ? MIN_SIZE : Math.ceil( MIN_SIZE * ratio );\n\tconst minHeight =\n\t\tnaturalHeight < naturalWidth ? MIN_SIZE : Math.ceil( MIN_SIZE / ratio );\n\n\t// With the current implementation of ResizableBox, an image needs an\n\t// explicit pixel value for the max-width. In absence of being able to\n\t// set the content-width, this max-width is currently dictated by the\n\t// vanilla editor style. The following variable adds a buffer to this\n\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t// in most cases, allow you to scale the image beyond the width of the\n\t// main column, though not infinitely.\n\t// @todo It would be good to revisit this once a content-width variable\n\t// becomes available.\n\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\tlet showRightHandle = false;\n\tlet showLeftHandle = false;\n\n\t/* eslint-disable no-lonely-if */\n\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\tif ( align === 'center' ) {\n\t\t// When the image is centered, show both handles.\n\t\tshowRightHandle = true;\n\t\tshowLeftHandle = true;\n\t} else if ( isRTL() ) {\n\t\t// In RTL mode the image is on the right by default.\n\t\t// Show the right handle and hide the left handle only when it is\n\t\t// aligned left. Otherwise always show the left handle.\n\t\tif ( align === 'left' ) {\n\t\t\tshowRightHandle = true;\n\t\t} else {\n\t\t\tshowLeftHandle = true;\n\t\t}\n\t} else {\n\t\t// Show the left handle and hide the right handle only when the\n\t\t// image is aligned right. Otherwise always show the right handle.\n\t\tif ( align === 'right' ) {\n\t\t\tshowLeftHandle = true;\n\t\t} else {\n\t\t\tshowRightHandle = true;\n\t\t}\n\t}\n\t/* eslint-enable no-lonely-if */\n\n\tconst canEditImage =\n\t\tlogoId && naturalWidth && naturalHeight && imageEditing;\n\n\tconst imgEdit =\n\t\tcanEditImage && isEditingImage ? (\n\t\t\t<ImageEditor\n\t\t\t\tid={ logoId }\n\t\t\t\turl={ logoUrl }\n\t\t\t\twidth={ currentWidth }\n\t\t\t\theight={ currentHeight }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\tonSaveImage={ ( imageAttributes ) => {\n\t\t\t\t\tsetLogo( imageAttributes.id );\n\t\t\t\t} }\n\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t} }\n\t\t\t/>\n\t\t) : (\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: currentWidth,\n\t\t\t\t\theight: currentHeight,\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( currentWidth + delta.width, 10 ),\n\t\t\t\t\t\theight: parseInt( currentHeight + delta.height, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ imgWrapper }\n\t\t\t</ResizableBox>\n\t\t);\n\n\t// Support the previous location for the Site Icon settings. To be removed\n\t// when the required WP core version for Gutenberg is >= 6.5.0.\n\tconst shouldUseNewUrl = ! window?.__experimentalUseCustomizerSiteLogoUrl;\n\n\tconst siteIconSettingsUrl = shouldUseNewUrl\n\t\t? siteUrl + '/wp-admin/options-general.php'\n\t\t: siteUrl + '/wp-admin/customize.php?autofocus[section]=title_tagline';\n\n\tconst syncSiteIconHelpText = createInterpolateElement(\n\t\t__(\n\t\t\t'Site Icons are what you see in browser tabs, bookmark bars, and within the WordPress mobile apps. To use a custom icon that is different from your site logo, use the <a>Site Icon settings</a>.'\n\t\t),\n\t\t{\n\t\t\ta: (\n\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t<a\n\t\t\t\t\thref={ siteIconSettingsUrl }\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t/>\n\t\t\t),\n\t\t}\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Image width' ) }\n\t\t\t\t\t\tonChange={ ( newWidth ) =>\n\t\t\t\t\t\t\tsetAttributes( { width: newWidth } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ minWidth }\n\t\t\t\t\t\tmax={ maxWidthBuffer }\n\t\t\t\t\t\tinitialPosition={ Math.min(\n\t\t\t\t\t\t\tdefaultWidth,\n\t\t\t\t\t\t\tmaxWidthBuffer\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\t\tdisabled={ ! isResizable }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link image to home' ) }\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\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{ canUserEdit && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Use as Site Icon' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( { shouldSyncIcon: value } );\n\t\t\t\t\t\t\t\t\tsetIcon( value ? logoId : undefined );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tchecked={ !! shouldSyncIcon }\n\t\t\t\t\t\t\t\thelp={ syncSiteIconHelpText }\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 group=\"block\">\n\t\t\t\t{ canEditImage && ! isEditingImage && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ imgEdit }\n\t\t</>\n\t);\n};\n\n// This is a light wrapper around MediaReplaceFlow because the block has two\n// different MediaReplaceFlows, one for the inspector and one for the toolbar.\nfunction SiteLogoReplaceFlow( { mediaURL, ...mediaReplaceProps } ) {\n\treturn (\n\t\t<MediaReplaceFlow\n\t\t\t{ ...mediaReplaceProps }\n\t\t\tmediaURL={ mediaURL }\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t/>\n\t);\n}\n\nconst InspectorLogoPreview = ( { media, itemGroupProps } ) => {\n\tconst {\n\t\talt_text: alt,\n\t\tsource_url: logoUrl,\n\t\tslug: logoSlug,\n\t\tmedia_details: logoMediaDetails,\n\t} = media ?? {};\n\tconst logoLabel = logoMediaDetails?.sizes?.full?.file || logoSlug;\n\treturn (\n\t\t<ItemGroup { ...itemGroupProps } as=\"span\">\n\t\t\t<HStack justify=\"flex-start\" as=\"span\">\n\t\t\t\t<img src={ logoUrl } alt={ alt } />\n\t\t\t\t<FlexItem as=\"span\">\n\t\t\t\t\t<Truncate\n\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\tclassName=\"block-library-site-logo__inspector-media-replace-title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ logoLabel }\n\t\t\t\t\t</Truncate>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</ItemGroup>\n\t);\n};\n\nexport default function LogoEdit( {\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tisSelected,\n} ) {\n\tconst { width, shouldSyncIcon } = attributes;\n\tconst {\n\t\tsiteLogoId,\n\t\tcanUserEdit,\n\t\turl,\n\t\tsiteIconId,\n\t\tmediaItemData,\n\t\tisRequestingMediaItem,\n\t} = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst _canUserEdit = canUser( 'update', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} );\n\t\tconst siteSettings = _canUserEdit\n\t\t\t? getEditedEntityRecord( 'root', 'site' )\n\t\t\t: undefined;\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\t\tconst _siteLogoId = _canUserEdit\n\t\t\t? siteSettings?.site_logo\n\t\t\t: siteData?.site_logo;\n\t\tconst _siteIconId = siteSettings?.site_icon;\n\t\tconst mediaItem =\n\t\t\t_siteLogoId &&\n\t\t\tselect( coreStore ).getMedia( _siteLogoId, {\n\t\t\t\tcontext: 'view',\n\t\t\t} );\n\t\tconst _isRequestingMediaItem =\n\t\t\t!! _siteLogoId &&\n\t\t\t! select( coreStore ).hasFinishedResolution( 'getMedia', [\n\t\t\t\t_siteLogoId,\n\t\t\t\t{ context: 'view' },\n\t\t\t] );\n\n\t\treturn {\n\t\t\tsiteLogoId: _siteLogoId,\n\t\t\tcanUserEdit: _canUserEdit,\n\t\t\turl: siteData?.home,\n\t\t\tmediaItemData: mediaItem,\n\t\t\tisRequestingMediaItem: _isRequestingMediaItem,\n\t\t\tsiteIconId: _siteIconId,\n\t\t};\n\t}, [] );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst setLogo = ( newValue, shouldForceSync = false ) => {\n\t\t// `shouldForceSync` is used to force syncing when the attribute\n\t\t// may not have updated yet.\n\t\tif ( shouldSyncIcon || shouldForceSync ) {\n\t\t\tsetIcon( newValue );\n\t\t}\n\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_logo: newValue,\n\t\t} );\n\t};\n\n\tconst setIcon = ( newValue ) =>\n\t\t// The new value needs to be `null` to reset the Site Icon.\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_icon: newValue ?? null,\n\t\t} );\n\n\tconst { alt_text: alt, source_url: logoUrl } = mediaItemData ?? {};\n\n\tconst onInitialSelectLogo = ( media ) => {\n\t\t// Initialize the syncSiteIcon toggle. If we currently have no Site logo and no\n\t\t// site icon, automatically sync the logo to the icon.\n\t\tif ( shouldSyncIcon === undefined ) {\n\t\t\tconst shouldForceSync = ! siteIconId;\n\t\t\tsetAttributes( { shouldSyncIcon: shouldForceSync } );\n\n\t\t\t// Because we cannot rely on the `shouldSyncIcon` attribute to have updated by\n\t\t\t// the time `setLogo` is called, pass an argument to force the syncing.\n\t\t\tonSelectLogo( media, shouldForceSync );\n\t\t\treturn;\n\t\t}\n\n\t\tonSelectLogo( media );\n\t};\n\n\tconst onSelectLogo = ( media, shouldForceSync = false ) => {\n\t\tif ( ! media ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! media.id && media.url ) {\n\t\t\t// This is a temporary blob image.\n\t\t\tsetTemporaryURL( media.url );\n\t\t\tsetLogo( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\tsetLogo( media.id, shouldForceSync );\n\t};\n\n\tconst onRemoveLogo = () => {\n\t\tsetLogo( null );\n\t\tsetAttributes( { width: undefined } );\n\t};\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst onFilesDrop = ( filesList ) => {\n\t\tif ( filesList?.length > 1 ) {\n\t\t\tonUploadError( __( 'Only one image can be used as a site logo.' ) );\n\t\t\treturn;\n\t\t}\n\n\t\tgetSettings().mediaUpload( {\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tfilesList,\n\t\t\tonFileChange( [ image ] ) {\n\t\t\t\tif ( isBlobURL( image?.url ) ) {\n\t\t\t\t\tsetTemporaryURL( image.url );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tonInitialSelectLogo( image );\n\t\t\t},\n\t\t\tonError: onUploadError,\n\t\t} );\n\t};\n\n\tconst mediaReplaceFlowProps = {\n\t\tmediaURL: logoUrl,\n\t\tname: ! logoUrl ? __( 'Choose logo' ) : __( 'Replace' ),\n\t\tonSelect: onSelectLogo,\n\t\tonError: onUploadError,\n\t\tonReset: onRemoveLogo,\n\t};\n\tconst controls = canUserEdit && (\n\t\t<BlockControls group=\"other\">\n\t\t\t<SiteLogoReplaceFlow { ...mediaReplaceFlowProps } />\n\t\t</BlockControls>\n\t);\n\n\tlet logoImage;\n\tconst isLoading = siteLogoId === undefined || isRequestingMediaItem;\n\tif ( isLoading ) {\n\t\tlogoImage = <Spinner />;\n\t}\n\n\t// Reset temporary url when logoUrl is available.\n\tuseEffect( () => {\n\t\tif ( logoUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ logoUrl, temporaryURL ] );\n\n\tif ( !! logoUrl || !! temporaryURL ) {\n\t\tlogoImage = (\n\t\t\t<>\n\t\t\t\t<SiteLogo\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tlogoUrl={ temporaryURL || logoUrl }\n\t\t\t\t\tsetLogo={ setLogo }\n\t\t\t\t\tlogoId={ mediaItemData?.id || siteLogoId }\n\t\t\t\t\tsiteUrl={ url }\n\t\t\t\t\tsetIcon={ setIcon }\n\t\t\t\t\ticonId={ siteIconId }\n\t\t\t\t\tcanUserEdit={ canUserEdit }\n\t\t\t\t/>\n\t\t\t\t{ canUserEdit && <DropZone onFilesDrop={ onFilesDrop } /> }\n\t\t\t</>\n\t\t);\n\t}\n\tconst placeholder = ( content ) => {\n\t\tconst placeholderClassName = clsx(\n\t\t\t'block-editor-media-placeholder',\n\t\t\tclassName\n\t\t);\n\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ placeholderClassName }\n\t\t\t\tpreview={ logoImage }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\twidth,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = clsx( className, {\n\t\t'is-default-size': ! width,\n\t\t'is-transient': temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( { className: classes } );\n\n\tconst mediaInspectorPanel = ( canUserEdit || logoUrl ) && (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Media' ) }>\n\t\t\t\t<div className=\"block-library-site-logo__inspector-media-replace-container\">\n\t\t\t\t\t{ ! canUserEdit ? (\n\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\tmedia={ mediaItemData }\n\t\t\t\t\t\t\titemGroupProps={ {\n\t\t\t\t\t\t\t\tisBordered: true,\n\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t'block-library-site-logo__inspector-readonly-logo-preview',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<SiteLogoReplaceFlow\n\t\t\t\t\t\t\t\t{ ...mediaReplaceFlowProps }\n\t\t\t\t\t\t\t\tname={\n\t\t\t\t\t\t\t\t\t!! logoUrl ? (\n\t\t\t\t\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\t\t\t\t\tmedia={ mediaItemData }\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\t\t__( 'Choose logo' )\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\trenderToggle={ ( props ) => (\n\t\t\t\t\t\t\t\t\t<Button { ...props } __next40pxDefaultSize>\n\t\t\t\t\t\t\t\t\t\t{ temporaryURL ? (\n\t\t\t\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\tprops.children\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<DropZone onFilesDrop={ onFilesDrop } />\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t{ mediaInspectorPanel }\n\t\t\t{ ( !! logoUrl || !! temporaryURL ) && logoImage }\n\t\t\t{ ( isLoading ||\n\t\t\t\t( ! temporaryURL && ! logoUrl && ! canUserEdit ) ) && (\n\t\t\t\t<Placeholder className=\"site-logo_placeholder\" withIllustration>\n\t\t\t\t\t{ isLoading && (\n\t\t\t\t\t\t<span className=\"components-placeholder__preview\">\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t) }\n\t\t\t{ ! isLoading && ! temporaryURL && ! logoUrl && canUserEdit && (\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\tonSelect={ onInitialSelectLogo }\n\t\t\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Choose logo' ) }\n\t\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\t\ttooltipPosition=\"middle right\"\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\topen();\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/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","isBlobURL","createInterpolateElement","useEffect","useState","__","isRTL","PanelBody","RangeControl","ResizableBox","Spinner","ToggleControl","ToolbarButton","Placeholder","Button","DropZone","FlexItem","__experimentalItemGroup","ItemGroup","__experimentalHStack","HStack","__experimentalTruncate","Truncate","useViewportMatch","BlockControls","InspectorControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","store","blockEditorStore","__experimentalImageEditor","ImageEditor","useSelect","useDispatch","coreStore","crop","upload","noticesStore","MIN_SIZE","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_MEDIA_TYPES","ACCEPT_MEDIA_STRING","SiteLogo","alt","attributes","align","width","height","isLink","linkTarget","shouldSyncIcon","isSelected","setAttributes","setLogo","logoUrl","siteUrl","logoId","iconId","setIcon","canUserEdit","isLargeViewport","isWideAligned","includes","isResizable","naturalWidth","naturalHeight","setNaturalSize","isEditingImage","setIsEditingImage","toggleSelection","imageEditing","maxWidth","title","select","settings","getSettings","siteEntities","getEntityRecord","name","onResizeStart","onResizeStop","img","children","className","src","onLoad","event","target","imgWrapper","href","rel","onClick","preventDefault","style","defaultWidth","currentWidth","ratio","currentHeight","minWidth","Math","ceil","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","canEditImage","imgEdit","id","url","onSaveImage","imageAttributes","onFinishEditing","size","showHandle","maxHeight","lockAspectRatio","enable","top","right","bottom","left","direction","elt","delta","parseInt","shouldUseNewUrl","window","__experimentalUseCustomizerSiteLogoUrl","siteIconSettingsUrl","syncSiteIconHelpText","a","__nextHasNoMarginBottom","__next40pxDefaultSize","label","onChange","newWidth","min","max","initialPosition","value","disabled","checked","undefined","help","group","icon","SiteLogoReplaceFlow","mediaURL","mediaReplaceProps","allowedTypes","accept","InspectorLogoPreview","media","itemGroupProps","alt_text","source_url","slug","logoSlug","media_details","logoMediaDetails","logoLabel","sizes","full","file","as","justify","numberOfLines","LogoEdit","siteLogoId","siteIconId","mediaItemData","isRequestingMediaItem","canUser","getEditedEntityRecord","_canUserEdit","kind","siteSettings","siteData","_siteLogoId","site_logo","_siteIconId","site_icon","mediaItem","getMedia","context","_isRequestingMediaItem","hasFinishedResolution","home","temporaryURL","setTemporaryURL","editEntityRecord","newValue","shouldForceSync","onInitialSelectLogo","onSelectLogo","onRemoveLogo","createErrorNotice","onUploadError","message","type","onFilesDrop","filesList","mediaUpload","onFileChange","image","onError","multiple","mediaReplaceFlowProps","onSelect","onReset","controls","logoImage","isLoading","placeholder","content","placeholderClassName","preview","withIllustration","classes","blockProps","mediaInspectorPanel","isBordered","renderToggle","props","mediaLibraryButton","open","variant","showTooltip","tooltipPosition"],"sources":["@wordpress/block-library/src/site-logo/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tcreateInterpolateElement,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tToggleControl,\n\tToolbarButton,\n\tPlaceholder,\n\tButton,\n\tDropZone,\n\tFlexItem,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalTruncate as Truncate,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalImageEditor as ImageEditor,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { crop, upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { MIN_SIZE } from '../image/constants';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst ACCEPT_MEDIA_STRING = 'image/*';\n\nconst SiteLogo = ( {\n\talt,\n\tattributes: { align, width, height, isLink, linkTarget, shouldSyncIcon },\n\tisSelected,\n\tsetAttributes,\n\tsetLogo,\n\tlogoUrl,\n\tsiteUrl,\n\tlogoId,\n\ticonId,\n\tsetIcon,\n\tcanUserEdit,\n} ) => {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst isResizable = ! isWideAligned && isLargeViewport;\n\tconst [ { naturalWidth, naturalHeight }, setNaturalSize ] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst { toggleSelection } = useDispatch( blockEditorStore );\n\tconst { imageEditing, maxWidth, title } = useSelect( ( select ) => {\n\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\tconst siteEntities = select( coreStore ).getEntityRecord(\n\t\t\t'root',\n\t\t\t'__unstableBase'\n\t\t);\n\t\treturn {\n\t\t\ttitle: siteEntities?.name,\n\t\t\timageEditing: settings.imageEditing,\n\t\t\tmaxWidth: settings.maxWidth,\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Turn the `Use as site icon` toggle off if it is on but the logo and icon have\n\t\t// fallen out of sync. This can happen if the toggle is saved in the `on` position,\n\t\t// but changes are later made to the site icon in the Customizer.\n\t\tif ( shouldSyncIcon && logoId !== iconId ) {\n\t\t\tsetAttributes( { shouldSyncIcon: false } );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tconst img = (\n\t\t<>\n\t\t\t<img\n\t\t\t\tclassName=\"custom-logo\"\n\t\t\t\tsrc={ logoUrl }\n\t\t\t\talt={ alt }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetNaturalSize( {\n\t\t\t\t\t\tnaturalWidth: event.target.naturalWidth,\n\t\t\t\t\t\tnaturalHeight: event.target.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ isBlobURL( logoUrl ) && <Spinner /> }\n\t\t</>\n\t);\n\n\tlet imgWrapper = img;\n\n\t// Disable reason: Image itself is not meant to be interactive, but\n\t// should direct focus to block.\n\tif ( isLink ) {\n\t\timgWrapper = (\n\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t<a\n\t\t\t\thref={ siteUrl }\n\t\t\t\tclassName=\"custom-logo-link\"\n\t\t\t\trel=\"home\"\n\t\t\t\ttitle={ title }\n\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t>\n\t\t\t\t{ img }\n\t\t\t</a>\n\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t);\n\t}\n\n\tif ( ! isResizable || ! naturalWidth || ! naturalHeight ) {\n\t\treturn <div style={ { width, height } }>{ imgWrapper }</div>;\n\t}\n\n\t// Set the default width to a responsible size.\n\t// Note that this width is also set in the attached frontend CSS file.\n\tconst defaultWidth = 120;\n\n\tconst currentWidth = width || defaultWidth;\n\tconst ratio = naturalWidth / naturalHeight;\n\tconst currentHeight = currentWidth / ratio;\n\tconst minWidth =\n\t\tnaturalWidth < naturalHeight ? MIN_SIZE : Math.ceil( MIN_SIZE * ratio );\n\tconst minHeight =\n\t\tnaturalHeight < naturalWidth ? MIN_SIZE : Math.ceil( MIN_SIZE / ratio );\n\n\t// With the current implementation of ResizableBox, an image needs an\n\t// explicit pixel value for the max-width. In absence of being able to\n\t// set the content-width, this max-width is currently dictated by the\n\t// vanilla editor style. The following variable adds a buffer to this\n\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t// in most cases, allow you to scale the image beyond the width of the\n\t// main column, though not infinitely.\n\t// @todo It would be good to revisit this once a content-width variable\n\t// becomes available.\n\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\tlet showRightHandle = false;\n\tlet showLeftHandle = false;\n\n\t/* eslint-disable no-lonely-if */\n\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\tif ( align === 'center' ) {\n\t\t// When the image is centered, show both handles.\n\t\tshowRightHandle = true;\n\t\tshowLeftHandle = true;\n\t} else if ( isRTL() ) {\n\t\t// In RTL mode the image is on the right by default.\n\t\t// Show the right handle and hide the left handle only when it is\n\t\t// aligned left. Otherwise always show the left handle.\n\t\tif ( align === 'left' ) {\n\t\t\tshowRightHandle = true;\n\t\t} else {\n\t\t\tshowLeftHandle = true;\n\t\t}\n\t} else {\n\t\t// Show the left handle and hide the right handle only when the\n\t\t// image is aligned right. Otherwise always show the right handle.\n\t\tif ( align === 'right' ) {\n\t\t\tshowLeftHandle = true;\n\t\t} else {\n\t\t\tshowRightHandle = true;\n\t\t}\n\t}\n\t/* eslint-enable no-lonely-if */\n\n\tconst canEditImage =\n\t\tlogoId && naturalWidth && naturalHeight && imageEditing;\n\n\tconst imgEdit =\n\t\tcanEditImage && isEditingImage ? (\n\t\t\t<ImageEditor\n\t\t\t\tid={ logoId }\n\t\t\t\turl={ logoUrl }\n\t\t\t\twidth={ currentWidth }\n\t\t\t\theight={ currentHeight }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\tonSaveImage={ ( imageAttributes ) => {\n\t\t\t\t\tsetLogo( imageAttributes.id );\n\t\t\t\t} }\n\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t} }\n\t\t\t/>\n\t\t) : (\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: currentWidth,\n\t\t\t\t\theight: currentHeight,\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( currentWidth + delta.width, 10 ),\n\t\t\t\t\t\theight: parseInt( currentHeight + delta.height, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ imgWrapper }\n\t\t\t</ResizableBox>\n\t\t);\n\n\t// Support the previous location for the Site Icon settings. To be removed\n\t// when the required WP core version for Gutenberg is >= 6.5.0.\n\tconst shouldUseNewUrl = ! window?.__experimentalUseCustomizerSiteLogoUrl;\n\n\tconst siteIconSettingsUrl = shouldUseNewUrl\n\t\t? siteUrl + '/wp-admin/options-general.php'\n\t\t: siteUrl + '/wp-admin/customize.php?autofocus[section]=title_tagline';\n\n\tconst syncSiteIconHelpText = createInterpolateElement(\n\t\t__(\n\t\t\t'Site Icons are what you see in browser tabs, bookmark bars, and within the WordPress mobile apps. To use a custom icon that is different from your site logo, use the <a>Site Icon settings</a>.'\n\t\t),\n\t\t{\n\t\t\ta: (\n\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t<a\n\t\t\t\t\thref={ siteIconSettingsUrl }\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t/>\n\t\t\t),\n\t\t}\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Image width' ) }\n\t\t\t\t\t\tonChange={ ( newWidth ) =>\n\t\t\t\t\t\t\tsetAttributes( { width: newWidth } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ minWidth }\n\t\t\t\t\t\tmax={ maxWidthBuffer }\n\t\t\t\t\t\tinitialPosition={ Math.min(\n\t\t\t\t\t\t\tdefaultWidth,\n\t\t\t\t\t\t\tmaxWidthBuffer\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\t\tdisabled={ ! isResizable }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link image to home' ) }\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\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{ canUserEdit && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Use as Site Icon' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( { shouldSyncIcon: value } );\n\t\t\t\t\t\t\t\t\tsetIcon( value ? logoId : undefined );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tchecked={ !! shouldSyncIcon }\n\t\t\t\t\t\t\t\thelp={ syncSiteIconHelpText }\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 group=\"block\">\n\t\t\t\t{ canEditImage && ! isEditingImage && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ imgEdit }\n\t\t</>\n\t);\n};\n\n// This is a light wrapper around MediaReplaceFlow because the block has two\n// different MediaReplaceFlows, one for the inspector and one for the toolbar.\nfunction SiteLogoReplaceFlow( { mediaURL, ...mediaReplaceProps } ) {\n\treturn (\n\t\t<MediaReplaceFlow\n\t\t\t{ ...mediaReplaceProps }\n\t\t\tmediaURL={ mediaURL }\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t/>\n\t);\n}\n\nconst InspectorLogoPreview = ( { media, itemGroupProps } ) => {\n\tconst {\n\t\talt_text: alt,\n\t\tsource_url: logoUrl,\n\t\tslug: logoSlug,\n\t\tmedia_details: logoMediaDetails,\n\t} = media ?? {};\n\tconst logoLabel = logoMediaDetails?.sizes?.full?.file || logoSlug;\n\treturn (\n\t\t<ItemGroup { ...itemGroupProps } as=\"span\">\n\t\t\t<HStack justify=\"flex-start\" as=\"span\">\n\t\t\t\t<img src={ logoUrl } alt={ alt } />\n\t\t\t\t<FlexItem as=\"span\">\n\t\t\t\t\t<Truncate\n\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\tclassName=\"block-library-site-logo__inspector-media-replace-title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ logoLabel }\n\t\t\t\t\t</Truncate>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</ItemGroup>\n\t);\n};\n\nexport default function LogoEdit( {\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tisSelected,\n} ) {\n\tconst { width, shouldSyncIcon } = attributes;\n\tconst {\n\t\tsiteLogoId,\n\t\tcanUserEdit,\n\t\turl,\n\t\tsiteIconId,\n\t\tmediaItemData,\n\t\tisRequestingMediaItem,\n\t} = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst _canUserEdit = canUser( 'update', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} );\n\t\tconst siteSettings = _canUserEdit\n\t\t\t? getEditedEntityRecord( 'root', 'site' )\n\t\t\t: undefined;\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\t\tconst _siteLogoId = _canUserEdit\n\t\t\t? siteSettings?.site_logo\n\t\t\t: siteData?.site_logo;\n\t\tconst _siteIconId = siteSettings?.site_icon;\n\t\tconst mediaItem =\n\t\t\t_siteLogoId &&\n\t\t\tselect( coreStore ).getMedia( _siteLogoId, {\n\t\t\t\tcontext: 'view',\n\t\t\t} );\n\t\tconst _isRequestingMediaItem =\n\t\t\t!! _siteLogoId &&\n\t\t\t! select( coreStore ).hasFinishedResolution( 'getMedia', [\n\t\t\t\t_siteLogoId,\n\t\t\t\t{ context: 'view' },\n\t\t\t] );\n\n\t\treturn {\n\t\t\tsiteLogoId: _siteLogoId,\n\t\t\tcanUserEdit: _canUserEdit,\n\t\t\turl: siteData?.home,\n\t\t\tmediaItemData: mediaItem,\n\t\t\tisRequestingMediaItem: _isRequestingMediaItem,\n\t\t\tsiteIconId: _siteIconId,\n\t\t};\n\t}, [] );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst setLogo = ( newValue, shouldForceSync = false ) => {\n\t\t// `shouldForceSync` is used to force syncing when the attribute\n\t\t// may not have updated yet.\n\t\tif ( shouldSyncIcon || shouldForceSync ) {\n\t\t\tsetIcon( newValue );\n\t\t}\n\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_logo: newValue,\n\t\t} );\n\t};\n\n\tconst setIcon = ( newValue ) =>\n\t\t// The new value needs to be `null` to reset the Site Icon.\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_icon: newValue ?? null,\n\t\t} );\n\n\tconst { alt_text: alt, source_url: logoUrl } = mediaItemData ?? {};\n\n\tconst onInitialSelectLogo = ( media ) => {\n\t\t// Initialize the syncSiteIcon toggle. If we currently have no Site logo and no\n\t\t// site icon, automatically sync the logo to the icon.\n\t\tif ( shouldSyncIcon === undefined ) {\n\t\t\tconst shouldForceSync = ! siteIconId;\n\t\t\tsetAttributes( { shouldSyncIcon: shouldForceSync } );\n\n\t\t\t// Because we cannot rely on the `shouldSyncIcon` attribute to have updated by\n\t\t\t// the time `setLogo` is called, pass an argument to force the syncing.\n\t\t\tonSelectLogo( media, shouldForceSync );\n\t\t\treturn;\n\t\t}\n\n\t\tonSelectLogo( media );\n\t};\n\n\tconst onSelectLogo = ( media, shouldForceSync = false ) => {\n\t\tif ( ! media ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! media.id && media.url ) {\n\t\t\t// This is a temporary blob image.\n\t\t\tsetTemporaryURL( media.url );\n\t\t\tsetLogo( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\tsetLogo( media.id, shouldForceSync );\n\t};\n\n\tconst onRemoveLogo = () => {\n\t\tsetLogo( null );\n\t\tsetAttributes( { width: undefined } );\n\t};\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst onFilesDrop = ( filesList ) => {\n\t\tgetSettings().mediaUpload( {\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tfilesList,\n\t\t\tonFileChange( [ image ] ) {\n\t\t\t\tif ( isBlobURL( image?.url ) ) {\n\t\t\t\t\tsetTemporaryURL( image.url );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tonInitialSelectLogo( image );\n\t\t\t},\n\t\t\tonError: onUploadError,\n\t\t\tmultiple: false,\n\t\t} );\n\t};\n\n\tconst mediaReplaceFlowProps = {\n\t\tmediaURL: logoUrl,\n\t\tname: ! logoUrl ? __( 'Choose logo' ) : __( 'Replace' ),\n\t\tonSelect: onSelectLogo,\n\t\tonError: onUploadError,\n\t\tonReset: onRemoveLogo,\n\t};\n\tconst controls = canUserEdit && (\n\t\t<BlockControls group=\"other\">\n\t\t\t<SiteLogoReplaceFlow { ...mediaReplaceFlowProps } />\n\t\t</BlockControls>\n\t);\n\n\tlet logoImage;\n\tconst isLoading = siteLogoId === undefined || isRequestingMediaItem;\n\tif ( isLoading ) {\n\t\tlogoImage = <Spinner />;\n\t}\n\n\t// Reset temporary url when logoUrl is available.\n\tuseEffect( () => {\n\t\tif ( logoUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ logoUrl, temporaryURL ] );\n\n\tif ( !! logoUrl || !! temporaryURL ) {\n\t\tlogoImage = (\n\t\t\t<>\n\t\t\t\t<SiteLogo\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tlogoUrl={ temporaryURL || logoUrl }\n\t\t\t\t\tsetLogo={ setLogo }\n\t\t\t\t\tlogoId={ mediaItemData?.id || siteLogoId }\n\t\t\t\t\tsiteUrl={ url }\n\t\t\t\t\tsetIcon={ setIcon }\n\t\t\t\t\ticonId={ siteIconId }\n\t\t\t\t\tcanUserEdit={ canUserEdit }\n\t\t\t\t/>\n\t\t\t\t{ canUserEdit && <DropZone onFilesDrop={ onFilesDrop } /> }\n\t\t\t</>\n\t\t);\n\t}\n\tconst placeholder = ( content ) => {\n\t\tconst placeholderClassName = clsx(\n\t\t\t'block-editor-media-placeholder',\n\t\t\tclassName\n\t\t);\n\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ placeholderClassName }\n\t\t\t\tpreview={ logoImage }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\twidth,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = clsx( className, {\n\t\t'is-default-size': ! width,\n\t\t'is-transient': temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( { className: classes } );\n\n\tconst mediaInspectorPanel = ( canUserEdit || logoUrl ) && (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Media' ) }>\n\t\t\t\t<div className=\"block-library-site-logo__inspector-media-replace-container\">\n\t\t\t\t\t{ ! canUserEdit ? (\n\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\tmedia={ mediaItemData }\n\t\t\t\t\t\t\titemGroupProps={ {\n\t\t\t\t\t\t\t\tisBordered: true,\n\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t'block-library-site-logo__inspector-readonly-logo-preview',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<SiteLogoReplaceFlow\n\t\t\t\t\t\t\t\t{ ...mediaReplaceFlowProps }\n\t\t\t\t\t\t\t\tname={\n\t\t\t\t\t\t\t\t\t!! logoUrl ? (\n\t\t\t\t\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\t\t\t\t\tmedia={ mediaItemData }\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\t\t__( 'Choose logo' )\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\trenderToggle={ ( props ) => (\n\t\t\t\t\t\t\t\t\t<Button { ...props } __next40pxDefaultSize>\n\t\t\t\t\t\t\t\t\t\t{ temporaryURL ? (\n\t\t\t\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\tprops.children\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<DropZone onFilesDrop={ onFilesDrop } />\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t{ mediaInspectorPanel }\n\t\t\t{ ( !! logoUrl || !! temporaryURL ) && logoImage }\n\t\t\t{ ( isLoading ||\n\t\t\t\t( ! temporaryURL && ! logoUrl && ! canUserEdit ) ) && (\n\t\t\t\t<Placeholder className=\"site-logo_placeholder\" withIllustration>\n\t\t\t\t\t{ isLoading && (\n\t\t\t\t\t\t<span className=\"components-placeholder__preview\">\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t) }\n\t\t\t{ ! isLoading && ! temporaryURL && ! logoUrl && canUserEdit && (\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\tonSelect={ onInitialSelectLogo }\n\t\t\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Choose logo' ) }\n\t\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\t\ttooltipPosition=\"middle right\"\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\topen();\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/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -22,7 +22,7 @@ export function TemplatePartAdvancedControls({
|
|
|
22
22
|
}) {
|
|
23
23
|
const [area, setArea] = useEntityProp('postType', 'wp_template_part', 'area', templatePartId);
|
|
24
24
|
const [title, setTitle] = useEntityProp('postType', 'wp_template_part', 'title', templatePartId);
|
|
25
|
-
const defaultTemplatePartAreas = useSelect(select => select(coreStore).
|
|
25
|
+
const defaultTemplatePartAreas = useSelect(select => select(coreStore).getCurrentTheme()?.default_template_part_areas || [], []);
|
|
26
26
|
const areaOptions = defaultTemplatePartAreas.map(({
|
|
27
27
|
label,
|
|
28
28
|
area: _area
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEntityProp","store","coreStore","SelectControl","TextControl","sprintf","__","useSelect","TemplatePartImportControls","htmlElementMessages","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","TemplatePartAdvancedControls","tagName","setAttributes","isEntityAvailable","templatePartId","defaultWrapper","hasInnerBlocks","area","setArea","title","setTitle","defaultTemplatePartAreas","select","
|
|
1
|
+
{"version":3,"names":["useEntityProp","store","coreStore","SelectControl","TextControl","sprintf","__","useSelect","TemplatePartImportControls","htmlElementMessages","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","TemplatePartAdvancedControls","tagName","setAttributes","isEntityAvailable","templatePartId","defaultWrapper","hasInnerBlocks","area","setArea","title","setTitle","defaultTemplatePartAreas","select","getCurrentTheme","default_template_part_areas","areaOptions","map","label","_area","value","children","__next40pxDefaultSize","__nextHasNoMarginBottom","onChange","onFocus","event","target","labelPosition","options","help"],"sources":["@wordpress/block-library/src/template-part/edit/advanced-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { SelectControl, TextControl } from '@wordpress/components';\nimport { sprintf, __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { TemplatePartImportControls } from './import-controls';\nimport { htmlElementMessages } from '../../utils/messages';\n\nexport function TemplatePartAdvancedControls( {\n\ttagName,\n\tsetAttributes,\n\tisEntityAvailable,\n\ttemplatePartId,\n\tdefaultWrapper,\n\thasInnerBlocks,\n} ) {\n\tconst [ area, setArea ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'area',\n\t\ttemplatePartId\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'title',\n\t\ttemplatePartId\n\t);\n\n\tconst defaultTemplatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).getCurrentTheme()\n\t\t\t\t?.default_template_part_areas || [],\n\t\t[]\n\t);\n\n\tconst areaOptions = defaultTemplatePartAreas.map(\n\t\t( { label, area: _area } ) => ( {\n\t\t\tlabel,\n\t\t\tvalue: _area,\n\t\t} )\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ isEntityAvailable && (\n\t\t\t\t<>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Title' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetTitle( value );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonFocus={ ( event ) => event.target.select() }\n\t\t\t\t\t/>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\toptions={ areaOptions }\n\t\t\t\t\t\tvalue={ area }\n\t\t\t\t\t\tonChange={ setArea }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: HTML tag based on area. */\n\t\t\t\t\t\t\t__( 'Default based on area (%s)' ),\n\t\t\t\t\t\t\t`<${ defaultWrapper }>`\n\t\t\t\t\t\t),\n\t\t\t\t\t\tvalue: '',\n\t\t\t\t\t},\n\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t{ label: '<div>', value: 'div' },\n\t\t\t\t] }\n\t\t\t\tvalue={ tagName || '' }\n\t\t\t\tonChange={ ( value ) => setAttributes( { tagName: value } ) }\n\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t/>\n\t\t\t{ ! hasInnerBlocks && (\n\t\t\t\t<TemplatePartImportControls\n\t\t\t\t\tarea={ area }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -114,7 +114,7 @@ export function useCreateTemplatePartFromBlocks(area, setAttributes) {
|
|
|
114
114
|
export function useTemplatePartArea(area) {
|
|
115
115
|
return useSelect(select => {
|
|
116
116
|
var _selectedArea$area_ta;
|
|
117
|
-
const definedAreas = select(coreStore).
|
|
117
|
+
const definedAreas = select(coreStore).getCurrentTheme()?.default_template_part_areas || [];
|
|
118
118
|
const selectedArea = definedAreas.find(definedArea => definedArea.area === area);
|
|
119
119
|
const defaultArea = definedAreas.find(definedArea => definedArea.area === 'uncategorized');
|
|
120
120
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["paramCase","kebabCase","useDispatch","useSelect","store","coreStore","blockEditorStore","useMemo","serialize","__","createTemplatePartId","useAlternativeTemplateParts","area","excludedId","templateParts","isResolving","select","getEntityRecords","_isResolving","query","per_page","filteredTemplateParts","filter","templatePart","theme","slug","useAlternativeBlockPatterns","clientId","blockNameWithArea","getBlockRootClientId","getPatternsByBlockTypes","rootClientId","useCreateTemplatePartFromBlocks","setAttributes","saveEntityRecord","blocks","title","cleanSlug","replace","record","content","undefined","useTemplatePartArea","_selectedArea$area_ta","definedAreas","
|
|
1
|
+
{"version":3,"names":["paramCase","kebabCase","useDispatch","useSelect","store","coreStore","blockEditorStore","useMemo","serialize","__","createTemplatePartId","useAlternativeTemplateParts","area","excludedId","templateParts","isResolving","select","getEntityRecords","_isResolving","query","per_page","filteredTemplateParts","filter","templatePart","theme","slug","useAlternativeBlockPatterns","clientId","blockNameWithArea","getBlockRootClientId","getPatternsByBlockTypes","rootClientId","useCreateTemplatePartFromBlocks","setAttributes","saveEntityRecord","blocks","title","cleanSlug","replace","record","content","undefined","useTemplatePartArea","_selectedArea$area_ta","definedAreas","getCurrentTheme","default_template_part_areas","selectedArea","find","definedArea","defaultArea","icon","label","tagName","area_tag"],"sources":["@wordpress/block-library/src/template-part/edit/utils/hooks.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { paramCase as kebabCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { useMemo } from '@wordpress/element';\nimport { serialize } from '@wordpress/blocks';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { createTemplatePartId } from './create-template-part-id';\n\n/**\n * Retrieves the available template parts for the given area.\n *\n * @param {string} area Template part area.\n * @param {string} excludedId Template part ID to exclude.\n *\n * @return {{ templateParts: Array, isResolving: boolean }} array of template parts.\n */\nexport function useAlternativeTemplateParts( area, excludedId ) {\n\tconst { templateParts, isResolving } = useSelect( ( select ) => {\n\t\tconst { getEntityRecords, isResolving: _isResolving } =\n\t\t\tselect( coreStore );\n\t\tconst query = { per_page: -1 };\n\t\treturn {\n\t\t\ttemplateParts: getEntityRecords(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\tquery\n\t\t\t),\n\t\t\tisResolving: _isResolving( 'getEntityRecords', [\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\tquery,\n\t\t\t] ),\n\t\t};\n\t}, [] );\n\n\tconst filteredTemplateParts = useMemo( () => {\n\t\tif ( ! templateParts ) {\n\t\t\treturn [];\n\t\t}\n\t\treturn (\n\t\t\ttemplateParts.filter(\n\t\t\t\t( templatePart ) =>\n\t\t\t\t\tcreateTemplatePartId(\n\t\t\t\t\t\ttemplatePart.theme,\n\t\t\t\t\t\ttemplatePart.slug\n\t\t\t\t\t) !== excludedId &&\n\t\t\t\t\t( ! area ||\n\t\t\t\t\t\t'uncategorized' === area ||\n\t\t\t\t\t\ttemplatePart.area === area )\n\t\t\t) || []\n\t\t);\n\t}, [ templateParts, area, excludedId ] );\n\n\treturn {\n\t\ttemplateParts: filteredTemplateParts,\n\t\tisResolving,\n\t};\n}\n\n/**\n * Retrieves the available block patterns for the given area.\n *\n * @param {string} area Template part area.\n * @param {string} clientId Block Client ID. (The container of the block can impact allowed blocks).\n *\n * @return {Array} array of block patterns.\n */\nexport function useAlternativeBlockPatterns( area, clientId ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst blockNameWithArea = area\n\t\t\t\t? `core/template-part/${ area }`\n\t\t\t\t: 'core/template-part';\n\t\t\tconst { getBlockRootClientId, getPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\treturn getPatternsByBlockTypes( blockNameWithArea, rootClientId );\n\t\t},\n\t\t[ area, clientId ]\n\t);\n}\n\nexport function useCreateTemplatePartFromBlocks( area, setAttributes ) {\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\n\treturn async ( blocks = [], title = __( 'Untitled Template Part' ) ) => {\n\t\t// Currently template parts only allow latin chars.\n\t\t// Fallback slug will receive suffix by default.\n\t\tconst cleanSlug =\n\t\t\tkebabCase( title ).replace( /[^\\w-]+/g, '' ) || 'wp-custom-part';\n\n\t\t// If we have `area` set from block attributes, means an exposed\n\t\t// block variation was inserted. So add this prop to the template\n\t\t// part entity on creation. Afterwards remove `area` value from\n\t\t// block attributes.\n\t\tconst record = {\n\t\t\ttitle,\n\t\t\tslug: cleanSlug,\n\t\t\tcontent: serialize( blocks ),\n\t\t\t// `area` is filterable on the server and defaults to `UNCATEGORIZED`\n\t\t\t// if provided value is not allowed.\n\t\t\tarea,\n\t\t};\n\t\tconst templatePart = await saveEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_template_part',\n\t\t\trecord\n\t\t);\n\t\tsetAttributes( {\n\t\t\tslug: templatePart.slug,\n\t\t\ttheme: templatePart.theme,\n\t\t\tarea: undefined,\n\t\t} );\n\t};\n}\n\n/**\n * Retrieves the template part area object.\n *\n * @param {string} area Template part area identifier.\n *\n * @return {{icon: Object, label: string, tagName: string}} Template Part area.\n */\nexport function useTemplatePartArea( area ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst definedAreas =\n\t\t\t\tselect( coreStore ).getCurrentTheme()\n\t\t\t\t\t?.default_template_part_areas || [];\n\n\t\t\tconst selectedArea = definedAreas.find(\n\t\t\t\t( definedArea ) => definedArea.area === area\n\t\t\t);\n\t\t\tconst defaultArea = definedAreas.find(\n\t\t\t\t( definedArea ) => definedArea.area === 'uncategorized'\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\ticon: selectedArea?.icon || defaultArea?.icon,\n\t\t\t\tlabel: selectedArea?.label || __( 'Template Part' ),\n\t\t\t\ttagName: selectedArea?.area_tag ?? 'div',\n\t\t\t};\n\t\t},\n\t\t[ area ]\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -38,7 +38,11 @@ const VideoSettings = ({
|
|
|
38
38
|
const toggleAttribute = attribute => {
|
|
39
39
|
return newValue => {
|
|
40
40
|
setAttributes({
|
|
41
|
-
[attribute]: newValue
|
|
41
|
+
[attribute]: newValue,
|
|
42
|
+
// Set muted when autoplay changes
|
|
43
|
+
...(attribute === 'autoplay' && {
|
|
44
|
+
muted: newValue
|
|
45
|
+
})
|
|
42
46
|
});
|
|
43
47
|
};
|
|
44
48
|
};
|
|
@@ -62,7 +66,8 @@ const VideoSettings = ({
|
|
|
62
66
|
hasValue: () => !!autoplay,
|
|
63
67
|
onDeselect: () => {
|
|
64
68
|
setAttributes({
|
|
65
|
-
autoplay: false
|
|
69
|
+
autoplay: false,
|
|
70
|
+
muted: false
|
|
66
71
|
});
|
|
67
72
|
},
|
|
68
73
|
children: /*#__PURE__*/_jsx(ToggleControl, {
|
|
@@ -100,7 +105,9 @@ const VideoSettings = ({
|
|
|
100
105
|
__nextHasNoMarginBottom: true,
|
|
101
106
|
label: __('Muted'),
|
|
102
107
|
onChange: toggleFactory.muted,
|
|
103
|
-
checked: !!muted
|
|
108
|
+
checked: !!muted,
|
|
109
|
+
disabled: autoplay,
|
|
110
|
+
help: autoplay ? __('Muted because of Autoplay.') : null
|
|
104
111
|
})
|
|
105
112
|
}), /*#__PURE__*/_jsx(ToolsPanelItem, {
|
|
106
113
|
label: __('Playback controls'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","_x","ToggleControl","SelectControl","__experimentalToolsPanelItem","ToolsPanelItem","useMemo","useCallback","Platform","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","options","value","label","VideoSettings","setAttributes","attributes","autoplay","controls","loop","muted","playsInline","preload","autoPlayHelpText","getAutoplayHelp","select","web","checked","native","toggleFactory","toggleAttribute","attribute","newValue","onChangePreload","children","isShownByDefault","hasValue","onDeselect","__nextHasNoMarginBottom","onChange","help","__next40pxDefaultSize","hideCancelButton"],"sources":["@wordpress/block-library/src/video/edit-common-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tToggleControl,\n\tSelectControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useMemo, useCallback, Platform } from '@wordpress/element';\n\nconst options = [\n\t{ value: 'auto', label: __( 'Auto' ) },\n\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t{ value: 'none', label: _x( 'None', 'Preload value' ) },\n];\n\nconst VideoSettings = ( { setAttributes, attributes } ) => {\n\tconst { autoplay, controls, loop, muted, playsInline, preload } =\n\t\tattributes;\n\n\tconst autoPlayHelpText = __(\n\t\t'Autoplay may cause usability issues for some users.'\n\t);\n\tconst getAutoplayHelp = Platform.select( {\n\t\tweb: useCallback( ( checked ) => {\n\t\t\treturn checked ? autoPlayHelpText : null;\n\t\t}, [] ),\n\t\tnative: autoPlayHelpText,\n\t} );\n\n\tconst toggleFactory = useMemo( () => {\n\t\tconst toggleAttribute = ( attribute ) => {\n\t\t\treturn ( newValue ) => {\n\t\t\t\tsetAttributes( {
|
|
1
|
+
{"version":3,"names":["__","_x","ToggleControl","SelectControl","__experimentalToolsPanelItem","ToolsPanelItem","useMemo","useCallback","Platform","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","options","value","label","VideoSettings","setAttributes","attributes","autoplay","controls","loop","muted","playsInline","preload","autoPlayHelpText","getAutoplayHelp","select","web","checked","native","toggleFactory","toggleAttribute","attribute","newValue","onChangePreload","children","isShownByDefault","hasValue","onDeselect","__nextHasNoMarginBottom","onChange","help","disabled","__next40pxDefaultSize","hideCancelButton"],"sources":["@wordpress/block-library/src/video/edit-common-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tToggleControl,\n\tSelectControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useMemo, useCallback, Platform } from '@wordpress/element';\n\nconst options = [\n\t{ value: 'auto', label: __( 'Auto' ) },\n\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t{ value: 'none', label: _x( 'None', 'Preload value' ) },\n];\n\nconst VideoSettings = ( { setAttributes, attributes } ) => {\n\tconst { autoplay, controls, loop, muted, playsInline, preload } =\n\t\tattributes;\n\n\tconst autoPlayHelpText = __(\n\t\t'Autoplay may cause usability issues for some users.'\n\t);\n\n\tconst getAutoplayHelp = Platform.select( {\n\t\tweb: useCallback( ( checked ) => {\n\t\t\treturn checked ? autoPlayHelpText : null;\n\t\t}, [] ),\n\t\tnative: autoPlayHelpText,\n\t} );\n\n\tconst toggleFactory = useMemo( () => {\n\t\tconst toggleAttribute = ( attribute ) => {\n\t\t\treturn ( newValue ) => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\t[ attribute ]: newValue,\n\t\t\t\t\t// Set muted when autoplay changes\n\t\t\t\t\t...( attribute === 'autoplay' && { muted: newValue } ),\n\t\t\t\t} );\n\t\t\t};\n\t\t};\n\n\t\treturn {\n\t\t\tautoplay: toggleAttribute( 'autoplay' ),\n\t\t\tloop: toggleAttribute( 'loop' ),\n\t\t\tmuted: toggleAttribute( 'muted' ),\n\t\t\tcontrols: toggleAttribute( 'controls' ),\n\t\t\tplaysInline: toggleAttribute( 'playsInline' ),\n\t\t};\n\t}, [] );\n\n\tconst onChangePreload = useCallback( ( value ) => {\n\t\tsetAttributes( { preload: value } );\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! autoplay }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { autoplay: false, muted: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\tonChange={ toggleFactory.autoplay }\n\t\t\t\t\tchecked={ !! autoplay }\n\t\t\t\t\thelp={ getAutoplayHelp }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! loop }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { loop: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\tonChange={ toggleFactory.loop }\n\t\t\t\t\tchecked={ !! loop }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! muted }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { muted: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\t\tonChange={ toggleFactory.muted }\n\t\t\t\t\tchecked={ !! muted }\n\t\t\t\t\tdisabled={ autoplay }\n\t\t\t\t\thelp={\n\t\t\t\t\t\tautoplay ? __( 'Muted because of Autoplay.' ) : null\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => ! controls }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { controls: true } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\t\tonChange={ toggleFactory.controls }\n\t\t\t\t\tchecked={ !! controls }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! playsInline }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { playsInline: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/* translators: Setting to play videos within the webpage on mobile browsers rather than opening in a fullscreen player. */\n\t\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\t\tonChange={ toggleFactory.playsInline }\n\t\t\t\t\tchecked={ !! playsInline }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'When enabled, videos will play directly within the webpage on mobile browsers, instead of opening in a fullscreen player.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => preload !== 'metadata' }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { preload: 'metadata' } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\t\tvalue={ preload }\n\t\t\t\t\tonChange={ onChangePreload }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t</>\n\t);\n};\n\nexport default VideoSettings;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1960,15 +1960,11 @@ body.editor-styles-wrapper .wp-block-navigation__responsive-container.is-menu-op
|
|
|
1960
1960
|
background-image: none !important;
|
|
1961
1961
|
}
|
|
1962
1962
|
.wp-block-navigation-link__placeholder .wp-block-navigation-link__placeholder-text span {
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
|
|
1968
|
-
padding-bottom: 0.1em;
|
|
1969
|
-
}
|
|
1970
|
-
.wp-block-navigation-link__placeholder .wp-block-navigation-link__placeholder-text.is-invalid span, .wp-block-navigation-link__placeholder .wp-block-navigation-link__placeholder-text.is-draft span {
|
|
1971
|
-
--wp-underline-color: #cc1818;
|
|
1963
|
+
-webkit-text-decoration: wavy underline;
|
|
1964
|
+
text-decoration: wavy underline;
|
|
1965
|
+
-webkit-text-decoration-skip-ink: none;
|
|
1966
|
+
text-decoration-skip-ink: none;
|
|
1967
|
+
text-underline-offset: 0.25rem;
|
|
1972
1968
|
}
|
|
1973
1969
|
.wp-block-navigation-link__placeholder.wp-block-navigation-item__content {
|
|
1974
1970
|
cursor: pointer;
|
|
@@ -2360,6 +2356,7 @@ body.editor-styles-wrapper .wp-block-navigation__responsive-container.is-menu-op
|
|
|
2360
2356
|
height: auto;
|
|
2361
2357
|
font-weight: inherit;
|
|
2362
2358
|
font-family: inherit;
|
|
2359
|
+
margin: 0;
|
|
2363
2360
|
opacity: 1;
|
|
2364
2361
|
padding: 0.25em;
|
|
2365
2362
|
}
|