@oxyhq/services 5.16.40 → 5.16.41

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 (267) hide show
  1. package/lib/commonjs/adapters/expo/crypto.js +56 -0
  2. package/lib/commonjs/adapters/expo/crypto.js.map +1 -0
  3. package/lib/commonjs/adapters/expo/fetch.js +30 -0
  4. package/lib/commonjs/adapters/expo/fetch.js.map +1 -0
  5. package/lib/commonjs/adapters/expo/index.js +48 -0
  6. package/lib/commonjs/adapters/expo/index.js.map +1 -0
  7. package/lib/commonjs/adapters/expo/storage.js +201 -0
  8. package/lib/commonjs/adapters/expo/storage.js.map +1 -0
  9. package/lib/commonjs/adapters/index.js +41 -0
  10. package/lib/commonjs/adapters/index.js.map +1 -0
  11. package/lib/commonjs/adapters/node/crypto.js +40 -0
  12. package/lib/commonjs/adapters/node/crypto.js.map +1 -0
  13. package/lib/commonjs/adapters/node/fetch.js +62 -0
  14. package/lib/commonjs/adapters/node/fetch.js.map +1 -0
  15. package/lib/commonjs/adapters/node/index.js +34 -0
  16. package/lib/commonjs/adapters/node/index.js.map +1 -0
  17. package/lib/commonjs/adapters/node/storage.js +163 -0
  18. package/lib/commonjs/adapters/node/storage.js.map +1 -0
  19. package/lib/commonjs/core/identity-session/DeviceManager.js +237 -0
  20. package/lib/commonjs/core/identity-session/DeviceManager.js.map +1 -0
  21. package/lib/commonjs/core/identity-session/INTEGRATION_GUIDE.md +287 -0
  22. package/lib/commonjs/core/identity-session/IdentityManager.js +400 -0
  23. package/lib/commonjs/core/identity-session/IdentityManager.js.map +1 -0
  24. package/lib/commonjs/core/identity-session/IdentitySessionCore.js +394 -0
  25. package/lib/commonjs/core/identity-session/IdentitySessionCore.js.map +1 -0
  26. package/lib/commonjs/core/identity-session/RefreshManager.js +137 -0
  27. package/lib/commonjs/core/identity-session/RefreshManager.js.map +1 -0
  28. package/lib/commonjs/core/identity-session/SessionManager.js +427 -0
  29. package/lib/commonjs/core/identity-session/SessionManager.js.map +1 -0
  30. package/lib/commonjs/core/identity-session/createIdentitySessionCore.js +24 -0
  31. package/lib/commonjs/core/identity-session/createIdentitySessionCore.js.map +1 -0
  32. package/lib/commonjs/core/identity-session/errors.js +176 -0
  33. package/lib/commonjs/core/identity-session/errors.js.map +1 -0
  34. package/lib/commonjs/core/identity-session/index.js +80 -0
  35. package/lib/commonjs/core/identity-session/index.js.map +1 -0
  36. package/lib/commonjs/core/identity-session/types.js +2 -0
  37. package/lib/commonjs/core/identity-session/types.js.map +1 -0
  38. package/lib/commonjs/core/index.js +2 -21
  39. package/lib/commonjs/core/index.js.map +1 -1
  40. package/lib/commonjs/index.js +58 -8
  41. package/lib/commonjs/index.js.map +1 -1
  42. package/lib/commonjs/models/interfaces.js +7 -0
  43. package/lib/commonjs/models/interfaces.js.map +1 -1
  44. package/lib/commonjs/ui/context/OxyContext.js +434 -820
  45. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  46. package/lib/commonjs/ui/hooks/useAvatarPicker.js +52 -0
  47. package/lib/commonjs/ui/hooks/useAvatarPicker.js.map +1 -0
  48. package/lib/commonjs/ui/hooks/useIdentityTransfer.js +125 -0
  49. package/lib/commonjs/ui/hooks/useIdentityTransfer.js.map +1 -0
  50. package/lib/commonjs/ui/hooks/useTransferCodesPersistence.js +81 -0
  51. package/lib/commonjs/ui/hooks/useTransferCodesPersistence.js.map +1 -0
  52. package/lib/commonjs/ui/screens/AccountCenterScreen.js +7 -2
  53. package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -1
  54. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +12 -5
  55. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
  56. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +2 -2
  57. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +1 -1
  58. package/lib/commonjs/ui/screens/ProfileScreen.js +6 -6
  59. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
  60. package/lib/commonjs/ui/utils/sessionHelpers.js +7 -1
  61. package/lib/commonjs/ui/utils/sessionHelpers.js.map +1 -1
  62. package/lib/commonjs/utils/index.js +0 -7
  63. package/lib/commonjs/utils/index.js.map +1 -1
  64. package/lib/commonjs/utils/sessionUtils.js +8 -1
  65. package/lib/commonjs/utils/sessionUtils.js.map +1 -1
  66. package/lib/module/adapters/expo/crypto.js +51 -0
  67. package/lib/module/adapters/expo/crypto.js.map +1 -0
  68. package/lib/module/adapters/expo/fetch.js +26 -0
  69. package/lib/module/adapters/expo/fetch.js.map +1 -0
  70. package/lib/module/adapters/expo/index.js +45 -0
  71. package/lib/module/adapters/expo/index.js.map +1 -0
  72. package/lib/module/adapters/expo/storage.js +198 -0
  73. package/lib/module/adapters/expo/storage.js.map +1 -0
  74. package/lib/module/adapters/index.js +38 -0
  75. package/lib/module/adapters/index.js.map +1 -0
  76. package/lib/module/adapters/node/crypto.js +36 -0
  77. package/lib/module/adapters/node/crypto.js.map +1 -0
  78. package/lib/module/adapters/node/fetch.js +57 -0
  79. package/lib/module/adapters/node/fetch.js.map +1 -0
  80. package/lib/module/adapters/node/index.js +31 -0
  81. package/lib/module/adapters/node/index.js.map +1 -0
  82. package/lib/module/adapters/node/storage.js +159 -0
  83. package/lib/module/adapters/node/storage.js.map +1 -0
  84. package/lib/module/core/identity-session/DeviceManager.js +232 -0
  85. package/lib/module/core/identity-session/DeviceManager.js.map +1 -0
  86. package/lib/module/core/identity-session/INTEGRATION_GUIDE.md +287 -0
  87. package/lib/module/core/identity-session/IdentityManager.js +395 -0
  88. package/lib/module/core/identity-session/IdentityManager.js.map +1 -0
  89. package/lib/module/core/identity-session/IdentitySessionCore.js +390 -0
  90. package/lib/module/core/identity-session/IdentitySessionCore.js.map +1 -0
  91. package/lib/module/core/identity-session/RefreshManager.js +132 -0
  92. package/lib/module/core/identity-session/RefreshManager.js.map +1 -0
  93. package/lib/module/core/identity-session/SessionManager.js +422 -0
  94. package/lib/module/core/identity-session/SessionManager.js.map +1 -0
  95. package/lib/module/core/identity-session/createIdentitySessionCore.js +21 -0
  96. package/lib/module/core/identity-session/createIdentitySessionCore.js.map +1 -0
  97. package/lib/module/core/identity-session/errors.js +170 -0
  98. package/lib/module/core/identity-session/errors.js.map +1 -0
  99. package/lib/module/core/identity-session/index.js +17 -0
  100. package/lib/module/core/identity-session/index.js.map +1 -0
  101. package/lib/module/core/identity-session/types.js +2 -0
  102. package/lib/module/core/identity-session/types.js.map +1 -0
  103. package/lib/module/core/index.js +2 -3
  104. package/lib/module/core/index.js.map +1 -1
  105. package/lib/module/index.js +12 -2
  106. package/lib/module/index.js.map +1 -1
  107. package/lib/module/models/interfaces.js +7 -0
  108. package/lib/module/models/interfaces.js.map +1 -1
  109. package/lib/module/ui/context/OxyContext.js +436 -822
  110. package/lib/module/ui/context/OxyContext.js.map +1 -1
  111. package/lib/module/ui/hooks/useAvatarPicker.js +48 -0
  112. package/lib/module/ui/hooks/useAvatarPicker.js.map +1 -0
  113. package/lib/module/ui/hooks/useIdentityTransfer.js +121 -0
  114. package/lib/module/ui/hooks/useIdentityTransfer.js.map +1 -0
  115. package/lib/module/ui/hooks/useTransferCodesPersistence.js +77 -0
  116. package/lib/module/ui/hooks/useTransferCodesPersistence.js.map +1 -0
  117. package/lib/module/ui/screens/AccountCenterScreen.js +7 -2
  118. package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -1
  119. package/lib/module/ui/screens/AccountSettingsScreen.js +12 -5
  120. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
  121. package/lib/module/ui/screens/AccountSwitcherScreen.js +2 -2
  122. package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -1
  123. package/lib/module/ui/screens/ProfileScreen.js +6 -6
  124. package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
  125. package/lib/module/ui/utils/sessionHelpers.js +7 -1
  126. package/lib/module/ui/utils/sessionHelpers.js.map +1 -1
  127. package/lib/module/utils/index.js +2 -1
  128. package/lib/module/utils/index.js.map +1 -1
  129. package/lib/module/utils/sessionUtils.js +8 -1
  130. package/lib/module/utils/sessionUtils.js.map +1 -1
  131. package/lib/typescript/adapters/expo/crypto.d.ts +17 -0
  132. package/lib/typescript/adapters/expo/crypto.d.ts.map +1 -0
  133. package/lib/typescript/adapters/expo/fetch.d.ts +16 -0
  134. package/lib/typescript/adapters/expo/fetch.d.ts.map +1 -0
  135. package/lib/typescript/adapters/expo/index.d.ts +23 -0
  136. package/lib/typescript/adapters/expo/index.d.ts.map +1 -0
  137. package/lib/typescript/adapters/expo/storage.d.ts +23 -0
  138. package/lib/typescript/adapters/expo/storage.d.ts.map +1 -0
  139. package/lib/typescript/adapters/index.d.ts +13 -0
  140. package/lib/typescript/adapters/index.d.ts.map +1 -0
  141. package/lib/typescript/adapters/node/crypto.d.ts +17 -0
  142. package/lib/typescript/adapters/node/crypto.d.ts.map +1 -0
  143. package/lib/typescript/adapters/node/fetch.d.ts +16 -0
  144. package/lib/typescript/adapters/node/fetch.d.ts.map +1 -0
  145. package/lib/typescript/adapters/node/index.d.ts +23 -0
  146. package/lib/typescript/adapters/node/index.d.ts.map +1 -0
  147. package/lib/typescript/adapters/node/storage.d.ts +23 -0
  148. package/lib/typescript/adapters/node/storage.d.ts.map +1 -0
  149. package/lib/typescript/core/identity-session/DeviceManager.d.ts +64 -0
  150. package/lib/typescript/core/identity-session/DeviceManager.d.ts.map +1 -0
  151. package/lib/typescript/core/identity-session/IdentityManager.d.ts +88 -0
  152. package/lib/typescript/core/identity-session/IdentityManager.d.ts.map +1 -0
  153. package/lib/typescript/core/identity-session/IdentitySessionCore.d.ts +141 -0
  154. package/lib/typescript/core/identity-session/IdentitySessionCore.d.ts.map +1 -0
  155. package/lib/typescript/core/identity-session/RefreshManager.d.ts +36 -0
  156. package/lib/typescript/core/identity-session/RefreshManager.d.ts.map +1 -0
  157. package/lib/typescript/core/identity-session/SessionManager.d.ts +104 -0
  158. package/lib/typescript/core/identity-session/SessionManager.d.ts.map +1 -0
  159. package/lib/typescript/core/identity-session/createIdentitySessionCore.d.ts +11 -0
  160. package/lib/typescript/core/identity-session/createIdentitySessionCore.d.ts.map +1 -0
  161. package/lib/typescript/core/identity-session/errors.d.ts +63 -0
  162. package/lib/typescript/core/identity-session/errors.d.ts.map +1 -0
  163. package/lib/typescript/core/identity-session/index.d.ts +14 -0
  164. package/lib/typescript/core/identity-session/index.d.ts.map +1 -0
  165. package/lib/typescript/core/identity-session/types.d.ts +196 -0
  166. package/lib/typescript/core/identity-session/types.d.ts.map +1 -0
  167. package/lib/typescript/core/index.d.ts +1 -3
  168. package/lib/typescript/core/index.d.ts.map +1 -1
  169. package/lib/typescript/core/mixins/index.d.ts +2 -2
  170. package/lib/typescript/index.d.ts +3 -2
  171. package/lib/typescript/index.d.ts.map +1 -1
  172. package/lib/typescript/models/interfaces.d.ts +5 -36
  173. package/lib/typescript/models/interfaces.d.ts.map +1 -1
  174. package/lib/typescript/models/session.d.ts +3 -16
  175. package/lib/typescript/models/session.d.ts.map +1 -1
  176. package/lib/typescript/ui/context/OxyContext.d.ts +2 -25
  177. package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
  178. package/lib/typescript/ui/hooks/mutations/useAccountMutations.d.ts +7 -8
  179. package/lib/typescript/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
  180. package/lib/typescript/ui/hooks/mutations/useServicesMutations.d.ts +1 -1
  181. package/lib/typescript/ui/hooks/mutations/useServicesMutations.d.ts.map +1 -1
  182. package/lib/typescript/ui/hooks/queries/useAccountQueries.d.ts +5 -5
  183. package/lib/typescript/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
  184. package/lib/typescript/ui/hooks/useAvatarPicker.d.ts +18 -0
  185. package/lib/typescript/ui/hooks/useAvatarPicker.d.ts.map +1 -0
  186. package/lib/typescript/ui/hooks/useIdentityTransfer.d.ts +24 -0
  187. package/lib/typescript/ui/hooks/useIdentityTransfer.d.ts.map +1 -0
  188. package/lib/typescript/ui/hooks/useTransferCodesPersistence.d.ts +6 -0
  189. package/lib/typescript/ui/hooks/useTransferCodesPersistence.d.ts.map +1 -0
  190. package/lib/typescript/ui/screens/AccountCenterScreen.d.ts.map +1 -1
  191. package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +1 -1
  192. package/lib/typescript/ui/utils/sessionHelpers.d.ts +1 -0
  193. package/lib/typescript/ui/utils/sessionHelpers.d.ts.map +1 -1
  194. package/lib/typescript/utils/index.d.ts +0 -2
  195. package/lib/typescript/utils/index.d.ts.map +1 -1
  196. package/lib/typescript/utils/sessionUtils.d.ts.map +1 -1
  197. package/package.json +1 -1
  198. package/src/adapters/expo/crypto.ts +55 -0
  199. package/src/adapters/expo/fetch.ts +28 -0
  200. package/src/adapters/expo/index.ts +51 -0
  201. package/src/adapters/expo/storage.ts +228 -0
  202. package/src/adapters/index.ts +40 -0
  203. package/src/adapters/node/crypto.ts +39 -0
  204. package/src/adapters/node/fetch.ts +59 -0
  205. package/src/adapters/node/index.ts +37 -0
  206. package/src/adapters/node/storage.ts +170 -0
  207. package/src/core/identity-session/DeviceManager.ts +273 -0
  208. package/src/core/identity-session/INTEGRATION_GUIDE.md +287 -0
  209. package/src/core/identity-session/IdentityManager.ts +474 -0
  210. package/src/core/identity-session/IdentitySessionCore.ts +464 -0
  211. package/src/core/identity-session/RefreshManager.ts +189 -0
  212. package/src/core/identity-session/SessionManager.ts +500 -0
  213. package/src/core/identity-session/createIdentitySessionCore.ts +19 -0
  214. package/src/core/identity-session/errors.ts +197 -0
  215. package/src/core/identity-session/index.ts +15 -0
  216. package/src/core/identity-session/types.ts +188 -0
  217. package/src/core/index.ts +3 -4
  218. package/src/index.ts +28 -3
  219. package/src/models/interfaces.ts +12 -39
  220. package/src/models/session.ts +6 -16
  221. package/src/ui/context/OxyContext.tsx +442 -871
  222. package/src/ui/hooks/auth/index.ts +1 -0
  223. package/src/ui/hooks/useAvatarPicker.ts +62 -0
  224. package/src/ui/hooks/useIdentityTransfer.ts +135 -0
  225. package/src/ui/hooks/useTransferCodesPersistence.ts +80 -0
  226. package/src/ui/screens/AccountCenterScreen.tsx +7 -2
  227. package/src/ui/screens/AccountSettingsScreen.tsx +15 -8
  228. package/src/ui/screens/AccountSwitcherScreen.tsx +2 -2
  229. package/src/ui/screens/ProfileScreen.tsx +10 -10
  230. package/src/ui/utils/sessionHelpers.ts +7 -0
  231. package/src/utils/index.ts +1 -2
  232. package/src/utils/sessionUtils.ts +8 -0
  233. package/lib/commonjs/ui/context/hooks/useAuthOperations.js +0 -732
  234. package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +0 -1
  235. package/lib/commonjs/ui/context/hooks/useDeviceManagement.js +0 -73
  236. package/lib/commonjs/ui/context/hooks/useDeviceManagement.js.map +0 -1
  237. package/lib/commonjs/ui/hooks/useDeviceManagement.js +0 -73
  238. package/lib/commonjs/ui/hooks/useDeviceManagement.js.map +0 -1
  239. package/lib/commonjs/ui/hooks/useSessionManagement.js +0 -281
  240. package/lib/commonjs/ui/hooks/useSessionManagement.js.map +0 -1
  241. package/lib/commonjs/utils/deviceManager.js +0 -177
  242. package/lib/commonjs/utils/deviceManager.js.map +0 -1
  243. package/lib/module/ui/context/hooks/useAuthOperations.js +0 -726
  244. package/lib/module/ui/context/hooks/useAuthOperations.js.map +0 -1
  245. package/lib/module/ui/context/hooks/useDeviceManagement.js +0 -68
  246. package/lib/module/ui/context/hooks/useDeviceManagement.js.map +0 -1
  247. package/lib/module/ui/hooks/useDeviceManagement.js +0 -68
  248. package/lib/module/ui/hooks/useDeviceManagement.js.map +0 -1
  249. package/lib/module/ui/hooks/useSessionManagement.js +0 -276
  250. package/lib/module/ui/hooks/useSessionManagement.js.map +0 -1
  251. package/lib/module/utils/deviceManager.js +0 -171
  252. package/lib/module/utils/deviceManager.js.map +0 -1
  253. package/lib/typescript/ui/context/hooks/useAuthOperations.d.ts +0 -59
  254. package/lib/typescript/ui/context/hooks/useAuthOperations.d.ts.map +0 -1
  255. package/lib/typescript/ui/context/hooks/useDeviceManagement.d.ts +0 -27
  256. package/lib/typescript/ui/context/hooks/useDeviceManagement.d.ts.map +0 -1
  257. package/lib/typescript/ui/hooks/useDeviceManagement.d.ts +0 -27
  258. package/lib/typescript/ui/hooks/useDeviceManagement.d.ts.map +0 -1
  259. package/lib/typescript/ui/hooks/useSessionManagement.d.ts +0 -41
  260. package/lib/typescript/ui/hooks/useSessionManagement.d.ts.map +0 -1
  261. package/lib/typescript/utils/deviceManager.d.ts +0 -66
  262. package/lib/typescript/utils/deviceManager.d.ts.map +0 -1
  263. package/src/ui/context/hooks/useAuthOperations.ts +0 -801
  264. package/src/ui/context/hooks/useDeviceManagement.ts +0 -108
  265. package/src/ui/hooks/useDeviceManagement.ts +0 -108
  266. package/src/ui/hooks/useSessionManagement.ts +0 -401
  267. package/src/utils/deviceManager.ts +0 -198
@@ -1,177 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.DeviceManager = void 0;
7
- 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); }
8
- /**
9
- * Client-side device management utility
10
- * Handles persistent device identification across app sessions
11
- */
12
- class DeviceManager {
13
- static DEVICE_KEY = 'oxy_device_info';
14
-
15
- /**
16
- * Check if we're in React Native environment
17
- */
18
- static isReactNative() {
19
- return typeof navigator !== 'undefined' && navigator.product === 'ReactNative';
20
- }
21
-
22
- /**
23
- * Get appropriate storage for the platform
24
- */
25
- static async getStorage() {
26
- if (this.isReactNative()) {
27
- try {
28
- const asyncStorageModule = await Promise.resolve().then(() => _interopRequireWildcard(require('@react-native-async-storage/async-storage')));
29
- const storage = asyncStorageModule.default;
30
- return {
31
- getItem: storage.getItem.bind(storage),
32
- setItem: storage.setItem.bind(storage),
33
- removeItem: storage.removeItem.bind(storage)
34
- };
35
- } catch (error) {
36
- console.error('AsyncStorage not available in React Native:', error);
37
- throw new Error('AsyncStorage is required in React Native environment');
38
- }
39
- } else {
40
- // Use localStorage for web
41
- return {
42
- getItem: async key => localStorage.getItem(key),
43
- setItem: async (key, value) => localStorage.setItem(key, value),
44
- removeItem: async key => localStorage.removeItem(key)
45
- };
46
- }
47
- }
48
-
49
- /**
50
- * Get or create device fingerprint for current device
51
- */
52
- static getDeviceFingerprint() {
53
- const fingerprint = {
54
- userAgent: typeof navigator !== 'undefined' ? navigator.userAgent : 'unknown',
55
- platform: typeof navigator !== 'undefined' ? navigator.platform : 'unknown',
56
- language: typeof navigator !== 'undefined' ? navigator.language : undefined,
57
- timezone: typeof Intl !== 'undefined' ? Intl.DateTimeFormat().resolvedOptions().timeZone : undefined
58
- };
59
-
60
- // Add screen info if available
61
- if (typeof screen !== 'undefined') {
62
- fingerprint.screen = {
63
- width: screen.width,
64
- height: screen.height,
65
- colorDepth: screen.colorDepth
66
- };
67
- }
68
- return fingerprint;
69
- }
70
-
71
- /**
72
- * Get stored device info or create new one
73
- */
74
- static async getDeviceInfo() {
75
- try {
76
- const storage = await this.getStorage();
77
- const stored = await storage.getItem(this.DEVICE_KEY);
78
- if (stored) {
79
- const deviceInfo = JSON.parse(stored);
80
-
81
- // Update last used timestamp
82
- deviceInfo.lastUsed = new Date().toISOString();
83
- await this.saveDeviceInfo(deviceInfo);
84
- return deviceInfo;
85
- }
86
-
87
- // Create new device info
88
- return await this.createNewDeviceInfo();
89
- } catch (error) {
90
- console.error('Error getting device info:', error);
91
- return await this.createNewDeviceInfo();
92
- }
93
- }
94
-
95
- /**
96
- * Create new device info and store it
97
- */
98
- static async createNewDeviceInfo() {
99
- const deviceInfo = {
100
- deviceId: this.generateDeviceId(),
101
- fingerprint: JSON.stringify(this.getDeviceFingerprint()),
102
- createdAt: new Date().toISOString(),
103
- lastUsed: new Date().toISOString()
104
- };
105
- await this.saveDeviceInfo(deviceInfo);
106
- return deviceInfo;
107
- }
108
-
109
- /**
110
- * Save device info to storage
111
- */
112
- static async saveDeviceInfo(deviceInfo) {
113
- try {
114
- const storage = await this.getStorage();
115
- await storage.setItem(this.DEVICE_KEY, JSON.stringify(deviceInfo));
116
- } catch (error) {
117
- console.error('Error saving device info:', error);
118
- }
119
- }
120
-
121
- /**
122
- * Update device name
123
- */
124
- static async updateDeviceName(deviceName) {
125
- try {
126
- const deviceInfo = await this.getDeviceInfo();
127
- deviceInfo.deviceName = deviceName;
128
- await this.saveDeviceInfo(deviceInfo);
129
- } catch (error) {
130
- console.error('Error updating device name:', error);
131
- }
132
- }
133
-
134
- /**
135
- * Clear stored device info (useful for testing or reset)
136
- */
137
- static async clearDeviceInfo() {
138
- try {
139
- const storage = await this.getStorage();
140
- await storage.removeItem(this.DEVICE_KEY);
141
- } catch (error) {
142
- console.error('Error clearing device info:', error);
143
- }
144
- }
145
-
146
- /**
147
- * Generate a unique device ID
148
- */
149
- static generateDeviceId() {
150
- // Use crypto.getRandomValues if available, otherwise fallback to Math.random
151
- if (typeof crypto !== 'undefined' && crypto.getRandomValues) {
152
- const array = new Uint8Array(32);
153
- crypto.getRandomValues(array);
154
- return Array.from(array, byte => byte.toString(16).padStart(2, '0')).join('');
155
- } else {
156
- // Fallback for environments without crypto.getRandomValues
157
- return 'device_' + Date.now().toString(36) + Math.random().toString(36).substr(2);
158
- }
159
- }
160
-
161
- /**
162
- * Get a user-friendly device name based on platform
163
- */
164
- static getDefaultDeviceName() {
165
- const fingerprint = this.getDeviceFingerprint();
166
- const platform = (fingerprint.platform || '').toLowerCase();
167
- if (platform.includes('win')) return 'Windows Computer';
168
- if (platform.includes('mac')) return 'Mac Computer';
169
- if (platform.includes('linux')) return 'Linux Computer';
170
- if (platform.includes('iphone')) return 'iPhone';
171
- if (platform.includes('ipad')) return 'iPad';
172
- if (platform.includes('android')) return 'Android Device';
173
- return 'Unknown Device';
174
- }
175
- }
176
- exports.DeviceManager = DeviceManager;
177
- //# sourceMappingURL=deviceManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["DeviceManager","DEVICE_KEY","isReactNative","navigator","product","getStorage","asyncStorageModule","Promise","resolve","then","_interopRequireWildcard","require","storage","default","getItem","bind","setItem","removeItem","error","console","Error","key","localStorage","value","getDeviceFingerprint","fingerprint","userAgent","platform","language","undefined","timezone","Intl","DateTimeFormat","resolvedOptions","timeZone","screen","width","height","colorDepth","getDeviceInfo","stored","deviceInfo","JSON","parse","lastUsed","Date","toISOString","saveDeviceInfo","createNewDeviceInfo","deviceId","generateDeviceId","stringify","createdAt","updateDeviceName","deviceName","clearDeviceInfo","crypto","getRandomValues","array","Uint8Array","Array","from","byte","toString","padStart","join","now","Math","random","substr","getDefaultDeviceName","toLowerCase","includes","exports"],"sourceRoot":"../../../src","sources":["utils/deviceManager.ts"],"mappings":"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","ignoreList":[]}