@tamagui/input 2.0.0-rc.8 → 2.0.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.
- package/dist/cjs/Input.cjs +165 -153
- package/dist/cjs/Input.native.js +255 -257
- package/dist/cjs/Input.native.js.map +1 -1
- package/dist/cjs/InputNativeProps.cjs +7 -5
- package/dist/cjs/InputNativeProps.native.js +7 -5
- package/dist/cjs/InputNativeProps.native.js.map +1 -1
- package/dist/cjs/TextArea.cjs +15 -13
- package/dist/cjs/TextArea.native.js +34 -32
- package/dist/cjs/TextArea.native.js.map +1 -1
- package/dist/cjs/index.cjs +13 -11
- package/dist/cjs/index.native.js +13 -11
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/inputTypes.test-d.cjs +125 -0
- package/dist/cjs/inputTypes.test-d.native.js +128 -0
- package/dist/cjs/inputTypes.test-d.native.js.map +1 -0
- package/dist/cjs/shared.cjs +119 -101
- package/dist/cjs/shared.native.js +125 -107
- package/dist/cjs/shared.native.js.map +1 -1
- package/dist/cjs/types.cjs +7 -5
- package/dist/cjs/types.native.js +7 -5
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/v1/Input.cjs +177 -170
- package/dist/cjs/v1/Input.native.js +154 -112
- package/dist/cjs/v1/Input.native.js.map +1 -1
- package/dist/cjs/v1/TextArea.cjs +15 -13
- package/dist/cjs/v1/TextArea.native.js +34 -32
- package/dist/cjs/v1/TextArea.native.js.map +1 -1
- package/dist/cjs/v1/index.cjs +7 -5
- package/dist/cjs/v1/index.native.js +7 -5
- package/dist/cjs/v1/index.native.js.map +1 -1
- package/dist/cjs/v1/types.cjs +7 -5
- package/dist/cjs/v1/types.native.js +7 -5
- package/dist/cjs/v1/types.native.js.map +1 -1
- package/dist/esm/Input.mjs +134 -124
- package/dist/esm/Input.mjs.map +1 -1
- package/dist/esm/Input.native.js +225 -229
- package/dist/esm/Input.native.js.map +1 -1
- package/dist/esm/TextArea.mjs.map +1 -1
- package/dist/esm/TextArea.native.js.map +1 -1
- package/dist/esm/index.js +4 -7
- package/dist/esm/index.js.map +1 -6
- package/dist/esm/inputTypes.test-d.mjs +126 -0
- package/dist/esm/inputTypes.test-d.mjs.map +1 -0
- package/dist/esm/inputTypes.test-d.native.js +126 -0
- package/dist/esm/inputTypes.test-d.native.js.map +1 -0
- package/dist/esm/shared.mjs +102 -86
- package/dist/esm/shared.mjs.map +1 -1
- package/dist/esm/shared.native.js +107 -91
- package/dist/esm/shared.native.js.map +1 -1
- package/dist/esm/v1/Input.mjs +146 -141
- package/dist/esm/v1/Input.mjs.map +1 -1
- package/dist/esm/v1/Input.native.js +123 -83
- package/dist/esm/v1/Input.native.js.map +1 -1
- package/dist/jsx/Input.mjs +134 -124
- package/dist/jsx/Input.mjs.map +1 -1
- package/dist/jsx/Input.native.js +255 -257
- package/dist/jsx/Input.native.js.map +1 -1
- package/dist/jsx/InputNativeProps.native.js +7 -5
- package/dist/jsx/TextArea.mjs.map +1 -1
- package/dist/jsx/TextArea.native.js +34 -32
- package/dist/jsx/TextArea.native.js.map +1 -1
- package/dist/jsx/index.js +4 -7
- package/dist/jsx/index.js.map +1 -6
- package/dist/jsx/index.native.js +13 -11
- package/dist/jsx/inputTypes.test-d.mjs +126 -0
- package/dist/jsx/inputTypes.test-d.mjs.map +1 -0
- package/dist/jsx/inputTypes.test-d.native.js +128 -0
- package/dist/jsx/inputTypes.test-d.native.js.map +1 -0
- package/dist/jsx/shared.mjs +102 -86
- package/dist/jsx/shared.mjs.map +1 -1
- package/dist/jsx/shared.native.js +125 -107
- package/dist/jsx/shared.native.js.map +1 -1
- package/dist/jsx/types.native.js +7 -5
- package/dist/jsx/v1/Input.mjs +146 -141
- package/dist/jsx/v1/Input.mjs.map +1 -1
- package/dist/jsx/v1/Input.native.js +154 -112
- package/dist/jsx/v1/Input.native.js.map +1 -1
- package/dist/jsx/v1/TextArea.native.js +34 -32
- package/dist/jsx/v1/TextArea.native.js.map +1 -1
- package/dist/jsx/v1/index.native.js +7 -5
- package/dist/jsx/v1/types.native.js +7 -5
- package/package.json +21 -24
- package/src/Input.native.tsx +3 -30
- package/src/Input.tsx +7 -5
- package/src/TextArea.tsx +3 -3
- package/src/index.ts +1 -1
- package/src/inputTypes.test-d.ts +237 -0
- package/src/shared.tsx +9 -0
- package/src/types.ts +24 -14
- package/src/v1/Input.tsx +4 -4
- package/types/Input.d.ts +17 -6
- package/types/Input.d.ts.map +1 -1
- package/types/Input.native.d.ts +15 -6
- package/types/Input.native.d.ts.map +1 -1
- package/types/TextArea.d.ts +11 -4
- package/types/TextArea.d.ts.map +1 -1
- package/types/index.d.ts +1 -1
- package/types/index.d.ts.map +1 -1
- package/types/shared.d.ts +8 -0
- package/types/shared.d.ts.map +1 -1
- package/types/types.d.ts +14 -4
- package/types/types.d.ts.map +1 -1
- package/types/v1/Input.d.ts +15 -6
- package/types/v1/Input.d.ts.map +1 -1
- package/types/v1/Input.native.d.ts +15 -6
- package/types/v1/Input.native.d.ts.map +1 -1
- package/types/v1/TextArea.d.ts +9 -3
- package/types/v1/TextArea.d.ts.map +1 -1
- package/dist/cjs/Input.js +0 -143
- package/dist/cjs/Input.js.map +0 -6
- package/dist/cjs/InputNativeProps.js +0 -14
- package/dist/cjs/InputNativeProps.js.map +0 -6
- package/dist/cjs/TextArea.js +0 -43
- package/dist/cjs/TextArea.js.map +0 -6
- package/dist/cjs/index.js +0 -24
- package/dist/cjs/index.js.map +0 -6
- package/dist/cjs/shared.js +0 -108
- package/dist/cjs/shared.js.map +0 -6
- package/dist/cjs/types.js +0 -14
- package/dist/cjs/types.js.map +0 -6
- package/dist/cjs/v1/Input.js +0 -171
- package/dist/cjs/v1/Input.js.map +0 -6
- package/dist/cjs/v1/TextArea.js +0 -43
- package/dist/cjs/v1/TextArea.js.map +0 -6
- package/dist/cjs/v1/index.js +0 -16
- package/dist/cjs/v1/index.js.map +0 -6
- package/dist/cjs/v1/types.js +0 -14
- package/dist/cjs/v1/types.js.map +0 -6
- package/dist/esm/Input.js +0 -124
- package/dist/esm/Input.js.map +0 -6
- package/dist/esm/InputNativeProps.js +0 -1
- package/dist/esm/InputNativeProps.js.map +0 -6
- package/dist/esm/TextArea.js +0 -29
- package/dist/esm/TextArea.js.map +0 -6
- package/dist/esm/shared.js +0 -96
- package/dist/esm/shared.js.map +0 -6
- package/dist/esm/types.js +0 -1
- package/dist/esm/types.js.map +0 -6
- package/dist/esm/v1/Input.js +0 -152
- package/dist/esm/v1/Input.js.map +0 -6
- package/dist/esm/v1/TextArea.js +0 -29
- package/dist/esm/v1/TextArea.js.map +0 -6
- package/dist/esm/v1/index.js +0 -3
- package/dist/esm/v1/index.js.map +0 -6
- package/dist/esm/v1/types.js +0 -1
- package/dist/esm/v1/types.js.map +0 -6
- package/dist/jsx/Input.js +0 -124
- package/dist/jsx/Input.js.map +0 -6
- package/dist/jsx/InputNativeProps.js +0 -1
- package/dist/jsx/InputNativeProps.js.map +0 -6
- package/dist/jsx/TextArea.js +0 -29
- package/dist/jsx/TextArea.js.map +0 -6
- package/dist/jsx/shared.js +0 -96
- package/dist/jsx/shared.js.map +0 -6
- package/dist/jsx/types.js +0 -1
- package/dist/jsx/types.js.map +0 -6
- package/dist/jsx/v1/Input.js +0 -152
- package/dist/jsx/v1/Input.js.map +0 -6
- package/dist/jsx/v1/TextArea.js +0 -29
- package/dist/jsx/v1/TextArea.js.map +0 -6
- package/dist/jsx/v1/index.js +0 -3
- package/dist/jsx/v1/index.js.map +0 -6
- package/dist/jsx/v1/types.js +0 -1
- package/dist/jsx/v1/types.js.map +0 -6
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { expectTypeOf, describe, test } from "vitest";
|
|
2
|
+
describe("Input event handler types", () => {
|
|
3
|
+
test("onChange event uses HTMLInputElement", () => {
|
|
4
|
+
expectTypeOf().toMatchTypeOf();
|
|
5
|
+
});
|
|
6
|
+
test("onFocus event uses HTMLInputElement", () => {
|
|
7
|
+
expectTypeOf().toMatchTypeOf();
|
|
8
|
+
});
|
|
9
|
+
test("onBlur event uses HTMLInputElement", () => {
|
|
10
|
+
expectTypeOf().toMatchTypeOf();
|
|
11
|
+
});
|
|
12
|
+
test("onKeyDown event uses HTMLInputElement", () => {
|
|
13
|
+
expectTypeOf().toMatchTypeOf();
|
|
14
|
+
});
|
|
15
|
+
test("onClick event uses HTMLInputElement", () => {
|
|
16
|
+
expectTypeOf().toMatchTypeOf();
|
|
17
|
+
});
|
|
18
|
+
test("onChange event is NOT typed with HTMLDivElement", () => {
|
|
19
|
+
expectTypeOf().toEqualTypeOf();
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
describe("Input HTML props", () => {
|
|
23
|
+
test("accepts type prop", () => {
|
|
24
|
+
expectTypeOf().toHaveProperty("type");
|
|
25
|
+
});
|
|
26
|
+
test("accepts placeholder prop", () => {
|
|
27
|
+
expectTypeOf().toHaveProperty("placeholder");
|
|
28
|
+
});
|
|
29
|
+
test("accepts value prop", () => {
|
|
30
|
+
expectTypeOf().toHaveProperty("value");
|
|
31
|
+
});
|
|
32
|
+
test("accepts defaultValue prop", () => {
|
|
33
|
+
expectTypeOf().toHaveProperty("defaultValue");
|
|
34
|
+
});
|
|
35
|
+
test("accepts maxLength prop", () => {
|
|
36
|
+
expectTypeOf().toHaveProperty("maxLength");
|
|
37
|
+
});
|
|
38
|
+
test("accepts pattern prop", () => {
|
|
39
|
+
expectTypeOf().toHaveProperty("pattern");
|
|
40
|
+
});
|
|
41
|
+
test("accepts required prop", () => {
|
|
42
|
+
expectTypeOf().toHaveProperty("required");
|
|
43
|
+
});
|
|
44
|
+
test("accepts readOnly prop", () => {
|
|
45
|
+
expectTypeOf().toHaveProperty("readOnly");
|
|
46
|
+
});
|
|
47
|
+
test("accepts autoComplete prop", () => {
|
|
48
|
+
expectTypeOf().toHaveProperty("autoComplete");
|
|
49
|
+
});
|
|
50
|
+
test("accepts name prop", () => {
|
|
51
|
+
expectTypeOf().toHaveProperty("name");
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
describe("Input style props", () => {
|
|
55
|
+
test("accepts padding style prop", () => {
|
|
56
|
+
expectTypeOf().toHaveProperty("padding");
|
|
57
|
+
});
|
|
58
|
+
test("accepts backgroundColor style prop", () => {
|
|
59
|
+
expectTypeOf().toHaveProperty("backgroundColor");
|
|
60
|
+
});
|
|
61
|
+
test("accepts borderRadius style prop", () => {
|
|
62
|
+
expectTypeOf().toHaveProperty("borderRadius");
|
|
63
|
+
});
|
|
64
|
+
test("accepts text style props", () => {
|
|
65
|
+
expectTypeOf().toHaveProperty("fontSize");
|
|
66
|
+
expectTypeOf().toHaveProperty("fontWeight");
|
|
67
|
+
expectTypeOf().toHaveProperty("color");
|
|
68
|
+
});
|
|
69
|
+
test("accepts size variant", () => {
|
|
70
|
+
expectTypeOf().toHaveProperty("size");
|
|
71
|
+
});
|
|
72
|
+
test("accepts unstyled variant", () => {
|
|
73
|
+
expectTypeOf().toHaveProperty("unstyled");
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
describe("Input cross-platform props", () => {
|
|
77
|
+
test("autoCorrect accepts boolean and string", () => {
|
|
78
|
+
expectTypeOf().toMatchTypeOf();
|
|
79
|
+
});
|
|
80
|
+
test("autoCapitalize accepts native and web values", () => {
|
|
81
|
+
expectTypeOf().toMatchTypeOf();
|
|
82
|
+
});
|
|
83
|
+
test("accepts onChangeText callback", () => {
|
|
84
|
+
expectTypeOf().toHaveProperty("onChangeText");
|
|
85
|
+
expectTypeOf().toMatchTypeOf();
|
|
86
|
+
});
|
|
87
|
+
test("accepts onSubmitEditing callback", () => {
|
|
88
|
+
expectTypeOf().toHaveProperty("onSubmitEditing");
|
|
89
|
+
});
|
|
90
|
+
test("accepts placeholderTextColor", () => {
|
|
91
|
+
expectTypeOf().toHaveProperty("placeholderTextColor");
|
|
92
|
+
});
|
|
93
|
+
test("accepts selection prop", () => {
|
|
94
|
+
expectTypeOf().toHaveProperty("selection");
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
describe("InputRef type", () => {
|
|
98
|
+
test("InputRef accepts TextInput", () => {
|
|
99
|
+
const _ref = {};
|
|
100
|
+
});
|
|
101
|
+
test("InputRef rejects plain HTMLDivElement", () => {
|
|
102
|
+
const _ref = {};
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
describe("TextArea types", () => {
|
|
106
|
+
test("TextArea has rows prop", () => {
|
|
107
|
+
expectTypeOf().toHaveProperty("rows");
|
|
108
|
+
});
|
|
109
|
+
test("TextArea accepts style props", () => {
|
|
110
|
+
expectTypeOf().toHaveProperty("padding");
|
|
111
|
+
expectTypeOf().toHaveProperty("fontSize");
|
|
112
|
+
});
|
|
113
|
+
test("TextArea accepts HTML input props", () => {
|
|
114
|
+
expectTypeOf().toHaveProperty("placeholder");
|
|
115
|
+
expectTypeOf().toHaveProperty("value");
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
describe("InputProps derivation", () => {
|
|
119
|
+
test("InputProps equals GetProps<typeof Input>", () => {
|
|
120
|
+
expectTypeOf().toEqualTypeOf();
|
|
121
|
+
});
|
|
122
|
+
test("TextAreaProps equals GetProps<typeof TextArea>", () => {
|
|
123
|
+
expectTypeOf().toEqualTypeOf();
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
//# sourceMappingURL=inputTypes.test-d.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["expectTypeOf","describe","test","toMatchTypeOf","toEqualTypeOf","toHaveProperty","_ref"],"sources":["../../src/inputTypes.test-d.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { expectTypeOf, describe, test } from "vitest";
|
|
2
|
+
describe("Input event handler types", function () {
|
|
3
|
+
test("onChange event uses HTMLInputElement", function () {
|
|
4
|
+
expectTypeOf().toMatchTypeOf();
|
|
5
|
+
});
|
|
6
|
+
test("onFocus event uses HTMLInputElement", function () {
|
|
7
|
+
expectTypeOf().toMatchTypeOf();
|
|
8
|
+
});
|
|
9
|
+
test("onBlur event uses HTMLInputElement", function () {
|
|
10
|
+
expectTypeOf().toMatchTypeOf();
|
|
11
|
+
});
|
|
12
|
+
test("onKeyDown event uses HTMLInputElement", function () {
|
|
13
|
+
expectTypeOf().toMatchTypeOf();
|
|
14
|
+
});
|
|
15
|
+
test("onClick event uses HTMLInputElement", function () {
|
|
16
|
+
expectTypeOf().toMatchTypeOf();
|
|
17
|
+
});
|
|
18
|
+
test("onChange event is NOT typed with HTMLDivElement", function () {
|
|
19
|
+
expectTypeOf().toEqualTypeOf();
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
describe("Input HTML props", function () {
|
|
23
|
+
test("accepts type prop", function () {
|
|
24
|
+
expectTypeOf().toHaveProperty("type");
|
|
25
|
+
});
|
|
26
|
+
test("accepts placeholder prop", function () {
|
|
27
|
+
expectTypeOf().toHaveProperty("placeholder");
|
|
28
|
+
});
|
|
29
|
+
test("accepts value prop", function () {
|
|
30
|
+
expectTypeOf().toHaveProperty("value");
|
|
31
|
+
});
|
|
32
|
+
test("accepts defaultValue prop", function () {
|
|
33
|
+
expectTypeOf().toHaveProperty("defaultValue");
|
|
34
|
+
});
|
|
35
|
+
test("accepts maxLength prop", function () {
|
|
36
|
+
expectTypeOf().toHaveProperty("maxLength");
|
|
37
|
+
});
|
|
38
|
+
test("accepts pattern prop", function () {
|
|
39
|
+
expectTypeOf().toHaveProperty("pattern");
|
|
40
|
+
});
|
|
41
|
+
test("accepts required prop", function () {
|
|
42
|
+
expectTypeOf().toHaveProperty("required");
|
|
43
|
+
});
|
|
44
|
+
test("accepts readOnly prop", function () {
|
|
45
|
+
expectTypeOf().toHaveProperty("readOnly");
|
|
46
|
+
});
|
|
47
|
+
test("accepts autoComplete prop", function () {
|
|
48
|
+
expectTypeOf().toHaveProperty("autoComplete");
|
|
49
|
+
});
|
|
50
|
+
test("accepts name prop", function () {
|
|
51
|
+
expectTypeOf().toHaveProperty("name");
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
describe("Input style props", function () {
|
|
55
|
+
test("accepts padding style prop", function () {
|
|
56
|
+
expectTypeOf().toHaveProperty("padding");
|
|
57
|
+
});
|
|
58
|
+
test("accepts backgroundColor style prop", function () {
|
|
59
|
+
expectTypeOf().toHaveProperty("backgroundColor");
|
|
60
|
+
});
|
|
61
|
+
test("accepts borderRadius style prop", function () {
|
|
62
|
+
expectTypeOf().toHaveProperty("borderRadius");
|
|
63
|
+
});
|
|
64
|
+
test("accepts text style props", function () {
|
|
65
|
+
expectTypeOf().toHaveProperty("fontSize");
|
|
66
|
+
expectTypeOf().toHaveProperty("fontWeight");
|
|
67
|
+
expectTypeOf().toHaveProperty("color");
|
|
68
|
+
});
|
|
69
|
+
test("accepts size variant", function () {
|
|
70
|
+
expectTypeOf().toHaveProperty("size");
|
|
71
|
+
});
|
|
72
|
+
test("accepts unstyled variant", function () {
|
|
73
|
+
expectTypeOf().toHaveProperty("unstyled");
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
describe("Input cross-platform props", function () {
|
|
77
|
+
test("autoCorrect accepts boolean and string", function () {
|
|
78
|
+
expectTypeOf().toMatchTypeOf();
|
|
79
|
+
});
|
|
80
|
+
test("autoCapitalize accepts native and web values", function () {
|
|
81
|
+
expectTypeOf().toMatchTypeOf();
|
|
82
|
+
});
|
|
83
|
+
test("accepts onChangeText callback", function () {
|
|
84
|
+
expectTypeOf().toHaveProperty("onChangeText");
|
|
85
|
+
expectTypeOf().toMatchTypeOf();
|
|
86
|
+
});
|
|
87
|
+
test("accepts onSubmitEditing callback", function () {
|
|
88
|
+
expectTypeOf().toHaveProperty("onSubmitEditing");
|
|
89
|
+
});
|
|
90
|
+
test("accepts placeholderTextColor", function () {
|
|
91
|
+
expectTypeOf().toHaveProperty("placeholderTextColor");
|
|
92
|
+
});
|
|
93
|
+
test("accepts selection prop", function () {
|
|
94
|
+
expectTypeOf().toHaveProperty("selection");
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
describe("InputRef type", function () {
|
|
98
|
+
test("InputRef accepts TextInput", function () {
|
|
99
|
+
var _ref = {};
|
|
100
|
+
});
|
|
101
|
+
test("InputRef rejects plain HTMLDivElement", function () {
|
|
102
|
+
var _ref = {};
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
describe("TextArea types", function () {
|
|
106
|
+
test("TextArea has rows prop", function () {
|
|
107
|
+
expectTypeOf().toHaveProperty("rows");
|
|
108
|
+
});
|
|
109
|
+
test("TextArea accepts style props", function () {
|
|
110
|
+
expectTypeOf().toHaveProperty("padding");
|
|
111
|
+
expectTypeOf().toHaveProperty("fontSize");
|
|
112
|
+
});
|
|
113
|
+
test("TextArea accepts HTML input props", function () {
|
|
114
|
+
expectTypeOf().toHaveProperty("placeholder");
|
|
115
|
+
expectTypeOf().toHaveProperty("value");
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
describe("InputProps derivation", function () {
|
|
119
|
+
test("InputProps equals GetProps<typeof Input>", function () {
|
|
120
|
+
expectTypeOf().toEqualTypeOf();
|
|
121
|
+
});
|
|
122
|
+
test("TextAreaProps equals GetProps<typeof TextArea>", function () {
|
|
123
|
+
expectTypeOf().toEqualTypeOf();
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
//# sourceMappingURL=inputTypes.test-d.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["expectTypeOf","describe","test","toMatchTypeOf","toEqualTypeOf","toHaveProperty","_ref"],"sources":["../../src/inputTypes.test-d.ts"],"sourcesContent":[null],"mappings":"AAaA,SAASA,YAAA,EAAcC,QAAA,EAAUC,IAAA,QAAY;AAmB7CD,QAAA,CAAS,6BAA6B,YAAM;EAC1CC,IAAA,CAAK,wCAAwC,YAAM;IAGjDF,YAAA,CAAqC,EAAEG,aAAA,CAAgC;EACzE,CAAC;EAEDD,IAAA,CAAK,uCAAuC,YAAM;IAGhDF,YAAA,CAAqC,EAAEG,aAAA,CAAgC;EACzE,CAAC;EAEDD,IAAA,CAAK,sCAAsC,YAAM;IAG/CF,YAAA,CAAqC,EAAEG,aAAA,CAAgC;EACzE,CAAC;EAEDD,IAAA,CAAK,yCAAyC,YAAM;IAGlDF,YAAA,CAAqC,EAAEG,aAAA,CAAgC;EACzE,CAAC;EAEDD,IAAA,CAAK,uCAAuC,YAAM;IAGhDF,YAAA,CAAqC,EAAEG,aAAA,CAAgC;EACzE,CAAC;EAEDD,IAAA,CAAK,mDAAmD,YAAM;IAK5DF,YAAA,CAAsC,EAAEI,aAAA,CAAqB;EAC/D,CAAC;AACH,CAAC;AAMDH,QAAA,CAAS,oBAAoB,YAAM;EACjCC,IAAA,CAAK,qBAAqB,YAAM;IAC9BF,YAAA,CAAyB,EAAEK,cAAA,CAAe,MAAM;EAClD,CAAC;EAEDH,IAAA,CAAK,4BAA4B,YAAM;IACrCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,aAAa;EACzD,CAAC;EAEDH,IAAA,CAAK,sBAAsB,YAAM;IAC/BF,YAAA,CAAyB,EAAEK,cAAA,CAAe,OAAO;EACnD,CAAC;EAEDH,IAAA,CAAK,6BAA6B,YAAM;IACtCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,cAAc;EAC1D,CAAC;EAEDH,IAAA,CAAK,0BAA0B,YAAM;IACnCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,WAAW;EACvD,CAAC;EAEDH,IAAA,CAAK,wBAAwB,YAAM;IACjCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,SAAS;EACrD,CAAC;EAEDH,IAAA,CAAK,yBAAyB,YAAM;IAClCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,UAAU;EACtD,CAAC;EAEDH,IAAA,CAAK,yBAAyB,YAAM;IAClCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,UAAU;EACtD,CAAC;EAEDH,IAAA,CAAK,6BAA6B,YAAM;IACtCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,cAAc;EAC1D,CAAC;EAEDH,IAAA,CAAK,qBAAqB,YAAM;IAC9BF,YAAA,CAAyB,EAAEK,cAAA,CAAe,MAAM;EAClD,CAAC;AACH,CAAC;AAMDJ,QAAA,CAAS,qBAAqB,YAAM;EAClCC,IAAA,CAAK,8BAA8B,YAAM;IACvCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,SAAS;EACrD,CAAC;EAEDH,IAAA,CAAK,sCAAsC,YAAM;IAC/CF,YAAA,CAAyB,EAAEK,cAAA,CAAe,iBAAiB;EAC7D,CAAC;EAEDH,IAAA,CAAK,mCAAmC,YAAM;IAC5CF,YAAA,CAAyB,EAAEK,cAAA,CAAe,cAAc;EAC1D,CAAC;EAEDH,IAAA,CAAK,4BAA4B,YAAM;IACrCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,UAAU;IACpDL,YAAA,CAAyB,EAAEK,cAAA,CAAe,YAAY;IACtDL,YAAA,CAAyB,EAAEK,cAAA,CAAe,OAAO;EACnD,CAAC;EAEDH,IAAA,CAAK,wBAAwB,YAAM;IACjCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,MAAM;EAClD,CAAC;EAEDH,IAAA,CAAK,4BAA4B,YAAM;IACrCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,UAAU;EACtD,CAAC;AACH,CAAC;AAMDJ,QAAA,CAAS,8BAA8B,YAAM;EAC3CC,IAAA,CAAK,0CAA0C,YAAM;IACnDF,YAAA,CAAwC,EAAEG,aAAA,CAExC;EACJ,CAAC;EAEDD,IAAA,CAAK,gDAAgD,YAAM;IACzDF,YAAA,CAA2C,EAAEG,aAAA,CAE3C;EACJ,CAAC;EAEDD,IAAA,CAAK,iCAAiC,YAAM;IAC1CF,YAAA,CAAyB,EAAEK,cAAA,CAAe,cAAc;IACxDL,YAAA,CAAsD,EAAEG,aAAA,CAEtD;EACJ,CAAC;EAEDD,IAAA,CAAK,oCAAoC,YAAM;IAC7CF,YAAA,CAAyB,EAAEK,cAAA,CAAe,iBAAiB;EAC7D,CAAC;EAEDH,IAAA,CAAK,gCAAgC,YAAM;IACzCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,sBAAsB;EAClE,CAAC;EAEDH,IAAA,CAAK,0BAA0B,YAAM;IACnCF,YAAA,CAAyB,EAAEK,cAAA,CAAe,WAAW;EACvD,CAAC;AACH,CAAC;AAMDJ,QAAA,CAAS,iBAAiB,YAAM;EAC9BC,IAAA,CAAK,8BAA8B,YAAM;IACvC,IAAAI,IAAM,KAAiB;EACzB,CAAC;EAEDJ,IAAA,CAAK,yCAAyC,YAAM;IAElD,IAAAI,IAAM,KAAiB;EACzB,CAAC;AACH,CAAC;AAMDL,QAAA,CAAS,kBAAkB,YAAM;EAC/BC,IAAA,CAAK,0BAA0B,YAAM;IACnCF,YAAA,CAA4B,EAAEK,cAAA,CAAe,MAAM;EACrD,CAAC;EAEDH,IAAA,CAAK,gCAAgC,YAAM;IACzCF,YAAA,CAA4B,EAAEK,cAAA,CAAe,SAAS;IACtDL,YAAA,CAA4B,EAAEK,cAAA,CAAe,UAAU;EACzD,CAAC;EAEDH,IAAA,CAAK,qCAAqC,YAAM;IAC9CF,YAAA,CAA4B,EAAEK,cAAA,CAAe,aAAa;IAC1DL,YAAA,CAA4B,EAAEK,cAAA,CAAe,OAAO;EACtD,CAAC;AACH,CAAC;AAMDJ,QAAA,CAAS,yBAAyB,YAAM;EACtCC,IAAA,CAAK,4CAA4C,YAAM;IAErDF,YAAA,CAAyB,EAAEI,aAAA,CAAuB;EACpD,CAAC;EAEDF,IAAA,CAAK,kDAAkD,YAAM;IAE3DF,YAAA,CAA4B,EAAEI,aAAA,CAAuB;EACvD,CAAC;AACH,CAAC","ignoreList":[]}
|
package/dist/esm/shared.mjs
CHANGED
|
@@ -4,96 +4,112 @@ import { getButtonSized } from "@tamagui/get-button-sized";
|
|
|
4
4
|
import { getFontSized } from "@tamagui/get-font-sized";
|
|
5
5
|
import { getSpace } from "@tamagui/get-token";
|
|
6
6
|
const defaultStyles = {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
},
|
|
24
|
-
focusStyle: {
|
|
25
|
-
borderColor: "$borderColorFocus"
|
|
26
|
-
},
|
|
27
|
-
focusVisibleStyle: {
|
|
28
|
-
outlineColor: "$outlineColor",
|
|
29
|
-
outlineWidth: 2,
|
|
30
|
-
outlineStyle: "solid"
|
|
31
|
-
}
|
|
7
|
+
size: "$true",
|
|
8
|
+
fontFamily: "$body",
|
|
9
|
+
borderWidth: 1,
|
|
10
|
+
outlineWidth: 0,
|
|
11
|
+
color: "$color",
|
|
12
|
+
...(isWeb ? {
|
|
13
|
+
tabIndex: 0
|
|
14
|
+
} : {
|
|
15
|
+
focusable: true
|
|
16
|
+
}),
|
|
17
|
+
borderColor: "$borderColor",
|
|
18
|
+
backgroundColor: "$background",
|
|
19
|
+
// this fixes a flex bug where it overflows container
|
|
20
|
+
minWidth: 0,
|
|
21
|
+
hoverStyle: {
|
|
22
|
+
borderColor: "$borderColorHover"
|
|
32
23
|
},
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
const buttonStyles = getButtonSized(val, extras),
|
|
36
|
-
paddingHorizontal = getSpace(val, {
|
|
37
|
-
shift: -1,
|
|
38
|
-
bounds: [2]
|
|
39
|
-
}),
|
|
40
|
-
fontStyle = getFontSized(val, extras);
|
|
41
|
-
return !isWeb && fontStyle && delete fontStyle.lineHeight, {
|
|
42
|
-
...fontStyle,
|
|
43
|
-
...buttonStyles,
|
|
44
|
-
paddingHorizontal
|
|
45
|
-
};
|
|
24
|
+
focusStyle: {
|
|
25
|
+
borderColor: "$borderColorFocus"
|
|
46
26
|
},
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
27
|
+
focusVisibleStyle: {
|
|
28
|
+
outlineColor: "$outlineColor",
|
|
29
|
+
outlineWidth: 2,
|
|
30
|
+
outlineStyle: "solid"
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
const inputSizeVariant = (val = "$true", extras) => {
|
|
34
|
+
if (extras.props.tag === "textarea" || extras.props.rows > 1 || extras.props.multiline || extras.props.numberOfLines > 1) {
|
|
35
|
+
return textAreaSizeVariant(val, extras);
|
|
36
|
+
}
|
|
37
|
+
const buttonStyles = getButtonSized(val, extras);
|
|
38
|
+
const paddingHorizontal = getSpace(val, {
|
|
39
|
+
shift: -1,
|
|
40
|
+
bounds: [2]
|
|
41
|
+
});
|
|
42
|
+
const fontStyle = getFontSized(val, extras);
|
|
43
|
+
if (!isWeb && fontStyle) {
|
|
44
|
+
delete fontStyle["lineHeight"];
|
|
45
|
+
}
|
|
46
|
+
return {
|
|
47
|
+
...fontStyle,
|
|
48
|
+
...buttonStyles,
|
|
49
|
+
paddingHorizontal
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
const textAreaSizeVariant = (val = "$true", extras) => {
|
|
53
|
+
const {
|
|
54
|
+
props
|
|
55
|
+
} = extras;
|
|
56
|
+
const buttonStyles = getButtonSized(val, extras);
|
|
57
|
+
const fontStyle = getFontSized(val, extras);
|
|
58
|
+
const lines = props.rows ?? props.numberOfLines;
|
|
59
|
+
const height = typeof lines === "number" ? lines * getVariableValue(fontStyle.lineHeight) : "auto";
|
|
60
|
+
if (!isWeb && fontStyle) {
|
|
61
|
+
delete fontStyle["lineHeight"];
|
|
62
|
+
}
|
|
63
|
+
const paddingVertical = getSpace(val, {
|
|
64
|
+
shift: -2,
|
|
65
|
+
bounds: [2]
|
|
66
|
+
});
|
|
67
|
+
const paddingHorizontal = getSpace(val, {
|
|
68
|
+
shift: -1,
|
|
69
|
+
bounds: [2]
|
|
70
|
+
});
|
|
71
|
+
return {
|
|
72
|
+
...buttonStyles,
|
|
73
|
+
...fontStyle,
|
|
74
|
+
paddingVertical,
|
|
75
|
+
paddingHorizontal,
|
|
76
|
+
height
|
|
77
|
+
};
|
|
78
|
+
};
|
|
79
|
+
const INPUT_NAME = "Input";
|
|
80
|
+
const styledBody = [{
|
|
81
|
+
name: INPUT_NAME,
|
|
82
|
+
render: "input",
|
|
83
|
+
variants: {
|
|
84
|
+
unstyled: {
|
|
85
|
+
true: {
|
|
86
|
+
// reset browser <input>/<textarea> defaults
|
|
87
|
+
outlineWidth: 0,
|
|
88
|
+
borderWidth: 0,
|
|
89
|
+
backgroundColor: "transparent"
|
|
82
90
|
},
|
|
83
|
-
|
|
84
|
-
true: {}
|
|
85
|
-
}
|
|
91
|
+
false: defaultStyles
|
|
86
92
|
},
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
}
|
|
90
|
-
}, {
|
|
91
|
-
isInput: !0,
|
|
92
|
-
accept: {
|
|
93
|
-
placeholderTextColor: "color",
|
|
94
|
-
selectionColor: "color"
|
|
93
|
+
size: {
|
|
94
|
+
"...size": inputSizeVariant
|
|
95
95
|
},
|
|
96
|
-
|
|
97
|
-
|
|
96
|
+
disabled: {
|
|
97
|
+
true: {}
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
defaultVariants: {
|
|
101
|
+
unstyled: process.env.TAMAGUI_HEADLESS === "1"
|
|
102
|
+
}
|
|
103
|
+
}, {
|
|
104
|
+
isInput: true,
|
|
105
|
+
accept: {
|
|
106
|
+
placeholderTextColor: "color",
|
|
107
|
+
selectionColor: "color",
|
|
108
|
+
cursorColor: "color",
|
|
109
|
+
selectionHandleColor: "color",
|
|
110
|
+
underlineColorAndroid: "color"
|
|
111
|
+
},
|
|
112
|
+
validStyles: Text.staticConfig.validStyles
|
|
113
|
+
}];
|
|
98
114
|
export { INPUT_NAME, defaultStyles, inputSizeVariant, styledBody, textAreaSizeVariant };
|
|
99
115
|
//# sourceMappingURL=shared.mjs.map
|
package/dist/esm/shared.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Text","getVariableValue","isWeb","getButtonSized","getFontSized","getSpace","defaultStyles","size","fontFamily","borderWidth","outlineWidth","color","tabIndex","focusable","borderColor","backgroundColor","minWidth","hoverStyle","focusStyle","focusVisibleStyle","outlineColor","outlineStyle","inputSizeVariant","val","extras","props","tag","rows","multiline","numberOfLines","textAreaSizeVariant","buttonStyles","paddingHorizontal","shift","bounds","fontStyle","
|
|
1
|
+
{"version":3,"names":["Text","getVariableValue","isWeb","getButtonSized","getFontSized","getSpace","defaultStyles","size","fontFamily","borderWidth","outlineWidth","color","tabIndex","focusable","borderColor","backgroundColor","minWidth","hoverStyle","focusStyle","focusVisibleStyle","outlineColor","outlineStyle","inputSizeVariant","val","extras","props","tag","rows","multiline","numberOfLines","textAreaSizeVariant","buttonStyles","paddingHorizontal","shift","bounds","fontStyle","lines","height","lineHeight","paddingVertical","INPUT_NAME","styledBody","name","render","variants","unstyled","true","false","disabled","defaultVariants","process","env","TAMAGUI_HEADLESS","isInput","accept","placeholderTextColor","selectionColor","cursorColor","selectionHandleColor","underlineColorAndroid","validStyles","staticConfig"],"sources":["../../src/shared.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,IAAA,QAAY;AACrB,SAASC,gBAAA,EAAkBC,KAAA,QAAa;AACxC,SAASC,cAAA,QAAsB;AAC/B,SAASC,YAAA,QAAoB;AAC7B,SAASC,QAAA,QAAgB;AAElB,MAAMC,aAAA,GAAgB;EAC3BC,IAAA,EAAM;EACNC,UAAA,EAAY;EACZC,WAAA,EAAa;EACbC,YAAA,EAAc;EACdC,KAAA,EAAO;EAEP,IAAIT,KAAA,GACA;IACEU,QAAA,EAAU;EACZ,IACA;IACEC,SAAA,EAAW;EACb;EAEJC,WAAA,EAAa;EACbC,eAAA,EAAiB;EAAA;EAGjBC,QAAA,EAAU;EAEVC,UAAA,EAAY;IACVH,WAAA,EAAa;EACf;EAEAI,UAAA,EAAY;IACVJ,WAAA,EAAa;EACf;EAEAK,iBAAA,EAAmB;IACjBC,YAAA,EAAc;IACdV,YAAA,EAAc;IACdW,YAAA,EAAc;EAChB;AACF;AAEO,MAAMC,gBAAA,GAAmDA,CAC9DC,GAAA,GAAM,SACNC,MAAA,KACG;EAEH,IACEA,MAAA,CAAOC,KAAA,CAAMC,GAAA,KAAQ,cACrBF,MAAA,CAAOC,KAAA,CAAME,IAAA,GAAO,KACpBH,MAAA,CAAOC,KAAA,CAAMG,SAAA,IACbJ,MAAA,CAAOC,KAAA,CAAMI,aAAA,GAAgB,GAC7B;IACA,OAAOC,mBAAA,CAAoBP,GAAA,EAAKC,MAAM;EACxC;EACA,MAAMO,YAAA,GAAe5B,cAAA,CAAeoB,GAAA,EAAKC,MAAM;EAC/C,MAAMQ,iBAAA,GAAoB3B,QAAA,CAASkB,GAAA,EAAK;IACtCU,KAAA,EAAO;IACPC,MAAA,EAAQ,CAAC,CAAC;EACZ,CAAC;EACD,MAAMC,SAAA,GAAY/B,YAAA,CAAamB,GAAA,EAAYC,MAAM;EAEjD,IAAI,CAACtB,KAAA,IAASiC,SAAA,EAAW;IACvB,OAAOA,SAAA,CAAU,YAAY;EAC/B;EACA,OAAO;IACL,GAAGA,SAAA;IACH,GAAGJ,YAAA;IACHC;EACF;AACF;AAEO,MAAMF,mBAAA,GAAsDA,CACjEP,GAAA,GAAM,SACNC,MAAA,KACG;EACH,MAAM;IAAEC;EAAM,IAAID,MAAA;EAClB,MAAMO,YAAA,GAAe5B,cAAA,CAAeoB,GAAA,EAAKC,MAAM;EAC/C,MAAMW,SAAA,GAAY/B,YAAA,CAAamB,GAAA,EAAYC,MAAM;EACjD,MAAMY,KAAA,GAAQX,KAAA,CAAME,IAAA,IAAQF,KAAA,CAAMI,aAAA;EAClC,MAAMQ,MAAA,GACJ,OAAOD,KAAA,KAAU,WAAWA,KAAA,GAAQnC,gBAAA,CAAiBkC,SAAA,CAAUG,UAAU,IAAI;EAE/E,IAAI,CAACpC,KAAA,IAASiC,SAAA,EAAW;IACvB,OAAOA,SAAA,CAAU,YAAY;EAC/B;EACA,MAAMI,eAAA,GAAkBlC,QAAA,CAASkB,GAAA,EAAK;IACpCU,KAAA,EAAO;IACPC,MAAA,EAAQ,CAAC,CAAC;EACZ,CAAC;EACD,MAAMF,iBAAA,GAAoB3B,QAAA,CAASkB,GAAA,EAAK;IACtCU,KAAA,EAAO;IACPC,MAAA,EAAQ,CAAC,CAAC;EACZ,CAAC;EACD,OAAO;IACL,GAAGH,YAAA;IACH,GAAGI,SAAA;IACHI,eAAA;IACAP,iBAAA;IACAK;EACF;AACF;AACO,MAAMG,UAAA,GAAa;AAEnB,MAAMC,UAAA,GAAa,CACxB;EACEC,IAAA,EAAMF,UAAA;EACNG,MAAA,EAAQ;EACRC,QAAA,EAAU;IACRC,QAAA,EAAU;MACRC,IAAA,EAAM;QAAA;QAEJpC,YAAA,EAAc;QACdD,WAAA,EAAa;QACbM,eAAA,EAAiB;MACnB;MACAgC,KAAA,EAAOzC;IACT;IAEAC,IAAA,EAAM;MACJ,WAAWe;IACb;IAEA0B,QAAA,EAAU;MACRF,IAAA,EAAM,CAAC;IACT;EACF;EAEAG,eAAA,EAAiB;IACfJ,QAAA,EAAUK,OAAA,CAAQC,GAAA,CAAIC,gBAAA,KAAqB;EAC7C;AACF,GAEA;EACEC,OAAA,EAAS;EACTC,MAAA,EAAQ;IACNC,oBAAA,EAAsB;IACtBC,cAAA,EAAgB;IAChBC,WAAA,EAAa;IACbC,oBAAA,EAAsB;IACtBC,qBAAA,EAAuB;EACzB;EAEAC,WAAA,EAAa5D,IAAA,CAAK6D,YAAA,CAAaD;AACjC,EACF","ignoreList":[]}
|