@wordpress/interface 9.17.0 → 9.17.1-next.47f435fc9.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/build/components/action-item/index.js +68 -66
- package/build/components/action-item/index.js.map +7 -1
- package/build/components/complementary-area/index.js +215 -194
- package/build/components/complementary-area/index.js.map +7 -1
- package/build/components/complementary-area-header/index.js +53 -33
- package/build/components/complementary-area-header/index.js.map +7 -1
- package/build/components/complementary-area-more-menu-item/index.js +60 -39
- package/build/components/complementary-area-more-menu-item/index.js.map +7 -1
- package/build/components/complementary-area-toggle/index.js +61 -50
- package/build/components/complementary-area-toggle/index.js.map +7 -1
- package/build/components/fullscreen-mode/index.js +33 -27
- package/build/components/fullscreen-mode/index.js.map +7 -1
- package/build/components/index.js +52 -55
- package/build/components/index.js.map +7 -1
- package/build/components/interface-skeleton/index.js +156 -132
- package/build/components/interface-skeleton/index.js.map +7 -1
- package/build/components/pinned-items/index.js +48 -39
- package/build/components/pinned-items/index.js.map +7 -1
- package/build/index.js +27 -24
- package/build/index.js.map +7 -1
- package/build/store/actions.js +94 -165
- package/build/store/actions.js.map +7 -1
- package/build/store/constants.js +27 -12
- package/build/store/constants.js.map +7 -1
- package/build/store/deprecated.js +55 -29
- package/build/store/deprecated.js.map +7 -1
- package/build/store/index.js +44 -32
- package/build/store/index.js.map +7 -1
- package/build/store/reducer.js +49 -51
- package/build/store/reducer.js.map +7 -1
- package/build/store/selectors.js +96 -93
- package/build/store/selectors.js.map +7 -1
- package/build-module/components/action-item/index.js +49 -59
- package/build-module/components/action-item/index.js.map +7 -1
- package/build-module/components/complementary-area/index.js +185 -174
- package/build-module/components/complementary-area/index.js.map +7 -1
- package/build-module/components/complementary-area-header/index.js +25 -26
- package/build-module/components/complementary-area-header/index.js.map +7 -1
- package/build-module/components/complementary-area-more-menu-item/index.js +33 -33
- package/build-module/components/complementary-area-more-menu-item/index.js.map +7 -1
- package/build-module/components/complementary-area-toggle/index.js +41 -44
- package/build-module/components/complementary-area-toggle/index.js.map +7 -1
- package/build-module/components/fullscreen-mode/index.js +13 -19
- package/build-module/components/fullscreen-mode/index.js.map +7 -1
- package/build-module/components/index.js +15 -8
- package/build-module/components/index.js.map +7 -1
- package/build-module/components/interface-skeleton/index.js +132 -122
- package/build-module/components/interface-skeleton/index.js.map +7 -1
- package/build-module/components/pinned-items/index.js +20 -32
- package/build-module/components/pinned-items/index.js.map +7 -1
- package/build-module/index.js +6 -3
- package/build-module/index.js.map +7 -1
- package/build-module/store/actions.js +47 -138
- package/build-module/store/actions.js.map +7 -1
- package/build-module/store/constants.js +5 -7
- package/build-module/store/constants.js.map +7 -1
- package/build-module/store/deprecated.js +21 -20
- package/build-module/store/deprecated.js.map +7 -1
- package/build-module/store/index.js +10 -22
- package/build-module/store/index.js.map +7 -1
- package/build-module/store/reducer.js +28 -45
- package/build-module/store/reducer.js.map +7 -1
- package/build-module/store/selectors.js +64 -87
- package/build-module/store/selectors.js.map +7 -1
- package/build-style/style-rtl.css +87 -85
- package/build-style/style.css +87 -85
- package/package.json +21 -15
- package/src/components/complementary-area/style.scss +5 -0
- package/src/components/complementary-area-header/style.scss +3 -0
- package/src/components/fullscreen-mode/style.scss +3 -0
- package/src/components/index.js +0 -1
- package/src/components/interface-skeleton/index.js +1 -5
- package/src/components/interface-skeleton/style.scss +6 -0
- package/src/components/pinned-items/style.scss +3 -0
- package/src/style.scss +6 -5
- package/build/components/index.native.js +0 -21
- package/build/components/index.native.js.map +0 -1
- package/build/components/navigable-region/index.js +0 -38
- package/build/components/navigable-region/index.js.map +0 -1
- package/build-module/components/index.native.js +0 -3
- package/build-module/components/index.native.js.map +0 -1
- package/build-module/components/navigable-region/index.js +0 -30
- package/build-module/components/navigable-region/index.js.map +0 -1
- package/src/components/navigable-region/README.md +0 -36
- package/src/components/navigable-region/index.js +0 -29
|
@@ -1,51 +1,39 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import { store as
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
import
|
|
23
|
-
import
|
|
24
|
-
import
|
|
25
|
-
import
|
|
26
|
-
import
|
|
27
|
-
import {
|
|
1
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
import clsx from "clsx";
|
|
3
|
+
import {
|
|
4
|
+
Button,
|
|
5
|
+
Panel,
|
|
6
|
+
Slot,
|
|
7
|
+
Fill,
|
|
8
|
+
__unstableMotion as motion,
|
|
9
|
+
__unstableAnimatePresence as AnimatePresence
|
|
10
|
+
} from "@wordpress/components";
|
|
11
|
+
import { useDispatch, useSelect } from "@wordpress/data";
|
|
12
|
+
import { __ } from "@wordpress/i18n";
|
|
13
|
+
import { check, starEmpty, starFilled } from "@wordpress/icons";
|
|
14
|
+
import { useEffect, useRef, useState } from "@wordpress/element";
|
|
15
|
+
import { store as viewportStore } from "@wordpress/viewport";
|
|
16
|
+
import { store as preferencesStore } from "@wordpress/preferences";
|
|
17
|
+
import {
|
|
18
|
+
useReducedMotion,
|
|
19
|
+
useViewportMatch,
|
|
20
|
+
usePrevious
|
|
21
|
+
} from "@wordpress/compose";
|
|
22
|
+
import { usePluginContext } from "@wordpress/plugins";
|
|
23
|
+
import ComplementaryAreaHeader from "../complementary-area-header";
|
|
24
|
+
import ComplementaryAreaMoreMenuItem from "../complementary-area-more-menu-item";
|
|
25
|
+
import ComplementaryAreaToggle from "../complementary-area-toggle";
|
|
26
|
+
import PinnedItems from "../pinned-items";
|
|
27
|
+
import { store as interfaceStore } from "../../store";
|
|
28
28
|
const ANIMATION_DURATION = 0.3;
|
|
29
|
-
function ComplementaryAreaSlot({
|
|
30
|
-
scope
|
|
31
|
-
...props
|
|
32
|
-
}) {
|
|
33
|
-
return /*#__PURE__*/_jsx(Slot, {
|
|
34
|
-
name: `ComplementaryArea/${scope}`,
|
|
35
|
-
...props
|
|
36
|
-
});
|
|
29
|
+
function ComplementaryAreaSlot({ scope, ...props }) {
|
|
30
|
+
return /* @__PURE__ */ jsx(Slot, { name: `ComplementaryArea/${scope}`, ...props });
|
|
37
31
|
}
|
|
38
32
|
const SIDEBAR_WIDTH = 280;
|
|
39
33
|
const variants = {
|
|
40
|
-
open: {
|
|
41
|
-
|
|
42
|
-
}
|
|
43
|
-
closed: {
|
|
44
|
-
width: 0
|
|
45
|
-
},
|
|
46
|
-
mobileOpen: {
|
|
47
|
-
width: '100vw'
|
|
48
|
-
}
|
|
34
|
+
open: { width: SIDEBAR_WIDTH },
|
|
35
|
+
closed: { width: 0 },
|
|
36
|
+
mobileOpen: { width: "100vw" }
|
|
49
37
|
};
|
|
50
38
|
function ComplementaryAreaFill({
|
|
51
39
|
activeArea,
|
|
@@ -56,11 +44,7 @@ function ComplementaryAreaFill({
|
|
|
56
44
|
id
|
|
57
45
|
}) {
|
|
58
46
|
const disableMotion = useReducedMotion();
|
|
59
|
-
const isMobileViewport = useViewportMatch(
|
|
60
|
-
// This is used to delay the exit animation to the next tick.
|
|
61
|
-
// The reason this is done is to allow us to apply the right transition properties
|
|
62
|
-
// When we switch from an open sidebar to another open sidebar.
|
|
63
|
-
// we don't want to animate in this case.
|
|
47
|
+
const isMobileViewport = useViewportMatch("medium", "<");
|
|
64
48
|
const previousActiveArea = usePrevious(activeArea);
|
|
65
49
|
const previousIsActive = usePrevious(isActive);
|
|
66
50
|
const [, setState] = useState({});
|
|
@@ -68,73 +52,74 @@ function ComplementaryAreaFill({
|
|
|
68
52
|
setState({});
|
|
69
53
|
}, [isActive]);
|
|
70
54
|
const transition = {
|
|
71
|
-
type:
|
|
55
|
+
type: "tween",
|
|
72
56
|
duration: disableMotion || isMobileViewport || !!previousActiveArea && !!activeArea && activeArea !== previousActiveArea ? 0 : ANIMATION_DURATION,
|
|
73
57
|
ease: [0.6, 0, 0.4, 1]
|
|
74
58
|
};
|
|
75
|
-
return
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
id
|
|
88
|
-
className
|
|
59
|
+
return /* @__PURE__ */ jsx(Fill, { name: `ComplementaryArea/${scope}`, children: /* @__PURE__ */ jsx(AnimatePresence, { initial: false, children: (previousIsActive || isActive) && /* @__PURE__ */ jsx(
|
|
60
|
+
motion.div,
|
|
61
|
+
{
|
|
62
|
+
variants,
|
|
63
|
+
initial: "closed",
|
|
64
|
+
animate: isMobileViewport ? "mobileOpen" : "open",
|
|
65
|
+
exit: "closed",
|
|
66
|
+
transition,
|
|
67
|
+
className: "interface-complementary-area__fill",
|
|
68
|
+
children: /* @__PURE__ */ jsx(
|
|
69
|
+
"div",
|
|
70
|
+
{
|
|
71
|
+
id,
|
|
72
|
+
className,
|
|
89
73
|
style: {
|
|
90
|
-
width: isMobileViewport ?
|
|
74
|
+
width: isMobileViewport ? "100vw" : SIDEBAR_WIDTH
|
|
91
75
|
},
|
|
92
|
-
children
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
}
|
|
96
|
-
});
|
|
76
|
+
children
|
|
77
|
+
}
|
|
78
|
+
)
|
|
79
|
+
}
|
|
80
|
+
) }) });
|
|
97
81
|
}
|
|
98
82
|
function useAdjustComplementaryListener(scope, identifier, activeArea, isActive, isSmall) {
|
|
99
83
|
const previousIsSmallRef = useRef(false);
|
|
100
84
|
const shouldOpenWhenNotSmallRef = useRef(false);
|
|
101
|
-
const {
|
|
102
|
-
enableComplementaryArea,
|
|
103
|
-
disableComplementaryArea
|
|
104
|
-
} = useDispatch(interfaceStore);
|
|
85
|
+
const { enableComplementaryArea, disableComplementaryArea } = useDispatch(interfaceStore);
|
|
105
86
|
useEffect(() => {
|
|
106
|
-
// If the complementary area is active and the editor is switching from
|
|
107
|
-
// a big to a small window size.
|
|
108
87
|
if (isActive && isSmall && !previousIsSmallRef.current) {
|
|
109
88
|
disableComplementaryArea(scope);
|
|
110
|
-
// Flag the complementary area to be reopened when the window size
|
|
111
|
-
// goes from small to big.
|
|
112
89
|
shouldOpenWhenNotSmallRef.current = true;
|
|
113
90
|
} else if (
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
// enabled.
|
|
91
|
+
// If there is a flag indicating the complementary area should be
|
|
92
|
+
// enabled when we go from small to big window size and we are going
|
|
93
|
+
// from a small to big window size.
|
|
94
|
+
shouldOpenWhenNotSmallRef.current && !isSmall && previousIsSmallRef.current
|
|
95
|
+
) {
|
|
120
96
|
shouldOpenWhenNotSmallRef.current = false;
|
|
121
97
|
enableComplementaryArea(scope, identifier);
|
|
122
98
|
} else if (
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
99
|
+
// If the flag is indicating the current complementary should be
|
|
100
|
+
// reopened but another complementary area becomes active, remove
|
|
101
|
+
// the flag.
|
|
102
|
+
shouldOpenWhenNotSmallRef.current && activeArea && activeArea !== identifier
|
|
103
|
+
) {
|
|
127
104
|
shouldOpenWhenNotSmallRef.current = false;
|
|
128
105
|
}
|
|
129
106
|
if (isSmall !== previousIsSmallRef.current) {
|
|
130
107
|
previousIsSmallRef.current = isSmall;
|
|
131
108
|
}
|
|
132
|
-
}, [
|
|
109
|
+
}, [
|
|
110
|
+
isActive,
|
|
111
|
+
isSmall,
|
|
112
|
+
scope,
|
|
113
|
+
identifier,
|
|
114
|
+
activeArea,
|
|
115
|
+
disableComplementaryArea,
|
|
116
|
+
enableComplementaryArea
|
|
117
|
+
]);
|
|
133
118
|
}
|
|
134
119
|
function ComplementaryArea({
|
|
135
120
|
children,
|
|
136
121
|
className,
|
|
137
|
-
closeLabel = __(
|
|
122
|
+
closeLabel = __("Close plugin"),
|
|
138
123
|
identifier: identifierProp,
|
|
139
124
|
header,
|
|
140
125
|
headerClassName,
|
|
@@ -150,11 +135,6 @@ function ComplementaryArea({
|
|
|
150
135
|
const context = usePluginContext();
|
|
151
136
|
const icon = iconProp || context.icon;
|
|
152
137
|
const identifier = identifierProp || `${context.name}/${name}`;
|
|
153
|
-
|
|
154
|
-
// This state is used to delay the rendering of the Fill
|
|
155
|
-
// until the initial effect runs.
|
|
156
|
-
// This prevents the animation from running on mount if
|
|
157
|
-
// the complementary area is active by default.
|
|
158
138
|
const [isReady, setIsReady] = useState(false);
|
|
159
139
|
const {
|
|
160
140
|
isLoading,
|
|
@@ -164,28 +144,35 @@ function ComplementaryArea({
|
|
|
164
144
|
isSmall,
|
|
165
145
|
isLarge,
|
|
166
146
|
showIconLabels
|
|
167
|
-
} = useSelect(
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
get
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
147
|
+
} = useSelect(
|
|
148
|
+
(select) => {
|
|
149
|
+
const {
|
|
150
|
+
getActiveComplementaryArea,
|
|
151
|
+
isComplementaryAreaLoading,
|
|
152
|
+
isItemPinned
|
|
153
|
+
} = select(interfaceStore);
|
|
154
|
+
const { get } = select(preferencesStore);
|
|
155
|
+
const _activeArea = getActiveComplementaryArea(scope);
|
|
156
|
+
return {
|
|
157
|
+
isLoading: isComplementaryAreaLoading(scope),
|
|
158
|
+
isActive: _activeArea === identifier,
|
|
159
|
+
isPinned: isItemPinned(scope, identifier),
|
|
160
|
+
activeArea: _activeArea,
|
|
161
|
+
isSmall: select(viewportStore).isViewportMatch("< medium"),
|
|
162
|
+
isLarge: select(viewportStore).isViewportMatch("large"),
|
|
163
|
+
showIconLabels: get("core", "showIconLabels")
|
|
164
|
+
};
|
|
165
|
+
},
|
|
166
|
+
[identifier, scope]
|
|
167
|
+
);
|
|
168
|
+
const isMobileViewport = useViewportMatch("medium", "<");
|
|
169
|
+
useAdjustComplementaryListener(
|
|
170
|
+
scope,
|
|
171
|
+
identifier,
|
|
172
|
+
activeArea,
|
|
173
|
+
isActive,
|
|
174
|
+
isSmall
|
|
175
|
+
);
|
|
189
176
|
const {
|
|
190
177
|
enableComplementaryArea,
|
|
191
178
|
disableComplementaryArea,
|
|
@@ -193,77 +180,101 @@ function ComplementaryArea({
|
|
|
193
180
|
unpinItem
|
|
194
181
|
} = useDispatch(interfaceStore);
|
|
195
182
|
useEffect(() => {
|
|
196
|
-
|
|
197
|
-
// default. For small screens, always initially disable.
|
|
198
|
-
if (isActiveByDefault && activeArea === undefined && !isSmall) {
|
|
183
|
+
if (isActiveByDefault && activeArea === void 0 && !isSmall) {
|
|
199
184
|
enableComplementaryArea(scope, identifier);
|
|
200
|
-
} else if (activeArea ===
|
|
185
|
+
} else if (activeArea === void 0 && isSmall) {
|
|
201
186
|
disableComplementaryArea(scope, identifier);
|
|
202
187
|
}
|
|
203
188
|
setIsReady(true);
|
|
204
|
-
}, [
|
|
189
|
+
}, [
|
|
190
|
+
activeArea,
|
|
191
|
+
isActiveByDefault,
|
|
192
|
+
scope,
|
|
193
|
+
identifier,
|
|
194
|
+
isSmall,
|
|
195
|
+
enableComplementaryArea,
|
|
196
|
+
disableComplementaryArea
|
|
197
|
+
]);
|
|
205
198
|
if (!isReady) {
|
|
206
199
|
return;
|
|
207
200
|
}
|
|
208
|
-
return
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
scope
|
|
213
|
-
identifier
|
|
201
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
202
|
+
isPinnable && /* @__PURE__ */ jsx(PinnedItems, { scope, children: isPinned && /* @__PURE__ */ jsx(
|
|
203
|
+
ComplementaryAreaToggle,
|
|
204
|
+
{
|
|
205
|
+
scope,
|
|
206
|
+
identifier,
|
|
214
207
|
isPressed: isActive && (!showIconLabels || isLarge),
|
|
215
208
|
"aria-expanded": isActive,
|
|
216
209
|
"aria-disabled": isLoading,
|
|
217
210
|
label: title,
|
|
218
211
|
icon: showIconLabels ? check : icon,
|
|
219
212
|
showTooltip: !showIconLabels,
|
|
220
|
-
variant: showIconLabels ?
|
|
213
|
+
variant: showIconLabels ? "tertiary" : void 0,
|
|
221
214
|
size: "compact",
|
|
222
215
|
shortcut: toggleShortcut
|
|
223
|
-
}
|
|
224
|
-
}),
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
216
|
+
}
|
|
217
|
+
) }),
|
|
218
|
+
name && isPinnable && /* @__PURE__ */ jsx(
|
|
219
|
+
ComplementaryAreaMoreMenuItem,
|
|
220
|
+
{
|
|
221
|
+
target: name,
|
|
222
|
+
scope,
|
|
223
|
+
icon,
|
|
224
|
+
children: title
|
|
225
|
+
}
|
|
226
|
+
),
|
|
227
|
+
/* @__PURE__ */ jsxs(
|
|
228
|
+
ComplementaryAreaFill,
|
|
229
|
+
{
|
|
230
|
+
activeArea,
|
|
231
|
+
isActive,
|
|
232
|
+
className: clsx("interface-complementary-area", className),
|
|
233
|
+
scope,
|
|
234
|
+
id: identifier.replace("/", ":"),
|
|
235
|
+
children: [
|
|
236
|
+
/* @__PURE__ */ jsx(
|
|
237
|
+
ComplementaryAreaHeader,
|
|
238
|
+
{
|
|
239
|
+
className: headerClassName,
|
|
240
|
+
closeLabel,
|
|
241
|
+
onClose: () => disableComplementaryArea(scope),
|
|
242
|
+
toggleButtonProps: {
|
|
243
|
+
label: closeLabel,
|
|
244
|
+
size: "compact",
|
|
245
|
+
shortcut: toggleShortcut,
|
|
246
|
+
scope,
|
|
247
|
+
identifier
|
|
248
|
+
},
|
|
249
|
+
children: header || /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
250
|
+
/* @__PURE__ */ jsx("h2", { className: "interface-complementary-area-header__title", children: title }),
|
|
251
|
+
isPinnable && !isMobileViewport && /* @__PURE__ */ jsx(
|
|
252
|
+
Button,
|
|
253
|
+
{
|
|
254
|
+
className: "interface-complementary-area__pin-unpin-item",
|
|
255
|
+
icon: isPinned ? starFilled : starEmpty,
|
|
256
|
+
label: isPinned ? __("Unpin from toolbar") : __("Pin to toolbar"),
|
|
257
|
+
onClick: () => (isPinned ? unpinItem : pinItem)(
|
|
258
|
+
scope,
|
|
259
|
+
identifier
|
|
260
|
+
),
|
|
261
|
+
isPressed: isPinned,
|
|
262
|
+
"aria-expanded": isPinned,
|
|
263
|
+
size: "compact"
|
|
264
|
+
}
|
|
265
|
+
)
|
|
266
|
+
] })
|
|
267
|
+
}
|
|
268
|
+
),
|
|
269
|
+
/* @__PURE__ */ jsx(Panel, { className: panelClassName, children })
|
|
270
|
+
]
|
|
271
|
+
}
|
|
272
|
+
)
|
|
273
|
+
] });
|
|
266
274
|
}
|
|
267
275
|
ComplementaryArea.Slot = ComplementaryAreaSlot;
|
|
268
|
-
|
|
269
|
-
|
|
276
|
+
var complementary_area_default = ComplementaryArea;
|
|
277
|
+
export {
|
|
278
|
+
complementary_area_default as default
|
|
279
|
+
};
|
|
280
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","Button","Panel","Slot","Fill","__unstableMotion","motion","__unstableAnimatePresence","AnimatePresence","useDispatch","useSelect","__","check","starEmpty","starFilled","useEffect","useRef","useState","store","viewportStore","preferencesStore","useReducedMotion","useViewportMatch","usePrevious","usePluginContext","ComplementaryAreaHeader","ComplementaryAreaMoreMenuItem","ComplementaryAreaToggle","PinnedItems","interfaceStore","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ANIMATION_DURATION","ComplementaryAreaSlot","scope","props","name","SIDEBAR_WIDTH","variants","open","width","closed","mobileOpen","ComplementaryAreaFill","activeArea","isActive","children","className","id","disableMotion","isMobileViewport","previousActiveArea","previousIsActive","setState","transition","type","duration","ease","initial","div","animate","exit","style","useAdjustComplementaryListener","identifier","isSmall","previousIsSmallRef","shouldOpenWhenNotSmallRef","enableComplementaryArea","disableComplementaryArea","current","ComplementaryArea","closeLabel","identifierProp","header","headerClassName","icon","iconProp","isPinnable","panelClassName","title","toggleShortcut","isActiveByDefault","context","isReady","setIsReady","isLoading","isPinned","isLarge","showIconLabels","select","getActiveComplementaryArea","isComplementaryAreaLoading","isItemPinned","get","_activeArea","isViewportMatch","pinItem","unpinItem","undefined","isPressed","label","showTooltip","variant","size","shortcut","target","replace","onClose","toggleButtonProps","onClick"],"sources":["@wordpress/interface/src/components/complementary-area/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tPanel,\n\tSlot,\n\tFill,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n} from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { check, starEmpty, starFilled } from '@wordpress/icons';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { store as viewportStore } from '@wordpress/viewport';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tuseReducedMotion,\n\tuseViewportMatch,\n\tusePrevious,\n} from '@wordpress/compose';\nimport { usePluginContext } from '@wordpress/plugins';\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 PinnedItems from '../pinned-items';\nimport { store as interfaceStore } from '../../store';\n\nconst ANIMATION_DURATION = 0.3;\n\nfunction ComplementaryAreaSlot( { scope, ...props } ) {\n\treturn <Slot name={ `ComplementaryArea/${ scope }` } { ...props } />;\n}\n\nconst SIDEBAR_WIDTH = 280;\nconst variants = {\n\topen: { width: SIDEBAR_WIDTH },\n\tclosed: { width: 0 },\n\tmobileOpen: { width: '100vw' },\n};\n\nfunction ComplementaryAreaFill( {\n\tactiveArea,\n\tisActive,\n\tscope,\n\tchildren,\n\tclassName,\n\tid,\n} ) {\n\tconst disableMotion = useReducedMotion();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\t// This is used to delay the exit animation to the next tick.\n\t// The reason this is done is to allow us to apply the right transition properties\n\t// When we switch from an open sidebar to another open sidebar.\n\t// we don't want to animate in this case.\n\tconst previousActiveArea = usePrevious( activeArea );\n\tconst previousIsActive = usePrevious( isActive );\n\tconst [ , setState ] = useState( {} );\n\tuseEffect( () => {\n\t\tsetState( {} );\n\t}, [ isActive ] );\n\tconst transition = {\n\t\ttype: 'tween',\n\t\tduration:\n\t\t\tdisableMotion ||\n\t\t\tisMobileViewport ||\n\t\t\t( !! previousActiveArea &&\n\t\t\t\t!! activeArea &&\n\t\t\t\tactiveArea !== previousActiveArea )\n\t\t\t\t? 0\n\t\t\t\t: ANIMATION_DURATION,\n\t\tease: [ 0.6, 0, 0.4, 1 ],\n\t};\n\n\treturn (\n\t\t<Fill name={ `ComplementaryArea/${ scope }` }>\n\t\t\t<AnimatePresence initial={ false }>\n\t\t\t\t{ ( previousIsActive || isActive ) && (\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tvariants={ variants }\n\t\t\t\t\t\tinitial=\"closed\"\n\t\t\t\t\t\tanimate={ isMobileViewport ? 'mobileOpen' : 'open' }\n\t\t\t\t\t\texit=\"closed\"\n\t\t\t\t\t\ttransition={ transition }\n\t\t\t\t\t\tclassName=\"interface-complementary-area__fill\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tid={ id }\n\t\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\twidth: isMobileViewport\n\t\t\t\t\t\t\t\t\t? '100vw'\n\t\t\t\t\t\t\t\t\t: SIDEBAR_WIDTH,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</motion.div>\n\t\t\t\t) }\n\t\t\t</AnimatePresence>\n\t\t</Fill>\n\t);\n}\n\nfunction useAdjustComplementaryListener(\n\tscope,\n\tidentifier,\n\tactiveArea,\n\tisActive,\n\tisSmall\n) {\n\tconst previousIsSmallRef = useRef( false );\n\tconst shouldOpenWhenNotSmallRef = 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\n\t\t// a big to a small window size.\n\t\tif ( isActive && isSmall && ! previousIsSmallRef.current ) {\n\t\t\tdisableComplementaryArea( scope );\n\t\t\t// Flag the complementary area to be reopened when the window size\n\t\t\t// goes from small to big.\n\t\t\tshouldOpenWhenNotSmallRef.current = true;\n\t\t} else if (\n\t\t\t// If there is a flag indicating the complementary area should be\n\t\t\t// enabled when we go from small to big window size and we are going\n\t\t\t// from a small to big window size.\n\t\t\tshouldOpenWhenNotSmallRef.current &&\n\t\t\t! isSmall &&\n\t\t\tpreviousIsSmallRef.current\n\t\t) {\n\t\t\t// Remove the flag indicating the complementary area should be\n\t\t\t// enabled.\n\t\t\tshouldOpenWhenNotSmallRef.current = false;\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\n\t\t\t// reopened but another complementary area becomes active, remove\n\t\t\t// the flag.\n\t\t\tshouldOpenWhenNotSmallRef.current &&\n\t\t\tactiveArea &&\n\t\t\tactiveArea !== identifier\n\t\t) {\n\t\t\tshouldOpenWhenNotSmallRef.current = false;\n\t\t}\n\t\tif ( isSmall !== previousIsSmallRef.current ) {\n\t\t\tpreviousIsSmallRef.current = isSmall;\n\t\t}\n\t}, [\n\t\tisActive,\n\t\tisSmall,\n\t\tscope,\n\t\tidentifier,\n\t\tactiveArea,\n\t\tdisableComplementaryArea,\n\t\tenableComplementaryArea,\n\t] );\n}\n\nfunction ComplementaryArea( {\n\tchildren,\n\tclassName,\n\tcloseLabel = __( 'Close plugin' ),\n\tidentifier: identifierProp,\n\theader,\n\theaderClassName,\n\ticon: iconProp,\n\tisPinnable = true,\n\tpanelClassName,\n\tscope,\n\tname,\n\ttitle,\n\ttoggleShortcut,\n\tisActiveByDefault,\n} ) {\n\tconst context = usePluginContext();\n\tconst icon = iconProp || context.icon;\n\tconst identifier = identifierProp || `${ context.name }/${ name }`;\n\n\t// This state is used to delay the rendering of the Fill\n\t// until the initial effect runs.\n\t// This prevents the animation from running on mount if\n\t// the complementary area is active by default.\n\tconst [ isReady, setIsReady ] = useState( false );\n\tconst {\n\t\tisLoading,\n\t\tisActive,\n\t\tisPinned,\n\t\tactiveArea,\n\t\tisSmall,\n\t\tisLarge,\n\t\tshowIconLabels,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetActiveComplementaryArea,\n\t\t\t\tisComplementaryAreaLoading,\n\t\t\t\tisItemPinned,\n\t\t\t} = select( interfaceStore );\n\t\t\tconst { get } = select( preferencesStore );\n\n\t\t\tconst _activeArea = getActiveComplementaryArea( scope );\n\n\t\t\treturn {\n\t\t\t\tisLoading: isComplementaryAreaLoading( scope ),\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\tshowIconLabels: get( 'core', 'showIconLabels' ),\n\t\t\t};\n\t\t},\n\t\t[ identifier, scope ]\n\t);\n\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\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\t// Set initial visibility: For large screens, enable if it's active by\n\t\t// default. For small screens, always initially disable.\n\t\tif ( isActiveByDefault && activeArea === undefined && ! isSmall ) {\n\t\t\tenableComplementaryArea( scope, identifier );\n\t\t} else if ( activeArea === undefined && isSmall ) {\n\t\t\tdisableComplementaryArea( scope, identifier );\n\t\t}\n\t\tsetIsReady( true );\n\t}, [\n\t\tactiveArea,\n\t\tisActiveByDefault,\n\t\tscope,\n\t\tidentifier,\n\t\tisSmall,\n\t\tenableComplementaryArea,\n\t\tdisableComplementaryArea,\n\t] );\n\n\tif ( ! isReady ) {\n\t\treturn;\n\t}\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\taria-disabled={ isLoading }\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\tsize=\"compact\"\n\t\t\t\t\t\t\tshortcut={ toggleShortcut }\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<ComplementaryAreaFill\n\t\t\t\tactiveArea={ activeArea }\n\t\t\t\tisActive={ isActive }\n\t\t\t\tclassName={ clsx( 'interface-complementary-area', className ) }\n\t\t\t\tscope={ scope }\n\t\t\t\tid={ identifier.replace( '/', ':' ) }\n\t\t\t>\n\t\t\t\t<ComplementaryAreaHeader\n\t\t\t\t\tclassName={ headerClassName }\n\t\t\t\t\tcloseLabel={ closeLabel }\n\t\t\t\t\tonClose={ () => disableComplementaryArea( scope ) }\n\t\t\t\t\ttoggleButtonProps={ {\n\t\t\t\t\t\tlabel: closeLabel,\n\t\t\t\t\t\tsize: 'compact',\n\t\t\t\t\t\tshortcut: toggleShortcut,\n\t\t\t\t\t\tscope,\n\t\t\t\t\t\tidentifier,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ header || (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h2 className=\"interface-complementary-area-header__title\">\n\t\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t{ isPinnable && ! isMobileViewport && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName=\"interface-complementary-area__pin-unpin-item\"\n\t\t\t\t\t\t\t\t\ticon={ isPinned ? starFilled : starEmpty }\n\t\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\t\tisPinned\n\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: __( 'Pin to toolbar' )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t( isPinned ? unpinItem : pinItem )(\n\t\t\t\t\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\t\t\t\t\tidentifier\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tisPressed={ isPinned }\n\t\t\t\t\t\t\t\t\taria-expanded={ isPinned }\n\t\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</ComplementaryAreaHeader>\n\t\t\t\t<Panel className={ panelClassName }>{ children }</Panel>\n\t\t\t</ComplementaryAreaFill>\n\t\t</>\n\t);\n}\n\nComplementaryArea.Slot = ComplementaryAreaSlot;\n\nexport default ComplementaryArea;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/complementary-area/index.js"],
|
|
4
|
+
"sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tPanel,\n\tSlot,\n\tFill,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n} from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { check, starEmpty, starFilled } from '@wordpress/icons';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { store as viewportStore } from '@wordpress/viewport';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tuseReducedMotion,\n\tuseViewportMatch,\n\tusePrevious,\n} from '@wordpress/compose';\nimport { usePluginContext } from '@wordpress/plugins';\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 PinnedItems from '../pinned-items';\nimport { store as interfaceStore } from '../../store';\n\nconst ANIMATION_DURATION = 0.3;\n\nfunction ComplementaryAreaSlot( { scope, ...props } ) {\n\treturn <Slot name={ `ComplementaryArea/${ scope }` } { ...props } />;\n}\n\nconst SIDEBAR_WIDTH = 280;\nconst variants = {\n\topen: { width: SIDEBAR_WIDTH },\n\tclosed: { width: 0 },\n\tmobileOpen: { width: '100vw' },\n};\n\nfunction ComplementaryAreaFill( {\n\tactiveArea,\n\tisActive,\n\tscope,\n\tchildren,\n\tclassName,\n\tid,\n} ) {\n\tconst disableMotion = useReducedMotion();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\t// This is used to delay the exit animation to the next tick.\n\t// The reason this is done is to allow us to apply the right transition properties\n\t// When we switch from an open sidebar to another open sidebar.\n\t// we don't want to animate in this case.\n\tconst previousActiveArea = usePrevious( activeArea );\n\tconst previousIsActive = usePrevious( isActive );\n\tconst [ , setState ] = useState( {} );\n\tuseEffect( () => {\n\t\tsetState( {} );\n\t}, [ isActive ] );\n\tconst transition = {\n\t\ttype: 'tween',\n\t\tduration:\n\t\t\tdisableMotion ||\n\t\t\tisMobileViewport ||\n\t\t\t( !! previousActiveArea &&\n\t\t\t\t!! activeArea &&\n\t\t\t\tactiveArea !== previousActiveArea )\n\t\t\t\t? 0\n\t\t\t\t: ANIMATION_DURATION,\n\t\tease: [ 0.6, 0, 0.4, 1 ],\n\t};\n\n\treturn (\n\t\t<Fill name={ `ComplementaryArea/${ scope }` }>\n\t\t\t<AnimatePresence initial={ false }>\n\t\t\t\t{ ( previousIsActive || isActive ) && (\n\t\t\t\t\t<motion.div\n\t\t\t\t\t\tvariants={ variants }\n\t\t\t\t\t\tinitial=\"closed\"\n\t\t\t\t\t\tanimate={ isMobileViewport ? 'mobileOpen' : 'open' }\n\t\t\t\t\t\texit=\"closed\"\n\t\t\t\t\t\ttransition={ transition }\n\t\t\t\t\t\tclassName=\"interface-complementary-area__fill\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tid={ id }\n\t\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\twidth: isMobileViewport\n\t\t\t\t\t\t\t\t\t? '100vw'\n\t\t\t\t\t\t\t\t\t: SIDEBAR_WIDTH,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</motion.div>\n\t\t\t\t) }\n\t\t\t</AnimatePresence>\n\t\t</Fill>\n\t);\n}\n\nfunction useAdjustComplementaryListener(\n\tscope,\n\tidentifier,\n\tactiveArea,\n\tisActive,\n\tisSmall\n) {\n\tconst previousIsSmallRef = useRef( false );\n\tconst shouldOpenWhenNotSmallRef = 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\n\t\t// a big to a small window size.\n\t\tif ( isActive && isSmall && ! previousIsSmallRef.current ) {\n\t\t\tdisableComplementaryArea( scope );\n\t\t\t// Flag the complementary area to be reopened when the window size\n\t\t\t// goes from small to big.\n\t\t\tshouldOpenWhenNotSmallRef.current = true;\n\t\t} else if (\n\t\t\t// If there is a flag indicating the complementary area should be\n\t\t\t// enabled when we go from small to big window size and we are going\n\t\t\t// from a small to big window size.\n\t\t\tshouldOpenWhenNotSmallRef.current &&\n\t\t\t! isSmall &&\n\t\t\tpreviousIsSmallRef.current\n\t\t) {\n\t\t\t// Remove the flag indicating the complementary area should be\n\t\t\t// enabled.\n\t\t\tshouldOpenWhenNotSmallRef.current = false;\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\n\t\t\t// reopened but another complementary area becomes active, remove\n\t\t\t// the flag.\n\t\t\tshouldOpenWhenNotSmallRef.current &&\n\t\t\tactiveArea &&\n\t\t\tactiveArea !== identifier\n\t\t) {\n\t\t\tshouldOpenWhenNotSmallRef.current = false;\n\t\t}\n\t\tif ( isSmall !== previousIsSmallRef.current ) {\n\t\t\tpreviousIsSmallRef.current = isSmall;\n\t\t}\n\t}, [\n\t\tisActive,\n\t\tisSmall,\n\t\tscope,\n\t\tidentifier,\n\t\tactiveArea,\n\t\tdisableComplementaryArea,\n\t\tenableComplementaryArea,\n\t] );\n}\n\nfunction ComplementaryArea( {\n\tchildren,\n\tclassName,\n\tcloseLabel = __( 'Close plugin' ),\n\tidentifier: identifierProp,\n\theader,\n\theaderClassName,\n\ticon: iconProp,\n\tisPinnable = true,\n\tpanelClassName,\n\tscope,\n\tname,\n\ttitle,\n\ttoggleShortcut,\n\tisActiveByDefault,\n} ) {\n\tconst context = usePluginContext();\n\tconst icon = iconProp || context.icon;\n\tconst identifier = identifierProp || `${ context.name }/${ name }`;\n\n\t// This state is used to delay the rendering of the Fill\n\t// until the initial effect runs.\n\t// This prevents the animation from running on mount if\n\t// the complementary area is active by default.\n\tconst [ isReady, setIsReady ] = useState( false );\n\tconst {\n\t\tisLoading,\n\t\tisActive,\n\t\tisPinned,\n\t\tactiveArea,\n\t\tisSmall,\n\t\tisLarge,\n\t\tshowIconLabels,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetActiveComplementaryArea,\n\t\t\t\tisComplementaryAreaLoading,\n\t\t\t\tisItemPinned,\n\t\t\t} = select( interfaceStore );\n\t\t\tconst { get } = select( preferencesStore );\n\n\t\t\tconst _activeArea = getActiveComplementaryArea( scope );\n\n\t\t\treturn {\n\t\t\t\tisLoading: isComplementaryAreaLoading( scope ),\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\tshowIconLabels: get( 'core', 'showIconLabels' ),\n\t\t\t};\n\t\t},\n\t\t[ identifier, scope ]\n\t);\n\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\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\t// Set initial visibility: For large screens, enable if it's active by\n\t\t// default. For small screens, always initially disable.\n\t\tif ( isActiveByDefault && activeArea === undefined && ! isSmall ) {\n\t\t\tenableComplementaryArea( scope, identifier );\n\t\t} else if ( activeArea === undefined && isSmall ) {\n\t\t\tdisableComplementaryArea( scope, identifier );\n\t\t}\n\t\tsetIsReady( true );\n\t}, [\n\t\tactiveArea,\n\t\tisActiveByDefault,\n\t\tscope,\n\t\tidentifier,\n\t\tisSmall,\n\t\tenableComplementaryArea,\n\t\tdisableComplementaryArea,\n\t] );\n\n\tif ( ! isReady ) {\n\t\treturn;\n\t}\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\taria-disabled={ isLoading }\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\tsize=\"compact\"\n\t\t\t\t\t\t\tshortcut={ toggleShortcut }\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<ComplementaryAreaFill\n\t\t\t\tactiveArea={ activeArea }\n\t\t\t\tisActive={ isActive }\n\t\t\t\tclassName={ clsx( 'interface-complementary-area', className ) }\n\t\t\t\tscope={ scope }\n\t\t\t\tid={ identifier.replace( '/', ':' ) }\n\t\t\t>\n\t\t\t\t<ComplementaryAreaHeader\n\t\t\t\t\tclassName={ headerClassName }\n\t\t\t\t\tcloseLabel={ closeLabel }\n\t\t\t\t\tonClose={ () => disableComplementaryArea( scope ) }\n\t\t\t\t\ttoggleButtonProps={ {\n\t\t\t\t\t\tlabel: closeLabel,\n\t\t\t\t\t\tsize: 'compact',\n\t\t\t\t\t\tshortcut: toggleShortcut,\n\t\t\t\t\t\tscope,\n\t\t\t\t\t\tidentifier,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ header || (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h2 className=\"interface-complementary-area-header__title\">\n\t\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t{ isPinnable && ! isMobileViewport && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName=\"interface-complementary-area__pin-unpin-item\"\n\t\t\t\t\t\t\t\t\ticon={ isPinned ? starFilled : starEmpty }\n\t\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\t\tisPinned\n\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: __( 'Pin to toolbar' )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\t( isPinned ? unpinItem : pinItem )(\n\t\t\t\t\t\t\t\t\t\t\tscope,\n\t\t\t\t\t\t\t\t\t\t\tidentifier\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tisPressed={ isPinned }\n\t\t\t\t\t\t\t\t\taria-expanded={ isPinned }\n\t\t\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</ComplementaryAreaHeader>\n\t\t\t\t<Panel className={ panelClassName }>{ children }</Panel>\n\t\t\t</ComplementaryAreaFill>\n\t\t</>\n\t);\n}\n\nComplementaryArea.Slot = ComplementaryAreaSlot;\n\nexport default ComplementaryArea;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,32 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* WordPress dependencies
|
|
8
|
-
*/
|
|
9
|
-
import { closeSmall } from '@wordpress/icons';
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Internal dependencies
|
|
13
|
-
*/
|
|
14
|
-
import ComplementaryAreaToggle from '../complementary-area-toggle';
|
|
15
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
import clsx from "clsx";
|
|
3
|
+
import { closeSmall } from "@wordpress/icons";
|
|
4
|
+
import ComplementaryAreaToggle from "../complementary-area-toggle";
|
|
16
5
|
const ComplementaryAreaHeader = ({
|
|
17
6
|
children,
|
|
18
7
|
className,
|
|
19
8
|
toggleButtonProps
|
|
20
9
|
}) => {
|
|
21
|
-
const toggleButton =
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
10
|
+
const toggleButton = /* @__PURE__ */ jsx(ComplementaryAreaToggle, { icon: closeSmall, ...toggleButtonProps });
|
|
11
|
+
return /* @__PURE__ */ jsxs(
|
|
12
|
+
"div",
|
|
13
|
+
{
|
|
14
|
+
className: clsx(
|
|
15
|
+
"components-panel__header",
|
|
16
|
+
"interface-complementary-area-header",
|
|
17
|
+
className
|
|
18
|
+
),
|
|
19
|
+
tabIndex: -1,
|
|
20
|
+
children: [
|
|
21
|
+
children,
|
|
22
|
+
toggleButton
|
|
23
|
+
]
|
|
24
|
+
}
|
|
25
|
+
);
|
|
30
26
|
};
|
|
31
|
-
|
|
32
|
-
|
|
27
|
+
var complementary_area_header_default = ComplementaryAreaHeader;
|
|
28
|
+
export {
|
|
29
|
+
complementary_area_header_default as default
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/complementary-area-header/index.js"],
|
|
4
|
+
"sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { closeSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport ComplementaryAreaToggle from '../complementary-area-toggle';\n\nconst ComplementaryAreaHeader = ( {\n\tchildren,\n\tclassName,\n\ttoggleButtonProps,\n} ) => {\n\tconst toggleButton = (\n\t\t<ComplementaryAreaToggle icon={ closeSmall } { ...toggleButtonProps } />\n\t);\n\treturn (\n\t\t<div\n\t\t\tclassName={ clsx(\n\t\t\t\t'components-panel__header',\n\t\t\t\t'interface-complementary-area-header',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t\ttabIndex={ -1 }\n\t\t>\n\t\t\t{ children }\n\t\t\t{ toggleButton }\n\t\t</div>\n\t);\n};\n\nexport default ComplementaryAreaHeader;\n"],
|
|
5
|
+
"mappings": "AAqBE,cAGA,YAHA;AAlBF,OAAO,UAAU;AAKjB,SAAS,kBAAkB;AAK3B,OAAO,6BAA6B;AAEpC,MAAM,0BAA0B,CAAE;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AACD,MAAO;AACN,QAAM,eACL,oBAAC,2BAAwB,MAAO,YAAe,GAAG,mBAAoB;AAEvE,SACC;AAAA,IAAC;AAAA;AAAA,MACA,WAAY;AAAA,QACX;AAAA,QACA;AAAA,QACA;AAAA,MACD;AAAA,MACA,UAAW;AAAA,MAET;AAAA;AAAA,QACA;AAAA;AAAA;AAAA,EACH;AAEF;AAEA,IAAO,oCAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|