@tamagui/input 3.0.0-beta.831.1 → 3.0.0-beta.889.1

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.
Files changed (52) hide show
  1. package/dist/cjs/Input.cjs +3 -9
  2. package/dist/cjs/Input.native.cjs +1 -1
  3. package/dist/cjs/Input.native.js +1 -1
  4. package/dist/cjs/Input.native.js.map +1 -1
  5. package/dist/cjs/TextArea.cjs +3 -5
  6. package/dist/cjs/TextArea.native.cjs +3 -5
  7. package/dist/cjs/TextArea.native.js +3 -5
  8. package/dist/cjs/TextArea.native.js.map +1 -1
  9. package/dist/cjs/shared.cjs +59 -45
  10. package/dist/cjs/shared.native.cjs +64 -48
  11. package/dist/cjs/shared.native.js +64 -48
  12. package/dist/cjs/shared.native.js.map +1 -1
  13. package/dist/esm/Input.mjs +5 -11
  14. package/dist/esm/Input.mjs.map +1 -1
  15. package/dist/esm/Input.native.js +2 -2
  16. package/dist/esm/Input.native.js.map +1 -1
  17. package/dist/esm/TextArea.mjs +4 -6
  18. package/dist/esm/TextArea.mjs.map +1 -1
  19. package/dist/esm/TextArea.native.js +4 -6
  20. package/dist/esm/TextArea.native.js.map +1 -1
  21. package/dist/esm/shared.mjs +59 -46
  22. package/dist/esm/shared.mjs.map +1 -1
  23. package/dist/esm/shared.native.js +63 -48
  24. package/dist/esm/shared.native.js.map +1 -1
  25. package/dist/jsx/Input.mjs +5 -11
  26. package/dist/jsx/Input.mjs.map +1 -1
  27. package/dist/jsx/Input.native.cjs +1 -1
  28. package/dist/jsx/Input.native.js +1 -1
  29. package/dist/jsx/Input.native.js.map +1 -1
  30. package/dist/jsx/TextArea.mjs +4 -6
  31. package/dist/jsx/TextArea.mjs.map +1 -1
  32. package/dist/jsx/TextArea.native.cjs +3 -5
  33. package/dist/jsx/TextArea.native.js +3 -5
  34. package/dist/jsx/TextArea.native.js.map +1 -1
  35. package/dist/jsx/shared.mjs +59 -46
  36. package/dist/jsx/shared.mjs.map +1 -1
  37. package/dist/jsx/shared.native.cjs +64 -48
  38. package/dist/jsx/shared.native.js +64 -48
  39. package/dist/jsx/shared.native.js.map +1 -1
  40. package/package.json +12 -12
  41. package/src/Input.native.tsx +4 -2
  42. package/src/Input.tsx +5 -19
  43. package/src/TextArea.tsx +5 -6
  44. package/src/shared.tsx +69 -54
  45. package/types/Input.d.ts +8 -42
  46. package/types/Input.d.ts.map +1 -1
  47. package/types/Input.native.d.ts +8 -42
  48. package/types/Input.native.d.ts.map +1 -1
  49. package/types/TextArea.d.ts +5 -171
  50. package/types/TextArea.d.ts.map +1 -1
  51. package/types/shared.d.ts +31 -17
  52. package/types/shared.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","names":[],"sources":["jsx/shared.js"],"sourcesContent":["import { Text } from \"@tamagui/core\";\nimport { getVariableValue, isWeb, resolveTokenSize } from \"@tamagui/core\";\nimport { getFontSized } from \"@tamagui/get-font-sized\";\nconst defaultStyles = {\n size: true,\n outlineWidth: 0,\n tabIndex: 0,\n // this fixes a flex bug where it overflows container\n minWidth: 0\n};\nconst resolveInputFrame = (val, extras) => resolveTokenSize(val, { tokens: extras.tokens, font: extras.font }).frame;\nconst inputSizeKeys = [\n \"0\",\n \"0-25\",\n \"0-5\",\n \"0-75\",\n \"1\",\n \"1-5\",\n \"2\",\n \"2-5\",\n \"3\",\n \"3-5\",\n \"4\",\n \"4-5\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"13\",\n \"14\",\n \"15\",\n \"16\",\n \"17\",\n \"18\",\n \"19\",\n \"20\"\n];\nconst getInputPadding = (val, extras, steps) => {\n if (typeof val === \"number\") {\n return steps === 1 ? Math.max(0, Math.round(val * 0.6 - 12)) : Math.max(0, Math.round(val * 0.52 - 11.5));\n }\n const key = val === true ? \"4\" : val;\n const index = inputSizeKeys.indexOf(key);\n return extras.tokens.space[inputSizeKeys[Math.max(0, index - steps)]];\n};\nconst inputSizeVariant = (val = true, extras) => {\n if (extras.props.tag === \"textarea\" || extras.props.rows > 1 || extras.props.multiline || extras.props.numberOfLines > 1) {\n return textAreaSizeVariant(val, extras);\n }\n const frame = resolveInputFrame(val, extras);\n const fontStyle = getFontSized(val, extras);\n if (!isWeb && fontStyle) {\n delete fontStyle[\"lineHeight\"];\n }\n return {\n ...fontStyle,\n height: frame.size,\n borderRadius: frame.radius,\n paddingHorizontal: getInputPadding(val, extras, 1)\n };\n};\nconst textAreaSizeVariant = (val = true, extras) => {\n const { props } = extras;\n const frame = resolveInputFrame(val, extras);\n const fontStyle = getFontSized(val, extras);\n const lines = props.rows ?? props.numberOfLines;\n const height = typeof lines === \"number\" ? lines * getVariableValue(fontStyle.lineHeight) : \"auto\";\n if (!isWeb && fontStyle) {\n delete fontStyle[\"lineHeight\"];\n }\n return {\n borderRadius: frame.radius,\n ...fontStyle,\n paddingVertical: getInputPadding(val, extras, 2),\n paddingHorizontal: getInputPadding(val, extras, 1),\n height\n };\n};\nconst INPUT_NAME = \"Input\";\nconst styledBody = [\n {\n name: INPUT_NAME,\n render: \"input\",\n ...defaultStyles,\n variants: {\n size: {\n true: inputSizeVariant,\n Size: inputSizeVariant\n },\n disabled: {\n true: {}\n }\n }\n },\n {\n isInput: true,\n accept: {\n placeholderTextColor: \"color\",\n selectionColor: \"color\",\n cursorColor: \"color\",\n selectionHandleColor: \"color\",\n underlineColorAndroid: \"color\"\n },\n validStyles: Text.staticConfig.validStyles\n }\n];\nexport {\n INPUT_NAME,\n defaultStyles,\n inputSizeVariant,\n styledBody,\n textAreaSizeVariant\n};\n//# sourceMappingURL=shared.js.map\n"],"mappings":";;;;AAGA,MAAM,gBAAgB;CACpB,MAAM;CACN,cAAc;CACd,UAAU;CAEV,UAAU;AACZ;AACA,MAAM,qBAAqB,KAAK,WAAW,iBAAiB,KAAK;CAAE,QAAQ,OAAO;CAAQ,MAAM,OAAO;AAAK,CAAC,CAAC,CAAC;AAC/G,MAAM,gBAAgB;CACpB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AACA,MAAM,mBAAmB,KAAK,QAAQ,UAAU;CAC9C,IAAI,OAAO,QAAQ,UAAU;EAC3B,OAAO,UAAU,IAAI,KAAK,IAAI,GAAG,KAAK,MAAM,MAAM,KAAM,EAAE,CAAC,IAAI,KAAK,IAAI,GAAG,KAAK,MAAM,MAAM,MAAO,IAAI,CAAC;CAC1G;CACA,MAAM,MAAM,QAAQ,OAAO,MAAM;CACjC,MAAM,QAAQ,cAAc,QAAQ,GAAG;CACvC,OAAO,OAAO,OAAO,MAAM,cAAc,KAAK,IAAI,GAAG,QAAQ,KAAK;AACpE;AACA,MAAM,oBAAoB,MAAM,MAAM,WAAW;CAC/C,IAAI,OAAO,MAAM,QAAQ,cAAc,OAAO,MAAM,OAAO,KAAK,OAAO,MAAM,aAAa,OAAO,MAAM,gBAAgB,GAAG;EACxH,OAAO,oBAAoB,KAAK,MAAM;CACxC;CACA,MAAM,QAAQ,kBAAkB,KAAK,MAAM;CAC3C,MAAM,YAAY,aAAa,KAAK,MAAM;CAC1C,IAAI,CAAC,SAAS,WAAW;EACvB,OAAO,UAAU;CACnB;CACA,OAAO;EACL,GAAG;EACH,QAAQ,MAAM;EACd,cAAc,MAAM;EACpB,mBAAmB,gBAAgB,KAAK,QAAQ,CAAC;CACnD;AACF;AACA,MAAM,uBAAuB,MAAM,MAAM,WAAW;CAClD,MAAM,EAAE,UAAU;CAClB,MAAM,QAAQ,kBAAkB,KAAK,MAAM;CAC3C,MAAM,YAAY,aAAa,KAAK,MAAM;CAC1C,MAAM,QAAQ,MAAM,QAAQ,MAAM;CAClC,MAAM,SAAS,OAAO,UAAU,WAAW,QAAQ,iBAAiB,UAAU,UAAU,IAAI;CAC5F,IAAI,CAAC,SAAS,WAAW;EACvB,OAAO,UAAU;CACnB;CACA,OAAO;EACL,cAAc,MAAM;EACpB,GAAG;EACH,iBAAiB,gBAAgB,KAAK,QAAQ,CAAC;EAC/C,mBAAmB,gBAAgB,KAAK,QAAQ,CAAC;EACjD;CACF;AACF;AACA,MAAM,aAAa;AACnB,MAAM,aAAa,CACjB;CACE,MAAM;CACN,QAAQ;CACR,GAAG;CACH,UAAU;EACR,MAAM;GACJ,MAAM;GACN,MAAM;EACR;EACA,UAAU,EACR,MAAM,CAAC,EACT;CACF;AACF,GACA;CACE,SAAS;CACT,QAAQ;EACN,sBAAsB;EACtB,gBAAgB;EAChB,aAAa;EACb,sBAAsB;EACtB,uBAAuB;CACzB;CACA,aAAa,KAAK,aAAa;AACjC,CACF"}
1
+ {"version":3,"file":"shared.js","names":[],"sources":["jsx/shared.js"],"sourcesContent":["import { getVariableValue, isWeb, resolveTokenSize, styled } from \"@tamagui/core\";\nimport { getFontSized } from \"@tamagui/get-font-sized\";\nconst defaultStyles = {\n size: true,\n outlineWidth: 0,\n tabIndex: 0,\n // this fixes a flex bug where it overflows container\n minWidth: 0\n};\nconst resolveInputFrame = (val, env) => resolveTokenSize(val, { tokens: env.tokens, font: env.font }).frame;\nconst inputSizeKeys = [\n \"0\",\n \"0-25\",\n \"0-5\",\n \"0-75\",\n \"1\",\n \"1-5\",\n \"2\",\n \"2-5\",\n \"3\",\n \"3-5\",\n \"4\",\n \"4-5\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"13\",\n \"14\",\n \"15\",\n \"16\",\n \"17\",\n \"18\",\n \"19\",\n \"20\"\n];\nconst getInputPadding = (val, env, steps) => {\n if (typeof val === \"number\") {\n return steps === 1 ? Math.max(0, Math.round(val * 0.6 - 12)) : Math.max(0, Math.round(val * 0.52 - 11.5));\n }\n const key = val === true ? \"4\" : val;\n const index = inputSizeKeys.indexOf(key);\n return env.tokens.space[inputSizeKeys[Math.max(0, index - steps)]];\n};\nconst inputSizeVariant = styled.dynamic((val = true, env) => {\n const frame = resolveInputFrame(val, env);\n const fontStyle = getFontSized(val, env);\n return {\n color: fontStyle?.color,\n fontFamily: fontStyle?.fontFamily,\n fontSize: fontStyle?.fontSize,\n fontStyle: fontStyle?.fontStyle,\n fontWeight: fontStyle?.fontWeight,\n letterSpacing: fontStyle?.letterSpacing,\n lineHeight: isWeb ? fontStyle?.lineHeight : void 0,\n textTransform: fontStyle?.textTransform,\n height: frame.size,\n borderRadius: frame.radius,\n paddingHorizontal: getInputPadding(val, env, 1)\n };\n});\nconst textAreaSizeVariant = styled.dynamic((val = true, env) => {\n const frame = resolveInputFrame(val, env);\n const fontStyle = getFontSized(val, env);\n return {\n borderRadius: frame.radius,\n color: fontStyle?.color,\n fontFamily: fontStyle?.fontFamily,\n fontSize: fontStyle?.fontSize,\n fontStyle: fontStyle?.fontStyle,\n fontWeight: fontStyle?.fontWeight,\n letterSpacing: fontStyle?.letterSpacing,\n lineHeight: isWeb ? fontStyle?.lineHeight : void 0,\n textTransform: fontStyle?.textTransform,\n paddingVertical: getInputPadding(val, env, 2),\n paddingHorizontal: getInputPadding(val, env, 1),\n height: \"auto\"\n };\n});\nconst resolveTextAreaSize = (props, env) => {\n const sized = textAreaSizeVariant(props.size ?? true, env);\n const fontStyle = getFontSized(props.size ?? true, env);\n const lines = props.rows ?? props.numberOfLines;\n const height = typeof lines === \"number\" ? lines * getVariableValue(fontStyle?.lineHeight) : sized?.height;\n return {\n borderRadius: sized?.borderRadius,\n color: sized?.color,\n fontFamily: sized?.fontFamily,\n fontSize: sized?.fontSize,\n fontStyle: sized?.fontStyle,\n fontWeight: sized?.fontWeight,\n letterSpacing: sized?.letterSpacing,\n lineHeight: sized?.lineHeight,\n textTransform: sized?.textTransform,\n paddingVertical: sized?.paddingVertical,\n paddingHorizontal: sized?.paddingHorizontal,\n height\n };\n};\nconst resolveMultilineInputSize = (props, env) => {\n if (!(props.rows > 1 || props.multiline || props.numberOfLines > 1)) return;\n return resolveTextAreaSize(props, env);\n};\nconst INPUT_NAME = \"Input\";\nconst styledBody = [\n {\n name: INPUT_NAME,\n render: \"input\",\n ...defaultStyles,\n variants: {\n size: inputSizeVariant,\n disabled: {\n true: {}\n }\n }\n },\n {\n isInput: true\n }\n];\nexport {\n INPUT_NAME,\n defaultStyles,\n inputSizeVariant,\n resolveMultilineInputSize,\n resolveTextAreaSize,\n styledBody,\n textAreaSizeVariant\n};\n//# sourceMappingURL=shared.js.map\n"],"mappings":"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"}
@@ -25,12 +25,13 @@ __export(shared_exports, {
25
25
  INPUT_NAME: () => INPUT_NAME,
26
26
  defaultStyles: () => defaultStyles,
27
27
  inputSizeVariant: () => inputSizeVariant,
28
+ resolveMultilineInputSize: () => resolveMultilineInputSize,
29
+ resolveTextAreaSize: () => resolveTextAreaSize,
28
30
  styledBody: () => styledBody,
29
31
  textAreaSizeVariant: () => textAreaSizeVariant
30
32
  });
31
33
  module.exports = __toCommonJS(shared_exports);
32
34
  var import_core = require("@tamagui/core");
33
- var import_core2 = require("@tamagui/core");
34
35
  var import_get_font_sized = require("@tamagui/get-font-sized");
35
36
  var defaultStyles = {
36
37
  size: true,
@@ -38,10 +39,10 @@ var defaultStyles = {
38
39
  tabIndex: 0,
39
40
  minWidth: 0
40
41
  };
41
- var resolveInputFrame = function(val, extras) {
42
- return (0, import_core2.resolveTokenSize)(val, {
43
- tokens: extras.tokens,
44
- font: extras.font
42
+ var resolveInputFrame = function(val, env) {
43
+ return (0, import_core.resolveTokenSize)(val, {
44
+ tokens: env.tokens,
45
+ font: env.font
45
46
  }).frame;
46
47
  };
47
48
  var inputSizeKeys = [
@@ -74,70 +75,85 @@ var inputSizeKeys = [
74
75
  "19",
75
76
  "20"
76
77
  ];
77
- var getInputPadding = function(val, extras, steps) {
78
+ var getInputPadding = function(val, env, steps) {
78
79
  if (typeof val === "number") {
79
80
  return steps === 1 ? Math.max(0, Math.round(val * .6 - 12)) : Math.max(0, Math.round(val * .52 - 11.5));
80
81
  }
81
82
  var key = val === true ? "4" : val;
82
83
  var index = inputSizeKeys.indexOf(key);
83
- return extras.tokens.space[inputSizeKeys[Math.max(0, index - steps)]];
84
+ return env.tokens.space[inputSizeKeys[Math.max(0, index - steps)]];
84
85
  };
85
- var inputSizeVariant = function() {
86
- var val = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true, extras = arguments.length > 1 ? arguments[1] : void 0;
87
- if (extras.props.tag === "textarea" || extras.props.rows > 1 || extras.props.multiline || extras.props.numberOfLines > 1) {
88
- return textAreaSizeVariant(val, extras);
89
- }
90
- var frame = resolveInputFrame(val, extras);
91
- var fontStyle = (0, import_get_font_sized.getFontSized)(val, extras);
92
- if (!import_core2.isWeb && fontStyle) {
93
- delete fontStyle["lineHeight"];
94
- }
86
+ var inputSizeVariant = import_core.styled.dynamic(function() {
87
+ var val = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true, env = arguments.length > 1 ? arguments[1] : void 0;
88
+ var frame = resolveInputFrame(val, env);
89
+ var fontStyle = (0, import_get_font_sized.getFontSized)(val, env);
95
90
  return {
96
- ...fontStyle,
91
+ color: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.color,
92
+ fontFamily: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontFamily,
93
+ fontSize: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontSize,
94
+ fontStyle: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontStyle,
95
+ fontWeight: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontWeight,
96
+ letterSpacing: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.letterSpacing,
97
+ lineHeight: import_core.isWeb ? fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.lineHeight : void 0,
98
+ textTransform: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.textTransform,
97
99
  height: frame.size,
98
100
  borderRadius: frame.radius,
99
- paddingHorizontal: getInputPadding(val, extras, 1)
101
+ paddingHorizontal: getInputPadding(val, env, 1)
100
102
  };
101
- };
102
- var textAreaSizeVariant = function() {
103
- var val = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true, extras = arguments.length > 1 ? arguments[1] : void 0;
104
- var { props } = extras;
105
- var frame = resolveInputFrame(val, extras);
106
- var fontStyle = (0, import_get_font_sized.getFontSized)(val, extras);
103
+ });
104
+ var textAreaSizeVariant = import_core.styled.dynamic(function() {
105
+ var val = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true, env = arguments.length > 1 ? arguments[1] : void 0;
106
+ var frame = resolveInputFrame(val, env);
107
+ var fontStyle = (0, import_get_font_sized.getFontSized)(val, env);
108
+ return {
109
+ borderRadius: frame.radius,
110
+ color: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.color,
111
+ fontFamily: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontFamily,
112
+ fontSize: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontSize,
113
+ fontStyle: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontStyle,
114
+ fontWeight: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontWeight,
115
+ letterSpacing: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.letterSpacing,
116
+ lineHeight: import_core.isWeb ? fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.lineHeight : void 0,
117
+ textTransform: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.textTransform,
118
+ paddingVertical: getInputPadding(val, env, 2),
119
+ paddingHorizontal: getInputPadding(val, env, 1),
120
+ height: "auto"
121
+ };
122
+ });
123
+ var resolveTextAreaSize = function(props, env) {
124
+ var _props_size;
125
+ var sized = textAreaSizeVariant((_props_size = props.size) !== null && _props_size !== void 0 ? _props_size : true, env);
126
+ var _props_size1;
127
+ var fontStyle = (0, import_get_font_sized.getFontSized)((_props_size1 = props.size) !== null && _props_size1 !== void 0 ? _props_size1 : true, env);
107
128
  var _props_rows;
108
129
  var lines = (_props_rows = props.rows) !== null && _props_rows !== void 0 ? _props_rows : props.numberOfLines;
109
- var height = typeof lines === "number" ? lines * (0, import_core2.getVariableValue)(fontStyle.lineHeight) : "auto";
110
- if (!import_core2.isWeb && fontStyle) {
111
- delete fontStyle["lineHeight"];
112
- }
130
+ var height = typeof lines === "number" ? lines * (0, import_core.getVariableValue)(fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.lineHeight) : sized === null || sized === void 0 ? void 0 : sized.height;
113
131
  return {
114
- borderRadius: frame.radius,
115
- ...fontStyle,
116
- paddingVertical: getInputPadding(val, extras, 2),
117
- paddingHorizontal: getInputPadding(val, extras, 1),
132
+ borderRadius: sized === null || sized === void 0 ? void 0 : sized.borderRadius,
133
+ color: sized === null || sized === void 0 ? void 0 : sized.color,
134
+ fontFamily: sized === null || sized === void 0 ? void 0 : sized.fontFamily,
135
+ fontSize: sized === null || sized === void 0 ? void 0 : sized.fontSize,
136
+ fontStyle: sized === null || sized === void 0 ? void 0 : sized.fontStyle,
137
+ fontWeight: sized === null || sized === void 0 ? void 0 : sized.fontWeight,
138
+ letterSpacing: sized === null || sized === void 0 ? void 0 : sized.letterSpacing,
139
+ lineHeight: sized === null || sized === void 0 ? void 0 : sized.lineHeight,
140
+ textTransform: sized === null || sized === void 0 ? void 0 : sized.textTransform,
141
+ paddingVertical: sized === null || sized === void 0 ? void 0 : sized.paddingVertical,
142
+ paddingHorizontal: sized === null || sized === void 0 ? void 0 : sized.paddingHorizontal,
118
143
  height
119
144
  };
120
145
  };
146
+ var resolveMultilineInputSize = function(props, env) {
147
+ if (!(props.rows > 1 || props.multiline || props.numberOfLines > 1)) return;
148
+ return resolveTextAreaSize(props, env);
149
+ };
121
150
  var INPUT_NAME = "Input";
122
151
  var styledBody = [{
123
152
  name: INPUT_NAME,
124
153
  render: "input",
125
154
  ...defaultStyles,
126
155
  variants: {
127
- size: {
128
- true: inputSizeVariant,
129
- Size: inputSizeVariant
130
- },
156
+ size: inputSizeVariant,
131
157
  disabled: { true: {} }
132
158
  }
133
- }, {
134
- isInput: true,
135
- accept: {
136
- placeholderTextColor: "color",
137
- selectionColor: "color",
138
- cursorColor: "color",
139
- selectionHandleColor: "color",
140
- underlineColorAndroid: "color"
141
- },
142
- validStyles: import_core.Text.staticConfig.validStyles
143
- }];
159
+ }, { isInput: true }];
@@ -25,12 +25,13 @@ __export(shared_exports, {
25
25
  INPUT_NAME: () => INPUT_NAME,
26
26
  defaultStyles: () => defaultStyles,
27
27
  inputSizeVariant: () => inputSizeVariant,
28
+ resolveMultilineInputSize: () => resolveMultilineInputSize,
29
+ resolveTextAreaSize: () => resolveTextAreaSize,
28
30
  styledBody: () => styledBody,
29
31
  textAreaSizeVariant: () => textAreaSizeVariant
30
32
  });
31
33
  module.exports = __toCommonJS(shared_exports);
32
34
  var import_core = require("@tamagui/core");
33
- var import_core2 = require("@tamagui/core");
34
35
  var import_get_font_sized = require("@tamagui/get-font-sized");
35
36
  var defaultStyles = {
36
37
  size: true,
@@ -38,10 +39,10 @@ var defaultStyles = {
38
39
  tabIndex: 0,
39
40
  minWidth: 0
40
41
  };
41
- var resolveInputFrame = function(val, extras) {
42
- return (0, import_core2.resolveTokenSize)(val, {
43
- tokens: extras.tokens,
44
- font: extras.font
42
+ var resolveInputFrame = function(val, env) {
43
+ return (0, import_core.resolveTokenSize)(val, {
44
+ tokens: env.tokens,
45
+ font: env.font
45
46
  }).frame;
46
47
  };
47
48
  var inputSizeKeys = [
@@ -74,72 +75,87 @@ var inputSizeKeys = [
74
75
  "19",
75
76
  "20"
76
77
  ];
77
- var getInputPadding = function(val, extras, steps) {
78
+ var getInputPadding = function(val, env, steps) {
78
79
  if (typeof val === "number") {
79
80
  return steps === 1 ? Math.max(0, Math.round(val * .6 - 12)) : Math.max(0, Math.round(val * .52 - 11.5));
80
81
  }
81
82
  var key = val === true ? "4" : val;
82
83
  var index = inputSizeKeys.indexOf(key);
83
- return extras.tokens.space[inputSizeKeys[Math.max(0, index - steps)]];
84
+ return env.tokens.space[inputSizeKeys[Math.max(0, index - steps)]];
84
85
  };
85
- var inputSizeVariant = function() {
86
- var val = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true, extras = arguments.length > 1 ? arguments[1] : void 0;
87
- if (extras.props.tag === "textarea" || extras.props.rows > 1 || extras.props.multiline || extras.props.numberOfLines > 1) {
88
- return textAreaSizeVariant(val, extras);
89
- }
90
- var frame = resolveInputFrame(val, extras);
91
- var fontStyle = (0, import_get_font_sized.getFontSized)(val, extras);
92
- if (!import_core2.isWeb && fontStyle) {
93
- delete fontStyle["lineHeight"];
94
- }
86
+ var inputSizeVariant = import_core.styled.dynamic(function() {
87
+ var val = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true, env = arguments.length > 1 ? arguments[1] : void 0;
88
+ var frame = resolveInputFrame(val, env);
89
+ var fontStyle = (0, import_get_font_sized.getFontSized)(val, env);
95
90
  return {
96
- ...fontStyle,
91
+ color: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.color,
92
+ fontFamily: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontFamily,
93
+ fontSize: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontSize,
94
+ fontStyle: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontStyle,
95
+ fontWeight: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontWeight,
96
+ letterSpacing: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.letterSpacing,
97
+ lineHeight: import_core.isWeb ? fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.lineHeight : void 0,
98
+ textTransform: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.textTransform,
97
99
  height: frame.size,
98
100
  borderRadius: frame.radius,
99
- paddingHorizontal: getInputPadding(val, extras, 1)
101
+ paddingHorizontal: getInputPadding(val, env, 1)
100
102
  };
101
- };
102
- var textAreaSizeVariant = function() {
103
- var val = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true, extras = arguments.length > 1 ? arguments[1] : void 0;
104
- var { props } = extras;
105
- var frame = resolveInputFrame(val, extras);
106
- var fontStyle = (0, import_get_font_sized.getFontSized)(val, extras);
103
+ });
104
+ var textAreaSizeVariant = import_core.styled.dynamic(function() {
105
+ var val = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true, env = arguments.length > 1 ? arguments[1] : void 0;
106
+ var frame = resolveInputFrame(val, env);
107
+ var fontStyle = (0, import_get_font_sized.getFontSized)(val, env);
108
+ return {
109
+ borderRadius: frame.radius,
110
+ color: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.color,
111
+ fontFamily: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontFamily,
112
+ fontSize: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontSize,
113
+ fontStyle: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontStyle,
114
+ fontWeight: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontWeight,
115
+ letterSpacing: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.letterSpacing,
116
+ lineHeight: import_core.isWeb ? fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.lineHeight : void 0,
117
+ textTransform: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.textTransform,
118
+ paddingVertical: getInputPadding(val, env, 2),
119
+ paddingHorizontal: getInputPadding(val, env, 1),
120
+ height: "auto"
121
+ };
122
+ });
123
+ var resolveTextAreaSize = function(props, env) {
124
+ var _props_size;
125
+ var sized = textAreaSizeVariant((_props_size = props.size) !== null && _props_size !== void 0 ? _props_size : true, env);
126
+ var _props_size1;
127
+ var fontStyle = (0, import_get_font_sized.getFontSized)((_props_size1 = props.size) !== null && _props_size1 !== void 0 ? _props_size1 : true, env);
107
128
  var _props_rows;
108
129
  var lines = (_props_rows = props.rows) !== null && _props_rows !== void 0 ? _props_rows : props.numberOfLines;
109
- var height = typeof lines === "number" ? lines * (0, import_core2.getVariableValue)(fontStyle.lineHeight) : "auto";
110
- if (!import_core2.isWeb && fontStyle) {
111
- delete fontStyle["lineHeight"];
112
- }
130
+ var height = typeof lines === "number" ? lines * (0, import_core.getVariableValue)(fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.lineHeight) : sized === null || sized === void 0 ? void 0 : sized.height;
113
131
  return {
114
- borderRadius: frame.radius,
115
- ...fontStyle,
116
- paddingVertical: getInputPadding(val, extras, 2),
117
- paddingHorizontal: getInputPadding(val, extras, 1),
132
+ borderRadius: sized === null || sized === void 0 ? void 0 : sized.borderRadius,
133
+ color: sized === null || sized === void 0 ? void 0 : sized.color,
134
+ fontFamily: sized === null || sized === void 0 ? void 0 : sized.fontFamily,
135
+ fontSize: sized === null || sized === void 0 ? void 0 : sized.fontSize,
136
+ fontStyle: sized === null || sized === void 0 ? void 0 : sized.fontStyle,
137
+ fontWeight: sized === null || sized === void 0 ? void 0 : sized.fontWeight,
138
+ letterSpacing: sized === null || sized === void 0 ? void 0 : sized.letterSpacing,
139
+ lineHeight: sized === null || sized === void 0 ? void 0 : sized.lineHeight,
140
+ textTransform: sized === null || sized === void 0 ? void 0 : sized.textTransform,
141
+ paddingVertical: sized === null || sized === void 0 ? void 0 : sized.paddingVertical,
142
+ paddingHorizontal: sized === null || sized === void 0 ? void 0 : sized.paddingHorizontal,
118
143
  height
119
144
  };
120
145
  };
146
+ var resolveMultilineInputSize = function(props, env) {
147
+ if (!(props.rows > 1 || props.multiline || props.numberOfLines > 1)) return;
148
+ return resolveTextAreaSize(props, env);
149
+ };
121
150
  var INPUT_NAME = "Input";
122
151
  var styledBody = [{
123
152
  name: INPUT_NAME,
124
153
  render: "input",
125
154
  ...defaultStyles,
126
155
  variants: {
127
- size: {
128
- true: inputSizeVariant,
129
- Size: inputSizeVariant
130
- },
156
+ size: inputSizeVariant,
131
157
  disabled: { true: {} }
132
158
  }
133
- }, {
134
- isInput: true,
135
- accept: {
136
- placeholderTextColor: "color",
137
- selectionColor: "color",
138
- cursorColor: "color",
139
- selectionHandleColor: "color",
140
- underlineColorAndroid: "color"
141
- },
142
- validStyles: import_core.Text.staticConfig.validStyles
143
- }];
159
+ }, { isInput: true }];
144
160
 
145
161
  //# sourceMappingURL=shared.native.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.native.js","names":[],"sources":["jsx/shared.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar shared_exports = {};\n__export(shared_exports, {\n INPUT_NAME: () => INPUT_NAME,\n defaultStyles: () => defaultStyles,\n inputSizeVariant: () => inputSizeVariant,\n styledBody: () => styledBody,\n textAreaSizeVariant: () => textAreaSizeVariant\n});\nmodule.exports = __toCommonJS(shared_exports);\nvar import_core = require(\"@tamagui/core\");\nvar import_core2 = require(\"@tamagui/core\");\nvar import_get_font_sized = require(\"@tamagui/get-font-sized\");\nvar defaultStyles = {\n size: true,\n outlineWidth: 0,\n tabIndex: 0,\n // this fixes a flex bug where it overflows container\n minWidth: 0\n};\nvar resolveInputFrame = function(val, extras) {\n return (0, import_core2.resolveTokenSize)(val, {\n tokens: extras.tokens,\n font: extras.font\n }).frame;\n};\nvar inputSizeKeys = [\n \"0\",\n \"0-25\",\n \"0-5\",\n \"0-75\",\n \"1\",\n \"1-5\",\n \"2\",\n \"2-5\",\n \"3\",\n \"3-5\",\n \"4\",\n \"4-5\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"13\",\n \"14\",\n \"15\",\n \"16\",\n \"17\",\n \"18\",\n \"19\",\n \"20\"\n];\nvar getInputPadding = function(val, extras, steps) {\n if (typeof val === \"number\") {\n return steps === 1 ? Math.max(0, Math.round(val * 0.6 - 12)) : Math.max(0, Math.round(val * 0.52 - 11.5));\n }\n var key = val === true ? \"4\" : val;\n var index = inputSizeKeys.indexOf(key);\n return extras.tokens.space[inputSizeKeys[Math.max(0, index - steps)]];\n};\nvar inputSizeVariant = function() {\n var val = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true, extras = arguments.length > 1 ? arguments[1] : void 0;\n if (extras.props.tag === \"textarea\" || extras.props.rows > 1 || extras.props.multiline || extras.props.numberOfLines > 1) {\n return textAreaSizeVariant(val, extras);\n }\n var frame = resolveInputFrame(val, extras);\n var fontStyle = (0, import_get_font_sized.getFontSized)(val, extras);\n if (!import_core2.isWeb && fontStyle) {\n delete fontStyle[\"lineHeight\"];\n }\n return {\n ...fontStyle,\n height: frame.size,\n borderRadius: frame.radius,\n paddingHorizontal: getInputPadding(val, extras, 1)\n };\n};\nvar textAreaSizeVariant = function() {\n var val = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true, extras = arguments.length > 1 ? arguments[1] : void 0;\n var { props } = extras;\n var frame = resolveInputFrame(val, extras);\n var fontStyle = (0, import_get_font_sized.getFontSized)(val, extras);\n var _props_rows;\n var lines = (_props_rows = props.rows) !== null && _props_rows !== void 0 ? _props_rows : props.numberOfLines;\n var height = typeof lines === \"number\" ? lines * (0, import_core2.getVariableValue)(fontStyle.lineHeight) : \"auto\";\n if (!import_core2.isWeb && fontStyle) {\n delete fontStyle[\"lineHeight\"];\n }\n return {\n borderRadius: frame.radius,\n ...fontStyle,\n paddingVertical: getInputPadding(val, extras, 2),\n paddingHorizontal: getInputPadding(val, extras, 1),\n height\n };\n};\nvar INPUT_NAME = \"Input\";\nvar styledBody = [\n {\n name: INPUT_NAME,\n render: \"input\",\n ...defaultStyles,\n variants: {\n size: {\n true: inputSizeVariant,\n Size: inputSizeVariant\n },\n disabled: {\n true: {}\n }\n }\n },\n {\n isInput: true,\n accept: {\n placeholderTextColor: \"color\",\n selectionColor: \"color\",\n cursorColor: \"color\",\n selectionHandleColor: \"color\",\n underlineColorAndroid: \"color\"\n },\n validStyles: import_core.Text.staticConfig.validStyles\n }\n];\n//# sourceMappingURL=shared.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"shared.native.js","names":[],"sources":["jsx/shared.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar shared_exports = {};\n__export(shared_exports, {\n INPUT_NAME: () => INPUT_NAME,\n defaultStyles: () => defaultStyles,\n inputSizeVariant: () => inputSizeVariant,\n resolveMultilineInputSize: () => resolveMultilineInputSize,\n resolveTextAreaSize: () => resolveTextAreaSize,\n styledBody: () => styledBody,\n textAreaSizeVariant: () => textAreaSizeVariant\n});\nmodule.exports = __toCommonJS(shared_exports);\nvar import_core = require(\"@tamagui/core\");\nvar import_get_font_sized = require(\"@tamagui/get-font-sized\");\nvar defaultStyles = {\n size: true,\n outlineWidth: 0,\n tabIndex: 0,\n // this fixes a flex bug where it overflows container\n minWidth: 0\n};\nvar resolveInputFrame = function(val, env) {\n return (0, import_core.resolveTokenSize)(val, {\n tokens: env.tokens,\n font: env.font\n }).frame;\n};\nvar inputSizeKeys = [\n \"0\",\n \"0-25\",\n \"0-5\",\n \"0-75\",\n \"1\",\n \"1-5\",\n \"2\",\n \"2-5\",\n \"3\",\n \"3-5\",\n \"4\",\n \"4-5\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"10\",\n \"11\",\n \"12\",\n \"13\",\n \"14\",\n \"15\",\n \"16\",\n \"17\",\n \"18\",\n \"19\",\n \"20\"\n];\nvar getInputPadding = function(val, env, steps) {\n if (typeof val === \"number\") {\n return steps === 1 ? Math.max(0, Math.round(val * 0.6 - 12)) : Math.max(0, Math.round(val * 0.52 - 11.5));\n }\n var key = val === true ? \"4\" : val;\n var index = inputSizeKeys.indexOf(key);\n return env.tokens.space[inputSizeKeys[Math.max(0, index - steps)]];\n};\nvar inputSizeVariant = import_core.styled.dynamic(function() {\n var val = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true, env = arguments.length > 1 ? arguments[1] : void 0;\n var frame = resolveInputFrame(val, env);\n var fontStyle = (0, import_get_font_sized.getFontSized)(val, env);\n return {\n color: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.color,\n fontFamily: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontFamily,\n fontSize: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontSize,\n fontStyle: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontStyle,\n fontWeight: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontWeight,\n letterSpacing: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.letterSpacing,\n lineHeight: import_core.isWeb ? fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.lineHeight : void 0,\n textTransform: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.textTransform,\n height: frame.size,\n borderRadius: frame.radius,\n paddingHorizontal: getInputPadding(val, env, 1)\n };\n});\nvar textAreaSizeVariant = import_core.styled.dynamic(function() {\n var val = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : true, env = arguments.length > 1 ? arguments[1] : void 0;\n var frame = resolveInputFrame(val, env);\n var fontStyle = (0, import_get_font_sized.getFontSized)(val, env);\n return {\n borderRadius: frame.radius,\n color: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.color,\n fontFamily: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontFamily,\n fontSize: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontSize,\n fontStyle: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontStyle,\n fontWeight: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.fontWeight,\n letterSpacing: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.letterSpacing,\n lineHeight: import_core.isWeb ? fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.lineHeight : void 0,\n textTransform: fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.textTransform,\n paddingVertical: getInputPadding(val, env, 2),\n paddingHorizontal: getInputPadding(val, env, 1),\n height: \"auto\"\n };\n});\nvar resolveTextAreaSize = function(props, env) {\n var _props_size;\n var sized = textAreaSizeVariant((_props_size = props.size) !== null && _props_size !== void 0 ? _props_size : true, env);\n var _props_size1;\n var fontStyle = (0, import_get_font_sized.getFontSized)((_props_size1 = props.size) !== null && _props_size1 !== void 0 ? _props_size1 : true, env);\n var _props_rows;\n var lines = (_props_rows = props.rows) !== null && _props_rows !== void 0 ? _props_rows : props.numberOfLines;\n var height = typeof lines === \"number\" ? lines * (0, import_core.getVariableValue)(fontStyle === null || fontStyle === void 0 ? void 0 : fontStyle.lineHeight) : sized === null || sized === void 0 ? void 0 : sized.height;\n return {\n borderRadius: sized === null || sized === void 0 ? void 0 : sized.borderRadius,\n color: sized === null || sized === void 0 ? void 0 : sized.color,\n fontFamily: sized === null || sized === void 0 ? void 0 : sized.fontFamily,\n fontSize: sized === null || sized === void 0 ? void 0 : sized.fontSize,\n fontStyle: sized === null || sized === void 0 ? void 0 : sized.fontStyle,\n fontWeight: sized === null || sized === void 0 ? void 0 : sized.fontWeight,\n letterSpacing: sized === null || sized === void 0 ? void 0 : sized.letterSpacing,\n lineHeight: sized === null || sized === void 0 ? void 0 : sized.lineHeight,\n textTransform: sized === null || sized === void 0 ? void 0 : sized.textTransform,\n paddingVertical: sized === null || sized === void 0 ? void 0 : sized.paddingVertical,\n paddingHorizontal: sized === null || sized === void 0 ? void 0 : sized.paddingHorizontal,\n height\n };\n};\nvar resolveMultilineInputSize = function(props, env) {\n if (!(props.rows > 1 || props.multiline || props.numberOfLines > 1)) return;\n return resolveTextAreaSize(props, env);\n};\nvar INPUT_NAME = \"Input\";\nvar styledBody = [\n {\n name: INPUT_NAME,\n render: \"input\",\n ...defaultStyles,\n variants: {\n size: inputSizeVariant,\n disabled: {\n true: {}\n }\n }\n },\n {\n isInput: true\n }\n];\n//# sourceMappingURL=shared.js.map\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/input",
3
- "version": "3.0.0-beta.831.1",
3
+ "version": "3.0.0-beta.889.1",
4
4
  "gitHead": "a49cc7ea6b93ba384e77a4880ae48ac4a5635c14",
5
5
  "source": "src/index.ts",
6
6
  "files": [
@@ -36,19 +36,19 @@
36
36
  "test:web": "vitest --typecheck --run"
37
37
  },
38
38
  "dependencies": {
39
- "@tamagui/core": "3.0.0-beta.831.1",
40
- "@tamagui/element": "3.0.0-beta.831.1",
41
- "@tamagui/focusable": "3.0.0-beta.831.1",
42
- "@tamagui/font-size": "3.0.0-beta.831.1",
43
- "@tamagui/get-font-sized": "3.0.0-beta.831.1",
44
- "@tamagui/helpers": "3.0.0-beta.831.1",
45
- "@tamagui/helpers-tamagui": "3.0.0-beta.831.1",
46
- "@tamagui/stacks": "3.0.0-beta.831.1",
47
- "@tamagui/text": "3.0.0-beta.831.1",
48
- "@tamagui/web": "3.0.0-beta.831.1"
39
+ "@tamagui/core": "3.0.0-beta.889.1",
40
+ "@tamagui/element": "3.0.0-beta.889.1",
41
+ "@tamagui/focusable": "3.0.0-beta.889.1",
42
+ "@tamagui/font-size": "3.0.0-beta.889.1",
43
+ "@tamagui/get-font-sized": "3.0.0-beta.889.1",
44
+ "@tamagui/helpers": "3.0.0-beta.889.1",
45
+ "@tamagui/helpers-tamagui": "3.0.0-beta.889.1",
46
+ "@tamagui/stacks": "3.0.0-beta.889.1",
47
+ "@tamagui/text": "3.0.0-beta.889.1",
48
+ "@tamagui/web": "3.0.0-beta.889.1"
49
49
  },
50
50
  "devDependencies": {
51
- "@tamagui/build": "3.0.0-beta.831.1",
51
+ "@tamagui/build": "3.0.0-beta.889.1",
52
52
  "react": "19.2.3",
53
53
  "react-native": "0.86.2",
54
54
  "vitest": "4.1.0"
@@ -3,10 +3,12 @@ import { TextInput, type TextInputProps as RNTextInputProps } from 'react-native
3
3
  import { createStyledHOC, type GetProps, styled } from '@tamagui/core'
4
4
  import { registerFocusable } from '@tamagui/focusable'
5
5
  import { useNativeInputRef } from '@tamagui/element'
6
- import { styledBody } from './shared'
6
+ import { resolveMultilineInputSize, styledBody } from './shared'
7
7
  import type { InputExtraProps } from './types'
8
8
 
9
- const StyledInput = styled(TextInput, styledBody[0], styledBody[1])
9
+ const StyledInput = styled(TextInput, styledBody[0], styledBody[1]).resolve(
10
+ resolveMultilineInputSize
11
+ )
10
12
 
11
13
  /**
12
14
  * A web-aligned input component for React Native.
package/src/Input.tsx CHANGED
@@ -1,11 +1,13 @@
1
- import { createStyledHOC, type GetProps, View, styled, useTheme } from '@tamagui/core'
1
+ import { createStyledHOC, type GetProps, View, styled } from '@tamagui/core'
2
2
  import { registerFocusable } from '@tamagui/focusable'
3
3
  import { useWebRef } from '@tamagui/element'
4
4
  import React from 'react'
5
- import { styledBody } from './shared'
5
+ import { resolveMultilineInputSize, styledBody } from './shared'
6
6
  import type { InputExtraProps } from './types'
7
7
 
8
- const StyledInput = styled(View, styledBody[0], styledBody[1])
8
+ const StyledInput = styled(View, styledBody[0], styledBody[1]).resolve(
9
+ resolveMultilineInputSize
10
+ )
9
11
 
10
12
  /**
11
13
  * A web-aligned input component.
@@ -24,8 +26,6 @@ export const Input = createStyledHOC(
24
26
  onSubmitEditing,
25
27
  onSelectionChange,
26
28
  selection,
27
- placeholderTextColor,
28
- selectionColor,
29
29
  rows,
30
30
 
31
31
  // Native-only props (ignored on web)
@@ -67,8 +67,6 @@ export const Input = createStyledHOC(
67
67
  disableKeyboardShortcuts,
68
68
 
69
69
  // Android-only props (ignored on web)
70
- cursorColor,
71
- selectionHandleColor,
72
70
  underlineColorAndroid,
73
71
  importantForAutofill,
74
72
  disableFullscreenUI,
@@ -85,8 +83,6 @@ export const Input = createStyledHOC(
85
83
  } = props
86
84
 
87
85
  const { ref, composedRef } = useWebRef<HTMLInputElement>(_forwardedRef)
88
- const theme = useTheme()
89
-
90
86
  // convert native-style values to web equivalents
91
87
  const autoCorrect =
92
88
  autoCorrectProp === true
@@ -164,16 +160,6 @@ export const Input = createStyledHOC(
164
160
  autoCapitalize,
165
161
  onKeyDown: onSubmitEditing ? handleKeyDown : rest.onKeyDown,
166
162
  onChange: onChangeText ? handleChange : rest.onChange,
167
- style: {
168
- ...(rest.style as any),
169
- ...(placeholderTextColor && {
170
- '--t_placeholderColor':
171
- theme[placeholderTextColor]?.variable || placeholderTextColor,
172
- }),
173
- ...(selectionColor && {
174
- '--t_selectionColor': theme[selectionColor]?.variable || selectionColor,
175
- }),
176
- },
177
163
  } as any
178
164
 
179
165
  return <StyledInput ref={composedRef} {...finalProps} />
package/src/TextArea.tsx CHANGED
@@ -1,12 +1,12 @@
1
1
  import { type GetProps, styled } from '@tamagui/web'
2
2
  import { Input } from './Input'
3
- import { defaultStyles, textAreaSizeVariant } from './shared'
3
+ import { defaultStyles, resolveTextAreaSize, textAreaSizeVariant } from './shared'
4
4
 
5
5
  /**
6
6
  * A web-aligned textarea component (multi-line input).
7
7
  * @see — Docs https://tamagui.dev/ui/inputs#textarea
8
8
  */
9
- export const TextArea = styled(Input, {
9
+ const TextAreaFrame = styled(Input, {
10
10
  displayName: 'TextArea',
11
11
  render: 'textarea',
12
12
 
@@ -18,11 +18,10 @@ export const TextArea = styled(Input, {
18
18
  rows: 3,
19
19
 
20
20
  variants: {
21
- size: {
22
- true: textAreaSizeVariant,
23
- Size: textAreaSizeVariant,
24
- },
21
+ size: textAreaSizeVariant,
25
22
  } as const,
26
23
  })
27
24
 
25
+ export const TextArea = TextAreaFrame.resolve(resolveTextAreaSize)
26
+
28
27
  export type TextAreaProps = GetProps<typeof TextArea>