@reidelsaltres/pureper 0.2.14 → 0.2.15
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/out/foundation/Theme.d.ts.map +1 -1
- package/out/foundation/Theme.js +16 -1
- package/out/foundation/Theme.js.map +1 -1
- package/out/foundation/component_api/Component.d.ts.map +1 -1
- package/out/foundation/component_api/Component.js +1 -0
- package/out/foundation/component_api/Component.js.map +1 -1
- package/out/foundation/component_api/UniHtml.d.ts +1 -0
- package/out/foundation/component_api/UniHtml.d.ts.map +1 -1
- package/out/foundation/component_api/UniHtml.js +9 -2
- package/out/foundation/component_api/UniHtml.js.map +1 -1
- package/out/foundation/engine/Expression.d.ts +2 -0
- package/out/foundation/engine/Expression.d.ts.map +1 -1
- package/out/foundation/engine/Expression.js +26 -11
- package/out/foundation/engine/Expression.js.map +1 -1
- package/out/foundation/engine/StylePreprocessor.js +2 -1
- package/out/foundation/engine/StylePreprocessor.js.map +1 -1
- package/out/foundation/engine/TemplateEngine.d.ts +3 -1
- package/out/foundation/engine/TemplateEngine.d.ts.map +1 -1
- package/out/foundation/engine/TemplateEngine.js +44 -15
- package/out/foundation/engine/TemplateEngine.js.map +1 -1
- package/out/foundation/worker/Router.d.ts.map +1 -1
- package/out/foundation/worker/Router.js +6 -0
- package/out/foundation/worker/Router.js.map +1 -1
- package/package.json +1 -1
- package/src/foundation/Theme.ts +17 -3
- package/src/foundation/component_api/Component.ts +1 -0
- package/src/foundation/component_api/UniHtml.ts +9 -2
- package/src/foundation/engine/Expression.ts +34 -20
- package/src/foundation/engine/StylePreprocessor.ts +1 -1
- package/src/foundation/engine/TemplateEngine.ts +42 -15
- package/src/foundation/worker/Router.ts +10 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Theme.d.ts","sourceRoot":"","sources":["../../src/foundation/Theme.ts"],"names":[],"mappings":"AAEA,eAAO,IAAI,gBAAgB,QAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"Theme.d.ts","sourceRoot":"","sources":["../../src/foundation/Theme.ts"],"names":[],"mappings":"AAEA,eAAO,IAAI,gBAAgB,QAAU,CAAC;AAGtC,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAG7D;AACD,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAK7E;AACD,wBAAsB,IAAI,kBAOzB;AACD,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,iBAkB1C"}
|
package/out/foundation/Theme.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import Fetcher from "./Fetcher.js";
|
|
2
2
|
export let ACTIVE_THEME_KEY = "Empty";
|
|
3
|
+
let activeThemeSheet = null;
|
|
3
4
|
export async function loadTheme(name) {
|
|
4
5
|
// Use hosting-root absolute path so GitHub Pages subfolder deployments (e.g. /Hellper/) keep the subfolder.
|
|
5
6
|
return Fetcher.fetchText(`/resources/${name}.theme.css`);
|
|
@@ -24,6 +25,20 @@ export async function setTheme(name) {
|
|
|
24
25
|
theme = theme.replace(/\.[\w-]+-theme/g, ":root");
|
|
25
26
|
const sheet = new CSSStyleSheet();
|
|
26
27
|
sheet.replaceSync(theme);
|
|
27
|
-
|
|
28
|
+
if (activeThemeSheet) {
|
|
29
|
+
const index = document.adoptedStyleSheets.indexOf(activeThemeSheet);
|
|
30
|
+
if (index !== -1) {
|
|
31
|
+
const sheets = [...document.adoptedStyleSheets];
|
|
32
|
+
sheets[index] = sheet;
|
|
33
|
+
document.adoptedStyleSheets = sheets;
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
document.adoptedStyleSheets = [...document.adoptedStyleSheets, sheet];
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
document.adoptedStyleSheets = [...document.adoptedStyleSheets, sheet];
|
|
41
|
+
}
|
|
42
|
+
activeThemeSheet = sheet;
|
|
28
43
|
}
|
|
29
44
|
//# sourceMappingURL=Theme.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Theme.js","sourceRoot":"","sources":["../../src/foundation/Theme.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,MAAM,CAAC,IAAI,gBAAgB,GAAG,OAAO,CAAC;AACtC,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAY;IACxC,4GAA4G;IAC5G,OAAO,OAAO,CAAC,SAAS,CAAC,cAAc,IAAI,YAAY,CAAC,CAAC;AAC7D,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAY;IACjD,IAAI,KAAK,GAAW,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;IAClC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACzB,OAAO,KAAK,CAAC;AACjB,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,IAAI;IACtB,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,IAAI,gBAAgB,EAAE,CAAC;QACnB,MAAM,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACJ,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;AACL,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAY;IACvC,IAAI,KAAK,GAAW,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1C,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;IAClC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACzB,QAAQ,CAAC,kBAAkB,GAAG,CAAC,GAAG,QAAQ,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"Theme.js","sourceRoot":"","sources":["../../src/foundation/Theme.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,MAAM,CAAC,IAAI,gBAAgB,GAAG,OAAO,CAAC;AACtC,IAAI,gBAAgB,GAAyB,IAAI,CAAC;AAElD,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAY;IACxC,4GAA4G;IAC5G,OAAO,OAAO,CAAC,SAAS,CAAC,cAAc,IAAI,YAAY,CAAC,CAAC;AAC7D,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAY;IACjD,IAAI,KAAK,GAAW,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;IAClC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACzB,OAAO,KAAK,CAAC;AACjB,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,IAAI;IACtB,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,IAAI,gBAAgB,EAAE,CAAC;QACnB,MAAM,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACJ,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;AACL,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAY;IACvC,IAAI,KAAK,GAAW,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1C,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;IAClC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACzB,IAAI,gBAAgB,EAAE,CAAC;QACnB,MAAM,KAAK,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACpE,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC;YAChD,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;YACtB,QAAQ,CAAC,kBAAkB,GAAG,MAAM,CAAC;QACzC,CAAC;aAAM,CAAC;YACJ,QAAQ,CAAC,kBAAkB,GAAG,CAAC,GAAG,QAAQ,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;QAC1E,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,QAAQ,CAAC,kBAAkB,GAAG,CAAC,GAAG,QAAQ,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;IACD,gBAAgB,GAAG,KAAK,CAAC;AAC7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Component.d.ts","sourceRoot":"","sources":["../../../src/foundation/component_api/Component.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,6BAA6B,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAS,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,CAAC,OAAO,WAAW,SAAU,SAAQ,OAAO,EAAE,WAAW,EAAE,OAAO;CAAI;;;;;;;AAC5E,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,cAA2C,YAAW,iBAAiB;IAC1G,OAAO,CAAC,WAAW,CAAmB;IAEtC,OAAO,CAAC,0BAA0B,CAAC,CAA2D;;IAQ9F,WAAW,IAAI,IAAI;IAGnB,cAAc,IAAI,IAAI;IAGtB,OAAO,IAAI,IAAI;IAGf,SAAS,IAAI,IAAI;IAIjB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,IAAI;IAGpE,0BAA0B,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;IAKhG;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoBzB,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAMhG;;OAEG;IACH,OAAO,CAAC,oBAAoB;
|
|
1
|
+
{"version":3,"file":"Component.d.ts","sourceRoot":"","sources":["../../../src/foundation/component_api/Component.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,6BAA6B,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAS,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,CAAC,OAAO,WAAW,SAAU,SAAQ,OAAO,EAAE,WAAW,EAAE,OAAO;CAAI;;;;;;;AAC5E,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,cAA2C,YAAW,iBAAiB;IAC1G,OAAO,CAAC,WAAW,CAAmB;IAEtC,OAAO,CAAC,0BAA0B,CAAC,CAA2D;;IAQ9F,WAAW,IAAI,IAAI;IAGnB,cAAc,IAAI,IAAI;IAGtB,OAAO,IAAI,IAAI;IAGf,SAAS,IAAI,IAAI;IAIjB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,IAAI;IAGpE,0BAA0B,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI;IAKhG;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoBzB,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAMhG;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAG7B;;OAEG;IACH,OAAO,CAAC,eAAe;IAGvB;;OAEG;IACH,OAAO,CAAC,wBAAwB;CAInC;AAED,MAAM,WAAW,iBAAiB;IAC9B,WAAW,IAAI,IAAI,CAAC;IACpB,cAAc,IAAI,IAAI,CAAC;IACvB,OAAO,IAAI,IAAI,CAAC;IAChB,SAAS,IAAI,IAAI,CAAC;IAElB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAC;CACxE;AAED,MAAM,WAAW,wBAAwB;IACrC,iBAAiB,IAAI,IAAI,CAAC;IAC1B,oBAAoB,IAAI,IAAI,CAAC;IAC7B,qBAAqB,IAAI,IAAI,CAAC;IAC9B,eAAe,IAAI,IAAI,CAAC;IAExB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAC;CAC9E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Component.js","sourceRoot":"","sources":["../../../src/foundation/component_api/Component.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,6BAA6B,CAAC;AAGlD,OAAO,EAAE,KAAK,EAAW,MAAM,kBAAkB,CAAC;AAGlD,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,KAAK,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE;IACrE,WAAW,GAAgB,EAAE,CAAC;IAE9B,0BAA0B,CAA4D;IAC9F;QACI,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QACxF,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAC1C,CAAC;IAED,WAAW;IACX,CAAC;IAED,cAAc;IACd,CAAC;IAED,OAAO;IACP,CAAC;IAED,SAAS;IACT,CAAC;IAGD,kBAAkB,CAAC,IAAY,EAAE,QAAa,EAAE,QAAa;IAC7D,CAAC;IAED,0BAA0B,CAAC,QAA8D;QACrF,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,0BAA0B,IAAI,EAAE,CAAC;QACxE,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACK,iBAAiB;QACrB,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAEpC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAClC,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxC,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC3B,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9B,IAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACnC,CAAC;qBAAM,CAAC;oBACH,IAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACnC,CAAC;gBACD,SAAS;YACb,CAAC;YACA,IAAY,CAAC,UAAU,CAAC,EAAS,CAAC,CAAC;QACxC,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;QAEnB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC;IACS,MAAM,CAAC,OAAuB,EAAE,YAAsC;QAC5E,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAU,CAAA,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAC9E,sCAAsC;QACtC,6CAA6C;QAC7C,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IACD;;OAEG;IACK,oBAAoB;QACxB,IAAI,CAAC,cAAc,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"Component.js","sourceRoot":"","sources":["../../../src/foundation/component_api/Component.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ import { TemplateHolder } from "../engine/TemplateEngine.js";
|
|
|
6
6
|
*/
|
|
7
7
|
export default class UniHtml {
|
|
8
8
|
_status: Observable<"constructed" | "loading" | "ready">;
|
|
9
|
+
protected _templateHolder?: TemplateHolder;
|
|
9
10
|
/**
|
|
10
11
|
* Unified component lifecycle entrypoint.
|
|
11
12
|
* Loads HTML, then calls preLoadJS, render, and postLoadJS hooks in order.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UniHtml.d.ts","sourceRoot":"","sources":["../../../src/foundation/component_api/UniHtml.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,OAAO;IACjB,OAAO,EAAE,UAAU,CAAC,aAAa,GAAG,SAAS,GAAG,OAAO,CAAC,CAAiC;
|
|
1
|
+
{"version":3,"file":"UniHtml.d.ts","sourceRoot":"","sources":["../../../src/foundation/component_api/UniHtml.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,OAAO;IACjB,OAAO,EAAE,UAAU,CAAC,aAAa,GAAG,SAAS,GAAG,OAAO,CAAC,CAAiC;IAChG,SAAS,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC;IAE3C;;;;OAIG;IACU,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;YAsBrD,SAAS;YAGT,KAAK;cAIH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IACxC;;;;;OAKG;cACa,OAAO,CAAC,MAAM,EAAE,cAAc;IAC9C;;;;;OAKG;cACa,QAAQ,CAAC,MAAM,EAAE,cAAc;IAC/C;;;;;OAKG;cACa,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW,GAAG,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IA4B9F,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAMxC"}
|
|
@@ -5,6 +5,7 @@ import Observable from "../api/Observer.js";
|
|
|
5
5
|
*/
|
|
6
6
|
export default class UniHtml {
|
|
7
7
|
_status = new Observable("constructed");
|
|
8
|
+
_templateHolder;
|
|
8
9
|
/**
|
|
9
10
|
* Unified component lifecycle entrypoint.
|
|
10
11
|
* Loads HTML, then calls preLoadJS, render, and postLoadJS hooks in order.
|
|
@@ -19,6 +20,7 @@ export default class UniHtml {
|
|
|
19
20
|
// Для компонентов (UniHtmlComponent) на этом этапе ещё нельзя полагаться на this.shadowRoot —
|
|
20
21
|
// используйте переданный localRoot для подготовки DOM, данных и навешивания обработчиков.
|
|
21
22
|
// Это предпочтительный этап инициализации для компонентов.
|
|
23
|
+
this._templateHolder = html;
|
|
22
24
|
await this.preLoad(html);
|
|
23
25
|
// render() отвечает за помещение содержимого из localRoot в конечную цель (renderTarget).
|
|
24
26
|
// В UniHtmlComponent.render() после вызова базового render() происходит добавление wrapper в shadowRoot.
|
|
@@ -71,13 +73,18 @@ export default class UniHtml {
|
|
|
71
73
|
resolve();
|
|
72
74
|
}
|
|
73
75
|
};
|
|
74
|
-
child.addEventListener("status-change",
|
|
76
|
+
child.addEventListener("status-change", handler);
|
|
75
77
|
});
|
|
76
78
|
promises.push(promise);
|
|
77
79
|
}
|
|
78
80
|
holder.pushTo(renderTarget);
|
|
79
81
|
return Promise.all(promises).then(() => { return; });
|
|
80
82
|
}
|
|
81
|
-
async dispose() {
|
|
83
|
+
async dispose() {
|
|
84
|
+
if (this._templateHolder) {
|
|
85
|
+
this._templateHolder.engine.dispose();
|
|
86
|
+
this._templateHolder = undefined;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
82
89
|
}
|
|
83
90
|
//# sourceMappingURL=UniHtml.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UniHtml.js","sourceRoot":"","sources":["../../../src/foundation/component_api/UniHtml.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAI5C;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,OAAO;IACjB,OAAO,GAAoD,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"UniHtml.js","sourceRoot":"","sources":["../../../src/foundation/component_api/UniHtml.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAI5C;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,OAAO;IACjB,OAAO,GAAoD,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC;IACtF,eAAe,CAAkB;IAE3C;;;;OAIG;IACI,KAAK,CAAC,IAAI,CAAC,OAAiC;QAC/C,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAClC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QAErB,MAAM,OAAO,GAAmB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnD,MAAM,IAAI,GAAmB,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAE3D,gEAAgE;QAChE,8FAA8F;QAC9F,0FAA0F;QAC1F,2DAA2D;QAC3D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,0FAA0F;QAC1F,yGAAyG;QACzG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACjC,iGAAiG;QACjG,6FAA6F;QAC7F,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAEO,KAAK,CAAC,SAAS,CAAC,IAAoB;QACxC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IACO,KAAK,CAAC,KAAK;QACf,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAES,KAAK,CAAC,OAAO,KAAoB,CAAC;IAC5C;;;;;OAKG;IACO,KAAK,CAAC,OAAO,CAAC,MAAsB,IAAI,CAAC;IACnD;;;;;OAKG;IACO,KAAK,CAAC,QAAQ,CAAC,MAAsB,IAAI,CAAC;IACpD;;;;;OAKG;IACO,KAAK,CAAC,MAAM,CAAC,MAAsB,EAAE,YAA4C;QACvF,OAAO,YAAY,CAAC,UAAU,EAAE,CAAC;YAC7B,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,QAAQ,GAAoB,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC;QACrD,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;YAC5B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAC1C,IAAI,CAAC,KAAK,YAAY,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,OAAO;oBACnE,OAAO,OAAO,EAAE,CAAC;gBAErB,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE;oBAClB,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;wBAC9B,KAAK,CAAC,mBAAmB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;wBACpD,OAAO,EAAE,CAAC;oBACd,CAAC;gBACL,CAAC,CAAC;gBACF,KAAK,CAAC,gBAAgB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YACrD,CAAC,CAAC,CAAC;YACH,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAE5B,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IAEM,KAAK,CAAC,OAAO;QAChB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACtC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACrC,CAAC;IACL,CAAC;CACJ"}
|
|
@@ -16,6 +16,8 @@ export default class Expression {
|
|
|
16
16
|
private readonly code;
|
|
17
17
|
private readonly isAsync;
|
|
18
18
|
private readonly hasReturn;
|
|
19
|
+
private static fnCache;
|
|
20
|
+
private static readonly FN_CACHE_MAX;
|
|
19
21
|
constructor(code: string);
|
|
20
22
|
/**
|
|
21
23
|
* Определить, содержит ли код await
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Expression.d.ts","sourceRoot":"","sources":["../../../src/foundation/engine/Expression.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,UAA4B,MAAM,oBAAoB,CAAC;AAG9D;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,OAAO,OAAO,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAU;
|
|
1
|
+
{"version":3,"file":"Expression.d.ts","sourceRoot":"","sources":["../../../src/foundation/engine/Expression.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,UAA4B,MAAM,oBAAoB,CAAC;AAG9D;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,OAAO,OAAO,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAU;IAEpC,OAAO,CAAC,MAAM,CAAC,OAAO,CAA+B;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAO;gBAE/B,IAAI,EAAE,MAAM;IAMxB;;OAEG;IACH,OAAO,CAAC,WAAW;IAKnB;;OAEG;IACH,OAAO,CAAC,YAAY;IAKpB;;OAEG;IACI,OAAO,IAAI,MAAM;IAIxB;;;OAGG;IACI,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE;IAmBvD;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IA4B1B;;;OAGG;IACI,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAqB1C;;;;;OAKG;IACI,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG;IAkBlE;;OAEG;IACU,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAgBtF;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA8DxB;;OAEG;YACW,qBAAqB;IAkDnC;;OAEG;IACI,iBAAiB,IAAI,OAAO;IAInC;;OAEG;IACI,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAO9E;;OAEG;WACW,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG;IAKxF;;OAEG;WACiB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;CAI/G"}
|
|
@@ -15,6 +15,8 @@ export default class Expression {
|
|
|
15
15
|
code;
|
|
16
16
|
isAsync;
|
|
17
17
|
hasReturn;
|
|
18
|
+
static fnCache = new Map();
|
|
19
|
+
static FN_CACHE_MAX = 500;
|
|
18
20
|
constructor(code) {
|
|
19
21
|
this.code = code.trim();
|
|
20
22
|
this.isAsync = this.detectAsync(this.code);
|
|
@@ -180,21 +182,34 @@ export default class Expression {
|
|
|
180
182
|
functionBody = `return (${codeToExecute})`;
|
|
181
183
|
}
|
|
182
184
|
try {
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
}
|
|
187
|
-
catch (syntaxError) {
|
|
188
|
-
// If implicit return fails, try without it (for statements)
|
|
189
|
-
if (!this.hasReturn) {
|
|
185
|
+
const cacheKey = keys.join('\0') + '\0' + functionBody;
|
|
186
|
+
let fn = Expression.fnCache.get(cacheKey);
|
|
187
|
+
if (!fn) {
|
|
190
188
|
try {
|
|
191
|
-
|
|
192
|
-
return fn.apply(null, values);
|
|
189
|
+
fn = new Function(...keys, functionBody);
|
|
193
190
|
}
|
|
194
|
-
catch {
|
|
195
|
-
|
|
191
|
+
catch (syntaxError) {
|
|
192
|
+
if (!this.hasReturn) {
|
|
193
|
+
try {
|
|
194
|
+
fn = new Function(...keys, codeToExecute);
|
|
195
|
+
}
|
|
196
|
+
catch {
|
|
197
|
+
throw syntaxError;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
throw syntaxError;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
if (Expression.fnCache.size >= Expression.FN_CACHE_MAX) {
|
|
205
|
+
const firstKey = Expression.fnCache.keys().next().value;
|
|
206
|
+
Expression.fnCache.delete(firstKey);
|
|
196
207
|
}
|
|
208
|
+
Expression.fnCache.set(cacheKey, fn);
|
|
197
209
|
}
|
|
210
|
+
return fn.apply(null, values);
|
|
211
|
+
}
|
|
212
|
+
catch (syntaxError) {
|
|
198
213
|
throw syntaxError;
|
|
199
214
|
}
|
|
200
215
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Expression.js","sourceRoot":"","sources":["../../../src/foundation/engine/Expression.ts"],"names":[],"mappings":"AACA,OAAmB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAG9D;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,OAAO,OAAO,UAAU;IACV,IAAI,CAAS;IACb,OAAO,CAAU;IACjB,SAAS,CAAU;
|
|
1
|
+
{"version":3,"file":"Expression.js","sourceRoot":"","sources":["../../../src/foundation/engine/Expression.ts"],"names":[],"mappings":"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"}
|
|
@@ -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<
|
|
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":"AAEA,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,MAAM,CAAC,OAAO,OAAO,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CA0BtB;IACR,OAAO,CAAC,QAAQ,CAAC,aAAa,
|
|
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.
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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(
|
|
276
|
-
|
|
277
|
-
|
|
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
|
|
366
|
-
if (
|
|
367
|
-
|
|
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":"AAAA,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAC5C,OAAO,UAAU,MAAM,iBAAiB,CAAC;AAGzC,MAAM,CAAC,OAAO,OAAO,cAAc;IAEd,aAAa,GAAsB,IAAI;QAEzB;QADpB,WAAW,CAAS;QAC3B,YAA2B,MAAsB;YAAtB,WAAM,GAAN,MAAM,CAAgB;QAAI,CAAC;QAC/C,UAAU,CAAC,IAAa;YAC3B,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;QACM,WAAW,CAAC,MAAqB,EAAE,IAAU,EAAE,IAAY;YAC9D,MAAM,OAAO,GAAG,IAAe,CAAC;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACtC,IAAI,IAAI,EAAE,CAAC;gBACP,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,KAAK,CAAE,CAAC;gBAC5C,MAAM,OAAO,GAAW,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;gBAE3D,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QACM,MAAM,CAAC,OAA6D;YACvE,OAAQ,CAAC,IAAK,CAAC,GAAG,CAAC,OAAQ,CAAC,OAAO,EAAE,OAAQ,CAAC,OAAO,CAAC,CAAC;YACvD,IAAI,CAAC,WAAY,CAAC,GAAG,CAAC,OAAQ,CAAC,OAAO,EAAE,OAAQ,CAAC,OAAO,CAAC,CAAC;YAE1D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;gBAC5C,OAAQ,CAAC,IAAK,CAAC,MAAM,CAAC,OAAQ,CAAC,OAAO,CAAC,CAAC;gBACxC,IAAI,CAAC,WAAY,CAAC,MAAM,CAAC,OAAQ,CAAC,OAAO,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;QACP,CAAC;KACJ,CAAC,IAAI,CAAC,CAAC;IACS,aAAa,GAAsB,IAAI;QACzB;QAA3B,YAA2B,MAAsB;YAAtB,WAAM,GAAN,MAAM,CAAgB;QAAI,CAAC;QAC/C,UAAU,CAAC,IAAa;YAC3B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACxF,CAAC;QACM,WAAW,CAAC,MAAqB,EAAE,IAAU,EAAE,IAAY;YAC9D,MAAM,OAAO,GAAG,IAAe,CAAC;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACtC,IAAI,CAAC,IAAI;gBAAE,OAAO,KAAK,CAAC;YACxB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBACnG,MAAM,aAAa,GAAG,IAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACrE,MAAM,eAAe,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnD,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;gBACvC,MAAM,KAAK,GAAG,EAAE,YAAY,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,IAAI,EAAE,YAAY,UAAU,EAAE,CAAC;oBAC3B,EAAE,CAAC,SAAS,CAAC,CAAC,QAAa,EAAE,EAAE;wBAC3B,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;wBACrB,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;oBACnE,CAAC,CAAC,CAAC;gBACP,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;YACzD,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,CAAC,OAA2D;YAC9D,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAQ,CAAC;YAC1C,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxC,IAAI,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC;oBAC1B,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACtC,CAAC;QACL,CAAC;KACJ,CAAC,IAAI,CAAC,CAAC;IACS,YAAY,GAAsB,IAAI;QACxB;QAA3B,YAA2B,MAAsB;YAAtB,WAAM,GAAN,MAAM,CAAgB;QAAI,CAAC;QAC/C,UAAU,CAAC,IAAa;YAC3B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACvF,CAAC;QACM,WAAW,CAAC,MAAqB,EAAE,IAAU,EAAE,IAAY;YAC9D,MAAM,OAAO,GAAG,IAAe,CAAC;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACtC,IAAI,CAAC,IAAI;gBAAE,OAAO,KAAK,CAAC;YACxB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBAClG,MAAM,SAAS,GAAG,IAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACjE,MAAM,OAAO,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3C,MAAM,QAAQ,GAAG,CAAC,KAAY,EAAE,EAAE;oBAC9B,OAAO,CAAC,IAAI,CAAC,IAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC5C,CAAC,CAAC;gBAEF,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAClD,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;KACJ,CAAC,IAAI,CAAC,CAAC;IACS,mBAAmB,GAAsB,IAAI;QAC/B;QAA3B,YAA2B,MAAsB;YAAtB,WAAM,GAAN,MAAM,CAAgB;QAAI,CAAC;QAC/C,UAAU,CAAC,IAAa;YAC3B,OAAO,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC;QACxC,CAAC;QACM,WAAW,CAAC,MAAqB,EAAE,IAAU,EAAE,IAAY;YAC9D,MAAM,OAAO,GAAG,IAAe,CAAC;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAEtC,IAAI,IAAI,EAAE,CAAC;gBACP,SAAS,UAAU;oBACf,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAE,CAAC;oBAClD,MAAM,UAAU,GAAW,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;oBACjE,MAAM,EAAE,GAAW,OAAO,CAAC,YAAY,CAAC,IAAI,CAAE,CAAC;oBAE/C,OAAO,CAAC,MAAM,EAAE,CAAC;oBAEjB,MAAM,aAAa,GAAG,IAAK,CAAC,GAAG,CAAC,UAAU,CAAY,CAAC;oBACvD,IAAI,CAAC,aAAa,EAAE,CAAC;wBACjB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,qBAAqB,UAAU,cAAc,CAAC,CAAC;wBAC5E,OAAO,IAAI,CAAC;oBAChB,CAAC;oBAAA,CAAC;oBACF,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,EAAqB,EAAE,CAAC,CAAC;gBAC/E,CAAC;gBACD,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACtD,CAAC;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;QACM,MAAM,CAAC,OAAoE;YAC9E,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,OAAQ,CAAC;YACzC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;gBAChB,MAAM,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;YACzC,CAAC;QACL,CAAC;KACJ,CAAC,IAAI,CAAC,CAAC;IACS,aAAa,GAAsB,IAAI;QACzB;QAA3B,YAA2B,MAAsB;YAAtB,WAAM,GAAN,MAAM,CAAgB;QAAI,CAAC;QAC/C,UAAU,CAAC,IAAa;YAC3B,OAAO,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC;QAClC,CAAC;QACM,WAAW,CAAC,MAAqB,EAAE,IAAU,EAAE,IAAY;YAC9D,MAAM,OAAO,GAAG,IAAe,CAAC;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACtC,IAAI,IAAI,EAAE,CAAC;gBACP,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAE,CAAC;gBACxC,MAAM,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC,gBAAgB,CAAC;oBAC7D,OAAO,CAAC,YAAY,CAAC,gBAAgB,CAAC,KAAK,MAAM,CAAC;gBACtD,MAAM,EAAE,GAAiB,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;gBAEzD,MAAM,KAAK,GAAG,EAAE,YAAY,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,IAAI,EAAE,YAAY,UAAU,EAAE,CAAC;oBAC3B,EAAE,CAAC,SAAS,CAAC,CAAC,QAAe,EAAE,EAAE;wBAC7B,OAAO,CAAC,WAAW,GAAG,EAAE,CAAC;wBACzB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;wBACrB,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAC,CAAC;oBACtF,CAAC,CAAC,CAAC;gBACP,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAExE;sEACsD;YAC1D,CAAC;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;QACM,MAAM,CAAC,OAAwE;YAClF,IAAI,OAAQ,CAAC,kBAAkB,EAAE,CAAC;gBAC9B,OAAQ,CAAC,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;gBAC3C,OAAO;YACX,CAAC;YACD,OAAO,CAAC,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;QAChD,CAAC;KACJ,CAAC,IAAI,CAAC,CAAC;IACS,aAAa,GAAsB,IAAI;QACzB;QAA3B,YAA2B,MAAsB;YAAtB,WAAM,GAAN,MAAM,CAAgB;QAAI,CAAC;QAC/C,UAAU,CAAC,OAAgB;YAC9B,OAAO,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC;QACrC,CAAC;QACM,WAAW,CAAC,MAAqB,EAAE,IAAU,EAAE,IAAY;YAC9D,MAAM,OAAO,GAAG,IAAe,CAAC;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACtC,IAAI,IAAI,EAAE,CAAC;gBACP,MAAM,MAAM,GAAG,cAAc,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;gBAE5D,MAAM,KAAK,GAAW,OAAO,CAAC,YAAY,CAAC,OAAO,CAAE,CAAC;gBACrD,MAAM,KAAK,GAAW,OAAO,CAAC,YAAY,CAAC,OAAO,CAAE,CAAC;gBACrD,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAE,CAAC;gBACxC,MAAM,EAAE,GAAiB,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;gBAEzD,MAAM,QAAQ,GAAG,EAAE,YAAY,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChE,IAAI,EAAE,YAAY,UAAU,EAAE,CAAC;oBAC3B,EAAE,CAAC,SAAS,CAAC,CAAC,QAAe,EAAE,EAAE;wBAC7B,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;wBACrB,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;oBACrF,CAAC,CAAC,CAAC;gBACP,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YACrF,CAAC;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;QACM,MAAM,CAAC,OAIb;YACG,MAAM,MAAM,GAAG,EAAE,CAAC;YAElB,MAAM,OAAO,GAAG,OAAQ,CAAC,OAAO,CAAC;YACjC,MAAM,QAAQ,GAAG,OAAQ,CAAC,QAAQ,CAAC;YACnC,MAAM,KAAK,GAAG,OAAQ,CAAC,KAAK,CAAC;YAC7B,MAAM,KAAK,GAAG,OAAQ,CAAC,KAAK,CAAC;YAC7B,MAAM,MAAM,GAAG,OAAQ,CAAC,MAAM,CAAC;YAC/B,MAAM,MAAM,GAAG,OAAQ,CAAC,MAAM,CAAC;YAC/B,MAAM,IAAI,GAAG,OAAQ,CAAC,IAAI,CAAC;YAE3B,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAE5D,MAAM,MAAM,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;YAEzE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9B,MAAM,CAAC,GAAG,CAAC,CAAC;gBACZ,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBAEvC,MAAM,UAAU,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,QAAgB,CAAC,CAAC,CAAC,CAAC;gBAE3E,IAAI,KAAK;oBAAE,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACrC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;gBAEnC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;gBAC5D,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;gBAElD,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;gBAEhC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;YACD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACf,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;QAEP,CAAC;KACJ,CAAC,IAAI,CAAC,CAAC;IACS,YAAY,GAAsB,IAAI;QACxB;QAA3B,YAA2B,MAAsB;YAAtB,WAAM,GAAN,MAAM,CAAgB;QAAI,CAAC;QAC/C,UAAU,CAAC,IAAa;YAC3B,OAAO,IAAI,CAAC,OAAO,KAAK,IAAI;mBACrB,IAAI,CAAC,OAAO,KAAK,QAAQ;mBACzB,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC;QACnC,CAAC;QACM,WAAW,CAAC,MAAqB,EAAE,IAAU,EAAE,IAAY;YAC9D,MAAM,OAAO,GAAG,IAAe,CAAC;YAChC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC;YACtC,IAAI,IAAI,EAAE,CAAC;gBACP,MAAM,QAAQ,GAAwD,EAAE,CAAC;gBACzE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAEjF,IAAI,KAAK,GAAS,OAAO,CAAC;gBAC1B,OAAO,IAAI,EAAE,CAAC;oBACV,IAAI,CAAC,KAAK,CAAC,WAAW;wBAAE,MAAM;oBAC9B,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC;oBAC1B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY;wBAAE,SAAS;oBAC7D,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAgB,CAAC;wBAAE,MAAM;oBACxD,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAgB,EAAE,MAAM,EAAE,cAAc,CAAC,oBAAoB,CAAC,KAAgB,CAAC,EAAE,CAAC,CAAC;gBAChH,CAAC;gBAED,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;oBAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;oBAC5D,IAAI,CAAC,YAAY;wBAAE,SAAS;oBAC5B,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;oBAE3D,IAAI,SAAS,YAAY,UAAU,EAAE,CAAC;wBAClC,SAAS,CAAC,SAAS,CAAC,CAAC,QAAiB,EAAE,EAAE;4BACtC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;4BACrB,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;wBACtD,CAAC,CAAC,CAAC;oBACP,CAAC;gBACL,CAAC;gBAED,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;YAEtD,CAAC;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;QACM,MAAM,CAAC,OAIb;YACG,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAQ,CAAC;YAE5C,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACpB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACtC;kDACkC;YACtC,CAAC,CAAC,CAAC;YAEH,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;gBAC5D,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;oBACnD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;oBAC3D,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;oBAEvD,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;oBACzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;oBAEzC,MAAM;gBACV,CAAC;gBAAA,CAAC;gBAEF,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;gBAC3D,MAAM,cAAc,GAAG,SAAS,YAAY,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;gBAE3F,IAAI,cAAc,EAAE,CAAC;oBACjB,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;oBAC3D,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;oBAEvD,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;oBACzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;oBAEzC,MAAM;gBACV,CAAC;YACL,CAAC;QACL,CAAC;KACJ,CAAC,IAAI,CAAC,CAAC;IACS,UAAU,GAAwB;QAC/C,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,aAAa;QACzD,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa;QAChE,IAAI,CAAC,YAAY;KACpB,CAAC;IAEc,QAAQ,GAA6B,IAAI,GAAG,EAAE,CAAC;IAC9C,iBAAiB,GAAmB,EAAE,CAAC;IACjD,WAAW,GAAa,EAAE,CAAC;IAC3B,MAAM,CAAC,WAAW,CAAC,IAAU,EAAE,KAAY;QAC9C,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;QACpC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC,WAAW,CAAC;IAC9B,CAAC;IACM,MAAM,CAAC,YAAY,CAAC,MAAc,EAAE,KAAY;QACnD,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;QACzE,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,IAAI,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IACO,MAAM;QACV,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QAClD,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEM,QAAQ,CAAC,KAAiB;QAC7B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IACM,WAAW,CAAC,IAAU,EAAE,KAAY;QACvC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,aAAqB,CAAC,WAAW,GAAG,KAAK,CAAC;QAEhD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAQ,IAAI,EAAE;YACnC,UAAU,EAAE,UAAU,CAAC,sBAAsB,GAAG,UAAU,CAAC,YAAY;YACvE,cAAc,EAAE,CAAC,MAAqB,EAAE,IAAU,EAAE,IAAY,EAAE,EAAE;gBAChE,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;oBACtC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;wBAC5B,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;oBAC7B,CAAC,CAAC,CAAC;oBACH,OAAO;gBACX,CAAC;gBAED,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU;oBACnC,IAAI,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC;wBAAE,OAAO;gBAE3E,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBAC5B,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC;YACP,CAAC;SACJ,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,CAAC;QAEV,MAAM,CAAC,WAAW,CAAC,CAAC,IAAU,EAAE,IAAY,EAAE,EAAE;YAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,CAAC,GAAG,aAAa,GAAG,IAAI,CAAC,QAAQ,GAAG,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAClJ,CAAC,EAAE,CAAC;QACR,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,WAAW,CAAC,CAAC,IAAU,EAAE,IAAY,EAAE,EAAE;YAC5C,CAAC,EAAE,CAAC;YACJ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,CAAC,GAAG,YAAY,GAAG,IAAI,CAAC,QAAQ,GAAG,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACrJ,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;IACM,WAAW,CAAC,IAAU;QACzB,MAAM,MAAM,GAAG,IAAI,MAAM,CAAQ,IAAI,EAAE;YACnC,UAAU,EAAE,UAAU,CAAC,sBAAsB,GAAG,UAAU,CAAC,YAAY;SAC1E,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,MAAM,CAAC,WAAW,CAAC,CAAC,IAAU,EAAE,IAAY,EAAE,EAAE;YAC5C,MAAM,OAAO,GAAG,IAAe,CAAC;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3C,IAAI,OAAO;gBAAE,OAAO,EAAE,CAAC;YAEvB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,CAAC,GAAG,yBAAyB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;YAClG,CAAC,EAAE,CAAC;QACR,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,WAAW,CAAC,CAAC,IAAU,EAAE,IAAY,EAAE,EAAE;YAC5C,MAAM,OAAO,GAAG,IAAe,CAAC;YAChC,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC;YAEvB,CAAC,EAAE,CAAC;YACJ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,CAAC,GAAG,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpG,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IACO,MAAM,CAAC,oBAAoB,CAAC,IAAa;QAC7C,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ;AACD,MAAM,OAAO,cAAc;IACP,MAAM,CAAiB;IAChC,gBAAgB,CAAiC;IAExD,YAAmB,MAAsB,EAAE,gBAAkC;QACzE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC7C,CAAC;IAEM,MAAM,CAAC,OAAuC;QACjD,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;IACpC,CAAC;CACJ;AACD,MAAM,OAAO,MAAM;IACP,oBAAoB,GAAuC,EAAE,CAAC;IAC9D,oBAAoB,GAAuC,EAAE,CAAC;IAE9D,IAAI,CAAQ;IACb,MAAM,CAA0B;IAC/B,cAAc,CAAqD;IACnE,UAAU,CAAS;IAE3B,YAAmB,IAAU,EAAE,QAI9B;QAEG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,QAAQ,EAAE,UAAU,IAAI,UAAU,CAAC,QAAQ,CAAC;QAC9D,IAAI,CAAC,cAAc,GAAG,QAAQ,EAAE,cAAc,CAAC;IACnD,CAAC;IAEM,IAAI,CAAC,IAAW,EAAE,IAAQ,EAAE,cAAkE;QACjG,IAAI,CAAC,IAAI;YAAE,IAAI,GAAG,IAAI,CAAC,IAAK,CAAC;QAC7B,IAAI,CAAC,cAAc;YAAE,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1D,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC;YAAE,OAAO;QAErD,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QAExD,IAAI,cAAc,EAAE,CAAC;YACjB,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBAC5B,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,UAAU,CAAC,aAAa;oBAAE,OAAO;gBAC3E,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;QACP,CAAC;QACD,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IACO,WAAW,CAAC,IAAU,EAAE,IAAY;QACxC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;IAEM,WAAW,CAAC,QAAwC;QACvD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IACM,WAAW,CAAC,QAAwC;QACvD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;CACJ"}
|
|
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;
|
|
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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"}
|
package/package.json
CHANGED
package/src/foundation/Theme.ts
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import Fetcher from "./Fetcher.js";
|
|
2
2
|
|
|
3
3
|
export let ACTIVE_THEME_KEY = "Empty";
|
|
4
|
-
|
|
4
|
+
let activeThemeSheet: CSSStyleSheet | null = null;
|
|
5
|
+
|
|
6
|
+
export async function loadTheme(name: string): Promise<string> {
|
|
5
7
|
// Use hosting-root absolute path so GitHub Pages subfolder deployments (e.g. /Hellper/) keep the subfolder.
|
|
6
8
|
return Fetcher.fetchText(`/resources/${name}.theme.css`);
|
|
7
9
|
}
|
|
8
|
-
export async function loadThemeAsInstant(name: string)
|
|
10
|
+
export async function loadThemeAsInstant(name: string): Promise<CSSStyleSheet> {
|
|
9
11
|
let theme: string = await loadTheme(name);
|
|
10
12
|
const sheet = new CSSStyleSheet();
|
|
11
13
|
sheet.replaceSync(theme);
|
|
@@ -24,6 +26,18 @@ export async function setTheme(name: string) {
|
|
|
24
26
|
theme = theme.replace(/\.[\w-]+-theme/g, ":root");
|
|
25
27
|
const sheet = new CSSStyleSheet();
|
|
26
28
|
sheet.replaceSync(theme);
|
|
27
|
-
|
|
29
|
+
if (activeThemeSheet) {
|
|
30
|
+
const index = document.adoptedStyleSheets.indexOf(activeThemeSheet);
|
|
31
|
+
if (index !== -1) {
|
|
32
|
+
const sheets = [...document.adoptedStyleSheets];
|
|
33
|
+
sheets[index] = sheet;
|
|
34
|
+
document.adoptedStyleSheets = sheets;
|
|
35
|
+
} else {
|
|
36
|
+
document.adoptedStyleSheets = [...document.adoptedStyleSheets, sheet];
|
|
37
|
+
}
|
|
38
|
+
} else {
|
|
39
|
+
document.adoptedStyleSheets = [...document.adoptedStyleSheets, sheet];
|
|
40
|
+
}
|
|
41
|
+
activeThemeSheet = sheet;
|
|
28
42
|
}
|
|
29
43
|
|
|
@@ -8,6 +8,7 @@ import { TemplateHolder } from "../engine/TemplateEngine.js";
|
|
|
8
8
|
*/
|
|
9
9
|
export default class UniHtml {
|
|
10
10
|
public _status: Observable<"constructed" | "loading" | "ready"> = new Observable("constructed");
|
|
11
|
+
protected _templateHolder?: TemplateHolder;
|
|
11
12
|
|
|
12
13
|
/**
|
|
13
14
|
* Unified component lifecycle entrypoint.
|
|
@@ -25,6 +26,7 @@ export default class UniHtml {
|
|
|
25
26
|
// Для компонентов (UniHtmlComponent) на этом этапе ещё нельзя полагаться на this.shadowRoot —
|
|
26
27
|
// используйте переданный localRoot для подготовки DOM, данных и навешивания обработчиков.
|
|
27
28
|
// Это предпочтительный этап инициализации для компонентов.
|
|
29
|
+
this._templateHolder = html;
|
|
28
30
|
await this.preLoad(html);
|
|
29
31
|
// render() отвечает за помещение содержимого из localRoot в конечную цель (renderTarget).
|
|
30
32
|
// В UniHtmlComponent.render() после вызова базового render() происходит добавление wrapper в shadowRoot.
|
|
@@ -81,7 +83,7 @@ export default class UniHtml {
|
|
|
81
83
|
resolve();
|
|
82
84
|
}
|
|
83
85
|
};
|
|
84
|
-
child.addEventListener("status-change",
|
|
86
|
+
child.addEventListener("status-change", handler);
|
|
85
87
|
});
|
|
86
88
|
promises.push(promise);
|
|
87
89
|
}
|
|
@@ -91,5 +93,10 @@ export default class UniHtml {
|
|
|
91
93
|
return Promise.all(promises).then(() => { return; });
|
|
92
94
|
}
|
|
93
95
|
|
|
94
|
-
public async dispose(): Promise<void> {
|
|
96
|
+
public async dispose(): Promise<void> {
|
|
97
|
+
if (this._templateHolder) {
|
|
98
|
+
this._templateHolder.engine.dispose();
|
|
99
|
+
this._templateHolder = undefined;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
95
102
|
}
|
|
@@ -19,6 +19,9 @@ export default class Expression {
|
|
|
19
19
|
private readonly isAsync: boolean;
|
|
20
20
|
private readonly hasReturn: boolean;
|
|
21
21
|
|
|
22
|
+
private static fnCache = new Map<string, Function>();
|
|
23
|
+
private static readonly FN_CACHE_MAX = 500;
|
|
24
|
+
|
|
22
25
|
constructor(code: string) {
|
|
23
26
|
this.code = code.trim();
|
|
24
27
|
this.isAsync = this.detectAsync(this.code);
|
|
@@ -79,7 +82,7 @@ export default class Expression {
|
|
|
79
82
|
const identifiers: string[] = [];
|
|
80
83
|
// Regex для идентификаторов (не после точки)
|
|
81
84
|
const regex = /(?<![.\w])([a-zA-Z_$][a-zA-Z0-9_$]*)/g;
|
|
82
|
-
|
|
85
|
+
|
|
83
86
|
// Список встроенных глобальных объектов, которые нужно игнорировать
|
|
84
87
|
const builtins = new Set([
|
|
85
88
|
'true', 'false', 'null', 'undefined', 'NaN', 'Infinity',
|
|
@@ -110,7 +113,7 @@ export default class Expression {
|
|
|
110
113
|
public transformCode(scope: Scope): string {
|
|
111
114
|
const context = scope.getVariables();
|
|
112
115
|
let transformedCode = this.code;
|
|
113
|
-
|
|
116
|
+
|
|
114
117
|
// Находим Observable переменные
|
|
115
118
|
const observableVars = new Set<string>();
|
|
116
119
|
for (const [key, value] of Object.entries(context)) {
|
|
@@ -178,7 +181,7 @@ export default class Expression {
|
|
|
178
181
|
// Handle reserved keywords used as variable names (e.g., "super")
|
|
179
182
|
const reservedKeywords = ['super', 'this', 'arguments'];
|
|
180
183
|
const keyMapping: Record<string, string> = {};
|
|
181
|
-
|
|
184
|
+
|
|
182
185
|
const keys = Object.keys(context).map(key => {
|
|
183
186
|
if (reservedKeywords.includes(key)) {
|
|
184
187
|
const safeKey = `__${key}__`;
|
|
@@ -188,9 +191,9 @@ export default class Expression {
|
|
|
188
191
|
return key;
|
|
189
192
|
});
|
|
190
193
|
const values = Object.values(context);
|
|
191
|
-
|
|
194
|
+
|
|
192
195
|
let codeToExecute = codeOverride ?? this.code;
|
|
193
|
-
|
|
196
|
+
|
|
194
197
|
// Replace reserved keywords in code with safe alternatives
|
|
195
198
|
for (const [original, safe] of Object.entries(keyMapping)) {
|
|
196
199
|
const regex = new RegExp(`\\b${original}\\b`, 'g');
|
|
@@ -208,19 +211,30 @@ export default class Expression {
|
|
|
208
211
|
}
|
|
209
212
|
|
|
210
213
|
try {
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
} catch (syntaxError) {
|
|
215
|
-
// If implicit return fails, try without it (for statements)
|
|
216
|
-
if (!this.hasReturn) {
|
|
214
|
+
const cacheKey = keys.join('\0') + '\0' + functionBody;
|
|
215
|
+
let fn = Expression.fnCache.get(cacheKey);
|
|
216
|
+
if (!fn) {
|
|
217
217
|
try {
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
218
|
+
fn = new Function(...keys, functionBody);
|
|
219
|
+
} catch (syntaxError) {
|
|
220
|
+
if (!this.hasReturn) {
|
|
221
|
+
try {
|
|
222
|
+
fn = new Function(...keys, codeToExecute);
|
|
223
|
+
} catch {
|
|
224
|
+
throw syntaxError;
|
|
225
|
+
}
|
|
226
|
+
} else {
|
|
227
|
+
throw syntaxError;
|
|
228
|
+
}
|
|
222
229
|
}
|
|
230
|
+
if (Expression.fnCache.size >= Expression.FN_CACHE_MAX) {
|
|
231
|
+
const firstKey = Expression.fnCache.keys().next().value;
|
|
232
|
+
Expression.fnCache.delete(firstKey);
|
|
233
|
+
}
|
|
234
|
+
Expression.fnCache.set(cacheKey, fn);
|
|
223
235
|
}
|
|
236
|
+
return fn.apply(null, values);
|
|
237
|
+
} catch (syntaxError) {
|
|
224
238
|
throw syntaxError;
|
|
225
239
|
}
|
|
226
240
|
}
|
|
@@ -232,7 +246,7 @@ export default class Expression {
|
|
|
232
246
|
// Handle reserved keywords used as variable names (e.g., "super")
|
|
233
247
|
const reservedKeywords = ['super', 'this', 'arguments'];
|
|
234
248
|
const keyMapping: Record<string, string> = {};
|
|
235
|
-
|
|
249
|
+
|
|
236
250
|
const keys = Object.keys(context).map(key => {
|
|
237
251
|
if (reservedKeywords.includes(key)) {
|
|
238
252
|
const safeKey = `__${key}__`;
|
|
@@ -242,9 +256,9 @@ export default class Expression {
|
|
|
242
256
|
return key;
|
|
243
257
|
});
|
|
244
258
|
const values = Object.values(context);
|
|
245
|
-
|
|
259
|
+
|
|
246
260
|
let codeToExecute = codeOverride ?? this.code;
|
|
247
|
-
|
|
261
|
+
|
|
248
262
|
// Replace reserved keywords in code with safe alternatives
|
|
249
263
|
for (const [original, safe] of Object.entries(keyMapping)) {
|
|
250
264
|
const regex = new RegExp(`\\b${original}\\b`, 'g');
|
|
@@ -261,13 +275,13 @@ export default class Expression {
|
|
|
261
275
|
|
|
262
276
|
try {
|
|
263
277
|
// Create async function
|
|
264
|
-
const AsyncFunction = Object.getPrototypeOf(async function(){}).constructor;
|
|
278
|
+
const AsyncFunction = Object.getPrototypeOf(async function () { }).constructor;
|
|
265
279
|
const fn = new AsyncFunction(...keys, functionBody);
|
|
266
280
|
return await fn.apply(null, values);
|
|
267
281
|
} catch (syntaxError) {
|
|
268
282
|
if (!this.hasReturn) {
|
|
269
283
|
try {
|
|
270
|
-
const AsyncFunction = Object.getPrototypeOf(async function(){}).constructor;
|
|
284
|
+
const AsyncFunction = Object.getPrototypeOf(async function () { }).constructor;
|
|
271
285
|
const fn = new AsyncFunction(...keys, codeToExecute);
|
|
272
286
|
return await fn.apply(null, values);
|
|
273
287
|
} catch {
|
|
@@ -25,7 +25,7 @@ export default class TemplateEngine {
|
|
|
25
25
|
context!.data!.set(context!.refName, context!.element);
|
|
26
26
|
this.globalScope!.set(context!.refName, context!.element);
|
|
27
27
|
|
|
28
|
-
this.engine.
|
|
28
|
+
this.engine.addBinding(context!.element, () => {
|
|
29
29
|
context!.data!.delete(context!.refName);
|
|
30
30
|
this.globalScope!.delete(context!.refName);
|
|
31
31
|
});
|
|
@@ -46,10 +46,12 @@ export default class TemplateEngine {
|
|
|
46
46
|
const of = valueExpression.eval(data!);
|
|
47
47
|
const value = of instanceof Observable ? of.getObject() : of;
|
|
48
48
|
if (of instanceof Observable) {
|
|
49
|
-
|
|
49
|
+
const handler = (newValue: any) => {
|
|
50
50
|
this.engine.change();
|
|
51
51
|
this.doWork({ element, name: attributeName, value: newValue });
|
|
52
|
-
}
|
|
52
|
+
};
|
|
53
|
+
of.subscribe(handler);
|
|
54
|
+
this.engine.addBinding(element, () => of.unsubscribe(handler));
|
|
53
55
|
}
|
|
54
56
|
this.doWork({ element, name: attributeName, value });
|
|
55
57
|
}
|
|
@@ -82,6 +84,7 @@ export default class TemplateEngine {
|
|
|
82
84
|
};
|
|
83
85
|
|
|
84
86
|
element.addEventListener(eventName, listener);
|
|
87
|
+
this.engine.addBinding(element, () => element.removeEventListener(eventName, listener));
|
|
85
88
|
}
|
|
86
89
|
return false;
|
|
87
90
|
}
|
|
@@ -140,11 +143,13 @@ export default class TemplateEngine {
|
|
|
140
143
|
|
|
141
144
|
const value = of instanceof Observable ? of.getObject() : of;
|
|
142
145
|
if (of instanceof Observable) {
|
|
143
|
-
|
|
146
|
+
const handler = (newValue: any[]) => {
|
|
144
147
|
element.textContent = "";
|
|
145
148
|
this.engine.change();
|
|
146
149
|
this.doWork({ element, value: newValue, allowHtmlInjection: allowHtmlInjection });
|
|
147
|
-
}
|
|
150
|
+
};
|
|
151
|
+
of.subscribe(handler);
|
|
152
|
+
this.engine.addBinding(element, () => of.unsubscribe(handler));
|
|
148
153
|
}
|
|
149
154
|
this.doWork({ element, value, allowHtmlInjection: allowHtmlInjection });
|
|
150
155
|
|
|
@@ -179,10 +184,12 @@ export default class TemplateEngine {
|
|
|
179
184
|
|
|
180
185
|
const iterable = of instanceof Observable ? of.getObject() : of;
|
|
181
186
|
if (of instanceof Observable) {
|
|
182
|
-
|
|
187
|
+
const handler = (newValue: any[]) => {
|
|
183
188
|
this.engine.change();
|
|
184
189
|
this.doWork({ element, iterable: newValue, index, value, walker, shadow, data });
|
|
185
|
-
}
|
|
190
|
+
};
|
|
191
|
+
of.subscribe(handler);
|
|
192
|
+
this.engine.addBinding(element, () => of.unsubscribe(handler));
|
|
186
193
|
}
|
|
187
194
|
this.doWork({ element, iterable: iterable, index, value, walker, shadow, data });
|
|
188
195
|
}
|
|
@@ -204,6 +211,7 @@ export default class TemplateEngine {
|
|
|
204
211
|
const data = context!.data;
|
|
205
212
|
|
|
206
213
|
element.childNodes.forEach(n => this.engine.fullCleanup(n));
|
|
214
|
+
while (element.firstChild) element.removeChild(element.firstChild);
|
|
207
215
|
|
|
208
216
|
const lenght = typeof iterable === "number" ? iterable : iterable.length;
|
|
209
217
|
|
|
@@ -258,10 +266,12 @@ export default class TemplateEngine {
|
|
|
258
266
|
const condition = new Expression(conditionAtt).eval(data!);
|
|
259
267
|
|
|
260
268
|
if (condition instanceof Observable) {
|
|
261
|
-
|
|
269
|
+
const handler = (newValue: boolean) => {
|
|
262
270
|
this.engine.change();
|
|
263
271
|
this.doWork({ walker, data, allParts: allParts });
|
|
264
|
-
}
|
|
272
|
+
};
|
|
273
|
+
condition.subscribe(handler);
|
|
274
|
+
this.engine.addBinding(part.element, () => condition.unsubscribe(handler));
|
|
265
275
|
}
|
|
266
276
|
}
|
|
267
277
|
|
|
@@ -278,9 +288,8 @@ export default class TemplateEngine {
|
|
|
278
288
|
const { walker, data, allParts } = context!;
|
|
279
289
|
|
|
280
290
|
allParts.forEach(part => {
|
|
281
|
-
this.engine.fullCleanup(
|
|
282
|
-
|
|
283
|
-
this.engine.fullCleanup(n));*/
|
|
291
|
+
part.element.childNodes.forEach(n => this.engine.fullCleanup(n));
|
|
292
|
+
while (part.element.firstChild) part.element.removeChild(part.element.firstChild);
|
|
284
293
|
});
|
|
285
294
|
|
|
286
295
|
for (const part of allParts) {
|
|
@@ -316,9 +325,24 @@ export default class TemplateEngine {
|
|
|
316
325
|
this.if_component
|
|
317
326
|
];
|
|
318
327
|
|
|
319
|
-
public readonly bindings: Map<
|
|
328
|
+
public readonly bindings: Map<Node, (() => void)[]> = new Map();
|
|
320
329
|
private readonly onChangeCallbacks: (() => void)[] = [];
|
|
321
330
|
public processLogs: string[] = [];
|
|
331
|
+
public addBinding(node: Node, cleanup: () => void): void {
|
|
332
|
+
const existing = this.bindings.get(node);
|
|
333
|
+
if (existing) {
|
|
334
|
+
existing.push(cleanup);
|
|
335
|
+
} else {
|
|
336
|
+
this.bindings.set(node, [cleanup]);
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
public dispose(): void {
|
|
340
|
+
for (const [, cleanups] of this.bindings) {
|
|
341
|
+
cleanups.forEach(cleanup => cleanup());
|
|
342
|
+
}
|
|
343
|
+
this.bindings.clear();
|
|
344
|
+
this.onChangeCallbacks.length = 0;
|
|
345
|
+
}
|
|
322
346
|
public static fullProcess(root: Node, scope: Scope): string[] {
|
|
323
347
|
const engine = new TemplateEngine();
|
|
324
348
|
engine.fullProcess(root, scope);
|
|
@@ -379,8 +403,11 @@ export default class TemplateEngine {
|
|
|
379
403
|
let i = 0;
|
|
380
404
|
walker.onEnterNode((node: Node, data?: Scope) => {
|
|
381
405
|
const element = node as Element;
|
|
382
|
-
const
|
|
383
|
-
if (
|
|
406
|
+
const bindings = this.bindings.get(element);
|
|
407
|
+
if (bindings) {
|
|
408
|
+
bindings.forEach(b => b());
|
|
409
|
+
this.bindings.delete(element);
|
|
410
|
+
}
|
|
384
411
|
|
|
385
412
|
this.processLogs.push((" ").repeat(i) + "layer " + i + " Cleaning up Starting: " + node.nodeName);
|
|
386
413
|
i++;
|
|
@@ -50,14 +50,21 @@ export abstract class Router {
|
|
|
50
50
|
window.location.replace(url.href);
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
|
-
|
|
53
|
+
|
|
54
54
|
public static tryRouteTo(url: URL, pushState: boolean = true) {
|
|
55
55
|
const urlH = new URL(Fetcher.resolveUrl(url.href));
|
|
56
56
|
try {
|
|
57
57
|
const found: Route = this.tryFindRoute(urlH);
|
|
58
|
-
|
|
58
|
+
|
|
59
59
|
let pageContainer = document.getElementById('page');
|
|
60
|
-
|
|
60
|
+
|
|
61
|
+
if (this.currentPage) {
|
|
62
|
+
this.currentPage.dispose();
|
|
63
|
+
}
|
|
64
|
+
while (pageContainer.firstChild) {
|
|
65
|
+
pageContainer.removeChild(pageContainer.firstChild);
|
|
66
|
+
}
|
|
67
|
+
|
|
61
68
|
const page: UniHtml = this.createPage(found, urlH.searchParams);
|
|
62
69
|
this.currentPage = page;
|
|
63
70
|
|