@skyux/core 11.31.0 → 12.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 (141) hide show
  1. package/documentation.json +520 -516
  2. package/fesm2022/skyux-core-testing.mjs +26 -26
  3. package/fesm2022/skyux-core-testing.mjs.map +1 -1
  4. package/fesm2022/skyux-core.mjs +180 -174
  5. package/fesm2022/skyux-core.mjs.map +1 -1
  6. package/package.json +8 -12
  7. package/esm2022/index.mjs +0 -67
  8. package/esm2022/lib/modules/adapter-service/adapter.module.mjs +0 -16
  9. package/esm2022/lib/modules/adapter-service/adapter.service.mjs +0 -205
  10. package/esm2022/lib/modules/adapter-service/focusable-children-options.mjs +0 -2
  11. package/esm2022/lib/modules/affix/affix-auto-fit-context.mjs +0 -12
  12. package/esm2022/lib/modules/affix/affix-config.mjs +0 -2
  13. package/esm2022/lib/modules/affix/affix-horizontal-alignment.mjs +0 -2
  14. package/esm2022/lib/modules/affix/affix-offset-change.mjs +0 -2
  15. package/esm2022/lib/modules/affix/affix-offset.mjs +0 -2
  16. package/esm2022/lib/modules/affix/affix-placement-change.mjs +0 -2
  17. package/esm2022/lib/modules/affix/affix-placement.mjs +0 -2
  18. package/esm2022/lib/modules/affix/affix-position.mjs +0 -2
  19. package/esm2022/lib/modules/affix/affix-rect.mjs +0 -2
  20. package/esm2022/lib/modules/affix/affix-utils.mjs +0 -18
  21. package/esm2022/lib/modules/affix/affix-vertical-alignment.mjs +0 -2
  22. package/esm2022/lib/modules/affix/affix.directive.mjs +0 -116
  23. package/esm2022/lib/modules/affix/affix.module.mjs +0 -18
  24. package/esm2022/lib/modules/affix/affix.service.mjs +0 -48
  25. package/esm2022/lib/modules/affix/affixer.mjs +0 -426
  26. package/esm2022/lib/modules/affix/dom-utils.mjs +0 -126
  27. package/esm2022/lib/modules/breakpoint-observer/breakpoint-observer.mjs +0 -2
  28. package/esm2022/lib/modules/breakpoint-observer/breakpoint-observer.token.mjs +0 -7
  29. package/esm2022/lib/modules/breakpoint-observer/breakpoint-utils.mjs +0 -38
  30. package/esm2022/lib/modules/breakpoint-observer/breakpoint.mjs +0 -6
  31. package/esm2022/lib/modules/breakpoint-observer/container-breakpoint-observer.mjs +0 -64
  32. package/esm2022/lib/modules/breakpoint-observer/media-breakpoint-observer.mjs +0 -58
  33. package/esm2022/lib/modules/breakpoint-observer/provide-breakpoint-observer.mjs +0 -24
  34. package/esm2022/lib/modules/breakpoint-observer/responsive-host.directive.mjs +0 -55
  35. package/esm2022/lib/modules/content-info-provider/content-info-descriptor.mjs +0 -2
  36. package/esm2022/lib/modules/content-info-provider/content-info-provider.mjs +0 -24
  37. package/esm2022/lib/modules/content-info-provider/content-info.mjs +0 -2
  38. package/esm2022/lib/modules/default-input-provider/default-input-provider.mjs +0 -26
  39. package/esm2022/lib/modules/dock/dock-dom-adapter.service.mjs +0 -81
  40. package/esm2022/lib/modules/dock/dock-insert-component-config.mjs +0 -2
  41. package/esm2022/lib/modules/dock/dock-item-config.mjs +0 -2
  42. package/esm2022/lib/modules/dock/dock-item-reference.mjs +0 -2
  43. package/esm2022/lib/modules/dock/dock-item.mjs +0 -31
  44. package/esm2022/lib/modules/dock/dock-location.mjs +0 -19
  45. package/esm2022/lib/modules/dock/dock-options.mjs +0 -2
  46. package/esm2022/lib/modules/dock/dock.component.mjs +0 -101
  47. package/esm2022/lib/modules/dock/dock.module.mjs +0 -15
  48. package/esm2022/lib/modules/dock/dock.service.mjs +0 -95
  49. package/esm2022/lib/modules/dock/sort-by-stack-order.mjs +0 -13
  50. package/esm2022/lib/modules/dynamic-component/dynamic-component-location.mjs +0 -27
  51. package/esm2022/lib/modules/dynamic-component/dynamic-component-options.mjs +0 -2
  52. package/esm2022/lib/modules/dynamic-component/dynamic-component.module.mjs +0 -17
  53. package/esm2022/lib/modules/dynamic-component/dynamic-component.service.mjs +0 -113
  54. package/esm2022/lib/modules/file-reader/file-reader.service.mjs +0 -32
  55. package/esm2022/lib/modules/format/app-format.mjs +0 -18
  56. package/esm2022/lib/modules/help/help-global-options-token.mjs +0 -6
  57. package/esm2022/lib/modules/help/help-global-options.mjs +0 -2
  58. package/esm2022/lib/modules/help/help-open-args.mjs +0 -2
  59. package/esm2022/lib/modules/help/help-update-args.mjs +0 -2
  60. package/esm2022/lib/modules/help/help.service.mjs +0 -20
  61. package/esm2022/lib/modules/id/id.directive.mjs +0 -31
  62. package/esm2022/lib/modules/id/id.module.mjs +0 -16
  63. package/esm2022/lib/modules/id/id.service.mjs +0 -24
  64. package/esm2022/lib/modules/layout-host/layout-host-for-child-args.mjs +0 -2
  65. package/esm2022/lib/modules/layout-host/layout-host.service.mjs +0 -22
  66. package/esm2022/lib/modules/live-announcer/live-announcer.service.mjs +0 -81
  67. package/esm2022/lib/modules/live-announcer/types/live-announcer-args.mjs +0 -2
  68. package/esm2022/lib/modules/live-announcer/types/live-announcer-politeness.mjs +0 -2
  69. package/esm2022/lib/modules/log/log.module.mjs +0 -16
  70. package/esm2022/lib/modules/log/log.service.mjs +0 -148
  71. package/esm2022/lib/modules/log/types/log-deprecation-args.mjs +0 -2
  72. package/esm2022/lib/modules/log/types/log-level-token.mjs +0 -6
  73. package/esm2022/lib/modules/log/types/log-level.mjs +0 -10
  74. package/esm2022/lib/modules/media-query/media-breakpoints.mjs +0 -24
  75. package/esm2022/lib/modules/media-query/media-query-listener.mjs +0 -2
  76. package/esm2022/lib/modules/media-query/media-query.module.mjs +0 -16
  77. package/esm2022/lib/modules/media-query/media-query.service.mjs +0 -82
  78. package/esm2022/lib/modules/mutation/mutation-observer-service.mjs +0 -19
  79. package/esm2022/lib/modules/numeric/numeric-symbol.mjs +0 -2
  80. package/esm2022/lib/modules/numeric/numeric.module.mjs +0 -19
  81. package/esm2022/lib/modules/numeric/numeric.options.mjs +0 -24
  82. package/esm2022/lib/modules/numeric/numeric.pipe.mjs +0 -84
  83. package/esm2022/lib/modules/numeric/numeric.service.mjs +0 -200
  84. package/esm2022/lib/modules/overlay/overlay-adapter.service.mjs +0 -74
  85. package/esm2022/lib/modules/overlay/overlay-config.mjs +0 -2
  86. package/esm2022/lib/modules/overlay/overlay-context.mjs +0 -10
  87. package/esm2022/lib/modules/overlay/overlay-instance.mjs +0 -62
  88. package/esm2022/lib/modules/overlay/overlay-position.mjs +0 -2
  89. package/esm2022/lib/modules/overlay/overlay.component.mjs +0 -203
  90. package/esm2022/lib/modules/overlay/overlay.module.mjs +0 -15
  91. package/esm2022/lib/modules/overlay/overlay.service.mjs +0 -134
  92. package/esm2022/lib/modules/percent-pipe/percent-pipe.module.mjs +0 -19
  93. package/esm2022/lib/modules/percent-pipe/percent.pipe.mjs +0 -56
  94. package/esm2022/lib/modules/resize-observer/resize-observer-media-query.service.mjs +0 -153
  95. package/esm2022/lib/modules/resize-observer/resize-observer.service.mjs +0 -115
  96. package/esm2022/lib/modules/screen-reader-label/screen-reader-label.directive.mjs +0 -66
  97. package/esm2022/lib/modules/scroll-shadow/scroll-shadow-event-args.mjs +0 -2
  98. package/esm2022/lib/modules/scroll-shadow/scroll-shadow.directive.mjs +0 -123
  99. package/esm2022/lib/modules/scrollable-host/scrollable-host.service.mjs +0 -223
  100. package/esm2022/lib/modules/shared/number-format/number-format-utility.mjs +0 -72
  101. package/esm2022/lib/modules/shared/sky-core-resources.module.mjs +0 -34
  102. package/esm2022/lib/modules/stacking-context/stacking-context-token.mjs +0 -6
  103. package/esm2022/lib/modules/stacking-context/stacking-context.mjs +0 -2
  104. package/esm2022/lib/modules/title/set-title-args.mjs +0 -2
  105. package/esm2022/lib/modules/title/title.service.mjs +0 -31
  106. package/esm2022/lib/modules/trim/trim.directive.mjs +0 -64
  107. package/esm2022/lib/modules/trim/trim.module.mjs +0 -16
  108. package/esm2022/lib/modules/ui-config/ui-config.service.mjs +0 -21
  109. package/esm2022/lib/modules/viewkeeper/viewkeeper-boundary-info.mjs +0 -2
  110. package/esm2022/lib/modules/viewkeeper/viewkeeper-fixed-styles.mjs +0 -2
  111. package/esm2022/lib/modules/viewkeeper/viewkeeper-host-options.mjs +0 -10
  112. package/esm2022/lib/modules/viewkeeper/viewkeeper-offset.mjs +0 -2
  113. package/esm2022/lib/modules/viewkeeper/viewkeeper-options.mjs +0 -2
  114. package/esm2022/lib/modules/viewkeeper/viewkeeper.directive.mjs +0 -131
  115. package/esm2022/lib/modules/viewkeeper/viewkeeper.mjs +0 -296
  116. package/esm2022/lib/modules/viewkeeper/viewkeeper.module.mjs +0 -16
  117. package/esm2022/lib/modules/viewkeeper/viewkeeper.service.mjs +0 -39
  118. package/esm2022/lib/modules/window/window-ref.mjs +0 -30
  119. package/esm2022/skyux-core.mjs +0 -5
  120. package/esm2022/testing/legacy/core-testing.module.mjs +0 -32
  121. package/esm2022/testing/legacy/mock-media-query.service.mjs +0 -47
  122. package/esm2022/testing/legacy/mock-ui-config.service.mjs +0 -62
  123. package/esm2022/testing/legacy/resize-observer-mock.mjs +0 -50
  124. package/esm2022/testing/modules/file-reader/file-reader-testing.service.mjs +0 -19
  125. package/esm2022/testing/modules/file-reader/provide-file-reader-testing.mjs +0 -22
  126. package/esm2022/testing/modules/help/help-testing-controller.mjs +0 -28
  127. package/esm2022/testing/modules/help/help-testing.module.mjs +0 -32
  128. package/esm2022/testing/modules/help/help-testing.service.mjs +0 -37
  129. package/esm2022/testing/modules/media-query/breakpoint-observer-testing.mjs +0 -26
  130. package/esm2022/testing/modules/media-query/media-query-testing-controller.mjs +0 -22
  131. package/esm2022/testing/modules/media-query/provide-media-query-testing.mjs +0 -26
  132. package/esm2022/testing/modules/overlay/overlay-harness-filters.mjs +0 -2
  133. package/esm2022/testing/modules/overlay/overlay-harness.mjs +0 -20
  134. package/esm2022/testing/public-api.mjs +0 -15
  135. package/esm2022/testing/shared/component-harness.mjs +0 -13
  136. package/esm2022/testing/shared/harness-filters.mjs +0 -2
  137. package/esm2022/testing/shared/harness-utility.mjs +0 -7
  138. package/esm2022/testing/shared/input-harness.mjs +0 -63
  139. package/esm2022/testing/shared/queryable-component-harness.mjs +0 -43
  140. package/esm2022/testing/skyux-core-testing.mjs +0 -5
  141. package/esm2022/version.mjs +0 -19
@@ -1,203 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EnvironmentInjector, HostBinding, ViewChild, ViewContainerRef, createEnvironmentInjector, inject, } from '@angular/core';
3
- import { NavigationStart, Router } from '@angular/router';
4
- import { BehaviorSubject, ReplaySubject, Subject, fromEvent, } from 'rxjs';
5
- import { takeUntil } from 'rxjs/operators';
6
- import { SkyCoreAdapterService } from '../adapter-service/adapter.service';
7
- import { SkyIdService } from '../id/id.service';
8
- import { SKY_STACKING_CONTEXT } from '../stacking-context/stacking-context-token';
9
- import { SkyOverlayAdapterService } from './overlay-adapter.service';
10
- import { SkyOverlayContext } from './overlay-context';
11
- import * as i0 from "@angular/core";
12
- import * as i1 from "@angular/common";
13
- const POSITION_DEFAULT = 'fixed';
14
- /**
15
- * Omnibar is 1000.
16
- * See: https://github.com/blackbaud/auth-client/blob/master/src/omnibar/omnibar.ts#L139
17
- * ---
18
- * Modals start their z-indexes at 1040. However, each modal's z-index is a multiple of 10, so it
19
- * will be difficult to reliably predict a z-index that will always appear above all other
20
- * layers. Starting the z-index for overlays at a number much greater than modals will accommodate
21
- * the most reasonable of scenarios.
22
- * See: https://github.com/blackbaud/skyux-modals/blob/master/src/app/public/modules/modal/modal-host.service.ts#L22
23
- * (NOTE: It should be noted that modals do not use the overlay service, which is something we
24
- * should do in the near future to make sure z-indexes are predictable across all component
25
- * libraries.)
26
- */
27
- let uniqueZIndex = 5000;
28
- /**
29
- * @internal
30
- */
31
- export class SkyOverlayComponent {
32
- get backdropClick() {
33
- return this.#backdropClickObs;
34
- }
35
- get closed() {
36
- return this.#closedObs;
37
- }
38
- #backdropClick;
39
- #backdropClickObs;
40
- #closed;
41
- #closedObs;
42
- #ngUnsubscribe;
43
- #routerSubscription;
44
- #siblingAriaHiddenCache;
45
- #adapter;
46
- #changeDetector;
47
- #context;
48
- #coreAdapter;
49
- #elementRef;
50
- #environmentInjector;
51
- #idSvc;
52
- #router;
53
- constructor() {
54
- this.wrapperClass = '';
55
- this.enablePointerEvents = false;
56
- this.showBackdrop = false;
57
- this.zIndex = `${++uniqueZIndex}`;
58
- this.clipPath$ = new ReplaySubject(1);
59
- this.position = POSITION_DEFAULT;
60
- this.#ngUnsubscribe = new Subject();
61
- this.#siblingAriaHiddenCache = new Map();
62
- this.#adapter = inject(SkyOverlayAdapterService);
63
- this.#changeDetector = inject(ChangeDetectorRef);
64
- this.#context = inject(SkyOverlayContext);
65
- this.#coreAdapter = inject(SkyCoreAdapterService);
66
- this.#elementRef = inject(ElementRef);
67
- this.#environmentInjector = inject(EnvironmentInjector);
68
- this.#idSvc = inject(SkyIdService);
69
- this.#router = inject(Router, { optional: true });
70
- this.id = this.#idSvc.generateId();
71
- this.#backdropClick = new Subject();
72
- this.#closed = new Subject();
73
- this.#backdropClickObs = this.#backdropClick.asObservable();
74
- this.#closedObs = this.#closed.asObservable();
75
- }
76
- ngOnInit() {
77
- this.#applyConfig(this.#context.config);
78
- setTimeout(() => {
79
- this.#addBackdropClickListener();
80
- });
81
- if (this.#context.config.closeOnNavigation) {
82
- this.#addRouteListener();
83
- }
84
- if (this.#context.config.hideOthersFromScreenReaders) {
85
- this.#siblingAriaHiddenCache = this.#adapter.addAriaHiddenToSiblings(this.#elementRef);
86
- }
87
- }
88
- ngOnDestroy() {
89
- this.#removeRouteListener();
90
- this.#ngUnsubscribe.next();
91
- this.#ngUnsubscribe.complete();
92
- this.#backdropClick.complete();
93
- this.#adapter.restoreAriaHiddenForSiblings(this.#siblingAriaHiddenCache);
94
- this.#closed.next();
95
- this.#closed.complete();
96
- }
97
- attachComponent(component, providers = []) {
98
- /*istanbul ignore if: untestable*/
99
- if (!this.targetRef) {
100
- throw new Error('[SkyOverlayComponent] Could not attach the component because the target element could not be found.');
101
- }
102
- this.targetRef.clear();
103
- const environmentInjector = createEnvironmentInjector([
104
- {
105
- provide: SKY_STACKING_CONTEXT,
106
- useValue: {
107
- zIndex: new BehaviorSubject(parseInt(this.zIndex, 10))
108
- .asObservable()
109
- .pipe(takeUntil(this.#ngUnsubscribe)),
110
- },
111
- },
112
- ...providers,
113
- ], this.#environmentInjector);
114
- const componentRef = this.targetRef.createComponent(component, {
115
- environmentInjector,
116
- });
117
- // Run an initial change detection cycle after the component has been created.
118
- componentRef.changeDetectorRef.detectChanges();
119
- return componentRef;
120
- }
121
- attachTemplate(templateRef, context) {
122
- /*istanbul ignore if: untestable*/
123
- if (!this.targetRef) {
124
- throw new Error('[SkyOverlayComponent] Could not attach the template because the target element could not be found.');
125
- }
126
- this.targetRef.clear();
127
- return this.targetRef.createEmbeddedView(templateRef, context, {
128
- injector: this.#environmentInjector,
129
- });
130
- }
131
- updateClipPath(clipPath) {
132
- this.clipPath$.next(clipPath);
133
- }
134
- #applyConfig(config) {
135
- this.wrapperClass = config.wrapperClass || '';
136
- this.showBackdrop = !!config.showBackdrop;
137
- this.enablePointerEvents = !!config.enablePointerEvents;
138
- this.position = config.position || POSITION_DEFAULT;
139
- this.#changeDetector.markForCheck();
140
- }
141
- #addBackdropClickListener() {
142
- fromEvent(window.document, 'click')
143
- .pipe(takeUntil(this.#ngUnsubscribe))
144
- .subscribe((event) => {
145
- if (event.target && this.overlayContentRef && this.overlayRef) {
146
- const isChild = this.overlayContentRef.nativeElement.contains(event.target);
147
- const isAbove = this.#coreAdapter.isTargetAboveElement(event.target, this.overlayRef.nativeElement);
148
- /* istanbul ignore else */
149
- if (!isChild && !isAbove) {
150
- this.#backdropClick.next();
151
- if (this.#context.config.enableClose) {
152
- this.#closed.next();
153
- }
154
- }
155
- }
156
- });
157
- }
158
- #addRouteListener() {
159
- /*istanbul ignore else*/
160
- if (this.#router) {
161
- this.#routerSubscription = this.#router.events.subscribe((event) => {
162
- /* istanbul ignore else */
163
- if (event instanceof NavigationStart) {
164
- this.#closed.next();
165
- }
166
- });
167
- }
168
- }
169
- #removeRouteListener() {
170
- if (this.#routerSubscription) {
171
- this.#routerSubscription.unsubscribe();
172
- this.#routerSubscription = undefined;
173
- }
174
- }
175
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
176
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SkyOverlayComponent, isStandalone: true, selector: "sky-overlay", host: { properties: { "id": "this.id" } }, viewQueries: [{ propertyName: "overlayContentRef", first: true, predicate: ["overlayContentRef"], descendants: true, read: ElementRef, static: true }, { propertyName: "overlayRef", first: true, predicate: ["overlayRef"], descendants: true, read: ElementRef, static: true }, { propertyName: "targetRef", first: true, predicate: ["target"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<div\n #overlayRef\n [class]=\"'sky-overlay-position-' + position + ' ' + wrapperClass\"\n [style.z-index]=\"zIndex\"\n [style.clip-path]=\"clipPath$ | async\"\n [ngClass]=\"{\n 'enable-pointer-events-pass-through': enablePointerEvents,\n 'sky-overlay': true\n }\"\n>\n <div #overlayContentRef class=\"sky-overlay-content\">\n <ng-template #target />\n </div>\n @if (showBackdrop) {\n <div class=\"sky-overlay-backdrop\"></div>\n }\n</div>\n", styles: [".sky-overlay{inset:0;width:100%;height:100%;display:flex;pointer-events:auto}.sky-overlay-position-absolute{position:absolute}.sky-overlay-position-fixed{position:fixed}.sky-overlay-content{position:relative;z-index:1;display:inline-flex;align-self:start;pointer-events:auto}.sky-overlay-backdrop{background:#00000080;inset:0;width:100%;height:100%;position:absolute}.enable-pointer-events-pass-through,.enable-pointer-events-pass-through .sky-overlay-backdrop{pointer-events:none}.enable-pointer-events-pass-through .sky-overlay-content{pointer-events:auto}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
177
- }
178
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyOverlayComponent, decorators: [{
179
- type: Component,
180
- args: [{ standalone: true, selector: 'sky-overlay', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule], template: "<div\n #overlayRef\n [class]=\"'sky-overlay-position-' + position + ' ' + wrapperClass\"\n [style.z-index]=\"zIndex\"\n [style.clip-path]=\"clipPath$ | async\"\n [ngClass]=\"{\n 'enable-pointer-events-pass-through': enablePointerEvents,\n 'sky-overlay': true\n }\"\n>\n <div #overlayContentRef class=\"sky-overlay-content\">\n <ng-template #target />\n </div>\n @if (showBackdrop) {\n <div class=\"sky-overlay-backdrop\"></div>\n }\n</div>\n", styles: [".sky-overlay{inset:0;width:100%;height:100%;display:flex;pointer-events:auto}.sky-overlay-position-absolute{position:absolute}.sky-overlay-position-fixed{position:fixed}.sky-overlay-content{position:relative;z-index:1;display:inline-flex;align-self:start;pointer-events:auto}.sky-overlay-backdrop{background:#00000080;inset:0;width:100%;height:100%;position:absolute}.enable-pointer-events-pass-through,.enable-pointer-events-pass-through .sky-overlay-backdrop{pointer-events:none}.enable-pointer-events-pass-through .sky-overlay-content{pointer-events:auto}\n"] }]
181
- }], ctorParameters: () => [], propDecorators: { id: [{
182
- type: HostBinding,
183
- args: ['id']
184
- }], overlayContentRef: [{
185
- type: ViewChild,
186
- args: ['overlayContentRef', {
187
- read: ElementRef,
188
- static: true,
189
- }]
190
- }], overlayRef: [{
191
- type: ViewChild,
192
- args: ['overlayRef', {
193
- read: ElementRef,
194
- static: true,
195
- }]
196
- }], targetRef: [{
197
- type: ViewChild,
198
- args: ['target', {
199
- read: ViewContainerRef,
200
- static: true,
201
- }]
202
- }] } });
203
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvb3ZlcmxheS9vdmVybGF5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9vdmVybGF5L292ZXJsYXkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFFVCxVQUFVLEVBRVYsbUJBQW1CLEVBQ25CLFdBQVcsRUFNWCxTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLHlCQUF5QixFQUN6QixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUxRCxPQUFPLEVBQ0wsZUFBZSxFQUVmLGFBQWEsRUFDYixPQUFPLEVBRVAsU0FBUyxHQUNWLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUVsRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVyRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBR3RELE1BQU0sZ0JBQWdCLEdBQXVCLE9BQU8sQ0FBQztBQUVyRDs7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QUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxTQUFTLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7K0dBeE5VLG1CQUFtQjttR0FBbkIsbUJBQW1CLHFOQXlCdEIsVUFBVSxpSEFNVixVQUFVLDRHQU1WLGdCQUFnQiwyQ0MxRzFCLGlkQWlCQSx5bUJEa0RZLFlBQVk7OzRGQUVYLG1CQUFtQjtrQkFSL0IsU0FBUztpQ0FDSSxJQUFJLFlBQ04sYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDLENBQUMsWUFBWSxDQUFDO3dEQWdCaEIsRUFBRTtzQkFEUixXQUFXO3VCQUFDLElBQUk7Z0JBZVYsaUJBQWlCO3NCQUp2QixTQUFTO3VCQUFDLG1CQUFtQixFQUFFO3dCQUM5QixJQUFJLEVBQUUsVUFBVTt3QkFDaEIsTUFBTSxFQUFFLElBQUk7cUJBQ2I7Z0JBT00sVUFBVTtzQkFKaEIsU0FBUzt1QkFBQyxZQUFZLEVBQUU7d0JBQ3ZCLElBQUksRUFBRSxVQUFVO3dCQUNoQixNQUFNLEVBQUUsSUFBSTtxQkFDYjtnQkFPTSxTQUFTO3NCQUpmLFNBQVM7dUJBQUMsUUFBUSxFQUFFO3dCQUNuQixJQUFJLEVBQUUsZ0JBQWdCO3dCQUN0QixNQUFNLEVBQUUsSUFBSTtxQkFDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50UmVmLFxuICBFbGVtZW50UmVmLFxuICBFbWJlZGRlZFZpZXdSZWYsXG4gIEVudmlyb25tZW50SW5qZWN0b3IsXG4gIEhvc3RCaW5kaW5nLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgU3RhdGljUHJvdmlkZXIsXG4gIFRlbXBsYXRlUmVmLFxuICBUeXBlLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIGNyZWF0ZUVudmlyb25tZW50SW5qZWN0b3IsXG4gIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgT2JzZXJ2YWJsZSxcbiAgUmVwbGF5U3ViamVjdCxcbiAgU3ViamVjdCxcbiAgU3Vic2NyaXB0aW9uLFxuICBmcm9tRXZlbnQsXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lDb3JlQWRhcHRlclNlcnZpY2UgfSBmcm9tICcuLi9hZGFwdGVyLXNlcnZpY2UvYWRhcHRlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNreUlkU2VydmljZSB9IGZyb20gJy4uL2lkL2lkLnNlcnZpY2UnO1xuaW1wb3J0IHsgU0tZX1NUQUNLSU5HX0NPTlRFWFQgfSBmcm9tICcuLi9zdGFja2luZy1jb250ZXh0L3N0YWNraW5nLWNvbnRleHQtdG9rZW4nO1xuXG5pbXBvcnQgeyBTa3lPdmVybGF5QWRhcHRlclNlcnZpY2UgfSBmcm9tICcuL292ZXJsYXktYWRhcHRlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNreU92ZXJsYXlDb25maWcgfSBmcm9tICcuL292ZXJsYXktY29uZmlnJztcbmltcG9ydCB7IFNreU92ZXJsYXlDb250ZXh0IH0gZnJvbSAnLi9vdmVybGF5LWNvbnRleHQnO1xuaW1wb3J0IHsgU2t5T3ZlcmxheVBvc2l0aW9uIH0gZnJvbSAnLi9vdmVybGF5LXBvc2l0aW9uJztcblxuY29uc3QgUE9TSVRJT05fREVGQVVMVDogU2t5T3ZlcmxheVBvc2l0aW9uID0gJ2ZpeGVkJztcblxuLyoqXG4gKiBPbW5pYmFyIGlzIDEwMDAuXG4gKiBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ibGFja2JhdWQvYXV0aC1jbGllbnQvYmxvYi9tYXN0ZXIvc3JjL29tbmliYXIvb21uaWJhci50cyNMMTM5XG4gKiAtLS1cbiAqIE1vZGFscyBzdGFydCB0aGVpciB6LWluZGV4ZXMgYXQgMTA0MC4gSG93ZXZlciwgZWFjaCBtb2RhbCdzIHotaW5kZXggaXMgYSBtdWx0aXBsZSBvZiAxMCwgc28gaXRcbiAqIHdpbGwgYmUgZGlmZmljdWx0IHRvIHJlbGlhYmx5IHByZWRpY3QgYSB6LWluZGV4IHRoYXQgd2lsbCBhbHdheXMgYXBwZWFyIGFib3ZlIGFsbCBvdGhlclxuICogbGF5ZXJzLiBTdGFydGluZyB0aGUgei1pbmRleCBmb3Igb3ZlcmxheXMgYXQgYSBudW1iZXIgbXVjaCBncmVhdGVyIHRoYW4gbW9kYWxzIHdpbGwgYWNjb21tb2RhdGVcbiAqIHRoZSBtb3N0IHJlYXNvbmFibGUgb2Ygc2NlbmFyaW9zLlxuICogU2VlOiBodHRwczovL2dpdGh1Yi5jb20vYmxhY2tiYXVkL3NreXV4LW1vZGFscy9ibG9iL21hc3Rlci9zcmMvYXBwL3B1YmxpYy9tb2R1bGVzL21vZGFsL21vZGFsLWhvc3Quc2VydmljZS50cyNMMjJcbiAqIChOT1RFOiBJdCBzaG91bGQgYmUgbm90ZWQgdGhhdCBtb2RhbHMgZG8gbm90IHVzZSB0aGUgb3ZlcmxheSBzZXJ2aWNlLCB3aGljaCBpcyBzb21ldGhpbmcgd2VcbiAqIHNob3VsZCBkbyBpbiB0aGUgbmVhciBmdXR1cmUgdG8gbWFrZSBzdXJlIHotaW5kZXhlcyBhcmUgcHJlZGljdGFibGUgYWNyb3NzIGFsbCBjb21wb25lbnRcbiAqIGxpYnJhcmllcy4pXG4gKi9cbmxldCB1bmlxdWVaSW5kZXggPSA1MDAwO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdza3ktb3ZlcmxheScsXG4gIHRlbXBsYXRlVXJsOiAnLi9vdmVybGF5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb3ZlcmxheS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNreU92ZXJsYXlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHB1YmxpYyB3cmFwcGVyQ2xhc3MgPSAnJztcblxuICBwdWJsaWMgZ2V0IGJhY2tkcm9wQ2xpY2soKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuI2JhY2tkcm9wQ2xpY2tPYnM7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNsb3NlZCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy4jY2xvc2VkT2JzO1xuICB9XG5cbiAgcHVibGljIGVuYWJsZVBvaW50ZXJFdmVudHMgPSBmYWxzZTtcblxuICBASG9zdEJpbmRpbmcoJ2lkJylcbiAgcHVibGljIGlkOiBzdHJpbmc7XG5cbiAgcHVibGljIHNob3dCYWNrZHJvcCA9IGZhbHNlO1xuXG4gIHB1YmxpYyB6SW5kZXggPSBgJHsrK3VuaXF1ZVpJbmRleH1gO1xuXG4gIHByb3RlY3RlZCBjbGlwUGF0aCQgPSBuZXcgUmVwbGF5U3ViamVjdDxzdHJpbmcgfCB1bmRlZmluZWQ+KDEpO1xuXG4gIHByb3RlY3RlZCBwb3NpdGlvbiA9IFBPU0lUSU9OX0RFRkFVTFQ7XG5cbiAgQFZpZXdDaGlsZCgnb3ZlcmxheUNvbnRlbnRSZWYnLCB7XG4gICAgcmVhZDogRWxlbWVudFJlZixcbiAgICBzdGF0aWM6IHRydWUsXG4gIH0pXG4gIHB1YmxpYyBvdmVybGF5Q29udGVudFJlZjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcblxuICBAVmlld0NoaWxkKCdvdmVybGF5UmVmJywge1xuICAgIHJlYWQ6IEVsZW1lbnRSZWYsXG4gICAgc3RhdGljOiB0cnVlLFxuICB9KVxuICBwdWJsaWMgb3ZlcmxheVJlZjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcblxuICBAVmlld0NoaWxkKCd0YXJnZXQnLCB7XG4gICAgcmVhZDogVmlld0NvbnRhaW5lclJlZixcbiAgICBzdGF0aWM6IHRydWUsXG4gIH0pXG4gIHB1YmxpYyB0YXJnZXRSZWY6IFZpZXdDb250YWluZXJSZWYgfCB1bmRlZmluZWQ7XG5cbiAgI2JhY2tkcm9wQ2xpY2s6IFN1YmplY3Q8dm9pZD47XG5cbiAgI2JhY2tkcm9wQ2xpY2tPYnM6IE9ic2VydmFibGU8dm9pZD47XG5cbiAgI2Nsb3NlZDogU3ViamVjdDx2b2lkPjtcblxuICAjY2xvc2VkT2JzOiBPYnNlcnZhYmxlPHZvaWQ+O1xuXG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjcm91dGVyU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG5cbiAgI3NpYmxpbmdBcmlhSGlkZGVuQ2FjaGUgPSBuZXcgTWFwPEVsZW1lbnQsIHN0cmluZyB8IG51bGw+KCk7XG5cbiAgcmVhZG9ubHkgI2FkYXB0ZXIgPSBpbmplY3QoU2t5T3ZlcmxheUFkYXB0ZXJTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgI2NoYW5nZURldGVjdG9yID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcmVhZG9ubHkgI2NvbnRleHQgPSBpbmplY3QoU2t5T3ZlcmxheUNvbnRleHQpO1xuICByZWFkb25seSAjY29yZUFkYXB0ZXIgPSBpbmplY3QoU2t5Q29yZUFkYXB0ZXJTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgI2VsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG4gIHJlYWRvbmx5ICNlbnZpcm9ubWVudEluamVjdG9yID0gaW5qZWN0KEVudmlyb25tZW50SW5qZWN0b3IpO1xuICByZWFkb25seSAjaWRTdmMgPSBpbmplY3QoU2t5SWRTZXJ2aWNlKTtcbiAgcmVhZG9ubHkgI3JvdXRlciA9IGluamVjdChSb3V0ZXIsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5pZCA9IHRoaXMuI2lkU3ZjLmdlbmVyYXRlSWQoKTtcblxuICAgIHRoaXMuI2JhY2tkcm9wQ2xpY2sgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHRoaXMuI2Nsb3NlZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICB0aGlzLiNiYWNrZHJvcENsaWNrT2JzID0gdGhpcy4jYmFja2Ryb3BDbGljay5hc09ic2VydmFibGUoKTtcbiAgICB0aGlzLiNjbG9zZWRPYnMgPSB0aGlzLiNjbG9zZWQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy4jYXBwbHlDb25maWcodGhpcy4jY29udGV4dC5jb25maWcpO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLiNhZGRCYWNrZHJvcENsaWNrTGlzdGVuZXIoKTtcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLiNjb250ZXh0LmNvbmZpZy5jbG9zZU9uTmF2aWdhdGlvbikge1xuICAgICAgdGhpcy4jYWRkUm91dGVMaXN0ZW5lcigpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLiNjb250ZXh0LmNvbmZpZy5oaWRlT3RoZXJzRnJvbVNjcmVlblJlYWRlcnMpIHtcbiAgICAgIHRoaXMuI3NpYmxpbmdBcmlhSGlkZGVuQ2FjaGUgPSB0aGlzLiNhZGFwdGVyLmFkZEFyaWFIaWRkZW5Ub1NpYmxpbmdzKFxuICAgICAgICB0aGlzLiNlbGVtZW50UmVmLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jcmVtb3ZlUm91dGVMaXN0ZW5lcigpO1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcblxuICAgIHRoaXMuI2JhY2tkcm9wQ2xpY2suY29tcGxldGUoKTtcblxuICAgIHRoaXMuI2FkYXB0ZXIucmVzdG9yZUFyaWFIaWRkZW5Gb3JTaWJsaW5ncyh0aGlzLiNzaWJsaW5nQXJpYUhpZGRlbkNhY2hlKTtcblxuICAgIHRoaXMuI2Nsb3NlZC5uZXh0KCk7XG4gICAgdGhpcy4jY2xvc2VkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgYXR0YWNoQ29tcG9uZW50PEM+KFxuICAgIGNvbXBvbmVudDogVHlwZTxDPixcbiAgICBwcm92aWRlcnM6IFN0YXRpY1Byb3ZpZGVyW10gPSBbXSxcbiAgKTogQ29tcG9uZW50UmVmPEM+IHtcbiAgICAvKmlzdGFuYnVsIGlnbm9yZSBpZjogdW50ZXN0YWJsZSovXG4gICAgaWYgKCF0aGlzLnRhcmdldFJlZikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnW1NreU92ZXJsYXlDb21wb25lbnRdIENvdWxkIG5vdCBhdHRhY2ggdGhlIGNvbXBvbmVudCBiZWNhdXNlIHRoZSB0YXJnZXQgZWxlbWVudCBjb3VsZCBub3QgYmUgZm91bmQuJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy50YXJnZXRSZWYuY2xlYXIoKTtcblxuICAgIGNvbnN0IGVudmlyb25tZW50SW5qZWN0b3IgPSBjcmVhdGVFbnZpcm9ubWVudEluamVjdG9yKFxuICAgICAgW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogU0tZX1NUQUNLSU5HX0NPTlRFWFQsXG4gICAgICAgICAgdXNlVmFsdWU6IHtcbiAgICAgICAgICAgIHpJbmRleDogbmV3IEJlaGF2aW9yU3ViamVjdChwYXJzZUludCh0aGlzLnpJbmRleCwgMTApKVxuICAgICAgICAgICAgICAuYXNPYnNlcnZhYmxlKClcbiAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICAuLi5wcm92aWRlcnMsXG4gICAgICBdLFxuICAgICAgdGhpcy4jZW52aXJvbm1lbnRJbmplY3RvcixcbiAgICApO1xuXG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy50YXJnZXRSZWYuY3JlYXRlQ29tcG9uZW50PEM+KGNvbXBvbmVudCwge1xuICAgICAgZW52aXJvbm1lbnRJbmplY3RvcixcbiAgICB9KTtcblxuICAgIC8vIFJ1biBhbiBpbml0aWFsIGNoYW5nZSBkZXRlY3Rpb24gY3ljbGUgYWZ0ZXIgdGhlIGNvbXBvbmVudCBoYXMgYmVlbiBjcmVhdGVkLlxuICAgIGNvbXBvbmVudFJlZi5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgICByZXR1cm4gY29tcG9uZW50UmVmO1xuICB9XG5cbiAgcHVibGljIGF0dGFjaFRlbXBsYXRlPFQ+KFxuICAgIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxUPixcbiAgICBjb250ZXh0OiBULFxuICApOiBFbWJlZGRlZFZpZXdSZWY8VD4ge1xuICAgIC8qaXN0YW5idWwgaWdub3JlIGlmOiB1bnRlc3RhYmxlKi9cbiAgICBpZiAoIXRoaXMudGFyZ2V0UmVmKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdbU2t5T3ZlcmxheUNvbXBvbmVudF0gQ291bGQgbm90IGF0dGFjaCB0aGUgdGVtcGxhdGUgYmVjYXVzZSB0aGUgdGFyZ2V0IGVsZW1lbnQgY291bGQgbm90IGJlIGZvdW5kLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMudGFyZ2V0UmVmLmNsZWFyKCk7XG5cbiAgICByZXR1cm4gdGhpcy50YXJnZXRSZWYuY3JlYXRlRW1iZWRkZWRWaWV3KHRlbXBsYXRlUmVmLCBjb250ZXh0LCB7XG4gICAgICBpbmplY3RvcjogdGhpcy4jZW52aXJvbm1lbnRJbmplY3RvcixcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVDbGlwUGF0aChjbGlwUGF0aDogc3RyaW5nIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgdGhpcy5jbGlwUGF0aCQubmV4dChjbGlwUGF0aCk7XG4gIH1cblxuICAjYXBwbHlDb25maWcoY29uZmlnOiBTa3lPdmVybGF5Q29uZmlnKTogdm9pZCB7XG4gICAgdGhpcy53cmFwcGVyQ2xhc3MgPSBjb25maWcud3JhcHBlckNsYXNzIHx8ICcnO1xuICAgIHRoaXMuc2hvd0JhY2tkcm9wID0gISFjb25maWcuc2hvd0JhY2tkcm9wO1xuICAgIHRoaXMuZW5hYmxlUG9pbnRlckV2ZW50cyA9ICEhY29uZmlnLmVuYWJsZVBvaW50ZXJFdmVudHM7XG4gICAgdGhpcy5wb3NpdGlvbiA9IGNvbmZpZy5wb3NpdGlvbiB8fCBQT1NJVElPTl9ERUZBVUxUO1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgI2FkZEJhY2tkcm9wQ2xpY2tMaXN0ZW5lcigpOiB2b2lkIHtcbiAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4od2luZG93LmRvY3VtZW50LCAnY2xpY2snKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgaWYgKGV2ZW50LnRhcmdldCAmJiB0aGlzLm92ZXJsYXlDb250ZW50UmVmICYmIHRoaXMub3ZlcmxheVJlZikge1xuICAgICAgICAgIGNvbnN0IGlzQ2hpbGQgPSB0aGlzLm92ZXJsYXlDb250ZW50UmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoXG4gICAgICAgICAgICBldmVudC50YXJnZXQsXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGNvbnN0IGlzQWJvdmUgPSB0aGlzLiNjb3JlQWRhcHRlci5pc1RhcmdldEFib3ZlRWxlbWVudChcbiAgICAgICAgICAgIGV2ZW50LnRhcmdldCxcbiAgICAgICAgICAgIHRoaXMub3ZlcmxheVJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgIGlmICghaXNDaGlsZCAmJiAhaXNBYm92ZSkge1xuICAgICAgICAgICAgdGhpcy4jYmFja2Ryb3BDbGljay5uZXh0KCk7XG4gICAgICAgICAgICBpZiAodGhpcy4jY29udGV4dC5jb25maWcuZW5hYmxlQ2xvc2UpIHtcbiAgICAgICAgICAgICAgdGhpcy4jY2xvc2VkLm5leHQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgI2FkZFJvdXRlTGlzdGVuZXIoKTogdm9pZCB7XG4gICAgLyppc3RhbmJ1bCBpZ25vcmUgZWxzZSovXG4gICAgaWYgKHRoaXMuI3JvdXRlcikge1xuICAgICAgdGhpcy4jcm91dGVyU3Vic2NyaXB0aW9uID0gdGhpcy4jcm91dGVyLmV2ZW50cy5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCkge1xuICAgICAgICAgIHRoaXMuI2Nsb3NlZC5uZXh0KCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gICNyZW1vdmVSb3V0ZUxpc3RlbmVyKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLiNyb3V0ZXJTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuI3JvdXRlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy4jcm91dGVyU3Vic2NyaXB0aW9uID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICAjb3ZlcmxheVJlZlxuICBbY2xhc3NdPVwiJ3NreS1vdmVybGF5LXBvc2l0aW9uLScgKyBwb3NpdGlvbiArICcgJyArIHdyYXBwZXJDbGFzc1wiXG4gIFtzdHlsZS56LWluZGV4XT1cInpJbmRleFwiXG4gIFtzdHlsZS5jbGlwLXBhdGhdPVwiY2xpcFBhdGgkIHwgYXN5bmNcIlxuICBbbmdDbGFzc109XCJ7XG4gICAgJ2VuYWJsZS1wb2ludGVyLWV2ZW50cy1wYXNzLXRocm91Z2gnOiBlbmFibGVQb2ludGVyRXZlbnRzLFxuICAgICdza3ktb3ZlcmxheSc6IHRydWVcbiAgfVwiXG4+XG4gIDxkaXYgI292ZXJsYXlDb250ZW50UmVmIGNsYXNzPVwic2t5LW92ZXJsYXktY29udGVudFwiPlxuICAgIDxuZy10ZW1wbGF0ZSAjdGFyZ2V0IC8+XG4gIDwvZGl2PlxuICBAaWYgKHNob3dCYWNrZHJvcCkge1xuICAgIDxkaXYgY2xhc3M9XCJza3ktb3ZlcmxheS1iYWNrZHJvcFwiPjwvZGl2PlxuICB9XG48L2Rpdj5cbiJdfQ==
@@ -1,15 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- /**
4
- * @deprecated The `SkyOverlayModule` is no longer needed and can be removed from your application.
5
- */
6
- export class SkyOverlayModule {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyOverlayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SkyOverlayModule }); }
9
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyOverlayModule }); }
10
- }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyOverlayModule, decorators: [{
12
- type: NgModule,
13
- args: [{}]
14
- }] });
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvY29yZS9zcmMvbGliL21vZHVsZXMvb3ZlcmxheS9vdmVybGF5Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUV6Qzs7R0FFRztBQUVILE1BQU0sT0FBTyxnQkFBZ0I7K0dBQWhCLGdCQUFnQjtnSEFBaEIsZ0JBQWdCO2dIQUFoQixnQkFBZ0I7OzRGQUFoQixnQkFBZ0I7a0JBRDVCLFFBQVE7bUJBQUMsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgVGhlIGBTa3lPdmVybGF5TW9kdWxlYCBpcyBubyBsb25nZXIgbmVlZGVkIGFuZCBjYW4gYmUgcmVtb3ZlZCBmcm9tIHlvdXIgYXBwbGljYXRpb24uXG4gKi9cbkBOZ01vZHVsZSh7fSlcbmV4cG9ydCBjbGFzcyBTa3lPdmVybGF5TW9kdWxlIHt9XG4iXX0=
@@ -1,134 +0,0 @@
1
- var _a;
2
- import { ApplicationRef, EnvironmentInjector, Injectable, inject, } from '@angular/core';
3
- import { SkyOverlayAdapterService } from './overlay-adapter.service';
4
- import { SkyOverlayContext } from './overlay-context';
5
- import { SkyOverlayInstance } from './overlay-instance';
6
- import { SkyOverlayComponent } from './overlay.component';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "../dynamic-component/dynamic-component.service";
9
- /**
10
- * This service is used to create new overlays.
11
- * @internal
12
- */
13
- export class SkyOverlayService {
14
- static { this.overlays = []; }
15
- #adapter = inject(SkyOverlayAdapterService);
16
- #applicationRef = inject(ApplicationRef);
17
- #dynamicComponentSvc;
18
- #environmentInjector = inject(EnvironmentInjector);
19
- constructor(dynamicComponentSvc) {
20
- this.#dynamicComponentSvc = dynamicComponentSvc;
21
- }
22
- /**
23
- * Creates an empty overlay. Use the returned `SkyOverlayInstance` to append content.
24
- * @param config Configuration for the overlay.
25
- */
26
- create(config) {
27
- const settings = this.#prepareConfig(config);
28
- if (settings.enableScroll === false) {
29
- this.#adapter.restrictBodyScroll();
30
- }
31
- const componentRef = this.#createOverlay(settings);
32
- const instance = new SkyOverlayInstance(settings, componentRef);
33
- instance.closed.subscribe(() => {
34
- // Only execute the service's close method if the instance still exists.
35
- // This is needed to address a race condition if the deprecated instance.close method is used instead.
36
- if (_a.overlays.indexOf(instance) > -1) {
37
- this.close(instance);
38
- }
39
- });
40
- _a.overlays.push(instance);
41
- return instance;
42
- }
43
- /**
44
- * Closes (and destroys) an overlay instance.
45
- * @param instance The instance to close.
46
- */
47
- close(instance) {
48
- this.#destroyOverlay(instance);
49
- this.#applicationRef.detachView(instance.componentRef.hostView);
50
- instance.componentRef.destroy();
51
- // In some cases, Angular keeps dynamically-generated component's nodes in the DOM during
52
- // unit tests. This can make querying difficult because the older DOM nodes still exist and
53
- // produce inconsistent results.
54
- // Angular Material's overlay appears to do the same thing:
55
- // https://github.com/angular/components/blob/master/src/cdk/portal/dom-portal-outlet.ts#L143-L145
56
- // (Ignoring coverage since this branch will only be hit by consumer unit tests.)
57
- const componentElement = instance.componentRef.location.nativeElement;
58
- /* istanbul ignore if */
59
- if (componentElement.parentNode !== null) {
60
- componentElement.parentNode.removeChild(componentElement);
61
- }
62
- }
63
- /**
64
- * Closes all overlay instances.
65
- */
66
- closeAll() {
67
- // The `close` event handler for each instance alters the array's length asynchronously,
68
- // so the only "safe" index to call is zero.
69
- while (_a.overlays.length > 0) {
70
- this.close(_a.overlays[0]);
71
- }
72
- }
73
- #createOverlay(config) {
74
- return this.#dynamicComponentSvc.createComponent(SkyOverlayComponent, {
75
- environmentInjector: this.#environmentInjector,
76
- providers: [
77
- {
78
- provide: SkyOverlayContext,
79
- useValue: new SkyOverlayContext(config),
80
- },
81
- ],
82
- });
83
- }
84
- #prepareConfig(config = {}) {
85
- const defaults = {
86
- closeOnNavigation: true,
87
- enableClose: false,
88
- enablePointerEvents: false,
89
- enableScroll: true,
90
- showBackdrop: false,
91
- wrapperClass: '',
92
- };
93
- return { ...defaults, ...config };
94
- }
95
- #destroyOverlay(instance) {
96
- _a.overlays.splice(_a.overlays.indexOf(instance), 1);
97
- if (instance.config.enableScroll === false) {
98
- // Only release the body scroll if no other overlay wishes it to be disabled.
99
- const anotherOverlayDisablesScroll = _a.overlays.some((o) => !o.config.enableScroll);
100
- if (!anotherOverlayDisablesScroll) {
101
- this.#adapter.releaseBodyScroll();
102
- }
103
- }
104
- }
105
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyOverlayService, deps: [{ token: i1.SkyDynamicComponentService }], target: i0.ɵɵFactoryTarget.Injectable }); }
106
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyOverlayService, providedIn: 'root' }); }
107
- }
108
- _a = SkyOverlayService;
109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyOverlayService, decorators: [{
110
- type: Injectable,
111
- args: [{
112
- providedIn: 'root',
113
- }]
114
- }], ctorParameters: () => [{ type: i1.SkyDynamicComponentService }] });
115
- /**
116
- * This service is used to create new overlays.
117
- * @internal
118
- * @deprecated Use `SkyOverlayService` to open a standalone component instead.
119
- */
120
- export class SkyOverlayLegacyService extends SkyOverlayService {
121
- /* istanbul ignore next */
122
- constructor(dynamicComponentSvc) {
123
- super(dynamicComponentSvc);
124
- }
125
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyOverlayLegacyService, deps: [{ token: i1.SkyDynamicComponentLegacyService }], target: i0.ɵɵFactoryTarget.Injectable }); }
126
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyOverlayLegacyService, providedIn: 'any' }); }
127
- }
128
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyOverlayLegacyService, decorators: [{
129
- type: Injectable,
130
- args: [{
131
- providedIn: 'any',
132
- }]
133
- }], ctorParameters: () => [{ type: i1.SkyDynamicComponentLegacyService }] });
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL292ZXJsYXkvb3ZlcmxheS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsY0FBYyxFQUVkLG1CQUFtQixFQUNuQixVQUFVLEVBQ1YsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBT3ZCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXJFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7QUFFMUQ7OztHQUdHO0FBSUgsTUFBTSxPQUFPLGlCQUFpQjthQUNiLGFBQVEsR0FBeUIsRUFBRSxBQUEzQixDQUE0QjtJQUUxQyxRQUFRLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFDNUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN6QyxvQkFBb0IsQ0FBNkI7SUFDakQsb0JBQW9CLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFFNUQsWUFBWSxtQkFBK0M7UUFDekQsSUFBSSxDQUFDLG9CQUFvQixHQUFHLG1CQUFtQixDQUFDO0lBQ2xELENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsTUFBeUI7UUFDckMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUU3QyxJQUFJLFFBQVEsQ0FBQyxZQUFZLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxDQUFD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UUFBUSxDQUFDLElBQUksQ0FDbEUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQzlCLENBQUM7WUFDRixJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3BDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzsrR0FoSFUsaUJBQWlCO21IQUFqQixpQkFBaUIsY0FGaEIsTUFBTTs7OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7O0FBb0hEOzs7O0dBSUc7QUFJSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsaUJBQWlCO0lBQzVELDBCQUEwQjtJQUMxQixZQUFZLG1CQUFxRDtRQUMvRCxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUM3QixDQUFDOytHQUpVLHVCQUF1QjttSEFBdkIsdUJBQXVCLGNBRnRCLEtBQUs7OzRGQUVOLHVCQUF1QjtrQkFIbkMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsS0FBSztpQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBcHBsaWNhdGlvblJlZixcbiAgQ29tcG9uZW50UmVmLFxuICBFbnZpcm9ubWVudEluamVjdG9yLFxuICBJbmplY3RhYmxlLFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBTa3lEeW5hbWljQ29tcG9uZW50TGVnYWN5U2VydmljZSxcbiAgU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG59IGZyb20gJy4uL2R5bmFtaWMtY29tcG9uZW50L2R5bmFtaWMtY29tcG9uZW50LnNlcnZpY2UnO1xuXG5pbXBvcnQgeyBTa3lPdmVybGF5QWRhcHRlclNlcnZpY2UgfSBmcm9tICcuL292ZXJsYXktYWRhcHRlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNreU92ZXJsYXlDb25maWcgfSBmcm9tICcuL292ZXJsYXktY29uZmlnJztcbmltcG9ydCB7IFNreU92ZXJsYXlDb250ZXh0IH0gZnJvbSAnLi9vdmVybGF5LWNvbnRleHQnO1xuaW1wb3J0IHsgU2t5T3ZlcmxheUluc3RhbmNlIH0gZnJvbSAnLi9vdmVybGF5LWluc3RhbmNlJztcbmltcG9ydCB7IFNreU92ZXJsYXlDb21wb25lbnQgfSBmcm9tICcuL292ZXJsYXkuY29tcG9uZW50JztcblxuLyoqXG4gKiBUaGlzIHNlcnZpY2UgaXMgdXNlZCB0byBjcmVhdGUgbmV3IG92ZXJsYXlzLlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lPdmVybGF5U2VydmljZSB7XG4gIHByaXZhdGUgc3RhdGljIG92ZXJsYXlzOiBTa3lPdmVybGF5SW5zdGFuY2VbXSA9IFtdO1xuXG4gIHJlYWRvbmx5ICNhZGFwdGVyID0gaW5qZWN0KFNreU92ZXJsYXlBZGFwdGVyU2VydmljZSk7XG4gIHJlYWRvbmx5ICNhcHBsaWNhdGlvblJlZiA9IGluamVjdChBcHBsaWNhdGlvblJlZik7XG4gIHJlYWRvbmx5ICNkeW5hbWljQ29tcG9uZW50U3ZjOiBTa3lEeW5hbWljQ29tcG9uZW50U2VydmljZTtcbiAgcmVhZG9ubHkgI2Vudmlyb25tZW50SW5qZWN0b3IgPSBpbmplY3QoRW52aXJvbm1lbnRJbmplY3Rvcik7XG5cbiAgY29uc3RydWN0b3IoZHluYW1pY0NvbXBvbmVudFN2YzogU2t5RHluYW1pY0NvbXBvbmVudFNlcnZpY2UpIHtcbiAgICB0aGlzLiNkeW5hbWljQ29tcG9uZW50U3ZjID0gZHluYW1pY0NvbXBvbmVudFN2YztcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGFuIGVtcHR5IG92ZXJsYXkuIFVzZSB0aGUgcmV0dXJuZWQgYFNreU92ZXJsYXlJbnN0YW5jZWAgdG8gYXBwZW5kIGNvbnRlbnQuXG4gICAqIEBwYXJhbSBjb25maWcgQ29uZmlndXJhdGlvbiBmb3IgdGhlIG92ZXJsYXkuXG4gICAqL1xuICBwdWJsaWMgY3JlYXRlKGNvbmZpZz86IFNreU92ZXJsYXlDb25maWcpOiBTa3lPdmVybGF5SW5zdGFuY2Uge1xuICAgIGNvbnN0IHNldHRpbmdzID0gdGhpcy4jcHJlcGFyZUNvbmZpZyhjb25maWcpO1xuXG4gICAgaWYgKHNldHRpbmdzLmVuYWJsZVNjcm9sbCA9PT0gZmFsc2UpIHtcbiAgICAgIHRoaXMuI2FkYXB0ZXIucmVzdHJpY3RCb2R5U2Nyb2xsKCk7XG4gICAgfVxuXG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy4jY3JlYXRlT3ZlcmxheShzZXR0aW5ncyk7XG4gICAgY29uc3QgaW5zdGFuY2UgPSBuZXcgU2t5T3ZlcmxheUluc3RhbmNlKHNldHRpbmdzLCBjb21wb25lbnRSZWYpO1xuXG4gICAgaW5zdGFuY2UuY2xvc2VkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAvLyBPbmx5IGV4ZWN1dGUgdGhlIHNlcnZpY2UncyBjbG9zZSBtZXRob2QgaWYgdGhlIGluc3RhbmNlIHN0aWxsIGV4aXN0cy5cbiAgICAgIC8vIFRoaXMgaXMgbmVlZGVkIHRvIGFkZHJlc3MgYSByYWNlIGNvbmRpdGlvbiBpZiB0aGUgZGVwcmVjYXRlZCBpbnN0YW5jZS5jbG9zZSBtZXRob2QgaXMgdXNlZCBpbnN0ZWFkLlxuICAgICAgaWYgKFNreU92ZXJsYXlTZXJ2aWNlLm92ZXJsYXlzLmluZGV4T2YoaW5zdGFuY2UpID4gLTEpIHtcbiAgICAgICAgdGhpcy5jbG9zZShpbnN0YW5jZSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBTa3lPdmVybGF5U2VydmljZS5vdmVybGF5cy5wdXNoKGluc3RhbmNlKTtcblxuICAgIHJldHVybiBpbnN0YW5jZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgKGFuZCBkZXN0cm95cykgYW4gb3ZlcmxheSBpbnN0YW5jZS5cbiAgICogQHBhcmFtIGluc3RhbmNlIFRoZSBpbnN0YW5jZSB0byBjbG9zZS5cbiAgICovXG4gIHB1YmxpYyBjbG9zZShpbnN0YW5jZTogU2t5T3ZlcmxheUluc3RhbmNlKTogdm9pZCB7XG4gICAgdGhpcy4jZGVzdHJveU92ZXJsYXkoaW5zdGFuY2UpO1xuICAgIHRoaXMuI2FwcGxpY2F0aW9uUmVmLmRldGFjaFZpZXcoaW5zdGFuY2UuY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcbiAgICBpbnN0YW5jZS5jb21wb25lbnRSZWYuZGVzdHJveSgpO1xuXG4gICAgLy8gSW4gc29tZSBjYXNlcywgQW5ndWxhciBrZWVwcyBkeW5hbWljYWxseS1nZW5lcmF0ZWQgY29tcG9uZW50J3Mgbm9kZXMgaW4gdGhlIERPTSBkdXJpbmdcbiAgICAvLyB1bml0IHRlc3RzLiBUaGlzIGNhbiBtYWtlIHF1ZXJ5aW5nIGRpZmZpY3VsdCBiZWNhdXNlIHRoZSBvbGRlciBET00gbm9kZXMgc3RpbGwgZXhpc3QgYW5kXG4gICAgLy8gcHJvZHVjZSBpbmNvbnNpc3RlbnQgcmVzdWx0cy5cbiAgICAvLyBBbmd1bGFyIE1hdGVyaWFsJ3Mgb3ZlcmxheSBhcHBlYXJzIHRvIGRvIHRoZSBzYW1lIHRoaW5nOlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2NvbXBvbmVudHMvYmxvYi9tYXN0ZXIvc3JjL2Nkay9wb3J0YWwvZG9tLXBvcnRhbC1vdXRsZXQudHMjTDE0My1MMTQ1XG4gICAgLy8gKElnbm9yaW5nIGNvdmVyYWdlIHNpbmNlIHRoaXMgYnJhbmNoIHdpbGwgb25seSBiZSBoaXQgYnkgY29uc3VtZXIgdW5pdCB0ZXN0cy4pXG4gICAgY29uc3QgY29tcG9uZW50RWxlbWVudCA9IGluc3RhbmNlLmNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50O1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChjb21wb25lbnRFbGVtZW50LnBhcmVudE5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbXBvbmVudEVsZW1lbnQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChjb21wb25lbnRFbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2VzIGFsbCBvdmVybGF5IGluc3RhbmNlcy5cbiAgICovXG4gIHB1YmxpYyBjbG9zZUFsbCgpOiB2b2lkIHtcbiAgICAvLyBUaGUgYGNsb3NlYCBldmVudCBoYW5kbGVyIGZvciBlYWNoIGluc3RhbmNlIGFsdGVycyB0aGUgYXJyYXkncyBsZW5ndGggYXN5bmNocm9ub3VzbHksXG4gICAgLy8gc28gdGhlIG9ubHkgXCJzYWZlXCIgaW5kZXggdG8gY2FsbCBpcyB6ZXJvLlxuICAgIHdoaWxlIChTa3lPdmVybGF5U2VydmljZS5vdmVybGF5cy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLmNsb3NlKFNreU92ZXJsYXlTZXJ2aWNlLm92ZXJsYXlzWzBdKTtcbiAgICB9XG4gIH1cblxuICAjY3JlYXRlT3ZlcmxheShjb25maWc6IFNreU92ZXJsYXlDb25maWcpOiBDb21wb25lbnRSZWY8U2t5T3ZlcmxheUNvbXBvbmVudD4ge1xuICAgIHJldHVybiB0aGlzLiNkeW5hbWljQ29tcG9uZW50U3ZjLmNyZWF0ZUNvbXBvbmVudChTa3lPdmVybGF5Q29tcG9uZW50LCB7XG4gICAgICBlbnZpcm9ubWVudEluamVjdG9yOiB0aGlzLiNlbnZpcm9ubWVudEluamVjdG9yLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBTa3lPdmVybGF5Q29udGV4dCxcbiAgICAgICAgICB1c2VWYWx1ZTogbmV3IFNreU92ZXJsYXlDb250ZXh0KGNvbmZpZyksXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuICB9XG5cbiAgI3ByZXBhcmVDb25maWcoY29uZmlnOiBTa3lPdmVybGF5Q29uZmlnID0ge30pOiBTa3lPdmVybGF5Q29uZmlnIHtcbiAgICBjb25zdCBkZWZhdWx0czogU2t5T3ZlcmxheUNvbmZpZyA9IHtcbiAgICAgIGNsb3NlT25OYXZpZ2F0aW9uOiB0cnVlLFxuICAgICAgZW5hYmxlQ2xvc2U6IGZhbHNlLFxuICAgICAgZW5hYmxlUG9pbnRlckV2ZW50czogZmFsc2UsXG4gICAgICBlbmFibGVTY3JvbGw6IHRydWUsXG4gICAgICBzaG93QmFja2Ryb3A6IGZhbHNlLFxuICAgICAgd3JhcHBlckNsYXNzOiAnJyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHsgLi4uZGVmYXVsdHMsIC4uLmNvbmZpZyB9O1xuICB9XG5cbiAgI2Rlc3Ryb3lPdmVybGF5KGluc3RhbmNlOiBTa3lPdmVybGF5SW5zdGFuY2UpOiB2b2lkIHtcbiAgICBTa3lPdmVybGF5U2VydmljZS5vdmVybGF5cy5zcGxpY2UoXG4gICAgICBTa3lPdmVybGF5U2VydmljZS5vdmVybGF5cy5pbmRleE9mKGluc3RhbmNlKSxcbiAgICAgIDEsXG4gICAgKTtcblxuICAgIGlmIChpbnN0YW5jZS5jb25maWcuZW5hYmxlU2Nyb2xsID09PSBmYWxzZSkge1xuICAgICAgLy8gT25seSByZWxlYXNlIHRoZSBib2R5IHNjcm9sbCBpZiBubyBvdGhlciBvdmVybGF5IHdpc2hlcyBpdCB0byBiZSBkaXNhYmxlZC5cbiAgICAgIGNvbnN0IGFub3RoZXJPdmVybGF5RGlzYWJsZXNTY3JvbGwgPSBTa3lPdmVybGF5U2VydmljZS5vdmVybGF5cy5zb21lKFxuICAgICAgICAobykgPT4gIW8uY29uZmlnLmVuYWJsZVNjcm9sbCxcbiAgICAgICk7XG4gICAgICBpZiAoIWFub3RoZXJPdmVybGF5RGlzYWJsZXNTY3JvbGwpIHtcbiAgICAgICAgdGhpcy4jYWRhcHRlci5yZWxlYXNlQm9keVNjcm9sbCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFRoaXMgc2VydmljZSBpcyB1c2VkIHRvIGNyZWF0ZSBuZXcgb3ZlcmxheXMuXG4gKiBAaW50ZXJuYWxcbiAqIEBkZXByZWNhdGVkIFVzZSBgU2t5T3ZlcmxheVNlcnZpY2VgIHRvIG9wZW4gYSBzdGFuZGFsb25lIGNvbXBvbmVudCBpbnN0ZWFkLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdhbnknLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lPdmVybGF5TGVnYWN5U2VydmljZSBleHRlbmRzIFNreU92ZXJsYXlTZXJ2aWNlIHtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgY29uc3RydWN0b3IoZHluYW1pY0NvbXBvbmVudFN2YzogU2t5RHluYW1pY0NvbXBvbmVudExlZ2FjeVNlcnZpY2UpIHtcbiAgICBzdXBlcihkeW5hbWljQ29tcG9uZW50U3ZjKTtcbiAgfVxufVxuIl19
@@ -1,19 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { SkyCoreResourcesModule } from '../shared/sky-core-resources.module';
3
- import { SkyPercentPipe } from './percent.pipe';
4
- import * as i0 from "@angular/core";
5
- export class SkyPercentPipeModule {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyPercentPipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SkyPercentPipeModule, declarations: [SkyPercentPipe], imports: [SkyCoreResourcesModule], exports: [SkyPercentPipe] }); }
8
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyPercentPipeModule, providers: [SkyPercentPipe], imports: [SkyCoreResourcesModule] }); }
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyPercentPipeModule, decorators: [{
11
- type: NgModule,
12
- args: [{
13
- declarations: [SkyPercentPipe],
14
- providers: [SkyPercentPipe],
15
- imports: [SkyCoreResourcesModule],
16
- exports: [SkyPercentPipe],
17
- }]
18
- }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyY2VudC1waXBlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy9saWIvbW9kdWxlcy9wZXJjZW50LXBpcGUvcGVyY2VudC1waXBlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTdFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFRaEQsTUFBTSxPQUFPLG9CQUFvQjsrR0FBcEIsb0JBQW9CO2dIQUFwQixvQkFBb0IsaUJBTGhCLGNBQWMsYUFFbkIsc0JBQXNCLGFBQ3RCLGNBQWM7Z0hBRWIsb0JBQW9CLGFBSnBCLENBQUMsY0FBYyxDQUFDLFlBQ2pCLHNCQUFzQjs7NEZBR3JCLG9CQUFvQjtrQkFOaEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLENBQUM7b0JBQzlCLFNBQVMsRUFBRSxDQUFDLGNBQWMsQ0FBQztvQkFDM0IsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ2pDLE9BQU8sRUFBRSxDQUFDLGNBQWMsQ0FBQztpQkFDMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTa3lDb3JlUmVzb3VyY2VzTW9kdWxlIH0gZnJvbSAnLi4vc2hhcmVkL3NreS1jb3JlLXJlc291cmNlcy5tb2R1bGUnO1xuXG5pbXBvcnQgeyBTa3lQZXJjZW50UGlwZSB9IGZyb20gJy4vcGVyY2VudC5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbU2t5UGVyY2VudFBpcGVdLFxuICBwcm92aWRlcnM6IFtTa3lQZXJjZW50UGlwZV0sXG4gIGltcG9ydHM6IFtTa3lDb3JlUmVzb3VyY2VzTW9kdWxlXSxcbiAgZXhwb3J0czogW1NreVBlcmNlbnRQaXBlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5UGVyY2VudFBpcGVNb2R1bGUge31cbiJdfQ==
@@ -1,56 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import { SkyIntlNumberFormatStyle } from '@skyux/i18n';
3
- import { Subject } from 'rxjs';
4
- import { takeUntil } from 'rxjs/operators';
5
- import { SkyNumberFormatUtility } from '../shared/number-format/number-format-utility';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@skyux/i18n";
8
- export class SkyPercentPipe {
9
- get defaultLocale() {
10
- return this.#defaultLocale;
11
- }
12
- #defaultFormat = '1.0-2';
13
- #defaultLocale = 'en-US';
14
- #format;
15
- #formattedValue = '';
16
- #locale;
17
- #ngUnsubscribe = new Subject();
18
- #value;
19
- constructor(localeProvider) {
20
- localeProvider
21
- .getLocaleInfo()
22
- .pipe(takeUntil(this.#ngUnsubscribe))
23
- .subscribe((localeInfo) => {
24
- this.#defaultLocale = localeInfo.locale;
25
- this.#updateFormattedValue();
26
- });
27
- }
28
- ngOnDestroy() {
29
- this.#ngUnsubscribe.next();
30
- this.#ngUnsubscribe.complete();
31
- }
32
- transform(value, format, locale) {
33
- this.#value = value;
34
- this.#format = format;
35
- this.#locale = locale;
36
- this.#updateFormattedValue();
37
- return this.#formattedValue;
38
- }
39
- #updateFormattedValue() {
40
- const locale = this.#locale || this.#defaultLocale;
41
- const format = this.#format || this.#defaultFormat;
42
- this.#formattedValue = this.#value
43
- ? SkyNumberFormatUtility.formatNumber(locale, this.#value, SkyIntlNumberFormatStyle.Percent, format)
44
- : '';
45
- }
46
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyPercentPipe, deps: [{ token: i1.SkyAppLocaleProvider }], target: i0.ɵɵFactoryTarget.Pipe }); }
47
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SkyPercentPipe, name: "skyPercent", pure: false }); }
48
- }
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyPercentPipe, decorators: [{
50
- type: Pipe,
51
- args: [{
52
- name: 'skyPercent',
53
- pure: false,
54
- }]
55
- }], ctorParameters: () => [{ type: i1.SkyAppLocaleProvider }] });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyY2VudC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvc3JjL2xpYi9tb2R1bGVzL3BlcmNlbnQtcGlwZS9wZXJjZW50LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFhLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDL0QsT0FBTyxFQUF3Qix3QkFBd0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU3RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQzs7O0FBTXZGLE1BQU0sT0FBTyxjQUFjO0lBQ3pCLElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDN0IsQ0FBQztJQUVELGNBQWMsR0FBRyxPQUFPLENBQUM7SUFFekIsY0FBYyxHQUFHLE9BQU8sQ0FBQztJQUV6QixPQUFPLENBQXFCO0lBRTVCLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFFckIsT0FBTyxDQUFxQjtJQUU1QixjQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUVyQyxNQUFNLENBQXFCO0lBRTNCLFlBQVksY0FBb0M7UUFDOUMsY0FBYzthQUNYLGFBQWEsRUFBRTthQUNmLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQ3BDLFNBQVMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxjQUFjLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQztZQUN4QyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU0sU0FBUyxDQUFDLEtBQWEsRUFBRSxNQUFlLEVBQUUsTUFBZTtRQUM5RCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUN0QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUV0QixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUU3QixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUM7UUFDbkQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDO1FBRW5ELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLE1BQU07WUFDaEMsQ0FBQyxDQUFFLHNCQUFzQixDQUFDLFlBQVksQ0FDbEMsTUFBTSxFQUNOLElBQUksQ0FBQyxNQUFNLEVBQ1gsd0JBQXdCLENBQUMsT0FBTyxFQUNoQyxNQUFNLENBQ0k7WUFDZCxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ1QsQ0FBQzsrR0F4RFUsY0FBYzs2R0FBZCxjQUFjOzs0RkFBZCxjQUFjO2tCQUoxQixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxZQUFZO29CQUNsQixJQUFJLEVBQUUsS0FBSztpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9uRGVzdHJveSwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5QXBwTG9jYWxlUHJvdmlkZXIsIFNreUludGxOdW1iZXJGb3JtYXRTdHlsZSB9IGZyb20gJ0Bza3l1eC9pMThuJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lOdW1iZXJGb3JtYXRVdGlsaXR5IH0gZnJvbSAnLi4vc2hhcmVkL251bWJlci1mb3JtYXQvbnVtYmVyLWZvcm1hdC11dGlsaXR5JztcblxuQFBpcGUoe1xuICBuYW1lOiAnc2t5UGVyY2VudCcsXG4gIHB1cmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lQZXJjZW50UGlwZSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgUGlwZVRyYW5zZm9ybSB7XG4gIHB1YmxpYyBnZXQgZGVmYXVsdExvY2FsZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLiNkZWZhdWx0TG9jYWxlO1xuICB9XG5cbiAgI2RlZmF1bHRGb3JtYXQgPSAnMS4wLTInO1xuXG4gICNkZWZhdWx0TG9jYWxlID0gJ2VuLVVTJztcblxuICAjZm9ybWF0OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgI2Zvcm1hdHRlZFZhbHVlID0gJyc7XG5cbiAgI2xvY2FsZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3Rvcihsb2NhbGVQcm92aWRlcjogU2t5QXBwTG9jYWxlUHJvdmlkZXIpIHtcbiAgICBsb2NhbGVQcm92aWRlclxuICAgICAgLmdldExvY2FsZUluZm8oKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgobG9jYWxlSW5mbykgPT4ge1xuICAgICAgICB0aGlzLiNkZWZhdWx0TG9jYWxlID0gbG9jYWxlSW5mby5sb2NhbGU7XG4gICAgICAgIHRoaXMuI3VwZGF0ZUZvcm1hdHRlZFZhbHVlKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcsIGZvcm1hdD86IHN0cmluZywgbG9jYWxlPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICB0aGlzLiN2YWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuI2Zvcm1hdCA9IGZvcm1hdDtcbiAgICB0aGlzLiNsb2NhbGUgPSBsb2NhbGU7XG5cbiAgICB0aGlzLiN1cGRhdGVGb3JtYXR0ZWRWYWx1ZSgpO1xuXG4gICAgcmV0dXJuIHRoaXMuI2Zvcm1hdHRlZFZhbHVlO1xuICB9XG5cbiAgI3VwZGF0ZUZvcm1hdHRlZFZhbHVlKCk6IHZvaWQge1xuICAgIGNvbnN0IGxvY2FsZSA9IHRoaXMuI2xvY2FsZSB8fCB0aGlzLiNkZWZhdWx0TG9jYWxlO1xuICAgIGNvbnN0IGZvcm1hdCA9IHRoaXMuI2Zvcm1hdCB8fCB0aGlzLiNkZWZhdWx0Rm9ybWF0O1xuXG4gICAgdGhpcy4jZm9ybWF0dGVkVmFsdWUgPSB0aGlzLiN2YWx1ZVxuICAgICAgPyAoU2t5TnVtYmVyRm9ybWF0VXRpbGl0eS5mb3JtYXROdW1iZXIoXG4gICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgIHRoaXMuI3ZhbHVlLFxuICAgICAgICAgIFNreUludGxOdW1iZXJGb3JtYXRTdHlsZS5QZXJjZW50LFxuICAgICAgICAgIGZvcm1hdCxcbiAgICAgICAgKSBhcyBzdHJpbmcpXG4gICAgICA6ICcnO1xuICB9XG59XG4iXX0=