@thewhateverapp/tile-sdk 0.3.9 → 0.4.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.
|
@@ -104,6 +104,9 @@ export declare class TileBridge {
|
|
|
104
104
|
isReady(): boolean;
|
|
105
105
|
/**
|
|
106
106
|
* Wait for ready state
|
|
107
|
+
*
|
|
108
|
+
* Note: Config handshake has been removed. Tiles are ready immediately.
|
|
109
|
+
* We keep this method for backwards compatibility but it resolves instantly.
|
|
107
110
|
*/
|
|
108
111
|
waitForReady(): Promise<TileConfig>;
|
|
109
112
|
private emitEvent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TileBridge.d.ts","sourceRoot":"","sources":["../../src/bridge/TileBridge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,gBAAgB,CAAmD;IAC3E,OAAO,CAAC,aAAa,CAAoD;IACzE,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,YAAY,CAAS;gBAEjB,cAAc,GAAE,MAAkC;IA4B9D,OAAO,CAAC,UAAU;
|
|
1
|
+
{"version":3,"file":"TileBridge.d.ts","sourceRoot":"","sources":["../../src/bridge/TileBridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,8 +48,6 @@ export class TileBridge {
|
|
|
48
48
|
window.addEventListener('message', this.handleMessage.bind(this));
|
|
49
49
|
// Send ready signal to parent
|
|
50
50
|
this.sendToParent({ type: 'tile:ready' });
|
|
51
|
-
// Request configuration from parent
|
|
52
|
-
this.sendToParent({ type: 'tile:request-config' });
|
|
53
51
|
}
|
|
54
52
|
handleMessage(event) {
|
|
55
53
|
// Validate origin (skip validation in dev and preview)
|
|
@@ -448,49 +446,27 @@ export class TileBridge {
|
|
|
448
446
|
}
|
|
449
447
|
/**
|
|
450
448
|
* Wait for ready state
|
|
449
|
+
*
|
|
450
|
+
* Note: Config handshake has been removed. Tiles are ready immediately.
|
|
451
|
+
* We keep this method for backwards compatibility but it resolves instantly.
|
|
451
452
|
*/
|
|
452
453
|
async waitForReady() {
|
|
453
454
|
if (this.ready && this.config) {
|
|
454
455
|
return this.config;
|
|
455
456
|
}
|
|
456
|
-
//
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
return defaultConfig;
|
|
470
|
-
}
|
|
471
|
-
return new Promise((resolve) => {
|
|
472
|
-
const unsubscribe = this.on('config:ready', (config) => {
|
|
473
|
-
unsubscribe();
|
|
474
|
-
resolve(config);
|
|
475
|
-
});
|
|
476
|
-
// Timeout fallback: if no config received after 2 seconds, assume standalone
|
|
477
|
-
setTimeout(() => {
|
|
478
|
-
if (!this.ready) {
|
|
479
|
-
console.warn('[TileBridge] No config received after 2s - assuming standalone mode');
|
|
480
|
-
const fallbackConfig = {
|
|
481
|
-
appId: 'standalone-timeout',
|
|
482
|
-
position: { row: 0, col: 0 },
|
|
483
|
-
tileUrl: typeof window !== 'undefined' ? window.location.href : '',
|
|
484
|
-
theme: 'light',
|
|
485
|
-
debug: true,
|
|
486
|
-
};
|
|
487
|
-
this.config = fallbackConfig;
|
|
488
|
-
this.ready = true;
|
|
489
|
-
unsubscribe();
|
|
490
|
-
resolve(fallbackConfig);
|
|
491
|
-
}
|
|
492
|
-
}, 2000);
|
|
493
|
-
});
|
|
457
|
+
// Create default config immediately - no handshake needed
|
|
458
|
+
const defaultConfig = {
|
|
459
|
+
appId: this.isInIframe() ? 'iframe-mode' : 'standalone',
|
|
460
|
+
position: { row: 0, col: 0 },
|
|
461
|
+
tileUrl: typeof window !== 'undefined' ? window.location.href : '',
|
|
462
|
+
theme: 'light',
|
|
463
|
+
debug: this.isDevelopment() || this.isPreview(),
|
|
464
|
+
};
|
|
465
|
+
console.log('[TileBridge] Ready - no config handshake required');
|
|
466
|
+
this.config = defaultConfig;
|
|
467
|
+
this.ready = true;
|
|
468
|
+
this.emitEvent('config:ready', defaultConfig);
|
|
469
|
+
return defaultConfig;
|
|
494
470
|
}
|
|
495
471
|
// Private helpers
|
|
496
472
|
emitEvent(event, data) {
|