@fundamental-ngx/core 0.35.5-rc.5 → 0.36.0-rc.1

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 (170) hide show
  1. package/action-bar/package.json +1 -1
  2. package/action-sheet/package.json +1 -1
  3. package/alert/package.json +1 -1
  4. package/avatar/package.json +1 -1
  5. package/avatar-group/package.json +1 -1
  6. package/bar/package.json +1 -1
  7. package/breadcrumb/package.json +1 -1
  8. package/busy-indicator/package.json +1 -1
  9. package/button/package.json +1 -1
  10. package/calendar/package.json +1 -1
  11. package/card/package.json +1 -1
  12. package/carousel/package.json +1 -1
  13. package/checkbox/package.json +1 -1
  14. package/combobox/package.json +1 -1
  15. package/content-density/classes/content-density-observer.settings.d.ts +3 -1
  16. package/content-density/classes/deprecated-content-density.directive.d.ts +20 -0
  17. package/content-density/content-density.types.d.ts +2 -1
  18. package/content-density/esm2020/classes/content-density-observer.settings.mjs +1 -1
  19. package/content-density/esm2020/classes/deprecated-content-density.directive.mjs +44 -0
  20. package/content-density/esm2020/content-density.types.mjs +2 -1
  21. package/content-density/esm2020/directives/content-density.directive.mjs +11 -3
  22. package/content-density/esm2020/helpers/density-type-checkers.mjs +3 -2
  23. package/content-density/esm2020/helpers/get-changes-source.provider.mjs +8 -5
  24. package/content-density/esm2020/public_api.mjs +3 -1
  25. package/content-density/esm2020/services/content-density-observer.service.mjs +58 -6
  26. package/content-density/esm2020/variables/default-content-density-consumer-config.mjs +3 -2
  27. package/content-density/fesm2015/fundamental-ngx-core-content-density.mjs +119 -17
  28. package/content-density/fesm2015/fundamental-ngx-core-content-density.mjs.map +1 -1
  29. package/content-density/fesm2020/fundamental-ngx-core-content-density.mjs +121 -16
  30. package/content-density/fesm2020/fundamental-ngx-core-content-density.mjs.map +1 -1
  31. package/content-density/helpers/density-type-checkers.d.ts +4 -4
  32. package/content-density/package.json +3 -3
  33. package/content-density/public_api.d.ts +2 -0
  34. package/content-density/services/content-density-observer.service.d.ts +1 -1
  35. package/date-picker/package.json +1 -1
  36. package/datetime/package.json +1 -1
  37. package/datetime-picker/package.json +1 -1
  38. package/dialog/dialog-service/dialog.service.d.ts +6 -4
  39. package/dialog/esm2020/dialog-header/dialog-header.component.mjs +5 -4
  40. package/dialog/esm2020/dialog-service/dialog.service.mjs +12 -6
  41. package/dialog/fesm2015/fundamental-ngx-core-dialog.mjs +18 -12
  42. package/dialog/fesm2015/fundamental-ngx-core-dialog.mjs.map +1 -1
  43. package/dialog/fesm2020/fundamental-ngx-core-dialog.mjs +18 -12
  44. package/dialog/fesm2020/fundamental-ngx-core-dialog.mjs.map +1 -1
  45. package/dialog/package.json +1 -1
  46. package/dynamic-page/package.json +1 -1
  47. package/dynamic-side-content/package.json +1 -1
  48. package/esm2020/content-density/classes/content-density-observer.settings.mjs +1 -1
  49. package/esm2020/content-density/classes/deprecated-content-density.directive.mjs +44 -0
  50. package/esm2020/content-density/content-density.types.mjs +2 -1
  51. package/esm2020/content-density/directives/content-density.directive.mjs +11 -3
  52. package/esm2020/content-density/helpers/density-type-checkers.mjs +3 -2
  53. package/esm2020/content-density/helpers/get-changes-source.provider.mjs +8 -5
  54. package/esm2020/content-density/public_api.mjs +3 -1
  55. package/esm2020/content-density/services/content-density-observer.service.mjs +58 -6
  56. package/esm2020/content-density/variables/default-content-density-consumer-config.mjs +3 -2
  57. package/esm2020/dialog/dialog-header/dialog-header.component.mjs +5 -4
  58. package/esm2020/dialog/dialog-service/dialog.service.mjs +12 -6
  59. package/esm2020/switch/switch.component.mjs +5 -3
  60. package/esm2020/time/time-column/time-column.component.mjs +12 -2
  61. package/esm2020/utils/functions/module-deprecations-provider.mjs +8 -1
  62. package/facets/package.json +1 -1
  63. package/feed-input/package.json +1 -1
  64. package/feed-list-item/package.json +1 -1
  65. package/fesm2015/fundamental-ngx-core-content-density.mjs +119 -17
  66. package/fesm2015/fundamental-ngx-core-content-density.mjs.map +1 -1
  67. package/fesm2015/fundamental-ngx-core-dialog.mjs +18 -12
  68. package/fesm2015/fundamental-ngx-core-dialog.mjs.map +1 -1
  69. package/fesm2015/fundamental-ngx-core-switch.mjs +4 -2
  70. package/fesm2015/fundamental-ngx-core-switch.mjs.map +1 -1
  71. package/fesm2015/fundamental-ngx-core-time.mjs +11 -1
  72. package/fesm2015/fundamental-ngx-core-time.mjs.map +1 -1
  73. package/fesm2015/fundamental-ngx-core-utils.mjs +4 -1
  74. package/fesm2015/fundamental-ngx-core-utils.mjs.map +1 -1
  75. package/fesm2020/fundamental-ngx-core-content-density.mjs +121 -16
  76. package/fesm2020/fundamental-ngx-core-content-density.mjs.map +1 -1
  77. package/fesm2020/fundamental-ngx-core-dialog.mjs +18 -12
  78. package/fesm2020/fundamental-ngx-core-dialog.mjs.map +1 -1
  79. package/fesm2020/fundamental-ngx-core-switch.mjs +4 -2
  80. package/fesm2020/fundamental-ngx-core-switch.mjs.map +1 -1
  81. package/fesm2020/fundamental-ngx-core-time.mjs +11 -1
  82. package/fesm2020/fundamental-ngx-core-time.mjs.map +1 -1
  83. package/fesm2020/fundamental-ngx-core-utils.mjs +8 -1
  84. package/fesm2020/fundamental-ngx-core-utils.mjs.map +1 -1
  85. package/file-uploader/package.json +1 -1
  86. package/fixed-card-layout/package.json +1 -1
  87. package/flexible-column-layout/package.json +1 -1
  88. package/form/package.json +1 -1
  89. package/formatted-text/package.json +1 -1
  90. package/grid-list/package.json +1 -1
  91. package/icon/package.json +1 -1
  92. package/illustrated-message/package.json +1 -1
  93. package/infinite-scroll/package.json +1 -1
  94. package/info-label/package.json +1 -1
  95. package/inline-help/package.json +1 -1
  96. package/input-group/package.json +1 -1
  97. package/layout-grid/package.json +1 -1
  98. package/layout-panel/package.json +1 -1
  99. package/link/package.json +1 -1
  100. package/list/package.json +1 -1
  101. package/menu/package.json +1 -1
  102. package/message-box/package.json +1 -1
  103. package/message-strip/package.json +1 -1
  104. package/message-toast/package.json +1 -1
  105. package/micro-process-flow/package.json +1 -1
  106. package/mobile-mode/package.json +1 -1
  107. package/multi-input/package.json +1 -1
  108. package/nested-list/package.json +1 -1
  109. package/notification/package.json +1 -1
  110. package/object-identifier/package.json +1 -1
  111. package/object-marker/package.json +1 -1
  112. package/object-number/package.json +1 -1
  113. package/object-status/package.json +1 -1
  114. package/overflow-layout/package.json +13 -13
  115. package/package.json +1 -1
  116. package/pagination/package.json +1 -1
  117. package/panel/package.json +1 -1
  118. package/popover/package.json +1 -1
  119. package/product-switch/package.json +1 -1
  120. package/progress-indicator/package.json +1 -1
  121. package/quick-view/package.json +1 -1
  122. package/radio/package.json +1 -1
  123. package/rating-indicator/package.json +1 -1
  124. package/resizable-card-layout/package.json +1 -1
  125. package/scroll-spy/package.json +1 -1
  126. package/scrollbar/package.json +1 -1
  127. package/segmented-button/package.json +1 -1
  128. package/select/package.json +1 -1
  129. package/shared/package.json +1 -1
  130. package/shellbar/package.json +1 -1
  131. package/side-navigation/package.json +1 -1
  132. package/slider/package.json +1 -1
  133. package/split-button/package.json +1 -1
  134. package/splitter/package.json +1 -1
  135. package/status-indicator/package.json +1 -1
  136. package/step-input/package.json +1 -1
  137. package/switch/esm2020/switch.component.mjs +5 -3
  138. package/switch/fesm2015/fundamental-ngx-core-switch.mjs +4 -2
  139. package/switch/fesm2015/fundamental-ngx-core-switch.mjs.map +1 -1
  140. package/switch/fesm2020/fundamental-ngx-core-switch.mjs +4 -2
  141. package/switch/fesm2020/fundamental-ngx-core-switch.mjs.map +1 -1
  142. package/switch/package.json +1 -1
  143. package/table/package.json +1 -1
  144. package/tabs/package.json +1 -1
  145. package/text/package.json +1 -1
  146. package/theming/package.json +1 -1
  147. package/tile/package.json +1 -1
  148. package/time/esm2020/time-column/time-column.component.mjs +12 -2
  149. package/time/fesm2015/fundamental-ngx-core-time.mjs +11 -1
  150. package/time/fesm2015/fundamental-ngx-core-time.mjs.map +1 -1
  151. package/time/fesm2020/fundamental-ngx-core-time.mjs +11 -1
  152. package/time/fesm2020/fundamental-ngx-core-time.mjs.map +1 -1
  153. package/time/package.json +1 -1
  154. package/time/time-column/time-column.component.d.ts +2 -0
  155. package/time-picker/package.json +1 -1
  156. package/timeline/package.json +1 -1
  157. package/title/package.json +1 -1
  158. package/token/package.json +1 -1
  159. package/toolbar/package.json +1 -1
  160. package/tree/package.json +1 -1
  161. package/upload-collection/package.json +1 -1
  162. package/utils/esm2020/functions/module-deprecations-provider.mjs +8 -1
  163. package/utils/fesm2015/fundamental-ngx-core-utils.mjs +4 -1
  164. package/utils/fesm2015/fundamental-ngx-core-utils.mjs.map +1 -1
  165. package/utils/fesm2020/fundamental-ngx-core-utils.mjs +8 -1
  166. package/utils/fesm2020/fundamental-ngx-core-utils.mjs.map +1 -1
  167. package/utils/functions/module-deprecations-provider.d.ts +2 -1
  168. package/utils/package.json +1 -1
  169. package/vertical-navigation/package.json +1 -1
  170. package/wizard/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/action-bar",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/action-sheet",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/alert",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/avatar",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/avatar-group",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
package/bar/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/bar",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/breadcrumb",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/busy-indicator",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/button",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/calendar",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
package/card/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/card",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/carousel",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/checkbox",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/combobox",
3
- "version": "0.35.5-rc.5",
3
+ "version": "0.36.0-rc.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,8 @@
1
1
  import { ContentDensityMode } from '../content-density.types';
2
+ import { FactorySansProvider, ProviderToken } from '@angular/core';
2
3
  export declare class ContentDensityObserverSettings {
3
4
  modifiers?: Partial<Record<ContentDensityMode, string>>;
4
5
  supportedContentDensity?: ContentDensityMode[];
5
- defaultContentDensity?: ContentDensityMode;
6
+ defaultContentDensity?: ContentDensityMode | ProviderToken<ContentDensityMode> | FactorySansProvider;
7
+ debug?: boolean;
6
8
  }
@@ -0,0 +1,20 @@
1
+ import { OnDestroy } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import { ContentDensityMode } from '../content-density.types';
4
+ import { ModuleDeprecation } from '@fundamental-ngx/core/utils';
5
+ import * as i0 from "@angular/core";
6
+ /**
7
+ * Directive decorator is only for allowing @Input
8
+ */
9
+ export declare class DeprecatedContentDensityDirective extends BehaviorSubject<ContentDensityMode> implements OnDestroy, ModuleDeprecation {
10
+ /** @deprecated use fdCompact directive instead */
11
+ set contentDensity(value: any);
12
+ get message(): string;
13
+ get alternative(): any;
14
+ selectorBase: string;
15
+ private _manuallySet;
16
+ constructor();
17
+ ngOnDestroy(): void;
18
+ static ɵfac: i0.ɵɵFactoryDeclaration<DeprecatedContentDensityDirective, never>;
19
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DeprecatedContentDensityDirective, never, never, { "contentDensity": "contentDensity"; }, {}, never>;
20
+ }
@@ -2,12 +2,13 @@ import { Provider } from '@angular/core';
2
2
  import { HasElementRef } from '@fundamental-ngx/core/utils';
3
3
  import { ContentDensityObserverSettings } from './classes/content-density-observer.settings';
4
4
  export declare const ContentDensityGlobalKeyword = "global";
5
+ export declare const ContentDensityDefaultKeyword = "default";
5
6
  export declare enum ContentDensityMode {
6
7
  COZY = "cozy",
7
8
  CONDENSED = "condensed",
8
9
  COMPACT = "compact"
9
10
  }
10
- export declare type LocalContentDensityMode = ContentDensityMode | typeof ContentDensityGlobalKeyword;
11
+ export declare type LocalContentDensityMode = ContentDensityMode | typeof ContentDensityGlobalKeyword | typeof ContentDensityDefaultKeyword;
11
12
  interface BaseContentDensityModuleConfig {
12
13
  defaultGlobalContentDensity?: ContentDensityMode;
13
14
  }
@@ -1,3 +1,3 @@
1
1
  export class ContentDensityObserverSettings {
2
2
  }
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29udGVudC1kZW5zaXR5L2NsYXNzZXMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyw4QkFBOEI7Q0FJMUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250ZW50RGVuc2l0eU1vZGUgfSBmcm9tICcuLi9jb250ZW50LWRlbnNpdHkudHlwZXMnO1xuXG5leHBvcnQgY2xhc3MgQ29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzIHtcbiAgICBtb2RpZmllcnM/OiBQYXJ0aWFsPFJlY29yZDxDb250ZW50RGVuc2l0eU1vZGUsIHN0cmluZz4+O1xuICAgIHN1cHBvcnRlZENvbnRlbnREZW5zaXR5PzogQ29udGVudERlbnNpdHlNb2RlW107XG4gICAgZGVmYXVsdENvbnRlbnREZW5zaXR5PzogQ29udGVudERlbnNpdHlNb2RlO1xufVxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29udGVudC1kZW5zaXR5L2NsYXNzZXMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyw4QkFBOEI7Q0FLMUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250ZW50RGVuc2l0eU1vZGUgfSBmcm9tICcuLi9jb250ZW50LWRlbnNpdHkudHlwZXMnO1xuaW1wb3J0IHsgRmFjdG9yeVNhbnNQcm92aWRlciwgUHJvdmlkZXJUb2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgQ29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzIHtcbiAgICBtb2RpZmllcnM/OiBQYXJ0aWFsPFJlY29yZDxDb250ZW50RGVuc2l0eU1vZGUsIHN0cmluZz4+O1xuICAgIHN1cHBvcnRlZENvbnRlbnREZW5zaXR5PzogQ29udGVudERlbnNpdHlNb2RlW107XG4gICAgZGVmYXVsdENvbnRlbnREZW5zaXR5PzogQ29udGVudERlbnNpdHlNb2RlIHwgUHJvdmlkZXJUb2tlbjxDb250ZW50RGVuc2l0eU1vZGU+IHwgRmFjdG9yeVNhbnNQcm92aWRlcjtcbiAgICBkZWJ1Zz86IGJvb2xlYW47XG59XG4iXX0=
@@ -0,0 +1,44 @@
1
+ import { Directive, Input, isDevMode } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import { ContentDensityMode } from '../content-density.types';
4
+ import * as i0 from "@angular/core";
5
+ const warnedSelectorBases = new Set();
6
+ /**
7
+ * Directive decorator is only for allowing @Input
8
+ */
9
+ export class DeprecatedContentDensityDirective extends BehaviorSubject {
10
+ constructor() {
11
+ super(ContentDensityMode.COZY);
12
+ this._manuallySet = false;
13
+ }
14
+ /** @deprecated use fdCompact directive instead */
15
+ set contentDensity(value) {
16
+ if (isDevMode() && !warnedSelectorBases.has(this.selectorBase)) {
17
+ console.warn(`${this.message}. Use [fd${capitalize(value)}] or [fdContentDensity] directives instead.`);
18
+ warnedSelectorBases.add(this.selectorBase);
19
+ }
20
+ this._manuallySet = true;
21
+ this.next(value);
22
+ }
23
+ get message() {
24
+ return `Usage of ${this.selectorBase}[contentDensity] is deprecated`;
25
+ }
26
+ get alternative() {
27
+ return {
28
+ name: `Use [${this._manuallySet ? `fd${capitalize(this.value)}` : 'fdContentDensity'}] directive instead`,
29
+ link: ['/core', 'content-density']
30
+ };
31
+ }
32
+ ngOnDestroy() {
33
+ this.complete();
34
+ }
35
+ }
36
+ DeprecatedContentDensityDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DeprecatedContentDensityDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
37
+ DeprecatedContentDensityDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.4", type: DeprecatedContentDensityDirective, inputs: { contentDensity: "contentDensity" }, usesInheritance: true, ngImport: i0 });
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DeprecatedContentDensityDirective, decorators: [{
39
+ type: Directive
40
+ }], ctorParameters: function () { return []; }, propDecorators: { contentDensity: [{
41
+ type: Input
42
+ }] } });
43
+ const capitalize = (str) => str?.charAt(0).toUpperCase() + str?.slice(1);
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjYXRlZC1jb250ZW50LWRlbnNpdHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29udGVudC1kZW5zaXR5L2NsYXNzZXMvZGVwcmVjYXRlZC1jb250ZW50LWRlbnNpdHkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUc5RCxNQUFNLG1CQUFtQixHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7QUFFOUM7O0dBRUc7QUFFSCxNQUFNLE9BQU8saUNBQ1QsU0FBUSxlQUFtQztJQTZCM0M7UUFDSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFIM0IsaUJBQVksR0FBRyxLQUFLLENBQUM7SUFJN0IsQ0FBQztJQTVCRCxrREFBa0Q7SUFDbEQsSUFDSSxjQUFjLENBQUMsS0FBVTtRQUN6QixJQUFJLFNBQVMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUM1RCxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sWUFBWSxVQUFVLENBQUMsS0FBSyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7WUFDeEcsbUJBQW1CLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUM5QztRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELElBQUksT0FBTztRQUNQLE9BQU8sWUFBWSxJQUFJLENBQUMsWUFBWSxnQ0FBZ0MsQ0FBQztJQUN6RSxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ1gsT0FBTztZQUNILElBQUksRUFBRSxRQUFRLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEtBQUssVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IscUJBQXFCO1lBQ3pHLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQztTQUNyQyxDQUFDO0lBQ04sQ0FBQztJQVVELFdBQVc7UUFDUCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDcEIsQ0FBQzs7OEhBcENRLGlDQUFpQztrSEFBakMsaUNBQWlDOzJGQUFqQyxpQ0FBaUM7a0JBRDdDLFNBQVM7MEVBT0YsY0FBYztzQkFEakIsS0FBSzs7QUFrQ1YsTUFBTSxVQUFVLEdBQUcsQ0FBQyxHQUFXLEVBQVUsRUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIGlzRGV2TW9kZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5TW9kZSB9IGZyb20gJy4uL2NvbnRlbnQtZGVuc2l0eS50eXBlcyc7XG5pbXBvcnQgeyBNb2R1bGVEZXByZWNhdGlvbiB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5cbmNvbnN0IHdhcm5lZFNlbGVjdG9yQmFzZXMgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuLyoqXG4gKiBEaXJlY3RpdmUgZGVjb3JhdG9yIGlzIG9ubHkgZm9yIGFsbG93aW5nIEBJbnB1dFxuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBjbGFzcyBEZXByZWNhdGVkQ29udGVudERlbnNpdHlEaXJlY3RpdmVcbiAgICBleHRlbmRzIEJlaGF2aW9yU3ViamVjdDxDb250ZW50RGVuc2l0eU1vZGU+XG4gICAgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE1vZHVsZURlcHJlY2F0aW9uXG57XG4gICAgLyoqIEBkZXByZWNhdGVkIHVzZSBmZENvbXBhY3QgZGlyZWN0aXZlIGluc3RlYWQgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBjb250ZW50RGVuc2l0eSh2YWx1ZTogYW55KSB7XG4gICAgICAgIGlmIChpc0Rldk1vZGUoKSAmJiAhd2FybmVkU2VsZWN0b3JCYXNlcy5oYXModGhpcy5zZWxlY3RvckJhc2UpKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oYCR7dGhpcy5tZXNzYWdlfS4gVXNlIFtmZCR7Y2FwaXRhbGl6ZSh2YWx1ZSl9XSBvciBbZmRDb250ZW50RGVuc2l0eV0gZGlyZWN0aXZlcyBpbnN0ZWFkLmApO1xuICAgICAgICAgICAgd2FybmVkU2VsZWN0b3JCYXNlcy5hZGQodGhpcy5zZWxlY3RvckJhc2UpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX21hbnVhbGx5U2V0ID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5uZXh0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBnZXQgbWVzc2FnZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYFVzYWdlIG9mICR7dGhpcy5zZWxlY3RvckJhc2V9W2NvbnRlbnREZW5zaXR5XSBpcyBkZXByZWNhdGVkYDtcbiAgICB9XG5cbiAgICBnZXQgYWx0ZXJuYXRpdmUoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5hbWU6IGBVc2UgWyR7dGhpcy5fbWFudWFsbHlTZXQgPyBgZmQke2NhcGl0YWxpemUodGhpcy52YWx1ZSl9YCA6ICdmZENvbnRlbnREZW5zaXR5J31dIGRpcmVjdGl2ZSBpbnN0ZWFkYCxcbiAgICAgICAgICAgIGxpbms6IFsnL2NvcmUnLCAnY29udGVudC1kZW5zaXR5J11cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBzZWxlY3RvckJhc2U6IHN0cmluZztcblxuICAgIHByaXZhdGUgX21hbnVhbGx5U2V0ID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoQ29udGVudERlbnNpdHlNb2RlLkNPWlkpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbXBsZXRlKCk7XG4gICAgfVxufVxuXG5jb25zdCBjYXBpdGFsaXplID0gKHN0cjogc3RyaW5nKTogc3RyaW5nID0+IHN0cj8uY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBzdHI/LnNsaWNlKDEpO1xuIl19
@@ -1,8 +1,9 @@
1
1
  export const ContentDensityGlobalKeyword = 'global';
2
+ export const ContentDensityDefaultKeyword = 'default';
2
3
  export var ContentDensityMode;
3
4
  (function (ContentDensityMode) {
4
5
  ContentDensityMode["COZY"] = "cozy";
5
6
  ContentDensityMode["CONDENSED"] = "condensed";
6
7
  ContentDensityMode["COMPACT"] = "compact";
7
8
  })(ContentDensityMode || (ContentDensityMode = {}));
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1kZW5zaXR5LnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29udGVudC1kZW5zaXR5L2NvbnRlbnQtZGVuc2l0eS50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxRQUFRLENBQUM7QUFFcEQsTUFBTSxDQUFOLElBQVksa0JBSVg7QUFKRCxXQUFZLGtCQUFrQjtJQUMxQixtQ0FBYSxDQUFBO0lBQ2IsNkNBQXVCLENBQUE7SUFDdkIseUNBQW1CLENBQUE7QUFDdkIsQ0FBQyxFQUpXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFJN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSGFzRWxlbWVudFJlZiB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5pbXBvcnQgeyBDb250ZW50RGVuc2l0eU9ic2VydmVyU2V0dGluZ3MgfSBmcm9tICcuL2NsYXNzZXMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNldHRpbmdzJztcblxuZXhwb3J0IGNvbnN0IENvbnRlbnREZW5zaXR5R2xvYmFsS2V5d29yZCA9ICdnbG9iYWwnO1xuXG5leHBvcnQgZW51bSBDb250ZW50RGVuc2l0eU1vZGUge1xuICAgIENPWlkgPSAnY296eScsXG4gICAgQ09OREVOU0VEID0gJ2NvbmRlbnNlZCcsXG4gICAgQ09NUEFDVCA9ICdjb21wYWN0J1xufVxuXG5leHBvcnQgdHlwZSBMb2NhbENvbnRlbnREZW5zaXR5TW9kZSA9IENvbnRlbnREZW5zaXR5TW9kZSB8IHR5cGVvZiBDb250ZW50RGVuc2l0eUdsb2JhbEtleXdvcmQ7XG5cbmludGVyZmFjZSBCYXNlQ29udGVudERlbnNpdHlNb2R1bGVDb25maWcge1xuICAgIGRlZmF1bHRHbG9iYWxDb250ZW50RGVuc2l0eT86IENvbnRlbnREZW5zaXR5TW9kZTtcbn1cblxuaW50ZXJmYWNlIExvY2FsU3RvcmFnZUNvbmZpZyB7XG4gICAgc3RvcmFnZTogJ2xvY2FsU3RvcmFnZSc7XG4gICAgc3RvcmFnZUtleT86IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFVybFN0b3JhZ2VDb25maWcge1xuICAgIHN0b3JhZ2U6ICd1cmwnO1xuICAgIHN0b3JhZ2VLZXk/OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBDdXN0b21TdG9yYWdlQ29uZmlnIHtcbiAgICBzdG9yYWdlOiBQcm92aWRlcjtcbn1cblxuaW50ZXJmYWNlIE1lbW9yeVN0b3JhZ2VDb25maWcge1xuICAgIHN0b3JhZ2U6ICdtZW1vcnknO1xufVxuXG5leHBvcnQgdHlwZSBDb250ZW50RGVuc2l0eU1vZHVsZUNvbmZpZyA9IChcbiAgICB8IExvY2FsU3RvcmFnZUNvbmZpZ1xuICAgIHwgTWVtb3J5U3RvcmFnZUNvbmZpZ1xuICAgIHwgVXJsU3RvcmFnZUNvbmZpZ1xuICAgIHwgQ3VzdG9tU3RvcmFnZUNvbmZpZ1xuKSAmXG4gICAgQmFzZUNvbnRlbnREZW5zaXR5TW9kdWxlQ29uZmlnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJUYXJnZXQgZXh0ZW5kcyBIYXNFbGVtZW50UmVmIHtcbiAgICBjb250ZW50RGVuc2l0eVNldHRpbmdzOiBDb250ZW50RGVuc2l0eU9ic2VydmVyU2V0dGluZ3M7XG59XG5cbmV4cG9ydCB0eXBlIENvbnRlbnREZW5zaXR5Q2FsbGJhY2tGbiA9ICh0YXJnZXQ6IENvbnRlbnREZW5zaXR5TW9kZSkgPT4gdm9pZDtcbiJdfQ==
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1kZW5zaXR5LnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29udGVudC1kZW5zaXR5L2NvbnRlbnQtZGVuc2l0eS50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxRQUFRLENBQUM7QUFDcEQsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsU0FBUyxDQUFDO0FBRXRELE1BQU0sQ0FBTixJQUFZLGtCQUlYO0FBSkQsV0FBWSxrQkFBa0I7SUFDMUIsbUNBQWEsQ0FBQTtJQUNiLDZDQUF1QixDQUFBO0lBQ3ZCLHlDQUFtQixDQUFBO0FBQ3ZCLENBQUMsRUFKVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBSTdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEhhc0VsZW1lbnRSZWYgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzIH0gZnJvbSAnLi9jbGFzc2VzL2NvbnRlbnQtZGVuc2l0eS1vYnNlcnZlci5zZXR0aW5ncyc7XG5cbmV4cG9ydCBjb25zdCBDb250ZW50RGVuc2l0eUdsb2JhbEtleXdvcmQgPSAnZ2xvYmFsJztcbmV4cG9ydCBjb25zdCBDb250ZW50RGVuc2l0eURlZmF1bHRLZXl3b3JkID0gJ2RlZmF1bHQnO1xuXG5leHBvcnQgZW51bSBDb250ZW50RGVuc2l0eU1vZGUge1xuICAgIENPWlkgPSAnY296eScsXG4gICAgQ09OREVOU0VEID0gJ2NvbmRlbnNlZCcsXG4gICAgQ09NUEFDVCA9ICdjb21wYWN0J1xufVxuXG5leHBvcnQgdHlwZSBMb2NhbENvbnRlbnREZW5zaXR5TW9kZSA9XG4gICAgfCBDb250ZW50RGVuc2l0eU1vZGVcbiAgICB8IHR5cGVvZiBDb250ZW50RGVuc2l0eUdsb2JhbEtleXdvcmRcbiAgICB8IHR5cGVvZiBDb250ZW50RGVuc2l0eURlZmF1bHRLZXl3b3JkO1xuXG5pbnRlcmZhY2UgQmFzZUNvbnRlbnREZW5zaXR5TW9kdWxlQ29uZmlnIHtcbiAgICBkZWZhdWx0R2xvYmFsQ29udGVudERlbnNpdHk/OiBDb250ZW50RGVuc2l0eU1vZGU7XG59XG5cbmludGVyZmFjZSBMb2NhbFN0b3JhZ2VDb25maWcge1xuICAgIHN0b3JhZ2U6ICdsb2NhbFN0b3JhZ2UnO1xuICAgIHN0b3JhZ2VLZXk/OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBVcmxTdG9yYWdlQ29uZmlnIHtcbiAgICBzdG9yYWdlOiAndXJsJztcbiAgICBzdG9yYWdlS2V5Pzogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgQ3VzdG9tU3RvcmFnZUNvbmZpZyB7XG4gICAgc3RvcmFnZTogUHJvdmlkZXI7XG59XG5cbmludGVyZmFjZSBNZW1vcnlTdG9yYWdlQ29uZmlnIHtcbiAgICBzdG9yYWdlOiAnbWVtb3J5Jztcbn1cblxuZXhwb3J0IHR5cGUgQ29udGVudERlbnNpdHlNb2R1bGVDb25maWcgPSAoXG4gICAgfCBMb2NhbFN0b3JhZ2VDb25maWdcbiAgICB8IE1lbW9yeVN0b3JhZ2VDb25maWdcbiAgICB8IFVybFN0b3JhZ2VDb25maWdcbiAgICB8IEN1c3RvbVN0b3JhZ2VDb25maWdcbikgJlxuICAgIEJhc2VDb250ZW50RGVuc2l0eU1vZHVsZUNvbmZpZztcblxuZXhwb3J0IGludGVyZmFjZSBDb250ZW50RGVuc2l0eU9ic2VydmVyVGFyZ2V0IGV4dGVuZHMgSGFzRWxlbWVudFJlZiB7XG4gICAgY29udGVudERlbnNpdHlTZXR0aW5nczogQ29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzO1xufVxuXG5leHBvcnQgdHlwZSBDb250ZW50RGVuc2l0eUNhbGxiYWNrRm4gPSAodGFyZ2V0OiBDb250ZW50RGVuc2l0eU1vZGUpID0+IHZvaWQ7XG4iXX0=
@@ -1,8 +1,9 @@
1
- import { Directive, forwardRef, Input } from '@angular/core';
1
+ import { Directive, forwardRef, Input, isDevMode } from '@angular/core';
2
2
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
3
3
  import { BehaviorSubject } from 'rxjs';
4
4
  import { ContentDensityGlobalKeyword, ContentDensityMode } from '../content-density.types';
5
5
  import { CONTENT_DENSITY_DIRECTIVE } from '../tokens/content-density-directive';
6
+ import { isContentDensityMode } from '../helpers/density-type-checkers';
6
7
  import * as i0 from "@angular/core";
7
8
  /**
8
9
  * Directive to control the content density of the elements.
@@ -17,7 +18,14 @@ export class ContentDensityDirective extends BehaviorSubject {
17
18
  * Update the content density of the element on the fly
18
19
  */
19
20
  set fdContentDensity(val) {
20
- this.next(val ? val : ContentDensityGlobalKeyword);
21
+ if (!isContentDensityMode(val)) {
22
+ if (isDevMode() && val !== '') {
23
+ console.log(`The value "${val}" is not a valid content density mode.
24
+ Using "${ContentDensityGlobalKeyword}" instead.`);
25
+ }
26
+ val = ContentDensityGlobalKeyword;
27
+ }
28
+ this.next(val);
21
29
  }
22
30
  /**
23
31
  * This input is basically syntax sugar, for not writing fdContentDensity="compact",
@@ -91,4 +99,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
91
99
  }], fdCozy: [{
92
100
  type: Input
93
101
  }] } });
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1kZW5zaXR5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2NvbnRlbnQtZGVuc2l0eS9kaXJlY3RpdmVzL2NvbnRlbnQtZGVuc2l0eS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxrQkFBa0IsRUFBMkIsTUFBTSwwQkFBMEIsQ0FBQztBQUNwSCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7QUFFaEY7OztHQUdHO0FBY0gsTUFBTSxPQUFPLHVCQUF3QixTQUFRLGVBQXdDO0lBZ0RqRixjQUFjO0lBQ2Q7UUFDSSxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBbEREOztPQUVHO0lBQ0gsSUFDSSxnQkFBZ0IsQ0FBQyxHQUFpQztRQUNsRCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUNJLFNBQVMsQ0FBQyxHQUFpQjtRQUMzQixJQUFJLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDekM7YUFBTTtZQUNILElBQUksQ0FBQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsQ0FBQztTQUMxQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUNJLFdBQVcsQ0FBQyxHQUFpQjtRQUM3QixJQUFJLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDM0M7YUFBTTtZQUNILElBQUksQ0FBQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsQ0FBQztTQUMxQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUNJLE1BQU0sQ0FBQyxHQUFpQjtRQUN4QixJQUFJLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEM7YUFBTTtZQUNILElBQUksQ0FBQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsQ0FBQztTQUMxQztJQUNMLENBQUM7SUFPRCxjQUFjO0lBQ2QsV0FBVztRQUNQLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQixDQUFDOztvSEF4RFEsdUJBQXVCO3dHQUF2Qix1QkFBdUIsNGRBUHJCO1FBQ1A7WUFDSSxPQUFPLEVBQUUseUJBQXlCO1lBQ2xDLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUM7U0FDekQ7S0FDSjsyRkFFUSx1QkFBdUI7a0JBYm5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFOzs7cUZBR3VFO29CQUNqRixRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixTQUFTLEVBQUU7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLHlCQUF5Qjs0QkFDbEMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsd0JBQXdCLENBQUM7eUJBQ3pEO3FCQUNKO2lCQUNKOzBFQU1PLGdCQUFnQjtzQkFEbkIsS0FBSztnQkFVRixTQUFTO3NCQURaLEtBQUs7Z0JBY0YsV0FBVztzQkFEZCxLQUFLO2dCQWNGLE1BQU07c0JBRFQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb250ZW50RGVuc2l0eUdsb2JhbEtleXdvcmQsIENvbnRlbnREZW5zaXR5TW9kZSwgTG9jYWxDb250ZW50RGVuc2l0eU1vZGUgfSBmcm9tICcuLi9jb250ZW50LWRlbnNpdHkudHlwZXMnO1xuaW1wb3J0IHsgQ09OVEVOVF9ERU5TSVRZX0RJUkVDVElWRSB9IGZyb20gJy4uL3Rva2Vucy9jb250ZW50LWRlbnNpdHktZGlyZWN0aXZlJztcblxuLyoqXG4gKiBEaXJlY3RpdmUgdG8gY29udHJvbCB0aGUgY29udGVudCBkZW5zaXR5IG9mIHRoZSBlbGVtZW50cy5cbiAqIFRoaXMgRGlyZWN0aXZlIGlzIHVzZWQgaW4gZGVuc2l0eSBjb250cm9sbGVycyBhbmQgY29uc3VtZXJzXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiBgW2ZkQ29udGVudERlbnNpdHldOm5vdChbZmRDb21wYWN0XSk6bm90KFtmZENvbmRlbnNlZF0pOm5vdChbZmRDb3p5XSksXG4gICAgICAgICAgICAgICAgW2ZkQ29tcGFjdF06bm90KFtmZENvbnRlbnREZW5zaXR5XSk6bm90KFtmZENvbmRlbnNlZF0pOm5vdChbZmRDb3p5XSksXG4gICAgICAgICAgICAgICAgW2ZkQ29uZGVuc2VkXTpub3QoW2ZkQ29udGVudERlbnNpdHldKTpub3QoW2ZkQ29tcGFjdF0pOm5vdChbZmRDb3p5XSksXG4gICAgICAgICAgICAgICAgW2ZkQ296eV06bm90KFtmZENvbnRlbnREZW5zaXR5XSk6bm90KFtmZENvbXBhY3RdKTpub3QoW2ZkQ29uZGVuc2VkXSlgLFxuICAgIGV4cG9ydEFzOiAnZmRDb250ZW50RGVuc2l0eScsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IENPTlRFTlRfREVOU0lUWV9ESVJFQ1RJVkUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDb250ZW50RGVuc2l0eURpcmVjdGl2ZSlcbiAgICAgICAgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgQ29udGVudERlbnNpdHlEaXJlY3RpdmUgZXh0ZW5kcyBCZWhhdmlvclN1YmplY3Q8TG9jYWxDb250ZW50RGVuc2l0eU1vZGU+IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICAvKipcbiAgICAgKiBVcGRhdGUgdGhlIGNvbnRlbnQgZGVuc2l0eSBvZiB0aGUgZWxlbWVudCBvbiB0aGUgZmx5XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgZmRDb250ZW50RGVuc2l0eSh2YWw6IExvY2FsQ29udGVudERlbnNpdHlNb2RlIHwgJycpIHtcbiAgICAgICAgdGhpcy5uZXh0KHZhbCA/IHZhbCA6IENvbnRlbnREZW5zaXR5R2xvYmFsS2V5d29yZCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBpbnB1dCBpcyBiYXNpY2FsbHkgc3ludGF4IHN1Z2FyLCBmb3Igbm90IHdyaXRpbmcgZmRDb250ZW50RGVuc2l0eT1cImNvbXBhY3RcIixcbiAgICAgKiBpbnN0ZWFkIHlvdSBjYW4ganVzdCB3cml0ZSBmZENvbXBhY3Q9XCJ0cnVlXCIgb3IgW2ZkQ29tcGFjdF1cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBmZENvbXBhY3QodmFsOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgaWYgKGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWwpKSB7XG4gICAgICAgICAgICB0aGlzLm5leHQoQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1QpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5uZXh0KENvbnRlbnREZW5zaXR5R2xvYmFsS2V5d29yZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGlucHV0IGlzIGJhc2ljYWxseSBzeW50YXggc3VnYXIsIGZvciBub3Qgd3JpdGluZyBmZENvbnRlbnREZW5zaXR5PVwiY29uZGVuc2VkXCIsXG4gICAgICogaW5zdGVhZCB5b3UgY2FuIGp1c3Qgd3JpdGUgZmRDb25kZW5zZWQ9XCJ0cnVlXCIgb3IgW2ZkQ29uZGVuc2VkXVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGZkQ29uZGVuc2VkKHZhbDogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIGlmIChjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsKSkge1xuICAgICAgICAgICAgdGhpcy5uZXh0KENvbnRlbnREZW5zaXR5TW9kZS5DT05ERU5TRUQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5uZXh0KENvbnRlbnREZW5zaXR5R2xvYmFsS2V5d29yZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGlucHV0IGlzIGJhc2ljYWxseSBzeW50YXggc3VnYXIsIGZvciBub3Qgd3JpdGluZyBmZENvbnRlbnREZW5zaXR5PVwiY296eVwiLFxuICAgICAqIGluc3RlYWQgeW91IGNhbiBqdXN0IHdyaXRlIGZkQ296eT1cInRydWVcIiBvciBbZmRDb3p5XVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGZkQ296eSh2YWw6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICBpZiAoY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbCkpIHtcbiAgICAgICAgICAgIHRoaXMubmV4dChDb250ZW50RGVuc2l0eU1vZGUuQ09aWSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm5leHQoQ29udGVudERlbnNpdHlHbG9iYWxLZXl3b3JkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKENvbnRlbnREZW5zaXR5R2xvYmFsS2V5d29yZCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb21wbGV0ZSgpO1xuICAgIH1cbn1cbiJdfQ==
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1kZW5zaXR5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2NvbnRlbnQtZGVuc2l0eS9kaXJlY3RpdmVzL2NvbnRlbnQtZGVuc2l0eS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsa0JBQWtCLEVBQTJCLE1BQU0sMEJBQTBCLENBQUM7QUFDcEgsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7O0FBRXhFOzs7R0FHRztBQWNILE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxlQUF3QztJQXlEakYsY0FBYztJQUNkO1FBQ0ksS0FBSyxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFDdkMsQ0FBQztJQTNERDs7T0FFRztJQUNILElBQ0ksZ0JBQWdCLENBQUMsR0FBaUM7UUFDbEQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzVCLElBQUksU0FBUyxFQUFFLElBQUksR0FBRyxLQUFLLEVBQUUsRUFBRTtnQkFDM0IsT0FBTyxDQUFDLEdBQUcsQ0FDUCxjQUFjLEdBQUc7OEJBQ1AsMkJBQTJCLFlBQVksQ0FDcEQsQ0FBQzthQUNMO1lBQ0QsR0FBRyxHQUFHLDJCQUEyQixDQUFDO1NBQ3JDO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUE4QixDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQ0ksU0FBUyxDQUFDLEdBQWlCO1FBQzNCLElBQUkscUJBQXFCLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUN6QzthQUFNO1lBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1NBQzFDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQ0ksV0FBVyxDQUFDLEdBQWlCO1FBQzdCLElBQUkscUJBQXFCLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUMzQzthQUFNO1lBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1NBQzFDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQ0ksTUFBTSxDQUFDLEdBQWlCO1FBQ3hCLElBQUkscUJBQXFCLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN0QzthQUFNO1lBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1NBQzFDO0lBQ0wsQ0FBQztJQU9ELGNBQWM7SUFDZCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3BCLENBQUM7O29IQWpFUSx1QkFBdUI7d0dBQXZCLHVCQUF1Qiw0ZEFQckI7UUFDUDtZQUNJLE9BQU8sRUFBRSx5QkFBeUI7WUFDbEMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztTQUN6RDtLQUNKOzJGQUVRLHVCQUF1QjtrQkFibkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUU7OztxRkFHdUU7b0JBQ2pGLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUseUJBQXlCOzRCQUNsQyxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx3QkFBd0IsQ0FBQzt5QkFDekQ7cUJBQ0o7aUJBQ0o7MEVBTU8sZ0JBQWdCO3NCQURuQixLQUFLO2dCQW1CRixTQUFTO3NCQURaLEtBQUs7Z0JBY0YsV0FBVztzQkFEZCxLQUFLO2dCQWNGLE1BQU07c0JBRFQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgZm9yd2FyZFJlZiwgSW5wdXQsIGlzRGV2TW9kZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5R2xvYmFsS2V5d29yZCwgQ29udGVudERlbnNpdHlNb2RlLCBMb2NhbENvbnRlbnREZW5zaXR5TW9kZSB9IGZyb20gJy4uL2NvbnRlbnQtZGVuc2l0eS50eXBlcyc7XG5pbXBvcnQgeyBDT05URU5UX0RFTlNJVFlfRElSRUNUSVZFIH0gZnJvbSAnLi4vdG9rZW5zL2NvbnRlbnQtZGVuc2l0eS1kaXJlY3RpdmUnO1xuaW1wb3J0IHsgaXNDb250ZW50RGVuc2l0eU1vZGUgfSBmcm9tICcuLi9oZWxwZXJzL2RlbnNpdHktdHlwZS1jaGVja2Vycyc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRvIGNvbnRyb2wgdGhlIGNvbnRlbnQgZGVuc2l0eSBvZiB0aGUgZWxlbWVudHMuXG4gKiBUaGlzIERpcmVjdGl2ZSBpcyB1c2VkIGluIGRlbnNpdHkgY29udHJvbGxlcnMgYW5kIGNvbnN1bWVyc1xuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogYFtmZENvbnRlbnREZW5zaXR5XTpub3QoW2ZkQ29tcGFjdF0pOm5vdChbZmRDb25kZW5zZWRdKTpub3QoW2ZkQ296eV0pLFxuICAgICAgICAgICAgICAgIFtmZENvbXBhY3RdOm5vdChbZmRDb250ZW50RGVuc2l0eV0pOm5vdChbZmRDb25kZW5zZWRdKTpub3QoW2ZkQ296eV0pLFxuICAgICAgICAgICAgICAgIFtmZENvbmRlbnNlZF06bm90KFtmZENvbnRlbnREZW5zaXR5XSk6bm90KFtmZENvbXBhY3RdKTpub3QoW2ZkQ296eV0pLFxuICAgICAgICAgICAgICAgIFtmZENvenldOm5vdChbZmRDb250ZW50RGVuc2l0eV0pOm5vdChbZmRDb21wYWN0XSk6bm90KFtmZENvbmRlbnNlZF0pYCxcbiAgICBleHBvcnRBczogJ2ZkQ29udGVudERlbnNpdHknLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBDT05URU5UX0RFTlNJVFlfRElSRUNUSVZFLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ29udGVudERlbnNpdHlEaXJlY3RpdmUpXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIENvbnRlbnREZW5zaXR5RGlyZWN0aXZlIGV4dGVuZHMgQmVoYXZpb3JTdWJqZWN0PExvY2FsQ29udGVudERlbnNpdHlNb2RlPiBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgLyoqXG4gICAgICogVXBkYXRlIHRoZSBjb250ZW50IGRlbnNpdHkgb2YgdGhlIGVsZW1lbnQgb24gdGhlIGZseVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGZkQ29udGVudERlbnNpdHkodmFsOiBMb2NhbENvbnRlbnREZW5zaXR5TW9kZSB8ICcnKSB7XG4gICAgICAgIGlmICghaXNDb250ZW50RGVuc2l0eU1vZGUodmFsKSkge1xuICAgICAgICAgICAgaWYgKGlzRGV2TW9kZSgpICYmIHZhbCAhPT0gJycpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICAgICAgICAgICAgYFRoZSB2YWx1ZSBcIiR7dmFsfVwiIGlzIG5vdCBhIHZhbGlkIGNvbnRlbnQgZGVuc2l0eSBtb2RlLlxuICAgICAgICAgICAgICAgICAgICAgVXNpbmcgXCIke0NvbnRlbnREZW5zaXR5R2xvYmFsS2V5d29yZH1cIiBpbnN0ZWFkLmBcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmFsID0gQ29udGVudERlbnNpdHlHbG9iYWxLZXl3b3JkO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubmV4dCh2YWwgYXMgTG9jYWxDb250ZW50RGVuc2l0eU1vZGUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRoaXMgaW5wdXQgaXMgYmFzaWNhbGx5IHN5bnRheCBzdWdhciwgZm9yIG5vdCB3cml0aW5nIGZkQ29udGVudERlbnNpdHk9XCJjb21wYWN0XCIsXG4gICAgICogaW5zdGVhZCB5b3UgY2FuIGp1c3Qgd3JpdGUgZmRDb21wYWN0PVwidHJ1ZVwiIG9yIFtmZENvbXBhY3RdXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgZmRDb21wYWN0KHZhbDogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIGlmIChjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsKSkge1xuICAgICAgICAgICAgdGhpcy5uZXh0KENvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNUKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubmV4dChDb250ZW50RGVuc2l0eUdsb2JhbEtleXdvcmQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBpbnB1dCBpcyBiYXNpY2FsbHkgc3ludGF4IHN1Z2FyLCBmb3Igbm90IHdyaXRpbmcgZmRDb250ZW50RGVuc2l0eT1cImNvbmRlbnNlZFwiLFxuICAgICAqIGluc3RlYWQgeW91IGNhbiBqdXN0IHdyaXRlIGZkQ29uZGVuc2VkPVwidHJ1ZVwiIG9yIFtmZENvbmRlbnNlZF1cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBmZENvbmRlbnNlZCh2YWw6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICBpZiAoY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbCkpIHtcbiAgICAgICAgICAgIHRoaXMubmV4dChDb250ZW50RGVuc2l0eU1vZGUuQ09OREVOU0VEKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMubmV4dChDb250ZW50RGVuc2l0eUdsb2JhbEtleXdvcmQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBpbnB1dCBpcyBiYXNpY2FsbHkgc3ludGF4IHN1Z2FyLCBmb3Igbm90IHdyaXRpbmcgZmRDb250ZW50RGVuc2l0eT1cImNvenlcIixcbiAgICAgKiBpbnN0ZWFkIHlvdSBjYW4ganVzdCB3cml0ZSBmZENvenk9XCJ0cnVlXCIgb3IgW2ZkQ296eV1cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBmZENvenkodmFsOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgaWYgKGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWwpKSB7XG4gICAgICAgICAgICB0aGlzLm5leHQoQ29udGVudERlbnNpdHlNb2RlLkNPWlkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5uZXh0KENvbnRlbnREZW5zaXR5R2xvYmFsS2V5d29yZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcihDb250ZW50RGVuc2l0eUdsb2JhbEtleXdvcmQpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29tcGxldGUoKTtcbiAgICB9XG59XG4iXX0=
@@ -1,5 +1,6 @@
1
- import { ContentDensityMode } from '../content-density.types';
1
+ import { ContentDensityGlobalKeyword, ContentDensityMode } from '../content-density.types';
2
2
  export const isCompact = (density) => density === ContentDensityMode.COMPACT;
3
3
  export const isCondensed = (density) => density === ContentDensityMode.CONDENSED;
4
4
  export const isCozy = (density) => density === ContentDensityMode.COZY;
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVuc2l0eS10eXBlLWNoZWNrZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29udGVudC1kZW5zaXR5L2hlbHBlcnMvZGVuc2l0eS10eXBlLWNoZWNrZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTlELE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLE9BQTJCLEVBQVcsRUFBRSxDQUFDLE9BQU8sS0FBSyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7QUFDMUcsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLENBQUMsT0FBMkIsRUFBVyxFQUFFLENBQUMsT0FBTyxLQUFLLGtCQUFrQixDQUFDLFNBQVMsQ0FBQztBQUM5RyxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxPQUEyQixFQUFXLEVBQUUsQ0FBQyxPQUFPLEtBQUssa0JBQWtCLENBQUMsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGVudERlbnNpdHlNb2RlIH0gZnJvbSAnLi4vY29udGVudC1kZW5zaXR5LnR5cGVzJztcblxuZXhwb3J0IGNvbnN0IGlzQ29tcGFjdCA9IChkZW5zaXR5OiBDb250ZW50RGVuc2l0eU1vZGUpOiBib29sZWFuID0+IGRlbnNpdHkgPT09IENvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNUO1xuZXhwb3J0IGNvbnN0IGlzQ29uZGVuc2VkID0gKGRlbnNpdHk6IENvbnRlbnREZW5zaXR5TW9kZSk6IGJvb2xlYW4gPT4gZGVuc2l0eSA9PT0gQ29udGVudERlbnNpdHlNb2RlLkNPTkRFTlNFRDtcbmV4cG9ydCBjb25zdCBpc0NvenkgPSAoZGVuc2l0eTogQ29udGVudERlbnNpdHlNb2RlKTogYm9vbGVhbiA9PiBkZW5zaXR5ID09PSBDb250ZW50RGVuc2l0eU1vZGUuQ09aWTtcbiJdfQ==
5
+ export const isContentDensityMode = (density) => isCompact(density) || isCondensed(density) || isCozy(density) || density === ContentDensityGlobalKeyword;
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVuc2l0eS10eXBlLWNoZWNrZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29udGVudC1kZW5zaXR5L2hlbHBlcnMvZGVuc2l0eS10eXBlLWNoZWNrZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLE9BQVksRUFBVyxFQUFFLENBQUMsT0FBTyxLQUFLLGtCQUFrQixDQUFDLE9BQU8sQ0FBQztBQUMzRixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxPQUFZLEVBQVcsRUFBRSxDQUFDLE9BQU8sS0FBSyxrQkFBa0IsQ0FBQyxTQUFTLENBQUM7QUFDL0YsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLENBQUMsT0FBWSxFQUFXLEVBQUUsQ0FBQyxPQUFPLEtBQUssa0JBQWtCLENBQUMsSUFBSSxDQUFDO0FBQ3JGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBQUMsT0FBWSxFQUFXLEVBQUUsQ0FDMUQsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksT0FBTyxLQUFLLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGVudERlbnNpdHlHbG9iYWxLZXl3b3JkLCBDb250ZW50RGVuc2l0eU1vZGUgfSBmcm9tICcuLi9jb250ZW50LWRlbnNpdHkudHlwZXMnO1xuXG5leHBvcnQgY29uc3QgaXNDb21wYWN0ID0gKGRlbnNpdHk6IGFueSk6IGJvb2xlYW4gPT4gZGVuc2l0eSA9PT0gQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1Q7XG5leHBvcnQgY29uc3QgaXNDb25kZW5zZWQgPSAoZGVuc2l0eTogYW55KTogYm9vbGVhbiA9PiBkZW5zaXR5ID09PSBDb250ZW50RGVuc2l0eU1vZGUuQ09OREVOU0VEO1xuZXhwb3J0IGNvbnN0IGlzQ296eSA9IChkZW5zaXR5OiBhbnkpOiBib29sZWFuID0+IGRlbnNpdHkgPT09IENvbnRlbnREZW5zaXR5TW9kZS5DT1pZO1xuZXhwb3J0IGNvbnN0IGlzQ29udGVudERlbnNpdHlNb2RlID0gKGRlbnNpdHk6IGFueSk6IGJvb2xlYW4gPT5cbiAgICBpc0NvbXBhY3QoZGVuc2l0eSkgfHwgaXNDb25kZW5zZWQoZGVuc2l0eSkgfHwgaXNDb3p5KGRlbnNpdHkpIHx8IGRlbnNpdHkgPT09IENvbnRlbnREZW5zaXR5R2xvYmFsS2V5d29yZDtcbiJdfQ==
@@ -1,15 +1,18 @@
1
1
  import { of, switchMap } from 'rxjs';
2
- import { ContentDensityGlobalKeyword } from '../content-density.types';
2
+ import { ContentDensityDefaultKeyword, ContentDensityGlobalKeyword } from '../content-density.types';
3
3
  export const getChangesSource$ = (params) => {
4
4
  const serviceValue$ = params.contentDensityService
5
5
  ? params.contentDensityService.contentDensityListener()
6
6
  : of(params.defaultContentDensity);
7
7
  const changesSource$ = params.contentDensityDirective ? params.contentDensityDirective : serviceValue$;
8
8
  return changesSource$.pipe(switchMap((mode) => {
9
- if (mode !== ContentDensityGlobalKeyword) {
10
- return of(mode);
9
+ if (mode === ContentDensityDefaultKeyword) {
10
+ return of(params.defaultContentDensity);
11
11
  }
12
- return serviceValue$;
12
+ if (mode === ContentDensityGlobalKeyword) {
13
+ return serviceValue$;
14
+ }
15
+ return of(mode);
13
16
  }));
14
17
  };
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWNoYW5nZXMtc291cmNlLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29udGVudC1kZW5zaXR5L2hlbHBlcnMvZ2V0LWNoYW5nZXMtc291cmNlLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWpELE9BQU8sRUFBRSwyQkFBMkIsRUFBK0MsTUFBTSwwQkFBMEIsQ0FBQztBQUVwSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLE1BSWpDLEVBQWtDLEVBQUU7SUFDakMsTUFBTSxhQUFhLEdBQW1DLE1BQU0sQ0FBQyxxQkFBcUI7UUFDOUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxzQkFBc0IsRUFBRTtRQUN2RCxDQUFDLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7SUFFdkcsT0FBTyxjQUFjLENBQUMsSUFBSSxDQUN0QixTQUFTLENBQUMsQ0FBQyxJQUE2QixFQUFFLEVBQUU7UUFDeEMsSUFBSSxJQUFJLEtBQUssMkJBQTJCLEVBQUU7WUFDdEMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDbkI7UUFDRCxPQUFPLGFBQWEsQ0FBQztJQUN6QixDQUFDLENBQUMsQ0FDTCxDQUFDO0FBQ04sQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZ2xvYmFsLWNvbnRlbnQtZGVuc2l0eS5zZXJ2aWNlJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5R2xvYmFsS2V5d29yZCwgQ29udGVudERlbnNpdHlNb2RlLCBMb2NhbENvbnRlbnREZW5zaXR5TW9kZSB9IGZyb20gJy4uL2NvbnRlbnQtZGVuc2l0eS50eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBnZXRDaGFuZ2VzU291cmNlJCA9IChwYXJhbXM6IHtcbiAgICBkZWZhdWx0Q29udGVudERlbnNpdHk6IENvbnRlbnREZW5zaXR5TW9kZTtcbiAgICBjb250ZW50RGVuc2l0eURpcmVjdGl2ZT86IE9ic2VydmFibGU8TG9jYWxDb250ZW50RGVuc2l0eU1vZGU+O1xuICAgIGNvbnRlbnREZW5zaXR5U2VydmljZT86IEdsb2JhbENvbnRlbnREZW5zaXR5U2VydmljZTtcbn0pOiBPYnNlcnZhYmxlPENvbnRlbnREZW5zaXR5TW9kZT4gPT4ge1xuICAgIGNvbnN0IHNlcnZpY2VWYWx1ZSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHlNb2RlPiA9IHBhcmFtcy5jb250ZW50RGVuc2l0eVNlcnZpY2VcbiAgICAgICAgPyBwYXJhbXMuY29udGVudERlbnNpdHlTZXJ2aWNlLmNvbnRlbnREZW5zaXR5TGlzdGVuZXIoKVxuICAgICAgICA6IG9mKHBhcmFtcy5kZWZhdWx0Q29udGVudERlbnNpdHkpO1xuICAgIGNvbnN0IGNoYW5nZXNTb3VyY2UkID0gcGFyYW1zLmNvbnRlbnREZW5zaXR5RGlyZWN0aXZlID8gcGFyYW1zLmNvbnRlbnREZW5zaXR5RGlyZWN0aXZlIDogc2VydmljZVZhbHVlJDtcblxuICAgIHJldHVybiBjaGFuZ2VzU291cmNlJC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKG1vZGU6IExvY2FsQ29udGVudERlbnNpdHlNb2RlKSA9PiB7XG4gICAgICAgICAgICBpZiAobW9kZSAhPT0gQ29udGVudERlbnNpdHlHbG9iYWxLZXl3b3JkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKG1vZGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHNlcnZpY2VWYWx1ZSQ7XG4gICAgICAgIH0pXG4gICAgKTtcbn07XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWNoYW5nZXMtc291cmNlLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29udGVudC1kZW5zaXR5L2hlbHBlcnMvZ2V0LWNoYW5nZXMtc291cmNlLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWpELE9BQU8sRUFDSCw0QkFBNEIsRUFDNUIsMkJBQTJCLEVBRzlCLE1BQU0sMEJBQTBCLENBQUM7QUFFbEMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxNQUlqQyxFQUFrQyxFQUFFO0lBQ2pDLE1BQU0sYUFBYSxHQUFtQyxNQUFNLENBQUMscUJBQXFCO1FBQzlFLENBQUMsQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsc0JBQXNCLEVBQUU7UUFDdkQsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN2QyxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO0lBRXZHLE9BQU8sY0FBYyxDQUFDLElBQUksQ0FDdEIsU0FBUyxDQUFDLENBQUMsSUFBNkIsRUFBRSxFQUFFO1FBQ3hDLElBQUksSUFBSSxLQUFLLDRCQUE0QixFQUFFO1lBQ3ZDLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1NBQzNDO1FBQ0QsSUFBSSxJQUFJLEtBQUssMkJBQTJCLEVBQUU7WUFDdEMsT0FBTyxhQUFhLENBQUM7U0FDeEI7UUFDRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDLENBQUMsQ0FDTCxDQUFDO0FBQ04sQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZ2xvYmFsLWNvbnRlbnQtZGVuc2l0eS5zZXJ2aWNlJztcbmltcG9ydCB7XG4gICAgQ29udGVudERlbnNpdHlEZWZhdWx0S2V5d29yZCxcbiAgICBDb250ZW50RGVuc2l0eUdsb2JhbEtleXdvcmQsXG4gICAgQ29udGVudERlbnNpdHlNb2RlLFxuICAgIExvY2FsQ29udGVudERlbnNpdHlNb2RlXG59IGZyb20gJy4uL2NvbnRlbnQtZGVuc2l0eS50eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBnZXRDaGFuZ2VzU291cmNlJCA9IChwYXJhbXM6IHtcbiAgICBkZWZhdWx0Q29udGVudERlbnNpdHk6IENvbnRlbnREZW5zaXR5TW9kZTtcbiAgICBjb250ZW50RGVuc2l0eURpcmVjdGl2ZT86IE9ic2VydmFibGU8TG9jYWxDb250ZW50RGVuc2l0eU1vZGU+O1xuICAgIGNvbnRlbnREZW5zaXR5U2VydmljZT86IEdsb2JhbENvbnRlbnREZW5zaXR5U2VydmljZTtcbn0pOiBPYnNlcnZhYmxlPENvbnRlbnREZW5zaXR5TW9kZT4gPT4ge1xuICAgIGNvbnN0IHNlcnZpY2VWYWx1ZSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHlNb2RlPiA9IHBhcmFtcy5jb250ZW50RGVuc2l0eVNlcnZpY2VcbiAgICAgICAgPyBwYXJhbXMuY29udGVudERlbnNpdHlTZXJ2aWNlLmNvbnRlbnREZW5zaXR5TGlzdGVuZXIoKVxuICAgICAgICA6IG9mKHBhcmFtcy5kZWZhdWx0Q29udGVudERlbnNpdHkpO1xuICAgIGNvbnN0IGNoYW5nZXNTb3VyY2UkID0gcGFyYW1zLmNvbnRlbnREZW5zaXR5RGlyZWN0aXZlID8gcGFyYW1zLmNvbnRlbnREZW5zaXR5RGlyZWN0aXZlIDogc2VydmljZVZhbHVlJDtcblxuICAgIHJldHVybiBjaGFuZ2VzU291cmNlJC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKG1vZGU6IExvY2FsQ29udGVudERlbnNpdHlNb2RlKSA9PiB7XG4gICAgICAgICAgICBpZiAobW9kZSA9PT0gQ29udGVudERlbnNpdHlEZWZhdWx0S2V5d29yZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBvZihwYXJhbXMuZGVmYXVsdENvbnRlbnREZW5zaXR5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChtb2RlID09PSBDb250ZW50RGVuc2l0eUdsb2JhbEtleXdvcmQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gc2VydmljZVZhbHVlJDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBvZihtb2RlKTtcbiAgICAgICAgfSlcbiAgICApO1xufTtcbiJdfQ==
@@ -12,4 +12,6 @@ export * from './classes/deprecated-cozy.directive';
12
12
  export * from './classes/deprecated-condensed.directive';
13
13
  export * from './testing/mocked-local-content-density-directive';
14
14
  export * from './classes/content-density-observer.settings';
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2NvbnRlbnQtZGVuc2l0eS9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLDRDQUE0QyxDQUFDO0FBRTNELGNBQWMsd0NBQXdDLENBQUM7QUFFdkQsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDZDQUE2QyxDQUFDO0FBRTVELGNBQWMsMkNBQTJDLENBQUM7QUFFMUQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG9DQUFvQyxDQUFDO0FBRW5ELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyw2Q0FBNkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29udGVudC1kZW5zaXR5Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRlbnQtZGVuc2l0eS50eXBlcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vY2xhc3Nlcy9hYnN0cmFjdC1jb250ZW50LWRlbnNpdHktc3RvcmFnZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9jb250ZW50LWRlbnNpdHkuZGlyZWN0aXZlJztcblxuZXhwb3J0ICogZnJvbSAnLi9wcm92aWRlcnMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLXByb3ZpZGVycyc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2NvbnRlbnQtZGVuc2l0eS1vYnNlcnZlci5zZXJ2aWNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9nbG9iYWwtY29udGVudC1kZW5zaXR5LnNlcnZpY2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL2hlbHBlcnMvZGVuc2l0eS10eXBlLWNoZWNrZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vdG9rZW5zL2NvbnRlbnQtZGVuc2l0eS1kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NsYXNzZXMvZGVwcmVjYXRlZC1jb21wYWN0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2NsYXNzZXMvZGVwcmVjYXRlZC1jb3p5LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2NsYXNzZXMvZGVwcmVjYXRlZC1jb25kZW5zZWQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdGVzdGluZy9tb2NrZWQtbG9jYWwtY29udGVudC1kZW5zaXR5LWRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2NsYXNzZXMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNldHRpbmdzJztcbiJdfQ==
15
+ export * from './classes/deprecated-content-density.directive';
16
+ export * from './variables/default-content-density-consumer-config';
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2NvbnRlbnQtZGVuc2l0eS9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLDRDQUE0QyxDQUFDO0FBRTNELGNBQWMsd0NBQXdDLENBQUM7QUFFdkQsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDZDQUE2QyxDQUFDO0FBRTVELGNBQWMsMkNBQTJDLENBQUM7QUFFMUQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG9DQUFvQyxDQUFDO0FBRW5ELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMscURBQXFELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbnRlbnQtZGVuc2l0eS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZW50LWRlbnNpdHkudHlwZXMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NsYXNzZXMvYWJzdHJhY3QtY29udGVudC1kZW5zaXR5LXN0b3JhZ2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvY29udGVudC1kZW5zaXR5LmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzL2NvbnRlbnQtZGVuc2l0eS1vYnNlcnZlci1wcm92aWRlcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9jb250ZW50LWRlbnNpdHktb2JzZXJ2ZXIuc2VydmljZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvZ2xvYmFsLWNvbnRlbnQtZGVuc2l0eS5zZXJ2aWNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9oZWxwZXJzL2RlbnNpdHktdHlwZS1jaGVja2Vycyc7XG5leHBvcnQgKiBmcm9tICcuL3Rva2Vucy9jb250ZW50LWRlbnNpdHktZGlyZWN0aXZlJztcblxuZXhwb3J0ICogZnJvbSAnLi9jbGFzc2VzL2RlcHJlY2F0ZWQtY29tcGFjdC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9jbGFzc2VzL2RlcHJlY2F0ZWQtY296eS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9jbGFzc2VzL2RlcHJlY2F0ZWQtY29uZGVuc2VkLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3Rlc3RpbmcvbW9ja2VkLWxvY2FsLWNvbnRlbnQtZGVuc2l0eS1kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9jbGFzc2VzL2NvbnRlbnQtZGVuc2l0eS1vYnNlcnZlci5zZXR0aW5ncyc7XG5leHBvcnQgKiBmcm9tICcuL2NsYXNzZXMvZGVwcmVjYXRlZC1jb250ZW50LWRlbnNpdHkuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdmFyaWFibGVzL2RlZmF1bHQtY29udGVudC1kZW5zaXR5LWNvbnN1bWVyLWNvbmZpZyc7XG4iXX0=
@@ -11,11 +11,48 @@ import { DestroyedService } from '@fundamental-ngx/core/utils';
11
11
  import { ContentDensityObserverSettings } from '../classes/content-density-observer.settings';
12
12
  import * as i0 from "@angular/core";
13
13
  import * as i1 from "../classes/content-density-observer.settings";
14
+ const isFactoryProvider = (obj) => !!(obj && obj.useFactory);
15
+ const getDeps = (injector, defaultContentDensity) => (defaultContentDensity.deps || []).map((dep) => {
16
+ if (Array.isArray(dep)) {
17
+ let type;
18
+ let flags = InjectFlags.Default;
19
+ for (let index = 0; index < dep.length; index++) {
20
+ const flag = dep[index]['__NG_DI_FLAG__'];
21
+ if (typeof flag === 'number') {
22
+ // eslint-disable-next-line no-bitwise
23
+ flags |= flag;
24
+ }
25
+ else {
26
+ type = dep[index];
27
+ }
28
+ }
29
+ return injector.get(type, undefined, flags);
30
+ }
31
+ return injector.get(dep, undefined, InjectFlags.Default);
32
+ });
33
+ const getDefaultContentDensity = (injector, configuration) => {
34
+ if (typeof configuration.defaultContentDensity === 'string') {
35
+ return configuration.defaultContentDensity;
36
+ }
37
+ if (isFactoryProvider(configuration.defaultContentDensity)) {
38
+ const deps = getDeps(injector, configuration.defaultContentDensity);
39
+ return configuration.defaultContentDensity.useFactory(...deps);
40
+ }
41
+ return injector.get(configuration.defaultContentDensity, undefined, undefined);
42
+ };
43
+ const initialContentDensity = (injector, configuration) => {
44
+ const serviceValue = injector.get(GlobalContentDensityService, null, InjectFlags.Optional)?.currentContentDensity;
45
+ if (serviceValue) {
46
+ return serviceValue;
47
+ }
48
+ return getDefaultContentDensity(injector, {
49
+ ...defaultContentDensityObserverConfigs,
50
+ ...(configuration || {})
51
+ });
52
+ };
14
53
  export class ContentDensityObserver extends BehaviorSubject {
15
54
  constructor(_injector, _providedConfig) {
16
- super(_injector.get(GlobalContentDensityService, null, InjectFlags.Optional)?.currentContentDensity ||
17
- _providedConfig?.defaultContentDensity ||
18
- defaultContentDensityObserverConfigs.defaultContentDensity);
55
+ super(initialContentDensity(_injector, _providedConfig));
19
56
  this._injector = _injector;
20
57
  this._providedConfig = _providedConfig;
21
58
  /** @hidden */
@@ -26,6 +63,9 @@ export class ContentDensityObserver extends BehaviorSubject {
26
63
  [ContentDensityMode.CONDENSED]: () => this.isSupported(ContentDensityMode.COMPACT) ? ContentDensityMode.COMPACT : ContentDensityMode.COZY,
27
64
  [ContentDensityMode.COZY]: () => ContentDensityMode.COZY // No alternative here, everyone should support it
28
65
  };
66
+ if (_providedConfig?.debug) {
67
+ console.log({ initialContentDensity: initialContentDensity(_injector, _providedConfig) });
68
+ }
29
69
  this.configuration = {
30
70
  ...defaultContentDensityObserverConfigs,
31
71
  ...(_providedConfig || {})
@@ -35,19 +75,31 @@ export class ContentDensityObserver extends BehaviorSubject {
35
75
  this.contentDensityDirective = this._injector.get(CONTENT_DENSITY_DIRECTIVE, undefined, InjectFlags.Optional);
36
76
  this.contentDensityService = this._injector.get(GlobalContentDensityService, undefined, InjectFlags.Optional);
37
77
  const changesSource$ = getChangesSource$({
38
- defaultContentDensity: this.configuration.defaultContentDensity,
78
+ defaultContentDensity: getDefaultContentDensity(this._injector, this.configuration),
39
79
  contentDensityDirective: this.contentDensityDirective,
40
80
  contentDensityService: this.contentDensityService
41
81
  }).pipe(map((density) => {
82
+ if (this.configuration.debug) {
83
+ console.log(`ContentDensityObserver: density changed to ${density}`);
84
+ }
42
85
  if (!this.isSupported(density)) {
43
- return this.alternativeTo[density]();
86
+ try {
87
+ return this.alternativeTo[density]();
88
+ }
89
+ catch (e) {
90
+ throw new Error(`ContentDensityObserver: density ${density} is not supported`);
91
+ }
44
92
  }
45
93
  return density;
46
94
  }), distinctUntilChanged(), takeUntil(this.destroy$));
47
95
  changesSource$
48
96
  .pipe(tap((density) => this._callCallbacks(density)), finalize(() => this.complete()))
49
97
  .subscribe((density) => {
98
+ if (this.configuration.debug) {
99
+ console.log(`ContentDensityObserver: density emmited ${density}`);
100
+ }
50
101
  this.next(density);
102
+ this.changeDetectorRef.markForCheck();
51
103
  });
52
104
  this.isCompact$ = changesSource$.pipe(map(isCompact));
53
105
  this.isCozy$ = changesSource$.pipe(map(isCozy));
@@ -125,4 +177,4 @@ ContentDensityObserver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0
125
177
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: ContentDensityObserver, decorators: [{
126
178
  type: Injectable
127
179
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.ContentDensityObserverSettings }]; } });
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb250ZW50LWRlbnNpdHkvc2VydmljZXMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBRUgsa0JBQWtCLEVBR3JCLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUE0QixTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RILE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzVHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOzs7QUFHOUYsTUFBTSxPQUFPLHNCQUF1QixTQUFRLGVBQW1DO0lBMEMzRSxZQUFvQixTQUFtQixFQUFVLGVBQWdEO1FBQzdGLEtBQUssQ0FDRCxTQUFTLENBQUMsR0FBRyxDQUFDLDJCQUEyQixFQUFFLElBQUksRUFBRSxXQUFXLENBQUMsUUFBUSxDQUFDLEVBQUUscUJBQXFCO1lBQ3pGLGVBQWUsRUFBRSxxQkFBcUI7WUFDdEMsb0NBQW9DLENBQUMscUJBQXFCLENBQ2pFLENBQUM7UUFMYyxjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQVUsb0JBQWUsR0FBZixlQUFlLENBQWlDO1FBbENqRyxjQUFjO1FBQ04sZUFBVSxHQUF1QyxJQUFJLEdBQUcsRUFBaUMsQ0FBQztRQW1CbEcsY0FBYztRQUNOLGtCQUFhLEdBQUc7WUFDcEIsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUF1QixFQUFFLENBQ25ELElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsSUFBSTtZQUMzRyxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxFQUFFLEdBQXVCLEVBQUUsQ0FDckQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJO1lBQ3ZHLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBdUIsRUFBRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxrREFBa0Q7U0FDbEksQ0FBQztRQWFFLElBQUksQ0FBQyxhQUFhLEdBQUc7WUFDakIsR0FBRyxvQ0FBb0M7WUFDdkMsR0FBRyxDQUFDLGVBQWUsSUFBSSxFQUFFLENBQUM7U0FDN0IsQ0FBQztRQUNGLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMseUJBQXlCLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5RyxJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsMkJBQTJCLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUU5RyxNQUFNLGNBQWMsR0FBbUMsaUJBQWlCLENBQUM7WUFDckUscUJBQXFCLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUI7WUFDL0QsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLHVCQUF1QjtZQUNyRCxxQkFBcUIsRUFBRSxJQUFJLENBQUMscUJBQXFCO1NBQ3BELENBQUMsQ0FBQyxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsT0FBMkIsRUFBRSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUM1QixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQzthQUN4QztZQUNELE9BQU8sT0FBTyxDQUFDO1FBQ25CLENBQUMsQ0FBQyxFQUNGLG9CQUFvQixFQUFFLEVBQ3RCLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQzNCLENBQUM7UUFDRixjQUFjO2FBQ1QsSUFBSSxDQUNELEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUM5QyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQ2xDO2FBQ0EsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztRQUNQLElBQUksQ0FBQyxVQUFVLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsT0FBTyxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLFlBQVksR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQzFELElBQUksZUFBZSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUM7Z0JBQ1Qsc0JBQXNCLEVBQUUsSUFBSSxDQUFDLGFBQWE7Z0JBQzFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7YUFDbkQsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQTJCO1FBQ25DLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxTQUFTO1FBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUM1QixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3BHO1FBQ0QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksV0FBVztRQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUU7WUFDOUIsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUMxRztRQUNELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLE1BQU07UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQ3pCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDM0Y7UUFDRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTyxDQUNILEdBQUcsZUFBK0U7UUFFbEYsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFO1lBQ3ZDLE1BQU0sUUFBUSxHQUFHLDZCQUE2QixDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQy9ELElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxRQUFRLENBQUMsQ0FBQztZQUM5QyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYyxDQUNWLEdBQUcsZUFBK0U7UUFFbEYsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzNDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELGNBQWM7SUFDTixjQUFjLENBQUMsT0FBMkI7UUFDOUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxjQUFjO0lBQ04sZ0JBQWdCLENBQUMsTUFBMkIsRUFBRSxRQUFxQztRQUN2RixPQUFPLE1BQU07YUFDUixJQUFJLENBQ0QsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUNiLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUMsRUFDaEQsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDM0I7YUFDQSxTQUFTLEVBQUUsQ0FBQztJQUNyQixDQUFDOzttSEFwS1Esc0JBQXNCO3VIQUF0QixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBFbGVtZW50UmVmLCBJbmplY3RhYmxlLCBJbmplY3RGbGFncywgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQ29udGVudERlbnNpdHlDYWxsYmFja0ZuLFxuICAgIENvbnRlbnREZW5zaXR5TW9kZSxcbiAgICBDb250ZW50RGVuc2l0eU9ic2VydmVyVGFyZ2V0LFxuICAgIExvY2FsQ29udGVudERlbnNpdHlNb2RlXG59IGZyb20gJy4uL2NvbnRlbnQtZGVuc2l0eS50eXBlcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaW5hbGl6ZSwgbWFwLCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24sIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBHbG9iYWxDb250ZW50RGVuc2l0eVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9nbG9iYWwtY29udGVudC1kZW5zaXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgZ2V0Q2hhbmdlc1NvdXJjZSQgfSBmcm9tICcuLi9oZWxwZXJzL2dldC1jaGFuZ2VzLXNvdXJjZS5wcm92aWRlcic7XG5pbXBvcnQgeyBkZWZhdWx0Q29udGVudERlbnNpdHlPYnNlcnZlckNvbmZpZ3MgfSBmcm9tICcuLi92YXJpYWJsZXMvZGVmYXVsdC1jb250ZW50LWRlbnNpdHktY29uc3VtZXItY29uZmlnJztcbmltcG9ydCB7IGNvbnRlbnREZW5zaXR5Q2FsbGJhY2tGYWN0b3J5IH0gZnJvbSAnLi4vaGVscGVycy9jb250ZW50LWRlbnNpdHktY2hhbmdlLWNhbGxiYWNrLWZhY3RvcnknO1xuaW1wb3J0IHsgaXNDb21wYWN0LCBpc0NvbmRlbnNlZCwgaXNDb3p5IH0gZnJvbSAnLi4vaGVscGVycy9kZW5zaXR5LXR5cGUtY2hlY2tlcnMnO1xuaW1wb3J0IHsgQ09OVEVOVF9ERU5TSVRZX0RJUkVDVElWRSB9IGZyb20gJy4uL3Rva2Vucy9jb250ZW50LWRlbnNpdHktZGlyZWN0aXZlJztcbmltcG9ydCB7IERlc3Ryb3llZFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzIH0gZnJvbSAnLi4vY2xhc3Nlcy9jb250ZW50LWRlbnNpdHktb2JzZXJ2ZXIuc2V0dGluZ3MnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ29udGVudERlbnNpdHlPYnNlcnZlciBleHRlbmRzIEJlaGF2aW9yU3ViamVjdDxDb250ZW50RGVuc2l0eU1vZGU+IHtcbiAgICAvKiogU3RyZWFtIGZvciBnZXR0aW5nIGNvbXBhY3Qgc3RhdGUgY2hhbmdlcyAqL1xuICAgIGlzQ29tcGFjdCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgLyoqIFN0cmVhbSBmb3IgZ2V0dGluZyBjb3p5IHN0YXRlIGNoYW5nZXMgKi9cbiAgICBpc0NvenkkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIC8qKiBTdHJlYW0gZm9yIGdldHRpbmcgY29uZGVuc2VkIHN0YXRlIGNoYW5nZXMgKi9cbiAgICBpc0NvbmRlbnNlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NhbGxiYWNrczogTWFwPGFueSwgQ29udGVudERlbnNpdHlDYWxsYmFja0ZuPiA9IG5ldyBNYXA8YW55LCBDb250ZW50RGVuc2l0eUNhbGxiYWNrRm4+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2lzQ29tcGFjdDogYm9vbGVhbjtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2lzQ296eTogYm9vbGVhbjtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2lzQ29uZGVuc2VkOiBib29sZWFuO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jb21wYWN0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jb25kZW5zZWRTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NvenlTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uOiBSZXF1aXJlZDxDb250ZW50RGVuc2l0eU9ic2VydmVyU2V0dGluZ3M+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIGFsdGVybmF0aXZlVG8gPSB7XG4gICAgICAgIFtDb250ZW50RGVuc2l0eU1vZGUuQ09NUEFDVF06ICgpOiBDb250ZW50RGVuc2l0eU1vZGUgPT5cbiAgICAgICAgICAgIHRoaXMuaXNTdXBwb3J0ZWQoQ29udGVudERlbnNpdHlNb2RlLkNPTkRFTlNFRCkgPyBDb250ZW50RGVuc2l0eU1vZGUuQ09OREVOU0VEIDogQ29udGVudERlbnNpdHlNb2RlLkNPWlksXG4gICAgICAgIFtDb250ZW50RGVuc2l0eU1vZGUuQ09OREVOU0VEXTogKCk6IENvbnRlbnREZW5zaXR5TW9kZSA9PlxuICAgICAgICAgICAgdGhpcy5pc1N1cHBvcnRlZChDb250ZW50RGVuc2l0eU1vZGUuQ09NUEFDVCkgPyBDb250ZW50RGVuc2l0eU1vZGUuQ09NUEFDVCA6IENvbnRlbnREZW5zaXR5TW9kZS5DT1pZLFxuICAgICAgICBbQ29udGVudERlbnNpdHlNb2RlLkNPWlldOiAoKTogQ29udGVudERlbnNpdHlNb2RlID0+IENvbnRlbnREZW5zaXR5TW9kZS5DT1pZIC8vIE5vIGFsdGVybmF0aXZlIGhlcmUsIGV2ZXJ5b25lIHNob3VsZCBzdXBwb3J0IGl0XG4gICAgfTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQ6IE9ic2VydmFibGU8dm9pZD47XG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWY7XG4gICAgcHJpdmF0ZSBjb250ZW50RGVuc2l0eURpcmVjdGl2ZT86IE9ic2VydmFibGU8TG9jYWxDb250ZW50RGVuc2l0eU1vZGU+O1xuICAgIHByaXZhdGUgY29udGVudERlbnNpdHlTZXJ2aWNlPzogR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfaW5qZWN0b3I6IEluamVjdG9yLCBwcml2YXRlIF9wcm92aWRlZENvbmZpZz86IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJTZXR0aW5ncykge1xuICAgICAgICBzdXBlcihcbiAgICAgICAgICAgIF9pbmplY3Rvci5nZXQoR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlLCBudWxsLCBJbmplY3RGbGFncy5PcHRpb25hbCk/LmN1cnJlbnRDb250ZW50RGVuc2l0eSB8fFxuICAgICAgICAgICAgICAgIF9wcm92aWRlZENvbmZpZz8uZGVmYXVsdENvbnRlbnREZW5zaXR5IHx8XG4gICAgICAgICAgICAgICAgZGVmYXVsdENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJDb25maWdzLmRlZmF1bHRDb250ZW50RGVuc2l0eVxuICAgICAgICApO1xuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb24gPSB7XG4gICAgICAgICAgICAuLi5kZWZhdWx0Q29udGVudERlbnNpdHlPYnNlcnZlckNvbmZpZ3MsXG4gICAgICAgICAgICAuLi4oX3Byb3ZpZGVkQ29uZmlnIHx8IHt9KVxuICAgICAgICB9O1xuICAgICAgICB0aGlzLmRlc3Ryb3kkID0gdGhpcy5faW5qZWN0b3IuZ2V0KERlc3Ryb3llZFNlcnZpY2UpO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmID0gdGhpcy5faW5qZWN0b3IuZ2V0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICAgICAgdGhpcy5jb250ZW50RGVuc2l0eURpcmVjdGl2ZSA9IHRoaXMuX2luamVjdG9yLmdldChDT05URU5UX0RFTlNJVFlfRElSRUNUSVZFLCB1bmRlZmluZWQsIEluamVjdEZsYWdzLk9wdGlvbmFsKTtcbiAgICAgICAgdGhpcy5jb250ZW50RGVuc2l0eVNlcnZpY2UgPSB0aGlzLl9pbmplY3Rvci5nZXQoR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlLCB1bmRlZmluZWQsIEluamVjdEZsYWdzLk9wdGlvbmFsKTtcblxuICAgICAgICBjb25zdCBjaGFuZ2VzU291cmNlJDogT2JzZXJ2YWJsZTxDb250ZW50RGVuc2l0eU1vZGU+ID0gZ2V0Q2hhbmdlc1NvdXJjZSQoe1xuICAgICAgICAgICAgZGVmYXVsdENvbnRlbnREZW5zaXR5OiB0aGlzLmNvbmZpZ3VyYXRpb24uZGVmYXVsdENvbnRlbnREZW5zaXR5LFxuICAgICAgICAgICAgY29udGVudERlbnNpdHlEaXJlY3RpdmU6IHRoaXMuY29udGVudERlbnNpdHlEaXJlY3RpdmUsXG4gICAgICAgICAgICBjb250ZW50RGVuc2l0eVNlcnZpY2U6IHRoaXMuY29udGVudERlbnNpdHlTZXJ2aWNlXG4gICAgICAgIH0pLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGRlbnNpdHk6IENvbnRlbnREZW5zaXR5TW9kZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5pc1N1cHBvcnRlZChkZW5zaXR5KSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hbHRlcm5hdGl2ZVRvW2RlbnNpdHldKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBkZW5zaXR5O1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpXG4gICAgICAgICk7XG4gICAgICAgIGNoYW5nZXNTb3VyY2UkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YXAoKGRlbnNpdHkpID0+IHRoaXMuX2NhbGxDYWxsYmFja3MoZGVuc2l0eSkpLFxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHRoaXMuY29tcGxldGUoKSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGRlbnNpdHkpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm5leHQoZGVuc2l0eSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5pc0NvbXBhY3QkID0gY2hhbmdlc1NvdXJjZSQucGlwZShtYXAoaXNDb21wYWN0KSk7XG4gICAgICAgIHRoaXMuaXNDb3p5JCA9IGNoYW5nZXNTb3VyY2UkLnBpcGUobWFwKGlzQ296eSkpO1xuICAgICAgICB0aGlzLmlzQ29uZGVuc2VkJCA9IGNoYW5nZXNTb3VyY2UkLnBpcGUobWFwKGlzQ29uZGVuc2VkKSk7XG4gICAgICAgIGlmIChfcHJvdmlkZWRDb25maWcpIHtcbiAgICAgICAgICAgIHRoaXMuY29uc3VtZSh7XG4gICAgICAgICAgICAgICAgY29udGVudERlbnNpdHlTZXR0aW5nczogdGhpcy5jb25maWd1cmF0aW9uLFxuICAgICAgICAgICAgICAgIGVsZW1lbnRSZWY6ICgpID0+IHRoaXMuX2luamVjdG9yLmdldChFbGVtZW50UmVmKVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc1N1cHBvcnRlZChkZW5zaXR5OiBDb250ZW50RGVuc2l0eU1vZGUpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvbi5zdXBwb3J0ZWRDb250ZW50RGVuc2l0eS5pbmNsdWRlcyhkZW5zaXR5KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTeW5jIGlzQ29tcGFjdC4gQ2FsbHMgQ2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCkgb24gdXBkYXRlXG4gICAgICovXG4gICAgZ2V0IGlzQ29tcGFjdCgpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCF0aGlzLl9jb21wYWN0U3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLl9jb21wYWN0U3Vic2NyaXB0aW9uID0gdGhpcy5fbGlzdGVuVG9DaGFuZ2VzKHRoaXMuaXNDb21wYWN0JCwgKHYpID0+ICh0aGlzLl9pc0NvbXBhY3QgPSB2KSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzQ29tcGFjdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTeW5jIGlzQ29uZGVuc2VkLiBDYWxscyBDaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKSBvbiB1cGRhdGVcbiAgICAgKi9cbiAgICBnZXQgaXNDb25kZW5zZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghdGhpcy5fY29uZGVuc2VkU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLl9jb25kZW5zZWRTdWJzY3JpcHRpb24gPSB0aGlzLl9saXN0ZW5Ub0NoYW5nZXModGhpcy5pc0NvbmRlbnNlZCQsICh2KSA9PiAodGhpcy5faXNDb25kZW5zZWQgPSB2KSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzQ29uZGVuc2VkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFN5bmMgaXNDb3p5LiBDYWxscyBDaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKSBvbiB1cGRhdGVcbiAgICAgKi9cbiAgICBnZXQgaXNDb3p5KCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIXRoaXMuX2NvenlTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuX2NvenlTdWJzY3JpcHRpb24gPSB0aGlzLl9saXN0ZW5Ub0NoYW5nZXModGhpcy5pc0NvenkkLCAodikgPT4gKHRoaXMuX2lzQ296eSA9IHYpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5faXNDb3p5O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFBhc3MgY29uc3VtZXJzIGNhbGxiYWNrIGZ1bmN0aW9uLCBvciBjb25maWd1cmF0aW9uIG9iamVjdCB0byBiZSBjYWxsZWQgb24gZGVuc2l0eSBjaGFuZ2VcbiAgICAgKi9cbiAgICBjb25zdW1lKFxuICAgICAgICAuLi5jb25zdW1lckNvbmZpZ3M6IEFycmF5PENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJUYXJnZXQgfCBDb250ZW50RGVuc2l0eUNhbGxiYWNrRm4+XG4gICAgKTogQ29udGVudERlbnNpdHlPYnNlcnZlciB7XG4gICAgICAgIGNvbnN1bWVyQ29uZmlncy5mb3JFYWNoKChjb25zdW1lckNvbmZpZykgPT4ge1xuICAgICAgICAgICAgY29uc3QgY2FsbGJhY2sgPSBjb250ZW50RGVuc2l0eUNhbGxiYWNrRmFjdG9yeShjb25zdW1lckNvbmZpZyk7XG4gICAgICAgICAgICB0aGlzLl9jYWxsYmFja3Muc2V0KGNvbnN1bWVyQ29uZmlnLCBjYWxsYmFjayk7XG4gICAgICAgICAgICBjYWxsYmFjayh0aGlzLnZhbHVlKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSBjb25zdW1lciBjYWxsYmFjayBmcm9tIGxpc3Qgb2YgY2FsbGJhY2tzXG4gICAgICovXG4gICAgcmVtb3ZlQ29uc3VtZXIoXG4gICAgICAgIC4uLmNvbnN1bWVyQ29uZmlnczogQXJyYXk8Q29udGVudERlbnNpdHlPYnNlcnZlclRhcmdldCB8IENvbnRlbnREZW5zaXR5Q2FsbGJhY2tGbj5cbiAgICApOiBDb250ZW50RGVuc2l0eU9ic2VydmVyIHtcbiAgICAgICAgY29uc3VtZXJDb25maWdzLmZvckVhY2goKGNvbnN1bWVyQ29uZmlnKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9jYWxsYmFja3MuZGVsZXRlKGNvbnN1bWVyQ29uZmlnKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY2FsbENhbGxiYWNrcyhkZW5zaXR5OiBDb250ZW50RGVuc2l0eU1vZGUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2FsbGJhY2tzLmZvckVhY2goKGNhbGxiYWNrKSA9PiBjYWxsYmFjayhkZW5zaXR5KSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9saXN0ZW5Ub0NoYW5nZXMoc291cmNlOiBPYnNlcnZhYmxlPGJvb2xlYW4+LCBjYWxsYmFjazogKG5ld1ZhbHVlOiBib29sZWFuKSA9PiB2b2lkKTogU3Vic2NyaXB0aW9uIHtcbiAgICAgICAgcmV0dXJuIHNvdXJjZVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgdGFwKGNhbGxiYWNrKSxcbiAgICAgICAgICAgICAgICB0YXAoKCkgPT4gdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKSksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgfVxufVxuIl19
180
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9jb250ZW50LWRlbnNpdHkvc2VydmljZXMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBdUIsVUFBVSxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEgsT0FBTyxFQUVILGtCQUFrQixFQUdyQixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBNEIsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0SCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM1RyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUNuRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7O0FBRTlGLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxHQUFRLEVBQThCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUssR0FBMkIsQ0FBQyxVQUFV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QztRQUMzQyxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxjQUFjO0lBQ04sY0FBYyxDQUFDLE9BQTJCO1FBQzlDLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsY0FBYztJQUNOLGdCQUFnQixDQUFDLE1BQTJCLEVBQUUsUUFBcUM7UUFDdkYsT0FBTyxNQUFNO2FBQ1IsSUFBSSxDQUNELEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFDYixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDLEVBQ2hELFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQzNCO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQzs7bUhBOUtRLHNCQUFzQjt1SEFBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgRWxlbWVudFJlZiwgRmFjdG9yeVNhbnNQcm92aWRlciwgSW5qZWN0YWJsZSwgSW5qZWN0RmxhZ3MsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENvbnRlbnREZW5zaXR5Q2FsbGJhY2tGbixcbiAgICBDb250ZW50RGVuc2l0eU1vZGUsXG4gICAgQ29udGVudERlbnNpdHlPYnNlcnZlclRhcmdldCxcbiAgICBMb2NhbENvbnRlbnREZW5zaXR5TW9kZVxufSBmcm9tICcuLi9jb250ZW50LWRlbnNpdHkudHlwZXMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmluYWxpemUsIG1hcCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZ2xvYmFsLWNvbnRlbnQtZGVuc2l0eS5zZXJ2aWNlJztcbmltcG9ydCB7IGdldENoYW5nZXNTb3VyY2UkIH0gZnJvbSAnLi4vaGVscGVycy9nZXQtY2hhbmdlcy1zb3VyY2UucHJvdmlkZXInO1xuaW1wb3J0IHsgZGVmYXVsdENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJDb25maWdzIH0gZnJvbSAnLi4vdmFyaWFibGVzL2RlZmF1bHQtY29udGVudC1kZW5zaXR5LWNvbnN1bWVyLWNvbmZpZyc7XG5pbXBvcnQgeyBjb250ZW50RGVuc2l0eUNhbGxiYWNrRmFjdG9yeSB9IGZyb20gJy4uL2hlbHBlcnMvY29udGVudC1kZW5zaXR5LWNoYW5nZS1jYWxsYmFjay1mYWN0b3J5JztcbmltcG9ydCB7IGlzQ29tcGFjdCwgaXNDb25kZW5zZWQsIGlzQ296eSB9IGZyb20gJy4uL2hlbHBlcnMvZGVuc2l0eS10eXBlLWNoZWNrZXJzJztcbmltcG9ydCB7IENPTlRFTlRfREVOU0lUWV9ESVJFQ1RJVkUgfSBmcm9tICcuLi90b2tlbnMvY29udGVudC1kZW5zaXR5LWRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEZXN0cm95ZWRTZXJ2aWNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3V0aWxzJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJTZXR0aW5ncyB9IGZyb20gJy4uL2NsYXNzZXMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNldHRpbmdzJztcblxuY29uc3QgaXNGYWN0b3J5UHJvdmlkZXIgPSAob2JqOiBhbnkpOiBvYmogaXMgRmFjdG9yeVNhbnNQcm92aWRlciA9PiAhIShvYmogJiYgKG9iaiBhcyBGYWN0b3J5U2Fuc1Byb3ZpZGVyKS51c2VGYWN0b3J5KTtcblxuY29uc3QgZ2V0RGVwcyA9IChpbmplY3RvcjogSW5qZWN0b3IsIGRlZmF1bHRDb250ZW50RGVuc2l0eTogRmFjdG9yeVNhbnNQcm92aWRlcik6IEFycmF5PGFueT4gPT5cbiAgICAoZGVmYXVsdENvbnRlbnREZW5zaXR5LmRlcHMgfHwgW10pLm1hcCgoZGVwKTogYW55ID0+IHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZGVwKSkge1xuICAgICAgICAgICAgbGV0IHR5cGU7XG4gICAgICAgICAgICBsZXQgZmxhZ3MgPSBJbmplY3RGbGFncy5EZWZhdWx0O1xuICAgICAgICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGRlcC5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmbGFnID0gZGVwW2luZGV4XVsnX19OR19ESV9GTEFHX18nXTtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGZsYWcgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1iaXR3aXNlXG4gICAgICAgICAgICAgICAgICAgIGZsYWdzIHw9IGZsYWc7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZSA9IGRlcFtpbmRleF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGluamVjdG9yLmdldCh0eXBlLCB1bmRlZmluZWQsIGZsYWdzKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaW5qZWN0b3IuZ2V0KGRlcCwgdW5kZWZpbmVkLCBJbmplY3RGbGFncy5EZWZhdWx0KTtcbiAgICB9KTtcblxuY29uc3QgZ2V0RGVmYXVsdENvbnRlbnREZW5zaXR5ID0gKFxuICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBjb25maWd1cmF0aW9uOiBSZXF1aXJlZDxDb250ZW50RGVuc2l0eU9ic2VydmVyU2V0dGluZ3M+XG4pOiBDb250ZW50RGVuc2l0eU1vZGUgPT4ge1xuICAgIGlmICh0eXBlb2YgY29uZmlndXJhdGlvbi5kZWZhdWx0Q29udGVudERlbnNpdHkgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJldHVybiBjb25maWd1cmF0aW9uLmRlZmF1bHRDb250ZW50RGVuc2l0eSBhcyBDb250ZW50RGVuc2l0eU1vZGU7XG4gICAgfVxuICAgIGlmIChpc0ZhY3RvcnlQcm92aWRlcihjb25maWd1cmF0aW9uLmRlZmF1bHRDb250ZW50RGVuc2l0eSkpIHtcbiAgICAgICAgY29uc3QgZGVwcyA9IGdldERlcHMoaW5qZWN0b3IsIGNvbmZpZ3VyYXRpb24uZGVmYXVsdENvbnRlbnREZW5zaXR5KTtcbiAgICAgICAgcmV0dXJuIGNvbmZpZ3VyYXRpb24uZGVmYXVsdENvbnRlbnREZW5zaXR5LnVzZUZhY3RvcnkoLi4uZGVwcyk7XG4gICAgfVxuICAgIHJldHVybiBpbmplY3Rvci5nZXQoY29uZmlndXJhdGlvbi5kZWZhdWx0Q29udGVudERlbnNpdHksIHVuZGVmaW5lZCwgdW5kZWZpbmVkKTtcbn07XG5cbmNvbnN0IGluaXRpYWxDb250ZW50RGVuc2l0eSA9IChcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgY29uZmlndXJhdGlvbj86IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJTZXR0aW5nc1xuKTogQ29udGVudERlbnNpdHlNb2RlID0+IHtcbiAgICBjb25zdCBzZXJ2aWNlVmFsdWUgPSBpbmplY3Rvci5nZXQoR2xvYmFsQ29udGVudERlbnNpdHlTZXJ2aWNlLCBudWxsLCBJbmplY3RGbGFncy5PcHRpb25hbCk/LmN1cnJlbnRDb250ZW50RGVuc2l0eTtcbiAgICBpZiAoc2VydmljZVZhbHVlKSB7XG4gICAgICAgIHJldHVybiBzZXJ2aWNlVmFsdWU7XG4gICAgfVxuICAgIHJldHVybiBnZXREZWZhdWx0Q29udGVudERlbnNpdHkoaW5qZWN0b3IsIHtcbiAgICAgICAgLi4uZGVmYXVsdENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJDb25maWdzLFxuICAgICAgICAuLi4oY29uZmlndXJhdGlvbiB8fCB7fSlcbiAgICB9KTtcbn07XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb250ZW50RGVuc2l0eU9ic2VydmVyIGV4dGVuZHMgQmVoYXZpb3JTdWJqZWN0PENvbnRlbnREZW5zaXR5TW9kZT4ge1xuICAgIC8qKiBTdHJlYW0gZm9yIGdldHRpbmcgY29tcGFjdCBzdGF0ZSBjaGFuZ2VzICovXG4gICAgaXNDb21wYWN0JDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICAvKiogU3RyZWFtIGZvciBnZXR0aW5nIGNvenkgc3RhdGUgY2hhbmdlcyAqL1xuICAgIGlzQ296eSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgLyoqIFN0cmVhbSBmb3IgZ2V0dGluZyBjb25kZW5zZWQgc3RhdGUgY2hhbmdlcyAqL1xuICAgIGlzQ29uZGVuc2VkJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY2FsbGJhY2tzOiBNYXA8YW55LCBDb250ZW50RGVuc2l0eUNhbGxiYWNrRm4+ID0gbmV3IE1hcDxhbnksIENvbnRlbnREZW5zaXR5Q2FsbGJhY2tGbj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaXNDb21wYWN0OiBib29sZWFuO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaXNDb3p5OiBib29sZWFuO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaXNDb25kZW5zZWQ6IGJvb2xlYW47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NvbXBhY3RTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NvbmRlbnNlZFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY296eVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZ3VyYXRpb246IFJlcXVpcmVkPENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJTZXR0aW5ncz47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgYWx0ZXJuYXRpdmVUbyA9IHtcbiAgICAgICAgW0NvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNUXTogKCk6IENvbnRlbnREZW5zaXR5TW9kZSA9PlxuICAgICAgICAgICAgdGhpcy5pc1N1cHBvcnRlZChDb250ZW50RGVuc2l0eU1vZGUuQ09OREVOU0VEKSA/IENvbnRlbnREZW5zaXR5TW9kZS5DT05ERU5TRUQgOiBDb250ZW50RGVuc2l0eU1vZGUuQ09aWSxcbiAgICAgICAgW0NvbnRlbnREZW5zaXR5TW9kZS5DT05ERU5TRURdOiAoKTogQ29udGVudERlbnNpdHlNb2RlID0+XG4gICAgICAgICAgICB0aGlzLmlzU3VwcG9ydGVkKENvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNUKSA/IENvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNUIDogQ29udGVudERlbnNpdHlNb2RlLkNPWlksXG4gICAgICAgIFtDb250ZW50RGVuc2l0eU1vZGUuQ09aWV06ICgpOiBDb250ZW50RGVuc2l0eU1vZGUgPT4gQ29udGVudERlbnNpdHlNb2RlLkNPWlkgLy8gTm8gYWx0ZXJuYXRpdmUgaGVyZSwgZXZlcnlvbmUgc2hvdWxkIHN1cHBvcnQgaXRcbiAgICB9O1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JDogT2JzZXJ2YWJsZTx2b2lkPjtcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZjtcbiAgICBwcml2YXRlIGNvbnRlbnREZW5zaXR5RGlyZWN0aXZlPzogT2JzZXJ2YWJsZTxMb2NhbENvbnRlbnREZW5zaXR5TW9kZT47XG4gICAgcHJpdmF0ZSBjb250ZW50RGVuc2l0eVNlcnZpY2U/OiBHbG9iYWxDb250ZW50RGVuc2l0eVNlcnZpY2U7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsIHByaXZhdGUgX3Byb3ZpZGVkQ29uZmlnPzogQ29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzKSB7XG4gICAgICAgIHN1cGVyKGluaXRpYWxDb250ZW50RGVuc2l0eShfaW5qZWN0b3IsIF9wcm92aWRlZENvbmZpZykpO1xuICAgICAgICBpZiAoX3Byb3ZpZGVkQ29uZmlnPy5kZWJ1Zykge1xuICAgICAgICAgICAgY29uc29sZS5sb2coeyBpbml0aWFsQ29udGVudERlbnNpdHk6IGluaXRpYWxDb250ZW50RGVuc2l0eShfaW5qZWN0b3IsIF9wcm92aWRlZENvbmZpZykgfSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb25maWd1cmF0aW9uID0ge1xuICAgICAgICAgICAgLi4uZGVmYXVsdENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJDb25maWdzLFxuICAgICAgICAgICAgLi4uKF9wcm92aWRlZENvbmZpZyB8fCB7fSlcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5kZXN0cm95JCA9IHRoaXMuX2luamVjdG9yLmdldChEZXN0cm95ZWRTZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZiA9IHRoaXMuX2luamVjdG9yLmdldChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgICAgIHRoaXMuY29udGVudERlbnNpdHlEaXJlY3RpdmUgPSB0aGlzLl9pbmplY3Rvci5nZXQoQ09OVEVOVF9ERU5TSVRZX0RJUkVDVElWRSwgdW5kZWZpbmVkLCBJbmplY3RGbGFncy5PcHRpb25hbCk7XG4gICAgICAgIHRoaXMuY29udGVudERlbnNpdHlTZXJ2aWNlID0gdGhpcy5faW5qZWN0b3IuZ2V0KEdsb2JhbENvbnRlbnREZW5zaXR5U2VydmljZSwgdW5kZWZpbmVkLCBJbmplY3RGbGFncy5PcHRpb25hbCk7XG5cbiAgICAgICAgY29uc3QgY2hhbmdlc1NvdXJjZSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHlNb2RlPiA9IGdldENoYW5nZXNTb3VyY2UkKHtcbiAgICAgICAgICAgIGRlZmF1bHRDb250ZW50RGVuc2l0eTogZ2V0RGVmYXVsdENvbnRlbnREZW5zaXR5KHRoaXMuX2luamVjdG9yLCB0aGlzLmNvbmZpZ3VyYXRpb24pLFxuICAgICAgICAgICAgY29udGVudERlbnNpdHlEaXJlY3RpdmU6IHRoaXMuY29udGVudERlbnNpdHlEaXJlY3RpdmUsXG4gICAgICAgICAgICBjb250ZW50RGVuc2l0eVNlcnZpY2U6IHRoaXMuY29udGVudERlbnNpdHlTZXJ2aWNlXG4gICAgICAgIH0pLnBpcGUoXG4gICAgICAgICAgICBtYXAoKGRlbnNpdHk6IENvbnRlbnREZW5zaXR5TW9kZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmNvbmZpZ3VyYXRpb24uZGVidWcpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coYENvbnRlbnREZW5zaXR5T2JzZXJ2ZXI6IGRlbnNpdHkgY2hhbmdlZCB0byAke2RlbnNpdHl9YCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5pc1N1cHBvcnRlZChkZW5zaXR5KSkge1xuICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWx0ZXJuYXRpdmVUb1tkZW5zaXR5XSgpO1xuICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvbnRlbnREZW5zaXR5T2JzZXJ2ZXI6IGRlbnNpdHkgJHtkZW5zaXR5fSBpcyBub3Qgc3VwcG9ydGVkYCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRlbnNpdHk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICAgICAgKTtcbiAgICAgICAgY2hhbmdlc1NvdXJjZSRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRhcCgoZGVuc2l0eSkgPT4gdGhpcy5fY2FsbENhbGxiYWNrcyhkZW5zaXR5KSksXG4gICAgICAgICAgICAgICAgZmluYWxpemUoKCkgPT4gdGhpcy5jb21wbGV0ZSgpKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZGVuc2l0eSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmNvbmZpZ3VyYXRpb24uZGVidWcpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coYENvbnRlbnREZW5zaXR5T2JzZXJ2ZXI6IGRlbnNpdHkgZW1taXRlZCAke2RlbnNpdHl9YCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMubmV4dChkZW5zaXR5KTtcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuaXNDb21wYWN0JCA9IGNoYW5nZXNTb3VyY2UkLnBpcGUobWFwKGlzQ29tcGFjdCkpO1xuICAgICAgICB0aGlzLmlzQ296eSQgPSBjaGFuZ2VzU291cmNlJC5waXBlKG1hcChpc0NvenkpKTtcbiAgICAgICAgdGhpcy5pc0NvbmRlbnNlZCQgPSBjaGFuZ2VzU291cmNlJC5waXBlKG1hcChpc0NvbmRlbnNlZCkpO1xuICAgICAgICBpZiAoX3Byb3ZpZGVkQ29uZmlnKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnN1bWUoe1xuICAgICAgICAgICAgICAgIGNvbnRlbnREZW5zaXR5U2V0dGluZ3M6IHRoaXMuY29uZmlndXJhdGlvbixcbiAgICAgICAgICAgICAgICBlbGVtZW50UmVmOiAoKSA9PiB0aGlzLl9pbmplY3Rvci5nZXQoRWxlbWVudFJlZilcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaXNTdXBwb3J0ZWQoZGVuc2l0eTogQ29udGVudERlbnNpdHlNb2RlKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZ3VyYXRpb24uc3VwcG9ydGVkQ29udGVudERlbnNpdHkuaW5jbHVkZXMoZGVuc2l0eSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3luYyBpc0NvbXBhY3QuIENhbGxzIENoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpIG9uIHVwZGF0ZVxuICAgICAqL1xuICAgIGdldCBpc0NvbXBhY3QoKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghdGhpcy5fY29tcGFjdFN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgdGhpcy5fY29tcGFjdFN1YnNjcmlwdGlvbiA9IHRoaXMuX2xpc3RlblRvQ2hhbmdlcyh0aGlzLmlzQ29tcGFjdCQsICh2KSA9PiAodGhpcy5faXNDb21wYWN0ID0gdikpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0NvbXBhY3Q7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3luYyBpc0NvbmRlbnNlZC4gQ2FsbHMgQ2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCkgb24gdXBkYXRlXG4gICAgICovXG4gICAgZ2V0IGlzQ29uZGVuc2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIXRoaXMuX2NvbmRlbnNlZFN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgdGhpcy5fY29uZGVuc2VkU3Vic2NyaXB0aW9uID0gdGhpcy5fbGlzdGVuVG9DaGFuZ2VzKHRoaXMuaXNDb25kZW5zZWQkLCAodikgPT4gKHRoaXMuX2lzQ29uZGVuc2VkID0gdikpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0NvbmRlbnNlZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTeW5jIGlzQ296eS4gQ2FsbHMgQ2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCkgb24gdXBkYXRlXG4gICAgICovXG4gICAgZ2V0IGlzQ296eSgpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCF0aGlzLl9jb3p5U3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLl9jb3p5U3Vic2NyaXB0aW9uID0gdGhpcy5fbGlzdGVuVG9DaGFuZ2VzKHRoaXMuaXNDb3p5JCwgKHYpID0+ICh0aGlzLl9pc0NvenkgPSB2KSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzQ296eTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQYXNzIGNvbnN1bWVycyBjYWxsYmFjayBmdW5jdGlvbiwgb3IgY29uZmlndXJhdGlvbiBvYmplY3QgdG8gYmUgY2FsbGVkIG9uIGRlbnNpdHkgY2hhbmdlXG4gICAgICovXG4gICAgY29uc3VtZShcbiAgICAgICAgLi4uY29uc3VtZXJDb25maWdzOiBBcnJheTxDb250ZW50RGVuc2l0eU9ic2VydmVyVGFyZ2V0IHwgQ29udGVudERlbnNpdHlDYWxsYmFja0ZuPlxuICAgICk6IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXIge1xuICAgICAgICBjb25zdW1lckNvbmZpZ3MuZm9yRWFjaCgoY29uc3VtZXJDb25maWcpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNhbGxiYWNrID0gY29udGVudERlbnNpdHlDYWxsYmFja0ZhY3RvcnkoY29uc3VtZXJDb25maWcpO1xuICAgICAgICAgICAgdGhpcy5fY2FsbGJhY2tzLnNldChjb25zdW1lckNvbmZpZywgY2FsbGJhY2spO1xuICAgICAgICAgICAgY2FsbGJhY2sodGhpcy52YWx1ZSk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgY29uc3VtZXIgY2FsbGJhY2sgZnJvbSBsaXN0IG9mIGNhbGxiYWNrc1xuICAgICAqL1xuICAgIHJlbW92ZUNvbnN1bWVyKFxuICAgICAgICAuLi5jb25zdW1lckNvbmZpZ3M6IEFycmF5PENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJUYXJnZXQgfCBDb250ZW50RGVuc2l0eUNhbGxiYWNrRm4+XG4gICAgKTogQ29udGVudERlbnNpdHlPYnNlcnZlciB7XG4gICAgICAgIGNvbnN1bWVyQ29uZmlncy5mb3JFYWNoKChjb25zdW1lckNvbmZpZykgPT4ge1xuICAgICAgICAgICAgdGhpcy5fY2FsbGJhY2tzLmRlbGV0ZShjb25zdW1lckNvbmZpZyk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NhbGxDYWxsYmFja3MoZGVuc2l0eTogQ29udGVudERlbnNpdHlNb2RlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NhbGxiYWNrcy5mb3JFYWNoKChjYWxsYmFjaykgPT4gY2FsbGJhY2soZGVuc2l0eSkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuVG9DaGFuZ2VzKHNvdXJjZTogT2JzZXJ2YWJsZTxib29sZWFuPiwgY2FsbGJhY2s6IChuZXdWYWx1ZTogYm9vbGVhbikgPT4gdm9pZCk6IFN1YnNjcmlwdGlvbiB7XG4gICAgICAgIHJldHVybiBzb3VyY2VcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRhcChjYWxsYmFjayksXG4gICAgICAgICAgICAgICAgdGFwKCgpID0+IHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCkpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgIH1cbn1cbiJdfQ==
@@ -2,6 +2,7 @@ import { ContentDensityMode } from '../content-density.types';
2
2
  export const defaultContentDensityObserverConfigs = {
3
3
  modifiers: {},
4
4
  supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY],
5
- defaultContentDensity: ContentDensityMode.COZY
5
+ defaultContentDensity: ContentDensityMode.COZY,
6
+ debug: false
6
7
  };
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1jb250ZW50LWRlbnNpdHktY29uc3VtZXItY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29udGVudC1kZW5zaXR5L3ZhcmlhYmxlcy9kZWZhdWx0LWNvbnRlbnQtZGVuc2l0eS1jb25zdW1lci1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHOUQsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQTZDO0lBQzFGLFNBQVMsRUFBRSxFQUFFO0lBQ2IsdUJBQXVCLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsa0JBQWtCLENBQUMsSUFBSSxDQUFDO0lBQzlFLHFCQUFxQixFQUFFLGtCQUFrQixDQUFDLElBQUk7Q0FDakQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnREZW5zaXR5TW9kZSB9IGZyb20gJy4uL2NvbnRlbnQtZGVuc2l0eS50eXBlcyc7XG5pbXBvcnQgeyBDb250ZW50RGVuc2l0eU9ic2VydmVyU2V0dGluZ3MgfSBmcm9tICcuLi9jbGFzc2VzL2NvbnRlbnQtZGVuc2l0eS1vYnNlcnZlci5zZXR0aW5ncyc7XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0Q29udGVudERlbnNpdHlPYnNlcnZlckNvbmZpZ3M6IFJlcXVpcmVkPENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJTZXR0aW5ncz4gPSB7XG4gICAgbW9kaWZpZXJzOiB7fSxcbiAgICBzdXBwb3J0ZWRDb250ZW50RGVuc2l0eTogW0NvbnRlbnREZW5zaXR5TW9kZS5DT01QQUNULCBDb250ZW50RGVuc2l0eU1vZGUuQ09aWV0sXG4gICAgZGVmYXVsdENvbnRlbnREZW5zaXR5OiBDb250ZW50RGVuc2l0eU1vZGUuQ09aWVxufTtcbiJdfQ==
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1jb250ZW50LWRlbnNpdHktY29uc3VtZXItY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY29udGVudC1kZW5zaXR5L3ZhcmlhYmxlcy9kZWZhdWx0LWNvbnRlbnQtZGVuc2l0eS1jb25zdW1lci1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHOUQsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQTZDO0lBQzFGLFNBQVMsRUFBRSxFQUFFO0lBQ2IsdUJBQXVCLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsa0JBQWtCLENBQUMsSUFBSSxDQUFDO0lBQzlFLHFCQUFxQixFQUFFLGtCQUFrQixDQUFDLElBQUk7SUFDOUMsS0FBSyxFQUFFLEtBQUs7Q0FDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGVudERlbnNpdHlNb2RlIH0gZnJvbSAnLi4vY29udGVudC1kZW5zaXR5LnR5cGVzJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXJTZXR0aW5ncyB9IGZyb20gJy4uL2NsYXNzZXMvY29udGVudC1kZW5zaXR5LW9ic2VydmVyLnNldHRpbmdzJztcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRDb250ZW50RGVuc2l0eU9ic2VydmVyQ29uZmlnczogUmVxdWlyZWQ8Q29udGVudERlbnNpdHlPYnNlcnZlclNldHRpbmdzPiA9IHtcbiAgICBtb2RpZmllcnM6IHt9LFxuICAgIHN1cHBvcnRlZENvbnRlbnREZW5zaXR5OiBbQ29udGVudERlbnNpdHlNb2RlLkNPTVBBQ1QsIENvbnRlbnREZW5zaXR5TW9kZS5DT1pZXSxcbiAgICBkZWZhdWx0Q29udGVudERlbnNpdHk6IENvbnRlbnREZW5zaXR5TW9kZS5DT1pZLFxuICAgIGRlYnVnOiBmYWxzZVxufTtcbiJdfQ==