@nockchain/sdk 0.1.4-nightly.5 → 0.1.4-nightly.6
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/dist/provider.d.ts +27 -2
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +102 -11
- package/dist/provider.js.map +1 -1
- package/dist/types.d.ts +39 -11
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/provider.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* NockchainProvider - Main SDK class for interacting with Rose wallet
|
|
3
|
+
* Supports EIP-6963 Multi Injected Provider Discovery
|
|
3
4
|
*/
|
|
4
|
-
import type { Transaction, NockchainEvent, EventListener } from './types.js';
|
|
5
|
+
import type { Transaction, NockchainEvent, EventListener, EIP6963ProviderDetail } from './types.js';
|
|
5
6
|
import { TransactionBuilder } from './transaction.js';
|
|
6
7
|
/**
|
|
7
8
|
* NockchainProvider class - Main interface for dApps to interact with Rose wallet
|
|
@@ -184,10 +185,34 @@ export declare class NockchainProvider {
|
|
|
184
185
|
* @param data - The data to pass to listeners
|
|
185
186
|
*/
|
|
186
187
|
private emit;
|
|
188
|
+
/**
|
|
189
|
+
* Discover Rose provider using EIP-6963 (preferred method)
|
|
190
|
+
* @returns The Rose provider if found, null otherwise
|
|
191
|
+
* @private
|
|
192
|
+
*/
|
|
193
|
+
private static discoverEIP6963Provider;
|
|
194
|
+
/**
|
|
195
|
+
* Discover all available Nockchain providers using EIP-6963
|
|
196
|
+
* @returns Array of provider details
|
|
197
|
+
*/
|
|
198
|
+
static discoverProviders(): EIP6963ProviderDetail[];
|
|
187
199
|
/**
|
|
188
200
|
* Check if the Rose extension is installed and authentic
|
|
189
|
-
*
|
|
201
|
+
* Uses EIP-6963 discovery (synchronous check)
|
|
202
|
+
*
|
|
203
|
+
* Note: This performs synchronous discovery which only works if the provider
|
|
204
|
+
* has already announced itself. For async discovery, use waitForInstallation().
|
|
205
|
+
*
|
|
206
|
+
* @returns true if the extension is installed and has announced itself
|
|
190
207
|
*/
|
|
191
208
|
static isInstalled(): boolean;
|
|
209
|
+
/**
|
|
210
|
+
* Wait for the Rose extension to be available
|
|
211
|
+
* Useful if the extension might load after your script
|
|
212
|
+
* Uses EIP-6963 discovery
|
|
213
|
+
* @param timeout - Maximum time to wait in milliseconds (default: 3000)
|
|
214
|
+
* @returns Promise that resolves to true if found, false if timeout
|
|
215
|
+
*/
|
|
216
|
+
static waitForInstallation(timeout?: number): Promise<boolean>;
|
|
192
217
|
}
|
|
193
218
|
//# sourceMappingURL=provider.d.ts.map
|
package/dist/provider.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,aAAa,EAEb,qBAAqB,EAEtB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAItD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,cAAc,CAA0C;IAChE,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,eAAe,CAAC,CAAgC;IAExD;;;OAGG;;IAoBH;;;;;;OAMG;IACG,OAAO,IAAI,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAU/D;;;OAGG;IACH,IAAI,QAAQ,IAAI,MAAM,EAAE,CAEvB;IAED;;;OAGG;IACH,IAAI,OAAO,IAAI,MAAM,GAAG,IAAI,CAE3B;IAED;;;OAGG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;;;;;;OAOG;IACG,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAWhE;;;;;;;OAOG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAWxF;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACG,SAAS,CAAC,MAAM,EAAE;QACtB,KAAK,EAAE,GAAG,CAAC;QACX,KAAK,EAAE,GAAG,EAAE,CAAC;QACb,eAAe,EAAE,GAAG,EAAE,CAAC;KACxB,GAAG,OAAO,CAAC,UAAU,CAAC;IA4BvB;;;;;;;;;;;;OAYG;IACH,WAAW,IAAI,kBAAkB;IAIjC;;;;;;;;;;;OAWG;IACH,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI;IAOxE;;;;OAIG;IACH,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI;IAOzE;;;OAGG;IACH,kBAAkB,CAAC,KAAK,CAAC,EAAE,cAAc,GAAG,IAAI;IAQhD;;;;;;OAMG;IACU,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAsB3F;;;OAGG;IACH,OAAO,CAAC,cAAc;IAgBtB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAqC3B;;;OAGG;IACI,OAAO,IAAI,IAAI;IAQtB;;;;OAIG;IACH,OAAO,CAAC,IAAI;IAaZ;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IA4BtC;;;OAGG;IACH,MAAM,CAAC,iBAAiB,IAAI,qBAAqB,EAAE;IAqBnD;;;;;;;;OAQG;IACH,MAAM,CAAC,WAAW,IAAI,OAAO;IAS7B;;;;;;OAMG;WACU,mBAAmB,CAAC,OAAO,SAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CAuCnE"}
|
package/dist/provider.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* NockchainProvider - Main SDK class for interacting with Rose wallet
|
|
3
|
+
* Supports EIP-6963 Multi Injected Provider Discovery
|
|
3
4
|
*/
|
|
4
5
|
import { TransactionBuilder } from './transaction.js';
|
|
5
6
|
import { WalletNotInstalledError, UserRejectedError, RpcError, NoAccountError } from './errors.js';
|
|
@@ -34,16 +35,12 @@ export class NockchainProvider {
|
|
|
34
35
|
if (typeof window === 'undefined') {
|
|
35
36
|
throw new Error('NockchainProvider can only be used in a browser environment');
|
|
36
37
|
}
|
|
37
|
-
//
|
|
38
|
-
|
|
38
|
+
// Discover Rose provider using EIP-6963
|
|
39
|
+
const eip6963Provider = NockchainProvider.discoverEIP6963Provider();
|
|
40
|
+
if (!eip6963Provider) {
|
|
39
41
|
throw new WalletNotInstalledError();
|
|
40
42
|
}
|
|
41
|
-
|
|
42
|
-
// TODO: remove this duplicate check
|
|
43
|
-
if (!injected) {
|
|
44
|
-
throw new WalletNotInstalledError();
|
|
45
|
-
}
|
|
46
|
-
this.injected = injected;
|
|
43
|
+
this.injected = eip6963Provider;
|
|
47
44
|
this.eventListeners = new Map();
|
|
48
45
|
// Initialize event listeners for wallet events
|
|
49
46
|
this.setupEventListeners();
|
|
@@ -338,15 +335,109 @@ export class NockchainProvider {
|
|
|
338
335
|
});
|
|
339
336
|
}
|
|
340
337
|
}
|
|
338
|
+
/**
|
|
339
|
+
* Discover Rose provider using EIP-6963 (preferred method)
|
|
340
|
+
* @returns The Rose provider if found, null otherwise
|
|
341
|
+
* @private
|
|
342
|
+
*/
|
|
343
|
+
static discoverEIP6963Provider() {
|
|
344
|
+
if (typeof window === 'undefined') {
|
|
345
|
+
return null;
|
|
346
|
+
}
|
|
347
|
+
let roseProvider = null;
|
|
348
|
+
// Synchronous event listener - must be added before dispatching
|
|
349
|
+
const handler = (event) => {
|
|
350
|
+
const announceEvent = event;
|
|
351
|
+
if (announceEvent.detail?.info?.rdns === 'net.nockchain.rose') {
|
|
352
|
+
roseProvider = announceEvent.detail.provider;
|
|
353
|
+
}
|
|
354
|
+
};
|
|
355
|
+
// Add listener synchronously
|
|
356
|
+
window.addEventListener('eip6963:announceProvider', handler);
|
|
357
|
+
// Request providers to announce themselves
|
|
358
|
+
// Providers that are already loaded will respond synchronously
|
|
359
|
+
window.dispatchEvent(new Event('eip6963:requestProvider'));
|
|
360
|
+
// Clean up listener immediately (synchronous announcements already happened)
|
|
361
|
+
window.removeEventListener('eip6963:announceProvider', handler);
|
|
362
|
+
return roseProvider;
|
|
363
|
+
}
|
|
364
|
+
/**
|
|
365
|
+
* Discover all available Nockchain providers using EIP-6963
|
|
366
|
+
* @returns Array of provider details
|
|
367
|
+
*/
|
|
368
|
+
static discoverProviders() {
|
|
369
|
+
if (typeof window === 'undefined') {
|
|
370
|
+
return [];
|
|
371
|
+
}
|
|
372
|
+
const providers = [];
|
|
373
|
+
const handler = (event) => {
|
|
374
|
+
const announceEvent = event;
|
|
375
|
+
if (announceEvent.detail) {
|
|
376
|
+
providers.push(announceEvent.detail);
|
|
377
|
+
}
|
|
378
|
+
};
|
|
379
|
+
window.addEventListener('eip6963:announceProvider', handler);
|
|
380
|
+
window.dispatchEvent(new Event('eip6963:requestProvider'));
|
|
381
|
+
window.removeEventListener('eip6963:announceProvider', handler);
|
|
382
|
+
return providers;
|
|
383
|
+
}
|
|
341
384
|
/**
|
|
342
385
|
* Check if the Rose extension is installed and authentic
|
|
343
|
-
*
|
|
386
|
+
* Uses EIP-6963 discovery (synchronous check)
|
|
387
|
+
*
|
|
388
|
+
* Note: This performs synchronous discovery which only works if the provider
|
|
389
|
+
* has already announced itself. For async discovery, use waitForInstallation().
|
|
390
|
+
*
|
|
391
|
+
* @returns true if the extension is installed and has announced itself
|
|
344
392
|
*/
|
|
345
393
|
static isInstalled() {
|
|
346
|
-
if (typeof window === 'undefined'
|
|
394
|
+
if (typeof window === 'undefined') {
|
|
347
395
|
return false;
|
|
348
396
|
}
|
|
349
|
-
|
|
397
|
+
const eip6963Provider = NockchainProvider.discoverEIP6963Provider();
|
|
398
|
+
return eip6963Provider !== null;
|
|
399
|
+
}
|
|
400
|
+
/**
|
|
401
|
+
* Wait for the Rose extension to be available
|
|
402
|
+
* Useful if the extension might load after your script
|
|
403
|
+
* Uses EIP-6963 discovery
|
|
404
|
+
* @param timeout - Maximum time to wait in milliseconds (default: 3000)
|
|
405
|
+
* @returns Promise that resolves to true if found, false if timeout
|
|
406
|
+
*/
|
|
407
|
+
static async waitForInstallation(timeout = 3000) {
|
|
408
|
+
if (NockchainProvider.isInstalled()) {
|
|
409
|
+
return true;
|
|
410
|
+
}
|
|
411
|
+
return new Promise(resolve => {
|
|
412
|
+
const startTime = Date.now();
|
|
413
|
+
let resolved = false;
|
|
414
|
+
const checkAndResolve = (found) => {
|
|
415
|
+
if (!resolved) {
|
|
416
|
+
resolved = true;
|
|
417
|
+
clearInterval(checkInterval);
|
|
418
|
+
window.removeEventListener('eip6963:announceProvider', eip6963Handler);
|
|
419
|
+
resolve(found);
|
|
420
|
+
}
|
|
421
|
+
};
|
|
422
|
+
const checkInterval = setInterval(() => {
|
|
423
|
+
if (NockchainProvider.isInstalled()) {
|
|
424
|
+
checkAndResolve(true);
|
|
425
|
+
}
|
|
426
|
+
else if (Date.now() - startTime > timeout) {
|
|
427
|
+
checkAndResolve(false);
|
|
428
|
+
}
|
|
429
|
+
}, 100);
|
|
430
|
+
// Listen for EIP-6963 announcements
|
|
431
|
+
const eip6963Handler = (event) => {
|
|
432
|
+
const announceEvent = event;
|
|
433
|
+
if (announceEvent.detail?.info?.rdns === 'net.nockchain.rose') {
|
|
434
|
+
checkAndResolve(true);
|
|
435
|
+
}
|
|
436
|
+
};
|
|
437
|
+
window.addEventListener('eip6963:announceProvider', eip6963Handler);
|
|
438
|
+
// Request providers to announce themselves
|
|
439
|
+
window.dispatchEvent(new Event('eip6963:requestProvider'));
|
|
440
|
+
});
|
|
350
441
|
}
|
|
351
442
|
}
|
|
352
443
|
//# sourceMappingURL=provider.js.map
|
package/dist/provider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -45,7 +45,7 @@ export type NockchainEvent = 'accountsChanged' | 'chainChanged' | 'connect' | 'd
|
|
|
45
45
|
*/
|
|
46
46
|
export type EventListener<T = unknown> = (data: T) => void;
|
|
47
47
|
/**
|
|
48
|
-
* Interface for the injected window.nockchain object
|
|
48
|
+
* Interface for the injected window.nockchain object (EIP-1193 compatible)
|
|
49
49
|
*/
|
|
50
50
|
export interface InjectedNockchain {
|
|
51
51
|
/**
|
|
@@ -55,20 +55,48 @@ export interface InjectedNockchain {
|
|
|
55
55
|
*/
|
|
56
56
|
request<T = unknown>(request: RpcRequest): Promise<T>;
|
|
57
57
|
/**
|
|
58
|
-
* Provider
|
|
58
|
+
* Provider name (e.g., 'rose', 'iris')
|
|
59
59
|
*/
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
60
|
+
name?: string;
|
|
61
|
+
/**
|
|
62
|
+
* Provider version
|
|
63
|
+
*/
|
|
64
|
+
version?: string;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* EIP-6963 Provider Info
|
|
68
|
+
* Metadata about the wallet provider
|
|
69
|
+
*/
|
|
70
|
+
export interface EIP6963ProviderInfo {
|
|
71
|
+
/** Globally unique identifier (UUIDv4) */
|
|
72
|
+
uuid: string;
|
|
73
|
+
/** Human-readable name of the wallet */
|
|
74
|
+
name: string;
|
|
75
|
+
/** Data URI for the wallet icon (96x96px minimum) */
|
|
76
|
+
icon: string;
|
|
77
|
+
/** Reverse DNS identifier (e.g., 'net.nockchain.rose') */
|
|
78
|
+
rdns: string;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* EIP-6963 Provider Detail
|
|
82
|
+
* Combined provider info and EIP-1193 provider
|
|
83
|
+
*/
|
|
84
|
+
export interface EIP6963ProviderDetail {
|
|
85
|
+
info: EIP6963ProviderInfo;
|
|
86
|
+
provider: InjectedNockchain;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* EIP-6963 Announce Provider Event
|
|
90
|
+
*/
|
|
91
|
+
export interface EIP6963AnnounceProviderEvent extends CustomEvent {
|
|
92
|
+
type: 'eip6963:announceProvider';
|
|
93
|
+
detail: EIP6963ProviderDetail;
|
|
64
94
|
}
|
|
65
95
|
/**
|
|
66
|
-
*
|
|
96
|
+
* EIP-6963 Request Provider Event
|
|
67
97
|
*/
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
nockchain?: InjectedNockchain;
|
|
71
|
-
}
|
|
98
|
+
export interface EIP6963RequestProviderEvent extends Event {
|
|
99
|
+
type: 'eip6963:requestProvider';
|
|
72
100
|
}
|
|
73
101
|
/**
|
|
74
102
|
* Chain information
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,+DAA+D;IAC/D,EAAE,EAAE,MAAM,CAAC;IACX,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,yEAAyE;IACzE,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC;IACnB,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,iCAAiC;IACjC,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,2CAA2C;IAC3C,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG,cAAc,GAAG,SAAS,GAAG,YAAY,CAAC;AAE3F;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAEtD;;OAEG;IACH,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,+DAA+D;IAC/D,EAAE,EAAE,MAAM,CAAC;IACX,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,yEAAyE;IACzE,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC;IACnB,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,iCAAiC;IACjC,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,2CAA2C;IAC3C,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG,cAAc,GAAG,SAAS,GAAG,YAAY,CAAC;AAE3F;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAEtD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,QAAQ,EAAE,iBAAiB,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,4BAA6B,SAAQ,WAAW;IAC/D,IAAI,EAAE,0BAA0B,CAAC;IACjC,MAAM,EAAE,qBAAqB,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,2BAA4B,SAAQ,KAAK;IACxD,IAAI,EAAE,yBAAyB,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
|