tamagui 1.0.1-beta.39 → 1.0.1-beta.42

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tamagui",
3
- "version": "1.0.1-beta.39",
3
+ "version": "1.0.1-beta.42",
4
4
  "sideEffects": [
5
5
  "*.css",
6
6
  "polyfills.ts"
@@ -28,27 +28,28 @@
28
28
  "@react-native-aria/focus": "^0.2.5",
29
29
  "@react-native-aria/overlays": "^0.3.2",
30
30
  "@react-native-community/blur": "^3.6.0",
31
- "@tamagui/animate-presence": "^1.0.1-beta.39",
32
- "@tamagui/button": "^1.0.1-beta.39",
33
- "@tamagui/card": "^1.0.1-beta.39",
34
- "@tamagui/compose-refs": "^1.0.1-beta.39",
35
- "@tamagui/core": "^1.0.1-beta.39",
36
- "@tamagui/create-context": "^1.0.1-beta.39",
31
+ "@tamagui/animate-presence": "^1.0.1-beta.42",
32
+ "@tamagui/button": "^1.0.1-beta.42",
33
+ "@tamagui/card": "^1.0.1-beta.42",
34
+ "@tamagui/compose-refs": "^1.0.1-beta.42",
35
+ "@tamagui/core": "^1.0.1-beta.42",
36
+ "@tamagui/create-context": "^1.0.1-beta.42",
37
37
  "@tamagui/expo-linear-gradient": "^11.2.8",
38
- "@tamagui/fake-react-native": "^1.0.1-beta.39",
39
- "@tamagui/font-size": "^1.0.1-beta.39",
40
- "@tamagui/helpers": "^1.0.1-beta.39",
41
- "@tamagui/popover": "^1.0.1-beta.39",
42
- "@tamagui/popper": "^1.0.1-beta.39",
43
- "@tamagui/progress": "^1.0.1-beta.39",
44
- "@tamagui/separator": "^1.0.1-beta.39",
45
- "@tamagui/slider": "^1.0.1-beta.39",
46
- "@tamagui/stacks": "^1.0.1-beta.39",
47
- "@tamagui/text": "^1.0.1-beta.39",
48
- "@tamagui/tooltip": "^1.0.1-beta.39",
49
- "@tamagui/use-controllable-state": "^1.0.1-beta.39",
50
- "@tamagui/use-debounce": "^1.0.1-beta.39",
51
- "@tamagui/use-force-update": "^1.0.1-beta.39",
38
+ "@tamagui/fake-react-native": "^1.0.1-beta.42",
39
+ "@tamagui/font-size": "^1.0.1-beta.42",
40
+ "@tamagui/helpers": "^1.0.1-beta.42",
41
+ "@tamagui/popover": "^1.0.1-beta.42",
42
+ "@tamagui/popper": "^1.0.1-beta.42",
43
+ "@tamagui/progress": "^1.0.1-beta.42",
44
+ "@tamagui/select": "^1.0.1-beta.42",
45
+ "@tamagui/separator": "^1.0.1-beta.42",
46
+ "@tamagui/slider": "^1.0.1-beta.42",
47
+ "@tamagui/stacks": "^1.0.1-beta.42",
48
+ "@tamagui/text": "^1.0.1-beta.42",
49
+ "@tamagui/tooltip": "^1.0.1-beta.42",
50
+ "@tamagui/use-controllable-state": "^1.0.1-beta.42",
51
+ "@tamagui/use-debounce": "^1.0.1-beta.42",
52
+ "@tamagui/use-force-update": "^1.0.1-beta.42",
52
53
  "expo-linear-gradient": "~11.0.3",
53
54
  "expo-modules-core": "^0.9.1",
54
55
  "react": "*",
@@ -59,7 +60,7 @@
59
60
  "react-native-web": "*"
60
61
  },
61
62
  "devDependencies": {
62
- "@tamagui/build": "^1.0.1-beta.39",
63
+ "@tamagui/build": "^1.0.1-beta.42",
63
64
  "@types/node": "^16.11.9",
64
65
  "@types/react": "^17.0.35",
65
66
  "react-native-web": "^0.17.5"
@@ -1,71 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var getFontSize_exports = {};
20
- __export(getFontSize_exports, {
21
- getFontSize: () => getFontSize,
22
- getFontSizeToken: () => getFontSizeToken,
23
- getFontSizeVariable: () => getFontSizeVariable
24
- });
25
- module.exports = __toCommonJS(getFontSize_exports);
26
- var import_core = require("@tamagui/core");
27
- const getFontSize = /* @__PURE__ */ __name((inSize, opts) => {
28
- const res = getFontSizeVariable(inSize, opts);
29
- if ((0, import_core.isVariable)(res)) {
30
- return +res.val;
31
- }
32
- return res ? +res : 16;
33
- }, "getFontSize");
34
- const getFontSizeVariable = /* @__PURE__ */ __name((inSize, opts) => {
35
- const token = getFontSizeToken(inSize, opts);
36
- if (!token) {
37
- return inSize;
38
- }
39
- const conf = (0, import_core.getConfig)();
40
- return conf.fontsParsed[(opts == null ? void 0 : opts.font) || "$body"].size[token];
41
- }, "getFontSizeVariable");
42
- const getFontSizeToken = /* @__PURE__ */ __name((inSize, opts) => {
43
- if (typeof inSize === "number") {
44
- return null;
45
- }
46
- const size = inSize || "$4";
47
- const relativeSize = (opts == null ? void 0 : opts.relativeSize) || 0;
48
- const conf = (0, import_core.getConfig)();
49
- const fontSize = conf.fontsParsed[(opts == null ? void 0 : opts.font) || "$body"].size;
50
- const sizeTokens = Object.keys(fontSize);
51
- let foundIndex = sizeTokens.indexOf(size);
52
- if (foundIndex === -1) {
53
- if (size.endsWith(".5")) {
54
- foundIndex = sizeTokens.indexOf(size.replace(".5", ""));
55
- }
56
- }
57
- if (process.env.NODE_ENV === "development") {
58
- if (foundIndex === -1) {
59
- console.warn("No font size found", inSize, opts, "in size tokens", sizeTokens);
60
- }
61
- }
62
- const tokenIndex = Math.min(Math.max(0, foundIndex + relativeSize), sizeTokens.length - 1);
63
- return sizeTokens[tokenIndex] ?? size;
64
- }, "getFontSizeToken");
65
- // Annotate the CommonJS export names for ESM import in node:
66
- 0 && (module.exports = {
67
- getFontSize,
68
- getFontSizeToken,
69
- getFontSizeVariable
70
- });
71
- //# sourceMappingURL=getFontSize.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/helpers/getFontSize.tsx"],
4
- "sourcesContent": ["import { FontSizeTokens, FontTokens, getConfig, getTokens, isVariable } from '@tamagui/core'\n\ntype GetFontSizeOpts = {\n relativeSize?: number\n font?: FontTokens\n}\n\nexport const getFontSize = (\n inSize: FontSizeTokens | null | undefined,\n opts?: GetFontSizeOpts\n): number => {\n const res = getFontSizeVariable(inSize, opts)\n if (isVariable(res)) {\n return +res.val\n }\n return res ? +res : 16\n}\n\nexport const getFontSizeVariable = (\n inSize: FontSizeTokens | null | undefined,\n opts?: GetFontSizeOpts\n) => {\n const token = getFontSizeToken(inSize, opts)\n if (!token) {\n return inSize\n }\n const conf = getConfig()\n return conf.fontsParsed[opts?.font || '$body'].size[token]\n}\n\nexport const getFontSizeToken = (\n inSize: FontSizeTokens | null | undefined,\n opts?: GetFontSizeOpts\n): FontSizeTokens | null => {\n if (typeof inSize === 'number') {\n return null\n }\n const size = inSize || '$4'\n const relativeSize = opts?.relativeSize || 0\n const conf = getConfig()\n const fontSize = conf.fontsParsed[opts?.font || '$body'].size\n const sizeTokens = Object.keys(fontSize)\n let foundIndex = sizeTokens.indexOf(size)\n if (foundIndex === -1) {\n if (size.endsWith('.5')) {\n foundIndex = sizeTokens.indexOf(size.replace('.5', ''))\n }\n }\n if (process.env.NODE_ENV === 'development') {\n if (foundIndex === -1) {\n console.warn('No font size found', inSize, opts, 'in size tokens', sizeTokens)\n }\n }\n const tokenIndex = Math.min(Math.max(0, foundIndex + relativeSize), sizeTokens.length - 1)\n return (sizeTokens[tokenIndex] ?? size) as FontSizeTokens\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA6E;AAOtE,MAAM,cAAc,wBACzB,QACA,SACW;AACX,QAAM,MAAM,oBAAoB,QAAQ,IAAI;AAC5C,MAAI,4BAAW,GAAG,GAAG;AACnB,WAAO,CAAC,IAAI;AAAA,EACd;AACA,SAAO,MAAM,CAAC,MAAM;AACtB,GAT2B;AAWpB,MAAM,sBAAsB,wBACjC,QACA,SACG;AACH,QAAM,QAAQ,iBAAiB,QAAQ,IAAI;AAC3C,MAAI,CAAC,OAAO;AACV,WAAO;AAAA,EACT;AACA,QAAM,OAAO,2BAAU;AACvB,SAAO,KAAK,YAAY,8BAAM,SAAQ,SAAS,KAAK;AACtD,GAVmC;AAY5B,MAAM,mBAAmB,wBAC9B,QACA,SAC0B;AAC1B,MAAI,OAAO,WAAW,UAAU;AAC9B,WAAO;AAAA,EACT;AACA,QAAM,OAAO,UAAU;AACvB,QAAM,eAAe,8BAAM,iBAAgB;AAC3C,QAAM,OAAO,2BAAU;AACvB,QAAM,WAAW,KAAK,YAAY,8BAAM,SAAQ,SAAS;AACzD,QAAM,aAAa,OAAO,KAAK,QAAQ;AACvC,MAAI,aAAa,WAAW,QAAQ,IAAI;AACxC,MAAI,eAAe,IAAI;AACrB,QAAI,KAAK,SAAS,IAAI,GAAG;AACvB,mBAAa,WAAW,QAAQ,KAAK,QAAQ,MAAM,EAAE,CAAC;AAAA,IACxD;AAAA,EACF;AACA,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,QAAI,eAAe,IAAI;AACrB,cAAQ,KAAK,sBAAsB,QAAQ,MAAM,kBAAkB,UAAU;AAAA,IAC/E;AAAA,EACF;AACA,QAAM,aAAa,KAAK,IAAI,KAAK,IAAI,GAAG,aAAa,YAAY,GAAG,WAAW,SAAS,CAAC;AACzF,SAAQ,WAAW,eAAe;AACpC,GAzBgC;",
6
- "names": []
7
- }
@@ -1,241 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __defProps = Object.defineProperties;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
- var __getProtoOf = Object.getPrototypeOf;
9
- var __hasOwnProp = Object.prototype.hasOwnProperty;
10
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
- var __spreadValues = (a, b) => {
13
- for (var prop in b || (b = {}))
14
- if (__hasOwnProp.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- if (__getOwnPropSymbols)
17
- for (var prop of __getOwnPropSymbols(b)) {
18
- if (__propIsEnum.call(b, prop))
19
- __defNormalProp(a, prop, b[prop]);
20
- }
21
- return a;
22
- };
23
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
25
- var __objRest = (source, exclude) => {
26
- var target = {};
27
- for (var prop in source)
28
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
29
- target[prop] = source[prop];
30
- if (source != null && __getOwnPropSymbols)
31
- for (var prop of __getOwnPropSymbols(source)) {
32
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
33
- target[prop] = source[prop];
34
- }
35
- return target;
36
- };
37
- var __export = (target, all) => {
38
- for (var name in all)
39
- __defProp(target, name, { get: all[name], enumerable: true });
40
- };
41
- var __copyProps = (to, from, except, desc) => {
42
- if (from && typeof from === "object" || typeof from === "function") {
43
- for (let key of __getOwnPropNames(from))
44
- if (!__hasOwnProp.call(to, key) && key !== except)
45
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
46
- }
47
- return to;
48
- };
49
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
50
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
51
- var Button_exports = {};
52
- __export(Button_exports, {
53
- Button: () => Button
54
- });
55
- module.exports = __toCommonJS(Button_exports);
56
- var import_core = require("@tamagui/core");
57
- var import_stacks = require("@tamagui/stacks");
58
- var import_text = require("@tamagui/text");
59
- var import_react = __toESM(require("react"));
60
- var import_getFontSize = require("../helpers/getFontSize");
61
- import_react.default["createElement"];
62
- const ButtonFrame = (0, import_core.styled)(import_stacks.SizableStack, {
63
- name: "Button",
64
- tag: "button",
65
- size: "$4",
66
- borderWidth: 0,
67
- borderColor: "$borderColor",
68
- justifyContent: "center",
69
- alignItems: "center",
70
- flexWrap: "nowrap",
71
- hoverable: true,
72
- pressable: true,
73
- cursor: "pointer",
74
- variants: {
75
- active: {
76
- true: {
77
- hoverStyle: {
78
- backgroundColor: "$background"
79
- }
80
- }
81
- },
82
- circular: {
83
- true: (_, extras) => {
84
- const { props } = extras;
85
- const sizeVal = props.size ?? "$4";
86
- const scale = (0, import_core.getSizeScaledToFont)(sizeVal, import_core.buttonScaling, extras);
87
- const size = scale.minHeight;
88
- return {
89
- width: size,
90
- height: size,
91
- maxWidth: size,
92
- maxHeight: size,
93
- minWidth: size,
94
- minHeight: size,
95
- borderRadius: 1e5,
96
- paddingVertical: 0,
97
- paddingHorizontal: 0
98
- };
99
- }
100
- }
101
- }
102
- });
103
- const ButtonComponent = (0, import_react.forwardRef)((props, ref) => {
104
- const _a = props, {
105
- children,
106
- icon,
107
- iconAfter,
108
- noTextWrap,
109
- theme: themeName,
110
- space,
111
- spaceFlex,
112
- scaleIcon = 1,
113
- scaleSpace = 0.5,
114
- color: colorProp,
115
- fontWeight,
116
- letterSpacing,
117
- fontSize,
118
- fontFamily,
119
- textAlign,
120
- textProps
121
- } = _a, rest = __objRest(_a, [
122
- "children",
123
- "icon",
124
- "iconAfter",
125
- "noTextWrap",
126
- "theme",
127
- "space",
128
- "spaceFlex",
129
- "scaleIcon",
130
- "scaleSpace",
131
- "color",
132
- "fontWeight",
133
- "letterSpacing",
134
- "fontSize",
135
- "fontFamily",
136
- "textAlign",
137
- "textProps"
138
- ]);
139
- const isInsideButton = (0, import_react.useContext)(import_core.ButtonInsideButtonContext);
140
- const theme = (0, import_core.useTheme)();
141
- const size = props.size || "$4";
142
- let color;
143
- if (theme && colorProp && colorProp in theme) {
144
- color = theme[colorProp];
145
- } else if (colorProp) {
146
- color = colorProp;
147
- } else {
148
- color = theme == null ? void 0 : theme.color;
149
- }
150
- color = color == null ? void 0 : color.toString();
151
- const iconSize = (0, import_getFontSize.getFontSize)(size) * scaleIcon;
152
- const addTheme = /* @__PURE__ */ __name((el) => {
153
- if ((0, import_react.isValidElement)(el)) {
154
- return el;
155
- }
156
- if (el) {
157
- return import_react.default.createElement(el, {
158
- color,
159
- size: iconSize
160
- });
161
- }
162
- return el;
163
- }, "addTheme");
164
- const themedIcon = icon ? addTheme(icon) : null;
165
- const themedIconAfter = iconAfter ? addTheme(iconAfter) : null;
166
- let contents = children;
167
- if (!noTextWrap && children) {
168
- let concatStringChildren = function() {
169
- if (!lastIsString)
170
- return;
171
- const index = nextChildren.length - 1;
172
- const childrenStrings = nextChildren[index];
173
- nextChildren[index] = /* @__PURE__ */ import_react.default.createElement(import_text.SizableText, __spreadValues(__spreadProps(__spreadValues(__spreadValues({
174
- key: index
175
- }, {
176
- fontWeight,
177
- letterSpacing,
178
- fontSize,
179
- fontFamily,
180
- textAlign,
181
- size
182
- }), colorProp && {
183
- color: colorProp
184
- }), {
185
- flexGrow: 1,
186
- flexShrink: 1,
187
- ellipse: true
188
- }), textProps), childrenStrings);
189
- };
190
- __name(concatStringChildren, "concatStringChildren");
191
- let allChildren = import_react.default.Children.toArray(children);
192
- let nextChildren = [];
193
- let lastIsString = false;
194
- for (const child of allChildren) {
195
- const last = nextChildren[nextChildren.length - 1];
196
- const isString = typeof child === "string";
197
- if (isString) {
198
- if (lastIsString) {
199
- last.push(child);
200
- } else {
201
- nextChildren.push([child]);
202
- }
203
- } else {
204
- concatStringChildren();
205
- nextChildren.push(child);
206
- }
207
- lastIsString = isString;
208
- }
209
- concatStringChildren();
210
- contents = nextChildren;
211
- }
212
- return /* @__PURE__ */ import_react.default.createElement(import_core.ButtonInsideButtonContext.Provider, {
213
- value: true
214
- }, /* @__PURE__ */ import_react.default.createElement(ButtonFrame, __spreadValues(__spreadProps(__spreadValues({
215
- fontFamily
216
- }, isInsideButton && {
217
- tag: "span"
218
- }), {
219
- ref
220
- }), rest), themedIcon || themedIconAfter ? (0, import_core.spacedChildren)({
221
- space: (0, import_core.getVariableValue)(iconSize) * scaleSpace,
222
- spaceFlex,
223
- direction: props.flexDirection || "row",
224
- children: [themedIcon, contents, themedIconAfter]
225
- }) : contents));
226
- });
227
- const Button = ButtonFrame.extractable((0, import_core.themeable)(ButtonComponent), {
228
- inlineProps: /* @__PURE__ */ new Set([
229
- "color",
230
- "fontWeight",
231
- "fontSize",
232
- "fontFamily",
233
- "letterSpacing",
234
- "textAlign"
235
- ])
236
- });
237
- // Annotate the CommonJS export names for ESM import in node:
238
- 0 && (module.exports = {
239
- Button
240
- });
241
- //# sourceMappingURL=Button.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/views/Button.tsx"],
4
- "sourcesContent": ["import {\n ButtonInsideButtonContext,\n GetProps,\n ReactComponentWithRef,\n SizeTokens,\n ThemeableProps,\n buttonScaling,\n getButtonSize,\n getSizeScaledToFont,\n getVariableValue,\n spacedChildren,\n styled,\n themeable,\n useTheme,\n} from '@tamagui/core'\nimport { SizableStack } from '@tamagui/stacks'\nimport { SizableText, SizableTextProps } from '@tamagui/text'\nimport React, { FunctionComponent, forwardRef, isValidElement, useContext } from 'react'\nimport { View } from 'react-native'\n\nimport { getFontSize } from '../helpers/getFontSize'\n\n// bugfix esbuild strips react jsx: 'preserve'\nReact['createElement']\n\ntype ButtonIconProps = { color?: string; size?: number }\ntype IconProp = JSX.Element | FunctionComponent<ButtonIconProps> | null\n\nexport type ButtonProps = GetProps<typeof ButtonFrame> &\n ThemeableProps & {\n // add icon before, passes color and size automatically if Component\n icon?: IconProp\n // add icon after, passes color and size automatically if Component\n iconAfter?: IconProp\n // adjust icon relative to size\n // default: -1\n scaleIcon?: number\n // dont wrap inner contents in a text element\n noTextWrap?: boolean\n // make the spacing elements flex\n spaceFlex?: number | boolean\n // adjust internal space relative to icon size\n scaleSpace?: number\n\n // pass text properties:\n color?: SizableTextProps['color']\n fontWeight?: SizableTextProps['fontWeight']\n fontSize?: SizableTextProps['fontSize']\n fontFamily?: SizableTextProps['fontFamily']\n letterSpacing?: SizableTextProps['letterSpacing']\n textAlign?: SizableTextProps['textAlign']\n\n // all the other text controls\n textProps?: Partial<SizableTextProps>\n }\n\nconst ButtonFrame = styled(SizableStack, {\n name: 'Button',\n tag: 'button',\n size: '$4',\n borderWidth: 0,\n borderColor: '$borderColor',\n justifyContent: 'center',\n alignItems: 'center',\n flexWrap: 'nowrap',\n hoverable: true,\n pressable: true,\n\n // TODO only on hoverable/pressable!\n // would need to merge variants\n cursor: 'pointer',\n\n variants: {\n active: {\n true: {\n hoverStyle: {\n backgroundColor: '$background',\n },\n },\n },\n\n circular: {\n true: (_, extras) => {\n const { props } = extras\n const sizeVal = props.size ?? '$4'\n const scale = getSizeScaledToFont(sizeVal, buttonScaling, extras)\n const size = scale.minHeight\n return {\n width: size,\n height: size,\n maxWidth: size,\n maxHeight: size,\n minWidth: size,\n minHeight: size,\n borderRadius: 100_000,\n paddingVertical: 0,\n paddingHorizontal: 0,\n }\n },\n },\n },\n})\n\nconst ButtonComponent = forwardRef((props: ButtonProps, ref) => {\n // careful not to desctructure and re-order props, order is important\n const {\n children,\n icon,\n iconAfter,\n noTextWrap,\n theme: themeName,\n space,\n spaceFlex,\n scaleIcon = 1,\n scaleSpace = 0.5,\n\n // text props\n color: colorProp,\n fontWeight,\n letterSpacing,\n fontSize,\n fontFamily,\n textAlign,\n textProps,\n ...rest\n } = props as ButtonProps\n\n const isInsideButton = useContext(ButtonInsideButtonContext)\n const theme = useTheme()\n const size = props.size || '$4'\n\n // get color from prop or theme\n let color: any\n // @ts-expect-error\n if (theme && colorProp && colorProp in theme) {\n // @ts-expect-error\n color = theme[colorProp]\n } else if (colorProp) {\n color = colorProp\n } else {\n color = theme?.color\n }\n color = color?.toString()\n\n const iconSize = getFontSize(size) * scaleIcon\n\n const addTheme = (el: any) => {\n if (isValidElement(el)) {\n return el\n }\n if (el) {\n return React.createElement(el, {\n color,\n size: iconSize,\n })\n }\n return el\n }\n const themedIcon = icon ? addTheme(icon) : null\n const themedIconAfter = iconAfter ? addTheme(iconAfter) : null\n\n let contents = children\n\n if (!noTextWrap && children) {\n // in the case of using variables, like so:\n // <Button>Hello, {name}</Button>\n // it gives us props.children as ['Hello, ', 'name']\n // but we don't want to wrap multiple SizableText around each part\n // so we group them\n let allChildren = React.Children.toArray(children)\n let nextChildren: any[] = []\n let lastIsString = false\n\n function concatStringChildren() {\n if (!lastIsString) return\n const index = nextChildren.length - 1\n const childrenStrings = nextChildren[index]\n nextChildren[index] = (\n <SizableText\n key={index}\n {...{\n fontWeight,\n letterSpacing,\n fontSize,\n fontFamily,\n textAlign,\n size,\n }}\n {...(colorProp && {\n color: colorProp,\n })}\n flexGrow={1}\n flexShrink={1}\n ellipse\n {...textProps}\n >\n {childrenStrings}\n </SizableText>\n )\n }\n\n for (const child of allChildren) {\n const last = nextChildren[nextChildren.length - 1]\n const isString = typeof child === 'string'\n if (isString) {\n if (lastIsString) {\n last.push(child)\n } else {\n nextChildren.push([child])\n }\n } else {\n concatStringChildren()\n nextChildren.push(child)\n }\n lastIsString = isString\n }\n concatStringChildren()\n\n contents = nextChildren\n }\n\n return (\n // careful not to desctructure and re-order props, order is important\n <ButtonInsideButtonContext.Provider value={true}>\n <ButtonFrame\n fontFamily={fontFamily}\n // fixes SSR issue + DOM nesting issue of not allowing button in button\n {...(isInsideButton && {\n tag: 'span',\n })}\n ref={ref as any}\n {...rest}\n >\n {themedIcon || themedIconAfter\n ? spacedChildren({\n // a bit arbitrary but scaling to font size is necessary so long as button does\n space: getVariableValue(iconSize) * scaleSpace,\n spaceFlex,\n direction: props.flexDirection || 'row',\n children: [themedIcon, contents, themedIconAfter],\n })\n : contents}\n </ButtonFrame>\n </ButtonInsideButtonContext.Provider>\n )\n})\n\nexport const Button: ReactComponentWithRef<ButtonProps, HTMLButtonElement | View> =\n ButtonFrame.extractable(themeable(ButtonComponent as any) as any, {\n inlineProps: new Set([\n // text props go here (can't really optimize them, but we never fully extract button anyway)\n 'color',\n 'fontWeight',\n 'fontSize',\n 'fontFamily',\n 'letterSpacing',\n 'textAlign',\n ]),\n })\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,69 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
- var __spreadValues = (a, b) => {
11
- for (var prop in b || (b = {}))
12
- if (__hasOwnProp.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- if (__getOwnPropSymbols)
15
- for (var prop of __getOwnPropSymbols(b)) {
16
- if (__propIsEnum.call(b, prop))
17
- __defNormalProp(a, prop, b[prop]);
18
- }
19
- return a;
20
- };
21
- var __export = (target, all) => {
22
- for (var name in all)
23
- __defProp(target, name, { get: all[name], enumerable: true });
24
- };
25
- var __copyProps = (to, from, except, desc) => {
26
- if (from && typeof from === "object" || typeof from === "function") {
27
- for (let key of __getOwnPropNames(from))
28
- if (!__hasOwnProp.call(to, key) && key !== except)
29
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
30
- }
31
- return to;
32
- };
33
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
34
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
35
- var Card_exports = {};
36
- __export(Card_exports, {
37
- Card: () => Card
38
- });
39
- module.exports = __toCommonJS(Card_exports);
40
- var import_core = require("@tamagui/core");
41
- var import_stacks = require("@tamagui/stacks");
42
- var import_react = __toESM(require("react"));
43
- import_react.default["createElement"];
44
- const getCardSize = (0, import_core.createGetStackSize)({ sizeX: 1, sizeY: 0.9 });
45
- const Card = (0, import_core.styled)(import_stacks.SizableStack, {
46
- name: "Card",
47
- alignItems: "flex-start",
48
- flexDirection: "column",
49
- backgroundColor: "$background",
50
- overflow: "hidden",
51
- variants: {
52
- size: {
53
- "...size": (size, extras) => {
54
- const { tokens } = extras;
55
- const token = tokens.size[size];
56
- const sizeNum = (0, import_core.isVariable)(token) ? +token.val : size;
57
- return __spreadValues(__spreadValues({}, getCardSize(size, extras)), (0, import_stacks.getSizedElevation)(sizeNum, extras));
58
- }
59
- }
60
- },
61
- defaultVariants: {
62
- size: "$4"
63
- }
64
- });
65
- // Annotate the CommonJS export names for ESM import in node:
66
- 0 && (module.exports = {
67
- Card
68
- });
69
- //# sourceMappingURL=Card.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/views/Card.tsx"],
4
- "sourcesContent": ["import { GetProps, createGetStackSize, isVariable, styled } from '@tamagui/core'\nimport { SizableStack, getSizedElevation } from '@tamagui/stacks'\nimport React from 'react'\n\n// bugfix esbuild strips react jsx: 'preserve'\nReact['createElement']\n\nconst getCardSize = createGetStackSize({ sizeX: 1, sizeY: 0.9 })\n\nexport const Card = styled(SizableStack, {\n name: 'Card',\n alignItems: 'flex-start',\n flexDirection: 'column',\n backgroundColor: '$background',\n overflow: 'hidden',\n\n variants: {\n size: {\n '...size': (size, extras) => {\n const { tokens } = extras\n const token = tokens.size[size]\n const sizeNum = isVariable(token) ? +token.val : size\n return {\n ...getCardSize(size, extras),\n ...getSizedElevation(sizeNum, extras),\n }\n },\n },\n },\n\n defaultVariants: {\n size: '$4',\n },\n})\n\nexport type CardProps = GetProps<typeof Card>\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAiE;AACjE,oBAAgD;AAChD,mBAAkB;AAGlB,qBAAM;AAEN,MAAM,cAAc,oCAAmB,EAAE,OAAO,GAAG,OAAO,IAAI,CAAC;AAExD,MAAM,OAAO,wBAAO,4BAAc;AAAA,EACvC,MAAM;AAAA,EACN,YAAY;AAAA,EACZ,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,UAAU;AAAA,EAEV,UAAU;AAAA,IACR,MAAM;AAAA,MACJ,WAAW,CAAC,MAAM,WAAW;AAC3B,cAAM,EAAE,WAAW;AACnB,cAAM,QAAQ,OAAO,KAAK;AAC1B,cAAM,UAAU,4BAAW,KAAK,IAAI,CAAC,MAAM,MAAM;AACjD,eAAO,kCACF,YAAY,MAAM,MAAM,IACxB,qCAAkB,SAAS,MAAM;AAAA,MAExC;AAAA,IACF;AAAA,EACF;AAAA,EAEA,iBAAiB;AAAA,IACf,MAAM;AAAA,EACR;AACF,CAAC;",
6
- "names": []
7
- }
@@ -1,39 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
- var InteractiveContainer_exports = {};
19
- __export(InteractiveContainer_exports, {
20
- InteractiveContainer: () => InteractiveContainer
21
- });
22
- module.exports = __toCommonJS(InteractiveContainer_exports);
23
- var import_core = require("@tamagui/core");
24
- const InteractiveContainer = (0, import_core.styled)(import_core.Stack, {
25
- flexDirection: "row",
26
- borderWidth: 1,
27
- y: 0,
28
- borderColor: "$borderColor",
29
- overflow: "hidden",
30
- borderRadius: "$3",
31
- hoverStyle: {
32
- borderColor: "$borderColorHover"
33
- }
34
- });
35
- // Annotate the CommonJS export names for ESM import in node:
36
- 0 && (module.exports = {
37
- InteractiveContainer
38
- });
39
- //# sourceMappingURL=InteractiveContainer.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/views/InteractiveContainer.tsx"],
4
- "sourcesContent": ["import { Stack, styled } from '@tamagui/core'\n\nexport const InteractiveContainer = styled(Stack, {\n flexDirection: 'row',\n borderWidth: 1,\n y: 0,\n borderColor: '$borderColor',\n overflow: 'hidden',\n borderRadius: '$3',\n hoverStyle: {\n borderColor: '$borderColorHover',\n },\n})\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA8B;AAEvB,MAAM,uBAAuB,wBAAO,mBAAO;AAAA,EAChD,eAAe;AAAA,EACf,aAAa;AAAA,EACb,GAAG;AAAA,EACH,aAAa;AAAA,EACb,UAAU;AAAA,EACV,cAAc;AAAA,EACd,YAAY;AAAA,IACV,aAAa;AAAA,EACf;AACF,CAAC;",
6
- "names": []
7
- }
@@ -1,48 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
- import { getConfig, isVariable } from "@tamagui/core";
4
- const getFontSize = /* @__PURE__ */ __name((inSize, opts) => {
5
- const res = getFontSizeVariable(inSize, opts);
6
- if (isVariable(res)) {
7
- return +res.val;
8
- }
9
- return res ? +res : 16;
10
- }, "getFontSize");
11
- const getFontSizeVariable = /* @__PURE__ */ __name((inSize, opts) => {
12
- const token = getFontSizeToken(inSize, opts);
13
- if (!token) {
14
- return inSize;
15
- }
16
- const conf = getConfig();
17
- return conf.fontsParsed[(opts == null ? void 0 : opts.font) || "$body"].size[token];
18
- }, "getFontSizeVariable");
19
- const getFontSizeToken = /* @__PURE__ */ __name((inSize, opts) => {
20
- var _a;
21
- if (typeof inSize === "number") {
22
- return null;
23
- }
24
- const size = inSize || "$4";
25
- const relativeSize = (opts == null ? void 0 : opts.relativeSize) || 0;
26
- const conf = getConfig();
27
- const fontSize = conf.fontsParsed[(opts == null ? void 0 : opts.font) || "$body"].size;
28
- const sizeTokens = Object.keys(fontSize);
29
- let foundIndex = sizeTokens.indexOf(size);
30
- if (foundIndex === -1) {
31
- if (size.endsWith(".5")) {
32
- foundIndex = sizeTokens.indexOf(size.replace(".5", ""));
33
- }
34
- }
35
- if (process.env.NODE_ENV === "development") {
36
- if (foundIndex === -1) {
37
- console.warn("No font size found", inSize, opts, "in size tokens", sizeTokens);
38
- }
39
- }
40
- const tokenIndex = Math.min(Math.max(0, foundIndex + relativeSize), sizeTokens.length - 1);
41
- return (_a = sizeTokens[tokenIndex]) != null ? _a : size;
42
- }, "getFontSizeToken");
43
- export {
44
- getFontSize,
45
- getFontSizeToken,
46
- getFontSizeVariable
47
- };
48
- //# sourceMappingURL=getFontSize.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/helpers/getFontSize.tsx"],
4
- "sourcesContent": ["import { FontSizeTokens, FontTokens, getConfig, getTokens, isVariable } from '@tamagui/core'\n\ntype GetFontSizeOpts = {\n relativeSize?: number\n font?: FontTokens\n}\n\nexport const getFontSize = (\n inSize: FontSizeTokens | null | undefined,\n opts?: GetFontSizeOpts\n): number => {\n const res = getFontSizeVariable(inSize, opts)\n if (isVariable(res)) {\n return +res.val\n }\n return res ? +res : 16\n}\n\nexport const getFontSizeVariable = (\n inSize: FontSizeTokens | null | undefined,\n opts?: GetFontSizeOpts\n) => {\n const token = getFontSizeToken(inSize, opts)\n if (!token) {\n return inSize\n }\n const conf = getConfig()\n return conf.fontsParsed[opts?.font || '$body'].size[token]\n}\n\nexport const getFontSizeToken = (\n inSize: FontSizeTokens | null | undefined,\n opts?: GetFontSizeOpts\n): FontSizeTokens | null => {\n if (typeof inSize === 'number') {\n return null\n }\n const size = inSize || '$4'\n const relativeSize = opts?.relativeSize || 0\n const conf = getConfig()\n const fontSize = conf.fontsParsed[opts?.font || '$body'].size\n const sizeTokens = Object.keys(fontSize)\n let foundIndex = sizeTokens.indexOf(size)\n if (foundIndex === -1) {\n if (size.endsWith('.5')) {\n foundIndex = sizeTokens.indexOf(size.replace('.5', ''))\n }\n }\n if (process.env.NODE_ENV === 'development') {\n if (foundIndex === -1) {\n console.warn('No font size found', inSize, opts, 'in size tokens', sizeTokens)\n }\n }\n const tokenIndex = Math.min(Math.max(0, foundIndex + relativeSize), sizeTokens.length - 1)\n return (sizeTokens[tokenIndex] ?? size) as FontSizeTokens\n}\n"],
5
- "mappings": ";;AAAA;AAOO,MAAM,cAAc,wBACzB,QACA,SACW;AACX,QAAM,MAAM,oBAAoB,QAAQ,IAAI;AAC5C,MAAI,WAAW,GAAG,GAAG;AACnB,WAAO,CAAC,IAAI;AAAA,EACd;AACA,SAAO,MAAM,CAAC,MAAM;AACtB,GAT2B;AAWpB,MAAM,sBAAsB,wBACjC,QACA,SACG;AACH,QAAM,QAAQ,iBAAiB,QAAQ,IAAI;AAC3C,MAAI,CAAC,OAAO;AACV,WAAO;AAAA,EACT;AACA,QAAM,OAAO,UAAU;AACvB,SAAO,KAAK,YAAY,8BAAM,SAAQ,SAAS,KAAK;AACtD,GAVmC;AAY5B,MAAM,mBAAmB,wBAC9B,QACA,SAC0B;AAjC5B;AAkCE,MAAI,OAAO,WAAW,UAAU;AAC9B,WAAO;AAAA,EACT;AACA,QAAM,OAAO,UAAU;AACvB,QAAM,eAAe,8BAAM,iBAAgB;AAC3C,QAAM,OAAO,UAAU;AACvB,QAAM,WAAW,KAAK,YAAY,8BAAM,SAAQ,SAAS;AACzD,QAAM,aAAa,OAAO,KAAK,QAAQ;AACvC,MAAI,aAAa,WAAW,QAAQ,IAAI;AACxC,MAAI,eAAe,IAAI;AACrB,QAAI,KAAK,SAAS,IAAI,GAAG;AACvB,mBAAa,WAAW,QAAQ,KAAK,QAAQ,MAAM,EAAE,CAAC;AAAA,IACxD;AAAA,EACF;AACA,MAAI,QAAQ,IAAI,aAAa,eAAe;AAC1C,QAAI,eAAe,IAAI;AACrB,cAAQ,KAAK,sBAAsB,QAAQ,MAAM,kBAAkB,UAAU;AAAA,IAC/E;AAAA,EACF;AACA,QAAM,aAAa,KAAK,IAAI,KAAK,IAAI,GAAG,aAAa,YAAY,GAAG,WAAW,SAAS,CAAC;AACzF,SAAQ,iBAAW,gBAAX,YAA0B;AACpC,GAzBgC;",
6
- "names": []
7
- }