@wordpress/interface 4.8.0 → 4.11.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 CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 4.11.0 (2022-06-29)
6
+
7
+ ## 4.10.0 (2022-06-15)
8
+
9
+ ## 4.9.0 (2022-06-01)
10
+
5
11
  ## 4.8.0 (2022-05-18)
6
12
 
7
13
  ## 4.7.0 (2022-05-04)
@@ -22,6 +22,8 @@ var _components = require("@wordpress/components");
22
22
  /**
23
23
  * WordPress dependencies
24
24
  */
25
+ const noop = () => {};
26
+
25
27
  function ActionItemSlot(_ref) {
26
28
  let {
27
29
  name,
@@ -86,9 +88,8 @@ function ActionItem(_ref3) {
86
88
  } = _ref4;
87
89
  return (0, _element.createElement)(Component, (0, _extends2.default)({
88
90
  onClick: onClick || fpOnClick ? function () {
89
- (onClick || _lodash.noop)(...arguments);
90
-
91
- (fpOnClick || _lodash.noop)(...arguments);
91
+ (onClick || noop)(...arguments);
92
+ (fpOnClick || noop)(...arguments);
92
93
  } : undefined
93
94
  }, props));
94
95
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/interface/src/components/action-item/index.js"],"names":["ActionItemSlot","name","as","Component","ButtonGroup","fillProps","bubblesVirtually","props","fills","Children","toArray","initializedByPlugins","forEach","__unstableExplicitMenuItem","__unstableTarget","push","children","map","child","includes","ActionItem","Button","onClick","fpOnClick","noop","undefined","Slot"],"mappings":";;;;;;;;;AASA;;;;AANA;;AAKA;;AARA;AACA;AACA;;AAGA;AACA;AACA;AAIA,SAASA,cAAT,OAMI;AAAA,MANqB;AACxBC,IAAAA,IADwB;AAExBC,IAAAA,EAAE,EAAEC,SAAS,GAAGC,uBAFQ;AAGxBC,IAAAA,SAAS,GAAG,EAHY;AAIxBC,IAAAA,gBAJwB;AAKxB,OAAGC;AALqB,GAMrB;AACH,SACC,4BAAC,gBAAD;AACC,IAAA,IAAI,EAAGN,IADR;AAEC,IAAA,gBAAgB,EAAGK,gBAFpB;AAGC,IAAA,SAAS,EAAGD;AAHb,KAKKG,KAAF,IAAa;AACd,QAAK,qBAASC,kBAASC,OAAT,CAAkBF,KAAlB,CAAT,CAAL,EAA4C;AAC3C,aAAO,IAAP;AACA,KAHa,CAKd;AACA;AACA;AACA;AACA;;;AACA,UAAMG,oBAAoB,GAAG,EAA7B;;AACAF,sBAASG,OAAT,CACCJ,KADD,EAEC,SAEO;AAAA,UAFL;AACDD,QAAAA,KAAK,EAAE;AAAEM,UAAAA,0BAAF;AAA8BC,UAAAA;AAA9B;AADN,OAEK;;AACN,UAAKA,gBAAgB,IAAID,0BAAzB,EAAsD;AACrDF,QAAAA,oBAAoB,CAACI,IAArB,CAA2BD,gBAA3B;AACA;AACD,KARF;;AAUA,UAAME,QAAQ,GAAGP,kBAASQ,GAAT,CAAcT,KAAd,EAAuBU,KAAF,IAAa;AAClD,UACC,CAAEA,KAAK,CAACX,KAAN,CAAYM,0BAAd,IACAF,oBAAoB,CAACQ,QAArB,CACCD,KAAK,CAACX,KAAN,CAAYO,gBADb,CAFD,EAKE;AACD,eAAO,IAAP;AACA;;AACD,aAAOI,KAAP;AACA,KAVgB,CAAjB;;AAYA,WAAO,4BAAC,SAAD,EAAgBX,KAAhB,EAA0BS,QAA1B,CAAP;AACA,GAvCF,CADD;AA2CA;;AAED,SAASI,UAAT,QAA2E;AAAA,MAAtD;AAAEnB,IAAAA,IAAF;AAAQC,IAAAA,EAAE,EAAEC,SAAS,GAAGkB,kBAAxB;AAAgCC,IAAAA,OAAhC;AAAyC,OAAGf;AAA5C,GAAsD;AAC1E,SACC,4BAAC,gBAAD;AAAM,IAAA,IAAI,EAAGN;AAAb,KACG,SAA8B;AAAA,QAA5B;AAAEqB,MAAAA,OAAO,EAAEC;AAAX,KAA4B;AAC/B,WACC,4BAAC,SAAD;AACC,MAAA,OAAO,EACND,OAAO,IAAIC,SAAX,GACG,YAAe;AACf,SAAED,OAAO,IAAIE,YAAb,EAAqB,YAArB;;AACA,SAAED,SAAS,IAAIC,YAAf,EAAuB,YAAvB;AACC,OAJJ,GAKGC;AAPL,OASMlB,KATN,EADD;AAaA,GAfF,CADD;AAmBA;;AAEDa,UAAU,CAACM,IAAX,GAAkB1B,cAAlB;eAEeoB,U","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty, noop } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { ButtonGroup, Button, Slot, Fill } from '@wordpress/components';\nimport { Children } from '@wordpress/element';\n\nfunction ActionItemSlot( {\n\tname,\n\tas: Component = ButtonGroup,\n\tfillProps = {},\n\tbubblesVirtually,\n\t...props\n} ) {\n\treturn (\n\t\t<Slot\n\t\t\tname={ name }\n\t\t\tbubblesVirtually={ bubblesVirtually }\n\t\t\tfillProps={ fillProps }\n\t\t>\n\t\t\t{ ( fills ) => {\n\t\t\t\tif ( isEmpty( Children.toArray( fills ) ) ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\t// Special handling exists for backward compatibility.\n\t\t\t\t// It ensures that menu items created by plugin authors aren't\n\t\t\t\t// duplicated with automatically injected menu items coming\n\t\t\t\t// from pinnable plugin sidebars.\n\t\t\t\t// @see https://github.com/WordPress/gutenberg/issues/14457\n\t\t\t\tconst initializedByPlugins = [];\n\t\t\t\tChildren.forEach(\n\t\t\t\t\tfills,\n\t\t\t\t\t( {\n\t\t\t\t\t\tprops: { __unstableExplicitMenuItem, __unstableTarget },\n\t\t\t\t\t} ) => {\n\t\t\t\t\t\tif ( __unstableTarget && __unstableExplicitMenuItem ) {\n\t\t\t\t\t\t\tinitializedByPlugins.push( __unstableTarget );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t\tconst children = Children.map( fills, ( child ) => {\n\t\t\t\t\tif (\n\t\t\t\t\t\t! child.props.__unstableExplicitMenuItem &&\n\t\t\t\t\t\tinitializedByPlugins.includes(\n\t\t\t\t\t\t\tchild.props.__unstableTarget\n\t\t\t\t\t\t)\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\treturn child;\n\t\t\t\t} );\n\n\t\t\t\treturn <Component { ...props }>{ children }</Component>;\n\t\t\t} }\n\t\t</Slot>\n\t);\n}\n\nfunction ActionItem( { name, as: Component = Button, onClick, ...props } ) {\n\treturn (\n\t\t<Fill name={ name }>\n\t\t\t{ ( { onClick: fpOnClick } ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<Component\n\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\tonClick || fpOnClick\n\t\t\t\t\t\t\t\t? ( ...args ) => {\n\t\t\t\t\t\t\t\t\t\t( onClick || noop )( ...args );\n\t\t\t\t\t\t\t\t\t\t( fpOnClick || noop )( ...args );\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} }\n\t\t</Fill>\n\t);\n}\n\nActionItem.Slot = ActionItemSlot;\n\nexport default ActionItem;\n"]}
1
+ {"version":3,"sources":["@wordpress/interface/src/components/action-item/index.js"],"names":["noop","ActionItemSlot","name","as","Component","ButtonGroup","fillProps","bubblesVirtually","props","fills","Children","toArray","initializedByPlugins","forEach","__unstableExplicitMenuItem","__unstableTarget","push","children","map","child","includes","ActionItem","Button","onClick","fpOnClick","undefined","Slot"],"mappings":";;;;;;;;;AASA;;;;AANA;;AAKA;;AARA;AACA;AACA;;AAGA;AACA;AACA;AAIA,MAAMA,IAAI,GAAG,MAAM,CAAE,CAArB;;AAEA,SAASC,cAAT,OAMI;AAAA,MANqB;AACxBC,IAAAA,IADwB;AAExBC,IAAAA,EAAE,EAAEC,SAAS,GAAGC,uBAFQ;AAGxBC,IAAAA,SAAS,GAAG,EAHY;AAIxBC,IAAAA,gBAJwB;AAKxB,OAAGC;AALqB,GAMrB;AACH,SACC,4BAAC,gBAAD;AACC,IAAA,IAAI,EAAGN,IADR;AAEC,IAAA,gBAAgB,EAAGK,gBAFpB;AAGC,IAAA,SAAS,EAAGD;AAHb,KAKKG,KAAF,IAAa;AACd,QAAK,qBAASC,kBAASC,OAAT,CAAkBF,KAAlB,CAAT,CAAL,EAA4C;AAC3C,aAAO,IAAP;AACA,KAHa,CAKd;AACA;AACA;AACA;AACA;;;AACA,UAAMG,oBAAoB,GAAG,EAA7B;;AACAF,sBAASG,OAAT,CACCJ,KADD,EAEC,SAEO;AAAA,UAFL;AACDD,QAAAA,KAAK,EAAE;AAAEM,UAAAA,0BAAF;AAA8BC,UAAAA;AAA9B;AADN,OAEK;;AACN,UAAKA,gBAAgB,IAAID,0BAAzB,EAAsD;AACrDF,QAAAA,oBAAoB,CAACI,IAArB,CAA2BD,gBAA3B;AACA;AACD,KARF;;AAUA,UAAME,QAAQ,GAAGP,kBAASQ,GAAT,CAAcT,KAAd,EAAuBU,KAAF,IAAa;AAClD,UACC,CAAEA,KAAK,CAACX,KAAN,CAAYM,0BAAd,IACAF,oBAAoB,CAACQ,QAArB,CACCD,KAAK,CAACX,KAAN,CAAYO,gBADb,CAFD,EAKE;AACD,eAAO,IAAP;AACA;;AACD,aAAOI,KAAP;AACA,KAVgB,CAAjB;;AAYA,WAAO,4BAAC,SAAD,EAAgBX,KAAhB,EAA0BS,QAA1B,CAAP;AACA,GAvCF,CADD;AA2CA;;AAED,SAASI,UAAT,QAA2E;AAAA,MAAtD;AAAEnB,IAAAA,IAAF;AAAQC,IAAAA,EAAE,EAAEC,SAAS,GAAGkB,kBAAxB;AAAgCC,IAAAA,OAAhC;AAAyC,OAAGf;AAA5C,GAAsD;AAC1E,SACC,4BAAC,gBAAD;AAAM,IAAA,IAAI,EAAGN;AAAb,KACG,SAA8B;AAAA,QAA5B;AAAEqB,MAAAA,OAAO,EAAEC;AAAX,KAA4B;AAC/B,WACC,4BAAC,SAAD;AACC,MAAA,OAAO,EACND,OAAO,IAAIC,SAAX,GACG,YAAe;AACf,SAAED,OAAO,IAAIvB,IAAb,EAAqB,YAArB;AACA,SAAEwB,SAAS,IAAIxB,IAAf,EAAuB,YAAvB;AACC,OAJJ,GAKGyB;AAPL,OASMjB,KATN,EADD;AAaA,GAfF,CADD;AAmBA;;AAEDa,UAAU,CAACK,IAAX,GAAkBzB,cAAlB;eAEeoB,U","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { ButtonGroup, Button, Slot, Fill } from '@wordpress/components';\nimport { Children } from '@wordpress/element';\n\nconst noop = () => {};\n\nfunction ActionItemSlot( {\n\tname,\n\tas: Component = ButtonGroup,\n\tfillProps = {},\n\tbubblesVirtually,\n\t...props\n} ) {\n\treturn (\n\t\t<Slot\n\t\t\tname={ name }\n\t\t\tbubblesVirtually={ bubblesVirtually }\n\t\t\tfillProps={ fillProps }\n\t\t>\n\t\t\t{ ( fills ) => {\n\t\t\t\tif ( isEmpty( Children.toArray( fills ) ) ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\t// Special handling exists for backward compatibility.\n\t\t\t\t// It ensures that menu items created by plugin authors aren't\n\t\t\t\t// duplicated with automatically injected menu items coming\n\t\t\t\t// from pinnable plugin sidebars.\n\t\t\t\t// @see https://github.com/WordPress/gutenberg/issues/14457\n\t\t\t\tconst initializedByPlugins = [];\n\t\t\t\tChildren.forEach(\n\t\t\t\t\tfills,\n\t\t\t\t\t( {\n\t\t\t\t\t\tprops: { __unstableExplicitMenuItem, __unstableTarget },\n\t\t\t\t\t} ) => {\n\t\t\t\t\t\tif ( __unstableTarget && __unstableExplicitMenuItem ) {\n\t\t\t\t\t\t\tinitializedByPlugins.push( __unstableTarget );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t\tconst children = Children.map( fills, ( child ) => {\n\t\t\t\t\tif (\n\t\t\t\t\t\t! child.props.__unstableExplicitMenuItem &&\n\t\t\t\t\t\tinitializedByPlugins.includes(\n\t\t\t\t\t\t\tchild.props.__unstableTarget\n\t\t\t\t\t\t)\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\treturn child;\n\t\t\t\t} );\n\n\t\t\t\treturn <Component { ...props }>{ children }</Component>;\n\t\t\t} }\n\t\t</Slot>\n\t);\n}\n\nfunction ActionItem( { name, as: Component = Button, onClick, ...props } ) {\n\treturn (\n\t\t<Fill name={ name }>\n\t\t\t{ ( { onClick: fpOnClick } ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<Component\n\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\tonClick || fpOnClick\n\t\t\t\t\t\t\t\t? ( ...args ) => {\n\t\t\t\t\t\t\t\t\t\t( onClick || noop )( ...args );\n\t\t\t\t\t\t\t\t\t\t( fpOnClick || noop )( ...args );\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} }\n\t\t</Fill>\n\t);\n}\n\nActionItem.Slot = ActionItemSlot;\n\nexport default ActionItem;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/interface/src/components/complementary-area/index.js"],"names":["ComplementaryAreaSlot","scope","props","ComplementaryAreaFill","children","className","useAdjustComplementaryListener","identifier","activeArea","isActive","isSmall","previousIsSmall","shouldOpenWhenNotSmall","enableComplementaryArea","disableComplementaryArea","interfaceStore","current","ComplementaryArea","closeLabel","header","headerClassName","icon","isPinnable","panelClassName","name","smallScreenTitle","title","toggleShortcut","isActiveByDefault","showIconLabels","isPinned","isLarge","select","getActiveComplementaryArea","isItemPinned","_activeArea","viewportStore","isViewportMatch","pinItem","unpinItem","undefined","check","label","shortcut","starFilled","starEmpty","ComplementaryAreaWrapped","Slot"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Button, Panel, Slot, Fill } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { check, starEmpty, starFilled } from '@wordpress/icons';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { store as viewportStore } from '@wordpress/viewport';\n\n/**\n * Internal dependencies\n */\nimport ComplementaryAreaHeader from '../complementary-area-header';\nimport ComplementaryAreaMoreMenuItem from '../complementary-area-more-menu-item';\nimport ComplementaryAreaToggle from '../complementary-area-toggle';\nimport withComplementaryAreaContext from '../complementary-area-context';\nimport PinnedItems from '../pinned-items';\nimport { store as interfaceStore } from '../../store';\n\nfunction ComplementaryAreaSlot( { scope, ...props } ) {\n\treturn <Slot name={ `ComplementaryArea/${ scope }` } { ...props } />;\n}\n\nfunction ComplementaryAreaFill( { scope, children, className } ) {\n\treturn (\n\t\t<Fill name={ `ComplementaryArea/${ scope }` }>\n\t\t\t<div className={ className }>{ children }</div>\n\t\t</Fill>\n\t);\n}\n\nfunction useAdjustComplementaryListener(\n\tscope,\n\tidentifier,\n\tactiveArea,\n\tisActive,\n\tisSmall\n) {\n\tconst previousIsSmall = useRef( false );\n\tconst shouldOpenWhenNotSmall = useRef( false );\n\tconst { enableComplementaryArea, disableComplementaryArea } = useDispatch(\n\t\tinterfaceStore\n\t);\n\tuseEffect( () => {\n\t\t// If the complementary area is active and the editor is switching from a big to a small window size.\n\t\tif ( isActive && isSmall && ! previousIsSmall.current ) {\n\t\t\t// Disable the complementary area.\n\t\t\tdisableComplementaryArea( scope );\n\t\t\t// Flag the complementary area to be reopened when the window size goes from small to big.\n\t\t\tshouldOpenWhenNotSmall.current = true;\n\t\t} else if (\n\t\t\t// If there is a flag indicating the complementary area should be enabled when we go from small to big window size\n\t\t\t// and we are going from a small to big window size.\n\t\t\tshouldOpenWhenNotSmall.current &&\n\t\t\t! isSmall &&\n\t\t\tpreviousIsSmall.current\n\t\t) {\n\t\t\t// Remove the flag indicating the complementary area should be enabled.\n\t\t\tshouldOpenWhenNotSmall.current = false;\n\t\t\t// Enable the complementary area.\n\t\t\tenableComplementaryArea( scope, identifier );\n\t\t} else if (\n\t\t\t// If the flag is indicating the current complementary should be reopened but another complementary area becomes active,\n\t\t\t// remove the flag.\n\t\t\tshouldOpenWhenNotSmall.current &&\n\t\t\tactiveArea &&\n\t\t\tactiveArea !== identifier\n\t\t) {\n\t\t\tshouldOpenWhenNotSmall.current = false;\n\t\t}\n\t\tif ( isSmall !== previousIsSmall.current ) {\n\t\t\tpreviousIsSmall.current = isSmall;\n\t\t}\n\t}, [ isActive, isSmall, scope, identifier, activeArea ] );\n}\n\nfunction ComplementaryArea( {\n\tchildren,\n\tclassName,\n\tcloseLabel = __( 'Close plugin' ),\n\tidentifier,\n\theader,\n\theaderClassName,\n\ticon,\n\tisPinnable = true,\n\tpanelClassName,\n\tscope,\n\tname,\n\tsmallScreenTitle,\n\ttitle,\n\ttoggleShortcut,\n\tisActiveByDefault,\n\tshowIconLabels = false,\n} ) {\n\tconst { isActive, isPinned, activeArea, isSmall, isLarge } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveComplementaryArea, isItemPinned } = select(\n\t\t\t\tinterfaceStore\n\t\t\t);\n\t\t\tconst _activeArea = getActiveComplementaryArea( scope );\n\t\t\treturn {\n\t\t\t\tisActive: _activeArea === identifier,\n\t\t\t\tisPinned: isItemPinned( scope, identifier ),\n\t\t\t\tactiveArea: _activeArea,\n\t\t\t\tisSmall: select( viewportStore ).isViewportMatch( '< medium' ),\n\t\t\t\tisLarge: select( viewportStore ).isViewportMatch( 'large' ),\n\t\t\t};\n\t\t},\n\t\t[ identifier, scope ]\n\t);\n\tuseAdjustComplementaryListener(\n\t\tscope,\n\t\tidentifier,\n\t\tactiveArea,\n\t\tisActive,\n\t\tisSmall\n\t);\n\tconst {\n\t\tenableComplementaryArea,\n\t\tdisableComplementaryArea,\n\t\tpinItem,\n\t\tunpinItem,\n\t} = useDispatch( interfaceStore );\n\n\tuseEffect( () => {\n\t\tif ( isActiveByDefault && activeArea === undefined && ! isSmall ) {\n\t\t\tenableComplementaryArea( scope, identifier );\n\t\t}\n\t}, [ activeArea, isActiveByDefault, scope, identifier, isSmall ] );\n\n\treturn (\n\t\t<>\n\t\t\t{ isPinnable && (\n\t\t\t\t<PinnedItems scope={ scope }>\n\t\t\t\t\t{ isPinned && (\n\t\t\t\t\t\t<ComplementaryAreaToggle\n\t\t\t\t\t\t\tscope={ scope }\n\t\t\t\t\t\t\tidentifier={ identifier }\n\t\t\t\t\t\t\tisPressed={\n\t\t\t\t\t\t\t\tisActive && ( ! showIconLabels || isLarge )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\taria-expanded={ isActive }\n\t\t\t\t\t\t\tlabel={ title }\n\t\t\t\t\t\t\ticon={ showIconLabels ? check : icon }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PinnedItems>\n\t\t\t) }\n\t\t\t{ name && isPinnable && (\n\t\t\t\t<ComplementaryAreaMoreMenuItem\n\t\t\t\t\ttarget={ name }\n\t\t\t\t\tscope={ scope }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t>\n\t\t\t\t\t{ title }\n\t\t\t\t</ComplementaryAreaMoreMenuItem>\n\t\t\t) }\n\t\t\t{ isActive && (\n\t\t\t\t<ComplementaryAreaFill\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'interface-complementary-area',\n\t\t\t\t\t\tclassName\n\t\t\t\t\t) }\n\t\t\t\t\tscope={ scope }\n\t\t\t\t>\n\t\t\t\t\t<ComplementaryAreaHeader\n\t\t\t\t\t\tclassName={ headerClassName }\n\t\t\t\t\t\tcloseLabel={ closeLabel }\n\t\t\t\t\t\tonClose={ () => disableComplementaryArea( scope ) }\n\t\t\t\t\t\tsmallScreenTitle={ smallScreenTitle }\n\t\t\t\t\t\ttoggleButtonProps={ {\n\t\t\t\t\t\t\tlabel: closeLabel,\n\t\t\t\t\t\t\tshortcut: toggleShortcut,\n\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\tidentifier,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ header || (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<strong>{ title }</strong>\n\t\t\t\t\t\t\t\t{ isPinnable && (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tclassName=\"interface-complementary-area__pin-unpin-item\"\n\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\tisPinned ? starFilled : starEmpty\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\t\t\tisPinned\n\t\t\t\t\t\t\t\t\t\t\t\t? __( 'Unpin from toolbar' )\n\t\t\t\t\t\t\t\t\t\t\t\t: __( 'Pin to toolbar' )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t\t( isPinned ? unpinItem : pinItem )(\n\t\t\t\t\t\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\t\t\t\t\t\tidentifier\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tisPressed={ isPinned }\n\t\t\t\t\t\t\t\t\t\taria-expanded={ isPinned }\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</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ComplementaryAreaHeader>\n\t\t\t\t\t<Panel className={ panelClassName }>{ children }</Panel>\n\t\t\t\t</ComplementaryAreaFill>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nconst ComplementaryAreaWrapped = withComplementaryAreaContext(\n\tComplementaryArea\n);\n\nComplementaryAreaWrapped.Slot = ComplementaryAreaSlot;\n\nexport default ComplementaryAreaWrapped;\n"]}
1
+ {"version":3,"sources":["@wordpress/interface/src/components/complementary-area/index.js"],"names":["ComplementaryAreaSlot","scope","props","ComplementaryAreaFill","children","className","useAdjustComplementaryListener","identifier","activeArea","isActive","isSmall","previousIsSmall","shouldOpenWhenNotSmall","enableComplementaryArea","disableComplementaryArea","interfaceStore","current","ComplementaryArea","closeLabel","header","headerClassName","icon","isPinnable","panelClassName","name","smallScreenTitle","title","toggleShortcut","isActiveByDefault","showIconLabels","isPinned","isLarge","select","getActiveComplementaryArea","isItemPinned","_activeArea","viewportStore","isViewportMatch","pinItem","unpinItem","undefined","check","label","shortcut","starFilled","starEmpty","ComplementaryAreaWrapped","Slot"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Button, Panel, Slot, Fill } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { check, starEmpty, starFilled } from '@wordpress/icons';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { store as viewportStore } from '@wordpress/viewport';\n\n/**\n * Internal dependencies\n */\nimport ComplementaryAreaHeader from '../complementary-area-header';\nimport ComplementaryAreaMoreMenuItem from '../complementary-area-more-menu-item';\nimport ComplementaryAreaToggle from '../complementary-area-toggle';\nimport withComplementaryAreaContext from '../complementary-area-context';\nimport PinnedItems from '../pinned-items';\nimport { store as interfaceStore } from '../../store';\n\nfunction ComplementaryAreaSlot( { scope, ...props } ) {\n\treturn <Slot name={ `ComplementaryArea/${ scope }` } { ...props } />;\n}\n\nfunction ComplementaryAreaFill( { scope, children, className } ) {\n\treturn (\n\t\t<Fill name={ `ComplementaryArea/${ scope }` }>\n\t\t\t<div className={ className }>{ children }</div>\n\t\t</Fill>\n\t);\n}\n\nfunction useAdjustComplementaryListener(\n\tscope,\n\tidentifier,\n\tactiveArea,\n\tisActive,\n\tisSmall\n) {\n\tconst previousIsSmall = useRef( false );\n\tconst shouldOpenWhenNotSmall = useRef( false );\n\tconst { enableComplementaryArea, disableComplementaryArea } =\n\t\tuseDispatch( interfaceStore );\n\tuseEffect( () => {\n\t\t// If the complementary area is active and the editor is switching from a big to a small window size.\n\t\tif ( isActive && isSmall && ! previousIsSmall.current ) {\n\t\t\t// Disable the complementary area.\n\t\t\tdisableComplementaryArea( scope );\n\t\t\t// Flag the complementary area to be reopened when the window size goes from small to big.\n\t\t\tshouldOpenWhenNotSmall.current = true;\n\t\t} else if (\n\t\t\t// If there is a flag indicating the complementary area should be enabled when we go from small to big window size\n\t\t\t// and we are going from a small to big window size.\n\t\t\tshouldOpenWhenNotSmall.current &&\n\t\t\t! isSmall &&\n\t\t\tpreviousIsSmall.current\n\t\t) {\n\t\t\t// Remove the flag indicating the complementary area should be enabled.\n\t\t\tshouldOpenWhenNotSmall.current = false;\n\t\t\t// Enable the complementary area.\n\t\t\tenableComplementaryArea( scope, identifier );\n\t\t} else if (\n\t\t\t// If the flag is indicating the current complementary should be reopened but another complementary area becomes active,\n\t\t\t// remove the flag.\n\t\t\tshouldOpenWhenNotSmall.current &&\n\t\t\tactiveArea &&\n\t\t\tactiveArea !== identifier\n\t\t) {\n\t\t\tshouldOpenWhenNotSmall.current = false;\n\t\t}\n\t\tif ( isSmall !== previousIsSmall.current ) {\n\t\t\tpreviousIsSmall.current = isSmall;\n\t\t}\n\t}, [ isActive, isSmall, scope, identifier, activeArea ] );\n}\n\nfunction ComplementaryArea( {\n\tchildren,\n\tclassName,\n\tcloseLabel = __( 'Close plugin' ),\n\tidentifier,\n\theader,\n\theaderClassName,\n\ticon,\n\tisPinnable = true,\n\tpanelClassName,\n\tscope,\n\tname,\n\tsmallScreenTitle,\n\ttitle,\n\ttoggleShortcut,\n\tisActiveByDefault,\n\tshowIconLabels = false,\n} ) {\n\tconst { isActive, isPinned, activeArea, isSmall, isLarge } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveComplementaryArea, isItemPinned } =\n\t\t\t\tselect( interfaceStore );\n\t\t\tconst _activeArea = getActiveComplementaryArea( scope );\n\t\t\treturn {\n\t\t\t\tisActive: _activeArea === identifier,\n\t\t\t\tisPinned: isItemPinned( scope, identifier ),\n\t\t\t\tactiveArea: _activeArea,\n\t\t\t\tisSmall: select( viewportStore ).isViewportMatch( '< medium' ),\n\t\t\t\tisLarge: select( viewportStore ).isViewportMatch( 'large' ),\n\t\t\t};\n\t\t},\n\t\t[ identifier, scope ]\n\t);\n\tuseAdjustComplementaryListener(\n\t\tscope,\n\t\tidentifier,\n\t\tactiveArea,\n\t\tisActive,\n\t\tisSmall\n\t);\n\tconst {\n\t\tenableComplementaryArea,\n\t\tdisableComplementaryArea,\n\t\tpinItem,\n\t\tunpinItem,\n\t} = useDispatch( interfaceStore );\n\n\tuseEffect( () => {\n\t\tif ( isActiveByDefault && activeArea === undefined && ! isSmall ) {\n\t\t\tenableComplementaryArea( scope, identifier );\n\t\t}\n\t}, [ activeArea, isActiveByDefault, scope, identifier, isSmall ] );\n\n\treturn (\n\t\t<>\n\t\t\t{ isPinnable && (\n\t\t\t\t<PinnedItems scope={ scope }>\n\t\t\t\t\t{ isPinned && (\n\t\t\t\t\t\t<ComplementaryAreaToggle\n\t\t\t\t\t\t\tscope={ scope }\n\t\t\t\t\t\t\tidentifier={ identifier }\n\t\t\t\t\t\t\tisPressed={\n\t\t\t\t\t\t\t\tisActive && ( ! showIconLabels || isLarge )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\taria-expanded={ isActive }\n\t\t\t\t\t\t\tlabel={ title }\n\t\t\t\t\t\t\ticon={ showIconLabels ? check : icon }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PinnedItems>\n\t\t\t) }\n\t\t\t{ name && isPinnable && (\n\t\t\t\t<ComplementaryAreaMoreMenuItem\n\t\t\t\t\ttarget={ name }\n\t\t\t\t\tscope={ scope }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t>\n\t\t\t\t\t{ title }\n\t\t\t\t</ComplementaryAreaMoreMenuItem>\n\t\t\t) }\n\t\t\t{ isActive && (\n\t\t\t\t<ComplementaryAreaFill\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'interface-complementary-area',\n\t\t\t\t\t\tclassName\n\t\t\t\t\t) }\n\t\t\t\t\tscope={ scope }\n\t\t\t\t>\n\t\t\t\t\t<ComplementaryAreaHeader\n\t\t\t\t\t\tclassName={ headerClassName }\n\t\t\t\t\t\tcloseLabel={ closeLabel }\n\t\t\t\t\t\tonClose={ () => disableComplementaryArea( scope ) }\n\t\t\t\t\t\tsmallScreenTitle={ smallScreenTitle }\n\t\t\t\t\t\ttoggleButtonProps={ {\n\t\t\t\t\t\t\tlabel: closeLabel,\n\t\t\t\t\t\t\tshortcut: toggleShortcut,\n\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\tidentifier,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ header || (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<strong>{ title }</strong>\n\t\t\t\t\t\t\t\t{ isPinnable && (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tclassName=\"interface-complementary-area__pin-unpin-item\"\n\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\tisPinned ? starFilled : starEmpty\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\t\t\tisPinned\n\t\t\t\t\t\t\t\t\t\t\t\t? __( 'Unpin from toolbar' )\n\t\t\t\t\t\t\t\t\t\t\t\t: __( 'Pin to toolbar' )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t\t( isPinned ? unpinItem : pinItem )(\n\t\t\t\t\t\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\t\t\t\t\t\tidentifier\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tisPressed={ isPinned }\n\t\t\t\t\t\t\t\t\t\taria-expanded={ isPinned }\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</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ComplementaryAreaHeader>\n\t\t\t\t\t<Panel className={ panelClassName }>{ children }</Panel>\n\t\t\t\t</ComplementaryAreaFill>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nconst ComplementaryAreaWrapped =\n\twithComplementaryAreaContext( ComplementaryArea );\n\nComplementaryAreaWrapped.Slot = ComplementaryAreaSlot;\n\nexport default ComplementaryAreaWrapped;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/interface/src/components/complementary-area-toggle/index.js"],"names":["ComplementaryAreaToggle","as","Button","scope","identifier","icon","selectedIcon","props","ComponentToUse","isSelected","select","interfaceStore","getActiveComplementaryArea","enableComplementaryArea","disableComplementaryArea"],"mappings":";;;;;;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AACA;;AAfA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAIA,SAASA,uBAAT,OAOI;AAAA,MAP8B;AACjCC,IAAAA,EAAE,GAAGC,kBAD4B;AAEjCC,IAAAA,KAFiC;AAGjCC,IAAAA,UAHiC;AAIjCC,IAAAA,IAJiC;AAKjCC,IAAAA,YALiC;AAMjC,OAAGC;AAN8B,GAO9B;AACH,QAAMC,cAAc,GAAGP,EAAvB;AACA,QAAMQ,UAAU,GAAG,qBAChBC,MAAF,IACCA,MAAM,CAAEC,YAAF,CAAN,CAAyBC,0BAAzB,CAAqDT,KAArD,MACAC,UAHiB,EAIlB,CAAEA,UAAF,CAJkB,CAAnB;AAMA,QAAM;AAAES,IAAAA,uBAAF;AAA2BC,IAAAA;AAA3B,MAAwD,uBAC7DH,YAD6D,CAA9D;AAGA,SACC,4BAAC,cAAD;AACC,IAAA,IAAI,EAAGL,YAAY,IAAIG,UAAhB,GAA6BH,YAA7B,GAA4CD,IADpD;AAEC,IAAA,OAAO,EAAG,MAAM;AACf,UAAKI,UAAL,EAAkB;AACjBK,QAAAA,wBAAwB,CAAEX,KAAF,CAAxB;AACA,OAFD,MAEO;AACNU,QAAAA,uBAAuB,CAAEV,KAAF,EAASC,UAAT,CAAvB;AACA;AACD;AARF,KASM,kBAAMG,KAAN,EAAa,CAAE,MAAF,CAAb,CATN,EADD;AAaA;;eAEc,uCAA0BP,uBAA1B,C","sourcesContent":["/**\n * External dependencies\n */\nimport { omit } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as interfaceStore } from '../../store';\nimport complementaryAreaContext from '../complementary-area-context';\n\nfunction ComplementaryAreaToggle( {\n\tas = Button,\n\tscope,\n\tidentifier,\n\ticon,\n\tselectedIcon,\n\t...props\n} ) {\n\tconst ComponentToUse = as;\n\tconst isSelected = useSelect(\n\t\t( select ) =>\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea( scope ) ===\n\t\t\tidentifier,\n\t\t[ identifier ]\n\t);\n\tconst { enableComplementaryArea, disableComplementaryArea } = useDispatch(\n\t\tinterfaceStore\n\t);\n\treturn (\n\t\t<ComponentToUse\n\t\t\ticon={ selectedIcon && isSelected ? selectedIcon : icon }\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\t{ ...omit( props, [ 'name' ] ) }\n\t\t/>\n\t);\n}\n\nexport default complementaryAreaContext( ComplementaryAreaToggle );\n"]}
1
+ {"version":3,"sources":["@wordpress/interface/src/components/complementary-area-toggle/index.js"],"names":["ComplementaryAreaToggle","as","Button","scope","identifier","icon","selectedIcon","props","ComponentToUse","isSelected","select","interfaceStore","getActiveComplementaryArea","enableComplementaryArea","disableComplementaryArea"],"mappings":";;;;;;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AACA;;AAfA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;AAIA,SAASA,uBAAT,OAOI;AAAA,MAP8B;AACjCC,IAAAA,EAAE,GAAGC,kBAD4B;AAEjCC,IAAAA,KAFiC;AAGjCC,IAAAA,UAHiC;AAIjCC,IAAAA,IAJiC;AAKjCC,IAAAA,YALiC;AAMjC,OAAGC;AAN8B,GAO9B;AACH,QAAMC,cAAc,GAAGP,EAAvB;AACA,QAAMQ,UAAU,GAAG,qBAChBC,MAAF,IACCA,MAAM,CAAEC,YAAF,CAAN,CAAyBC,0BAAzB,CAAqDT,KAArD,MACAC,UAHiB,EAIlB,CAAEA,UAAF,CAJkB,CAAnB;AAMA,QAAM;AAAES,IAAAA,uBAAF;AAA2BC,IAAAA;AAA3B,MACL,uBAAaH,YAAb,CADD;AAEA,SACC,4BAAC,cAAD;AACC,IAAA,IAAI,EAAGL,YAAY,IAAIG,UAAhB,GAA6BH,YAA7B,GAA4CD,IADpD;AAEC,IAAA,OAAO,EAAG,MAAM;AACf,UAAKI,UAAL,EAAkB;AACjBK,QAAAA,wBAAwB,CAAEX,KAAF,CAAxB;AACA,OAFD,MAEO;AACNU,QAAAA,uBAAuB,CAAEV,KAAF,EAASC,UAAT,CAAvB;AACA;AACD;AARF,KASM,kBAAMG,KAAN,EAAa,CAAE,MAAF,CAAb,CATN,EADD;AAaA;;eAEc,uCAA0BP,uBAA1B,C","sourcesContent":["/**\n * External dependencies\n */\nimport { omit } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as interfaceStore } from '../../store';\nimport complementaryAreaContext from '../complementary-area-context';\n\nfunction ComplementaryAreaToggle( {\n\tas = Button,\n\tscope,\n\tidentifier,\n\ticon,\n\tselectedIcon,\n\t...props\n} ) {\n\tconst ComponentToUse = as;\n\tconst isSelected = useSelect(\n\t\t( select ) =>\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea( scope ) ===\n\t\t\tidentifier,\n\t\t[ identifier ]\n\t);\n\tconst { enableComplementaryArea, disableComplementaryArea } =\n\t\tuseDispatch( interfaceStore );\n\treturn (\n\t\t<ComponentToUse\n\t\t\ticon={ selectedIcon && isSelected ? selectedIcon : icon }\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\t{ ...omit( props, [ 'name' ] ) }\n\t\t/>\n\t);\n}\n\nexport default complementaryAreaContext( ComplementaryAreaToggle );\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/interface/src/store/actions.js"],"names":["setDefaultComplementaryArea","scope","area","type","enableComplementaryArea","registry","dispatch","isComplementaryAreaVisible","select","preferencesStore","get","set","disableComplementaryArea","pinItem","item","pinnedItems","unpinItem","toggleFeature","featureName","since","alternative","toggle","setFeatureValue","value","setFeatureDefaults","defaults","setDefaults"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport deprecated from '@wordpress/deprecated';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Set a default complementary area.\n *\n * @param {string} scope Complementary area scope.\n * @param {string} area Area identifier.\n *\n * @return {Object} Action object.\n */\nexport const setDefaultComplementaryArea = ( scope, area ) => ( {\n\ttype: 'SET_DEFAULT_COMPLEMENTARY_AREA',\n\tscope,\n\tarea,\n} );\n\n/**\n * Enable the complementary area.\n *\n * @param {string} scope Complementary area scope.\n * @param {string} area Area identifier.\n */\nexport const enableComplementaryArea = ( scope, area ) => ( {\n\tregistry,\n\tdispatch,\n} ) => {\n\t// Return early if there's no area.\n\tif ( ! area ) {\n\t\treturn;\n\t}\n\n\tconst isComplementaryAreaVisible = registry\n\t\t.select( preferencesStore )\n\t\t.get( scope, 'isComplementaryAreaVisible' );\n\n\tif ( ! isComplementaryAreaVisible ) {\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( scope, 'isComplementaryAreaVisible', true );\n\t}\n\n\tdispatch( {\n\t\ttype: 'ENABLE_COMPLEMENTARY_AREA',\n\t\tscope,\n\t\tarea,\n\t} );\n};\n\n/**\n * Disable the complementary area.\n *\n * @param {string} scope Complementary area scope.\n */\nexport const disableComplementaryArea = ( scope ) => ( { registry } ) => {\n\tconst isComplementaryAreaVisible = registry\n\t\t.select( preferencesStore )\n\t\t.get( scope, 'isComplementaryAreaVisible' );\n\n\tif ( isComplementaryAreaVisible ) {\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( scope, 'isComplementaryAreaVisible', false );\n\t}\n};\n\n/**\n * Pins an item.\n *\n * @param {string} scope Item scope.\n * @param {string} item Item identifier.\n *\n * @return {Object} Action object.\n */\nexport const pinItem = ( scope, item ) => ( { registry } ) => {\n\t// Return early if there's no item.\n\tif ( ! item ) {\n\t\treturn;\n\t}\n\n\tconst pinnedItems = registry\n\t\t.select( preferencesStore )\n\t\t.get( scope, 'pinnedItems' );\n\n\t// The item is already pinned, there's nothing to do.\n\tif ( pinnedItems?.[ item ] === true ) {\n\t\treturn;\n\t}\n\n\tregistry.dispatch( preferencesStore ).set( scope, 'pinnedItems', {\n\t\t...pinnedItems,\n\t\t[ item ]: true,\n\t} );\n};\n\n/**\n * Unpins an item.\n *\n * @param {string} scope Item scope.\n * @param {string} item Item identifier.\n */\nexport const unpinItem = ( scope, item ) => ( { registry } ) => {\n\t// Return early if there's no item.\n\tif ( ! item ) {\n\t\treturn;\n\t}\n\n\tconst pinnedItems = registry\n\t\t.select( preferencesStore )\n\t\t.get( scope, 'pinnedItems' );\n\n\tregistry.dispatch( preferencesStore ).set( scope, 'pinnedItems', {\n\t\t...pinnedItems,\n\t\t[ item ]: false,\n\t} );\n};\n\n/**\n * Returns an action object used in signalling that a feature should be toggled.\n *\n * @param {string} scope The feature scope (e.g. core/edit-post).\n * @param {string} featureName The feature name.\n */\nexport function toggleFeature( scope, featureName ) {\n\treturn function ( { registry } ) {\n\t\tdeprecated( `dispatch( 'core/interface' ).toggleFeature`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `dispatch( 'core/preferences' ).toggle`,\n\t\t} );\n\n\t\tregistry.dispatch( preferencesStore ).toggle( scope, featureName );\n\t};\n}\n\n/**\n * Returns an action object used in signalling that a feature should be set to\n * a true or false value\n *\n * @param {string} scope The feature scope (e.g. core/edit-post).\n * @param {string} featureName The feature name.\n * @param {boolean} value The value to set.\n *\n * @return {Object} Action object.\n */\nexport function setFeatureValue( scope, featureName, value ) {\n\treturn function ( { registry } ) {\n\t\tdeprecated( `dispatch( 'core/interface' ).setFeatureValue`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `dispatch( 'core/preferences' ).set`,\n\t\t} );\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( scope, featureName, !! value );\n\t};\n}\n\n/**\n * Returns an action object used in signalling that defaults should be set for features.\n *\n * @param {string} scope The feature scope (e.g. core/edit-post).\n * @param {Object<string, boolean>} defaults A key/value map of feature names to values.\n *\n * @return {Object} Action object.\n */\nexport function setFeatureDefaults( scope, defaults ) {\n\treturn function ( { registry } ) {\n\t\tdeprecated( `dispatch( 'core/interface' ).setFeatureDefaults`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `dispatch( 'core/preferences' ).setDefaults`,\n\t\t} );\n\n\t\tregistry.dispatch( preferencesStore ).setDefaults( scope, defaults );\n\t};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/interface/src/store/actions.js"],"names":["setDefaultComplementaryArea","scope","area","type","enableComplementaryArea","registry","dispatch","isComplementaryAreaVisible","select","preferencesStore","get","set","disableComplementaryArea","pinItem","item","pinnedItems","unpinItem","toggleFeature","featureName","since","alternative","toggle","setFeatureValue","value","setFeatureDefaults","defaults","setDefaults"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport deprecated from '@wordpress/deprecated';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Set a default complementary area.\n *\n * @param {string} scope Complementary area scope.\n * @param {string} area Area identifier.\n *\n * @return {Object} Action object.\n */\nexport const setDefaultComplementaryArea = ( scope, area ) => ( {\n\ttype: 'SET_DEFAULT_COMPLEMENTARY_AREA',\n\tscope,\n\tarea,\n} );\n\n/**\n * Enable the complementary area.\n *\n * @param {string} scope Complementary area scope.\n * @param {string} area Area identifier.\n */\nexport const enableComplementaryArea =\n\t( scope, area ) =>\n\t( { registry, dispatch } ) => {\n\t\t// Return early if there's no area.\n\t\tif ( ! area ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst isComplementaryAreaVisible = registry\n\t\t\t.select( preferencesStore )\n\t\t\t.get( scope, 'isComplementaryAreaVisible' );\n\n\t\tif ( ! isComplementaryAreaVisible ) {\n\t\t\tregistry\n\t\t\t\t.dispatch( preferencesStore )\n\t\t\t\t.set( scope, 'isComplementaryAreaVisible', true );\n\t\t}\n\n\t\tdispatch( {\n\t\t\ttype: 'ENABLE_COMPLEMENTARY_AREA',\n\t\t\tscope,\n\t\t\tarea,\n\t\t} );\n\t};\n\n/**\n * Disable the complementary area.\n *\n * @param {string} scope Complementary area scope.\n */\nexport const disableComplementaryArea =\n\t( scope ) =>\n\t( { registry } ) => {\n\t\tconst isComplementaryAreaVisible = registry\n\t\t\t.select( preferencesStore )\n\t\t\t.get( scope, 'isComplementaryAreaVisible' );\n\n\t\tif ( isComplementaryAreaVisible ) {\n\t\t\tregistry\n\t\t\t\t.dispatch( preferencesStore )\n\t\t\t\t.set( scope, 'isComplementaryAreaVisible', false );\n\t\t}\n\t};\n\n/**\n * Pins an item.\n *\n * @param {string} scope Item scope.\n * @param {string} item Item identifier.\n *\n * @return {Object} Action object.\n */\nexport const pinItem =\n\t( scope, item ) =>\n\t( { registry } ) => {\n\t\t// Return early if there's no item.\n\t\tif ( ! item ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst pinnedItems = registry\n\t\t\t.select( preferencesStore )\n\t\t\t.get( scope, 'pinnedItems' );\n\n\t\t// The item is already pinned, there's nothing to do.\n\t\tif ( pinnedItems?.[ item ] === true ) {\n\t\t\treturn;\n\t\t}\n\n\t\tregistry.dispatch( preferencesStore ).set( scope, 'pinnedItems', {\n\t\t\t...pinnedItems,\n\t\t\t[ item ]: true,\n\t\t} );\n\t};\n\n/**\n * Unpins an item.\n *\n * @param {string} scope Item scope.\n * @param {string} item Item identifier.\n */\nexport const unpinItem =\n\t( scope, item ) =>\n\t( { registry } ) => {\n\t\t// Return early if there's no item.\n\t\tif ( ! item ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst pinnedItems = registry\n\t\t\t.select( preferencesStore )\n\t\t\t.get( scope, 'pinnedItems' );\n\n\t\tregistry.dispatch( preferencesStore ).set( scope, 'pinnedItems', {\n\t\t\t...pinnedItems,\n\t\t\t[ item ]: false,\n\t\t} );\n\t};\n\n/**\n * Returns an action object used in signalling that a feature should be toggled.\n *\n * @param {string} scope The feature scope (e.g. core/edit-post).\n * @param {string} featureName The feature name.\n */\nexport function toggleFeature( scope, featureName ) {\n\treturn function ( { registry } ) {\n\t\tdeprecated( `dispatch( 'core/interface' ).toggleFeature`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `dispatch( 'core/preferences' ).toggle`,\n\t\t} );\n\n\t\tregistry.dispatch( preferencesStore ).toggle( scope, featureName );\n\t};\n}\n\n/**\n * Returns an action object used in signalling that a feature should be set to\n * a true or false value\n *\n * @param {string} scope The feature scope (e.g. core/edit-post).\n * @param {string} featureName The feature name.\n * @param {boolean} value The value to set.\n *\n * @return {Object} Action object.\n */\nexport function setFeatureValue( scope, featureName, value ) {\n\treturn function ( { registry } ) {\n\t\tdeprecated( `dispatch( 'core/interface' ).setFeatureValue`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `dispatch( 'core/preferences' ).set`,\n\t\t} );\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( scope, featureName, !! value );\n\t};\n}\n\n/**\n * Returns an action object used in signalling that defaults should be set for features.\n *\n * @param {string} scope The feature scope (e.g. core/edit-post).\n * @param {Object<string, boolean>} defaults A key/value map of feature names to values.\n *\n * @return {Object} Action object.\n */\nexport function setFeatureDefaults( scope, defaults ) {\n\treturn function ( { registry } ) {\n\t\tdeprecated( `dispatch( 'core/interface' ).setFeatureDefaults`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `dispatch( 'core/preferences' ).setDefaults`,\n\t\t} );\n\n\t\tregistry.dispatch( preferencesStore ).setDefaults( scope, defaults );\n\t};\n}\n"]}
@@ -4,7 +4,7 @@ import { createElement } from "@wordpress/element";
4
4
  /**
5
5
  * External dependencies
6
6
  */
7
- import { isEmpty, noop } from 'lodash';
7
+ import { isEmpty } from 'lodash';
8
8
  /**
9
9
  * WordPress dependencies
10
10
  */
@@ -12,6 +12,8 @@ import { isEmpty, noop } from 'lodash';
12
12
  import { ButtonGroup, Button, Slot, Fill } from '@wordpress/components';
13
13
  import { Children } from '@wordpress/element';
14
14
 
15
+ const noop = () => {};
16
+
15
17
  function ActionItemSlot(_ref) {
16
18
  let {
17
19
  name,
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/interface/src/components/action-item/index.js"],"names":["isEmpty","noop","ButtonGroup","Button","Slot","Fill","Children","ActionItemSlot","name","as","Component","fillProps","bubblesVirtually","props","fills","toArray","initializedByPlugins","forEach","__unstableExplicitMenuItem","__unstableTarget","push","children","map","child","includes","ActionItem","onClick","fpOnClick","undefined"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,OAAT,EAAkBC,IAAlB,QAA8B,QAA9B;AAEA;AACA;AACA;;AACA,SAASC,WAAT,EAAsBC,MAAtB,EAA8BC,IAA9B,EAAoCC,IAApC,QAAgD,uBAAhD;AACA,SAASC,QAAT,QAAyB,oBAAzB;;AAEA,SAASC,cAAT,OAMI;AAAA,MANqB;AACxBC,IAAAA,IADwB;AAExBC,IAAAA,EAAE,EAAEC,SAAS,GAAGR,WAFQ;AAGxBS,IAAAA,SAAS,GAAG,EAHY;AAIxBC,IAAAA,gBAJwB;AAKxB,OAAGC;AALqB,GAMrB;AACH,SACC,cAAC,IAAD;AACC,IAAA,IAAI,EAAGL,IADR;AAEC,IAAA,gBAAgB,EAAGI,gBAFpB;AAGC,IAAA,SAAS,EAAGD;AAHb,KAKKG,KAAF,IAAa;AACd,QAAKd,OAAO,CAAEM,QAAQ,CAACS,OAAT,CAAkBD,KAAlB,CAAF,CAAZ,EAA4C;AAC3C,aAAO,IAAP;AACA,KAHa,CAKd;AACA;AACA;AACA;AACA;;;AACA,UAAME,oBAAoB,GAAG,EAA7B;AACAV,IAAAA,QAAQ,CAACW,OAAT,CACCH,KADD,EAEC,SAEO;AAAA,UAFL;AACDD,QAAAA,KAAK,EAAE;AAAEK,UAAAA,0BAAF;AAA8BC,UAAAA;AAA9B;AADN,OAEK;;AACN,UAAKA,gBAAgB,IAAID,0BAAzB,EAAsD;AACrDF,QAAAA,oBAAoB,CAACI,IAArB,CAA2BD,gBAA3B;AACA;AACD,KARF;AAUA,UAAME,QAAQ,GAAGf,QAAQ,CAACgB,GAAT,CAAcR,KAAd,EAAuBS,KAAF,IAAa;AAClD,UACC,CAAEA,KAAK,CAACV,KAAN,CAAYK,0BAAd,IACAF,oBAAoB,CAACQ,QAArB,CACCD,KAAK,CAACV,KAAN,CAAYM,gBADb,CAFD,EAKE;AACD,eAAO,IAAP;AACA;;AACD,aAAOI,KAAP;AACA,KAVgB,CAAjB;AAYA,WAAO,cAAC,SAAD,EAAgBV,KAAhB,EAA0BQ,QAA1B,CAAP;AACA,GAvCF,CADD;AA2CA;;AAED,SAASI,UAAT,QAA2E;AAAA,MAAtD;AAAEjB,IAAAA,IAAF;AAAQC,IAAAA,EAAE,EAAEC,SAAS,GAAGP,MAAxB;AAAgCuB,IAAAA,OAAhC;AAAyC,OAAGb;AAA5C,GAAsD;AAC1E,SACC,cAAC,IAAD;AAAM,IAAA,IAAI,EAAGL;AAAb,KACG,SAA8B;AAAA,QAA5B;AAAEkB,MAAAA,OAAO,EAAEC;AAAX,KAA4B;AAC/B,WACC,cAAC,SAAD;AACC,MAAA,OAAO,EACND,OAAO,IAAIC,SAAX,GACG,YAAe;AACf,SAAED,OAAO,IAAIzB,IAAb,EAAqB,YAArB;AACA,SAAE0B,SAAS,IAAI1B,IAAf,EAAuB,YAAvB;AACC,OAJJ,GAKG2B;AAPL,OASMf,KATN,EADD;AAaA,GAfF,CADD;AAmBA;;AAEDY,UAAU,CAACrB,IAAX,GAAkBG,cAAlB;AAEA,eAAekB,UAAf","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty, noop } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { ButtonGroup, Button, Slot, Fill } from '@wordpress/components';\nimport { Children } from '@wordpress/element';\n\nfunction ActionItemSlot( {\n\tname,\n\tas: Component = ButtonGroup,\n\tfillProps = {},\n\tbubblesVirtually,\n\t...props\n} ) {\n\treturn (\n\t\t<Slot\n\t\t\tname={ name }\n\t\t\tbubblesVirtually={ bubblesVirtually }\n\t\t\tfillProps={ fillProps }\n\t\t>\n\t\t\t{ ( fills ) => {\n\t\t\t\tif ( isEmpty( Children.toArray( fills ) ) ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\t// Special handling exists for backward compatibility.\n\t\t\t\t// It ensures that menu items created by plugin authors aren't\n\t\t\t\t// duplicated with automatically injected menu items coming\n\t\t\t\t// from pinnable plugin sidebars.\n\t\t\t\t// @see https://github.com/WordPress/gutenberg/issues/14457\n\t\t\t\tconst initializedByPlugins = [];\n\t\t\t\tChildren.forEach(\n\t\t\t\t\tfills,\n\t\t\t\t\t( {\n\t\t\t\t\t\tprops: { __unstableExplicitMenuItem, __unstableTarget },\n\t\t\t\t\t} ) => {\n\t\t\t\t\t\tif ( __unstableTarget && __unstableExplicitMenuItem ) {\n\t\t\t\t\t\t\tinitializedByPlugins.push( __unstableTarget );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t\tconst children = Children.map( fills, ( child ) => {\n\t\t\t\t\tif (\n\t\t\t\t\t\t! child.props.__unstableExplicitMenuItem &&\n\t\t\t\t\t\tinitializedByPlugins.includes(\n\t\t\t\t\t\t\tchild.props.__unstableTarget\n\t\t\t\t\t\t)\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\treturn child;\n\t\t\t\t} );\n\n\t\t\t\treturn <Component { ...props }>{ children }</Component>;\n\t\t\t} }\n\t\t</Slot>\n\t);\n}\n\nfunction ActionItem( { name, as: Component = Button, onClick, ...props } ) {\n\treturn (\n\t\t<Fill name={ name }>\n\t\t\t{ ( { onClick: fpOnClick } ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<Component\n\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\tonClick || fpOnClick\n\t\t\t\t\t\t\t\t? ( ...args ) => {\n\t\t\t\t\t\t\t\t\t\t( onClick || noop )( ...args );\n\t\t\t\t\t\t\t\t\t\t( fpOnClick || noop )( ...args );\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} }\n\t\t</Fill>\n\t);\n}\n\nActionItem.Slot = ActionItemSlot;\n\nexport default ActionItem;\n"]}
1
+ {"version":3,"sources":["@wordpress/interface/src/components/action-item/index.js"],"names":["isEmpty","ButtonGroup","Button","Slot","Fill","Children","noop","ActionItemSlot","name","as","Component","fillProps","bubblesVirtually","props","fills","toArray","initializedByPlugins","forEach","__unstableExplicitMenuItem","__unstableTarget","push","children","map","child","includes","ActionItem","onClick","fpOnClick","undefined"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SAASC,WAAT,EAAsBC,MAAtB,EAA8BC,IAA9B,EAAoCC,IAApC,QAAgD,uBAAhD;AACA,SAASC,QAAT,QAAyB,oBAAzB;;AAEA,MAAMC,IAAI,GAAG,MAAM,CAAE,CAArB;;AAEA,SAASC,cAAT,OAMI;AAAA,MANqB;AACxBC,IAAAA,IADwB;AAExBC,IAAAA,EAAE,EAAEC,SAAS,GAAGT,WAFQ;AAGxBU,IAAAA,SAAS,GAAG,EAHY;AAIxBC,IAAAA,gBAJwB;AAKxB,OAAGC;AALqB,GAMrB;AACH,SACC,cAAC,IAAD;AACC,IAAA,IAAI,EAAGL,IADR;AAEC,IAAA,gBAAgB,EAAGI,gBAFpB;AAGC,IAAA,SAAS,EAAGD;AAHb,KAKKG,KAAF,IAAa;AACd,QAAKd,OAAO,CAAEK,QAAQ,CAACU,OAAT,CAAkBD,KAAlB,CAAF,CAAZ,EAA4C;AAC3C,aAAO,IAAP;AACA,KAHa,CAKd;AACA;AACA;AACA;AACA;;;AACA,UAAME,oBAAoB,GAAG,EAA7B;AACAX,IAAAA,QAAQ,CAACY,OAAT,CACCH,KADD,EAEC,SAEO;AAAA,UAFL;AACDD,QAAAA,KAAK,EAAE;AAAEK,UAAAA,0BAAF;AAA8BC,UAAAA;AAA9B;AADN,OAEK;;AACN,UAAKA,gBAAgB,IAAID,0BAAzB,EAAsD;AACrDF,QAAAA,oBAAoB,CAACI,IAArB,CAA2BD,gBAA3B;AACA;AACD,KARF;AAUA,UAAME,QAAQ,GAAGhB,QAAQ,CAACiB,GAAT,CAAcR,KAAd,EAAuBS,KAAF,IAAa;AAClD,UACC,CAAEA,KAAK,CAACV,KAAN,CAAYK,0BAAd,IACAF,oBAAoB,CAACQ,QAArB,CACCD,KAAK,CAACV,KAAN,CAAYM,gBADb,CAFD,EAKE;AACD,eAAO,IAAP;AACA;;AACD,aAAOI,KAAP;AACA,KAVgB,CAAjB;AAYA,WAAO,cAAC,SAAD,EAAgBV,KAAhB,EAA0BQ,QAA1B,CAAP;AACA,GAvCF,CADD;AA2CA;;AAED,SAASI,UAAT,QAA2E;AAAA,MAAtD;AAAEjB,IAAAA,IAAF;AAAQC,IAAAA,EAAE,EAAEC,SAAS,GAAGR,MAAxB;AAAgCwB,IAAAA,OAAhC;AAAyC,OAAGb;AAA5C,GAAsD;AAC1E,SACC,cAAC,IAAD;AAAM,IAAA,IAAI,EAAGL;AAAb,KACG,SAA8B;AAAA,QAA5B;AAAEkB,MAAAA,OAAO,EAAEC;AAAX,KAA4B;AAC/B,WACC,cAAC,SAAD;AACC,MAAA,OAAO,EACND,OAAO,IAAIC,SAAX,GACG,YAAe;AACf,SAAED,OAAO,IAAIpB,IAAb,EAAqB,YAArB;AACA,SAAEqB,SAAS,IAAIrB,IAAf,EAAuB,YAAvB;AACC,OAJJ,GAKGsB;AAPL,OASMf,KATN,EADD;AAaA,GAfF,CADD;AAmBA;;AAEDY,UAAU,CAACtB,IAAX,GAAkBI,cAAlB;AAEA,eAAekB,UAAf","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { ButtonGroup, Button, Slot, Fill } from '@wordpress/components';\nimport { Children } from '@wordpress/element';\n\nconst noop = () => {};\n\nfunction ActionItemSlot( {\n\tname,\n\tas: Component = ButtonGroup,\n\tfillProps = {},\n\tbubblesVirtually,\n\t...props\n} ) {\n\treturn (\n\t\t<Slot\n\t\t\tname={ name }\n\t\t\tbubblesVirtually={ bubblesVirtually }\n\t\t\tfillProps={ fillProps }\n\t\t>\n\t\t\t{ ( fills ) => {\n\t\t\t\tif ( isEmpty( Children.toArray( fills ) ) ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\t// Special handling exists for backward compatibility.\n\t\t\t\t// It ensures that menu items created by plugin authors aren't\n\t\t\t\t// duplicated with automatically injected menu items coming\n\t\t\t\t// from pinnable plugin sidebars.\n\t\t\t\t// @see https://github.com/WordPress/gutenberg/issues/14457\n\t\t\t\tconst initializedByPlugins = [];\n\t\t\t\tChildren.forEach(\n\t\t\t\t\tfills,\n\t\t\t\t\t( {\n\t\t\t\t\t\tprops: { __unstableExplicitMenuItem, __unstableTarget },\n\t\t\t\t\t} ) => {\n\t\t\t\t\t\tif ( __unstableTarget && __unstableExplicitMenuItem ) {\n\t\t\t\t\t\t\tinitializedByPlugins.push( __unstableTarget );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t\tconst children = Children.map( fills, ( child ) => {\n\t\t\t\t\tif (\n\t\t\t\t\t\t! child.props.__unstableExplicitMenuItem &&\n\t\t\t\t\t\tinitializedByPlugins.includes(\n\t\t\t\t\t\t\tchild.props.__unstableTarget\n\t\t\t\t\t\t)\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\treturn child;\n\t\t\t\t} );\n\n\t\t\t\treturn <Component { ...props }>{ children }</Component>;\n\t\t\t} }\n\t\t</Slot>\n\t);\n}\n\nfunction ActionItem( { name, as: Component = Button, onClick, ...props } ) {\n\treturn (\n\t\t<Fill name={ name }>\n\t\t\t{ ( { onClick: fpOnClick } ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<Component\n\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\tonClick || fpOnClick\n\t\t\t\t\t\t\t\t? ( ...args ) => {\n\t\t\t\t\t\t\t\t\t\t( onClick || noop )( ...args );\n\t\t\t\t\t\t\t\t\t\t( fpOnClick || noop )( ...args );\n\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} }\n\t\t</Fill>\n\t);\n}\n\nActionItem.Slot = ActionItemSlot;\n\nexport default ActionItem;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/interface/src/components/complementary-area/index.js"],"names":["classnames","Button","Panel","Slot","Fill","useDispatch","useSelect","__","check","starEmpty","starFilled","useEffect","useRef","store","viewportStore","ComplementaryAreaHeader","ComplementaryAreaMoreMenuItem","ComplementaryAreaToggle","withComplementaryAreaContext","PinnedItems","interfaceStore","ComplementaryAreaSlot","scope","props","ComplementaryAreaFill","children","className","useAdjustComplementaryListener","identifier","activeArea","isActive","isSmall","previousIsSmall","shouldOpenWhenNotSmall","enableComplementaryArea","disableComplementaryArea","current","ComplementaryArea","closeLabel","header","headerClassName","icon","isPinnable","panelClassName","name","smallScreenTitle","title","toggleShortcut","isActiveByDefault","showIconLabels","isPinned","isLarge","select","getActiveComplementaryArea","isItemPinned","_activeArea","isViewportMatch","pinItem","unpinItem","undefined","label","shortcut","ComplementaryAreaWrapped"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Button, Panel, Slot, Fill } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { check, starEmpty, starFilled } from '@wordpress/icons';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { store as viewportStore } from '@wordpress/viewport';\n\n/**\n * Internal dependencies\n */\nimport ComplementaryAreaHeader from '../complementary-area-header';\nimport ComplementaryAreaMoreMenuItem from '../complementary-area-more-menu-item';\nimport ComplementaryAreaToggle from '../complementary-area-toggle';\nimport withComplementaryAreaContext from '../complementary-area-context';\nimport PinnedItems from '../pinned-items';\nimport { store as interfaceStore } from '../../store';\n\nfunction ComplementaryAreaSlot( { scope, ...props } ) {\n\treturn <Slot name={ `ComplementaryArea/${ scope }` } { ...props } />;\n}\n\nfunction ComplementaryAreaFill( { scope, children, className } ) {\n\treturn (\n\t\t<Fill name={ `ComplementaryArea/${ scope }` }>\n\t\t\t<div className={ className }>{ children }</div>\n\t\t</Fill>\n\t);\n}\n\nfunction useAdjustComplementaryListener(\n\tscope,\n\tidentifier,\n\tactiveArea,\n\tisActive,\n\tisSmall\n) {\n\tconst previousIsSmall = useRef( false );\n\tconst shouldOpenWhenNotSmall = useRef( false );\n\tconst { enableComplementaryArea, disableComplementaryArea } = useDispatch(\n\t\tinterfaceStore\n\t);\n\tuseEffect( () => {\n\t\t// If the complementary area is active and the editor is switching from a big to a small window size.\n\t\tif ( isActive && isSmall && ! previousIsSmall.current ) {\n\t\t\t// Disable the complementary area.\n\t\t\tdisableComplementaryArea( scope );\n\t\t\t// Flag the complementary area to be reopened when the window size goes from small to big.\n\t\t\tshouldOpenWhenNotSmall.current = true;\n\t\t} else if (\n\t\t\t// If there is a flag indicating the complementary area should be enabled when we go from small to big window size\n\t\t\t// and we are going from a small to big window size.\n\t\t\tshouldOpenWhenNotSmall.current &&\n\t\t\t! isSmall &&\n\t\t\tpreviousIsSmall.current\n\t\t) {\n\t\t\t// Remove the flag indicating the complementary area should be enabled.\n\t\t\tshouldOpenWhenNotSmall.current = false;\n\t\t\t// Enable the complementary area.\n\t\t\tenableComplementaryArea( scope, identifier );\n\t\t} else if (\n\t\t\t// If the flag is indicating the current complementary should be reopened but another complementary area becomes active,\n\t\t\t// remove the flag.\n\t\t\tshouldOpenWhenNotSmall.current &&\n\t\t\tactiveArea &&\n\t\t\tactiveArea !== identifier\n\t\t) {\n\t\t\tshouldOpenWhenNotSmall.current = false;\n\t\t}\n\t\tif ( isSmall !== previousIsSmall.current ) {\n\t\t\tpreviousIsSmall.current = isSmall;\n\t\t}\n\t}, [ isActive, isSmall, scope, identifier, activeArea ] );\n}\n\nfunction ComplementaryArea( {\n\tchildren,\n\tclassName,\n\tcloseLabel = __( 'Close plugin' ),\n\tidentifier,\n\theader,\n\theaderClassName,\n\ticon,\n\tisPinnable = true,\n\tpanelClassName,\n\tscope,\n\tname,\n\tsmallScreenTitle,\n\ttitle,\n\ttoggleShortcut,\n\tisActiveByDefault,\n\tshowIconLabels = false,\n} ) {\n\tconst { isActive, isPinned, activeArea, isSmall, isLarge } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveComplementaryArea, isItemPinned } = select(\n\t\t\t\tinterfaceStore\n\t\t\t);\n\t\t\tconst _activeArea = getActiveComplementaryArea( scope );\n\t\t\treturn {\n\t\t\t\tisActive: _activeArea === identifier,\n\t\t\t\tisPinned: isItemPinned( scope, identifier ),\n\t\t\t\tactiveArea: _activeArea,\n\t\t\t\tisSmall: select( viewportStore ).isViewportMatch( '< medium' ),\n\t\t\t\tisLarge: select( viewportStore ).isViewportMatch( 'large' ),\n\t\t\t};\n\t\t},\n\t\t[ identifier, scope ]\n\t);\n\tuseAdjustComplementaryListener(\n\t\tscope,\n\t\tidentifier,\n\t\tactiveArea,\n\t\tisActive,\n\t\tisSmall\n\t);\n\tconst {\n\t\tenableComplementaryArea,\n\t\tdisableComplementaryArea,\n\t\tpinItem,\n\t\tunpinItem,\n\t} = useDispatch( interfaceStore );\n\n\tuseEffect( () => {\n\t\tif ( isActiveByDefault && activeArea === undefined && ! isSmall ) {\n\t\t\tenableComplementaryArea( scope, identifier );\n\t\t}\n\t}, [ activeArea, isActiveByDefault, scope, identifier, isSmall ] );\n\n\treturn (\n\t\t<>\n\t\t\t{ isPinnable && (\n\t\t\t\t<PinnedItems scope={ scope }>\n\t\t\t\t\t{ isPinned && (\n\t\t\t\t\t\t<ComplementaryAreaToggle\n\t\t\t\t\t\t\tscope={ scope }\n\t\t\t\t\t\t\tidentifier={ identifier }\n\t\t\t\t\t\t\tisPressed={\n\t\t\t\t\t\t\t\tisActive && ( ! showIconLabels || isLarge )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\taria-expanded={ isActive }\n\t\t\t\t\t\t\tlabel={ title }\n\t\t\t\t\t\t\ticon={ showIconLabels ? check : icon }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PinnedItems>\n\t\t\t) }\n\t\t\t{ name && isPinnable && (\n\t\t\t\t<ComplementaryAreaMoreMenuItem\n\t\t\t\t\ttarget={ name }\n\t\t\t\t\tscope={ scope }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t>\n\t\t\t\t\t{ title }\n\t\t\t\t</ComplementaryAreaMoreMenuItem>\n\t\t\t) }\n\t\t\t{ isActive && (\n\t\t\t\t<ComplementaryAreaFill\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'interface-complementary-area',\n\t\t\t\t\t\tclassName\n\t\t\t\t\t) }\n\t\t\t\t\tscope={ scope }\n\t\t\t\t>\n\t\t\t\t\t<ComplementaryAreaHeader\n\t\t\t\t\t\tclassName={ headerClassName }\n\t\t\t\t\t\tcloseLabel={ closeLabel }\n\t\t\t\t\t\tonClose={ () => disableComplementaryArea( scope ) }\n\t\t\t\t\t\tsmallScreenTitle={ smallScreenTitle }\n\t\t\t\t\t\ttoggleButtonProps={ {\n\t\t\t\t\t\t\tlabel: closeLabel,\n\t\t\t\t\t\t\tshortcut: toggleShortcut,\n\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\tidentifier,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ header || (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<strong>{ title }</strong>\n\t\t\t\t\t\t\t\t{ isPinnable && (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tclassName=\"interface-complementary-area__pin-unpin-item\"\n\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\tisPinned ? starFilled : starEmpty\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\t\t\tisPinned\n\t\t\t\t\t\t\t\t\t\t\t\t? __( 'Unpin from toolbar' )\n\t\t\t\t\t\t\t\t\t\t\t\t: __( 'Pin to toolbar' )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t\t( isPinned ? unpinItem : pinItem )(\n\t\t\t\t\t\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\t\t\t\t\t\tidentifier\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tisPressed={ isPinned }\n\t\t\t\t\t\t\t\t\t\taria-expanded={ isPinned }\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</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ComplementaryAreaHeader>\n\t\t\t\t\t<Panel className={ panelClassName }>{ children }</Panel>\n\t\t\t\t</ComplementaryAreaFill>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nconst ComplementaryAreaWrapped = withComplementaryAreaContext(\n\tComplementaryArea\n);\n\nComplementaryAreaWrapped.Slot = ComplementaryAreaSlot;\n\nexport default ComplementaryAreaWrapped;\n"]}
1
+ {"version":3,"sources":["@wordpress/interface/src/components/complementary-area/index.js"],"names":["classnames","Button","Panel","Slot","Fill","useDispatch","useSelect","__","check","starEmpty","starFilled","useEffect","useRef","store","viewportStore","ComplementaryAreaHeader","ComplementaryAreaMoreMenuItem","ComplementaryAreaToggle","withComplementaryAreaContext","PinnedItems","interfaceStore","ComplementaryAreaSlot","scope","props","ComplementaryAreaFill","children","className","useAdjustComplementaryListener","identifier","activeArea","isActive","isSmall","previousIsSmall","shouldOpenWhenNotSmall","enableComplementaryArea","disableComplementaryArea","current","ComplementaryArea","closeLabel","header","headerClassName","icon","isPinnable","panelClassName","name","smallScreenTitle","title","toggleShortcut","isActiveByDefault","showIconLabels","isPinned","isLarge","select","getActiveComplementaryArea","isItemPinned","_activeArea","isViewportMatch","pinItem","unpinItem","undefined","label","shortcut","ComplementaryAreaWrapped"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,MAAT,EAAiBC,KAAjB,EAAwBC,IAAxB,EAA8BC,IAA9B,QAA0C,uBAA1C;AACA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,iBAAvC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,KAAT,EAAgBC,SAAhB,EAA2BC,UAA3B,QAA6C,kBAA7C;AACA,SAASC,SAAT,EAAoBC,MAApB,QAAkC,oBAAlC;AACA,SAASC,KAAK,IAAIC,aAAlB,QAAuC,qBAAvC;AAEA;AACA;AACA;;AACA,OAAOC,uBAAP,MAAoC,8BAApC;AACA,OAAOC,6BAAP,MAA0C,sCAA1C;AACA,OAAOC,uBAAP,MAAoC,8BAApC;AACA,OAAOC,4BAAP,MAAyC,+BAAzC;AACA,OAAOC,WAAP,MAAwB,iBAAxB;AACA,SAASN,KAAK,IAAIO,cAAlB,QAAwC,aAAxC;;AAEA,SAASC,qBAAT,OAAsD;AAAA,MAAtB;AAAEC,IAAAA,KAAF;AAAS,OAAGC;AAAZ,GAAsB;AACrD,SAAO,cAAC,IAAD;AAAM,IAAA,IAAI,EAAI,qBAAqBD,KAAO;AAA1C,KAAmDC,KAAnD,EAAP;AACA;;AAED,SAASC,qBAAT,QAAiE;AAAA,MAAjC;AAAEF,IAAAA,KAAF;AAASG,IAAAA,QAAT;AAAmBC,IAAAA;AAAnB,GAAiC;AAChE,SACC,cAAC,IAAD;AAAM,IAAA,IAAI,EAAI,qBAAqBJ,KAAO;AAA1C,KACC;AAAK,IAAA,SAAS,EAAGI;AAAjB,KAA+BD,QAA/B,CADD,CADD;AAKA;;AAED,SAASE,8BAAT,CACCL,KADD,EAECM,UAFD,EAGCC,UAHD,EAICC,QAJD,EAKCC,OALD,EAME;AACD,QAAMC,eAAe,GAAGpB,MAAM,CAAE,KAAF,CAA9B;AACA,QAAMqB,sBAAsB,GAAGrB,MAAM,CAAE,KAAF,CAArC;AACA,QAAM;AAAEsB,IAAAA,uBAAF;AAA2BC,IAAAA;AAA3B,MACL9B,WAAW,CAAEe,cAAF,CADZ;AAEAT,EAAAA,SAAS,CAAE,MAAM;AAChB;AACA,QAAKmB,QAAQ,IAAIC,OAAZ,IAAuB,CAAEC,eAAe,CAACI,OAA9C,EAAwD;AACvD;AACAD,MAAAA,wBAAwB,CAAEb,KAAF,CAAxB,CAFuD,CAGvD;;AACAW,MAAAA,sBAAsB,CAACG,OAAvB,GAAiC,IAAjC;AACA,KALD,MAKO,KACN;AACA;AACAH,IAAAA,sBAAsB,CAACG,OAAvB,IACA,CAAEL,OADF,IAEAC,eAAe,CAACI,OALV,EAML;AACD;AACAH,MAAAA,sBAAsB,CAACG,OAAvB,GAAiC,KAAjC,CAFC,CAGD;;AACAF,MAAAA,uBAAuB,CAAEZ,KAAF,EAASM,UAAT,CAAvB;AACA,KAXM,MAWA,KACN;AACA;AACAK,IAAAA,sBAAsB,CAACG,OAAvB,IACAP,UADA,IAEAA,UAAU,KAAKD,UALT,EAML;AACDK,MAAAA,sBAAsB,CAACG,OAAvB,GAAiC,KAAjC;AACA;;AACD,QAAKL,OAAO,KAAKC,eAAe,CAACI,OAAjC,EAA2C;AAC1CJ,MAAAA,eAAe,CAACI,OAAhB,GAA0BL,OAA1B;AACA;AACD,GA9BQ,EA8BN,CAAED,QAAF,EAAYC,OAAZ,EAAqBT,KAArB,EAA4BM,UAA5B,EAAwCC,UAAxC,CA9BM,CAAT;AA+BA;;AAED,SAASQ,iBAAT,QAiBI;AAAA,MAjBwB;AAC3BZ,IAAAA,QAD2B;AAE3BC,IAAAA,SAF2B;AAG3BY,IAAAA,UAAU,GAAG/B,EAAE,CAAE,cAAF,CAHY;AAI3BqB,IAAAA,UAJ2B;AAK3BW,IAAAA,MAL2B;AAM3BC,IAAAA,eAN2B;AAO3BC,IAAAA,IAP2B;AAQ3BC,IAAAA,UAAU,GAAG,IARc;AAS3BC,IAAAA,cAT2B;AAU3BrB,IAAAA,KAV2B;AAW3BsB,IAAAA,IAX2B;AAY3BC,IAAAA,gBAZ2B;AAa3BC,IAAAA,KAb2B;AAc3BC,IAAAA,cAd2B;AAe3BC,IAAAA,iBAf2B;AAgB3BC,IAAAA,cAAc,GAAG;AAhBU,GAiBxB;AACH,QAAM;AAAEnB,IAAAA,QAAF;AAAYoB,IAAAA,QAAZ;AAAsBrB,IAAAA,UAAtB;AAAkCE,IAAAA,OAAlC;AAA2CoB,IAAAA;AAA3C,MAAuD7C,SAAS,CACnE8C,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA,0BAAF;AAA8BC,MAAAA;AAA9B,QACLF,MAAM,CAAEhC,cAAF,CADP;;AAEA,UAAMmC,WAAW,GAAGF,0BAA0B,CAAE/B,KAAF,CAA9C;;AACA,WAAO;AACNQ,MAAAA,QAAQ,EAAEyB,WAAW,KAAK3B,UADpB;AAENsB,MAAAA,QAAQ,EAAEI,YAAY,CAAEhC,KAAF,EAASM,UAAT,CAFhB;AAGNC,MAAAA,UAAU,EAAE0B,WAHN;AAINxB,MAAAA,OAAO,EAAEqB,MAAM,CAAEtC,aAAF,CAAN,CAAwB0C,eAAxB,CAAyC,UAAzC,CAJH;AAKNL,MAAAA,OAAO,EAAEC,MAAM,CAAEtC,aAAF,CAAN,CAAwB0C,eAAxB,CAAyC,OAAzC;AALH,KAAP;AAOA,GAZoE,EAarE,CAAE5B,UAAF,EAAcN,KAAd,CAbqE,CAAtE;AAeAK,EAAAA,8BAA8B,CAC7BL,KAD6B,EAE7BM,UAF6B,EAG7BC,UAH6B,EAI7BC,QAJ6B,EAK7BC,OAL6B,CAA9B;AAOA,QAAM;AACLG,IAAAA,uBADK;AAELC,IAAAA,wBAFK;AAGLsB,IAAAA,OAHK;AAILC,IAAAA;AAJK,MAKFrD,WAAW,CAAEe,cAAF,CALf;AAOAT,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAKqC,iBAAiB,IAAInB,UAAU,KAAK8B,SAApC,IAAiD,CAAE5B,OAAxD,EAAkE;AACjEG,MAAAA,uBAAuB,CAAEZ,KAAF,EAASM,UAAT,CAAvB;AACA;AACD,GAJQ,EAIN,CAAEC,UAAF,EAAcmB,iBAAd,EAAiC1B,KAAjC,EAAwCM,UAAxC,EAAoDG,OAApD,CAJM,CAAT;AAMA,SACC,8BACGW,UAAU,IACX,cAAC,WAAD;AAAa,IAAA,KAAK,EAAGpB;AAArB,KACG4B,QAAQ,IACT,cAAC,uBAAD;AACC,IAAA,KAAK,EAAG5B,KADT;AAEC,IAAA,UAAU,EAAGM,UAFd;AAGC,IAAA,SAAS,EACRE,QAAQ,KAAM,CAAEmB,cAAF,IAAoBE,OAA1B,CAJV;AAMC,qBAAgBrB,QANjB;AAOC,IAAA,KAAK,EAAGgB,KAPT;AAQC,IAAA,IAAI,EAAGG,cAAc,GAAGzC,KAAH,GAAWiC,IARjC;AASC,IAAA,WAAW,EAAG,CAAEQ,cATjB;AAUC,IAAA,OAAO,EAAGA,cAAc,GAAG,UAAH,GAAgBU;AAVzC,IAFF,CAFF,EAmBGf,IAAI,IAAIF,UAAR,IACD,cAAC,6BAAD;AACC,IAAA,MAAM,EAAGE,IADV;AAEC,IAAA,KAAK,EAAGtB,KAFT;AAGC,IAAA,IAAI,EAAGmB;AAHR,KAKGK,KALH,CApBF,EA4BGhB,QAAQ,IACT,cAAC,qBAAD;AACC,IAAA,SAAS,EAAG9B,UAAU,CACrB,8BADqB,EAErB0B,SAFqB,CADvB;AAKC,IAAA,KAAK,EAAGJ;AALT,KAOC,cAAC,uBAAD;AACC,IAAA,SAAS,EAAGkB,eADb;AAEC,IAAA,UAAU,EAAGF,UAFd;AAGC,IAAA,OAAO,EAAG,MAAMH,wBAAwB,CAAEb,KAAF,CAHzC;AAIC,IAAA,gBAAgB,EAAGuB,gBAJpB;AAKC,IAAA,iBAAiB,EAAG;AACnBe,MAAAA,KAAK,EAAEtB,UADY;AAEnBuB,MAAAA,QAAQ,EAAEd,cAFS;AAGnBzB,MAAAA,KAHmB;AAInBM,MAAAA;AAJmB;AALrB,KAYGW,MAAM,IACP,8BACC,8BAAUO,KAAV,CADD,EAEGJ,UAAU,IACX,cAAC,MAAD;AACC,IAAA,SAAS,EAAC,8CADX;AAEC,IAAA,IAAI,EACHQ,QAAQ,GAAGxC,UAAH,GAAgBD,SAH1B;AAKC,IAAA,KAAK,EACJyC,QAAQ,GACL3C,EAAE,CAAE,oBAAF,CADG,GAELA,EAAE,CAAE,gBAAF,CARP;AAUC,IAAA,OAAO,EAAG,MACT,CAAE2C,QAAQ,GAAGQ,SAAH,GAAeD,OAAzB,EACCnC,KADD,EAECM,UAFD,CAXF;AAgBC,IAAA,SAAS,EAAGsB,QAhBb;AAiBC,qBAAgBA;AAjBjB,IAHF,CAbF,CAPD,EA8CC,cAAC,KAAD;AAAO,IAAA,SAAS,EAAGP;AAAnB,KAAsClB,QAAtC,CA9CD,CA7BF,CADD;AAiFA;;AAED,MAAMqC,wBAAwB,GAC7B5C,4BAA4B,CAAEmB,iBAAF,CAD7B;AAGAyB,wBAAwB,CAAC3D,IAAzB,GAAgCkB,qBAAhC;AAEA,eAAeyC,wBAAf","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { Button, Panel, Slot, Fill } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { check, starEmpty, starFilled } from '@wordpress/icons';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { store as viewportStore } from '@wordpress/viewport';\n\n/**\n * Internal dependencies\n */\nimport ComplementaryAreaHeader from '../complementary-area-header';\nimport ComplementaryAreaMoreMenuItem from '../complementary-area-more-menu-item';\nimport ComplementaryAreaToggle from '../complementary-area-toggle';\nimport withComplementaryAreaContext from '../complementary-area-context';\nimport PinnedItems from '../pinned-items';\nimport { store as interfaceStore } from '../../store';\n\nfunction ComplementaryAreaSlot( { scope, ...props } ) {\n\treturn <Slot name={ `ComplementaryArea/${ scope }` } { ...props } />;\n}\n\nfunction ComplementaryAreaFill( { scope, children, className } ) {\n\treturn (\n\t\t<Fill name={ `ComplementaryArea/${ scope }` }>\n\t\t\t<div className={ className }>{ children }</div>\n\t\t</Fill>\n\t);\n}\n\nfunction useAdjustComplementaryListener(\n\tscope,\n\tidentifier,\n\tactiveArea,\n\tisActive,\n\tisSmall\n) {\n\tconst previousIsSmall = useRef( false );\n\tconst shouldOpenWhenNotSmall = useRef( false );\n\tconst { enableComplementaryArea, disableComplementaryArea } =\n\t\tuseDispatch( interfaceStore );\n\tuseEffect( () => {\n\t\t// If the complementary area is active and the editor is switching from a big to a small window size.\n\t\tif ( isActive && isSmall && ! previousIsSmall.current ) {\n\t\t\t// Disable the complementary area.\n\t\t\tdisableComplementaryArea( scope );\n\t\t\t// Flag the complementary area to be reopened when the window size goes from small to big.\n\t\t\tshouldOpenWhenNotSmall.current = true;\n\t\t} else if (\n\t\t\t// If there is a flag indicating the complementary area should be enabled when we go from small to big window size\n\t\t\t// and we are going from a small to big window size.\n\t\t\tshouldOpenWhenNotSmall.current &&\n\t\t\t! isSmall &&\n\t\t\tpreviousIsSmall.current\n\t\t) {\n\t\t\t// Remove the flag indicating the complementary area should be enabled.\n\t\t\tshouldOpenWhenNotSmall.current = false;\n\t\t\t// Enable the complementary area.\n\t\t\tenableComplementaryArea( scope, identifier );\n\t\t} else if (\n\t\t\t// If the flag is indicating the current complementary should be reopened but another complementary area becomes active,\n\t\t\t// remove the flag.\n\t\t\tshouldOpenWhenNotSmall.current &&\n\t\t\tactiveArea &&\n\t\t\tactiveArea !== identifier\n\t\t) {\n\t\t\tshouldOpenWhenNotSmall.current = false;\n\t\t}\n\t\tif ( isSmall !== previousIsSmall.current ) {\n\t\t\tpreviousIsSmall.current = isSmall;\n\t\t}\n\t}, [ isActive, isSmall, scope, identifier, activeArea ] );\n}\n\nfunction ComplementaryArea( {\n\tchildren,\n\tclassName,\n\tcloseLabel = __( 'Close plugin' ),\n\tidentifier,\n\theader,\n\theaderClassName,\n\ticon,\n\tisPinnable = true,\n\tpanelClassName,\n\tscope,\n\tname,\n\tsmallScreenTitle,\n\ttitle,\n\ttoggleShortcut,\n\tisActiveByDefault,\n\tshowIconLabels = false,\n} ) {\n\tconst { isActive, isPinned, activeArea, isSmall, isLarge } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveComplementaryArea, isItemPinned } =\n\t\t\t\tselect( interfaceStore );\n\t\t\tconst _activeArea = getActiveComplementaryArea( scope );\n\t\t\treturn {\n\t\t\t\tisActive: _activeArea === identifier,\n\t\t\t\tisPinned: isItemPinned( scope, identifier ),\n\t\t\t\tactiveArea: _activeArea,\n\t\t\t\tisSmall: select( viewportStore ).isViewportMatch( '< medium' ),\n\t\t\t\tisLarge: select( viewportStore ).isViewportMatch( 'large' ),\n\t\t\t};\n\t\t},\n\t\t[ identifier, scope ]\n\t);\n\tuseAdjustComplementaryListener(\n\t\tscope,\n\t\tidentifier,\n\t\tactiveArea,\n\t\tisActive,\n\t\tisSmall\n\t);\n\tconst {\n\t\tenableComplementaryArea,\n\t\tdisableComplementaryArea,\n\t\tpinItem,\n\t\tunpinItem,\n\t} = useDispatch( interfaceStore );\n\n\tuseEffect( () => {\n\t\tif ( isActiveByDefault && activeArea === undefined && ! isSmall ) {\n\t\t\tenableComplementaryArea( scope, identifier );\n\t\t}\n\t}, [ activeArea, isActiveByDefault, scope, identifier, isSmall ] );\n\n\treturn (\n\t\t<>\n\t\t\t{ isPinnable && (\n\t\t\t\t<PinnedItems scope={ scope }>\n\t\t\t\t\t{ isPinned && (\n\t\t\t\t\t\t<ComplementaryAreaToggle\n\t\t\t\t\t\t\tscope={ scope }\n\t\t\t\t\t\t\tidentifier={ identifier }\n\t\t\t\t\t\t\tisPressed={\n\t\t\t\t\t\t\t\tisActive && ( ! showIconLabels || isLarge )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\taria-expanded={ isActive }\n\t\t\t\t\t\t\tlabel={ title }\n\t\t\t\t\t\t\ticon={ showIconLabels ? check : icon }\n\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\tvariant={ showIconLabels ? 'tertiary' : undefined }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PinnedItems>\n\t\t\t) }\n\t\t\t{ name && isPinnable && (\n\t\t\t\t<ComplementaryAreaMoreMenuItem\n\t\t\t\t\ttarget={ name }\n\t\t\t\t\tscope={ scope }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t>\n\t\t\t\t\t{ title }\n\t\t\t\t</ComplementaryAreaMoreMenuItem>\n\t\t\t) }\n\t\t\t{ isActive && (\n\t\t\t\t<ComplementaryAreaFill\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'interface-complementary-area',\n\t\t\t\t\t\tclassName\n\t\t\t\t\t) }\n\t\t\t\t\tscope={ scope }\n\t\t\t\t>\n\t\t\t\t\t<ComplementaryAreaHeader\n\t\t\t\t\t\tclassName={ headerClassName }\n\t\t\t\t\t\tcloseLabel={ closeLabel }\n\t\t\t\t\t\tonClose={ () => disableComplementaryArea( scope ) }\n\t\t\t\t\t\tsmallScreenTitle={ smallScreenTitle }\n\t\t\t\t\t\ttoggleButtonProps={ {\n\t\t\t\t\t\t\tlabel: closeLabel,\n\t\t\t\t\t\t\tshortcut: toggleShortcut,\n\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\tidentifier,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ header || (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<strong>{ title }</strong>\n\t\t\t\t\t\t\t\t{ isPinnable && (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tclassName=\"interface-complementary-area__pin-unpin-item\"\n\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\tisPinned ? starFilled : starEmpty\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\t\t\tisPinned\n\t\t\t\t\t\t\t\t\t\t\t\t? __( 'Unpin from toolbar' )\n\t\t\t\t\t\t\t\t\t\t\t\t: __( 'Pin to toolbar' )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t\t( isPinned ? unpinItem : pinItem )(\n\t\t\t\t\t\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\t\t\t\t\t\tidentifier\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tisPressed={ isPinned }\n\t\t\t\t\t\t\t\t\t\taria-expanded={ isPinned }\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</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ComplementaryAreaHeader>\n\t\t\t\t\t<Panel className={ panelClassName }>{ children }</Panel>\n\t\t\t\t</ComplementaryAreaFill>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nconst ComplementaryAreaWrapped =\n\twithComplementaryAreaContext( ComplementaryArea );\n\nComplementaryAreaWrapped.Slot = ComplementaryAreaSlot;\n\nexport default ComplementaryAreaWrapped;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/interface/src/components/complementary-area-toggle/index.js"],"names":["omit","Button","useDispatch","useSelect","store","interfaceStore","complementaryAreaContext","ComplementaryAreaToggle","as","scope","identifier","icon","selectedIcon","props","ComponentToUse","isSelected","select","getActiveComplementaryArea","enableComplementaryArea","disableComplementaryArea"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,IAAT,QAAqB,QAArB;AAEA;AACA;AACA;;AACA,SAASC,MAAT,QAAuB,uBAAvB;AACA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,iBAAvC;AAEA;AACA;AACA;;AACA,SAASC,KAAK,IAAIC,cAAlB,QAAwC,aAAxC;AACA,OAAOC,wBAAP,MAAqC,+BAArC;;AAEA,SAASC,uBAAT,OAOI;AAAA,MAP8B;AACjCC,IAAAA,EAAE,GAAGP,MAD4B;AAEjCQ,IAAAA,KAFiC;AAGjCC,IAAAA,UAHiC;AAIjCC,IAAAA,IAJiC;AAKjCC,IAAAA,YALiC;AAMjC,OAAGC;AAN8B,GAO9B;AACH,QAAMC,cAAc,GAAGN,EAAvB;AACA,QAAMO,UAAU,GAAGZ,SAAS,CACzBa,MAAF,IACCA,MAAM,CAAEX,cAAF,CAAN,CAAyBY,0BAAzB,CAAqDR,KAArD,MACAC,UAH0B,EAI3B,CAAEA,UAAF,CAJ2B,CAA5B;AAMA,QAAM;AAAEQ,IAAAA,uBAAF;AAA2BC,IAAAA;AAA3B,MAAwDjB,WAAW,CACxEG,cADwE,CAAzE;AAGA,SACC,cAAC,cAAD;AACC,IAAA,IAAI,EAAGO,YAAY,IAAIG,UAAhB,GAA6BH,YAA7B,GAA4CD,IADpD;AAEC,IAAA,OAAO,EAAG,MAAM;AACf,UAAKI,UAAL,EAAkB;AACjBI,QAAAA,wBAAwB,CAAEV,KAAF,CAAxB;AACA,OAFD,MAEO;AACNS,QAAAA,uBAAuB,CAAET,KAAF,EAASC,UAAT,CAAvB;AACA;AACD;AARF,KASMV,IAAI,CAAEa,KAAF,EAAS,CAAE,MAAF,CAAT,CATV,EADD;AAaA;;AAED,eAAeP,wBAAwB,CAAEC,uBAAF,CAAvC","sourcesContent":["/**\n * External dependencies\n */\nimport { omit } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as interfaceStore } from '../../store';\nimport complementaryAreaContext from '../complementary-area-context';\n\nfunction ComplementaryAreaToggle( {\n\tas = Button,\n\tscope,\n\tidentifier,\n\ticon,\n\tselectedIcon,\n\t...props\n} ) {\n\tconst ComponentToUse = as;\n\tconst isSelected = useSelect(\n\t\t( select ) =>\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea( scope ) ===\n\t\t\tidentifier,\n\t\t[ identifier ]\n\t);\n\tconst { enableComplementaryArea, disableComplementaryArea } = useDispatch(\n\t\tinterfaceStore\n\t);\n\treturn (\n\t\t<ComponentToUse\n\t\t\ticon={ selectedIcon && isSelected ? selectedIcon : icon }\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\t{ ...omit( props, [ 'name' ] ) }\n\t\t/>\n\t);\n}\n\nexport default complementaryAreaContext( ComplementaryAreaToggle );\n"]}
1
+ {"version":3,"sources":["@wordpress/interface/src/components/complementary-area-toggle/index.js"],"names":["omit","Button","useDispatch","useSelect","store","interfaceStore","complementaryAreaContext","ComplementaryAreaToggle","as","scope","identifier","icon","selectedIcon","props","ComponentToUse","isSelected","select","getActiveComplementaryArea","enableComplementaryArea","disableComplementaryArea"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,IAAT,QAAqB,QAArB;AAEA;AACA;AACA;;AACA,SAASC,MAAT,QAAuB,uBAAvB;AACA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,iBAAvC;AAEA;AACA;AACA;;AACA,SAASC,KAAK,IAAIC,cAAlB,QAAwC,aAAxC;AACA,OAAOC,wBAAP,MAAqC,+BAArC;;AAEA,SAASC,uBAAT,OAOI;AAAA,MAP8B;AACjCC,IAAAA,EAAE,GAAGP,MAD4B;AAEjCQ,IAAAA,KAFiC;AAGjCC,IAAAA,UAHiC;AAIjCC,IAAAA,IAJiC;AAKjCC,IAAAA,YALiC;AAMjC,OAAGC;AAN8B,GAO9B;AACH,QAAMC,cAAc,GAAGN,EAAvB;AACA,QAAMO,UAAU,GAAGZ,SAAS,CACzBa,MAAF,IACCA,MAAM,CAAEX,cAAF,CAAN,CAAyBY,0BAAzB,CAAqDR,KAArD,MACAC,UAH0B,EAI3B,CAAEA,UAAF,CAJ2B,CAA5B;AAMA,QAAM;AAAEQ,IAAAA,uBAAF;AAA2BC,IAAAA;AAA3B,MACLjB,WAAW,CAAEG,cAAF,CADZ;AAEA,SACC,cAAC,cAAD;AACC,IAAA,IAAI,EAAGO,YAAY,IAAIG,UAAhB,GAA6BH,YAA7B,GAA4CD,IADpD;AAEC,IAAA,OAAO,EAAG,MAAM;AACf,UAAKI,UAAL,EAAkB;AACjBI,QAAAA,wBAAwB,CAAEV,KAAF,CAAxB;AACA,OAFD,MAEO;AACNS,QAAAA,uBAAuB,CAAET,KAAF,EAASC,UAAT,CAAvB;AACA;AACD;AARF,KASMV,IAAI,CAAEa,KAAF,EAAS,CAAE,MAAF,CAAT,CATV,EADD;AAaA;;AAED,eAAeP,wBAAwB,CAAEC,uBAAF,CAAvC","sourcesContent":["/**\n * External dependencies\n */\nimport { omit } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as interfaceStore } from '../../store';\nimport complementaryAreaContext from '../complementary-area-context';\n\nfunction ComplementaryAreaToggle( {\n\tas = Button,\n\tscope,\n\tidentifier,\n\ticon,\n\tselectedIcon,\n\t...props\n} ) {\n\tconst ComponentToUse = as;\n\tconst isSelected = useSelect(\n\t\t( select ) =>\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea( scope ) ===\n\t\t\tidentifier,\n\t\t[ identifier ]\n\t);\n\tconst { enableComplementaryArea, disableComplementaryArea } =\n\t\tuseDispatch( interfaceStore );\n\treturn (\n\t\t<ComponentToUse\n\t\t\ticon={ selectedIcon && isSelected ? selectedIcon : icon }\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\t{ ...omit( props, [ 'name' ] ) }\n\t\t/>\n\t);\n}\n\nexport default complementaryAreaContext( ComplementaryAreaToggle );\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/interface/src/store/actions.js"],"names":["deprecated","store","preferencesStore","setDefaultComplementaryArea","scope","area","type","enableComplementaryArea","registry","dispatch","isComplementaryAreaVisible","select","get","set","disableComplementaryArea","pinItem","item","pinnedItems","unpinItem","toggleFeature","featureName","since","alternative","toggle","setFeatureValue","value","setFeatureDefaults","defaults","setDefaults"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport deprecated from '@wordpress/deprecated';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Set a default complementary area.\n *\n * @param {string} scope Complementary area scope.\n * @param {string} area Area identifier.\n *\n * @return {Object} Action object.\n */\nexport const setDefaultComplementaryArea = ( scope, area ) => ( {\n\ttype: 'SET_DEFAULT_COMPLEMENTARY_AREA',\n\tscope,\n\tarea,\n} );\n\n/**\n * Enable the complementary area.\n *\n * @param {string} scope Complementary area scope.\n * @param {string} area Area identifier.\n */\nexport const enableComplementaryArea = ( scope, area ) => ( {\n\tregistry,\n\tdispatch,\n} ) => {\n\t// Return early if there's no area.\n\tif ( ! area ) {\n\t\treturn;\n\t}\n\n\tconst isComplementaryAreaVisible = registry\n\t\t.select( preferencesStore )\n\t\t.get( scope, 'isComplementaryAreaVisible' );\n\n\tif ( ! isComplementaryAreaVisible ) {\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( scope, 'isComplementaryAreaVisible', true );\n\t}\n\n\tdispatch( {\n\t\ttype: 'ENABLE_COMPLEMENTARY_AREA',\n\t\tscope,\n\t\tarea,\n\t} );\n};\n\n/**\n * Disable the complementary area.\n *\n * @param {string} scope Complementary area scope.\n */\nexport const disableComplementaryArea = ( scope ) => ( { registry } ) => {\n\tconst isComplementaryAreaVisible = registry\n\t\t.select( preferencesStore )\n\t\t.get( scope, 'isComplementaryAreaVisible' );\n\n\tif ( isComplementaryAreaVisible ) {\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( scope, 'isComplementaryAreaVisible', false );\n\t}\n};\n\n/**\n * Pins an item.\n *\n * @param {string} scope Item scope.\n * @param {string} item Item identifier.\n *\n * @return {Object} Action object.\n */\nexport const pinItem = ( scope, item ) => ( { registry } ) => {\n\t// Return early if there's no item.\n\tif ( ! item ) {\n\t\treturn;\n\t}\n\n\tconst pinnedItems = registry\n\t\t.select( preferencesStore )\n\t\t.get( scope, 'pinnedItems' );\n\n\t// The item is already pinned, there's nothing to do.\n\tif ( pinnedItems?.[ item ] === true ) {\n\t\treturn;\n\t}\n\n\tregistry.dispatch( preferencesStore ).set( scope, 'pinnedItems', {\n\t\t...pinnedItems,\n\t\t[ item ]: true,\n\t} );\n};\n\n/**\n * Unpins an item.\n *\n * @param {string} scope Item scope.\n * @param {string} item Item identifier.\n */\nexport const unpinItem = ( scope, item ) => ( { registry } ) => {\n\t// Return early if there's no item.\n\tif ( ! item ) {\n\t\treturn;\n\t}\n\n\tconst pinnedItems = registry\n\t\t.select( preferencesStore )\n\t\t.get( scope, 'pinnedItems' );\n\n\tregistry.dispatch( preferencesStore ).set( scope, 'pinnedItems', {\n\t\t...pinnedItems,\n\t\t[ item ]: false,\n\t} );\n};\n\n/**\n * Returns an action object used in signalling that a feature should be toggled.\n *\n * @param {string} scope The feature scope (e.g. core/edit-post).\n * @param {string} featureName The feature name.\n */\nexport function toggleFeature( scope, featureName ) {\n\treturn function ( { registry } ) {\n\t\tdeprecated( `dispatch( 'core/interface' ).toggleFeature`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `dispatch( 'core/preferences' ).toggle`,\n\t\t} );\n\n\t\tregistry.dispatch( preferencesStore ).toggle( scope, featureName );\n\t};\n}\n\n/**\n * Returns an action object used in signalling that a feature should be set to\n * a true or false value\n *\n * @param {string} scope The feature scope (e.g. core/edit-post).\n * @param {string} featureName The feature name.\n * @param {boolean} value The value to set.\n *\n * @return {Object} Action object.\n */\nexport function setFeatureValue( scope, featureName, value ) {\n\treturn function ( { registry } ) {\n\t\tdeprecated( `dispatch( 'core/interface' ).setFeatureValue`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `dispatch( 'core/preferences' ).set`,\n\t\t} );\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( scope, featureName, !! value );\n\t};\n}\n\n/**\n * Returns an action object used in signalling that defaults should be set for features.\n *\n * @param {string} scope The feature scope (e.g. core/edit-post).\n * @param {Object<string, boolean>} defaults A key/value map of feature names to values.\n *\n * @return {Object} Action object.\n */\nexport function setFeatureDefaults( scope, defaults ) {\n\treturn function ( { registry } ) {\n\t\tdeprecated( `dispatch( 'core/interface' ).setFeatureDefaults`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `dispatch( 'core/preferences' ).setDefaults`,\n\t\t} );\n\n\t\tregistry.dispatch( preferencesStore ).setDefaults( scope, defaults );\n\t};\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/interface/src/store/actions.js"],"names":["deprecated","store","preferencesStore","setDefaultComplementaryArea","scope","area","type","enableComplementaryArea","registry","dispatch","isComplementaryAreaVisible","select","get","set","disableComplementaryArea","pinItem","item","pinnedItems","unpinItem","toggleFeature","featureName","since","alternative","toggle","setFeatureValue","value","setFeatureDefaults","defaults","setDefaults"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport deprecated from '@wordpress/deprecated';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Set a default complementary area.\n *\n * @param {string} scope Complementary area scope.\n * @param {string} area Area identifier.\n *\n * @return {Object} Action object.\n */\nexport const setDefaultComplementaryArea = ( scope, area ) => ( {\n\ttype: 'SET_DEFAULT_COMPLEMENTARY_AREA',\n\tscope,\n\tarea,\n} );\n\n/**\n * Enable the complementary area.\n *\n * @param {string} scope Complementary area scope.\n * @param {string} area Area identifier.\n */\nexport const enableComplementaryArea =\n\t( scope, area ) =>\n\t( { registry, dispatch } ) => {\n\t\t// Return early if there's no area.\n\t\tif ( ! area ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst isComplementaryAreaVisible = registry\n\t\t\t.select( preferencesStore )\n\t\t\t.get( scope, 'isComplementaryAreaVisible' );\n\n\t\tif ( ! isComplementaryAreaVisible ) {\n\t\t\tregistry\n\t\t\t\t.dispatch( preferencesStore )\n\t\t\t\t.set( scope, 'isComplementaryAreaVisible', true );\n\t\t}\n\n\t\tdispatch( {\n\t\t\ttype: 'ENABLE_COMPLEMENTARY_AREA',\n\t\t\tscope,\n\t\t\tarea,\n\t\t} );\n\t};\n\n/**\n * Disable the complementary area.\n *\n * @param {string} scope Complementary area scope.\n */\nexport const disableComplementaryArea =\n\t( scope ) =>\n\t( { registry } ) => {\n\t\tconst isComplementaryAreaVisible = registry\n\t\t\t.select( preferencesStore )\n\t\t\t.get( scope, 'isComplementaryAreaVisible' );\n\n\t\tif ( isComplementaryAreaVisible ) {\n\t\t\tregistry\n\t\t\t\t.dispatch( preferencesStore )\n\t\t\t\t.set( scope, 'isComplementaryAreaVisible', false );\n\t\t}\n\t};\n\n/**\n * Pins an item.\n *\n * @param {string} scope Item scope.\n * @param {string} item Item identifier.\n *\n * @return {Object} Action object.\n */\nexport const pinItem =\n\t( scope, item ) =>\n\t( { registry } ) => {\n\t\t// Return early if there's no item.\n\t\tif ( ! item ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst pinnedItems = registry\n\t\t\t.select( preferencesStore )\n\t\t\t.get( scope, 'pinnedItems' );\n\n\t\t// The item is already pinned, there's nothing to do.\n\t\tif ( pinnedItems?.[ item ] === true ) {\n\t\t\treturn;\n\t\t}\n\n\t\tregistry.dispatch( preferencesStore ).set( scope, 'pinnedItems', {\n\t\t\t...pinnedItems,\n\t\t\t[ item ]: true,\n\t\t} );\n\t};\n\n/**\n * Unpins an item.\n *\n * @param {string} scope Item scope.\n * @param {string} item Item identifier.\n */\nexport const unpinItem =\n\t( scope, item ) =>\n\t( { registry } ) => {\n\t\t// Return early if there's no item.\n\t\tif ( ! item ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst pinnedItems = registry\n\t\t\t.select( preferencesStore )\n\t\t\t.get( scope, 'pinnedItems' );\n\n\t\tregistry.dispatch( preferencesStore ).set( scope, 'pinnedItems', {\n\t\t\t...pinnedItems,\n\t\t\t[ item ]: false,\n\t\t} );\n\t};\n\n/**\n * Returns an action object used in signalling that a feature should be toggled.\n *\n * @param {string} scope The feature scope (e.g. core/edit-post).\n * @param {string} featureName The feature name.\n */\nexport function toggleFeature( scope, featureName ) {\n\treturn function ( { registry } ) {\n\t\tdeprecated( `dispatch( 'core/interface' ).toggleFeature`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `dispatch( 'core/preferences' ).toggle`,\n\t\t} );\n\n\t\tregistry.dispatch( preferencesStore ).toggle( scope, featureName );\n\t};\n}\n\n/**\n * Returns an action object used in signalling that a feature should be set to\n * a true or false value\n *\n * @param {string} scope The feature scope (e.g. core/edit-post).\n * @param {string} featureName The feature name.\n * @param {boolean} value The value to set.\n *\n * @return {Object} Action object.\n */\nexport function setFeatureValue( scope, featureName, value ) {\n\treturn function ( { registry } ) {\n\t\tdeprecated( `dispatch( 'core/interface' ).setFeatureValue`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `dispatch( 'core/preferences' ).set`,\n\t\t} );\n\n\t\tregistry\n\t\t\t.dispatch( preferencesStore )\n\t\t\t.set( scope, featureName, !! value );\n\t};\n}\n\n/**\n * Returns an action object used in signalling that defaults should be set for features.\n *\n * @param {string} scope The feature scope (e.g. core/edit-post).\n * @param {Object<string, boolean>} defaults A key/value map of feature names to values.\n *\n * @return {Object} Action object.\n */\nexport function setFeatureDefaults( scope, defaults ) {\n\treturn function ( { registry } ) {\n\t\tdeprecated( `dispatch( 'core/interface' ).setFeatureDefaults`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `dispatch( 'core/preferences' ).setDefaults`,\n\t\t} );\n\n\t\tregistry.dispatch( preferencesStore ).setDefaults( scope, defaults );\n\t};\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/interface",
3
- "version": "4.8.0",
3
+ "version": "4.11.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",
@@ -32,17 +32,17 @@
32
32
  ],
33
33
  "dependencies": {
34
34
  "@babel/runtime": "^7.16.0",
35
- "@wordpress/a11y": "^3.9.0",
36
- "@wordpress/components": "^19.11.0",
37
- "@wordpress/compose": "^5.7.0",
38
- "@wordpress/data": "^6.9.0",
39
- "@wordpress/deprecated": "^3.9.0",
40
- "@wordpress/element": "^4.7.0",
41
- "@wordpress/i18n": "^4.9.0",
42
- "@wordpress/icons": "^9.0.0",
43
- "@wordpress/plugins": "^4.7.0",
44
- "@wordpress/preferences": "^2.1.0",
45
- "@wordpress/viewport": "^4.7.0",
35
+ "@wordpress/a11y": "^3.12.0",
36
+ "@wordpress/components": "^19.14.0",
37
+ "@wordpress/compose": "^5.10.0",
38
+ "@wordpress/data": "^6.12.0",
39
+ "@wordpress/deprecated": "^3.12.0",
40
+ "@wordpress/element": "^4.10.0",
41
+ "@wordpress/i18n": "^4.12.0",
42
+ "@wordpress/icons": "^9.3.0",
43
+ "@wordpress/plugins": "^4.10.0",
44
+ "@wordpress/preferences": "^2.4.0",
45
+ "@wordpress/viewport": "^4.10.0",
46
46
  "classnames": "^2.3.1",
47
47
  "lodash": "^4.17.21"
48
48
  },
@@ -53,5 +53,5 @@
53
53
  "publishConfig": {
54
54
  "access": "public"
55
55
  },
56
- "gitHead": "198fa129cf1af8dc615918987ea6795cd40ab7df"
56
+ "gitHead": "a80eeb62ec7cb1418b9915c277e084a29d6665e3"
57
57
  }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import { isEmpty, noop } from 'lodash';
4
+ import { isEmpty } from 'lodash';
5
5
 
6
6
  /**
7
7
  * WordPress dependencies
@@ -9,6 +9,8 @@ import { isEmpty, noop } from 'lodash';
9
9
  import { ButtonGroup, Button, Slot, Fill } from '@wordpress/components';
10
10
  import { Children } from '@wordpress/element';
11
11
 
12
+ const noop = () => {};
13
+
12
14
  function ActionItemSlot( {
13
15
  name,
14
16
  as: Component = ButtonGroup,
@@ -44,9 +44,8 @@ function useAdjustComplementaryListener(
44
44
  ) {
45
45
  const previousIsSmall = useRef( false );
46
46
  const shouldOpenWhenNotSmall = useRef( false );
47
- const { enableComplementaryArea, disableComplementaryArea } = useDispatch(
48
- interfaceStore
49
- );
47
+ const { enableComplementaryArea, disableComplementaryArea } =
48
+ useDispatch( interfaceStore );
50
49
  useEffect( () => {
51
50
  // If the complementary area is active and the editor is switching from a big to a small window size.
52
51
  if ( isActive && isSmall && ! previousIsSmall.current ) {
@@ -100,9 +99,8 @@ function ComplementaryArea( {
100
99
  } ) {
101
100
  const { isActive, isPinned, activeArea, isSmall, isLarge } = useSelect(
102
101
  ( select ) => {
103
- const { getActiveComplementaryArea, isItemPinned } = select(
104
- interfaceStore
105
- );
102
+ const { getActiveComplementaryArea, isItemPinned } =
103
+ select( interfaceStore );
106
104
  const _activeArea = getActiveComplementaryArea( scope );
107
105
  return {
108
106
  isActive: _activeArea === identifier,
@@ -217,9 +215,8 @@ function ComplementaryArea( {
217
215
  );
218
216
  }
219
217
 
220
- const ComplementaryAreaWrapped = withComplementaryAreaContext(
221
- ComplementaryArea
222
- );
218
+ const ComplementaryAreaWrapped =
219
+ withComplementaryAreaContext( ComplementaryArea );
223
220
 
224
221
  ComplementaryAreaWrapped.Slot = ComplementaryAreaSlot;
225
222
 
@@ -30,9 +30,8 @@ function ComplementaryAreaToggle( {
30
30
  identifier,
31
31
  [ identifier ]
32
32
  );
33
- const { enableComplementaryArea, disableComplementaryArea } = useDispatch(
34
- interfaceStore
35
- );
33
+ const { enableComplementaryArea, disableComplementaryArea } =
34
+ useDispatch( interfaceStore );
36
35
  return (
37
36
  <ComponentToUse
38
37
  icon={ selectedIcon && isSelected ? selectedIcon : icon }
@@ -24,48 +24,49 @@ export const setDefaultComplementaryArea = ( scope, area ) => ( {
24
24
  * @param {string} scope Complementary area scope.
25
25
  * @param {string} area Area identifier.
26
26
  */
27
- export const enableComplementaryArea = ( scope, area ) => ( {
28
- registry,
29
- dispatch,
30
- } ) => {
31
- // Return early if there's no area.
32
- if ( ! area ) {
33
- return;
34
- }
35
-
36
- const isComplementaryAreaVisible = registry
37
- .select( preferencesStore )
38
- .get( scope, 'isComplementaryAreaVisible' );
39
-
40
- if ( ! isComplementaryAreaVisible ) {
41
- registry
42
- .dispatch( preferencesStore )
43
- .set( scope, 'isComplementaryAreaVisible', true );
44
- }
45
-
46
- dispatch( {
47
- type: 'ENABLE_COMPLEMENTARY_AREA',
48
- scope,
49
- area,
50
- } );
51
- };
27
+ export const enableComplementaryArea =
28
+ ( scope, area ) =>
29
+ ( { registry, dispatch } ) => {
30
+ // Return early if there's no area.
31
+ if ( ! area ) {
32
+ return;
33
+ }
34
+
35
+ const isComplementaryAreaVisible = registry
36
+ .select( preferencesStore )
37
+ .get( scope, 'isComplementaryAreaVisible' );
38
+
39
+ if ( ! isComplementaryAreaVisible ) {
40
+ registry
41
+ .dispatch( preferencesStore )
42
+ .set( scope, 'isComplementaryAreaVisible', true );
43
+ }
44
+
45
+ dispatch( {
46
+ type: 'ENABLE_COMPLEMENTARY_AREA',
47
+ scope,
48
+ area,
49
+ } );
50
+ };
52
51
 
53
52
  /**
54
53
  * Disable the complementary area.
55
54
  *
56
55
  * @param {string} scope Complementary area scope.
57
56
  */
58
- export const disableComplementaryArea = ( scope ) => ( { registry } ) => {
59
- const isComplementaryAreaVisible = registry
60
- .select( preferencesStore )
61
- .get( scope, 'isComplementaryAreaVisible' );
62
-
63
- if ( isComplementaryAreaVisible ) {
64
- registry
65
- .dispatch( preferencesStore )
66
- .set( scope, 'isComplementaryAreaVisible', false );
67
- }
68
- };
57
+ export const disableComplementaryArea =
58
+ ( scope ) =>
59
+ ( { registry } ) => {
60
+ const isComplementaryAreaVisible = registry
61
+ .select( preferencesStore )
62
+ .get( scope, 'isComplementaryAreaVisible' );
63
+
64
+ if ( isComplementaryAreaVisible ) {
65
+ registry
66
+ .dispatch( preferencesStore )
67
+ .set( scope, 'isComplementaryAreaVisible', false );
68
+ }
69
+ };
69
70
 
70
71
  /**
71
72
  * Pins an item.
@@ -75,26 +76,28 @@ export const disableComplementaryArea = ( scope ) => ( { registry } ) => {
75
76
  *
76
77
  * @return {Object} Action object.
77
78
  */
78
- export const pinItem = ( scope, item ) => ( { registry } ) => {
79
- // Return early if there's no item.
80
- if ( ! item ) {
81
- return;
82
- }
83
-
84
- const pinnedItems = registry
85
- .select( preferencesStore )
86
- .get( scope, 'pinnedItems' );
87
-
88
- // The item is already pinned, there's nothing to do.
89
- if ( pinnedItems?.[ item ] === true ) {
90
- return;
91
- }
92
-
93
- registry.dispatch( preferencesStore ).set( scope, 'pinnedItems', {
94
- ...pinnedItems,
95
- [ item ]: true,
96
- } );
97
- };
79
+ export const pinItem =
80
+ ( scope, item ) =>
81
+ ( { registry } ) => {
82
+ // Return early if there's no item.
83
+ if ( ! item ) {
84
+ return;
85
+ }
86
+
87
+ const pinnedItems = registry
88
+ .select( preferencesStore )
89
+ .get( scope, 'pinnedItems' );
90
+
91
+ // The item is already pinned, there's nothing to do.
92
+ if ( pinnedItems?.[ item ] === true ) {
93
+ return;
94
+ }
95
+
96
+ registry.dispatch( preferencesStore ).set( scope, 'pinnedItems', {
97
+ ...pinnedItems,
98
+ [ item ]: true,
99
+ } );
100
+ };
98
101
 
99
102
  /**
100
103
  * Unpins an item.
@@ -102,21 +105,23 @@ export const pinItem = ( scope, item ) => ( { registry } ) => {
102
105
  * @param {string} scope Item scope.
103
106
  * @param {string} item Item identifier.
104
107
  */
105
- export const unpinItem = ( scope, item ) => ( { registry } ) => {
106
- // Return early if there's no item.
107
- if ( ! item ) {
108
- return;
109
- }
110
-
111
- const pinnedItems = registry
112
- .select( preferencesStore )
113
- .get( scope, 'pinnedItems' );
114
-
115
- registry.dispatch( preferencesStore ).set( scope, 'pinnedItems', {
116
- ...pinnedItems,
117
- [ item ]: false,
118
- } );
119
- };
108
+ export const unpinItem =
109
+ ( scope, item ) =>
110
+ ( { registry } ) => {
111
+ // Return early if there's no item.
112
+ if ( ! item ) {
113
+ return;
114
+ }
115
+
116
+ const pinnedItems = registry
117
+ .select( preferencesStore )
118
+ .get( scope, 'pinnedItems' );
119
+
120
+ registry.dispatch( preferencesStore ).set( scope, 'pinnedItems', {
121
+ ...pinnedItems,
122
+ [ item ]: false,
123
+ } );
124
+ };
120
125
 
121
126
  /**
122
127
  * Returns an action object used in signalling that a feature should be toggled.