@web-atoms/core 2.6.24 → 2.6.26

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 (130) hide show
  1. package/dist/core/XNode.d.ts +1 -13
  2. package/dist/core/XNode.d.ts.map +1 -1
  3. package/dist/core/XNode.js +2 -24
  4. package/dist/core/XNode.js.map +1 -1
  5. package/dist/tsconfig.tsbuildinfo +1 -1
  6. package/dist-esm/App.js +231 -235
  7. package/dist-esm/Atom.js +93 -96
  8. package/dist-esm/MockApp.js +17 -18
  9. package/dist-esm/Pack.js +1 -3
  10. package/dist-esm/core/AtomBinder.js +189 -187
  11. package/dist-esm/core/AtomComponent.js +479 -502
  12. package/dist-esm/core/AtomDispatcher.js +46 -48
  13. package/dist-esm/core/AtomDisposableList.js +24 -25
  14. package/dist-esm/core/AtomEnumerator.js +15 -16
  15. package/dist-esm/core/AtomList.js +193 -192
  16. package/dist-esm/core/AtomLoader.js +229 -215
  17. package/dist-esm/core/AtomMap.js +7 -8
  18. package/dist-esm/core/AtomOnce.js +22 -24
  19. package/dist-esm/core/AtomSelectableList.js +240 -243
  20. package/dist-esm/core/AtomUri.js +70 -72
  21. package/dist-esm/core/AtomWatcher.js +105 -111
  22. package/dist-esm/core/Bind.js +271 -269
  23. package/dist-esm/core/BindableProperty.js +26 -27
  24. package/dist-esm/core/CancelTokenFactory.js +21 -24
  25. package/dist-esm/core/Color.js +1 -2
  26. package/dist-esm/core/Colors.js +545 -231
  27. package/dist-esm/core/Command.js +236 -223
  28. package/dist-esm/core/Defer.js +21 -22
  29. package/dist-esm/core/EventScope.js +96 -88
  30. package/dist-esm/core/ExpressionParser.js +132 -144
  31. package/dist-esm/core/ExtendControl.js +7 -8
  32. package/dist-esm/core/FormattedError.js +7 -8
  33. package/dist-esm/core/FormattedString.js +4 -5
  34. package/dist-esm/core/Hacks.js +41 -42
  35. package/dist-esm/core/IFetchEvent.js +1 -2
  36. package/dist-esm/core/IScreen.js +1 -2
  37. package/dist-esm/core/IValueConverter.js +1 -2
  38. package/dist-esm/core/InheritedProperty.js +61 -63
  39. package/dist-esm/core/InjectProperty.js +12 -13
  40. package/dist-esm/core/KeyValuePairs.js +1 -2
  41. package/dist-esm/core/Markdown.js +14 -17
  42. package/dist-esm/core/MarkdownError.js +6 -7
  43. package/dist-esm/core/PropertyBinding.js +1 -2
  44. package/dist-esm/core/PropertyMap.js +28 -27
  45. package/dist-esm/core/Route.js +149 -148
  46. package/dist-esm/core/SingleInvoker.js +32 -35
  47. package/dist-esm/core/StringHelper.js +49 -51
  48. package/dist-esm/core/TransientDisposable.js +14 -16
  49. package/dist-esm/core/WatchProperty.js +18 -17
  50. package/dist-esm/core/WebImage.js +7 -8
  51. package/dist-esm/core/XNode.d.ts +1 -13
  52. package/dist-esm/core/XNode.d.ts.map +1 -1
  53. package/dist-esm/core/XNode.js +116 -120
  54. package/dist-esm/core/XNode.js.map +1 -1
  55. package/dist-esm/core/sleep.js +21 -24
  56. package/dist-esm/core/types.js +102 -103
  57. package/dist-esm/di/DISingleton.js +7 -5
  58. package/dist-esm/di/DITransient.js +7 -5
  59. package/dist-esm/di/IMockOrInject.js +1 -2
  60. package/dist-esm/di/IServiceProvider.js +1 -2
  61. package/dist-esm/di/Inject.js +67 -67
  62. package/dist-esm/di/Register.js +25 -26
  63. package/dist-esm/di/RegisterScoped.js +4 -3
  64. package/dist-esm/di/RegisterSingleton.js +4 -3
  65. package/dist-esm/di/ServiceCollection.js +38 -37
  66. package/dist-esm/di/ServiceProvider.js +94 -94
  67. package/dist-esm/di/TypeKey.js +13 -12
  68. package/dist-esm/services/BusyIndicatorService.js +7 -11
  69. package/dist-esm/services/CacheService.js +54 -62
  70. package/dist-esm/services/FetchBuilder.js +327 -278
  71. package/dist-esm/services/JsonService.js +118 -116
  72. package/dist-esm/services/MockNavigationService.js +127 -126
  73. package/dist-esm/services/NavigationService.js +95 -102
  74. package/dist-esm/services/ReferenceService.js +30 -33
  75. package/dist-esm/services/http/AjaxOptions.js +1 -3
  76. package/dist-esm/services/http/JsonError.js +16 -15
  77. package/dist-esm/services/http/RestService.js +314 -323
  78. package/dist-esm/style/StyleRule.js +1 -2
  79. package/dist-esm/test.js +0 -1
  80. package/dist-esm/tsconfig.esm.tsbuildinfo +1 -1
  81. package/dist-esm/unit/AtomTest.js +10 -11
  82. package/dist-esm/view-model/Action.js +258 -223
  83. package/dist-esm/view-model/AtomViewModel.js +234 -232
  84. package/dist-esm/view-model/AtomWindowViewModel.js +13 -14
  85. package/dist-esm/view-model/BindableUrlParameter.js +7 -8
  86. package/dist-esm/view-model/Delay.js +21 -25
  87. package/dist-esm/view-model/Disposable.js +28 -29
  88. package/dist-esm/view-model/Load.js +72 -73
  89. package/dist-esm/view-model/Once.js +33 -35
  90. package/dist-esm/view-model/baseTypes.js +4 -5
  91. package/dist-esm/view-model/bindPromise.js +24 -27
  92. package/dist-esm/view-model/bindProperty.js +3 -4
  93. package/dist-esm/view-model/bindUrlParameter.js +39 -43
  94. package/dist-esm/web/controls/AtomComboBox.js +56 -63
  95. package/dist-esm/web/controls/AtomControl.js +485 -490
  96. package/dist-esm/web/controls/AtomGridSplitter.js +57 -50
  97. package/dist-esm/web/controls/AtomGridView.js +230 -222
  98. package/dist-esm/web/controls/AtomItemsControl.js +677 -688
  99. package/dist-esm/web/controls/AtomPage.js +6 -7
  100. package/dist-esm/web/controls/AtomTemplate.js +1 -3
  101. package/dist-esm/web/controls/AtomTemplateControl.js +28 -29
  102. package/dist-esm/web/controls/AtomViewStack.js +19 -20
  103. package/dist-esm/web/core/AtomUI.js +200 -200
  104. package/dist-esm/web/core/Encoder.js +142 -152
  105. package/dist-esm/web/core/HtmlNode.js +141 -139
  106. package/dist-esm/web/images/Busy.js +1 -2
  107. package/dist-esm/web/images/BusyDataUrl.js +2 -869
  108. package/dist-esm/web/images/Button.js +1 -2
  109. package/dist-esm/web/images/ButtonDataUrl.js +2 -30
  110. package/dist-esm/web/images/CloseButton.js +1 -2
  111. package/dist-esm/web/images/CloseButtonDataUrl.js +2 -30
  112. package/dist-esm/web/images/CloseButtonHover.js +1 -2
  113. package/dist-esm/web/images/CloseButtonHoverDataUrl.js +2 -24
  114. package/dist-esm/web/services/LastTarget.js +31 -29
  115. package/dist-esm/web/services/MarkdownService.js +19 -31
  116. package/dist-esm/web/services/NotificationPopup.js +28 -21
  117. package/dist-esm/web/services/PopupService.js +512 -478
  118. package/dist-esm/web/services/PopupWindow.js +266 -247
  119. package/dist-esm/web/styles/AtomAlertWindowStyle.js +39 -40
  120. package/dist-esm/web/styles/AtomFrameStyle.js +15 -16
  121. package/dist-esm/web/styles/AtomNotificationStyle.js +19 -20
  122. package/dist-esm/web/styles/AtomPageLinkStyle.js +11 -12
  123. package/dist-esm/web/styles/AtomPopupStyle.js +9 -10
  124. package/dist-esm/web/styles/AtomStyle.js +61 -64
  125. package/dist-esm/web/styles/AtomStyleSheet.js +50 -51
  126. package/dist-esm/web/styles/AtomWindowStyle.js +116 -117
  127. package/dist-esm/web/styles/IStyleDeclaration.js +1 -2
  128. package/dist-esm/web/styles/StyleBuilder.js +79 -80
  129. package/package.json +1 -1
  130. package/src/core/XNode.ts +12 -38
@@ -2,42 +2,39 @@ import { __decorate } from "tslib";
2
2
  import DITransient from "../di/DITransient.js";
3
3
  import TransientDisposable from "./TransientDisposable.js";
4
4
  let SingleInvoker = class SingleInvoker extends TransientDisposable {
5
- constructor() {
6
- super(...arguments);
7
- this.keys = new Map();
5
+ constructor() {
6
+ super(...arguments);
7
+ this.keys = new Map();
8
+ }
9
+ dispose() {
10
+ for (const [key, index] of this.keys.entries()) {
11
+ clearTimeout(index);
8
12
  }
9
- dispose() {
10
- for (const [key, index] of this.keys.entries()) {
11
- clearTimeout(index);
12
- }
13
- this.keys.clear();
13
+ this.keys.clear();
14
+ }
15
+ invoke(key, fx, delay = 100) {
16
+ const keys = this.keys;
17
+ const e = keys.get(key);
18
+ if (e) {
19
+ clearTimeout(e);
14
20
  }
15
- invoke(key, fx, delay = 100) {
16
- const keys = this.keys;
17
- const e = keys.get(key);
18
- if (e) {
19
- clearTimeout(e);
20
- }
21
- keys.set(key, setTimeout(() => {
22
- keys.delete(key);
23
- fx();
24
- }, delay));
25
- }
26
- queue(fx, delay = 1, key) {
27
- key ??= fx.toString();
28
- const keys = this.keys;
29
- const e = keys.get(key);
30
- if (e) {
31
- clearTimeout(e);
32
- }
33
- keys.set(key, setTimeout(() => {
34
- keys.delete(key);
35
- fx();
36
- }, delay));
21
+ keys.set(key, setTimeout(() => {
22
+ keys.delete(key);
23
+ fx();
24
+ }, delay));
25
+ }
26
+ queue(fx, delay = 1, key) {
27
+ key ??= fx.toString();
28
+ const keys = this.keys;
29
+ const e = keys.get(key);
30
+ if (e) {
31
+ clearTimeout(e);
37
32
  }
33
+ keys.set(key, setTimeout(() => {
34
+ keys.delete(key);
35
+ fx();
36
+ }, delay));
37
+ }
38
38
  };
39
- SingleInvoker = __decorate([
40
- DITransient()
41
- ], SingleInvoker);
42
- export default SingleInvoker;
43
- //# sourceMappingURL=SingleInvoker.js.map
39
+ SingleInvoker = __decorate([DITransient()], SingleInvoker);
40
+ export default SingleInvoker;
@@ -1,52 +1,50 @@
1
1
  export class StringHelper {
2
- static escapeRegExp(text) {
3
- return text.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
4
- }
5
- static createContainsRegExp(text) {
6
- return new RegExp(this.escapeRegExp(text), "i");
7
- }
8
- static createContainsAnyWordRegExp(text) {
9
- return new RegExp(text.split(/\s+/g).map((x) => `(${this.escapeRegExp(x)})`).join("|"), "i");
10
- }
11
- static containsIgnoreCase(source, test) {
12
- if (!source) {
13
- return false;
14
- }
15
- if (!test) {
16
- return true;
17
- }
18
- return this.createContainsRegExp(test).test(source);
19
- }
20
- static containsAnyWordIgnoreCase(source, test) {
21
- if (!source) {
22
- return false;
23
- }
24
- if (!test) {
25
- return true;
26
- }
27
- return this.createContainsAnyWordRegExp(test).test(source);
28
- }
29
- static fromCamelToHyphen(input) {
30
- return input.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
31
- }
32
- static fromCamelToUnderscore(input) {
33
- return input.replace(/([a-z])([A-Z])/g, "$1_$2").toLowerCase();
34
- }
35
- static fromCamelToPascal(input) {
36
- return input[0].toUpperCase() + input.substr(1);
37
- }
38
- static fromHyphenToCamel(input) {
39
- return input.replace(/-([a-z])/g, (g) => g[1].toUpperCase());
40
- }
41
- static fromUnderscoreToCamel(input) {
42
- return input.replace(/\_([a-z])/g, (g) => g[1].toUpperCase());
43
- }
44
- static fromPascalToCamel(input) {
45
- return input[0].toLowerCase() + input.substr(1);
46
- }
47
- static fromPascalToTitleCase(s) {
48
- return s.replace(/([A-Z])/gm, (x, g, i) => i ? " " + x : x);
49
- }
50
- ;
51
- }
52
- //# sourceMappingURL=StringHelper.js.map
2
+ static escapeRegExp(text) {
3
+ return text.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
4
+ }
5
+ static createContainsRegExp(text) {
6
+ return new RegExp(this.escapeRegExp(text), "i");
7
+ }
8
+ static createContainsAnyWordRegExp(text) {
9
+ return new RegExp(text.split(/\s+/g).map(x => `(${this.escapeRegExp(x)})`).join("|"), "i");
10
+ }
11
+ static containsIgnoreCase(source, test) {
12
+ if (!source) {
13
+ return false;
14
+ }
15
+ if (!test) {
16
+ return true;
17
+ }
18
+ return this.createContainsRegExp(test).test(source);
19
+ }
20
+ static containsAnyWordIgnoreCase(source, test) {
21
+ if (!source) {
22
+ return false;
23
+ }
24
+ if (!test) {
25
+ return true;
26
+ }
27
+ return this.createContainsAnyWordRegExp(test).test(source);
28
+ }
29
+ static fromCamelToHyphen(input) {
30
+ return input.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
31
+ }
32
+ static fromCamelToUnderscore(input) {
33
+ return input.replace(/([a-z])([A-Z])/g, "$1_$2").toLowerCase();
34
+ }
35
+ static fromCamelToPascal(input) {
36
+ return input[0].toUpperCase() + input.substr(1);
37
+ }
38
+ static fromHyphenToCamel(input) {
39
+ return input.replace(/-([a-z])/g, g => g[1].toUpperCase());
40
+ }
41
+ static fromUnderscoreToCamel(input) {
42
+ return input.replace(/\_([a-z])/g, g => g[1].toUpperCase());
43
+ }
44
+ static fromPascalToCamel(input) {
45
+ return input[0].toLowerCase() + input.substr(1);
46
+ }
47
+ static fromPascalToTitleCase(s) {
48
+ return s.replace(/([A-Z])/gm, (x, g, i) => i ? " " + x : x);
49
+ }
50
+ }
@@ -1,19 +1,17 @@
1
1
  export default class TransientDisposable {
2
- constructor(owner) {
3
- if (owner) {
4
- this.registerIn(owner);
5
- }
2
+ constructor(owner) {
3
+ if (owner) {
4
+ this.registerIn(owner);
6
5
  }
7
- registerIn(value) {
8
- const v = value.disposables;
9
- if (v) {
10
- v.push(this);
11
- }
12
- else {
13
- if (value.registerDisposable) {
14
- value.registerDisposable(this);
15
- }
16
- }
6
+ }
7
+ registerIn(value) {
8
+ const v = value.disposables;
9
+ if (v) {
10
+ v.push(this);
11
+ } else {
12
+ if (value.registerDisposable) {
13
+ value.registerDisposable(this);
14
+ }
17
15
  }
18
- }
19
- //# sourceMappingURL=TransientDisposable.js.map
16
+ }
17
+ }
@@ -1,20 +1,21 @@
1
1
  import { AtomBinder } from "./AtomBinder.js";
2
2
  import { AtomWatcher } from "./AtomWatcher.js";
3
3
  export default function WatchProperty(target, key, descriptor) {
4
- const { get } = descriptor;
5
- const isSetup = Symbol.for(`isSetup${key}`);
6
- return {
7
- get: function () {
8
- const watcher = new AtomWatcher(this, get, () => {
9
- AtomBinder.refreshValue(this, key);
10
- }, this);
11
- watcher.init(false);
12
- this.registerDisposable(watcher);
13
- this[isSetup] = watcher;
14
- Object.defineProperty(this, key, descriptor);
15
- return get.apply(this);
16
- },
17
- configurable: true
18
- };
19
- }
20
- //# sourceMappingURL=WatchProperty.js.map
4
+ const {
5
+ get
6
+ } = descriptor;
7
+ const isSetup = Symbol.for(`isSetup${key}`);
8
+ return {
9
+ get: function () {
10
+ const watcher = new AtomWatcher(this, get, () => {
11
+ AtomBinder.refreshValue(this, key);
12
+ }, this);
13
+ watcher.init(false);
14
+ this.registerDisposable(watcher);
15
+ this[isSetup] = watcher;
16
+ Object.defineProperty(this, key, descriptor);
17
+ return get.apply(this);
18
+ },
19
+ configurable: true
20
+ };
21
+ }
@@ -1,9 +1,8 @@
1
1
  export default class WebImage {
2
- constructor(url) {
3
- this.url = url;
4
- }
5
- toString() {
6
- return this.url;
7
- }
8
- }
9
- //# sourceMappingURL=WebImage.js.map
2
+ constructor(url) {
3
+ this.url = url;
4
+ }
5
+ toString() {
6
+ return this.url;
7
+ }
8
+ }
@@ -1,21 +1,10 @@
1
1
  import type { ObjectPositionType } from "../style/StyleRule.js";
2
2
  import type { AtomControl } from "../web/controls/AtomControl.js";
3
- import Bind from "./Bind.js";
4
3
  import type { ColorItem } from "./Colors.js";
5
- import { IClassOf, IDisposable } from "./types.js";
4
+ import { IClassOf } from "./types.js";
6
5
  export interface IAttributes {
7
6
  [key: string]: string | number | null | any;
8
7
  }
9
- export declare class RootObject {
10
- get vsProps(): {
11
- [k in keyof this]?: this[k] | Bind;
12
- } | {
13
- [k: string]: any;
14
- } | {};
15
- addEventListener(name: string, handler: EventListenerOrEventListenerObject): IDisposable;
16
- appendChild(e: any): void;
17
- dispatchEvent(evt: Event): void;
18
- }
19
8
  export interface IElementAttributes {
20
9
  [key: string]: unknown;
21
10
  "data-click-event"?: string;
@@ -109,7 +98,6 @@ export default class XNode {
109
98
  static attach<T, T1 extends HTMLElementTagNameMap, K extends keyof T1>(n: IClassOf<T>, tag: K): new (...a: any[]) => IMergedControl<T, T1[K]>;
110
99
  static attach<T, T1>(n: IClassOf<T>, tag: (a?: Partial<T1>, ...nodes: XNode[]) => XNode): new (...a: any[]) => IMergedControl<T, T1>;
111
100
  static prepare<T>(n: any, isProperty?: boolean, isTemplate?: boolean): ((attributes: Partial<T>, ...nodes: XNode[]) => XNode);
112
- static getClass(fullTypeName: string, assemblyName: string): any;
113
101
  static factory: (name: any, isProperty: any, isTemplate: any) => (a?: any, ...nodes: any[]) => XNode;
114
102
  static namespace(ns: string, assemblyName: string): (type: string, isTemplate?: boolean) => (c: any) => void;
115
103
  static create(name: string | Function, attributes: IAttributes, ...children: Array<XNode | XNode[] | any>): XNode;
@@ -1 +1 @@
1
- {"version":3,"file":"XNode.d.ts","sourceRoot":"","sources":["../../src/core/XNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"XNode.d.ts","sourceRoot":"","sources":["../../src/core/XNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAElE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAe,MAAM,YAAY,CAAC;AAEnD,MAAM,WAAW,WAAW;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,GAAG,CAAC;CAC/C;AACD,MAAM,WAAW,kBAAkB;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAI5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;IACpB,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,GAAG,CAAC;IACvC,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,GAAG,CAAC;IACjC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,GAAG,CAAC;IAClC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,KAAK,GAAG,CAAC;IAK/D,KAAK,CAAC,EAAE,GAAG,CAAC;IAMZ,eAAe,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAGnC,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE/B,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE9B,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEjC,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEhC,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEhC,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEjC,gBAAgB,CAAC,EAAE,kBAAkB,CAAC;IAEtC,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACpC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,wBAAwB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAKjD;AAGD,OAAO,CAAC,MAAM,CAAC;IAEX,UAAU,GAAG,CAAC;QAGV,UAAU,yBAAyB;YAC/B,OAAO,MAAC;SACX;QAED,KAAK,WAAW,CAAC,CAAC,IAAI;aACjB,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,kBAAkB,GAAG;iBACjC,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aAChC;SACJ,CAAC;QAEF,KAAK,gBAAgB,GAAG,WAAW,CAAC,qBAAqB,CAAC,CAAC;QAG3D,UAAU,iBAAkB,SAAQ,gBAAgB;SAEnD;KACJ;CACJ;AAED,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,EAAE,IAChC;KACK,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;CACtC,GAAG;IACA,OAAO,EAAE;SACJ,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;KACtC,CAAA;CACJ,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAI,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,CAAC;AAEjE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,EAAE,GAAG,KAAK;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAC,CAAC;AAE7D,eAAO,MAAM,WAAW,eAAkB,CAAC;AAE3C,eAAO,MAAM,SAAS,eAA0B,CAAC;AAEjD,eAAO,MAAM,oBAAoB,eAA2B,CAAC;AAE7D,eAAO,MAAM,eAAe,eAAsB,CAAC;AAEnD,eAAO,MAAM,cAAc,eAAqB,CAAC;AAEjD,eAAO,MAAM,gBAAgB,eAAuB,CAAC;AAErD,eAAO,MAAM,+BAA+B,eAAsC,CAAC;AAEnF,eAAO,MAAM,kBAAkB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,KAAK,IAAI,CAAA;CAAO,CAAC;AAiBxE,MAAM,CAAC,OAAO,OAAO,KAAK;IA6JX,IAAI,EAAE,MAAM,GAAG,QAAQ;IACvB,UAAU,EAAE,WAAW;IACvB,QAAQ,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,GAAG,EAAE;IACrC,UAAU,CAAC,EAAE,OAAO;IACpB,UAAU,CAAC,EAAE,OAAO;IA/J/B,OAAc,SAAS,SAAmB;IAE1C,OAAc,cAAc,SAAwB;IAEpD,OAAc,UAAU,SAAc;IAEtC,OAAc,UAAU,SAAoB;IAE5C,OAAc,eAAe;;;;;;MAAU;IAEvC,OAAc,yBAAyB,SAAmC;IAE1E,OAAc,OAAO,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAM;WAEpC,MAAM,CAAC,CAAC,EAAE,EAAE,SAAS,qBAAqB,EAAE,CAAC,SAAS,MAAM,EAAE,EACxE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EACd,GAAG,EAAE,CAAC,GAAG,KAAK,GAAI,CAAC,EAAE,GAAG,EAAE,KAAK,cAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;WAC7C,MAAM,CAAC,CAAC,EAAE,EAAE,EACtB,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EACd,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,GAAI,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,GAAG,KAAK,GAAI,CAAC,EAAE,GAAG,EAAE,KAAK,cAAc,CAAC,CAAC,EAAE,EAAE,CAAC;WAWvF,OAAO,CAAC,CAAC,EACnB,CAAC,EAAE,GAAG,EACN,UAAU,CAAC,EAAE,OAAO,EACpB,UAAU,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAI,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,CAAC;IAgDlF,OAAc,OAAO,GAAI,SAAI,EAAE,eAAU,EAAE,eAAU,MAAM,IAAI,GAAG,EAAE,GAAG,OAAQ,GAAG,EAAE,WAEnF;WAOa,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,IAC5C,MAAM,MAAM,EAAE,aAAa,OAAO,MAC9B,MAAC;WAkCH,MAAM,CAEhB,IAAI,EAAE,MAAM,GAAG,QAAQ,EACvB,UAAU,EAAE,WAAW,EACvB,GAAI,QAAQ,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,EAAE,GAAG,GAAG,CAAC,GAAG,KAAK;IAqB/C,QAAQ,EAAE,GAAG,CAAC;gBAIV,IAAI,EAAE,MAAM,GAAG,QAAQ,EACvB,UAAU,EAAE,WAAW,EACvB,QAAQ,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,GAAG,EAAE,EACrC,UAAU,CAAC,EAAE,OAAO,EACpB,UAAU,CAAC,EAAE,OAAO;IAIxB,QAAQ,IAAI,MAAM;CAM5B"}
@@ -1,18 +1,4 @@
1
1
  import { bindSymbol } from "./Bind.js";
2
- export class RootObject {
3
- get vsProps() {
4
- return undefined;
5
- }
6
- addEventListener(name, handler) {
7
- return bridge.addEventHandler(this, name, handler);
8
- }
9
- appendChild(e) {
10
- bridge.appendChild(this, e);
11
- }
12
- dispatchEvent(evt) {
13
- bridge.dispatchEvent(evt);
14
- }
15
- }
16
2
  export const xnodeSymbol = Symbol("XNode");
17
3
  export const isControl = Symbol.for("isControl");
18
4
  export const elementFactorySymbol = Symbol("elementFactory");
@@ -23,121 +9,131 @@ export const constructorNeedsArgumentsSymbol = Symbol("constructorNeedsArguments
23
9
  export const attachedProperties = {};
24
10
  let attachedId = 1;
25
11
  const attach = (name, attacher) => {
26
- const key = `:${attachedId++}`;
27
- const fx = (v) => {
28
- return {
29
- [key]: v
30
- };
12
+ const key = `:${attachedId++}`;
13
+ const fx = v => {
14
+ return {
15
+ [key]: v
31
16
  };
32
- attachedProperties[key] = attacher;
33
- fx[attachedSymbol] = attacher;
34
- fx[isFactorySymbol] = key;
35
- return fx;
17
+ };
18
+ attachedProperties[key] = attacher;
19
+ fx[attachedSymbol] = attacher;
20
+ fx[isFactorySymbol] = key;
21
+ return fx;
36
22
  };
37
23
  export default class XNode {
38
- static { this.isFactory = isFactorySymbol; }
39
- static { this.elementFactory = elementFactorySymbol; }
40
- static { this.bindSymbol = bindSymbol; }
41
- static { this.isTemplate = isTemplateSymbol; }
42
- static { this.prepareAttached = attach; }
43
- static { this.constructorNeedsArguments = constructorNeedsArgumentsSymbol; }
44
- static { this.classes = {}; }
45
- static attach(n, tag) {
46
- return {
47
- factory: (attributes, ...nodes) => new XNode(n, attributes
48
- ? { ...attributes, for: tag }
49
- : { for: tag }, nodes)
50
- };
24
+ static {
25
+ this.isFactory = isFactorySymbol;
26
+ }
27
+ static {
28
+ this.elementFactory = elementFactorySymbol;
29
+ }
30
+ static {
31
+ this.bindSymbol = bindSymbol;
32
+ }
33
+ static {
34
+ this.isTemplate = isTemplateSymbol;
35
+ }
36
+ static {
37
+ this.prepareAttached = attach;
38
+ }
39
+ static {
40
+ this.constructorNeedsArguments = constructorNeedsArgumentsSymbol;
41
+ }
42
+ static {
43
+ this.classes = {};
44
+ }
45
+ static attach(n, tag) {
46
+ return {
47
+ factory: (attributes, ...nodes) => new XNode(n, attributes ? {
48
+ ...attributes,
49
+ for: tag
50
+ } : {
51
+ for: tag
52
+ }, nodes)
53
+ };
54
+ }
55
+ static prepare(n, isProperty, isTemplate) {
56
+ function px(v) {
57
+ return {
58
+ [n]: v
59
+ };
51
60
  }
52
- static prepare(n, isProperty, isTemplate) {
53
- function px(v) {
54
- return ({
55
- [n]: v
56
- });
61
+ px.factory = (a, ...nodes) => {
62
+ return new XNode(n, a, nodes, isProperty, isTemplate);
63
+ };
64
+ px.toString = () => n;
65
+ return px;
66
+ }
67
+ static {
68
+ this.factory = (name, isProperty, isTemplate) => (a, ...nodes) => {
69
+ return new XNode(name, a, nodes, isProperty, isTemplate);
70
+ };
71
+ }
72
+ static namespace(ns, assemblyName) {
73
+ return (type, isTemplate) => {
74
+ return c => {
75
+ for (const key in c) {
76
+ if (c.hasOwnProperty(key)) {
77
+ const element = c[key];
78
+ if (element) {
79
+ const n = ns + "." + type + ":" + key + ";" + assemblyName;
80
+ const af = a => {
81
+ const r = {
82
+ [n]: a
83
+ };
84
+ Object.defineProperty(r, "toString", {
85
+ value: () => n,
86
+ enumerable: false,
87
+ configurable: false
88
+ });
89
+ return r;
90
+ };
91
+ af.factory = (a, ...nodes) => new XNode(n, a, nodes, true, element.isTemplate);
92
+ af.toString = () => n;
93
+ c[key] = af;
94
+ }
95
+ }
57
96
  }
58
- px.factory = (a, ...nodes) => {
59
- return new XNode(n, a, nodes, isProperty, isTemplate);
97
+ const tn = ns + "." + type + ";" + assemblyName;
98
+ c.factory = (a, ...nodes) => {
99
+ return new XNode(tn, a, nodes, false, isTemplate);
60
100
  };
61
- px.toString = () => n;
62
- return px;
101
+ c.toString = () => tn;
102
+ };
103
+ };
104
+ }
105
+ static create(name, attributes, ...children) {
106
+ if (typeof name === "string") {
107
+ return new XNode(name, attributes, children);
63
108
  }
64
- static getClass(fullTypeName, assemblyName) {
65
- const n = fullTypeName + ";" + assemblyName;
66
- const cx = XNode.classes[n] || (XNode.classes[n] =
67
- bridge.getClass(fullTypeName, assemblyName, RootObject, (name, isProperty, isTemplate) => (a, ...nodes) => new XNode(name, a, nodes, isProperty, isTemplate)));
68
- return cx;
109
+ if (name[isFactorySymbol]) {
110
+ return new XNode(name, attributes, children);
69
111
  }
70
- static { this.factory = (name, isProperty, isTemplate) => (a, ...nodes) => {
71
- return new XNode(name, a, nodes, isProperty, isTemplate);
72
- }; }
73
- static namespace(ns, assemblyName) {
74
- return (type, isTemplate) => {
75
- return (c) => {
76
- for (const key in c) {
77
- if (c.hasOwnProperty(key)) {
78
- const element = c[key];
79
- if (element) {
80
- const n = ns + "." + type + ":" + key + ";" + assemblyName;
81
- const af = (a) => {
82
- const r = {
83
- [n]: a
84
- };
85
- Object.defineProperty(r, "toString", {
86
- value: () => n,
87
- enumerable: false,
88
- configurable: false
89
- });
90
- return r;
91
- };
92
- af.factory = (a, ...nodes) => new XNode(n, a, nodes, true, element.isTemplate);
93
- af.toString = () => n;
94
- c[key] = af;
95
- }
96
- }
97
- }
98
- const tn = ns + "." + type + ";" + assemblyName;
99
- c.factory = (a, ...nodes) => {
100
- return new XNode(tn, a, nodes, false, isTemplate);
101
- };
102
- c.toString = () => tn;
103
- };
104
- };
105
- }
106
- static create(name, attributes, ...children) {
107
- if (typeof name === "string") {
108
- return new XNode(name, attributes, children);
109
- }
110
- if (name[isFactorySymbol]) {
111
- return new XNode(name, attributes, children);
112
- }
113
- if (name.factory) {
114
- return (name.factory)(attributes, ...children);
115
- }
116
- switch (typeof name) {
117
- case "object":
118
- name = name.toString();
119
- break;
120
- case "function":
121
- return name(attributes || {}, ...children);
122
- }
123
- return new XNode(name, attributes, children);
112
+ if (name.factory) {
113
+ return name.factory(attributes, ...children);
124
114
  }
125
- constructor(name, attributes, children, isProperty, isTemplate) {
126
- this.name = name;
127
- this.attributes = attributes;
128
- this.children = children;
129
- this.isProperty = isProperty;
130
- this.isTemplate = isTemplate;
131
- this[xnodeSymbol] = true;
115
+ switch (typeof name) {
116
+ case "object":
117
+ name = name.toString();
118
+ break;
119
+ case "function":
120
+ return name(attributes || {}, ...children);
132
121
  }
133
- toString() {
134
- if (typeof this.name === "string") {
135
- return `name is of type string and value is ${this.name}`;
136
- }
137
- return `name is of type ${typeof this.name}`;
122
+ return new XNode(name, attributes, children);
123
+ }
124
+ constructor(name, attributes, children, isProperty, isTemplate) {
125
+ this.name = name;
126
+ this.attributes = attributes;
127
+ this.children = children;
128
+ this.isProperty = isProperty;
129
+ this.isTemplate = isTemplate;
130
+ this[xnodeSymbol] = true;
131
+ }
132
+ toString() {
133
+ if (typeof this.name === "string") {
134
+ return `name is of type string and value is ${this.name}`;
138
135
  }
136
+ return `name is of type ${typeof this.name}`;
137
+ }
139
138
  }
140
- if (typeof bridge !== "undefined") {
141
- bridge.XNode = XNode;
142
- }
143
- //# sourceMappingURL=XNode.js.map
139
+ const ESMPack = window.ESMPack ??= {};
@@ -1 +1 @@
1
- {"version":3,"file":"XNode.js","sourceRoot":"","sources":["../../src/core/XNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"XNode.js","sourceRoot":"","sources":["../../src/core/XNode.ts"],"names":[],"mappings":"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"}
@@ -1,27 +1,24 @@
1
1
  export default function sleep(timeInMS, ct, throwOnCancel = true) {
2
- let token = 0;
3
- return new Promise((resolve, reject) => {
4
- ct?.registerForCancel((reason) => {
5
- if (token) {
6
- clearTimeout(token);
7
- if (throwOnCancel) {
8
- reject(reason);
9
- }
10
- else {
11
- resolve();
12
- }
13
- }
14
- });
15
- if (ct?.cancelled) {
16
- if (throwOnCancel) {
17
- reject("cancelled");
18
- }
19
- else {
20
- resolve();
21
- }
22
- return;
2
+ let token = 0;
3
+ return new Promise((resolve, reject) => {
4
+ ct?.registerForCancel(reason => {
5
+ if (token) {
6
+ clearTimeout(token);
7
+ if (throwOnCancel) {
8
+ reject(reason);
9
+ } else {
10
+ resolve();
23
11
  }
24
- token = setTimeout(resolve, timeInMS);
12
+ }
25
13
  });
26
- }
27
- //# sourceMappingURL=sleep.js.map
14
+ if (ct?.cancelled) {
15
+ if (throwOnCancel) {
16
+ reject("cancelled");
17
+ } else {
18
+ resolve();
19
+ }
20
+ return;
21
+ }
22
+ token = setTimeout(resolve, timeInMS);
23
+ });
24
+ }