@acorex/core 6.5.29 → 6.5.30

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 (100) hide show
  1. package/README.md +3 -3
  2. package/acorex-core.d.ts +5 -5
  3. package/esm2020/acorex-core.mjs +4 -4
  4. package/esm2020/lib/classes/base-page.class.mjs +28 -28
  5. package/esm2020/lib/classes/color.class.mjs +49 -49
  6. package/esm2020/lib/classes/datetime.class.mjs +314 -314
  7. package/esm2020/lib/classes/menu.class.mjs +27 -27
  8. package/esm2020/lib/classes/navigator.class.mjs +2 -2
  9. package/esm2020/lib/classes/popup.class.mjs +2 -2
  10. package/esm2020/lib/classes/promise.class.mjs +19 -19
  11. package/esm2020/lib/classes/sectionlist.class.mjs +2 -2
  12. package/esm2020/lib/classes/select.class.mjs +3 -3
  13. package/esm2020/lib/core.module.mjs +27 -27
  14. package/esm2020/lib/error/error.class.mjs +2 -2
  15. package/esm2020/lib/error/error.module.mjs +19 -19
  16. package/esm2020/lib/error/error.service.mjs +21 -21
  17. package/esm2020/lib/events/keyboard.mjs +2 -2
  18. package/esm2020/lib/http/http-error.class.mjs +2 -2
  19. package/esm2020/lib/http/http-events.interceptor.mjs +3 -3
  20. package/esm2020/lib/http/http-request.class.mjs +2 -2
  21. package/esm2020/lib/http/http-result.class.mjs +21 -21
  22. package/esm2020/lib/http/http.module.mjs +37 -37
  23. package/esm2020/lib/http/http.service.mjs +145 -145
  24. package/esm2020/lib/locale/en.json +255 -255
  25. package/esm2020/lib/locale/fa.json +245 -245
  26. package/esm2020/lib/pipe/datetime.pipe.mjs +25 -25
  27. package/esm2020/lib/pipe/htmlToText.pipe.mjs +25 -25
  28. package/esm2020/lib/platform/index.mjs +1 -1
  29. package/esm2020/lib/platform/platform.service.mjs +150 -150
  30. package/esm2020/lib/services/config.mjs +29 -29
  31. package/esm2020/lib/services/event.service.mjs +36 -36
  32. package/esm2020/lib/services/navigator.service.mjs +10 -10
  33. package/esm2020/lib/services/storage.service.mjs +16 -16
  34. package/esm2020/lib/translator/translator.mjs +26 -26
  35. package/esm2020/lib/translator/translator.module.mjs +25 -25
  36. package/esm2020/lib/translator/translator.pipe.mjs +24 -24
  37. package/esm2020/lib/translator/translator.service.mjs +21 -21
  38. package/esm2020/lib/utils/array/array-util.mjs +133 -133
  39. package/esm2020/lib/utils/html/html-util.mjs +192 -192
  40. package/esm2020/lib/utils/html/html.module.mjs +19 -19
  41. package/esm2020/lib/utils/math/math-util.mjs +6 -6
  42. package/esm2020/lib/utils/object/object-util.mjs +83 -83
  43. package/esm2020/lib/utils/render/on-demand-preload-strategy.service.mjs +20 -20
  44. package/esm2020/lib/utils/render/render.service.mjs +103 -103
  45. package/esm2020/lib/utils/render/rendering.module.mjs +35 -35
  46. package/esm2020/lib/utils/scroll/scroll.directive.mjs +54 -54
  47. package/esm2020/lib/utils/scroll/scroll.module.mjs +19 -19
  48. package/esm2020/lib/utils/separator/separator.module.mjs +19 -19
  49. package/esm2020/lib/utils/separator/separator.pipe.mjs +33 -33
  50. package/esm2020/public-api.mjs +44 -44
  51. package/fesm2015/acorex-core.mjs +2162 -2162
  52. package/fesm2015/acorex-core.mjs.map +1 -1
  53. package/fesm2020/acorex-core.mjs +1651 -1651
  54. package/fesm2020/acorex-core.mjs.map +1 -1
  55. package/lib/classes/base-page.class.d.ts +13 -13
  56. package/lib/classes/color.class.d.ts +17 -17
  57. package/lib/classes/datetime.class.d.ts +63 -63
  58. package/lib/classes/menu.class.d.ts +34 -34
  59. package/lib/classes/navigator.class.d.ts +5 -5
  60. package/lib/classes/popup.class.d.ts +12 -12
  61. package/lib/classes/promise.class.d.ts +7 -7
  62. package/lib/classes/sectionlist.class.d.ts +8 -8
  63. package/lib/classes/select.class.d.ts +7 -7
  64. package/lib/core.module.d.ts +9 -9
  65. package/lib/error/error.class.d.ts +4 -4
  66. package/lib/error/error.module.d.ts +7 -7
  67. package/lib/error/error.service.d.ts +13 -13
  68. package/lib/events/keyboard.d.ts +2 -2
  69. package/lib/http/http-error.class.d.ts +7 -7
  70. package/lib/http/http-events.interceptor.d.ts +10 -10
  71. package/lib/http/http-request.class.d.ts +14 -14
  72. package/lib/http/http-result.class.d.ts +11 -11
  73. package/lib/http/http.module.d.ts +10 -10
  74. package/lib/http/http.service.d.ts +23 -23
  75. package/lib/pipe/datetime.pipe.d.ts +8 -8
  76. package/lib/pipe/htmlToText.pipe.d.ts +7 -7
  77. package/lib/platform/index.d.ts +1 -1
  78. package/lib/platform/platform.service.d.ts +26 -26
  79. package/lib/services/config.d.ts +9 -9
  80. package/lib/services/event.service.d.ts +9 -9
  81. package/lib/services/navigator.service.d.ts +8 -8
  82. package/lib/services/storage.service.d.ts +7 -7
  83. package/lib/translator/translator.d.ts +9 -9
  84. package/lib/translator/translator.module.d.ts +8 -8
  85. package/lib/translator/translator.pipe.d.ts +8 -8
  86. package/lib/translator/translator.service.d.ts +8 -8
  87. package/lib/utils/array/array-util.d.ts +6 -6
  88. package/lib/utils/html/html-util.d.ts +62 -62
  89. package/lib/utils/html/html.module.d.ts +8 -8
  90. package/lib/utils/math/math-util.d.ts +3 -3
  91. package/lib/utils/object/object-util.d.ts +7 -7
  92. package/lib/utils/render/on-demand-preload-strategy.service.d.ts +10 -10
  93. package/lib/utils/render/render.service.d.ts +18 -18
  94. package/lib/utils/render/rendering.module.d.ts +8 -8
  95. package/lib/utils/scroll/scroll.directive.d.ts +18 -18
  96. package/lib/utils/scroll/scroll.module.d.ts +8 -8
  97. package/lib/utils/separator/separator.module.d.ts +8 -8
  98. package/lib/utils/separator/separator.pipe.d.ts +8 -8
  99. package/package.json +2 -2
  100. package/public-api.d.ts +43 -43
@@ -1,83 +1,83 @@
1
- // @dynamic
2
- export class AXObjectUtil {
3
- static deepJSONClone(obj) {
4
- return obj ? JSON.parse(JSON.stringify(obj)) : null;
5
- }
6
- static deepCopy(obj) {
7
- let copy;
8
- // Handle the 3 simple types, and null or undefined
9
- if (null == obj || 'object' !== typeof obj) {
10
- return obj;
11
- }
12
- // Handle Date
13
- if (obj instanceof Date) {
14
- copy = new Date();
15
- copy.setTime(obj.getTime());
16
- return copy;
17
- }
18
- // Handle Array
19
- if (obj instanceof Array) {
20
- copy = [];
21
- for (let i = 0, len = obj.length; i < len; i++) {
22
- copy[i] = AXObjectUtil.deepCopy(obj[i]);
23
- }
24
- return copy;
25
- }
26
- // Handle Object
27
- if (obj instanceof Object) {
28
- copy = {};
29
- for (const attr in obj) {
30
- if (obj.hasOwnProperty(attr)) {
31
- copy[attr] = AXObjectUtil.deepCopy(obj[attr]);
32
- }
33
- }
34
- return copy;
35
- }
36
- throw new Error('Unable to copy obj! Its type isn\'t supported.');
37
- }
38
- }
39
- export function AXFetchProp(obj, prop) {
40
- if (typeof obj === 'undefined') {
41
- return false;
42
- }
43
- const index = prop.indexOf('.');
44
- if (index > -1) {
45
- return AXFetchProp(obj[prop.substring(0, index)], prop.substr(index + 1));
46
- }
47
- return obj[prop];
48
- }
49
- export function getPropByPath(obj, path, defaultVal) {
50
- path = path
51
- .replace(/\[/g, '.')
52
- .replace(/]/g, '')
53
- .split('.');
54
- path.forEach((level) => {
55
- if (obj) {
56
- obj = obj[level];
57
- }
58
- });
59
- if (obj === undefined) {
60
- return defaultVal;
61
- }
62
- return obj;
63
- }
64
- export function setPropByPath(obj, path, value) {
65
- if (Object(obj) !== obj) {
66
- return obj;
67
- } // When obj is not an object
68
- // If not yet an array, get the keys from the string-path
69
- if (!Array.isArray(path)) {
70
- path = path.toString().match(/[^.[\]]+/g) || [];
71
- }
72
- path.slice(0, -1).reduce((a, c, i) => // Iterate all of them except the last one
73
- Object(a[c]) === a[c] // Does the key exist and is its value an object?
74
- // Yes: then follow that path
75
- ? a[c]
76
- // No: create the key. Is the next key a potential array-index?
77
- : a[c] = Math.abs(path[i + 1]) >> 0 === +path[i + 1]
78
- ? [] // Yes: assign a new array object
79
- : {}, // No: assign a new plain object
80
- obj)[path[path.length - 1]] = value; // Finally assign the value to the last key
81
- return obj[path[0]]; // Return the top-level object to allow chaining
82
- }
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LXV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29yZS9zcmMvbGliL3V0aWxzL29iamVjdC9vYmplY3QtdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxXQUFXO0FBQ1gsTUFBTSxPQUFPLFlBQVk7SUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxHQUFRO1FBQ3pCLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3hELENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUc7UUFDZixJQUFJLElBQUksQ0FBQztRQUNULG1EQUFtRDtRQUNuRCxJQUFJLElBQUksSUFBSSxHQUFHLElBQUksUUFBUSxLQUFLLE9BQU8sR0FBRyxFQUFFO1lBQUUsT0FBTyxHQUFHLENBQUM7U0FBRTtRQUMzRCxjQUFjO1FBQ2QsSUFBSSxHQUFHLFlBQVksSUFBSSxFQUFFO1lBQ3JCLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7WUFDNUIsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUNELGVBQWU7UUFDZixJQUFJLEdBQUcsWUFBWSxLQUFLLEVBQUU7WUFDdEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNWLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQzVDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFD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QUMsQ0FBQztZQUNoRCxDQUFDLENBQUMsRUFBRSxDQUFDLGlDQUFpQztZQUN0QyxDQUFDLENBQUMsRUFBRSxFQUFFLGdDQUFnQztJQUM5QyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLDJDQUEyQztJQUNwRixPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGdEQUFnRDtBQUN6RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQGR5bmFtaWNcclxuZXhwb3J0IGNsYXNzIEFYT2JqZWN0VXRpbCB7XHJcbiAgICBzdGF0aWMgZGVlcEpTT05DbG9uZShvYmo6IGFueSk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIG9iaiA/IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkob2JqKSkgOiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBkZWVwQ29weShvYmopIHtcclxuICAgICAgICBsZXQgY29weTtcclxuICAgICAgICAvLyBIYW5kbGUgdGhlIDMgc2ltcGxlIHR5cGVzLCBhbmQgbnVsbCBvciB1bmRlZmluZWRcclxuICAgICAgICBpZiAobnVsbCA9PSBvYmogfHwgJ29iamVjdCcgIT09IHR5cGVvZiBvYmopIHsgcmV0dXJuIG9iajsgfVxyXG4gICAgICAgIC8vIEhhbmRsZSBEYXRlXHJcbiAgICAgICAgaWYgKG9iaiBpbnN0YW5jZW9mIERhdGUpIHtcclxuICAgICAgICAgICAgY29weSA9IG5ldyBEYXRlKCk7XHJcbiAgICAgICAgICAgIGNvcHkuc2V0VGltZShvYmouZ2V0VGltZSgpKTtcclxuICAgICAgICAgICAgcmV0dXJuIGNvcHk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIEhhbmRsZSBBcnJheVxyXG4gICAgICAgIGlmIChvYmogaW5zdGFuY2VvZiBBcnJheSkge1xyXG4gICAgICAgICAgICBjb3B5ID0gW107XHJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSBvYmoubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgICAgIGNvcHlbaV0gPSBBWE9iamVjdFV0aWwuZGVlcENvcHkob2JqW2ldKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gY29weTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gSGFuZGxlIE9iamVjdFxyXG4gICAgICAgIGlmIChvYmogaW5zdGFuY2VvZiBPYmplY3QpIHtcclxuICAgICAgICAgICAgY29weSA9IHt9O1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IGF0dHIgaW4gb2JqKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAob2JqLmhhc093blByb3BlcnR5KGF0dHIpKSB7IGNvcHlbYXR0cl0gPSBBWE9iamVjdFV0aWwuZGVlcENvcHkob2JqW2F0dHJdKTsgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBjb3B5O1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYWJsZSB0byBjb3B5IG9iaiEgSXRzIHR5cGUgaXNuXFwndCBzdXBwb3J0ZWQuJyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBBWEZldGNoUHJvcChvYmosIHByb3A6IHN0cmluZykge1xyXG4gICAgaWYgKHR5cGVvZiBvYmogPT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgY29uc3QgaW5kZXggPSBwcm9wLmluZGV4T2YoJy4nKTtcclxuXHJcbiAgICBpZiAoaW5kZXggPiAtMSkge1xyXG4gICAgICAgIHJldHVybiBBWEZldGNoUHJvcChvYmpbcHJvcC5zdWJzdHJpbmcoMCwgaW5kZXgpXSwgcHJvcC5zdWJzdHIoaW5kZXggKyAxKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG9ialtwcm9wXTtcclxufVxyXG5cclxuXHJcblxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFByb3BCeVBhdGgob2JqLCBwYXRoLCBkZWZhdWx0VmFsPykge1xyXG4gICAgcGF0aCA9IHBhdGhcclxuICAgICAgICAucmVwbGFjZSgvXFxbL2csICcuJylcclxuICAgICAgICAucmVwbGFjZSgvXS9nLCAnJylcclxuICAgICAgICAuc3BsaXQoJy4nKTtcclxuXHJcbiAgICBwYXRoLmZvckVhY2goKGxldmVsKSA9PiB7XHJcbiAgICAgICAgaWYgKG9iaikge1xyXG4gICAgICAgICAgICBvYmogPSBvYmpbbGV2ZWxdO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIHJldHVybiBkZWZhdWx0VmFsO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG9iajtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldFByb3BCeVBhdGgob2JqLCBwYXRoLCB2YWx1ZSkge1xyXG4gICAgaWYgKE9iamVjdChvYmopICE9PSBvYmopIHsgcmV0dXJuIG9iajsgfSAvLyBXaGVuIG9iaiBpcyBub3QgYW4gb2JqZWN0XHJcbiAgICAvLyBJZiBub3QgeWV0IGFuIGFycmF5LCBnZXQgdGhlIGtleXMgZnJvbSB0aGUgc3RyaW5nLXBhdGhcclxuICAgIGlmICghQXJyYXkuaXNBcnJheShwYXRoKSkgeyBwYXRoID0gcGF0aC50b1N0cmluZygpLm1hdGNoKC9bXi5bXFxdXSsvZykgfHwgW107IH1cclxuICAgIHBhdGguc2xpY2UoMCwgLTEpLnJlZHVjZSgoYSwgYywgaSkgPT4gLy8gSXRlcmF0ZSBhbGwgb2YgdGhlbSBleGNlcHQgdGhlIGxhc3Qgb25lXHJcbiAgICAgICAgT2JqZWN0KGFbY10pID09PSBhW2NdIC8vIERvZXMgdGhlIGtleSBleGlzdCBhbmQgaXMgaXRzIHZhbHVlIGFuIG9iamVjdD9cclxuICAgICAgICAgICAgLy8gWWVzOiB0aGVuIGZvbGxvdyB0aGF0IHBhdGhcclxuICAgICAgICAgICAgPyBhW2NdXHJcbiAgICAgICAgICAgIC8vIE5vOiBjcmVhdGUgdGhlIGtleS4gSXMgdGhlIG5leHQga2V5IGEgcG90ZW50aWFsIGFycmF5LWluZGV4P1xyXG4gICAgICAgICAgICA6IGFbY10gPSBNYXRoLmFicyhwYXRoW2kgKyAxXSkgPj4gMCA9PT0gK3BhdGhbaSArIDFdXHJcbiAgICAgICAgICAgICAgICA/IFtdIC8vIFllczogYXNzaWduIGEgbmV3IGFycmF5IG9iamVjdFxyXG4gICAgICAgICAgICAgICAgOiB7fSwgLy8gTm86IGFzc2lnbiBhIG5ldyBwbGFpbiBvYmplY3RcclxuICAgICAgICBvYmopW3BhdGhbcGF0aC5sZW5ndGggLSAxXV0gPSB2YWx1ZTsgLy8gRmluYWxseSBhc3NpZ24gdGhlIHZhbHVlIHRvIHRoZSBsYXN0IGtleVxyXG4gICAgcmV0dXJuIG9ialtwYXRoWzBdXTsgLy8gUmV0dXJuIHRoZSB0b3AtbGV2ZWwgb2JqZWN0IHRvIGFsbG93IGNoYWluaW5nXHJcbn1cclxuXHJcblxyXG4iXX0=
1
+ // @dynamic
2
+ export class AXObjectUtil {
3
+ static deepJSONClone(obj) {
4
+ return obj ? JSON.parse(JSON.stringify(obj)) : null;
5
+ }
6
+ static deepCopy(obj) {
7
+ let copy;
8
+ // Handle the 3 simple types, and null or undefined
9
+ if (null == obj || 'object' !== typeof obj) {
10
+ return obj;
11
+ }
12
+ // Handle Date
13
+ if (obj instanceof Date) {
14
+ copy = new Date();
15
+ copy.setTime(obj.getTime());
16
+ return copy;
17
+ }
18
+ // Handle Array
19
+ if (obj instanceof Array) {
20
+ copy = [];
21
+ for (let i = 0, len = obj.length; i < len; i++) {
22
+ copy[i] = AXObjectUtil.deepCopy(obj[i]);
23
+ }
24
+ return copy;
25
+ }
26
+ // Handle Object
27
+ if (obj instanceof Object) {
28
+ copy = {};
29
+ for (const attr in obj) {
30
+ if (obj.hasOwnProperty(attr)) {
31
+ copy[attr] = AXObjectUtil.deepCopy(obj[attr]);
32
+ }
33
+ }
34
+ return copy;
35
+ }
36
+ throw new Error('Unable to copy obj! Its type isn\'t supported.');
37
+ }
38
+ }
39
+ export function AXFetchProp(obj, prop) {
40
+ if (typeof obj === 'undefined') {
41
+ return false;
42
+ }
43
+ const index = prop.indexOf('.');
44
+ if (index > -1) {
45
+ return AXFetchProp(obj[prop.substring(0, index)], prop.substr(index + 1));
46
+ }
47
+ return obj[prop];
48
+ }
49
+ export function getPropByPath(obj, path, defaultVal) {
50
+ path = path
51
+ .replace(/\[/g, '.')
52
+ .replace(/]/g, '')
53
+ .split('.');
54
+ path.forEach((level) => {
55
+ if (obj) {
56
+ obj = obj[level];
57
+ }
58
+ });
59
+ if (obj === undefined) {
60
+ return defaultVal;
61
+ }
62
+ return obj;
63
+ }
64
+ export function setPropByPath(obj, path, value) {
65
+ if (Object(obj) !== obj) {
66
+ return obj;
67
+ } // When obj is not an object
68
+ // If not yet an array, get the keys from the string-path
69
+ if (!Array.isArray(path)) {
70
+ path = path.toString().match(/[^.[\]]+/g) || [];
71
+ }
72
+ path.slice(0, -1).reduce((a, c, i) => // Iterate all of them except the last one
73
+ Object(a[c]) === a[c] // Does the key exist and is its value an object?
74
+ // Yes: then follow that path
75
+ ? a[c]
76
+ // No: create the key. Is the next key a potential array-index?
77
+ : a[c] = Math.abs(path[i + 1]) >> 0 === +path[i + 1]
78
+ ? [] // Yes: assign a new array object
79
+ : {}, // No: assign a new plain object
80
+ obj)[path[path.length - 1]] = value; // Finally assign the value to the last key
81
+ return obj[path[0]]; // Return the top-level object to allow chaining
82
+ }
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LXV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29yZS9zcmMvbGliL3V0aWxzL29iamVjdC9vYmplY3QtdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxXQUFXO0FBQ1gsTUFBTSxPQUFPLFlBQVk7SUFDckIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxHQUFRO1FBQ3pCLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3hELENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUc7UUFDZixJQUFJLElBQUksQ0FBQztRQUNULG1EQUFtRDtRQUNuRCxJQUFJLElBQUksSUFBSSxHQUFHLElBQUksUUFBUSxLQUFLLE9BQU8sR0FBRyxFQUFFO1lBQUUsT0FBTyxHQUFHLENBQUM7U0FBRTtRQUMzRCxjQUFjO1FBQ2QsSUFBSSxHQUFHLFlBQVksSUFBSSxFQUFFO1lBQ3JCLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7WUFDNUIsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUNELGVBQWU7UUFDZixJQUFJLEdBQUcsWUFBWSxLQUFLLEVBQUU7WUFDdEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNWLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQzVDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFD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QUMsQ0FBQztZQUNoRCxDQUFDLENBQUMsRUFBRSxDQUFDLGlDQUFpQztZQUN0QyxDQUFDLENBQUMsRUFBRSxFQUFFLGdDQUFnQztJQUM5QyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLDJDQUEyQztJQUNwRixPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGdEQUFnRDtBQUN6RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQGR5bmFtaWNcbmV4cG9ydCBjbGFzcyBBWE9iamVjdFV0aWwge1xuICAgIHN0YXRpYyBkZWVwSlNPTkNsb25lKG9iajogYW55KTogYW55IHtcbiAgICAgICAgcmV0dXJuIG9iaiA/IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkob2JqKSkgOiBudWxsO1xuICAgIH1cblxuICAgIHN0YXRpYyBkZWVwQ29weShvYmopIHtcbiAgICAgICAgbGV0IGNvcHk7XG4gICAgICAgIC8vIEhhbmRsZSB0aGUgMyBzaW1wbGUgdHlwZXMsIGFuZCBudWxsIG9yIHVuZGVmaW5lZFxuICAgICAgICBpZiAobnVsbCA9PSBvYmogfHwgJ29iamVjdCcgIT09IHR5cGVvZiBvYmopIHsgcmV0dXJuIG9iajsgfVxuICAgICAgICAvLyBIYW5kbGUgRGF0ZVxuICAgICAgICBpZiAob2JqIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgICAgICAgICAgY29weSA9IG5ldyBEYXRlKCk7XG4gICAgICAgICAgICBjb3B5LnNldFRpbWUob2JqLmdldFRpbWUoKSk7XG4gICAgICAgICAgICByZXR1cm4gY29weTtcbiAgICAgICAgfVxuICAgICAgICAvLyBIYW5kbGUgQXJyYXlcbiAgICAgICAgaWYgKG9iaiBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICAgICAgICBjb3B5ID0gW107XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gb2JqLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICAgICAgICAgICAgY29weVtpXSA9IEFYT2JqZWN0VXRpbC5kZWVwQ29weShvYmpbaV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGNvcHk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gSGFuZGxlIE9iamVjdFxuICAgICAgICBpZiAob2JqIGluc3RhbmNlb2YgT2JqZWN0KSB7XG4gICAgICAgICAgICBjb3B5ID0ge307XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGF0dHIgaW4gb2JqKSB7XG4gICAgICAgICAgICAgICAgaWYgKG9iai5oYXNPd25Qcm9wZXJ0eShhdHRyKSkgeyBjb3B5W2F0dHJdID0gQVhPYmplY3RVdGlsLmRlZXBDb3B5KG9ialthdHRyXSk7IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBjb3B5O1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVW5hYmxlIHRvIGNvcHkgb2JqISBJdHMgdHlwZSBpc25cXCd0IHN1cHBvcnRlZC4nKTtcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBBWEZldGNoUHJvcChvYmosIHByb3A6IHN0cmluZykge1xuICAgIGlmICh0eXBlb2Ygb2JqID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGNvbnN0IGluZGV4ID0gcHJvcC5pbmRleE9mKCcuJyk7XG5cbiAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgICByZXR1cm4gQVhGZXRjaFByb3Aob2JqW3Byb3Auc3Vic3RyaW5nKDAsIGluZGV4KV0sIHByb3Auc3Vic3RyKGluZGV4ICsgMSkpO1xuICAgIH1cblxuICAgIHJldHVybiBvYmpbcHJvcF07XG59XG5cblxuXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQcm9wQnlQYXRoKG9iaiwgcGF0aCwgZGVmYXVsdFZhbD8pIHtcbiAgICBwYXRoID0gcGF0aFxuICAgICAgICAucmVwbGFjZSgvXFxbL2csICcuJylcbiAgICAgICAgLnJlcGxhY2UoL10vZywgJycpXG4gICAgICAgIC5zcGxpdCgnLicpO1xuXG4gICAgcGF0aC5mb3JFYWNoKChsZXZlbCkgPT4ge1xuICAgICAgICBpZiAob2JqKSB7XG4gICAgICAgICAgICBvYmogPSBvYmpbbGV2ZWxdO1xuICAgICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIGRlZmF1bHRWYWw7XG4gICAgfVxuICAgIHJldHVybiBvYmo7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRQcm9wQnlQYXRoKG9iaiwgcGF0aCwgdmFsdWUpIHtcbiAgICBpZiAoT2JqZWN0KG9iaikgIT09IG9iaikgeyByZXR1cm4gb2JqOyB9IC8vIFdoZW4gb2JqIGlzIG5vdCBhbiBvYmplY3RcbiAgICAvLyBJZiBub3QgeWV0IGFuIGFycmF5LCBnZXQgdGhlIGtleXMgZnJvbSB0aGUgc3RyaW5nLXBhdGhcbiAgICBpZiAoIUFycmF5LmlzQXJyYXkocGF0aCkpIHsgcGF0aCA9IHBhdGgudG9TdHJpbmcoKS5tYXRjaCgvW14uW1xcXV0rL2cpIHx8IFtdOyB9XG4gICAgcGF0aC5zbGljZSgwLCAtMSkucmVkdWNlKChhLCBjLCBpKSA9PiAvLyBJdGVyYXRlIGFsbCBvZiB0aGVtIGV4Y2VwdCB0aGUgbGFzdCBvbmVcbiAgICAgICAgT2JqZWN0KGFbY10pID09PSBhW2NdIC8vIERvZXMgdGhlIGtleSBleGlzdCBhbmQgaXMgaXRzIHZhbHVlIGFuIG9iamVjdD9cbiAgICAgICAgICAgIC8vIFllczogdGhlbiBmb2xsb3cgdGhhdCBwYXRoXG4gICAgICAgICAgICA/IGFbY11cbiAgICAgICAgICAgIC8vIE5vOiBjcmVhdGUgdGhlIGtleS4gSXMgdGhlIG5leHQga2V5IGEgcG90ZW50aWFsIGFycmF5LWluZGV4P1xuICAgICAgICAgICAgOiBhW2NdID0gTWF0aC5hYnMocGF0aFtpICsgMV0pID4+IDAgPT09ICtwYXRoW2kgKyAxXVxuICAgICAgICAgICAgICAgID8gW10gLy8gWWVzOiBhc3NpZ24gYSBuZXcgYXJyYXkgb2JqZWN0XG4gICAgICAgICAgICAgICAgOiB7fSwgLy8gTm86IGFzc2lnbiBhIG5ldyBwbGFpbiBvYmplY3RcbiAgICAgICAgb2JqKVtwYXRoW3BhdGgubGVuZ3RoIC0gMV1dID0gdmFsdWU7IC8vIEZpbmFsbHkgYXNzaWduIHRoZSB2YWx1ZSB0byB0aGUgbGFzdCBrZXlcbiAgICByZXR1cm4gb2JqW3BhdGhbMF1dOyAvLyBSZXR1cm4gdGhlIHRvcC1sZXZlbCBvYmplY3QgdG8gYWxsb3cgY2hhaW5pbmdcbn1cblxuXG4iXX0=
@@ -1,20 +1,20 @@
1
- import { Injectable } from '@angular/core';
2
- import { Subject } from 'rxjs';
3
- import { AXHtmlUtil } from '../html/html-util';
4
- import * as i0 from "@angular/core";
5
- export class AXOnDemandPreloadService {
6
- constructor() {
7
- this.subject = new Subject();
8
- this.tmp = AXHtmlUtil.getUID();
9
- }
10
- startPreload(routePath) {
11
- const slices = [];
12
- this.subject.next(routePath);
13
- }
14
- }
15
- AXOnDemandPreloadService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXOnDemandPreloadService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
16
- AXOnDemandPreloadService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXOnDemandPreloadService });
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXOnDemandPreloadService, decorators: [{
18
- type: Injectable
19
- }], ctorParameters: function () { return []; } });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib24tZGVtYW5kLXByZWxvYWQtc3RyYXRlZ3kuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb3JlL3NyYy9saWIvdXRpbHMvcmVuZGVyL29uLWRlbWFuZC1wcmVsb2FkLXN0cmF0ZWd5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFrQixNQUFNLE1BQU0sQ0FBQztBQUUvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBTS9DLE1BQU0sT0FBTyx3QkFBd0I7SUFJbkM7UUFIQSxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQztRQUk5QixJQUFJLENBQUMsR0FBRyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQWlCO1FBQzVCLE1BQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztRQUc1QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvQixDQUFDOztzSEFiVSx3QkFBd0I7MEhBQXhCLHdCQUF3Qjs0RkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJlbG9hZGluZ1N0cmF0ZWd5LCBSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgbWVyZ2VNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEFYSHRtbFV0aWwgfSBmcm9tICcuLi9odG1sL2h0bWwtdXRpbCc7XHJcblxyXG5cclxuXHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBBWE9uRGVtYW5kUHJlbG9hZFNlcnZpY2Uge1xyXG4gIHN1YmplY3QgPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XHJcbiAgdG1wOiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy50bXAgPSBBWEh0bWxVdGlsLmdldFVJRCgpO1xyXG4gIH1cclxuXHJcbiAgc3RhcnRQcmVsb2FkKHJvdXRlUGF0aDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBzbGljZXM6IHN0cmluZ1tdID0gW107XHJcbiAgIFxyXG5cclxuICAgIHRoaXMuc3ViamVjdC5uZXh0KHJvdXRlUGF0aCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
1
+ import { Injectable } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { AXHtmlUtil } from '../html/html-util';
4
+ import * as i0 from "@angular/core";
5
+ export class AXOnDemandPreloadService {
6
+ constructor() {
7
+ this.subject = new Subject();
8
+ this.tmp = AXHtmlUtil.getUID();
9
+ }
10
+ startPreload(routePath) {
11
+ const slices = [];
12
+ this.subject.next(routePath);
13
+ }
14
+ }
15
+ AXOnDemandPreloadService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXOnDemandPreloadService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
16
+ AXOnDemandPreloadService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXOnDemandPreloadService });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXOnDemandPreloadService, decorators: [{
18
+ type: Injectable
19
+ }], ctorParameters: function () { return []; } });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib24tZGVtYW5kLXByZWxvYWQtc3RyYXRlZ3kuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb3JlL3NyYy9saWIvdXRpbHMvcmVuZGVyL29uLWRlbWFuZC1wcmVsb2FkLXN0cmF0ZWd5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFrQixNQUFNLE1BQU0sQ0FBQztBQUUvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBTS9DLE1BQU0sT0FBTyx3QkFBd0I7SUFJbkM7UUFIQSxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQztRQUk5QixJQUFJLENBQUMsR0FBRyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQWlCO1FBQzVCLE1BQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztRQUc1QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvQixDQUFDOztzSEFiVSx3QkFBd0I7MEhBQXhCLHdCQUF3Qjs0RkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJlbG9hZGluZ1N0cmF0ZWd5LCBSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWVyZ2VNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBWEh0bWxVdGlsIH0gZnJvbSAnLi4vaHRtbC9odG1sLXV0aWwnO1xuXG5cblxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhPbkRlbWFuZFByZWxvYWRTZXJ2aWNlIHtcbiAgc3ViamVjdCA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKTtcbiAgdG1wOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy50bXAgPSBBWEh0bWxVdGlsLmdldFVJRCgpO1xuICB9XG5cbiAgc3RhcnRQcmVsb2FkKHJvdXRlUGF0aDogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2xpY2VzOiBzdHJpbmdbXSA9IFtdO1xuICAgXG5cbiAgICB0aGlzLnN1YmplY3QubmV4dChyb3V0ZVBhdGgpO1xuICB9XG59XG4iXX0=
@@ -1,103 +1,103 @@
1
- import { ApplicationRef, ComponentFactoryResolver, Injectable, Injector, Compiler } from '@angular/core';
2
- import { Router } from '@angular/router';
3
- import { AXOnDemandPreloadService } from './on-demand-preload-strategy.service';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/router";
6
- import * as i2 from "./on-demand-preload-strategy.service";
7
- export class AXRenderService {
8
- constructor(appRef, router, componentFactoryResolver, compiler, modulePreloadService, injector) {
9
- this.appRef = appRef;
10
- this.router = router;
11
- this.componentFactoryResolver = componentFactoryResolver;
12
- this.compiler = compiler;
13
- this.modulePreloadService = modulePreloadService;
14
- this.injector = injector;
15
- }
16
- appendComponent(componentClass, options = {}, location) {
17
- const componentFactory = this.componentFactoryResolver.resolveComponentFactory(componentClass);
18
- const componentRef = componentFactory.create(this.injector);
19
- this.appRef.attachView(componentRef.hostView);
20
- Object.assign(componentRef.instance, options);
21
- //
22
- const domElem = componentRef.hostView.rootNodes[0];
23
- componentRef.onDestroy(() => {
24
- this.appRef.detachView(componentRef.hostView);
25
- });
26
- if (location) {
27
- location.appendChild(domElem);
28
- }
29
- else {
30
- document.body.appendChild(domElem);
31
- }
32
- setTimeout(() => {
33
- componentRef.changeDetectorRef.detectChanges();
34
- }, 0);
35
- return componentRef;
36
- }
37
- findLoadedComponentByRoute(path, timeoutTime = 10) {
38
- const delay = 200;
39
- const loop = timeoutTime * 1000 / delay;
40
- return new Promise((resolve, reject) => {
41
- let found = null;
42
- let preload = false;
43
- const theLoop = (i) => {
44
- setTimeout(async () => {
45
- found = await this._findLoadedComponentByRoute(path);
46
- if (--i && found == null) {
47
- if (!preload) {
48
- this.modulePreloadService.startPreload(path);
49
- preload = true;
50
- }
51
- theLoop(i);
52
- }
53
- else if (found) {
54
- resolve(found);
55
- }
56
- else {
57
- reject();
58
- }
59
- }, delay);
60
- };
61
- theLoop(loop);
62
- });
63
- }
64
- async _findLoadedComponentByRoute(search) {
65
- let found = null;
66
- const f = (children, parentPath) => {
67
- for (const p in children) {
68
- if (children.hasOwnProperty(p)) {
69
- const route = children[p];
70
- const pp = (route.path != '' && route.path != null) ? parentPath + '/' + route.path : parentPath;
71
- if (pp == search && !route._loadedConfig && route.component) {
72
- found = route;
73
- return;
74
- }
75
- else if (route._loadedConfig || route.children) {
76
- f(route.children || route._loadedConfig.routes, pp);
77
- }
78
- }
79
- }
80
- };
81
- for (const p in this.router.config) {
82
- if (this.router.config.hasOwnProperty(p)) {
83
- const route = this.router.config[p];
84
- if (route.path === search && route.component) {
85
- found = route;
86
- }
87
- else if (route['_loadedConfig'] || route.children) {
88
- f(route.children || route['_loadedConfig'].routes, route.path);
89
- }
90
- if (found)
91
- break;
92
- }
93
- }
94
- return found;
95
- }
96
- }
97
- AXRenderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderService, deps: [{ token: i0.ApplicationRef }, { token: i1.Router }, { token: i0.ComponentFactoryResolver }, { token: i0.Compiler }, { token: i2.AXOnDemandPreloadService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
98
- AXRenderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderService, providedIn: 'root' });
99
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderService, decorators: [{
100
- type: Injectable,
101
- args: [{ providedIn: 'root' }]
102
- }], ctorParameters: function () { return [{ type: i0.ApplicationRef }, { type: i1.Router }, { type: i0.ComponentFactoryResolver }, { type: i0.Compiler }, { type: i2.AXOnDemandPreloadService }, { type: i0.Injector }]; } });
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29yZS9zcmMvbGliL3V0aWxzL3JlbmRlci9yZW5kZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsY0FBYyxFQUFFLHdCQUF3QixFQUFnQixVQUFVLEVBQ2xFLFFBQVEsRUFBeUIsUUFBUSxFQUM1QyxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsTUFBTSxFQUFTLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7QUFLaEYsTUFBTSxPQUFPLGVBQWU7SUFDeEIsWUFDWSxNQUFzQixFQUN0QixNQUFjLEVBQ2Qsd0JBQWtELEVBQ2xELFFBQWtCLEVBQ2xCLG9CQUE4QyxFQUM5QyxRQUFrQjtRQUxsQixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUN0QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBMEI7UUFDOUMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUM5QixDQUFDO0lBSUQsZUFBZSxDQUNYLGNBQXVCLEVBQ3ZCLFVBQWUsRUFBRSxFQUNqQixRQUFrQjtRQUVsQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyx1QkFBdUIsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMvRixNQUFNLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5QyxNQUFNLENBQUMsTUFBTSxD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LENBQUMsYUFBYSxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUU7d0JBQzlDLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO3FCQUN2RDtpQkFDSjthQUNKO1FBQ0wsQ0FBQyxDQUFDO1FBRUYsS0FBSyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtZQUNoQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDdEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BDLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxNQUFNLElBQUksS0FBSyxDQUFDLFNBQVMsRUFBRTtvQkFDMUMsS0FBSyxHQUFHLEtBQUssQ0FBQztpQkFDakI7cUJBQ0ksSUFBSSxLQUFLLENBQUMsZUFBZSxDQUFDLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRTtvQkFDL0MsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ2xFO2dCQUNELElBQUksS0FBSztvQkFDTCxNQUFNO2FBQ2I7U0FDSjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7OzZHQWpHUSxlQUFlO2lIQUFmLGVBQWUsY0FERixNQUFNOzRGQUNuQixlQUFlO2tCQUQzQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBBcHBsaWNhdGlvblJlZiwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBDb21wb25lbnRSZWYsIEluamVjdGFibGUsXHJcbiAgICBJbmplY3RvciwgRW1iZWRkZWRWaWV3UmVmLCBUeXBlLCBDb21waWxlciwgTmdNb2R1bGVGYWN0b3J5XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciwgUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBBWE9uRGVtYW5kUHJlbG9hZFNlcnZpY2UgfSBmcm9tICcuL29uLWRlbWFuZC1wcmVsb2FkLXN0cmF0ZWd5LnNlcnZpY2UnO1xyXG5cclxuXHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgQVhSZW5kZXJTZXJ2aWNlIHtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgYXBwUmVmOiBBcHBsaWNhdGlvblJlZixcclxuICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBjb21waWxlcjogQ29tcGlsZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBtb2R1bGVQcmVsb2FkU2VydmljZTogQVhPbkRlbWFuZFByZWxvYWRTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgICB9XHJcblxyXG5cclxuXHJcbiAgICBhcHBlbmRDb21wb25lbnQ8VD4oXHJcbiAgICAgICAgY29tcG9uZW50Q2xhc3M6IFR5cGU8VD4sXHJcbiAgICAgICAgb3B0aW9uczogYW55ID0ge30sXHJcbiAgICAgICAgbG9jYXRpb24/OiBFbGVtZW50KTogQ29tcG9uZW50UmVmPGFueT4ge1xyXG5cclxuICAgICAgICBjb25zdCBjb21wb25lbnRGYWN0b3J5ID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoY29tcG9uZW50Q2xhc3MpO1xyXG4gICAgICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IGNvbXBvbmVudEZhY3RvcnkuY3JlYXRlKHRoaXMuaW5qZWN0b3IpO1xyXG4gICAgICAgIHRoaXMuYXBwUmVmLmF0dGFjaFZpZXcoY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcclxuICAgICAgICBPYmplY3QuYXNzaWduKGNvbXBvbmVudFJlZi5pbnN0YW5jZSwgb3B0aW9ucyk7XHJcbiAgICAgICAgLy9cclxuICAgICAgICBjb25zdCBkb21FbGVtID0gKGNvbXBvbmVudFJlZi5ob3N0VmlldyBhcyBFbWJlZGRlZFZpZXdSZWY8YW55Pikucm9vdE5vZGVzWzBdIGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICAgIGNvbXBvbmVudFJlZi5vbkRlc3Ryb3koKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmFwcFJlZi5kZXRhY2hWaWV3KGNvbXBvbmVudFJlZi5ob3N0Vmlldyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgaWYgKGxvY2F0aW9uKSB7XHJcbiAgICAgICAgICAgIGxvY2F0aW9uLmFwcGVuZENoaWxkKGRvbUVsZW0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZG9tRWxlbSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBjb21wb25lbnRSZWYuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH0sIDApO1xyXG4gICAgICAgIHJldHVybiBjb21wb25lbnRSZWY7XHJcbiAgICB9XHJcblxyXG4gICAgZmluZExvYWRlZENvbXBvbmVudEJ5Um91dGUocGF0aDogc3RyaW5nLCB0aW1lb3V0VGltZTogbnVtYmVyID0gMTApOiBQcm9taXNlPFJvdXRlPiB7XHJcbiAgICAgICAgY29uc3QgZGVsYXkgPSAyMDA7XHJcbiAgICAgICAgY29uc3QgbG9vcCA9IHRpbWVvdXRUaW1lICogMTAwMCAvIGRlbGF5O1xyXG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBmb3VuZDogUm91dGUgPSBudWxsO1xyXG4gICAgICAgICAgICBsZXQgcHJlbG9hZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgICAgICAgICBjb25zdCB0aGVMb29wID0gKGkpID0+IHtcclxuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvdW5kID0gYXdhaXQgdGhpcy5fZmluZExvYWRlZENvbXBvbmVudEJ5Um91dGUocGF0aCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKC0taSAmJiBmb3VuZCA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghcHJlbG9hZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb2R1bGVQcmVsb2FkU2VydmljZS5zdGFydFByZWxvYWQocGF0aCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVsb2FkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGVMb29wKGkpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChmb3VuZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKGZvdW5kKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlamVjdCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0sIGRlbGF5KTtcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgdGhlTG9vcChsb29wKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGFzeW5jIF9maW5kTG9hZGVkQ29tcG9uZW50QnlSb3V0ZShzZWFyY2gpIHtcclxuXHJcbiAgICAgICAgbGV0IGZvdW5kOiBSb3V0ZSA9IG51bGw7XHJcbiAgICAgICAgY29uc3QgZiA9IChjaGlsZHJlbiwgcGFyZW50UGF0aCkgPT4ge1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IHAgaW4gY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgICAgIGlmIChjaGlsZHJlbi5oYXNPd25Qcm9wZXJ0eShwKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJvdXRlID0gY2hpbGRyZW5bcF07XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcHAgPSAocm91dGUucGF0aCAhPSAnJyAmJiByb3V0ZS5wYXRoICE9IG51bGwpID8gcGFyZW50UGF0aCArICcvJyArIHJvdXRlLnBhdGggOiBwYXJlbnRQYXRoO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChwcCA9PSBzZWFyY2ggJiYgIXJvdXRlLl9sb2FkZWRDb25maWcgJiYgcm91dGUuY29tcG9uZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kID0gcm91dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJvdXRlLl9sb2FkZWRDb25maWcgfHwgcm91dGUuY2hpbGRyZW4pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZihyb3V0ZS5jaGlsZHJlbiB8fCByb3V0ZS5fbG9hZGVkQ29uZmlnLnJvdXRlcywgcHApO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIGZvciAoY29uc3QgcCBpbiB0aGlzLnJvdXRlci5jb25maWcpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMucm91dGVyLmNvbmZpZy5oYXNPd25Qcm9wZXJ0eShwKSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3Qgcm91dGUgPSB0aGlzLnJvdXRlci5jb25maWdbcF07XHJcbiAgICAgICAgICAgICAgICBpZiAocm91dGUucGF0aCA9PT0gc2VhcmNoICYmIHJvdXRlLmNvbXBvbmVudCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvdW5kID0gcm91dGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChyb3V0ZVsnX2xvYWRlZENvbmZpZyddIHx8IHJvdXRlLmNoaWxkcmVuKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZihyb3V0ZS5jaGlsZHJlbiB8fCByb3V0ZVsnX2xvYWRlZENvbmZpZyddLnJvdXRlcywgcm91dGUucGF0aCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpZiAoZm91bmQpXHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZvdW5kO1xyXG4gICAgfVxyXG5cclxufVxyXG4iXX0=
1
+ import { ApplicationRef, ComponentFactoryResolver, Injectable, Injector, Compiler } from '@angular/core';
2
+ import { Router } from '@angular/router';
3
+ import { AXOnDemandPreloadService } from './on-demand-preload-strategy.service';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/router";
6
+ import * as i2 from "./on-demand-preload-strategy.service";
7
+ export class AXRenderService {
8
+ constructor(appRef, router, componentFactoryResolver, compiler, modulePreloadService, injector) {
9
+ this.appRef = appRef;
10
+ this.router = router;
11
+ this.componentFactoryResolver = componentFactoryResolver;
12
+ this.compiler = compiler;
13
+ this.modulePreloadService = modulePreloadService;
14
+ this.injector = injector;
15
+ }
16
+ appendComponent(componentClass, options = {}, location) {
17
+ const componentFactory = this.componentFactoryResolver.resolveComponentFactory(componentClass);
18
+ const componentRef = componentFactory.create(this.injector);
19
+ this.appRef.attachView(componentRef.hostView);
20
+ Object.assign(componentRef.instance, options);
21
+ //
22
+ const domElem = componentRef.hostView.rootNodes[0];
23
+ componentRef.onDestroy(() => {
24
+ this.appRef.detachView(componentRef.hostView);
25
+ });
26
+ if (location) {
27
+ location.appendChild(domElem);
28
+ }
29
+ else {
30
+ document.body.appendChild(domElem);
31
+ }
32
+ setTimeout(() => {
33
+ componentRef.changeDetectorRef.detectChanges();
34
+ }, 0);
35
+ return componentRef;
36
+ }
37
+ findLoadedComponentByRoute(path, timeoutTime = 10) {
38
+ const delay = 200;
39
+ const loop = timeoutTime * 1000 / delay;
40
+ return new Promise((resolve, reject) => {
41
+ let found = null;
42
+ let preload = false;
43
+ const theLoop = (i) => {
44
+ setTimeout(async () => {
45
+ found = await this._findLoadedComponentByRoute(path);
46
+ if (--i && found == null) {
47
+ if (!preload) {
48
+ this.modulePreloadService.startPreload(path);
49
+ preload = true;
50
+ }
51
+ theLoop(i);
52
+ }
53
+ else if (found) {
54
+ resolve(found);
55
+ }
56
+ else {
57
+ reject();
58
+ }
59
+ }, delay);
60
+ };
61
+ theLoop(loop);
62
+ });
63
+ }
64
+ async _findLoadedComponentByRoute(search) {
65
+ let found = null;
66
+ const f = (children, parentPath) => {
67
+ for (const p in children) {
68
+ if (children.hasOwnProperty(p)) {
69
+ const route = children[p];
70
+ const pp = (route.path != '' && route.path != null) ? parentPath + '/' + route.path : parentPath;
71
+ if (pp == search && !route._loadedConfig && route.component) {
72
+ found = route;
73
+ return;
74
+ }
75
+ else if (route._loadedConfig || route.children) {
76
+ f(route.children || route._loadedConfig.routes, pp);
77
+ }
78
+ }
79
+ }
80
+ };
81
+ for (const p in this.router.config) {
82
+ if (this.router.config.hasOwnProperty(p)) {
83
+ const route = this.router.config[p];
84
+ if (route.path === search && route.component) {
85
+ found = route;
86
+ }
87
+ else if (route['_loadedConfig'] || route.children) {
88
+ f(route.children || route['_loadedConfig'].routes, route.path);
89
+ }
90
+ if (found)
91
+ break;
92
+ }
93
+ }
94
+ return found;
95
+ }
96
+ }
97
+ AXRenderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderService, deps: [{ token: i0.ApplicationRef }, { token: i1.Router }, { token: i0.ComponentFactoryResolver }, { token: i0.Compiler }, { token: i2.AXOnDemandPreloadService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
98
+ AXRenderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderService, providedIn: 'root' });
99
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderService, decorators: [{
100
+ type: Injectable,
101
+ args: [{ providedIn: 'root' }]
102
+ }], ctorParameters: function () { return [{ type: i0.ApplicationRef }, { type: i1.Router }, { type: i0.ComponentFactoryResolver }, { type: i0.Compiler }, { type: i2.AXOnDemandPreloadService }, { type: i0.Injector }]; } });
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29yZS9zcmMvbGliL3V0aWxzL3JlbmRlci9yZW5kZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsY0FBYyxFQUFFLHdCQUF3QixFQUFnQixVQUFVLEVBQ2xFLFFBQVEsRUFBeUIsUUFBUSxFQUM1QyxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsTUFBTSxFQUFTLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7QUFLaEYsTUFBTSxPQUFPLGVBQWU7SUFDeEIsWUFDWSxNQUFzQixFQUN0QixNQUFjLEVBQ2Qsd0JBQWtELEVBQ2xELFFBQWtCLEVBQ2xCLG9CQUE4QyxFQUM5QyxRQUFrQjtRQUxsQixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUN0QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBMEI7UUFDOUMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUM5QixDQUFDO0lBSUQsZUFBZSxDQUNYLGNBQXVCLEVBQ3ZCLFVBQWUsRUFBRSxFQUNqQixRQUFrQjtRQUVsQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyx1QkFBdUIsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMvRixNQUFNLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5QyxNQUFNLENBQUMsTUFBTSxD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LENBQUMsYUFBYSxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUU7d0JBQzlDLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO3FCQUN2RDtpQkFDSjthQUNKO1FBQ0wsQ0FBQyxDQUFDO1FBRUYsS0FBSyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtZQUNoQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDdEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BDLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxNQUFNLElBQUksS0FBSyxDQUFDLFNBQVMsRUFBRTtvQkFDMUMsS0FBSyxHQUFHLEtBQUssQ0FBQztpQkFDakI7cUJBQ0ksSUFBSSxLQUFLLENBQUMsZUFBZSxDQUFDLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRTtvQkFDL0MsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ2xFO2dCQUNELElBQUksS0FBSztvQkFDTCxNQUFNO2FBQ2I7U0FDSjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7OzZHQWpHUSxlQUFlO2lIQUFmLGVBQWUsY0FERixNQUFNOzRGQUNuQixlQUFlO2tCQUQzQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQXBwbGljYXRpb25SZWYsIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgQ29tcG9uZW50UmVmLCBJbmplY3RhYmxlLFxuICAgIEluamVjdG9yLCBFbWJlZGRlZFZpZXdSZWYsIFR5cGUsIENvbXBpbGVyLCBOZ01vZHVsZUZhY3Rvcnlcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIsIFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEFYT25EZW1hbmRQcmVsb2FkU2VydmljZSB9IGZyb20gJy4vb24tZGVtYW5kLXByZWxvYWQtc3RyYXRlZ3kuc2VydmljZSc7XG5cblxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEFYUmVuZGVyU2VydmljZSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgYXBwUmVmOiBBcHBsaWNhdGlvblJlZixcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJpdmF0ZSBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICAgICAgcHJpdmF0ZSBjb21waWxlcjogQ29tcGlsZXIsXG4gICAgICAgIHByaXZhdGUgbW9kdWxlUHJlbG9hZFNlcnZpY2U6IEFYT25EZW1hbmRQcmVsb2FkU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB9XG5cblxuXG4gICAgYXBwZW5kQ29tcG9uZW50PFQ+KFxuICAgICAgICBjb21wb25lbnRDbGFzczogVHlwZTxUPixcbiAgICAgICAgb3B0aW9uczogYW55ID0ge30sXG4gICAgICAgIGxvY2F0aW9uPzogRWxlbWVudCk6IENvbXBvbmVudFJlZjxhbnk+IHtcblxuICAgICAgICBjb25zdCBjb21wb25lbnRGYWN0b3J5ID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoY29tcG9uZW50Q2xhc3MpO1xuICAgICAgICBjb25zdCBjb21wb25lbnRSZWYgPSBjb21wb25lbnRGYWN0b3J5LmNyZWF0ZSh0aGlzLmluamVjdG9yKTtcbiAgICAgICAgdGhpcy5hcHBSZWYuYXR0YWNoVmlldyhjb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgICAgICBPYmplY3QuYXNzaWduKGNvbXBvbmVudFJlZi5pbnN0YW5jZSwgb3B0aW9ucyk7XG4gICAgICAgIC8vXG4gICAgICAgIGNvbnN0IGRvbUVsZW0gPSAoY29tcG9uZW50UmVmLmhvc3RWaWV3IGFzIEVtYmVkZGVkVmlld1JlZjxhbnk+KS5yb290Tm9kZXNbMF0gYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIGNvbXBvbmVudFJlZi5vbkRlc3Ryb3koKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hcHBSZWYuZGV0YWNoVmlldyhjb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGxvY2F0aW9uKSB7XG4gICAgICAgICAgICBsb2NhdGlvbi5hcHBlbmRDaGlsZChkb21FbGVtKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZG9tRWxlbSk7XG4gICAgICAgIH1cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBjb21wb25lbnRSZWYuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9LCAwKTtcbiAgICAgICAgcmV0dXJuIGNvbXBvbmVudFJlZjtcbiAgICB9XG5cbiAgICBmaW5kTG9hZGVkQ29tcG9uZW50QnlSb3V0ZShwYXRoOiBzdHJpbmcsIHRpbWVvdXRUaW1lOiBudW1iZXIgPSAxMCk6IFByb21pc2U8Um91dGU+IHtcbiAgICAgICAgY29uc3QgZGVsYXkgPSAyMDA7XG4gICAgICAgIGNvbnN0IGxvb3AgPSB0aW1lb3V0VGltZSAqIDEwMDAgLyBkZWxheTtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIGxldCBmb3VuZDogUm91dGUgPSBudWxsO1xuICAgICAgICAgICAgbGV0IHByZWxvYWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICAgICAgICAgIGNvbnN0IHRoZUxvb3AgPSAoaSkgPT4ge1xuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBmb3VuZCA9IGF3YWl0IHRoaXMuX2ZpbmRMb2FkZWRDb21wb25lbnRCeVJvdXRlKHBhdGgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoLS1pICYmIGZvdW5kID09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghcHJlbG9hZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW9kdWxlUHJlbG9hZFNlcnZpY2Uuc3RhcnRQcmVsb2FkKHBhdGgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWxvYWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhlTG9vcChpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChmb3VuZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShmb3VuZCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZWplY3QoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sIGRlbGF5KTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB0aGVMb29wKGxvb3ApO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFzeW5jIF9maW5kTG9hZGVkQ29tcG9uZW50QnlSb3V0ZShzZWFyY2gpIHtcblxuICAgICAgICBsZXQgZm91bmQ6IFJvdXRlID0gbnVsbDtcbiAgICAgICAgY29uc3QgZiA9IChjaGlsZHJlbiwgcGFyZW50UGF0aCkgPT4ge1xuICAgICAgICAgICAgZm9yIChjb25zdCBwIGluIGNoaWxkcmVuKSB7XG4gICAgICAgICAgICAgICAgaWYgKGNoaWxkcmVuLmhhc093blByb3BlcnR5KHApKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJvdXRlID0gY2hpbGRyZW5bcF07XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHBwID0gKHJvdXRlLnBhdGggIT0gJycgJiYgcm91dGUucGF0aCAhPSBudWxsKSA/IHBhcmVudFBhdGggKyAnLycgKyByb3V0ZS5wYXRoIDogcGFyZW50UGF0aDtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHBwID09IHNlYXJjaCAmJiAhcm91dGUuX2xvYWRlZENvbmZpZyAmJiByb3V0ZS5jb21wb25lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kID0gcm91dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocm91dGUuX2xvYWRlZENvbmZpZyB8fCByb3V0ZS5jaGlsZHJlbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgZihyb3V0ZS5jaGlsZHJlbiB8fCByb3V0ZS5fbG9hZGVkQ29uZmlnLnJvdXRlcywgcHApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIGZvciAoY29uc3QgcCBpbiB0aGlzLnJvdXRlci5jb25maWcpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnJvdXRlci5jb25maWcuaGFzT3duUHJvcGVydHkocCkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCByb3V0ZSA9IHRoaXMucm91dGVyLmNvbmZpZ1twXTtcbiAgICAgICAgICAgICAgICBpZiAocm91dGUucGF0aCA9PT0gc2VhcmNoICYmIHJvdXRlLmNvbXBvbmVudCkge1xuICAgICAgICAgICAgICAgICAgICBmb3VuZCA9IHJvdXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIGlmIChyb3V0ZVsnX2xvYWRlZENvbmZpZyddIHx8IHJvdXRlLmNoaWxkcmVuKSB7XG4gICAgICAgICAgICAgICAgICAgIGYocm91dGUuY2hpbGRyZW4gfHwgcm91dGVbJ19sb2FkZWRDb25maWcnXS5yb3V0ZXMsIHJvdXRlLnBhdGgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoZm91bmQpXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmb3VuZDtcbiAgICB9XG5cbn1cbiJdfQ==
@@ -1,35 +1,35 @@
1
- import { NgModule } from '@angular/core';
2
- import { AXRenderService } from './render.service';
3
- import { AXOnDemandPreloadService } from './on-demand-preload-strategy.service';
4
- import * as i0 from "@angular/core";
5
- // @dynamic
6
- export function getOnDemandPreloadServiceFactory() {
7
- return new AXOnDemandPreloadService();
8
- }
9
- export class AXRenderingModule {
10
- }
11
- AXRenderingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- AXRenderingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderingModule });
13
- AXRenderingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderingModule, providers: [
14
- {
15
- provide: AXOnDemandPreloadService,
16
- useFactory: getOnDemandPreloadServiceFactory
17
- },
18
- AXRenderService
19
- ], imports: [[]] });
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderingModule, decorators: [{
21
- type: NgModule,
22
- args: [{
23
- imports: [],
24
- exports: [],
25
- declarations: [],
26
- providers: [
27
- {
28
- provide: AXOnDemandPreloadService,
29
- useFactory: getOnDemandPreloadServiceFactory
30
- },
31
- AXRenderService
32
- ],
33
- }]
34
- }] });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyaW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb3JlL3NyYy9saWIvdXRpbHMvcmVuZGVyL3JlbmRlcmluZy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7O0FBR2hGLFdBQVc7QUFDWCxNQUFNLFVBQVUsZ0NBQWdDO0lBQzVDLE9BQU8sSUFBSSx3QkFBd0IsRUFBRSxDQUFDO0FBQzFDLENBQUM7QUFjRCxNQUFNLE9BQU8saUJBQWlCOzsrR0FBakIsaUJBQWlCO2dIQUFqQixpQkFBaUI7Z0hBQWpCLGlCQUFpQixhQVJmO1FBQ1A7WUFDSSxPQUFPLEVBQUUsd0JBQXdCO1lBQ2pDLFVBQVUsRUFBRSxnQ0FBZ0M7U0FDL0M7UUFDRCxlQUFlO0tBQ2xCLFlBVFEsRUFBRTs0RkFXRixpQkFBaUI7a0JBWjdCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsd0JBQXdCOzRCQUNqQyxVQUFVLEVBQUUsZ0NBQWdDO3lCQUMvQzt3QkFDRCxlQUFlO3FCQUNsQjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYUmVuZGVyU2VydmljZSB9IGZyb20gJy4vcmVuZGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBWE9uRGVtYW5kUHJlbG9hZFNlcnZpY2UgfSBmcm9tICcuL29uLWRlbWFuZC1wcmVsb2FkLXN0cmF0ZWd5LnNlcnZpY2UnO1xyXG5cclxuXHJcbi8vIEBkeW5hbWljXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRPbkRlbWFuZFByZWxvYWRTZXJ2aWNlRmFjdG9yeSgpIHtcclxuICAgIHJldHVybiBuZXcgQVhPbkRlbWFuZFByZWxvYWRTZXJ2aWNlKCk7XHJcbn1cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBpbXBvcnRzOiBbXSxcclxuICAgIGV4cG9ydHM6IFtdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbXSxcclxuICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgcHJvdmlkZTogQVhPbkRlbWFuZFByZWxvYWRTZXJ2aWNlLFxyXG4gICAgICAgICAgICB1c2VGYWN0b3J5OiBnZXRPbkRlbWFuZFByZWxvYWRTZXJ2aWNlRmFjdG9yeVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgQVhSZW5kZXJTZXJ2aWNlXHJcbiAgICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQVhSZW5kZXJpbmdNb2R1bGUge1xyXG5cclxufVxyXG4iXX0=
1
+ import { NgModule } from '@angular/core';
2
+ import { AXRenderService } from './render.service';
3
+ import { AXOnDemandPreloadService } from './on-demand-preload-strategy.service';
4
+ import * as i0 from "@angular/core";
5
+ // @dynamic
6
+ export function getOnDemandPreloadServiceFactory() {
7
+ return new AXOnDemandPreloadService();
8
+ }
9
+ export class AXRenderingModule {
10
+ }
11
+ AXRenderingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ AXRenderingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderingModule });
13
+ AXRenderingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderingModule, providers: [
14
+ {
15
+ provide: AXOnDemandPreloadService,
16
+ useFactory: getOnDemandPreloadServiceFactory
17
+ },
18
+ AXRenderService
19
+ ], imports: [[]] });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXRenderingModule, decorators: [{
21
+ type: NgModule,
22
+ args: [{
23
+ imports: [],
24
+ exports: [],
25
+ declarations: [],
26
+ providers: [
27
+ {
28
+ provide: AXOnDemandPreloadService,
29
+ useFactory: getOnDemandPreloadServiceFactory
30
+ },
31
+ AXRenderService
32
+ ],
33
+ }]
34
+ }] });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyaW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb3JlL3NyYy9saWIvdXRpbHMvcmVuZGVyL3JlbmRlcmluZy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7O0FBR2hGLFdBQVc7QUFDWCxNQUFNLFVBQVUsZ0NBQWdDO0lBQzVDLE9BQU8sSUFBSSx3QkFBd0IsRUFBRSxDQUFDO0FBQzFDLENBQUM7QUFjRCxNQUFNLE9BQU8saUJBQWlCOzsrR0FBakIsaUJBQWlCO2dIQUFqQixpQkFBaUI7Z0hBQWpCLGlCQUFpQixhQVJmO1FBQ1A7WUFDSSxPQUFPLEVBQUUsd0JBQXdCO1lBQ2pDLFVBQVUsRUFBRSxnQ0FBZ0M7U0FDL0M7UUFDRCxlQUFlO0tBQ2xCLFlBVFEsRUFBRTs0RkFXRixpQkFBaUI7a0JBWjdCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsd0JBQXdCOzRCQUNqQyxVQUFVLEVBQUUsZ0NBQWdDO3lCQUMvQzt3QkFDRCxlQUFlO3FCQUNsQjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFJlbmRlclNlcnZpY2UgfSBmcm9tICcuL3JlbmRlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFYT25EZW1hbmRQcmVsb2FkU2VydmljZSB9IGZyb20gJy4vb24tZGVtYW5kLXByZWxvYWQtc3RyYXRlZ3kuc2VydmljZSc7XG5cblxuLy8gQGR5bmFtaWNcbmV4cG9ydCBmdW5jdGlvbiBnZXRPbkRlbWFuZFByZWxvYWRTZXJ2aWNlRmFjdG9yeSgpIHtcbiAgICByZXR1cm4gbmV3IEFYT25EZW1hbmRQcmVsb2FkU2VydmljZSgpO1xufVxuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtdLFxuICAgIGV4cG9ydHM6IFtdLFxuICAgIGRlY2xhcmF0aW9uczogW10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEFYT25EZW1hbmRQcmVsb2FkU2VydmljZSxcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6IGdldE9uRGVtYW5kUHJlbG9hZFNlcnZpY2VGYWN0b3J5XG4gICAgICAgIH0sXG4gICAgICAgIEFYUmVuZGVyU2VydmljZVxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUmVuZGVyaW5nTW9kdWxlIHtcblxufVxuIl19