@vqh2602/mini-app-sdk 1.0.7 → 1.0.8

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 (173) hide show
  1. package/README.md +9 -0
  2. package/bin/simulator.js +36 -6
  3. package/dist/cli/commands/dev.d.ts +1 -0
  4. package/dist/cli/commands/dev.d.ts.map +1 -1
  5. package/dist/cli/commands/dev.js +3 -2
  6. package/dist/cli/commands/dev.js.map +1 -1
  7. package/dist/cli/commands/simulator.d.ts +1 -0
  8. package/dist/cli/commands/simulator.d.ts.map +1 -1
  9. package/dist/cli/commands/simulator.js +3 -2
  10. package/dist/cli/commands/simulator.js.map +1 -1
  11. package/dist/cli/commands/upload.d.ts +3 -0
  12. package/dist/cli/commands/upload.d.ts.map +1 -1
  13. package/dist/cli/commands/upload.js +45 -27
  14. package/dist/cli/commands/upload.js.map +1 -1
  15. package/dist/cli/index.js +5 -1
  16. package/dist/cli/index.js.map +1 -1
  17. package/dist/cli/utils/auth.d.ts +34 -0
  18. package/dist/cli/utils/auth.d.ts.map +1 -0
  19. package/dist/cli/utils/auth.js +99 -0
  20. package/dist/cli/utils/auth.js.map +1 -0
  21. package/dist/cli/utils/server.d.ts +15 -1
  22. package/dist/cli/utils/server.d.ts.map +1 -1
  23. package/dist/cli/utils/server.js +71 -7
  24. package/dist/cli/utils/server.js.map +1 -1
  25. package/dist/core/client.d.ts +148 -16
  26. package/dist/core/client.d.ts.map +1 -1
  27. package/dist/core/client.js +113 -53
  28. package/dist/core/client.js.map +1 -1
  29. package/dist/core/index.d.ts +10 -0
  30. package/dist/core/index.d.ts.map +1 -1
  31. package/dist/core/index.js +10 -0
  32. package/dist/core/index.js.map +1 -1
  33. package/dist/core/modules/auth.d.ts +64 -4
  34. package/dist/core/modules/auth.d.ts.map +1 -1
  35. package/dist/core/modules/auth.js +205 -2
  36. package/dist/core/modules/auth.js.map +1 -1
  37. package/dist/core/modules/debug.d.ts +14 -0
  38. package/dist/core/modules/debug.d.ts.map +1 -0
  39. package/dist/core/modules/debug.js +19 -0
  40. package/dist/core/modules/debug.js.map +1 -0
  41. package/dist/core/modules/device.d.ts +4 -1
  42. package/dist/core/modules/device.d.ts.map +1 -1
  43. package/dist/core/modules/device.js +4 -1
  44. package/dist/core/modules/device.js.map +1 -1
  45. package/dist/core/modules/file.d.ts +38 -0
  46. package/dist/core/modules/file.d.ts.map +1 -0
  47. package/dist/core/modules/file.js +25 -0
  48. package/dist/core/modules/file.js.map +1 -0
  49. package/dist/core/modules/lifecycle.d.ts +23 -0
  50. package/dist/core/modules/lifecycle.d.ts.map +1 -1
  51. package/dist/core/modules/lifecycle.js +30 -0
  52. package/dist/core/modules/lifecycle.js.map +1 -1
  53. package/dist/core/modules/media.d.ts +65 -0
  54. package/dist/core/modules/media.d.ts.map +1 -1
  55. package/dist/core/modules/media.js +36 -0
  56. package/dist/core/modules/media.js.map +1 -1
  57. package/dist/core/modules/navigation.d.ts +3 -3
  58. package/dist/core/modules/navigation.d.ts.map +1 -1
  59. package/dist/core/modules/navigation.js +3 -3
  60. package/dist/core/modules/navigation.js.map +1 -1
  61. package/dist/core/modules/payment.d.ts +39 -0
  62. package/dist/core/modules/payment.d.ts.map +1 -0
  63. package/dist/core/modules/payment.js +25 -0
  64. package/dist/core/modules/payment.js.map +1 -0
  65. package/dist/core/modules/permissions.d.ts +28 -0
  66. package/dist/core/modules/permissions.d.ts.map +1 -0
  67. package/dist/core/modules/permissions.js +31 -0
  68. package/dist/core/modules/permissions.js.map +1 -0
  69. package/dist/core/modules/phone.d.ts +22 -0
  70. package/dist/core/modules/phone.d.ts.map +1 -0
  71. package/dist/core/modules/phone.js +31 -0
  72. package/dist/core/modules/phone.js.map +1 -0
  73. package/dist/core/modules/storage.d.ts +88 -4
  74. package/dist/core/modules/storage.d.ts.map +1 -1
  75. package/dist/core/modules/storage.js +78 -13
  76. package/dist/core/modules/storage.js.map +1 -1
  77. package/dist/core/modules/system.d.ts +67 -0
  78. package/dist/core/modules/system.d.ts.map +1 -0
  79. package/dist/core/modules/system.js +55 -0
  80. package/dist/core/modules/system.js.map +1 -0
  81. package/dist/core/modules/ui.d.ts +40 -9
  82. package/dist/core/modules/ui.d.ts.map +1 -1
  83. package/dist/core/modules/ui.js +45 -11
  84. package/dist/core/modules/ui.js.map +1 -1
  85. package/dist/core/modules/user.d.ts +18 -0
  86. package/dist/core/modules/user.d.ts.map +1 -0
  87. package/dist/core/modules/user.js +19 -0
  88. package/dist/core/modules/user.js.map +1 -0
  89. package/dist/core/modules/utility.d.ts +23 -0
  90. package/dist/core/modules/utility.d.ts.map +1 -0
  91. package/dist/core/modules/utility.js +19 -0
  92. package/dist/core/modules/utility.js.map +1 -0
  93. package/dist/core/types/index.d.ts +66 -8
  94. package/dist/core/types/index.d.ts.map +1 -1
  95. package/dist/index.d.ts +3 -3
  96. package/dist/index.d.ts.map +1 -1
  97. package/dist/index.js +3 -3
  98. package/dist/index.js.map +1 -1
  99. package/dist/mock/index.d.ts +0 -6
  100. package/dist/mock/index.d.ts.map +1 -1
  101. package/dist/mock/index.js +0 -6
  102. package/dist/mock/index.js.map +1 -1
  103. package/dist/mock/mock-engine.d.ts +6 -25
  104. package/dist/mock/mock-engine.d.ts.map +1 -1
  105. package/dist/mock/mock-engine.js +8 -325
  106. package/dist/mock/mock-engine.js.map +1 -1
  107. package/dist/mock/presets.d.ts +2 -2
  108. package/dist/mock/presets.d.ts.map +1 -1
  109. package/dist/mock/presets.js +2 -42
  110. package/dist/mock/presets.js.map +1 -1
  111. package/dist/mock/store.d.ts +2 -33
  112. package/dist/mock/store.d.ts.map +1 -1
  113. package/dist/mock/store.js +2 -130
  114. package/dist/mock/store.js.map +1 -1
  115. package/dist/transport/adaptive-transport.d.ts +2 -0
  116. package/dist/transport/adaptive-transport.d.ts.map +1 -1
  117. package/dist/transport/adaptive-transport.js +11 -3
  118. package/dist/transport/adaptive-transport.js.map +1 -1
  119. package/dist/transport/bridge-hub.d.ts +46 -0
  120. package/dist/transport/bridge-hub.d.ts.map +1 -0
  121. package/dist/transport/bridge-hub.js +268 -0
  122. package/dist/transport/bridge-hub.js.map +1 -0
  123. package/dist/transport/index.d.ts +1 -0
  124. package/dist/transport/index.d.ts.map +1 -1
  125. package/dist/transport/index.js +1 -0
  126. package/dist/transport/index.js.map +1 -1
  127. package/dist/transport/mock-transport.d.ts +2 -0
  128. package/dist/transport/mock-transport.d.ts.map +1 -1
  129. package/dist/transport/mock-transport.js +6 -0
  130. package/dist/transport/mock-transport.js.map +1 -1
  131. package/dist/transport/native-transport.d.ts +6 -5
  132. package/dist/transport/native-transport.d.ts.map +1 -1
  133. package/dist/transport/native-transport.js +46 -120
  134. package/dist/transport/native-transport.js.map +1 -1
  135. package/dist/transport/postmessage-transport.d.ts +8 -0
  136. package/dist/transport/postmessage-transport.d.ts.map +1 -1
  137. package/dist/transport/postmessage-transport.js +213 -12
  138. package/dist/transport/postmessage-transport.js.map +1 -1
  139. package/dist/transport/timeout-policy.d.ts.map +1 -1
  140. package/dist/transport/timeout-policy.js +1 -0
  141. package/dist/transport/timeout-policy.js.map +1 -1
  142. package/dist/transport/transport.interface.d.ts +2 -0
  143. package/dist/transport/transport.interface.d.ts.map +1 -1
  144. package/dist/transport/types.d.ts +4 -1
  145. package/dist/transport/types.d.ts.map +1 -1
  146. package/package.json +2 -2
  147. package/simulator-dist/assets/index-DkSKbR3O.js +120 -0
  148. package/simulator-dist/index.html +1 -1
  149. package/dist/mock/handlers/auth.handler.d.ts +0 -24
  150. package/dist/mock/handlers/auth.handler.d.ts.map +0 -1
  151. package/dist/mock/handlers/auth.handler.js +0 -106
  152. package/dist/mock/handlers/auth.handler.js.map +0 -1
  153. package/dist/mock/handlers/device.handler.d.ts +0 -16
  154. package/dist/mock/handlers/device.handler.d.ts.map +0 -1
  155. package/dist/mock/handlers/device.handler.js +0 -53
  156. package/dist/mock/handlers/device.handler.js.map +0 -1
  157. package/dist/mock/handlers/media.handler.d.ts +0 -9
  158. package/dist/mock/handlers/media.handler.d.ts.map +0 -1
  159. package/dist/mock/handlers/media.handler.js +0 -20
  160. package/dist/mock/handlers/media.handler.js.map +0 -1
  161. package/dist/mock/handlers/payment.handler.d.ts +0 -27
  162. package/dist/mock/handlers/payment.handler.d.ts.map +0 -1
  163. package/dist/mock/handlers/payment.handler.js +0 -62
  164. package/dist/mock/handlers/payment.handler.js.map +0 -1
  165. package/dist/mock/handlers/storage.handler.d.ts +0 -18
  166. package/dist/mock/handlers/storage.handler.d.ts.map +0 -1
  167. package/dist/mock/handlers/storage.handler.js +0 -40
  168. package/dist/mock/handlers/storage.handler.js.map +0 -1
  169. package/dist/mock/handlers/ui.handler.d.ts +0 -34
  170. package/dist/mock/handlers/ui.handler.d.ts.map +0 -1
  171. package/dist/mock/handlers/ui.handler.js +0 -59
  172. package/dist/mock/handlers/ui.handler.js.map +0 -1
  173. package/simulator-dist/assets/index-DpHZwm7N.js +0 -199
@@ -1 +1 @@
1
- {"version":3,"file":"native-transport.d.ts","sourceRoot":"","sources":["../../src/transport/native-transport.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAe,mBAAmB,EAAqD,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAKjJ,wBAAgB,uBAAuB,IAAI,OAAO,CAMjD;AAED,qBAAa,qBAAsB,YAAW,UAAU;IACtD,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,SAAS,CAAmG;IACpH,OAAO,CAAC,SAAS,CAAoD;gBAEzD,MAAM,GAAE,eAAoB;IAOjC,OAAO,IAAI,aAAa;IAIxB,WAAW,IAAI,OAAO;IAI7B,OAAO,CAAC,sBAAsB;IAuD9B,OAAO,CAAC,oBAAoB;IAyBrB,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IA6ElG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,MAAM,IAAI;IAQ5D,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAUvD,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI;CAe/C"}
1
+ {"version":3,"file":"native-transport.d.ts","sourceRoot":"","sources":["../../src/transport/native-transport.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAe,mBAAmB,EAAqD,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAKjJ,wBAAgB,uBAAuB,IAAI,OAAO,CAMjD;AAED,qBAAa,qBAAsB,YAAW,UAAU;IACtD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,GAAG,CAAY;gBAEX,MAAM,GAAE,eAAoB;IASjC,OAAO,IAAI,aAAa;IAIxB,WAAW,IAAI,OAAO;IAItB,cAAc,IAAI,MAAM;IAIxB,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IA2FlG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,MAAM,IAAI;IAI5D,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAIvD,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI;IAOvC,OAAO,IAAI,IAAI;IAgBf,OAAO,IAAI,IAAI;CAGvB"}
@@ -1,27 +1,29 @@
1
+ import { BridgeHub, isForwardingShim } from './bridge-hub.js';
1
2
  import { bridgeTimeoutMs } from './timeout-policy.js';
2
3
  let requestSequence = 1;
3
- // A forwarding shim is not evidence that a native host is connected.
4
- const forwardingShims = new WeakSet();
4
+ let transportSequence = 1;
5
5
  export function isNativeBridgeAvailable() {
6
6
  if (typeof window === 'undefined')
7
7
  return false;
8
8
  const win = window;
9
9
  const send = win.SuperAppBridge?.postMessage;
10
10
  return typeof win.FlutterBridge?.postMessage === 'function' ||
11
- (typeof send === 'function' && !forwardingShims.has(send));
11
+ (typeof send === 'function' && !isForwardingShim(send));
12
12
  }
13
13
  export class NativeBridgeTransport {
14
- installedBridges = new WeakSet();
14
+ transportId;
15
15
  appId;
16
16
  defaultTimeoutMs;
17
17
  debug;
18
- callbacks = new Map();
19
- listeners = new Map();
18
+ isDestroyed = false;
19
+ hub;
20
20
  constructor(config = {}) {
21
+ this.transportId = `native_trans_${Date.now()}_${transportSequence++}`;
21
22
  this.appId = config.appId || 'mini_app_default';
22
23
  this.defaultTimeoutMs = config.timeoutMs;
23
24
  this.debug = config.debug ?? false;
24
- this.initNativeGlobalBridge();
25
+ this.hub = BridgeHub.getShared();
26
+ this.hub.installOnGlobalBridge();
25
27
  }
26
28
  getType() {
27
29
  return 'native';
@@ -29,92 +31,16 @@ export class NativeBridgeTransport {
29
31
  isConnected() {
30
32
  return isNativeBridgeAvailable();
31
33
  }
32
- initNativeGlobalBridge() {
33
- if (typeof window === 'undefined')
34
- return;
35
- const win = window;
36
- if (!win.SuperAppBridge) {
37
- // Keep the shared callback/listener contract used by the Flutter host and
38
- // plain JS clients, even when this SDK is the first script to initialize.
39
- win.SuperAppBridge = {};
40
- }
41
- const bridge = win.SuperAppBridge;
42
- bridge._callbacks ||= {};
43
- bridge._listeners ||= {};
44
- if (!bridge.postMessage) {
45
- bridge.postMessage = (msg) => {
46
- win.FlutterBridge?.postMessage(typeof msg === 'string' ? msg : JSON.stringify(msg));
47
- };
48
- forwardingShims.add(bridge.postMessage);
49
- }
50
- if (!bridge.dispatchResponse) {
51
- bridge.dispatchResponse = (res) => {
52
- const callback = bridge._callbacks[res.id];
53
- if (callback) {
54
- delete bridge._callbacks[res.id];
55
- callback(res);
56
- }
57
- };
58
- }
59
- if (!bridge.dispatchEvent) {
60
- bridge.dispatchEvent = (evt) => {
61
- for (const listener of [...(bridge._listeners[evt.event] || [])]) {
62
- try {
63
- listener(evt.payload);
64
- }
65
- catch (error) {
66
- console.error(error);
67
- }
68
- }
69
- };
70
- }
71
- bridge.addEventListener ||= (event, handler) => {
72
- (bridge._listeners[event] ||= []).push(handler);
73
- };
74
- bridge.removeEventListener ||= (event, handler) => {
75
- bridge._listeners[event] = (bridge._listeners[event] || []).filter(fn => fn !== handler);
76
- };
77
- // Install once per bridge object, rather than stacking new wrappers per call.
78
- // Also reconnect if a host replaces the bridge after SDK initialization.
79
- if (this.installedBridges.has(bridge))
80
- return;
81
- this.installedBridges.add(bridge);
82
- const previousResponse = bridge.dispatchResponse;
83
- bridge.dispatchResponse = (res) => {
84
- this.handleNativeResponse(res);
85
- previousResponse.call(bridge, res);
86
- };
87
- const previousEvent = bridge.dispatchEvent;
88
- bridge.dispatchEvent = (evt) => {
89
- this.emit(evt.event, evt.payload);
90
- previousEvent.call(bridge, evt);
91
- };
92
- }
93
- handleNativeResponse(res) {
94
- if (!res || !res.id)
95
- return;
96
- if (this.debug) {
97
- console.log(`[NativeBridgeTransport] Response received:`, res);
98
- }
99
- const pending = this.callbacks.get(res.id);
100
- if (!pending)
101
- return;
102
- clearTimeout(pending.timer);
103
- this.callbacks.delete(res.id);
104
- if (typeof window !== 'undefined') {
105
- const win = window;
106
- if (win.SuperAppBridge?._callbacks) {
107
- delete win.SuperAppBridge._callbacks[res.id];
108
- }
109
- }
110
- if (res.success) {
111
- pending.resolve(res.data);
112
- }
113
- else {
114
- pending.reject(res.error || { code: 'UNKNOWN_ERROR', message: 'Operation failed without error payload' });
115
- }
34
+ getTransportId() {
35
+ return this.transportId;
116
36
  }
117
37
  invoke(action, payload = {}, timeoutMs) {
38
+ if (this.isDestroyed) {
39
+ return Promise.reject({
40
+ code: 'TRANSPORT_DESTROYED',
41
+ message: 'NativeBridgeTransport has been destroyed and cannot invoke actions',
42
+ });
43
+ }
118
44
  const id = `sdk_req_${Date.now()}_${requestSequence++}`;
119
45
  const timeout = bridgeTimeoutMs(action, timeoutMs ?? this.defaultTimeoutMs);
120
46
  const request = {
@@ -126,9 +52,9 @@ export class NativeBridgeTransport {
126
52
  timestamp: Date.now(),
127
53
  };
128
54
  return new Promise((resolve, reject) => {
129
- this.initNativeGlobalBridge();
55
+ this.hub.installOnGlobalBridge();
130
56
  const timer = setTimeout(() => {
131
- this.callbacks.delete(id);
57
+ this.hub.unregisterCallback(id);
132
58
  if (typeof window !== 'undefined') {
133
59
  const win = window;
134
60
  if (win.SuperAppBridge?._callbacks) {
@@ -144,7 +70,14 @@ export class NativeBridgeTransport {
144
70
  }
145
71
  reject(timeoutError);
146
72
  }, timeout);
147
- this.callbacks.set(id, { resolve, reject, timer });
73
+ this.hub.registerCallback(id, {
74
+ transportId: this.transportId,
75
+ action,
76
+ resolve,
77
+ reject,
78
+ timer,
79
+ createdAt: Date.now(),
80
+ });
148
81
  if (this.debug) {
149
82
  console.log(`[NativeBridgeTransport] Invoking ${action}:`, request);
150
83
  }
@@ -154,7 +87,7 @@ export class NativeBridgeTransport {
154
87
  if (win.SuperAppBridge) {
155
88
  win.SuperAppBridge._callbacks = win.SuperAppBridge._callbacks || {};
156
89
  win.SuperAppBridge._callbacks[id] = (res) => {
157
- this.handleNativeResponse(res);
90
+ this.hub.dispatchResponse(res);
158
91
  };
159
92
  }
160
93
  if (win.FlutterBridge?.postMessage) {
@@ -165,7 +98,7 @@ export class NativeBridgeTransport {
165
98
  }
166
99
  else {
167
100
  clearTimeout(timer);
168
- this.callbacks.delete(id);
101
+ this.hub.unregisterCallback(id);
169
102
  if (win.SuperAppBridge?._callbacks) {
170
103
  delete win.SuperAppBridge._callbacks[id];
171
104
  }
@@ -177,7 +110,7 @@ export class NativeBridgeTransport {
177
110
  }
178
111
  else {
179
112
  clearTimeout(timer);
180
- this.callbacks.delete(id);
113
+ this.hub.unregisterCallback(id);
181
114
  reject({
182
115
  code: 'ENVIRONMENT_ERROR',
183
116
  message: 'Cannot invoke native bridge in a non-browser environment',
@@ -186,36 +119,29 @@ export class NativeBridgeTransport {
186
119
  });
187
120
  }
188
121
  on(event, listener) {
189
- if (!this.listeners.has(event)) {
190
- this.listeners.set(event, new Set());
191
- }
192
- this.listeners.get(event).add(listener);
193
- return () => this.off(event, listener);
122
+ return this.hub.addListener(this.transportId, event, listener);
194
123
  }
195
124
  off(event, listener) {
196
- const set = this.listeners.get(event);
197
- if (set) {
198
- set.delete(listener);
199
- if (set.size === 0) {
200
- this.listeners.delete(event);
201
- }
202
- }
125
+ this.hub.removeListener(this.transportId, event, listener);
203
126
  }
204
127
  emit(event, payload) {
205
128
  if (this.debug) {
206
- console.log(`[NativeBridgeTransport] Event received [${event}]:`, payload);
129
+ console.log(`[NativeBridgeTransport] Emitting event [${event}]:`, payload);
207
130
  }
208
- const set = this.listeners.get(event);
209
- if (set) {
210
- set.forEach((listener) => {
211
- try {
212
- listener(payload);
213
- }
214
- catch (err) {
215
- console.error(`[NativeBridgeTransport] Error in listener for event "${event}":`, err);
216
- }
217
- });
131
+ this.hub.dispatchEvent({ event, payload });
132
+ }
133
+ destroy() {
134
+ if (this.isDestroyed)
135
+ return;
136
+ this.isDestroyed = true;
137
+ this.hub.cancelPendingRequestsForTransport(this.transportId, 'ABORTED', 'NativeBridgeTransport was destroyed before request completed');
138
+ this.hub.removeListenersForTransport(this.transportId);
139
+ if (this.debug) {
140
+ console.log(`[NativeBridgeTransport] Transport ${this.transportId} destroyed.`);
218
141
  }
219
142
  }
143
+ dispose() {
144
+ this.destroy();
145
+ }
220
146
  }
221
147
  //# sourceMappingURL=native-transport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"native-transport.js","sourceRoot":"","sources":["../../src/transport/native-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native-transport.js","sourceRoot":"","sources":["../../src/transport/native-transport.ts"],"names":[],"mappings":"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"}
@@ -4,17 +4,25 @@ export declare class PostMessageTransport implements ITransport {
4
4
  private appId;
5
5
  private defaultTimeoutMs?;
6
6
  private debug;
7
+ private trustedHostOrigin?;
7
8
  private callbacks;
8
9
  private listeners;
9
10
  private messageListener?;
10
11
  constructor(config?: TransportConfig);
11
12
  getType(): TransportType;
12
13
  isConnected(): boolean;
14
+ getTrustedHostOrigin(): string | undefined;
15
+ setTrustedHostOrigin(origin: string): void;
16
+ isValidHostOrigin(origin: string): boolean;
17
+ private resolveAutoDetectedHostOrigin;
18
+ getTargetOrigin(): string;
19
+ private initHandshake;
13
20
  private initMessageListener;
14
21
  invoke<T = any>(action: string, payload?: Record<string, any>, timeoutMs?: number): Promise<T>;
15
22
  on(event: string, listener: BridgeEventListener): () => void;
16
23
  off(event: string, listener: BridgeEventListener): void;
17
24
  emit(event: string, payload: any): void;
18
25
  destroy(): void;
26
+ dispose(): void;
19
27
  }
20
28
  //# sourceMappingURL=postmessage-transport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"postmessage-transport.d.ts","sourceRoot":"","sources":["../../src/transport/postmessage-transport.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAe,mBAAmB,EAAiC,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAI7H,qBAAa,oBAAqB,YAAW,UAAU;IACrD,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,SAAS,CAAmG;IACpH,OAAO,CAAC,SAAS,CAAoD;IACrE,OAAO,CAAC,eAAe,CAAC,CAAgC;gBAE5C,MAAM,GAAE,eAAoB;IAOjC,OAAO,IAAI,aAAa;IAIxB,WAAW,IAAI,OAAO;IAI7B,OAAO,CAAC,mBAAmB;IAkCpB,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IA4ClG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,MAAM,IAAI;IAQ5D,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAUvD,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI;IAavC,OAAO,IAAI,IAAI;CAKvB"}
1
+ {"version":3,"file":"postmessage-transport.d.ts","sourceRoot":"","sources":["../../src/transport/postmessage-transport.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAe,mBAAmB,EAAiC,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAI7H,qBAAa,oBAAqB,YAAW,UAAU;IACrD,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAClC,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,iBAAiB,CAAC,CAAS;IACnC,OAAO,CAAC,SAAS,CAUH;IACd,OAAO,CAAC,SAAS,CAAoD;IACrE,OAAO,CAAC,eAAe,CAAC,CAAgC;gBAE5C,MAAM,GAAE,eAAoB;IASjC,OAAO,IAAI,aAAa;IAIxB,WAAW,IAAI,OAAO;IAItB,oBAAoB,IAAI,MAAM,GAAG,SAAS;IAI1C,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAO1C,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAsBjD,OAAO,CAAC,6BAA6B;IAkD9B,eAAe,IAAI,MAAM;IA0BhC,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,mBAAmB;IAuGpB,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAyDlG,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,MAAM,IAAI;IAQ5D,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAUvD,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI;IAavC,OAAO,IAAI,IAAI;IAiBf,OAAO,IAAI,IAAI;CAGvB"}
@@ -4,6 +4,7 @@ export class PostMessageTransport {
4
4
  appId;
5
5
  defaultTimeoutMs;
6
6
  debug;
7
+ trustedHostOrigin;
7
8
  callbacks = new Map();
8
9
  listeners = new Map();
9
10
  messageListener;
@@ -11,7 +12,9 @@ export class PostMessageTransport {
11
12
  this.appId = config.appId || 'mini_app_simulator';
12
13
  this.defaultTimeoutMs = config.timeoutMs;
13
14
  this.debug = config.debug ?? false;
15
+ this.trustedHostOrigin = config.trustedHostOrigin || this.resolveAutoDetectedHostOrigin();
14
16
  this.initMessageListener();
17
+ this.initHandshake();
15
18
  }
16
19
  getType() {
17
20
  return 'postmessage';
@@ -19,31 +22,206 @@ export class PostMessageTransport {
19
22
  isConnected() {
20
23
  return typeof window !== 'undefined' && window.parent !== window;
21
24
  }
25
+ getTrustedHostOrigin() {
26
+ return this.trustedHostOrigin;
27
+ }
28
+ setTrustedHostOrigin(origin) {
29
+ if (!this.isValidHostOrigin(origin) && origin !== '*') {
30
+ throw new Error(`[PostMessageTransport] Invalid host origin: "${origin}". Must be a valid HTTP localhost or HTTPS origin.`);
31
+ }
32
+ this.trustedHostOrigin = origin;
33
+ }
34
+ isValidHostOrigin(origin) {
35
+ if (!origin || typeof origin !== 'string')
36
+ return false;
37
+ try {
38
+ const url = new URL(origin);
39
+ if (url.protocol !== 'http:' && url.protocol !== 'https:') {
40
+ return false;
41
+ }
42
+ // In development, localhost and 127.0.0.1 or local domains are allowed
43
+ if (url.hostname === 'localhost' ||
44
+ url.hostname === '127.0.0.1' ||
45
+ url.hostname.endsWith('.localhost')) {
46
+ return true;
47
+ }
48
+ // For remote hosts, HTTPS is required
49
+ return url.protocol === 'https:';
50
+ }
51
+ catch (_) {
52
+ return false;
53
+ }
54
+ }
55
+ resolveAutoDetectedHostOrigin() {
56
+ if (typeof window === 'undefined')
57
+ return undefined;
58
+ const win = window;
59
+ // 1. Explicit global injection by host container
60
+ if (win.__SUPERAPP_TRUSTED_HOST_ORIGIN__) {
61
+ return win.__SUPERAPP_TRUSTED_HOST_ORIGIN__;
62
+ }
63
+ if (win.__SUPERAPP_HOST_ORIGIN__) {
64
+ return win.__SUPERAPP_HOST_ORIGIN__;
65
+ }
66
+ // 2. Query param ?hostOrigin=... or ?trustedHostOrigin=...
67
+ try {
68
+ if (win.location?.search) {
69
+ const params = new URLSearchParams(win.location.search);
70
+ const fromParam = params.get('trustedHostOrigin') || params.get('hostOrigin');
71
+ if (fromParam) {
72
+ const parsed = new URL(fromParam).origin;
73
+ if (this.isValidHostOrigin(parsed)) {
74
+ return parsed;
75
+ }
76
+ }
77
+ }
78
+ }
79
+ catch (_) { }
80
+ // 3. window.location.ancestorOrigins (Chromium & WebKit)
81
+ try {
82
+ if (win.location?.ancestorOrigins && win.location.ancestorOrigins.length > 0) {
83
+ const ancestor = win.location.ancestorOrigins[0];
84
+ if (ancestor && ancestor !== 'null' && this.isValidHostOrigin(ancestor)) {
85
+ return ancestor;
86
+ }
87
+ }
88
+ }
89
+ catch (_) { }
90
+ // 4. document.referrer
91
+ try {
92
+ if (typeof document !== 'undefined' && document.referrer) {
93
+ const referrerOrigin = new URL(document.referrer).origin;
94
+ if (referrerOrigin && referrerOrigin !== 'null' && this.isValidHostOrigin(referrerOrigin)) {
95
+ return referrerOrigin;
96
+ }
97
+ }
98
+ }
99
+ catch (_) { }
100
+ return undefined;
101
+ }
102
+ getTargetOrigin() {
103
+ if (this.trustedHostOrigin && this.trustedHostOrigin !== '*') {
104
+ return this.trustedHostOrigin;
105
+ }
106
+ const detected = this.resolveAutoDetectedHostOrigin();
107
+ if (detected) {
108
+ this.trustedHostOrigin = detected;
109
+ return detected;
110
+ }
111
+ if (typeof window !== 'undefined' && window.location?.origin && window.location.origin !== 'null') {
112
+ try {
113
+ const url = new URL(window.location.origin);
114
+ if (url.hostname === 'localhost' || url.hostname === '127.0.0.1') {
115
+ return window.location.origin;
116
+ }
117
+ }
118
+ catch (_) { }
119
+ }
120
+ if (this.debug) {
121
+ console.warn('[PostMessageTransport] Warning: No trustedHostOrigin configured. Using fallback target origin.');
122
+ }
123
+ return '*';
124
+ }
125
+ initHandshake() {
126
+ if (typeof window === 'undefined' || !window.parent || window.parent === window)
127
+ return;
128
+ try {
129
+ const target = this.trustedHostOrigin || '*';
130
+ window.parent.postMessage({
131
+ type: 'SUPERAPP_BRIDGE_HANDSHAKE',
132
+ appId: this.appId,
133
+ clientOrigin: window.location?.origin,
134
+ timestamp: Date.now(),
135
+ }, target);
136
+ }
137
+ catch (_) { }
138
+ }
22
139
  initMessageListener() {
23
140
  if (typeof window === 'undefined')
24
141
  return;
25
142
  this.messageListener = (event) => {
143
+ // 1. Verify event source is parent window
144
+ if (typeof window !== 'undefined' && window.parent) {
145
+ if (event.source && event.source !== window.parent) {
146
+ if (this.debug) {
147
+ console.warn('[PostMessageTransport] Rejected message: event.source !== window.parent');
148
+ }
149
+ return;
150
+ }
151
+ }
152
+ // 2. Verify event origin against trustedHostOrigin
153
+ if (this.trustedHostOrigin && this.trustedHostOrigin !== '*') {
154
+ if (event.origin && event.origin !== this.trustedHostOrigin) {
155
+ if (this.debug) {
156
+ console.warn(`[PostMessageTransport] Rejected message from untrusted origin: "${event.origin}". Expected: "${this.trustedHostOrigin}"`);
157
+ }
158
+ return;
159
+ }
160
+ }
26
161
  const data = event.data;
27
162
  if (!data || typeof data !== 'object')
28
163
  return;
164
+ // Handle handshake messages
165
+ if (data.type === 'SUPERAPP_SIMULATOR_HANDSHAKE' || data.type === 'SUPERAPP_SIMULATOR_HANDSHAKE_ACK') {
166
+ const hostOrigin = data.hostOrigin || event.origin;
167
+ if (hostOrigin && this.isValidHostOrigin(hostOrigin)) {
168
+ if (!this.trustedHostOrigin) {
169
+ this.trustedHostOrigin = hostOrigin;
170
+ if (this.debug) {
171
+ console.log(`[PostMessageTransport] Handshake established with host origin: ${this.trustedHostOrigin}`);
172
+ }
173
+ }
174
+ }
175
+ return;
176
+ }
29
177
  if (data.type === 'SUPERAPP_BRIDGE_RESPONSE') {
30
178
  const res = data.response;
31
179
  if (!res || !res.id)
32
180
  return;
33
181
  const pending = this.callbacks.get(res.id);
34
- if (pending) {
35
- clearTimeout(pending.timer);
36
- this.callbacks.delete(res.id);
182
+ if (!pending) {
37
183
  if (this.debug) {
38
- console.log(`[PostMessageTransport] Response received:`, res);
39
- }
40
- if (res.success) {
41
- pending.resolve(res.data);
184
+ console.warn(`[PostMessageTransport] Response received for unknown or expired request: ${res.id}`);
42
185
  }
43
- else {
44
- pending.reject(res.error || { code: 'UNKNOWN_ERROR', message: 'Request failed in simulator' });
186
+ return;
187
+ }
188
+ // 3. Verify sessionNonce
189
+ if (pending.sessionNonce) {
190
+ if (!res.sessionNonce || res.sessionNonce !== pending.sessionNonce) {
191
+ const errorMsg = `Session nonce verification failed for request ${res.id}.`;
192
+ console.error(`[PostMessageTransport] Security Violation: ${errorMsg}`);
193
+ clearTimeout(pending.timer);
194
+ this.callbacks.delete(res.id);
195
+ pending.reject({
196
+ code: 'SECURITY_ERROR',
197
+ message: errorMsg,
198
+ });
199
+ return;
45
200
  }
46
201
  }
202
+ // 4. Verify action
203
+ if (res.action && pending.action && res.action !== pending.action) {
204
+ const errorMsg = `Action mismatch for request ${res.id}: expected "${pending.action}", received "${res.action}".`;
205
+ console.error(`[PostMessageTransport] Security Violation: ${errorMsg}`);
206
+ clearTimeout(pending.timer);
207
+ this.callbacks.delete(res.id);
208
+ pending.reject({
209
+ code: 'SECURITY_ERROR',
210
+ message: errorMsg,
211
+ });
212
+ return;
213
+ }
214
+ clearTimeout(pending.timer);
215
+ this.callbacks.delete(res.id);
216
+ if (this.debug) {
217
+ console.log(`[PostMessageTransport] Response received:`, res);
218
+ }
219
+ if (res.success) {
220
+ pending.resolve(res.data);
221
+ }
222
+ else {
223
+ pending.reject(res.error || { code: 'UNKNOWN_ERROR', message: 'Request failed in simulator' });
224
+ }
47
225
  }
48
226
  else if (data.type === 'SUPERAPP_BRIDGE_EVENT') {
49
227
  if (data.event) {
@@ -55,14 +233,16 @@ export class PostMessageTransport {
55
233
  }
56
234
  invoke(action, payload = {}, timeoutMs) {
57
235
  const id = `req_${Date.now()}_${requestSequence++}`;
236
+ const sessionNonce = `nonce_${Date.now()}_${Math.random().toString(36).substring(2, 11)}_${requestSequence}`;
58
237
  const timeout = bridgeTimeoutMs(action, timeoutMs ?? this.defaultTimeoutMs);
59
238
  const request = {
60
239
  id,
61
240
  action,
62
241
  payload,
63
242
  appId: this.appId,
64
- origin: typeof window !== 'undefined' ? window.location.origin : 'miniapp://simulator',
243
+ origin: typeof window !== 'undefined' ? window.location?.origin : 'miniapp://simulator',
65
244
  timestamp: Date.now(),
245
+ sessionNonce,
66
246
  };
67
247
  return new Promise((resolve, reject) => {
68
248
  const timer = setTimeout(() => {
@@ -73,15 +253,23 @@ export class PostMessageTransport {
73
253
  };
74
254
  reject(timeoutError);
75
255
  }, timeout);
76
- this.callbacks.set(id, { resolve, reject, timer });
256
+ this.callbacks.set(id, {
257
+ resolve,
258
+ reject,
259
+ timer,
260
+ action,
261
+ sessionNonce,
262
+ createdAt: Date.now(),
263
+ });
77
264
  if (typeof window !== 'undefined' && window.parent) {
78
265
  if (this.debug) {
79
266
  console.log(`[PostMessageTransport] PostMessage out to parent:`, request);
80
267
  }
268
+ const targetOrigin = this.getTargetOrigin();
81
269
  window.parent.postMessage({
82
270
  type: 'SUPERAPP_BRIDGE_REQUEST',
83
271
  request,
84
- }, '*');
272
+ }, targetOrigin);
85
273
  }
86
274
  else {
87
275
  clearTimeout(timer);
@@ -123,9 +311,22 @@ export class PostMessageTransport {
123
311
  }
124
312
  }
125
313
  destroy() {
314
+ for (const [id, pending] of this.callbacks.entries()) {
315
+ clearTimeout(pending.timer);
316
+ pending.reject({
317
+ code: 'ABORTED',
318
+ message: 'PostMessageTransport was destroyed',
319
+ });
320
+ }
321
+ this.callbacks.clear();
322
+ this.listeners.clear();
126
323
  if (typeof window !== 'undefined' && this.messageListener) {
127
324
  window.removeEventListener('message', this.messageListener);
325
+ this.messageListener = undefined;
128
326
  }
129
327
  }
328
+ dispose() {
329
+ this.destroy();
330
+ }
130
331
  }
131
332
  //# sourceMappingURL=postmessage-transport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"postmessage-transport.js","sourceRoot":"","sources":["../../src/transport/postmessage-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"postmessage-transport.js","sourceRoot":"","sources":["../../src/transport/postmessage-transport.ts"],"names":[],"mappings":"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"}