@tamagui/collapsible 1.74.3 → 1.74.5

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.
@@ -0,0 +1,95 @@
1
+ import { AnimatePresence } from "@tamagui/animate-presence";
2
+ import { useControllableState } from "@tamagui/use-controllable-state";
3
+ import {
4
+ Stack,
5
+ composeEventHandlers,
6
+ createStyledContext,
7
+ styled,
8
+ withStaticProperties
9
+ } from "@tamagui/web";
10
+ import * as React from "react";
11
+ import { jsx } from "react/jsx-runtime";
12
+ const COLLAPSIBLE_NAME = "Collapsible", { Provider: CollapsibleProvider, useStyledContext: useCollapsibleContext } = createStyledContext(), _Collapsible = React.forwardRef(
13
+ (props, forwardedRef) => {
14
+ const {
15
+ __scopeCollapsible,
16
+ open: openProp,
17
+ defaultOpen,
18
+ disabled,
19
+ onOpenChange,
20
+ ...collapsibleProps
21
+ } = props, [open = !1, setOpen] = useControllableState({
22
+ prop: openProp,
23
+ defaultProp: defaultOpen,
24
+ onChange: onOpenChange
25
+ });
26
+ return /* @__PURE__ */ jsx(
27
+ CollapsibleProvider,
28
+ {
29
+ scope: __scopeCollapsible,
30
+ disabled,
31
+ contentId: React.useId(),
32
+ open,
33
+ onOpenToggle: React.useCallback(
34
+ () => setOpen((prevOpen) => !prevOpen),
35
+ [setOpen]
36
+ ),
37
+ children: /* @__PURE__ */ jsx(
38
+ Stack,
39
+ {
40
+ "data-state": getState(open),
41
+ "data-disabled": disabled ? "" : void 0,
42
+ ...collapsibleProps,
43
+ ref: forwardedRef
44
+ }
45
+ )
46
+ }
47
+ );
48
+ }
49
+ );
50
+ _Collapsible.displayName = COLLAPSIBLE_NAME;
51
+ const TRIGGER_NAME = "CollapsibleTrigger", CollapsibleTriggerFrame = styled(Stack, {
52
+ name: TRIGGER_NAME,
53
+ tag: "button"
54
+ }), CollapsibleTrigger = CollapsibleTriggerFrame.styleable(
55
+ (props, forwardedRef) => {
56
+ const { __scopeCollapsible, children, ...triggerProps } = props, context = useCollapsibleContext(__scopeCollapsible);
57
+ return /* @__PURE__ */ jsx(
58
+ CollapsibleTriggerFrame,
59
+ {
60
+ "aria-controls": context.contentId,
61
+ "aria-expanded": context.open || !1,
62
+ "data-state": getState(context.open),
63
+ "data-disabled": context.disabled ? "" : void 0,
64
+ disabled: context.disabled,
65
+ ...triggerProps,
66
+ ref: forwardedRef,
67
+ onPress: composeEventHandlers(props.onPress, context.onOpenToggle),
68
+ children: typeof children == "function" ? children({ open: context.open }) : children
69
+ }
70
+ );
71
+ }
72
+ );
73
+ CollapsibleTrigger.displayName = TRIGGER_NAME;
74
+ const CONTENT_NAME = "CollapsibleContent", CollapsibleContentFrame = styled(Stack, {
75
+ name: CONTENT_NAME
76
+ }), CollapsibleContent = CollapsibleContentFrame.styleable((props, forwardedRef) => {
77
+ const { forceMount, children, __scopeCollapsible, ...contentProps } = props, context = useCollapsibleContext(__scopeCollapsible);
78
+ return /* @__PURE__ */ jsx(AnimatePresence, { ...contentProps, children: forceMount || context.open ? /* @__PURE__ */ jsx(CollapsibleContentFrame, { ref: forwardedRef, ...contentProps, children }) : null });
79
+ });
80
+ CollapsibleContent.displayName = CONTENT_NAME;
81
+ function getState(open) {
82
+ return open ? "open" : "closed";
83
+ }
84
+ const Collapsible = withStaticProperties(_Collapsible, {
85
+ Trigger: CollapsibleTrigger,
86
+ Content: CollapsibleContent
87
+ });
88
+ export {
89
+ Collapsible,
90
+ CollapsibleContent,
91
+ CollapsibleContentFrame,
92
+ CollapsibleTrigger,
93
+ CollapsibleTriggerFrame
94
+ };
95
+ //# sourceMappingURL=Collapsible.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/Collapsible.tsx"],
4
+ "mappings": "AAAA,SAAS,uBAA6C;AAEtD,SAAS,4BAA4B;AACrC;AAAA,EAEE;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,YAAY,WAAW;AAuDf;AAjDR,MAAM,mBAAmB,eAWnB,EAAE,UAAU,qBAAqB,kBAAkB,sBAAsB,IAC7E,oBAA6C,GASzC,eAAe,MAAM;AAAA,EACzB,CAAC,OAAO,iBAAiB;AACvB,UAAM;AAAA,MACJ;AAAA,MACA,MAAM;AAAA,MACN;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG;AAAA,IACL,IAAI,OAEE,CAAC,OAAO,IAAO,OAAO,IAAI,qBAAqB;AAAA,MACnD,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ,CAAC;AAED,WACE;AAAA,MAAC;AAAA;AAAA,QACC,OAAO;AAAA,QACP;AAAA,QACA,WAAW,MAAM,MAAM;AAAA,QACvB;AAAA,QACA,cAAc,MAAM;AAAA,UAClB,MAAM,QAAQ,CAAC,aAAa,CAAC,QAAQ;AAAA,UACrC,CAAC,OAAO;AAAA,QACV;AAAA,QAEA;AAAA,UAAC;AAAA;AAAA,YACC,cAAY,SAAS,IAAI;AAAA,YACzB,iBAAe,WAAW,KAAK;AAAA,YAC9B,GAAG;AAAA,YACJ,KAAK;AAAA;AAAA,QACP;AAAA;AAAA,IACF;AAAA,EAEJ;AACF;AAEA,aAAa,cAAc;AAM3B,MAAM,eAAe,sBAIf,0BAA0B,OAAO,OAAO;AAAA,EAC5C,MAAM;AAAA,EACN,KAAK;AACP,CAAC,GAEK,qBAAqB,wBAAwB;AAAA,EACjD,CAAC,OAA6C,iBAAiB;AAC7D,UAAM,EAAE,oBAAoB,UAAU,GAAG,aAAa,IAAI,OACpD,UAAU,sBAAsB,kBAAkB;AAExD,WACE;AAAA,MAAC;AAAA;AAAA,QACC,iBAAe,QAAQ;AAAA,QACvB,iBAAe,QAAQ,QAAQ;AAAA,QAC/B,cAAY,SAAS,QAAQ,IAAI;AAAA,QACjC,iBAAe,QAAQ,WAAW,KAAK;AAAA,QACvC,UAAU,QAAQ;AAAA,QACjB,GAAG;AAAA,QACJ,KAAK;AAAA,QACL,SAAS,qBAAqB,MAAM,SAAgB,QAAQ,YAAY;AAAA,QAEvE,iBAAO,YAAa,aAAa,SAAS,EAAE,MAAM,QAAQ,KAAK,CAAC,IAAI;AAAA;AAAA,IACvE;AAAA,EAEJ;AACF;AAEA,mBAAmB,cAAc;AAcjC,MAAM,eAAe,sBAEf,0BAA0B,OAAO,OAAO;AAAA,EAC5C,MAAM;AACR,CAAC,GAEK,qBAAqB,wBAAwB,UAEjD,CAAC,OAAO,iBAAiB;AACzB,QAAM,EAAE,YAAY,UAAU,oBAAoB,GAAG,aAAa,IAAI,OAChE,UAAU,sBAAsB,kBAAkB;AAExD,SACE,oBAAC,mBAAiB,GAAG,cAClB,wBAAc,QAAQ,OACrB,oBAAC,2BAAwB,KAAK,cAAe,GAAG,cAC7C,UACH,IACE,MACN;AAEJ,CAAC;AAED,mBAAmB,cAAc;AAIjC,SAAS,SAAS,MAAgB;AAChC,SAAO,OAAO,SAAS;AACzB;AAEA,MAAM,cAAc,qBAAqB,cAAc;AAAA,EACrD,SAAS;AAAA,EACT,SAAS;AACX,CAAC;",
5
+ "names": []
6
+ }
@@ -0,0 +1,2 @@
1
+ export * from "./Collapsible";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/index.ts"],
4
+ "mappings": "AAAA,cAAc;",
5
+ "names": []
6
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/collapsible",
3
- "version": "1.74.3",
3
+ "version": "1.74.5",
4
4
  "sideEffects": false,
5
5
  "source": "src/index.ts",
6
6
  "types": "./types/index.d.ts",
@@ -21,19 +21,19 @@
21
21
  "clean:build": "tamagui-build clean:build"
22
22
  },
23
23
  "dependencies": {
24
- "@tamagui/animate-presence": "1.74.3",
25
- "@tamagui/compose-refs": "1.74.3",
26
- "@tamagui/core": "1.74.3",
27
- "@tamagui/create-context": "1.74.3",
28
- "@tamagui/polyfill-dev": "1.74.3",
29
- "@tamagui/stacks": "1.74.3",
30
- "@tamagui/use-controllable-state": "1.74.3"
24
+ "@tamagui/animate-presence": "1.74.5",
25
+ "@tamagui/compose-refs": "1.74.5",
26
+ "@tamagui/core": "1.74.5",
27
+ "@tamagui/create-context": "1.74.5",
28
+ "@tamagui/polyfill-dev": "1.74.5",
29
+ "@tamagui/stacks": "1.74.5",
30
+ "@tamagui/use-controllable-state": "1.74.5"
31
31
  },
32
32
  "peerDependencies": {
33
33
  "react": "*"
34
34
  },
35
35
  "devDependencies": {
36
- "@tamagui/build": "1.74.3",
36
+ "@tamagui/build": "1.74.5",
37
37
  "react": "^18.2.0"
38
38
  },
39
39
  "publishConfig": {