@tamagui/constants 3.0.0-beta.765.1 → 3.0.0-beta.804.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.
- package/dist/cjs/constants.cjs +10 -0
- package/dist/cjs/constants.native.cjs +10 -0
- package/dist/cjs/constants.native.js +10 -0
- package/dist/cjs/constants.native.js.map +1 -1
- package/dist/esm/constants.mjs +10 -1
- package/dist/esm/constants.mjs.map +1 -1
- package/dist/esm/constants.native.js +10 -1
- package/dist/esm/constants.native.js.map +1 -1
- package/package.json +2 -2
- package/src/constants.native.ts +10 -0
- package/src/constants.ts +10 -0
- package/types/constants.d.ts +1 -0
- package/types/constants.d.ts.map +2 -2
- package/types/constants.native.d.ts +1 -0
- package/types/constants.native.d.ts.map +2 -2
package/dist/cjs/constants.cjs
CHANGED
|
@@ -32,6 +32,7 @@ __export(constants_exports, {
|
|
|
32
32
|
isTouchable: () => isTouchable,
|
|
33
33
|
isWeb: () => isWeb,
|
|
34
34
|
isWebTouchable: () => isWebTouchable,
|
|
35
|
+
platformMatches: () => platformMatches,
|
|
35
36
|
supportsDynamicColorIOS: () => supportsDynamicColorIOS,
|
|
36
37
|
useIsomorphicLayoutEffect: () => useIsomorphicLayoutEffect
|
|
37
38
|
});
|
|
@@ -50,4 +51,13 @@ const isAndroid = process.env.TEST_NATIVE_PLATFORM === "android" || process.env.
|
|
|
50
51
|
const isIos = process.env.TEST_NATIVE_PLATFORM === "ios" || process.env.TEST_NATIVE_PLATFORM === "tvos";
|
|
51
52
|
const supportsDynamicColorIOS = isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === "1";
|
|
52
53
|
const isTV = process.env.TEST_NATIVE_PLATFORM === "androidtv" || process.env.TEST_NATIVE_PLATFORM === "tvos";
|
|
54
|
+
function platformMatches(name) {
|
|
55
|
+
if (name === "web") return isWeb;
|
|
56
|
+
if (name === "native") return false;
|
|
57
|
+
if (name === "ios") return isIos;
|
|
58
|
+
if (name === "android") return isAndroid;
|
|
59
|
+
if (name === "tvos") return isIos && isTV;
|
|
60
|
+
if (name === "androidtv") return isAndroid && isTV;
|
|
61
|
+
return name === "tv" && isTV;
|
|
62
|
+
}
|
|
53
63
|
const currentPlatform = "web";
|
|
@@ -34,6 +34,7 @@ __export(constants_native_exports, {
|
|
|
34
34
|
isTouchable: () => isTouchable,
|
|
35
35
|
isWeb: () => isWeb,
|
|
36
36
|
isWebTouchable: () => isWebTouchable,
|
|
37
|
+
platformMatches: () => platformMatches,
|
|
37
38
|
supportsDynamicColorIOS: () => supportsDynamicColorIOS,
|
|
38
39
|
useIsomorphicLayoutEffect: () => useIsomorphicLayoutEffect
|
|
39
40
|
});
|
|
@@ -53,6 +54,15 @@ var isAndroid = (import_react_native.Platform === null || import_react_native.Pl
|
|
|
53
54
|
var isIos = (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) === "ios" || process.env.TEST_NATIVE_PLATFORM === "ios" || process.env.TEST_NATIVE_PLATFORM === "tvos";
|
|
54
55
|
var supportsDynamicColorIOS = isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === "1";
|
|
55
56
|
var isTV = (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.isTV) || process.env.TEST_NATIVE_PLATFORM === "androidtv" || process.env.TEST_NATIVE_PLATFORM === "tvos";
|
|
57
|
+
function platformMatches(name) {
|
|
58
|
+
if (name === "web") return isWeb;
|
|
59
|
+
if (name === "native") return !isWeb;
|
|
60
|
+
if (name === "ios") return isIos;
|
|
61
|
+
if (name === "android") return isAndroid;
|
|
62
|
+
if (name === "tvos") return isIos && isTV;
|
|
63
|
+
if (name === "androidtv") return isAndroid && isTV;
|
|
64
|
+
return name === "tv" && isTV;
|
|
65
|
+
}
|
|
56
66
|
var currentPlatform = ((import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) ? {
|
|
57
67
|
ios: "ios",
|
|
58
68
|
android: "android",
|
|
@@ -34,6 +34,7 @@ __export(constants_native_exports, {
|
|
|
34
34
|
isTouchable: () => isTouchable,
|
|
35
35
|
isWeb: () => isWeb,
|
|
36
36
|
isWebTouchable: () => isWebTouchable,
|
|
37
|
+
platformMatches: () => platformMatches,
|
|
37
38
|
supportsDynamicColorIOS: () => supportsDynamicColorIOS,
|
|
38
39
|
useIsomorphicLayoutEffect: () => useIsomorphicLayoutEffect
|
|
39
40
|
});
|
|
@@ -53,6 +54,15 @@ var isAndroid = (import_react_native.Platform === null || import_react_native.Pl
|
|
|
53
54
|
var isIos = (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) === "ios" || process.env.TEST_NATIVE_PLATFORM === "ios" || process.env.TEST_NATIVE_PLATFORM === "tvos";
|
|
54
55
|
var supportsDynamicColorIOS = isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === "1";
|
|
55
56
|
var isTV = (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.isTV) || process.env.TEST_NATIVE_PLATFORM === "androidtv" || process.env.TEST_NATIVE_PLATFORM === "tvos";
|
|
57
|
+
function platformMatches(name) {
|
|
58
|
+
if (name === "web") return isWeb;
|
|
59
|
+
if (name === "native") return !isWeb;
|
|
60
|
+
if (name === "ios") return isIos;
|
|
61
|
+
if (name === "android") return isAndroid;
|
|
62
|
+
if (name === "tvos") return isIos && isTV;
|
|
63
|
+
if (name === "androidtv") return isAndroid && isTV;
|
|
64
|
+
return name === "tv" && isTV;
|
|
65
|
+
}
|
|
56
66
|
var currentPlatform = ((import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) ? {
|
|
57
67
|
ios: "ios",
|
|
58
68
|
android: "android",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.native.js","names":[],"sources":["cjs/constants.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\tfor (var name in all) __defProp(target, name, {\n\t\tget: all[name],\n\t\tenumerable: true\n\t});\n};\nvar __copyProps = (to, from, except, desc) => {\n\tif (from && typeof from === \"object\" || typeof from === \"function\") {\n\t\tfor (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {\n\t\t\tget: () => from[key],\n\t\t\tenumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable\n\t\t});\n\t}\n\treturn to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar constants_native_exports = {};\n__export(constants_native_exports, {\n\tcurrentPlatform: () => currentPlatform,\n\tisAndroid: () => isAndroid,\n\tisBrowser: () => isBrowser,\n\tisChrome: () => isChrome,\n\tisClient: () => isClient,\n\tisIos: () => isIos,\n\tisNativeDesktop: () => isNativeDesktop,\n\tisServer: () => isServer,\n\tisTV: () => isTV,\n\tisTouchable: () => isTouchable,\n\tisWeb: () => isWeb,\n\tisWebTouchable: () => isWebTouchable,\n\tsupportsDynamicColorIOS: () => supportsDynamicColorIOS,\n\tuseIsomorphicLayoutEffect: () => useIsomorphicLayoutEffect\n});\nmodule.exports = __toCommonJS(constants_native_exports);\nvar import_react = require(\"react\");\nvar import_react_native = require(\"react-native\");\nvar isWeb = false;\nvar isBrowser = false;\nvar isServer = false;\nvar isClient = true;\nvar useIsomorphicLayoutEffect = import_react.useLayoutEffect;\nvar isChrome = false;\nvar isWebTouchable = false;\nvar isNativeDesktop = (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) === \"macos\" || (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) === \"windows\";\nvar isTouchable = !isNativeDesktop;\nvar isAndroid = (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) === \"android\" || process.env.TEST_NATIVE_PLATFORM === \"android\" || process.env.TEST_NATIVE_PLATFORM === \"androidtv\";\nvar isIos = (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) === \"ios\" || process.env.TEST_NATIVE_PLATFORM === \"ios\" || process.env.TEST_NATIVE_PLATFORM === \"tvos\";\nvar supportsDynamicColorIOS = isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === \"1\";\nvar isTV = (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.isTV) || process.env.TEST_NATIVE_PLATFORM === \"androidtv\" || process.env.TEST_NATIVE_PLATFORM === \"tvos\";\nvar currentPlatform = ((import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) ? {\n\tios: \"ios\",\n\tandroid: \"android\",\n\tmacos: \"macos\",\n\twindows: \"windows\"\n}[import_react_native.Platform.OS] : void 0) || \"native\";\n//# sourceMappingURL=constants.native.js.map\n"],"mappings":";;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC/B,KAAK,IAAI,QAAQ,KAAK,UAAU,QAAQ,MAAM;EAC7C,KAAK,IAAI;EACT,YAAY;CACb,CAAC;AACF;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC7C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EACnE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GAAG,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QAAQ,UAAU,IAAI,KAAK;GAC9G,WAAW,KAAK;GAChB,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAC3D,CAAC;CACF;CACA,OAAO;AACR;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,2BAA2B,CAAC;AAChC,SAAS,0BAA0B;CAClC,uBAAuB;CACvB,iBAAiB;CACjB,iBAAiB;CACjB,gBAAgB;CAChB,gBAAgB;CAChB,aAAa;CACb,uBAAuB;CACvB,gBAAgB;CAChB,YAAY;CACZ,mBAAmB;CACnB,aAAa;CACb,sBAAsB;CACtB,+BAA+B;CAC/B,iCAAiC;AAClC,CAAC;AACD,OAAO,UAAU,aAAa,wBAAwB;AACtD,IAAI,eAAe,QAAQ,OAAO;AAClC,IAAI,sBAAsB,QAAQ,cAAc;AAChD,IAAI,QAAQ;AACZ,IAAI,YAAY;AAChB,IAAI,WAAW;AACf,IAAI,WAAW;AACf,IAAI,4BAA4B,aAAa;AAC7C,IAAI,WAAW;AACf,IAAI,iBAAiB;AACrB,IAAI,mBAAmB,oBAAoB,aAAa,QAAQ,oBAAoB,aAAa,KAAK,IAAI,KAAK,IAAI,oBAAoB,SAAS,QAAQ,YAAY,oBAAoB,aAAa,QAAQ,oBAAoB,aAAa,KAAK,IAAI,KAAK,IAAI,oBAAoB,SAAS,QAAQ;AACrS,IAAI,cAAc,CAAC;AACnB,IAAI,aAAa,oBAAoB,aAAa,QAAQ,oBAAoB,aAAa,KAAK,IAAI,KAAK,IAAI,oBAAoB,SAAS,QAAQ,aAAa,QAAQ,IAAI,yBAAyB,aAAa,QAAQ,IAAI,yBAAyB;AACtP,IAAI,SAAS,oBAAoB,aAAa,QAAQ,oBAAoB,aAAa,KAAK,IAAI,KAAK,IAAI,oBAAoB,SAAS,QAAQ,SAAS,QAAQ,IAAI,yBAAyB,SAAS,QAAQ,IAAI,yBAAyB;AAC1O,IAAI,0BAA0B,SAAS,QAAQ,IAAI,8BAA8B;AACjF,IAAI,QAAQ,oBAAoB,aAAa,QAAQ,oBAAoB,aAAa,KAAK,IAAI,KAAK,IAAI,oBAAoB,SAAS,SAAS,QAAQ,IAAI,yBAAyB,eAAe,QAAQ,IAAI,yBAAyB;AACvO,IAAI,oBAAoB,oBAAoB,aAAa,QAAQ,oBAAoB,aAAa,KAAK,IAAI,KAAK,IAAI,oBAAoB,SAAS,MAAM;CACtJ,KAAK;CACL,SAAS;CACT,OAAO;CACP,SAAS;AACV,EAAE,oBAAoB,SAAS,MAAM,KAAK,MAAM"}
|
|
1
|
+
{"version":3,"file":"constants.native.js","names":[],"sources":["cjs/constants.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\tfor (var name in all) __defProp(target, name, {\n\t\tget: all[name],\n\t\tenumerable: true\n\t});\n};\nvar __copyProps = (to, from, except, desc) => {\n\tif (from && typeof from === \"object\" || typeof from === \"function\") {\n\t\tfor (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {\n\t\t\tget: () => from[key],\n\t\t\tenumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable\n\t\t});\n\t}\n\treturn to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar constants_native_exports = {};\n__export(constants_native_exports, {\n\tcurrentPlatform: () => currentPlatform,\n\tisAndroid: () => isAndroid,\n\tisBrowser: () => isBrowser,\n\tisChrome: () => isChrome,\n\tisClient: () => isClient,\n\tisIos: () => isIos,\n\tisNativeDesktop: () => isNativeDesktop,\n\tisServer: () => isServer,\n\tisTV: () => isTV,\n\tisTouchable: () => isTouchable,\n\tisWeb: () => isWeb,\n\tisWebTouchable: () => isWebTouchable,\n\tplatformMatches: () => platformMatches,\n\tsupportsDynamicColorIOS: () => supportsDynamicColorIOS,\n\tuseIsomorphicLayoutEffect: () => useIsomorphicLayoutEffect\n});\nmodule.exports = __toCommonJS(constants_native_exports);\nvar import_react = require(\"react\");\nvar import_react_native = require(\"react-native\");\nvar isWeb = false;\nvar isBrowser = false;\nvar isServer = false;\nvar isClient = true;\nvar useIsomorphicLayoutEffect = import_react.useLayoutEffect;\nvar isChrome = false;\nvar isWebTouchable = false;\nvar isNativeDesktop = (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) === \"macos\" || (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) === \"windows\";\nvar isTouchable = !isNativeDesktop;\nvar isAndroid = (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) === \"android\" || process.env.TEST_NATIVE_PLATFORM === \"android\" || process.env.TEST_NATIVE_PLATFORM === \"androidtv\";\nvar isIos = (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) === \"ios\" || process.env.TEST_NATIVE_PLATFORM === \"ios\" || process.env.TEST_NATIVE_PLATFORM === \"tvos\";\nvar supportsDynamicColorIOS = isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === \"1\";\nvar isTV = (import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.isTV) || process.env.TEST_NATIVE_PLATFORM === \"androidtv\" || process.env.TEST_NATIVE_PLATFORM === \"tvos\";\nfunction platformMatches(name) {\n\tif (name === \"web\") return isWeb;\n\tif (name === \"native\") return !isWeb;\n\tif (name === \"ios\") return isIos;\n\tif (name === \"android\") return isAndroid;\n\tif (name === \"tvos\") return isIos && isTV;\n\tif (name === \"androidtv\") return isAndroid && isTV;\n\treturn name === \"tv\" && isTV;\n}\nvar currentPlatform = ((import_react_native.Platform === null || import_react_native.Platform === void 0 ? void 0 : import_react_native.Platform.OS) ? {\n\tios: \"ios\",\n\tandroid: \"android\",\n\tmacos: \"macos\",\n\twindows: \"windows\"\n}[import_react_native.Platform.OS] : void 0) || \"native\";\n//# sourceMappingURL=constants.native.js.map\n"],"mappings":";;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC/B,KAAK,IAAI,QAAQ,KAAK,UAAU,QAAQ,MAAM;EAC7C,KAAK,IAAI;EACT,YAAY;CACb,CAAC;AACF;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC7C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EACnE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GAAG,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QAAQ,UAAU,IAAI,KAAK;GAC9G,WAAW,KAAK;GAChB,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAC3D,CAAC;CACF;CACA,OAAO;AACR;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,2BAA2B,CAAC;AAChC,SAAS,0BAA0B;CAClC,uBAAuB;CACvB,iBAAiB;CACjB,iBAAiB;CACjB,gBAAgB;CAChB,gBAAgB;CAChB,aAAa;CACb,uBAAuB;CACvB,gBAAgB;CAChB,YAAY;CACZ,mBAAmB;CACnB,aAAa;CACb,sBAAsB;CACtB,uBAAuB;CACvB,+BAA+B;CAC/B,iCAAiC;AAClC,CAAC;AACD,OAAO,UAAU,aAAa,wBAAwB;AACtD,IAAI,eAAe,QAAQ,OAAO;AAClC,IAAI,sBAAsB,QAAQ,cAAc;AAChD,IAAI,QAAQ;AACZ,IAAI,YAAY;AAChB,IAAI,WAAW;AACf,IAAI,WAAW;AACf,IAAI,4BAA4B,aAAa;AAC7C,IAAI,WAAW;AACf,IAAI,iBAAiB;AACrB,IAAI,mBAAmB,oBAAoB,aAAa,QAAQ,oBAAoB,aAAa,KAAK,IAAI,KAAK,IAAI,oBAAoB,SAAS,QAAQ,YAAY,oBAAoB,aAAa,QAAQ,oBAAoB,aAAa,KAAK,IAAI,KAAK,IAAI,oBAAoB,SAAS,QAAQ;AACrS,IAAI,cAAc,CAAC;AACnB,IAAI,aAAa,oBAAoB,aAAa,QAAQ,oBAAoB,aAAa,KAAK,IAAI,KAAK,IAAI,oBAAoB,SAAS,QAAQ,aAAa,QAAQ,IAAI,yBAAyB,aAAa,QAAQ,IAAI,yBAAyB;AACtP,IAAI,SAAS,oBAAoB,aAAa,QAAQ,oBAAoB,aAAa,KAAK,IAAI,KAAK,IAAI,oBAAoB,SAAS,QAAQ,SAAS,QAAQ,IAAI,yBAAyB,SAAS,QAAQ,IAAI,yBAAyB;AAC1O,IAAI,0BAA0B,SAAS,QAAQ,IAAI,8BAA8B;AACjF,IAAI,QAAQ,oBAAoB,aAAa,QAAQ,oBAAoB,aAAa,KAAK,IAAI,KAAK,IAAI,oBAAoB,SAAS,SAAS,QAAQ,IAAI,yBAAyB,eAAe,QAAQ,IAAI,yBAAyB;AACvO,SAAS,gBAAgB,MAAM;CAC9B,IAAI,SAAS,OAAO,OAAO;CAC3B,IAAI,SAAS,UAAU,OAAO,CAAC;CAC/B,IAAI,SAAS,OAAO,OAAO;CAC3B,IAAI,SAAS,WAAW,OAAO;CAC/B,IAAI,SAAS,QAAQ,OAAO,SAAS;CACrC,IAAI,SAAS,aAAa,OAAO,aAAa;CAC9C,OAAO,SAAS,QAAQ;AACzB;AACA,IAAI,oBAAoB,oBAAoB,aAAa,QAAQ,oBAAoB,aAAa,KAAK,IAAI,KAAK,IAAI,oBAAoB,SAAS,MAAM;CACtJ,KAAK;CACL,SAAS;CACT,OAAO;CACP,SAAS;AACV,EAAE,oBAAoB,SAAS,MAAM,KAAK,MAAM"}
|
package/dist/esm/constants.mjs
CHANGED
|
@@ -13,7 +13,16 @@ const isAndroid = process.env.TEST_NATIVE_PLATFORM === "android" || process.env.
|
|
|
13
13
|
const isIos = process.env.TEST_NATIVE_PLATFORM === "ios" || process.env.TEST_NATIVE_PLATFORM === "tvos";
|
|
14
14
|
const supportsDynamicColorIOS = isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === "1";
|
|
15
15
|
const isTV = process.env.TEST_NATIVE_PLATFORM === "androidtv" || process.env.TEST_NATIVE_PLATFORM === "tvos";
|
|
16
|
+
function platformMatches(name) {
|
|
17
|
+
if (name === "web") return true;
|
|
18
|
+
if (name === "native") return false;
|
|
19
|
+
if (name === "ios") return isIos;
|
|
20
|
+
if (name === "android") return isAndroid;
|
|
21
|
+
if (name === "tvos") return isIos && isTV;
|
|
22
|
+
if (name === "androidtv") return isAndroid && isTV;
|
|
23
|
+
return name === "tv" && isTV;
|
|
24
|
+
}
|
|
16
25
|
const currentPlatform = "web";
|
|
17
26
|
|
|
18
|
-
export { currentPlatform, isAndroid, isBrowser, isChrome, isClient, isIos, isNativeDesktop, isServer, isTV, isTouchable, isWeb, isWebTouchable, supportsDynamicColorIOS, useIsomorphicLayoutEffect };
|
|
27
|
+
export { currentPlatform, isAndroid, isBrowser, isChrome, isClient, isIos, isNativeDesktop, isServer, isTV, isTouchable, isWeb, isWebTouchable, platformMatches, supportsDynamicColorIOS, useIsomorphicLayoutEffect };
|
|
19
28
|
//# sourceMappingURL=constants.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","names":[],"sources":["esm/constants.js"],"sourcesContent":["import { useEffect, useLayoutEffect } from \"react\";\n\nconst isWeb = true;\nconst isBrowser = typeof navigator !== \"undefined\" && typeof location !== \"undefined\";\nconst isServer = !isBrowser;\nconst isClient = isBrowser;\nconst useIsomorphicLayoutEffect = isServer ? useEffect : useLayoutEffect;\nconst isChrome = typeof navigator !== \"undefined\" && /Chrome/.test(navigator.userAgent || \"\");\nconst isWebTouchable = isClient && (\"ontouchstart\" in window || navigator.maxTouchPoints > 0);\nconst isNativeDesktop = false;\nconst isTouchable = isWebTouchable;\nconst isAndroid = process.env.TEST_NATIVE_PLATFORM === \"android\" || process.env.TEST_NATIVE_PLATFORM === \"androidtv\";\nconst isIos = process.env.TEST_NATIVE_PLATFORM === \"ios\" || process.env.TEST_NATIVE_PLATFORM === \"tvos\";\nconst supportsDynamicColorIOS = isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === \"1\";\nconst isTV = process.env.TEST_NATIVE_PLATFORM === \"androidtv\" || process.env.TEST_NATIVE_PLATFORM === \"tvos\";\nconst currentPlatform = \"web\";\n\nexport { currentPlatform, isAndroid, isBrowser, isChrome, isClient, isIos, isNativeDesktop, isServer, isTV, isTouchable, isWeb, isWebTouchable, supportsDynamicColorIOS, useIsomorphicLayoutEffect };"],"mappings":";;;AAEA,MAAM,QAAQ;AACd,MAAM,YAAY,OAAO,cAAc,eAAe,OAAO,aAAa;AAC1E,MAAM,WAAW,CAAC;AAClB,MAAM,WAAW;AACjB,MAAM,4BAA4B,WAAW,YAAY;AACzD,MAAM,WAAW,OAAO,cAAc,eAAe,SAAS,KAAK,UAAU,aAAa,EAAE;AAC5F,MAAM,iBAAiB,aAAa,kBAAkB,UAAU,UAAU,iBAAiB;AAC3F,MAAM,kBAAkB;AACxB,MAAM,cAAc;AACpB,MAAM,YAAY,QAAQ,IAAI,yBAAyB,aAAa,QAAQ,IAAI,yBAAyB;AACzG,MAAM,QAAQ,QAAQ,IAAI,yBAAyB,SAAS,QAAQ,IAAI,yBAAyB;AACjG,MAAM,0BAA0B,SAAS,QAAQ,IAAI,8BAA8B;AACnF,MAAM,OAAO,QAAQ,IAAI,yBAAyB,eAAe,QAAQ,IAAI,yBAAyB;AACtG,MAAM,kBAAkB"}
|
|
1
|
+
{"version":3,"file":"constants.js","names":[],"sources":["esm/constants.js"],"sourcesContent":["import { useEffect, useLayoutEffect } from \"react\";\n\nconst isWeb = true;\nconst isBrowser = typeof navigator !== \"undefined\" && typeof location !== \"undefined\";\nconst isServer = !isBrowser;\nconst isClient = isBrowser;\nconst useIsomorphicLayoutEffect = isServer ? useEffect : useLayoutEffect;\nconst isChrome = typeof navigator !== \"undefined\" && /Chrome/.test(navigator.userAgent || \"\");\nconst isWebTouchable = isClient && (\"ontouchstart\" in window || navigator.maxTouchPoints > 0);\nconst isNativeDesktop = false;\nconst isTouchable = isWebTouchable;\nconst isAndroid = process.env.TEST_NATIVE_PLATFORM === \"android\" || process.env.TEST_NATIVE_PLATFORM === \"androidtv\";\nconst isIos = process.env.TEST_NATIVE_PLATFORM === \"ios\" || process.env.TEST_NATIVE_PLATFORM === \"tvos\";\nconst supportsDynamicColorIOS = isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === \"1\";\nconst isTV = process.env.TEST_NATIVE_PLATFORM === \"androidtv\" || process.env.TEST_NATIVE_PLATFORM === \"tvos\";\nfunction platformMatches(name) {\n\tif (name === \"web\") return true;\n\tif (name === \"native\") return false;\n\tif (name === \"ios\") return isIos;\n\tif (name === \"android\") return isAndroid;\n\tif (name === \"tvos\") return isIos && isTV;\n\tif (name === \"androidtv\") return isAndroid && isTV;\n\treturn name === \"tv\" && isTV;\n}\nconst currentPlatform = \"web\";\n\nexport { currentPlatform, isAndroid, isBrowser, isChrome, isClient, isIos, isNativeDesktop, isServer, isTV, isTouchable, isWeb, isWebTouchable, platformMatches, supportsDynamicColorIOS, useIsomorphicLayoutEffect };"],"mappings":";;;AAEA,MAAM,QAAQ;AACd,MAAM,YAAY,OAAO,cAAc,eAAe,OAAO,aAAa;AAC1E,MAAM,WAAW,CAAC;AAClB,MAAM,WAAW;AACjB,MAAM,4BAA4B,WAAW,YAAY;AACzD,MAAM,WAAW,OAAO,cAAc,eAAe,SAAS,KAAK,UAAU,aAAa,EAAE;AAC5F,MAAM,iBAAiB,aAAa,kBAAkB,UAAU,UAAU,iBAAiB;AAC3F,MAAM,kBAAkB;AACxB,MAAM,cAAc;AACpB,MAAM,YAAY,QAAQ,IAAI,yBAAyB,aAAa,QAAQ,IAAI,yBAAyB;AACzG,MAAM,QAAQ,QAAQ,IAAI,yBAAyB,SAAS,QAAQ,IAAI,yBAAyB;AACjG,MAAM,0BAA0B,SAAS,QAAQ,IAAI,8BAA8B;AACnF,MAAM,OAAO,QAAQ,IAAI,yBAAyB,eAAe,QAAQ,IAAI,yBAAyB;AACtG,SAAS,gBAAgB,MAAM;CAC9B,IAAI,SAAS,OAAO,OAAO;CAC3B,IAAI,SAAS,UAAU,OAAO;CAC9B,IAAI,SAAS,OAAO,OAAO;CAC3B,IAAI,SAAS,WAAW,OAAO;CAC/B,IAAI,SAAS,QAAQ,OAAO,SAAS;CACrC,IAAI,SAAS,aAAa,OAAO,aAAa;CAC9C,OAAO,SAAS,QAAQ;AACzB;AACA,MAAM,kBAAkB"}
|
|
@@ -14,6 +14,15 @@ var isAndroid = (Platform === null || Platform === void 0 ? void 0 : Platform.OS
|
|
|
14
14
|
var isIos = (Platform === null || Platform === void 0 ? void 0 : Platform.OS) === "ios" || process.env.TEST_NATIVE_PLATFORM === "ios" || process.env.TEST_NATIVE_PLATFORM === "tvos";
|
|
15
15
|
var supportsDynamicColorIOS = isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === "1";
|
|
16
16
|
var isTV = (Platform === null || Platform === void 0 ? void 0 : Platform.isTV) || process.env.TEST_NATIVE_PLATFORM === "androidtv" || process.env.TEST_NATIVE_PLATFORM === "tvos";
|
|
17
|
+
function platformMatches(name) {
|
|
18
|
+
if (name === "web") return false;
|
|
19
|
+
if (name === "native") return !false;
|
|
20
|
+
if (name === "ios") return isIos;
|
|
21
|
+
if (name === "android") return isAndroid;
|
|
22
|
+
if (name === "tvos") return isIos && isTV;
|
|
23
|
+
if (name === "androidtv") return isAndroid && isTV;
|
|
24
|
+
return name === "tv" && isTV;
|
|
25
|
+
}
|
|
17
26
|
var currentPlatform = ((Platform === null || Platform === void 0 ? void 0 : Platform.OS) ? {
|
|
18
27
|
ios: "ios",
|
|
19
28
|
android: "android",
|
|
@@ -21,5 +30,5 @@ var currentPlatform = ((Platform === null || Platform === void 0 ? void 0 : Plat
|
|
|
21
30
|
windows: "windows"
|
|
22
31
|
}[Platform.OS] : void 0) || "native";
|
|
23
32
|
|
|
24
|
-
export { currentPlatform, isAndroid, isBrowser, isChrome, isClient, isIos, isNativeDesktop, isServer, isTV, isTouchable, isWeb, isWebTouchable, supportsDynamicColorIOS, useIsomorphicLayoutEffect };
|
|
33
|
+
export { currentPlatform, isAndroid, isBrowser, isChrome, isClient, isIos, isNativeDesktop, isServer, isTV, isTouchable, isWeb, isWebTouchable, platformMatches, supportsDynamicColorIOS, useIsomorphicLayoutEffect };
|
|
25
34
|
//# sourceMappingURL=constants.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.native.js","names":[],"sources":["esm/constants.native.js"],"sourcesContent":["import { useLayoutEffect } from \"react\";\nimport { Platform } from \"react-native\";\n\nvar isWeb = false;\nvar isBrowser = false;\nvar isServer = false;\nvar isClient = true;\nvar useIsomorphicLayoutEffect = useLayoutEffect;\nvar isChrome = false;\nvar isWebTouchable = false;\nvar isNativeDesktop = (Platform === null || Platform === void 0 ? void 0 : Platform.OS) === \"macos\" || (Platform === null || Platform === void 0 ? void 0 : Platform.OS) === \"windows\";\nvar isTouchable = !isNativeDesktop;\nvar isAndroid = (Platform === null || Platform === void 0 ? void 0 : Platform.OS) === \"android\" || process.env.TEST_NATIVE_PLATFORM === \"android\" || process.env.TEST_NATIVE_PLATFORM === \"androidtv\";\nvar isIos = (Platform === null || Platform === void 0 ? void 0 : Platform.OS) === \"ios\" || process.env.TEST_NATIVE_PLATFORM === \"ios\" || process.env.TEST_NATIVE_PLATFORM === \"tvos\";\nvar supportsDynamicColorIOS = isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === \"1\";\nvar isTV = (Platform === null || Platform === void 0 ? void 0 : Platform.isTV) || process.env.TEST_NATIVE_PLATFORM === \"androidtv\" || process.env.TEST_NATIVE_PLATFORM === \"tvos\";\nvar currentPlatform = ((Platform === null || Platform === void 0 ? void 0 : Platform.OS) ? {\n\tios: \"ios\",\n\tandroid: \"android\",\n\tmacos: \"macos\",\n\twindows: \"windows\"\n}[Platform.OS] : void 0) || \"native\";\n\nexport { currentPlatform, isAndroid, isBrowser, isChrome, isClient, isIos, isNativeDesktop, isServer, isTV, isTouchable, isWeb, isWebTouchable, supportsDynamicColorIOS, useIsomorphicLayoutEffect };"],"mappings":";;;;AAGA,IAAI,QAAQ;AACZ,IAAI,YAAY;AAChB,IAAI,WAAW;AACf,IAAI,WAAW;AACf,IAAI,4BAA4B;AAChC,IAAI,WAAW;AACf,IAAI,iBAAiB;AACrB,IAAI,mBAAmB,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,QAAQ,YAAY,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,QAAQ;AAC7K,IAAI,cAAc,CAAC;AACnB,IAAI,aAAa,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,QAAQ,aAAa,QAAQ,IAAI,yBAAyB,aAAa,QAAQ,IAAI,yBAAyB;AAC1L,IAAI,SAAS,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,QAAQ,SAAS,QAAQ,IAAI,yBAAyB,SAAS,QAAQ,IAAI,yBAAyB;AAC9K,IAAI,0BAA0B,SAAS,QAAQ,IAAI,8BAA8B;AACjF,IAAI,QAAQ,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,SAAS,QAAQ,IAAI,yBAAyB,eAAe,QAAQ,IAAI,yBAAyB;AAC3K,IAAI,oBAAoB,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,MAAM;CAC1F,KAAK;CACL,SAAS;CACT,OAAO;CACP,SAAS;AACV,EAAE,SAAS,MAAM,KAAK,MAAM"}
|
|
1
|
+
{"version":3,"file":"constants.native.js","names":[],"sources":["esm/constants.native.js"],"sourcesContent":["import { useLayoutEffect } from \"react\";\nimport { Platform } from \"react-native\";\n\nvar isWeb = false;\nvar isBrowser = false;\nvar isServer = false;\nvar isClient = true;\nvar useIsomorphicLayoutEffect = useLayoutEffect;\nvar isChrome = false;\nvar isWebTouchable = false;\nvar isNativeDesktop = (Platform === null || Platform === void 0 ? void 0 : Platform.OS) === \"macos\" || (Platform === null || Platform === void 0 ? void 0 : Platform.OS) === \"windows\";\nvar isTouchable = !isNativeDesktop;\nvar isAndroid = (Platform === null || Platform === void 0 ? void 0 : Platform.OS) === \"android\" || process.env.TEST_NATIVE_PLATFORM === \"android\" || process.env.TEST_NATIVE_PLATFORM === \"androidtv\";\nvar isIos = (Platform === null || Platform === void 0 ? void 0 : Platform.OS) === \"ios\" || process.env.TEST_NATIVE_PLATFORM === \"ios\" || process.env.TEST_NATIVE_PLATFORM === \"tvos\";\nvar supportsDynamicColorIOS = isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === \"1\";\nvar isTV = (Platform === null || Platform === void 0 ? void 0 : Platform.isTV) || process.env.TEST_NATIVE_PLATFORM === \"androidtv\" || process.env.TEST_NATIVE_PLATFORM === \"tvos\";\nfunction platformMatches(name) {\n\tif (name === \"web\") return false;\n\tif (name === \"native\") return !false;\n\tif (name === \"ios\") return isIos;\n\tif (name === \"android\") return isAndroid;\n\tif (name === \"tvos\") return isIos && isTV;\n\tif (name === \"androidtv\") return isAndroid && isTV;\n\treturn name === \"tv\" && isTV;\n}\nvar currentPlatform = ((Platform === null || Platform === void 0 ? void 0 : Platform.OS) ? {\n\tios: \"ios\",\n\tandroid: \"android\",\n\tmacos: \"macos\",\n\twindows: \"windows\"\n}[Platform.OS] : void 0) || \"native\";\n\nexport { currentPlatform, isAndroid, isBrowser, isChrome, isClient, isIos, isNativeDesktop, isServer, isTV, isTouchable, isWeb, isWebTouchable, platformMatches, supportsDynamicColorIOS, useIsomorphicLayoutEffect };"],"mappings":";;;;AAGA,IAAI,QAAQ;AACZ,IAAI,YAAY;AAChB,IAAI,WAAW;AACf,IAAI,WAAW;AACf,IAAI,4BAA4B;AAChC,IAAI,WAAW;AACf,IAAI,iBAAiB;AACrB,IAAI,mBAAmB,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,QAAQ,YAAY,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,QAAQ;AAC7K,IAAI,cAAc,CAAC;AACnB,IAAI,aAAa,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,QAAQ,aAAa,QAAQ,IAAI,yBAAyB,aAAa,QAAQ,IAAI,yBAAyB;AAC1L,IAAI,SAAS,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,QAAQ,SAAS,QAAQ,IAAI,yBAAyB,SAAS,QAAQ,IAAI,yBAAyB;AAC9K,IAAI,0BAA0B,SAAS,QAAQ,IAAI,8BAA8B;AACjF,IAAI,QAAQ,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,SAAS,QAAQ,IAAI,yBAAyB,eAAe,QAAQ,IAAI,yBAAyB;AAC3K,SAAS,gBAAgB,MAAM;CAC9B,IAAI,SAAS,OAAO,OAAO;CAC3B,IAAI,SAAS,UAAU,OAAO,CAAC;CAC/B,IAAI,SAAS,OAAO,OAAO;CAC3B,IAAI,SAAS,WAAW,OAAO;CAC/B,IAAI,SAAS,QAAQ,OAAO,SAAS;CACrC,IAAI,SAAS,aAAa,OAAO,aAAa;CAC9C,OAAO,SAAS,QAAQ;AACzB;AACA,IAAI,oBAAoB,aAAa,QAAQ,aAAa,KAAK,IAAI,KAAK,IAAI,SAAS,MAAM;CAC1F,KAAK;CACL,SAAS;CACT,OAAO;CACP,SAAS;AACV,EAAE,SAAS,MAAM,KAAK,MAAM"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/constants",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.804.1",
|
|
4
4
|
"gitHead": "a49cc7ea6b93ba384e77a4880ae48ac4a5635c14",
|
|
5
5
|
"files": [
|
|
6
6
|
"src",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"clean:build": "tamagui-build clean:build"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@tamagui/build": "3.0.0-beta.
|
|
37
|
+
"@tamagui/build": "3.0.0-beta.804.1",
|
|
38
38
|
"react": "19.2.3",
|
|
39
39
|
"react-native": "0.86.2"
|
|
40
40
|
},
|
package/src/constants.native.ts
CHANGED
|
@@ -29,6 +29,16 @@ export const isTV: boolean =
|
|
|
29
29
|
process.env.TEST_NATIVE_PLATFORM === 'androidtv' ||
|
|
30
30
|
process.env.TEST_NATIVE_PLATFORM === 'tvos'
|
|
31
31
|
|
|
32
|
+
export function platformMatches(name: string): boolean {
|
|
33
|
+
if (name === 'web') return isWeb
|
|
34
|
+
if (name === 'native') return !isWeb
|
|
35
|
+
if (name === 'ios') return isIos
|
|
36
|
+
if (name === 'android') return isAndroid
|
|
37
|
+
if (name === 'tvos') return isIos && isTV
|
|
38
|
+
if (name === 'androidtv') return isAndroid && isTV
|
|
39
|
+
return name === 'tv' && isTV
|
|
40
|
+
}
|
|
41
|
+
|
|
32
42
|
const platforms = {
|
|
33
43
|
ios: 'ios',
|
|
34
44
|
android: 'android',
|
package/src/constants.ts
CHANGED
|
@@ -39,6 +39,16 @@ export const supportsDynamicColorIOS: boolean =
|
|
|
39
39
|
export const isTV: boolean =
|
|
40
40
|
process.env.TEST_NATIVE_PLATFORM === 'androidtv' ||
|
|
41
41
|
process.env.TEST_NATIVE_PLATFORM === 'tvos'
|
|
42
|
+
|
|
43
|
+
export function platformMatches(name: string): boolean {
|
|
44
|
+
if (name === 'web') return isWeb
|
|
45
|
+
if (name === 'native') return !isWeb
|
|
46
|
+
if (name === 'ios') return isIos
|
|
47
|
+
if (name === 'android') return isAndroid
|
|
48
|
+
if (name === 'tvos') return isIos && isTV
|
|
49
|
+
if (name === 'androidtv') return isAndroid && isTV
|
|
50
|
+
return name === 'tv' && isTV
|
|
51
|
+
}
|
|
42
52
|
/**
|
|
43
53
|
* Reflects Platform.OS. TV platforms are intentionally NOT separate values:
|
|
44
54
|
* - Android TV has Platform.OS === 'android' (react-native-tvos behavior)
|
package/types/constants.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ export declare const isAndroid: boolean;
|
|
|
12
12
|
export declare const isIos: boolean;
|
|
13
13
|
export declare const supportsDynamicColorIOS: boolean;
|
|
14
14
|
export declare const isTV: boolean;
|
|
15
|
+
export declare function platformMatches(name: string): boolean;
|
|
15
16
|
/**
|
|
16
17
|
* Reflects Platform.OS. TV platforms are intentionally NOT separate values:
|
|
17
18
|
* - Android TV has Platform.OS === 'android' (react-native-tvos behavior)
|
package/types/constants.d.ts.map
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
|
-
"mappings": "AAAA,SAAS,iBAAkC;AAE3C,OAAO,cAAM;AAIb,OAAO,cAAM;AAGb,OAAO,cAAM;AACb,OAAO,cAAM;AAEb,OAAO,cAAM,kCAAkC;AAI/C,OAAO,cAAM;AAGb,OAAO,cAAM;AAGb,OAAO,cAAM;AACb,OAAO,cAAM;AAKb,OAAO,cAAM;AAIb,OAAO,cAAM;AAIb,OAAO,cAAM;AAEb,OAAO,cAAM;;;;;;;
|
|
2
|
+
"mappings": "AAAA,SAAS,iBAAkC;AAE3C,OAAO,cAAM;AAIb,OAAO,cAAM;AAGb,OAAO,cAAM;AACb,OAAO,cAAM;AAEb,OAAO,cAAM,kCAAkC;AAI/C,OAAO,cAAM;AAGb,OAAO,cAAM;AAGb,OAAO,cAAM;AACb,OAAO,cAAM;AAKb,OAAO,cAAM;AAIb,OAAO,cAAM;AAIb,OAAO,cAAM;AAEb,OAAO,cAAM;AAIb,OAAO,iBAAS,gBAAgB;;;;;;;AAehC,OAAO,cAAM,iBAAiB,QAAQ,QAAQ,WAAW",
|
|
3
3
|
"names": [],
|
|
4
4
|
"sources": [
|
|
5
5
|
"src/constants.ts"
|
|
6
6
|
],
|
|
7
7
|
"version": 3,
|
|
8
8
|
"sourcesContent": [
|
|
9
|
-
"import { useEffect, useLayoutEffect } from 'react'\n\nexport const isWeb: boolean = true\n\n// RN adds fake window and document so its not simple to get this right\n// check both navigator and location\nexport const isBrowser: boolean =\n typeof navigator !== 'undefined' && typeof location !== 'undefined'\n\nexport const isServer: boolean = isWeb && !isBrowser\nexport const isClient: boolean = isWeb && isBrowser\n\nexport const useIsomorphicLayoutEffect: typeof useEffect = isServer\n ? useEffect\n : useLayoutEffect\n\nexport const isChrome: boolean =\n typeof navigator !== 'undefined' && /Chrome/.test(navigator.userAgent || '')\n\nexport const isWebTouchable: boolean =\n isClient && ('ontouchstart' in window || navigator.maxTouchPoints > 0)\n\nexport const isNativeDesktop: boolean = false\nexport const isTouchable: boolean = !isWeb || isWebTouchable\n// annotate as boolean to avoid inferring the type as false\n// On web, isAndroid/isIos are always false in production.\n// TEST_NATIVE_PLATFORM is only set by the test runner (vitest) to simulate native\n// environments (e.g. androidtv, tvos) from a web/jsdom test context.\nexport const isAndroid: boolean =\n process.env.TEST_NATIVE_PLATFORM === 'android' ||\n // Android TV has Platform.OS === 'android' per react-native-tvos\n process.env.TEST_NATIVE_PLATFORM === 'androidtv'\nexport const isIos: boolean =\n process.env.TEST_NATIVE_PLATFORM === 'ios' ||\n // tvOS has Platform.OS === 'ios' per react-native-tvos\n process.env.TEST_NATIVE_PLATFORM === 'tvos'\nexport const supportsDynamicColorIOS: boolean =\n isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === '1'\nexport const isTV: boolean =\n process.env.TEST_NATIVE_PLATFORM === 'androidtv' ||\n process.env.TEST_NATIVE_PLATFORM === 'tvos'\n/**\n * Reflects Platform.OS. TV platforms are intentionally NOT separate values:\n * - Android TV has Platform.OS === 'android' (react-native-tvos behavior)\n * - tvOS has Platform.OS === 'ios' (react-native-tvos behavior)\n * Use `isTV` combined with `isAndroid`/`isIos` to detect specific TV platforms.\n */\nexport const currentPlatform: 'web' | 'ios' | 'native' | 'android' = 'web'\n\n// In web source mode (Vite/webpack without pre-built dist), TAMAGUI_TARGET may not be set.\n// Set it here so all process.env.TAMAGUI_TARGET runtime checks work correctly.\n// In pre-built dist, the build tool inlines TAMAGUI_TARGET as a literal string,\n// making this block dead code (if (!'web') → never executes).\nif (!process.env.TAMAGUI_TARGET) {\n process.env.TAMAGUI_TARGET = 'web'\n}\n"
|
|
9
|
+
"import { useEffect, useLayoutEffect } from 'react'\n\nexport const isWeb: boolean = true\n\n// RN adds fake window and document so its not simple to get this right\n// check both navigator and location\nexport const isBrowser: boolean =\n typeof navigator !== 'undefined' && typeof location !== 'undefined'\n\nexport const isServer: boolean = isWeb && !isBrowser\nexport const isClient: boolean = isWeb && isBrowser\n\nexport const useIsomorphicLayoutEffect: typeof useEffect = isServer\n ? useEffect\n : useLayoutEffect\n\nexport const isChrome: boolean =\n typeof navigator !== 'undefined' && /Chrome/.test(navigator.userAgent || '')\n\nexport const isWebTouchable: boolean =\n isClient && ('ontouchstart' in window || navigator.maxTouchPoints > 0)\n\nexport const isNativeDesktop: boolean = false\nexport const isTouchable: boolean = !isWeb || isWebTouchable\n// annotate as boolean to avoid inferring the type as false\n// On web, isAndroid/isIos are always false in production.\n// TEST_NATIVE_PLATFORM is only set by the test runner (vitest) to simulate native\n// environments (e.g. androidtv, tvos) from a web/jsdom test context.\nexport const isAndroid: boolean =\n process.env.TEST_NATIVE_PLATFORM === 'android' ||\n // Android TV has Platform.OS === 'android' per react-native-tvos\n process.env.TEST_NATIVE_PLATFORM === 'androidtv'\nexport const isIos: boolean =\n process.env.TEST_NATIVE_PLATFORM === 'ios' ||\n // tvOS has Platform.OS === 'ios' per react-native-tvos\n process.env.TEST_NATIVE_PLATFORM === 'tvos'\nexport const supportsDynamicColorIOS: boolean =\n isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === '1'\nexport const isTV: boolean =\n process.env.TEST_NATIVE_PLATFORM === 'androidtv' ||\n process.env.TEST_NATIVE_PLATFORM === 'tvos'\n\nexport function platformMatches(name: string): boolean {\n if (name === 'web') return isWeb\n if (name === 'native') return !isWeb\n if (name === 'ios') return isIos\n if (name === 'android') return isAndroid\n if (name === 'tvos') return isIos && isTV\n if (name === 'androidtv') return isAndroid && isTV\n return name === 'tv' && isTV\n}\n/**\n * Reflects Platform.OS. TV platforms are intentionally NOT separate values:\n * - Android TV has Platform.OS === 'android' (react-native-tvos behavior)\n * - tvOS has Platform.OS === 'ios' (react-native-tvos behavior)\n * Use `isTV` combined with `isAndroid`/`isIos` to detect specific TV platforms.\n */\nexport const currentPlatform: 'web' | 'ios' | 'native' | 'android' = 'web'\n\n// In web source mode (Vite/webpack without pre-built dist), TAMAGUI_TARGET may not be set.\n// Set it here so all process.env.TAMAGUI_TARGET runtime checks work correctly.\n// In pre-built dist, the build tool inlines TAMAGUI_TARGET as a literal string,\n// making this block dead code (if (!'web') → never executes).\nif (!process.env.TAMAGUI_TARGET) {\n process.env.TAMAGUI_TARGET = 'web'\n}\n"
|
|
10
10
|
]
|
|
11
11
|
}
|
|
@@ -12,6 +12,7 @@ export declare const isAndroid: boolean;
|
|
|
12
12
|
export declare const isIos: boolean;
|
|
13
13
|
export declare const supportsDynamicColorIOS: boolean;
|
|
14
14
|
export declare const isTV: boolean;
|
|
15
|
+
export declare function platformMatches(name: string): boolean;
|
|
15
16
|
/**
|
|
16
17
|
* Reflects Platform.OS. TV platforms are intentionally NOT separate values:
|
|
17
18
|
* - Android TV has Platform.OS === 'android' (react-native-tvos behavior)
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
|
-
"mappings": "AAAA,cAA+B,iBAAiB;AAGhD,OAAO,cAAM;AACb,OAAO,cAAM;AACb,OAAO,cAAM;AACb,OAAO,cAAM;AACb,OAAO,cAAM,kCAAkC;AAC/C,OAAO,cAAM;AACb,OAAO,cAAM;AACb,OAAO,cAAM;AAEb,OAAO,cAAM;AAGb,OAAO,cAAM;AAKb,OAAO,cAAM;AAIb,OAAO,cAAM;AAEb,OAAO,cAAM;;;;;;;
|
|
2
|
+
"mappings": "AAAA,cAA+B,iBAAiB;AAGhD,OAAO,cAAM;AACb,OAAO,cAAM;AACb,OAAO,cAAM;AACb,OAAO,cAAM;AACb,OAAO,cAAM,kCAAkC;AAC/C,OAAO,cAAM;AACb,OAAO,cAAM;AACb,OAAO,cAAM;AAEb,OAAO,cAAM;AAGb,OAAO,cAAM;AAKb,OAAO,cAAM;AAIb,OAAO,cAAM;AAEb,OAAO,cAAM;AAKb,OAAO,iBAAS,gBAAgB;;;;;;;AAsBhC,OAAO,cAAM,iBAAiB,QAAQ,QAAQ,WAAW,YAAY,UAAU",
|
|
3
3
|
"names": [],
|
|
4
4
|
"sources": [
|
|
5
5
|
"src/constants.native.ts"
|
|
6
6
|
],
|
|
7
7
|
"version": 3,
|
|
8
8
|
"sourcesContent": [
|
|
9
|
-
"import { useLayoutEffect, type useEffect } from 'react'\nimport { Platform } from 'react-native'\n\nexport const isWeb: boolean = false\nexport const isBrowser: boolean = false\nexport const isServer: boolean = false\nexport const isClient: boolean = true\nexport const useIsomorphicLayoutEffect: typeof useEffect = useLayoutEffect\nexport const isChrome: boolean = false\nexport const isWebTouchable: boolean = false\nexport const isNativeDesktop: boolean =\n Platform?.OS === 'macos' || Platform?.OS === 'windows'\nexport const isTouchable: boolean = !isNativeDesktop\n// optional chain required: babel extractor loads native.cjs in node where Platform is undefined\n// On Android TV: Platform.OS === 'android' per react-native-tvos\nexport const isAndroid: boolean =\n Platform?.OS === 'android' ||\n process.env.TEST_NATIVE_PLATFORM === 'android' ||\n process.env.TEST_NATIVE_PLATFORM === 'androidtv'\n// On tvOS: Platform.OS === 'ios' per react-native-tvos\nexport const isIos: boolean =\n Platform?.OS === 'ios' ||\n process.env.TEST_NATIVE_PLATFORM === 'ios' ||\n process.env.TEST_NATIVE_PLATFORM === 'tvos'\nexport const supportsDynamicColorIOS: boolean =\n isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === '1'\nexport const isTV: boolean =\n Platform?.isTV ||\n process.env.TEST_NATIVE_PLATFORM === 'androidtv' ||\n process.env.TEST_NATIVE_PLATFORM === 'tvos'\n\nconst platforms = {\n ios: 'ios',\n android: 'android',\n macos: 'macos',\n windows: 'windows',\n} as const\n/**\n * Reflects Platform.OS. TV platforms are intentionally NOT separate values:\n * - Android TV has Platform.OS === 'android' (react-native-tvos behavior)\n * - tvOS has Platform.OS === 'ios' (react-native-tvos behavior)\n * Use `isTV` combined with `isAndroid`/`isIos` to detect specific TV platforms.\n */\nexport const currentPlatform: 'web' | 'ios' | 'native' | 'android' | 'macos' | 'windows' =\n (Platform?.OS ? platforms[Platform.OS] : undefined) || 'native'\n\n// In Metro source mode, TAMAGUI_TARGET may not be set by the build tool.\n// Set it here so all process.env.TAMAGUI_TARGET runtime checks work correctly.\n// In pre-built dist, the build tool inlines TAMAGUI_TARGET as a literal string,\n// making this block dead code (if (!'native') → never executes).\nif (!process.env.TAMAGUI_TARGET) {\n process.env.TAMAGUI_TARGET = 'native'\n}\n"
|
|
9
|
+
"import { useLayoutEffect, type useEffect } from 'react'\nimport { Platform } from 'react-native'\n\nexport const isWeb: boolean = false\nexport const isBrowser: boolean = false\nexport const isServer: boolean = false\nexport const isClient: boolean = true\nexport const useIsomorphicLayoutEffect: typeof useEffect = useLayoutEffect\nexport const isChrome: boolean = false\nexport const isWebTouchable: boolean = false\nexport const isNativeDesktop: boolean =\n Platform?.OS === 'macos' || Platform?.OS === 'windows'\nexport const isTouchable: boolean = !isNativeDesktop\n// optional chain required: babel extractor loads native.cjs in node where Platform is undefined\n// On Android TV: Platform.OS === 'android' per react-native-tvos\nexport const isAndroid: boolean =\n Platform?.OS === 'android' ||\n process.env.TEST_NATIVE_PLATFORM === 'android' ||\n process.env.TEST_NATIVE_PLATFORM === 'androidtv'\n// On tvOS: Platform.OS === 'ios' per react-native-tvos\nexport const isIos: boolean =\n Platform?.OS === 'ios' ||\n process.env.TEST_NATIVE_PLATFORM === 'ios' ||\n process.env.TEST_NATIVE_PLATFORM === 'tvos'\nexport const supportsDynamicColorIOS: boolean =\n isIos || process.env.TAMAGUI_DYNAMIC_COLOR_IOS === '1'\nexport const isTV: boolean =\n Platform?.isTV ||\n process.env.TEST_NATIVE_PLATFORM === 'androidtv' ||\n process.env.TEST_NATIVE_PLATFORM === 'tvos'\n\nexport function platformMatches(name: string): boolean {\n if (name === 'web') return isWeb\n if (name === 'native') return !isWeb\n if (name === 'ios') return isIos\n if (name === 'android') return isAndroid\n if (name === 'tvos') return isIos && isTV\n if (name === 'androidtv') return isAndroid && isTV\n return name === 'tv' && isTV\n}\n\nconst platforms = {\n ios: 'ios',\n android: 'android',\n macos: 'macos',\n windows: 'windows',\n} as const\n/**\n * Reflects Platform.OS. TV platforms are intentionally NOT separate values:\n * - Android TV has Platform.OS === 'android' (react-native-tvos behavior)\n * - tvOS has Platform.OS === 'ios' (react-native-tvos behavior)\n * Use `isTV` combined with `isAndroid`/`isIos` to detect specific TV platforms.\n */\nexport const currentPlatform: 'web' | 'ios' | 'native' | 'android' | 'macos' | 'windows' =\n (Platform?.OS ? platforms[Platform.OS] : undefined) || 'native'\n\n// In Metro source mode, TAMAGUI_TARGET may not be set by the build tool.\n// Set it here so all process.env.TAMAGUI_TARGET runtime checks work correctly.\n// In pre-built dist, the build tool inlines TAMAGUI_TARGET as a literal string,\n// making this block dead code (if (!'native') → never executes).\nif (!process.env.TAMAGUI_TARGET) {\n process.env.TAMAGUI_TARGET = 'native'\n}\n"
|
|
10
10
|
]
|
|
11
11
|
}
|