@tamagui/button 1.15.13 → 1.15.15
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/cjs/Button.js +67 -14
- package/dist/cjs/Button.js.map +1 -2
- package/dist/cjs/Button.test.js.map +0 -1
- package/dist/cjs/index.js.map +0 -1
- package/dist/esm/Button.js +75 -16
- package/dist/esm/Button.js.map +1 -2
- package/dist/esm/Button.mjs +75 -16
- package/dist/esm/Button.mjs.map +1 -2
- package/dist/esm/Button.test.js.map +0 -1
- package/dist/esm/Button.test.mjs.map +0 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/index.mjs.map +0 -1
- package/dist/jsx/Button.js +71 -16
- package/dist/jsx/Button.js.map +1 -2
- package/dist/jsx/Button.mjs +71 -16
- package/dist/jsx/Button.mjs.map +1 -2
- package/dist/jsx/Button.test.js.map +0 -1
- package/dist/jsx/Button.test.mjs.map +0 -1
- package/dist/jsx/index.js.map +0 -1
- package/dist/jsx/index.mjs.map +0 -1
- package/package.json +7 -7
- package/src/Button.tsx +123 -22
- package/types/Button.d.ts +71 -42
- package/types/Button.d.ts.map +1 -1
package/dist/cjs/Button.js
CHANGED
|
@@ -20,12 +20,14 @@ var Button_exports = {};
|
|
|
20
20
|
__export(Button_exports, {
|
|
21
21
|
Button: () => Button2,
|
|
22
22
|
ButtonFrame: () => ButtonFrame,
|
|
23
|
-
ButtonText: () =>
|
|
23
|
+
ButtonText: () => ButtonTextFrame,
|
|
24
24
|
buttonStaticConfig: () => buttonStaticConfig,
|
|
25
|
+
createButtonScope: () => createButtonScope,
|
|
25
26
|
useButton: () => useButton
|
|
26
27
|
});
|
|
27
28
|
module.exports = __toCommonJS(Button_exports);
|
|
28
29
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
30
|
+
var import_create_context = require("@tamagui/create-context");
|
|
29
31
|
var import_font_size = require("@tamagui/font-size");
|
|
30
32
|
var import_get_button_sized = require("@tamagui/get-button-sized");
|
|
31
33
|
var import_helpers_tamagui = require("@tamagui/helpers-tamagui");
|
|
@@ -33,9 +35,9 @@ var import_stacks = require("@tamagui/stacks");
|
|
|
33
35
|
var import_text = require("@tamagui/text");
|
|
34
36
|
var import_web = require("@tamagui/web");
|
|
35
37
|
var import_react = require("react");
|
|
36
|
-
const
|
|
38
|
+
const BUTTON_NAME = "Button";
|
|
37
39
|
const ButtonFrame = (0, import_web.styled)(import_stacks.ThemeableStack, {
|
|
38
|
-
name:
|
|
40
|
+
name: BUTTON_NAME,
|
|
39
41
|
tag: "button",
|
|
40
42
|
variants: {
|
|
41
43
|
unstyled: {
|
|
@@ -86,8 +88,9 @@ const ButtonFrame = (0, import_web.styled)(import_stacks.ThemeableStack, {
|
|
|
86
88
|
unstyled: false
|
|
87
89
|
}
|
|
88
90
|
});
|
|
89
|
-
const
|
|
90
|
-
|
|
91
|
+
const BUTTON_TEXT_NAME = "ButtonText";
|
|
92
|
+
const ButtonTextFrame = (0, import_web.styled)(import_text.SizableText, {
|
|
93
|
+
name: BUTTON_TEXT_NAME,
|
|
91
94
|
variants: {
|
|
92
95
|
unstyled: {
|
|
93
96
|
false: {
|
|
@@ -105,10 +108,52 @@ const ButtonText = (0, import_web.styled)(import_text.SizableText, {
|
|
|
105
108
|
unstyled: false
|
|
106
109
|
}
|
|
107
110
|
});
|
|
108
|
-
const
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
111
|
+
const [createButtonContext, createButtonScope] = (0, import_create_context.createContextScope)("Button");
|
|
112
|
+
const [ButtonProvider, useButtonContext] = createButtonContext("Button");
|
|
113
|
+
const ButtonTextComponent = ButtonTextFrame.extractable(
|
|
114
|
+
(0, import_react.forwardRef)(
|
|
115
|
+
(props, ref) => {
|
|
116
|
+
const context = useButtonContext(BUTTON_TEXT_NAME, props.__scopeButton);
|
|
117
|
+
(0, import_react.useEffect)(() => {
|
|
118
|
+
const unregister = context.registerButtonText();
|
|
119
|
+
return () => unregister();
|
|
120
|
+
}, [context.registerButtonText]);
|
|
121
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ButtonTextFrame, { size: props.size ?? context.size, ...props, ref });
|
|
122
|
+
}
|
|
123
|
+
)
|
|
124
|
+
);
|
|
125
|
+
const BUTTON_ICON_NAME = "ButtonIcon";
|
|
126
|
+
const ButtonIcon = (props) => {
|
|
127
|
+
const { children, scaleIcon = 1 } = props;
|
|
128
|
+
const context = useButtonContext(BUTTON_ICON_NAME, props.__scopeButton);
|
|
129
|
+
const size = context.size;
|
|
130
|
+
const color = context.color;
|
|
131
|
+
const iconSize = (typeof size === "number" ? size * 0.5 : (0, import_font_size.getFontSize)(size)) * scaleIcon;
|
|
132
|
+
const getThemedIcon = (0, import_helpers_tamagui.useGetThemedIcon)({ size: iconSize, color });
|
|
133
|
+
return getThemedIcon(children);
|
|
134
|
+
};
|
|
135
|
+
const ButtonComponent = (0, import_react.forwardRef)(
|
|
136
|
+
function Button(props, ref) {
|
|
137
|
+
const { props: buttonProps } = useButton(props);
|
|
138
|
+
const [buttonTextCount, setButtonTextCount] = (0, import_react.useState)(0);
|
|
139
|
+
const registerButtonText = (0, import_react.useCallback)(() => {
|
|
140
|
+
setButtonTextCount((prev) => prev + 1);
|
|
141
|
+
return () => setButtonTextCount((prev) => prev - 1);
|
|
142
|
+
}, [setButtonTextCount]);
|
|
143
|
+
const hasTextComponent = buttonTextCount > 0;
|
|
144
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
145
|
+
ButtonProvider,
|
|
146
|
+
{
|
|
147
|
+
scope: props.__scopeButton,
|
|
148
|
+
color: props.color,
|
|
149
|
+
hasTextComponent,
|
|
150
|
+
size: props.size ?? "$true",
|
|
151
|
+
registerButtonText,
|
|
152
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ButtonFrame, { ...hasTextComponent ? props : buttonProps, ref })
|
|
153
|
+
}
|
|
154
|
+
);
|
|
155
|
+
}
|
|
156
|
+
);
|
|
112
157
|
const buttonStaticConfig = {
|
|
113
158
|
inlineProps: /* @__PURE__ */ new Set([
|
|
114
159
|
// text props go here (can't really optimize them, but we never fully extract button anyway)
|
|
@@ -123,11 +168,17 @@ const buttonStaticConfig = {
|
|
|
123
168
|
"unstyled"
|
|
124
169
|
])
|
|
125
170
|
};
|
|
126
|
-
const Button2 =
|
|
127
|
-
|
|
128
|
-
|
|
171
|
+
const Button2 = (0, import_web.withStaticProperties)(
|
|
172
|
+
ButtonFrame.extractable(
|
|
173
|
+
(0, import_web.themeable)(ButtonComponent, ButtonFrame.staticConfig),
|
|
174
|
+
buttonStaticConfig
|
|
175
|
+
),
|
|
176
|
+
{
|
|
177
|
+
Text: ButtonTextComponent,
|
|
178
|
+
Icon: ButtonIcon
|
|
179
|
+
}
|
|
129
180
|
);
|
|
130
|
-
function useButton(propsIn, { Text =
|
|
181
|
+
function useButton(propsIn, { Text = ButtonTextFrame } = { Text: ButtonTextFrame }) {
|
|
131
182
|
const {
|
|
132
183
|
children,
|
|
133
184
|
icon,
|
|
@@ -161,7 +212,7 @@ function useButton(propsIn, { Text = ButtonText } = { Text: ButtonText }) {
|
|
|
161
212
|
const contents = (0, import_text.wrapChildrenInText)(
|
|
162
213
|
Text,
|
|
163
214
|
propsActive,
|
|
164
|
-
Text ===
|
|
215
|
+
Text === ButtonTextFrame ? {
|
|
165
216
|
unstyled
|
|
166
217
|
} : void 0
|
|
167
218
|
);
|
|
@@ -187,6 +238,7 @@ function useButton(propsIn, { Text = ButtonText } = { Text: ButtonText }) {
|
|
|
187
238
|
borderColor: "$background"
|
|
188
239
|
}
|
|
189
240
|
},
|
|
241
|
+
unstyled,
|
|
190
242
|
tag,
|
|
191
243
|
...rest,
|
|
192
244
|
children: import_web.isRSC ? inner : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_web.ButtonNestingContext.Provider, { value: true, children: inner })
|
|
@@ -203,6 +255,7 @@ function useButton(propsIn, { Text = ButtonText } = { Text: ButtonText }) {
|
|
|
203
255
|
ButtonFrame,
|
|
204
256
|
ButtonText,
|
|
205
257
|
buttonStaticConfig,
|
|
258
|
+
createButtonScope,
|
|
206
259
|
useButton
|
|
207
260
|
});
|
|
208
261
|
//# sourceMappingURL=Button.js.map
|
package/dist/cjs/Button.js.map
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Button.tsx"],
|
|
4
|
-
"
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,gBAAAA;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAiLa;AAhLb,4BAAmC;AACnC,uBAA4B;AAC5B,8BAA+B;AAC/B,6BAA6D;AAC7D,oBAA+B;AAC/B,kBAAkE;AAClE,iBAcO;AACP,mBAQO;AAoCP,MAAM,cAAc;AAEpB,MAAM,kBAAc,mBAAO,8BAAgB;AAAA,EACzC,MAAM;AAAA,EACN,KAAK;AAAA,EAEL,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,MAAM;AAAA,QACN,gBAAgB;AAAA,QAChB,YAAY;AAAA,QACZ,UAAU;AAAA,QACV,eAAe;AAAA,QACf,QAAQ;AAAA,QACR,WAAW;AAAA,QACX,YAAY;AAAA,QACZ,YAAY;AAAA,QACZ,cAAc;AAAA,QACd,aAAa;AAAA,QACb,aAAa;AAAA,QAEb,YAAY;AAAA,UACV,aAAa;AAAA,QACf;AAAA,QAEA,YAAY;AAAA,UACV,aAAa;AAAA,QACf;AAAA,QAEA,YAAY;AAAA,UACV,aAAa;AAAA,UACb,cAAc;AAAA,UACd,cAAc;AAAA,UACd,cAAc;AAAA,QAChB;AAAA,MACF;AAAA,IACF;AAAA,IAEA,MAAM;AAAA,MACJ,WAAW;AAAA,IACb;AAAA,IAEA,QAAQ;AAAA,MACN,MAAM;AAAA,QACJ,YAAY;AAAA,UACV,iBAAiB;AAAA,QACnB;AAAA,MACF;AAAA,IACF;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,eAAe;AAAA,MACjB;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU;AAAA,EACZ;AACF,CAAC;AAED,MAAM,mBAAmB;AACzB,MAAM,sBAAkB,mBAAO,yBAAa;AAAA,EAC1C,MAAM;AAAA,EAEN,UAAU;AAAA,IACR,UAAU;AAAA,MACR,OAAO;AAAA,QACL,YAAY;AAAA,QACZ,QAAQ;AAAA;AAAA,QAER,UAAU;AAAA,QACV,YAAY;AAAA,QACZ,SAAS;AAAA,QACT,OAAO;AAAA,MACT;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,UAAU;AAAA,EACZ;AACF,CAAC;AAGD,MAAM,CAAC,qBAAqB,iBAAiB,QAAI,0CAAmB,QAAQ;AAW5E,MAAM,CAAC,gBAAgB,gBAAgB,IACrC,oBAAwC,QAAQ;AAElD,MAAM,sBAAsB,gBAAgB;AAAA,MAC1C;AAAA,IACE,CAAC,OAAO,QAAQ;AACd,YAAM,UAAU,iBAAiB,kBAAkB,MAAM,aAAa;AAEtE,kCAAU,MAAM;AACd,cAAM,aAAa,QAAQ,mBAAmB;AAC9C,eAAO,MAAM,WAAW;AAAA,MAC1B,GAAG,CAAC,QAAQ,kBAAkB,CAAC;AAE/B,aAAO,4CAAC,mBAAgB,MAAM,MAAM,QAAQ,QAAQ,MAAO,GAAG,OAAO,KAAU;AAAA,IACjF;AAAA,EACF;AACF;AAEA,MAAM,mBAAmB;AAEzB,MAAM,aAAa,CACjB,UAIG;AACH,QAAM,EAAE,UAAU,YAAY,EAAE,IAAI;AACpC,QAAM,UAAU,iBAAiB,kBAAkB,MAAM,aAAa;AAEtE,QAAM,OAAO,QAAQ;AACrB,QAAM,QAAQ,QAAQ;AAEtB,QAAM,YAAY,OAAO,SAAS,WAAW,OAAO,UAAM,8BAAY,IAAI,KAAK;AAC/E,QAAM,oBAAgB,yCAAiB,EAAE,MAAM,UAAU,MAAM,CAAC;AAChE,SAAO,cAAc,QAAQ;AAC/B;AAEA,MAAM,sBAAkB;AAAA,EACtB,SAAS,OAAO,OAAO,KAAK;AAC1B,UAAM,EAAE,OAAO,YAAY,IAAI,UAAU,KAAK;AAC9C,UAAM,CAAC,iBAAiB,kBAAkB,QAAI,uBAAS,CAAC;AAExD,UAAM,yBAAqB,0BAAY,MAAM;AAC3C,yBAAmB,CAAC,SAAS,OAAO,CAAC;AACrC,aAAO,MAAM,mBAAmB,CAAC,SAAS,OAAO,CAAC;AAAA,IACpD,GAAG,CAAC,kBAAkB,CAAC;AAEvB,UAAM,mBAAmB,kBAAkB;AAE3C,WACE;AAAA,MAAC;AAAA;AAAA,QACC,OAAO,MAAM;AAAA,QACb,OAAO,MAAM;AAAA,QACb;AAAA,QACA,MAAM,MAAM,QAAQ;AAAA,QACpB;AAAA,QAEA,sDAAC,eAAa,GAAI,mBAAmB,QAAQ,aAAc,KAAU;AAAA;AAAA,IACvE;AAAA,EAEJ;AACF;AAEA,MAAM,qBAAqB;AAAA,EACzB,aAAa,oBAAI,IAAI;AAAA;AAAA;AAAA,IAGnB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH;AAEA,MAAMA,cAAS;AAAA,EACb,YAAY;AAAA,QACV,sBAAU,iBAAiB,YAAY,YAAY;AAAA,IACnD;AAAA,EACF;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AACF;AAEA,SAAS,UACP,SACA,EAAE,OAAO,gBAAgB,IAAmB,EAAE,MAAM,gBAAgB,GACpE;AAEA,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ,aAAa;AAAA,IACb;AAAA;AAAA,IAGA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IAEA,GAAG;AAAA,EACL,IAAI;AAEJ,QAAM,WAAW,mBAAQ,YAAQ,yBAAW,+BAAoB;AAChE,QAAM,kBAAc,gCAAoB,OAAO;AAC/C,QAAM,OAAO,YAAY,QAAQ;AACjC,QAAM,YAAY,OAAO,SAAS,WAAW,OAAO,UAAM,8BAAY,IAAI,KAAK;AAC/E,QAAM,oBAAgB,yCAAiB,EAAE,MAAM,UAAU,MAAM,CAAC;AAChE,QAAM,CAAC,YAAY,eAAe,IAAI,CAAC,MAAM,SAAS,EAAE,IAAI,aAAa;AACzE,QAAM,YAAY,YAAY,aAAS,6BAAiB,QAAQ,IAAI;AACpE,QAAM,eAAW;AAAA,IACf;AAAA,IACA;AAAA,IACA,SAAS,kBACL;AAAA,MACE;AAAA,IACF,IACA;AAAA,EACN;AACA,QAAM,YAAQ,2BAAe;AAAA;AAAA,IAE3B,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA,WACE,YAAY,kBAAkB,YAC9B,YAAY,kBAAkB,mBAC1B,aACA;AAAA,IACN,UAAU,CAAC,YAAY,GAAG,UAAU,eAAe;AAAA,EACrD,CAAC;AAGD,QAAM,MAAM,WACR;AAAA;AAAA;AAAA,IAGF,QAAQ,sBAAsB,SAC5B,MACA;AAAA;AAEJ,QAAM,QAAQ;AAAA,IACZ,GAAI,YAAY,YAAY;AAAA;AAAA,MAE1B,WAAW;AAAA;AAAA,MAEX,YAAY;AAAA,QACV,aAAa;AAAA,MACf;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,IACH,UAAU,mBACR,QAEA,4CAAC,gCAAqB,UAArB,EAA8B,OAAO,MAAO,iBAAM;AAAA,EAEvD;AAEA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
|
|
6
5
|
"names": ["Button"]
|
|
7
6
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Button.test.tsx"],
|
|
4
|
-
"sourcesContent": ["process.env.TAMAGUI_TARGET = 'web'\n\nimport { getDefaultTamaguiConfig } from '@tamagui/config-default'\nimport { TamaguiProvider, createTamagui } from '@tamagui/core'\nimport { render } from '@testing-library/react'\nimport { describe, expect, test } from 'vitest'\n\nimport { Button } from '.'\n\nconst conf = createTamagui(getDefaultTamaguiConfig())\n\ndescribe('Button', () => {\n test(`123`, () => {\n expect(true).toBeTruthy()\n })\n\n // test(`Adapts to a when given accessibilityRole=\"link\"`, async () => {\n // const { container } = render(\n // <TamaguiProvider config={conf} defaultTheme=\"light\">\n // <Button href=\"http://google.com\" accessibilityRole=\"link\" />\n // </TamaguiProvider>\n // )\n\n // expect(container.firstChild).toMatchSnapshot()\n // })\n})\n"],
|
|
5
4
|
"mappings": ";AAEA,4BAAwC;AACxC,kBAA+C;AAE/C,oBAAuC;AALvC,QAAQ,IAAI,iBAAiB;AAS7B,MAAM,WAAO,+BAAc,+CAAwB,CAAC;AAAA,IAEpD,wBAAS,UAAU,MAAM;AACvB,0BAAK,OAAO,MAAM;AAChB,8BAAO,IAAI,EAAE,WAAW;AAAA,EAC1B,CAAC;AAWH,CAAC;",
|
|
6
5
|
"names": []
|
|
7
6
|
}
|
package/dist/cjs/index.js.map
CHANGED
package/dist/esm/Button.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { createContextScope } from "@tamagui/create-context";
|
|
2
3
|
import { getFontSize } from "@tamagui/font-size";
|
|
3
4
|
import { getButtonSized } from "@tamagui/get-button-sized";
|
|
4
5
|
import { useGetThemedIcon } from "@tamagui/helpers-tamagui";
|
|
@@ -11,12 +12,19 @@ import {
|
|
|
11
12
|
spacedChildren,
|
|
12
13
|
styled,
|
|
13
14
|
themeable,
|
|
14
|
-
useMediaPropsActive
|
|
15
|
+
useMediaPropsActive,
|
|
16
|
+
withStaticProperties
|
|
15
17
|
} from "@tamagui/web";
|
|
16
|
-
import {
|
|
17
|
-
|
|
18
|
+
import {
|
|
19
|
+
forwardRef,
|
|
20
|
+
useCallback,
|
|
21
|
+
useContext,
|
|
22
|
+
useEffect,
|
|
23
|
+
useState
|
|
24
|
+
} from "react";
|
|
25
|
+
const BUTTON_NAME = "Button";
|
|
18
26
|
const ButtonFrame = styled(ThemeableStack, {
|
|
19
|
-
name:
|
|
27
|
+
name: BUTTON_NAME,
|
|
20
28
|
tag: "button",
|
|
21
29
|
variants: {
|
|
22
30
|
unstyled: {
|
|
@@ -67,8 +75,9 @@ const ButtonFrame = styled(ThemeableStack, {
|
|
|
67
75
|
unstyled: false
|
|
68
76
|
}
|
|
69
77
|
});
|
|
70
|
-
const
|
|
71
|
-
|
|
78
|
+
const BUTTON_TEXT_NAME = "ButtonText";
|
|
79
|
+
const ButtonTextFrame = styled(SizableText, {
|
|
80
|
+
name: BUTTON_TEXT_NAME,
|
|
72
81
|
variants: {
|
|
73
82
|
unstyled: {
|
|
74
83
|
false: {
|
|
@@ -86,10 +95,52 @@ const ButtonText = styled(SizableText, {
|
|
|
86
95
|
unstyled: false
|
|
87
96
|
}
|
|
88
97
|
});
|
|
89
|
-
const
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
98
|
+
const [createButtonContext, createButtonScope] = createContextScope("Button");
|
|
99
|
+
const [ButtonProvider, useButtonContext] = createButtonContext("Button");
|
|
100
|
+
const ButtonTextComponent = ButtonTextFrame.extractable(
|
|
101
|
+
forwardRef(
|
|
102
|
+
(props, ref) => {
|
|
103
|
+
const context = useButtonContext(BUTTON_TEXT_NAME, props.__scopeButton);
|
|
104
|
+
useEffect(() => {
|
|
105
|
+
const unregister = context.registerButtonText();
|
|
106
|
+
return () => unregister();
|
|
107
|
+
}, [context.registerButtonText]);
|
|
108
|
+
return /* @__PURE__ */ jsx(ButtonTextFrame, { size: props.size ?? context.size, ...props, ref });
|
|
109
|
+
}
|
|
110
|
+
)
|
|
111
|
+
);
|
|
112
|
+
const BUTTON_ICON_NAME = "ButtonIcon";
|
|
113
|
+
const ButtonIcon = (props) => {
|
|
114
|
+
const { children, scaleIcon = 1 } = props;
|
|
115
|
+
const context = useButtonContext(BUTTON_ICON_NAME, props.__scopeButton);
|
|
116
|
+
const size = context.size;
|
|
117
|
+
const color = context.color;
|
|
118
|
+
const iconSize = (typeof size === "number" ? size * 0.5 : getFontSize(size)) * scaleIcon;
|
|
119
|
+
const getThemedIcon = useGetThemedIcon({ size: iconSize, color });
|
|
120
|
+
return getThemedIcon(children);
|
|
121
|
+
};
|
|
122
|
+
const ButtonComponent = forwardRef(
|
|
123
|
+
function Button(props, ref) {
|
|
124
|
+
const { props: buttonProps } = useButton(props);
|
|
125
|
+
const [buttonTextCount, setButtonTextCount] = useState(0);
|
|
126
|
+
const registerButtonText = useCallback(() => {
|
|
127
|
+
setButtonTextCount((prev) => prev + 1);
|
|
128
|
+
return () => setButtonTextCount((prev) => prev - 1);
|
|
129
|
+
}, [setButtonTextCount]);
|
|
130
|
+
const hasTextComponent = buttonTextCount > 0;
|
|
131
|
+
return /* @__PURE__ */ jsx(
|
|
132
|
+
ButtonProvider,
|
|
133
|
+
{
|
|
134
|
+
scope: props.__scopeButton,
|
|
135
|
+
color: props.color,
|
|
136
|
+
hasTextComponent,
|
|
137
|
+
size: props.size ?? "$true",
|
|
138
|
+
registerButtonText,
|
|
139
|
+
children: /* @__PURE__ */ jsx(ButtonFrame, { ...hasTextComponent ? props : buttonProps, ref })
|
|
140
|
+
}
|
|
141
|
+
);
|
|
142
|
+
}
|
|
143
|
+
);
|
|
93
144
|
const buttonStaticConfig = {
|
|
94
145
|
inlineProps: /* @__PURE__ */ new Set([
|
|
95
146
|
// text props go here (can't really optimize them, but we never fully extract button anyway)
|
|
@@ -104,11 +155,17 @@ const buttonStaticConfig = {
|
|
|
104
155
|
"unstyled"
|
|
105
156
|
])
|
|
106
157
|
};
|
|
107
|
-
const Button2 =
|
|
108
|
-
|
|
109
|
-
|
|
158
|
+
const Button2 = withStaticProperties(
|
|
159
|
+
ButtonFrame.extractable(
|
|
160
|
+
themeable(ButtonComponent, ButtonFrame.staticConfig),
|
|
161
|
+
buttonStaticConfig
|
|
162
|
+
),
|
|
163
|
+
{
|
|
164
|
+
Text: ButtonTextComponent,
|
|
165
|
+
Icon: ButtonIcon
|
|
166
|
+
}
|
|
110
167
|
);
|
|
111
|
-
function useButton(propsIn, { Text =
|
|
168
|
+
function useButton(propsIn, { Text = ButtonTextFrame } = { Text: ButtonTextFrame }) {
|
|
112
169
|
const {
|
|
113
170
|
children,
|
|
114
171
|
icon,
|
|
@@ -142,7 +199,7 @@ function useButton(propsIn, { Text = ButtonText } = { Text: ButtonText }) {
|
|
|
142
199
|
const contents = wrapChildrenInText(
|
|
143
200
|
Text,
|
|
144
201
|
propsActive,
|
|
145
|
-
Text ===
|
|
202
|
+
Text === ButtonTextFrame ? {
|
|
146
203
|
unstyled
|
|
147
204
|
} : void 0
|
|
148
205
|
);
|
|
@@ -168,6 +225,7 @@ function useButton(propsIn, { Text = ButtonText } = { Text: ButtonText }) {
|
|
|
168
225
|
borderColor: "$background"
|
|
169
226
|
}
|
|
170
227
|
},
|
|
228
|
+
unstyled,
|
|
171
229
|
tag,
|
|
172
230
|
...rest,
|
|
173
231
|
children: isRSC ? inner : /* @__PURE__ */ jsx(ButtonNestingContext.Provider, { value: true, children: inner })
|
|
@@ -181,8 +239,9 @@ function useButton(propsIn, { Text = ButtonText } = { Text: ButtonText }) {
|
|
|
181
239
|
export {
|
|
182
240
|
Button2 as Button,
|
|
183
241
|
ButtonFrame,
|
|
184
|
-
ButtonText,
|
|
242
|
+
ButtonTextFrame as ButtonText,
|
|
185
243
|
buttonStaticConfig,
|
|
244
|
+
createButtonScope,
|
|
186
245
|
useButton
|
|
187
246
|
};
|
|
188
247
|
//# sourceMappingURL=Button.js.map
|
package/dist/esm/Button.js.map
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Button.tsx"],
|
|
4
|
-
"
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
6
5
|
"names": ["Button"]
|
|
7
6
|
}
|
package/dist/esm/Button.mjs
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { createContextScope } from "@tamagui/create-context";
|
|
2
3
|
import { getFontSize } from "@tamagui/font-size";
|
|
3
4
|
import { getButtonSized } from "@tamagui/get-button-sized";
|
|
4
5
|
import { useGetThemedIcon } from "@tamagui/helpers-tamagui";
|
|
@@ -11,12 +12,19 @@ import {
|
|
|
11
12
|
spacedChildren,
|
|
12
13
|
styled,
|
|
13
14
|
themeable,
|
|
14
|
-
useMediaPropsActive
|
|
15
|
+
useMediaPropsActive,
|
|
16
|
+
withStaticProperties
|
|
15
17
|
} from "@tamagui/web";
|
|
16
|
-
import {
|
|
17
|
-
|
|
18
|
+
import {
|
|
19
|
+
forwardRef,
|
|
20
|
+
useCallback,
|
|
21
|
+
useContext,
|
|
22
|
+
useEffect,
|
|
23
|
+
useState
|
|
24
|
+
} from "react";
|
|
25
|
+
const BUTTON_NAME = "Button";
|
|
18
26
|
const ButtonFrame = styled(ThemeableStack, {
|
|
19
|
-
name:
|
|
27
|
+
name: BUTTON_NAME,
|
|
20
28
|
tag: "button",
|
|
21
29
|
variants: {
|
|
22
30
|
unstyled: {
|
|
@@ -67,8 +75,9 @@ const ButtonFrame = styled(ThemeableStack, {
|
|
|
67
75
|
unstyled: false
|
|
68
76
|
}
|
|
69
77
|
});
|
|
70
|
-
const
|
|
71
|
-
|
|
78
|
+
const BUTTON_TEXT_NAME = "ButtonText";
|
|
79
|
+
const ButtonTextFrame = styled(SizableText, {
|
|
80
|
+
name: BUTTON_TEXT_NAME,
|
|
72
81
|
variants: {
|
|
73
82
|
unstyled: {
|
|
74
83
|
false: {
|
|
@@ -86,10 +95,52 @@ const ButtonText = styled(SizableText, {
|
|
|
86
95
|
unstyled: false
|
|
87
96
|
}
|
|
88
97
|
});
|
|
89
|
-
const
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
98
|
+
const [createButtonContext, createButtonScope] = createContextScope("Button");
|
|
99
|
+
const [ButtonProvider, useButtonContext] = createButtonContext("Button");
|
|
100
|
+
const ButtonTextComponent = ButtonTextFrame.extractable(
|
|
101
|
+
forwardRef(
|
|
102
|
+
(props, ref) => {
|
|
103
|
+
const context = useButtonContext(BUTTON_TEXT_NAME, props.__scopeButton);
|
|
104
|
+
useEffect(() => {
|
|
105
|
+
const unregister = context.registerButtonText();
|
|
106
|
+
return () => unregister();
|
|
107
|
+
}, [context.registerButtonText]);
|
|
108
|
+
return /* @__PURE__ */ jsx(ButtonTextFrame, { size: props.size ?? context.size, ...props, ref });
|
|
109
|
+
}
|
|
110
|
+
)
|
|
111
|
+
);
|
|
112
|
+
const BUTTON_ICON_NAME = "ButtonIcon";
|
|
113
|
+
const ButtonIcon = (props) => {
|
|
114
|
+
const { children, scaleIcon = 1 } = props;
|
|
115
|
+
const context = useButtonContext(BUTTON_ICON_NAME, props.__scopeButton);
|
|
116
|
+
const size = context.size;
|
|
117
|
+
const color = context.color;
|
|
118
|
+
const iconSize = (typeof size === "number" ? size * 0.5 : getFontSize(size)) * scaleIcon;
|
|
119
|
+
const getThemedIcon = useGetThemedIcon({ size: iconSize, color });
|
|
120
|
+
return getThemedIcon(children);
|
|
121
|
+
};
|
|
122
|
+
const ButtonComponent = forwardRef(
|
|
123
|
+
function Button(props, ref) {
|
|
124
|
+
const { props: buttonProps } = useButton(props);
|
|
125
|
+
const [buttonTextCount, setButtonTextCount] = useState(0);
|
|
126
|
+
const registerButtonText = useCallback(() => {
|
|
127
|
+
setButtonTextCount((prev) => prev + 1);
|
|
128
|
+
return () => setButtonTextCount((prev) => prev - 1);
|
|
129
|
+
}, [setButtonTextCount]);
|
|
130
|
+
const hasTextComponent = buttonTextCount > 0;
|
|
131
|
+
return /* @__PURE__ */ jsx(
|
|
132
|
+
ButtonProvider,
|
|
133
|
+
{
|
|
134
|
+
scope: props.__scopeButton,
|
|
135
|
+
color: props.color,
|
|
136
|
+
hasTextComponent,
|
|
137
|
+
size: props.size ?? "$true",
|
|
138
|
+
registerButtonText,
|
|
139
|
+
children: /* @__PURE__ */ jsx(ButtonFrame, { ...hasTextComponent ? props : buttonProps, ref })
|
|
140
|
+
}
|
|
141
|
+
);
|
|
142
|
+
}
|
|
143
|
+
);
|
|
93
144
|
const buttonStaticConfig = {
|
|
94
145
|
inlineProps: /* @__PURE__ */ new Set([
|
|
95
146
|
// text props go here (can't really optimize them, but we never fully extract button anyway)
|
|
@@ -104,11 +155,17 @@ const buttonStaticConfig = {
|
|
|
104
155
|
"unstyled"
|
|
105
156
|
])
|
|
106
157
|
};
|
|
107
|
-
const Button2 =
|
|
108
|
-
|
|
109
|
-
|
|
158
|
+
const Button2 = withStaticProperties(
|
|
159
|
+
ButtonFrame.extractable(
|
|
160
|
+
themeable(ButtonComponent, ButtonFrame.staticConfig),
|
|
161
|
+
buttonStaticConfig
|
|
162
|
+
),
|
|
163
|
+
{
|
|
164
|
+
Text: ButtonTextComponent,
|
|
165
|
+
Icon: ButtonIcon
|
|
166
|
+
}
|
|
110
167
|
);
|
|
111
|
-
function useButton(propsIn, { Text =
|
|
168
|
+
function useButton(propsIn, { Text = ButtonTextFrame } = { Text: ButtonTextFrame }) {
|
|
112
169
|
const {
|
|
113
170
|
children,
|
|
114
171
|
icon,
|
|
@@ -142,7 +199,7 @@ function useButton(propsIn, { Text = ButtonText } = { Text: ButtonText }) {
|
|
|
142
199
|
const contents = wrapChildrenInText(
|
|
143
200
|
Text,
|
|
144
201
|
propsActive,
|
|
145
|
-
Text ===
|
|
202
|
+
Text === ButtonTextFrame ? {
|
|
146
203
|
unstyled
|
|
147
204
|
} : void 0
|
|
148
205
|
);
|
|
@@ -168,6 +225,7 @@ function useButton(propsIn, { Text = ButtonText } = { Text: ButtonText }) {
|
|
|
168
225
|
borderColor: "$background"
|
|
169
226
|
}
|
|
170
227
|
},
|
|
228
|
+
unstyled,
|
|
171
229
|
tag,
|
|
172
230
|
...rest,
|
|
173
231
|
children: isRSC ? inner : /* @__PURE__ */ jsx(ButtonNestingContext.Provider, { value: true, children: inner })
|
|
@@ -181,8 +239,9 @@ function useButton(propsIn, { Text = ButtonText } = { Text: ButtonText }) {
|
|
|
181
239
|
export {
|
|
182
240
|
Button2 as Button,
|
|
183
241
|
ButtonFrame,
|
|
184
|
-
ButtonText,
|
|
242
|
+
ButtonTextFrame as ButtonText,
|
|
185
243
|
buttonStaticConfig,
|
|
244
|
+
createButtonScope,
|
|
186
245
|
useButton
|
|
187
246
|
};
|
|
188
247
|
//# sourceMappingURL=Button.mjs.map
|
package/dist/esm/Button.mjs.map
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Button.tsx"],
|
|
4
|
-
"
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
6
5
|
"names": ["Button"]
|
|
7
6
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Button.test.tsx"],
|
|
4
|
-
"sourcesContent": ["process.env.TAMAGUI_TARGET = 'web'\n\nimport { getDefaultTamaguiConfig } from '@tamagui/config-default'\nimport { TamaguiProvider, createTamagui } from '@tamagui/core'\nimport { render } from '@testing-library/react'\nimport { describe, expect, test } from 'vitest'\n\nimport { Button } from '.'\n\nconst conf = createTamagui(getDefaultTamaguiConfig())\n\ndescribe('Button', () => {\n test(`123`, () => {\n expect(true).toBeTruthy()\n })\n\n // test(`Adapts to a when given accessibilityRole=\"link\"`, async () => {\n // const { container } = render(\n // <TamaguiProvider config={conf} defaultTheme=\"light\">\n // <Button href=\"http://google.com\" accessibilityRole=\"link\" />\n // </TamaguiProvider>\n // )\n\n // expect(container.firstChild).toMatchSnapshot()\n // })\n})\n"],
|
|
5
4
|
"mappings": "AAAA,QAAQ,IAAI,iBAAiB;AAE7B,SAAS,+BAA+B;AACxC,SAA0B,qBAAqB;AAE/C,SAAS,UAAU,QAAQ,YAAY;AAIvC,MAAM,OAAO,cAAc,wBAAwB,CAAC;AAEpD,SAAS,UAAU,MAAM;AACvB,OAAK,OAAO,MAAM;AAChB,WAAO,IAAI,EAAE,WAAW;AAAA,EAC1B,CAAC;AAWH,CAAC;",
|
|
6
5
|
"names": []
|
|
7
6
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Button.test.tsx"],
|
|
4
|
-
"sourcesContent": ["process.env.TAMAGUI_TARGET = 'web'\n\nimport { getDefaultTamaguiConfig } from '@tamagui/config-default'\nimport { TamaguiProvider, createTamagui } from '@tamagui/core'\nimport { render } from '@testing-library/react'\nimport { describe, expect, test } from 'vitest'\n\nimport { Button } from '.'\n\nconst conf = createTamagui(getDefaultTamaguiConfig())\n\ndescribe('Button', () => {\n test(`123`, () => {\n expect(true).toBeTruthy()\n })\n\n // test(`Adapts to a when given accessibilityRole=\"link\"`, async () => {\n // const { container } = render(\n // <TamaguiProvider config={conf} defaultTheme=\"light\">\n // <Button href=\"http://google.com\" accessibilityRole=\"link\" />\n // </TamaguiProvider>\n // )\n\n // expect(container.firstChild).toMatchSnapshot()\n // })\n})\n"],
|
|
5
4
|
"mappings": "AAAA,QAAQ,IAAI,iBAAiB;AAE7B,SAAS,+BAA+B;AACxC,SAA0B,qBAAqB;AAE/C,SAAS,UAAU,QAAQ,YAAY;AAIvC,MAAM,OAAO,cAAc,wBAAwB,CAAC;AAEpD,SAAS,UAAU,MAAM;AACvB,OAAK,OAAO,MAAM;AAChB,WAAO,IAAI,EAAE,WAAW;AAAA,EAC1B,CAAC;AAWH,CAAC;",
|
|
6
5
|
"names": []
|
|
7
6
|
}
|
package/dist/esm/index.js.map
CHANGED