angular-three 2.0.0-beta.3 → 2.0.0-beta.300

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 (159) hide show
  1. package/README.md +186 -112
  2. package/esm2022/angular-three.mjs +1 -1
  3. package/esm2022/index.mjs +17 -18
  4. package/esm2022/lib/canvas.mjs +155 -252
  5. package/esm2022/lib/directives/args.mjs +49 -21
  6. package/esm2022/lib/directives/selection.mjs +65 -0
  7. package/esm2022/lib/dom/events.mjs +7 -2
  8. package/esm2022/lib/events.mjs +98 -79
  9. package/esm2022/lib/html.mjs +40 -0
  10. package/esm2022/lib/instance.mjs +72 -0
  11. package/esm2022/lib/loader.mjs +77 -57
  12. package/esm2022/lib/loop.mjs +30 -24
  13. package/esm2022/lib/pipes/hexify.mjs +67 -0
  14. package/esm2022/lib/portal.mjs +184 -215
  15. package/esm2022/lib/renderer/catalogue.mjs +7 -0
  16. package/esm2022/lib/renderer/constants.mjs +20 -0
  17. package/esm2022/lib/renderer/index.mjs +557 -0
  18. package/esm2022/lib/renderer/state.mjs +49 -0
  19. package/esm2022/lib/renderer/utils.mjs +85 -74
  20. package/esm2022/lib/roots.mjs +273 -0
  21. package/esm2022/lib/routed-scene.mjs +13 -11
  22. package/esm2022/lib/store.mjs +183 -0
  23. package/esm2022/lib/three-types.mjs +1 -1
  24. package/esm2022/lib/types.mjs +1 -1
  25. package/esm2022/lib/utils/apply-props.mjs +43 -35
  26. package/esm2022/lib/utils/attach.mjs +13 -10
  27. package/esm2022/lib/utils/before-render.mjs +12 -0
  28. package/esm2022/lib/utils/is.mjs +6 -5
  29. package/esm2022/lib/utils/make.mjs +19 -17
  30. package/esm2022/lib/utils/non-nullish.mjs +7 -0
  31. package/esm2022/lib/utils/object-events.mjs +92 -0
  32. package/esm2022/lib/utils/parameters.mjs +70 -0
  33. package/esm2022/lib/utils/resolve-ref.mjs +8 -0
  34. package/esm2022/lib/utils/signal-store.mjs +90 -0
  35. package/esm2022/lib/utils/update.mjs +8 -4
  36. package/esm2022/testing/angular-three-testing.mjs +5 -0
  37. package/esm2022/testing/index.mjs +3 -0
  38. package/esm2022/testing/lib/test-bed.mjs +130 -0
  39. package/esm2022/testing/lib/test-canvas.mjs +45 -0
  40. package/esm2022/testing/lib/utils/mock-canvas.mjs +37 -0
  41. package/esm2022/testing/lib/utils/web-gl-rendering-context.mjs +752 -0
  42. package/fesm2022/angular-three-testing.mjs +966 -0
  43. package/fesm2022/angular-three-testing.mjs.map +1 -0
  44. package/fesm2022/angular-three.mjs +2110 -2057
  45. package/fesm2022/angular-three.mjs.map +1 -1
  46. package/index.d.ts +18 -17
  47. package/lib/canvas.d.ts +373 -33
  48. package/lib/directives/args.d.ts +14 -7
  49. package/lib/directives/selection.d.ts +17 -0
  50. package/lib/dom/events.d.ts +2 -2
  51. package/lib/events.d.ts +4 -4
  52. package/lib/html.d.ts +17 -0
  53. package/lib/instance.d.ts +4 -0
  54. package/lib/loader.d.ts +28 -5
  55. package/lib/loop.d.ts +27 -17
  56. package/lib/pipes/hexify.d.ts +20 -0
  57. package/lib/portal.d.ts +58 -44
  58. package/lib/renderer/catalogue.d.ts +13 -0
  59. package/lib/renderer/constants.d.ts +19 -0
  60. package/lib/renderer/{renderer.d.ts → index.d.ts} +34 -18
  61. package/lib/renderer/state.d.ts +24 -0
  62. package/lib/renderer/utils.d.ts +12 -20
  63. package/lib/roots.d.ts +13 -0
  64. package/lib/routed-scene.d.ts +1 -1
  65. package/lib/store.d.ts +15 -0
  66. package/lib/three-types.d.ts +502 -149
  67. package/lib/types.d.ts +161 -178
  68. package/lib/utils/apply-props.d.ts +2 -2
  69. package/lib/utils/attach.d.ts +4 -4
  70. package/lib/utils/is.d.ts +13 -13
  71. package/lib/utils/make.d.ts +10 -5
  72. package/lib/utils/non-nullish.d.ts +4 -0
  73. package/lib/utils/object-events.d.ts +34 -0
  74. package/lib/utils/parameters.d.ts +20 -0
  75. package/lib/utils/resolve-ref.d.ts +2 -0
  76. package/lib/utils/signal-store.d.ts +26 -0
  77. package/lib/utils/update.d.ts +1 -1
  78. package/metadata.json +1 -1
  79. package/package.json +41 -14
  80. package/plugin/generators.json +34 -16
  81. package/plugin/package.json +3 -6
  82. package/plugin/src/generators/add-soba/compat.d.ts +2 -0
  83. package/plugin/src/generators/add-soba/compat.js +6 -0
  84. package/plugin/src/generators/add-soba/compat.js.map +1 -0
  85. package/plugin/src/generators/add-soba/generator.d.ts +3 -0
  86. package/plugin/src/generators/add-soba/generator.js +78 -0
  87. package/plugin/src/generators/add-soba/generator.js.map +1 -0
  88. package/plugin/src/generators/add-soba/schema.json +4 -0
  89. package/plugin/src/generators/gltf/compat.d.ts +2 -0
  90. package/plugin/src/generators/gltf/compat.js +6 -0
  91. package/plugin/src/generators/gltf/compat.js.map +1 -0
  92. package/plugin/src/generators/gltf/files/__fileName__.ts__tmpl__ +36 -0
  93. package/plugin/src/generators/gltf/generator.d.ts +12 -0
  94. package/plugin/src/generators/gltf/generator.js +125 -0
  95. package/plugin/src/generators/gltf/generator.js.map +1 -0
  96. package/plugin/src/generators/gltf/schema.json +58 -0
  97. package/plugin/src/generators/init/compat.d.ts +1 -1
  98. package/plugin/src/generators/init/compat.js +2 -2
  99. package/plugin/src/generators/init/compat.js.map +1 -1
  100. package/plugin/src/generators/init/files/experience/experience.component.ts__tmpl__ +29 -0
  101. package/plugin/src/generators/init/generator.d.ts +6 -0
  102. package/plugin/src/generators/init/generator.js +154 -0
  103. package/plugin/src/generators/init/generator.js.map +1 -0
  104. package/plugin/src/generators/init/schema.json +11 -4
  105. package/plugin/src/generators/utils.d.ts +2 -0
  106. package/plugin/src/generators/utils.js +35 -0
  107. package/plugin/src/generators/utils.js.map +1 -0
  108. package/plugin/src/generators/version.d.ts +16 -0
  109. package/plugin/src/generators/version.js +20 -0
  110. package/plugin/src/generators/version.js.map +1 -0
  111. package/plugin/src/index.d.ts +0 -1
  112. package/plugin/src/index.js +0 -5
  113. package/plugin/src/index.js.map +1 -1
  114. package/testing/README.md +3 -0
  115. package/testing/index.d.ts +2 -0
  116. package/testing/lib/test-bed.d.ts +38 -0
  117. package/testing/lib/test-canvas.d.ts +11 -0
  118. package/testing/lib/utils/mock-canvas.d.ts +5 -0
  119. package/testing/lib/utils/web-gl-rendering-context.d.ts +16 -0
  120. package/testing/package.json +3 -0
  121. package/web-types.json +1 -1
  122. package/esm2022/lib/di/before-render.mjs +0 -13
  123. package/esm2022/lib/di/catalogue.mjs +0 -7
  124. package/esm2022/lib/di/ref.mjs +0 -49
  125. package/esm2022/lib/directives/common.mjs +0 -39
  126. package/esm2022/lib/directives/parent.mjs +0 -33
  127. package/esm2022/lib/directives/repeat.mjs +0 -18
  128. package/esm2022/lib/renderer/di.mjs +0 -3
  129. package/esm2022/lib/renderer/enums.mjs +0 -2
  130. package/esm2022/lib/renderer/provider.mjs +0 -18
  131. package/esm2022/lib/renderer/renderer.mjs +0 -365
  132. package/esm2022/lib/renderer/store.mjs +0 -372
  133. package/esm2022/lib/stores/signal.store.mjs +0 -81
  134. package/esm2022/lib/stores/store.mjs +0 -423
  135. package/esm2022/lib/utils/assert-in-injection-context.mjs +0 -14
  136. package/esm2022/lib/utils/instance.mjs +0 -63
  137. package/esm2022/lib/utils/safe-detect-changes.mjs +0 -15
  138. package/esm2022/lib/utils/signal.mjs +0 -24
  139. package/esm2022/lib/utils/timing.mjs +0 -21
  140. package/lib/di/catalogue.d.ts +0 -3
  141. package/lib/di/ref.d.ts +0 -7
  142. package/lib/directives/common.d.ts +0 -11
  143. package/lib/directives/parent.d.ts +0 -11
  144. package/lib/directives/repeat.d.ts +0 -7
  145. package/lib/renderer/di.d.ts +0 -2
  146. package/lib/renderer/enums.d.ts +0 -26
  147. package/lib/renderer/provider.d.ts +0 -8
  148. package/lib/renderer/store.d.ts +0 -63
  149. package/lib/stores/signal.store.d.ts +0 -20
  150. package/lib/stores/store.d.ts +0 -13
  151. package/lib/utils/assert-in-injection-context.d.ts +0 -2
  152. package/lib/utils/instance.d.ts +0 -4
  153. package/lib/utils/safe-detect-changes.d.ts +0 -2
  154. package/lib/utils/signal.d.ts +0 -2
  155. package/lib/utils/timing.d.ts +0 -4
  156. package/plugin/src/generators/init/init.d.ts +0 -5
  157. package/plugin/src/generators/init/init.js +0 -56
  158. package/plugin/src/generators/init/init.js.map +0 -1
  159. /package/lib/{di → utils}/before-render.d.ts +0 -0
@@ -1,13 +0,0 @@
1
- import { DestroyRef, inject, runInInjectionContext } from '@angular/core';
2
- import { NgtStore } from '../stores/store';
3
- import { assertInjectionContext } from '../utils/assert-in-injection-context';
4
- export function injectBeforeRender(cb, { priority = 0, injector } = {}) {
5
- injector = assertInjectionContext(injectBeforeRender, injector);
6
- return runInInjectionContext(injector, () => {
7
- const store = inject(NgtStore);
8
- const sub = store.get('internal').subscribe(cb, priority, store);
9
- inject(DestroyRef).onDestroy(() => void sub());
10
- return sub;
11
- });
12
- }
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVmb3JlLXJlbmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci10aHJlZS9zcmMvbGliL2RpL2JlZm9yZS1yZW5kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBWSxNQUFNLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRTlFLE1BQU0sVUFBVSxrQkFBa0IsQ0FDOUIsRUFBcUMsRUFDckMsRUFBRSxRQUFRLEdBQUcsQ0FBQyxFQUFFLFFBQVEsS0FBaUQsRUFBRTtJQUUzRSxRQUFRLEdBQUcsc0JBQXNCLENBQUMsa0JBQWtCLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDaEUsT0FBTyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFO1FBQ3hDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMvQixNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLE9BQU8sR0FBRyxDQUFDO0lBQ2YsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzdHJveVJlZiwgSW5qZWN0b3IsIGluamVjdCwgcnVuSW5JbmplY3Rpb25Db250ZXh0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3RTdG9yZSB9IGZyb20gJy4uL3N0b3Jlcy9zdG9yZSc7XG5pbXBvcnQgeyBOZ3RCZWZvcmVSZW5kZXJSZWNvcmQgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBhc3NlcnRJbmplY3Rpb25Db250ZXh0IH0gZnJvbSAnLi4vdXRpbHMvYXNzZXJ0LWluLWluamVjdGlvbi1jb250ZXh0JztcblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdEJlZm9yZVJlbmRlcihcbiAgICBjYjogTmd0QmVmb3JlUmVuZGVyUmVjb3JkWydjYWxsYmFjayddLFxuICAgIHsgcHJpb3JpdHkgPSAwLCBpbmplY3RvciB9OiB7IHByaW9yaXR5PzogbnVtYmVyOyBpbmplY3Rvcj86IEluamVjdG9yIH0gPSB7fVxuKSB7XG4gICAgaW5qZWN0b3IgPSBhc3NlcnRJbmplY3Rpb25Db250ZXh0KGluamVjdEJlZm9yZVJlbmRlciwgaW5qZWN0b3IpO1xuICAgIHJldHVybiBydW5JbkluamVjdGlvbkNvbnRleHQoaW5qZWN0b3IsICgpID0+IHtcbiAgICAgICAgY29uc3Qgc3RvcmUgPSBpbmplY3QoTmd0U3RvcmUpO1xuICAgICAgICBjb25zdCBzdWIgPSBzdG9yZS5nZXQoJ2ludGVybmFsJykuc3Vic2NyaWJlKGNiLCBwcmlvcml0eSwgc3RvcmUpO1xuICAgICAgICBpbmplY3QoRGVzdHJveVJlZikub25EZXN0cm95KCgpID0+IHZvaWQgc3ViKCkpO1xuICAgICAgICByZXR1cm4gc3ViO1xuICAgIH0pO1xufVxuIl19
@@ -1,7 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- const catalogue = {};
3
- export function extend(objects) {
4
- Object.assign(catalogue, objects);
5
- }
6
- export const NGT_CATALOGUE = new InjectionToken('THREE Constructors Catalogue', { factory: () => catalogue });
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZ3VlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlL3NyYy9saWIvZGkvY2F0YWxvZ3VlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsTUFBTSxTQUFTLEdBQWdELEVBQUUsQ0FBQztBQUVsRSxNQUFNLFVBQVUsTUFBTSxDQUFDLE9BQWU7SUFDbEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDdEMsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxJQUFJLGNBQWMsQ0FDM0MsOEJBQThCLEVBQzlCLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUMvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuY29uc3QgY2F0YWxvZ3VlOiBSZWNvcmQ8c3RyaW5nLCBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnk+ID0ge307XG5cbmV4cG9ydCBmdW5jdGlvbiBleHRlbmQob2JqZWN0czogb2JqZWN0KTogdm9pZCB7XG4gICAgT2JqZWN0LmFzc2lnbihjYXRhbG9ndWUsIG9iamVjdHMpO1xufVxuXG5leHBvcnQgY29uc3QgTkdUX0NBVEFMT0dVRSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxSZWNvcmQ8c3RyaW5nLCBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnk+PihcbiAgICAnVEhSRUUgQ29uc3RydWN0b3JzIENhdGFsb2d1ZScsXG4gICAgeyBmYWN0b3J5OiAoKSA9PiBjYXRhbG9ndWUgfVxuKTtcbiJdfQ==
@@ -1,49 +0,0 @@
1
- import { ChangeDetectorRef, DestroyRef, ElementRef, computed, inject, runInInjectionContext, untracked, } from '@angular/core';
2
- import { assertInjectionContext } from '../utils/assert-in-injection-context';
3
- import { getLocalState } from '../utils/instance';
4
- import { is } from '../utils/is';
5
- import { safeDetectChanges } from '../utils/safe-detect-changes';
6
- import { createSignal } from '../utils/signal';
7
- export function injectNgtRef(initial = null, injector) {
8
- injector = assertInjectionContext(injectNgtRef, injector);
9
- return runInInjectionContext(injector, () => {
10
- const cdr = inject(ChangeDetectorRef);
11
- const ref = is.ref(initial) ? initial : new ElementRef(initial);
12
- const signalRef = createSignal(ref.nativeElement);
13
- const readonlySignal = signalRef.asReadonly();
14
- const cached = new Map();
15
- inject(DestroyRef).onDestroy(() => void cached.clear());
16
- const children = (type = 'objects') => {
17
- if (!cached.has(type)) {
18
- cached.set(type, computed(() => {
19
- const instance = readonlySignal();
20
- if (!instance)
21
- return [];
22
- const localState = getLocalState(instance);
23
- if (!localState.objects || !localState.nonObjects)
24
- return [];
25
- if (type === 'objects')
26
- return localState.objects();
27
- if (type === 'nonObjects')
28
- return localState.nonObjects();
29
- return [...localState.objects(), ...localState.nonObjects()];
30
- }));
31
- }
32
- return cached.get(type);
33
- };
34
- Object.defineProperty(ref, 'nativeElement', {
35
- set: (newElement) => {
36
- if (newElement !== untracked(signalRef)) {
37
- signalRef.set(newElement);
38
- safeDetectChanges(cdr);
39
- }
40
- },
41
- get: () => readonlySignal(),
42
- });
43
- Object.defineProperty(ref, 'untracked', {
44
- get: () => untracked(readonlySignal),
45
- });
46
- return Object.assign(ref, { children });
47
- });
48
- }
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlL3NyYy9saWIvZGkvcmVmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxpQkFBaUIsRUFDakIsVUFBVSxFQUNWLFVBQVUsRUFHVixRQUFRLEVBQ1IsTUFBTSxFQUNOLHFCQUFxQixFQUNyQixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDakMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBTy9DLE1BQU0sVUFBVSxZQUFZLENBQ3hCLFVBQTJDLElBQUssRUFDaEQsUUFBbUI7SUFFbkIsUUFBUSxHQUFHLHNCQUFzQixDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMxRCxPQUFPLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7UUFDeEMsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDdEMsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLFVBQVUsQ0FBVyxPQUFtQixDQUFDLENBQUM7UUFDdEYsTUFBTSxTQUFTLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNsRCxNQUFNLGNBQWMsR0FBRyxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDOUMsTUFBTSxNQUFNLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUV6QixNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7UUFFeEQsTUFBTSxRQUFRLEdBQUcsQ0FBQyxPQUEwQyxTQUFTLEVBQUUsRUFBRTtZQUNyRSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDbkIsTUFBTSxDQUFDLEdBQUcsQ0FDTixJQUFJLEVBQ0osUUFBUSxDQUFDLEdBQUcsRUFBRTtvQkFDVixNQUFNLFFBQVEsR0FBRyxjQUFjLEVBQUUsQ0FBQztvQkFDbEMsSUFBSSxDQUFDLFFBQVE7d0JBQUUsT0FBTyxFQUFFLENBQUM7b0JBQ3pCLE1BQU0sVUFBVSxHQUFHLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDM0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVTt3QkFBRSxPQUFPLEVBQUUsQ0FBQztvQkFDN0QsSUFBSSxJQUFJLEtBQUssU0FBUzt3QkFBRSxPQUFPLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDcEQsSUFBSSxJQUFJLEtBQUssWUFBWTt3QkFBRSxPQUFPLFVBQVUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztvQkFDMUQsT0FBTyxDQUFDLEdBQUcsVUFBVSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsVUFBVSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7Z0JBQ2pFLENBQUMsQ0FBQyxDQUNMLENBQUM7YUFDTDtZQUNELE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUUsQ0FBQztRQUM3QixDQUFDLENBQUM7UUFFRixNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxlQUFlLEVBQUU7WUFDeEMsR0FBRyxFQUFFLENBQUMsVUFBVSxFQUFFLEVBQUU7Z0JBQ2hCLElBQUksVUFBVSxLQUFLLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRTtvQkFDckMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFDMUIsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQzFCO1lBQ0wsQ0FBQztZQUNELEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxjQUFjLEVBQUU7U0FDOUIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsV0FBVyxFQUFFO1lBQ3BDLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDO1NBQ3ZDLENBQUMsQ0FBQztRQUVILE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBNkIsQ0FBQztJQUN4RSxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIERlc3Ryb3lSZWYsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbmplY3RvcixcbiAgICBTaWduYWwsXG4gICAgY29tcHV0ZWQsXG4gICAgaW5qZWN0LFxuICAgIHJ1bkluSW5qZWN0aW9uQ29udGV4dCxcbiAgICB1bnRyYWNrZWQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd0SW5zdGFuY2VOb2RlIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgYXNzZXJ0SW5qZWN0aW9uQ29udGV4dCB9IGZyb20gJy4uL3V0aWxzL2Fzc2VydC1pbi1pbmplY3Rpb24tY29udGV4dCc7XG5pbXBvcnQgeyBnZXRMb2NhbFN0YXRlIH0gZnJvbSAnLi4vdXRpbHMvaW5zdGFuY2UnO1xuaW1wb3J0IHsgaXMgfSBmcm9tICcuLi91dGlscy9pcyc7XG5pbXBvcnQgeyBzYWZlRGV0ZWN0Q2hhbmdlcyB9IGZyb20gJy4uL3V0aWxzL3NhZmUtZGV0ZWN0LWNoYW5nZXMnO1xuaW1wb3J0IHsgY3JlYXRlU2lnbmFsIH0gZnJvbSAnLi4vdXRpbHMvc2lnbmFsJztcblxuZXhwb3J0IHR5cGUgTmd0SW5qZWN0ZWRSZWY8VEVsZW1lbnQ+ID0gRWxlbWVudFJlZjxURWxlbWVudD4gJiB7XG4gICAgY2hpbGRyZW46ICh0eXBlPzogJ29iamVjdHMnIHwgJ25vbk9iamVjdHMnIHwgJ2JvdGgnKSA9PiBTaWduYWw8Tmd0SW5zdGFuY2VOb2RlW10+O1xuICAgIHVudHJhY2tlZDogVEVsZW1lbnQ7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0Tmd0UmVmPFRFbGVtZW50PihcbiAgICBpbml0aWFsOiBFbGVtZW50UmVmPFRFbGVtZW50PiB8IFRFbGVtZW50ID0gbnVsbCEsXG4gICAgaW5qZWN0b3I/OiBJbmplY3RvclxuKTogTmd0SW5qZWN0ZWRSZWY8VEVsZW1lbnQ+IHtcbiAgICBpbmplY3RvciA9IGFzc2VydEluamVjdGlvbkNvbnRleHQoaW5qZWN0Tmd0UmVmLCBpbmplY3Rvcik7XG4gICAgcmV0dXJuIHJ1bkluSW5qZWN0aW9uQ29udGV4dChpbmplY3RvciwgKCkgPT4ge1xuICAgICAgICBjb25zdCBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgICAgICBjb25zdCByZWYgPSBpcy5yZWYoaW5pdGlhbCkgPyBpbml0aWFsIDogbmV3IEVsZW1lbnRSZWY8VEVsZW1lbnQ+KGluaXRpYWwgYXMgVEVsZW1lbnQpO1xuICAgICAgICBjb25zdCBzaWduYWxSZWYgPSBjcmVhdGVTaWduYWwocmVmLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICBjb25zdCByZWFkb25seVNpZ25hbCA9IHNpZ25hbFJlZi5hc1JlYWRvbmx5KCk7XG4gICAgICAgIGNvbnN0IGNhY2hlZCA9IG5ldyBNYXAoKTtcblxuICAgICAgICBpbmplY3QoRGVzdHJveVJlZikub25EZXN0cm95KCgpID0+IHZvaWQgY2FjaGVkLmNsZWFyKCkpO1xuXG4gICAgICAgIGNvbnN0IGNoaWxkcmVuID0gKHR5cGU6ICdvYmplY3RzJyB8ICdub25PYmplY3RzJyB8ICdib3RoJyA9ICdvYmplY3RzJykgPT4ge1xuICAgICAgICAgICAgaWYgKCFjYWNoZWQuaGFzKHR5cGUpKSB7XG4gICAgICAgICAgICAgICAgY2FjaGVkLnNldChcbiAgICAgICAgICAgICAgICAgICAgdHlwZSxcbiAgICAgICAgICAgICAgICAgICAgY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaW5zdGFuY2UgPSByZWFkb25seVNpZ25hbCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFpbnN0YW5jZSkgcmV0dXJuIFtdO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbG9jYWxTdGF0ZSA9IGdldExvY2FsU3RhdGUoaW5zdGFuY2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFsb2NhbFN0YXRlLm9iamVjdHMgfHwgIWxvY2FsU3RhdGUubm9uT2JqZWN0cykgcmV0dXJuIFtdO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGUgPT09ICdvYmplY3RzJykgcmV0dXJuIGxvY2FsU3RhdGUub2JqZWN0cygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGUgPT09ICdub25PYmplY3RzJykgcmV0dXJuIGxvY2FsU3RhdGUubm9uT2JqZWN0cygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFsuLi5sb2NhbFN0YXRlLm9iamVjdHMoKSwgLi4ubG9jYWxTdGF0ZS5ub25PYmplY3RzKCldO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gY2FjaGVkLmdldCh0eXBlKSE7XG4gICAgICAgIH07XG5cbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlZiwgJ25hdGl2ZUVsZW1lbnQnLCB7XG4gICAgICAgICAgICBzZXQ6IChuZXdFbGVtZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG5ld0VsZW1lbnQgIT09IHVudHJhY2tlZChzaWduYWxSZWYpKSB7XG4gICAgICAgICAgICAgICAgICAgIHNpZ25hbFJlZi5zZXQobmV3RWxlbWVudCk7XG4gICAgICAgICAgICAgICAgICAgIHNhZmVEZXRlY3RDaGFuZ2VzKGNkcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGdldDogKCkgPT4gcmVhZG9ubHlTaWduYWwoKSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlZiwgJ3VudHJhY2tlZCcsIHtcbiAgICAgICAgICAgIGdldDogKCkgPT4gdW50cmFja2VkKHJlYWRvbmx5U2lnbmFsKSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24ocmVmLCB7IGNoaWxkcmVuIH0pIGFzIE5ndEluamVjdGVkUmVmPFRFbGVtZW50PjtcbiAgICB9KTtcbn1cbiJdfQ==
@@ -1,39 +0,0 @@
1
- import { Directive, inject, NgZone, TemplateRef, ViewContainerRef } from '@angular/core';
2
- import { SPECIAL_INTERNAL_ADD_COMMENT } from '../renderer/utils';
3
- import * as i0 from "@angular/core";
4
- class NgtCommonDirective {
5
- #vcr;
6
- #zone;
7
- #template;
8
- #view;
9
- constructor() {
10
- this.#vcr = inject(ViewContainerRef);
11
- this.#zone = inject(NgZone);
12
- this.#template = inject(TemplateRef);
13
- this.injected = false;
14
- this.shouldCreateView = true;
15
- const commentNode = this.#vcr.element.nativeElement;
16
- if (commentNode[SPECIAL_INTERNAL_ADD_COMMENT]) {
17
- commentNode[SPECIAL_INTERNAL_ADD_COMMENT]();
18
- delete commentNode[SPECIAL_INTERNAL_ADD_COMMENT];
19
- }
20
- }
21
- createView() {
22
- if (this.shouldCreateView) {
23
- if (this.#view && !this.#view.destroyed) {
24
- this.#view.destroy();
25
- }
26
- this.#zone.runOutsideAngular(() => {
27
- this.#view = this.#vcr.createEmbeddedView(this.#template);
28
- this.#view.detectChanges();
29
- });
30
- }
31
- }
32
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtCommonDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
33
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: NgtCommonDirective, ngImport: i0 }); }
34
- }
35
- export { NgtCommonDirective };
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtCommonDirective, decorators: [{
37
- type: Directive
38
- }], ctorParameters: function () { return []; } });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlL3NyYy9saWIvZGlyZWN0aXZlcy9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBbUIsTUFBTSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUcsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRWpFLE1BQ3NCLGtCQUFrQjtJQUMzQixJQUFJLENBQTRCO0lBQ2hDLEtBQUssQ0FBa0I7SUFDdkIsU0FBUyxDQUF1QjtJQUl6QyxLQUFLLENBQTRCO0lBRWpDO1FBUlMsU0FBSSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2hDLFVBQUssR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdkIsY0FBUyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUUvQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLHFCQUFnQixHQUFHLElBQUksQ0FBQztRQUk5QixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDcEQsSUFBSSxXQUFXLENBQUMsNEJBQTRCLENBQUMsRUFBRTtZQUMzQyxXQUFXLENBQUMsNEJBQTRCLENBQUMsRUFBRSxDQUFDO1lBQzVDLE9BQU8sV0FBVyxDQUFDLDRCQUE0QixDQUFDLENBQUM7U0FDcEQ7SUFDTCxDQUFDO0lBSVMsVUFBVTtRQUNoQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRTtnQkFDckMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUN4QjtZQUNELElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO2dCQUM5QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUMxRCxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQy9CLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDOzhHQTdCaUIsa0JBQWtCO2tHQUFsQixrQkFBa0I7O1NBQWxCLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUR2QyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbWJlZGRlZFZpZXdSZWYsIGluamVjdCwgTmdab25lLCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU1BFQ0lBTF9JTlRFUk5BTF9BRERfQ09NTUVOVCB9IGZyb20gJy4uL3JlbmRlcmVyL3V0aWxzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTmd0Q29tbW9uRGlyZWN0aXZlIHtcbiAgICByZWFkb25seSAjdmNyID0gaW5qZWN0KFZpZXdDb250YWluZXJSZWYpO1xuICAgIHJlYWRvbmx5ICN6b25lID0gaW5qZWN0KE5nWm9uZSk7XG4gICAgcmVhZG9ubHkgI3RlbXBsYXRlID0gaW5qZWN0KFRlbXBsYXRlUmVmKTtcblxuICAgIHByb3RlY3RlZCBpbmplY3RlZCA9IGZhbHNlO1xuICAgIHByb3RlY3RlZCBzaG91bGRDcmVhdGVWaWV3ID0gdHJ1ZTtcbiAgICAjdmlldz86IEVtYmVkZGVkVmlld1JlZjx1bmtub3duPjtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBjb25zdCBjb21tZW50Tm9kZSA9IHRoaXMuI3Zjci5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGlmIChjb21tZW50Tm9kZVtTUEVDSUFMX0lOVEVSTkFMX0FERF9DT01NRU5UXSkge1xuICAgICAgICAgICAgY29tbWVudE5vZGVbU1BFQ0lBTF9JTlRFUk5BTF9BRERfQ09NTUVOVF0oKTtcbiAgICAgICAgICAgIGRlbGV0ZSBjb21tZW50Tm9kZVtTUEVDSUFMX0lOVEVSTkFMX0FERF9DT01NRU5UXTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFic3RyYWN0IHZhbGlkYXRlKCk6IGJvb2xlYW47XG5cbiAgICBwcm90ZWN0ZWQgY3JlYXRlVmlldygpIHtcbiAgICAgICAgaWYgKHRoaXMuc2hvdWxkQ3JlYXRlVmlldykge1xuICAgICAgICAgICAgaWYgKHRoaXMuI3ZpZXcgJiYgIXRoaXMuI3ZpZXcuZGVzdHJveWVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy4jdmlldy5kZXN0cm95KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLiN6b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLiN2aWV3ID0gdGhpcy4jdmNyLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLiN0ZW1wbGF0ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy4jdmlldy5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -1,33 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { NgtCommonDirective } from './common';
3
- import * as i0 from "@angular/core";
4
- class NgtParent extends NgtCommonDirective {
5
- #injectedParent = null;
6
- set parent(parent) {
7
- if (!parent)
8
- return;
9
- this.injected = false;
10
- this.#injectedParent = parent;
11
- this.createView();
12
- }
13
- get parent() {
14
- if (this.validate()) {
15
- this.injected = true;
16
- return this.#injectedParent;
17
- }
18
- return null;
19
- }
20
- validate() {
21
- return !this.injected && !!this.#injectedParent;
22
- }
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtParent, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
24
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: NgtParent, isStandalone: true, selector: "[parent]", inputs: { parent: "parent" }, usesInheritance: true, ngImport: i0 }); }
25
- }
26
- export { NgtParent };
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtParent, decorators: [{
28
- type: Directive,
29
- args: [{ selector: '[parent]', standalone: true }]
30
- }], propDecorators: { parent: [{
31
- type: Input
32
- }] } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlL3NyYy9saWIvZGlyZWN0aXZlcy9wYXJlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sVUFBVSxDQUFDOztBQUU5QyxNQUNhLFNBQVUsU0FBUSxrQkFBa0I7SUFDN0MsZUFBZSxHQUE2RCxJQUFLLENBQUM7SUFFbEYsSUFBYSxNQUFNLENBQUMsTUFBZ0U7UUFDaEYsSUFBSSxDQUFDLE1BQU07WUFBRSxPQUFPO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDO1FBQzlCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDakIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDckIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO1NBQy9CO1FBQ0QsT0FBTyxJQUFLLENBQUM7SUFDakIsQ0FBQztJQUVELFFBQVE7UUFDSixPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNwRCxDQUFDOzhHQXBCUSxTQUFTO2tHQUFULFNBQVM7O1NBQVQsU0FBUzsyRkFBVCxTQUFTO2tCQURyQixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFOzhCQUlwQyxNQUFNO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd0SW5qZWN0ZWRSZWYgfSBmcm9tICcuLi9kaS9yZWYnO1xuaW1wb3J0IHsgTmd0Q29tbW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9jb21tb24nO1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbcGFyZW50XScsIHN0YW5kYWxvbmU6IHRydWUgfSlcbmV4cG9ydCBjbGFzcyBOZ3RQYXJlbnQgZXh0ZW5kcyBOZ3RDb21tb25EaXJlY3RpdmUge1xuICAgICNpbmplY3RlZFBhcmVudDogc3RyaW5nIHwgVEhSRUUuT2JqZWN0M0QgfCBOZ3RJbmplY3RlZFJlZjxUSFJFRS5PYmplY3QzRD4gPSBudWxsITtcblxuICAgIEBJbnB1dCgpIHNldCBwYXJlbnQocGFyZW50OiBzdHJpbmcgfCBUSFJFRS5PYmplY3QzRCB8IE5ndEluamVjdGVkUmVmPFRIUkVFLk9iamVjdDNEPikge1xuICAgICAgICBpZiAoIXBhcmVudCkgcmV0dXJuO1xuICAgICAgICB0aGlzLmluamVjdGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuI2luamVjdGVkUGFyZW50ID0gcGFyZW50O1xuICAgICAgICB0aGlzLmNyZWF0ZVZpZXcoKTtcbiAgICB9XG5cbiAgICBnZXQgcGFyZW50KCkge1xuICAgICAgICBpZiAodGhpcy52YWxpZGF0ZSgpKSB7XG4gICAgICAgICAgICB0aGlzLmluamVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLiNpbmplY3RlZFBhcmVudDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbCE7XG4gICAgfVxuXG4gICAgdmFsaWRhdGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5pbmplY3RlZCAmJiAhIXRoaXMuI2luamVjdGVkUGFyZW50O1xuICAgIH1cbn1cbiJdfQ==
@@ -1,18 +0,0 @@
1
- import { NgForOf } from '@angular/common';
2
- import { Directive, Input } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- class NgtRepeat extends NgForOf {
5
- set ngForRepeat(count) {
6
- this.ngForOf = Number.isInteger(count) ? Array.from({ length: count }, (_, i) => i) : [];
7
- }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtRepeat, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
9
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: NgtRepeat, isStandalone: true, selector: "[ngFor][ngForRepeat]", inputs: { ngForRepeat: "ngForRepeat" }, usesInheritance: true, ngImport: i0 }); }
10
- }
11
- export { NgtRepeat };
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgtRepeat, decorators: [{
13
- type: Directive,
14
- args: [{ selector: '[ngFor][ngForRepeat]', standalone: true }]
15
- }], propDecorators: { ngForRepeat: [{
16
- type: Input
17
- }] } });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwZWF0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlL3NyYy9saWIvZGlyZWN0aXZlcy9yZXBlYXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUVqRCxNQUNhLFNBQVUsU0FBUSxPQUFlO0lBQzFDLElBQWEsV0FBVyxDQUFDLEtBQWE7UUFDbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUM3RixDQUFDOzhHQUhRLFNBQVM7a0dBQVQsU0FBUzs7U0FBVCxTQUFTOzJGQUFULFNBQVM7a0JBRHJCLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRTs4QkFFaEQsV0FBVztzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nRm9yT2YgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbbmdGb3JdW25nRm9yUmVwZWF0XScsIHN0YW5kYWxvbmU6IHRydWUgfSlcbmV4cG9ydCBjbGFzcyBOZ3RSZXBlYXQgZXh0ZW5kcyBOZ0Zvck9mPG51bWJlcj4ge1xuICAgIEBJbnB1dCgpIHNldCBuZ0ZvclJlcGVhdChjb3VudDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMubmdGb3JPZiA9IE51bWJlci5pc0ludGVnZXIoY291bnQpID8gQXJyYXkuZnJvbSh7IGxlbmd0aDogY291bnQgfSwgKF8sIGkpID0+IGkpIDogW107XG4gICAgfVxufVxuIl19
@@ -1,3 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- export const NGT_COMPOUND_PREFIXES = new InjectionToken('NgtCompoundPrefixes');
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUvc3JjL2xpYi9yZW5kZXJlci9kaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLElBQUksY0FBYyxDQUFXLHFCQUFxQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgTkdUX0NPTVBPVU5EX1BSRUZJWEVTID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZ1tdPignTmd0Q29tcG91bmRQcmVmaXhlcycpO1xuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUvc3JjL2xpYi9yZW5kZXJlci9lbnVtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVudW0gTmd0UmVuZGVyZXJDbGFzc0lkIHtcbiAgICB0eXBlLFxuICAgIHBhcmVudCxcbiAgICBpbmplY3RlZFBhcmVudCxcbiAgICBjaGlsZHJlbixcbiAgICBkZXN0cm95ZWQsXG4gICAgY29tcG91bmQsXG4gICAgY29tcG91bmRQYXJlbnQsXG4gICAgY29tcG91bmRlZCxcbiAgICBxdWV1ZU9wcyxcbiAgICBhdHRyaWJ1dGVzLFxuICAgIHByb3BlcnRpZXMsXG4gICAgcmF3VmFsdWUsXG4gICAgcmVmLFxuICAgIHBvcnRhbENvbnRhaW5lcixcbiAgICBpbmplY3RvckZhY3RvcnksXG59XG5cbmV4cG9ydCBjb25zdCBlbnVtIE5ndENvbXBvdW5kQ2xhc3NJZCB7XG4gICAgYXBwbHlGaXJzdCxcbiAgICBwcm9wcyxcbn1cblxuZXhwb3J0IGNvbnN0IGVudW0gTmd0UXVldWVPcENsYXNzSWQge1xuICAgIHR5cGUsXG4gICAgb3AsXG4gICAgZG9uZSxcbn1cbiJdfQ==
@@ -1,18 +0,0 @@
1
- import { ChangeDetectorRef, makeEnvironmentProviders, provideZoneChangeDetection, RendererFactory2, } from '@angular/core';
2
- import { NgtStore } from '../stores/store';
3
- import { NGT_COMPOUND_PREFIXES } from './di';
4
- import { NgtRendererFactory } from './renderer';
5
- export function provideNgtRenderer({ store, changeDetectorRef, compoundPrefixes = [] }) {
6
- if (!compoundPrefixes.includes('ngts'))
7
- compoundPrefixes.push('ngts');
8
- if (!compoundPrefixes.includes('ngtp'))
9
- compoundPrefixes.push('ngtp');
10
- return makeEnvironmentProviders([
11
- { provide: RendererFactory2, useClass: NgtRendererFactory },
12
- { provide: NgtStore, useValue: store },
13
- { provide: ChangeDetectorRef, useValue: changeDetectorRef },
14
- { provide: NGT_COMPOUND_PREFIXES, useValue: compoundPrefixes },
15
- provideZoneChangeDetection({ runCoalescing: true, eventCoalescing: true }),
16
- ]);
17
- }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUvc3JjL2xpYi9yZW5kZXJlci9wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsaUJBQWlCLEVBQ2pCLHdCQUF3QixFQUN4QiwwQkFBMEIsRUFDMUIsZ0JBQWdCLEdBQ25CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBUWhELE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsR0FBRyxFQUFFLEVBQThCO0lBQzlHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1FBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1FBQUUsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRXRFLE9BQU8sd0JBQXdCLENBQUM7UUFDNUIsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixFQUFFO1FBQzNELEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO1FBQ3RDLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRTtRQUMzRCxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUU7UUFDOUQsMEJBQTBCLENBQUMsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsQ0FBQztLQUM3RSxDQUFDLENBQUM7QUFDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMsXG4gICAgcHJvdmlkZVpvbmVDaGFuZ2VEZXRlY3Rpb24sXG4gICAgUmVuZGVyZXJGYWN0b3J5Mixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3RTdG9yZSB9IGZyb20gJy4uL3N0b3Jlcy9zdG9yZSc7XG5pbXBvcnQgeyBOR1RfQ09NUE9VTkRfUFJFRklYRVMgfSBmcm9tICcuL2RpJztcbmltcG9ydCB7IE5ndFJlbmRlcmVyRmFjdG9yeSB9IGZyb20gJy4vcmVuZGVyZXInO1xuXG5leHBvcnQgdHlwZSBOZ3RSZW5kZXJlclByb3ZpZGVyT3B0aW9ucyA9IHtcbiAgICBzdG9yZTogTmd0U3RvcmU7XG4gICAgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmO1xuICAgIGNvbXBvdW5kUHJlZml4ZXM/OiBzdHJpbmdbXTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlTmd0UmVuZGVyZXIoeyBzdG9yZSwgY2hhbmdlRGV0ZWN0b3JSZWYsIGNvbXBvdW5kUHJlZml4ZXMgPSBbXSB9OiBOZ3RSZW5kZXJlclByb3ZpZGVyT3B0aW9ucykge1xuICAgIGlmICghY29tcG91bmRQcmVmaXhlcy5pbmNsdWRlcygnbmd0cycpKSBjb21wb3VuZFByZWZpeGVzLnB1c2goJ25ndHMnKTtcbiAgICBpZiAoIWNvbXBvdW5kUHJlZml4ZXMuaW5jbHVkZXMoJ25ndHAnKSkgY29tcG91bmRQcmVmaXhlcy5wdXNoKCduZ3RwJyk7XG5cbiAgICByZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFtcbiAgICAgICAgeyBwcm92aWRlOiBSZW5kZXJlckZhY3RvcnkyLCB1c2VDbGFzczogTmd0UmVuZGVyZXJGYWN0b3J5IH0sXG4gICAgICAgIHsgcHJvdmlkZTogTmd0U3RvcmUsIHVzZVZhbHVlOiBzdG9yZSB9LFxuICAgICAgICB7IHByb3ZpZGU6IENoYW5nZURldGVjdG9yUmVmLCB1c2VWYWx1ZTogY2hhbmdlRGV0ZWN0b3JSZWYgfSxcbiAgICAgICAgeyBwcm92aWRlOiBOR1RfQ09NUE9VTkRfUFJFRklYRVMsIHVzZVZhbHVlOiBjb21wb3VuZFByZWZpeGVzIH0sXG4gICAgICAgIHByb3ZpZGVab25lQ2hhbmdlRGV0ZWN0aW9uKHsgcnVuQ29hbGVzY2luZzogdHJ1ZSwgZXZlbnRDb2FsZXNjaW5nOiB0cnVlIH0pLFxuICAgIF0pO1xufVxuIl19