@dynamic-labs-wallet/browser-wallet-client 1.0.30 → 1.0.32

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/index.cjs CHANGED
@@ -272,6 +272,19 @@ const setupMessageTransportBridge = (messageTransport$1, iframe, iframeOrigin)=>
272
272
  };
273
273
  };
274
274
 
275
+ const NON_RETRYABLE_IFRAME_LOAD_ERROR_NAME = 'NonRetryableIframeLoadError';
276
+ /**
277
+ * Tags an iframe load failure that retrying cannot fix (e.g. the embedding
278
+ * page's CSP refusing to load our iframe) so IframeManager rejects the load
279
+ * immediately instead of waiting out the timeout and burning retries.
280
+ */ const createNonRetryableIframeLoadError = (message)=>{
281
+ const error = new Error(message);
282
+ error.name = NON_RETRYABLE_IFRAME_LOAD_ERROR_NAME;
283
+ return error;
284
+ };
285
+ // Name-based check (not instanceof) so the tag survives bundler module duplication.
286
+ const isNonRetryableIframeLoadError = (error)=>error instanceof Error && error.name === NON_RETRYABLE_IFRAME_LOAD_ERROR_NAME;
287
+
275
288
  const createIframeWaasSDKContainer = ()=>{
276
289
  let iframe = null;
277
290
  const messageHandlers = new Set();
@@ -308,19 +321,51 @@ const createIframeWaasSDKContainer = ()=>{
308
321
  }
309
322
  };
310
323
  const cspViolationListener = (event)=>{
311
- var _event_blockedURI, _event_violatedDirective, _event_violatedDirective1;
312
324
  const iframeOrigin = (iframe == null ? void 0 : iframe.src) ? new URL(iframe.src).origin : undefined;
313
- const affectsIframe = iframeOrigin && ((_event_blockedURI = event.blockedURI) == null ? void 0 : _event_blockedURI.includes(iframeOrigin)) || ((_event_violatedDirective = event.violatedDirective) == null ? void 0 : _event_violatedDirective.includes('frame-src')) || ((_event_violatedDirective1 = event.violatedDirective) == null ? void 0 : _event_violatedDirective1.includes('child-src'));
314
- if (!affectsIframe) return;
315
- logger.error('CSP violation detected that may affect iframe loading:', {
325
+ let blockedOrigin;
326
+ try {
327
+ blockedOrigin = event.blockedURI ? new URL(event.blockedURI).origin : undefined;
328
+ } catch (e) {
329
+ // blockedURI can be a non-URL keyword ("inline", "eval", "data", ...)
330
+ blockedOrigin = undefined;
331
+ }
332
+ // Violations for other origins (third-party widgets, analytics) are noise
333
+ // we never act on and dominated this log's volume — only OUR iframe
334
+ // origin is relevant.
335
+ if (!iframeOrigin || blockedOrigin !== iframeOrigin) return;
336
+ const context = {
316
337
  blockedURI: event.blockedURI,
317
338
  violatedDirective: event.violatedDirective,
339
+ disposition: event.disposition,
318
340
  originalPolicy: event.originalPolicy,
319
341
  sourceFile: event.sourceFile,
320
342
  lineNumber: event.lineNumber,
321
343
  columnNumber: event.columnNumber,
322
344
  iframeOrigin
323
- });
345
+ };
346
+ // Report-only policies (Content-Security-Policy-Report-Only) fire the
347
+ // same violation event but do NOT block anything — keep them visible and
348
+ // filterable without polluting error streams or aborting the load.
349
+ if (event.disposition === 'report') {
350
+ logger.info('Report-only CSP violation for the wallet iframe origin:', context);
351
+ return;
352
+ }
353
+ logger.error('CSP violation detected that may affect iframe loading:', context);
354
+ var _event_violatedDirective;
355
+ const directive = (_event_violatedDirective = event.violatedDirective) != null ? _event_violatedDirective : '';
356
+ const remediation = `the embedding page's Content-Security-Policy must allow ${iframeOrigin} ` + 'in both the frame-src (or child-src) and connect-src directives';
357
+ if (directive.includes('frame-src') || directive.includes('child-src')) {
358
+ // Hard block: the browser refuses to load the iframe at all, so the
359
+ // pending load can only end in a timeout. Fail it now with a
360
+ // non-retryable error — retrying cannot succeed until the CSP changes.
361
+ const message = `Dynamic wallet iframe blocked by CSP (${directive}): ${remediation}`;
362
+ logger.error(message);
363
+ fireError(createNonRetryableIframeLoadError(message));
364
+ } else if (directive.includes('connect-src')) {
365
+ // The iframe itself can still load, but requests to the wallet backend
366
+ // are blocked so wallet operations will fail. Warn — do not abort.
367
+ logger.warn(`Dynamic wallet requests blocked by CSP (connect-src): ${remediation}`);
368
+ }
324
369
  };
325
370
  return {
326
371
  async setUrl (url) {
@@ -870,6 +915,16 @@ class IframeManager {
870
915
  unsubscribeHandshake();
871
916
  unsubscribeError();
872
917
  waasSDKContainer.destroy();
918
+ // A non-retryable failure (e.g. the embedding page's CSP blocking
919
+ // the iframe) can only repeat — reject now instead of retrying or
920
+ // waiting out the remaining timeout.
921
+ if (isNonRetryableIframeLoadError(error)) {
922
+ this.logger.error('Iframe failed to load with a non-retryable error: ', error);
923
+ this.resetSharedWaasSDKContainer();
924
+ IframeManager.iframeLoadAttempts = 0;
925
+ reject(error);
926
+ return;
927
+ }
873
928
  // Check if we should retry
874
929
  if (IframeManager.iframeLoadAttempts <= IframeManager.maxRetryAttempts) {
875
930
  const errorMsg = error instanceof Error ? error.message : String(error);
package/index.esm.js CHANGED
@@ -271,6 +271,19 @@ const setupMessageTransportBridge = (messageTransport, iframe, iframeOrigin)=>{
271
271
  };
272
272
  };
273
273
 
274
+ const NON_RETRYABLE_IFRAME_LOAD_ERROR_NAME = 'NonRetryableIframeLoadError';
275
+ /**
276
+ * Tags an iframe load failure that retrying cannot fix (e.g. the embedding
277
+ * page's CSP refusing to load our iframe) so IframeManager rejects the load
278
+ * immediately instead of waiting out the timeout and burning retries.
279
+ */ const createNonRetryableIframeLoadError = (message)=>{
280
+ const error = new Error(message);
281
+ error.name = NON_RETRYABLE_IFRAME_LOAD_ERROR_NAME;
282
+ return error;
283
+ };
284
+ // Name-based check (not instanceof) so the tag survives bundler module duplication.
285
+ const isNonRetryableIframeLoadError = (error)=>error instanceof Error && error.name === NON_RETRYABLE_IFRAME_LOAD_ERROR_NAME;
286
+
274
287
  const createIframeWaasSDKContainer = ()=>{
275
288
  let iframe = null;
276
289
  const messageHandlers = new Set();
@@ -307,19 +320,51 @@ const createIframeWaasSDKContainer = ()=>{
307
320
  }
308
321
  };
309
322
  const cspViolationListener = (event)=>{
310
- var _event_blockedURI, _event_violatedDirective, _event_violatedDirective1;
311
323
  const iframeOrigin = (iframe == null ? void 0 : iframe.src) ? new URL(iframe.src).origin : undefined;
312
- const affectsIframe = iframeOrigin && ((_event_blockedURI = event.blockedURI) == null ? void 0 : _event_blockedURI.includes(iframeOrigin)) || ((_event_violatedDirective = event.violatedDirective) == null ? void 0 : _event_violatedDirective.includes('frame-src')) || ((_event_violatedDirective1 = event.violatedDirective) == null ? void 0 : _event_violatedDirective1.includes('child-src'));
313
- if (!affectsIframe) return;
314
- logger.error('CSP violation detected that may affect iframe loading:', {
324
+ let blockedOrigin;
325
+ try {
326
+ blockedOrigin = event.blockedURI ? new URL(event.blockedURI).origin : undefined;
327
+ } catch (e) {
328
+ // blockedURI can be a non-URL keyword ("inline", "eval", "data", ...)
329
+ blockedOrigin = undefined;
330
+ }
331
+ // Violations for other origins (third-party widgets, analytics) are noise
332
+ // we never act on and dominated this log's volume — only OUR iframe
333
+ // origin is relevant.
334
+ if (!iframeOrigin || blockedOrigin !== iframeOrigin) return;
335
+ const context = {
315
336
  blockedURI: event.blockedURI,
316
337
  violatedDirective: event.violatedDirective,
338
+ disposition: event.disposition,
317
339
  originalPolicy: event.originalPolicy,
318
340
  sourceFile: event.sourceFile,
319
341
  lineNumber: event.lineNumber,
320
342
  columnNumber: event.columnNumber,
321
343
  iframeOrigin
322
- });
344
+ };
345
+ // Report-only policies (Content-Security-Policy-Report-Only) fire the
346
+ // same violation event but do NOT block anything — keep them visible and
347
+ // filterable without polluting error streams or aborting the load.
348
+ if (event.disposition === 'report') {
349
+ logger.info('Report-only CSP violation for the wallet iframe origin:', context);
350
+ return;
351
+ }
352
+ logger.error('CSP violation detected that may affect iframe loading:', context);
353
+ var _event_violatedDirective;
354
+ const directive = (_event_violatedDirective = event.violatedDirective) != null ? _event_violatedDirective : '';
355
+ const remediation = `the embedding page's Content-Security-Policy must allow ${iframeOrigin} ` + 'in both the frame-src (or child-src) and connect-src directives';
356
+ if (directive.includes('frame-src') || directive.includes('child-src')) {
357
+ // Hard block: the browser refuses to load the iframe at all, so the
358
+ // pending load can only end in a timeout. Fail it now with a
359
+ // non-retryable error — retrying cannot succeed until the CSP changes.
360
+ const message = `Dynamic wallet iframe blocked by CSP (${directive}): ${remediation}`;
361
+ logger.error(message);
362
+ fireError(createNonRetryableIframeLoadError(message));
363
+ } else if (directive.includes('connect-src')) {
364
+ // The iframe itself can still load, but requests to the wallet backend
365
+ // are blocked so wallet operations will fail. Warn — do not abort.
366
+ logger.warn(`Dynamic wallet requests blocked by CSP (connect-src): ${remediation}`);
367
+ }
323
368
  };
324
369
  return {
325
370
  async setUrl (url) {
@@ -869,6 +914,16 @@ class IframeManager {
869
914
  unsubscribeHandshake();
870
915
  unsubscribeError();
871
916
  waasSDKContainer.destroy();
917
+ // A non-retryable failure (e.g. the embedding page's CSP blocking
918
+ // the iframe) can only repeat — reject now instead of retrying or
919
+ // waiting out the remaining timeout.
920
+ if (isNonRetryableIframeLoadError(error)) {
921
+ this.logger.error('Iframe failed to load with a non-retryable error: ', error);
922
+ this.resetSharedWaasSDKContainer();
923
+ IframeManager.iframeLoadAttempts = 0;
924
+ reject(error);
925
+ return;
926
+ }
872
927
  // Check if we should retry
873
928
  if (IframeManager.iframeLoadAttempts <= IframeManager.maxRetryAttempts) {
874
929
  const errorMsg = error instanceof Error ? error.message : String(error);
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@dynamic-labs-wallet/browser-wallet-client",
3
- "version": "1.0.30",
3
+ "version": "1.0.32",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
7
- "@dynamic-labs-wallet/core": "1.0.30",
7
+ "@dynamic-labs-wallet/core": "1.0.32",
8
8
  "@dynamic-labs/logger": "^4.45.2",
9
9
  "@dynamic-labs/message-transport": "^4.45.2"
10
10
  },
@@ -1 +1 @@
1
- {"version":3,"file":"IframeManager.d.ts","sourceRoot":"","sources":["../../../src/client/iframeManager/IframeManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IframeManager.d.ts","sourceRoot":"","sources":["../../../src/client/iframeManager/IframeManager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"createIframeWaasSDKContainer.d.ts","sourceRoot":"","sources":["../../src/services/createIframeWaasSDKContainer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGlE,eAAO,MAAM,4BAA4B,QAAO,gBAuJ/C,CAAC"}
1
+ {"version":3,"file":"createIframeWaasSDKContainer.d.ts","sourceRoot":"","sources":["../../src/services/createIframeWaasSDKContainer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAIlE,eAAO,MAAM,4BAA4B,QAAO,gBA4L/C,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Tags an iframe load failure that retrying cannot fix (e.g. the embedding
3
+ * page's CSP refusing to load our iframe) so IframeManager rejects the load
4
+ * immediately instead of waiting out the timeout and burning retries.
5
+ */
6
+ export declare const createNonRetryableIframeLoadError: (message: string) => Error;
7
+ export declare const isNonRetryableIframeLoadError: (error: unknown) => error is Error;
8
+ //# sourceMappingURL=nonRetryableIframeLoadError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nonRetryableIframeLoadError.d.ts","sourceRoot":"","sources":["../../src/services/nonRetryableIframeLoadError.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,YAAa,MAAM,KAAG,KAInE,CAAC;AAGF,eAAO,MAAM,6BAA6B,UAAW,OAAO,KAAG,KAAK,IAAI,KACO,CAAC"}