@webority/mobile-core 0.0.29 → 0.1.0

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 (139) hide show
  1. package/lib/commonjs/api/baseUrl.js +1 -34
  2. package/lib/commonjs/api/curl.js +1 -109
  3. package/lib/commonjs/api/multipart.js +1 -21
  4. package/lib/commonjs/api/publicClient.js +1 -79
  5. package/lib/commonjs/api/responseBodyText.js +1 -0
  6. package/lib/commonjs/api/retry.js +1 -91
  7. package/lib/commonjs/api/tokenRefresh.js +1 -205
  8. package/lib/commonjs/api/userClient.js +1 -265
  9. package/lib/commonjs/auth/authStore.js +1 -265
  10. package/lib/commonjs/auth/index.js +1 -44
  11. package/lib/commonjs/auth/jwt.js +1 -112
  12. package/lib/commonjs/config/index.js +1 -72
  13. package/lib/commonjs/deepLink/index.js +1 -286
  14. package/lib/commonjs/download/adapters/expoFs.js +1 -69
  15. package/lib/commonjs/download/adapters/shared.js +1 -13
  16. package/lib/commonjs/download/index.js +1 -250
  17. package/lib/commonjs/formatters/currency.js +1 -70
  18. package/lib/commonjs/formatters/date.js +1 -167
  19. package/lib/commonjs/formatters/dateMath.js +1 -311
  20. package/lib/commonjs/formatters/index.js +1 -246
  21. package/lib/commonjs/formatters/initials.js +1 -32
  22. package/lib/commonjs/formatters/intlCache.js +1 -37
  23. package/lib/commonjs/formatters/number.js +1 -89
  24. package/lib/commonjs/formatters/phone.js +1 -369
  25. package/lib/commonjs/formatters/windowsToIanaTable.js +1 -164
  26. package/lib/commonjs/geolocation/adapters/expoLocation.js +1 -126
  27. package/lib/commonjs/geolocation/index.js +1 -355
  28. package/lib/commonjs/index.js +1 -644
  29. package/lib/commonjs/initSDK.js +1 -66
  30. package/lib/commonjs/initUserAuth.js +1 -37
  31. package/lib/commonjs/logger/crashlytics.js +1 -0
  32. package/lib/commonjs/logger/index.js +1 -301
  33. package/lib/commonjs/logger/redact.js +1 -50
  34. package/lib/commonjs/network/index.js +1 -31
  35. package/lib/commonjs/network/networkStatus.js +1 -171
  36. package/lib/commonjs/permissions/calendar.js +1 -14
  37. package/lib/commonjs/permissions/camera.js +1 -14
  38. package/lib/commonjs/permissions/contacts.js +1 -10
  39. package/lib/commonjs/permissions/index.js +1 -133
  40. package/lib/commonjs/permissions/location.js +1 -14
  41. package/lib/commonjs/permissions/mediaLibrary.js +1 -10
  42. package/lib/commonjs/permissions/notifications.js +1 -10
  43. package/lib/commonjs/permissions/photos.js +1 -14
  44. package/lib/commonjs/phone/countries.js +1 -265
  45. package/lib/commonjs/push/index.js +1 -61
  46. package/lib/commonjs/push/push.js +1 -468
  47. package/lib/commonjs/push/status.js +1 -0
  48. package/lib/commonjs/push/task.js +1 -43
  49. package/lib/commonjs/secureScreen/index.js +1 -0
  50. package/lib/commonjs/share/index.js +1 -70
  51. package/lib/commonjs/smsRetriever/index.js +1 -91
  52. package/lib/commonjs/specs/NativeSmsRetriever.js +1 -15
  53. package/lib/commonjs/sqlite/adapters/expo.js +1 -53
  54. package/lib/commonjs/sqlite/index.js +1 -604
  55. package/lib/commonjs/storage/index.js +1 -214
  56. package/lib/commonjs/types/axios.js +1 -4
  57. package/lib/commonjs/types/globals.d.js +1 -6
  58. package/lib/commonjs/utils/base64.js +1 -24
  59. package/lib/commonjs/utils/imageCompression.js +1 -389
  60. package/lib/commonjs/utils/index.js +1 -19
  61. package/lib/commonjs/validators/index.js +1 -227
  62. package/lib/commonjs/versionCheck/index.js +1 -419
  63. package/lib/module/api/baseUrl.js +1 -30
  64. package/lib/module/api/curl.js +1 -104
  65. package/lib/module/api/multipart.js +1 -16
  66. package/lib/module/api/publicClient.js +1 -75
  67. package/lib/module/api/responseBodyText.js +1 -0
  68. package/lib/module/api/retry.js +1 -85
  69. package/lib/module/api/tokenRefresh.js +1 -192
  70. package/lib/module/api/userClient.js +1 -243
  71. package/lib/module/auth/authStore.js +1 -257
  72. package/lib/module/auth/index.js +1 -5
  73. package/lib/module/auth/jwt.js +1 -106
  74. package/lib/module/config/index.js +1 -64
  75. package/lib/module/deepLink/index.js +1 -280
  76. package/lib/module/download/adapters/expoFs.js +1 -64
  77. package/lib/module/download/adapters/shared.js +1 -8
  78. package/lib/module/download/index.js +1 -242
  79. package/lib/module/formatters/currency.js +1 -65
  80. package/lib/module/formatters/date.js +1 -159
  81. package/lib/module/formatters/dateMath.js +1 -295
  82. package/lib/module/formatters/index.js +1 -9
  83. package/lib/module/formatters/initials.js +1 -27
  84. package/lib/module/formatters/intlCache.js +1 -30
  85. package/lib/module/formatters/number.js +1 -82
  86. package/lib/module/formatters/phone.js +1 -302
  87. package/lib/module/formatters/windowsToIanaTable.js +1 -160
  88. package/lib/module/geolocation/adapters/expoLocation.js +1 -121
  89. package/lib/module/geolocation/index.js +1 -347
  90. package/lib/module/index.js +1 -57
  91. package/lib/module/initSDK.js +1 -61
  92. package/lib/module/initUserAuth.js +1 -33
  93. package/lib/module/logger/crashlytics.js +1 -0
  94. package/lib/module/logger/index.js +1 -295
  95. package/lib/module/logger/redact.js +1 -44
  96. package/lib/module/network/index.js +1 -4
  97. package/lib/module/network/networkStatus.js +1 -161
  98. package/lib/module/permissions/calendar.js +1 -15
  99. package/lib/module/permissions/camera.js +1 -15
  100. package/lib/module/permissions/contacts.js +1 -11
  101. package/lib/module/permissions/index.js +1 -128
  102. package/lib/module/permissions/location.js +1 -15
  103. package/lib/module/permissions/mediaLibrary.js +1 -11
  104. package/lib/module/permissions/notifications.js +1 -11
  105. package/lib/module/permissions/photos.js +1 -15
  106. package/lib/module/phone/countries.js +1 -261
  107. package/lib/module/push/index.js +1 -4
  108. package/lib/module/push/push.js +1 -452
  109. package/lib/module/push/status.js +1 -0
  110. package/lib/module/push/task.js +1 -38
  111. package/lib/module/secureScreen/index.js +1 -0
  112. package/lib/module/share/index.js +1 -64
  113. package/lib/module/smsRetriever/index.js +1 -86
  114. package/lib/module/specs/NativeSmsRetriever.js +1 -13
  115. package/lib/module/sqlite/adapters/expo.js +1 -48
  116. package/lib/module/sqlite/index.js +1 -594
  117. package/lib/module/storage/index.js +1 -208
  118. package/lib/module/types/axios.js +1 -4
  119. package/lib/module/types/globals.d.js +1 -10
  120. package/lib/module/utils/base64.js +1 -19
  121. package/lib/module/utils/imageCompression.js +1 -383
  122. package/lib/module/utils/index.js +1 -4
  123. package/lib/module/validators/index.js +1 -205
  124. package/lib/module/versionCheck/index.js +1 -413
  125. package/lib/typescript/commonjs/api/responseBodyText.d.ts +6 -0
  126. package/lib/typescript/commonjs/index.d.ts +5 -0
  127. package/lib/typescript/commonjs/logger/crashlytics.d.ts +31 -0
  128. package/lib/typescript/commonjs/push/index.d.ts +3 -1
  129. package/lib/typescript/commonjs/push/push.d.ts +1 -1
  130. package/lib/typescript/commonjs/push/status.d.ts +9 -0
  131. package/lib/typescript/commonjs/secureScreen/index.d.ts +25 -0
  132. package/lib/typescript/module/api/responseBodyText.d.ts +6 -0
  133. package/lib/typescript/module/index.d.ts +5 -0
  134. package/lib/typescript/module/logger/crashlytics.d.ts +31 -0
  135. package/lib/typescript/module/push/index.d.ts +3 -1
  136. package/lib/typescript/module/push/push.d.ts +1 -1
  137. package/lib/typescript/module/push/status.d.ts +9 -0
  138. package/lib/typescript/module/secureScreen/index.d.ts +25 -0
  139. package/package.json +23 -4
@@ -1,91 +1 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.setSmsRetrieverImplementation = exports.SmsRetriever = void 0;
7
- var _reactNative = require("react-native");
8
- var _index = require("../logger/index.js");
9
- const OTP_EVENT = 'WeborityMobileCoreSmsRetrieved';
10
- const ERROR_EVENT = 'WeborityMobileCoreSmsRetrieverError';
11
- let backend = null;
12
-
13
- /** Test-only injection point. Pass `null` to reset to the native module. */
14
- const setSmsRetrieverImplementation = impl => {
15
- backend = impl;
16
- };
17
- exports.setSmsRetrieverImplementation = setSmsRetrieverImplementation;
18
- let nativeModule;
19
- const resolveNativeModule = () => {
20
- if (nativeModule !== undefined) {
21
- return nativeModule;
22
- }
23
- if (_reactNative.Platform.OS !== 'android') {
24
- nativeModule = null;
25
- return null;
26
- }
27
- try {
28
- nativeModule = require('../specs/NativeSmsRetriever').default ?? null;
29
- } catch (error) {
30
- _index.Logger.warn('[smsRetriever] native module not available', error);
31
- nativeModule = null;
32
- }
33
- return nativeModule ?? null;
34
- };
35
- const defaultBackend = {
36
- getAppHash: async () => {
37
- const m = resolveNativeModule();
38
- if (!m) {
39
- throw new Error('[smsRetriever] getAppHash: native module unavailable (Android only).');
40
- }
41
- return m.getAppHash();
42
- },
43
- startListening: (onMessage, onError) => {
44
- const m = resolveNativeModule();
45
- if (!m) {
46
- onError?.({
47
- type: 'SERVICE_UNAVAILABLE',
48
- message: 'SMS Retriever is Android-only, or the native module is not linked.'
49
- });
50
- return {
51
- remove: () => undefined
52
- };
53
- }
54
- const messageSub = _reactNative.DeviceEventEmitter.addListener(OTP_EVENT, payload => onMessage(payload.message));
55
- const errorSub = onError ? _reactNative.DeviceEventEmitter.addListener(ERROR_EVENT, payload => onError(payload)) : null;
56
- try {
57
- m.startSMSListener();
58
- } catch (error) {
59
- _index.Logger.error('[smsRetriever] startSMSListener failed', error);
60
- }
61
- return {
62
- remove: () => {
63
- messageSub.remove();
64
- errorSub?.remove();
65
- try {
66
- m.stopSMSListener();
67
- } catch (error) {
68
- _index.Logger.error('[smsRetriever] stopSMSListener failed', error);
69
- }
70
- }
71
- };
72
- }
73
- };
74
-
75
- /**
76
- * The Play Services SMS Retriever API — auto-reads an incoming OTP SMS with
77
- * no SMS permission, matched by an 11-character app-signature hash
78
- * (`getAppHash`) the backend appends to the message. Android only; every
79
- * method is safe to call on iOS and resolves/reports unavailable rather than
80
- * throwing, so a caller doesn't need a platform check at every call site.
81
- *
82
- * OTP extraction is left to the caller — `onMessage` receives the raw SMS
83
- * text, since the expected OTP format (digit count, prefix) is a backend
84
- * concern, not this module's.
85
- */
86
- const SmsRetriever = exports.SmsRetriever = {
87
- isAvailable: () => resolveNativeModule() !== null,
88
- getAppHash: () => (backend ?? defaultBackend).getAppHash(),
89
- startListening: (onMessage, onError) => (backend ?? defaultBackend).startListening(onMessage, onError)
90
- };
91
- //# sourceMappingURL=index.js.map
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.setSmsRetrieverImplementation=exports.SmsRetriever=void 0;var _reactNative=require("react-native"),_index=require("../logger/index.js");const OTP_EVENT="WeborityMobileCoreSmsRetrieved",ERROR_EVENT="WeborityMobileCoreSmsRetrieverError";let backend=null;const setSmsRetrieverImplementation=e=>{backend=e};let nativeModule;exports.setSmsRetrieverImplementation=setSmsRetrieverImplementation;const resolveNativeModule=()=>{if(void 0!==nativeModule)return nativeModule;if("android"!==_reactNative.Platform.OS)return nativeModule=null,null;try{nativeModule=require("../specs/NativeSmsRetriever").default??null}catch(e){_index.Logger.warn("[smsRetriever] native module not available",e),nativeModule=null}return nativeModule??null},defaultBackend={getAppHash:async()=>{const e=resolveNativeModule();if(!e)throw new Error("[smsRetriever] getAppHash: native module unavailable (Android only).");return e.getAppHash()},startListening:(e,t)=>{const r=resolveNativeModule();if(!r)return t?.({type:"SERVICE_UNAVAILABLE",message:"SMS Retriever is Android-only, or the native module is not linked."}),{remove:()=>{}};const i=_reactNative.DeviceEventEmitter.addListener(OTP_EVENT,t=>e(t.message)),n=t?_reactNative.DeviceEventEmitter.addListener(ERROR_EVENT,e=>t(e)):null;try{r.startSMSListener()}catch(e){_index.Logger.error("[smsRetriever] startSMSListener failed",e)}return{remove:()=>{i.remove(),n?.remove();try{r.stopSMSListener()}catch(e){_index.Logger.error("[smsRetriever] stopSMSListener failed",e)}}}}},SmsRetriever=exports.SmsRetriever={isAvailable:()=>null!==resolveNativeModule(),getAppHash:()=>(backend??defaultBackend).getAppHash(),startListening:(e,t)=>(backend??defaultBackend).startListening(e,t)};
@@ -1,15 +1 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _reactNative = require("react-native");
8
- /**
9
- * Android-only — the Play Services SMS Retriever API has no iOS equivalent.
10
- * The JS wrapper in `smsRetriever/index.ts` never touches this module on
11
- * iOS, so `getEnforcing` only ever runs on Android, where autolinking has
12
- * registered `SmsRetrieverPackage`.
13
- */
14
- var _default = exports.default = _reactNative.TurboModuleRegistry.getEnforcing('WeborityMobileCoreSmsRetriever');
15
- //# sourceMappingURL=NativeSmsRetriever.js.map
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _reactNative=require("react-native"),_default=exports.default=_reactNative.TurboModuleRegistry.getEnforcing("WeborityMobileCoreSmsRetriever");
@@ -1,53 +1 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.adaptExpoSqlite = void 0;
7
- /**
8
- * expo-sqlite. Shape verified against 57.0.2 rather than assumed, and it is the
9
- * one driver that cannot share an adapter with the others: expo splits reads
10
- * from writes. `getAllAsync` yields rows but no change count, `runAsync` yields
11
- * `{ changes, lastInsertRowId }` but no rows, and SqliteResultSet needs all
12
- * three from one call. `prepareAsync` + `executeAsync` is the only call that
13
- * returns both, so every statement goes through it rather than being routed by
14
- * sniffing the SQL for a leading SELECT.
15
- *
16
- * The REQUIRE lives in the driver entry point beside this file, never here.
17
- */
18
-
19
- const adaptExpoSqlite = mod => ({
20
- // expo takes the directory as a third positional argument rather than an
21
- // option, so `location` cannot be passed through the options object.
22
- open: async (name, options) => {
23
- const db = await mod.openDatabaseAsync(name, undefined, options?.location);
24
- return {
25
- execute: async (sql, params) => {
26
- const statement = await db.prepareAsync(sql);
27
- try {
28
- const result = await statement.executeAsync(params ? [...params] : []);
29
- // Safe on a write: expo returns [] when the statement produced no
30
- // first row rather than stepping the statement a second time.
31
- const rows = await result.getAllAsync();
32
- return {
33
- rows,
34
- rowsAffected: result.changes,
35
- // expo always reports lastInsertRowId, so unlike the other drivers
36
- // this is never undefined. It is the connection's last insert rowid,
37
- // which is only meaningful immediately after an INSERT.
38
- insertId: result.lastInsertRowId
39
- };
40
- } finally {
41
- // A statement left unfinalised holds a native handle for the life of
42
- // the connection, and the core executes one per call.
43
- await statement.finalizeAsync();
44
- }
45
- },
46
- close: async () => {
47
- await db.closeAsync();
48
- }
49
- };
50
- }
51
- });
52
- exports.adaptExpoSqlite = adaptExpoSqlite;
53
- //# sourceMappingURL=expo.js.map
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.adaptExpoSqlite=void 0;const adaptExpoSqlite=e=>({open:async(t,a)=>{const s=await e.openDatabaseAsync(t,void 0,a?.location);return{execute:async(e,t)=>{const a=await s.prepareAsync(e);try{const e=await a.executeAsync(t?[...t]:[]);return{rows:await e.getAllAsync(),rowsAffected:e.changes,insertId:e.lastInsertRowId}}finally{await a.finalizeAsync()}},close:async()=>{await s.closeAsync()}}}});exports.adaptExpoSqlite=adaptExpoSqlite;