@wordpress/interface 7.0.0 → 8.1.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.
- package/CHANGELOG.md +8 -0
- package/build/components/complementary-area/index.js +12 -10
- package/build/components/complementary-area/index.js.map +1 -1
- package/build/components/complementary-area-header/index.js +4 -13
- package/build/components/complementary-area-header/index.js.map +1 -1
- package/build/components/complementary-area-toggle/index.js +7 -6
- package/build/components/complementary-area-toggle/index.js.map +1 -1
- package/build/components/interface-skeleton/index.js +1 -1
- package/build/components/interface-skeleton/index.js.map +1 -1
- package/build-module/components/complementary-area/index.js +12 -10
- package/build-module/components/complementary-area/index.js.map +1 -1
- package/build-module/components/complementary-area-header/index.js +5 -14
- package/build-module/components/complementary-area-header/index.js.map +1 -1
- package/build-module/components/complementary-area-toggle/index.js +7 -5
- package/build-module/components/complementary-area-toggle/index.js.map +1 -1
- package/build-module/components/interface-skeleton/index.js +1 -1
- package/build-module/components/interface-skeleton/index.js.map +1 -1
- package/build-style/style-rtl.css +4 -38
- package/build-style/style.css +4 -38
- package/package.json +14 -14
- package/src/components/complementary-area/README.md +0 -8
- package/src/components/complementary-area/index.js +14 -12
- package/src/components/complementary-area/style.scss +1 -5
- package/src/components/complementary-area-header/index.js +11 -22
- package/src/components/complementary-area-header/style.scss +3 -33
- package/src/components/complementary-area-toggle/index.js +7 -6
- package/src/components/interface-skeleton/index.js +1 -1
- package/build/components/complementary-area-context/index.js +0 -17
- package/build/components/complementary-area-context/index.js.map +0 -1
- package/build-module/components/complementary-area-context/index.js +0 -11
- package/build-module/components/complementary-area-context/index.js.map +0 -1
- package/complementary-area-context/index.js +0 -12
- package/lock-unlock.js +0 -10
- package/src/components/complementary-area-context/index.js +0 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","closeSmall","ComplementaryAreaToggle","jsx","_jsx","jsxs","_jsxs","
|
|
1
|
+
{"version":3,"names":["clsx","closeSmall","ComplementaryAreaToggle","jsx","_jsx","jsxs","_jsxs","ComplementaryAreaHeader","children","className","toggleButtonProps","toggleButton","icon","tabIndex"],"sources":["@wordpress/interface/src/components/complementary-area-header/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { closeSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport ComplementaryAreaToggle from '../complementary-area-toggle';\n\nconst ComplementaryAreaHeader = ( {\n\tchildren,\n\tclassName,\n\ttoggleButtonProps,\n} ) => {\n\tconst toggleButton = (\n\t\t<ComplementaryAreaToggle icon={ closeSmall } { ...toggleButtonProps } />\n\t);\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx(\n\t\t\t\t'components-panel__header',\n\t\t\t\t'interface-complementary-area-header',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t\ttabIndex={ -1 }\n\t\t>\n\t\t\t{ children }\n\t\t\t{ toggleButton }\n\t\t</div>\n\t);\n};\n\nexport default ComplementaryAreaHeader;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SAASC,UAAU,QAAQ,kBAAkB;;AAE7C;AACA;AACA;AACA,OAAOC,uBAAuB,MAAM,8BAA8B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAEnE,MAAMC,uBAAuB,GAAGA,CAAE;EACjCC,QAAQ;EACRC,SAAS;EACTC;AACD,CAAC,KAAM;EACN,MAAMC,YAAY,gBACjBP,IAAA,CAACF,uBAAuB;IAACU,IAAI,EAAGX,UAAY;IAAA,GAAMS;EAAiB,CAAI,CACvE;EACD,oBACCJ,KAAA;IACCG,SAAS,EAAGT,IAAI,CACf,0BAA0B,EAC1B,qCAAqC,EACrCS,SACD,CAAG;IACHI,QAAQ,EAAG,CAAC,CAAG;IAAAL,QAAA,GAEbA,QAAQ,EACRG,YAAY;EAAA,CACV,CAAC;AAER,CAAC;AAED,eAAeJ,uBAAuB","ignoreList":[]}
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Button } from '@wordpress/components';
|
|
5
5
|
import { useDispatch, useSelect } from '@wordpress/data';
|
|
6
|
+
import { usePluginContext } from '@wordpress/plugins';
|
|
6
7
|
|
|
7
8
|
/**
|
|
8
9
|
* Internal dependencies
|
|
9
10
|
*/
|
|
10
11
|
import { store as interfaceStore } from '../../store';
|
|
11
|
-
import complementaryAreaContext from '../complementary-area-context';
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* Whether the role supports checked state.
|
|
@@ -21,17 +21,20 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
21
21
|
function roleSupportsCheckedState(role) {
|
|
22
22
|
return ['checkbox', 'option', 'radio', 'switch', 'menuitemcheckbox', 'menuitemradio', 'treeitem'].includes(role);
|
|
23
23
|
}
|
|
24
|
-
function ComplementaryAreaToggle({
|
|
24
|
+
export default function ComplementaryAreaToggle({
|
|
25
25
|
as = Button,
|
|
26
26
|
scope,
|
|
27
|
-
identifier,
|
|
28
|
-
icon,
|
|
27
|
+
identifier: identifierProp,
|
|
28
|
+
icon: iconProp,
|
|
29
29
|
selectedIcon,
|
|
30
30
|
name,
|
|
31
31
|
shortcut,
|
|
32
32
|
...props
|
|
33
33
|
}) {
|
|
34
34
|
const ComponentToUse = as;
|
|
35
|
+
const context = usePluginContext();
|
|
36
|
+
const icon = iconProp || context.icon;
|
|
37
|
+
const identifier = identifierProp || `${context.name}/${name}`;
|
|
35
38
|
const isSelected = useSelect(select => select(interfaceStore).getActiveComplementaryArea(scope) === identifier, [identifier, scope]);
|
|
36
39
|
const {
|
|
37
40
|
enableComplementaryArea,
|
|
@@ -54,5 +57,4 @@ function ComplementaryAreaToggle({
|
|
|
54
57
|
...props
|
|
55
58
|
});
|
|
56
59
|
}
|
|
57
|
-
export default complementaryAreaContext(ComplementaryAreaToggle);
|
|
58
60
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Button","useDispatch","useSelect","
|
|
1
|
+
{"version":3,"names":["Button","useDispatch","useSelect","usePluginContext","store","interfaceStore","jsx","_jsx","roleSupportsCheckedState","role","includes","ComplementaryAreaToggle","as","scope","identifier","identifierProp","icon","iconProp","selectedIcon","name","shortcut","props","ComponentToUse","context","isSelected","select","getActiveComplementaryArea","enableComplementaryArea","disableComplementaryArea","replace","undefined","onClick"],"sources":["@wordpress/interface/src/components/complementary-area-toggle/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { usePluginContext } from '@wordpress/plugins';\n\n/**\n * Internal dependencies\n */\nimport { store as interfaceStore } from '../../store';\n\n/**\n * Whether the role supports checked state.\n *\n * @param {import('react').AriaRole} role Role.\n * @return {boolean} Whether the role supports checked state.\n * @see https://www.w3.org/TR/wai-aria-1.1/#aria-checked\n */\nfunction roleSupportsCheckedState( role ) {\n\treturn [\n\t\t'checkbox',\n\t\t'option',\n\t\t'radio',\n\t\t'switch',\n\t\t'menuitemcheckbox',\n\t\t'menuitemradio',\n\t\t'treeitem',\n\t].includes( role );\n}\n\nexport default function ComplementaryAreaToggle( {\n\tas = Button,\n\tscope,\n\tidentifier: identifierProp,\n\ticon: iconProp,\n\tselectedIcon,\n\tname,\n\tshortcut,\n\t...props\n} ) {\n\tconst ComponentToUse = as;\n\tconst context = usePluginContext();\n\tconst icon = iconProp || context.icon;\n\tconst identifier = identifierProp || `${ context.name }/${ name }`;\n\tconst isSelected = useSelect(\n\t\t( select ) =>\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea( scope ) ===\n\t\t\tidentifier,\n\t\t[ identifier, scope ]\n\t);\n\n\tconst { enableComplementaryArea, disableComplementaryArea } =\n\t\tuseDispatch( interfaceStore );\n\n\treturn (\n\t\t<ComponentToUse\n\t\t\ticon={ selectedIcon && isSelected ? selectedIcon : icon }\n\t\t\taria-controls={ identifier.replace( '/', ':' ) }\n\t\t\t// Make sure aria-checked matches spec https://www.w3.org/TR/wai-aria-1.1/#aria-checked\n\t\t\taria-checked={\n\t\t\t\troleSupportsCheckedState( props.role ) ? isSelected : undefined\n\t\t\t}\n\t\t\tonClick={ () => {\n\t\t\t\tif ( isSelected ) {\n\t\t\t\t\tdisableComplementaryArea( scope );\n\t\t\t\t} else {\n\t\t\t\t\tenableComplementaryArea( scope, identifier );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tshortcut={ shortcut }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,gBAAgB,QAAQ,oBAAoB;;AAErD;AACA;AACA;AACA,SAASC,KAAK,IAAIC,cAAc,QAAQ,aAAa;;AAErD;AACA;AACA;AACA;AACA;AACA;AACA;AANA,SAAAC,GAAA,IAAAC,IAAA;AAOA,SAASC,wBAAwBA,CAAEC,IAAI,EAAG;EACzC,OAAO,CACN,UAAU,EACV,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,kBAAkB,EAClB,eAAe,EACf,UAAU,CACV,CAACC,QAAQ,CAAED,IAAK,CAAC;AACnB;AAEA,eAAe,SAASE,uBAAuBA,CAAE;EAChDC,EAAE,GAAGZ,MAAM;EACXa,KAAK;EACLC,UAAU,EAAEC,cAAc;EAC1BC,IAAI,EAAEC,QAAQ;EACdC,YAAY;EACZC,IAAI;EACJC,QAAQ;EACR,GAAGC;AACJ,CAAC,EAAG;EACH,MAAMC,cAAc,GAAGV,EAAE;EACzB,MAAMW,OAAO,GAAGpB,gBAAgB,CAAC,CAAC;EAClC,MAAMa,IAAI,GAAGC,QAAQ,IAAIM,OAAO,CAACP,IAAI;EACrC,MAAMF,UAAU,GAAGC,cAAc,IAAI,GAAIQ,OAAO,CAACJ,IAAI,IAAMA,IAAI,EAAG;EAClE,MAAMK,UAAU,GAAGtB,SAAS,CACzBuB,MAAM,IACPA,MAAM,CAAEpB,cAAe,CAAC,CAACqB,0BAA0B,CAAEb,KAAM,CAAC,KAC5DC,UAAU,EACX,CAAEA,UAAU,EAAED,KAAK,CACpB,CAAC;EAED,MAAM;IAAEc,uBAAuB;IAAEC;EAAyB,CAAC,GAC1D3B,WAAW,CAAEI,cAAe,CAAC;EAE9B,oBACCE,IAAA,CAACe,cAAc;IACdN,IAAI,EAAGE,YAAY,IAAIM,UAAU,GAAGN,YAAY,GAAGF,IAAM;IACzD,iBAAgBF,UAAU,CAACe,OAAO,CAAE,GAAG,EAAE,GAAI;IAC7C;IAAA;IACA,gBACCrB,wBAAwB,CAAEa,KAAK,CAACZ,IAAK,CAAC,GAAGe,UAAU,GAAGM,SACtD;IACDC,OAAO,EAAGA,CAAA,KAAM;MACf,IAAKP,UAAU,EAAG;QACjBI,wBAAwB,CAAEf,KAAM,CAAC;MAClC,CAAC,MAAM;QACNc,uBAAuB,CAAEd,KAAK,EAAEC,UAAW,CAAC;MAC7C;IACD,CAAG;IACHM,QAAQ,EAAGA,QAAU;IAAA,GAChBC;EAAK,CACV,CAAC;AAEJ","ignoreList":[]}
|
|
@@ -95,7 +95,7 @@ function InterfaceSkeleton({
|
|
|
95
95
|
/* translators: accessibility text for the secondary sidebar landmark region. */
|
|
96
96
|
secondarySidebar: __('Block Library'),
|
|
97
97
|
/* translators: accessibility text for the settings landmark region. */
|
|
98
|
-
sidebar:
|
|
98
|
+
sidebar: _x('Settings', 'settings landmark area'),
|
|
99
99
|
/* translators: accessibility text for the publish landmark region. */
|
|
100
100
|
actions: __('Publish'),
|
|
101
101
|
/* translators: accessibility text for the footer landmark region. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","forwardRef","useEffect","__unstableMotion","motion","__unstableAnimatePresence","AnimatePresence","__","_x","useReducedMotion","useViewportMatch","useResizeObserver","NavigableRegion","jsx","_jsx","jsxs","_jsxs","ANIMATION_DURATION","commonTransition","type","duration","ease","useHTMLClass","className","element","document","querySelector","classList","toggle","headerVariants","hidden","opacity","marginTop","visible","distractionFreeHover","transition","delay","delayChildren","distractionFreeHidden","distractionFreeDisabled","InterfaceSkeleton","isDistractionFree","footer","header","editorNotices","sidebar","secondarySidebar","content","actions","labels","ref","secondarySidebarResizeListener","secondarySidebarSize","isMobileViewport","disableMotion","defaultTransition","defaultLabels","body","mergedLabels","children","initial","as","div","whileHover","animate","exit","variants","ariaLabel","open","width","closed","style","position","height","left","x"],"sources":["@wordpress/interface/src/components/interface-skeleton/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef, useEffect } from '@wordpress/element';\nimport {\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tuseReducedMotion,\n\tuseViewportMatch,\n\tuseResizeObserver,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport NavigableRegion from '../navigable-region';\n\nconst ANIMATION_DURATION = 0.25;\nconst commonTransition = {\n\ttype: 'tween',\n\tduration: ANIMATION_DURATION,\n\tease: [ 0.6, 0, 0.4, 1 ],\n};\n\nfunction useHTMLClass( className ) {\n\tuseEffect( () => {\n\t\tconst element =\n\t\t\tdocument && document.querySelector( `html:not(.${ className })` );\n\t\tif ( ! element ) {\n\t\t\treturn;\n\t\t}\n\t\telement.classList.toggle( className );\n\t\treturn () => {\n\t\t\telement.classList.toggle( className );\n\t\t};\n\t}, [ className ] );\n}\n\nconst headerVariants = {\n\thidden: { opacity: 1, marginTop: -60 },\n\tvisible: { opacity: 1, marginTop: 0 },\n\tdistractionFreeHover: {\n\t\topacity: 1,\n\t\tmarginTop: 0,\n\t\ttransition: {\n\t\t\t...commonTransition,\n\t\t\tdelay: 0.2,\n\t\t\tdelayChildren: 0.2,\n\t\t},\n\t},\n\tdistractionFreeHidden: {\n\t\topacity: 0,\n\t\tmarginTop: -60,\n\t},\n\tdistractionFreeDisabled: {\n\t\topacity: 0,\n\t\tmarginTop: 0,\n\t\ttransition: {\n\t\t\t...commonTransition,\n\t\t\tdelay: 0.8,\n\t\t\tdelayChildren: 0.8,\n\t\t},\n\t},\n};\n\nfunction InterfaceSkeleton(\n\t{\n\t\tisDistractionFree,\n\t\tfooter,\n\t\theader,\n\t\teditorNotices,\n\t\tsidebar,\n\t\tsecondarySidebar,\n\t\tcontent,\n\t\tactions,\n\t\tlabels,\n\t\tclassName,\n\t},\n\tref\n) {\n\tconst [ secondarySidebarResizeListener, secondarySidebarSize ] =\n\t\tuseResizeObserver();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst disableMotion = useReducedMotion();\n\tconst defaultTransition = {\n\t\ttype: 'tween',\n\t\tduration: disableMotion ? 0 : ANIMATION_DURATION,\n\t\tease: [ 0.6, 0, 0.4, 1 ],\n\t};\n\tuseHTMLClass( 'interface-interface-skeleton__html-container' );\n\n\tconst defaultLabels = {\n\t\t/* translators: accessibility text for the top bar landmark region. */\n\t\theader: _x( 'Header', 'header landmark area' ),\n\t\t/* translators: accessibility text for the content landmark region. */\n\t\tbody: __( 'Content' ),\n\t\t/* translators: accessibility text for the secondary sidebar landmark region. */\n\t\tsecondarySidebar: __( 'Block Library' ),\n\t\t/* translators: accessibility text for the settings landmark region. */\n\t\tsidebar: __( 'Settings' ),\n\t\t/* translators: accessibility text for the publish landmark region. */\n\t\tactions: __( 'Publish' ),\n\t\t/* translators: accessibility text for the footer landmark region. */\n\t\tfooter: __( 'Footer' ),\n\t};\n\n\tconst mergedLabels = { ...defaultLabels, ...labels };\n\n\treturn (\n\t\t<div\n\t\t\tref={ ref }\n\t\t\tclassName={ clsx(\n\t\t\t\tclassName,\n\t\t\t\t'interface-interface-skeleton',\n\t\t\t\t!! footer && 'has-footer'\n\t\t\t) }\n\t\t>\n\t\t\t<div className=\"interface-interface-skeleton__editor\">\n\t\t\t\t<AnimatePresence initial={ false }>\n\t\t\t\t\t{ !! header && (\n\t\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\t\tas={ motion.div }\n\t\t\t\t\t\t\tclassName=\"interface-interface-skeleton__header\"\n\t\t\t\t\t\t\taria-label={ mergedLabels.header }\n\t\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\t\tisDistractionFree && ! isMobileViewport\n\t\t\t\t\t\t\t\t\t? 'distractionFreeHidden'\n\t\t\t\t\t\t\t\t\t: 'hidden'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\twhileHover={\n\t\t\t\t\t\t\t\tisDistractionFree && ! isMobileViewport\n\t\t\t\t\t\t\t\t\t? 'distractionFreeHover'\n\t\t\t\t\t\t\t\t\t: 'visible'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tanimate={\n\t\t\t\t\t\t\t\tisDistractionFree && ! isMobileViewport\n\t\t\t\t\t\t\t\t\t? 'distractionFreeDisabled'\n\t\t\t\t\t\t\t\t\t: 'visible'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\texit={\n\t\t\t\t\t\t\t\tisDistractionFree && ! isMobileViewport\n\t\t\t\t\t\t\t\t\t? 'distractionFreeHidden'\n\t\t\t\t\t\t\t\t\t: 'hidden'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvariants={ headerVariants }\n\t\t\t\t\t\t\ttransition={ defaultTransition }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ header }\n\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t) }\n\t\t\t\t</AnimatePresence>\n\t\t\t\t{ isDistractionFree && (\n\t\t\t\t\t<div className=\"interface-interface-skeleton__header\">\n\t\t\t\t\t\t{ editorNotices }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t\t<div className=\"interface-interface-skeleton__body\">\n\t\t\t\t\t<AnimatePresence initial={ false }>\n\t\t\t\t\t\t{ !! secondarySidebar && (\n\t\t\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\t\t\tclassName=\"interface-interface-skeleton__secondary-sidebar\"\n\t\t\t\t\t\t\t\tariaLabel={ mergedLabels.secondarySidebar }\n\t\t\t\t\t\t\t\tas={ motion.div }\n\t\t\t\t\t\t\t\tinitial=\"closed\"\n\t\t\t\t\t\t\t\tanimate=\"open\"\n\t\t\t\t\t\t\t\texit=\"closed\"\n\t\t\t\t\t\t\t\tvariants={ {\n\t\t\t\t\t\t\t\t\topen: { width: secondarySidebarSize.width },\n\t\t\t\t\t\t\t\t\tclosed: { width: 0 },\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\ttransition={ defaultTransition }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t\t\t\t\t\twidth: isMobileViewport\n\t\t\t\t\t\t\t\t\t\t\t? '100vw'\n\t\t\t\t\t\t\t\t\t\t\t: 'fit-content',\n\t\t\t\t\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tvariants={ {\n\t\t\t\t\t\t\t\t\t\topen: { x: 0 },\n\t\t\t\t\t\t\t\t\t\tclosed: { x: '-100%' },\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\ttransition={ defaultTransition }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ secondarySidebarResizeListener }\n\t\t\t\t\t\t\t\t\t{ secondarySidebar }\n\t\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</AnimatePresence>\n\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\tclassName=\"interface-interface-skeleton__content\"\n\t\t\t\t\t\tariaLabel={ mergedLabels.body }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ content }\n\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t{ !! sidebar && (\n\t\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\t\tclassName=\"interface-interface-skeleton__sidebar\"\n\t\t\t\t\t\t\tariaLabel={ mergedLabels.sidebar }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ sidebar }\n\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t) }\n\t\t\t\t\t{ !! actions && (\n\t\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\t\tclassName=\"interface-interface-skeleton__actions\"\n\t\t\t\t\t\t\tariaLabel={ mergedLabels.actions }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ actions }\n\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t{ !! footer && (\n\t\t\t\t<NavigableRegion\n\t\t\t\t\tclassName=\"interface-interface-skeleton__footer\"\n\t\t\t\t\tariaLabel={ mergedLabels.footer }\n\t\t\t\t>\n\t\t\t\t\t{ footer }\n\t\t\t\t</NavigableRegion>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default forwardRef( InterfaceSkeleton );\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","forwardRef","useEffect","__unstableMotion","motion","__unstableAnimatePresence","AnimatePresence","__","_x","useReducedMotion","useViewportMatch","useResizeObserver","NavigableRegion","jsx","_jsx","jsxs","_jsxs","ANIMATION_DURATION","commonTransition","type","duration","ease","useHTMLClass","className","element","document","querySelector","classList","toggle","headerVariants","hidden","opacity","marginTop","visible","distractionFreeHover","transition","delay","delayChildren","distractionFreeHidden","distractionFreeDisabled","InterfaceSkeleton","isDistractionFree","footer","header","editorNotices","sidebar","secondarySidebar","content","actions","labels","ref","secondarySidebarResizeListener","secondarySidebarSize","isMobileViewport","disableMotion","defaultTransition","defaultLabels","body","mergedLabels","children","initial","as","div","whileHover","animate","exit","variants","ariaLabel","open","width","closed","style","position","height","left","x"],"sources":["@wordpress/interface/src/components/interface-skeleton/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { forwardRef, useEffect } from '@wordpress/element';\nimport {\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tuseReducedMotion,\n\tuseViewportMatch,\n\tuseResizeObserver,\n} from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport NavigableRegion from '../navigable-region';\n\nconst ANIMATION_DURATION = 0.25;\nconst commonTransition = {\n\ttype: 'tween',\n\tduration: ANIMATION_DURATION,\n\tease: [ 0.6, 0, 0.4, 1 ],\n};\n\nfunction useHTMLClass( className ) {\n\tuseEffect( () => {\n\t\tconst element =\n\t\t\tdocument && document.querySelector( `html:not(.${ className })` );\n\t\tif ( ! element ) {\n\t\t\treturn;\n\t\t}\n\t\telement.classList.toggle( className );\n\t\treturn () => {\n\t\t\telement.classList.toggle( className );\n\t\t};\n\t}, [ className ] );\n}\n\nconst headerVariants = {\n\thidden: { opacity: 1, marginTop: -60 },\n\tvisible: { opacity: 1, marginTop: 0 },\n\tdistractionFreeHover: {\n\t\topacity: 1,\n\t\tmarginTop: 0,\n\t\ttransition: {\n\t\t\t...commonTransition,\n\t\t\tdelay: 0.2,\n\t\t\tdelayChildren: 0.2,\n\t\t},\n\t},\n\tdistractionFreeHidden: {\n\t\topacity: 0,\n\t\tmarginTop: -60,\n\t},\n\tdistractionFreeDisabled: {\n\t\topacity: 0,\n\t\tmarginTop: 0,\n\t\ttransition: {\n\t\t\t...commonTransition,\n\t\t\tdelay: 0.8,\n\t\t\tdelayChildren: 0.8,\n\t\t},\n\t},\n};\n\nfunction InterfaceSkeleton(\n\t{\n\t\tisDistractionFree,\n\t\tfooter,\n\t\theader,\n\t\teditorNotices,\n\t\tsidebar,\n\t\tsecondarySidebar,\n\t\tcontent,\n\t\tactions,\n\t\tlabels,\n\t\tclassName,\n\t},\n\tref\n) {\n\tconst [ secondarySidebarResizeListener, secondarySidebarSize ] =\n\t\tuseResizeObserver();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst disableMotion = useReducedMotion();\n\tconst defaultTransition = {\n\t\ttype: 'tween',\n\t\tduration: disableMotion ? 0 : ANIMATION_DURATION,\n\t\tease: [ 0.6, 0, 0.4, 1 ],\n\t};\n\tuseHTMLClass( 'interface-interface-skeleton__html-container' );\n\n\tconst defaultLabels = {\n\t\t/* translators: accessibility text for the top bar landmark region. */\n\t\theader: _x( 'Header', 'header landmark area' ),\n\t\t/* translators: accessibility text for the content landmark region. */\n\t\tbody: __( 'Content' ),\n\t\t/* translators: accessibility text for the secondary sidebar landmark region. */\n\t\tsecondarySidebar: __( 'Block Library' ),\n\t\t/* translators: accessibility text for the settings landmark region. */\n\t\tsidebar: _x( 'Settings', 'settings landmark area' ),\n\t\t/* translators: accessibility text for the publish landmark region. */\n\t\tactions: __( 'Publish' ),\n\t\t/* translators: accessibility text for the footer landmark region. */\n\t\tfooter: __( 'Footer' ),\n\t};\n\n\tconst mergedLabels = { ...defaultLabels, ...labels };\n\n\treturn (\n\t\t<div\n\t\t\tref={ ref }\n\t\t\tclassName={ clsx(\n\t\t\t\tclassName,\n\t\t\t\t'interface-interface-skeleton',\n\t\t\t\t!! footer && 'has-footer'\n\t\t\t) }\n\t\t>\n\t\t\t<div className=\"interface-interface-skeleton__editor\">\n\t\t\t\t<AnimatePresence initial={ false }>\n\t\t\t\t\t{ !! header && (\n\t\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\t\tas={ motion.div }\n\t\t\t\t\t\t\tclassName=\"interface-interface-skeleton__header\"\n\t\t\t\t\t\t\taria-label={ mergedLabels.header }\n\t\t\t\t\t\t\tinitial={\n\t\t\t\t\t\t\t\tisDistractionFree && ! isMobileViewport\n\t\t\t\t\t\t\t\t\t? 'distractionFreeHidden'\n\t\t\t\t\t\t\t\t\t: 'hidden'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\twhileHover={\n\t\t\t\t\t\t\t\tisDistractionFree && ! isMobileViewport\n\t\t\t\t\t\t\t\t\t? 'distractionFreeHover'\n\t\t\t\t\t\t\t\t\t: 'visible'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tanimate={\n\t\t\t\t\t\t\t\tisDistractionFree && ! isMobileViewport\n\t\t\t\t\t\t\t\t\t? 'distractionFreeDisabled'\n\t\t\t\t\t\t\t\t\t: 'visible'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\texit={\n\t\t\t\t\t\t\t\tisDistractionFree && ! isMobileViewport\n\t\t\t\t\t\t\t\t\t? 'distractionFreeHidden'\n\t\t\t\t\t\t\t\t\t: 'hidden'\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvariants={ headerVariants }\n\t\t\t\t\t\t\ttransition={ defaultTransition }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ header }\n\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t) }\n\t\t\t\t</AnimatePresence>\n\t\t\t\t{ isDistractionFree && (\n\t\t\t\t\t<div className=\"interface-interface-skeleton__header\">\n\t\t\t\t\t\t{ editorNotices }\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\t\t\t\t<div className=\"interface-interface-skeleton__body\">\n\t\t\t\t\t<AnimatePresence initial={ false }>\n\t\t\t\t\t\t{ !! secondarySidebar && (\n\t\t\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\t\t\tclassName=\"interface-interface-skeleton__secondary-sidebar\"\n\t\t\t\t\t\t\t\tariaLabel={ mergedLabels.secondarySidebar }\n\t\t\t\t\t\t\t\tas={ motion.div }\n\t\t\t\t\t\t\t\tinitial=\"closed\"\n\t\t\t\t\t\t\t\tanimate=\"open\"\n\t\t\t\t\t\t\t\texit=\"closed\"\n\t\t\t\t\t\t\t\tvariants={ {\n\t\t\t\t\t\t\t\t\topen: { width: secondarySidebarSize.width },\n\t\t\t\t\t\t\t\t\tclosed: { width: 0 },\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\ttransition={ defaultTransition }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t\t\t\t\t\twidth: isMobileViewport\n\t\t\t\t\t\t\t\t\t\t\t? '100vw'\n\t\t\t\t\t\t\t\t\t\t\t: 'fit-content',\n\t\t\t\t\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tvariants={ {\n\t\t\t\t\t\t\t\t\t\topen: { x: 0 },\n\t\t\t\t\t\t\t\t\t\tclosed: { x: '-100%' },\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\ttransition={ defaultTransition }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ secondarySidebarResizeListener }\n\t\t\t\t\t\t\t\t\t{ secondarySidebar }\n\t\t\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</AnimatePresence>\n\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\tclassName=\"interface-interface-skeleton__content\"\n\t\t\t\t\t\tariaLabel={ mergedLabels.body }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ content }\n\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t{ !! sidebar && (\n\t\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\t\tclassName=\"interface-interface-skeleton__sidebar\"\n\t\t\t\t\t\t\tariaLabel={ mergedLabels.sidebar }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ sidebar }\n\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t) }\n\t\t\t\t\t{ !! actions && (\n\t\t\t\t\t\t<NavigableRegion\n\t\t\t\t\t\t\tclassName=\"interface-interface-skeleton__actions\"\n\t\t\t\t\t\t\tariaLabel={ mergedLabels.actions }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ actions }\n\t\t\t\t\t\t</NavigableRegion>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t{ !! footer && (\n\t\t\t\t<NavigableRegion\n\t\t\t\t\tclassName=\"interface-interface-skeleton__footer\"\n\t\t\t\t\tariaLabel={ mergedLabels.footer }\n\t\t\t\t>\n\t\t\t\t\t{ footer }\n\t\t\t\t</NavigableRegion>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default forwardRef( InterfaceSkeleton );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -116,42 +116,13 @@
|
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
118
|
|
|
119
|
-
.components-panel__header.interface-complementary-area-header__small {
|
|
120
|
-
background: #fff;
|
|
121
|
-
padding-left: 4px;
|
|
122
|
-
}
|
|
123
|
-
.components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title {
|
|
124
|
-
overflow: hidden;
|
|
125
|
-
text-overflow: ellipsis;
|
|
126
|
-
white-space: nowrap;
|
|
127
|
-
width: 100%;
|
|
128
|
-
margin: 0;
|
|
129
|
-
}
|
|
130
|
-
@media (min-width: 782px) {
|
|
131
|
-
.components-panel__header.interface-complementary-area-header__small {
|
|
132
|
-
display: none;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
|
|
136
119
|
.interface-complementary-area-header {
|
|
137
120
|
background: #fff;
|
|
138
|
-
padding-left:
|
|
139
|
-
gap:
|
|
121
|
+
padding-left: 8px;
|
|
122
|
+
gap: 4px;
|
|
140
123
|
}
|
|
141
124
|
.interface-complementary-area-header .interface-complementary-area-header__title {
|
|
142
|
-
margin: 0;
|
|
143
|
-
}
|
|
144
|
-
.interface-complementary-area-header .components-button.has-icon {
|
|
145
|
-
display: none;
|
|
146
|
-
margin-right: auto;
|
|
147
|
-
}
|
|
148
|
-
.interface-complementary-area-header .components-button.has-icon ~ .components-button {
|
|
149
|
-
margin-right: 0;
|
|
150
|
-
}
|
|
151
|
-
@media (min-width: 782px) {
|
|
152
|
-
.interface-complementary-area-header .components-button.has-icon {
|
|
153
|
-
display: flex;
|
|
154
|
-
}
|
|
125
|
+
margin: 0 0 0 auto;
|
|
155
126
|
}
|
|
156
127
|
|
|
157
128
|
.interface-complementary-area {
|
|
@@ -181,12 +152,7 @@
|
|
|
181
152
|
z-index: 1;
|
|
182
153
|
}
|
|
183
154
|
.interface-complementary-area .components-panel__header.editor-sidebar__panel-tabs {
|
|
184
|
-
top:
|
|
185
|
-
}
|
|
186
|
-
@media (min-width: 782px) {
|
|
187
|
-
.interface-complementary-area .components-panel__header.editor-sidebar__panel-tabs {
|
|
188
|
-
top: 0;
|
|
189
|
-
}
|
|
155
|
+
top: 0;
|
|
190
156
|
}
|
|
191
157
|
.interface-complementary-area p:not(.components-base-control__help, .components-form-token-field__help) {
|
|
192
158
|
margin-top: 0;
|
package/build-style/style.css
CHANGED
|
@@ -116,42 +116,13 @@
|
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
118
|
|
|
119
|
-
.components-panel__header.interface-complementary-area-header__small {
|
|
120
|
-
background: #fff;
|
|
121
|
-
padding-right: 4px;
|
|
122
|
-
}
|
|
123
|
-
.components-panel__header.interface-complementary-area-header__small .interface-complementary-area-header__small-title {
|
|
124
|
-
overflow: hidden;
|
|
125
|
-
text-overflow: ellipsis;
|
|
126
|
-
white-space: nowrap;
|
|
127
|
-
width: 100%;
|
|
128
|
-
margin: 0;
|
|
129
|
-
}
|
|
130
|
-
@media (min-width: 782px) {
|
|
131
|
-
.components-panel__header.interface-complementary-area-header__small {
|
|
132
|
-
display: none;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
|
|
136
119
|
.interface-complementary-area-header {
|
|
137
120
|
background: #fff;
|
|
138
|
-
padding-right:
|
|
139
|
-
gap:
|
|
121
|
+
padding-right: 8px;
|
|
122
|
+
gap: 4px;
|
|
140
123
|
}
|
|
141
124
|
.interface-complementary-area-header .interface-complementary-area-header__title {
|
|
142
|
-
margin: 0;
|
|
143
|
-
}
|
|
144
|
-
.interface-complementary-area-header .components-button.has-icon {
|
|
145
|
-
display: none;
|
|
146
|
-
margin-left: auto;
|
|
147
|
-
}
|
|
148
|
-
.interface-complementary-area-header .components-button.has-icon ~ .components-button {
|
|
149
|
-
margin-left: 0;
|
|
150
|
-
}
|
|
151
|
-
@media (min-width: 782px) {
|
|
152
|
-
.interface-complementary-area-header .components-button.has-icon {
|
|
153
|
-
display: flex;
|
|
154
|
-
}
|
|
125
|
+
margin: 0 auto 0 0;
|
|
155
126
|
}
|
|
156
127
|
|
|
157
128
|
.interface-complementary-area {
|
|
@@ -181,12 +152,7 @@
|
|
|
181
152
|
z-index: 1;
|
|
182
153
|
}
|
|
183
154
|
.interface-complementary-area .components-panel__header.editor-sidebar__panel-tabs {
|
|
184
|
-
top:
|
|
185
|
-
}
|
|
186
|
-
@media (min-width: 782px) {
|
|
187
|
-
.interface-complementary-area .components-panel__header.editor-sidebar__panel-tabs {
|
|
188
|
-
top: 0;
|
|
189
|
-
}
|
|
155
|
+
top: 0;
|
|
190
156
|
}
|
|
191
157
|
.interface-complementary-area p:not(.components-base-control__help, .components-form-token-field__help) {
|
|
192
158
|
margin-top: 0;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/interface",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "8.1.0",
|
|
4
4
|
"description": "Interface module for WordPress. The package contains shared functionality across the modern JavaScript-based WordPress screens.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
"main": "build/index.js",
|
|
27
27
|
"module": "build-module/index.js",
|
|
28
28
|
"react-native": "src/index",
|
|
29
|
+
"wpScript": true,
|
|
29
30
|
"sideEffects": [
|
|
30
31
|
"build-style/**",
|
|
31
32
|
"src/**/*.scss",
|
|
@@ -33,18 +34,17 @@
|
|
|
33
34
|
],
|
|
34
35
|
"dependencies": {
|
|
35
36
|
"@babel/runtime": "7.25.7",
|
|
36
|
-
"@wordpress/a11y": "
|
|
37
|
-
"@wordpress/components": "
|
|
38
|
-
"@wordpress/compose": "
|
|
39
|
-
"@wordpress/data": "
|
|
40
|
-
"@wordpress/deprecated": "
|
|
41
|
-
"@wordpress/element": "
|
|
42
|
-
"@wordpress/i18n": "
|
|
43
|
-
"@wordpress/icons": "
|
|
44
|
-
"@wordpress/plugins": "
|
|
45
|
-
"@wordpress/preferences": "
|
|
46
|
-
"@wordpress/
|
|
47
|
-
"@wordpress/viewport": "^6.10.0",
|
|
37
|
+
"@wordpress/a11y": "*",
|
|
38
|
+
"@wordpress/components": "*",
|
|
39
|
+
"@wordpress/compose": "*",
|
|
40
|
+
"@wordpress/data": "*",
|
|
41
|
+
"@wordpress/deprecated": "*",
|
|
42
|
+
"@wordpress/element": "*",
|
|
43
|
+
"@wordpress/i18n": "*",
|
|
44
|
+
"@wordpress/icons": "*",
|
|
45
|
+
"@wordpress/plugins": "*",
|
|
46
|
+
"@wordpress/preferences": "*",
|
|
47
|
+
"@wordpress/viewport": "*",
|
|
48
48
|
"clsx": "^2.1.1"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
@@ -54,5 +54,5 @@
|
|
|
54
54
|
"publishConfig": {
|
|
55
55
|
"access": "public"
|
|
56
56
|
},
|
|
57
|
-
"gitHead": "
|
|
57
|
+
"gitHead": "510540d99f3d222a96f08d3d7b66c9e7a726f705"
|
|
58
58
|
}
|
|
@@ -84,14 +84,6 @@ The scope of the complementary area e.g: "core", "myplugin/custom-screen-a",
|
|
|
84
84
|
- Type: `String`
|
|
85
85
|
- Required: Yes
|
|
86
86
|
|
|
87
|
-
### smallScreenTitle
|
|
88
|
-
|
|
89
|
-
In small screens, the complementary area may take up the entire screen.
|
|
90
|
-
`smallScreenTitle` allows displaying a title above the complementary area, so the user is more aware of what the area refers to.
|
|
91
|
-
|
|
92
|
-
- Type: `String`
|
|
93
|
-
- Required: No
|
|
94
|
-
|
|
95
87
|
### title
|
|
96
88
|
|
|
97
89
|
Human friendly title of the complementary area.
|
|
@@ -25,6 +25,7 @@ import {
|
|
|
25
25
|
useViewportMatch,
|
|
26
26
|
usePrevious,
|
|
27
27
|
} from '@wordpress/compose';
|
|
28
|
+
import { usePluginContext } from '@wordpress/plugins';
|
|
28
29
|
|
|
29
30
|
/**
|
|
30
31
|
* Internal dependencies
|
|
@@ -32,7 +33,6 @@ import {
|
|
|
32
33
|
import ComplementaryAreaHeader from '../complementary-area-header';
|
|
33
34
|
import ComplementaryAreaMoreMenuItem from '../complementary-area-more-menu-item';
|
|
34
35
|
import ComplementaryAreaToggle from '../complementary-area-toggle';
|
|
35
|
-
import withComplementaryAreaContext from '../complementary-area-context';
|
|
36
36
|
import PinnedItems from '../pinned-items';
|
|
37
37
|
import { store as interfaceStore } from '../../store';
|
|
38
38
|
|
|
@@ -171,19 +171,22 @@ function ComplementaryArea( {
|
|
|
171
171
|
children,
|
|
172
172
|
className,
|
|
173
173
|
closeLabel = __( 'Close plugin' ),
|
|
174
|
-
identifier,
|
|
174
|
+
identifier: identifierProp,
|
|
175
175
|
header,
|
|
176
176
|
headerClassName,
|
|
177
|
-
icon,
|
|
177
|
+
icon: iconProp,
|
|
178
178
|
isPinnable = true,
|
|
179
179
|
panelClassName,
|
|
180
180
|
scope,
|
|
181
181
|
name,
|
|
182
|
-
smallScreenTitle,
|
|
183
182
|
title,
|
|
184
183
|
toggleShortcut,
|
|
185
184
|
isActiveByDefault,
|
|
186
185
|
} ) {
|
|
186
|
+
const context = usePluginContext();
|
|
187
|
+
const icon = iconProp || context.icon;
|
|
188
|
+
const identifier = identifierProp || `${ context.name }/${ name }`;
|
|
189
|
+
|
|
187
190
|
// This state is used to delay the rendering of the Fill
|
|
188
191
|
// until the initial effect runs.
|
|
189
192
|
// This prevents the animation from running on mount if
|
|
@@ -220,6 +223,9 @@ function ComplementaryArea( {
|
|
|
220
223
|
},
|
|
221
224
|
[ identifier, scope ]
|
|
222
225
|
);
|
|
226
|
+
|
|
227
|
+
const isMobileViewport = useViewportMatch( 'medium', '<' );
|
|
228
|
+
|
|
223
229
|
useAdjustComplementaryListener(
|
|
224
230
|
scope,
|
|
225
231
|
identifier,
|
|
@@ -300,10 +306,9 @@ function ComplementaryArea( {
|
|
|
300
306
|
className={ headerClassName }
|
|
301
307
|
closeLabel={ closeLabel }
|
|
302
308
|
onClose={ () => disableComplementaryArea( scope ) }
|
|
303
|
-
smallScreenTitle={ smallScreenTitle }
|
|
304
309
|
toggleButtonProps={ {
|
|
305
310
|
label: closeLabel,
|
|
306
|
-
size: '
|
|
311
|
+
size: 'compact',
|
|
307
312
|
shortcut: toggleShortcut,
|
|
308
313
|
scope,
|
|
309
314
|
identifier,
|
|
@@ -314,7 +319,7 @@ function ComplementaryArea( {
|
|
|
314
319
|
<h2 className="interface-complementary-area-header__title">
|
|
315
320
|
{ title }
|
|
316
321
|
</h2>
|
|
317
|
-
{ isPinnable && (
|
|
322
|
+
{ isPinnable && ! isMobileViewport && (
|
|
318
323
|
<Button
|
|
319
324
|
className="interface-complementary-area__pin-unpin-item"
|
|
320
325
|
icon={ isPinned ? starFilled : starEmpty }
|
|
@@ -343,9 +348,6 @@ function ComplementaryArea( {
|
|
|
343
348
|
);
|
|
344
349
|
}
|
|
345
350
|
|
|
346
|
-
|
|
347
|
-
withComplementaryAreaContext( ComplementaryArea );
|
|
348
|
-
|
|
349
|
-
ComplementaryAreaWrapped.Slot = ComplementaryAreaSlot;
|
|
351
|
+
ComplementaryArea.Slot = ComplementaryAreaSlot;
|
|
350
352
|
|
|
351
|
-
export default
|
|
353
|
+
export default ComplementaryArea;
|
|
@@ -14,7 +14,6 @@ import { closeSmall } from '@wordpress/icons';
|
|
|
14
14
|
import ComplementaryAreaToggle from '../complementary-area-toggle';
|
|
15
15
|
|
|
16
16
|
const ComplementaryAreaHeader = ( {
|
|
17
|
-
smallScreenTitle,
|
|
18
17
|
children,
|
|
19
18
|
className,
|
|
20
19
|
toggleButtonProps,
|
|
@@ -23,27 +22,17 @@ const ComplementaryAreaHeader = ( {
|
|
|
23
22
|
<ComplementaryAreaToggle icon={ closeSmall } { ...toggleButtonProps } />
|
|
24
23
|
);
|
|
25
24
|
return (
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
'components-panel__header',
|
|
38
|
-
'interface-complementary-area-header',
|
|
39
|
-
className
|
|
40
|
-
) }
|
|
41
|
-
tabIndex={ -1 }
|
|
42
|
-
>
|
|
43
|
-
{ children }
|
|
44
|
-
{ toggleButton }
|
|
45
|
-
</div>
|
|
46
|
-
</>
|
|
25
|
+
<div
|
|
26
|
+
className={ clsx(
|
|
27
|
+
'components-panel__header',
|
|
28
|
+
'interface-complementary-area-header',
|
|
29
|
+
className
|
|
30
|
+
) }
|
|
31
|
+
tabIndex={ -1 }
|
|
32
|
+
>
|
|
33
|
+
{ children }
|
|
34
|
+
{ toggleButton }
|
|
35
|
+
</div>
|
|
47
36
|
);
|
|
48
37
|
};
|
|
49
38
|
|
|
@@ -1,39 +1,9 @@
|
|
|
1
|
-
.components-panel__header.interface-complementary-area-header__small {
|
|
2
|
-
background: $white;
|
|
3
|
-
padding-right: $grid-unit-05;
|
|
4
|
-
|
|
5
|
-
.interface-complementary-area-header__small-title {
|
|
6
|
-
overflow: hidden;
|
|
7
|
-
text-overflow: ellipsis;
|
|
8
|
-
white-space: nowrap;
|
|
9
|
-
width: 100%;
|
|
10
|
-
margin: 0;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
@include break-medium() {
|
|
14
|
-
display: none;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
|
|
18
1
|
.interface-complementary-area-header {
|
|
19
2
|
background: $white;
|
|
20
|
-
padding-right: $grid-unit-
|
|
21
|
-
gap: $grid-unit-
|
|
3
|
+
padding-right: $grid-unit-10; // Reduced padding to account for close buttons.
|
|
4
|
+
gap: $grid-unit-05; // Always ensure space between contents and close buttons.
|
|
22
5
|
|
|
23
6
|
.interface-complementary-area-header__title {
|
|
24
|
-
margin: 0;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
.components-button.has-icon {
|
|
28
|
-
display: none;
|
|
29
|
-
margin-left: auto;
|
|
30
|
-
|
|
31
|
-
~ .components-button {
|
|
32
|
-
margin-left: 0;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
@include break-medium() {
|
|
36
|
-
display: flex;
|
|
37
|
-
}
|
|
7
|
+
margin: 0 auto 0 0;
|
|
38
8
|
}
|
|
39
9
|
}
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Button } from '@wordpress/components';
|
|
5
5
|
import { useDispatch, useSelect } from '@wordpress/data';
|
|
6
|
+
import { usePluginContext } from '@wordpress/plugins';
|
|
6
7
|
|
|
7
8
|
/**
|
|
8
9
|
* Internal dependencies
|
|
9
10
|
*/
|
|
10
11
|
import { store as interfaceStore } from '../../store';
|
|
11
|
-
import complementaryAreaContext from '../complementary-area-context';
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* Whether the role supports checked state.
|
|
@@ -29,17 +29,20 @@ function roleSupportsCheckedState( role ) {
|
|
|
29
29
|
].includes( role );
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
-
function ComplementaryAreaToggle( {
|
|
32
|
+
export default function ComplementaryAreaToggle( {
|
|
33
33
|
as = Button,
|
|
34
34
|
scope,
|
|
35
|
-
identifier,
|
|
36
|
-
icon,
|
|
35
|
+
identifier: identifierProp,
|
|
36
|
+
icon: iconProp,
|
|
37
37
|
selectedIcon,
|
|
38
38
|
name,
|
|
39
39
|
shortcut,
|
|
40
40
|
...props
|
|
41
41
|
} ) {
|
|
42
42
|
const ComponentToUse = as;
|
|
43
|
+
const context = usePluginContext();
|
|
44
|
+
const icon = iconProp || context.icon;
|
|
45
|
+
const identifier = identifierProp || `${ context.name }/${ name }`;
|
|
43
46
|
const isSelected = useSelect(
|
|
44
47
|
( select ) =>
|
|
45
48
|
select( interfaceStore ).getActiveComplementaryArea( scope ) ===
|
|
@@ -70,5 +73,3 @@ function ComplementaryAreaToggle( {
|
|
|
70
73
|
/>
|
|
71
74
|
);
|
|
72
75
|
}
|
|
73
|
-
|
|
74
|
-
export default complementaryAreaContext( ComplementaryAreaToggle );
|
|
@@ -105,7 +105,7 @@ function InterfaceSkeleton(
|
|
|
105
105
|
/* translators: accessibility text for the secondary sidebar landmark region. */
|
|
106
106
|
secondarySidebar: __( 'Block Library' ),
|
|
107
107
|
/* translators: accessibility text for the settings landmark region. */
|
|
108
|
-
sidebar:
|
|
108
|
+
sidebar: _x( 'Settings', 'settings landmark area' ),
|
|
109
109
|
/* translators: accessibility text for the publish landmark region. */
|
|
110
110
|
actions: __( 'Publish' ),
|
|
111
111
|
/* translators: accessibility text for the footer landmark region. */
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _plugins = require("@wordpress/plugins");
|
|
8
|
-
/**
|
|
9
|
-
* WordPress dependencies
|
|
10
|
-
*/
|
|
11
|
-
var _default = exports.default = (0, _plugins.withPluginContext)((context, ownProps) => {
|
|
12
|
-
return {
|
|
13
|
-
icon: ownProps.icon || context.icon,
|
|
14
|
-
identifier: ownProps.identifier || `${context.name}/${ownProps.name}`
|
|
15
|
-
};
|
|
16
|
-
});
|
|
17
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_plugins","require","_default","exports","default","withPluginContext","context","ownProps","icon","identifier","name"],"sources":["@wordpress/interface/src/components/complementary-area-context/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { withPluginContext } from '@wordpress/plugins';\n\nexport default withPluginContext( ( context, ownProps ) => {\n\treturn {\n\t\ticon: ownProps.icon || context.icon,\n\t\tidentifier:\n\t\t\townProps.identifier || `${ context.name }/${ ownProps.name }`,\n\t};\n} );\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AAHA;AACA;AACA;AAFA,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAKe,IAAAC,0BAAiB,EAAE,CAAEC,OAAO,EAAEC,QAAQ,KAAM;EAC1D,OAAO;IACNC,IAAI,EAAED,QAAQ,CAACC,IAAI,IAAIF,OAAO,CAACE,IAAI;IACnCC,UAAU,EACTF,QAAQ,CAACE,UAAU,IAAI,GAAIH,OAAO,CAACI,IAAI,IAAMH,QAAQ,CAACG,IAAI;EAC5D,CAAC;AACF,CAAE,CAAC","ignoreList":[]}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* WordPress dependencies
|
|
3
|
-
*/
|
|
4
|
-
import { withPluginContext } from '@wordpress/plugins';
|
|
5
|
-
export default withPluginContext((context, ownProps) => {
|
|
6
|
-
return {
|
|
7
|
-
icon: ownProps.icon || context.icon,
|
|
8
|
-
identifier: ownProps.identifier || `${context.name}/${ownProps.name}`
|
|
9
|
-
};
|
|
10
|
-
});
|
|
11
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["withPluginContext","context","ownProps","icon","identifier","name"],"sources":["@wordpress/interface/src/components/complementary-area-context/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { withPluginContext } from '@wordpress/plugins';\n\nexport default withPluginContext( ( context, ownProps ) => {\n\treturn {\n\t\ticon: ownProps.icon || context.icon,\n\t\tidentifier:\n\t\t\townProps.identifier || `${ context.name }/${ ownProps.name }`,\n\t};\n} );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,iBAAiB,QAAQ,oBAAoB;AAEtD,eAAeA,iBAAiB,CAAE,CAAEC,OAAO,EAAEC,QAAQ,KAAM;EAC1D,OAAO;IACNC,IAAI,EAAED,QAAQ,CAACC,IAAI,IAAIF,OAAO,CAACE,IAAI;IACnCC,UAAU,EACTF,QAAQ,CAACE,UAAU,IAAI,GAAIH,OAAO,CAACI,IAAI,IAAMH,QAAQ,CAACG,IAAI;EAC5D,CAAC;AACF,CAAE,CAAC","ignoreList":[]}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* WordPress dependencies
|
|
3
|
-
*/
|
|
4
|
-
import { withPluginContext } from '@wordpress/plugins';
|
|
5
|
-
|
|
6
|
-
export default withPluginContext( ( context, ownProps ) => {
|
|
7
|
-
return {
|
|
8
|
-
icon: ownProps.icon || context.icon,
|
|
9
|
-
identifier:
|
|
10
|
-
ownProps.identifier || `${ context.name }/${ ownProps.name }`,
|
|
11
|
-
};
|
|
12
|
-
} );
|