@take-out/helpers 0.4.17 → 0.4.19

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.
@@ -47,7 +47,7 @@ const isClient = isBrowser;
47
47
  const isWindowDefined = isBrowser;
48
48
  const useIsomorphicLayoutEffect = isServer ? import_react.useEffect : import_react.useLayoutEffect;
49
49
  const isChrome = typeof navigator !== "undefined" && /Chrome/.test(navigator.userAgent || "");
50
- const isWebTouchable = isClient && ("ontouchstart" in window || navigator.maxTouchPoints > 0);
50
+ const isWebTouchable = isClient && typeof window !== "undefined" && ("ontouchstart" in window || navigator.maxTouchPoints > 0);
51
51
  const isNativeDesktop = false;
52
52
  const isTouchable = isWebTouchable;
53
53
  const isAndroid = process.env.TEST_NATIVE_PLATFORM === "android" || process.env.TEST_NATIVE_PLATFORM === "androidtv";
@@ -6,7 +6,7 @@ const isClient = isBrowser;
6
6
  const isWindowDefined = isBrowser;
7
7
  const useIsomorphicLayoutEffect = isServer ? useEffect : useLayoutEffect;
8
8
  const isChrome = typeof navigator !== "undefined" && /Chrome/.test(navigator.userAgent || "");
9
- const isWebTouchable = isClient && ("ontouchstart" in window || navigator.maxTouchPoints > 0);
9
+ const isWebTouchable = isClient && typeof window !== "undefined" && ("ontouchstart" in window || navigator.maxTouchPoints > 0);
10
10
  const isNativeDesktop = false;
11
11
  const isTouchable = isWebTouchable;
12
12
  const isAndroid = process.env.TEST_NATIVE_PLATFORM === "android" || process.env.TEST_NATIVE_PLATFORM === "androidtv";
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useLayoutEffect","isWeb","isBrowser","navigator","location","isServer","isClient","isWindowDefined","useIsomorphicLayoutEffect","isChrome","test","userAgent","isWebTouchable","window","maxTouchPoints","isNativeDesktop","isTouchable","isAndroid","process","env","TEST_NATIVE_PLATFORM","isIos","supportsDynamicColorIOS","TAMAGUI_DYNAMIC_COLOR_IOS","isTV","currentPlatform"],"sources":["platform.mjs"],"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 isWindowDefined = 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, isWindowDefined, supportsDynamicColorIOS, useIsomorphicLayoutEffect };"],"mappings":"AAAA,SAASA,SAAS,EAAEC,eAAe,QAAQ,OAAO;AAElD,MAAMC,KAAK,GAAG,IAAI;AAClB,MAAMC,SAAS,GAAG,OAAOC,SAAS,KAAK,WAAW,IAAI,OAAOC,QAAQ,KAAK,WAAW;AACrF,MAAMC,QAAQ,GAAG,CAACH,SAAS;AAC3B,MAAMI,QAAQ,GAAGJ,SAAS;AAC1B,MAAMK,eAAe,GAAGL,SAAS;AACjC,MAAMM,yBAAyB,GAAGH,QAAQ,GAAGN,SAAS,GAAGC,eAAe;AACxE,MAAMS,QAAQ,GAAG,OAAON,SAAS,KAAK,WAAW,IAAI,QAAQ,CAACO,IAAI,CAACP,SAAS,CAACQ,SAAS,IAAI,EAAE,CAAC;AAC7F,MAAMC,cAAc,GAAGN,QAAQ,KAAK,cAAc,IAAIO,MAAM,IAAIV,SAAS,CAACW,cAAc,GAAG,CAAC,CAAC;AAC7F,MAAMC,eAAe,GAAG,KAAK;AAC7B,MAAMC,WAAW,GAAGJ,cAAc;AAClC,MAAMK,SAAS,GAAGC,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,SAAS,IAAIF,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,WAAW;AACpH,MAAMC,KAAK,GAAGH,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,KAAK,IAAIF,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,MAAM;AACvG,MAAME,uBAAuB,GAAGD,KAAK,IAAIH,OAAO,CAACC,GAAG,CAACI,yBAAyB,KAAK,GAAG;AACtF,MAAMC,IAAI,GAAGN,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,WAAW,IAAIF,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,MAAM;AAC5G,MAAMK,eAAe,GAAG,KAAK;AAE7B,SAASA,eAAe,EAAER,SAAS,EAAEf,SAAS,EAAEO,QAAQ,EAAEH,QAAQ,EAAEe,KAAK,EAAEN,eAAe,EAAEV,QAAQ,EAAEmB,IAAI,EAAER,WAAW,EAAEf,KAAK,EAAEW,cAAc,EAAEL,eAAe,EAAEe,uBAAuB,EAAEd,yBAAyB","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useLayoutEffect","isWeb","isBrowser","navigator","location","isServer","isClient","isWindowDefined","useIsomorphicLayoutEffect","isChrome","test","userAgent","isWebTouchable","window","maxTouchPoints","isNativeDesktop","isTouchable","isAndroid","process","env","TEST_NATIVE_PLATFORM","isIos","supportsDynamicColorIOS","TAMAGUI_DYNAMIC_COLOR_IOS","isTV","currentPlatform"],"sources":["platform.mjs"],"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 isWindowDefined = isBrowser;\nconst useIsomorphicLayoutEffect = isServer ? useEffect : useLayoutEffect;\nconst isChrome = typeof navigator !== \"undefined\" && /Chrome/.test(navigator.userAgent || \"\");\nconst isWebTouchable = isClient && typeof window !== \"undefined\" && (\"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, isWindowDefined, supportsDynamicColorIOS, useIsomorphicLayoutEffect };"],"mappings":"AAAA,SAASA,SAAS,EAAEC,eAAe,QAAQ,OAAO;AAElD,MAAMC,KAAK,GAAG,IAAI;AAClB,MAAMC,SAAS,GAAG,OAAOC,SAAS,KAAK,WAAW,IAAI,OAAOC,QAAQ,KAAK,WAAW;AACrF,MAAMC,QAAQ,GAAG,CAACH,SAAS;AAC3B,MAAMI,QAAQ,GAAGJ,SAAS;AAC1B,MAAMK,eAAe,GAAGL,SAAS;AACjC,MAAMM,yBAAyB,GAAGH,QAAQ,GAAGN,SAAS,GAAGC,eAAe;AACxE,MAAMS,QAAQ,GAAG,OAAON,SAAS,KAAK,WAAW,IAAI,QAAQ,CAACO,IAAI,CAACP,SAAS,CAACQ,SAAS,IAAI,EAAE,CAAC;AAC7F,MAAMC,cAAc,GAAGN,QAAQ,IAAI,OAAOO,MAAM,KAAK,WAAW,KAAK,cAAc,IAAIA,MAAM,IAAIV,SAAS,CAACW,cAAc,GAAG,CAAC,CAAC;AAC9H,MAAMC,eAAe,GAAG,KAAK;AAC7B,MAAMC,WAAW,GAAGJ,cAAc;AAClC,MAAMK,SAAS,GAAGC,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,SAAS,IAAIF,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,WAAW;AACpH,MAAMC,KAAK,GAAGH,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,KAAK,IAAIF,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,MAAM;AACvG,MAAME,uBAAuB,GAAGD,KAAK,IAAIH,OAAO,CAACC,GAAG,CAACI,yBAAyB,KAAK,GAAG;AACtF,MAAMC,IAAI,GAAGN,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,WAAW,IAAIF,OAAO,CAACC,GAAG,CAACC,oBAAoB,KAAK,MAAM;AAC5G,MAAMK,eAAe,GAAG,KAAK;AAE7B,SAASA,eAAe,EAAER,SAAS,EAAEf,SAAS,EAAEO,QAAQ,EAAEH,QAAQ,EAAEe,KAAK,EAAEN,eAAe,EAAEV,QAAQ,EAAEmB,IAAI,EAAER,WAAW,EAAEf,KAAK,EAAEW,cAAc,EAAEL,eAAe,EAAEe,uBAAuB,EAAEd,yBAAyB","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@take-out/helpers",
3
- "version": "0.4.17",
3
+ "version": "0.4.19",
4
4
  "sideEffects": false,
5
5
  "type": "module",
6
6
  "source": "src/index.ts",
@@ -25,21 +25,21 @@
25
25
  "./package.json": "./package.json",
26
26
  ".": {
27
27
  "react-native": "./dist/esm/index.native.js",
28
- "types": "./types/index.d.ts",
28
+ "types": "./src/index.ts",
29
29
  "import": "./dist/esm/index.mjs",
30
30
  "require": "./dist/cjs/index.cjs",
31
31
  "default": "./dist/esm/index.mjs"
32
32
  },
33
33
  "./server-only": {
34
34
  "react-native": "./dist/esm/server-only.native.js",
35
- "types": "./types/server-only.d.ts",
35
+ "types": "./src/server-only.ts",
36
36
  "import": "./dist/esm/server-only.mjs",
37
37
  "require": "./dist/cjs/server-only.cjs",
38
38
  "default": "./dist/esm/server-only.mjs"
39
39
  },
40
40
  "./client-only": {
41
41
  "react-native": "./dist/esm/client-only.native.js",
42
- "types": "./types/client-only.d.ts",
42
+ "types": "./src/client-only.ts",
43
43
  "import": "./dist/esm/client-only.mjs",
44
44
  "require": "./dist/cjs/client-only.cjs",
45
45
  "default": "./dist/esm/client-only.mjs"
package/src/platform.ts CHANGED
@@ -23,8 +23,16 @@ export const useIsomorphicLayoutEffect: typeof useEffect = isServer
23
23
  export const isChrome: boolean =
24
24
  typeof navigator !== 'undefined' && /Chrome/.test(navigator.userAgent || '')
25
25
 
26
+ // guard the `window` access: in a web worker `navigator`/`location` exist (so
27
+ // isClient is true) but `window` does NOT — touching it throws "window is not
28
+ // defined" and kills the worker. soot bundles @take-out/helpers into its
29
+ // project-server web worker, so the unguarded form (which @tamagui/constants
30
+ // also ships, but never loads in a worker) hard-crashes preview bundling.
31
+ // keep this typeof guard even though it diverges from @tamagui/constants.
26
32
  export const isWebTouchable: boolean =
27
- isClient && ('ontouchstart' in window || navigator.maxTouchPoints > 0)
33
+ isClient &&
34
+ typeof window !== 'undefined' &&
35
+ ('ontouchstart' in window || navigator.maxTouchPoints > 0)
28
36
 
29
37
  export const isNativeDesktop: boolean = false
30
38
  export const isTouchable: boolean = !isWeb || isWebTouchable