@oxyhq/services 5.16.41 → 5.16.42
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/adapters/index.js +26 -17
- package/lib/commonjs/adapters/index.js.map +1 -1
- package/lib/module/adapters/index.js +26 -17
- package/lib/module/adapters/index.js.map +1 -1
- package/lib/typescript/adapters/index.d.ts +7 -1
- package/lib/typescript/adapters/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/adapters/index.ts +25 -18
|
@@ -5,37 +5,46 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.createPlatformAdapter = createPlatformAdapter;
|
|
7
7
|
var _expo = require("./expo");
|
|
8
|
-
var _node = require("./node");
|
|
9
8
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); } /**
|
|
10
9
|
* Platform Adapters
|
|
11
10
|
*
|
|
12
11
|
* Factory function to create the appropriate platform adapter
|
|
12
|
+
*
|
|
13
|
+
* Uses dynamic imports for Node.js adapter to avoid Metro bundling Node-specific code
|
|
14
|
+
* in React Native environments.
|
|
13
15
|
*/
|
|
14
16
|
/**
|
|
15
17
|
* Detect platform and create appropriate adapter
|
|
18
|
+
*
|
|
19
|
+
* Uses dynamic imports for Node.js adapter to ensure Metro doesn't process
|
|
20
|
+
* Node-specific code (like 'crypto' module) in React Native bundles.
|
|
16
21
|
*/
|
|
17
22
|
async function createPlatformAdapter() {
|
|
18
|
-
//
|
|
19
|
-
|
|
20
|
-
// Check if we're in a React Native/Expo environment
|
|
21
|
-
try {
|
|
22
|
-
// Try to detect React Native
|
|
23
|
-
if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {
|
|
24
|
-
return await (0, _expo.createExpoAdapter)();
|
|
25
|
-
}
|
|
23
|
+
// Detect if we're in Node.js environment
|
|
24
|
+
const isNode = typeof process !== 'undefined' && process.versions?.node != null;
|
|
26
25
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
26
|
+
// Detect if we're in React Native
|
|
27
|
+
const isReactNative = typeof navigator !== 'undefined' && navigator.product === 'ReactNative';
|
|
28
|
+
|
|
29
|
+
// If we're in Node.js AND not React Native, consider using Node adapter
|
|
30
|
+
if (isNode && !isReactNative) {
|
|
31
|
+
// Double-check: try to import react-native to confirm we're not in React Native
|
|
32
|
+
// This is a safety check for edge cases where Node.js might be available but we're in RN
|
|
33
|
+
try {
|
|
34
|
+
await Promise.resolve().then(() => _interopRequireWildcard(require('react-native')));
|
|
35
|
+
// If we can import react-native, we're in React Native environment
|
|
36
|
+
return await (0, _expo.createExpoAdapter)();
|
|
32
37
|
} catch {
|
|
33
|
-
//
|
|
38
|
+
// Cannot import react-native, we're in pure Node.js
|
|
39
|
+
// Use dynamic import to avoid Metro processing Node-specific code
|
|
40
|
+
const {
|
|
41
|
+
createNodeAdapter
|
|
42
|
+
} = await Promise.resolve().then(() => _interopRequireWildcard(require('./node/index.js')));
|
|
43
|
+
return await createNodeAdapter();
|
|
34
44
|
}
|
|
35
|
-
return await (0, _node.createNodeAdapter)();
|
|
36
45
|
}
|
|
37
46
|
|
|
38
|
-
// Default
|
|
47
|
+
// Default: Expo adapter (React Native or Web)
|
|
39
48
|
return await (0, _expo.createExpoAdapter)();
|
|
40
49
|
}
|
|
41
50
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_expo","require","
|
|
1
|
+
{"version":3,"names":["_expo","require","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","createPlatformAdapter","isNode","process","versions","node","isReactNative","navigator","product","Promise","resolve","then","createExpoAdapter","createNodeAdapter"],"sourceRoot":"../../../src","sources":["adapters/index.ts"],"mappings":";;;;;;AASA,IAAAA,KAAA,GAAAC,OAAA;AAAwF,SAAAC,wBAAAC,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAH,uBAAA,YAAAA,CAAAC,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA,KATxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACO,eAAekB,qBAAqBA,CAAA,EAA6B;EACtE;EACA,MAAMC,MAAM,GAAG,OAAOC,OAAO,KAAK,WAAW,IAAIA,OAAO,CAACC,QAAQ,EAAEC,IAAI,IAAI,IAAI;;EAE/E;EACA,MAAMC,aAAa,GAAG,OAAOC,SAAS,KAAK,WAAW,IAAIA,SAAS,CAACC,OAAO,KAAK,aAAa;;EAE7F;EACA,IAAIN,MAAM,IAAI,CAACI,aAAa,EAAE;IAC5B;IACA;IACA,IAAI;MACF,MAAAG,OAAA,CAAAC,OAAA,GAAAC,IAAA,OAAA9B,uBAAA,CAAAD,OAAA,CAAa,cAAc,GAAC;MAC5B;MACA,OAAO,MAAM,IAAAgC,uBAAiB,EAAC,CAAC;IAClC,CAAC,CAAC,MAAM;MACN;MACA;MACA,MAAM;QAAEC;MAAkB,CAAC,GAAG,MAAAJ,OAAA,CAAAC,OAAA,GAAAC,IAAA,OAAA9B,uBAAA,CAAAD,OAAA,CAAa,iBAAiB,GAAC;MAC7D,OAAO,MAAMiC,iBAAiB,CAAC,CAAC;IAClC;EACF;;EAEA;EACA,OAAO,MAAM,IAAAD,uBAAiB,EAAC,CAAC;AAClC","ignoreList":[]}
|
|
@@ -4,35 +4,44 @@
|
|
|
4
4
|
* Platform Adapters
|
|
5
5
|
*
|
|
6
6
|
* Factory function to create the appropriate platform adapter
|
|
7
|
+
*
|
|
8
|
+
* Uses dynamic imports for Node.js adapter to avoid Metro bundling Node-specific code
|
|
9
|
+
* in React Native environments.
|
|
7
10
|
*/
|
|
8
11
|
|
|
9
12
|
import { createExpoAdapter } from './expo';
|
|
10
|
-
import { createNodeAdapter } from './node';
|
|
11
13
|
/**
|
|
12
14
|
* Detect platform and create appropriate adapter
|
|
15
|
+
*
|
|
16
|
+
* Uses dynamic imports for Node.js adapter to ensure Metro doesn't process
|
|
17
|
+
* Node-specific code (like 'crypto' module) in React Native bundles.
|
|
13
18
|
*/
|
|
14
19
|
export async function createPlatformAdapter() {
|
|
15
|
-
//
|
|
16
|
-
|
|
17
|
-
// Check if we're in a React Native/Expo environment
|
|
18
|
-
try {
|
|
19
|
-
// Try to detect React Native
|
|
20
|
-
if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {
|
|
21
|
-
return await createExpoAdapter();
|
|
22
|
-
}
|
|
20
|
+
// Detect if we're in Node.js environment
|
|
21
|
+
const isNode = typeof process !== 'undefined' && process.versions?.node != null;
|
|
23
22
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
23
|
+
// Detect if we're in React Native
|
|
24
|
+
const isReactNative = typeof navigator !== 'undefined' && navigator.product === 'ReactNative';
|
|
25
|
+
|
|
26
|
+
// If we're in Node.js AND not React Native, consider using Node adapter
|
|
27
|
+
if (isNode && !isReactNative) {
|
|
28
|
+
// Double-check: try to import react-native to confirm we're not in React Native
|
|
29
|
+
// This is a safety check for edge cases where Node.js might be available but we're in RN
|
|
30
|
+
try {
|
|
31
|
+
await import('react-native');
|
|
32
|
+
// If we can import react-native, we're in React Native environment
|
|
33
|
+
return await createExpoAdapter();
|
|
29
34
|
} catch {
|
|
30
|
-
//
|
|
35
|
+
// Cannot import react-native, we're in pure Node.js
|
|
36
|
+
// Use dynamic import to avoid Metro processing Node-specific code
|
|
37
|
+
const {
|
|
38
|
+
createNodeAdapter
|
|
39
|
+
} = await import('./node/index.js');
|
|
40
|
+
return await createNodeAdapter();
|
|
31
41
|
}
|
|
32
|
-
return await createNodeAdapter();
|
|
33
42
|
}
|
|
34
43
|
|
|
35
|
-
// Default
|
|
44
|
+
// Default: Expo adapter (React Native or Web)
|
|
36
45
|
return await createExpoAdapter();
|
|
37
46
|
}
|
|
38
47
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createExpoAdapter","
|
|
1
|
+
{"version":3,"names":["createExpoAdapter","createPlatformAdapter","isNode","process","versions","node","isReactNative","navigator","product","createNodeAdapter"],"sourceRoot":"../../../src","sources":["adapters/index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,iBAAiB,QAAqD,QAAQ;AAKvF;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,qBAAqBA,CAAA,EAA6B;EACtE;EACA,MAAMC,MAAM,GAAG,OAAOC,OAAO,KAAK,WAAW,IAAIA,OAAO,CAACC,QAAQ,EAAEC,IAAI,IAAI,IAAI;;EAE/E;EACA,MAAMC,aAAa,GAAG,OAAOC,SAAS,KAAK,WAAW,IAAIA,SAAS,CAACC,OAAO,KAAK,aAAa;;EAE7F;EACA,IAAIN,MAAM,IAAI,CAACI,aAAa,EAAE;IAC5B;IACA;IACA,IAAI;MACF,MAAM,MAAM,CAAC,cAAc,CAAC;MAC5B;MACA,OAAO,MAAMN,iBAAiB,CAAC,CAAC;IAClC,CAAC,CAAC,MAAM;MACN;MACA;MACA,MAAM;QAAES;MAAkB,CAAC,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC;MAC7D,OAAO,MAAMA,iBAAiB,CAAC,CAAC;IAClC;EACF;;EAEA;EACA,OAAO,MAAMT,iBAAiB,CAAC,CAAC;AAClC","ignoreList":[]}
|
|
@@ -2,12 +2,18 @@
|
|
|
2
2
|
* Platform Adapters
|
|
3
3
|
*
|
|
4
4
|
* Factory function to create the appropriate platform adapter
|
|
5
|
+
*
|
|
6
|
+
* Uses dynamic imports for Node.js adapter to avoid Metro bundling Node-specific code
|
|
7
|
+
* in React Native environments.
|
|
5
8
|
*/
|
|
6
9
|
import { type PlatformAdapter as ExpoPlatformAdapter } from './expo';
|
|
7
|
-
import {
|
|
10
|
+
import type { PlatformAdapter as NodePlatformAdapter } from './node';
|
|
8
11
|
export type PlatformAdapter = ExpoPlatformAdapter | NodePlatformAdapter;
|
|
9
12
|
/**
|
|
10
13
|
* Detect platform and create appropriate adapter
|
|
14
|
+
*
|
|
15
|
+
* Uses dynamic imports for Node.js adapter to ensure Metro doesn't process
|
|
16
|
+
* Node-specific code (like 'crypto' module) in React Native bundles.
|
|
11
17
|
*/
|
|
12
18
|
export declare function createPlatformAdapter(): Promise<PlatformAdapter>;
|
|
13
19
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAqB,KAAK,eAAe,IAAI,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AACxF,OAAO,KAAK,EAAE,eAAe,IAAI,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAErE,MAAM,MAAM,eAAe,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;AAExE;;;;;GAKG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,eAAe,CAAC,CAyBtE"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oxyhq/services",
|
|
3
|
-
"version": "5.16.
|
|
3
|
+
"version": "5.16.42",
|
|
4
4
|
"description": "Reusable OxyHQ module to handle authentication, user management, karma system, device-based session management and more 🚀",
|
|
5
5
|
"main": "lib/commonjs/index.js",
|
|
6
6
|
"module": "lib/module/index.js",
|
package/src/adapters/index.ts
CHANGED
|
@@ -2,39 +2,46 @@
|
|
|
2
2
|
* Platform Adapters
|
|
3
3
|
*
|
|
4
4
|
* Factory function to create the appropriate platform adapter
|
|
5
|
+
*
|
|
6
|
+
* Uses dynamic imports for Node.js adapter to avoid Metro bundling Node-specific code
|
|
7
|
+
* in React Native environments.
|
|
5
8
|
*/
|
|
6
9
|
|
|
7
10
|
import { createExpoAdapter, type PlatformAdapter as ExpoPlatformAdapter } from './expo';
|
|
8
|
-
import {
|
|
11
|
+
import type { PlatformAdapter as NodePlatformAdapter } from './node';
|
|
9
12
|
|
|
10
13
|
export type PlatformAdapter = ExpoPlatformAdapter | NodePlatformAdapter;
|
|
11
14
|
|
|
12
15
|
/**
|
|
13
16
|
* Detect platform and create appropriate adapter
|
|
17
|
+
*
|
|
18
|
+
* Uses dynamic imports for Node.js adapter to ensure Metro doesn't process
|
|
19
|
+
* Node-specific code (like 'crypto' module) in React Native bundles.
|
|
14
20
|
*/
|
|
15
21
|
export async function createPlatformAdapter(): Promise<PlatformAdapter> {
|
|
16
|
-
//
|
|
17
|
-
|
|
18
|
-
|
|
22
|
+
// Detect if we're in Node.js environment
|
|
23
|
+
const isNode = typeof process !== 'undefined' && process.versions?.node != null;
|
|
24
|
+
|
|
25
|
+
// Detect if we're in React Native
|
|
26
|
+
const isReactNative = typeof navigator !== 'undefined' && navigator.product === 'ReactNative';
|
|
27
|
+
|
|
28
|
+
// If we're in Node.js AND not React Native, consider using Node adapter
|
|
29
|
+
if (isNode && !isReactNative) {
|
|
30
|
+
// Double-check: try to import react-native to confirm we're not in React Native
|
|
31
|
+
// This is a safety check for edge cases where Node.js might be available but we're in RN
|
|
19
32
|
try {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
// Check for Expo in Node (unlikely but possible)
|
|
26
|
-
const Platform = await import('react-native').then(m => m.Platform).catch(() => null);
|
|
27
|
-
if (Platform) {
|
|
28
|
-
return await createExpoAdapter();
|
|
29
|
-
}
|
|
33
|
+
await import('react-native');
|
|
34
|
+
// If we can import react-native, we're in React Native environment
|
|
35
|
+
return await createExpoAdapter();
|
|
30
36
|
} catch {
|
|
31
|
-
//
|
|
37
|
+
// Cannot import react-native, we're in pure Node.js
|
|
38
|
+
// Use dynamic import to avoid Metro processing Node-specific code
|
|
39
|
+
const { createNodeAdapter } = await import('./node/index.js');
|
|
40
|
+
return await createNodeAdapter();
|
|
32
41
|
}
|
|
33
|
-
|
|
34
|
-
return await createNodeAdapter();
|
|
35
42
|
}
|
|
36
43
|
|
|
37
|
-
// Default
|
|
44
|
+
// Default: Expo adapter (React Native or Web)
|
|
38
45
|
return await createExpoAdapter();
|
|
39
46
|
}
|
|
40
47
|
|