@reidelsaltres/pureper 0.2.14 → 0.2.17

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.
Files changed (65) hide show
  1. package/out/foundation/Fetcher.d.ts.map +1 -1
  2. package/out/foundation/Fetcher.js +8 -13
  3. package/out/foundation/Fetcher.js.map +1 -1
  4. package/out/foundation/Injection.d.ts +87 -0
  5. package/out/foundation/Injection.d.ts.map +1 -0
  6. package/out/foundation/Injection.js +149 -0
  7. package/out/foundation/Injection.js.map +1 -0
  8. package/out/foundation/Theme.d.ts.map +1 -1
  9. package/out/foundation/Theme.js +16 -1
  10. package/out/foundation/Theme.js.map +1 -1
  11. package/out/foundation/Triplet.d.ts +30 -25
  12. package/out/foundation/Triplet.d.ts.map +1 -1
  13. package/out/foundation/Triplet.js +96 -115
  14. package/out/foundation/Triplet.js.map +1 -1
  15. package/out/foundation/TripletDecorator.d.ts +11 -0
  16. package/out/foundation/TripletDecorator.d.ts.map +1 -1
  17. package/out/foundation/TripletDecorator.js +25 -8
  18. package/out/foundation/TripletDecorator.js.map +1 -1
  19. package/out/foundation/component_api/Component.d.ts.map +1 -1
  20. package/out/foundation/component_api/Component.js +1 -0
  21. package/out/foundation/component_api/Component.js.map +1 -1
  22. package/out/foundation/component_api/UniHtml.d.ts +6 -1
  23. package/out/foundation/component_api/UniHtml.d.ts.map +1 -1
  24. package/out/foundation/component_api/UniHtml.js +32 -7
  25. package/out/foundation/component_api/UniHtml.js.map +1 -1
  26. package/out/foundation/engine/Expression.d.ts +2 -0
  27. package/out/foundation/engine/Expression.d.ts.map +1 -1
  28. package/out/foundation/engine/Expression.js +26 -11
  29. package/out/foundation/engine/Expression.js.map +1 -1
  30. package/out/foundation/engine/StylePreprocessor.js +2 -1
  31. package/out/foundation/engine/StylePreprocessor.js.map +1 -1
  32. package/out/foundation/engine/TemplateEngine.d.ts +3 -1
  33. package/out/foundation/engine/TemplateEngine.d.ts.map +1 -1
  34. package/out/foundation/engine/TemplateEngine.js +44 -15
  35. package/out/foundation/engine/TemplateEngine.js.map +1 -1
  36. package/out/foundation/worker/Router.d.ts.map +1 -1
  37. package/out/foundation/worker/Router.js +6 -0
  38. package/out/foundation/worker/Router.js.map +1 -1
  39. package/out/foundation/worker/ServiceWorker.d.ts +48 -17
  40. package/out/foundation/worker/ServiceWorker.d.ts.map +1 -1
  41. package/out/foundation/worker/ServiceWorker.js +186 -119
  42. package/out/foundation/worker/ServiceWorker.js.map +1 -1
  43. package/out/index.d.ts +3 -2
  44. package/out/index.d.ts.map +1 -1
  45. package/out/index.js +2 -1
  46. package/out/index.js.map +1 -1
  47. package/package.json +1 -1
  48. package/src/foundation/Fetcher.ts +9 -14
  49. package/src/foundation/Injection.ts +183 -0
  50. package/src/foundation/Theme.ts +17 -3
  51. package/src/foundation/Triplet.ts +114 -141
  52. package/src/foundation/TripletDecorator.ts +32 -8
  53. package/src/foundation/component_api/Component.ts +1 -0
  54. package/src/foundation/component_api/UniHtml.ts +35 -7
  55. package/src/foundation/engine/Expression.ts +34 -20
  56. package/src/foundation/engine/StylePreprocessor.ts +1 -1
  57. package/src/foundation/engine/TemplateEngine.ts +42 -15
  58. package/src/foundation/worker/Router.ts +10 -3
  59. package/src/foundation/worker/ServiceWorker.ts +203 -129
  60. package/src/foundation/worker/serviceworker.js +191 -0
  61. package/src/index.ts +7 -4
  62. package/out/foundation/worker/serviceworker.d.ts +0 -1
  63. package/out/foundation/worker/serviceworker.d.ts.map +0 -1
  64. package/out/foundation/worker/serviceworker.js +0 -2
  65. package/out/foundation/worker/serviceworker.js.map +0 -1
@@ -130,7 +130,8 @@ export default class StylePreprocessor {
130
130
  while (result) {
131
131
  ast.push(result.node);
132
132
  result = rule.walk(walker, tokens, data);
133
- tokens = result.tokens;
133
+ if (result)
134
+ tokens = result.tokens;
134
135
  }
135
136
  }
136
137
  return ast;
@@ -1 +1 @@
1
- {"version":3,"file":"StylePreprocessor.js","sourceRoot":"","sources":["../../../src/foundation/engine/StylePreprocessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StylePreprocessor.js","sourceRoot":"","sources":["../../../src/foundation/engine/StylePreprocessor.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,11 @@ export default class TemplateEngine {
8
8
  private readonly for_component;
9
9
  private readonly if_component;
10
10
  private readonly components;
11
- readonly bindings: Map<Element, () => void>;
11
+ readonly bindings: Map<Node, (() => void)[]>;
12
12
  private readonly onChangeCallbacks;
13
13
  processLogs: string[];
14
+ addBinding(node: Node, cleanup: () => void): void;
15
+ dispose(): void;
14
16
  static fullProcess(root: Node, scope: Scope): string[];
15
17
  static createHolder(markup: string, scope: Scope): TemplateHolder;
16
18
  private change;
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateEngine.d.ts","sourceRoot":"","sources":["../../../src/foundation/engine/TemplateEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TemplateEngine.d.ts","sourceRoot":"","sources":["../../../src/foundation/engine/TemplateEngine.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ export default class TemplateEngine {
23
23
  doWork(context) {
24
24
  context.data.set(context.refName, context.element);
25
25
  this.globalScope.set(context.refName, context.element);
26
- this.engine.bindings.set(context.element, () => {
26
+ this.engine.addBinding(context.element, () => {
27
27
  context.data.delete(context.refName);
28
28
  this.globalScope.delete(context.refName);
29
29
  });
@@ -48,10 +48,12 @@ export default class TemplateEngine {
48
48
  const of = valueExpression.eval(data);
49
49
  const value = of instanceof Observable ? of.getObject() : of;
50
50
  if (of instanceof Observable) {
51
- of.subscribe((newValue) => {
51
+ const handler = (newValue) => {
52
52
  this.engine.change();
53
53
  this.doWork({ element, name: attributeName, value: newValue });
54
- });
54
+ };
55
+ of.subscribe(handler);
56
+ this.engine.addBinding(element, () => of.unsubscribe(handler));
55
57
  }
56
58
  this.doWork({ element, name: attributeName, value });
57
59
  }
@@ -88,6 +90,7 @@ export default class TemplateEngine {
88
90
  handler.eval(data, { event, element });
89
91
  };
90
92
  element.addEventListener(eventName, listener);
93
+ this.engine.addBinding(element, () => element.removeEventListener(eventName, listener));
91
94
  }
92
95
  return false;
93
96
  }
@@ -150,11 +153,13 @@ export default class TemplateEngine {
150
153
  const of = new Expression(vvv).eval(data);
151
154
  const value = of instanceof Observable ? of.getObject() : of;
152
155
  if (of instanceof Observable) {
153
- of.subscribe((newValue) => {
156
+ const handler = (newValue) => {
154
157
  element.textContent = "";
155
158
  this.engine.change();
156
159
  this.doWork({ element, value: newValue, allowHtmlInjection: allowHtmlInjection });
157
- });
160
+ };
161
+ of.subscribe(handler);
162
+ this.engine.addBinding(element, () => of.unsubscribe(handler));
158
163
  }
159
164
  this.doWork({ element, value, allowHtmlInjection: allowHtmlInjection });
160
165
  /*const textNode = document.createTextNode(of);
@@ -189,10 +194,12 @@ export default class TemplateEngine {
189
194
  const of = new Expression(vvv).eval(data);
190
195
  const iterable = of instanceof Observable ? of.getObject() : of;
191
196
  if (of instanceof Observable) {
192
- of.subscribe((newValue) => {
197
+ const handler = (newValue) => {
193
198
  this.engine.change();
194
199
  this.doWork({ element, iterable: newValue, index, value, walker, shadow, data });
195
- });
200
+ };
201
+ of.subscribe(handler);
202
+ this.engine.addBinding(element, () => of.unsubscribe(handler));
196
203
  }
197
204
  this.doWork({ element, iterable: iterable, index, value, walker, shadow, data });
198
205
  }
@@ -208,6 +215,8 @@ export default class TemplateEngine {
208
215
  const shadow = context.shadow;
209
216
  const data = context.data;
210
217
  element.childNodes.forEach(n => this.engine.fullCleanup(n));
218
+ while (element.firstChild)
219
+ element.removeChild(element.firstChild);
211
220
  const lenght = typeof iterable === "number" ? iterable : iterable.length;
212
221
  for (let i = 0; i < lenght; i++) {
213
222
  const z = i;
@@ -259,10 +268,12 @@ export default class TemplateEngine {
259
268
  continue;
260
269
  const condition = new Expression(conditionAtt).eval(data);
261
270
  if (condition instanceof Observable) {
262
- condition.subscribe((newValue) => {
271
+ const handler = (newValue) => {
263
272
  this.engine.change();
264
273
  this.doWork({ walker, data, allParts: allParts });
265
- });
274
+ };
275
+ condition.subscribe(handler);
276
+ this.engine.addBinding(part.element, () => condition.unsubscribe(handler));
266
277
  }
267
278
  }
268
279
  this.doWork({ walker, data, allParts: allParts });
@@ -272,9 +283,9 @@ export default class TemplateEngine {
272
283
  doWork(context) {
273
284
  const { walker, data, allParts } = context;
274
285
  allParts.forEach(part => {
275
- this.engine.fullCleanup(part.element);
276
- /*part.element.childNodes.forEach(n =>
277
- this.engine.fullCleanup(n));*/
286
+ part.element.childNodes.forEach(n => this.engine.fullCleanup(n));
287
+ while (part.element.firstChild)
288
+ part.element.removeChild(part.element.firstChild);
278
289
  });
279
290
  for (const part of allParts) {
280
291
  const conditionAtt = part.element.getAttribute('condition');
@@ -306,6 +317,22 @@ export default class TemplateEngine {
306
317
  bindings = new Map();
307
318
  onChangeCallbacks = [];
308
319
  processLogs = [];
320
+ addBinding(node, cleanup) {
321
+ const existing = this.bindings.get(node);
322
+ if (existing) {
323
+ existing.push(cleanup);
324
+ }
325
+ else {
326
+ this.bindings.set(node, [cleanup]);
327
+ }
328
+ }
329
+ dispose() {
330
+ for (const [, cleanups] of this.bindings) {
331
+ cleanups.forEach(cleanup => cleanup());
332
+ }
333
+ this.bindings.clear();
334
+ this.onChangeCallbacks.length = 0;
335
+ }
309
336
  static fullProcess(root, scope) {
310
337
  const engine = new TemplateEngine();
311
338
  engine.fullProcess(root, scope);
@@ -362,9 +389,11 @@ export default class TemplateEngine {
362
389
  let i = 0;
363
390
  walker.onEnterNode((node, data) => {
364
391
  const element = node;
365
- const binding = this.bindings.get(element);
366
- if (binding)
367
- binding();
392
+ const bindings = this.bindings.get(element);
393
+ if (bindings) {
394
+ bindings.forEach(b => b());
395
+ this.bindings.delete(element);
396
+ }
368
397
  this.processLogs.push((" ").repeat(i) + "layer " + i + " Cleaning up Starting: " + node.nodeName);
369
398
  i++;
370
399
  });
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateEngine.js","sourceRoot":"","sources":["../../../src/foundation/engine/TemplateEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TemplateEngine.js","sourceRoot":"","sources":["../../../src/foundation/engine/TemplateEngine.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../../../src/foundation/worker/Router.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,6BAA6B,CAAC;AAElD,MAAM,WAAW,KAAK,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IAEb,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,eAAe,KAAK,CAAC,CAAC;CAC9C;AACD,oBAAY,UAAU;IACpB,OAAO,IAAA;IACP,MAAM,IAAA;IACN,IAAI,IAAA;CACL;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,EAAO,CAAC;AAClC,eAAO,MAAM,QAAQ,EAAE,MAAM,EAAO,CAAC;AAErC,8BAAsB,MAAM;IAC1B,OAAO,CAAC,MAAM,CAAC,WAAW,CAAwB;WAEpC,kBAAkB,CAAC,GAAG,EAAE,GAAG;WAO3B,iBAAiB,IAAI,GAAG,GAAG,IAAI;WAS/B,mBAAmB;WAQnB,aAAa,CAAC,KAAK,EAAE,MAAM;WAO3B,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,GAAE,OAAc;WAmB9C,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK;WAQvB,aAAa,CAAC,CAAC,SAAS,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,eAAe,KAAK,CAAC,EAC5H,cAAc,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAezC,OAAO,CAAC,MAAM,CAAC,UAAU;CAG1B"}
1
+ {"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../../../src/foundation/worker/Router.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,6BAA6B,CAAC;AAElD,MAAM,WAAW,KAAK,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IAEb,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,eAAe,KAAK,CAAC,CAAC;CAC9C;AACD,oBAAY,UAAU;IACpB,OAAO,IAAA;IACP,MAAM,IAAA;IACN,IAAI,IAAA;CACL;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,EAAO,CAAC;AAClC,eAAO,MAAM,QAAQ,EAAE,MAAM,EAAO,CAAC;AAErC,8BAAsB,MAAM;IAC1B,OAAO,CAAC,MAAM,CAAC,WAAW,CAAwB;WAEpC,kBAAkB,CAAC,GAAG,EAAE,GAAG;WAO3B,iBAAiB,IAAI,GAAG,GAAG,IAAI;WAS/B,mBAAmB;WAQnB,aAAa,CAAC,KAAK,EAAE,MAAM;WAO3B,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,GAAE,OAAc;WA0B9C,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK;WAQvB,aAAa,CAAC,CAAC,SAAS,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,eAAe,KAAK,CAAC,EAC5H,cAAc,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAezC,OAAO,CAAC,MAAM,CAAC,UAAU;CAG1B"}
@@ -47,6 +47,12 @@ export class Router {
47
47
  try {
48
48
  const found = this.tryFindRoute(urlH);
49
49
  let pageContainer = document.getElementById('page');
50
+ if (this.currentPage) {
51
+ this.currentPage.dispose();
52
+ }
53
+ while (pageContainer.firstChild) {
54
+ pageContainer.removeChild(pageContainer.firstChild);
55
+ }
50
56
  const page = this.createPage(found, urlH.searchParams);
51
57
  this.currentPage = page;
52
58
  page.load(pageContainer);
@@ -1 +1 @@
1
- {"version":3,"file":"Router.js","sourceRoot":"","sources":["../../../src/foundation/worker/Router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Router.js","sourceRoot":"","sources":["../../../src/foundation/worker/Router.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,56 @@
1
+ import Observable from "../api/Observer.js";
2
+ export type ServiceWorkerConfig = {
3
+ scriptURL?: string;
4
+ scope?: string;
5
+ };
6
+ /**
7
+ * Client-side Service Worker manager for Purper SPA.
8
+ *
9
+ * Provides:
10
+ * - Registration with one call (`ServiceWorker.register()`)
11
+ * - Cache management: add / remove / list / clear
12
+ * - Connectivity detection with reactive `online` observable
13
+ *
14
+ * Usage:
15
+ * ```ts
16
+ * await ServiceWorker.register(); // defaults to './serviceworker.js'
17
+ * await ServiceWorker.addToCache('/data.json');
18
+ * await ServiceWorker.removeFromCache('/old.css');
19
+ * ServiceWorker.online.subscribe(v => console.log('online:', v));
20
+ * ```
21
+ */
1
22
  export default class ServiceWorker {
2
- /**
3
- * Sends a message to the service worker to cache a specific URL.
4
- * @param url The URL of the resource to cache.
5
- */
23
+ private static _registration?;
24
+ /** Observable connectivity state subscribe for real-time changes. */
25
+ static readonly online: Observable<boolean>;
26
+ private static _connectivityBound;
27
+ private static _bindConnectivity;
28
+ static register(config?: ServiceWorkerConfig): Promise<ServiceWorkerRegistration | undefined>;
29
+ private static _postMessage;
30
+ private static _request;
31
+ /** Add a single URL to the SW cache. */
6
32
  static addToCache(url: string): Promise<void>;
7
- /**
8
- * Asks the service worker to skip waiting and activate the new version.
9
- */
33
+ /** Add multiple URLs to the SW cache in one batch. */
34
+ static addAllToCache(urls: string[]): void;
35
+ /** Remove a URL from the SW cache. Returns true if it was found and deleted. */
36
+ static removeFromCache(url: string): Promise<boolean>;
37
+ /** Return all URLs currently in the SW cache. */
38
+ static getCacheKeys(): Promise<string[]>;
39
+ /** Wipe the entire SW cache. */
40
+ static clearCache(): Promise<boolean>;
41
+ /** Check whether a URL exists in the SW cache. */
42
+ static isCached(url: string): Promise<boolean>;
43
+ /** Ask the waiting SW to activate immediately. */
10
44
  static skipWaiting(): void;
11
- /**
12
- * Gets the version of the currently active service worker.
13
- * @returns A promise that resolves with the version string.
14
- */
45
+ /** Get the version string from the running SW. */
15
46
  static getVersion(): Promise<string>;
16
47
  /**
17
- * Checks if the given URL is present in the Service Worker's cache.
18
- */
19
- static isCached(url: string): Promise<boolean>;
20
- /**
21
- * Checks if the browser is online.
48
+ * Active connectivity probe makes a real network request.
49
+ * Unlike `online` observable (which relies on browser events), this
50
+ * detects captive portals and lie-fi.
22
51
  */
23
- static isOnline(): Promise<boolean>;
52
+ static isOnline(probeURL?: string): Promise<boolean>;
53
+ /** Current registration, if any. */
54
+ static get registration(): ServiceWorkerRegistration | undefined;
24
55
  }
25
56
  //# sourceMappingURL=ServiceWorker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServiceWorker.d.ts","sourceRoot":"","sources":["../../../src/foundation/worker/ServiceWorker.ts"],"names":[],"mappings":"AAgEA,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B;;;OAGG;WACU,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBnD;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,IAAI;IAM1B;;;OAGG;IACH,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAkBpC;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmB9C;;OAEG;WACU,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;CAQ5C"}
1
+ {"version":3,"file":"ServiceWorker.d.ts","sourceRoot":"","sources":["../../../src/foundation/worker/ServiceWorker.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAE5C,MAAM,MAAM,mBAAmB,GAAG;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAA4B;IAEzD,uEAAuE;IACvE,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAoC;IAG/E,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAS;IAC1C,OAAO,CAAC,MAAM,CAAC,iBAAiB;WAenB,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC;IA0CnG,OAAO,CAAC,MAAM,CAAC,YAAY;IAI3B,OAAO,CAAC,MAAM,CAAC,QAAQ;IAcvB,wCAAwC;WAC3B,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBnD,sDAAsD;IACtD,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI;IAI1C,gFAAgF;WACnE,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAe3D,iDAAiD;WACpC,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAS9C,gCAAgC;WACnB,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAS3C,kDAAkD;WACrC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBpD,kDAAkD;IAClD,MAAM,CAAC,WAAW,IAAI,IAAI;IAI1B,kDAAkD;WACrC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAO1C;;;;OAIG;WACU,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAuB1D,oCAAoC;IACpC,MAAM,KAAK,YAAY,IAAI,yBAAyB,GAAG,SAAS,CAE/D;CACJ"}