@tamagui/group 1.88.22 → 1.88.23
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/dist/esm/Group.native.js +42 -58
- package/dist/esm/Group.native.js.map +2 -2
- package/dist/esm/index.native.js +1 -19
- package/dist/esm/index.native.js.map +1 -1
- package/dist/jsx/Group.native.js +42 -58
- package/dist/jsx/Group.native.js.map +2 -2
- package/dist/jsx/index.native.js +1 -19
- package/dist/jsx/index.native.js.map +1 -1
- package/package.json +7 -7
package/dist/esm/Group.native.js
CHANGED
|
@@ -1,37 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
21
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
|
|
22
|
-
mod
|
|
23
|
-
)), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
24
|
-
var Group_exports = {};
|
|
25
|
-
__export(Group_exports, {
|
|
26
|
-
Group: () => Group,
|
|
27
|
-
GroupFrame: () => GroupFrame,
|
|
28
|
-
XGroup: () => XGroup,
|
|
29
|
-
YGroup: () => YGroup,
|
|
30
|
-
useGroupItem: () => useGroupItem
|
|
31
|
-
});
|
|
32
|
-
module.exports = __toCommonJS(Group_exports);
|
|
33
|
-
var import_core = require("@tamagui/core"), import_create_context = require("@tamagui/create-context"), import_helpers = require("@tamagui/helpers"), import_stacks = require("@tamagui/stacks"), import_use_controllable_state = require("@tamagui/use-controllable-state"), import_react = __toESM(require("react")), import_react_native = require("react-native"), import_reforest = require("reforest"), import_jsx_runtime = require("react/jsx-runtime");
|
|
34
|
-
const GROUP_NAME = "Group", [createGroupContext, createGroupScope] = (0, import_create_context.createContextScope)(GROUP_NAME), [GroupProvider, useGroupContext] = createGroupContext(GROUP_NAME), GroupFrame = (0, import_core.styled)(import_stacks.ThemeableStack, {
|
|
1
|
+
import {
|
|
2
|
+
getConfig,
|
|
3
|
+
getTokens,
|
|
4
|
+
getVariableValue,
|
|
5
|
+
isTamaguiElement,
|
|
6
|
+
mergeProps,
|
|
7
|
+
spacedChildren,
|
|
8
|
+
styled,
|
|
9
|
+
useProps
|
|
10
|
+
} from "@tamagui/core";
|
|
11
|
+
import { createContextScope } from "@tamagui/create-context";
|
|
12
|
+
import { withStaticProperties } from "@tamagui/helpers";
|
|
13
|
+
import { ThemeableStack } from "@tamagui/stacks";
|
|
14
|
+
import { useControllableState } from "@tamagui/use-controllable-state";
|
|
15
|
+
import React, { Children, forwardRef, isValidElement } from "react";
|
|
16
|
+
import { ScrollView } from "react-native";
|
|
17
|
+
import { useIndex, useIndexedChildren } from "reforest";
|
|
18
|
+
import { jsx } from "react/jsx-runtime";
|
|
19
|
+
const GROUP_NAME = "Group", [createGroupContext, createGroupScope] = createContextScope(GROUP_NAME), [GroupProvider, useGroupContext] = createGroupContext(GROUP_NAME), GroupFrame = styled(ThemeableStack, {
|
|
35
20
|
name: "GroupFrame",
|
|
36
21
|
variants: {
|
|
37
22
|
unstyled: {
|
|
@@ -48,9 +33,9 @@ const GROUP_NAME = "Group", [createGroupContext, createGroupScope] = (0, import_
|
|
|
48
33
|
}
|
|
49
34
|
});
|
|
50
35
|
function createGroup(verticalDefault) {
|
|
51
|
-
return
|
|
52
|
-
|
|
53
|
-
const activeProps =
|
|
36
|
+
return withStaticProperties(
|
|
37
|
+
forwardRef((props, ref) => {
|
|
38
|
+
const activeProps = useProps(props), {
|
|
54
39
|
__scopeGroup,
|
|
55
40
|
children: childrenProp,
|
|
56
41
|
space,
|
|
@@ -65,10 +50,10 @@ function createGroup(verticalDefault) {
|
|
|
65
50
|
borderRadius,
|
|
66
51
|
forceUseItem,
|
|
67
52
|
...restProps
|
|
68
|
-
} = activeProps, vertical = orientation === "vertical", [itemChildrenCount, setItemChildrenCount] =
|
|
53
|
+
} = activeProps, vertical = orientation === "vertical", [itemChildrenCount, setItemChildrenCount] = useControllableState({
|
|
69
54
|
defaultProp: forceUseItem ? 1 : 0
|
|
70
|
-
}), isUsingItems = itemChildrenCount > 0, radius = borderRadius ?? (size ?
|
|
71
|
-
if (!
|
|
55
|
+
}), isUsingItems = itemChildrenCount > 0, radius = borderRadius ?? (size ? getVariableValue(getTokens().radius[size]) - 1 : void 0), disablePassBorderRadius = disablePassBorderRadiusProp ?? !(radius !== void 0), childrenArray = Children.toArray(childrenProp), children = isUsingItems ? Children.toArray(childrenProp).filter(isValidElement) : childrenArray.map((child, i) => {
|
|
56
|
+
if (!isValidElement(child))
|
|
72
57
|
return child;
|
|
73
58
|
const disabled = child.props.disabled ?? disabledProp, isFirst = i === 0, isLast = i === childrenArray.length - 1, radiusStyles = disablePassBorderRadius === !0 ? null : getBorderRadius({
|
|
74
59
|
isFirst,
|
|
@@ -78,25 +63,25 @@ function createGroup(verticalDefault) {
|
|
|
78
63
|
disable: disablePassBorderRadius
|
|
79
64
|
}), props2 = {
|
|
80
65
|
disabled,
|
|
81
|
-
...
|
|
66
|
+
...isTamaguiElement(child) ? radiusStyles : { style: radiusStyles }
|
|
82
67
|
};
|
|
83
68
|
return cloneElementWithPropOrder(child, props2);
|
|
84
|
-
}), indexedChildren =
|
|
85
|
-
|
|
69
|
+
}), indexedChildren = useIndexedChildren(
|
|
70
|
+
spacedChildren({
|
|
86
71
|
direction: spaceDirection,
|
|
87
72
|
separator,
|
|
88
73
|
// @ts-ignore
|
|
89
74
|
space,
|
|
90
75
|
children
|
|
91
76
|
})
|
|
92
|
-
), onItemMount =
|
|
77
|
+
), onItemMount = React.useCallback(
|
|
93
78
|
() => setItemChildrenCount((prev) => prev + 1),
|
|
94
79
|
[]
|
|
95
|
-
), onItemUnmount =
|
|
80
|
+
), onItemUnmount = React.useCallback(
|
|
96
81
|
() => setItemChildrenCount((prev) => prev - 1),
|
|
97
82
|
[]
|
|
98
83
|
);
|
|
99
|
-
return /* @__PURE__ */
|
|
84
|
+
return /* @__PURE__ */ jsx(
|
|
100
85
|
GroupProvider,
|
|
101
86
|
{
|
|
102
87
|
disablePassBorderRadius,
|
|
@@ -106,7 +91,7 @@ function createGroup(verticalDefault) {
|
|
|
106
91
|
onItemMount,
|
|
107
92
|
onItemUnmount,
|
|
108
93
|
scope: __scopeGroup,
|
|
109
|
-
children: /* @__PURE__ */
|
|
94
|
+
children: /* @__PURE__ */ jsx(
|
|
110
95
|
GroupFrame,
|
|
111
96
|
{
|
|
112
97
|
ref,
|
|
@@ -128,11 +113,11 @@ function createGroup(verticalDefault) {
|
|
|
128
113
|
const GroupItem = (props) => {
|
|
129
114
|
var _a;
|
|
130
115
|
const { __scopeGroup, children, forcePlacement } = props, groupItemProps = useGroupItem(
|
|
131
|
-
{ disabled:
|
|
116
|
+
{ disabled: isValidElement(children) ? children.props.disabled : void 0 },
|
|
132
117
|
forcePlacement,
|
|
133
118
|
__scopeGroup
|
|
134
119
|
);
|
|
135
|
-
return
|
|
120
|
+
return isValidElement(children) ? isTamaguiElement(children) ? React.cloneElement(children, groupItemProps) : React.cloneElement(children, {
|
|
136
121
|
style: {
|
|
137
122
|
// @ts-ignore
|
|
138
123
|
...(_a = children.props) == null ? void 0 : _a.style,
|
|
@@ -140,8 +125,8 @@ const GroupItem = (props) => {
|
|
|
140
125
|
}
|
|
141
126
|
}) : children;
|
|
142
127
|
}, useGroupItem = (childrenProps, forcePlacement, __scopeGroup) => {
|
|
143
|
-
const treeIndex =
|
|
144
|
-
if (
|
|
128
|
+
const treeIndex = useIndex(), context = useGroupContext("GroupItem", __scopeGroup);
|
|
129
|
+
if (React.useEffect(() => (context.onItemMount(), () => {
|
|
145
130
|
context.onItemUnmount();
|
|
146
131
|
}), []), !treeIndex)
|
|
147
132
|
throw Error("<Group.Item/> should only be used within a <Group/>");
|
|
@@ -160,8 +145,8 @@ const GroupItem = (props) => {
|
|
|
160
145
|
return { ...propsToPass, ...borderRadius };
|
|
161
146
|
}
|
|
162
147
|
return propsToPass;
|
|
163
|
-
}, Group = createGroup(!0), YGroup = Group, XGroup = createGroup(!1), wrapScroll = ({ scrollable, orientation, showScrollIndicator = !1 }, children) => scrollable ? /* @__PURE__ */
|
|
164
|
-
|
|
148
|
+
}, Group = createGroup(!0), YGroup = Group, XGroup = createGroup(!1), wrapScroll = ({ scrollable, orientation, showScrollIndicator = !1 }, children) => scrollable ? /* @__PURE__ */ jsx(
|
|
149
|
+
ScrollView,
|
|
165
150
|
{
|
|
166
151
|
...orientation === "vertical" && {
|
|
167
152
|
showsVerticalScrollIndicator: showScrollIndicator
|
|
@@ -184,15 +169,14 @@ const GroupItem = (props) => {
|
|
|
184
169
|
borderBottomLeftRadius: disable !== "bottom" && disable !== "start" && (vertical && isLast || !vertical && isFirst) ? radius : 0,
|
|
185
170
|
borderBottomRightRadius: isLast && disable !== "bottom" && disable !== "end" ? radius : 0
|
|
186
171
|
}), cloneElementWithPropOrder = (child, props) => {
|
|
187
|
-
const next =
|
|
188
|
-
return
|
|
172
|
+
const next = mergeProps(child.props, props, getConfig().shorthands);
|
|
173
|
+
return React.cloneElement({ ...child, props: null }, next);
|
|
189
174
|
};
|
|
190
|
-
|
|
191
|
-
0 && (module.exports = {
|
|
175
|
+
export {
|
|
192
176
|
Group,
|
|
193
177
|
GroupFrame,
|
|
194
178
|
XGroup,
|
|
195
179
|
YGroup,
|
|
196
180
|
useGroupItem
|
|
197
|
-
}
|
|
181
|
+
};
|
|
198
182
|
//# sourceMappingURL=Group.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Group.tsx"],
|
|
4
|
-
"mappings": "
|
|
5
|
-
"names": ["props"
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["props"]
|
|
6
6
|
}
|
package/dist/esm/index.native.js
CHANGED
|
@@ -1,20 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __copyProps = (to, from, except, desc) => {
|
|
7
|
-
if (from && typeof from == "object" || typeof from == "function")
|
|
8
|
-
for (let key of __getOwnPropNames(from))
|
|
9
|
-
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
10
|
-
return to;
|
|
11
|
-
}, __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
12
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
13
|
-
var src_exports = {};
|
|
14
|
-
module.exports = __toCommonJS(src_exports);
|
|
15
|
-
__reExport(src_exports, require("./Group"), module.exports);
|
|
16
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
17
|
-
0 && (module.exports = {
|
|
18
|
-
...require("./Group")
|
|
19
|
-
});
|
|
1
|
+
export * from "./Group";
|
|
20
2
|
//# sourceMappingURL=index.js.map
|
package/dist/jsx/Group.native.js
CHANGED
|
@@ -1,37 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
21
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
|
|
22
|
-
mod
|
|
23
|
-
)), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
24
|
-
var Group_exports = {};
|
|
25
|
-
__export(Group_exports, {
|
|
26
|
-
Group: () => Group,
|
|
27
|
-
GroupFrame: () => GroupFrame,
|
|
28
|
-
XGroup: () => XGroup,
|
|
29
|
-
YGroup: () => YGroup,
|
|
30
|
-
useGroupItem: () => useGroupItem
|
|
31
|
-
});
|
|
32
|
-
module.exports = __toCommonJS(Group_exports);
|
|
33
|
-
var import_core = require("@tamagui/core"), import_create_context = require("@tamagui/create-context"), import_helpers = require("@tamagui/helpers"), import_stacks = require("@tamagui/stacks"), import_use_controllable_state = require("@tamagui/use-controllable-state"), import_react = __toESM(require("react")), import_react_native = require("react-native"), import_reforest = require("reforest"), import_jsx_runtime = require("react/jsx-runtime");
|
|
34
|
-
const GROUP_NAME = "Group", [createGroupContext, createGroupScope] = (0, import_create_context.createContextScope)(GROUP_NAME), [GroupProvider, useGroupContext] = createGroupContext(GROUP_NAME), GroupFrame = (0, import_core.styled)(import_stacks.ThemeableStack, {
|
|
1
|
+
import {
|
|
2
|
+
getConfig,
|
|
3
|
+
getTokens,
|
|
4
|
+
getVariableValue,
|
|
5
|
+
isTamaguiElement,
|
|
6
|
+
mergeProps,
|
|
7
|
+
spacedChildren,
|
|
8
|
+
styled,
|
|
9
|
+
useProps
|
|
10
|
+
} from "@tamagui/core";
|
|
11
|
+
import { createContextScope } from "@tamagui/create-context";
|
|
12
|
+
import { withStaticProperties } from "@tamagui/helpers";
|
|
13
|
+
import { ThemeableStack } from "@tamagui/stacks";
|
|
14
|
+
import { useControllableState } from "@tamagui/use-controllable-state";
|
|
15
|
+
import React, { Children, forwardRef, isValidElement } from "react";
|
|
16
|
+
import { ScrollView } from "react-native";
|
|
17
|
+
import { useIndex, useIndexedChildren } from "reforest";
|
|
18
|
+
import { jsx } from "react/jsx-runtime";
|
|
19
|
+
const GROUP_NAME = "Group", [createGroupContext, createGroupScope] = createContextScope(GROUP_NAME), [GroupProvider, useGroupContext] = createGroupContext(GROUP_NAME), GroupFrame = styled(ThemeableStack, {
|
|
35
20
|
name: "GroupFrame",
|
|
36
21
|
variants: {
|
|
37
22
|
unstyled: {
|
|
@@ -48,9 +33,9 @@ const GROUP_NAME = "Group", [createGroupContext, createGroupScope] = (0, import_
|
|
|
48
33
|
}
|
|
49
34
|
});
|
|
50
35
|
function createGroup(verticalDefault) {
|
|
51
|
-
return
|
|
52
|
-
|
|
53
|
-
const activeProps =
|
|
36
|
+
return withStaticProperties(
|
|
37
|
+
forwardRef((props, ref) => {
|
|
38
|
+
const activeProps = useProps(props), {
|
|
54
39
|
__scopeGroup,
|
|
55
40
|
children: childrenProp,
|
|
56
41
|
space,
|
|
@@ -65,10 +50,10 @@ function createGroup(verticalDefault) {
|
|
|
65
50
|
borderRadius,
|
|
66
51
|
forceUseItem,
|
|
67
52
|
...restProps
|
|
68
|
-
} = activeProps, vertical = orientation === "vertical", [itemChildrenCount, setItemChildrenCount] =
|
|
53
|
+
} = activeProps, vertical = orientation === "vertical", [itemChildrenCount, setItemChildrenCount] = useControllableState({
|
|
69
54
|
defaultProp: forceUseItem ? 1 : 0
|
|
70
|
-
}), isUsingItems = itemChildrenCount > 0, radius = borderRadius ?? (size ?
|
|
71
|
-
if (!
|
|
55
|
+
}), isUsingItems = itemChildrenCount > 0, radius = borderRadius ?? (size ? getVariableValue(getTokens().radius[size]) - 1 : void 0), disablePassBorderRadius = disablePassBorderRadiusProp ?? !(radius !== void 0), childrenArray = Children.toArray(childrenProp), children = isUsingItems ? Children.toArray(childrenProp).filter(isValidElement) : childrenArray.map((child, i) => {
|
|
56
|
+
if (!isValidElement(child))
|
|
72
57
|
return child;
|
|
73
58
|
const disabled = child.props.disabled ?? disabledProp, isFirst = i === 0, isLast = i === childrenArray.length - 1, radiusStyles = disablePassBorderRadius === !0 ? null : getBorderRadius({
|
|
74
59
|
isFirst,
|
|
@@ -78,25 +63,25 @@ function createGroup(verticalDefault) {
|
|
|
78
63
|
disable: disablePassBorderRadius
|
|
79
64
|
}), props2 = {
|
|
80
65
|
disabled,
|
|
81
|
-
...
|
|
66
|
+
...isTamaguiElement(child) ? radiusStyles : { style: radiusStyles }
|
|
82
67
|
};
|
|
83
68
|
return cloneElementWithPropOrder(child, props2);
|
|
84
|
-
}), indexedChildren =
|
|
85
|
-
|
|
69
|
+
}), indexedChildren = useIndexedChildren(
|
|
70
|
+
spacedChildren({
|
|
86
71
|
direction: spaceDirection,
|
|
87
72
|
separator,
|
|
88
73
|
// @ts-ignore
|
|
89
74
|
space,
|
|
90
75
|
children
|
|
91
76
|
})
|
|
92
|
-
), onItemMount =
|
|
77
|
+
), onItemMount = React.useCallback(
|
|
93
78
|
() => setItemChildrenCount((prev) => prev + 1),
|
|
94
79
|
[]
|
|
95
|
-
), onItemUnmount =
|
|
80
|
+
), onItemUnmount = React.useCallback(
|
|
96
81
|
() => setItemChildrenCount((prev) => prev - 1),
|
|
97
82
|
[]
|
|
98
83
|
);
|
|
99
|
-
return /* @__PURE__ */
|
|
84
|
+
return /* @__PURE__ */ jsx(
|
|
100
85
|
GroupProvider,
|
|
101
86
|
{
|
|
102
87
|
disablePassBorderRadius,
|
|
@@ -106,7 +91,7 @@ function createGroup(verticalDefault) {
|
|
|
106
91
|
onItemMount,
|
|
107
92
|
onItemUnmount,
|
|
108
93
|
scope: __scopeGroup,
|
|
109
|
-
children: /* @__PURE__ */
|
|
94
|
+
children: /* @__PURE__ */ jsx(
|
|
110
95
|
GroupFrame,
|
|
111
96
|
{
|
|
112
97
|
ref,
|
|
@@ -128,11 +113,11 @@ function createGroup(verticalDefault) {
|
|
|
128
113
|
const GroupItem = (props) => {
|
|
129
114
|
var _a;
|
|
130
115
|
const { __scopeGroup, children, forcePlacement } = props, groupItemProps = useGroupItem(
|
|
131
|
-
{ disabled:
|
|
116
|
+
{ disabled: isValidElement(children) ? children.props.disabled : void 0 },
|
|
132
117
|
forcePlacement,
|
|
133
118
|
__scopeGroup
|
|
134
119
|
);
|
|
135
|
-
return
|
|
120
|
+
return isValidElement(children) ? isTamaguiElement(children) ? React.cloneElement(children, groupItemProps) : React.cloneElement(children, {
|
|
136
121
|
style: {
|
|
137
122
|
// @ts-ignore
|
|
138
123
|
...(_a = children.props) == null ? void 0 : _a.style,
|
|
@@ -140,8 +125,8 @@ const GroupItem = (props) => {
|
|
|
140
125
|
}
|
|
141
126
|
}) : children;
|
|
142
127
|
}, useGroupItem = (childrenProps, forcePlacement, __scopeGroup) => {
|
|
143
|
-
const treeIndex =
|
|
144
|
-
if (
|
|
128
|
+
const treeIndex = useIndex(), context = useGroupContext("GroupItem", __scopeGroup);
|
|
129
|
+
if (React.useEffect(() => (context.onItemMount(), () => {
|
|
145
130
|
context.onItemUnmount();
|
|
146
131
|
}), []), !treeIndex)
|
|
147
132
|
throw Error("<Group.Item/> should only be used within a <Group/>");
|
|
@@ -160,8 +145,8 @@ const GroupItem = (props) => {
|
|
|
160
145
|
return { ...propsToPass, ...borderRadius };
|
|
161
146
|
}
|
|
162
147
|
return propsToPass;
|
|
163
|
-
}, Group = createGroup(!0), YGroup = Group, XGroup = createGroup(!1), wrapScroll = ({ scrollable, orientation, showScrollIndicator = !1 }, children) => scrollable ? /* @__PURE__ */
|
|
164
|
-
|
|
148
|
+
}, Group = createGroup(!0), YGroup = Group, XGroup = createGroup(!1), wrapScroll = ({ scrollable, orientation, showScrollIndicator = !1 }, children) => scrollable ? /* @__PURE__ */ jsx(
|
|
149
|
+
ScrollView,
|
|
165
150
|
{
|
|
166
151
|
...orientation === "vertical" && {
|
|
167
152
|
showsVerticalScrollIndicator: showScrollIndicator
|
|
@@ -184,15 +169,14 @@ const GroupItem = (props) => {
|
|
|
184
169
|
borderBottomLeftRadius: disable !== "bottom" && disable !== "start" && (vertical && isLast || !vertical && isFirst) ? radius : 0,
|
|
185
170
|
borderBottomRightRadius: isLast && disable !== "bottom" && disable !== "end" ? radius : 0
|
|
186
171
|
}), cloneElementWithPropOrder = (child, props) => {
|
|
187
|
-
const next =
|
|
188
|
-
return
|
|
172
|
+
const next = mergeProps(child.props, props, getConfig().shorthands);
|
|
173
|
+
return React.cloneElement({ ...child, props: null }, next);
|
|
189
174
|
};
|
|
190
|
-
|
|
191
|
-
0 && (module.exports = {
|
|
175
|
+
export {
|
|
192
176
|
Group,
|
|
193
177
|
GroupFrame,
|
|
194
178
|
XGroup,
|
|
195
179
|
YGroup,
|
|
196
180
|
useGroupItem
|
|
197
|
-
}
|
|
181
|
+
};
|
|
198
182
|
//# sourceMappingURL=Group.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Group.tsx"],
|
|
4
|
-
"mappings": "
|
|
5
|
-
"names": ["props"
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["props"]
|
|
6
6
|
}
|
package/dist/jsx/index.native.js
CHANGED
|
@@ -1,20 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __copyProps = (to, from, except, desc) => {
|
|
7
|
-
if (from && typeof from == "object" || typeof from == "function")
|
|
8
|
-
for (let key of __getOwnPropNames(from))
|
|
9
|
-
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
10
|
-
return to;
|
|
11
|
-
}, __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
12
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
13
|
-
var src_exports = {};
|
|
14
|
-
module.exports = __toCommonJS(src_exports);
|
|
15
|
-
__reExport(src_exports, require("./Group"), module.exports);
|
|
16
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
17
|
-
0 && (module.exports = {
|
|
18
|
-
...require("./Group")
|
|
19
|
-
});
|
|
1
|
+
export * from "./Group";
|
|
20
2
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/group",
|
|
3
|
-
"version": "1.88.
|
|
3
|
+
"version": "1.88.23",
|
|
4
4
|
"sideEffects": [
|
|
5
5
|
"*.css"
|
|
6
6
|
],
|
|
@@ -23,18 +23,18 @@
|
|
|
23
23
|
"clean:build": "tamagui-build clean:build"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@tamagui/core": "1.88.
|
|
27
|
-
"@tamagui/create-context": "1.88.
|
|
28
|
-
"@tamagui/helpers": "1.88.
|
|
29
|
-
"@tamagui/stacks": "1.88.
|
|
30
|
-
"@tamagui/use-controllable-state": "1.88.
|
|
26
|
+
"@tamagui/core": "1.88.23",
|
|
27
|
+
"@tamagui/create-context": "1.88.23",
|
|
28
|
+
"@tamagui/helpers": "1.88.23",
|
|
29
|
+
"@tamagui/stacks": "1.88.23",
|
|
30
|
+
"@tamagui/use-controllable-state": "1.88.23",
|
|
31
31
|
"reforest": "^0.13.0"
|
|
32
32
|
},
|
|
33
33
|
"peerDependencies": {
|
|
34
34
|
"react": "*"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@tamagui/build": "1.88.
|
|
37
|
+
"@tamagui/build": "1.88.23",
|
|
38
38
|
"react": "^18.2.0"
|
|
39
39
|
},
|
|
40
40
|
"publishConfig": {
|