@tamagui/accordion 1.40.0 → 1.41.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.
@@ -1,5 +1,384 @@
1
- const Accordion = {};
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Collapsible, createCollapsibleScope } from "@tamagui/collapsible";
3
+ import { createCollection } from "@tamagui/collection";
4
+ import { createContextScope } from "@tamagui/create-context";
5
+ import { YStack } from "@tamagui/stacks";
6
+ import { H1 } from "@tamagui/text";
7
+ import { useControllableState } from "@tamagui/use-controllable-state";
8
+ import { useDirection } from "@tamagui/use-direction";
9
+ import {
10
+ composeEventHandlers,
11
+ isWeb,
12
+ styled,
13
+ useComposedRefs,
14
+ withStaticProperties
15
+ } from "@tamagui/web";
16
+ import * as React from "react";
17
+ const ACCORDION_NAME = "Accordion";
18
+ const ACCORDION_KEYS = ["Home", "End", "ArrowDown", "ArrowUp", "ArrowLeft", "ArrowRight"];
19
+ const [Collection, useCollection, createCollectionScope] = createCollection(ACCORDION_NAME);
20
+ const [createAccordionContext, createAccordionScope] = createContextScope(
21
+ ACCORDION_NAME,
22
+ [createCollectionScope, createCollapsibleScope]
23
+ );
24
+ const useCollapsibleScope = createCollapsibleScope();
25
+ const AccordionComponent = React.forwardRef((props, forwardedRef) => {
26
+ const { type, ...accordionProps } = props;
27
+ const singleProps = accordionProps;
28
+ const multipleProps = accordionProps;
29
+ return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeAccordion, children: type === "multiple" ? /* @__PURE__ */ jsx(AccordionImplMultiple, { ...multipleProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(AccordionImplSingle, { ...singleProps, ref: forwardedRef }) });
30
+ });
31
+ AccordionComponent.displayName = ACCORDION_NAME;
32
+ AccordionComponent.propTypes = {
33
+ type(props) {
34
+ const value = props.value || props.defaultValue;
35
+ if (props.type && !["single", "multiple"].includes(props.type)) {
36
+ return new Error(
37
+ "Invalid prop `type` supplied to `Accordion`. Expected one of `single | multiple`."
38
+ );
39
+ }
40
+ if (props.type === "multiple" && typeof value === "string") {
41
+ return new Error(
42
+ "Invalid prop `type` supplied to `Accordion`. Expected `single` when `defaultValue` or `value` is type `string`."
43
+ );
44
+ }
45
+ if (props.type === "single" && Array.isArray(value)) {
46
+ return new Error(
47
+ "Invalid prop `type` supplied to `Accordion`. Expected `multiple` when `defaultValue` or `value` is type `string[]`."
48
+ );
49
+ }
50
+ return null;
51
+ }
52
+ };
53
+ const [AccordionValueProvider, useAccordionValueContext] = createAccordionContext(ACCORDION_NAME);
54
+ const [AccordionCollapsibleProvider, useAccordionCollapsibleContext] = createAccordionContext(ACCORDION_NAME, { collapsible: false });
55
+ const AccordionImplSingle = React.forwardRef((props, forwardedRef) => {
56
+ const {
57
+ value: valueProp,
58
+ defaultValue,
59
+ control,
60
+ onValueChange = () => {
61
+ },
62
+ collapsible = false,
63
+ ...accordionSingleProps
64
+ } = props;
65
+ const [value, setValue] = useControllableState({
66
+ prop: valueProp,
67
+ defaultProp: defaultValue || "",
68
+ onChange: onValueChange
69
+ });
70
+ return /* @__PURE__ */ jsx(
71
+ AccordionValueProvider,
72
+ {
73
+ scope: props.__scopeAccordion,
74
+ value: value ? [value] : [],
75
+ onItemOpen: setValue,
76
+ onItemClose: React.useCallback(
77
+ () => collapsible && setValue(""),
78
+ [setValue, collapsible]
79
+ ),
80
+ children: /* @__PURE__ */ jsx(
81
+ AccordionCollapsibleProvider,
82
+ {
83
+ scope: props.__scopeAccordion,
84
+ collapsible,
85
+ children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionSingleProps, ref: forwardedRef })
86
+ }
87
+ )
88
+ }
89
+ );
90
+ });
91
+ const AccordionImplMultiple = React.forwardRef((props, forwardedRef) => {
92
+ const {
93
+ value: valueProp,
94
+ defaultValue,
95
+ onValueChange = () => {
96
+ },
97
+ ...accordionMultipleProps
98
+ } = props;
99
+ const [value, setValue] = useControllableState({
100
+ prop: valueProp,
101
+ defaultProp: defaultValue || [],
102
+ onChange: onValueChange
103
+ });
104
+ const handleItemOpen = React.useCallback(
105
+ (itemValue) => setValue((prevValue = []) => [...prevValue, itemValue]),
106
+ [setValue]
107
+ );
108
+ const handleItemClose = React.useCallback(
109
+ (itemValue) => setValue((prevValue = []) => prevValue.filter((value2) => value2 !== itemValue)),
110
+ [setValue]
111
+ );
112
+ return /* @__PURE__ */ jsx(
113
+ AccordionValueProvider,
114
+ {
115
+ scope: props.__scopeAccordion,
116
+ value: value || [],
117
+ onItemOpen: handleItemOpen,
118
+ onItemClose: handleItemClose,
119
+ children: /* @__PURE__ */ jsx(AccordionCollapsibleProvider, { scope: props.__scopeAccordion, collapsible: true, children: /* @__PURE__ */ jsx(AccordionImpl, { ...accordionMultipleProps, ref: forwardedRef }) })
120
+ }
121
+ );
122
+ });
123
+ const [AccordionImplProvider, useAccordionContext] = createAccordionContext(ACCORDION_NAME);
124
+ const AccordionImpl = React.forwardRef(
125
+ (props, forwardedRef) => {
126
+ const {
127
+ __scopeAccordion,
128
+ disabled,
129
+ dir,
130
+ orientation = "vertical",
131
+ ...accordionProps
132
+ } = props;
133
+ const accordionRef = React.useRef(null);
134
+ const composedRef = useComposedRefs(accordionRef, forwardedRef);
135
+ const getItems = useCollection(__scopeAccordion);
136
+ const direction = useDirection(dir);
137
+ const isDirectionLTR = direction === "ltr";
138
+ const handleKeyDown = composeEventHandlers(
139
+ props.onKeyDown,
140
+ (event) => {
141
+ var _a;
142
+ if (!ACCORDION_KEYS.includes(event.key))
143
+ return;
144
+ const target = event.target;
145
+ const triggerCollection = getItems().filter((item) => {
146
+ const el = item.ref.current;
147
+ return !(el == null ? void 0 : el.disabled);
148
+ });
149
+ const triggerIndex = triggerCollection.findIndex(
150
+ (item) => item.ref.current === target
151
+ );
152
+ const triggerCount = triggerCollection.length;
153
+ if (triggerIndex === -1)
154
+ return;
155
+ event.preventDefault();
156
+ let nextIndex = triggerIndex;
157
+ const homeIndex = 0;
158
+ const endIndex = triggerCount - 1;
159
+ const moveNext = () => {
160
+ nextIndex = triggerIndex + 1;
161
+ if (nextIndex > endIndex) {
162
+ nextIndex = homeIndex;
163
+ }
164
+ };
165
+ const movePrev = () => {
166
+ nextIndex = triggerIndex - 1;
167
+ if (nextIndex < homeIndex) {
168
+ nextIndex = endIndex;
169
+ }
170
+ };
171
+ switch (event.key) {
172
+ case "Home":
173
+ nextIndex = homeIndex;
174
+ break;
175
+ case "End":
176
+ nextIndex = endIndex;
177
+ break;
178
+ case "ArrowRight":
179
+ if (orientation === "horizontal") {
180
+ if (isDirectionLTR) {
181
+ moveNext();
182
+ } else {
183
+ movePrev();
184
+ }
185
+ }
186
+ break;
187
+ case "ArrowDown":
188
+ if (orientation === "vertical") {
189
+ moveNext();
190
+ }
191
+ break;
192
+ case "ArrowLeft":
193
+ if (orientation === "horizontal") {
194
+ if (isDirectionLTR) {
195
+ movePrev();
196
+ } else {
197
+ moveNext();
198
+ }
199
+ }
200
+ break;
201
+ case "ArrowUp":
202
+ if (orientation === "vertical") {
203
+ movePrev();
204
+ }
205
+ break;
206
+ }
207
+ const clampedIndex = nextIndex % triggerCount;
208
+ (_a = triggerCollection[clampedIndex].ref.current) == null ? void 0 : _a.focus();
209
+ }
210
+ );
211
+ return /* @__PURE__ */ jsx(
212
+ AccordionImplProvider,
213
+ {
214
+ scope: __scopeAccordion,
215
+ disabled,
216
+ direction: dir,
217
+ orientation,
218
+ children: /* @__PURE__ */ jsx(Collection.Slot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(
219
+ YStack,
220
+ {
221
+ "data-orientation": orientation,
222
+ ref: composedRef,
223
+ ...accordionProps,
224
+ ...isWeb && {
225
+ onKeyDown: handleKeyDown
226
+ }
227
+ }
228
+ ) })
229
+ }
230
+ );
231
+ }
232
+ );
233
+ const ITEM_NAME = "AccordionItem";
234
+ const [AccordionItemProvider, useAccordionItemContext] = createAccordionContext(ITEM_NAME);
235
+ const AccordionItem = React.forwardRef(
236
+ (props, forwardedRef) => {
237
+ const { __scopeAccordion, value, ...accordionItemProps } = props;
238
+ const accordionContext = useAccordionContext(ITEM_NAME, __scopeAccordion);
239
+ const valueContext = useAccordionValueContext(ITEM_NAME, __scopeAccordion);
240
+ const collapsibleScope = useCollapsibleScope(__scopeAccordion);
241
+ const triggerId = React.useId();
242
+ const open = value && valueContext.value.includes(value) || false;
243
+ const disabled = accordionContext.disabled || props.disabled;
244
+ return /* @__PURE__ */ jsx(
245
+ AccordionItemProvider,
246
+ {
247
+ scope: __scopeAccordion,
248
+ open,
249
+ disabled,
250
+ triggerId,
251
+ children: /* @__PURE__ */ jsx(
252
+ Collapsible,
253
+ {
254
+ "data-orientation": accordionContext.orientation,
255
+ "data-state": open ? "open" : "closed",
256
+ ...collapsibleScope,
257
+ ...accordionItemProps,
258
+ ref: forwardedRef,
259
+ disabled,
260
+ open,
261
+ onOpenChange: (open2) => {
262
+ if (open2) {
263
+ valueContext.onItemOpen(value);
264
+ } else {
265
+ valueContext.onItemClose(value);
266
+ }
267
+ }
268
+ }
269
+ )
270
+ }
271
+ );
272
+ }
273
+ );
274
+ AccordionItem.displayName = ITEM_NAME;
275
+ const HEADER_NAME = "AccordionHeader";
276
+ const AccordionHeader = React.forwardRef(
277
+ (props, forwardedRef) => {
278
+ const { __scopeAccordion, ...headerProps } = props;
279
+ const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);
280
+ const itemContext = useAccordionItemContext(HEADER_NAME, __scopeAccordion);
281
+ return /* @__PURE__ */ jsx(
282
+ H1,
283
+ {
284
+ "data-orientation": accordionContext.orientation,
285
+ "data-state": getState(itemContext.open),
286
+ "data-disabled": itemContext.disabled ? "" : void 0,
287
+ ...headerProps,
288
+ ref: forwardedRef
289
+ }
290
+ );
291
+ }
292
+ );
293
+ AccordionHeader.displayName = HEADER_NAME;
294
+ const AccordionTriggerFrame = styled(Collapsible.Trigger, {
295
+ variants: {
296
+ unstyled: {
297
+ false: {
298
+ cursor: "pointer",
299
+ backgroundColor: "$background",
300
+ borderColor: "$borderColor",
301
+ borderWidth: 1,
302
+ padding: "$true",
303
+ hoverStyle: {
304
+ backgroundColor: "$backgroundHover"
305
+ },
306
+ focusStyle: {
307
+ backgroundColor: "$backgroundFocus"
308
+ },
309
+ pressStyle: {
310
+ backgroundColor: "$backgroundPress"
311
+ }
312
+ }
313
+ }
314
+ },
315
+ defaultVariants: {
316
+ unstyled: false
317
+ }
318
+ });
319
+ const TRIGGER_NAME = "AccordionTrigger";
320
+ const AccordionTrigger = AccordionTriggerFrame.styleable(function AccordionTrigger2(props, forwardedRef) {
321
+ const { __scopeAccordion, ...triggerProps } = props;
322
+ const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);
323
+ const itemContext = useAccordionItemContext(TRIGGER_NAME, __scopeAccordion);
324
+ const collapsibleContext = useAccordionCollapsibleContext(
325
+ TRIGGER_NAME,
326
+ __scopeAccordion
327
+ );
328
+ const collapsibleScope = useCollapsibleScope(__scopeAccordion);
329
+ return /* @__PURE__ */ jsx(Collection.ItemSlot, { scope: __scopeAccordion, children: /* @__PURE__ */ jsx(
330
+ AccordionTriggerFrame,
331
+ {
332
+ "aria-disabled": itemContext.open && !collapsibleContext.collapsible || void 0,
333
+ "data-orientation": accordionContext.orientation,
334
+ id: itemContext.triggerId,
335
+ ...collapsibleScope,
336
+ ...triggerProps,
337
+ ref: forwardedRef
338
+ }
339
+ ) });
340
+ });
341
+ const AccordionContentFrame = styled(Collapsible.Content, {
342
+ variants: {
343
+ unstyled: {
344
+ false: {
345
+ padding: "$true",
346
+ backgroundColor: "$background"
347
+ }
348
+ }
349
+ },
350
+ defaultVariants: {
351
+ unstyled: false
352
+ }
353
+ });
354
+ const AccordionContent = AccordionContentFrame.styleable(function AccordionContent2(props, forwardedRef) {
355
+ const { __scopeAccordion, ...contentProps } = props;
356
+ const accordionContext = useAccordionContext(ACCORDION_NAME, __scopeAccordion);
357
+ const itemContext = useAccordionItemContext("AccordionContent", __scopeAccordion);
358
+ const collapsibleScope = useCollapsibleScope(__scopeAccordion);
359
+ return /* @__PURE__ */ jsx(
360
+ AccordionContentFrame,
361
+ {
362
+ role: "region",
363
+ "aria-labelledby": itemContext.triggerId,
364
+ "data-orientation": accordionContext.orientation,
365
+ ...collapsibleScope,
366
+ ...contentProps,
367
+ ref: forwardedRef
368
+ }
369
+ );
370
+ });
371
+ function getState(open) {
372
+ return open ? "open" : "closed";
373
+ }
374
+ const Accordion = withStaticProperties(AccordionComponent, {
375
+ Trigger: AccordionTrigger,
376
+ Header: AccordionHeader,
377
+ Content: AccordionContent,
378
+ Item: AccordionItem
379
+ });
2
380
  export {
3
- Accordion
381
+ Accordion,
382
+ createAccordionScope
4
383
  };
5
384
  //# sourceMappingURL=Accordion.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Accordion.tsx"],
4
- "mappings": "AAAO,MAAM,YAAY,CAAC;",
5
- "names": []
4
+ "mappings": "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",
5
+ "names": ["value", "open", "AccordionTrigger", "AccordionContent"]
6
6
  }