@ifsworld/granite-components 15.0.1 → 15.0.2

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/esm2022/carousel/ifsworld-granite-components-carousel.mjs +5 -0
  4. package/esm2022/carousel/index.mjs +3 -0
  5. package/esm2022/carousel/lib/carousel.component.mjs +156 -0
  6. package/esm2022/carousel/lib/carousel.module.mjs +31 -0
  7. package/esm2022/date-picker/ifsworld-granite-components-date-picker.mjs +5 -0
  8. package/esm2022/date-picker/index.mjs +5 -0
  9. package/esm2022/date-picker/lib/date-picker-base.mjs +53 -0
  10. package/esm2022/date-picker/lib/date-picker-trigger-for.directive.mjs +228 -0
  11. package/esm2022/date-picker/lib/date-picker.component.mjs +30 -0
  12. package/esm2022/date-picker/lib/date-picker.module.mjs +58 -0
  13. package/esm2022/date-picker/lib/date-range-picker.component.mjs +46 -0
  14. package/esm2022/file-upload/ifsworld-granite-components-file-upload.mjs +5 -0
  15. package/esm2022/file-upload/index.mjs +3 -0
  16. package/esm2022/file-upload/lib/directives/file-drag-and-drop.directive.mjs +102 -0
  17. package/esm2022/file-upload/lib/file-upload.component.mjs +182 -0
  18. package/esm2022/file-upload/lib/file-upload.constants.mjs +45 -0
  19. package/esm2022/file-upload/lib/file-upload.module.mjs +32 -0
  20. package/esm2022/file-upload/lib/file-upload.utils.mjs +13 -0
  21. package/esm2022/ifsworld-granite-components.mjs +5 -0
  22. package/esm2022/index.mjs +90 -0
  23. package/esm2022/lib/arrange-grid/arrange-grid-item.component.mjs +44 -0
  24. package/esm2022/lib/arrange-grid/arrange-grid.component.mjs +125 -0
  25. package/esm2022/lib/arrange-grid/arrange-grid.module.mjs +19 -0
  26. package/esm2022/lib/avatar/avatar-default-status/avatar-default-status.component.mjs +36 -0
  27. package/esm2022/lib/avatar/avatar.component.mjs +68 -0
  28. package/esm2022/lib/avatar/avatar.component.public-types.mjs +7 -0
  29. package/esm2022/lib/avatar/avatar.module.mjs +37 -0
  30. package/esm2022/lib/avatar/custom-avatar-status.directive.mjs +18 -0
  31. package/esm2022/lib/avatar/empty-avatar/empty-avatar.component.mjs +37 -0
  32. package/esm2022/lib/badge/badge.component.mjs +39 -0
  33. package/esm2022/lib/badge/badge.module.mjs +18 -0
  34. package/esm2022/lib/badge/testing/badge.harness.mjs +25 -0
  35. package/esm2022/lib/button/button.component.mjs +87 -0
  36. package/esm2022/lib/button/button.module.mjs +16 -0
  37. package/esm2022/lib/card-list/card/card-avatar.component.mjs +11 -0
  38. package/esm2022/lib/card-list/card/card-content/card-actions.component.mjs +11 -0
  39. package/esm2022/lib/card-list/card/card-content/card-body.component.mjs +11 -0
  40. package/esm2022/lib/card-list/card/card-content/card-content.component.mjs +11 -0
  41. package/esm2022/lib/card-list/card/card-content/card-footer.component.mjs +11 -0
  42. package/esm2022/lib/card-list/card/card-content/card-header-subtitle.component.mjs +11 -0
  43. package/esm2022/lib/card-list/card/card-content/card-header-title.component.mjs +11 -0
  44. package/esm2022/lib/card-list/card/card-content/card-header.component.mjs +11 -0
  45. package/esm2022/lib/card-list/card/card.component.mjs +11 -0
  46. package/esm2022/lib/card-list/card-list.component.mjs +24 -0
  47. package/esm2022/lib/card-list/card-list.module.mjs +68 -0
  48. package/esm2022/lib/checkbox/checkbox-group.component.mjs +17 -0
  49. package/esm2022/lib/checkbox/checkbox.component.mjs +99 -0
  50. package/esm2022/lib/checkbox/checkbox.module.mjs +17 -0
  51. package/esm2022/lib/chips/chip-input.mjs +195 -0
  52. package/esm2022/lib/chips/chip-list.component.mjs +567 -0
  53. package/esm2022/lib/chips/chip.component.mjs +288 -0
  54. package/esm2022/lib/chips/chips.module.mjs +31 -0
  55. package/esm2022/lib/collapsible-group/collapsible-group-body.directive.mjs +17 -0
  56. package/esm2022/lib/collapsible-group/collapsible-group-header.directive.mjs +17 -0
  57. package/esm2022/lib/collapsible-group/collapsible-group.component.mjs +46 -0
  58. package/esm2022/lib/collapsible-group/collapsible-group.module.mjs +33 -0
  59. package/esm2022/lib/contacts/contact-item/contact-item.component.mjs +27 -0
  60. package/esm2022/lib/contacts/contact-item-default-status/contact-item-default-status.component.mjs +20 -0
  61. package/esm2022/lib/contacts/contact-item-title/contact-item-title.component.mjs +15 -0
  62. package/esm2022/lib/contacts/contacts-profile/contacts-profile.component.mjs +18 -0
  63. package/esm2022/lib/contacts/contacts-trigger/contacts-trigger-data.mjs +24 -0
  64. package/esm2022/lib/contacts/contacts-trigger/contacts-trigger-for.directive.mjs +231 -0
  65. package/esm2022/lib/contacts/contacts-types/contacts.component.private-types.mjs +2 -0
  66. package/esm2022/lib/contacts/contacts-types/contacts.component.public-types.mjs +9 -0
  67. package/esm2022/lib/contacts/contacts.component.mjs +92 -0
  68. package/esm2022/lib/contacts/contacts.module.mjs +53 -0
  69. package/esm2022/lib/contacts/custom-profile.directive.mjs +16 -0
  70. package/esm2022/lib/contacts/custom-status.directive.mjs +18 -0
  71. package/esm2022/lib/core/animation.mjs +34 -0
  72. package/esm2022/lib/core/client-environment.mjs +20 -0
  73. package/esm2022/lib/core/common-behaviors/disabled.mjs +27 -0
  74. package/esm2022/lib/core/core.module.mjs +44 -0
  75. package/esm2022/lib/core/devices/client-input-desktop.directive.mjs +29 -0
  76. package/esm2022/lib/core/devices/client-input-touch.directive.mjs +29 -0
  77. package/esm2022/lib/core/devices/client-output-desktop.directive.mjs +29 -0
  78. package/esm2022/lib/core/devices/client-output-touch.directive.mjs +29 -0
  79. package/esm2022/lib/core/hide-on-overflow.directive.mjs +83 -0
  80. package/esm2022/lib/core/overlay-base.mjs +18 -0
  81. package/esm2022/lib/core/overlay-position-config.mjs +2 -0
  82. package/esm2022/lib/core/overlay-trigger-for-base.directive.mjs +121 -0
  83. package/esm2022/lib/core/overlay.service.mjs +90 -0
  84. package/esm2022/lib/core/pipes/pure-pipes.module.mjs +16 -0
  85. package/esm2022/lib/core/pipes/title.pipe.mjs +21 -0
  86. package/esm2022/lib/core/radio-checkbox-base.mjs +19 -0
  87. package/esm2022/lib/core/services/names-utils-service.mjs +51 -0
  88. package/esm2022/lib/core/theme.library.mjs +59 -0
  89. package/esm2022/lib/core/types.mjs +2 -0
  90. package/esm2022/lib/grid/grid.component.mjs +128 -0
  91. package/esm2022/lib/grid/grid.module.mjs +18 -0
  92. package/esm2022/lib/icon/icon.component.mjs +43 -0
  93. package/esm2022/lib/icon/icon.module.mjs +16 -0
  94. package/esm2022/lib/input-field/input-field.component.mjs +167 -0
  95. package/esm2022/lib/input-field/input-field.module.mjs +20 -0
  96. package/esm2022/lib/label/label.component.mjs +31 -0
  97. package/esm2022/lib/label/label.module.mjs +18 -0
  98. package/esm2022/lib/menu/divider.directive.mjs +23 -0
  99. package/esm2022/lib/menu/menu-base.mjs +364 -0
  100. package/esm2022/lib/menu/menu-desktop-animations.mjs +23 -0
  101. package/esm2022/lib/menu/menu-errors.mjs +37 -0
  102. package/esm2022/lib/menu/menu-item.component.mjs +89 -0
  103. package/esm2022/lib/menu/menu-panel.mjs +7 -0
  104. package/esm2022/lib/menu/menu-positions.mjs +9 -0
  105. package/esm2022/lib/menu/menu-touch-animations.mjs +137 -0
  106. package/esm2022/lib/menu/menu-touch-close.component.mjs +13 -0
  107. package/esm2022/lib/menu/menu-touch-title.component.mjs +59 -0
  108. package/esm2022/lib/menu/menu-trigger-for.directive.mjs +738 -0
  109. package/esm2022/lib/menu/menu.component.mjs +30 -0
  110. package/esm2022/lib/menu/menu.module.mjs +55 -0
  111. package/esm2022/lib/menu/testing/menu.harness.mjs +109 -0
  112. package/esm2022/lib/menu/title.directive.mjs +17 -0
  113. package/esm2022/lib/progress-bar/progress-bar-legend/progress-bar-legend.component.mjs +19 -0
  114. package/esm2022/lib/progress-bar/progress-bar-legend-base.mjs +17 -0
  115. package/esm2022/lib/progress-bar/progress-bar-legend-trigger-for.directive.mjs +54 -0
  116. package/esm2022/lib/progress-bar/progress-bar.component.mjs +92 -0
  117. package/esm2022/lib/progress-bar/progress-bar.model.mjs +2 -0
  118. package/esm2022/lib/progress-bar/progress-bar.module.mjs +44 -0
  119. package/esm2022/lib/radio-button/radio-button.component.mjs +119 -0
  120. package/esm2022/lib/radio-button/radio-button.module.mjs +17 -0
  121. package/esm2022/lib/radio-button/radio-group.component.mjs +17 -0
  122. package/esm2022/lib/toggle-switch/toggle-switch.component.mjs +100 -0
  123. package/esm2022/lib/toggle-switch/toggle-switch.module.mjs +16 -0
  124. package/esm2022/table/ifsworld-granite-components-table.mjs +5 -0
  125. package/esm2022/table/index.mjs +5 -0
  126. package/esm2022/table/lib/cell/cell-align/cell-align-classes.directive.mjs +26 -0
  127. package/esm2022/table/lib/cell/cell.mjs +15 -0
  128. package/esm2022/table/lib/cell/table-data-cell.component.mjs +25 -0
  129. package/esm2022/table/lib/cell/table-header-cell.component.mjs +14 -0
  130. package/esm2022/table/lib/column/table-column.directive.mjs +33 -0
  131. package/esm2022/table/lib/column-size/column-size.directive.mjs +34 -0
  132. package/esm2022/table/lib/table-constants.library.mjs +7 -0
  133. package/esm2022/table/lib/table.component.mjs +62 -0
  134. package/esm2022/table/lib/table.model.mjs +2 -0
  135. package/esm2022/table/lib/table.module.mjs +38 -0
  136. package/esm2022/tooltip/ifsworld-granite-components-tooltip.mjs +5 -0
  137. package/esm2022/tooltip/index.mjs +4 -0
  138. package/esm2022/tooltip/lib/Services/granite-tooltip.service.mjs +28 -0
  139. package/esm2022/tooltip/lib/tooltip-constants.library.mjs +4 -0
  140. package/esm2022/tooltip/lib/tooltip-trigger-for.directive.mjs +147 -0
  141. package/esm2022/tooltip/lib/tooltip.component.mjs +14 -0
  142. package/esm2022/tooltip/lib/tooltip.module.mjs +19 -0
  143. package/fesm2022/ifsworld-granite-components-carousel.mjs +9 -9
  144. package/fesm2022/ifsworld-granite-components-carousel.mjs.map +1 -1
  145. package/fesm2022/ifsworld-granite-components-date-picker.mjs +30 -34
  146. package/fesm2022/ifsworld-granite-components-date-picker.mjs.map +1 -1
  147. package/fesm2022/ifsworld-granite-components-file-upload.mjs +12 -13
  148. package/fesm2022/ifsworld-granite-components-file-upload.mjs.map +1 -1
  149. package/fesm2022/ifsworld-granite-components-table.mjs +29 -32
  150. package/fesm2022/ifsworld-granite-components-table.mjs.map +1 -1
  151. package/fesm2022/ifsworld-granite-components-tooltip.mjs +15 -16
  152. package/fesm2022/ifsworld-granite-components-tooltip.mjs.map +1 -1
  153. package/fesm2022/ifsworld-granite-components.mjs +321 -340
  154. package/fesm2022/ifsworld-granite-components.mjs.map +1 -1
  155. package/lib/contacts/contacts-trigger/contacts-trigger-data.d.ts +1 -1
  156. package/lib/core/overlay-base.d.ts +1 -1
  157. package/lib/core/radio-checkbox-base.d.ts +1 -1
  158. package/lib/menu/menu-base.d.ts +1 -1
  159. package/lib/progress-bar/progress-bar-legend-base.d.ts +1 -1
  160. package/package.json +21 -9
  161. package/src/lib/core/style/_mixins.scss +9 -10
  162. package/src/lib/core/style/_range-functions.scss +4 -6
  163. package/src/lib/core/style/_z-index.scss +4 -6
  164. package/table/lib/cell/cell.d.ts +1 -1
@@ -0,0 +1,20 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import { CONTACT_DEFAULT_STATUS, } from '../contacts-types/contacts.component.public-types';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ export class ContactItemDefaultStatusComponent {
6
+ constructor() {
7
+ this.CONTACT_STATUS = CONTACT_DEFAULT_STATUS;
8
+ }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ContactItemDefaultStatusComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ContactItemDefaultStatusComponent, selector: "granite-contact-item-default-status", inputs: { status: "status" }, host: { classAttribute: "granite-contact-item-default-status" }, ngImport: i0, template: "<ng-container [ngSwitch]=\"status\">\n <ng-container *ngSwitchCase=\"CONTACT_STATUS.AVAILABLE\">\n <svg\n data-fnd=\"available\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"9\"\n height=\"10\"\n viewBox=\"0 0 9 10\"\n fill=\"none\"\n >\n <path\n d=\"M4.085 0.915009C1.83008 0.915009 0 2.74509 0 5.00001C0 7.25493 1.83008 9.08501 4.085 9.08501C6.33992 9.08501 8.17 7.25493 8.17 5.00001C8.17 2.74509 6.33992 0.915009 4.085 0.915009Z\"\n fill=\"#17A511\"\n />\n <path\n d=\"M2.45099 4.82838L3.47224 6.06418L5.51474 4.21048\"\n stroke=\"white\"\n stroke-linecap=\"round\"\n />\n </svg>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"CONTACT_STATUS.BUSY\">\n <svg\n data-fnd=\"busy\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"9\"\n height=\"9\"\n viewBox=\"0 0 9 9\"\n fill=\"none\"\n >\n <path\n d=\"M4.25504 0.169922C2.00012 0.169922 0.170044 2 0.170044 4.25492C0.170044 6.50984 2.00012 8.33992 4.25504 8.33992C6.50996 8.33992 8.34004 6.50984 8.34004 4.25492C8.34004 2 6.50996 0.169922 4.25504 0.169922Z\"\n fill=\"#D23335\"\n />\n </svg>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"CONTACT_STATUS.DO_NOT_DISTURB\">\n <svg\n data-fnd=\"doNotDisturb\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"9\"\n height=\"9\"\n viewBox=\"0 0 9 9\"\n fill=\"none\"\n >\n <path\n d=\"M4.085 0C1.83008 0 0 1.83008 0 4.085C0 6.33992 1.83008 8.17 4.085 8.17C6.33992 8.17 8.17 6.33992 8.17 4.085C8.17 1.83008 6.33992 0 4.085 0Z\"\n fill=\"#D23335\"\n />\n <path d=\"M2 4L6 4\" stroke=\"white\" stroke-linecap=\"round\" />\n </svg>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"CONTACT_STATUS.AWAY\">\n <svg\n data-fnd=\"away\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"9\"\n height=\"9\"\n viewBox=\"0 0 9 9\"\n fill=\"none\"\n >\n <path\n d=\"M4.085 0C1.83008 0 0 1.83008 0 4.085C0 6.33992 1.83008 8.17 4.085 8.17C6.33992 8.17 8.17 6.33992 8.17 4.085C8.17 1.83008 6.33992 0 4.085 0Z\"\n fill=\"#EDA000\"\n />\n <path d=\"M4 2L4 3.875L5.5 5.5\" stroke=\"white\" stroke-linecap=\"round\" />\n </svg>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"CONTACT_STATUS.OFFLINE\">\n <svg\n data-fnd=\"offline\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"9\"\n height=\"9\"\n viewBox=\"0 0 9 9\"\n fill=\"none\"\n >\n <path\n d=\"M0.5 4.085C0.5 2.10622 2.10622 0.5 4.085 0.5C6.06378 0.5 7.67 2.10622 7.67 4.085C7.67 6.06378 6.06378 7.67 4.085 7.67C2.10622 7.67 0.5 6.06378 0.5 4.085Z\"\n stroke=\"#7D7D7D\"\n />\n <path d=\"M3 3L5 5\" stroke=\"#7D7D7D\" stroke-linecap=\"round\" />\n <path d=\"M5 3L3 5\" stroke=\"#7D7D7D\" stroke-linecap=\"round\" />\n </svg>\n </ng-container>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
11
+ }
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ContactItemDefaultStatusComponent, decorators: [{
13
+ type: Component,
14
+ args: [{ selector: 'granite-contact-item-default-status', host: {
15
+ class: 'granite-contact-item-default-status',
16
+ }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [ngSwitch]=\"status\">\n <ng-container *ngSwitchCase=\"CONTACT_STATUS.AVAILABLE\">\n <svg\n data-fnd=\"available\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"9\"\n height=\"10\"\n viewBox=\"0 0 9 10\"\n fill=\"none\"\n >\n <path\n d=\"M4.085 0.915009C1.83008 0.915009 0 2.74509 0 5.00001C0 7.25493 1.83008 9.08501 4.085 9.08501C6.33992 9.08501 8.17 7.25493 8.17 5.00001C8.17 2.74509 6.33992 0.915009 4.085 0.915009Z\"\n fill=\"#17A511\"\n />\n <path\n d=\"M2.45099 4.82838L3.47224 6.06418L5.51474 4.21048\"\n stroke=\"white\"\n stroke-linecap=\"round\"\n />\n </svg>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"CONTACT_STATUS.BUSY\">\n <svg\n data-fnd=\"busy\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"9\"\n height=\"9\"\n viewBox=\"0 0 9 9\"\n fill=\"none\"\n >\n <path\n d=\"M4.25504 0.169922C2.00012 0.169922 0.170044 2 0.170044 4.25492C0.170044 6.50984 2.00012 8.33992 4.25504 8.33992C6.50996 8.33992 8.34004 6.50984 8.34004 4.25492C8.34004 2 6.50996 0.169922 4.25504 0.169922Z\"\n fill=\"#D23335\"\n />\n </svg>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"CONTACT_STATUS.DO_NOT_DISTURB\">\n <svg\n data-fnd=\"doNotDisturb\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"9\"\n height=\"9\"\n viewBox=\"0 0 9 9\"\n fill=\"none\"\n >\n <path\n d=\"M4.085 0C1.83008 0 0 1.83008 0 4.085C0 6.33992 1.83008 8.17 4.085 8.17C6.33992 8.17 8.17 6.33992 8.17 4.085C8.17 1.83008 6.33992 0 4.085 0Z\"\n fill=\"#D23335\"\n />\n <path d=\"M2 4L6 4\" stroke=\"white\" stroke-linecap=\"round\" />\n </svg>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"CONTACT_STATUS.AWAY\">\n <svg\n data-fnd=\"away\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"9\"\n height=\"9\"\n viewBox=\"0 0 9 9\"\n fill=\"none\"\n >\n <path\n d=\"M4.085 0C1.83008 0 0 1.83008 0 4.085C0 6.33992 1.83008 8.17 4.085 8.17C6.33992 8.17 8.17 6.33992 8.17 4.085C8.17 1.83008 6.33992 0 4.085 0Z\"\n fill=\"#EDA000\"\n />\n <path d=\"M4 2L4 3.875L5.5 5.5\" stroke=\"white\" stroke-linecap=\"round\" />\n </svg>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"CONTACT_STATUS.OFFLINE\">\n <svg\n data-fnd=\"offline\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"9\"\n height=\"9\"\n viewBox=\"0 0 9 9\"\n fill=\"none\"\n >\n <path\n d=\"M0.5 4.085C0.5 2.10622 2.10622 0.5 4.085 0.5C6.06378 0.5 7.67 2.10622 7.67 4.085C7.67 6.06378 6.06378 7.67 4.085 7.67C2.10622 7.67 0.5 6.06378 0.5 4.085Z\"\n stroke=\"#7D7D7D\"\n />\n <path d=\"M3 3L5 5\" stroke=\"#7D7D7D\" stroke-linecap=\"round\" />\n <path d=\"M5 3L3 5\" stroke=\"#7D7D7D\" stroke-linecap=\"round\" />\n </svg>\n </ng-container>\n</ng-container>\n" }]
17
+ }], propDecorators: { status: [{
18
+ type: Input
19
+ }] } });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1pdGVtLWRlZmF1bHQtc3RhdHVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZ3Jhbml0ZS1jb21wb25lbnRzL3NyYy9saWIvY29udGFjdHMvY29udGFjdC1pdGVtLWRlZmF1bHQtc3RhdHVzL2NvbnRhY3QtaXRlbS1kZWZhdWx0LXN0YXR1cy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2NvbnRhY3RzL2NvbnRhY3QtaXRlbS1kZWZhdWx0LXN0YXR1cy9jb250YWN0LWl0ZW0tZGVmYXVsdC1zdGF0dXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUNMLHNCQUFzQixHQUV2QixNQUFNLG1EQUFtRCxDQUFDOzs7QUFVM0QsTUFBTSxPQUFPLGlDQUFpQztJQVI5QztRQVVFLG1CQUFjLEdBQUcsc0JBQXNCLENBQUM7S0FDekM7K0dBSFksaUNBQWlDO21HQUFqQyxpQ0FBaUMsMEtDZDlDLHM3RkEwRkE7OzRGRDVFYSxpQ0FBaUM7a0JBUjdDLFNBQVM7K0JBQ0UscUNBQXFDLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxxQ0FBcUM7cUJBQzdDLG1CQUVnQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ09OVEFDVF9ERUZBVUxUX1NUQVRVUyxcbiAgQ29udGFjdERlZmF1bHRTdGF0dXNlcyxcbn0gZnJvbSAnLi4vY29udGFjdHMtdHlwZXMvY29udGFjdHMuY29tcG9uZW50LnB1YmxpYy10eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dyYW5pdGUtY29udGFjdC1pdGVtLWRlZmF1bHQtc3RhdHVzJyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZ3Jhbml0ZS1jb250YWN0LWl0ZW0tZGVmYXVsdC1zdGF0dXMnLFxuICB9LFxuICB0ZW1wbGF0ZVVybDogJy4vY29udGFjdC1pdGVtLWRlZmF1bHQtc3RhdHVzLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENvbnRhY3RJdGVtRGVmYXVsdFN0YXR1c0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHN0YXR1czogQ29udGFjdERlZmF1bHRTdGF0dXNlcztcbiAgQ09OVEFDVF9TVEFUVVMgPSBDT05UQUNUX0RFRkFVTFRfU1RBVFVTO1xufVxuIiwiPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwic3RhdHVzXCI+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIkNPTlRBQ1RfU1RBVFVTLkFWQUlMQUJMRVwiPlxuICAgIDxzdmdcbiAgICAgIGRhdGEtZm5kPVwiYXZhaWxhYmxlXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCI5XCJcbiAgICAgIGhlaWdodD1cIjEwXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgOSAxMFwiXG4gICAgICBmaWxsPVwibm9uZVwiXG4gICAgPlxuICAgICAgPHBhdGhcbiAgICAgICAgZD1cIk00LjA4NSAwLjkxNTAwOUMxLjgzMDA4IDAuOTE1MDA5IDAgMi43NDUwOSAwIDUuMDAwMDFDMCA3LjI1NDkzIDEuODMwMDggOS4wODUwMSA0LjA4NSA5LjA4NTAxQzYuMzM5OTIgOS4wODUwMSA4LjE3IDcuMjU0OTMgOC4xNyA1LjAwMDAxQzguMTcgMi43NDUwOSA2LjMzOTkyIDAuOTE1MDA5IDQuMDg1IDAuOTE1MDA5WlwiXG4gICAgICAgIGZpbGw9XCIjMTdBNTExXCJcbiAgICAgIC8+XG4gICAgICA8cGF0aFxuICAgICAgICBkPVwiTTIuNDUwOTkgNC44MjgzOEwzLjQ3MjI0IDYuMDY0MThMNS41MTQ3NCA0LjIxMDQ4XCJcbiAgICAgICAgc3Ryb2tlPVwid2hpdGVcIlxuICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcbiAgICAgIC8+XG4gICAgPC9zdmc+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIkNPTlRBQ1RfU1RBVFVTLkJVU1lcIj5cbiAgICA8c3ZnXG4gICAgICBkYXRhLWZuZD1cImJ1c3lcIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICB3aWR0aD1cIjlcIlxuICAgICAgaGVpZ2h0PVwiOVwiXG4gICAgICB2aWV3Qm94PVwiMCAwIDkgOVwiXG4gICAgICBmaWxsPVwibm9uZVwiXG4gICAgPlxuICAgICAgPHBhdGhcbiAgICAgICAgZD1cIk00LjI1NTA0IDAuMTY5OTIyQzIuMDAwMTIgMC4xNjk5MjIgMC4xNzAwNDQgMiAwLjE3MDA0NCA0LjI1NDkyQzAuMTcwMDQ0IDYuNTA5ODQgMi4wMDAxMiA4LjMzOTkyIDQuMjU1MDQgOC4zMzk5MkM2LjUwOTk2IDguMzM5OTIgOC4zNDAwNCA2LjUwOTg0IDguMzQwMDQgNC4yNTQ5MkM4LjM0MDA0IDIgNi41MDk5NiAwLjE2OTkyMiA0LjI1NTA0IDAuMTY5OTIyWlwiXG4gICAgICAgIGZpbGw9XCIjRDIzMzM1XCJcbiAgICAgIC8+XG4gICAgPC9zdmc+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIkNPTlRBQ1RfU1RBVFVTLkRPX05PVF9ESVNUVVJCXCI+XG4gICAgPHN2Z1xuICAgICAgZGF0YS1mbmQ9XCJkb05vdERpc3R1cmJcIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICB3aWR0aD1cIjlcIlxuICAgICAgaGVpZ2h0PVwiOVwiXG4gICAgICB2aWV3Qm94PVwiMCAwIDkgOVwiXG4gICAgICBmaWxsPVwibm9uZVwiXG4gICAgPlxuICAgICAgPHBhdGhcbiAgICAgICAgZD1cIk00LjA4NSAwQzEuODMwMDggMCAwIDEuODMwMDggMCA0LjA4NUMwIDYuMzM5OTIgMS44MzAwOCA4LjE3IDQuMDg1IDguMTdDNi4zMzk5MiA4LjE3IDguMTcgNi4zMzk5MiA4LjE3IDQuMDg1QzguMTcgMS44MzAwOCA2LjMzOTkyIDAgNC4wODUgMFpcIlxuICAgICAgICBmaWxsPVwiI0QyMzMzNVwiXG4gICAgICAvPlxuICAgICAgPHBhdGggZD1cIk0yIDRMNiA0XCIgc3Ryb2tlPVwid2hpdGVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgLz5cbiAgICA8L3N2Zz5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiQ09OVEFDVF9TVEFUVVMuQVdBWVwiPlxuICAgIDxzdmdcbiAgICAgIGRhdGEtZm5kPVwiYXdheVwiXG4gICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgIHdpZHRoPVwiOVwiXG4gICAgICBoZWlnaHQ9XCI5XCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgOSA5XCJcbiAgICAgIGZpbGw9XCJub25lXCJcbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBkPVwiTTQuMDg1IDBDMS44MzAwOCAwIDAgMS44MzAwOCAwIDQuMDg1QzAgNi4zMzk5MiAxLjgzMDA4IDguMTcgNC4wODUgOC4xN0M2LjMzOTkyIDguMTcgOC4xNyA2LjMzOTkyIDguMTcgNC4wODVDOC4xNyAxLjgzMDA4IDYuMzM5OTIgMCA0LjA4NSAwWlwiXG4gICAgICAgIGZpbGw9XCIjRURBMDAwXCJcbiAgICAgIC8+XG4gICAgICA8cGF0aCBkPVwiTTQgMkw0IDMuODc1TDUuNSA1LjVcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiAvPlxuICAgIDwvc3ZnPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJDT05UQUNUX1NUQVRVUy5PRkZMSU5FXCI+XG4gICAgPHN2Z1xuICAgICAgZGF0YS1mbmQ9XCJvZmZsaW5lXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCI5XCJcbiAgICAgIGhlaWdodD1cIjlcIlxuICAgICAgdmlld0JveD1cIjAgMCA5IDlcIlxuICAgICAgZmlsbD1cIm5vbmVcIlxuICAgID5cbiAgICAgIDxwYXRoXG4gICAgICAgIGQ9XCJNMC41IDQuMDg1QzAuNSAyLjEwNjIyIDIuMTA2MjIgMC41IDQuMDg1IDAuNUM2LjA2Mzc4IDAuNSA3LjY3IDIuMTA2MjIgNy42NyA0LjA4NUM3LjY3IDYuMDYzNzggNi4wNjM3OCA3LjY3IDQuMDg1IDcuNjdDMi4xMDYyMiA3LjY3IDAuNSA2LjA2Mzc4IDAuNSA0LjA4NVpcIlxuICAgICAgICBzdHJva2U9XCIjN0Q3RDdEXCJcbiAgICAgIC8+XG4gICAgICA8cGF0aCBkPVwiTTMgM0w1IDVcIiBzdHJva2U9XCIjN0Q3RDdEXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIC8+XG4gICAgICA8cGF0aCBkPVwiTTUgM0wzIDVcIiBzdHJva2U9XCIjN0Q3RDdEXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIC8+XG4gICAgPC9zdmc+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
@@ -0,0 +1,15 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class GraniteContactItemTitleComponent {
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteContactItemTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GraniteContactItemTitleComponent, selector: "granite-contact-item-title", inputs: { contact: "contact" }, host: { classAttribute: "granite-contact-item-title" }, ngImport: i0, template: "<button\n tabindex=\"0\"\n data-fnd=\"contact-item-title\"\n [class.title-status-active]=\"!contact.disabled && !contact.options\"\n [class.title-status-disabled]=\"contact.disabled\"\n [class.title-status-parent]=\"!contact.disabled && contact.options\"\n>\n {{ contact.label }}\n</button>\n", styles: [".title-status-parent,.title-status-disabled,.title-status-active{font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular)}.title-status-active{color:var(--granite-color-text-link)}.title-status-active:hover{text-decoration:underline;cursor:pointer}.title-status-disabled{color:var(--granite-color-text-hint)}.title-status-parent{color:var(--granite-color-text)}button{all:unset}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6
+ }
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteContactItemTitleComponent, decorators: [{
8
+ type: Component,
9
+ args: [{ selector: 'granite-contact-item-title', host: {
10
+ class: 'granite-contact-item-title',
11
+ }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n tabindex=\"0\"\n data-fnd=\"contact-item-title\"\n [class.title-status-active]=\"!contact.disabled && !contact.options\"\n [class.title-status-disabled]=\"contact.disabled\"\n [class.title-status-parent]=\"!contact.disabled && contact.options\"\n>\n {{ contact.label }}\n</button>\n", styles: [".title-status-parent,.title-status-disabled,.title-status-active{font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular)}.title-status-active{color:var(--granite-color-text-link)}.title-status-active:hover{text-decoration:underline;cursor:pointer}.title-status-disabled{color:var(--granite-color-text-hint)}.title-status-parent{color:var(--granite-color-text)}button{all:unset}\n"] }]
12
+ }], propDecorators: { contact: [{
13
+ type: Input
14
+ }] } });
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC1pdGVtLXRpdGxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZ3Jhbml0ZS1jb21wb25lbnRzL3NyYy9saWIvY29udGFjdHMvY29udGFjdC1pdGVtLXRpdGxlL2NvbnRhY3QtaXRlbS10aXRsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2NvbnRhY3RzL2NvbnRhY3QtaXRlbS10aXRsZS9jb250YWN0LWl0ZW0tdGl0bGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBWTFFLE1BQU0sT0FBTyxnQ0FBZ0M7K0dBQWhDLGdDQUFnQzttR0FBaEMsZ0NBQWdDLDBKQ1o3Qyw0U0FTQTs7NEZER2EsZ0NBQWdDO2tCQVQ1QyxTQUFTOytCQUNFLDRCQUE0QixRQUNoQzt3QkFDSixLQUFLLEVBQUUsNEJBQTRCO3FCQUNwQyxtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRhY3RFeHRlbmRlZCB9IGZyb20gJy4uL2NvbnRhY3RzLXR5cGVzL2NvbnRhY3RzLmNvbXBvbmVudC5wcml2YXRlLXR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ3Jhbml0ZS1jb250YWN0LWl0ZW0tdGl0bGUnLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdncmFuaXRlLWNvbnRhY3QtaXRlbS10aXRsZScsXG4gIH0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jb250YWN0LWl0ZW0tdGl0bGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb250YWN0LWl0ZW0tdGl0bGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEdyYW5pdGVDb250YWN0SXRlbVRpdGxlQ29tcG9uZW50IHtcbiAgQElucHV0KCkgY29udGFjdDogQ29udGFjdEV4dGVuZGVkO1xufVxuIiwiPGJ1dHRvblxuICB0YWJpbmRleD1cIjBcIlxuICBkYXRhLWZuZD1cImNvbnRhY3QtaXRlbS10aXRsZVwiXG4gIFtjbGFzcy50aXRsZS1zdGF0dXMtYWN0aXZlXT1cIiFjb250YWN0LmRpc2FibGVkICYmICFjb250YWN0Lm9wdGlvbnNcIlxuICBbY2xhc3MudGl0bGUtc3RhdHVzLWRpc2FibGVkXT1cImNvbnRhY3QuZGlzYWJsZWRcIlxuICBbY2xhc3MudGl0bGUtc3RhdHVzLXBhcmVudF09XCIhY29udGFjdC5kaXNhYmxlZCAmJiBjb250YWN0Lm9wdGlvbnNcIlxuPlxuICB7eyBjb250YWN0LmxhYmVsIH19XG48L2J1dHRvbj5cbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../../avatar/avatar.component";
4
+ export class GraniteContactsProfileComponent {
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteContactsProfileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GraniteContactsProfileComponent, selector: "granite-contacts-profile", inputs: { profile: "profile", profileClass: "profileClass" }, host: { classAttribute: "granite-contacts-profile" }, ngImport: i0, template: "<div [class]=\"profileClass\" data-fnd=\"profile\" class=\"profile\">\n <granite-avatar\n data-fnd=\"profile-avatar\"\n class=\"profile-avatar\"\n [firstName]=\"profile.firstName\"\n [lastName]=\"profile.lastName\"\n [avatar]=\"profile.avatar\"\n ></granite-avatar>\n\n <ng-template #noProfileAvatar>\n <div class=\"no-profile-avatar\">\n <span\n data-fnd=\"no-profile-avatar-initials\"\n class=\"no-profile-avatar-initials\"\n >{{ profile?.initials }}</span\n >\n </div>\n </ng-template>\n\n <div class=\"profile-info\">\n <p data-fnd=\"profile-info-names\" class=\"profile-info-names\">\n {{ profile?.firstName }} {{ profile?.lastName }}\n </p>\n <p data-fnd=\"profile-info-job-title\" class=\"profile-info-job-title\">\n {{ profile?.jobTitle }}\n </p>\n </div>\n</div>\n", styles: [".profile{display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;align-items:center;margin-bottom:var(--granite-spacing-8);gap:var(--granite-spacing-4)}.profile-avatar{width:3rem;height:3rem;border-radius:50%}.profile-info{display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--granite-spacing-8)}.profile-info-names{color:var(--granite-color-text);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);margin:0}.profile-info-job-title{color:var(--granite-color-text-hint);font-size:var(--granite-font-size-body-small);margin:0}.no-profile-avatar{display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;width:3rem;height:3rem;border-radius:360px;background:var(--granite-color-background-info);justify-content:center;align-items:center}.no-profile-avatar-initials{font-size:var(--granite-font-size-micro);color:var(--granite-color-signal-info);font-weight:var(--granite-font-weight-regular)}\n"], dependencies: [{ kind: "component", type: i1.GraniteAvatarComponent, selector: "granite-avatar", inputs: ["name", "firstName", "lastName", "avatar", "status", "aria-label"], exportAs: ["graniteAvatar"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7
+ }
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteContactsProfileComponent, decorators: [{
9
+ type: Component,
10
+ args: [{ selector: 'granite-contacts-profile', host: {
11
+ class: 'granite-contacts-profile',
12
+ }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"profileClass\" data-fnd=\"profile\" class=\"profile\">\n <granite-avatar\n data-fnd=\"profile-avatar\"\n class=\"profile-avatar\"\n [firstName]=\"profile.firstName\"\n [lastName]=\"profile.lastName\"\n [avatar]=\"profile.avatar\"\n ></granite-avatar>\n\n <ng-template #noProfileAvatar>\n <div class=\"no-profile-avatar\">\n <span\n data-fnd=\"no-profile-avatar-initials\"\n class=\"no-profile-avatar-initials\"\n >{{ profile?.initials }}</span\n >\n </div>\n </ng-template>\n\n <div class=\"profile-info\">\n <p data-fnd=\"profile-info-names\" class=\"profile-info-names\">\n {{ profile?.firstName }} {{ profile?.lastName }}\n </p>\n <p data-fnd=\"profile-info-job-title\" class=\"profile-info-job-title\">\n {{ profile?.jobTitle }}\n </p>\n </div>\n</div>\n", styles: [".profile{display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;align-items:center;margin-bottom:var(--granite-spacing-8);gap:var(--granite-spacing-4)}.profile-avatar{width:3rem;height:3rem;border-radius:50%}.profile-info{display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--granite-spacing-8)}.profile-info-names{color:var(--granite-color-text);font-size:var(--granite-font-size-body-small);font-weight:var(--granite-font-weight-regular);margin:0}.profile-info-job-title{color:var(--granite-color-text-hint);font-size:var(--granite-font-size-body-small);margin:0}.no-profile-avatar{display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;width:3rem;height:3rem;border-radius:360px;background:var(--granite-color-background-info);justify-content:center;align-items:center}.no-profile-avatar-initials{font-size:var(--granite-font-size-micro);color:var(--granite-color-signal-info);font-weight:var(--granite-font-weight-regular)}\n"] }]
13
+ }], propDecorators: { profile: [{
14
+ type: Input
15
+ }], profileClass: [{
16
+ type: Input
17
+ }] } });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdHMtcHJvZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2NvbnRhY3RzL2NvbnRhY3RzLXByb2ZpbGUvY29udGFjdHMtcHJvZmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2NvbnRhY3RzL2NvbnRhY3RzLXByb2ZpbGUvY29udGFjdHMtcHJvZmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBWTFFLE1BQU0sT0FBTywrQkFBK0I7K0dBQS9CLCtCQUErQjttR0FBL0IsK0JBQStCLG9MQ1o1Qyx1MUJBNEJBOzs0RkRoQmEsK0JBQStCO2tCQVQzQyxTQUFTOytCQUNFLDBCQUEwQixRQUM5Qjt3QkFDSixLQUFLLEVBQUUsMEJBQTBCO3FCQUNsQyxtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsT0FBTztzQkFBZixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJvZmlsZURhdGEgfSBmcm9tICcuLi9jb250YWN0cy10eXBlcy9jb250YWN0cy5jb21wb25lbnQucHJpdmF0ZS10eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dyYW5pdGUtY29udGFjdHMtcHJvZmlsZScsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2dyYW5pdGUtY29udGFjdHMtcHJvZmlsZScsXG4gIH0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jb250YWN0cy1wcm9maWxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29udGFjdHMtcHJvZmlsZS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgR3Jhbml0ZUNvbnRhY3RzUHJvZmlsZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHByb2ZpbGU6IFByb2ZpbGVEYXRhO1xuICBASW5wdXQoKSBwcm9maWxlQ2xhc3M7XG59XG4iLCI8ZGl2IFtjbGFzc109XCJwcm9maWxlQ2xhc3NcIiBkYXRhLWZuZD1cInByb2ZpbGVcIiBjbGFzcz1cInByb2ZpbGVcIj5cbiAgPGdyYW5pdGUtYXZhdGFyXG4gICAgZGF0YS1mbmQ9XCJwcm9maWxlLWF2YXRhclwiXG4gICAgY2xhc3M9XCJwcm9maWxlLWF2YXRhclwiXG4gICAgW2ZpcnN0TmFtZV09XCJwcm9maWxlLmZpcnN0TmFtZVwiXG4gICAgW2xhc3ROYW1lXT1cInByb2ZpbGUubGFzdE5hbWVcIlxuICAgIFthdmF0YXJdPVwicHJvZmlsZS5hdmF0YXJcIlxuICA+PC9ncmFuaXRlLWF2YXRhcj5cblxuICA8bmctdGVtcGxhdGUgI25vUHJvZmlsZUF2YXRhcj5cbiAgICA8ZGl2IGNsYXNzPVwibm8tcHJvZmlsZS1hdmF0YXJcIj5cbiAgICAgIDxzcGFuXG4gICAgICAgIGRhdGEtZm5kPVwibm8tcHJvZmlsZS1hdmF0YXItaW5pdGlhbHNcIlxuICAgICAgICBjbGFzcz1cIm5vLXByb2ZpbGUtYXZhdGFyLWluaXRpYWxzXCJcbiAgICAgICAgPnt7IHByb2ZpbGU/LmluaXRpYWxzIH19PC9zcGFuXG4gICAgICA+XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG5cbiAgPGRpdiBjbGFzcz1cInByb2ZpbGUtaW5mb1wiPlxuICAgIDxwIGRhdGEtZm5kPVwicHJvZmlsZS1pbmZvLW5hbWVzXCIgY2xhc3M9XCJwcm9maWxlLWluZm8tbmFtZXNcIj5cbiAgICAgIHt7IHByb2ZpbGU/LmZpcnN0TmFtZSB9fSB7eyBwcm9maWxlPy5sYXN0TmFtZSB9fVxuICAgIDwvcD5cbiAgICA8cCBkYXRhLWZuZD1cInByb2ZpbGUtaW5mby1qb2ItdGl0bGVcIiBjbGFzcz1cInByb2ZpbGUtaW5mby1qb2ItdGl0bGVcIj5cbiAgICAgIHt7IHByb2ZpbGU/LmpvYlRpdGxlIH19XG4gICAgPC9wPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,24 @@
1
+ import { TemplateRef, ViewChild, Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ let contactsPanelUid = 0;
4
+ export class ContactsTriggerDataComponent {
5
+ constructor() {
6
+ this.xPosition = 'after';
7
+ this.yPosition = 'below';
8
+ /**
9
+ * Used for locating the panel in tests and setting the aria-control attribute
10
+ * for the contacts trigger.
11
+ */
12
+ this.panelId = `granite-contacts-panel-${contactsPanelUid++}`;
13
+ }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ContactsTriggerDataComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
15
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ContactsTriggerDataComponent, viewQueries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0 }); }
16
+ }
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ContactsTriggerDataComponent, decorators: [{
18
+ type: Directive,
19
+ args: [{}]
20
+ }], propDecorators: { templateRef: [{
21
+ type: ViewChild,
22
+ args: [TemplateRef]
23
+ }] } });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdHMtdHJpZ2dlci1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9jb250YWN0cy9jb250YWN0cy10cmlnZ2VyL2NvbnRhY3RzLXRyaWdnZXItZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVWxFLElBQUksZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO0FBR3pCLE1BQU0sT0FBTyw0QkFBNEI7SUFEekM7UUFJRSxjQUFTLEdBQWMsT0FBTyxDQUFDO1FBRS9CLGNBQVMsR0FBYyxPQUFPLENBQUM7UUFJL0I7OztXQUdHO1FBQ00sWUFBTyxHQUFHLDBCQUEwQixnQkFBZ0IsRUFBRSxFQUFFLENBQUM7S0FPbkU7K0dBcEJZLDRCQUE0QjttR0FBNUIsNEJBQTRCLHVFQUM1QixXQUFXOzs0RkFEWCw0QkFBNEI7a0JBRHhDLFNBQVM7bUJBQUMsRUFBRTs4QkFFYSxXQUFXO3NCQUFsQyxTQUFTO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkLCBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENsaWVudElucHV0SW50ZXJmYWNlLFxuICBDbGllbnRPdXRwdXRJbnRlcmZhY2UsXG59IGZyb20gJy4uLy4uL2NvcmUvY2xpZW50LWVudmlyb25tZW50JztcbmltcG9ydCB7IERpcmVjdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcblxuZXhwb3J0IHR5cGUgUG9zaXRpb25YID0gJ2JlZm9yZScgfCAnYWZ0ZXInO1xuZXhwb3J0IHR5cGUgUG9zaXRpb25ZID0gJ2Fib3ZlJyB8ICdiZWxvdyc7XG5cbmxldCBjb250YWN0c1BhbmVsVWlkID0gMDtcblxuQERpcmVjdGl2ZSh7fSlcbmV4cG9ydCBjbGFzcyBDb250YWN0c1RyaWdnZXJEYXRhQ29tcG9uZW50IHtcbiAgQFZpZXdDaGlsZChUZW1wbGF0ZVJlZikgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIHhQb3NpdGlvbjogUG9zaXRpb25YID0gJ2FmdGVyJztcblxuICB5UG9zaXRpb246IFBvc2l0aW9uWSA9ICdiZWxvdyc7XG5cbiAgZGlyZWN0aW9uOiBEaXJlY3Rpb247XG5cbiAgLyoqXG4gICAqIFVzZWQgZm9yIGxvY2F0aW5nIHRoZSBwYW5lbCBpbiB0ZXN0cyBhbmQgc2V0dGluZyB0aGUgYXJpYS1jb250cm9sIGF0dHJpYnV0ZVxuICAgKiBmb3IgdGhlIGNvbnRhY3RzIHRyaWdnZXIuXG4gICAqL1xuICByZWFkb25seSBwYW5lbElkID0gYGdyYW5pdGUtY29udGFjdHMtcGFuZWwtJHtjb250YWN0c1BhbmVsVWlkKyt9YDtcblxuICAvKiogQ2xpZW50IGlucHV0IGRldmljZSBpbmZvcm1hdGlvbiAqL1xuICBjbGllbnRJbnB1dDogQ2xpZW50SW5wdXRJbnRlcmZhY2U7XG5cbiAgLyoqIENsaWVudCBvdXRwdXQgZGV2aWNlIGluZm9ybWF0aW9uICovXG4gIGNsaWVudE91dHB1dDogQ2xpZW50T3V0cHV0SW50ZXJmYWNlO1xufVxuIl19
@@ -0,0 +1,231 @@
1
+ import { Directive, ElementRef, Inject, Input, Optional, ViewContainerRef, } from '@angular/core';
2
+ import { FocusMonitor } from '@angular/cdk/a11y';
3
+ import { Directionality } from '@angular/cdk/bidi';
4
+ import { Overlay, OverlayConfig, OverlayOutsideClickDispatcher, } from '@angular/cdk/overlay';
5
+ import { TemplatePortal } from '@angular/cdk/portal';
6
+ import { Subscription } from 'rxjs';
7
+ import { GraniteContactsComponent } from '../contacts.component';
8
+ import { GRANITE_CLIENT_INPUT, GRANITE_CLIENT_OUTPUT, } from '../../core/client-environment';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@angular/cdk/overlay";
11
+ import * as i2 from "@angular/cdk/bidi";
12
+ import * as i3 from "@angular/cdk/a11y";
13
+ export class GraniteContactsTriggerForDirective {
14
+ constructor(_overlay, _element, _viewContainerRef, _outsideClickDispatcher,
15
+ /** Client input device information */
16
+ _clientInput,
17
+ /** Client output device information */
18
+ _clientOutput, _dir, _focusMonitor) {
19
+ this._overlay = _overlay;
20
+ this._element = _element;
21
+ this._viewContainerRef = _viewContainerRef;
22
+ this._outsideClickDispatcher = _outsideClickDispatcher;
23
+ this._clientInput = _clientInput;
24
+ this._clientOutput = _clientOutput;
25
+ this._dir = _dir;
26
+ this._focusMonitor = _focusMonitor;
27
+ /** Whether the associated contacts is open */
28
+ this._isContactsOpen = false;
29
+ this._contactsCloseSubscription = Subscription.EMPTY;
30
+ this._portal = null;
31
+ this._overlayRef = null;
32
+ }
33
+ ngAfterContentInit() {
34
+ const selectedContact = this.contacts.selectedContact;
35
+ this._contactsCloseSubscription = selectedContact.subscribe(() => this.closeContacts());
36
+ }
37
+ ngOnDestroy() {
38
+ if (this._overlayRef) {
39
+ this._overlayRef.dispose();
40
+ this._overlayRef = null;
41
+ }
42
+ this._contactsCloseSubscription.unsubscribe();
43
+ }
44
+ isOpen() {
45
+ return this._isContactsOpen;
46
+ }
47
+ openContacts() {
48
+ if (this._isContactsOpen) {
49
+ return;
50
+ }
51
+ this.contacts.direction = this._dir.value === 'rtl' ? 'rtl' : 'ltr';
52
+ this.contacts.clientInput = this._clientInput;
53
+ this.contacts.clientOutput = this._clientOutput;
54
+ const panelClass = [];
55
+ if (this._clientOutput?.device === 'touch') {
56
+ panelClass.push('granite-overlay-pane-center');
57
+ }
58
+ const scrollStrategy = this._clientOutput?.device !== 'touch'
59
+ ? this._overlay.scrollStrategies.reposition()
60
+ : this._overlay.scrollStrategies.block();
61
+ const hasBackdrop = this._clientOutput?.device === 'touch';
62
+ if (!this._overlayRef) {
63
+ const config = new OverlayConfig({
64
+ positionStrategy: this._positionStrategy(),
65
+ backdropClass: 'granite-overlay-dark-glass-backdrop',
66
+ scrollStrategy,
67
+ direction: this._dir,
68
+ panelClass,
69
+ hasBackdrop,
70
+ });
71
+ this._overlayRef = this._overlay.create(config);
72
+ }
73
+ if (!this._portal ||
74
+ this._portal.templateRef !== this.contacts.templateRef) {
75
+ this._portal = new TemplatePortal(this.contacts.templateRef, this._viewContainerRef);
76
+ }
77
+ // Attach portal to overlay ref (which is a portal outlet)
78
+ this._overlayRef.attach(this._portal);
79
+ this._outsideClickDispatcher.add(this._overlayRef);
80
+ this._overlayRef.outsidePointerEvents().subscribe((event) => {
81
+ event.stopPropagation();
82
+ this.closeContacts();
83
+ });
84
+ this._isContactsOpen = true;
85
+ }
86
+ /** Toggles the contacts between the open and closed states. */
87
+ toggleContacts() {
88
+ if (this._isContactsOpen) {
89
+ this.closeContacts();
90
+ }
91
+ else {
92
+ this.openContacts();
93
+ }
94
+ }
95
+ /** Close the associated contacts */
96
+ closeContacts() {
97
+ if (!this._overlayRef || !this._isContactsOpen) {
98
+ return;
99
+ }
100
+ this._outsideClickDispatcher.remove(this._overlayRef);
101
+ this._overlayRef.detach();
102
+ this._restoreFocus();
103
+ this._isContactsOpen = false;
104
+ }
105
+ /** Handles key presses on the trigger. */
106
+ _handleKeydown(event) {
107
+ if (event.key === 'Enter') {
108
+ event.preventDefault();
109
+ this.toggleContacts();
110
+ }
111
+ }
112
+ /** Handles click events on the trigger. */
113
+ _handleClick() {
114
+ this.toggleContacts();
115
+ }
116
+ /**
117
+ * Restores focus to the element that was focused before the contacts was open.
118
+ */
119
+ _restoreFocus(origin = 'program', options) {
120
+ if (this._focusMonitor) {
121
+ this._focusMonitor.focusVia(this._element, origin, options);
122
+ }
123
+ else {
124
+ this._element.nativeElement.focus(options);
125
+ }
126
+ }
127
+ /**
128
+ * Returns strategy for positioning the overlay for desktop devices:
129
+ */
130
+ _desktopPositionStrategy() {
131
+ const positionStrategy = this._overlay
132
+ .position()
133
+ .flexibleConnectedTo(this._element)
134
+ .withLockedPosition()
135
+ .withTransformOriginOn('.granite-contacts')
136
+ .withPush(false);
137
+ this._setPosition(positionStrategy);
138
+ return positionStrategy;
139
+ }
140
+ /**
141
+ * Sets the appropriate positions on a position strategy
142
+ * so the overlay connects with the trigger correctly.
143
+ * @param positionStrategy Strategy whose position to update.
144
+ */
145
+ _setPosition(positionStrategy) {
146
+ const [originX, originFallbackX] = this.contacts.xPosition === 'before'
147
+ ? ['end', 'start']
148
+ : ['start', 'end'];
149
+ const [overlayY, overlayFallbackY] = this.contacts.yPosition === 'above'
150
+ ? ['bottom', 'top']
151
+ : ['top', 'bottom'];
152
+ let [originY, originFallbackY] = [overlayY, overlayFallbackY];
153
+ const [overlayX, overlayFallbackX] = [originX, originFallbackX];
154
+ const offsetY = 0;
155
+ originY = overlayY === 'top' ? 'bottom' : 'top';
156
+ originFallbackY = overlayFallbackY === 'top' ? 'bottom' : 'top';
157
+ positionStrategy.withPositions([
158
+ { originX, originY, overlayX, overlayY, offsetY },
159
+ {
160
+ originX: originFallbackX,
161
+ originY,
162
+ overlayX: overlayFallbackX,
163
+ overlayY,
164
+ offsetY,
165
+ },
166
+ {
167
+ originX,
168
+ originY: originFallbackY,
169
+ overlayX,
170
+ overlayY: overlayFallbackY,
171
+ offsetY: -offsetY,
172
+ },
173
+ {
174
+ originX: originFallbackX,
175
+ originY: originFallbackY,
176
+ overlayX: overlayFallbackX,
177
+ overlayY: overlayFallbackY,
178
+ offsetY: -offsetY,
179
+ },
180
+ ]);
181
+ }
182
+ /**
183
+ * Returns strategy for positioning the overlay depending on what type of
184
+ * device the contacts is being shown on
185
+ */
186
+ _positionStrategy() {
187
+ if (this._clientOutput?.device !== 'touch') {
188
+ return this._desktopPositionStrategy();
189
+ }
190
+ return this._touchPositionStrategy();
191
+ }
192
+ /**
193
+ * Returns strategy for positioning the overlay for touch devices:
194
+ * Place centered in the screen.
195
+ */
196
+ _touchPositionStrategy() {
197
+ return this._overlay.position().global();
198
+ }
199
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteContactsTriggerForDirective, deps: [{ token: i1.Overlay }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i1.OverlayOutsideClickDispatcher }, { token: GRANITE_CLIENT_INPUT, optional: true }, { token: GRANITE_CLIENT_OUTPUT, optional: true }, { token: i2.Directionality, optional: true }, { token: i3.FocusMonitor }], target: i0.ɵɵFactoryTarget.Directive }); }
200
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: GraniteContactsTriggerForDirective, selector: "[graniteContactsTriggerFor]", inputs: { contacts: ["graniteContactsTriggerFor", "contacts"] }, host: { attributes: { "aria-haspopup": "true" }, listeners: { "keydown": "_handleKeydown($event)", "click": "_handleClick($event)" }, properties: { "attr.aria-expanded": "_isContactsOpen || null", "attr.aria-controls": "_isContactsOpen ? contacts.panelId : null" }, classAttribute: "granite-contacts-trigger" }, ngImport: i0 }); }
201
+ }
202
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteContactsTriggerForDirective, decorators: [{
203
+ type: Directive,
204
+ args: [{
205
+ selector: `[graniteContactsTriggerFor]`,
206
+ host: {
207
+ class: 'granite-contacts-trigger',
208
+ 'aria-haspopup': 'true',
209
+ '[attr.aria-expanded]': '_isContactsOpen || null',
210
+ '[attr.aria-controls]': '_isContactsOpen ? contacts.panelId : null',
211
+ '(keydown)': '_handleKeydown($event)',
212
+ '(click)': '_handleClick($event)',
213
+ },
214
+ }]
215
+ }], ctorParameters: () => [{ type: i1.Overlay }, { type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i1.OverlayOutsideClickDispatcher }, { type: undefined, decorators: [{
216
+ type: Inject,
217
+ args: [GRANITE_CLIENT_INPUT]
218
+ }, {
219
+ type: Optional
220
+ }] }, { type: undefined, decorators: [{
221
+ type: Inject,
222
+ args: [GRANITE_CLIENT_OUTPUT]
223
+ }, {
224
+ type: Optional
225
+ }] }, { type: i2.Directionality, decorators: [{
226
+ type: Optional
227
+ }] }, { type: i3.FocusMonitor }], propDecorators: { contacts: [{
228
+ type: Input,
229
+ args: ['graniteContactsTriggerFor']
230
+ }] } });
231
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdHMtdHJpZ2dlci1mb3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9jb250YWN0cy9jb250YWN0cy10cmlnZ2VyL2NvbnRhY3RzLXRyaWdnZXItZm9yLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUVMLFFBQVEsRUFDUixnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFlBQVksRUFBZSxNQUFNLG1CQUFtQixDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBR0wsT0FBTyxFQUNQLGFBQWEsRUFDYiw2QkFBNkIsR0FJOUIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRSxPQUFPLEVBR0wsb0JBQW9CLEVBQ3BCLHFCQUFxQixHQUN0QixNQUFNLCtCQUErQixDQUFDOzs7OztBQWF2QyxNQUFNLE9BQU8sa0NBQWtDO0lBZTdDLFlBQ1UsUUFBaUIsRUFDakIsUUFBaUMsRUFDakMsaUJBQW1DLEVBQ25DLHVCQUFzRDtJQUU5RCxzQ0FBc0M7SUFHL0IsWUFBa0M7SUFFekMsdUNBQXVDO0lBR2hDLGFBQW9DLEVBR25DLElBQW9CLEVBRXBCLGFBQTJCO1FBbEIzQixhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLGFBQVEsR0FBUixRQUFRLENBQXlCO1FBQ2pDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7UUFD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LGdCQUFnQjtnQkFDMUIsT0FBTyxFQUFFLENBQUMsT0FBTzthQUNsQjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSyxpQkFBaUI7UUFDdkIsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLE1BQU0sS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUMzQyxPQUFPLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ3pDLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7O09BR0c7SUFDSyxzQkFBc0I7UUFDNUIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzNDLENBQUM7K0dBOU9VLGtDQUFrQyxnSkFzQm5DLG9CQUFvQiw2QkFLcEIscUJBQXFCO21HQTNCcEIsa0NBQWtDOzs0RkFBbEMsa0NBQWtDO2tCQVg5QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw2QkFBNkI7b0JBQ3ZDLElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUsMEJBQTBCO3dCQUNqQyxlQUFlLEVBQUUsTUFBTTt3QkFDdkIsc0JBQXNCLEVBQUUseUJBQXlCO3dCQUNqRCxzQkFBc0IsRUFBRSwyQ0FBMkM7d0JBQ25FLFdBQVcsRUFBRSx3QkFBd0I7d0JBQ3JDLFNBQVMsRUFBRSxzQkFBc0I7cUJBQ2xDO2lCQUNGOzswQkF1QkksTUFBTTsyQkFBQyxvQkFBb0I7OzBCQUMzQixRQUFROzswQkFJUixNQUFNOzJCQUFDLHFCQUFxQjs7MEJBQzVCLFFBQVE7OzBCQUdSLFFBQVE7b0VBMUJYLFFBQVE7c0JBRFAsS0FBSzt1QkFBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3B0aW9uYWwsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGb2N1c01vbml0b3IsIEZvY3VzT3JpZ2luIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgRGlyZWN0aW9uYWxpdHkgfSBmcm9tICdAYW5ndWxhci9jZGsvYmlkaSc7XG5pbXBvcnQge1xuICBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3ksXG4gIEhvcml6b250YWxDb25uZWN0aW9uUG9zLFxuICBPdmVybGF5LFxuICBPdmVybGF5Q29uZmlnLFxuICBPdmVybGF5T3V0c2lkZUNsaWNrRGlzcGF0Y2hlcixcbiAgT3ZlcmxheVJlZixcbiAgUG9zaXRpb25TdHJhdGVneSxcbiAgVmVydGljYWxDb25uZWN0aW9uUG9zLFxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEdyYW5pdGVDb250YWN0c0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbnRhY3RzLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBDbGllbnRJbnB1dEludGVyZmFjZSxcbiAgQ2xpZW50T3V0cHV0SW50ZXJmYWNlLFxuICBHUkFOSVRFX0NMSUVOVF9JTlBVVCxcbiAgR1JBTklURV9DTElFTlRfT1VUUFVULFxufSBmcm9tICcuLi8uLi9jb3JlL2NsaWVudC1lbnZpcm9ubWVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogYFtncmFuaXRlQ29udGFjdHNUcmlnZ2VyRm9yXWAsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2dyYW5pdGUtY29udGFjdHMtdHJpZ2dlcicsXG4gICAgJ2FyaWEtaGFzcG9wdXAnOiAndHJ1ZScsXG4gICAgJ1thdHRyLmFyaWEtZXhwYW5kZWRdJzogJ19pc0NvbnRhY3RzT3BlbiB8fCBudWxsJyxcbiAgICAnW2F0dHIuYXJpYS1jb250cm9sc10nOiAnX2lzQ29udGFjdHNPcGVuID8gY29udGFjdHMucGFuZWxJZCA6IG51bGwnLFxuICAgICcoa2V5ZG93biknOiAnX2hhbmRsZUtleWRvd24oJGV2ZW50KScsXG4gICAgJyhjbGljayknOiAnX2hhbmRsZUNsaWNrKCRldmVudCknLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBHcmFuaXRlQ29udGFjdHNUcmlnZ2VyRm9yRGlyZWN0aXZlXG4gIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95XG57XG4gIC8qKiBSZWZlcmVuY2VzIHRoZSBjb250YWN0cyBpbnN0YW5jZSB0aGF0IHRoZSB0cmlnZ2VyIGlzIGFzc29jaWF0ZWQgd2l0aC4gKi9cbiAgQElucHV0KCdncmFuaXRlQ29udGFjdHNUcmlnZ2VyRm9yJylcbiAgY29udGFjdHM6IEdyYW5pdGVDb250YWN0c0NvbXBvbmVudDtcblxuICAvKiogV2hldGhlciB0aGUgYXNzb2NpYXRlZCBjb250YWN0cyBpcyBvcGVuICovXG4gIF9pc0NvbnRhY3RzT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2NvbnRhY3RzQ2xvc2VTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG5cbiAgcHJpdmF0ZSBfcG9ydGFsOiBUZW1wbGF0ZVBvcnRhbCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIF9lbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIF92aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgX291dHNpZGVDbGlja0Rpc3BhdGNoZXI6IE92ZXJsYXlPdXRzaWRlQ2xpY2tEaXNwYXRjaGVyLFxuXG4gICAgLyoqIENsaWVudCBpbnB1dCBkZXZpY2UgaW5mb3JtYXRpb24gKi9cbiAgICBASW5qZWN0KEdSQU5JVEVfQ0xJRU5UX0lOUFVUKVxuICAgIEBPcHRpb25hbCgpXG4gICAgcHVibGljIF9jbGllbnRJbnB1dDogQ2xpZW50SW5wdXRJbnRlcmZhY2UsXG5cbiAgICAvKiogQ2xpZW50IG91dHB1dCBkZXZpY2UgaW5mb3JtYXRpb24gKi9cbiAgICBASW5qZWN0KEdSQU5JVEVfQ0xJRU5UX09VVFBVVClcbiAgICBAT3B0aW9uYWwoKVxuICAgIHB1YmxpYyBfY2xpZW50T3V0cHV0OiBDbGllbnRPdXRwdXRJbnRlcmZhY2UsXG5cbiAgICBAT3B0aW9uYWwoKVxuICAgIHByaXZhdGUgX2RpcjogRGlyZWN0aW9uYWxpdHksXG5cbiAgICBwcml2YXRlIF9mb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvclxuICApIHt9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IHNlbGVjdGVkQ29udGFjdCA9IHRoaXMuY29udGFjdHMuc2VsZWN0ZWRDb250YWN0O1xuXG4gICAgdGhpcy5fY29udGFjdHNDbG9zZVN1YnNjcmlwdGlvbiA9IHNlbGVjdGVkQ29udGFjdC5zdWJzY3JpYmUoKCkgPT5cbiAgICAgIHRoaXMuY2xvc2VDb250YWN0cygpXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9vdmVybGF5UmVmKSB7XG4gICAgICB0aGlzLl9vdmVybGF5UmVmLmRpc3Bvc2UoKTtcbiAgICAgIHRoaXMuX292ZXJsYXlSZWYgPSBudWxsO1xuICAgIH1cbiAgICB0aGlzLl9jb250YWN0c0Nsb3NlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lzQ29udGFjdHNPcGVuO1xuICB9XG5cbiAgb3BlbkNvbnRhY3RzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9pc0NvbnRhY3RzT3Blbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuY29udGFjdHMuZGlyZWN0aW9uID0gdGhpcy5fZGlyLnZhbHVlID09PSAncnRsJyA/ICdydGwnIDogJ2x0cic7XG4gICAgdGhpcy5jb250YWN0cy5jbGllbnRJbnB1dCA9IHRoaXMuX2NsaWVudElucHV0O1xuICAgIHRoaXMuY29udGFjdHMuY2xpZW50T3V0cHV0ID0gdGhpcy5fY2xpZW50T3V0cHV0O1xuXG4gICAgY29uc3QgcGFuZWxDbGFzczogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAodGhpcy5fY2xpZW50T3V0cHV0Py5kZXZpY2UgPT09ICd0b3VjaCcpIHtcbiAgICAgIHBhbmVsQ2xhc3MucHVzaCgnZ3Jhbml0ZS1vdmVybGF5LXBhbmUtY2VudGVyJyk7XG4gICAgfVxuXG4gICAgY29uc3Qgc2Nyb2xsU3RyYXRlZ3kgPVxuICAgICAgdGhpcy5fY2xpZW50T3V0cHV0Py5kZXZpY2UgIT09ICd0b3VjaCdcbiAgICAgICAgPyB0aGlzLl9vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbigpXG4gICAgICAgIDogdGhpcy5fb3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLmJsb2NrKCk7XG5cbiAgICBjb25zdCBoYXNCYWNrZHJvcCA9IHRoaXMuX2NsaWVudE91dHB1dD8uZGV2aWNlID09PSAndG91Y2gnO1xuXG4gICAgaWYgKCF0aGlzLl9vdmVybGF5UmVmKSB7XG4gICAgICBjb25zdCBjb25maWcgPSBuZXcgT3ZlcmxheUNvbmZpZyh7XG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMuX3Bvc2l0aW9uU3RyYXRlZ3koKSxcbiAgICAgICAgYmFja2Ryb3BDbGFzczogJ2dyYW5pdGUtb3ZlcmxheS1kYXJrLWdsYXNzLWJhY2tkcm9wJyxcbiAgICAgICAgc2Nyb2xsU3RyYXRlZ3ksXG4gICAgICAgIGRpcmVjdGlvbjogdGhpcy5fZGlyLFxuICAgICAgICBwYW5lbENsYXNzLFxuICAgICAgICBoYXNCYWNrZHJvcCxcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLl9vdmVybGF5UmVmID0gdGhpcy5fb3ZlcmxheS5jcmVhdGUoY29uZmlnKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICAhdGhpcy5fcG9ydGFsIHx8XG4gICAgICB0aGlzLl9wb3J0YWwudGVtcGxhdGVSZWYgIT09IHRoaXMuY29udGFjdHMudGVtcGxhdGVSZWZcbiAgICApIHtcbiAgICAgIHRoaXMuX3BvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbChcbiAgICAgICAgdGhpcy5jb250YWN0cy50ZW1wbGF0ZVJlZixcbiAgICAgICAgdGhpcy5fdmlld0NvbnRhaW5lclJlZlxuICAgICAgKTtcbiAgICB9XG4gICAgLy8gQXR0YWNoIHBvcnRhbCB0byBvdmVybGF5IHJlZiAod2hpY2ggaXMgYSBwb3J0YWwgb3V0bGV0KVxuICAgIHRoaXMuX292ZXJsYXlSZWYuYXR0YWNoKHRoaXMuX3BvcnRhbCk7XG4gICAgdGhpcy5fb3V0c2lkZUNsaWNrRGlzcGF0Y2hlci5hZGQodGhpcy5fb3ZlcmxheVJlZik7XG4gICAgdGhpcy5fb3ZlcmxheVJlZi5vdXRzaWRlUG9pbnRlckV2ZW50cygpLnN1YnNjcmliZSgoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgdGhpcy5jbG9zZUNvbnRhY3RzKCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9pc0NvbnRhY3RzT3BlbiA9IHRydWU7XG4gIH1cblxuICAvKiogVG9nZ2xlcyB0aGUgY29udGFjdHMgYmV0d2VlbiB0aGUgb3BlbiBhbmQgY2xvc2VkIHN0YXRlcy4gKi9cbiAgdG9nZ2xlQ29udGFjdHMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2lzQ29udGFjdHNPcGVuKSB7XG4gICAgICB0aGlzLmNsb3NlQ29udGFjdHMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vcGVuQ29udGFjdHMoKTtcbiAgICB9XG4gIH1cblxuICAvKiogQ2xvc2UgdGhlIGFzc29jaWF0ZWQgY29udGFjdHMgKi9cbiAgY2xvc2VDb250YWN0cygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX292ZXJsYXlSZWYgfHwgIXRoaXMuX2lzQ29udGFjdHNPcGVuKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fb3V0c2lkZUNsaWNrRGlzcGF0Y2hlci5yZW1vdmUodGhpcy5fb3ZlcmxheVJlZik7XG4gICAgdGhpcy5fb3ZlcmxheVJlZi5kZXRhY2goKTtcblxuICAgIHRoaXMuX3Jlc3RvcmVGb2N1cygpO1xuICAgIHRoaXMuX2lzQ29udGFjdHNPcGVuID0gZmFsc2U7XG4gIH1cblxuICAvKiogSGFuZGxlcyBrZXkgcHJlc3NlcyBvbiB0aGUgdHJpZ2dlci4gKi9cbiAgX2hhbmRsZUtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy50b2dnbGVDb250YWN0cygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBIYW5kbGVzIGNsaWNrIGV2ZW50cyBvbiB0aGUgdHJpZ2dlci4gKi9cbiAgX2hhbmRsZUNsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMudG9nZ2xlQ29udGFjdHMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXN0b3JlcyBmb2N1cyB0byB0aGUgZWxlbWVudCB0aGF0IHdhcyBmb2N1c2VkIGJlZm9yZSB0aGUgY29udGFjdHMgd2FzIG9wZW4uXG4gICAqL1xuICBfcmVzdG9yZUZvY3VzKG9yaWdpbjogRm9jdXNPcmlnaW4gPSAncHJvZ3JhbScsIG9wdGlvbnM/OiBGb2N1c09wdGlvbnMpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZm9jdXNNb25pdG9yKSB7XG4gICAgICB0aGlzLl9mb2N1c01vbml0b3IuZm9jdXNWaWEodGhpcy5fZWxlbWVudCwgb3JpZ2luLCBvcHRpb25zKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50LmZvY3VzKG9wdGlvbnMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHN0cmF0ZWd5IGZvciBwb3NpdGlvbmluZyB0aGUgb3ZlcmxheSBmb3IgZGVza3RvcCBkZXZpY2VzOlxuICAgKi9cbiAgcHJpdmF0ZSBfZGVza3RvcFBvc2l0aW9uU3RyYXRlZ3koKTogUG9zaXRpb25TdHJhdGVneSB7XG4gICAgY29uc3QgcG9zaXRpb25TdHJhdGVneTogRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fb3ZlcmxheVxuICAgICAgLnBvc2l0aW9uKClcbiAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRoaXMuX2VsZW1lbnQpXG4gICAgICAud2l0aExvY2tlZFBvc2l0aW9uKClcbiAgICAgIC53aXRoVHJhbnNmb3JtT3JpZ2luT24oJy5ncmFuaXRlLWNvbnRhY3RzJylcbiAgICAgIC53aXRoUHVzaChmYWxzZSk7XG5cbiAgICB0aGlzLl9zZXRQb3NpdGlvbihwb3NpdGlvblN0cmF0ZWd5KTtcbiAgICByZXR1cm4gcG9zaXRpb25TdHJhdGVneTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBhcHByb3ByaWF0ZSBwb3NpdGlvbnMgb24gYSBwb3NpdGlvbiBzdHJhdGVneVxuICAgKiBzbyB0aGUgb3ZlcmxheSBjb25uZWN0cyB3aXRoIHRoZSB0cmlnZ2VyIGNvcnJlY3RseS5cbiAgICogQHBhcmFtIHBvc2l0aW9uU3RyYXRlZ3kgU3RyYXRlZ3kgd2hvc2UgcG9zaXRpb24gdG8gdXBkYXRlLlxuICAgKi9cbiAgcHJpdmF0ZSBfc2V0UG9zaXRpb24ocG9zaXRpb25TdHJhdGVneTogRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5KSB7XG4gICAgY29uc3QgW29yaWdpblgsIG9yaWdpbkZhbGxiYWNrWF06IEhvcml6b250YWxDb25uZWN0aW9uUG9zW10gPVxuICAgICAgdGhpcy5jb250YWN0cy54UG9zaXRpb24gPT09ICdiZWZvcmUnXG4gICAgICAgID8gWydlbmQnLCAnc3RhcnQnXVxuICAgICAgICA6IFsnc3RhcnQnLCAnZW5kJ107XG5cbiAgICBjb25zdCBbb3ZlcmxheVksIG92ZXJsYXlGYWxsYmFja1ldOiBWZXJ0aWNhbENvbm5lY3Rpb25Qb3NbXSA9XG4gICAgICB0aGlzLmNvbnRhY3RzLnlQb3NpdGlvbiA9PT0gJ2Fib3ZlJ1xuICAgICAgICA/IFsnYm90dG9tJywgJ3RvcCddXG4gICAgICAgIDogWyd0b3AnLCAnYm90dG9tJ107XG5cbiAgICBsZXQgW29yaWdpblksIG9yaWdpbkZhbGxiYWNrWV0gPSBbb3ZlcmxheVksIG92ZXJsYXlGYWxsYmFja1ldO1xuICAgIGNvbnN0IFtvdmVybGF5WCwgb3ZlcmxheUZhbGxiYWNrWF0gPSBbb3JpZ2luWCwgb3JpZ2luRmFsbGJhY2tYXTtcbiAgICBjb25zdCBvZmZzZXRZID0gMDtcblxuICAgIG9yaWdpblkgPSBvdmVybGF5WSA9PT0gJ3RvcCcgPyAnYm90dG9tJyA6ICd0b3AnO1xuICAgIG9yaWdpbkZhbGxiYWNrWSA9IG92ZXJsYXlGYWxsYmFja1kgPT09ICd0b3AnID8gJ2JvdHRvbScgOiAndG9wJztcblxuICAgIHBvc2l0aW9uU3RyYXRlZ3kud2l0aFBvc2l0aW9ucyhbXG4gICAgICB7IG9yaWdpblgsIG9yaWdpblksIG92ZXJsYXlYLCBvdmVybGF5WSwgb2Zmc2V0WSB9LFxuICAgICAge1xuICAgICAgICBvcmlnaW5YOiBvcmlnaW5GYWxsYmFja1gsXG4gICAgICAgIG9yaWdpblksXG4gICAgICAgIG92ZXJsYXlYOiBvdmVybGF5RmFsbGJhY2tYLFxuICAgICAgICBvdmVybGF5WSxcbiAgICAgICAgb2Zmc2V0WSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG9yaWdpblgsXG4gICAgICAgIG9yaWdpblk6IG9yaWdpbkZhbGxiYWNrWSxcbiAgICAgICAgb3ZlcmxheVgsXG4gICAgICAgIG92ZXJsYXlZOiBvdmVybGF5RmFsbGJhY2tZLFxuICAgICAgICBvZmZzZXRZOiAtb2Zmc2V0WSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG9yaWdpblg6IG9yaWdpbkZhbGxiYWNrWCxcbiAgICAgICAgb3JpZ2luWTogb3JpZ2luRmFsbGJhY2tZLFxuICAgICAgICBvdmVybGF5WDogb3ZlcmxheUZhbGxiYWNrWCxcbiAgICAgICAgb3ZlcmxheVk6IG92ZXJsYXlGYWxsYmFja1ksXG4gICAgICAgIG9mZnNldFk6IC1vZmZzZXRZLFxuICAgICAgfSxcbiAgICBdKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHN0cmF0ZWd5IGZvciBwb3NpdGlvbmluZyB0aGUgb3ZlcmxheSBkZXBlbmRpbmcgb24gd2hhdCB0eXBlIG9mXG4gICAqIGRldmljZSB0aGUgY29udGFjdHMgaXMgYmVpbmcgc2hvd24gb25cbiAgICovXG4gIHByaXZhdGUgX3Bvc2l0aW9uU3RyYXRlZ3koKTogUG9zaXRpb25TdHJhdGVneSB7XG4gICAgaWYgKHRoaXMuX2NsaWVudE91dHB1dD8uZGV2aWNlICE9PSAndG91Y2gnKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZGVza3RvcFBvc2l0aW9uU3RyYXRlZ3koKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuX3RvdWNoUG9zaXRpb25TdHJhdGVneSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgc3RyYXRlZ3kgZm9yIHBvc2l0aW9uaW5nIHRoZSBvdmVybGF5IGZvciB0b3VjaCBkZXZpY2VzOlxuICAgKiBQbGFjZSBjZW50ZXJlZCBpbiB0aGUgc2NyZWVuLlxuICAgKi9cbiAgcHJpdmF0ZSBfdG91Y2hQb3NpdGlvblN0cmF0ZWd5KCk6IFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgIHJldHVybiB0aGlzLl9vdmVybGF5LnBvc2l0aW9uKCkuZ2xvYmFsKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdHMuY29tcG9uZW50LnByaXZhdGUtdHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2NvbnRhY3RzL2NvbnRhY3RzLXR5cGVzL2NvbnRhY3RzLmNvbXBvbmVudC5wcml2YXRlLXR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udGFjdCwgUHJvZmlsZSB9IGZyb20gJy4vY29udGFjdHMuY29tcG9uZW50LnB1YmxpYy10eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGFjdEV4dGVuZGVkIGV4dGVuZHMgQ29udGFjdCB7XG4gIHN0YXR1c1RlbXBsYXRlPzogVGVtcGxhdGVSZWY8dW5rbm93bj47XG59XG5cbmV4cG9ydCB0eXBlIFByb2ZpbGVEYXRhID0gT21pdDxQcm9maWxlLCAnbmFtZSc+ICYge1xuICBpbml0aWFsczogc3RyaW5nO1xufTtcbiJdfQ==
@@ -0,0 +1,9 @@
1
+ export const CONTACT_DEFAULT_STATUS = {
2
+ AVAILABLE: 'Available',
3
+ AWAY: 'Away',
4
+ BE_RIGHT_BACK: 'BeRightBack',
5
+ BUSY: 'Busy',
6
+ DO_NOT_DISTURB: 'DoNotDisturb',
7
+ OFFLINE: 'Offline',
8
+ };
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdHMuY29tcG9uZW50LnB1YmxpYy10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZ3Jhbml0ZS1jb21wb25lbnRzL3NyYy9saWIvY29udGFjdHMvY29udGFjdHMtdHlwZXMvY29udGFjdHMuY29tcG9uZW50LnB1YmxpYy10eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRztJQUNwQyxTQUFTLEVBQUUsV0FBVztJQUN0QixJQUFJLEVBQUUsTUFBTTtJQUNaLGFBQWEsRUFBRSxhQUFhO0lBQzVCLElBQUksRUFBRSxNQUFNO0lBQ1osY0FBYyxFQUFFLGNBQWM7SUFDOUIsT0FBTyxFQUFFLFNBQVM7Q0FDVixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgQ29udGFjdERlZmF1bHRTdGF0dXNlcyA9XG4gICh0eXBlb2YgQ09OVEFDVF9ERUZBVUxUX1NUQVRVUylba2V5b2YgdHlwZW9mIENPTlRBQ1RfREVGQVVMVF9TVEFUVVNdO1xuXG5leHBvcnQgY29uc3QgQ09OVEFDVF9ERUZBVUxUX1NUQVRVUyA9IHtcbiAgQVZBSUxBQkxFOiAnQXZhaWxhYmxlJyxcbiAgQVdBWTogJ0F3YXknLFxuICBCRV9SSUdIVF9CQUNLOiAnQmVSaWdodEJhY2snLFxuICBCVVNZOiAnQnVzeScsXG4gIERPX05PVF9ESVNUVVJCOiAnRG9Ob3REaXN0dXJiJyxcbiAgT0ZGTElORTogJ09mZmxpbmUnLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IGludGVyZmFjZSBDb250YWN0PFQgPSB1bmtub3duPiB7XG4gIG5hbWU6IHN0cmluZztcbiAgbGFiZWw6IHN0cmluZztcbiAgaWNvbk5hbWU/OiBzdHJpbmc7XG4gIHN0YXR1cz86IENvbnRhY3REZWZhdWx0U3RhdHVzZXMgfCBzdHJpbmc7XG4gIG9wdGlvbnM/OiBDb250YWN0T3B0aW9uPFQ+W107XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgZGF0YT86IFQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0ZWRDb250YWN0PFQgPSB1bmtub3duPiB7XG4gIGNvbnRhY3Q6IENvbnRhY3RPcHRpb248VD47XG4gIHBhcmVudD86IENvbnRhY3Q8VD47XG59XG5cbmV4cG9ydCB0eXBlIENvbnRhY3RPcHRpb248VCA9IHVua25vd24+ID0gT21pdDxDb250YWN0PFQ+LCAnb3B0aW9ucyc+O1xuXG5leHBvcnQgaW50ZXJmYWNlIFByb2ZpbGUge1xuICBmaXJzdE5hbWU/OiBzdHJpbmc7XG4gIGxhc3ROYW1lPzogc3RyaW5nO1xuICBuYW1lPzogc3RyaW5nO1xuICBqb2JUaXRsZT86IHN0cmluZztcbiAgYXZhdGFyPzogc3RyaW5nO1xufVxuIl19
@@ -0,0 +1,92 @@
1
+ import { ChangeDetectionStrategy, Component, Input, Output, EventEmitter, ContentChildren, QueryList, ContentChild, ChangeDetectorRef, } from '@angular/core';
2
+ import { ContactsTriggerDataComponent } from './contacts-trigger/contacts-trigger-data';
3
+ import { GraniteCustomStatusDirective } from './custom-status.directive';
4
+ import { GraniteCustomProfileDirective } from './custom-profile.directive';
5
+ import { NamesUtilsService } from '../core/services/names-utils-service';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/common";
8
+ import * as i2 from "./contacts-profile/contacts-profile.component";
9
+ import * as i3 from "./contact-item/contact-item.component";
10
+ export class GraniteContactsComponent extends ContactsTriggerDataComponent {
11
+ constructor(cd) {
12
+ super();
13
+ this.cd = cd;
14
+ this.contacts = [];
15
+ this.defaultShow = false;
16
+ this.selectedContact = new EventEmitter();
17
+ this._contactsExtended = [];
18
+ }
19
+ ngOnChanges(changes) {
20
+ if (changes.contacts && !changes.contacts.currentValue) {
21
+ this.contacts = [];
22
+ }
23
+ if (changes.profile?.currentValue) {
24
+ const profile = changes.profile.currentValue;
25
+ this._profile = this.createProfileData(profile);
26
+ }
27
+ this.cd.markForCheck();
28
+ }
29
+ ngAfterContentChecked() {
30
+ this._contactsExtended = this.setProperCustomStatusTemplates(this._customStatuses.toArray(), this.contacts);
31
+ }
32
+ onSelectedContact(contact) {
33
+ this.selectedContact.emit(contact);
34
+ }
35
+ setProperCustomStatusTemplates(customStatusDirectives, contacts) {
36
+ return this.applyTemplates(contacts, customStatusDirectives);
37
+ }
38
+ applyTemplates(contacts, directives) {
39
+ return contacts.map((item) => {
40
+ const matchingDirective = directives.find((d) => d.graniteCustomStatus === item.status);
41
+ const result = { ...item };
42
+ if (matchingDirective) {
43
+ result.statusTemplate = matchingDirective.templateRef;
44
+ }
45
+ if (item.options) {
46
+ result.options = this.applyTemplates(item.options, directives);
47
+ }
48
+ return result;
49
+ });
50
+ }
51
+ createProfileData(profile) {
52
+ const nameData = NamesUtilsService.buildNameData({
53
+ firstName: profile.firstName,
54
+ lastName: profile.lastName,
55
+ name: profile.name,
56
+ });
57
+ return {
58
+ firstName: nameData.firstName,
59
+ lastName: nameData.lastName,
60
+ initials: nameData.initials,
61
+ jobTitle: profile.jobTitle,
62
+ avatar: profile.avatar,
63
+ };
64
+ }
65
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteContactsComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
66
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GraniteContactsComponent, selector: "granite-contacts", inputs: { contacts: "contacts", contactsClass: "contactsClass", profile: "profile", profileClass: "profileClass", defaultShow: "defaultShow" }, outputs: { selectedContact: "selectedContact" }, host: { classAttribute: "granite-contacts" }, queries: [{ propertyName: "customProfileDirective", first: true, predicate: GraniteCustomProfileDirective, descendants: true }, { propertyName: "_customStatuses", predicate: GraniteCustomStatusDirective }], exportAs: ["graniteContacts"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-template #contactsTemplate>\n <div data-fnd=\"contacts\" [class]=\"contactsClass\" class=\"granite-contact\">\n <ng-container *ngIf=\"customProfileDirective; else defaultProfile\">\n <ng-container\n *ngTemplateOutlet=\"customProfileDirective.templateRef\"\n ></ng-container>\n </ng-container>\n\n <ng-template #defaultProfile>\n <granite-contacts-profile\n data-fnd=\"default-profile\"\n [profileClass]=\"profileClass\"\n [profile]=\"_profile\"\n ></granite-contacts-profile>\n </ng-template>\n\n <ul class=\"contact-list\">\n <li *ngFor=\"let contact of _contactsExtended\">\n <granite-contact-item\n [contact]=\"contact\"\n (selectedContact)=\"onSelectedContact($event)\"\n ></granite-contact-item>\n </li>\n </ul>\n </div>\n</ng-template>\n\n<ng-container *ngIf=\"defaultShow\">\n <ng-container *ngTemplateOutlet=\"contactsTemplate\"></ng-container>\n</ng-container>\n", styles: [".granite-contact{display:inline-block;font-size:var(--granite-font-size-body);font-family:var(--granite-font-family-default);color:var(--granite-color-text-weak);height:fit-content;min-width:10rem;max-width:20rem;padding:var(--granite-spacing-16);box-shadow:var(--granite-shadow-popover);background:var(--granite-color-background-variant)}.granite-contact .contact-list{display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;align-items:flex-start;gap:var(--granite-spacing-8);list-style-type:none;padding:0;margin:0}\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: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.GraniteContactsProfileComponent, selector: "granite-contacts-profile", inputs: ["profile", "profileClass"] }, { kind: "component", type: i3.GraniteContactItemComponent, selector: "granite-contact-item", inputs: ["contact"], outputs: ["selectedContact"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
67
+ }
68
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteContactsComponent, decorators: [{
69
+ type: Component,
70
+ args: [{ selector: 'granite-contacts', exportAs: 'graniteContacts', host: {
71
+ class: 'granite-contacts',
72
+ }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #contactsTemplate>\n <div data-fnd=\"contacts\" [class]=\"contactsClass\" class=\"granite-contact\">\n <ng-container *ngIf=\"customProfileDirective; else defaultProfile\">\n <ng-container\n *ngTemplateOutlet=\"customProfileDirective.templateRef\"\n ></ng-container>\n </ng-container>\n\n <ng-template #defaultProfile>\n <granite-contacts-profile\n data-fnd=\"default-profile\"\n [profileClass]=\"profileClass\"\n [profile]=\"_profile\"\n ></granite-contacts-profile>\n </ng-template>\n\n <ul class=\"contact-list\">\n <li *ngFor=\"let contact of _contactsExtended\">\n <granite-contact-item\n [contact]=\"contact\"\n (selectedContact)=\"onSelectedContact($event)\"\n ></granite-contact-item>\n </li>\n </ul>\n </div>\n</ng-template>\n\n<ng-container *ngIf=\"defaultShow\">\n <ng-container *ngTemplateOutlet=\"contactsTemplate\"></ng-container>\n</ng-container>\n", styles: [".granite-contact{display:inline-block;font-size:var(--granite-font-size-body);font-family:var(--granite-font-family-default);color:var(--granite-color-text-weak);height:fit-content;min-width:10rem;max-width:20rem;padding:var(--granite-spacing-16);box-shadow:var(--granite-shadow-popover);background:var(--granite-color-background-variant)}.granite-contact .contact-list{display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;align-items:flex-start;gap:var(--granite-spacing-8);list-style-type:none;padding:0;margin:0}\n"] }]
73
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { contacts: [{
74
+ type: Input
75
+ }], contactsClass: [{
76
+ type: Input
77
+ }], profile: [{
78
+ type: Input
79
+ }], profileClass: [{
80
+ type: Input
81
+ }], defaultShow: [{
82
+ type: Input
83
+ }], selectedContact: [{
84
+ type: Output
85
+ }], _customStatuses: [{
86
+ type: ContentChildren,
87
+ args: [GraniteCustomStatusDirective]
88
+ }], customProfileDirective: [{
89
+ type: ContentChild,
90
+ args: [GraniteCustomProfileDirective]
91
+ }] } });
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9jb250YWN0cy9jb250YWN0cy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2NvbnRhY3RzL2NvbnRhY3RzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNaLGVBQWUsRUFDZixTQUFTLEVBRVQsWUFBWSxFQUdaLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQU12QixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUN4RixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUt6RSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7Ozs7QUFZekUsTUFBTSxPQUFPLHdCQUNYLFNBQVEsNEJBQTRCO0lBb0JwQyxZQUFvQixFQUFxQjtRQUN2QyxLQUFLLEVBQUUsQ0FBQztRQURVLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBakJoQyxhQUFRLEdBQWMsRUFBRSxDQUFDO1FBSXpCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRVYsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQVF6RSxzQkFBaUIsR0FBc0IsRUFBRSxDQUFDO0lBSzFDLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN2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RGQsZUFBZTt1QkFBQyw0QkFBNEI7Z0JBSTdDLHNCQUFzQjtzQkFEckIsWUFBWTt1QkFBQyw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgUXVlcnlMaXN0LFxuICBBZnRlckNvbnRlbnRDaGVja2VkLFxuICBDb250ZW50Q2hpbGQsXG4gIE9uQ2hhbmdlcyxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ29udGFjdCxcbiAgUHJvZmlsZSxcbiAgU2VsZWN0ZWRDb250YWN0LFxufSBmcm9tICcuL2NvbnRhY3RzLXR5cGVzL2NvbnRhY3RzLmNvbXBvbmVudC5wdWJsaWMtdHlwZXMnO1xuaW1wb3J0IHsgQ29udGFjdHNUcmlnZ2VyRGF0YUNvbXBvbmVudCB9IGZyb20gJy4vY29udGFjdHMtdHJpZ2dlci9jb250YWN0cy10cmlnZ2VyLWRhdGEnO1xuaW1wb3J0IHsgR3Jhbml0ZUN1c3RvbVN0YXR1c0RpcmVjdGl2ZSB9IGZyb20gJy4vY3VzdG9tLXN0YXR1cy5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgQ29udGFjdEV4dGVuZGVkLFxuICBQcm9maWxlRGF0YSxcbn0gZnJvbSAnLi9jb250YWN0cy10eXBlcy9jb250YWN0cy5jb21wb25lbnQucHJpdmF0ZS10eXBlcyc7XG5pbXBvcnQgeyBHcmFuaXRlQ3VzdG9tUHJvZmlsZURpcmVjdGl2ZSB9IGZyb20gJy4vY3VzdG9tLXByb2ZpbGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IE5hbWVzVXRpbHNTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9zZXJ2aWNlcy9uYW1lcy11dGlscy1zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ3Jhbml0ZS1jb250YWN0cycsXG4gIGV4cG9ydEFzOiAnZ3Jhbml0ZUNvbnRhY3RzJyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZ3Jhbml0ZS1jb250YWN0cycsXG4gIH0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jb250YWN0cy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbnRhY3RzLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFuaXRlQ29udGFjdHNDb21wb25lbnRcbiAgZXh0ZW5kcyBDb250YWN0c1RyaWdnZXJEYXRhQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRDaGVja2VkXG57XG4gIEBJbnB1dCgpIGNvbnRhY3RzOiBDb250YWN0W10gPSBbXTtcbiAgQElucHV0KCkgY29udGFjdHNDbGFzczogc3RyaW5nO1xuICBASW5wdXQoKSBwcm9maWxlOiBQcm9maWxlIHwgdW5rbm93bjtcbiAgQElucHV0KCkgcHJvZmlsZUNsYXNzOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRlZmF1bHRTaG93ID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNlbGVjdGVkQ29udGFjdCA9IG5ldyBFdmVudEVtaXR0ZXI8U2VsZWN0ZWRDb250YWN0PigpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oR3Jhbml0ZUN1c3RvbVN0YXR1c0RpcmVjdGl2ZSlcbiAgX2N1c3RvbVN0YXR1c2VzOiBRdWVyeUxpc3Q8R3Jhbml0ZUN1c3RvbVN0YXR1c0RpcmVjdGl2ZT47XG5cbiAgQENvbnRlbnRDaGlsZChHcmFuaXRlQ3VzdG9tUHJvZmlsZURpcmVjdGl2ZSlcbiAgY3VzdG9tUHJvZmlsZURpcmVjdGl2ZTogR3Jhbml0ZUN1c3RvbVByb2ZpbGVEaXJlY3RpdmU7XG5cbiAgX2NvbnRhY3RzRXh0ZW5kZWQ6IENvbnRhY3RFeHRlbmRlZFtdID0gW107XG4gIF9wcm9maWxlOiBQcm9maWxlRGF0YTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXMuY29udGFjdHMgJiYgIWNoYW5nZXMuY29udGFjdHMuY3VycmVudFZhbHVlKSB7XG4gICAgICB0aGlzLmNvbnRhY3RzID0gW107XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXMucHJvZmlsZT8uY3VycmVudFZhbHVlKSB7XG4gICAgICBjb25zdCBwcm9maWxlID0gY2hhbmdlcy5wcm9maWxlLmN1cnJlbnRWYWx1ZSBhcyBQcm9maWxlO1xuICAgICAgdGhpcy5fcHJvZmlsZSA9IHRoaXMuY3JlYXRlUHJvZmlsZURhdGEocHJvZmlsZSk7XG4gICAgfVxuICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudENoZWNrZWQoKTogdm9pZCB7XG4gICAgdGhpcy5fY29udGFjdHNFeHRlbmRlZCA9IHRoaXMuc2V0UHJvcGVyQ3VzdG9tU3RhdHVzVGVtcGxhdGVzKFxuICAgICAgdGhpcy5fY3VzdG9tU3RhdHVzZXMudG9BcnJheSgpLFxuICAgICAgdGhpcy5jb250YWN0c1xuICAgICk7XG4gIH1cblxuICBvblNlbGVjdGVkQ29udGFjdChjb250YWN0OiBTZWxlY3RlZENvbnRhY3QpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkQ29udGFjdC5lbWl0KGNvbnRhY3QpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRQcm9wZXJDdXN0b21TdGF0dXNUZW1wbGF0ZXMoXG4gICAgY3VzdG9tU3RhdHVzRGlyZWN0aXZlczogR3Jhbml0ZUN1c3RvbVN0YXR1c0RpcmVjdGl2ZVtdLFxuICAgIGNvbnRhY3RzOiBDb250YWN0W11cbiAgKTogQ29udGFjdEV4dGVuZGVkW10ge1xuICAgIHJldHVybiB0aGlzLmFwcGx5VGVtcGxhdGVzKGNvbnRhY3RzLCBjdXN0b21TdGF0dXNEaXJlY3RpdmVzKTtcbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlUZW1wbGF0ZXMoXG4gICAgY29udGFjdHM6IENvbnRhY3RbXSB8IENvbnRhY3RFeHRlbmRlZFtdLFxuICAgIGRpcmVjdGl2ZXM6IEdyYW5pdGVDdXN0b21TdGF0dXNEaXJlY3RpdmVbXVxuICApOiBDb250YWN0RXh0ZW5kZWRbXSB7XG4gICAgcmV0dXJuIGNvbnRhY3RzLm1hcCgoaXRlbSkgPT4ge1xuICAgICAgY29uc3QgbWF0Y2hpbmdEaXJlY3RpdmUgPSBkaXJlY3RpdmVzLmZpbmQoXG4gICAgICAgIChkKSA9PiBkLmdyYW5pdGVDdXN0b21TdGF0dXMgPT09IGl0ZW0uc3RhdHVzXG4gICAgICApO1xuXG4gICAgICBjb25zdCByZXN1bHQgPSB7IC4uLml0ZW0gfTtcblxuICAgICAgaWYgKG1hdGNoaW5nRGlyZWN0aXZlKSB7XG4gICAgICAgIHJlc3VsdC5zdGF0dXNUZW1wbGF0ZSA9IG1hdGNoaW5nRGlyZWN0aXZlLnRlbXBsYXRlUmVmO1xuICAgICAgfVxuXG4gICAgICBpZiAoaXRlbS5vcHRpb25zKSB7XG4gICAgICAgIHJlc3VsdC5vcHRpb25zID0gdGhpcy5hcHBseVRlbXBsYXRlcyhpdGVtLm9wdGlvbnMsIGRpcmVjdGl2ZXMpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVQcm9maWxlRGF0YShwcm9maWxlOiBQcm9maWxlKTogUHJvZmlsZURhdGEge1xuICAgIGNvbnN0IG5hbWVEYXRhID0gTmFtZXNVdGlsc1NlcnZpY2UuYnVpbGROYW1lRGF0YSh7XG4gICAgICBmaXJzdE5hbWU6IHByb2ZpbGUuZmlyc3ROYW1lLFxuICAgICAgbGFzdE5hbWU6IHByb2ZpbGUubGFzdE5hbWUsXG4gICAgICBuYW1lOiBwcm9maWxlLm5hbWUsXG4gICAgfSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgZmlyc3ROYW1lOiBuYW1lRGF0YS5maXJzdE5hbWUsXG4gICAgICBsYXN0TmFtZTogbmFtZURhdGEubGFzdE5hbWUsXG4gICAgICBpbml0aWFsczogbmFtZURhdGEuaW5pdGlhbHMsXG4gICAgICBqb2JUaXRsZTogcHJvZmlsZS5qb2JUaXRsZSxcbiAgICAgIGF2YXRhcjogcHJvZmlsZS5hdmF0YXIsXG4gICAgfTtcbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlICNjb250YWN0c1RlbXBsYXRlPlxuICA8ZGl2IGRhdGEtZm5kPVwiY29udGFjdHNcIiBbY2xhc3NdPVwiY29udGFjdHNDbGFzc1wiIGNsYXNzPVwiZ3Jhbml0ZS1jb250YWN0XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImN1c3RvbVByb2ZpbGVEaXJlY3RpdmU7IGVsc2UgZGVmYXVsdFByb2ZpbGVcIj5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjdXN0b21Qcm9maWxlRGlyZWN0aXZlLnRlbXBsYXRlUmVmXCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdFByb2ZpbGU+XG4gICAgICA8Z3Jhbml0ZS1jb250YWN0cy1wcm9maWxlXG4gICAgICAgIGRhdGEtZm5kPVwiZGVmYXVsdC1wcm9maWxlXCJcbiAgICAgICAgW3Byb2ZpbGVDbGFzc109XCJwcm9maWxlQ2xhc3NcIlxuICAgICAgICBbcHJvZmlsZV09XCJfcHJvZmlsZVwiXG4gICAgICA+PC9ncmFuaXRlLWNvbnRhY3RzLXByb2ZpbGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDx1bCBjbGFzcz1cImNvbnRhY3QtbGlzdFwiPlxuICAgICAgPGxpICpuZ0Zvcj1cImxldCBjb250YWN0IG9mIF9jb250YWN0c0V4dGVuZGVkXCI+XG4gICAgICAgIDxncmFuaXRlLWNvbnRhY3QtaXRlbVxuICAgICAgICAgIFtjb250YWN0XT1cImNvbnRhY3RcIlxuICAgICAgICAgIChzZWxlY3RlZENvbnRhY3QpPVwib25TZWxlY3RlZENvbnRhY3QoJGV2ZW50KVwiXG4gICAgICAgID48L2dyYW5pdGUtY29udGFjdC1pdGVtPlxuICAgICAgPC9saT5cbiAgICA8L3VsPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJkZWZhdWx0U2hvd1wiPlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGFjdHNUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
@@ -0,0 +1,53 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { GraniteContactsComponent as GraniteContactsComponent } from './contacts.component';
4
+ import { GraniteIconModule } from '../icon/icon.module';
5
+ import { GraniteContactItemComponent } from './contact-item/contact-item.component';
6
+ import { ContactItemDefaultStatusComponent } from './contact-item-default-status/contact-item-default-status.component';
7
+ import { GraniteContactItemTitleComponent } from './contact-item-title/contact-item-title.component';
8
+ import { GraniteCustomStatusDirective } from './custom-status.directive';
9
+ import { GraniteContactsTriggerForDirective } from './contacts-trigger/contacts-trigger-for.directive';
10
+ import { GraniteContactsProfileComponent } from './contacts-profile/contacts-profile.component';
11
+ import { GraniteCustomProfileDirective } from './custom-profile.directive';
12
+ import { GraniteAvatarModule } from '../avatar/avatar.module';
13
+ import * as i0 from "@angular/core";
14
+ export class GraniteContactsModule {
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteContactsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: GraniteContactsModule, declarations: [GraniteContactsComponent,
17
+ GraniteContactsProfileComponent,
18
+ GraniteContactItemComponent,
19
+ ContactItemDefaultStatusComponent,
20
+ GraniteContactItemTitleComponent,
21
+ GraniteContactsTriggerForDirective,
22
+ GraniteCustomStatusDirective,
23
+ GraniteCustomProfileDirective], imports: [GraniteIconModule, GraniteAvatarModule, CommonModule], exports: [GraniteContactsComponent,
24
+ GraniteContactsTriggerForDirective,
25
+ GraniteContactItemComponent,
26
+ GraniteCustomStatusDirective,
27
+ GraniteCustomProfileDirective] }); }
28
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteContactsModule, imports: [GraniteIconModule, GraniteAvatarModule, CommonModule] }); }
29
+ }
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteContactsModule, decorators: [{
31
+ type: NgModule,
32
+ args: [{
33
+ imports: [GraniteIconModule, GraniteAvatarModule, CommonModule],
34
+ declarations: [
35
+ GraniteContactsComponent,
36
+ GraniteContactsProfileComponent,
37
+ GraniteContactItemComponent,
38
+ ContactItemDefaultStatusComponent,
39
+ GraniteContactItemTitleComponent,
40
+ GraniteContactsTriggerForDirective,
41
+ GraniteCustomStatusDirective,
42
+ GraniteCustomProfileDirective,
43
+ ],
44
+ exports: [
45
+ GraniteContactsComponent,
46
+ GraniteContactsTriggerForDirective,
47
+ GraniteContactItemComponent,
48
+ GraniteCustomStatusDirective,
49
+ GraniteCustomProfileDirective,
50
+ ],
51
+ }]
52
+ }] });
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9jb250YWN0cy9jb250YWN0cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHdCQUF3QixJQUFJLHdCQUF3QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDcEYsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0scUVBQXFFLENBQUM7QUFDeEgsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDckcsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekUsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDdkcsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDaEcsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBc0I5RCxNQUFNLE9BQU8scUJBQXFCOytHQUFyQixxQkFBcUI7Z0hBQXJCLHFCQUFxQixpQkFqQjlCLHdCQUF3QjtZQUN4QiwrQkFBK0I7WUFDL0IsMkJBQTJCO1lBQzNCLGlDQUFpQztZQUNqQyxnQ0FBZ0M7WUFDaEMsa0NBQWtDO1lBQ2xDLDRCQUE0QjtZQUM1Qiw2QkFBNkIsYUFUckIsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxhQVk1RCx3QkFBd0I7WUFDeEIsa0NBQWtDO1lBQ2xDLDJCQUEyQjtZQUMzQiw0QkFBNEI7WUFDNUIsNkJBQTZCO2dIQUdwQixxQkFBcUIsWUFuQnRCLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLFlBQVk7OzRGQW1CbkQscUJBQXFCO2tCQXBCakMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxtQkFBbUIsRUFBRSxZQUFZLENBQUM7b0JBQy9ELFlBQVksRUFBRTt3QkFDWix3QkFBd0I7d0JBQ3hCLCtCQUErQjt3QkFDL0IsMkJBQTJCO3dCQUMzQixpQ0FBaUM7d0JBQ2pDLGdDQUFnQzt3QkFDaEMsa0NBQWtDO3dCQUNsQyw0QkFBNEI7d0JBQzVCLDZCQUE2QjtxQkFDOUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHdCQUF3Qjt3QkFDeEIsa0NBQWtDO3dCQUNsQywyQkFBMkI7d0JBQzNCLDRCQUE0Qjt3QkFDNUIsNkJBQTZCO3FCQUM5QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgR3Jhbml0ZUNvbnRhY3RzQ29tcG9uZW50IGFzIEdyYW5pdGVDb250YWN0c0NvbXBvbmVudCB9IGZyb20gJy4vY29udGFjdHMuY29tcG9uZW50JztcbmltcG9ydCB7IEdyYW5pdGVJY29uTW9kdWxlIH0gZnJvbSAnLi4vaWNvbi9pY29uLm1vZHVsZSc7XG5pbXBvcnQgeyBHcmFuaXRlQ29udGFjdEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2NvbnRhY3QtaXRlbS9jb250YWN0LWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IENvbnRhY3RJdGVtRGVmYXVsdFN0YXR1c0NvbXBvbmVudCB9IGZyb20gJy4vY29udGFjdC1pdGVtLWRlZmF1bHQtc3RhdHVzL2NvbnRhY3QtaXRlbS1kZWZhdWx0LXN0YXR1cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3Jhbml0ZUNvbnRhY3RJdGVtVGl0bGVDb21wb25lbnQgfSBmcm9tICcuL2NvbnRhY3QtaXRlbS10aXRsZS9jb250YWN0LWl0ZW0tdGl0bGUuY29tcG9uZW50JztcbmltcG9ydCB7IEdyYW5pdGVDdXN0b21TdGF0dXNEaXJlY3RpdmUgfSBmcm9tICcuL2N1c3RvbS1zdGF0dXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IEdyYW5pdGVDb250YWN0c1RyaWdnZXJGb3JEaXJlY3RpdmUgfSBmcm9tICcuL2NvbnRhY3RzLXRyaWdnZXIvY29udGFjdHMtdHJpZ2dlci1mb3IuZGlyZWN0aXZlJztcbmltcG9ydCB7IEdyYW5pdGVDb250YWN0c1Byb2ZpbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbnRhY3RzLXByb2ZpbGUvY29udGFjdHMtcHJvZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3Jhbml0ZUN1c3RvbVByb2ZpbGVEaXJlY3RpdmUgfSBmcm9tICcuL2N1c3RvbS1wcm9maWxlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBHcmFuaXRlQXZhdGFyTW9kdWxlIH0gZnJvbSAnLi4vYXZhdGFyL2F2YXRhci5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbR3Jhbml0ZUljb25Nb2R1bGUsIEdyYW5pdGVBdmF0YXJNb2R1bGUsIENvbW1vbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEdyYW5pdGVDb250YWN0c0NvbXBvbmVudCxcbiAgICBHcmFuaXRlQ29udGFjdHNQcm9maWxlQ29tcG9uZW50LFxuICAgIEdyYW5pdGVDb250YWN0SXRlbUNvbXBvbmVudCxcbiAgICBDb250YWN0SXRlbURlZmF1bHRTdGF0dXNDb21wb25lbnQsXG4gICAgR3Jhbml0ZUNvbnRhY3RJdGVtVGl0bGVDb21wb25lbnQsXG4gICAgR3Jhbml0ZUNvbnRhY3RzVHJpZ2dlckZvckRpcmVjdGl2ZSxcbiAgICBHcmFuaXRlQ3VzdG9tU3RhdHVzRGlyZWN0aXZlLFxuICAgIEdyYW5pdGVDdXN0b21Qcm9maWxlRGlyZWN0aXZlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgR3Jhbml0ZUNvbnRhY3RzQ29tcG9uZW50LFxuICAgIEdyYW5pdGVDb250YWN0c1RyaWdnZXJGb3JEaXJlY3RpdmUsXG4gICAgR3Jhbml0ZUNvbnRhY3RJdGVtQ29tcG9uZW50LFxuICAgIEdyYW5pdGVDdXN0b21TdGF0dXNEaXJlY3RpdmUsXG4gICAgR3Jhbml0ZUN1c3RvbVByb2ZpbGVEaXJlY3RpdmUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEdyYW5pdGVDb250YWN0c01vZHVsZSB7fVxuIl19