@actuate-media/cms-admin 0.16.1 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/__tests__/lib/page-editor-service-api.test.d.ts +2 -0
- package/dist/__tests__/lib/page-editor-service-api.test.d.ts.map +1 -0
- package/dist/__tests__/lib/page-editor-service-api.test.js +155 -0
- package/dist/__tests__/lib/page-editor-service-api.test.js.map +1 -0
- package/dist/__tests__/lib/pages-service-fetch.test.d.ts +2 -0
- package/dist/__tests__/lib/pages-service-fetch.test.d.ts.map +1 -0
- package/dist/__tests__/lib/pages-service-fetch.test.js +125 -0
- package/dist/__tests__/lib/pages-service-fetch.test.js.map +1 -0
- package/dist/__tests__/lib/useApiData.test.js +28 -1
- package/dist/__tests__/lib/useApiData.test.js.map +1 -1
- package/dist/__tests__/views/page-section-editor.test.d.ts +2 -0
- package/dist/__tests__/views/page-section-editor.test.d.ts.map +1 -0
- package/dist/__tests__/views/page-section-editor.test.js +56 -0
- package/dist/__tests__/views/page-section-editor.test.js.map +1 -0
- package/dist/__tests__/views/pages-list-view.test.d.ts +2 -0
- package/dist/__tests__/views/pages-list-view.test.d.ts.map +1 -0
- package/dist/__tests__/views/pages-list-view.test.js +102 -0
- package/dist/__tests__/views/pages-list-view.test.js.map +1 -0
- package/dist/actuate-admin.css +1 -1
- package/dist/lib/page-editor-service.d.ts +1 -0
- package/dist/lib/page-editor-service.d.ts.map +1 -1
- package/dist/lib/page-editor-service.js +55 -0
- package/dist/lib/page-editor-service.js.map +1 -1
- package/dist/lib/pages-service.d.ts +26 -0
- package/dist/lib/pages-service.d.ts.map +1 -1
- package/dist/lib/pages-service.js +65 -38
- package/dist/lib/pages-service.js.map +1 -1
- package/dist/lib/useApiData.d.ts +11 -0
- package/dist/lib/useApiData.d.ts.map +1 -1
- package/dist/lib/useApiData.js +41 -7
- package/dist/lib/useApiData.js.map +1 -1
- package/dist/views/Dashboard.d.ts.map +1 -1
- package/dist/views/Dashboard.js +54 -48
- package/dist/views/Dashboard.js.map +1 -1
- package/dist/views/Pages/PagesListView.d.ts.map +1 -1
- package/dist/views/Pages/PagesListView.js +71 -46
- package/dist/views/Pages/PagesListView.js.map +1 -1
- package/dist/views/page-editor/PagePreview.d.ts.map +1 -1
- package/dist/views/page-editor/PagePreview.js +10 -1
- package/dist/views/page-editor/PagePreview.js.map +1 -1
- package/dist/views/page-editor/PageSectionEditor.d.ts.map +1 -1
- package/dist/views/page-editor/PageSectionEditor.js +22 -2
- package/dist/views/page-editor/PageSectionEditor.js.map +1 -1
- package/package.json +2 -2
- package/src/__tests__/lib/page-editor-service-api.test.ts +180 -0
- package/src/__tests__/lib/pages-service-fetch.test.ts +160 -0
- package/src/__tests__/lib/useApiData.test.ts +36 -1
- package/src/__tests__/views/page-section-editor.test.tsx +65 -0
- package/src/__tests__/views/pages-list-view.test.tsx +119 -0
- package/src/lib/page-editor-service.ts +61 -0
- package/src/lib/pages-service.ts +88 -35
- package/src/lib/useApiData.ts +52 -7
- package/src/styles/theme.css +37 -0
- package/src/views/Dashboard.tsx +77 -61
- package/src/views/Pages/PagesListView.tsx +113 -82
- package/src/views/page-editor/PagePreview.tsx +10 -1
- package/src/views/page-editor/PageSectionEditor.tsx +25 -1
|
@@ -57,12 +57,26 @@ export interface PagesQuery {
|
|
|
57
57
|
}
|
|
58
58
|
export interface PagesResult {
|
|
59
59
|
pages: Page[];
|
|
60
|
+
/** number of pages matching the active query (post-filter) */
|
|
60
61
|
total: number;
|
|
62
|
+
/** total pages in the collection, ignoring the active query/filters */
|
|
63
|
+
grandTotal: number;
|
|
61
64
|
page: number;
|
|
62
65
|
pageSize: number;
|
|
63
66
|
tags: PageTag[];
|
|
64
67
|
authors: PageAuthor[];
|
|
65
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* The full, unfiltered page set plus its tags and authors. The list view
|
|
71
|
+
* fetches this once and applies search / sort / group / paging in memory
|
|
72
|
+
* (see `applyPagesQuery` + `groupPages`), so typing in the search box or
|
|
73
|
+
* changing the sort never re-downloads the dataset.
|
|
74
|
+
*/
|
|
75
|
+
export interface PagesDataset {
|
|
76
|
+
pages: Page[];
|
|
77
|
+
tags: PageTag[];
|
|
78
|
+
authors: PageAuthor[];
|
|
79
|
+
}
|
|
66
80
|
/**
|
|
67
81
|
* Fetch all tags. `pageCounts` (slug → count) is optional so the tag
|
|
68
82
|
* manager / pickers can render before page data is loaded.
|
|
@@ -86,6 +100,18 @@ export interface PageGroup {
|
|
|
86
100
|
* or "Untagged"). Returns a single "All pages" group for `none`.
|
|
87
101
|
*/
|
|
88
102
|
export declare function groupPages(pages: Page[], groupBy: PageGroupBy, tags: PageTag[]): PageGroup[];
|
|
103
|
+
/**
|
|
104
|
+
* Fetch the entire page dataset (unfiltered) plus tags and authors. This
|
|
105
|
+
* is the single network read backing the list view; callers apply query
|
|
106
|
+
* shaping in memory. Tag page counts and the author list are derived from
|
|
107
|
+
* the full set so they reflect the dataset, not any active filter.
|
|
108
|
+
*/
|
|
109
|
+
export declare function fetchPagesDataset(): Promise<PagesDataset>;
|
|
110
|
+
/**
|
|
111
|
+
* Query a paginated, filtered page list. Retained for non-list callers
|
|
112
|
+
* (tag detach/merge) and tests; the list view uses `fetchPagesDataset`
|
|
113
|
+
* directly and shapes the result in memory.
|
|
114
|
+
*/
|
|
89
115
|
export declare function fetchPages(query?: PagesQuery): Promise<PagesResult>;
|
|
90
116
|
export declare function fetchPageById(pageId: string): Promise<Page | null>;
|
|
91
117
|
export interface BulkResult {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pages-service.d.ts","sourceRoot":"","sources":["../../src/lib/pages-service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"pages-service.d.ts","sourceRoot":"","sources":["../../src/lib/pages-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -249,15 +249,19 @@ export function groupPages(pages, groupBy, tags) {
|
|
|
249
249
|
function statusLabel(s) {
|
|
250
250
|
return s.charAt(0) + s.slice(1).toLowerCase();
|
|
251
251
|
}
|
|
252
|
-
|
|
252
|
+
/**
|
|
253
|
+
* Fetch the entire page dataset (unfiltered) plus tags and authors. This
|
|
254
|
+
* is the single network read backing the list view; callers apply query
|
|
255
|
+
* shaping in memory. Tag page counts and the author list are derived from
|
|
256
|
+
* the full set so they reflect the dataset, not any active filter.
|
|
257
|
+
*/
|
|
258
|
+
export async function fetchPagesDataset() {
|
|
253
259
|
const authorsMap = await fetchAuthorsMap();
|
|
254
260
|
const [pagesRes, tagDocs] = await Promise.all([
|
|
255
261
|
cmsApi(`/collections/${PAGES_COLLECTION}?pageSize=500&sort=updatedAt&order=desc`),
|
|
256
262
|
fetchTagDocs(),
|
|
257
263
|
]);
|
|
258
264
|
const allPages = (pagesRes.data?.docs ?? []).map((d) => docToPage(d, authorsMap));
|
|
259
|
-
// Tag page counts come from the full (unfiltered) set so chips and the
|
|
260
|
-
// tag manager reflect the dataset, not the active query.
|
|
261
265
|
const counts = new Map();
|
|
262
266
|
for (const p of allPages) {
|
|
263
267
|
for (const slug of p.tags)
|
|
@@ -266,14 +270,6 @@ export async function fetchPages(query = {}) {
|
|
|
266
270
|
const tags = tagDocs
|
|
267
271
|
.map((d) => docToTag(d, counts.get(d.slug ?? d.id) ?? 0))
|
|
268
272
|
.sort((a, b) => a.sortOrder - b.sortOrder || a.name.localeCompare(b.name));
|
|
269
|
-
const filtered = applyPagesQuery(allPages, query);
|
|
270
|
-
// Pagination only applies to the flat (ungrouped) view; grouped views
|
|
271
|
-
// render every match so the buckets stay complete.
|
|
272
|
-
const grouped = query.groupBy && query.groupBy !== 'none';
|
|
273
|
-
const page = Math.max(1, query.page ?? 1);
|
|
274
|
-
const pageSize = Math.max(1, query.pageSize ?? 25);
|
|
275
|
-
const paged = grouped ? filtered : filtered.slice((page - 1) * pageSize, page * pageSize);
|
|
276
|
-
// Authors present in the dataset (for the Author filter dropdown).
|
|
277
273
|
const seen = new Set();
|
|
278
274
|
const authors = [];
|
|
279
275
|
for (const p of allPages) {
|
|
@@ -283,7 +279,31 @@ export async function fetchPages(query = {}) {
|
|
|
283
279
|
}
|
|
284
280
|
}
|
|
285
281
|
authors.sort((a, b) => a.name.localeCompare(b.name));
|
|
286
|
-
return { pages:
|
|
282
|
+
return { pages: allPages, tags, authors };
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Query a paginated, filtered page list. Retained for non-list callers
|
|
286
|
+
* (tag detach/merge) and tests; the list view uses `fetchPagesDataset`
|
|
287
|
+
* directly and shapes the result in memory.
|
|
288
|
+
*/
|
|
289
|
+
export async function fetchPages(query = {}) {
|
|
290
|
+
const { pages: allPages, tags, authors } = await fetchPagesDataset();
|
|
291
|
+
const filtered = applyPagesQuery(allPages, query);
|
|
292
|
+
// Pagination only applies to the flat (ungrouped) view; grouped views
|
|
293
|
+
// render every match so the buckets stay complete.
|
|
294
|
+
const grouped = query.groupBy && query.groupBy !== 'none';
|
|
295
|
+
const page = Math.max(1, query.page ?? 1);
|
|
296
|
+
const pageSize = Math.max(1, query.pageSize ?? 25);
|
|
297
|
+
const paged = grouped ? filtered : filtered.slice((page - 1) * pageSize, page * pageSize);
|
|
298
|
+
return {
|
|
299
|
+
pages: paged,
|
|
300
|
+
total: filtered.length,
|
|
301
|
+
grandTotal: allPages.length,
|
|
302
|
+
page,
|
|
303
|
+
pageSize,
|
|
304
|
+
tags,
|
|
305
|
+
authors,
|
|
306
|
+
};
|
|
287
307
|
}
|
|
288
308
|
export async function fetchPageById(pageId) {
|
|
289
309
|
const res = await cmsApi(`/collections/${PAGES_COLLECTION}/${encodeURIComponent(pageId)}`);
|
|
@@ -292,34 +312,47 @@ export async function fetchPageById(pageId) {
|
|
|
292
312
|
const authors = await fetchAuthorsMap();
|
|
293
313
|
return docToPage(res.data, authors);
|
|
294
314
|
}
|
|
295
|
-
|
|
315
|
+
/**
|
|
316
|
+
* Run `task` over `items` with a bounded number of concurrent requests so
|
|
317
|
+
* a large selection doesn't fire one-at-a-time (slow) or all-at-once
|
|
318
|
+
* (overwhelms the API / rate limiter). Each task resolves to `true` on
|
|
319
|
+
* success; failures are counted, never thrown, so one bad row can't abort
|
|
320
|
+
* the batch.
|
|
321
|
+
*/
|
|
322
|
+
async function mapWithConcurrency(items, limit, task) {
|
|
296
323
|
let ok = 0;
|
|
297
324
|
let failed = 0;
|
|
298
|
-
|
|
325
|
+
let cursor = 0;
|
|
326
|
+
const workerCount = Math.max(1, Math.min(limit, items.length));
|
|
327
|
+
const worker = async () => {
|
|
328
|
+
while (cursor < items.length) {
|
|
329
|
+
const item = items[cursor++];
|
|
330
|
+
const success = await task(item).catch(() => false);
|
|
331
|
+
if (success)
|
|
332
|
+
ok++;
|
|
333
|
+
else
|
|
334
|
+
failed++;
|
|
335
|
+
}
|
|
336
|
+
};
|
|
337
|
+
await Promise.all(Array.from({ length: workerCount }, worker));
|
|
338
|
+
return { ok, failed };
|
|
339
|
+
}
|
|
340
|
+
export async function bulkUpdatePages(ids, payload) {
|
|
341
|
+
return mapWithConcurrency(ids, 5, async (id) => {
|
|
299
342
|
const res = await cmsApi(`/collections/${PAGES_COLLECTION}/${encodeURIComponent(id)}`, {
|
|
300
343
|
method: 'PUT',
|
|
301
344
|
body: JSON.stringify(payload),
|
|
302
345
|
});
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
else
|
|
306
|
-
ok++;
|
|
307
|
-
}
|
|
308
|
-
return { ok, failed };
|
|
346
|
+
return !res.error;
|
|
347
|
+
});
|
|
309
348
|
}
|
|
310
349
|
export async function bulkDeletePages(ids) {
|
|
311
|
-
|
|
312
|
-
let failed = 0;
|
|
313
|
-
for (const id of ids) {
|
|
350
|
+
return mapWithConcurrency(ids, 5, async (id) => {
|
|
314
351
|
const res = await cmsApi(`/collections/${PAGES_COLLECTION}/${encodeURIComponent(id)}`, {
|
|
315
352
|
method: 'DELETE',
|
|
316
353
|
});
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
else
|
|
320
|
-
ok++;
|
|
321
|
-
}
|
|
322
|
-
return { ok, failed };
|
|
354
|
+
return !res.error;
|
|
355
|
+
});
|
|
323
356
|
}
|
|
324
357
|
/**
|
|
325
358
|
* Add or remove tag slugs across many pages. We fetch each page's
|
|
@@ -328,11 +361,9 @@ export async function bulkDeletePages(ids) {
|
|
|
328
361
|
* yet). `primaryTag` is cleared if it was removed.
|
|
329
362
|
*/
|
|
330
363
|
export async function bulkChangePageTags(pages, change) {
|
|
331
|
-
let ok = 0;
|
|
332
|
-
let failed = 0;
|
|
333
364
|
const add = new Set(change.add ?? []);
|
|
334
365
|
const remove = new Set(change.remove ?? []);
|
|
335
|
-
|
|
366
|
+
return mapWithConcurrency(pages, 5, async (p) => {
|
|
336
367
|
const next = new Set(p.tags);
|
|
337
368
|
for (const t of add)
|
|
338
369
|
next.add(t);
|
|
@@ -344,12 +375,8 @@ export async function bulkChangePageTags(pages, change) {
|
|
|
344
375
|
method: 'PUT',
|
|
345
376
|
body: JSON.stringify({ data: { tags, primaryTag } }),
|
|
346
377
|
});
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
else
|
|
350
|
-
ok++;
|
|
351
|
-
}
|
|
352
|
-
return { ok, failed };
|
|
378
|
+
return !res.error;
|
|
379
|
+
});
|
|
353
380
|
}
|
|
354
381
|
function slugify(input) {
|
|
355
382
|
return input
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pages-service.js","sourceRoot":"","sources":["../../src/lib/pages-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAIjC,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAA;AACvC,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAA;AAkG/C,wEAAwE;AAExE,SAAS,gBAAgB,CAAC,IAA+B,EAAE,KAAa;IACtE,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACtC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACjC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACzE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;IACxE,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;AACxC,CAAC;AAED,KAAK,UAAU,eAAe;IAC5B,MAAM,GAAG,GAAG,MAAM,MAAM,CAAyC,qBAAqB,CAAC,CAAA;IACvF,MAAM,IAAI,GAAiB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;QAChD,CAAC,CAAC,GAAG,CAAC,IAAI;QACV,CAAC,CAAC,CAAE,GAAG,CAAC,IAAwC,EAAE,KAAK,IAAI,EAAE,CAAC,CAAA;IAChE,MAAM,GAAG,GAAG,IAAI,GAAG,EAAsB,CAAA;IACzC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACZ,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK;YAC/B,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC;SAC5C,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,QAAQ,CAAC,CAAU;IAC1B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AACzD,CAAC;AAED,SAAS,aAAa,CAAC,CAAU;IAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,CAAA;IAChC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AAC5E,CAAC;AAED,SAAS,eAAe,CAAC,IAAoC;IAC3D,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IACtB,KAAK,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,WAAW,CAAC,EAAE,CAAC;QACvD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,GAAG,CAAA;IACjE,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,eAAe,CAAC,CAAiB;IACxC,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,CAAC,WAAW;QAAE,OAAO,CAAC,CAAC,WAAW,CAAA;IACnE,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,CAAC,WAAW;QAAE,OAAO,CAAC,CAAC,WAAW,CAAA;IACnE,OAAO,CAAC,CAAC,SAAS,CAAA;AACpB,CAAC;AAED,wEAAwE;AAExE,SAAS,QAAQ,CAAC,CAAiB,EAAE,SAAiB;IACpD,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE,CAAA;IACzB,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE;QAClB,KAAK,EAAE,CAAC,CAAC,EAAE;QACX,IAAI,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,IAAI,gBAAgB;QAC3C,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE;QACpB,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;QACvC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QAC3B,SAAS;QACT,SAAS,EAAE,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAClE,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,KAAK;QAC7B,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,IAAI;QAC9B,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,IAAI;KAC/B,CAAA;AACH,CAAC;AAED,KAAK,UAAU,YAAY;IACzB,MAAM,GAAG,GAAG,MAAM,MAAM,CACtB,gBAAgB,oBAAoB,yCAAyC,CAC9E,CAAA;IACD,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAqB,CAAA;AACnD,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,UAAgC;IAClE,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAA;IACjC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC/E,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IAC9E,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,MAAM,GAAG,GAAG,MAAM,eAAe,EAAE,CAAA;IACnC,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AACvE,CAAC;AAED,wEAAwE;AAExE,SAAS,SAAS,CAAC,CAAiB,EAAE,OAAgC;IACpE,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE,CAAA;IACzB,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;IAChD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IAClF,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;IAC9F,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAA;IAEjE,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,YAAY;QACtD,IAAI;QACJ,IAAI;QACJ,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC;QACzC,IAAI;QACJ,YAAY;QACZ,QAAQ,EAAE,MAAM,CAAC,EAAE;QACnB,UAAU,EAAE,MAAM,CAAC,IAAI;QACvB,cAAc,EAAE,MAAM,CAAC,QAAQ;QAC/B,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,IAAI;QAClC,aAAa,EAAE,CAAC,CAAC,WAAW,IAAI,IAAI;QACpC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC;QAChC,QAAQ,EAAE,eAAe,CAAC,IAAI,CAAC;QAC/B,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC7D,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC;QAC/E,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;QACrC,UAAU,EAAE,IAAI,KAAK,GAAG,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI;QACpD,YAAY,EAAE,IAAI,CAAC,YAAY,KAAK,IAAI;QACxC,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,SAAS,EAAE,CAAC,CAAC,SAAS;KACvB,CAAA;AACH,CAAC;AAED,SAAS,eAAe,CAAC,EAAqC,EAAE,CAAO,EAAE,CAAO;IAC9E,QAAQ,EAAE,EAAE,CAAC;QACX,KAAK,QAAQ;YACX,OAAO,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;QACjD,KAAK,QAAQ;YACX,OAAO,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;QACzC,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAA;YAC3B,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAA;YAC3B,OAAO,EAAE,GAAG,EAAE,CAAA;QAChB,CAAC;QACD,KAAK,UAAU;YACb,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAA;QAChF,KAAK,OAAO,CAAC;QACb;YACE,OAAO,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IACzC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW,EAAE,KAAiB;IAC5D,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACxD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAExF,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAChC,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QACrF,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAA;QAC7F,sEAAsE;QACtE,IAAI,SAAS,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAA;QACpE,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,QAAQ,GAAG;gBACf,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,QAAQ,IAAI,EAAE;gBAChB,CAAC,CAAC,cAAc,IAAI,EAAE;gBACtB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;aACjB;iBACE,IAAI,CAAC,GAAG,CAAC;iBACT,WAAW,EAAE,CAAA;YAChB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,KAAK,CAAA;QAC9C,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,OAAO,CAAA;IACtC,MAAM,GAAG,GAAG,KAAK,CAAC,aAAa,IAAI,KAAK,CAAA;IACxC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACrB,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QACzC,OAAO,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;IACnC,CAAC,CAAC,CAAA;IACF,OAAO,QAAQ,CAAA;AACjB,CAAC;AASD;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,KAAa,EAAE,OAAoB,EAAE,IAAe;IAC7E,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IACjE,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IACvD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAqB,CAAA;IAC5C,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,KAAa,EAAE,KAAoB,EAAE,EAAE;QAClE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA;YAClD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACjB,CAAC;QACD,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAE,CAAA;IAC1B,CAAC,CAAA;IAED,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAA;YAChD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,CAAC,YAAY,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACtD,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;gBAC/B,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACnE,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAC7D,CAAC;aAAM,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,WAAW,EAAE,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACrE,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,CAAA;AAC1C,CAAC;AAED,SAAS,WAAW,CAAC,CAAa;IAChC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;AAC/C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAoB,EAAE;IACrD,MAAM,UAAU,GAAG,MAAM,eAAe,EAAE,CAAA;IAE1C,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC5C,MAAM,CAAe,gBAAgB,gBAAgB,yCAAyC,CAAC;QAC/F,YAAY,EAAE;KACf,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC3E,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CACzB,CAAA;IAED,uEAAuE;IACvE,yDAAyD;IACzD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;IACxC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IAC1E,CAAC;IACD,MAAM,IAAI,GAAG,OAAO;SACjB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;SACxD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IAE5E,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IAEjD,sEAAsE;IACtE,mDAAmD;IACnD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,CAAA;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAA;IACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAA;IAClD,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,EAAE,IAAI,GAAG,QAAQ,CAAC,CAAA;IAEzF,mEAAmE;IACnE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,MAAM,OAAO,GAAiB,EAAE,CAAA;IAChC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;YACpB,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC,CAAA;QAClF,CAAC;IACH,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IAEpD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;AAChF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAc;IAChD,MAAM,GAAG,GAAG,MAAM,MAAM,CACtB,gBAAgB,gBAAgB,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CACjE,CAAA;IACD,IAAI,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IACvC,MAAM,OAAO,GAAG,MAAM,eAAe,EAAE,CAAA;IACvC,OAAO,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AACrC,CAAC;AASD,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAa,EACb,OAAgE;IAEhE,IAAI,EAAE,GAAG,CAAC,CAAA;IACV,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,gBAAgB,gBAAgB,IAAI,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE;YACrF,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAC9B,CAAC,CAAA;QACF,IAAI,GAAG,CAAC,KAAK;YAAE,MAAM,EAAE,CAAA;;YAClB,EAAE,EAAE,CAAA;IACX,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAA;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAa;IACjD,IAAI,EAAE,GAAG,CAAC,CAAA;IACV,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,gBAAgB,gBAAgB,IAAI,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE;YACrF,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAA;QACF,IAAI,GAAG,CAAC,KAAK;YAAE,MAAM,EAAE,CAAA;;YAClB,EAAE,EAAE,CAAA;IACX,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAA;AACvB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAmD,EACnD,MAA6C;IAE7C,IAAI,EAAE,GAAG,CAAC,CAAA;IACV,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAA;IACrC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;IAC3C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAC5B,KAAK,MAAM,CAAC,IAAI,GAAG;YAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAChC,KAAK,MAAM,CAAC,IAAI,MAAM;YAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACtC,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,CAAA;QACtB,MAAM,UAAU,GACd,CAAC,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAA;QACjF,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,gBAAgB,gBAAgB,IAAI,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACvF,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC;SACrD,CAAC,CAAA;QACF,IAAI,GAAG,CAAC,KAAK;YAAE,MAAM,EAAE,CAAA;;YAClB,EAAE,EAAE,CAAA;IACX,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAA;AACvB,CAAC;AAaD,SAAS,OAAO,CAAC,KAAa;IAC5B,OAAO,KAAK;SACT,WAAW,EAAE;SACb,IAAI,EAAE;SACN,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;AAC5B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAAmB;IACrD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACtD,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAA;IACnD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,gBAAgB,oBAAoB,EAAE,EAAE;QAC/D,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,KAAK,EAAE,KAAK,CAAC,IAAI;YACjB,IAAI;YACJ,MAAM,EAAE,WAAW;YACnB,IAAI,EAAE;gBACJ,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,MAAM;gBAC5B,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;gBACpC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,CAAC;gBAC/B,MAAM,EAAE,KAAK,CAAC,MAAM,KAAK,KAAK;aAC/B;SACF,CAAC;KACH,CAAC,CAAA;IACF,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAAgB,EAChB,KAA4B;IAE5B,MAAM,IAAI,GAA4B,EAAE,CAAA;IACxC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;QAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAA;IACvD,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAA;IACzE,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;QAAE,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;IACnE,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;QAAE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;IAC1D,MAAM,IAAI,GAA4B,EAAE,IAAI,EAAE,CAAA;IAC9C,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;QAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAA;IACrD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,gBAAgB,oBAAoB,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAAE;QAC/F,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAA;IACF,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,QAAgB;IAClD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,gBAAgB,oBAAoB,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAAE;QAC/F,MAAM,EAAE,QAAQ;KACjB,CAAC,CAAA;IACF,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AAC9C,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,GAAY;IACxD,IAAI,GAAG,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;QACpE,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,kBAAkB,CACtB,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,EAChF,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CACvB,CAAA;QACH,CAAC;IACH,CAAC;IACD,OAAO,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;AACjC,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAe,EAAE,MAAe;IAClE,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;QAAE,OAAO,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAA;IACnF,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;IACvE,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACxB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACrB,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,CAAA;QACtB,MAAM,UAAU,GAAG,CAAC,CAAC,YAAY,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAA;QAChF,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,gBAAgB,gBAAgB,IAAI,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACvF,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC;SACrD,CAAC,CAAA;QACF,IAAI,GAAG,CAAC,KAAK;YAAE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAA;IAC5C,CAAC;IACD,OAAO,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AACpC,CAAC"}
|
|
1
|
+
{"version":3,"file":"pages-service.js","sourceRoot":"","sources":["../../src/lib/pages-service.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/useApiData.d.ts
CHANGED
|
@@ -2,7 +2,18 @@ export interface UseApiDataOptions {
|
|
|
2
2
|
maxRetries?: number;
|
|
3
3
|
/** Base delay in ms for exponential backoff (default 1000). Actual delay = base * 2^attempt. */
|
|
4
4
|
retryBaseMs?: number;
|
|
5
|
+
/**
|
|
6
|
+
* When set, successful responses are cached in-memory keyed by endpoint
|
|
7
|
+
* for this many ms and reused on the next mount, skipping the network
|
|
8
|
+
* (cache-first). Opt-in — omit to keep the default always-fetch
|
|
9
|
+
* behaviour. `refetch()` always bypasses the cache. Useful for views
|
|
10
|
+
* that remount frequently (e.g. dashboard navigation) so they don't
|
|
11
|
+
* re-issue the same requests on every visit.
|
|
12
|
+
*/
|
|
13
|
+
cacheMs?: number;
|
|
5
14
|
}
|
|
15
|
+
/** Test-only: drop all cached responses so cases don't bleed into each other. */
|
|
16
|
+
export declare function __clearApiDataCache(): void;
|
|
6
17
|
export interface UseApiDataResult<T> {
|
|
7
18
|
data: T | null;
|
|
8
19
|
loading: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useApiData.d.ts","sourceRoot":"","sources":["../../src/lib/useApiData.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gGAAgG;IAChG,WAAW,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"useApiData.d.ts","sourceRoot":"","sources":["../../src/lib/useApiData.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gGAAgG;IAChG,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAgBD,iFAAiF;AACjF,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,8EAA8E;IAC9E,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,wBAAgB,UAAU,CAAC,CAAC,EAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,YAAY,GAAE,CAAC,GAAG,IAAW,EAC7B,OAAO,GAAE,iBAAsB,GAC9B,gBAAgB,CAAC,CAAC,CAAC,CA2FrB"}
|
package/dist/lib/useApiData.js
CHANGED
|
@@ -1,20 +1,51 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { useState, useEffect, useCallback, useRef } from 'react';
|
|
3
3
|
import { cmsApi } from './api.js';
|
|
4
|
+
/**
|
|
5
|
+
* Process-wide response cache for `cacheMs` consumers. Keyed by endpoint
|
|
6
|
+
* (note: the locale query param is appended downstream by `cmsApi`, so a
|
|
7
|
+
* locale switch is not reflected here — only enable `cacheMs` for
|
|
8
|
+
* locale-invariant endpoints like `/stats`).
|
|
9
|
+
*/
|
|
10
|
+
const responseCache = new Map();
|
|
11
|
+
function readCache(endpoint, cacheMs) {
|
|
12
|
+
const hit = responseCache.get(endpoint);
|
|
13
|
+
if (hit && Date.now() - hit.at < cacheMs)
|
|
14
|
+
return { value: hit.data };
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
/** Test-only: drop all cached responses so cases don't bleed into each other. */
|
|
18
|
+
export function __clearApiDataCache() {
|
|
19
|
+
responseCache.clear();
|
|
20
|
+
}
|
|
4
21
|
export function useApiData(endpoint, defaultValue = null, options = {}) {
|
|
5
|
-
const { maxRetries = 3, retryBaseMs = 1000 } = options;
|
|
6
|
-
|
|
7
|
-
|
|
22
|
+
const { maxRetries = 3, retryBaseMs = 1000, cacheMs } = options;
|
|
23
|
+
// Read the cache synchronously for the initial state so a warm cache
|
|
24
|
+
// hit paints immediately instead of flashing a loading spinner.
|
|
25
|
+
const cachedInitial = endpoint && cacheMs ? readCache(endpoint, cacheMs) : null;
|
|
26
|
+
const [data, setData] = useState(cachedInitial ? cachedInitial.value : defaultValue);
|
|
27
|
+
const [loading, setLoading] = useState(endpoint !== null && !cachedInitial);
|
|
8
28
|
const [error, setError] = useState(null);
|
|
9
29
|
const [exhausted, setExhausted] = useState(false);
|
|
10
30
|
const abortRef = useRef(null);
|
|
11
31
|
const retryCountRef = useRef(0);
|
|
12
32
|
const retryTimerRef = useRef(null);
|
|
13
|
-
const fetchData = useCallback(async (isRetry = false) => {
|
|
33
|
+
const fetchData = useCallback(async (isRetry = false, forceRefresh = false) => {
|
|
14
34
|
if (!endpoint) {
|
|
15
35
|
setLoading(false);
|
|
16
36
|
return;
|
|
17
37
|
}
|
|
38
|
+
// Cache-first: a fresh cached response short-circuits the network.
|
|
39
|
+
// `refetch()` passes `forceRefresh` to bypass this.
|
|
40
|
+
if (!isRetry && !forceRefresh && cacheMs) {
|
|
41
|
+
const hit = readCache(endpoint, cacheMs);
|
|
42
|
+
if (hit) {
|
|
43
|
+
setData(hit.value);
|
|
44
|
+
setError(null);
|
|
45
|
+
setLoading(false);
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
18
49
|
abortRef.current?.abort();
|
|
19
50
|
const controller = new AbortController();
|
|
20
51
|
abortRef.current = controller;
|
|
@@ -39,11 +70,14 @@ export function useApiData(endpoint, defaultValue = null, options = {}) {
|
|
|
39
70
|
setLoading(false);
|
|
40
71
|
}
|
|
41
72
|
else {
|
|
42
|
-
|
|
73
|
+
const value = res.data ?? null;
|
|
74
|
+
setData(value);
|
|
43
75
|
setLoading(false);
|
|
44
76
|
retryCountRef.current = 0;
|
|
77
|
+
if (cacheMs)
|
|
78
|
+
responseCache.set(endpoint, { data: value, at: Date.now() });
|
|
45
79
|
}
|
|
46
|
-
}, [endpoint, maxRetries, retryBaseMs]);
|
|
80
|
+
}, [endpoint, maxRetries, retryBaseMs, cacheMs]);
|
|
47
81
|
const manualRefetch = useCallback(() => {
|
|
48
82
|
if (retryTimerRef.current) {
|
|
49
83
|
clearTimeout(retryTimerRef.current);
|
|
@@ -51,7 +85,7 @@ export function useApiData(endpoint, defaultValue = null, options = {}) {
|
|
|
51
85
|
}
|
|
52
86
|
retryCountRef.current = 0;
|
|
53
87
|
setExhausted(false);
|
|
54
|
-
fetchData(false);
|
|
88
|
+
fetchData(false, true);
|
|
55
89
|
}, [fetchData]);
|
|
56
90
|
useEffect(() => {
|
|
57
91
|
fetchData(false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useApiData.js","sourceRoot":"","sources":["../../src/lib/useApiData.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AACZ,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAiBjC,MAAM,UAAU,UAAU,CACxB,QAAuB,EACvB,eAAyB,IAAI,EAC7B,UAA6B,EAAE;IAE/B,MAAM,EAAE,UAAU,GAAG,CAAC,EAAE,WAAW,GAAG,IAAI,EAAE,GAAG,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"useApiData.js","sourceRoot":"","sources":["../../src/lib/useApiData.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AACZ,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAiBjC;;;;;GAKG;AACH,MAAM,aAAa,GAAG,IAAI,GAAG,EAAyC,CAAA;AAEtE,SAAS,SAAS,CAAI,QAAgB,EAAE,OAAe;IACrD,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACvC,IAAI,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,OAAO;QAAE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,IAAgB,EAAE,CAAA;IAChF,OAAO,IAAI,CAAA;AACb,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,mBAAmB;IACjC,aAAa,CAAC,KAAK,EAAE,CAAA;AACvB,CAAC;AAWD,MAAM,UAAU,UAAU,CACxB,QAAuB,EACvB,eAAyB,IAAI,EAC7B,UAA6B,EAAE;IAE/B,MAAM,EAAE,UAAU,GAAG,CAAC,EAAE,WAAW,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;IAC/D,qEAAqE;IACrE,gEAAgE;IAChE,MAAM,aAAa,GAAG,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,SAAS,CAAI,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAClF,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAW,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;IAC9F,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,CAAA;IAC3E,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IACvD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACjD,MAAM,QAAQ,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAA;IACrD,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IAC/B,MAAM,aAAa,GAAG,MAAM,CAAuC,IAAI,CAAC,CAAA;IAExE,MAAM,SAAS,GAAG,WAAW,CAC3B,KAAK,EAAE,OAAO,GAAG,KAAK,EAAE,YAAY,GAAG,KAAK,EAAE,EAAE;QAC9C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,UAAU,CAAC,KAAK,CAAC,CAAA;YACjB,OAAM;QACR,CAAC;QAED,mEAAmE;QACnE,oDAAoD;QACpD,IAAI,CAAC,OAAO,IAAI,CAAC,YAAY,IAAI,OAAO,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,SAAS,CAAI,QAAQ,EAAE,OAAO,CAAC,CAAA;YAC3C,IAAI,GAAG,EAAE,CAAC;gBACR,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBAClB,QAAQ,CAAC,IAAI,CAAC,CAAA;gBACd,UAAU,CAAC,KAAK,CAAC,CAAA;gBACjB,OAAM;YACR,CAAC;QACH,CAAC;QAED,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAA;QACzB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACxC,QAAQ,CAAC,OAAO,GAAG,UAAU,CAAA;QAE7B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,aAAa,CAAC,OAAO,GAAG,CAAC,CAAA;YACzB,YAAY,CAAC,KAAK,CAAC,CAAA;QACrB,CAAC;QAED,UAAU,CAAC,IAAI,CAAC,CAAA;QAChB,QAAQ,CAAC,IAAI,CAAC,CAAA;QAEd,MAAM,GAAG,GAAG,MAAM,MAAM,CAAI,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAA;QAEpE,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;YAAE,OAAM;QAErC,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,IAAI,aAAa,CAAC,OAAO,GAAG,UAAU,EAAE,CAAC;gBACvC,MAAM,KAAK,GAAG,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;gBAC9D,aAAa,CAAC,OAAO,IAAI,CAAC,CAAA;gBAC1B,aAAa,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAA;gBAChE,OAAM;YACR,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACnB,YAAY,CAAC,IAAI,CAAC,CAAA;YAClB,UAAU,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,IAAI,IAAI,CAAA;YAC9B,OAAO,CAAC,KAAK,CAAC,CAAA;YACd,UAAU,CAAC,KAAK,CAAC,CAAA;YACjB,aAAa,CAAC,OAAO,GAAG,CAAC,CAAA;YACzB,IAAI,OAAO;gBAAE,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QAC3E,CAAC;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC,CAC7C,CAAA;IAED,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QACrC,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1B,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YACnC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAA;QAC9B,CAAC;QACD,aAAa,CAAC,OAAO,GAAG,CAAC,CAAA;QACzB,YAAY,CAAC,KAAK,CAAC,CAAA;QACnB,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACxB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,CAAC,KAAK,CAAC,CAAA;QAChB,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAA;YACzB,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;gBAC1B,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;gBACnC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAA;YAC9B,CAAC;QACH,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,CAAA;AACpE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dashboard.d.ts","sourceRoot":"","sources":["../../src/views/Dashboard.tsx"],"names":[],"mappings":"AAkGA,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,GAAG,CAAA;IACZ,OAAO,CAAC,EAAE,GAAG,CAAA;IACb,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC;
|
|
1
|
+
{"version":3,"file":"Dashboard.d.ts","sourceRoot":"","sources":["../../src/views/Dashboard.tsx"],"names":[],"mappings":"AAkGA,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,GAAG,CAAA;IACZ,OAAO,CAAC,EAAE,GAAG,CAAA;IACb,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC;AAgKD,wBAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,cAAc,2CAwoBxE"}
|