@ifsworld/granite-components 15.0.2 → 16.0.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 (164) hide show
  1. package/date-picker/lib/date-picker-base.d.ts +3 -3
  2. package/date-picker/lib/date-picker.module.d.ts +2 -2
  3. package/fesm2022/ifsworld-granite-components-carousel.mjs +9 -9
  4. package/fesm2022/ifsworld-granite-components-carousel.mjs.map +1 -1
  5. package/fesm2022/ifsworld-granite-components-date-picker.mjs +34 -30
  6. package/fesm2022/ifsworld-granite-components-date-picker.mjs.map +1 -1
  7. package/fesm2022/ifsworld-granite-components-file-upload.mjs +13 -12
  8. package/fesm2022/ifsworld-granite-components-file-upload.mjs.map +1 -1
  9. package/fesm2022/ifsworld-granite-components-table.mjs +32 -29
  10. package/fesm2022/ifsworld-granite-components-table.mjs.map +1 -1
  11. package/fesm2022/ifsworld-granite-components-tooltip.mjs +16 -15
  12. package/fesm2022/ifsworld-granite-components-tooltip.mjs.map +1 -1
  13. package/fesm2022/ifsworld-granite-components.mjs +341 -322
  14. package/fesm2022/ifsworld-granite-components.mjs.map +1 -1
  15. package/lib/contacts/contacts-trigger/contacts-trigger-data.d.ts +1 -1
  16. package/lib/core/overlay-base.d.ts +1 -1
  17. package/lib/core/radio-checkbox-base.d.ts +1 -1
  18. package/lib/menu/menu-base.d.ts +1 -1
  19. package/lib/progress-bar/progress-bar-legend-base.d.ts +1 -1
  20. package/package.json +13 -25
  21. package/src/lib/core/style/_mixins.scss +10 -9
  22. package/src/lib/core/style/_range-functions.scss +6 -4
  23. package/src/lib/core/style/_z-index.scss +6 -4
  24. package/table/lib/cell/cell.d.ts +1 -1
  25. package/esm2022/carousel/ifsworld-granite-components-carousel.mjs +0 -5
  26. package/esm2022/carousel/index.mjs +0 -3
  27. package/esm2022/carousel/lib/carousel.component.mjs +0 -156
  28. package/esm2022/carousel/lib/carousel.module.mjs +0 -31
  29. package/esm2022/date-picker/ifsworld-granite-components-date-picker.mjs +0 -5
  30. package/esm2022/date-picker/index.mjs +0 -5
  31. package/esm2022/date-picker/lib/date-picker-base.mjs +0 -53
  32. package/esm2022/date-picker/lib/date-picker-trigger-for.directive.mjs +0 -228
  33. package/esm2022/date-picker/lib/date-picker.component.mjs +0 -30
  34. package/esm2022/date-picker/lib/date-picker.module.mjs +0 -58
  35. package/esm2022/date-picker/lib/date-range-picker.component.mjs +0 -46
  36. package/esm2022/file-upload/ifsworld-granite-components-file-upload.mjs +0 -5
  37. package/esm2022/file-upload/index.mjs +0 -3
  38. package/esm2022/file-upload/lib/directives/file-drag-and-drop.directive.mjs +0 -102
  39. package/esm2022/file-upload/lib/file-upload.component.mjs +0 -182
  40. package/esm2022/file-upload/lib/file-upload.constants.mjs +0 -45
  41. package/esm2022/file-upload/lib/file-upload.module.mjs +0 -32
  42. package/esm2022/file-upload/lib/file-upload.utils.mjs +0 -13
  43. package/esm2022/ifsworld-granite-components.mjs +0 -5
  44. package/esm2022/index.mjs +0 -90
  45. package/esm2022/lib/arrange-grid/arrange-grid-item.component.mjs +0 -44
  46. package/esm2022/lib/arrange-grid/arrange-grid.component.mjs +0 -125
  47. package/esm2022/lib/arrange-grid/arrange-grid.module.mjs +0 -19
  48. package/esm2022/lib/avatar/avatar-default-status/avatar-default-status.component.mjs +0 -36
  49. package/esm2022/lib/avatar/avatar.component.mjs +0 -68
  50. package/esm2022/lib/avatar/avatar.component.public-types.mjs +0 -7
  51. package/esm2022/lib/avatar/avatar.module.mjs +0 -37
  52. package/esm2022/lib/avatar/custom-avatar-status.directive.mjs +0 -18
  53. package/esm2022/lib/avatar/empty-avatar/empty-avatar.component.mjs +0 -37
  54. package/esm2022/lib/badge/badge.component.mjs +0 -39
  55. package/esm2022/lib/badge/badge.module.mjs +0 -18
  56. package/esm2022/lib/badge/testing/badge.harness.mjs +0 -25
  57. package/esm2022/lib/button/button.component.mjs +0 -87
  58. package/esm2022/lib/button/button.module.mjs +0 -16
  59. package/esm2022/lib/card-list/card/card-avatar.component.mjs +0 -11
  60. package/esm2022/lib/card-list/card/card-content/card-actions.component.mjs +0 -11
  61. package/esm2022/lib/card-list/card/card-content/card-body.component.mjs +0 -11
  62. package/esm2022/lib/card-list/card/card-content/card-content.component.mjs +0 -11
  63. package/esm2022/lib/card-list/card/card-content/card-footer.component.mjs +0 -11
  64. package/esm2022/lib/card-list/card/card-content/card-header-subtitle.component.mjs +0 -11
  65. package/esm2022/lib/card-list/card/card-content/card-header-title.component.mjs +0 -11
  66. package/esm2022/lib/card-list/card/card-content/card-header.component.mjs +0 -11
  67. package/esm2022/lib/card-list/card/card.component.mjs +0 -11
  68. package/esm2022/lib/card-list/card-list.component.mjs +0 -24
  69. package/esm2022/lib/card-list/card-list.module.mjs +0 -68
  70. package/esm2022/lib/checkbox/checkbox-group.component.mjs +0 -17
  71. package/esm2022/lib/checkbox/checkbox.component.mjs +0 -99
  72. package/esm2022/lib/checkbox/checkbox.module.mjs +0 -17
  73. package/esm2022/lib/chips/chip-input.mjs +0 -195
  74. package/esm2022/lib/chips/chip-list.component.mjs +0 -567
  75. package/esm2022/lib/chips/chip.component.mjs +0 -288
  76. package/esm2022/lib/chips/chips.module.mjs +0 -31
  77. package/esm2022/lib/collapsible-group/collapsible-group-body.directive.mjs +0 -17
  78. package/esm2022/lib/collapsible-group/collapsible-group-header.directive.mjs +0 -17
  79. package/esm2022/lib/collapsible-group/collapsible-group.component.mjs +0 -46
  80. package/esm2022/lib/collapsible-group/collapsible-group.module.mjs +0 -33
  81. package/esm2022/lib/contacts/contact-item/contact-item.component.mjs +0 -27
  82. package/esm2022/lib/contacts/contact-item-default-status/contact-item-default-status.component.mjs +0 -20
  83. package/esm2022/lib/contacts/contact-item-title/contact-item-title.component.mjs +0 -15
  84. package/esm2022/lib/contacts/contacts-profile/contacts-profile.component.mjs +0 -18
  85. package/esm2022/lib/contacts/contacts-trigger/contacts-trigger-data.mjs +0 -24
  86. package/esm2022/lib/contacts/contacts-trigger/contacts-trigger-for.directive.mjs +0 -231
  87. package/esm2022/lib/contacts/contacts-types/contacts.component.private-types.mjs +0 -2
  88. package/esm2022/lib/contacts/contacts-types/contacts.component.public-types.mjs +0 -9
  89. package/esm2022/lib/contacts/contacts.component.mjs +0 -92
  90. package/esm2022/lib/contacts/contacts.module.mjs +0 -53
  91. package/esm2022/lib/contacts/custom-profile.directive.mjs +0 -16
  92. package/esm2022/lib/contacts/custom-status.directive.mjs +0 -18
  93. package/esm2022/lib/core/animation.mjs +0 -34
  94. package/esm2022/lib/core/client-environment.mjs +0 -20
  95. package/esm2022/lib/core/common-behaviors/disabled.mjs +0 -27
  96. package/esm2022/lib/core/core.module.mjs +0 -44
  97. package/esm2022/lib/core/devices/client-input-desktop.directive.mjs +0 -29
  98. package/esm2022/lib/core/devices/client-input-touch.directive.mjs +0 -29
  99. package/esm2022/lib/core/devices/client-output-desktop.directive.mjs +0 -29
  100. package/esm2022/lib/core/devices/client-output-touch.directive.mjs +0 -29
  101. package/esm2022/lib/core/hide-on-overflow.directive.mjs +0 -83
  102. package/esm2022/lib/core/overlay-base.mjs +0 -18
  103. package/esm2022/lib/core/overlay-position-config.mjs +0 -2
  104. package/esm2022/lib/core/overlay-trigger-for-base.directive.mjs +0 -121
  105. package/esm2022/lib/core/overlay.service.mjs +0 -90
  106. package/esm2022/lib/core/pipes/pure-pipes.module.mjs +0 -16
  107. package/esm2022/lib/core/pipes/title.pipe.mjs +0 -21
  108. package/esm2022/lib/core/radio-checkbox-base.mjs +0 -19
  109. package/esm2022/lib/core/services/names-utils-service.mjs +0 -51
  110. package/esm2022/lib/core/theme.library.mjs +0 -59
  111. package/esm2022/lib/core/types.mjs +0 -2
  112. package/esm2022/lib/grid/grid.component.mjs +0 -128
  113. package/esm2022/lib/grid/grid.module.mjs +0 -18
  114. package/esm2022/lib/icon/icon.component.mjs +0 -43
  115. package/esm2022/lib/icon/icon.module.mjs +0 -16
  116. package/esm2022/lib/input-field/input-field.component.mjs +0 -167
  117. package/esm2022/lib/input-field/input-field.module.mjs +0 -20
  118. package/esm2022/lib/label/label.component.mjs +0 -31
  119. package/esm2022/lib/label/label.module.mjs +0 -18
  120. package/esm2022/lib/menu/divider.directive.mjs +0 -23
  121. package/esm2022/lib/menu/menu-base.mjs +0 -364
  122. package/esm2022/lib/menu/menu-desktop-animations.mjs +0 -23
  123. package/esm2022/lib/menu/menu-errors.mjs +0 -37
  124. package/esm2022/lib/menu/menu-item.component.mjs +0 -89
  125. package/esm2022/lib/menu/menu-panel.mjs +0 -7
  126. package/esm2022/lib/menu/menu-positions.mjs +0 -9
  127. package/esm2022/lib/menu/menu-touch-animations.mjs +0 -137
  128. package/esm2022/lib/menu/menu-touch-close.component.mjs +0 -13
  129. package/esm2022/lib/menu/menu-touch-title.component.mjs +0 -59
  130. package/esm2022/lib/menu/menu-trigger-for.directive.mjs +0 -738
  131. package/esm2022/lib/menu/menu.component.mjs +0 -30
  132. package/esm2022/lib/menu/menu.module.mjs +0 -55
  133. package/esm2022/lib/menu/testing/menu.harness.mjs +0 -109
  134. package/esm2022/lib/menu/title.directive.mjs +0 -17
  135. package/esm2022/lib/progress-bar/progress-bar-legend/progress-bar-legend.component.mjs +0 -19
  136. package/esm2022/lib/progress-bar/progress-bar-legend-base.mjs +0 -17
  137. package/esm2022/lib/progress-bar/progress-bar-legend-trigger-for.directive.mjs +0 -54
  138. package/esm2022/lib/progress-bar/progress-bar.component.mjs +0 -92
  139. package/esm2022/lib/progress-bar/progress-bar.model.mjs +0 -2
  140. package/esm2022/lib/progress-bar/progress-bar.module.mjs +0 -44
  141. package/esm2022/lib/radio-button/radio-button.component.mjs +0 -119
  142. package/esm2022/lib/radio-button/radio-button.module.mjs +0 -17
  143. package/esm2022/lib/radio-button/radio-group.component.mjs +0 -17
  144. package/esm2022/lib/toggle-switch/toggle-switch.component.mjs +0 -100
  145. package/esm2022/lib/toggle-switch/toggle-switch.module.mjs +0 -16
  146. package/esm2022/table/ifsworld-granite-components-table.mjs +0 -5
  147. package/esm2022/table/index.mjs +0 -5
  148. package/esm2022/table/lib/cell/cell-align/cell-align-classes.directive.mjs +0 -26
  149. package/esm2022/table/lib/cell/cell.mjs +0 -15
  150. package/esm2022/table/lib/cell/table-data-cell.component.mjs +0 -25
  151. package/esm2022/table/lib/cell/table-header-cell.component.mjs +0 -14
  152. package/esm2022/table/lib/column/table-column.directive.mjs +0 -33
  153. package/esm2022/table/lib/column-size/column-size.directive.mjs +0 -34
  154. package/esm2022/table/lib/table-constants.library.mjs +0 -7
  155. package/esm2022/table/lib/table.component.mjs +0 -62
  156. package/esm2022/table/lib/table.model.mjs +0 -2
  157. package/esm2022/table/lib/table.module.mjs +0 -38
  158. package/esm2022/tooltip/ifsworld-granite-components-tooltip.mjs +0 -5
  159. package/esm2022/tooltip/index.mjs +0 -4
  160. package/esm2022/tooltip/lib/Services/granite-tooltip.service.mjs +0 -28
  161. package/esm2022/tooltip/lib/tooltip-constants.library.mjs +0 -4
  162. package/esm2022/tooltip/lib/tooltip-trigger-for.directive.mjs +0 -147
  163. package/esm2022/tooltip/lib/tooltip.component.mjs +0 -14
  164. package/esm2022/tooltip/lib/tooltip.module.mjs +0 -19
@@ -1,30 +0,0 @@
1
- import { ChangeDetectionStrategy, Component } from '@angular/core';
2
- import { graniteMenuDesktopAnimations } from './menu-desktop-animations';
3
- import { graniteMenuTouchAnimations } from './menu-touch-animations';
4
- import { GRANITE_MENU_PANEL } from './menu-panel';
5
- import { _MenuBaseComponent } from './menu-base';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common";
8
- import * as i2 from "./menu-touch-close.component";
9
- import * as i3 from "./menu-touch-title.component";
10
- export class GraniteMenuComponent extends _MenuBaseComponent {
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteMenuComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
12
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GraniteMenuComponent, selector: "granite-menu", providers: [
13
- { provide: GRANITE_MENU_PANEL, useExisting: GraniteMenuComponent },
14
- ], exportAs: ["graniteMenu"], usesInheritance: true, ngImport: i0, template: "<!--\n Using separate template part for desktop and touch output, because of\n animation triggers and slightly different content.\n-->\n<ng-template>\n <!-- Desktop -->\n <ng-container *ngIf=\"_clientOutput.device === 'desktop'\">\n <div\n #menu\n class=\"granite-menu\"\n [class.is-menu-empty]=\"_isMenuEmpty$ | async\"\n tabindex=\"-1\"\n [id]=\"panelId\"\n [@transformMenuDesktop]=\"_transformMenu | async\"\n (@transformMenuDesktop.start)=\"_onAnimationStart($event)\"\n (@transformMenuDesktop.done)=\"_onAnimationDone($event)\"\n [style]=\"styles\"\n (click)=\"_handleClick()\"\n (keydown)=\"_handleKeydown($event)\"\n >\n <div class=\"granite-menu-content\">\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </div>\n </div>\n </ng-container>\n\n <!-- Touch -->\n <ng-container *ngIf=\"_clientOutput?.device === 'touch'\">\n <div\n #menu\n class=\"granite-menu granite-device-output-touch\"\n tabindex=\"-1\"\n [id]=\"panelId\"\n [style]=\"touchStyles\"\n [@transformMenuTouch]=\"_transformMenu | async\"\n (@transformMenuTouch.start)=\"_onAnimationStart($event)\"\n (@transformMenuTouch.done)=\"_onAnimationDone($event)\"\n (click)=\"_handleClick()\"\n (keydown)=\"_handleKeydown($event)\"\n >\n <div class=\"granite-menu-content\">\n <div *ngIf=\"showTitle\" class=\"header-container\">\n <button\n [disabled]=\"!showBackButton\"\n graniteMenuTouchTitleItem\n (click)=\"_handleBackClick($event)\"\n >\n {{ title }}\n </button>\n </div>\n\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n\n <div class=\"footer-container\"></div>\n </div>\n </div>\n\n <!-- Close button -->\n <div class=\"close\" [@transformCloseButton]=\"_transformMenu | async\">\n <button\n *ngIf=\"showCloseButton\"\n graniteMenuTouchCloseItem\n (click)=\"_handleCloseClick()\"\n >\n {{ closeLabel }}\n </button>\n </div>\n </ng-container>\n\n <!--\n Content template shared between desktop and touch parts, as <ng-content>\n can't be used in two places in the same template\n -->\n <ng-template #content>\n <ng-content></ng-content>\n </ng-template>\n</ng-template>\n", styles: [".granite-menu:not(.granite-device-output-touch){background-color:var(--granite-color-background-variant);color:var(--granite-color-text);overflow:auto;-webkit-overflow-scrolling:touch;outline:0;-webkit-user-select:none;user-select:none;box-shadow:var(--granite-shadow-l);min-width:7rem;overflow-x:hidden;overflow-y:hidden}.granite-menu:not(.granite-device-output-touch).ng-animating{pointer-events:none}.granite-menu:not(.granite-device-output-touch):not(.is-menu-empty){min-height:2rem}.granite-menu:not(.granite-device-output-touch):hover{overflow-y:auto}.granite-menu:not(.granite-device-output-touch)::-webkit-scrollbar{width:var(--granite-spacing-4)}.granite-menu:not(.granite-device-output-touch)::-webkit-scrollbar-thumb{background-color:var(--granite-color-border-hard);border-radius:calc(var(--granite-spacing-16) * .125)}.granite-menu:not(.granite-device-output-touch)::-webkit-scrollbar-track{background-color:var(--granite-color-background-hover)}.granite-menu.granite-device-output-touch{background-color:var(--granite-color-background-variant);color:var(--granite-color-text);overflow:auto;-webkit-overflow-scrolling:touch;outline:0;-webkit-user-select:none;user-select:none;box-shadow:var(--granite-shadow-l);border-radius:.25rem}.granite-menu.granite-device-output-touch.ng-animating{pointer-events:none}.granite-menu.granite-device-output-touch:not(.is-menu-empty){min-height:3rem}.granite-menu.granite-device-output-touch:not(.close){margin:var(--granite-spacing-4)}.granite-menu.granite-device-output-touch.close{margin-inline-start:var(--granite-spacing-4);margin-inline-end:var(--granite-spacing-4);margin-block-end:var(--granite-spacing-4)}.granite-menu.granite-device-output-touch .header-container{position:sticky;top:0;background-color:var(--granite-color-background-variant);z-index:1}.granite-menu.granite-device-output-touch .footer-container{position:sticky;bottom:0;height:0}.close:not(:empty){background-color:var(--granite-color-background-variant);color:var(--granite-color-text);overflow:auto;-webkit-overflow-scrolling:touch;outline:0;-webkit-user-select:none;user-select:none;box-shadow:var(--granite-shadow-l);border-radius:.25rem}.close:not(:empty).ng-animating{pointer-events:none}.close:not(:empty):not(.is-menu-empty){min-height:3rem}.close:not(:empty):not(.close){margin:var(--granite-spacing-4)}.close:not(:empty).close{margin-inline-start:var(--granite-spacing-4);margin-inline-end:var(--granite-spacing-4);margin-block-end:var(--granite-spacing-4)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.GraniteMenuTouchCloseComponent, selector: "[graniteMenuTouchCloseItem]", exportAs: ["graniteMenuTouchCloseItem"] }, { kind: "component", type: i3.GraniteMenuTouchTitleItemComponent, selector: "[graniteMenuTouchTitleItem]", exportAs: ["graniteMenuTouchTitleItem"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], animations: [
15
- graniteMenuDesktopAnimations.transformMenuDesktop,
16
- graniteMenuTouchAnimations.transformMenuTouch,
17
- graniteMenuTouchAnimations.transformCloseButton,
18
- ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
19
- }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteMenuComponent, decorators: [{
21
- type: Component,
22
- args: [{ selector: 'granite-menu', changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'graniteMenu', animations: [
23
- graniteMenuDesktopAnimations.transformMenuDesktop,
24
- graniteMenuTouchAnimations.transformMenuTouch,
25
- graniteMenuTouchAnimations.transformCloseButton,
26
- ], providers: [
27
- { provide: GRANITE_MENU_PANEL, useExisting: GraniteMenuComponent },
28
- ], template: "<!--\n Using separate template part for desktop and touch output, because of\n animation triggers and slightly different content.\n-->\n<ng-template>\n <!-- Desktop -->\n <ng-container *ngIf=\"_clientOutput.device === 'desktop'\">\n <div\n #menu\n class=\"granite-menu\"\n [class.is-menu-empty]=\"_isMenuEmpty$ | async\"\n tabindex=\"-1\"\n [id]=\"panelId\"\n [@transformMenuDesktop]=\"_transformMenu | async\"\n (@transformMenuDesktop.start)=\"_onAnimationStart($event)\"\n (@transformMenuDesktop.done)=\"_onAnimationDone($event)\"\n [style]=\"styles\"\n (click)=\"_handleClick()\"\n (keydown)=\"_handleKeydown($event)\"\n >\n <div class=\"granite-menu-content\">\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </div>\n </div>\n </ng-container>\n\n <!-- Touch -->\n <ng-container *ngIf=\"_clientOutput?.device === 'touch'\">\n <div\n #menu\n class=\"granite-menu granite-device-output-touch\"\n tabindex=\"-1\"\n [id]=\"panelId\"\n [style]=\"touchStyles\"\n [@transformMenuTouch]=\"_transformMenu | async\"\n (@transformMenuTouch.start)=\"_onAnimationStart($event)\"\n (@transformMenuTouch.done)=\"_onAnimationDone($event)\"\n (click)=\"_handleClick()\"\n (keydown)=\"_handleKeydown($event)\"\n >\n <div class=\"granite-menu-content\">\n <div *ngIf=\"showTitle\" class=\"header-container\">\n <button\n [disabled]=\"!showBackButton\"\n graniteMenuTouchTitleItem\n (click)=\"_handleBackClick($event)\"\n >\n {{ title }}\n </button>\n </div>\n\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n\n <div class=\"footer-container\"></div>\n </div>\n </div>\n\n <!-- Close button -->\n <div class=\"close\" [@transformCloseButton]=\"_transformMenu | async\">\n <button\n *ngIf=\"showCloseButton\"\n graniteMenuTouchCloseItem\n (click)=\"_handleCloseClick()\"\n >\n {{ closeLabel }}\n </button>\n </div>\n </ng-container>\n\n <!--\n Content template shared between desktop and touch parts, as <ng-content>\n can't be used in two places in the same template\n -->\n <ng-template #content>\n <ng-content></ng-content>\n </ng-template>\n</ng-template>\n", styles: [".granite-menu:not(.granite-device-output-touch){background-color:var(--granite-color-background-variant);color:var(--granite-color-text);overflow:auto;-webkit-overflow-scrolling:touch;outline:0;-webkit-user-select:none;user-select:none;box-shadow:var(--granite-shadow-l);min-width:7rem;overflow-x:hidden;overflow-y:hidden}.granite-menu:not(.granite-device-output-touch).ng-animating{pointer-events:none}.granite-menu:not(.granite-device-output-touch):not(.is-menu-empty){min-height:2rem}.granite-menu:not(.granite-device-output-touch):hover{overflow-y:auto}.granite-menu:not(.granite-device-output-touch)::-webkit-scrollbar{width:var(--granite-spacing-4)}.granite-menu:not(.granite-device-output-touch)::-webkit-scrollbar-thumb{background-color:var(--granite-color-border-hard);border-radius:calc(var(--granite-spacing-16) * .125)}.granite-menu:not(.granite-device-output-touch)::-webkit-scrollbar-track{background-color:var(--granite-color-background-hover)}.granite-menu.granite-device-output-touch{background-color:var(--granite-color-background-variant);color:var(--granite-color-text);overflow:auto;-webkit-overflow-scrolling:touch;outline:0;-webkit-user-select:none;user-select:none;box-shadow:var(--granite-shadow-l);border-radius:.25rem}.granite-menu.granite-device-output-touch.ng-animating{pointer-events:none}.granite-menu.granite-device-output-touch:not(.is-menu-empty){min-height:3rem}.granite-menu.granite-device-output-touch:not(.close){margin:var(--granite-spacing-4)}.granite-menu.granite-device-output-touch.close{margin-inline-start:var(--granite-spacing-4);margin-inline-end:var(--granite-spacing-4);margin-block-end:var(--granite-spacing-4)}.granite-menu.granite-device-output-touch .header-container{position:sticky;top:0;background-color:var(--granite-color-background-variant);z-index:1}.granite-menu.granite-device-output-touch .footer-container{position:sticky;bottom:0;height:0}.close:not(:empty){background-color:var(--granite-color-background-variant);color:var(--granite-color-text);overflow:auto;-webkit-overflow-scrolling:touch;outline:0;-webkit-user-select:none;user-select:none;box-shadow:var(--granite-shadow-l);border-radius:.25rem}.close:not(:empty).ng-animating{pointer-events:none}.close:not(:empty):not(.is-menu-empty){min-height:3rem}.close:not(:empty):not(.close){margin:var(--granite-spacing-4)}.close:not(:empty).close{margin-inline-start:var(--granite-spacing-4);margin-inline-end:var(--granite-spacing-4);margin-block-end:var(--granite-spacing-4)}\n"] }]
29
- }] });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL21lbnUvbWVudS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL21lbnUvbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5FLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNsRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7O0FBaUJqRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsa0JBQWtCOytHQUEvQyxvQkFBb0I7bUdBQXBCLG9CQUFvQix1Q0FKcEI7WUFDVCxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUU7U0FDbkUsNEVDcEJILGcyRUE2RUEsbWxHRGhFYztZQUNWLDRCQUE0QixDQUFDLG9CQUFvQjtZQUNqRCwwQkFBMEIsQ0FBQyxrQkFBa0I7WUFDN0MsMEJBQTBCLENBQUMsb0JBQW9CO1NBQ2hEOzs0RkFLVSxvQkFBb0I7a0JBZmhDLFNBQVM7K0JBQ0UsY0FBYyxtQkFHUCx1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLGFBQWEsY0FDWDt3QkFDViw0QkFBNEIsQ0FBQyxvQkFBb0I7d0JBQ2pELDBCQUEwQixDQUFDLGtCQUFrQjt3QkFDN0MsMEJBQTBCLENBQUMsb0JBQW9CO3FCQUNoRCxhQUNVO3dCQUNULEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFdBQVcsc0JBQXNCLEVBQUU7cUJBQ25FIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBncmFuaXRlTWVudURlc2t0b3BBbmltYXRpb25zIH0gZnJvbSAnLi9tZW51LWRlc2t0b3AtYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBncmFuaXRlTWVudVRvdWNoQW5pbWF0aW9ucyB9IGZyb20gJy4vbWVudS10b3VjaC1hbmltYXRpb25zJztcbmltcG9ydCB7IEdSQU5JVEVfTUVOVV9QQU5FTCB9IGZyb20gJy4vbWVudS1wYW5lbCc7XG5pbXBvcnQgeyBfTWVudUJhc2VDb21wb25lbnQgfSBmcm9tICcuL21lbnUtYmFzZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dyYW5pdGUtbWVudScsXG4gIHRlbXBsYXRlVXJsOiAnbWVudS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydtZW51LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBleHBvcnRBczogJ2dyYW5pdGVNZW51JyxcbiAgYW5pbWF0aW9uczogW1xuICAgIGdyYW5pdGVNZW51RGVza3RvcEFuaW1hdGlvbnMudHJhbnNmb3JtTWVudURlc2t0b3AsXG4gICAgZ3Jhbml0ZU1lbnVUb3VjaEFuaW1hdGlvbnMudHJhbnNmb3JtTWVudVRvdWNoLFxuICAgIGdyYW5pdGVNZW51VG91Y2hBbmltYXRpb25zLnRyYW5zZm9ybUNsb3NlQnV0dG9uLFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IEdSQU5JVEVfTUVOVV9QQU5FTCwgdXNlRXhpc3Rpbmc6IEdyYW5pdGVNZW51Q29tcG9uZW50IH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEdyYW5pdGVNZW51Q29tcG9uZW50IGV4dGVuZHMgX01lbnVCYXNlQ29tcG9uZW50IHt9XG4iLCI8IS0tXG4gIFVzaW5nIHNlcGFyYXRlIHRlbXBsYXRlIHBhcnQgZm9yIGRlc2t0b3AgYW5kIHRvdWNoIG91dHB1dCwgYmVjYXVzZSBvZlxuICBhbmltYXRpb24gdHJpZ2dlcnMgYW5kIHNsaWdodGx5IGRpZmZlcmVudCBjb250ZW50LlxuLS0+XG48bmctdGVtcGxhdGU+XG4gIDwhLS0gRGVza3RvcCAtLT5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIl9jbGllbnRPdXRwdXQuZGV2aWNlID09PSAnZGVza3RvcCdcIj5cbiAgICA8ZGl2XG4gICAgICAjbWVudVxuICAgICAgY2xhc3M9XCJncmFuaXRlLW1lbnVcIlxuICAgICAgW2NsYXNzLmlzLW1lbnUtZW1wdHldPVwiX2lzTWVudUVtcHR5JCB8IGFzeW5jXCJcbiAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgW2lkXT1cInBhbmVsSWRcIlxuICAgICAgW0B0cmFuc2Zvcm1NZW51RGVza3RvcF09XCJfdHJhbnNmb3JtTWVudSB8IGFzeW5jXCJcbiAgICAgIChAdHJhbnNmb3JtTWVudURlc2t0b3Auc3RhcnQpPVwiX29uQW5pbWF0aW9uU3RhcnQoJGV2ZW50KVwiXG4gICAgICAoQHRyYW5zZm9ybU1lbnVEZXNrdG9wLmRvbmUpPVwiX29uQW5pbWF0aW9uRG9uZSgkZXZlbnQpXCJcbiAgICAgIFtzdHlsZV09XCJzdHlsZXNcIlxuICAgICAgKGNsaWNrKT1cIl9oYW5kbGVDbGljaygpXCJcbiAgICAgIChrZXlkb3duKT1cIl9oYW5kbGVLZXlkb3duKCRldmVudClcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJncmFuaXRlLW1lbnUtY29udGVudFwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8IS0tIFRvdWNoIC0tPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiX2NsaWVudE91dHB1dD8uZGV2aWNlID09PSAndG91Y2gnXCI+XG4gICAgPGRpdlxuICAgICAgI21lbnVcbiAgICAgIGNsYXNzPVwiZ3Jhbml0ZS1tZW51IGdyYW5pdGUtZGV2aWNlLW91dHB1dC10b3VjaFwiXG4gICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgIFtpZF09XCJwYW5lbElkXCJcbiAgICAgIFtzdHlsZV09XCJ0b3VjaFN0eWxlc1wiXG4gICAgICBbQHRyYW5zZm9ybU1lbnVUb3VjaF09XCJfdHJhbnNmb3JtTWVudSB8IGFzeW5jXCJcbiAgICAgIChAdHJhbnNmb3JtTWVudVRvdWNoLnN0YXJ0KT1cIl9vbkFuaW1hdGlvblN0YXJ0KCRldmVudClcIlxuICAgICAgKEB0cmFuc2Zvcm1NZW51VG91Y2guZG9uZSk9XCJfb25BbmltYXRpb25Eb25lKCRldmVudClcIlxuICAgICAgKGNsaWNrKT1cIl9oYW5kbGVDbGljaygpXCJcbiAgICAgIChrZXlkb3duKT1cIl9oYW5kbGVLZXlkb3duKCRldmVudClcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJncmFuaXRlLW1lbnUtY29udGVudFwiPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwic2hvd1RpdGxlXCIgY2xhc3M9XCJoZWFkZXItY29udGFpbmVyXCI+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFzaG93QmFja0J1dHRvblwiXG4gICAgICAgICAgICBncmFuaXRlTWVudVRvdWNoVGl0bGVJdGVtXG4gICAgICAgICAgICAoY2xpY2spPVwiX2hhbmRsZUJhY2tDbGljaygkZXZlbnQpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7eyB0aXRsZSB9fVxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9vdGVyLWNvbnRhaW5lclwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIENsb3NlIGJ1dHRvbiAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiY2xvc2VcIiBbQHRyYW5zZm9ybUNsb3NlQnV0dG9uXT1cIl90cmFuc2Zvcm1NZW51IHwgYXN5bmNcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCJzaG93Q2xvc2VCdXR0b25cIlxuICAgICAgICBncmFuaXRlTWVudVRvdWNoQ2xvc2VJdGVtXG4gICAgICAgIChjbGljayk9XCJfaGFuZGxlQ2xvc2VDbGljaygpXCJcbiAgICAgID5cbiAgICAgICAge3sgY2xvc2VMYWJlbCB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDwhLS1cbiAgICBDb250ZW50IHRlbXBsYXRlIHNoYXJlZCBiZXR3ZWVuIGRlc2t0b3AgYW5kIHRvdWNoIHBhcnRzLCBhcyA8bmctY29udGVudD5cbiAgICBjYW4ndCBiZSB1c2VkIGluIHR3byBwbGFjZXMgaW4gdGhlIHNhbWUgdGVtcGxhdGVcbiAgLS0+XG4gIDxuZy10ZW1wbGF0ZSAjY29udGVudD5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvbmctdGVtcGxhdGU+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -1,55 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { OverlayModule } from '@angular/cdk/overlay';
4
- import { PortalModule } from '@angular/cdk/portal';
5
- import { GraniteMenuComponent } from './menu.component';
6
- import { GraniteMenuItemComponent } from './menu-item.component';
7
- import { GraniteMenuTriggerForDirective } from './menu-trigger-for.directive';
8
- import { GraniteMenuTouchCloseComponent } from './menu-touch-close.component';
9
- import { GraniteMenuTouchTitleItemComponent } from './menu-touch-title.component';
10
- import { GraniteDividerDirective } from './divider.directive';
11
- import { GraniteIconModule } from '../icon/icon.module';
12
- import { GraniteTitleDirective } from './title.directive';
13
- import * as i0 from "@angular/core";
14
- export class GraniteMenuModule {
15
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: GraniteMenuModule, declarations: [GraniteMenuComponent,
17
- GraniteMenuItemComponent,
18
- GraniteMenuTriggerForDirective,
19
- GraniteMenuTouchCloseComponent,
20
- GraniteMenuTouchTitleItemComponent,
21
- GraniteDividerDirective,
22
- GraniteTitleDirective], imports: [CommonModule, OverlayModule, PortalModule, GraniteIconModule], exports: [GraniteMenuComponent,
23
- GraniteMenuItemComponent,
24
- GraniteMenuTriggerForDirective,
25
- GraniteMenuTouchCloseComponent,
26
- GraniteMenuTouchTitleItemComponent,
27
- GraniteDividerDirective,
28
- GraniteTitleDirective] }); }
29
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteMenuModule, imports: [CommonModule, OverlayModule, PortalModule, GraniteIconModule] }); }
30
- }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteMenuModule, decorators: [{
32
- type: NgModule,
33
- args: [{
34
- declarations: [
35
- GraniteMenuComponent,
36
- GraniteMenuItemComponent,
37
- GraniteMenuTriggerForDirective,
38
- GraniteMenuTouchCloseComponent,
39
- GraniteMenuTouchTitleItemComponent,
40
- GraniteDividerDirective,
41
- GraniteTitleDirective,
42
- ],
43
- imports: [CommonModule, OverlayModule, PortalModule, GraniteIconModule],
44
- exports: [
45
- GraniteMenuComponent,
46
- GraniteMenuItemComponent,
47
- GraniteMenuTriggerForDirective,
48
- GraniteMenuTouchCloseComponent,
49
- GraniteMenuTouchTitleItemComponent,
50
- GraniteDividerDirective,
51
- GraniteTitleDirective,
52
- ],
53
- }]
54
- }] });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL21lbnUvbWVudS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUF1QjFELE1BQU0sT0FBTyxpQkFBaUI7K0dBQWpCLGlCQUFpQjtnSEFBakIsaUJBQWlCLGlCQW5CMUIsb0JBQW9CO1lBQ3BCLHdCQUF3QjtZQUN4Qiw4QkFBOEI7WUFDOUIsOEJBQThCO1lBQzlCLGtDQUFrQztZQUNsQyx1QkFBdUI7WUFDdkIscUJBQXFCLGFBRWIsWUFBWSxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsaUJBQWlCLGFBRXBFLG9CQUFvQjtZQUNwQix3QkFBd0I7WUFDeEIsOEJBQThCO1lBQzlCLDhCQUE4QjtZQUM5QixrQ0FBa0M7WUFDbEMsdUJBQXVCO1lBQ3ZCLHFCQUFxQjtnSEFHWixpQkFBaUIsWUFYbEIsWUFBWSxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsaUJBQWlCOzs0RkFXM0QsaUJBQWlCO2tCQXJCN0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osb0JBQW9CO3dCQUNwQix3QkFBd0I7d0JBQ3hCLDhCQUE4Qjt3QkFDOUIsOEJBQThCO3dCQUM5QixrQ0FBa0M7d0JBQ2xDLHVCQUF1Qjt3QkFDdkIscUJBQXFCO3FCQUN0QjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxpQkFBaUIsQ0FBQztvQkFDdkUsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsd0JBQXdCO3dCQUN4Qiw4QkFBOEI7d0JBQzlCLDhCQUE4Qjt3QkFDOUIsa0NBQWtDO3dCQUNsQyx1QkFBdUI7d0JBQ3ZCLHFCQUFxQjtxQkFDdEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuXG5pbXBvcnQgeyBHcmFuaXRlTWVudUNvbXBvbmVudCB9IGZyb20gJy4vbWVudS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3Jhbml0ZU1lbnVJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9tZW51LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IEdyYW5pdGVNZW51VHJpZ2dlckZvckRpcmVjdGl2ZSB9IGZyb20gJy4vbWVudS10cmlnZ2VyLWZvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgR3Jhbml0ZU1lbnVUb3VjaENsb3NlQ29tcG9uZW50IH0gZnJvbSAnLi9tZW51LXRvdWNoLWNsb3NlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmFuaXRlTWVudVRvdWNoVGl0bGVJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9tZW51LXRvdWNoLXRpdGxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmFuaXRlRGl2aWRlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGl2aWRlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgR3Jhbml0ZUljb25Nb2R1bGUgfSBmcm9tICcuLi9pY29uL2ljb24ubW9kdWxlJztcbmltcG9ydCB7IEdyYW5pdGVUaXRsZURpcmVjdGl2ZSB9IGZyb20gJy4vdGl0bGUuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgR3Jhbml0ZU1lbnVDb21wb25lbnQsXG4gICAgR3Jhbml0ZU1lbnVJdGVtQ29tcG9uZW50LFxuICAgIEdyYW5pdGVNZW51VHJpZ2dlckZvckRpcmVjdGl2ZSxcbiAgICBHcmFuaXRlTWVudVRvdWNoQ2xvc2VDb21wb25lbnQsXG4gICAgR3Jhbml0ZU1lbnVUb3VjaFRpdGxlSXRlbUNvbXBvbmVudCxcbiAgICBHcmFuaXRlRGl2aWRlckRpcmVjdGl2ZSxcbiAgICBHcmFuaXRlVGl0bGVEaXJlY3RpdmUsXG4gIF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE92ZXJsYXlNb2R1bGUsIFBvcnRhbE1vZHVsZSwgR3Jhbml0ZUljb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbXG4gICAgR3Jhbml0ZU1lbnVDb21wb25lbnQsXG4gICAgR3Jhbml0ZU1lbnVJdGVtQ29tcG9uZW50LFxuICAgIEdyYW5pdGVNZW51VHJpZ2dlckZvckRpcmVjdGl2ZSxcbiAgICBHcmFuaXRlTWVudVRvdWNoQ2xvc2VDb21wb25lbnQsXG4gICAgR3Jhbml0ZU1lbnVUb3VjaFRpdGxlSXRlbUNvbXBvbmVudCxcbiAgICBHcmFuaXRlRGl2aWRlckRpcmVjdGl2ZSxcbiAgICBHcmFuaXRlVGl0bGVEaXJlY3RpdmUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEdyYW5pdGVNZW51TW9kdWxlIHt9XG4iXX0=
@@ -1,109 +0,0 @@
1
- import { ComponentHarness, TestKey, HarnessPredicate, } from '@angular/cdk/testing';
2
- /**
3
- * Test harness for menu component
4
- *
5
- * Stripped-down version of the Angular Material menu test harness (.../menu/menu-harness.ts)
6
- * just to get things going.
7
- */
8
- export class GraniteMenuHarness extends ComponentHarness {
9
- constructor() {
10
- super(...arguments);
11
- this._documentRootLocator = this.documentRootLocatorFactory();
12
- }
13
- /**
14
- * The selector for the host element of a `MenuComponent` instance,
15
- * i.e. the button element used to open the menu.
16
- */
17
- static { this.hostSelector = '.granite-menu-trigger'; }
18
- /**
19
- * Gets a `HarnessPredicate` that can be used to search for a `MenuHarness` that meets
20
- * certain criteria.
21
- * @param options Options for filtering which menu item instances are considered a match.
22
- * @return a `HarnessPredicate` configured with the given options.
23
- */
24
- static with(options = {}) {
25
- return new HarnessPredicate(GraniteMenuHarness, options).addOption('text', options.text,
26
- /* @dynamic */ (harness, text) => HarnessPredicate.stringMatches(harness.getText(), text));
27
- }
28
- /** Gets the text of the menu trigger */
29
- async getText() {
30
- return (await this.host()).text();
31
- }
32
- /** Opens the menu, unless already open */
33
- async open() {
34
- if (!(await this.isOpen())) {
35
- await (await this.host()).click();
36
- // This is necessary so that we wait for the opening animation to finish.
37
- return this.forceStabilize();
38
- }
39
- }
40
- /** Closes the menu, unless already closed */
41
- async close() {
42
- await (await this._getMenuPanel())?.sendKeys(TestKey.ESCAPE);
43
- // This is necessary so that we wait for the closing animation to finish.
44
- return this.forceStabilize();
45
- }
46
- /** Whether the menu is open */
47
- async isOpen() {
48
- return !!(await this._getMenuPanel());
49
- }
50
- /**
51
- * Gets a list of `GraniteMenuItemHarness` representing the items in the menu.
52
- * @param filters Optionally filters which menu items are included.
53
- */
54
- async getItems(filters = {}) {
55
- const panelId = await this._getPanelId();
56
- if (panelId) {
57
- return this._documentRootLocator.locatorForAll(GraniteMenuItemHarness.with({ ...filters, ancestor: `#${panelId}` }))();
58
- }
59
- return [];
60
- }
61
- /** Gets the menu panel (popup) associated with the menu */
62
- async _getMenuPanel() {
63
- const panelId = await this._getPanelId();
64
- return panelId
65
- ? this._documentRootLocator.locatorForOptional(`#${panelId}`)()
66
- : null;
67
- }
68
- /** Gets the id of the menu panel (popup) associated with this menu */
69
- async _getPanelId() {
70
- const panelId = await (await this.host()).getAttribute('aria-controls');
71
- return panelId || null;
72
- }
73
- }
74
- export class GraniteMenuItemHarness extends ComponentHarness {
75
- /** The selector for the host element of a `MenuItemComponent` instance. */
76
- static { this.hostSelector = '.granite-menu-item'; }
77
- /**
78
- * Gets a `HarnessPredicate` that can be used to search for a `GraniteMenuItemHarness` that meets
79
- * certain criteria.
80
- * @param options Options for filtering which menu item instances are considered a match.
81
- * @return a `HarnessPredicate` configured with the given options.
82
- */
83
- static with(options = {}) {
84
- return new HarnessPredicate(GraniteMenuItemHarness, options).addOption('text', options.text,
85
- /* @dynamic */ (harness, text) => HarnessPredicate.stringMatches(harness.getText(), text));
86
- }
87
- /** Gets the text of the menu item. */
88
- async getText() {
89
- return (await this.host()).text();
90
- }
91
- /** Whether this item has a submenu. */
92
- async hasSubmenu() {
93
- return (await this.host()).matchesSelector(GraniteMenuHarness.hostSelector);
94
- }
95
- /** Gets the submenu associated with this menu item, or null if none. */
96
- async getSubmenu() {
97
- if (await this.hasSubmenu()) {
98
- return new GraniteMenuHarness(this.locatorFactory);
99
- }
100
- return null;
101
- }
102
- /** Clicks the menu item. */
103
- async click() {
104
- await (await this.host()).click();
105
- // This is necessary so that we wait for the opening animation to finish. (i.e. if it opens another menu)
106
- return this.forceStabilize();
107
- }
108
- }
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9tZW51L3Rlc3RpbmcvbWVudS5oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsT0FBTyxFQUdQLGdCQUFnQixHQUNqQixNQUFNLHNCQUFzQixDQUFDO0FBRTlCOzs7OztHQUtHO0FBQ0gsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGdCQUFnQjtJQUF4RDs7UUFPVSx5QkFBb0IsR0FBRyxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztJQTBFbkUsQ0FBQztJQWhGQzs7O09BR0c7YUFDSSxpQkFBWSxHQUFHLHVCQUF1QixBQUExQixDQUEyQjtJQUk5Qzs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxJQUFJLENBQ1QsVUFBcUMsRUFBRTtRQUV2QyxPQUFPLElBQUksZ0JBQWdCLENBQUMsa0JBQWtCLEVBQUUsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUNoRSxNQUFNLEVBQ04sT0FBTyxDQUFDLElBQUk7UUFDWixjQUFjLENBQUMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FDL0IsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FDMUQsQ0FBQztJQUNKLENBQUM7SUFFRCx3Q0FBd0M7SUFDeEMsS0FBSyxDQUFDLE9BQU87UUFDWCxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsMENBQTBDO0lBQzFDLEtBQUssQ0FBQyxJQUFJO1FBQ1IsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQzNCLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xDLHlFQUF5RTtZQUN6RSxPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUMvQixDQUFDO0lBQ0gsQ0FBQztJQUVELDZDQUE2QztJQUM3QyxLQUFLLENBQUMsS0FBSztRQUNULE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0QseUVBQXlFO1FBQ3pFLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCwrQkFBK0I7SUFDL0IsS0FBSyxDQUFDLE1BQU07UUFDVixPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxRQUFRLENBQ1osVUFBMkQsRUFBRTtRQUU3RCxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN6QyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsYUFBYSxDQUM1QyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQ3JFLEVBQUUsQ0FBQztRQUNOLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCwyREFBMkQ7SUFDbkQsS0FBSyxDQUFDLGFBQWE7UUFDekIsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDekMsT0FBTyxPQUFPO1lBQ1osQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLE9BQU8sRUFBRSxDQUFDLEVBQUU7WUFDL0QsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNYLENBQUM7SUFFRCxzRUFBc0U7SUFDOUQsS0FBSyxDQUFDLFdBQVc7UUFDdkIsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3hFLE9BQU8sT0FBTyxJQUFJLElBQUksQ0FBQztJQUN6QixDQUFDOztBQUdILE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBZ0I7SUFDMUQsMkVBQTJFO2FBQ3BFLGlCQUFZLEdBQUcsb0JBQW9CLENBQUM7SUFFM0M7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsSUFBSSxDQUNULFVBQXlDLEVBQUU7UUFFM0MsT0FBTyxJQUFJLGdCQUFnQixDQUFDLHNCQUFzQixFQUFFLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FDcEUsTUFBTSxFQUNOLE9BQU8sQ0FBQyxJQUFJO1FBQ1osY0FBYyxDQUFDLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxFQUFFLENBQy9CLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQzFELENBQUM7SUFDSixDQUFDO0lBRUQsc0NBQXNDO0lBQ3RDLEtBQUssQ0FBQyxPQUFPO1FBQ1gsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELHVDQUF1QztJQUN2QyxLQUFLLENBQUMsVUFBVTtRQUNkLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsd0VBQXdFO0lBQ3hFLEtBQUssQ0FBQyxVQUFVO1FBQ2QsSUFBSSxNQUFNLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDO1lBQzVCLE9BQU8sSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDckQsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELDRCQUE0QjtJQUM1QixLQUFLLENBQUMsS0FBSztRQUNULE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2xDLHlHQUF5RztRQUN6RyxPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50SGFybmVzcyxcbiAgVGVzdEtleSxcbiAgVGVzdEVsZW1lbnQsXG4gIEJhc2VIYXJuZXNzRmlsdGVycyxcbiAgSGFybmVzc1ByZWRpY2F0ZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuXG4vKipcbiAqIFRlc3QgaGFybmVzcyBmb3IgbWVudSBjb21wb25lbnRcbiAqXG4gKiBTdHJpcHBlZC1kb3duIHZlcnNpb24gb2YgdGhlIEFuZ3VsYXIgTWF0ZXJpYWwgbWVudSB0ZXN0IGhhcm5lc3MgKC4uLi9tZW51L21lbnUtaGFybmVzcy50cylcbiAqIGp1c3QgdG8gZ2V0IHRoaW5ncyBnb2luZy5cbiAqL1xuZXhwb3J0IGNsYXNzIEdyYW5pdGVNZW51SGFybmVzcyBleHRlbmRzIENvbXBvbmVudEhhcm5lc3Mge1xuICAvKipcbiAgICogVGhlIHNlbGVjdG9yIGZvciB0aGUgaG9zdCBlbGVtZW50IG9mIGEgYE1lbnVDb21wb25lbnRgIGluc3RhbmNlLFxuICAgKiBpLmUuIHRoZSBidXR0b24gZWxlbWVudCB1c2VkIHRvIG9wZW4gdGhlIG1lbnUuXG4gICAqL1xuICBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJy5ncmFuaXRlLW1lbnUtdHJpZ2dlcic7XG5cbiAgcHJpdmF0ZSBfZG9jdW1lbnRSb290TG9jYXRvciA9IHRoaXMuZG9jdW1lbnRSb290TG9jYXRvckZhY3RvcnkoKTtcblxuICAvKipcbiAgICogR2V0cyBhIGBIYXJuZXNzUHJlZGljYXRlYCB0aGF0IGNhbiBiZSB1c2VkIHRvIHNlYXJjaCBmb3IgYSBgTWVudUhhcm5lc3NgIHRoYXQgbWVldHNcbiAgICogY2VydGFpbiBjcml0ZXJpYS5cbiAgICogQHBhcmFtIG9wdGlvbnMgT3B0aW9ucyBmb3IgZmlsdGVyaW5nIHdoaWNoIG1lbnUgaXRlbSBpbnN0YW5jZXMgYXJlIGNvbnNpZGVyZWQgYSBtYXRjaC5cbiAgICogQHJldHVybiBhIGBIYXJuZXNzUHJlZGljYXRlYCBjb25maWd1cmVkIHdpdGggdGhlIGdpdmVuIG9wdGlvbnMuXG4gICAqL1xuICBzdGF0aWMgd2l0aChcbiAgICBvcHRpb25zOiBHcmFuaXRlTWVudUhhcm5lc3NGaWx0ZXJzID0ge31cbiAgKTogSGFybmVzc1ByZWRpY2F0ZTxHcmFuaXRlTWVudUhhcm5lc3M+IHtcbiAgICByZXR1cm4gbmV3IEhhcm5lc3NQcmVkaWNhdGUoR3Jhbml0ZU1lbnVIYXJuZXNzLCBvcHRpb25zKS5hZGRPcHRpb24oXG4gICAgICAndGV4dCcsXG4gICAgICBvcHRpb25zLnRleHQsXG4gICAgICAvKiBAZHluYW1pYyAqLyAoaGFybmVzcywgdGV4dCkgPT5cbiAgICAgICAgSGFybmVzc1ByZWRpY2F0ZS5zdHJpbmdNYXRjaGVzKGhhcm5lc3MuZ2V0VGV4dCgpLCB0ZXh0KVxuICAgICk7XG4gIH1cblxuICAvKiogR2V0cyB0aGUgdGV4dCBvZiB0aGUgbWVudSB0cmlnZ2VyICovXG4gIGFzeW5jIGdldFRleHQoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuaG9zdCgpKS50ZXh0KCk7XG4gIH1cblxuICAvKiogT3BlbnMgdGhlIG1lbnUsIHVubGVzcyBhbHJlYWR5IG9wZW4gKi9cbiAgYXN5bmMgb3BlbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoIShhd2FpdCB0aGlzLmlzT3BlbigpKSkge1xuICAgICAgYXdhaXQgKGF3YWl0IHRoaXMuaG9zdCgpKS5jbGljaygpO1xuICAgICAgLy8gVGhpcyBpcyBuZWNlc3Nhcnkgc28gdGhhdCB3ZSB3YWl0IGZvciB0aGUgb3BlbmluZyBhbmltYXRpb24gdG8gZmluaXNoLlxuICAgICAgcmV0dXJuIHRoaXMuZm9yY2VTdGFiaWxpemUoKTtcbiAgICB9XG4gIH1cblxuICAvKiogQ2xvc2VzIHRoZSBtZW51LCB1bmxlc3MgYWxyZWFkeSBjbG9zZWQgKi9cbiAgYXN5bmMgY2xvc2UoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuX2dldE1lbnVQYW5lbCgpKT8uc2VuZEtleXMoVGVzdEtleS5FU0NBUEUpO1xuICAgIC8vIFRoaXMgaXMgbmVjZXNzYXJ5IHNvIHRoYXQgd2Ugd2FpdCBmb3IgdGhlIGNsb3NpbmcgYW5pbWF0aW9uIHRvIGZpbmlzaC5cbiAgICByZXR1cm4gdGhpcy5mb3JjZVN0YWJpbGl6ZSgpO1xuICB9XG5cbiAgLyoqIFdoZXRoZXIgdGhlIG1lbnUgaXMgb3BlbiAqL1xuICBhc3luYyBpc09wZW4oKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuICEhKGF3YWl0IHRoaXMuX2dldE1lbnVQYW5lbCgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGEgbGlzdCBvZiBgR3Jhbml0ZU1lbnVJdGVtSGFybmVzc2AgcmVwcmVzZW50aW5nIHRoZSBpdGVtcyBpbiB0aGUgbWVudS5cbiAgICogQHBhcmFtIGZpbHRlcnMgT3B0aW9uYWxseSBmaWx0ZXJzIHdoaWNoIG1lbnUgaXRlbXMgYXJlIGluY2x1ZGVkLlxuICAgKi9cbiAgYXN5bmMgZ2V0SXRlbXMoXG4gICAgZmlsdGVyczogT21pdDxHcmFuaXRlTWVudUl0ZW1IYXJuZXNzRmlsdGVycywgJ2FuY2VzdG9yJz4gPSB7fVxuICApOiBQcm9taXNlPEdyYW5pdGVNZW51SXRlbUhhcm5lc3NbXT4ge1xuICAgIGNvbnN0IHBhbmVsSWQgPSBhd2FpdCB0aGlzLl9nZXRQYW5lbElkKCk7XG4gICAgaWYgKHBhbmVsSWQpIHtcbiAgICAgIHJldHVybiB0aGlzLl9kb2N1bWVudFJvb3RMb2NhdG9yLmxvY2F0b3JGb3JBbGwoXG4gICAgICAgIEdyYW5pdGVNZW51SXRlbUhhcm5lc3Mud2l0aCh7IC4uLmZpbHRlcnMsIGFuY2VzdG9yOiBgIyR7cGFuZWxJZH1gIH0pXG4gICAgICApKCk7XG4gICAgfVxuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSBtZW51IHBhbmVsIChwb3B1cCkgYXNzb2NpYXRlZCB3aXRoIHRoZSBtZW51ICovXG4gIHByaXZhdGUgYXN5bmMgX2dldE1lbnVQYW5lbCgpOiBQcm9taXNlPFRlc3RFbGVtZW50IHwgbnVsbD4ge1xuICAgIGNvbnN0IHBhbmVsSWQgPSBhd2FpdCB0aGlzLl9nZXRQYW5lbElkKCk7XG4gICAgcmV0dXJuIHBhbmVsSWRcbiAgICAgID8gdGhpcy5fZG9jdW1lbnRSb290TG9jYXRvci5sb2NhdG9yRm9yT3B0aW9uYWwoYCMke3BhbmVsSWR9YCkoKVxuICAgICAgOiBudWxsO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIGlkIG9mIHRoZSBtZW51IHBhbmVsIChwb3B1cCkgYXNzb2NpYXRlZCB3aXRoIHRoaXMgbWVudSAqL1xuICBwcml2YXRlIGFzeW5jIF9nZXRQYW5lbElkKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIGNvbnN0IHBhbmVsSWQgPSBhd2FpdCAoYXdhaXQgdGhpcy5ob3N0KCkpLmdldEF0dHJpYnV0ZSgnYXJpYS1jb250cm9scycpO1xuICAgIHJldHVybiBwYW5lbElkIHx8IG51bGw7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEdyYW5pdGVNZW51SXRlbUhhcm5lc3MgZXh0ZW5kcyBDb21wb25lbnRIYXJuZXNzIHtcbiAgLyoqIFRoZSBzZWxlY3RvciBmb3IgdGhlIGhvc3QgZWxlbWVudCBvZiBhIGBNZW51SXRlbUNvbXBvbmVudGAgaW5zdGFuY2UuICovXG4gIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnLmdyYW5pdGUtbWVudS1pdGVtJztcblxuICAvKipcbiAgICogR2V0cyBhIGBIYXJuZXNzUHJlZGljYXRlYCB0aGF0IGNhbiBiZSB1c2VkIHRvIHNlYXJjaCBmb3IgYSBgR3Jhbml0ZU1lbnVJdGVtSGFybmVzc2AgdGhhdCBtZWV0c1xuICAgKiBjZXJ0YWluIGNyaXRlcmlhLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBPcHRpb25zIGZvciBmaWx0ZXJpbmcgd2hpY2ggbWVudSBpdGVtIGluc3RhbmNlcyBhcmUgY29uc2lkZXJlZCBhIG1hdGNoLlxuICAgKiBAcmV0dXJuIGEgYEhhcm5lc3NQcmVkaWNhdGVgIGNvbmZpZ3VyZWQgd2l0aCB0aGUgZ2l2ZW4gb3B0aW9ucy5cbiAgICovXG4gIHN0YXRpYyB3aXRoKFxuICAgIG9wdGlvbnM6IEdyYW5pdGVNZW51SXRlbUhhcm5lc3NGaWx0ZXJzID0ge31cbiAgKTogSGFybmVzc1ByZWRpY2F0ZTxHcmFuaXRlTWVudUl0ZW1IYXJuZXNzPiB7XG4gICAgcmV0dXJuIG5ldyBIYXJuZXNzUHJlZGljYXRlKEdyYW5pdGVNZW51SXRlbUhhcm5lc3MsIG9wdGlvbnMpLmFkZE9wdGlvbihcbiAgICAgICd0ZXh0JyxcbiAgICAgIG9wdGlvbnMudGV4dCxcbiAgICAgIC8qIEBkeW5hbWljICovIChoYXJuZXNzLCB0ZXh0KSA9PlxuICAgICAgICBIYXJuZXNzUHJlZGljYXRlLnN0cmluZ01hdGNoZXMoaGFybmVzcy5nZXRUZXh0KCksIHRleHQpXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBHZXRzIHRoZSB0ZXh0IG9mIHRoZSBtZW51IGl0ZW0uICovXG4gIGFzeW5jIGdldFRleHQoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuaG9zdCgpKS50ZXh0KCk7XG4gIH1cblxuICAvKiogV2hldGhlciB0aGlzIGl0ZW0gaGFzIGEgc3VibWVudS4gKi9cbiAgYXN5bmMgaGFzU3VibWVudSgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuaG9zdCgpKS5tYXRjaGVzU2VsZWN0b3IoR3Jhbml0ZU1lbnVIYXJuZXNzLmhvc3RTZWxlY3Rvcik7XG4gIH1cblxuICAvKiogR2V0cyB0aGUgc3VibWVudSBhc3NvY2lhdGVkIHdpdGggdGhpcyBtZW51IGl0ZW0sIG9yIG51bGwgaWYgbm9uZS4gKi9cbiAgYXN5bmMgZ2V0U3VibWVudSgpOiBQcm9taXNlPEdyYW5pdGVNZW51SGFybmVzcyB8IG51bGw+IHtcbiAgICBpZiAoYXdhaXQgdGhpcy5oYXNTdWJtZW51KCkpIHtcbiAgICAgIHJldHVybiBuZXcgR3Jhbml0ZU1lbnVIYXJuZXNzKHRoaXMubG9jYXRvckZhY3RvcnkpO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKiBDbGlja3MgdGhlIG1lbnUgaXRlbS4gKi9cbiAgYXN5bmMgY2xpY2soKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuaG9zdCgpKS5jbGljaygpO1xuICAgIC8vIFRoaXMgaXMgbmVjZXNzYXJ5IHNvIHRoYXQgd2Ugd2FpdCBmb3IgdGhlIG9wZW5pbmcgYW5pbWF0aW9uIHRvIGZpbmlzaC4gKGkuZS4gaWYgaXQgb3BlbnMgYW5vdGhlciBtZW51KVxuICAgIHJldHVybiB0aGlzLmZvcmNlU3RhYmlsaXplKCk7XG4gIH1cbn1cblxuLyoqIEEgc2V0IG9mIGNyaXRlcmlhIHRoYXQgY2FuIGJlIHVzZWQgdG8gZmlsdGVyIGEgbGlzdCBvZiBgTWVudUhhcm5lc3NgIGluc3RhbmNlcy4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR3Jhbml0ZU1lbnVIYXJuZXNzRmlsdGVycyBleHRlbmRzIEJhc2VIYXJuZXNzRmlsdGVycyB7XG4gIC8qKiBPbmx5IGZpbmQgaW5zdGFuY2VzIHdob3NlIHRleHQgbWF0Y2hlcyB0aGUgZ2l2ZW4gdmFsdWUuICovXG4gIHRleHQ/OiBzdHJpbmcgfCBSZWdFeHA7XG59XG5cbi8qKiBBIHNldCBvZiBjcml0ZXJpYSB0aGF0IGNhbiBiZSB1c2VkIHRvIGZpbHRlciBhIGxpc3Qgb2YgYEdyYW5pdGVNZW51SXRlbUhhcm5lc3NgIGluc3RhbmNlcy4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR3Jhbml0ZU1lbnVJdGVtSGFybmVzc0ZpbHRlcnMgZXh0ZW5kcyBCYXNlSGFybmVzc0ZpbHRlcnMge1xuICAvKiogT25seSBmaW5kIGluc3RhbmNlcyB3aG9zZSB0ZXh0IG1hdGNoZXMgdGhlIGdpdmVuIHZhbHVlLiAqL1xuICB0ZXh0Pzogc3RyaW5nIHwgUmVnRXhwO1xufVxuIl19
@@ -1,17 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class GraniteTitleDirective {
4
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: GraniteTitleDirective, selector: "[graniteTitle]", host: { properties: { "class.granite-title": "true" } }, exportAs: ["graniteTitle"], ngImport: i0 }); }
6
- }
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteTitleDirective, decorators: [{
8
- type: Directive,
9
- args: [{
10
- selector: '[graniteTitle]',
11
- exportAs: 'graniteTitle',
12
- host: {
13
- '[class.granite-title]': 'true',
14
- },
15
- }]
16
- }] });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9tZW51L3RpdGxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVMxQyxNQUFNLE9BQU8scUJBQXFCOytHQUFyQixxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFQakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixRQUFRLEVBQUUsY0FBYztvQkFDeEIsSUFBSSxFQUFFO3dCQUNKLHVCQUF1QixFQUFFLE1BQU07cUJBQ2hDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tncmFuaXRlVGl0bGVdJyxcbiAgZXhwb3J0QXM6ICdncmFuaXRlVGl0bGUnLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzcy5ncmFuaXRlLXRpdGxlXSc6ICd0cnVlJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgR3Jhbml0ZVRpdGxlRGlyZWN0aXZlIHt9XG4iXX0=
@@ -1,19 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
- import { LegendBaseComponent } from '../progress-bar-legend-base';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- export class GraniteProgressBarLegendComponent extends LegendBaseComponent {
6
- constructor() {
7
- super(...arguments);
8
- this.legendItems = [];
9
- }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteProgressBarLegendComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GraniteProgressBarLegendComponent, selector: "granite-progress-bar-legend", inputs: { legendItems: "legendItems" }, usesInheritance: true, ngImport: i0, template: "<ng-template>\n <div class=\"legend\" data-fnd=\"legend\">\n <div\n *ngFor=\"let item of legendItems\"\n class=\"legend-item\"\n data-fnd=\"legend-item\"\n >\n <div class=\"legend-label-text\">{{ item.label }}</div>\n <div\n [style.background-color]=\"item.backgroundColor\"\n class=\"color-box\"\n ></div>\n </div>\n </div>\n</ng-template>\n", styles: [".legend{display:flex;flex-direction:column;align-items:flex-start;padding:var(--granite-spacing-8);gap:var(--granite-spacing-8);background-color:var(--granite-color-background-page);border:solid var(--granite-border-width-regular) var(--granite-color-border-contrast);border-radius:var(--granite-radius-s);height:fit-content}.legend-item{display:flex;align-items:center;justify-content:space-between;align-self:stretch;flex-wrap:wrap;padding:0 var(--granite-spacing-4);gap:var(--granite-spacing-8)}.legend-label-text{font-size:var(--granite-font-size-body-small);line-height:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);color:var(--granite-color-text);width:max-content}.color-box{width:8px;height:8px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
- }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteProgressBarLegendComponent, decorators: [{
14
- type: Component,
15
- args: [{ selector: 'granite-progress-bar-legend', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template>\n <div class=\"legend\" data-fnd=\"legend\">\n <div\n *ngFor=\"let item of legendItems\"\n class=\"legend-item\"\n data-fnd=\"legend-item\"\n >\n <div class=\"legend-label-text\">{{ item.label }}</div>\n <div\n [style.background-color]=\"item.backgroundColor\"\n class=\"color-box\"\n ></div>\n </div>\n </div>\n</ng-template>\n", styles: [".legend{display:flex;flex-direction:column;align-items:flex-start;padding:var(--granite-spacing-8);gap:var(--granite-spacing-8);background-color:var(--granite-color-background-page);border:solid var(--granite-border-width-regular) var(--granite-color-border-contrast);border-radius:var(--granite-radius-s);height:fit-content}.legend-item{display:flex;align-items:center;justify-content:space-between;align-self:stretch;flex-wrap:wrap;padding:0 var(--granite-spacing-4);gap:var(--granite-spacing-8)}.legend-label-text{font-size:var(--granite-font-size-body-small);line-height:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);color:var(--granite-color-text);width:max-content}.color-box{width:8px;height:8px}\n"] }]
16
- }], propDecorators: { legendItems: [{
17
- type: Input
18
- }] } });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLWxlZ2VuZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXItbGVnZW5kL3Byb2dyZXNzLWJhci1sZWdlbmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLWxlZ2VuZC9wcm9ncmVzcy1iYXItbGVnZW5kLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7QUFTbEUsTUFBTSxPQUFPLGlDQUFrQyxTQUFRLG1CQUFtQjtJQU4xRTs7UUFRRSxnQkFBVyxHQUFxQyxFQUFFLENBQUM7S0FDcEQ7K0dBSFksaUNBQWlDO21HQUFqQyxpQ0FBaUMsa0lDVjlDLCtZQWVBOzs0RkRMYSxpQ0FBaUM7a0JBTjdDLFNBQVM7K0JBQ0UsNkJBQTZCLG1CQUd0Qix1QkFBdUIsQ0FBQyxNQUFNOzhCQUkvQyxXQUFXO3NCQURWLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGVnZW5kQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL3Byb2dyZXNzLWJhci1sZWdlbmQtYmFzZSc7XG5pbXBvcnQgeyBHcmFuaXRlUHJvZ3Jlc3NMZWdlbmRJbnRlcmZhY2UgfSBmcm9tICcuLi9wcm9ncmVzcy1iYXIubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdncmFuaXRlLXByb2dyZXNzLWJhci1sZWdlbmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJvZ3Jlc3MtYmFyLWxlZ2VuZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9wcm9ncmVzcy1iYXItbGVnZW5kLmNvbXBvbmVudC5zY3NzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEdyYW5pdGVQcm9ncmVzc0JhckxlZ2VuZENvbXBvbmVudCBleHRlbmRzIExlZ2VuZEJhc2VDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBsZWdlbmRJdGVtczogR3Jhbml0ZVByb2dyZXNzTGVnZW5kSW50ZXJmYWNlW10gPSBbXTtcbn1cbiIsIjxuZy10ZW1wbGF0ZT5cbiAgPGRpdiBjbGFzcz1cImxlZ2VuZFwiIGRhdGEtZm5kPVwibGVnZW5kXCI+XG4gICAgPGRpdlxuICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbGVnZW5kSXRlbXNcIlxuICAgICAgY2xhc3M9XCJsZWdlbmQtaXRlbVwiXG4gICAgICBkYXRhLWZuZD1cImxlZ2VuZC1pdGVtXCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwibGVnZW5kLWxhYmVsLXRleHRcIj57eyBpdGVtLmxhYmVsIH19PC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cIml0ZW0uYmFja2dyb3VuZENvbG9yXCJcbiAgICAgICAgY2xhc3M9XCJjb2xvci1ib3hcIlxuICAgICAgPjwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,17 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { OverlayBaseComponent } from '../core/overlay-base';
3
- import * as i0 from "@angular/core";
4
- let legendPanelUid = 0;
5
- export class LegendBaseComponent extends OverlayBaseComponent {
6
- constructor() {
7
- super(...arguments);
8
- this.panelId = `granite-progress-bar-legend-panel-${legendPanelUid++}`;
9
- this.xPosition = 'before';
10
- }
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LegendBaseComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
12
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: LegendBaseComponent, usesInheritance: true, ngImport: i0 }); }
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LegendBaseComponent, decorators: [{
15
- type: Directive
16
- }] });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLWxlZ2VuZC1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLWxlZ2VuZC1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLG9CQUFvQixFQUFhLE1BQU0sc0JBQXNCLENBQUM7O0FBRXZFLElBQUksY0FBYyxHQUFHLENBQUMsQ0FBQztBQUd2QixNQUFNLE9BQU8sbUJBQW9CLFNBQVEsb0JBQW9CO0lBRDdEOztRQUVXLFlBQU8sR0FBRyxxQ0FBcUMsY0FBYyxFQUFFLEVBQUUsQ0FBQztRQUNsRSxjQUFTLEdBQWMsUUFBUSxDQUFDO0tBQzFDOytHQUhZLG1CQUFtQjttR0FBbkIsbUJBQW1COzs0RkFBbkIsbUJBQW1CO2tCQUQvQixTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPdmVybGF5QmFzZUNvbXBvbmVudCwgUG9zaXRpb25YIH0gZnJvbSAnLi4vY29yZS9vdmVybGF5LWJhc2UnO1xuXG5sZXQgbGVnZW5kUGFuZWxVaWQgPSAwO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBjbGFzcyBMZWdlbmRCYXNlQ29tcG9uZW50IGV4dGVuZHMgT3ZlcmxheUJhc2VDb21wb25lbnQge1xuICByZWFkb25seSBwYW5lbElkID0gYGdyYW5pdGUtcHJvZ3Jlc3MtYmFyLWxlZ2VuZC1wYW5lbC0ke2xlZ2VuZFBhbmVsVWlkKyt9YDtcbiAgb3ZlcnJpZGUgeFBvc2l0aW9uOiBQb3NpdGlvblggPSAnYmVmb3JlJztcbn1cbiJdfQ==
@@ -1,54 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { GraniteOverlayTriggerForBaseDirective } from '../core/overlay-trigger-for-base.directive';
3
- import { OverlayBaseComponent } from '../core/overlay-base';
4
- import * as i0 from "@angular/core";
5
- export class GraniteProgressBarLegendTriggerForDirective extends GraniteOverlayTriggerForBaseDirective {
6
- constructor() {
7
- super(...arguments);
8
- this.isLegendOpen = false;
9
- this.selector = '.granite-progress-bar-legend';
10
- this.offsetY = 4;
11
- }
12
- get legend() {
13
- return this.componentRef;
14
- }
15
- set legend(value) {
16
- this.componentRef = value;
17
- }
18
- handleKeydown(event) {
19
- if (event.key === 'Enter') {
20
- event.preventDefault();
21
- this.isLegendOpen = this.toggleOverlay(this.isLegendOpen);
22
- }
23
- }
24
- handleClick() {
25
- this.isLegendOpen = this.toggleOverlay(this.isLegendOpen);
26
- }
27
- onOutsideClick() {
28
- super.onOutsideClick();
29
- this.isLegendOpen = false;
30
- }
31
- getScrollStrategy() {
32
- return this.setScrollStrategy('reposition');
33
- }
34
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteProgressBarLegendTriggerForDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
35
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: GraniteProgressBarLegendTriggerForDirective, selector: "[graniteProgressBarLegendTriggerFor]", inputs: { legend: ["graniteProgressBarLegendTriggerFor", "legend"] }, host: { attributes: { "aria-haspopup": "true" }, listeners: { "keydown": "handleKeydown($event)", "click": "handleClick($event)" }, properties: { "attr.aria-expanded": "isLegendOpen || null", "attr.aria-controls": "isLegendOpen ? legend.panelId : null" }, classAttribute: "granite-progress-bar-legend-trigger" }, usesInheritance: true, ngImport: i0 }); }
36
- }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteProgressBarLegendTriggerForDirective, decorators: [{
38
- type: Directive,
39
- args: [{
40
- selector: '[graniteProgressBarLegendTriggerFor]',
41
- host: {
42
- class: 'granite-progress-bar-legend-trigger',
43
- 'aria-haspopup': 'true',
44
- '[attr.aria-expanded]': 'isLegendOpen || null',
45
- '[attr.aria-controls]': 'isLegendOpen ? legend.panelId : null',
46
- '(keydown)': 'handleKeydown($event)',
47
- '(click)': 'handleClick($event)',
48
- },
49
- }]
50
- }], propDecorators: { legend: [{
51
- type: Input,
52
- args: ['graniteProgressBarLegendTriggerFor']
53
- }] } });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLWxlZ2VuZC10cmlnZ2VyLWZvci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXItbGVnZW5kLXRyaWdnZXItZm9yLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRCxPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNuRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFrQjVELE1BQU0sT0FBTywyQ0FBNEMsU0FBUSxxQ0FBcUM7SUFYdEc7O1FBcUJFLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBRVgsYUFBUSxHQUFXLDhCQUE4QixDQUFDO1FBQ2xELFlBQU8sR0FBVyxDQUFDLENBQUM7S0F3QnhDO0lBcENDLElBQ0ksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxNQUFNLENBQUMsS0FBd0M7UUFDakQsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQU9ELGFBQWEsQ0FBQyxLQUFvQjtRQUNoQyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDMUIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDNUQsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsY0FBYztRQUNaLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRVEsaUJBQWlCO1FBSXhCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzlDLENBQUM7K0dBcENVLDJDQUEyQzttR0FBM0MsMkNBQTJDOzs0RkFBM0MsMkNBQTJDO2tCQVh2RCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQ0FBc0M7b0JBQ2hELElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUscUNBQXFDO3dCQUM1QyxlQUFlLEVBQUUsTUFBTTt3QkFDdkIsc0JBQXNCLEVBQUUsc0JBQXNCO3dCQUM5QyxzQkFBc0IsRUFBRSxzQ0FBc0M7d0JBQzlELFdBQVcsRUFBRSx1QkFBdUI7d0JBQ3BDLFNBQVMsRUFBRSxxQkFBcUI7cUJBQ2pDO2lCQUNGOzhCQUdLLE1BQU07c0JBRFQsS0FBSzt1QkFBQyxvQ0FBb0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBHcmFuaXRlUHJvZ3Jlc3NCYXJMZWdlbmRDb21wb25lbnQgfSBmcm9tICcuL3Byb2dyZXNzLWJhci1sZWdlbmQvcHJvZ3Jlc3MtYmFyLWxlZ2VuZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3Jhbml0ZU92ZXJsYXlUcmlnZ2VyRm9yQmFzZURpcmVjdGl2ZSB9IGZyb20gJy4uL2NvcmUvb3ZlcmxheS10cmlnZ2VyLWZvci1iYXNlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBPdmVybGF5QmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL2NvcmUvb3ZlcmxheS1iYXNlJztcbmltcG9ydCB7XG4gIEJsb2NrU2Nyb2xsU3RyYXRlZ3ksXG4gIENsb3NlU2Nyb2xsU3RyYXRlZ3ksXG4gIFJlcG9zaXRpb25TY3JvbGxTdHJhdGVneSxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZ3Jhbml0ZVByb2dyZXNzQmFyTGVnZW5kVHJpZ2dlckZvcl0nLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdncmFuaXRlLXByb2dyZXNzLWJhci1sZWdlbmQtdHJpZ2dlcicsXG4gICAgJ2FyaWEtaGFzcG9wdXAnOiAndHJ1ZScsXG4gICAgJ1thdHRyLmFyaWEtZXhwYW5kZWRdJzogJ2lzTGVnZW5kT3BlbiB8fCBudWxsJyxcbiAgICAnW2F0dHIuYXJpYS1jb250cm9sc10nOiAnaXNMZWdlbmRPcGVuID8gbGVnZW5kLnBhbmVsSWQgOiBudWxsJyxcbiAgICAnKGtleWRvd24pJzogJ2hhbmRsZUtleWRvd24oJGV2ZW50KScsXG4gICAgJyhjbGljayknOiAnaGFuZGxlQ2xpY2soJGV2ZW50KScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIEdyYW5pdGVQcm9ncmVzc0JhckxlZ2VuZFRyaWdnZXJGb3JEaXJlY3RpdmUgZXh0ZW5kcyBHcmFuaXRlT3ZlcmxheVRyaWdnZXJGb3JCYXNlRGlyZWN0aXZlIHtcbiAgQElucHV0KCdncmFuaXRlUHJvZ3Jlc3NCYXJMZWdlbmRUcmlnZ2VyRm9yJylcbiAgZ2V0IGxlZ2VuZCgpOiBPdmVybGF5QmFzZUNvbXBvbmVudCB7XG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50UmVmO1xuICB9XG5cbiAgc2V0IGxlZ2VuZCh2YWx1ZTogR3Jhbml0ZVByb2dyZXNzQmFyTGVnZW5kQ29tcG9uZW50KSB7XG4gICAgdGhpcy5jb21wb25lbnRSZWYgPSB2YWx1ZTtcbiAgfVxuXG4gIGlzTGVnZW5kT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBzZWxlY3Rvcjogc3RyaW5nID0gJy5ncmFuaXRlLXByb2dyZXNzLWJhci1sZWdlbmQnO1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgb2Zmc2V0WTogbnVtYmVyID0gNDtcblxuICBoYW5kbGVLZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuaXNMZWdlbmRPcGVuID0gdGhpcy50b2dnbGVPdmVybGF5KHRoaXMuaXNMZWdlbmRPcGVuKTtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLmlzTGVnZW5kT3BlbiA9IHRoaXMudG9nZ2xlT3ZlcmxheSh0aGlzLmlzTGVnZW5kT3Blbik7XG4gIH1cblxuICBvbk91dHNpZGVDbGljaygpOiB2b2lkIHtcbiAgICBzdXBlci5vbk91dHNpZGVDbGljaygpO1xuICAgIHRoaXMuaXNMZWdlbmRPcGVuID0gZmFsc2U7XG4gIH1cblxuICBvdmVycmlkZSBnZXRTY3JvbGxTdHJhdGVneSgpOlxuICAgIHwgUmVwb3NpdGlvblNjcm9sbFN0cmF0ZWd5XG4gICAgfCBCbG9ja1Njcm9sbFN0cmF0ZWd5XG4gICAgfCBDbG9zZVNjcm9sbFN0cmF0ZWd5IHtcbiAgICByZXR1cm4gdGhpcy5zZXRTY3JvbGxTdHJhdGVneSgncmVwb3NpdGlvbicpO1xuICB9XG59XG4iXX0=
@@ -1,92 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Input, } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- import * as i2 from "../core/hide-on-overflow.directive";
5
- import * as i3 from "@ifsworld/granite-components/tooltip";
6
- import * as i4 from "../icon/icon.component";
7
- import * as i5 from "../button/button.component";
8
- import * as i6 from "./progress-bar-legend/progress-bar-legend.component";
9
- import * as i7 from "./progress-bar-legend-trigger-for.directive";
10
- export class GraniteProgressBarComponent {
11
- constructor() {
12
- this.progressBarData = [];
13
- this.legendData = [];
14
- this.showLabel = false;
15
- this.showLegend = false;
16
- this.DEFAULT_TOTAL = 100;
17
- this.DEFAULT_BACKGROUND = '--granite-color-background-selected';
18
- this.DEFAULT_STACK_COLOR = '--granite-color-categorical-3';
19
- this.DEFAULT_COLOR = '--granite-color-text';
20
- this.total = this.DEFAULT_TOTAL;
21
- this.legendItems = [];
22
- }
23
- getBackgroundColor() {
24
- return this.getColorVar(this.DEFAULT_BACKGROUND);
25
- }
26
- getFontColor(color) {
27
- return color
28
- ? this.getColorVar(color)
29
- : this.getColorVar(this.DEFAULT_COLOR);
30
- }
31
- getStackColor(color) {
32
- return color
33
- ? this.getColorVar(color)
34
- : this.getColorVar(this.DEFAULT_STACK_COLOR);
35
- }
36
- getColorVar(color) {
37
- return color?.startsWith('--granite') ? `var(${color})` : color;
38
- }
39
- getWidth(value) {
40
- return (value / this.total) * 100;
41
- }
42
- getStringOfWidth(width) {
43
- return String(width) + '%';
44
- }
45
- checkStackTotal() {
46
- const totalOfStackedValues = this.getStackTotal();
47
- if (totalOfStackedValues > this.total) {
48
- this.total = totalOfStackedValues;
49
- }
50
- }
51
- getStackTotal() {
52
- return this.progressBarData.reduce((acc, curr) => acc + curr.value, 0);
53
- }
54
- setLegendItems() {
55
- this.legendItems =
56
- this.legendData.length > 0
57
- ? this.getLegendItems(this.legendData)
58
- : this.getLegendItems(this.progressBarData);
59
- }
60
- getLegendItems(data) {
61
- return data.map(({ label, backgroundColor, }) => {
62
- const legendItemColor = this.getStackColor(backgroundColor);
63
- return { label, backgroundColor: legendItemColor };
64
- });
65
- }
66
- ngOnChanges(changes) {
67
- if (changes.progressBarData) {
68
- this.checkStackTotal();
69
- this.setLegendItems();
70
- }
71
- if (changes.legendData) {
72
- this.setLegendItems();
73
- }
74
- }
75
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
76
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GraniteProgressBarComponent, selector: "granite-progress-bar", inputs: { progressBarData: "progressBarData", legendData: "legendData", showLabel: "showLabel", showLegend: "showLegend" }, host: { properties: { "class.label-present": "showLabel" } }, exportAs: ["graniteProgressBar"], usesOnChanges: true, ngImport: i0, template: "<div\n role=\"progressbar\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n class=\"progress\"\n [style.background-color]=\"getBackgroundColor()\"\n>\n <div\n *ngFor=\"let bar of progressBarData; let i = index\"\n [style.background-color]=\"getStackColor(bar.backgroundColor)\"\n [style.width]=\"getStringOfWidth(getWidth(bar.value))\"\n [style.color]=\"getFontColor(bar.foregroundColor)\"\n [graniteTooltipTriggerFor]=\"tooltip\"\n class=\"progress-bar\"\n >\n <label *ngIf=\"showLabel\" graniteHideOnOverflow>{{ bar.valueLabel }}</label>\n <granite-tooltip #tooltip> {{ bar.valueLabel }} </granite-tooltip>\n </div>\n</div>\n\n<ng-container *ngIf=\"showLegend\">\n <button\n graniteFlatButton\n [graniteProgressBarLegendTriggerFor]=\"legend\"\n class=\"legend-btn\"\n >\n <granite-icon fontIcon=\"icon-caret-down\"></granite-icon>\n </button>\n</ng-container>\n\n<granite-progress-bar-legend\n #legend\n [legendItems]=\"legendItems\"\n></granite-progress-bar-legend>\n", styles: [":host{width:100%;display:flex;align-items:center;box-sizing:border-box;height:.5rem;border-radius:var(--granite-radius-m);font-size:var(--granite-font-size-body-small);line-height:var(--granite-font-size-body-small)}:host(.label-present){height:auto!important}.progress{display:flex;width:inherit;height:inherit;overflow:hidden;border-radius:inherit;background-color:var(--granite-color-background-selected)}.progress-bar{display:flex;align-items:center;box-sizing:border-box;width:inherit;height:inherit;line-height:inherit;font-size:inherit;vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;color:var(--granite-color-text);overflow:hidden;text-align:center;justify-content:center}.progress-bar label{width:100%;padding:var(--granite-spacing-4) 0}.legend-btn{width:16px;height:16px;margin-inline-start:var(--granite-spacing-16)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.GraniteHideOnOverflowDirective, selector: "[graniteHideOnOverflow]", exportAs: ["graniteHideOnOverflow"] }, { kind: "component", type: i3.GraniteTooltipComponent, selector: "granite-tooltip" }, { kind: "directive", type: i3.GraniteTooltipTriggerForDirective, selector: "[graniteTooltipTriggerFor]", inputs: ["graniteTooltipTriggerFor", "hideDelay", "showDelay", "showOnKeyboardFocus", "showOnClick"] }, { kind: "component", type: i4.GraniteIconComponent, selector: "granite-icon", inputs: ["fontIcon"] }, { kind: "component", type: i5.GraniteButtonComponent, selector: "button[graniteButton],\n button[granitePrimaryButton],\n button[graniteFlatButton],\n button[graniteToolbarButton]\n ", inputs: ["disabled", "toggled"], exportAs: ["graniteButton"] }, { kind: "component", type: i6.GraniteProgressBarLegendComponent, selector: "granite-progress-bar-legend", inputs: ["legendItems"] }, { kind: "directive", type: i7.GraniteProgressBarLegendTriggerForDirective, selector: "[graniteProgressBarLegendTriggerFor]", inputs: ["graniteProgressBarLegendTriggerFor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
77
- }
78
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteProgressBarComponent, decorators: [{
79
- type: Component,
80
- args: [{ selector: 'granite-progress-bar', exportAs: 'graniteProgressBar', host: {
81
- '[class.label-present]': 'showLabel',
82
- }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n role=\"progressbar\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n class=\"progress\"\n [style.background-color]=\"getBackgroundColor()\"\n>\n <div\n *ngFor=\"let bar of progressBarData; let i = index\"\n [style.background-color]=\"getStackColor(bar.backgroundColor)\"\n [style.width]=\"getStringOfWidth(getWidth(bar.value))\"\n [style.color]=\"getFontColor(bar.foregroundColor)\"\n [graniteTooltipTriggerFor]=\"tooltip\"\n class=\"progress-bar\"\n >\n <label *ngIf=\"showLabel\" graniteHideOnOverflow>{{ bar.valueLabel }}</label>\n <granite-tooltip #tooltip> {{ bar.valueLabel }} </granite-tooltip>\n </div>\n</div>\n\n<ng-container *ngIf=\"showLegend\">\n <button\n graniteFlatButton\n [graniteProgressBarLegendTriggerFor]=\"legend\"\n class=\"legend-btn\"\n >\n <granite-icon fontIcon=\"icon-caret-down\"></granite-icon>\n </button>\n</ng-container>\n\n<granite-progress-bar-legend\n #legend\n [legendItems]=\"legendItems\"\n></granite-progress-bar-legend>\n", styles: [":host{width:100%;display:flex;align-items:center;box-sizing:border-box;height:.5rem;border-radius:var(--granite-radius-m);font-size:var(--granite-font-size-body-small);line-height:var(--granite-font-size-body-small)}:host(.label-present){height:auto!important}.progress{display:flex;width:inherit;height:inherit;overflow:hidden;border-radius:inherit;background-color:var(--granite-color-background-selected)}.progress-bar{display:flex;align-items:center;box-sizing:border-box;width:inherit;height:inherit;line-height:inherit;font-size:inherit;vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;color:var(--granite-color-text);overflow:hidden;text-align:center;justify-content:center}.progress-bar label{width:100%;padding:var(--granite-spacing-4) 0}.legend-btn{width:16px;height:16px;margin-inline-start:var(--granite-spacing-16)}\n"] }]
83
- }], propDecorators: { progressBarData: [{
84
- type: Input
85
- }], legendData: [{
86
- type: Input
87
- }], showLabel: [{
88
- type: Input
89
- }], showLegend: [{
90
- type: Input
91
- }] } });
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZ3Jhbml0ZS1jb21wb25lbnRzL3NyYy9saWIvcHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFnQnZCLE1BQU0sT0FBTywyQkFBMkI7SUFWeEM7UUFZRSxvQkFBZSxHQUErQixFQUFFLENBQUM7UUFHakQsZUFBVSxHQUFxQyxFQUFFLENBQUM7UUFHbEQsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUczQixlQUFVLEdBQVksS0FBSyxDQUFDO1FBRTVCLGtCQUFhLEdBQUcsR0FBRyxDQUFDO1FBQ3BCLHVCQUFrQixHQUFHLHFDQUFxQyxDQUFDO1FBQzNELHdCQUFtQixHQUFHLCtCQUErQixDQUFDO1FBQ3RELGtCQUFhLEdBQUcsc0JBQXNCLENBQUM7UUFFdkMsVUFBSyxHQUFXLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDbkMsZ0JBQVcsR0FBcUMsRUFBRSxDQUFDO0tBMkVwRDtJQXpFQyxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxZQUFZLENBQUMsS0FBYTtRQUN4QixPQUFPLEtBQUs7WUFDVixDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDekIsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBYTtRQUN6QixPQUFPLEtBQUs7WUFDVixDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDekIsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFhO1FBQ3ZCLE9BQU8sS0FBSyxFQUFFLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBYTtRQUNwQixPQUFPLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLENBQUM7SUFDcEMsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQWE7UUFDNUIsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQzdCLENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDbEQsSUFBSSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLEtBQUssR0FBRyxvQkFBb0IsQ0FBQztRQUNwQyxDQUFDO0lBQ0gsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsV0FBVztZQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUM7Z0JBQ3hCLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7Z0JBQ3RDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsY0FBYyxDQUNaLElBQW1FO1FBRW5FLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FDYixDQUFDLEVBQ0MsS0FBSyxFQUNMLGVBQWUsR0FJaEIsRUFBRSxFQUFFO1lBQ0gsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUM1RCxPQUFPLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsQ0FBQztRQUNyRCxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3hCLENBQUM7SUFDSCxDQUFDOytHQTdGVSwyQkFBMkI7bUdBQTNCLDJCQUEyQiw2U0N0QnhDLDYvQkFrQ0E7OzRGRFphLDJCQUEyQjtrQkFWdkMsU0FBUzsrQkFDRSxzQkFBc0IsWUFDdEIsb0JBQW9CLFFBR3hCO3dCQUNKLHVCQUF1QixFQUFFLFdBQVc7cUJBQ3JDLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUkvQyxlQUFlO3NCQURkLEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixVQUFVO3NCQURULEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEdyYW5pdGVQcm9ncmVzc0ludGVyZmFjZSxcbiAgR3Jhbml0ZVByb2dyZXNzTGVnZW5kSW50ZXJmYWNlLFxufSBmcm9tICcuL3Byb2dyZXNzLWJhci5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dyYW5pdGUtcHJvZ3Jlc3MtYmFyJyxcbiAgZXhwb3J0QXM6ICdncmFuaXRlUHJvZ3Jlc3NCYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLmxhYmVsLXByZXNlbnRdJzogJ3Nob3dMYWJlbCcsXG4gIH0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFuaXRlUHJvZ3Jlc3NCYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKVxuICBwcm9ncmVzc0JhckRhdGE6IEdyYW5pdGVQcm9ncmVzc0ludGVyZmFjZVtdID0gW107XG5cbiAgQElucHV0KClcbiAgbGVnZW5kRGF0YTogR3Jhbml0ZVByb2dyZXNzTGVnZW5kSW50ZXJmYWNlW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBzaG93TGFiZWw6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBzaG93TGVnZW5kOiBib29sZWFuID0gZmFsc2U7XG5cbiAgREVGQVVMVF9UT1RBTCA9IDEwMDtcbiAgREVGQVVMVF9CQUNLR1JPVU5EID0gJy0tZ3Jhbml0ZS1jb2xvci1iYWNrZ3JvdW5kLXNlbGVjdGVkJztcbiAgREVGQVVMVF9TVEFDS19DT0xPUiA9ICctLWdyYW5pdGUtY29sb3ItY2F0ZWdvcmljYWwtMyc7XG4gIERFRkFVTFRfQ09MT1IgPSAnLS1ncmFuaXRlLWNvbG9yLXRleHQnO1xuXG4gIHRvdGFsOiBudW1iZXIgPSB0aGlzLkRFRkFVTFRfVE9UQUw7XG4gIGxlZ2VuZEl0ZW1zOiBHcmFuaXRlUHJvZ3Jlc3NMZWdlbmRJbnRlcmZhY2VbXSA9IFtdO1xuXG4gIGdldEJhY2tncm91bmRDb2xvcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmdldENvbG9yVmFyKHRoaXMuREVGQVVMVF9CQUNLR1JPVU5EKTtcbiAgfVxuXG4gIGdldEZvbnRDb2xvcihjb2xvcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gY29sb3JcbiAgICAgID8gdGhpcy5nZXRDb2xvclZhcihjb2xvcilcbiAgICAgIDogdGhpcy5nZXRDb2xvclZhcih0aGlzLkRFRkFVTFRfQ09MT1IpO1xuICB9XG5cbiAgZ2V0U3RhY2tDb2xvcihjb2xvcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gY29sb3JcbiAgICAgID8gdGhpcy5nZXRDb2xvclZhcihjb2xvcilcbiAgICAgIDogdGhpcy5nZXRDb2xvclZhcih0aGlzLkRFRkFVTFRfU1RBQ0tfQ09MT1IpO1xuICB9XG5cbiAgZ2V0Q29sb3JWYXIoY29sb3I6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGNvbG9yPy5zdGFydHNXaXRoKCctLWdyYW5pdGUnKSA/IGB2YXIoJHtjb2xvcn0pYCA6IGNvbG9yO1xuICB9XG5cbiAgZ2V0V2lkdGgodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuICh2YWx1ZSAvIHRoaXMudG90YWwpICogMTAwO1xuICB9XG5cbiAgZ2V0U3RyaW5nT2ZXaWR0aCh3aWR0aDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICByZXR1cm4gU3RyaW5nKHdpZHRoKSArICclJztcbiAgfVxuXG4gIGNoZWNrU3RhY2tUb3RhbCgpOiB2b2lkIHtcbiAgICBjb25zdCB0b3RhbE9mU3RhY2tlZFZhbHVlcyA9IHRoaXMuZ2V0U3RhY2tUb3RhbCgpO1xuICAgIGlmICh0b3RhbE9mU3RhY2tlZFZhbHVlcyA+IHRoaXMudG90YWwpIHtcbiAgICAgIHRoaXMudG90YWwgPSB0b3RhbE9mU3RhY2tlZFZhbHVlcztcbiAgICB9XG4gIH1cblxuICBnZXRTdGFja1RvdGFsKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucHJvZ3Jlc3NCYXJEYXRhLnJlZHVjZSgoYWNjLCBjdXJyKSA9PiBhY2MgKyBjdXJyLnZhbHVlLCAwKTtcbiAgfVxuXG4gIHNldExlZ2VuZEl0ZW1zKCk6IHZvaWQge1xuICAgIHRoaXMubGVnZW5kSXRlbXMgPVxuICAgICAgdGhpcy5sZWdlbmREYXRhLmxlbmd0aCA+IDBcbiAgICAgICAgPyB0aGlzLmdldExlZ2VuZEl0ZW1zKHRoaXMubGVnZW5kRGF0YSlcbiAgICAgICAgOiB0aGlzLmdldExlZ2VuZEl0ZW1zKHRoaXMucHJvZ3Jlc3NCYXJEYXRhKTtcbiAgfVxuXG4gIGdldExlZ2VuZEl0ZW1zKFxuICAgIGRhdGE6IEdyYW5pdGVQcm9ncmVzc0ludGVyZmFjZVtdIHwgR3Jhbml0ZVByb2dyZXNzTGVnZW5kSW50ZXJmYWNlW11cbiAgKTogR3Jhbml0ZVByb2dyZXNzTGVnZW5kSW50ZXJmYWNlW10ge1xuICAgIHJldHVybiBkYXRhLm1hcChcbiAgICAgICh7XG4gICAgICAgIGxhYmVsLFxuICAgICAgICBiYWNrZ3JvdW5kQ29sb3IsXG4gICAgICB9OiB7XG4gICAgICAgIGxhYmVsPzogc3RyaW5nO1xuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I/OiBzdHJpbmc7XG4gICAgICB9KSA9PiB7XG4gICAgICAgIGNvbnN0IGxlZ2VuZEl0ZW1Db2xvciA9IHRoaXMuZ2V0U3RhY2tDb2xvcihiYWNrZ3JvdW5kQ29sb3IpO1xuICAgICAgICByZXR1cm4geyBsYWJlbCwgYmFja2dyb3VuZENvbG9yOiBsZWdlbmRJdGVtQ29sb3IgfTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzLnByb2dyZXNzQmFyRGF0YSkge1xuICAgICAgdGhpcy5jaGVja1N0YWNrVG90YWwoKTtcbiAgICAgIHRoaXMuc2V0TGVnZW5kSXRlbXMoKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5sZWdlbmREYXRhKSB7XG4gICAgICB0aGlzLnNldExlZ2VuZEl0ZW1zKCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIHJvbGU9XCJwcm9ncmVzc2JhclwiXG4gIGFyaWEtdmFsdWVtaW49XCIwXCJcbiAgYXJpYS12YWx1ZW1heD1cIjEwMFwiXG4gIGNsYXNzPVwicHJvZ3Jlc3NcIlxuICBbc3R5bGUuYmFja2dyb3VuZC1jb2xvcl09XCJnZXRCYWNrZ3JvdW5kQ29sb3IoKVwiXG4+XG4gIDxkaXZcbiAgICAqbmdGb3I9XCJsZXQgYmFyIG9mIHByb2dyZXNzQmFyRGF0YTsgbGV0IGkgPSBpbmRleFwiXG4gICAgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwiZ2V0U3RhY2tDb2xvcihiYXIuYmFja2dyb3VuZENvbG9yKVwiXG4gICAgW3N0eWxlLndpZHRoXT1cImdldFN0cmluZ09mV2lkdGgoZ2V0V2lkdGgoYmFyLnZhbHVlKSlcIlxuICAgIFtzdHlsZS5jb2xvcl09XCJnZXRGb250Q29sb3IoYmFyLmZvcmVncm91bmRDb2xvcilcIlxuICAgIFtncmFuaXRlVG9vbHRpcFRyaWdnZXJGb3JdPVwidG9vbHRpcFwiXG4gICAgY2xhc3M9XCJwcm9ncmVzcy1iYXJcIlxuICA+XG4gICAgPGxhYmVsICpuZ0lmPVwic2hvd0xhYmVsXCIgZ3Jhbml0ZUhpZGVPbk92ZXJmbG93Pnt7IGJhci52YWx1ZUxhYmVsIH19PC9sYWJlbD5cbiAgICA8Z3Jhbml0ZS10b29sdGlwICN0b29sdGlwPiB7eyBiYXIudmFsdWVMYWJlbCB9fSA8L2dyYW5pdGUtdG9vbHRpcD5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3dMZWdlbmRcIj5cbiAgPGJ1dHRvblxuICAgIGdyYW5pdGVGbGF0QnV0dG9uXG4gICAgW2dyYW5pdGVQcm9ncmVzc0JhckxlZ2VuZFRyaWdnZXJGb3JdPVwibGVnZW5kXCJcbiAgICBjbGFzcz1cImxlZ2VuZC1idG5cIlxuICA+XG4gICAgPGdyYW5pdGUtaWNvbiBmb250SWNvbj1cImljb24tY2FyZXQtZG93blwiPjwvZ3Jhbml0ZS1pY29uPlxuICA8L2J1dHRvbj5cbjwvbmctY29udGFpbmVyPlxuXG48Z3Jhbml0ZS1wcm9ncmVzcy1iYXItbGVnZW5kXG4gICNsZWdlbmRcbiAgW2xlZ2VuZEl0ZW1zXT1cImxlZ2VuZEl0ZW1zXCJcbj48L2dyYW5pdGUtcHJvZ3Jlc3MtYmFyLWxlZ2VuZD5cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEdyYW5pdGVQcm9ncmVzc0ludGVyZmFjZSB7XG4gIHZhbHVlOiBudW1iZXI7XG4gIGxhYmVsPzogc3RyaW5nO1xuICB2YWx1ZUxhYmVsPzogc3RyaW5nO1xuICBiYWNrZ3JvdW5kQ29sb3I/OiBzdHJpbmc7XG4gIGZvcmVncm91bmRDb2xvcj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHcmFuaXRlUHJvZ3Jlc3NMZWdlbmRJbnRlcmZhY2Uge1xuICBsYWJlbDogc3RyaW5nO1xuICBiYWNrZ3JvdW5kQ29sb3I6IHN0cmluZztcbn1cbiJdfQ==
@@ -1,44 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { GraniteProgressBarComponent } from './progress-bar.component';
3
- import { CommonModule } from '@angular/common';
4
- import { GraniteTooltipModule } from '@ifsworld/granite-components/tooltip';
5
- import { GraniteCoreModule } from '../core/core.module';
6
- import { GraniteIconModule } from '../icon/icon.module';
7
- import { GraniteButtonModule } from '../button/button.module';
8
- import { GraniteProgressBarLegendComponent } from './progress-bar-legend/progress-bar-legend.component';
9
- import { GraniteProgressBarLegendTriggerForDirective } from './progress-bar-legend-trigger-for.directive';
10
- import * as i0 from "@angular/core";
11
- export class GraniteProgressBarModule {
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteProgressBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
13
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: GraniteProgressBarModule, declarations: [GraniteProgressBarComponent,
14
- GraniteProgressBarLegendComponent,
15
- GraniteProgressBarLegendTriggerForDirective], imports: [CommonModule,
16
- GraniteCoreModule,
17
- GraniteTooltipModule,
18
- GraniteIconModule,
19
- GraniteButtonModule], exports: [GraniteProgressBarComponent] }); }
20
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteProgressBarModule, imports: [CommonModule,
21
- GraniteCoreModule,
22
- GraniteTooltipModule,
23
- GraniteIconModule,
24
- GraniteButtonModule] }); }
25
- }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteProgressBarModule, decorators: [{
27
- type: NgModule,
28
- args: [{
29
- declarations: [
30
- GraniteProgressBarComponent,
31
- GraniteProgressBarLegendComponent,
32
- GraniteProgressBarLegendTriggerForDirective,
33
- ],
34
- exports: [GraniteProgressBarComponent],
35
- imports: [
36
- CommonModule,
37
- GraniteCoreModule,
38
- GraniteTooltipModule,
39
- GraniteIconModule,
40
- GraniteButtonModule,
41
- ],
42
- }]
43
- }] });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZ3Jhbml0ZS1jb21wb25lbnRzL3NyYy9saWIvcHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWJhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0scURBQXFELENBQUM7QUFDeEcsT0FBTyxFQUFFLDJDQUEyQyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7O0FBaUIxRyxNQUFNLE9BQU8sd0JBQXdCOytHQUF4Qix3QkFBd0I7Z0hBQXhCLHdCQUF3QixpQkFiakMsMkJBQTJCO1lBQzNCLGlDQUFpQztZQUNqQywyQ0FBMkMsYUFJM0MsWUFBWTtZQUNaLGlCQUFpQjtZQUNqQixvQkFBb0I7WUFDcEIsaUJBQWlCO1lBQ2pCLG1CQUFtQixhQU5YLDJCQUEyQjtnSEFTMUIsd0JBQXdCLFlBUGpDLFlBQVk7WUFDWixpQkFBaUI7WUFDakIsb0JBQW9CO1lBQ3BCLGlCQUFpQjtZQUNqQixtQkFBbUI7OzRGQUdWLHdCQUF3QjtrQkFmcEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osMkJBQTJCO3dCQUMzQixpQ0FBaUM7d0JBQ2pDLDJDQUEyQztxQkFDNUM7b0JBQ0QsT0FBTyxFQUFFLENBQUMsMkJBQTJCLENBQUM7b0JBQ3RDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGlCQUFpQjt3QkFDakIsb0JBQW9CO3dCQUNwQixpQkFBaUI7d0JBQ2pCLG1CQUFtQjtxQkFDcEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR3Jhbml0ZVByb2dyZXNzQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9wcm9ncmVzcy1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBHcmFuaXRlVG9vbHRpcE1vZHVsZSB9IGZyb20gJ0BpZnN3b3JsZC9ncmFuaXRlLWNvbXBvbmVudHMvdG9vbHRpcCc7XG5pbXBvcnQgeyBHcmFuaXRlQ29yZU1vZHVsZSB9IGZyb20gJy4uL2NvcmUvY29yZS5tb2R1bGUnO1xuaW1wb3J0IHsgR3Jhbml0ZUljb25Nb2R1bGUgfSBmcm9tICcuLi9pY29uL2ljb24ubW9kdWxlJztcbmltcG9ydCB7IEdyYW5pdGVCdXR0b25Nb2R1bGUgfSBmcm9tICcuLi9idXR0b24vYnV0dG9uLm1vZHVsZSc7XG5pbXBvcnQgeyBHcmFuaXRlUHJvZ3Jlc3NCYXJMZWdlbmRDb21wb25lbnQgfSBmcm9tICcuL3Byb2dyZXNzLWJhci1sZWdlbmQvcHJvZ3Jlc3MtYmFyLWxlZ2VuZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3Jhbml0ZVByb2dyZXNzQmFyTGVnZW5kVHJpZ2dlckZvckRpcmVjdGl2ZSB9IGZyb20gJy4vcHJvZ3Jlc3MtYmFyLWxlZ2VuZC10cmlnZ2VyLWZvci5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBHcmFuaXRlUHJvZ3Jlc3NCYXJDb21wb25lbnQsXG4gICAgR3Jhbml0ZVByb2dyZXNzQmFyTGVnZW5kQ29tcG9uZW50LFxuICAgIEdyYW5pdGVQcm9ncmVzc0JhckxlZ2VuZFRyaWdnZXJGb3JEaXJlY3RpdmUsXG4gIF0sXG4gIGV4cG9ydHM6IFtHcmFuaXRlUHJvZ3Jlc3NCYXJDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEdyYW5pdGVDb3JlTW9kdWxlLFxuICAgIEdyYW5pdGVUb29sdGlwTW9kdWxlLFxuICAgIEdyYW5pdGVJY29uTW9kdWxlLFxuICAgIEdyYW5pdGVCdXR0b25Nb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEdyYW5pdGVQcm9ncmVzc0Jhck1vZHVsZSB7fVxuIl19