@pageloop/client 0.5.0 → 0.6.1
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/.tsbuildinfo +1 -1
- package/dist/.tsbuildinfo.preact +1 -1
- package/dist/.tsbuildinfo.react +1 -1
- package/dist/.tsbuildinfo.solid +1 -1
- package/dist/CommentEngine.d.ts +3 -0
- package/dist/CommentEngine.d.ts.map +1 -1
- package/dist/CommentEngine.js.map +1 -1
- package/dist/EventBus.d.ts +8 -1
- package/dist/EventBus.d.ts.map +1 -1
- package/dist/EventBus.js.map +1 -1
- package/dist/PageLoop.d.ts +13 -0
- package/dist/PageLoop.d.ts.map +1 -1
- package/dist/PageLoop.js +55 -82
- package/dist/PageLoop.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/paintCache.d.ts +57 -0
- package/dist/paintCache.d.ts.map +1 -0
- package/dist/paintCache.js +78 -0
- package/dist/paintCache.js.map +1 -0
- package/dist/storageKeys.d.ts +33 -0
- package/dist/storageKeys.d.ts.map +1 -0
- package/dist/storageKeys.js +33 -0
- package/dist/storageKeys.js.map +1 -0
- package/package.json +3 -3
package/dist/PageLoop.js
CHANGED
|
@@ -7,89 +7,9 @@ import { EventBus } from './EventBus.js';
|
|
|
7
7
|
import { IdbCache } from './IdbCache.js';
|
|
8
8
|
import { resolveInitialToken, SESSION_TOKEN_KEY } from './auth/resolveInitialToken.js';
|
|
9
9
|
import { BrowserNotifications } from './notifications/BrowserNotifications.js';
|
|
10
|
-
import {
|
|
11
|
-
/**
|
|
12
|
-
* localStorage key for the cached `ProjectSettings` blob. Keyed per
|
|
13
|
-
* project so multiple PageLoop widgets on the same origin don't
|
|
14
|
-
* stomp each other. The cache is read synchronously on init — that's
|
|
15
|
-
* the whole point: we paint the toolbar + sidebar in their final
|
|
16
|
-
* position before bootstrap returns.
|
|
17
|
-
*/
|
|
18
|
-
const SETTINGS_CACHE_PREFIX = 'pl_config:';
|
|
19
|
-
const PROJECT_CACHE_PREFIX = 'pl_project:';
|
|
20
|
-
const USER_SESSION_CACHE_PREFIX = 'pl_widget_user:';
|
|
10
|
+
import { readCachedSettings, writeCachedSettings, readCachedProject, writeCachedProject, writeCachedOrgName, readCachedUserSession, writeCachedUserSession, clearCachedUserSession, } from './paintCache.js';
|
|
21
11
|
/** Min gap between focus-driven session re-resolves (see `onVisible`). */
|
|
22
12
|
const SESSION_REFRESH_THROTTLE_MS = 60_000;
|
|
23
|
-
function readCachedSettings(projectId) {
|
|
24
|
-
// safeStorage swallows SecurityError / private-mode throws + falls back
|
|
25
|
-
// to an in-memory map; the try/catch here is purely for the JSON.parse.
|
|
26
|
-
const raw = safeStorage.getItem(SETTINGS_CACHE_PREFIX + projectId);
|
|
27
|
-
if (!raw)
|
|
28
|
-
return null;
|
|
29
|
-
try {
|
|
30
|
-
return JSON.parse(raw);
|
|
31
|
-
}
|
|
32
|
-
catch {
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
function writeCachedSettings(projectId, settings) {
|
|
37
|
-
safeStorage.setItem(SETTINGS_CACHE_PREFIX + projectId, JSON.stringify(settings));
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Cache the full Project object so the renderer can mount on first
|
|
41
|
-
* paint without waiting for the bootstrap round-trip. Validated on
|
|
42
|
-
* read — a partial / malformed cache returns null so we fall back to
|
|
43
|
-
* the slow-path mount-after-bootstrap.
|
|
44
|
-
*
|
|
45
|
-
* Separate from the settings cache because settings get reconciled
|
|
46
|
-
* key-by-key (and emit `config:changed` for hot reload), whereas the
|
|
47
|
-
* Project object is a static identity blob — name, slug, ids — that
|
|
48
|
-
* the renderer reads through the `project()` getter.
|
|
49
|
-
*/
|
|
50
|
-
function readCachedProject(projectId) {
|
|
51
|
-
const raw = safeStorage.getItem(PROJECT_CACHE_PREFIX + projectId);
|
|
52
|
-
if (!raw)
|
|
53
|
-
return null;
|
|
54
|
-
try {
|
|
55
|
-
const parsed = JSON.parse(raw);
|
|
56
|
-
// Defensive: a malformed cache (truncated, schema-drift) would
|
|
57
|
-
// crash the renderer's getters on optimistic paint. Require the
|
|
58
|
-
// minimum keys the mount path reads before trusting it.
|
|
59
|
-
if (!parsed.id || !parsed.slug)
|
|
60
|
-
return null;
|
|
61
|
-
return parsed;
|
|
62
|
-
}
|
|
63
|
-
catch {
|
|
64
|
-
return null;
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
function writeCachedProject(projectId, project) {
|
|
68
|
-
safeStorage.setItem(PROJECT_CACHE_PREFIX + projectId, JSON.stringify(project));
|
|
69
|
-
}
|
|
70
|
-
function readCachedUserSession(projectId) {
|
|
71
|
-
const raw = safeStorage.getItem(USER_SESSION_CACHE_PREFIX + projectId);
|
|
72
|
-
if (!raw)
|
|
73
|
-
return null;
|
|
74
|
-
try {
|
|
75
|
-
const parsed = JSON.parse(raw);
|
|
76
|
-
// Defensive: require the role to be set; a malformed blob (truncated
|
|
77
|
-
// JSON, schema drift) returns null so the constructor falls back to
|
|
78
|
-
// the anonymous default rather than rendering with garbage.
|
|
79
|
-
if (!parsed || typeof parsed.role !== 'string')
|
|
80
|
-
return null;
|
|
81
|
-
return parsed;
|
|
82
|
-
}
|
|
83
|
-
catch {
|
|
84
|
-
return null;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
function writeCachedUserSession(projectId, value) {
|
|
88
|
-
safeStorage.setItem(USER_SESSION_CACHE_PREFIX + projectId, JSON.stringify(value));
|
|
89
|
-
}
|
|
90
|
-
function clearCachedUserSession(projectId) {
|
|
91
|
-
safeStorage.removeItem(USER_SESSION_CACHE_PREFIX + projectId);
|
|
92
|
-
}
|
|
93
13
|
/**
|
|
94
14
|
* Public entry point. Composes ApiClient + PageTracker + CommentEngine + the
|
|
95
15
|
* provided UIRenderer, and runs the bootstrap → mount → subscribe lifecycle.
|
|
@@ -479,6 +399,8 @@ export class PageLoop {
|
|
|
479
399
|
// optimistically. Done BEFORE reconcileSettings so a partial
|
|
480
400
|
// failure mid-reconcile still leaves us with cache consistency.
|
|
481
401
|
writeCachedProject(this.config.projectId, initial.project);
|
|
402
|
+
// Domain-global org name for the shared sign-in modal (anonymous-safe).
|
|
403
|
+
writeCachedOrgName(initial.organizationName ?? null);
|
|
482
404
|
// Persist the user + role so the NEXT cold load can paint the
|
|
483
405
|
// signed-in toolbar pill on first frame instead of flashing
|
|
484
406
|
// "Sign in" until bootstrap returns. Clears the cache when the
|
|
@@ -614,6 +536,11 @@ export class PageLoop {
|
|
|
614
536
|
this.tracker.start();
|
|
615
537
|
const offChange = this.bus.on('page:change', async ({ key }) => {
|
|
616
538
|
await this.resolvePage(key);
|
|
539
|
+
// SPAs usually set the per-route <title> only after the route
|
|
540
|
+
// renders (a tick or two after the URL changes), so sync the title
|
|
541
|
+
// once it's settled — this both auto-discovers a brand-new SPA route
|
|
542
|
+
// and corrects a page first registered with a generic shell title.
|
|
543
|
+
this.scheduleTitleSync();
|
|
617
544
|
});
|
|
618
545
|
// Live updates: re-render bubbles + sidebar when comments change.
|
|
619
546
|
const offCreated = this.bus.on('comment:created', () => this.refreshAfterChange());
|
|
@@ -632,7 +559,52 @@ export class PageLoop {
|
|
|
632
559
|
if (changed)
|
|
633
560
|
this.refreshSidebar();
|
|
634
561
|
});
|
|
635
|
-
this.offHandlers.push(offChange, offCreated, offUpdated, offDeleted, offBulkDeleted, offDangling)
|
|
562
|
+
this.offHandlers.push(offChange, offCreated, offUpdated, offDeleted, offBulkDeleted, offDangling, () => {
|
|
563
|
+
if (this.titleSyncTimer)
|
|
564
|
+
clearTimeout(this.titleSyncTimer);
|
|
565
|
+
this.titleSyncTimer = null;
|
|
566
|
+
});
|
|
567
|
+
// Initial-load title: phase2 already registered with whatever
|
|
568
|
+
// `document.title` was at boot (often the shell title on an SPA).
|
|
569
|
+
// Re-check once the route has settled so the first page gets its real
|
|
570
|
+
// title too.
|
|
571
|
+
this.scheduleTitleSync();
|
|
572
|
+
}
|
|
573
|
+
/** Debounced trigger for {@link syncCurrentPageTitle} — coalesces rapid
|
|
574
|
+
* navigations / title flips into one update. */
|
|
575
|
+
titleSyncTimer = null;
|
|
576
|
+
scheduleTitleSync() {
|
|
577
|
+
if (this.titleSyncTimer)
|
|
578
|
+
clearTimeout(this.titleSyncTimer);
|
|
579
|
+
this.titleSyncTimer = setTimeout(() => {
|
|
580
|
+
this.titleSyncTimer = null;
|
|
581
|
+
void this.syncCurrentPageTitle();
|
|
582
|
+
}, 600);
|
|
583
|
+
}
|
|
584
|
+
/**
|
|
585
|
+
* Keep the tracked page's stored title in step with the live
|
|
586
|
+
* `document.title`. Only runs in autoDiscover mode. Registering with the
|
|
587
|
+
* current title both tracks a brand-new SPA route and lets the server
|
|
588
|
+
* overwrite a stale/generic title (see PagesHandler.register). No-ops when
|
|
589
|
+
* the title is empty or already matches, and stays quiet on the expected
|
|
590
|
+
* anonymous-on-private FORBIDDEN.
|
|
591
|
+
*/
|
|
592
|
+
async syncCurrentPageTitle() {
|
|
593
|
+
if (!this.project)
|
|
594
|
+
return;
|
|
595
|
+
if (!(this.effectiveBehavior().autoDiscover ?? true))
|
|
596
|
+
return;
|
|
597
|
+
const title = (typeof document !== 'undefined' ? document.title : '').trim();
|
|
598
|
+
if (!title)
|
|
599
|
+
return;
|
|
600
|
+
if (this.currentPage && this.currentPage.title === title)
|
|
601
|
+
return;
|
|
602
|
+
try {
|
|
603
|
+
await this.registerCurrentPage(title);
|
|
604
|
+
}
|
|
605
|
+
catch (err) {
|
|
606
|
+
this.debug('title sync skipped', err);
|
|
607
|
+
}
|
|
636
608
|
}
|
|
637
609
|
/**
|
|
638
610
|
* Phase 2 teardown — symmetric inverse of `runPhase2()`. Unmounts
|
|
@@ -765,6 +737,7 @@ export class PageLoop {
|
|
|
765
737
|
this.currentRole = initial.role;
|
|
766
738
|
this.currentBubbleColor = initial.bubbleColor ?? null;
|
|
767
739
|
writeCachedProject(this.config.projectId, initial.project);
|
|
740
|
+
writeCachedOrgName(initial.organizationName ?? null);
|
|
768
741
|
if (initial.user) {
|
|
769
742
|
writeCachedUserSession(this.config.projectId, {
|
|
770
743
|
user: initial.user,
|
package/dist/PageLoop.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageLoop.js","sourceRoot":"","sources":["../src/PageLoop.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAiG/C;;;;;;GAMG;AACH,MAAM,qBAAqB,GAAG,YAAY,CAAC;AAC3C,MAAM,oBAAoB,GAAG,aAAa,CAAC;AAC3C,MAAM,yBAAyB,GAAG,iBAAiB,CAAC;AACpD,0EAA0E;AAC1E,MAAM,2BAA2B,GAAG,MAAM,CAAC;AAE3C,SAAS,kBAAkB,CAAC,SAAiB;IAC5C,wEAAwE;IACxE,wEAAwE;IACxE,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAAC;IACnE,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,CAAC;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,SAAiB,EAAE,QAAyB;IACxE,WAAW,CAAC,OAAO,CAAC,qBAAqB,GAAG,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;AAClF,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,iBAAiB,CAAC,SAAiB;IAC3C,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAAC;IAClE,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;QAC1C,+DAA+D;QAC/D,gEAAgE;QAChE,wDAAwD;QACxD,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QAC5C,OAAO,MAAM,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAiB,EAAE,OAAgB;IAC9D,WAAW,CAAC,OAAO,CAAC,oBAAoB,GAAG,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;AAChF,CAAC;AAyBD,SAAS,qBAAqB,CAAC,SAAiB;IAC/C,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC,CAAC;IACvE,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAsB,CAAC;QACpD,qEAAqE;QACrE,oEAAoE;QACpE,4DAA4D;QAC5D,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC5D,OAAO,MAAM,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,sBAAsB,CAAC,SAAiB,EAAE,KAAwB;IAC1E,WAAW,CAAC,OAAO,CAAC,yBAAyB,GAAG,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,sBAAsB,CAAC,SAAiB;IAChD,WAAW,CAAC,UAAU,CAAC,yBAAyB,GAAG,SAAS,CAAC,CAAC;AAC/D,CAAC;AAMD;;;;;;GAMG;AACH,MAAM,OAAO,QAAQ;IAuFF;IAtFT,GAAG,CAAW;IACd,GAAG,CAAY;IACf,OAAO,CAAc;IACrB,QAAQ,CAAgB;IACxB,KAAK,CAAW;IACzB;;;;0CAIsC;IAC7B,aAAa,CAAuB;IAC5B,QAAQ,CAAa;IAE9B,OAAO,GAAmB,IAAI,CAAC;IAC/B,WAAW,GAAuB,IAAI,CAAC;IAC/C,8DAA8D;IACtD,WAAW,GAAgB,IAAI,CAAC;IACxC;;;gFAG4E;IACpE,WAAW,GAA8D,WAAW,CAAC;IAC7F;;;;gEAI4D;IACpD,kBAAkB,GAAkB,IAAI,CAAC;IACjD;2DACuD;IAC/C,eAAe,GAAG,CAAC,CAAC;IAC5B,oEAAoE;IAC5D,eAAe,GAAG,KAAK,CAAC;IAChC;;8EAE0E;IAClE,WAAW,GAAsB,EAAE,CAAC;IAC5C;sEACkE;IAC1D,iBAAiB,GAAwB,IAAI,CAAC;IACtD;;;+CAG2C;IACnC,gBAAgB,GAAwB,IAAI,CAAC;IACrD;;;;;;;;OAQG;IACK,YAAY,GAAG,KAAK,CAAC;IAC7B;;;;;OAKG;IACK,SAAS,GAAG,KAAK,CAAC;IAC1B;;;wCAGoC;IAC5B,aAAa,GAAmD,IAAI,CAAC;IAC7E;;;oEAGgE;IACxD,aAAa,GAAmD,IAAI,CAAC;IAC7E;;;;8CAI0C;IAClC,kBAAkB,GAAwB,IAAI,GAAG,EAAE,CAAC;IAC5D;;;;OAIG;IACK,cAAc,CAAkB;IAExC,YACkB,MAAsB,EACvC,IAAkB;QADD,WAAM,GAAN,MAAM,CAAgB;QAGvC,IAAI,CAAC,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,oBAAoB,CAAC;YAC7C,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;SACvC,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,gEAAgE;QAChE,2DAA2D;QAC3D,8DAA8D;QAC9D,2DAA2D;QAC3D,6DAA6D;QAC7D,mDAAmD;QACnD,IAAI,CAAC,cAAc,GAAG,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACjE,IAAI,CAAC,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,EAAE,CAAC;QAC1D,8DAA8D;QAC9D,8DAA8D;QAC9D,gEAAgE;QAChE,iEAAiE;QACjE,aAAa;QACb,MAAM,YAAY,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvD,gEAAgE;QAChE,+DAA+D;QAC/D,4DAA4D;QAC5D,4DAA4D;QAC5D,2DAA2D;QAC3D,uDAAuD;QACvD,+DAA+D;QAC/D,8DAA8D;QAC9D,IAAI,YAAY,EAAE,CAAC;YAClB,MAAM,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC9D,IAAI,aAAa,EAAE,CAAC;gBACnB,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC;gBACtC,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC;YACvC,CAAC;QACF,CAAC;QACD,IAAI,CAAC,GAAG,GAAG,IAAI,SAAS,CACvB;YACC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,cAAc,CAAC,SAAS;SACvD,EACD,IAAI,CAAC,GAAG,CACR,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC/B,CAAC;IAED;;;;;;;OAOG;IACK,WAAW;QAClB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC;QAC5C,iEAAiE;QACjE,gEAAgE;QAChE,+DAA+D;QAC/D,yCAAyC;QACzC,MAAM,eAAe,GACpB,MAAM,CAAC,eAAe;YACtB,OAAO,CAAC,eAAe;YACvB,MAAM,CAAC,WAAW;YAClB,OAAO,CAAC,WAAW,CAAC;QACrB,OAAO;YACN,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe;YAClE,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU;YACnD,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY;YACzD,eAAe;YACf,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW;YACtD,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,IAAI,OAAO,CAAC,kBAAkB;YAC3E,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK;YACpC,qBAAqB,EACpB,MAAM,CAAC,qBAAqB,IAAI,OAAO,CAAC,qBAAqB;YAC9D,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,OAAO,CAAC,cAAc;YAC/D,sBAAsB,EACrB,MAAM,CAAC,sBAAsB,IAAI,OAAO,CAAC,sBAAsB;YAChE,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY;YACzD,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU;SACnD,CAAC;IACH,CAAC;IAED,8DAA8D;IACtD,iBAAiB;QACxB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,EAAE,CAAC;QAClD,OAAO;YACN,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY;YAC7D,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS;SACpD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,eAAe;QACtB,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,KAAK,KAAK,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CAAC,IAAiC;QAC1D,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,MAAM,KAAK,KAAK;YAAE,OAAO;QAC7B,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC/B,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACrD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,aAAa;QAC1B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACzC,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YAC5B,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAQ;YAC5B,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YAC5B,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YAC5B,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB;YAC1C,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YAC7C,OAAO,EAAE,GAAG,EAAE;gBACb,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;YACrB,CAAC;YACD,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;YAC5B,mBAAmB,EAAE,GAAG,EAAE,CACzB,IAAI,CAAC,mBAAmB,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACxC,OAAO,CAAC,IAAI,CAAC,wCAAwC,EAAE,GAAG,CAAC,CAAC;gBAC5D,OAAO,IAAI,CAAC;YACb,CAAC,CAAC;YACH,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACrC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;YACvC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;gBACf,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;gBAC5B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;aACrC,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;QACrC,8DAA8D;QAC9D,iEAAiE;QACjE,mBAAmB;QACnB,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,KAAK;QACV,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;YAC3B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK;SAC7B,CAAC,CAAC;QAEH,qEAAqE;QACrE,yEAAyE;QACzE,sEAAsE;QACtE,yDAAyD;QACzD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,UAAU,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,wCAAwC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;YAChF,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;YAC9B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACnE,IAAI,cAAc;gBAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;QACxE,CAAC;QAED,+DAA+D;QAC/D,6DAA6D;QAC7D,8DAA8D;QAC9D,gEAAgE;QAChE,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAE7C,mEAAmE;QACnE,+DAA+D;QAC/D,4DAA4D;QAC5D,+DAA+D;QAC/D,4DAA4D;QAC5D,2DAA2D;QAC3D,gEAAgE;QAChE,EAAE;QACF,0DAA0D;QAC1D,+DAA+D;QAC/D,6DAA6D;QAC7D,4DAA4D;QAC5D,6DAA6D;QAC7D,SAAS;QACT,IAAI,aAAa,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,yDAAyD,EAAE;gBACrE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;aACvB,CAAC,CAAC;YACH,IAAI,CAAC;gBACJ,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACxB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,IAAI,CAAC,KAAK,CAAC,6DAA6D,EAAE,GAAG,CAAC,CAAC;YAChF,CAAC;QACF,CAAC;aAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;QAClE,CAAC;QAED,+EAA+E;QAC/E,mEAAmE;QACnE,qEAAqE;QACrE,+DAA+D;QAC/D,8DAA8D;QAC9D,qEAAqE;QACrE,qEAAqE;QACrE,2BAA2B;QAC3B,oEAAoE;QACpE,mEAAmE;QACnE,kBAAkB;QAClB,IAAI,OAAO,GAAkE,IAAI,CAAC;QAClF,IAAI,SAAS,GAAY,IAAI,CAAC;QAC9B,IAAI,CAAC;YACJ,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE;gBAC1C,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,OAAO,EAAE,SAAS;aAClB,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,SAAS,GAAG,GAAG,CAAC;YAChB,MAAM,cAAc,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,WAAW,CAAC,YAAY,CAAC;YACnE,IAAI,cAAc,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;gBAC3C,6DAA6D;gBAC7D,4DAA4D;gBAC5D,0DAA0D;gBAC1D,EAAE;gBACF,6DAA6D;gBAC7D,4DAA4D;gBAC5D,2DAA2D;gBAC3D,6DAA6D;gBAC7D,4DAA4D;gBAC5D,uDAAuD;gBACvD,8DAA8D;gBAC9D,8DAA8D;gBAC9D,2DAA2D;gBAC3D,IAAI,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;gBACtF,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACxB,0DAA0D;gBAC1D,0DAA0D;gBAC1D,uDAAuD;gBACvD,4BAA4B;gBAC5B,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC9C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;gBAC/B,IAAI,CAAC;oBACJ,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE;wBAC1C,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;wBAChC,OAAO,EAAE,SAAS;qBAClB,CAAC,CAAC;oBACH,SAAS,GAAG,IAAI,CAAC;gBAClB,CAAC;gBAAC,OAAO,IAAI,EAAE,CAAC;oBACf,SAAS,GAAG,IAAI,CAAC;oBACjB,IAAI,CAAC,KAAK,CAAC,wCAAwC,EAAE,IAAI,CAAC,CAAC;gBAC5D,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,KAAK,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;YAC5C,CAAC;QACF,CAAC;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,gEAAgE;YAChE,8DAA8D;YAC9D,+BAA+B;YAC/B,MAAM,MAAM,GAAG,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAClF,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAC;gBACvD,CAAC,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,SAAS,kBAAkB,IAAI,CAAC,MAAM,CAAC,QAAQ,mGAAmG;gBAC5K,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,YAAY;oBAClC,CAAC,CAAC,yIAAyI;oBAC3I,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,SAAS;wBAC/B,CAAC,CAAC,wFAAwF;wBAC1F,CAAC,CAAC,mBAAmB,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC,sCAAsC,IAAI,EAAE,CAAC,CAAC;YAC3D,OAAO;QACR,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;QAChC,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC;QACtD,iEAAiE;QACjE,6DAA6D;QAC7D,gEAAgE;QAChE,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAC3D,8DAA8D;QAC9D,4DAA4D;QAC5D,+DAA+D;QAC/D,0DAA0D;QAC1D,4DAA4D;QAC5D,wDAAwD;QACxD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;gBAC7C,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;aAClB,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACP,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/C,CAAC;QACD,mEAAmE;QACnE,oDAAoD;QACpD,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjD,iEAAiE;QACjE,sEAAsE;QACtE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAClF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAClC,uEAAuE;QACvE,uEAAuE;QACvE,kDAAkD;QAClD,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC9D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE;YAC9B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;YAC7B,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI;YAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;YACjC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,IAAI;YACjC,IAAI,EAAE,OAAO,CAAC,IAAI;SAClB,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YACvD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjE,CAAC;QAED,2DAA2D;QAC3D,8DAA8D;QAC9D,8DAA8D;QAC9D,8DAA8D;QAC9D,2DAA2D;QAC3D,4BAA4B;QAC5B,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC7B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,KAAU,EAAE,EAAE;gBACvE,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,EAAE,OAAO,EAAE,EAAE,KAAK,IAAI,CAAC,OAAO,CAAC,EAAE;oBAAE,OAAO;gBACpE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC7B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC/C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBAChD,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC7B,IAAI,IAAI,CAAC,YAAY;oBAAE,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9C,CAAC,CAAC,CAAC;QACJ,CAAC;QAED,mEAAmE;QACnE,mEAAmE;QACnE,kEAAkE;QAClE,8DAA8D;QAC9D,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,KAAU,EAAE,EAAE;gBACrE,IAAI,CAAC,kBAAkB,GAAG,CAAC,KAAK,EAAE,KAAK,IAAI,IAAI,CAAkB,CAAC;YACnE,CAAC,CAAC,CAAC;QACJ,CAAC;QAED,+DAA+D;QAC/D,kCAAkC;QAClC,4DAA4D;QAC5D,+DAA+D;QAC/D,uCAAuC;QACvC,yBAAyB;QACzB,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;;;;;;OAWG;IACK,KAAK,CAAC,SAAS;QACtB,IAAI,IAAI,CAAC,YAAY;YAAE,OAAO;QAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAE/B,2DAA2D;QAC3D,4DAA4D;QAC5D,2DAA2D;QAC3D,SAAS;QACT,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChC,IAAI,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAE3B,gEAAgE;QAChE,uDAAuD;QACvD,uBAAuB;QACvB,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,YAAY,IAAI,IAAI,CAAC,EAAE,CAAC;YAC1E,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACpD,IAAI,CAAC;gBACJ,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAClC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,IAAI,CAAC,KAAK,CAAC,8BAA8B,EAAE,GAAG,CAAC,CAAC;gBAChD,gEAAgE;gBAChE,+DAA+D;gBAC/D,gEAAgE;gBAChE,iEAAiE;gBACjE,gEAAgE;gBAChE,mEAAmE;gBACnE,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,MAAM,WAAW,GAAG,6BAA6B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAChE,IAAI,CAAC,WAAW,EAAE,CAAC;oBAClB,IAAI,CAAC,MAAM,CACV,qFAAqF,EACrF,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CACnC,CAAC;gBACH,CAAC;YACF,CAAC;QACF,CAAC;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,gEAAgE;QAChE,2CAA2C;QAC3C,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,yEAAyE;QACzE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,GAAG,EAAO,EAAE,EAAE;YACnE,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,kEAAkE;QAClE,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACnF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACnF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACnF,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QAC3F,0DAA0D;QAC1D,6DAA6D;QAC7D,6DAA6D;QAC7D,oBAAoB;QACpB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,KAAU,EAAE,EAAE;YAClE,MAAM,GAAG,GAAgB,KAAK,EAAE,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;YAC3E,MAAM,OAAO,GACZ,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,kBAAkB,CAAC,IAAI;gBACzC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC;YAC9B,IAAI,OAAO;gBAAE,IAAI,CAAC,cAAc,EAAE,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,CAAC,IAAI,CACpB,SAAS,EACT,UAAU,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,WAAW,CACX,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,cAAc;QAC3B,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO;QAC/B,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,WAAW;YAAE,GAAG,EAAE,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO;QACZ,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,gBAAgB;QAC7B,mEAAmE;QACnE,qEAAqE;QACrE,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QACvD,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACxB,CAAC;aAAM,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7B,CAAC;IACF,CAAC;IAED,KAAK,CAAC,IAAI;QACT,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC/B,CAAC;QACD,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC9B,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC7D,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YACjE,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC9B,CAAC;QACD,0DAA0D;QAC1D,+DAA+D;QAC/D,2DAA2D;QAC3D,kBAAkB;QAClB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7B,CAAC;IACF,CAAC;IAED,cAAc;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED,yEAAyE;IACzE,UAAU;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,yEAAyE;IACzE,cAAc;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED,uEAAuE;IACvE,cAAc;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,UAAU,CAAC,KAAoB;QACpC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,CAAC;YACJ,IAAI,KAAK;gBAAE,YAAY,CAAC,OAAO,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;;gBACrD,YAAY,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACR,6DAA6D;QAC9D,CAAC;QACD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;IAC1B,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,WAAW;QACxB,IAAI,CAAC;YACJ,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE;gBAChD,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;aAC/B,CAAC,CAAC;YACH,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;YAC/B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YAChC,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC;YACtD,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAC3D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;oBAC7C,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;iBAClB,CAAC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACP,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC/C,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACvD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACvC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjE,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YAClF,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,cAAc,EAAE,CAAC;YACvB,CAAC;QACF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,KAAK,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;YACtC,uDAAuD;YACvD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACnF,CAAC;IACF,CAAC;IAED;;;;;;OAMG;IACK,SAAS,GAAG,GAAS,EAAE;QAC9B,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS;YAAE,OAAO;QACtF,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO,CAAC,oCAAoC;QACnE,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,GAAG,2BAA2B;YAAE,OAAO;QAC5E,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;IACzB,CAAC,CAAC;IAEF,+EAA+E;IAC/E,KAAK,CAAC,mBAAmB,CAAC,KAAc;QACvC,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAClD,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;YAC1B,UAAU,EAAE,MAAM;YAClB,iFAAiF;YACjF,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;YACzB,GAAG;YACH,KAAK,EAAE,KAAK,IAAI,QAAQ,CAAC,KAAK;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,oBAAoB;IAEZ,KAAK,CAAC,WAAW,CAAC,GAAW;QACpC,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,+CAA+C;QAC/C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;YAC1B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC/D,IAAI,cAAc;gBAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;YACnE,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QACvB,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QACrF,oEAAoE;QACpE,iEAAiE;QACjE,kEAAkE;QAClE,iEAAiE;QACjE,gBAAgB;QAChB,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,KAAK,UAAU,EAAE,CAAC;YAC5D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,OAAO;QACR,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC/B,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,GAAG,IAAe;QAC/B,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;;;OAOG;IACK,YAAY,CAAC,EAAc;QAClC,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,OAAO;QAC1C,MAAM,GAAG,GAAI,MAEX,CAAC,mBAAmB,CAAC;QACvB,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;YAC/B,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3B,OAAO;QACR,CAAC;QACD,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACpB,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,iBAAiB;QACxB,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,OAAO;QAC1C,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACvC,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAChC,4DAA4D;QAC5D,8DAA8D;QAC9D,4DAA4D;QAC5D,4DAA4D;QAC5D,8DAA8D;QAC9D,4CAA4C;QAC5C,IAAI,CAAC;YACJ,IAAI,OAAO;gBAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;;gBAC1D,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC;QACpD,CAAC;QACD,6DAA6D;QAC7D,IAAI,CAAC;YACJ,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC5B,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,GACvC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAC/C,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC1B,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACR,6DAA6D;QAC9D,CAAC;IACF,CAAC;IAED;;;;;;;;OAQG;IACH,YAAY,CAAC,SAAiB,EAAE,OAAgB;QAC/C,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAChC,IAAI,CAAC;YACJ,IAAI,OAAO;gBAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;;gBAC1D,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;QACzC,CAAC;IACF,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,aAAa,CAAC,KAMpB;QACA,MAAM,OAAO,GACZ,KAAK,CAAC,GAAG;YACT,CAAC,OAAO,MAAM,KAAK,WAAW;gBAC7B,CAAC,CAAC,CAAC,GAAG,EAAE;oBACN,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;gBAC5E,CAAC,CAAC,EAAE;gBACL,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1B,gEAAgE;QAChE,qDAAqD;QACrD,MAAM,IAAI,GACT,OAAO,MAAM,KAAK,WAAW;YAC5B,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC;YAClB,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACrD,IAAI,KAAK,CAAC,OAAO;YAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;;YAC/D,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAEO,kBAAkB;QACzB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,qEAAqE;QACrE,8CAA8C;QAC9C,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,KAAK,IAAI,CAAC,KAAK,CAAC,WAAW,CAC1B,IAAI,CAAC,WAAW,CAAC,EAAE,EACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CACvC,CAAC;QACH,CAAC;IACF,CAAC;IAEO,cAAc;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;YAC3B,IAAI,EAAE,IAAI,CAAC,WAAW;YACtB,QAAQ,EAAE,IAAI;YACd,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;SAC3C,CAAC,CAAC;IACJ,CAAC;IAEO,cAAc;QACrB,MAAM,IAAI,GAAc,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACxF,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAClC,mEAAmE;QACnE,mEAAmE;QACnE,kEAAkE;QAClE,mEAAmE;QACnE,mEAAmE;QACnE,oEAAoE;QACpE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CACxB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAC3D,CAAC,CACD,CAAC;QACF,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,aAAa;QACZ,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC;IACjC,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,iBAAiB;QAChB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;IACvB,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,MAAe,EAAE,WAAoB;QACrD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CACL,OAAe,EACf,IAAmE;QAEnE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE;YAC3B,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,MAAM;YAC1B,OAAO;YACP,QAAQ,EAAE,IAAI,EAAE,UAAU;SAC1B,CAAC,CAAC;IACJ,CAAC;CACD"}
|
|
1
|
+
{"version":3,"file":"PageLoop.js","sourceRoot":"","sources":["../src/PageLoop.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EACN,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,GACtB,MAAM,iBAAiB,CAAC;AAiGzB,0EAA0E;AAC1E,MAAM,2BAA2B,GAAG,MAAM,CAAC;AAM3C;;;;;;GAMG;AACH,MAAM,OAAO,QAAQ;IAuFF;IAtFT,GAAG,CAAW;IACd,GAAG,CAAY;IACf,OAAO,CAAc;IACrB,QAAQ,CAAgB;IACxB,KAAK,CAAW;IACzB;;;;0CAIsC;IAC7B,aAAa,CAAuB;IAC5B,QAAQ,CAAa;IAE9B,OAAO,GAAmB,IAAI,CAAC;IAC/B,WAAW,GAAuB,IAAI,CAAC;IAC/C,8DAA8D;IACtD,WAAW,GAAgB,IAAI,CAAC;IACxC;;;gFAG4E;IACpE,WAAW,GAA8D,WAAW,CAAC;IAC7F;;;;gEAI4D;IACpD,kBAAkB,GAAkB,IAAI,CAAC;IACjD;2DACuD;IAC/C,eAAe,GAAG,CAAC,CAAC;IAC5B,oEAAoE;IAC5D,eAAe,GAAG,KAAK,CAAC;IAChC;;8EAE0E;IAClE,WAAW,GAAsB,EAAE,CAAC;IAC5C;sEACkE;IAC1D,iBAAiB,GAAwB,IAAI,CAAC;IACtD;;;+CAG2C;IACnC,gBAAgB,GAAwB,IAAI,CAAC;IACrD;;;;;;;;OAQG;IACK,YAAY,GAAG,KAAK,CAAC;IAC7B;;;;;OAKG;IACK,SAAS,GAAG,KAAK,CAAC;IAC1B;;;wCAGoC;IAC5B,aAAa,GAAmD,IAAI,CAAC;IAC7E;;;oEAGgE;IACxD,aAAa,GAAmD,IAAI,CAAC;IAC7E;;;;8CAI0C;IAClC,kBAAkB,GAAwB,IAAI,GAAG,EAAE,CAAC;IAC5D;;;;OAIG;IACK,cAAc,CAAkB;IAExC,YACkB,MAAsB,EACvC,IAAkB;QADD,WAAM,GAAN,MAAM,CAAgB;QAGvC,IAAI,CAAC,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,oBAAoB,CAAC;YAC7C,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;SACvC,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,gEAAgE;QAChE,2DAA2D;QAC3D,8DAA8D;QAC9D,2DAA2D;QAC3D,6DAA6D;QAC7D,mDAAmD;QACnD,IAAI,CAAC,cAAc,GAAG,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACjE,IAAI,CAAC,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,EAAE,CAAC;QAC1D,8DAA8D;QAC9D,8DAA8D;QAC9D,gEAAgE;QAChE,iEAAiE;QACjE,aAAa;QACb,MAAM,YAAY,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvD,gEAAgE;QAChE,+DAA+D;QAC/D,4DAA4D;QAC5D,4DAA4D;QAC5D,2DAA2D;QAC3D,uDAAuD;QACvD,+DAA+D;QAC/D,8DAA8D;QAC9D,IAAI,YAAY,EAAE,CAAC;YAClB,MAAM,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC9D,IAAI,aAAa,EAAE,CAAC;gBACnB,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC;gBACtC,IAAI,CAAC,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC;YACvC,CAAC;QACF,CAAC;QACD,IAAI,CAAC,GAAG,GAAG,IAAI,SAAS,CACvB;YACC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,cAAc,CAAC,SAAS;SACvD,EACD,IAAI,CAAC,GAAG,CACR,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC/B,CAAC;IAED;;;;;;;OAOG;IACK,WAAW;QAClB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC;QAC5C,iEAAiE;QACjE,gEAAgE;QAChE,+DAA+D;QAC/D,yCAAyC;QACzC,MAAM,eAAe,GACpB,MAAM,CAAC,eAAe;YACtB,OAAO,CAAC,eAAe;YACvB,MAAM,CAAC,WAAW;YAClB,OAAO,CAAC,WAAW,CAAC;QACrB,OAAO;YACN,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe;YAClE,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU;YACnD,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY;YACzD,eAAe;YACf,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW;YACtD,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,IAAI,OAAO,CAAC,kBAAkB;YAC3E,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK;YACpC,qBAAqB,EACpB,MAAM,CAAC,qBAAqB,IAAI,OAAO,CAAC,qBAAqB;YAC9D,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,OAAO,CAAC,cAAc;YAC/D,sBAAsB,EACrB,MAAM,CAAC,sBAAsB,IAAI,OAAO,CAAC,sBAAsB;YAChE,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY;YACzD,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU;SACnD,CAAC;IACH,CAAC;IAED,8DAA8D;IACtD,iBAAiB;QACxB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,EAAE,CAAC;QAClD,OAAO;YACN,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY;YAC7D,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS;SACpD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,eAAe;QACtB,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,KAAK,KAAK,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CAAC,IAAiC;QAC1D,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,MAAM,KAAK,KAAK;YAAE,OAAO;QAC7B,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC/B,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACrD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,aAAa;QAC1B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACzC,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YAC5B,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAQ;YAC5B,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YAC5B,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW;YAC5B,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB;YAC1C,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YAC7C,OAAO,EAAE,GAAG,EAAE;gBACb,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;YACrB,CAAC;YACD,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;YAC5B,mBAAmB,EAAE,GAAG,EAAE,CACzB,IAAI,CAAC,mBAAmB,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACxC,OAAO,CAAC,IAAI,CAAC,wCAAwC,EAAE,GAAG,CAAC,CAAC;gBAC5D,OAAO,IAAI,CAAC;YACb,CAAC,CAAC;YACH,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACrC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;YACvC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;gBACf,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;gBAC5B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;aACrC,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;QACrC,8DAA8D;QAC9D,iEAAiE;QACjE,mBAAmB;QACnB,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,KAAK;QACV,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;YAC3B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK;SAC7B,CAAC,CAAC;QAEH,qEAAqE;QACrE,yEAAyE;QACzE,sEAAsE;QACtE,yDAAyD;QACzD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,UAAU,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,wCAAwC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;YAChF,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;YAC9B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YACnE,IAAI,cAAc;gBAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;QACxE,CAAC;QAED,+DAA+D;QAC/D,6DAA6D;QAC7D,8DAA8D;QAC9D,gEAAgE;QAChE,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAE7C,mEAAmE;QACnE,+DAA+D;QAC/D,4DAA4D;QAC5D,+DAA+D;QAC/D,4DAA4D;QAC5D,2DAA2D;QAC3D,gEAAgE;QAChE,EAAE;QACF,0DAA0D;QAC1D,+DAA+D;QAC/D,6DAA6D;QAC7D,4DAA4D;QAC5D,6DAA6D;QAC7D,SAAS;QACT,IAAI,aAAa,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,yDAAyD,EAAE;gBACrE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;aACvB,CAAC,CAAC;YACH,IAAI,CAAC;gBACJ,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACxB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,IAAI,CAAC,KAAK,CAAC,6DAA6D,EAAE,GAAG,CAAC,CAAC;YAChF,CAAC;QACF,CAAC;aAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;QAClE,CAAC;QAED,+EAA+E;QAC/E,mEAAmE;QACnE,qEAAqE;QACrE,+DAA+D;QAC/D,8DAA8D;QAC9D,qEAAqE;QACrE,qEAAqE;QACrE,2BAA2B;QAC3B,oEAAoE;QACpE,mEAAmE;QACnE,kBAAkB;QAClB,IAAI,OAAO,GAAkE,IAAI,CAAC;QAClF,IAAI,SAAS,GAAY,IAAI,CAAC;QAC9B,IAAI,CAAC;YACJ,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE;gBAC1C,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,OAAO,EAAE,SAAS;aAClB,CAAC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,SAAS,GAAG,GAAG,CAAC;YAChB,MAAM,cAAc,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,WAAW,CAAC,YAAY,CAAC;YACnE,IAAI,cAAc,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;gBAC3C,6DAA6D;gBAC7D,4DAA4D;gBAC5D,0DAA0D;gBAC1D,EAAE;gBACF,6DAA6D;gBAC7D,4DAA4D;gBAC5D,2DAA2D;gBAC3D,6DAA6D;gBAC7D,4DAA4D;gBAC5D,uDAAuD;gBACvD,8DAA8D;gBAC9D,8DAA8D;gBAC9D,2DAA2D;gBAC3D,IAAI,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;gBACtF,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACxB,0DAA0D;gBAC1D,0DAA0D;gBAC1D,uDAAuD;gBACvD,4BAA4B;gBAC5B,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC9C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;gBAC/B,IAAI,CAAC;oBACJ,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE;wBAC1C,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;wBAChC,OAAO,EAAE,SAAS;qBAClB,CAAC,CAAC;oBACH,SAAS,GAAG,IAAI,CAAC;gBAClB,CAAC;gBAAC,OAAO,IAAI,EAAE,CAAC;oBACf,SAAS,GAAG,IAAI,CAAC;oBACjB,IAAI,CAAC,KAAK,CAAC,wCAAwC,EAAE,IAAI,CAAC,CAAC;gBAC5D,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,KAAK,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;YAC5C,CAAC;QACF,CAAC;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,gEAAgE;YAChE,8DAA8D;YAC9D,+BAA+B;YAC/B,MAAM,MAAM,GAAG,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAClF,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAC;gBACvD,CAAC,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,SAAS,kBAAkB,IAAI,CAAC,MAAM,CAAC,QAAQ,mGAAmG;gBAC5K,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,YAAY;oBAClC,CAAC,CAAC,yIAAyI;oBAC3I,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,SAAS;wBAC/B,CAAC,CAAC,wFAAwF;wBAC1F,CAAC,CAAC,mBAAmB,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC,sCAAsC,IAAI,EAAE,CAAC,CAAC;YAC3D,OAAO;QACR,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;QAChC,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC;QACtD,iEAAiE;QACjE,6DAA6D;QAC7D,gEAAgE;QAChE,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAC3D,wEAAwE;QACxE,kBAAkB,CAAC,OAAO,CAAC,gBAAgB,IAAI,IAAI,CAAC,CAAC;QACrD,8DAA8D;QAC9D,4DAA4D;QAC5D,+DAA+D;QAC/D,0DAA0D;QAC1D,4DAA4D;QAC5D,wDAAwD;QACxD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;gBAC7C,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;aAClB,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACP,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/C,CAAC;QACD,mEAAmE;QACnE,oDAAoD;QACpD,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjD,iEAAiE;QACjE,sEAAsE;QACtE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAClF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAClC,uEAAuE;QACvE,uEAAuE;QACvE,kDAAkD;QAClD,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC9D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE;YAC9B,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;YAC7B,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,IAAI,IAAI;YAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;YACjC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,IAAI;YACjC,IAAI,EAAE,OAAO,CAAC,IAAI;SAClB,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YACvD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjE,CAAC;QAED,2DAA2D;QAC3D,8DAA8D;QAC9D,8DAA8D;QAC9D,8DAA8D;QAC9D,2DAA2D;QAC3D,4BAA4B;QAC5B,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC7B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,KAAU,EAAE,EAAE;gBACvE,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,EAAE,OAAO,EAAE,EAAE,KAAK,IAAI,CAAC,OAAO,CAAC,EAAE;oBAAE,OAAO;gBACpE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC7B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC/C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBAChD,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC7B,IAAI,IAAI,CAAC,YAAY;oBAAE,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9C,CAAC,CAAC,CAAC;QACJ,CAAC;QAED,mEAAmE;QACnE,mEAAmE;QACnE,kEAAkE;QAClE,8DAA8D;QAC9D,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,KAAU,EAAE,EAAE;gBACrE,IAAI,CAAC,kBAAkB,GAAG,CAAC,KAAK,EAAE,KAAK,IAAI,IAAI,CAAkB,CAAC;YACnE,CAAC,CAAC,CAAC;QACJ,CAAC;QAED,+DAA+D;QAC/D,kCAAkC;QAClC,4DAA4D;QAC5D,+DAA+D;QAC/D,uCAAuC;QACvC,yBAAyB;QACzB,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;;;;;;OAWG;IACK,KAAK,CAAC,SAAS;QACtB,IAAI,IAAI,CAAC,YAAY;YAAE,OAAO;QAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAE/B,2DAA2D;QAC3D,4DAA4D;QAC5D,2DAA2D;QAC3D,SAAS;QACT,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE;YACtB,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChC,IAAI,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAE3B,gEAAgE;QAChE,uDAAuD;QACvD,uBAAuB;QACvB,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,YAAY,IAAI,IAAI,CAAC,EAAE,CAAC;YAC1E,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACpD,IAAI,CAAC;gBACJ,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAClC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,IAAI,CAAC,KAAK,CAAC,8BAA8B,EAAE,GAAG,CAAC,CAAC;gBAChD,gEAAgE;gBAChE,+DAA+D;gBAC/D,gEAAgE;gBAChE,iEAAiE;gBACjE,gEAAgE;gBAChE,mEAAmE;gBACnE,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,MAAM,WAAW,GAAG,6BAA6B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAChE,IAAI,CAAC,WAAW,EAAE,CAAC;oBAClB,IAAI,CAAC,MAAM,CACV,qFAAqF,EACrF,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CACnC,CAAC;gBACH,CAAC;YACF,CAAC;QACF,CAAC;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,gEAAgE;QAChE,2CAA2C;QAC3C,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,yEAAyE;QACzE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,GAAG,EAAO,EAAE,EAAE;YACnE,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAC5B,8DAA8D;YAC9D,mEAAmE;YACnE,qEAAqE;YACrE,mEAAmE;YACnE,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,kEAAkE;QAClE,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACnF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACnF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACnF,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;QAC3F,0DAA0D;QAC1D,6DAA6D;QAC7D,6DAA6D;QAC7D,oBAAoB;QACpB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,KAAU,EAAE,EAAE;YAClE,MAAM,GAAG,GAAgB,KAAK,EAAE,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;YAC3E,MAAM,OAAO,GACZ,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,kBAAkB,CAAC,IAAI;gBACzC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC;YAC9B,IAAI,OAAO;gBAAE,IAAI,CAAC,cAAc,EAAE,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,CAAC,IAAI,CACpB,SAAS,EACT,UAAU,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,WAAW,EACX,GAAG,EAAE;YACJ,IAAI,IAAI,CAAC,cAAc;gBAAE,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC5B,CAAC,CACD,CAAC;QAEF,8DAA8D;QAC9D,kEAAkE;QAClE,sEAAsE;QACtE,aAAa;QACb,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC1B,CAAC;IAED;qDACiD;IACzC,cAAc,GAAyC,IAAI,CAAC;IAC5D,iBAAiB;QACxB,IAAI,IAAI,CAAC,cAAc;YAAE,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3D,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;YACrC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,KAAK,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAClC,CAAC,EAAE,GAAG,CAAC,CAAC;IACT,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,oBAAoB;QACjC,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,YAAY,IAAI,IAAI,CAAC;YAAE,OAAO;QAC7D,MAAM,KAAK,GAAG,CAAC,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7E,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,KAAK,KAAK;YAAE,OAAO;QACjE,IAAI,CAAC;YACJ,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,KAAK,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;QACvC,CAAC;IACF,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,cAAc;QAC3B,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO;QAC/B,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,WAAW;YAAE,GAAG,EAAE,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO;QACZ,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,gBAAgB;QAC7B,mEAAmE;QACnE,qEAAqE;QACrE,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QACvD,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACxB,CAAC;aAAM,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7B,CAAC;IACF,CAAC;IAED,KAAK,CAAC,IAAI;QACT,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC/B,CAAC;QACD,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC9B,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC7D,QAAQ,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YACjE,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC9B,CAAC;QACD,0DAA0D;QAC1D,+DAA+D;QAC/D,2DAA2D;QAC3D,kBAAkB;QAClB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7B,CAAC;IACF,CAAC;IAED,cAAc;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED,yEAAyE;IACzE,UAAU;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,yEAAyE;IACzE,cAAc;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED,uEAAuE;IACvE,cAAc;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,UAAU,CAAC,KAAoB;QACpC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,CAAC;YACJ,IAAI,KAAK;gBAAE,YAAY,CAAC,OAAO,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;;gBACrD,YAAY,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACR,6DAA6D;QAC9D,CAAC;QACD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;IAC1B,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,WAAW;QACxB,IAAI,CAAC;YACJ,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE;gBAChD,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;aAC/B,CAAC,CAAC;YACH,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;YAC/B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YAChC,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC;YACtD,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAC3D,kBAAkB,CAAC,OAAO,CAAC,gBAAgB,IAAI,IAAI,CAAC,CAAC;YACrD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;oBAC7C,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;iBAClB,CAAC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACP,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC/C,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACvD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACvC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjE,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YAClF,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,IAAI,CAAC,cAAc,EAAE,CAAC;YACvB,CAAC;QACF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,KAAK,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;YACtC,uDAAuD;YACvD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACnF,CAAC;IACF,CAAC;IAED;;;;;;OAMG;IACK,SAAS,GAAG,GAAS,EAAE;QAC9B,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS;YAAE,OAAO;QACtF,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO,CAAC,oCAAoC;QACnE,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,GAAG,2BAA2B;YAAE,OAAO;QAC5E,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;IACzB,CAAC,CAAC;IAEF,+EAA+E;IAC/E,KAAK,CAAC,mBAAmB,CAAC,KAAc;QACvC,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAClD,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;YAC1B,UAAU,EAAE,MAAM;YAClB,iFAAiF;YACjF,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;YACzB,GAAG;YACH,KAAK,EAAE,KAAK,IAAI,QAAQ,CAAC,KAAK;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5C,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,oBAAoB;IAEZ,KAAK,CAAC,WAAW,CAAC,GAAW;QACpC,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,+CAA+C;QAC/C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;YAC1B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC/D,IAAI,cAAc;gBAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;YACnE,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QACvB,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QACrF,oEAAoE;QACpE,iEAAiE;QACjE,kEAAkE;QAClE,iEAAiE;QACjE,gBAAgB;QAChB,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,KAAK,UAAU,EAAE,CAAC;YAC5D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,OAAO;QACR,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC/B,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,GAAG,IAAe;QAC/B,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;;;OAOG;IACK,YAAY,CAAC,EAAc;QAClC,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,OAAO;QAC1C,MAAM,GAAG,GAAI,MAEX,CAAC,mBAAmB,CAAC;QACvB,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;YAC/B,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3B,OAAO;QACR,CAAC;QACD,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACpB,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,iBAAiB;QACxB,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,OAAO;QAC1C,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACvC,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAChC,4DAA4D;QAC5D,8DAA8D;QAC9D,4DAA4D;QAC5D,4DAA4D;QAC5D,8DAA8D;QAC9D,4CAA4C;QAC5C,IAAI,CAAC;YACJ,IAAI,OAAO;gBAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;;gBAC1D,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC;QACpD,CAAC;QACD,6DAA6D;QAC7D,IAAI,CAAC;YACJ,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC5B,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,GACvC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAC/C,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC1B,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;QAAC,MAAM,CAAC;YACR,6DAA6D;QAC9D,CAAC;IACF,CAAC;IAED;;;;;;;;OAQG;IACH,YAAY,CAAC,SAAiB,EAAE,OAAgB;QAC/C,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAChC,IAAI,CAAC;YACJ,IAAI,OAAO;gBAAE,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;;gBAC1D,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;QACzC,CAAC;IACF,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,aAAa,CAAC,KAMpB;QACA,MAAM,OAAO,GACZ,KAAK,CAAC,GAAG;YACT,CAAC,OAAO,MAAM,KAAK,WAAW;gBAC7B,CAAC,CAAC,CAAC,GAAG,EAAE;oBACN,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;gBAC5E,CAAC,CAAC,EAAE;gBACL,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1B,gEAAgE;QAChE,qDAAqD;QACrD,MAAM,IAAI,GACT,OAAO,MAAM,KAAK,WAAW;YAC5B,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC;YAClB,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACrD,IAAI,KAAK,CAAC,OAAO;YAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;;YAC/D,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAEO,kBAAkB;QACzB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,qEAAqE;QACrE,8CAA8C;QAC9C,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,KAAK,IAAI,CAAC,KAAK,CAAC,WAAW,CAC1B,IAAI,CAAC,WAAW,CAAC,EAAE,EACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CACvC,CAAC;QACH,CAAC;IACF,CAAC;IAEO,cAAc;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;YAC3B,IAAI,EAAE,IAAI,CAAC,WAAW;YACtB,QAAQ,EAAE,IAAI;YACd,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;SAC3C,CAAC,CAAC;IACJ,CAAC;IAEO,cAAc;QACrB,MAAM,IAAI,GAAc,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACxF,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAClC,mEAAmE;QACnE,mEAAmE;QACnE,kEAAkE;QAClE,mEAAmE;QACnE,mEAAmE;QACnE,oEAAoE;QACpE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CACxB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAC3D,CAAC,CACD,CAAC;QACF,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,aAAa;QACZ,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC;IACjC,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,iBAAiB;QAChB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,EAAE,CAAC;IACvB,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,MAAe,EAAE,WAAoB;QACrD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CACL,OAAe,EACf,IAAmE;QAEnE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE;YAC3B,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,MAAM;YAC1B,OAAO;YACP,QAAQ,EAAE,IAAI,EAAE,UAAU;SAC1B,CAAC,CAAC;IACJ,CAAC;CACD"}
|
package/dist/index.d.ts
CHANGED
|
@@ -15,6 +15,7 @@ export type { UIRenderer, UIRendererDeps, ToolbarHandle, SidebarHandle, SidebarS
|
|
|
15
15
|
export { resolveInitialToken, SESSION_TOKEN_KEY, } from './auth/resolveInitialToken.js';
|
|
16
16
|
export { BrowserNotifications } from './notifications/BrowserNotifications.js';
|
|
17
17
|
export { safeStorage } from './safeStorage.js';
|
|
18
|
+
export { SETTINGS_CACHE_PREFIX, PROJECT_CACHE_PREFIX, USER_SESSION_CACHE_PREFIX, ORG_NAME_KEY, } from './storageKeys.js';
|
|
18
19
|
export { resolveAnchor, serializeRange, serializeElement } from '@pageloop/anchor';
|
|
19
20
|
export type { Comment, Anchor, TrackedPage, Project, Reaction, ReactionTargetKind, } from '@pageloop/shared';
|
|
20
21
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,QAAQ,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACN,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,GACzB,MAAM,eAAe,CAAC;AACvB,YAAY,EACX,UAAU,EACV,cAAc,EACd,aAAa,EACb,aAAa,EACb,YAAY,EACZ,qBAAqB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,mBAAmB,EACnB,iBAAiB,GACjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACnF,YAAY,EACX,OAAO,EACP,MAAM,EACN,WAAW,EACX,OAAO,EACP,QAAQ,EACR,kBAAkB,GAClB,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,QAAQ,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACN,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,GACzB,MAAM,eAAe,CAAC;AACvB,YAAY,EACX,UAAU,EACV,cAAc,EACd,aAAa,EACb,aAAa,EACb,YAAY,EACZ,qBAAqB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,mBAAmB,EACnB,iBAAiB,GACjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACN,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,YAAY,GACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACnF,YAAY,EACX,OAAO,EACP,MAAM,EACN,WAAW,EACX,OAAO,EACP,QAAQ,EACR,kBAAkB,GAClB,MAAM,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -14,5 +14,6 @@ export { EventBus, } from './EventBus.js';
|
|
|
14
14
|
export { resolveInitialToken, SESSION_TOKEN_KEY, } from './auth/resolveInitialToken.js';
|
|
15
15
|
export { BrowserNotifications } from './notifications/BrowserNotifications.js';
|
|
16
16
|
export { safeStorage } from './safeStorage.js';
|
|
17
|
+
export { SETTINGS_CACHE_PREFIX, PROJECT_CACHE_PREFIX, USER_SESSION_CACHE_PREFIX, ORG_NAME_KEY, } from './storageKeys.js';
|
|
17
18
|
export { resolveAnchor, serializeRange, serializeElement } from '@pageloop/anchor';
|
|
18
19
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,QAAQ,EAA0C,MAAM,eAAe,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACN,QAAQ,GAIR,MAAM,eAAe,CAAC;AASvB,OAAO,EACN,mBAAmB,EACnB,iBAAiB,GACjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,QAAQ,EAA0C,MAAM,eAAe,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACN,QAAQ,GAIR,MAAM,eAAe,CAAC;AASvB,OAAO,EACN,mBAAmB,EACnB,iBAAiB,GACjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACN,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,YAAY,GACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Optimistic-paint `localStorage` cache for the widget. Lets a cold load
|
|
3
|
+
* render the toolbar / sidebar / signed-in pill in their final state from
|
|
4
|
+
* cached `ProjectSettings` / `Project` / user-session blobs *before* the
|
|
5
|
+
* bootstrap round-trip returns, then reconcile against the server.
|
|
6
|
+
*
|
|
7
|
+
* Extracted from `PageLoop` so that class stays focused on the bootstrap →
|
|
8
|
+
* mount → subscribe lifecycle; this module owns the serialize / validate /
|
|
9
|
+
* key-management concern. All keys come from `./storageKeys`.
|
|
10
|
+
*
|
|
11
|
+
* `safeStorage` swallows private-mode / SecurityError throws (falling back to
|
|
12
|
+
* an in-memory map), so the `try/catch` blocks here guard only `JSON.parse`
|
|
13
|
+
* of a malformed or truncated blob — a bad cache returns null and the caller
|
|
14
|
+
* falls back to the slow-path mount-after-bootstrap.
|
|
15
|
+
*/
|
|
16
|
+
import type { Project, ProjectSettings, User } from '@pageloop/shared';
|
|
17
|
+
export declare function readCachedSettings(projectId: string): ProjectSettings | null;
|
|
18
|
+
export declare function writeCachedSettings(projectId: string, settings: ProjectSettings): void;
|
|
19
|
+
/**
|
|
20
|
+
* Cache the full Project object so the renderer can mount on first paint
|
|
21
|
+
* without waiting for the bootstrap round-trip. Validated on read — a partial
|
|
22
|
+
* / malformed cache returns null so we fall back to the slow-path
|
|
23
|
+
* mount-after-bootstrap.
|
|
24
|
+
*
|
|
25
|
+
* Separate from the settings cache because settings get reconciled key-by-key
|
|
26
|
+
* (and emit `config:changed` for hot reload), whereas the Project object is a
|
|
27
|
+
* static identity blob — name, slug, ids — that the renderer reads through
|
|
28
|
+
* the `project()` getter.
|
|
29
|
+
*/
|
|
30
|
+
export declare function readCachedProject(projectId: string): Project | null;
|
|
31
|
+
export declare function writeCachedProject(projectId: string, project: Project): void;
|
|
32
|
+
/** Persist (or clear) the domain-global org name from a bootstrap result. */
|
|
33
|
+
export declare function writeCachedOrgName(name: string | null): void;
|
|
34
|
+
/**
|
|
35
|
+
* Cache the user identity + role so the toolbar can paint the signed-in pill
|
|
36
|
+
* on first frame, before bootstrap returns. Mirrors the project/settings cache
|
|
37
|
+
* pattern — instant render from cached state, revalidate against the server,
|
|
38
|
+
* reconcile if anything moved. Without this, every refresh briefly flashes
|
|
39
|
+
* "Sign in" on the toolbar while bootstrap is in flight.
|
|
40
|
+
*
|
|
41
|
+
* The cache is **only trusted when a session token is also in localStorage**.
|
|
42
|
+
* If the user signed out (token gone), the caller ignores the cache and starts
|
|
43
|
+
* anonymous — even a stale cache can't resurrect a deliberately-cleared
|
|
44
|
+
* session.
|
|
45
|
+
*
|
|
46
|
+
* Per-project because role is project-scoped (a user can be `owner` on one
|
|
47
|
+
* project, `commenter` on another). The user identity blob is shared across
|
|
48
|
+
* projects in practice, but keying both together keeps the cache shape simple.
|
|
49
|
+
*/
|
|
50
|
+
export interface CachedUserSession {
|
|
51
|
+
user: User | null;
|
|
52
|
+
role: 'owner' | 'editor' | 'commenter' | 'viewer' | 'anonymous';
|
|
53
|
+
}
|
|
54
|
+
export declare function readCachedUserSession(projectId: string): CachedUserSession | null;
|
|
55
|
+
export declare function writeCachedUserSession(projectId: string, value: CachedUserSession): void;
|
|
56
|
+
export declare function clearCachedUserSession(projectId: string): void;
|
|
57
|
+
//# sourceMappingURL=paintCache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paintCache.d.ts","sourceRoot":"","sources":["../src/paintCache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AASvE,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAQ5E;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,CAEtF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAanE;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAE5E;AAED,6EAA6E;AAC7E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAG5D;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;CAChE;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAajF;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAExF;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAE9D"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { safeStorage } from './safeStorage.js';
|
|
2
|
+
import { SETTINGS_CACHE_PREFIX, PROJECT_CACHE_PREFIX, USER_SESSION_CACHE_PREFIX, ORG_NAME_KEY, } from './storageKeys.js';
|
|
3
|
+
export function readCachedSettings(projectId) {
|
|
4
|
+
const raw = safeStorage.getItem(SETTINGS_CACHE_PREFIX + projectId);
|
|
5
|
+
if (!raw)
|
|
6
|
+
return null;
|
|
7
|
+
try {
|
|
8
|
+
return JSON.parse(raw);
|
|
9
|
+
}
|
|
10
|
+
catch {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
export function writeCachedSettings(projectId, settings) {
|
|
15
|
+
safeStorage.setItem(SETTINGS_CACHE_PREFIX + projectId, JSON.stringify(settings));
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Cache the full Project object so the renderer can mount on first paint
|
|
19
|
+
* without waiting for the bootstrap round-trip. Validated on read — a partial
|
|
20
|
+
* / malformed cache returns null so we fall back to the slow-path
|
|
21
|
+
* mount-after-bootstrap.
|
|
22
|
+
*
|
|
23
|
+
* Separate from the settings cache because settings get reconciled key-by-key
|
|
24
|
+
* (and emit `config:changed` for hot reload), whereas the Project object is a
|
|
25
|
+
* static identity blob — name, slug, ids — that the renderer reads through
|
|
26
|
+
* the `project()` getter.
|
|
27
|
+
*/
|
|
28
|
+
export function readCachedProject(projectId) {
|
|
29
|
+
const raw = safeStorage.getItem(PROJECT_CACHE_PREFIX + projectId);
|
|
30
|
+
if (!raw)
|
|
31
|
+
return null;
|
|
32
|
+
try {
|
|
33
|
+
const parsed = JSON.parse(raw);
|
|
34
|
+
// Defensive: a malformed cache (truncated, schema-drift) would crash the
|
|
35
|
+
// renderer's getters on optimistic paint. Require the minimum keys the
|
|
36
|
+
// mount path reads before trusting it.
|
|
37
|
+
if (!parsed.id || !parsed.slug)
|
|
38
|
+
return null;
|
|
39
|
+
return parsed;
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
export function writeCachedProject(projectId, project) {
|
|
46
|
+
safeStorage.setItem(PROJECT_CACHE_PREFIX + projectId, JSON.stringify(project));
|
|
47
|
+
}
|
|
48
|
+
/** Persist (or clear) the domain-global org name from a bootstrap result. */
|
|
49
|
+
export function writeCachedOrgName(name) {
|
|
50
|
+
if (name)
|
|
51
|
+
safeStorage.setItem(ORG_NAME_KEY, name);
|
|
52
|
+
else
|
|
53
|
+
safeStorage.removeItem(ORG_NAME_KEY);
|
|
54
|
+
}
|
|
55
|
+
export function readCachedUserSession(projectId) {
|
|
56
|
+
const raw = safeStorage.getItem(USER_SESSION_CACHE_PREFIX + projectId);
|
|
57
|
+
if (!raw)
|
|
58
|
+
return null;
|
|
59
|
+
try {
|
|
60
|
+
const parsed = JSON.parse(raw);
|
|
61
|
+
// Defensive: require the role to be set; a malformed blob (truncated
|
|
62
|
+
// JSON, schema drift) returns null so the constructor falls back to the
|
|
63
|
+
// anonymous default rather than rendering with garbage.
|
|
64
|
+
if (!parsed || typeof parsed.role !== 'string')
|
|
65
|
+
return null;
|
|
66
|
+
return parsed;
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
export function writeCachedUserSession(projectId, value) {
|
|
73
|
+
safeStorage.setItem(USER_SESSION_CACHE_PREFIX + projectId, JSON.stringify(value));
|
|
74
|
+
}
|
|
75
|
+
export function clearCachedUserSession(projectId) {
|
|
76
|
+
safeStorage.removeItem(USER_SESSION_CACHE_PREFIX + projectId);
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=paintCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paintCache.js","sourceRoot":"","sources":["../src/paintCache.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACN,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,YAAY,GACZ,MAAM,kBAAkB,CAAC;AAE1B,MAAM,UAAU,kBAAkB,CAAC,SAAiB;IACnD,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAAC;IACnE,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,CAAC;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,SAAiB,EAAE,QAAyB;IAC/E,WAAW,CAAC,OAAO,CAAC,qBAAqB,GAAG,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;AAClF,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAAC,SAAiB;IAClD,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAAC;IAClE,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;QAC1C,yEAAyE;QACzE,uEAAuE;QACvE,uCAAuC;QACvC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QAC5C,OAAO,MAAM,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,SAAiB,EAAE,OAAgB;IACrE,WAAW,CAAC,OAAO,CAAC,oBAAoB,GAAG,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,kBAAkB,CAAC,IAAmB;IACrD,IAAI,IAAI;QAAE,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;;QAC7C,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AAC3C,CAAC;AAuBD,MAAM,UAAU,qBAAqB,CAAC,SAAiB;IACtD,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC,CAAC;IACvE,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAsB,CAAC;QACpD,qEAAqE;QACrE,wEAAwE;QACxE,wDAAwD;QACxD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC5D,OAAO,MAAM,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,SAAiB,EAAE,KAAwB;IACjF,WAAW,CAAC,OAAO,CAAC,yBAAyB,GAAG,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,SAAiB;IACvD,WAAW,CAAC,UAAU,CAAC,yBAAyB,GAAG,SAAS,CAAC,CAAC;AAC/D,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client-side `localStorage` key registry. Centralised here so the write side
|
|
3
|
+
* (`PageLoop` core) and the read/cleanup sides (the vanilla widget's
|
|
4
|
+
* `AuthFlow` / `AuthModal`) reference one source of truth — a key rename lands
|
|
5
|
+
* once instead of silently desyncing sign-out cleanup or the org-name label.
|
|
6
|
+
*
|
|
7
|
+
* These are CLIENT-ONLY keys; they live in `@pageloop/client` (not
|
|
8
|
+
* `@pageloop/shared`) so the isomorphic boundary stays clean. Re-exported from
|
|
9
|
+
* the package index so the widget bundle can import them by name.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Per-`projectId` cache of the server `ProjectSettings` blob — read
|
|
13
|
+
* synchronously on init so the toolbar + sidebar paint in their final position
|
|
14
|
+
* before the bootstrap round-trip returns.
|
|
15
|
+
*/
|
|
16
|
+
export declare const SETTINGS_CACHE_PREFIX = "pl_config:";
|
|
17
|
+
/** Per-`projectId` cache of the `Project` blob (optimistic cold-load paint). */
|
|
18
|
+
export declare const PROJECT_CACHE_PREFIX = "pl_project:";
|
|
19
|
+
/**
|
|
20
|
+
* Per-`projectId` cache of the signed-in user + role — paints the toolbar
|
|
21
|
+
* pill on the first frame; the widget's sign-out flow clears every entry under
|
|
22
|
+
* this prefix.
|
|
23
|
+
*/
|
|
24
|
+
export declare const USER_SESSION_CACHE_PREFIX = "pl_widget_user:";
|
|
25
|
+
/**
|
|
26
|
+
* Domain-global org-name cache — intentionally NOT keyed by projectId. The org
|
|
27
|
+
* name is shown on the shared sign-in / create-account modal and (per design)
|
|
28
|
+
* is the same for every PageLoop widget on a domain, so one value is read by
|
|
29
|
+
* all surfaces and the most recent bootstrap wins. Written by `PageLoop` on
|
|
30
|
+
* bootstrap, read back by the widget `AuthModal`.
|
|
31
|
+
*/
|
|
32
|
+
export declare const ORG_NAME_KEY = "pl_org_name";
|
|
33
|
+
//# sourceMappingURL=storageKeys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storageKeys.d.ts","sourceRoot":"","sources":["../src/storageKeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAElD,gFAAgF;AAChF,eAAO,MAAM,oBAAoB,gBAAgB,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,oBAAoB,CAAC;AAE3D;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client-side `localStorage` key registry. Centralised here so the write side
|
|
3
|
+
* (`PageLoop` core) and the read/cleanup sides (the vanilla widget's
|
|
4
|
+
* `AuthFlow` / `AuthModal`) reference one source of truth — a key rename lands
|
|
5
|
+
* once instead of silently desyncing sign-out cleanup or the org-name label.
|
|
6
|
+
*
|
|
7
|
+
* These are CLIENT-ONLY keys; they live in `@pageloop/client` (not
|
|
8
|
+
* `@pageloop/shared`) so the isomorphic boundary stays clean. Re-exported from
|
|
9
|
+
* the package index so the widget bundle can import them by name.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Per-`projectId` cache of the server `ProjectSettings` blob — read
|
|
13
|
+
* synchronously on init so the toolbar + sidebar paint in their final position
|
|
14
|
+
* before the bootstrap round-trip returns.
|
|
15
|
+
*/
|
|
16
|
+
export const SETTINGS_CACHE_PREFIX = 'pl_config:';
|
|
17
|
+
/** Per-`projectId` cache of the `Project` blob (optimistic cold-load paint). */
|
|
18
|
+
export const PROJECT_CACHE_PREFIX = 'pl_project:';
|
|
19
|
+
/**
|
|
20
|
+
* Per-`projectId` cache of the signed-in user + role — paints the toolbar
|
|
21
|
+
* pill on the first frame; the widget's sign-out flow clears every entry under
|
|
22
|
+
* this prefix.
|
|
23
|
+
*/
|
|
24
|
+
export const USER_SESSION_CACHE_PREFIX = 'pl_widget_user:';
|
|
25
|
+
/**
|
|
26
|
+
* Domain-global org-name cache — intentionally NOT keyed by projectId. The org
|
|
27
|
+
* name is shown on the shared sign-in / create-account modal and (per design)
|
|
28
|
+
* is the same for every PageLoop widget on a domain, so one value is read by
|
|
29
|
+
* all surfaces and the most recent bootstrap wins. Written by `PageLoop` on
|
|
30
|
+
* bootstrap, read back by the widget `AuthModal`.
|
|
31
|
+
*/
|
|
32
|
+
export const ORG_NAME_KEY = 'pl_org_name';
|
|
33
|
+
//# sourceMappingURL=storageKeys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storageKeys.js","sourceRoot":"","sources":["../src/storageKeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,YAAY,CAAC;AAElD,gFAAgF;AAChF,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,iBAAiB,CAAC;AAE3D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pageloop/client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -32,8 +32,8 @@
|
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"idb": "^8.0.1",
|
|
35
|
-
"@pageloop/anchor": "0.
|
|
36
|
-
"@pageloop/shared": "0.
|
|
35
|
+
"@pageloop/anchor": "0.6.1",
|
|
36
|
+
"@pageloop/shared": "0.6.1"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
39
|
"react": ">=18",
|