@skyux/core 8.6.0 → 9.0.0-alpha.0

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 (151) hide show
  1. package/{esm2020 → esm2022}/lib/modules/adapter-service/adapter.module.mjs +5 -5
  2. package/esm2022/lib/modules/adapter-service/adapter.service.mjs +225 -0
  3. package/esm2022/lib/modules/affix/affix.directive.mjs +116 -0
  4. package/{esm2020 → esm2022}/lib/modules/affix/affix.module.mjs +5 -5
  5. package/esm2022/lib/modules/affix/affix.service.mjs +25 -0
  6. package/esm2022/lib/modules/affix/affixer.mjs +398 -0
  7. package/esm2022/lib/modules/default-input-provider/default-input-provider.mjs +26 -0
  8. package/esm2022/lib/modules/dock/dock-dom-adapter.service.mjs +81 -0
  9. package/esm2022/lib/modules/dock/dock-item.mjs +31 -0
  10. package/esm2022/lib/modules/dock/dock.component.mjs +108 -0
  11. package/{esm2020 → esm2022}/lib/modules/dock/dock.module.mjs +5 -5
  12. package/esm2022/lib/modules/dock/dock.service.mjs +96 -0
  13. package/{esm2020 → esm2022}/lib/modules/dynamic-component/dynamic-component.module.mjs +5 -5
  14. package/esm2022/lib/modules/dynamic-component/dynamic-component.service.mjs +106 -0
  15. package/{esm2020 → esm2022}/lib/modules/format/app-format.mjs +4 -4
  16. package/esm2022/lib/modules/id/id.directive.mjs +31 -0
  17. package/{esm2020 → esm2022}/lib/modules/id/id.module.mjs +5 -5
  18. package/{esm2020 → esm2022}/lib/modules/id/id.service.mjs +4 -4
  19. package/esm2022/lib/modules/layout-host/layout-host.service.mjs +22 -0
  20. package/esm2022/lib/modules/live-announcer/live-announcer.service.mjs +79 -0
  21. package/{esm2020 → esm2022}/lib/modules/log/log.module.mjs +5 -5
  22. package/esm2022/lib/modules/log/log.service.mjs +148 -0
  23. package/{esm2020 → esm2022}/lib/modules/media-query/media-query.module.mjs +5 -5
  24. package/esm2022/lib/modules/media-query/media-query.service.mjs +123 -0
  25. package/{esm2020 → esm2022}/lib/modules/mutation/mutation-observer-service.mjs +4 -4
  26. package/{esm2020 → esm2022}/lib/modules/numeric/numeric.module.mjs +5 -5
  27. package/esm2022/lib/modules/numeric/numeric.pipe.mjs +81 -0
  28. package/esm2022/lib/modules/numeric/numeric.service.mjs +205 -0
  29. package/esm2022/lib/modules/overlay/overlay-adapter.service.mjs +44 -0
  30. package/esm2022/lib/modules/overlay/overlay-instance.mjs +62 -0
  31. package/esm2022/lib/modules/overlay/overlay.component.mjs +193 -0
  32. package/{esm2020 → esm2022}/lib/modules/overlay/overlay.module.mjs +5 -5
  33. package/esm2022/lib/modules/overlay/overlay.service.mjs +124 -0
  34. package/{esm2020 → esm2022}/lib/modules/percent-pipe/percent-pipe.module.mjs +5 -5
  35. package/esm2022/lib/modules/percent-pipe/percent.pipe.mjs +56 -0
  36. package/esm2022/lib/modules/resize-observer/resize-observer-media-query.service.mjs +120 -0
  37. package/esm2022/lib/modules/resize-observer/resize-observer.service.mjs +77 -0
  38. package/esm2022/lib/modules/scrollable-host/scrollable-host.service.mjs +223 -0
  39. package/esm2022/lib/modules/shared/number-format/number-format-utility.mjs +72 -0
  40. package/esm2022/lib/modules/shared/sky-core-resources.module.mjs +50 -0
  41. package/esm2022/lib/modules/title/title.service.mjs +31 -0
  42. package/esm2022/lib/modules/trim/trim.directive.mjs +64 -0
  43. package/{esm2020 → esm2022}/lib/modules/trim/trim.module.mjs +5 -5
  44. package/{esm2020 → esm2022}/lib/modules/ui-config/ui-config.service.mjs +4 -4
  45. package/{esm2020 → esm2022}/lib/modules/viewkeeper/viewkeeper-host-options.mjs +4 -4
  46. package/esm2022/lib/modules/viewkeeper/viewkeeper.directive.mjs +131 -0
  47. package/esm2022/lib/modules/viewkeeper/viewkeeper.mjs +283 -0
  48. package/{esm2020 → esm2022}/lib/modules/viewkeeper/viewkeeper.module.mjs +5 -5
  49. package/esm2022/lib/modules/viewkeeper/viewkeeper.service.mjs +39 -0
  50. package/{esm2020 → esm2022}/lib/modules/window/window-ref.mjs +4 -4
  51. package/esm2022/testing/core-testing.module.mjs +32 -0
  52. package/esm2022/testing/mock-media-query.service.mjs +46 -0
  53. package/{esm2020 → esm2022}/testing/mock-ui-config.service.mjs +4 -4
  54. package/esm2022/testing/overlay/overlay-harness.mjs +43 -0
  55. package/esm2022/testing/shared/component-harness.mjs +13 -0
  56. package/{fesm2020 → fesm2022}/skyux-core-testing.mjs +28 -34
  57. package/{fesm2020 → fesm2022}/skyux-core-testing.mjs.map +1 -1
  58. package/fesm2022/skyux-core.mjs +3858 -0
  59. package/fesm2022/skyux-core.mjs.map +1 -0
  60. package/lib/modules/affix/affix.directive.d.ts +1 -1
  61. package/lib/modules/viewkeeper/viewkeeper.directive.d.ts +1 -1
  62. package/package.json +14 -22
  63. package/esm2020/lib/modules/adapter-service/adapter.service.mjs +0 -227
  64. package/esm2020/lib/modules/affix/affix.directive.mjs +0 -118
  65. package/esm2020/lib/modules/affix/affix.service.mjs +0 -28
  66. package/esm2020/lib/modules/affix/affixer.mjs +0 -377
  67. package/esm2020/lib/modules/default-input-provider/default-input-provider.mjs +0 -31
  68. package/esm2020/lib/modules/dock/dock-dom-adapter.service.mjs +0 -83
  69. package/esm2020/lib/modules/dock/dock-item.mjs +0 -34
  70. package/esm2020/lib/modules/dock/dock.component.mjs +0 -110
  71. package/esm2020/lib/modules/dock/dock.service.mjs +0 -98
  72. package/esm2020/lib/modules/dynamic-component/dynamic-component.service.mjs +0 -109
  73. package/esm2020/lib/modules/id/id.directive.mjs +0 -34
  74. package/esm2020/lib/modules/layout-host/layout-host.service.mjs +0 -27
  75. package/esm2020/lib/modules/live-announcer/live-announcer.service.mjs +0 -80
  76. package/esm2020/lib/modules/log/log.service.mjs +0 -147
  77. package/esm2020/lib/modules/media-query/media-query.service.mjs +0 -124
  78. package/esm2020/lib/modules/numeric/numeric.pipe.mjs +0 -84
  79. package/esm2020/lib/modules/numeric/numeric.service.mjs +0 -179
  80. package/esm2020/lib/modules/overlay/overlay-adapter.service.mjs +0 -47
  81. package/esm2020/lib/modules/overlay/overlay-instance.mjs +0 -65
  82. package/esm2020/lib/modules/overlay/overlay.component.mjs +0 -192
  83. package/esm2020/lib/modules/overlay/overlay.service.mjs +0 -125
  84. package/esm2020/lib/modules/percent-pipe/percent.pipe.mjs +0 -59
  85. package/esm2020/lib/modules/resize-observer/resize-observer-media-query.service.mjs +0 -121
  86. package/esm2020/lib/modules/resize-observer/resize-observer.service.mjs +0 -79
  87. package/esm2020/lib/modules/scrollable-host/scrollable-host.service.mjs +0 -218
  88. package/esm2020/lib/modules/shared/number-format/number-format-utility.mjs +0 -72
  89. package/esm2020/lib/modules/shared/sky-core-resources.module.mjs +0 -50
  90. package/esm2020/lib/modules/title/title.service.mjs +0 -34
  91. package/esm2020/lib/modules/trim/trim.directive.mjs +0 -65
  92. package/esm2020/lib/modules/viewkeeper/viewkeeper.directive.mjs +0 -131
  93. package/esm2020/lib/modules/viewkeeper/viewkeeper.mjs +0 -276
  94. package/esm2020/lib/modules/viewkeeper/viewkeeper.service.mjs +0 -42
  95. package/esm2020/testing/core-testing.module.mjs +0 -32
  96. package/esm2020/testing/mock-media-query.service.mjs +0 -46
  97. package/esm2020/testing/overlay/overlay-harness.mjs +0 -43
  98. package/esm2020/testing/shared/component-harness.mjs +0 -19
  99. package/fesm2015/skyux-core-testing.mjs +0 -209
  100. package/fesm2015/skyux-core-testing.mjs.map +0 -1
  101. package/fesm2015/skyux-core.mjs +0 -3835
  102. package/fesm2015/skyux-core.mjs.map +0 -1
  103. package/fesm2020/skyux-core.mjs +0 -3825
  104. package/fesm2020/skyux-core.mjs.map +0 -1
  105. /package/{esm2020 → esm2022}/index.mjs +0 -0
  106. /package/{esm2020 → esm2022}/lib/modules/adapter-service/focusable-children-options.mjs +0 -0
  107. /package/{esm2020 → esm2022}/lib/modules/affix/affix-auto-fit-context.mjs +0 -0
  108. /package/{esm2020 → esm2022}/lib/modules/affix/affix-config.mjs +0 -0
  109. /package/{esm2020 → esm2022}/lib/modules/affix/affix-horizontal-alignment.mjs +0 -0
  110. /package/{esm2020 → esm2022}/lib/modules/affix/affix-offset-change.mjs +0 -0
  111. /package/{esm2020 → esm2022}/lib/modules/affix/affix-offset.mjs +0 -0
  112. /package/{esm2020 → esm2022}/lib/modules/affix/affix-placement-change.mjs +0 -0
  113. /package/{esm2020 → esm2022}/lib/modules/affix/affix-placement.mjs +0 -0
  114. /package/{esm2020 → esm2022}/lib/modules/affix/affix-position.mjs +0 -0
  115. /package/{esm2020 → esm2022}/lib/modules/affix/affix-rect.mjs +0 -0
  116. /package/{esm2020 → esm2022}/lib/modules/affix/affix-utils.mjs +0 -0
  117. /package/{esm2020 → esm2022}/lib/modules/affix/affix-vertical-alignment.mjs +0 -0
  118. /package/{esm2020 → esm2022}/lib/modules/affix/dom-utils.mjs +0 -0
  119. /package/{esm2020 → esm2022}/lib/modules/dock/dock-insert-component-config.mjs +0 -0
  120. /package/{esm2020 → esm2022}/lib/modules/dock/dock-item-config.mjs +0 -0
  121. /package/{esm2020 → esm2022}/lib/modules/dock/dock-item-reference.mjs +0 -0
  122. /package/{esm2020 → esm2022}/lib/modules/dock/dock-location.mjs +0 -0
  123. /package/{esm2020 → esm2022}/lib/modules/dock/dock-options.mjs +0 -0
  124. /package/{esm2020 → esm2022}/lib/modules/dock/sort-by-stack-order.mjs +0 -0
  125. /package/{esm2020 → esm2022}/lib/modules/dynamic-component/dynamic-component-location.mjs +0 -0
  126. /package/{esm2020 → esm2022}/lib/modules/dynamic-component/dynamic-component-options.mjs +0 -0
  127. /package/{esm2020 → esm2022}/lib/modules/layout-host/layout-host-for-child-args.mjs +0 -0
  128. /package/{esm2020 → esm2022}/lib/modules/live-announcer/types/live-announcer-args.mjs +0 -0
  129. /package/{esm2020 → esm2022}/lib/modules/live-announcer/types/live-announcer-politeness.mjs +0 -0
  130. /package/{esm2020 → esm2022}/lib/modules/log/types/log-deprecation-args.mjs +0 -0
  131. /package/{esm2020 → esm2022}/lib/modules/log/types/log-level-token.mjs +0 -0
  132. /package/{esm2020 → esm2022}/lib/modules/log/types/log-level.mjs +0 -0
  133. /package/{esm2020 → esm2022}/lib/modules/media-query/media-breakpoints.mjs +0 -0
  134. /package/{esm2020 → esm2022}/lib/modules/media-query/media-query-listener.mjs +0 -0
  135. /package/{esm2020 → esm2022}/lib/modules/numeric/numeric-symbol.mjs +0 -0
  136. /package/{esm2020 → esm2022}/lib/modules/numeric/numeric.options.mjs +0 -0
  137. /package/{esm2020 → esm2022}/lib/modules/overlay/overlay-config.mjs +0 -0
  138. /package/{esm2020 → esm2022}/lib/modules/overlay/overlay-context.mjs +0 -0
  139. /package/{esm2020 → esm2022}/lib/modules/overlay/overlay-position.mjs +0 -0
  140. /package/{esm2020 → esm2022}/lib/modules/stacking-context/stacking-context-token.mjs +0 -0
  141. /package/{esm2020 → esm2022}/lib/modules/stacking-context/stacking-context.mjs +0 -0
  142. /package/{esm2020 → esm2022}/lib/modules/title/set-title-args.mjs +0 -0
  143. /package/{esm2020 → esm2022}/lib/modules/viewkeeper/viewkeeper-boundary-info.mjs +0 -0
  144. /package/{esm2020 → esm2022}/lib/modules/viewkeeper/viewkeeper-fixed-styles.mjs +0 -0
  145. /package/{esm2020 → esm2022}/lib/modules/viewkeeper/viewkeeper-offset.mjs +0 -0
  146. /package/{esm2020 → esm2022}/lib/modules/viewkeeper/viewkeeper-options.mjs +0 -0
  147. /package/{esm2020 → esm2022}/skyux-core.mjs +0 -0
  148. /package/{esm2020 → esm2022}/testing/overlay/overlay-harness-filters.mjs +0 -0
  149. /package/{esm2020 → esm2022}/testing/public-api.mjs +0 -0
  150. /package/{esm2020 → esm2022}/testing/shared/harness-filters.mjs +0 -0
  151. /package/{esm2020 → esm2022}/testing/skyux-core-testing.mjs +0 -0
@@ -0,0 +1,108 @@
1
+ import { ChangeDetectionStrategy, Component, Injector, ViewChild, ViewContainerRef, } from '@angular/core';
2
+ import { SkyDockDomAdapterService } from './dock-dom-adapter.service';
3
+ import { SkyDockLocation } from './dock-location';
4
+ import { sortByStackOrder } from './sort-by-stack-order';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./dock-dom-adapter.service";
7
+ /**
8
+ * @internal
9
+ */
10
+ export class SkyDockComponent {
11
+ #changeDetector;
12
+ #domAdapter;
13
+ #elementRef;
14
+ #injector;
15
+ #itemRefs = [];
16
+ #options;
17
+ constructor(changeDetector, elementRef, injector, domAdapter) {
18
+ this.#changeDetector = changeDetector;
19
+ this.#elementRef = elementRef;
20
+ this.#injector = injector;
21
+ this.#domAdapter = domAdapter;
22
+ }
23
+ insertComponent(component, config = {}) {
24
+ /*istanbul ignore if: untestable*/
25
+ if (!this.target) {
26
+ throw Error('[SkyDockComponent] Could not insert the component because the target element could not be found.');
27
+ }
28
+ const injector = Injector.create({
29
+ providers: config.providers || [],
30
+ parent: this.#injector,
31
+ });
32
+ const componentRef = this.target.createComponent(component, {
33
+ injector,
34
+ });
35
+ const stackOrder = config.stackOrder !== null && config.stackOrder !== undefined
36
+ ? config.stackOrder
37
+ : this.#getHighestStackOrder();
38
+ this.#itemRefs.push({
39
+ componentRef,
40
+ stackOrder,
41
+ });
42
+ this.#sortItemsByStackOrder();
43
+ this.#changeDetector.markForCheck();
44
+ return {
45
+ componentRef,
46
+ stackOrder,
47
+ };
48
+ }
49
+ removeItem(item) {
50
+ /*istanbul ignore if: untestable*/
51
+ if (!this.target) {
52
+ throw Error('[SkyDockComponent] Could not remove the item because the target element could not be found.');
53
+ }
54
+ const viewRef = item.componentRef.hostView;
55
+ this.target.remove(this.target.indexOf(viewRef));
56
+ const found = this.#itemRefs.find((i) => i.componentRef.hostView === viewRef);
57
+ if (found) {
58
+ this.#itemRefs.splice(this.#itemRefs.indexOf(found), 1);
59
+ }
60
+ }
61
+ setOptions(options) {
62
+ this.#options = options;
63
+ switch (this.#options?.location) {
64
+ case SkyDockLocation.BeforeElement:
65
+ this.#domAdapter.unbindDock(this.#elementRef);
66
+ break;
67
+ case SkyDockLocation.ElementBottom:
68
+ this.#domAdapter.setSticky(this.#elementRef);
69
+ break;
70
+ case SkyDockLocation.BodyBottom:
71
+ default:
72
+ this.#domAdapter.watchDomChanges(this.#elementRef);
73
+ break;
74
+ }
75
+ if (this.#options?.zIndex) {
76
+ this.#domAdapter.setZIndex(this.#options.zIndex, this.#elementRef);
77
+ }
78
+ }
79
+ #sortItemsByStackOrder() {
80
+ if (this.target) {
81
+ this.#itemRefs.sort(sortByStackOrder);
82
+ // Reassign the correct index for each view.
83
+ for (let i = 0, len = this.#itemRefs.length; i < len; i++) {
84
+ const item = this.#itemRefs[i];
85
+ this.target.move(item.componentRef.hostView, i);
86
+ }
87
+ }
88
+ }
89
+ #getHighestStackOrder() {
90
+ if (this.#itemRefs.length === 0) {
91
+ return 0;
92
+ }
93
+ return this.#itemRefs[0].stackOrder + 1;
94
+ }
95
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDockComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Injector }, { token: i1.SkyDockDomAdapterService }], target: i0.ɵɵFactoryTarget.Component }); }
96
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: SkyDockComponent, selector: "sky-dock", providers: [SkyDockDomAdapterService], viewQueries: [{ propertyName: "target", first: true, predicate: ["target"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<ng-container #target></ng-container>\n", styles: [":host{display:flex;flex-direction:column;width:100%}:host:not(.sky-dock-unbound){position:fixed;left:var(--sky-viewport-left, 0);bottom:var(--sky-viewport-bottom, 0);right:var(--sky-viewport-right, 0);width:auto}:host.sky-dock-sticky{position:sticky}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
97
+ }
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDockComponent, decorators: [{
99
+ type: Component,
100
+ args: [{ selector: 'sky-dock', providers: [SkyDockDomAdapterService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container #target></ng-container>\n", styles: [":host{display:flex;flex-direction:column;width:100%}:host:not(.sky-dock-unbound){position:fixed;left:var(--sky-viewport-left, 0);bottom:var(--sky-viewport-bottom, 0);right:var(--sky-viewport-right, 0);width:auto}:host.sky-dock-sticky{position:sticky}\n"] }]
101
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.Injector }, { type: i1.SkyDockDomAdapterService }]; }, propDecorators: { target: [{
102
+ type: ViewChild,
103
+ args: ['target', {
104
+ read: ViewContainerRef,
105
+ static: true,
106
+ }]
107
+ }] } });
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvZG9jay9kb2NrLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9kb2NrL2RvY2suY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsUUFBUSxFQUVSLFNBQVMsRUFDVCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHdEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWxELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFFekQ7O0dBRUc7QUFRSCxNQUFNLE9BQU8sZ0JBQWdCO0lBTzNCLGVBQWUsQ0FBb0I7SUFFbkMsV0FBVyxDQUEyQjtJQUV0QyxXQUFXLENBQWE7SUFFeEIsU0FBUyxDQUFXO0lBRXBCLFNBQVMsR0FBb0MsRUFBRSxDQUFDO0lBRWhELFFBQVEsQ0FBNkI7SUFFckMsWUFDRSxjQUFpQyxFQUNqQyxVQUFzQixFQUN0QixRQUFrQixFQUNsQixVQUFvQztRQUVwQyxJQUFJLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQztRQUN0QyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztRQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztRQUMxQixJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztJQUNoQyxDQUFDO0lBRU0sZUFBZSxDQUNwQixTQUFrQixFQUNsQixTQUF1QyxFQUFFO1FBRXpDLGtDQUFrQztRQUNsQyxJQUFJ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QUM1QyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDekQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDL0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDakQ7U0FDRjtJQUNILENBQUM7SUFFRCxxQkFBcUI7UUFDbkIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDL0IsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUVELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDO0lBQzFDLENBQUM7OEdBaklVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLG1DQUhoQixDQUFDLHdCQUF3QixDQUFDLHVHQUs3QixnQkFBZ0IsMkNDOUIxQix5Q0FDQTs7MkZEMkJhLGdCQUFnQjtrQkFQNUIsU0FBUzsrQkFDRSxVQUFVLGFBR1QsQ0FBQyx3QkFBd0IsQ0FBQyxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTsrTEFPeEMsTUFBTTtzQkFKWixTQUFTO3VCQUFDLFFBQVEsRUFBRTt3QkFDbkIsSUFBSSxFQUFFLGdCQUFnQjt3QkFDdEIsTUFBTSxFQUFFLElBQUk7cUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5qZWN0b3IsXG4gIFR5cGUsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreURvY2tEb21BZGFwdGVyU2VydmljZSB9IGZyb20gJy4vZG9jay1kb20tYWRhcHRlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNreURvY2tJbnNlcnRDb21wb25lbnRDb25maWcgfSBmcm9tICcuL2RvY2staW5zZXJ0LWNvbXBvbmVudC1jb25maWcnO1xuaW1wb3J0IHsgU2t5RG9ja0l0ZW1SZWZlcmVuY2UgfSBmcm9tICcuL2RvY2staXRlbS1yZWZlcmVuY2UnO1xuaW1wb3J0IHsgU2t5RG9ja0xvY2F0aW9uIH0gZnJvbSAnLi9kb2NrLWxvY2F0aW9uJztcbmltcG9ydCB7IFNreURvY2tPcHRpb25zIH0gZnJvbSAnLi9kb2NrLW9wdGlvbnMnO1xuaW1wb3J0IHsgc29ydEJ5U3RhY2tPcmRlciB9IGZyb20gJy4vc29ydC1ieS1zdGFjay1vcmRlcic7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1kb2NrJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RvY2suY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kb2NrLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1NreURvY2tEb21BZGFwdGVyU2VydmljZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lEb2NrQ29tcG9uZW50IHtcbiAgQFZpZXdDaGlsZCgndGFyZ2V0Jywge1xuICAgIHJlYWQ6IFZpZXdDb250YWluZXJSZWYsXG4gICAgc3RhdGljOiB0cnVlLFxuICB9KVxuICBwdWJsaWMgdGFyZ2V0OiBWaWV3Q29udGFpbmVyUmVmIHwgdW5kZWZpbmVkO1xuXG4gICNjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWY7XG5cbiAgI2RvbUFkYXB0ZXI6IFNreURvY2tEb21BZGFwdGVyU2VydmljZTtcblxuICAjZWxlbWVudFJlZjogRWxlbWVudFJlZjtcblxuICAjaW5qZWN0b3I6IEluamVjdG9yO1xuXG4gICNpdGVtUmVmczogU2t5RG9ja0l0ZW1SZWZlcmVuY2U8dW5rbm93bj5bXSA9IFtdO1xuXG4gICNvcHRpb25zOiBTa3lEb2NrT3B0aW9ucyB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgZG9tQWRhcHRlcjogU2t5RG9ja0RvbUFkYXB0ZXJTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yID0gY2hhbmdlRGV0ZWN0b3I7XG4gICAgdGhpcy4jZWxlbWVudFJlZiA9IGVsZW1lbnRSZWY7XG4gICAgdGhpcy4jaW5qZWN0b3IgPSBpbmplY3RvcjtcbiAgICB0aGlzLiNkb21BZGFwdGVyID0gZG9tQWRhcHRlcjtcbiAgfVxuXG4gIHB1YmxpYyBpbnNlcnRDb21wb25lbnQ8VD4oXG4gICAgY29tcG9uZW50OiBUeXBlPFQ+LFxuICAgIGNvbmZpZzogU2t5RG9ja0luc2VydENvbXBvbmVudENvbmZpZyA9IHt9XG4gICk6IFNreURvY2tJdGVtUmVmZXJlbmNlPFQ+IHtcbiAgICAvKmlzdGFuYnVsIGlnbm9yZSBpZjogdW50ZXN0YWJsZSovXG4gICAgaWYgKCF0aGlzLnRhcmdldCkge1xuICAgICAgdGhyb3cgRXJyb3IoXG4gICAgICAgICdbU2t5RG9ja0NvbXBvbmVudF0gQ291bGQgbm90IGluc2VydCB0aGUgY29tcG9uZW50IGJlY2F1c2UgdGhlIHRhcmdldCBlbGVtZW50IGNvdWxkIG5vdCBiZSBmb3VuZC4nXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHByb3ZpZGVyczogY29uZmlnLnByb3ZpZGVycyB8fCBbXSxcbiAgICAgIHBhcmVudDogdGhpcy4jaW5qZWN0b3IsXG4gICAgfSk7XG5cbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLnRhcmdldC5jcmVhdGVDb21wb25lbnQ8VD4oY29tcG9uZW50LCB7XG4gICAgICBpbmplY3RvcixcbiAgICB9KTtcbiAgICBjb25zdCBzdGFja09yZGVyID1cbiAgICAgIGNvbmZpZy5zdGFja09yZGVyICE9PSBudWxsICYmIGNvbmZpZy5zdGFja09yZGVyICE9PSB1bmRlZmluZWRcbiAgICAgICAgPyBjb25maWcuc3RhY2tPcmRlclxuICAgICAgICA6IHRoaXMuI2dldEhpZ2hlc3RTdGFja09yZGVyKCk7XG5cbiAgICB0aGlzLiNpdGVtUmVmcy5wdXNoKHtcbiAgICAgIGNvbXBvbmVudFJlZixcbiAgICAgIHN0YWNrT3JkZXIsXG4gICAgfSk7XG5cbiAgICB0aGlzLiNzb3J0SXRlbXNCeVN0YWNrT3JkZXIoKTtcblxuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbXBvbmVudFJlZixcbiAgICAgIHN0YWNrT3JkZXIsXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVJdGVtKGl0ZW06IFNreURvY2tJdGVtUmVmZXJlbmNlPGFueT4pOiB2b2lkIHtcbiAgICAvKmlzdGFuYnVsIGlnbm9yZSBpZjogdW50ZXN0YWJsZSovXG4gICAgaWYgKCF0aGlzLnRhcmdldCkge1xuICAgICAgdGhyb3cgRXJyb3IoXG4gICAgICAgICdbU2t5RG9ja0NvbXBvbmVudF0gQ291bGQgbm90IHJlbW92ZSB0aGUgaXRlbSBiZWNhdXNlIHRoZSB0YXJnZXQgZWxlbWVudCBjb3VsZCBub3QgYmUgZm91bmQuJ1xuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCB2aWV3UmVmID0gaXRlbS5jb21wb25lbnRSZWYuaG9zdFZpZXc7XG4gICAgdGhpcy50YXJnZXQucmVtb3ZlKHRoaXMudGFyZ2V0LmluZGV4T2Yodmlld1JlZikpO1xuXG4gICAgY29uc3QgZm91bmQgPSB0aGlzLiNpdGVtUmVmcy5maW5kKFxuICAgICAgKGkpID0+IGkuY29tcG9uZW50UmVmLmhvc3RWaWV3ID09PSB2aWV3UmVmXG4gICAgKTtcblxuICAgIGlmIChmb3VuZCkge1xuICAgICAgdGhpcy4jaXRlbVJlZnMuc3BsaWNlKHRoaXMuI2l0ZW1SZWZzLmluZGV4T2YoZm91bmQpLCAxKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2V0T3B0aW9ucyhvcHRpb25zOiBTa3lEb2NrT3B0aW9ucyB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIHRoaXMuI29wdGlvbnMgPSBvcHRpb25zO1xuXG4gICAgc3dpdGNoICh0aGlzLiNvcHRpb25zPy5sb2NhdGlvbikge1xuICAgICAgY2FzZSBTa3lEb2NrTG9jYXRpb24uQmVmb3JlRWxlbWVudDpcbiAgICAgICAgdGhpcy4jZG9tQWRhcHRlci51bmJpbmREb2NrKHRoaXMuI2VsZW1lbnRSZWYpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgU2t5RG9ja0xvY2F0aW9uLkVsZW1lbnRCb3R0b206XG4gICAgICAgIHRoaXMuI2RvbUFkYXB0ZXIuc2V0U3RpY2t5KHRoaXMuI2VsZW1lbnRSZWYpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgU2t5RG9ja0xvY2F0aW9uLkJvZHlCb3R0b206XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLiNkb21BZGFwdGVyLndhdGNoRG9tQ2hhbmdlcyh0aGlzLiNlbGVtZW50UmVmKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuI29wdGlvbnM/LnpJbmRleCkge1xuICAgICAgdGhpcy4jZG9tQWRhcHRlci5zZXRaSW5kZXgodGhpcy4jb3B0aW9ucy56SW5kZXgsIHRoaXMuI2VsZW1lbnRSZWYpO1xuICAgIH1cbiAgfVxuXG4gICNzb3J0SXRlbXNCeVN0YWNrT3JkZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudGFyZ2V0KSB7XG4gICAgICB0aGlzLiNpdGVtUmVmcy5zb3J0KHNvcnRCeVN0YWNrT3JkZXIpO1xuXG4gICAgICAvLyBSZWFzc2lnbiB0aGUgY29ycmVjdCBpbmRleCBmb3IgZWFjaCB2aWV3LlxuICAgICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IHRoaXMuI2l0ZW1SZWZzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLiNpdGVtUmVmc1tpXTtcbiAgICAgICAgdGhpcy50YXJnZXQubW92ZShpdGVtLmNvbXBvbmVudFJlZi5ob3N0VmlldywgaSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2dldEhpZ2hlc3RTdGFja09yZGVyKCk6IG51bWJlciB7XG4gICAgaWYgKHRoaXMuI2l0ZW1SZWZzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuI2l0ZW1SZWZzWzBdLnN0YWNrT3JkZXIgKyAxO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICN0YXJnZXQ+PC9uZy1jb250YWluZXI+XG4iXX0=
@@ -4,11 +4,11 @@ import { SkyMutationObserverService } from '../mutation/mutation-observer-servic
4
4
  import { SkyDockComponent } from './dock.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class SkyDockModule {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: SkyDockModule, declarations: [SkyDockComponent], imports: [CommonModule] }); }
9
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDockModule, providers: [SkyMutationObserverService], imports: [CommonModule] }); }
7
10
  }
8
- SkyDockModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- SkyDockModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SkyDockModule, declarations: [SkyDockComponent], imports: [CommonModule] });
10
- SkyDockModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDockModule, providers: [SkyMutationObserverService], imports: [CommonModule] });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDockModule, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDockModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  imports: [CommonModule],
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
16
16
  providers: [SkyMutationObserverService],
17
17
  }]
18
18
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jay5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvZG9jay9kb2NrLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUVuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLGFBQWE7OzBHQUFiLGFBQWE7MkdBQWIsYUFBYSxpQkFIVCxnQkFBZ0IsYUFEckIsWUFBWTsyR0FJWCxhQUFhLGFBRmIsQ0FBQywwQkFBMEIsQ0FBQyxZQUY3QixZQUFZOzJGQUlYLGFBQWE7a0JBTHpCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDaEMsU0FBUyxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreU11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vbXV0YXRpb24vbXV0YXRpb24tb2JzZXJ2ZXItc2VydmljZSc7XG5cbmltcG9ydCB7IFNreURvY2tDb21wb25lbnQgfSBmcm9tICcuL2RvY2suY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW1NreURvY2tDb21wb25lbnRdLFxuICBwcm92aWRlcnM6IFtTa3lNdXRhdGlvbk9ic2VydmVyU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNreURvY2tNb2R1bGUge31cbiJdfQ==
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jay5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvZG9jay9kb2NrLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUVuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLGFBQWE7OEdBQWIsYUFBYTsrR0FBYixhQUFhLGlCQUhULGdCQUFnQixhQURyQixZQUFZOytHQUlYLGFBQWEsYUFGYixDQUFDLDBCQUEwQixDQUFDLFlBRjdCLFlBQVk7OzJGQUlYLGFBQWE7a0JBTHpCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDaEMsU0FBUyxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreU11dGF0aW9uT2JzZXJ2ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vbXV0YXRpb24vbXV0YXRpb24tb2JzZXJ2ZXItc2VydmljZSc7XG5cbmltcG9ydCB7IFNreURvY2tDb21wb25lbnQgfSBmcm9tICcuL2RvY2suY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW1NreURvY2tDb21wb25lbnRdLFxuICBwcm92aWRlcnM6IFtTa3lNdXRhdGlvbk9ic2VydmVyU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNreURvY2tNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,96 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { SkyDynamicComponentLocation } from '../dynamic-component/dynamic-component-location';
3
+ import { SkyDockItem } from './dock-item';
4
+ import { SkyDockLocation } from './dock-location';
5
+ import { SkyDockComponent } from './dock.component';
6
+ import { sortByStackOrder } from './sort-by-stack-order';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../dynamic-component/dynamic-component.service";
9
+ /**
10
+ * This service docks components to specific areas on the page.
11
+ */
12
+ export class SkyDockService {
13
+ static { this._items = []; }
14
+ /**
15
+ * Returns all docked items.
16
+ */
17
+ get items() {
18
+ return SkyDockService._items;
19
+ }
20
+ #dynamicComponentSvc;
21
+ #options;
22
+ constructor(dynamicComponentSvc) {
23
+ this.#dynamicComponentSvc = dynamicComponentSvc;
24
+ }
25
+ /**
26
+ * Docks a component to the bottom of the page.
27
+ * @param component The component to dock.
28
+ * @param config Options that affect the docking action.
29
+ */
30
+ insertComponent(component, config) {
31
+ const dockRef = (SkyDockService.dockRef =
32
+ SkyDockService.dockRef || this.#createDock());
33
+ const itemRef = dockRef.instance.insertComponent(component, config);
34
+ const item = new SkyDockItem(itemRef.componentRef.instance, itemRef.stackOrder);
35
+ item.destroyed.subscribe(() => {
36
+ dockRef.instance.removeItem(itemRef);
37
+ SkyDockService._items.splice(SkyDockService._items.indexOf(item), 1);
38
+ if (SkyDockService._items.length === 0) {
39
+ this.#destroyDock();
40
+ }
41
+ });
42
+ SkyDockService._items.push(item);
43
+ SkyDockService._items.sort(sortByStackOrder);
44
+ return item;
45
+ }
46
+ /**
47
+ * Sets options for the positioning and styling of the dock component. Since the dock service is a
48
+ * singleton instance, these options will be applied to all components inserted into the dock. In
49
+ * order to create a separate dock with different options, consumers should provide a different
50
+ * instance of the dock service.
51
+ * @param options The options for positioning and styling
52
+ */
53
+ setDockOptions(options) {
54
+ this.#options = options;
55
+ }
56
+ #createDock() {
57
+ let dockOptions;
58
+ if (this.#options) {
59
+ let dynamicLocation;
60
+ switch (this.#options.location) {
61
+ case SkyDockLocation.BeforeElement:
62
+ dynamicLocation = SkyDynamicComponentLocation.BeforeElement;
63
+ break;
64
+ case SkyDockLocation.ElementBottom:
65
+ dynamicLocation = SkyDynamicComponentLocation.ElementBottom;
66
+ break;
67
+ default:
68
+ dynamicLocation = SkyDynamicComponentLocation.BodyTop;
69
+ break;
70
+ }
71
+ dockOptions = {
72
+ location: dynamicLocation,
73
+ referenceEl: this.#options.referenceEl,
74
+ };
75
+ }
76
+ const dockRef = this.#dynamicComponentSvc.createComponent(SkyDockComponent, dockOptions);
77
+ dockRef.instance.setOptions(this.#options);
78
+ return dockRef;
79
+ }
80
+ #destroyDock() {
81
+ this.#dynamicComponentSvc.removeComponent(SkyDockService.dockRef);
82
+ SkyDockService.dockRef = undefined;
83
+ }
84
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDockService, deps: [{ token: i1.SkyDynamicComponentService }], target: i0.ɵɵFactoryTarget.Injectable }); }
85
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDockService, providedIn: 'any' }); }
86
+ }
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDockService, decorators: [{
88
+ type: Injectable,
89
+ args: [{
90
+ // Must be 'any' so that the dock component is created in the context of its module's injector.
91
+ // If set to 'root', the component's dependency injections would only be derived from the root
92
+ // injector and may loose context if the dock was opened from within a lazy-loaded module.
93
+ providedIn: 'any',
94
+ }]
95
+ }], ctorParameters: function () { return [{ type: i1.SkyDynamicComponentService }]; } });
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2RvY2svZG9jay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsVUFBVSxFQUFRLE1BQU0sZUFBZSxDQUFDO0FBRS9ELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBSzlGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWxELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFFekQ7O0dBRUc7QUFPSCxNQUFNLE9BQU8sY0FBYzthQUVWLFdBQU0sR0FBdUIsRUFBRSxBQUF6QixDQUEwQjtJQUUvQzs7T0FFRztJQUNILElBQVcsS0FBSztRQUNkLE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQztJQUMvQixDQUFDO0lBRUQsb0JBQW9CLENBQTZCO0lBRWpELFFBQVEsQ0FBNkI7SUFFckMsWUFBWSxtQkFBK0M7UUFDekQsSUFBSSxDQUFDLG9CQUFvQixHQUFHLG1CQUFtQixDQUFDO0lBQ2xELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksZUFBZSxDQUNwQixTQUFrQixFQUNsQixNQUFxQztRQUVyQyxNQUFNLE9BQU8sR0FBRyxDQUFDLGNBQWMsQ0FBQyxPQUFPO1lBQ3JDLGNBQWMsQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFFaEQsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3BFLE1BQU0sSUFBSSxHQUFHLElBQUksV0FBVyxDQUMxQixPQUFPLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFDN0IsT0FBTyxDQUFDLFVBQVUsQ0FDbkIsQ0FBQztRQUVGLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUM1QixPQUFPLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyQyxjQUFjLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNyRSxJQUFJLGNBQWMsQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDdEMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2FBQ3JCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTdDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLGNBQWMsQ0FBQyxPQUF1QjtRQUMzQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztJQUMxQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksV0FBbUQsQ0FBQztRQUV4RCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxlQUE0QyxDQUFDO1lBQ2pELFFBQVEsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUU7Z0JBQzlCLEtBQUssZUFBZSxDQUFDLGFBQWE7b0JBQ2hDLGVBQWUsR0FBRywyQkFBMkIsQ0FBQyxhQUFhLENBQUM7b0JBQzVELE1BQU07Z0JBQ1IsS0FBSyxlQUFlLENBQUMsYUFBYTtvQkFDaEMsZUFBZSxHQUFHLDJCQUEyQixDQUFDLGFBQWEsQ0FBQztvQkFDNUQsTUFBTTtnQkFDUjtvQkFDRSxlQUFlLEdBQUcsMkJBQTJCLENBQUMsT0FBTyxDQUFDO29CQUN0RCxNQUFNO2FBQ1Q7WUFFRCxXQUFXLEdBQUc7Z0JBQ1osUUFBUSxFQUFFLGVBQWU7Z0JBQ3pCLFdBQVcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVc7YUFDdkMsQ0FBQztTQUNIO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGVBQWUsQ0FDdkQsZ0JBQWdCLEVBQ2hCLFdBQVcsQ0FDWixDQUFDO1FBRUYsT0FBTyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTNDLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEUsY0FBYyxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUM7SUFDckMsQ0FBQzs4R0FsR1UsY0FBYztrSEFBZCxjQUFjLGNBRmIsS0FBSzs7MkZBRU4sY0FBYztrQkFOMUIsVUFBVTttQkFBQztvQkFDViwrRkFBK0Y7b0JBQy9GLDhGQUE4RjtvQkFDOUYsMEZBQTBGO29CQUMxRixVQUFVLEVBQUUsS0FBSztpQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRSZWYsIEluamVjdGFibGUsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uIH0gZnJvbSAnLi4vZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1jb21wb25lbnQtbG9jYXRpb24nO1xuaW1wb3J0IHsgU2t5RHluYW1pY0NvbXBvbmVudE9wdGlvbnMgfSBmcm9tICcuLi9keW5hbWljLWNvbXBvbmVudC9keW5hbWljLWNvbXBvbmVudC1vcHRpb25zJztcbmltcG9ydCB7IFNreUR5bmFtaWNDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vZHluYW1pYy1jb21wb25lbnQvZHluYW1pYy1jb21wb25lbnQuc2VydmljZSc7XG5cbmltcG9ydCB7IFNreURvY2tJbnNlcnRDb21wb25lbnRDb25maWcgfSBmcm9tICcuL2RvY2staW5zZXJ0LWNvbXBvbmVudC1jb25maWcnO1xuaW1wb3J0IHsgU2t5RG9ja0l0ZW0gfSBmcm9tICcuL2RvY2staXRlbSc7XG5pbXBvcnQgeyBTa3lEb2NrTG9jYXRpb24gfSBmcm9tICcuL2RvY2stbG9jYXRpb24nO1xuaW1wb3J0IHsgU2t5RG9ja09wdGlvbnMgfSBmcm9tICcuL2RvY2stb3B0aW9ucyc7XG5pbXBvcnQgeyBTa3lEb2NrQ29tcG9uZW50IH0gZnJvbSAnLi9kb2NrLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBzb3J0QnlTdGFja09yZGVyIH0gZnJvbSAnLi9zb3J0LWJ5LXN0YWNrLW9yZGVyJztcblxuLyoqXG4gKiBUaGlzIHNlcnZpY2UgZG9ja3MgY29tcG9uZW50cyB0byBzcGVjaWZpYyBhcmVhcyBvbiB0aGUgcGFnZS5cbiAqL1xuQEluamVjdGFibGUoe1xuICAvLyBNdXN0IGJlICdhbnknIHNvIHRoYXQgdGhlIGRvY2sgY29tcG9uZW50IGlzIGNyZWF0ZWQgaW4gdGhlIGNvbnRleHQgb2YgaXRzIG1vZHVsZSdzIGluamVjdG9yLlxuICAvLyBJZiBzZXQgdG8gJ3Jvb3QnLCB0aGUgY29tcG9uZW50J3MgZGVwZW5kZW5jeSBpbmplY3Rpb25zIHdvdWxkIG9ubHkgYmUgZGVyaXZlZCBmcm9tIHRoZSByb290XG4gIC8vIGluamVjdG9yIGFuZCBtYXkgbG9vc2UgY29udGV4dCBpZiB0aGUgZG9jayB3YXMgb3BlbmVkIGZyb20gd2l0aGluIGEgbGF6eS1sb2FkZWQgbW9kdWxlLlxuICBwcm92aWRlZEluOiAnYW55Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2t5RG9ja1NlcnZpY2Uge1xuICBwcml2YXRlIHN0YXRpYyBkb2NrUmVmOiBDb21wb25lbnRSZWY8U2t5RG9ja0NvbXBvbmVudD4gfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgc3RhdGljIF9pdGVtczogU2t5RG9ja0l0ZW08YW55PltdID0gW107XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYWxsIGRvY2tlZCBpdGVtcy5cbiAgICovXG4gIHB1YmxpYyBnZXQgaXRlbXMoKTogU2t5RG9ja0l0ZW08YW55PltdIHtcbiAgICByZXR1cm4gU2t5RG9ja1NlcnZpY2UuX2l0ZW1zO1xuICB9XG5cbiAgI2R5bmFtaWNDb21wb25lbnRTdmM6IFNreUR5bmFtaWNDb21wb25lbnRTZXJ2aWNlO1xuXG4gICNvcHRpb25zOiBTa3lEb2NrT3B0aW9ucyB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihkeW5hbWljQ29tcG9uZW50U3ZjOiBTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZSkge1xuICAgIHRoaXMuI2R5bmFtaWNDb21wb25lbnRTdmMgPSBkeW5hbWljQ29tcG9uZW50U3ZjO1xuICB9XG5cbiAgLyoqXG4gICAqIERvY2tzIGEgY29tcG9uZW50IHRvIHRoZSBib3R0b20gb2YgdGhlIHBhZ2UuXG4gICAqIEBwYXJhbSBjb21wb25lbnQgVGhlIGNvbXBvbmVudCB0byBkb2NrLlxuICAgKiBAcGFyYW0gY29uZmlnIE9wdGlvbnMgdGhhdCBhZmZlY3QgdGhlIGRvY2tpbmcgYWN0aW9uLlxuICAgKi9cbiAgcHVibGljIGluc2VydENvbXBvbmVudDxUPihcbiAgICBjb21wb25lbnQ6IFR5cGU8VD4sXG4gICAgY29uZmlnPzogU2t5RG9ja0luc2VydENvbXBvbmVudENvbmZpZ1xuICApOiBTa3lEb2NrSXRlbTxUPiB7XG4gICAgY29uc3QgZG9ja1JlZiA9IChTa3lEb2NrU2VydmljZS5kb2NrUmVmID1cbiAgICAgIFNreURvY2tTZXJ2aWNlLmRvY2tSZWYgfHwgdGhpcy4jY3JlYXRlRG9jaygpKTtcblxuICAgIGNvbnN0IGl0ZW1SZWYgPSBkb2NrUmVmLmluc3RhbmNlLmluc2VydENvbXBvbmVudChjb21wb25lbnQsIGNvbmZpZyk7XG4gICAgY29uc3QgaXRlbSA9IG5ldyBTa3lEb2NrSXRlbShcbiAgICAgIGl0ZW1SZWYuY29tcG9uZW50UmVmLmluc3RhbmNlLFxuICAgICAgaXRlbVJlZi5zdGFja09yZGVyXG4gICAgKTtcblxuICAgIGl0ZW0uZGVzdHJveWVkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBkb2NrUmVmLmluc3RhbmNlLnJlbW92ZUl0ZW0oaXRlbVJlZik7XG4gICAgICBTa3lEb2NrU2VydmljZS5faXRlbXMuc3BsaWNlKFNreURvY2tTZXJ2aWNlLl9pdGVtcy5pbmRleE9mKGl0ZW0pLCAxKTtcbiAgICAgIGlmIChTa3lEb2NrU2VydmljZS5faXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRoaXMuI2Rlc3Ryb3lEb2NrKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBTa3lEb2NrU2VydmljZS5faXRlbXMucHVzaChpdGVtKTtcbiAgICBTa3lEb2NrU2VydmljZS5faXRlbXMuc29ydChzb3J0QnlTdGFja09yZGVyKTtcblxuICAgIHJldHVybiBpdGVtO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgb3B0aW9ucyBmb3IgdGhlIHBvc2l0aW9uaW5nIGFuZCBzdHlsaW5nIG9mIHRoZSBkb2NrIGNvbXBvbmVudC4gU2luY2UgdGhlIGRvY2sgc2VydmljZSBpcyBhXG4gICAqIHNpbmdsZXRvbiBpbnN0YW5jZSwgdGhlc2Ugb3B0aW9ucyB3aWxsIGJlIGFwcGxpZWQgdG8gYWxsIGNvbXBvbmVudHMgaW5zZXJ0ZWQgaW50byB0aGUgZG9jay4gSW5cbiAgICogb3JkZXIgdG8gY3JlYXRlIGEgc2VwYXJhdGUgZG9jayB3aXRoIGRpZmZlcmVudCBvcHRpb25zLCBjb25zdW1lcnMgc2hvdWxkIHByb3ZpZGUgYSBkaWZmZXJlbnRcbiAgICogaW5zdGFuY2Ugb2YgdGhlIGRvY2sgc2VydmljZS5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgZm9yIHBvc2l0aW9uaW5nIGFuZCBzdHlsaW5nXG4gICAqL1xuICBwdWJsaWMgc2V0RG9ja09wdGlvbnMob3B0aW9uczogU2t5RG9ja09wdGlvbnMpOiB2b2lkIHtcbiAgICB0aGlzLiNvcHRpb25zID0gb3B0aW9ucztcbiAgfVxuXG4gICNjcmVhdGVEb2NrKCk6IENvbXBvbmVudFJlZjxTa3lEb2NrQ29tcG9uZW50PiB7XG4gICAgbGV0IGRvY2tPcHRpb25zOiBTa3lEeW5hbWljQ29tcG9uZW50T3B0aW9ucyB8IHVuZGVmaW5lZDtcblxuICAgIGlmICh0aGlzLiNvcHRpb25zKSB7XG4gICAgICBsZXQgZHluYW1pY0xvY2F0aW9uOiBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb247XG4gICAgICBzd2l0Y2ggKHRoaXMuI29wdGlvbnMubG9jYXRpb24pIHtcbiAgICAgICAgY2FzZSBTa3lEb2NrTG9jYXRpb24uQmVmb3JlRWxlbWVudDpcbiAgICAgICAgICBkeW5hbWljTG9jYXRpb24gPSBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24uQmVmb3JlRWxlbWVudDtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBTa3lEb2NrTG9jYXRpb24uRWxlbWVudEJvdHRvbTpcbiAgICAgICAgICBkeW5hbWljTG9jYXRpb24gPSBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24uRWxlbWVudEJvdHRvbTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBkeW5hbWljTG9jYXRpb24gPSBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24uQm9keVRvcDtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgZG9ja09wdGlvbnMgPSB7XG4gICAgICAgIGxvY2F0aW9uOiBkeW5hbWljTG9jYXRpb24sXG4gICAgICAgIHJlZmVyZW5jZUVsOiB0aGlzLiNvcHRpb25zLnJlZmVyZW5jZUVsLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjb25zdCBkb2NrUmVmID0gdGhpcy4jZHluYW1pY0NvbXBvbmVudFN2Yy5jcmVhdGVDb21wb25lbnQoXG4gICAgICBTa3lEb2NrQ29tcG9uZW50LFxuICAgICAgZG9ja09wdGlvbnNcbiAgICApO1xuXG4gICAgZG9ja1JlZi5pbnN0YW5jZS5zZXRPcHRpb25zKHRoaXMuI29wdGlvbnMpO1xuXG4gICAgcmV0dXJuIGRvY2tSZWY7XG4gIH1cblxuICAjZGVzdHJveURvY2soKTogdm9pZCB7XG4gICAgdGhpcy4jZHluYW1pY0NvbXBvbmVudFN2Yy5yZW1vdmVDb21wb25lbnQoU2t5RG9ja1NlcnZpY2UuZG9ja1JlZik7XG4gICAgU2t5RG9ja1NlcnZpY2UuZG9ja1JlZiA9IHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
@@ -6,12 +6,12 @@ import * as i0 from "@angular/core";
6
6
  * The `SkyDynamicComponentModule` can be removed from your project.
7
7
  */
8
8
  export class SkyDynamicComponentModule {
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDynamicComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: SkyDynamicComponentModule }); }
11
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDynamicComponentModule }); }
9
12
  }
10
- SkyDynamicComponentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDynamicComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- SkyDynamicComponentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SkyDynamicComponentModule });
12
- SkyDynamicComponentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDynamicComponentModule });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDynamicComponentModule, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDynamicComponentModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{}]
16
16
  }] });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2R5bmFtaWMtY29tcG9uZW50L2R5bmFtaWMtY29tcG9uZW50Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUV6Qzs7OztHQUlHO0FBRUgsTUFBTSxPQUFPLHlCQUF5Qjs7c0hBQXpCLHlCQUF5Qjt1SEFBekIseUJBQXlCO3VIQUF6Qix5QkFBeUI7MkZBQXpCLHlCQUF5QjtrQkFEckMsUUFBUTttQkFBQyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBQcm92aWRlcyBzZXJ2aWNlcyByZXF1aXJlZCB0byBjcmVhdGUgZHluYW1pYyBjb21wb25lbnRzIG9uIHRoZSBwYWdlLlxuICogQGRlcHJlY2F0ZWQgVGhlIGBTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZWAgbm8gbG9uZ2VyIG5lZWRzIHRoZSBgU2t5RHluYW1pY0NvbXBvbmVudE1vZHVsZWAuXG4gKiBUaGUgYFNreUR5bmFtaWNDb21wb25lbnRNb2R1bGVgIGNhbiBiZSByZW1vdmVkIGZyb20geW91ciBwcm9qZWN0LlxuICovXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgU2t5RHluYW1pY0NvbXBvbmVudE1vZHVsZSB7fVxuIl19
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2R5bmFtaWMtY29tcG9uZW50L2R5bmFtaWMtY29tcG9uZW50Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUV6Qzs7OztHQUlHO0FBRUgsTUFBTSxPQUFPLHlCQUF5Qjs4R0FBekIseUJBQXlCOytHQUF6Qix5QkFBeUI7K0dBQXpCLHlCQUF5Qjs7MkZBQXpCLHlCQUF5QjtrQkFEckMsUUFBUTttQkFBQyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBQcm92aWRlcyBzZXJ2aWNlcyByZXF1aXJlZCB0byBjcmVhdGUgZHluYW1pYyBjb21wb25lbnRzIG9uIHRoZSBwYWdlLlxuICogQGRlcHJlY2F0ZWQgVGhlIGBTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZWAgbm8gbG9uZ2VyIG5lZWRzIHRoZSBgU2t5RHluYW1pY0NvbXBvbmVudE1vZHVsZWAuXG4gKiBUaGUgYFNreUR5bmFtaWNDb21wb25lbnRNb2R1bGVgIGNhbiBiZSByZW1vdmVkIGZyb20geW91ciBwcm9qZWN0LlxuICovXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgU2t5RHluYW1pY0NvbXBvbmVudE1vZHVsZSB7fVxuIl19
@@ -0,0 +1,106 @@
1
+ import { Injectable, Injector, createComponent, } from '@angular/core';
2
+ import { SkyDynamicComponentLocation } from './dynamic-component-location';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../window/window-ref";
5
+ /**
6
+ * Angular service for creating and rendering a dynamic component.
7
+ * @internal
8
+ */
9
+ export class SkyDynamicComponentService {
10
+ #applicationRef;
11
+ #environmentInjector;
12
+ #injector;
13
+ #renderer;
14
+ #windowRef;
15
+ constructor(applicationRef, injector, windowRef, rendererFactory, environmentInjector) {
16
+ this.#applicationRef = applicationRef;
17
+ this.#injector = injector;
18
+ this.#windowRef = windowRef;
19
+ this.#environmentInjector = environmentInjector;
20
+ // Based on suggestions from https://github.com/angular/angular/issues/17824
21
+ // for accessing an instance of Renderer2 in a service since Renderer2 can't
22
+ // be injected into a service. Passing undefined for both parameters results
23
+ // in the default renderer which is what we want here.
24
+ this.#renderer = rendererFactory.createRenderer(undefined, null);
25
+ }
26
+ /**
27
+ * Creates an instance of the specified component and adds it to the specified location
28
+ * on the page.
29
+ */
30
+ createComponent(componentType, options) {
31
+ options = options || {
32
+ location: SkyDynamicComponentLocation.BodyBottom,
33
+ };
34
+ const injector = Injector.create({
35
+ providers: options.providers || [],
36
+ parent: options.parentInjector || this.#injector,
37
+ });
38
+ let componentRef;
39
+ if (options.viewContainerRef) {
40
+ componentRef = options.viewContainerRef.createComponent(componentType, {
41
+ injector,
42
+ });
43
+ }
44
+ else {
45
+ componentRef = createComponent(componentType, {
46
+ environmentInjector: this.#environmentInjector,
47
+ elementInjector: injector,
48
+ });
49
+ this.#applicationRef.attachView(componentRef.hostView);
50
+ const el = this.#getRootNode(componentRef);
51
+ const bodyEl = this.#windowRef.nativeWindow.document.body;
52
+ switch (options.location) {
53
+ case SkyDynamicComponentLocation.BeforeElement:
54
+ if (!options.referenceEl) {
55
+ throw new Error('[SkyDynamicComponentService] Could not create a component at location `SkyDynamicComponentLocation.BeforeElement` because a reference element was not provided.');
56
+ }
57
+ this.#renderer.insertBefore(options.referenceEl.parentElement, el, options.referenceEl);
58
+ break;
59
+ case SkyDynamicComponentLocation.ElementTop:
60
+ if (!options.referenceEl) {
61
+ throw new Error('[SkyDynamicComponentService] Could not create a component at location `SkyDynamicComponentLocation.ElementTop` because a reference element was not provided.');
62
+ }
63
+ this.#renderer.insertBefore(options.referenceEl, el, options.referenceEl.firstChild);
64
+ break;
65
+ case SkyDynamicComponentLocation.ElementBottom:
66
+ this.#renderer.appendChild(options.referenceEl, el);
67
+ break;
68
+ case SkyDynamicComponentLocation.BodyTop:
69
+ this.#renderer.insertBefore(bodyEl, el, bodyEl.firstChild);
70
+ break;
71
+ default:
72
+ this.#renderer.appendChild(bodyEl, el);
73
+ break;
74
+ }
75
+ }
76
+ return componentRef;
77
+ }
78
+ /**
79
+ * Removes a component ref from the page
80
+ * @param componentRef Component ref for the component being removed
81
+ */
82
+ removeComponent(componentRef) {
83
+ if (!componentRef) {
84
+ return;
85
+ }
86
+ this.#applicationRef.detachView(componentRef.hostView);
87
+ componentRef.destroy();
88
+ }
89
+ #getRootNode(componentRef) {
90
+ // Technique for retrieving the component's root node taken from here:
91
+ // https://malcoded.com/posts/angular-dynamic-components
92
+ return componentRef.hostView.rootNodes[0];
93
+ }
94
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDynamicComponentService, deps: [{ token: i0.ApplicationRef }, { token: i0.Injector }, { token: i1.SkyAppWindowRef }, { token: i0.RendererFactory2 }, { token: i0.EnvironmentInjector }], target: i0.ɵɵFactoryTarget.Injectable }); }
95
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDynamicComponentService, providedIn: 'any' }); }
96
+ }
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyDynamicComponentService, decorators: [{
98
+ type: Injectable,
99
+ args: [{
100
+ // Must be 'any' so that the component is created in the context of its module's injector.
101
+ // If set to 'root', the component's dependency injections would only be derived from the root
102
+ // injector and may lose context if the component is created within a lazy-loaded module.
103
+ providedIn: 'any',
104
+ }]
105
+ }], ctorParameters: function () { return [{ type: i0.ApplicationRef }, { type: i0.Injector }, { type: i1.SkyAppWindowRef }, { type: i0.RendererFactory2 }, { type: i0.EnvironmentInjector }]; } });
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9keW5hbWljLWNvbXBvbmVudC9keW5hbWljLWNvbXBvbmVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFLTCxVQUFVLEVBQ1YsUUFBUSxFQUlSLGVBQWUsR0FDaEIsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOEJBQThCLENBQUM7OztBQUczRTs7O0dBR0c7QUFPSCxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDLGVBQWUsQ0FBaUI7SUFFaEMsb0JBQW9CLENBQXNCO0lBRTFDLFNBQVMsQ0FBVztJQUVwQixTQUFTLENBQVk7SUFFckIsVUFBVSxDQUFrQjtJQUU1QixZQUNFLGNBQThCLEVBQzlCLFFBQWtCLEVBQ2xCLFNBQTBCLEVBQzFCLGVBQWlDLEVBQ2pDLG1CQUF3QztRQUV4QyxJQUFJLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQztRQUN0QyxJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztRQUMxQixJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQztRQUM1QixJQUFJLENBQUMsb0JBQW9CLEdBQUcsbUJBQW1CLENBQUM7UUFFaEQsNEVBQTRFO1FBQzVFLDRFQUE0RTtRQUM1RSw2RUFBNkU7UUFDN0Usc0RBQXNEO1FBQ3RELElBQUksQ0FBQyxTQUFTLEdBQUcsZUFBZSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGVBQWUsQ0FDcEIsYUFBc0IsRUFDdEIsT0FBb0M7UUFFcEMsT0FBTyxHQUFHLE9BQU8sSUFBSTtZQUNuQixRQUFRLEVBQUUsMkJBQTJCLENBQUMsVUFBVTtTQUNqRCxD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VTttQkFBQztvQkFDViwwRkFBMEY7b0JBQzFGLDhGQUE4RjtvQkFDOUYseUZBQXlGO29CQUN6RixVQUFVLEVBQUUsS0FBSztpQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBcHBsaWNhdGlvblJlZixcbiAgQ29tcG9uZW50UmVmLFxuICBFbWJlZGRlZFZpZXdSZWYsXG4gIEVudmlyb25tZW50SW5qZWN0b3IsXG4gIEluamVjdGFibGUsXG4gIEluamVjdG9yLFxuICBSZW5kZXJlcjIsXG4gIFJlbmRlcmVyRmFjdG9yeTIsXG4gIFR5cGUsXG4gIGNyZWF0ZUNvbXBvbmVudCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreUFwcFdpbmRvd1JlZiB9IGZyb20gJy4uL3dpbmRvdy93aW5kb3ctcmVmJztcblxuaW1wb3J0IHsgU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uIH0gZnJvbSAnLi9keW5hbWljLWNvbXBvbmVudC1sb2NhdGlvbic7XG5pbXBvcnQgeyBTa3lEeW5hbWljQ29tcG9uZW50T3B0aW9ucyB9IGZyb20gJy4vZHluYW1pYy1jb21wb25lbnQtb3B0aW9ucyc7XG5cbi8qKlxuICogQW5ndWxhciBzZXJ2aWNlIGZvciBjcmVhdGluZyBhbmQgcmVuZGVyaW5nIGEgZHluYW1pYyBjb21wb25lbnQuXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoe1xuICAvLyBNdXN0IGJlICdhbnknIHNvIHRoYXQgdGhlIGNvbXBvbmVudCBpcyBjcmVhdGVkIGluIHRoZSBjb250ZXh0IG9mIGl0cyBtb2R1bGUncyBpbmplY3Rvci5cbiAgLy8gSWYgc2V0IHRvICdyb290JywgdGhlIGNvbXBvbmVudCdzIGRlcGVuZGVuY3kgaW5qZWN0aW9ucyB3b3VsZCBvbmx5IGJlIGRlcml2ZWQgZnJvbSB0aGUgcm9vdFxuICAvLyBpbmplY3RvciBhbmQgbWF5IGxvc2UgY29udGV4dCBpZiB0aGUgY29tcG9uZW50IGlzIGNyZWF0ZWQgd2l0aGluIGEgbGF6eS1sb2FkZWQgbW9kdWxlLlxuICBwcm92aWRlZEluOiAnYW55Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2Uge1xuICAjYXBwbGljYXRpb25SZWY6IEFwcGxpY2F0aW9uUmVmO1xuXG4gICNlbnZpcm9ubWVudEluamVjdG9yOiBFbnZpcm9ubWVudEluamVjdG9yO1xuXG4gICNpbmplY3RvcjogSW5qZWN0b3I7XG5cbiAgI3JlbmRlcmVyOiBSZW5kZXJlcjI7XG5cbiAgI3dpbmRvd1JlZjogU2t5QXBwV2luZG93UmVmO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGFwcGxpY2F0aW9uUmVmOiBBcHBsaWNhdGlvblJlZixcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgd2luZG93UmVmOiBTa3lBcHBXaW5kb3dSZWYsXG4gICAgcmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyLFxuICAgIGVudmlyb25tZW50SW5qZWN0b3I6IEVudmlyb25tZW50SW5qZWN0b3JcbiAgKSB7XG4gICAgdGhpcy4jYXBwbGljYXRpb25SZWYgPSBhcHBsaWNhdGlvblJlZjtcbiAgICB0aGlzLiNpbmplY3RvciA9IGluamVjdG9yO1xuICAgIHRoaXMuI3dpbmRvd1JlZiA9IHdpbmRvd1JlZjtcbiAgICB0aGlzLiNlbnZpcm9ubWVudEluamVjdG9yID0gZW52aXJvbm1lbnRJbmplY3RvcjtcblxuICAgIC8vIEJhc2VkIG9uIHN1Z2dlc3Rpb25zIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTc4MjRcbiAgICAvLyBmb3IgYWNjZXNzaW5nIGFuIGluc3RhbmNlIG9mIFJlbmRlcmVyMiBpbiBhIHNlcnZpY2Ugc2luY2UgUmVuZGVyZXIyIGNhbid0XG4gICAgLy8gYmUgaW5qZWN0ZWQgaW50byBhIHNlcnZpY2UuICBQYXNzaW5nIHVuZGVmaW5lZCBmb3IgYm90aCBwYXJhbWV0ZXJzIHJlc3VsdHNcbiAgICAvLyBpbiB0aGUgZGVmYXVsdCByZW5kZXJlciB3aGljaCBpcyB3aGF0IHdlIHdhbnQgaGVyZS5cbiAgICB0aGlzLiNyZW5kZXJlciA9IHJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcih1bmRlZmluZWQsIG51bGwpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhlIHNwZWNpZmllZCBjb21wb25lbnQgYW5kIGFkZHMgaXQgdG8gdGhlIHNwZWNpZmllZCBsb2NhdGlvblxuICAgKiBvbiB0aGUgcGFnZS5cbiAgICovXG4gIHB1YmxpYyBjcmVhdGVDb21wb25lbnQ8VD4oXG4gICAgY29tcG9uZW50VHlwZTogVHlwZTxUPixcbiAgICBvcHRpb25zPzogU2t5RHluYW1pY0NvbXBvbmVudE9wdGlvbnNcbiAgKTogQ29tcG9uZW50UmVmPFQ+IHtcbiAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7XG4gICAgICBsb2NhdGlvbjogU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkJvZHlCb3R0b20sXG4gICAgfTtcblxuICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHByb3ZpZGVyczogb3B0aW9ucy5wcm92aWRlcnMgfHwgW10sXG4gICAgICBwYXJlbnQ6IG9wdGlvbnMucGFyZW50SW5qZWN0b3IgfHwgdGhpcy4jaW5qZWN0b3IsXG4gICAgfSk7XG5cbiAgICBsZXQgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8VD47XG5cbiAgICBpZiAob3B0aW9ucy52aWV3Q29udGFpbmVyUmVmKSB7XG4gICAgICBjb21wb25lbnRSZWYgPSBvcHRpb25zLnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudFR5cGUsIHtcbiAgICAgICAgaW5qZWN0b3IsXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29tcG9uZW50UmVmID0gY3JlYXRlQ29tcG9uZW50PFQ+KGNvbXBvbmVudFR5cGUsIHtcbiAgICAgICAgZW52aXJvbm1lbnRJbmplY3RvcjogdGhpcy4jZW52aXJvbm1lbnRJbmplY3RvcixcbiAgICAgICAgZWxlbWVudEluamVjdG9yOiBpbmplY3RvcixcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLiNhcHBsaWNhdGlvblJlZi5hdHRhY2hWaWV3KGNvbXBvbmVudFJlZi5ob3N0Vmlldyk7XG5cbiAgICAgIGNvbnN0IGVsID0gdGhpcy4jZ2V0Um9vdE5vZGUoY29tcG9uZW50UmVmKTtcblxuICAgICAgY29uc3QgYm9keUVsID0gdGhpcy4jd2luZG93UmVmLm5hdGl2ZVdpbmRvdy5kb2N1bWVudC5ib2R5O1xuXG4gICAgICBzd2l0Y2ggKG9wdGlvbnMubG9jYXRpb24pIHtcbiAgICAgICAgY2FzZSBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24uQmVmb3JlRWxlbWVudDpcbiAgICAgICAgICBpZiAoIW9wdGlvbnMucmVmZXJlbmNlRWwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgJ1tTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZV0gQ291bGQgbm90IGNyZWF0ZSBhIGNvbXBvbmVudCBhdCBsb2NhdGlvbiBgU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkJlZm9yZUVsZW1lbnRgIGJlY2F1c2UgYSByZWZlcmVuY2UgZWxlbWVudCB3YXMgbm90IHByb3ZpZGVkLidcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy4jcmVuZGVyZXIuaW5zZXJ0QmVmb3JlKFxuICAgICAgICAgICAgb3B0aW9ucy5yZWZlcmVuY2VFbC5wYXJlbnRFbGVtZW50LFxuICAgICAgICAgICAgZWwsXG4gICAgICAgICAgICBvcHRpb25zLnJlZmVyZW5jZUVsXG4gICAgICAgICAgKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24uRWxlbWVudFRvcDpcbiAgICAgICAgICBpZiAoIW9wdGlvbnMucmVmZXJlbmNlRWwpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgJ1tTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZV0gQ291bGQgbm90IGNyZWF0ZSBhIGNvbXBvbmVudCBhdCBsb2NhdGlvbiBgU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkVsZW1lbnRUb3BgIGJlY2F1c2UgYSByZWZlcmVuY2UgZWxlbWVudCB3YXMgbm90IHByb3ZpZGVkLidcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy4jcmVuZGVyZXIuaW5zZXJ0QmVmb3JlKFxuICAgICAgICAgICAgb3B0aW9ucy5yZWZlcmVuY2VFbCxcbiAgICAgICAgICAgIGVsLFxuICAgICAgICAgICAgb3B0aW9ucy5yZWZlcmVuY2VFbC5maXJzdENoaWxkXG4gICAgICAgICAgKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBTa3lEeW5hbWljQ29tcG9uZW50TG9jYXRpb24uRWxlbWVudEJvdHRvbTpcbiAgICAgICAgICB0aGlzLiNyZW5kZXJlci5hcHBlbmRDaGlsZChvcHRpb25zLnJlZmVyZW5jZUVsLCBlbCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgU2t5RHluYW1pY0NvbXBvbmVudExvY2F0aW9uLkJvZHlUb3A6XG4gICAgICAgICAgdGhpcy4jcmVuZGVyZXIuaW5zZXJ0QmVmb3JlKGJvZHlFbCwgZWwsIGJvZHlFbC5maXJzdENoaWxkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aGlzLiNyZW5kZXJlci5hcHBlbmRDaGlsZChib2R5RWwsIGVsKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY29tcG9uZW50UmVmO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSBjb21wb25lbnQgcmVmIGZyb20gdGhlIHBhZ2VcbiAgICogQHBhcmFtIGNvbXBvbmVudFJlZiBDb21wb25lbnQgcmVmIGZvciB0aGUgY29tcG9uZW50IGJlaW5nIHJlbW92ZWRcbiAgICovXG4gIHB1YmxpYyByZW1vdmVDb21wb25lbnQ8VD4oY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8VD4gfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICBpZiAoIWNvbXBvbmVudFJlZikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuI2FwcGxpY2F0aW9uUmVmLmRldGFjaFZpZXcoY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcbiAgICBjb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICB9XG5cbiAgI2dldFJvb3ROb2RlPFQ+KGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPFQ+KTogYW55IHtcbiAgICAvLyBUZWNobmlxdWUgZm9yIHJldHJpZXZpbmcgdGhlIGNvbXBvbmVudCdzIHJvb3Qgbm9kZSB0YWtlbiBmcm9tIGhlcmU6XG4gICAgLy8gaHR0cHM6Ly9tYWxjb2RlZC5jb20vcG9zdHMvYW5ndWxhci1keW5hbWljLWNvbXBvbmVudHNcbiAgICByZXR1cm4gKGNvbXBvbmVudFJlZi5ob3N0VmlldyBhcyBFbWJlZGRlZFZpZXdSZWY8VD4pLnJvb3ROb2Rlc1swXTtcbiAgfVxufVxuIl19
@@ -6,13 +6,13 @@ export class SkyAppFormat {
6
6
  return args[parseInt(capture, 10)];
7
7
  });
8
8
  }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyAppFormat, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
10
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyAppFormat, providedIn: 'root' }); }
9
11
  }
10
- SkyAppFormat.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAppFormat, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
11
- SkyAppFormat.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAppFormat, providedIn: 'root' });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyAppFormat, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyAppFormat, decorators: [{
13
13
  type: Injectable,
14
14
  args: [{
15
15
  providedIn: 'root',
16
16
  }]
17
17
  }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWZvcm1hdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9mb3JtYXQvYXBwLWZvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sWUFBWTtJQUNoQixVQUFVLENBQUMsTUFBYyxFQUFFLEdBQUcsSUFBVztRQUM5QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQzNCLFlBQVksRUFDWixVQUFVLEtBQUssRUFBRSxPQUFPO1lBQ3RCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7O3lHQVJVLFlBQVk7NkdBQVosWUFBWSxjQUZYLE1BQU07MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lBcHBGb3JtYXQge1xuICBwdWJsaWMgZm9ybWF0VGV4dChmb3JtYXQ6IHN0cmluZywgLi4uYXJnczogYW55W10pOiBzdHJpbmcge1xuICAgIHJldHVybiBTdHJpbmcoZm9ybWF0KS5yZXBsYWNlKFxuICAgICAgL1xceyhcXGQrKVxcfS9nLFxuICAgICAgZnVuY3Rpb24gKG1hdGNoLCBjYXB0dXJlKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGFyZ3NbcGFyc2VJbnQoY2FwdHVyZSwgMTApXTtcbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWZvcm1hdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9mb3JtYXQvYXBwLWZvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sWUFBWTtJQUNoQixVQUFVLENBQUMsTUFBYyxFQUFFLEdBQUcsSUFBVztRQUM5QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQzNCLFlBQVksRUFDWixVQUFVLEtBQUssRUFBRSxPQUFPO1lBQ3RCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7OEdBUlUsWUFBWTtrSEFBWixZQUFZLGNBRlgsTUFBTTs7MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lBcHBGb3JtYXQge1xuICBwdWJsaWMgZm9ybWF0VGV4dChmb3JtYXQ6IHN0cmluZywgLi4uYXJnczogYW55W10pOiBzdHJpbmcge1xuICAgIHJldHVybiBTdHJpbmcoZm9ybWF0KS5yZXBsYWNlKFxuICAgICAgL1xceyhcXGQrKVxcfS9nLFxuICAgICAgZnVuY3Rpb24gKG1hdGNoLCBjYXB0dXJlKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGFyZ3NbcGFyc2VJbnQoY2FwdHVyZSwgMTApXTtcbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,31 @@
1
+ import { Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./id.service";
4
+ /**
5
+ * Sets the element's `id` attribute to a unique ID. To reference this unique ID on other elements,
6
+ * such as in a `label` element's `for` attribute, assign this directive to a template reference
7
+ * variable, then use its `id` property.
8
+ */
9
+ export class SkyIdDirective {
10
+ get id() {
11
+ return this.#_id;
12
+ }
13
+ #_id;
14
+ constructor(elRef, renderer, idSvc) {
15
+ // Generate and apply the ID before the template is rendered
16
+ // to avoid a changed-after-checked error.
17
+ const id = idSvc.generateId();
18
+ renderer.setAttribute(elRef.nativeElement, 'id', id);
19
+ this.#_id = id;
20
+ }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyIdDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.SkyIdService }], target: i0.ɵɵFactoryTarget.Directive }); }
22
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: SkyIdDirective, selector: "[skyId]", exportAs: ["skyId"], ngImport: i0 }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyIdDirective, decorators: [{
25
+ type: Directive,
26
+ args: [{
27
+ selector: '[skyId]',
28
+ exportAs: 'skyId',
29
+ }]
30
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.SkyIdService }]; } });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2lkL2lkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUF5QixNQUFNLGVBQWUsQ0FBQzs7O0FBSWpFOzs7O0dBSUc7QUFLSCxNQUFNLE9BQU8sY0FBYztJQUN6QixJQUFXLEVBQUU7UUFDWCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELElBQUksQ0FBUztJQUViLFlBQVksS0FBaUIsRUFBRSxRQUFtQixFQUFFLEtBQW1CO1FBQ3JFLDREQUE0RDtRQUM1RCwwQ0FBMEM7UUFDMUMsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBRTlCLFFBQVEsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFckQsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUM7SUFDakIsQ0FBQzs4R0FmVSxjQUFjO2tHQUFkLGNBQWM7OzJGQUFkLGNBQWM7a0JBSjFCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFNBQVM7b0JBQ25CLFFBQVEsRUFBRSxPQUFPO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreUlkU2VydmljZSB9IGZyb20gJy4vaWQuc2VydmljZSc7XG5cbi8qKlxuICogU2V0cyB0aGUgZWxlbWVudCdzIGBpZGAgYXR0cmlidXRlIHRvIGEgdW5pcXVlIElELiBUbyByZWZlcmVuY2UgdGhpcyB1bmlxdWUgSUQgb24gb3RoZXIgZWxlbWVudHMsXG4gKiBzdWNoIGFzIGluIGEgYGxhYmVsYCBlbGVtZW50J3MgYGZvcmAgYXR0cmlidXRlLCBhc3NpZ24gdGhpcyBkaXJlY3RpdmUgdG8gYSB0ZW1wbGF0ZSByZWZlcmVuY2VcbiAqIHZhcmlhYmxlLCB0aGVuIHVzZSBpdHMgYGlkYCBwcm9wZXJ0eS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NreUlkXScsXG4gIGV4cG9ydEFzOiAnc2t5SWQnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lJZERpcmVjdGl2ZSB7XG4gIHB1YmxpYyBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy4jX2lkO1xuICB9XG5cbiAgI19pZDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKGVsUmVmOiBFbGVtZW50UmVmLCByZW5kZXJlcjogUmVuZGVyZXIyLCBpZFN2YzogU2t5SWRTZXJ2aWNlKSB7XG4gICAgLy8gR2VuZXJhdGUgYW5kIGFwcGx5IHRoZSBJRCBiZWZvcmUgdGhlIHRlbXBsYXRlIGlzIHJlbmRlcmVkXG4gICAgLy8gdG8gYXZvaWQgYSBjaGFuZ2VkLWFmdGVyLWNoZWNrZWQgZXJyb3IuXG4gICAgY29uc3QgaWQgPSBpZFN2Yy5nZW5lcmF0ZUlkKCk7XG5cbiAgICByZW5kZXJlci5zZXRBdHRyaWJ1dGUoZWxSZWYubmF0aXZlRWxlbWVudCwgJ2lkJywgaWQpO1xuXG4gICAgdGhpcy4jX2lkID0gaWQ7XG4gIH1cbn1cbiJdfQ==
@@ -2,15 +2,15 @@ import { NgModule } from '@angular/core';
2
2
  import { SkyIdDirective } from './id.directive';
3
3
  import * as i0 from "@angular/core";
4
4
  export class SkyIdModule {
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyIdModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: SkyIdModule, declarations: [SkyIdDirective], exports: [SkyIdDirective] }); }
7
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyIdModule }); }
5
8
  }
6
- SkyIdModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyIdModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
- SkyIdModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SkyIdModule, declarations: [SkyIdDirective], exports: [SkyIdDirective] });
8
- SkyIdModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyIdModule });
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyIdModule, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyIdModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
12
  declarations: [SkyIdDirective],
13
13
  exports: [SkyIdDirective],
14
14
  }]
15
15
  }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2lkL2lkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFNaEQsTUFBTSxPQUFPLFdBQVc7O3dHQUFYLFdBQVc7eUdBQVgsV0FBVyxpQkFIUCxjQUFjLGFBQ25CLGNBQWM7eUdBRWIsV0FBVzsyRkFBWCxXQUFXO2tCQUp2QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGNBQWMsQ0FBQztvQkFDOUIsT0FBTyxFQUFFLENBQUMsY0FBYyxDQUFDO2lCQUMxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreUlkRGlyZWN0aXZlIH0gZnJvbSAnLi9pZC5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTa3lJZERpcmVjdGl2ZV0sXG4gIGV4cG9ydHM6IFtTa3lJZERpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNreUlkTW9kdWxlIHt9XG4iXX0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL2lkL2lkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFNaEQsTUFBTSxPQUFPLFdBQVc7OEdBQVgsV0FBVzsrR0FBWCxXQUFXLGlCQUhQLGNBQWMsYUFDbkIsY0FBYzsrR0FFYixXQUFXOzsyRkFBWCxXQUFXO2tCQUp2QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGNBQWMsQ0FBQztvQkFDOUIsT0FBTyxFQUFFLENBQUMsY0FBYyxDQUFDO2lCQUMxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreUlkRGlyZWN0aXZlIH0gZnJvbSAnLi9pZC5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTa3lJZERpcmVjdGl2ZV0sXG4gIGV4cG9ydHM6IFtTa3lJZERpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNreUlkTW9kdWxlIHt9XG4iXX0=
@@ -12,13 +12,13 @@ export class SkyIdService {
12
12
  // elements with the same ID across sessions.
13
13
  return `sky-id-gen__${new Date().getTime()}__${idIndex}`;
14
14
  }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyIdService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
16
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyIdService, providedIn: 'root' }); }
15
17
  }
16
- SkyIdService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyIdService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
17
- SkyIdService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyIdService, providedIn: 'root' });
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyIdService, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyIdService, decorators: [{
19
19
  type: Injectable,
20
20
  args: [{
21
21
  providedIn: 'root',
22
22
  }]
23
23
  }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9pZC9pZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTNDLElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztBQUVoQjs7R0FFRztBQUlILE1BQU0sT0FBTyxZQUFZO0lBQ2hCLFVBQVU7UUFDZixPQUFPLEVBQUUsQ0FBQztRQUVWLGtHQUFrRztRQUNsRyxpR0FBaUc7UUFDakcsNkNBQTZDO1FBQzdDLE9BQU8sZUFBZSxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxLQUFLLE9BQU8sRUFBRSxDQUFDO0lBQzNELENBQUM7O3lHQVJVLFlBQVk7NkdBQVosWUFBWSxjQUZYLE1BQU07MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmxldCBpZEluZGV4ID0gMDtcblxuLyoqXG4gKiBHZW5lcmF0ZXMgdW5pcXVlIElEcyB0byBiZSB1c2VkIHdpdGggSFRNTCBlbGVtZW50cy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNreUlkU2VydmljZSB7XG4gIHB1YmxpYyBnZW5lcmF0ZUlkKCk6IHN0cmluZyB7XG4gICAgaWRJbmRleCsrO1xuXG4gICAgLy8gSW5jbHVkZSB0aW1lc3RhbXAgYW5kIGFuIGluY3JlbWVudGluZyBpbmRleCB0byBndWFyYW50ZWUgdW5pcXVlIElEcyBib3RoIGR1cmluZyB0aGUgYXBwbGljYXRpb25cbiAgICAvLyBsaWZlY3ljbGUgYXMgd2VsbCBhcyBhY3Jvc3Mgc2Vzc2lvbnMsIHNpbmNlIGJyb3dzZXJzIHdpbGwgdHJ5IHRvIGFwcGx5IGF1dG9jb21wbGV0ZSBvcHRpb25zIHRvXG4gICAgLy8gZWxlbWVudHMgd2l0aCB0aGUgc2FtZSBJRCBhY3Jvc3Mgc2Vzc2lvbnMuXG4gICAgcmV0dXJuIGBza3ktaWQtZ2VuX18ke25ldyBEYXRlKCkuZ2V0VGltZSgpfV9fJHtpZEluZGV4fWA7XG4gIH1cbn1cbiJdfQ==
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9pZC9pZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTNDLElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztBQUVoQjs7R0FFRztBQUlILE1BQU0sT0FBTyxZQUFZO0lBQ2hCLFVBQVU7UUFDZixPQUFPLEVBQUUsQ0FBQztRQUVWLGtHQUFrRztRQUNsRyxpR0FBaUc7UUFDakcsNkNBQTZDO1FBQzdDLE9BQU8sZUFBZSxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxLQUFLLE9BQU8sRUFBRSxDQUFDO0lBQzNELENBQUM7OEdBUlUsWUFBWTtrSEFBWixZQUFZLGNBRlgsTUFBTTs7MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmxldCBpZEluZGV4ID0gMDtcblxuLyoqXG4gKiBHZW5lcmF0ZXMgdW5pcXVlIElEcyB0byBiZSB1c2VkIHdpdGggSFRNTCBlbGVtZW50cy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNreUlkU2VydmljZSB7XG4gIHB1YmxpYyBnZW5lcmF0ZUlkKCk6IHN0cmluZyB7XG4gICAgaWRJbmRleCsrO1xuXG4gICAgLy8gSW5jbHVkZSB0aW1lc3RhbXAgYW5kIGFuIGluY3JlbWVudGluZyBpbmRleCB0byBndWFyYW50ZWUgdW5pcXVlIElEcyBib3RoIGR1cmluZyB0aGUgYXBwbGljYXRpb25cbiAgICAvLyBsaWZlY3ljbGUgYXMgd2VsbCBhcyBhY3Jvc3Mgc2Vzc2lvbnMsIHNpbmNlIGJyb3dzZXJzIHdpbGwgdHJ5IHRvIGFwcGx5IGF1dG9jb21wbGV0ZSBvcHRpb25zIHRvXG4gICAgLy8gZWxlbWVudHMgd2l0aCB0aGUgc2FtZSBJRCBhY3Jvc3Mgc2Vzc2lvbnMuXG4gICAgcmV0dXJuIGBza3ktaWQtZ2VuX18ke25ldyBEYXRlKCkuZ2V0VGltZSgpfV9fJHtpZEluZGV4fWA7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,22 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * @internal
6
+ */
7
+ export class SkyLayoutHostService {
8
+ get hostLayoutForChild() {
9
+ return this.#hostLayoutForChildObs;
10
+ }
11
+ #hostLayoutForChild = new Subject();
12
+ #hostLayoutForChildObs = this.#hostLayoutForChild.asObservable();
13
+ setHostLayoutForChild(layout) {
14
+ this.#hostLayoutForChild.next(layout);
15
+ }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyLayoutHostService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
17
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyLayoutHostService }); }
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: SkyLayoutHostService, decorators: [{
20
+ type: Injectable
21
+ }] });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWhvc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9sYXlvdXQtaG9zdC9sYXlvdXQtaG9zdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFJM0M7O0dBRUc7QUFFSCxNQUFNLE9BQU8sb0JBQW9CO0lBQy9CLElBQVcsa0JBQWtCO1FBQzNCLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDO0lBQ3JDLENBQUM7SUFFRCxtQkFBbUIsR0FBRyxJQUFJLE9BQU8sRUFBNkIsQ0FBQztJQUMvRCxzQkFBc0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxFQUFFLENBQUM7SUFFMUQscUJBQXFCLENBQUMsTUFBaUM7UUFDNUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QyxDQUFDOzhHQVZVLG9CQUFvQjtrSEFBcEIsb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFNreUxheW91dEhvc3RGb3JDaGlsZEFyZ3MgfSBmcm9tICcuL2xheW91dC1ob3N0LWZvci1jaGlsZC1hcmdzJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNreUxheW91dEhvc3RTZXJ2aWNlIHtcbiAgcHVibGljIGdldCBob3N0TGF5b3V0Rm9yQ2hpbGQoKTogT2JzZXJ2YWJsZTxTa3lMYXlvdXRIb3N0Rm9yQ2hpbGRBcmdzPiB7XG4gICAgcmV0dXJuIHRoaXMuI2hvc3RMYXlvdXRGb3JDaGlsZE9icztcbiAgfVxuXG4gICNob3N0TGF5b3V0Rm9yQ2hpbGQgPSBuZXcgU3ViamVjdDxTa3lMYXlvdXRIb3N0Rm9yQ2hpbGRBcmdzPigpO1xuICAjaG9zdExheW91dEZvckNoaWxkT2JzID0gdGhpcy4jaG9zdExheW91dEZvckNoaWxkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHB1YmxpYyBzZXRIb3N0TGF5b3V0Rm9yQ2hpbGQobGF5b3V0OiBTa3lMYXlvdXRIb3N0Rm9yQ2hpbGRBcmdzKTogdm9pZCB7XG4gICAgdGhpcy4jaG9zdExheW91dEZvckNoaWxkLm5leHQobGF5b3V0KTtcbiAgfVxufVxuIl19