@ifsworld/granite-components 14.2.2 → 15.0.0-beta.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 +15 -13
  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 +340 -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 +9 -21
  21. package/src/lib/core/style/_mixins.scss +16 -11
  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 -154
  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 -287
  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 -354
  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,16 +0,0 @@
1
- import { Directive, TemplateRef } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class GraniteCustomProfileDirective {
4
- constructor(templateRef) {
5
- this.templateRef = templateRef;
6
- }
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteCustomProfileDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
8
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: GraniteCustomProfileDirective, selector: "[graniteCustomProfile]", ngImport: i0 }); }
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteCustomProfileDirective, decorators: [{
11
- type: Directive,
12
- args: [{
13
- selector: '[graniteCustomProfile]',
14
- }]
15
- }], ctorParameters: () => [{ type: i0.TemplateRef }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXByb2ZpbGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9jb250YWN0cy9jdXN0b20tcHJvZmlsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBS3ZELE1BQU0sT0FBTyw2QkFBNkI7SUFDeEMsWUFBbUIsV0FBaUM7UUFBakMsZ0JBQVcsR0FBWCxXQUFXLENBQXNCO0lBQUcsQ0FBQzsrR0FEN0MsNkJBQTZCO21HQUE3Qiw2QkFBNkI7OzRGQUE3Qiw2QkFBNkI7a0JBSHpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtpQkFDbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tncmFuaXRlQ3VzdG9tUHJvZmlsZV0nLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFuaXRlQ3VzdG9tUHJvZmlsZURpcmVjdGl2ZSB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8dW5rbm93bj4pIHt9XG59XG4iXX0=
@@ -1,18 +0,0 @@
1
- import { Directive, Input, TemplateRef } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class GraniteCustomStatusDirective {
4
- constructor(templateRef) {
5
- this.templateRef = templateRef;
6
- }
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteCustomStatusDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
8
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: GraniteCustomStatusDirective, selector: "[graniteCustomStatus]", inputs: { graniteCustomStatus: "graniteCustomStatus" }, ngImport: i0 }); }
9
- }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteCustomStatusDirective, decorators: [{
11
- type: Directive,
12
- args: [{
13
- selector: '[graniteCustomStatus]',
14
- }]
15
- }], ctorParameters: () => [{ type: i0.TemplateRef }], propDecorators: { graniteCustomStatus: [{
16
- type: Input
17
- }] } });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXN0YXR1cy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2NvbnRhY3RzL2N1c3RvbS1zdGF0dXMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLOUQsTUFBTSxPQUFPLDRCQUE0QjtJQUl2QyxZQUFtQixXQUFpQztRQUFqQyxnQkFBVyxHQUFYLFdBQVcsQ0FBc0I7SUFBRyxDQUFDOytHQUo3Qyw0QkFBNEI7bUdBQTVCLDRCQUE0Qjs7NEZBQTVCLDRCQUE0QjtrQkFIeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2lCQUNsQztnRkFHQyxtQkFBbUI7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZ3Jhbml0ZUN1c3RvbVN0YXR1c10nLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFuaXRlQ3VzdG9tU3RhdHVzRGlyZWN0aXZlIHtcbiAgQElucHV0KClcbiAgZ3Jhbml0ZUN1c3RvbVN0YXR1czogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8dW5rbm93bj4pIHt9XG59XG4iXX0=
@@ -1,34 +0,0 @@
1
- /**
2
- * Returns an ease-out CSS animation string with a slightly steeper curve
3
- * than usual.
4
- *
5
- * @param duration Duration in milliseconds
6
- * @param delay Delay in milliseconds
7
- */
8
- export function getEaseOutSteep(duration, delay) {
9
- return (`${duration}ms ` +
10
- (delay !== undefined ? ` ${delay}ms ` : '') +
11
- 'cubic-bezier(0, 0, 0.2, 1)');
12
- }
13
- /**
14
- * Returns an ease-out-back CSS animation string with a slightly steeper
15
- * curve than usual.
16
- *
17
- * @param duration Duration in milliseconds
18
- * @param delay Delay in milliseconds
19
- */
20
- export function getEaseOutSteepBack(duration, delay) {
21
- return (`${duration}ms ` +
22
- (delay !== undefined ? ` ${delay}ms ` : '') +
23
- 'cubic-bezier(.37,1.3,.77,1)');
24
- }
25
- /**
26
- * Returns a linear CSS animation string
27
- *
28
- * @param duration Duration in milliseconds
29
- * @param delay Delay in milliseconds
30
- */
31
- export function getEaseLinear(duration, delay) {
32
- return (`${duration}ms ` + (delay !== undefined ? ` ${delay}ms ` : '') + 'linear');
33
- }
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9jb3JlL2FuaW1hdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsZUFBZSxDQUFDLFFBQWdCLEVBQUUsS0FBYztJQUM5RCxPQUFPLENBQ0wsR0FBRyxRQUFRLEtBQUs7UUFDaEIsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDM0MsNEJBQTRCLENBQzdCLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLFFBQWdCLEVBQUUsS0FBYztJQUNsRSxPQUFPLENBQ0wsR0FBRyxRQUFRLEtBQUs7UUFDaEIsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDM0MsNkJBQTZCLENBQzlCLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsYUFBYSxDQUFDLFFBQWdCLEVBQUUsS0FBYztJQUM1RCxPQUFPLENBQ0wsR0FBRyxRQUFRLEtBQUssR0FBRyxDQUFDLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FDMUUsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJldHVybnMgYW4gZWFzZS1vdXQgQ1NTIGFuaW1hdGlvbiBzdHJpbmcgd2l0aCBhIHNsaWdodGx5IHN0ZWVwZXIgY3VydmVcbiAqIHRoYW4gdXN1YWwuXG4gKlxuICogQHBhcmFtIGR1cmF0aW9uIER1cmF0aW9uIGluIG1pbGxpc2Vjb25kc1xuICogQHBhcmFtIGRlbGF5IERlbGF5IGluIG1pbGxpc2Vjb25kc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RWFzZU91dFN0ZWVwKGR1cmF0aW9uOiBudW1iZXIsIGRlbGF5PzogbnVtYmVyKTogc3RyaW5nIHtcbiAgcmV0dXJuIChcbiAgICBgJHtkdXJhdGlvbn1tcyBgICtcbiAgICAoZGVsYXkgIT09IHVuZGVmaW5lZCA/IGAgJHtkZWxheX1tcyBgIDogJycpICtcbiAgICAnY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSknXG4gICk7XG59XG5cbi8qKlxuICogUmV0dXJucyBhbiBlYXNlLW91dC1iYWNrIENTUyBhbmltYXRpb24gc3RyaW5nIHdpdGggYSBzbGlnaHRseSBzdGVlcGVyXG4gKiBjdXJ2ZSB0aGFuIHVzdWFsLlxuICpcbiAqIEBwYXJhbSBkdXJhdGlvbiBEdXJhdGlvbiBpbiBtaWxsaXNlY29uZHNcbiAqIEBwYXJhbSBkZWxheSBEZWxheSBpbiBtaWxsaXNlY29uZHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEVhc2VPdXRTdGVlcEJhY2soZHVyYXRpb246IG51bWJlciwgZGVsYXk/OiBudW1iZXIpOiBzdHJpbmcge1xuICByZXR1cm4gKFxuICAgIGAke2R1cmF0aW9ufW1zIGAgK1xuICAgIChkZWxheSAhPT0gdW5kZWZpbmVkID8gYCAke2RlbGF5fW1zIGAgOiAnJykgK1xuICAgICdjdWJpYy1iZXppZXIoLjM3LDEuMywuNzcsMSknXG4gICk7XG59XG5cbi8qKlxuICogUmV0dXJucyBhIGxpbmVhciBDU1MgYW5pbWF0aW9uIHN0cmluZ1xuICpcbiAqIEBwYXJhbSBkdXJhdGlvbiBEdXJhdGlvbiBpbiBtaWxsaXNlY29uZHNcbiAqIEBwYXJhbSBkZWxheSBEZWxheSBpbiBtaWxsaXNlY29uZHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEVhc2VMaW5lYXIoZHVyYXRpb246IG51bWJlciwgZGVsYXk/OiBudW1iZXIpOiBzdHJpbmcge1xuICByZXR1cm4gKFxuICAgIGAke2R1cmF0aW9ufW1zIGAgKyAoZGVsYXkgIT09IHVuZGVmaW5lZCA/IGAgJHtkZWxheX1tcyBgIDogJycpICsgJ2xpbmVhcidcbiAgKTtcbn1cbiJdfQ==
@@ -1,20 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- /**
3
- * Injection token used to provide components knowledge of what device types
4
- * are being used for input.
5
- */
6
- export const GRANITE_CLIENT_INPUT = new InjectionToken('GRANITE_CLIENT_INPUT');
7
- /**
8
- * Injection token used to provide components knowledge of what device type
9
- * is being used for output.
10
- */
11
- export const GRANITE_CLIENT_OUTPUT = new InjectionToken('GRANITE_CLIENT_OUTPUT');
12
- export const deviceDesktop = {
13
- input: { devices: ['mouse', 'keyboard'] },
14
- output: { device: 'desktop' },
15
- };
16
- export const deviceTouch = {
17
- input: { devices: ['touch', 'onscreen-keyboard'] },
18
- output: { device: 'touch' },
19
- };
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LWVudmlyb25tZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9jb3JlL2NsaWVudC1lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9DOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLElBQUksY0FBYyxDQUNwRCxzQkFBc0IsQ0FDdkIsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLElBQUksY0FBYyxDQUNyRCx1QkFBdUIsQ0FDeEIsQ0FBQztBQTJCRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQTBCO0lBQ2xELEtBQUssRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsRUFBRTtJQUN6QyxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFO0NBQzlCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQTBCO0lBQ2hELEtBQUssRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxtQkFBbUIsQ0FBQyxFQUFFO0lBQ2xELE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUU7Q0FDNUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogSW5qZWN0aW9uIHRva2VuIHVzZWQgdG8gcHJvdmlkZSBjb21wb25lbnRzIGtub3dsZWRnZSBvZiB3aGF0IGRldmljZSB0eXBlc1xuICogYXJlIGJlaW5nIHVzZWQgZm9yIGlucHV0LlxuICovXG5leHBvcnQgY29uc3QgR1JBTklURV9DTElFTlRfSU5QVVQgPSBuZXcgSW5qZWN0aW9uVG9rZW48Q2xpZW50SW5wdXRJbnRlcmZhY2U+KFxuICAnR1JBTklURV9DTElFTlRfSU5QVVQnXG4pO1xuXG4vKipcbiAqIEluamVjdGlvbiB0b2tlbiB1c2VkIHRvIHByb3ZpZGUgY29tcG9uZW50cyBrbm93bGVkZ2Ugb2Ygd2hhdCBkZXZpY2UgdHlwZVxuICogaXMgYmVpbmcgdXNlZCBmb3Igb3V0cHV0LlxuICovXG5leHBvcnQgY29uc3QgR1JBTklURV9DTElFTlRfT1VUUFVUID0gbmV3IEluamVjdGlvblRva2VuPENsaWVudE91dHB1dEludGVyZmFjZT4oXG4gICdHUkFOSVRFX0NMSUVOVF9PVVRQVVQnXG4pO1xuXG5leHBvcnQgdHlwZSBJbnB1dERldmljZVR5cGVzID1cbiAgfCB2b2lkXG4gIHwgJ3RvdWNoJ1xuICB8ICdtb3VzZSdcbiAgfCAna2V5Ym9hcmQnXG4gIHwgJ29uc2NyZWVuLWtleWJvYXJkJztcblxuZXhwb3J0IHR5cGUgT3V0cHV0RGV2aWNlVHlwZXMgPVxuICB8IHZvaWRcbiAgfCAndG91Y2gnIC8vIFRPRE86IENoYW5nZSB0byAndG91Y2gtc2NyZWVuJyBmb3IgdG91Y2hcbiAgfCAnZGVza3RvcCc7IC8vIFRPRE86IENoYW5nZSB0byAnc2NyZWVuJyBmb3IgZGVza3RvcFxuXG5leHBvcnQgaW50ZXJmYWNlIENsaWVudElucHV0SW50ZXJmYWNlIHtcbiAgZGV2aWNlczogSW5wdXREZXZpY2VUeXBlc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENsaWVudE91dHB1dEludGVyZmFjZSB7XG4gIGRldmljZTogT3V0cHV0RGV2aWNlVHlwZXM7XG59XG5cbmludGVyZmFjZSBEZXZpY2VQcmVmYWJJbnRlcmZhY2Uge1xuICBpbnB1dDogQ2xpZW50SW5wdXRJbnRlcmZhY2U7XG4gIG91dHB1dDogQ2xpZW50T3V0cHV0SW50ZXJmYWNlO1xufVxuXG5leHBvcnQgY29uc3QgZGV2aWNlRGVza3RvcDogRGV2aWNlUHJlZmFiSW50ZXJmYWNlID0ge1xuICBpbnB1dDogeyBkZXZpY2VzOiBbJ21vdXNlJywgJ2tleWJvYXJkJ10gfSxcbiAgb3V0cHV0OiB7IGRldmljZTogJ2Rlc2t0b3AnIH0sXG59O1xuXG5leHBvcnQgY29uc3QgZGV2aWNlVG91Y2g6IERldmljZVByZWZhYkludGVyZmFjZSA9IHtcbiAgaW5wdXQ6IHsgZGV2aWNlczogWyd0b3VjaCcsICdvbnNjcmVlbi1rZXlib2FyZCddIH0sXG4gIG91dHB1dDogeyBkZXZpY2U6ICd0b3VjaCcgfSxcbn07XG4iXX0=
@@ -1,27 +0,0 @@
1
- /* eslint-disable @typescript-eslint/explicit-module-boundary-types */
2
- import { coerceBooleanProperty } from '@angular/cdk/coercion';
3
- import { Input, Directive } from '@angular/core';
4
- import * as i0 from "@angular/core";
5
- export const disabledMixin = (Base = class {
6
- }) => {
7
- class Derived extends Base {
8
- constructor() {
9
- super(...arguments);
10
- this.disabled = false;
11
- }
12
- ngOnChanges(changes) {
13
- if (changes.disabled) {
14
- this.disabled = coerceBooleanProperty(changes.disabled.currentValue);
15
- }
16
- }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: Derived, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
18
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: Derived, inputs: { disabled: "disabled" }, usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
19
- }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: Derived, decorators: [{
21
- type: Directive
22
- }], propDecorators: { disabled: [{
23
- type: Input
24
- }] } });
25
- return Derived;
26
- };
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzYWJsZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2NvcmUvY29tbW9uLWJlaGF2aW9ycy9kaXNhYmxlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzRUFBc0U7QUFDdEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFFLEtBQUssRUFBNEIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUkzRSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FDM0IsT0FBVTtDQUFlLEVBQ3pCLEVBQUU7SUFDRixNQUVNLE9BQVEsU0FBUSxJQUFJO1FBRjFCOztZQUlFLGFBQVEsR0FBWSxLQUFLLENBQUM7U0FPM0I7UUFMQyxXQUFXLENBQUMsT0FBc0I7WUFDaEMsSUFBSSxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxRQUFRLEdBQUcscUJBQXFCLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUN2RSxDQUFDO1FBQ0gsQ0FBQzttSEFSRyxPQUFPO3VHQUFQLE9BQU87O2dHQUFQLE9BQU87c0JBRlosU0FBUztrQ0FJUixRQUFROzBCQURQLEtBQUs7O0lBVVIsT0FBTyxPQUFPLENBQUM7Q0FDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9leHBsaWNpdC1tb2R1bGUtYm91bmRhcnktdHlwZXMgKi9cbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxudHlwZSBDb25zdHJ1Y3RvcjxUPiA9IG5ldyAoLi4uYXJnczogYW55W10pID0+IFQ7XG5cbmV4cG9ydCBjb25zdCBkaXNhYmxlZE1peGluID0gPFQgZXh0ZW5kcyBDb25zdHJ1Y3RvcjxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4+KFxuICBCYXNlOiBUID0gY2xhc3Mge30gYXMgYW55XG4pID0+IHtcbiAgQERpcmVjdGl2ZSgpXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLWNsYXNzLXN1ZmZpeFxuICBjbGFzcyBEZXJpdmVkIGV4dGVuZHMgQmFzZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KClcbiAgICBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgaWYgKGNoYW5nZXMuZGlzYWJsZWQpIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShjaGFuZ2VzLmRpc2FibGVkLmN1cnJlbnRWYWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIERlcml2ZWQ7XG59O1xuIl19
@@ -1,44 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { ClientOutputDesktopDirective } from './devices/client-output-desktop.directive';
3
- import { ClientOutputTouchDirective } from './devices/client-output-touch.directive';
4
- import { ClientInputDesktopDirective } from './devices/client-input-desktop.directive';
5
- import { ClientInputTouchDirective } from './devices/client-input-touch.directive';
6
- import { GraniteHideOnOverflowDirective } from './hide-on-overflow.directive';
7
- import { GraniteOverlayTriggerForBaseDirective } from './overlay-trigger-for-base.directive';
8
- import * as i0 from "@angular/core";
9
- // TODO: Move client devices into a separate module
10
- export class GraniteCoreModule {
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
12
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: GraniteCoreModule, declarations: [ClientOutputDesktopDirective,
13
- ClientOutputTouchDirective,
14
- ClientInputDesktopDirective,
15
- ClientInputTouchDirective,
16
- GraniteHideOnOverflowDirective,
17
- GraniteOverlayTriggerForBaseDirective], exports: [ClientOutputDesktopDirective,
18
- ClientOutputTouchDirective,
19
- ClientInputDesktopDirective,
20
- ClientInputTouchDirective,
21
- GraniteHideOnOverflowDirective] }); }
22
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteCoreModule }); }
23
- }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteCoreModule, decorators: [{
25
- type: NgModule,
26
- args: [{
27
- declarations: [
28
- ClientOutputDesktopDirective,
29
- ClientOutputTouchDirective,
30
- ClientInputDesktopDirective,
31
- ClientInputTouchDirective,
32
- GraniteHideOnOverflowDirective,
33
- GraniteOverlayTriggerForBaseDirective,
34
- ],
35
- exports: [
36
- ClientOutputDesktopDirective,
37
- ClientOutputTouchDirective,
38
- ClientInputDesktopDirective,
39
- ClientInputTouchDirective,
40
- GraniteHideOnOverflowDirective,
41
- ],
42
- }]
43
- }] });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2NvcmUvY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUN6RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUN2RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNuRixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RSxPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7QUFFN0YsbURBQW1EO0FBbUJuRCxNQUFNLE9BQU8saUJBQWlCOytHQUFqQixpQkFBaUI7Z0hBQWpCLGlCQUFpQixpQkFmMUIsNEJBQTRCO1lBQzVCLDBCQUEwQjtZQUMxQiwyQkFBMkI7WUFDM0IseUJBQXlCO1lBQ3pCLDhCQUE4QjtZQUM5QixxQ0FBcUMsYUFHckMsNEJBQTRCO1lBQzVCLDBCQUEwQjtZQUMxQiwyQkFBMkI7WUFDM0IseUJBQXlCO1lBQ3pCLDhCQUE4QjtnSEFHckIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQWpCN0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osNEJBQTRCO3dCQUM1QiwwQkFBMEI7d0JBQzFCLDJCQUEyQjt3QkFDM0IseUJBQXlCO3dCQUN6Qiw4QkFBOEI7d0JBQzlCLHFDQUFxQztxQkFDdEM7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLDRCQUE0Qjt3QkFDNUIsMEJBQTBCO3dCQUMxQiwyQkFBMkI7d0JBQzNCLHlCQUF5Qjt3QkFDekIsOEJBQThCO3FCQUMvQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGllbnRPdXRwdXREZXNrdG9wRGlyZWN0aXZlIH0gZnJvbSAnLi9kZXZpY2VzL2NsaWVudC1vdXRwdXQtZGVza3RvcC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ2xpZW50T3V0cHV0VG91Y2hEaXJlY3RpdmUgfSBmcm9tICcuL2RldmljZXMvY2xpZW50LW91dHB1dC10b3VjaC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ2xpZW50SW5wdXREZXNrdG9wRGlyZWN0aXZlIH0gZnJvbSAnLi9kZXZpY2VzL2NsaWVudC1pbnB1dC1kZXNrdG9wLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDbGllbnRJbnB1dFRvdWNoRGlyZWN0aXZlIH0gZnJvbSAnLi9kZXZpY2VzL2NsaWVudC1pbnB1dC10b3VjaC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgR3Jhbml0ZUhpZGVPbk92ZXJmbG93RGlyZWN0aXZlIH0gZnJvbSAnLi9oaWRlLW9uLW92ZXJmbG93LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBHcmFuaXRlT3ZlcmxheVRyaWdnZXJGb3JCYXNlRGlyZWN0aXZlIH0gZnJvbSAnLi9vdmVybGF5LXRyaWdnZXItZm9yLWJhc2UuZGlyZWN0aXZlJztcblxuLy8gVE9ETzogTW92ZSBjbGllbnQgZGV2aWNlcyBpbnRvIGEgc2VwYXJhdGUgbW9kdWxlXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIENsaWVudE91dHB1dERlc2t0b3BEaXJlY3RpdmUsXG4gICAgQ2xpZW50T3V0cHV0VG91Y2hEaXJlY3RpdmUsXG4gICAgQ2xpZW50SW5wdXREZXNrdG9wRGlyZWN0aXZlLFxuICAgIENsaWVudElucHV0VG91Y2hEaXJlY3RpdmUsXG4gICAgR3Jhbml0ZUhpZGVPbk92ZXJmbG93RGlyZWN0aXZlLFxuICAgIEdyYW5pdGVPdmVybGF5VHJpZ2dlckZvckJhc2VEaXJlY3RpdmUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBDbGllbnRPdXRwdXREZXNrdG9wRGlyZWN0aXZlLFxuICAgIENsaWVudE91dHB1dFRvdWNoRGlyZWN0aXZlLFxuICAgIENsaWVudElucHV0RGVza3RvcERpcmVjdGl2ZSxcbiAgICBDbGllbnRJbnB1dFRvdWNoRGlyZWN0aXZlLFxuICAgIEdyYW5pdGVIaWRlT25PdmVyZmxvd0RpcmVjdGl2ZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgR3Jhbml0ZUNvcmVNb2R1bGUge31cbiJdfQ==
@@ -1,29 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { deviceDesktop, GRANITE_CLIENT_INPUT } from '../client-environment';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * Directive used to tell components and their sub components that client input
6
- * should be adapted for desktop devices, like personal computers.
7
- */
8
- export class ClientInputDesktopDirective {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ClientInputDesktopDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
10
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ClientInputDesktopDirective, selector: "[graniteClientInputDesktop]", providers: [
11
- {
12
- provide: GRANITE_CLIENT_INPUT,
13
- useValue: deviceDesktop.input,
14
- },
15
- ], ngImport: i0 }); }
16
- }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ClientInputDesktopDirective, decorators: [{
18
- type: Directive,
19
- args: [{
20
- selector: `[graniteClientInputDesktop]`,
21
- providers: [
22
- {
23
- provide: GRANITE_CLIENT_INPUT,
24
- useValue: deviceDesktop.input,
25
- },
26
- ],
27
- }]
28
- }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LWlucHV0LWRlc2t0b3AuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9jb3JlL2RldmljZXMvY2xpZW50LWlucHV0LWRlc2t0b3AuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUU1RTs7O0dBR0c7QUFVSCxNQUFNLE9BQU8sMkJBQTJCOytHQUEzQiwyQkFBMkI7bUdBQTNCLDJCQUEyQixzREFQM0I7WUFDVDtnQkFDRSxPQUFPLEVBQUUsb0JBQW9CO2dCQUM3QixRQUFRLEVBQUUsYUFBYSxDQUFDLEtBQUs7YUFDOUI7U0FDRjs7NEZBRVUsMkJBQTJCO2tCQVR2QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw2QkFBNkI7b0JBQ3ZDLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsb0JBQW9COzRCQUM3QixRQUFRLEVBQUUsYUFBYSxDQUFDLEtBQUs7eUJBQzlCO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBkZXZpY2VEZXNrdG9wLCBHUkFOSVRFX0NMSUVOVF9JTlBVVCB9IGZyb20gJy4uL2NsaWVudC1lbnZpcm9ubWVudCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHVzZWQgdG8gdGVsbCBjb21wb25lbnRzIGFuZCB0aGVpciBzdWIgY29tcG9uZW50cyB0aGF0IGNsaWVudCBpbnB1dFxuICogc2hvdWxkIGJlIGFkYXB0ZWQgZm9yIGRlc2t0b3AgZGV2aWNlcywgbGlrZSBwZXJzb25hbCBjb21wdXRlcnMuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogYFtncmFuaXRlQ2xpZW50SW5wdXREZXNrdG9wXWAsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEdSQU5JVEVfQ0xJRU5UX0lOUFVULFxuICAgICAgdXNlVmFsdWU6IGRldmljZURlc2t0b3AuaW5wdXQsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2xpZW50SW5wdXREZXNrdG9wRGlyZWN0aXZlIHt9XG4iXX0=
@@ -1,29 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { deviceTouch, GRANITE_CLIENT_INPUT } from '../client-environment';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * Directive used to tell components and their sub components that client input
6
- * should be adapted for touch devices, like mobiles and tablets.
7
- */
8
- export class ClientInputTouchDirective {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ClientInputTouchDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
10
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ClientInputTouchDirective, selector: "[graniteClientInputTouch]", providers: [
11
- {
12
- provide: GRANITE_CLIENT_INPUT,
13
- useValue: deviceTouch.input,
14
- },
15
- ], ngImport: i0 }); }
16
- }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ClientInputTouchDirective, decorators: [{
18
- type: Directive,
19
- args: [{
20
- selector: `[graniteClientInputTouch]`,
21
- providers: [
22
- {
23
- provide: GRANITE_CLIENT_INPUT,
24
- useValue: deviceTouch.input,
25
- },
26
- ],
27
- }]
28
- }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LWlucHV0LXRvdWNoLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZ3Jhbml0ZS1jb21wb25lbnRzL3NyYy9saWIvY29yZS9kZXZpY2VzL2NsaWVudC1pbnB1dC10b3VjaC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBRTFFOzs7R0FHRztBQVVILE1BQU0sT0FBTyx5QkFBeUI7K0dBQXpCLHlCQUF5QjttR0FBekIseUJBQXlCLG9EQVB6QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxvQkFBb0I7Z0JBQzdCLFFBQVEsRUFBRSxXQUFXLENBQUMsS0FBSzthQUM1QjtTQUNGOzs0RkFFVSx5QkFBeUI7a0JBVHJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxvQkFBb0I7NEJBQzdCLFFBQVEsRUFBRSxXQUFXLENBQUMsS0FBSzt5QkFDNUI7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGRldmljZVRvdWNoLCBHUkFOSVRFX0NMSUVOVF9JTlBVVCB9IGZyb20gJy4uL2NsaWVudC1lbnZpcm9ubWVudCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHVzZWQgdG8gdGVsbCBjb21wb25lbnRzIGFuZCB0aGVpciBzdWIgY29tcG9uZW50cyB0aGF0IGNsaWVudCBpbnB1dFxuICogc2hvdWxkIGJlIGFkYXB0ZWQgZm9yIHRvdWNoIGRldmljZXMsIGxpa2UgbW9iaWxlcyBhbmQgdGFibGV0cy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiBgW2dyYW5pdGVDbGllbnRJbnB1dFRvdWNoXWAsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEdSQU5JVEVfQ0xJRU5UX0lOUFVULFxuICAgICAgdXNlVmFsdWU6IGRldmljZVRvdWNoLmlucHV0LFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIENsaWVudElucHV0VG91Y2hEaXJlY3RpdmUge31cbiJdfQ==
@@ -1,29 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { deviceDesktop, GRANITE_CLIENT_OUTPUT } from '../client-environment';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * Directive used to tell components and their sub components that client output
6
- * should be adapted for desktop devices like personal computers.
7
- */
8
- export class ClientOutputDesktopDirective {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ClientOutputDesktopDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
10
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ClientOutputDesktopDirective, selector: "[graniteClientOutputDesktop]", providers: [
11
- {
12
- provide: GRANITE_CLIENT_OUTPUT,
13
- useValue: deviceDesktop.output,
14
- },
15
- ], ngImport: i0 }); }
16
- }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ClientOutputDesktopDirective, decorators: [{
18
- type: Directive,
19
- args: [{
20
- selector: `[graniteClientOutputDesktop]`,
21
- providers: [
22
- {
23
- provide: GRANITE_CLIENT_OUTPUT,
24
- useValue: deviceDesktop.output,
25
- },
26
- ],
27
- }]
28
- }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LW91dHB1dC1kZXNrdG9wLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZ3Jhbml0ZS1jb21wb25lbnRzL3NyYy9saWIvY29yZS9kZXZpY2VzL2NsaWVudC1vdXRwdXQtZGVza3RvcC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsYUFBYSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBRTdFOzs7R0FHRztBQVVILE1BQU0sT0FBTyw0QkFBNEI7K0dBQTVCLDRCQUE0QjttR0FBNUIsNEJBQTRCLHVEQVA1QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxxQkFBcUI7Z0JBQzlCLFFBQVEsRUFBRSxhQUFhLENBQUMsTUFBTTthQUMvQjtTQUNGOzs0RkFFVSw0QkFBNEI7a0JBVHhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDhCQUE4QjtvQkFDeEMsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxxQkFBcUI7NEJBQzlCLFFBQVEsRUFBRSxhQUFhLENBQUMsTUFBTTt5QkFDL0I7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGRldmljZURlc2t0b3AsIEdSQU5JVEVfQ0xJRU5UX09VVFBVVCB9IGZyb20gJy4uL2NsaWVudC1lbnZpcm9ubWVudCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHVzZWQgdG8gdGVsbCBjb21wb25lbnRzIGFuZCB0aGVpciBzdWIgY29tcG9uZW50cyB0aGF0IGNsaWVudCBvdXRwdXRcbiAqIHNob3VsZCBiZSBhZGFwdGVkIGZvciBkZXNrdG9wIGRldmljZXMgbGlrZSBwZXJzb25hbCBjb21wdXRlcnMuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogYFtncmFuaXRlQ2xpZW50T3V0cHV0RGVza3RvcF1gLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBHUkFOSVRFX0NMSUVOVF9PVVRQVVQsXG4gICAgICB1c2VWYWx1ZTogZGV2aWNlRGVza3RvcC5vdXRwdXQsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2xpZW50T3V0cHV0RGVza3RvcERpcmVjdGl2ZSB7fVxuIl19
@@ -1,29 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { GRANITE_CLIENT_OUTPUT, deviceTouch } from '../client-environment';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * Directive used to tell components and their sub components that client output
6
- * should be adapted for touch devices like mobiles and tablets.
7
- */
8
- export class ClientOutputTouchDirective {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ClientOutputTouchDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
10
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ClientOutputTouchDirective, selector: "[graniteClientOutputTouch]", providers: [
11
- {
12
- provide: GRANITE_CLIENT_OUTPUT,
13
- useValue: deviceTouch.output,
14
- },
15
- ], ngImport: i0 }); }
16
- }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ClientOutputTouchDirective, decorators: [{
18
- type: Directive,
19
- args: [{
20
- selector: `[graniteClientOutputTouch]`,
21
- providers: [
22
- {
23
- provide: GRANITE_CLIENT_OUTPUT,
24
- useValue: deviceTouch.output,
25
- },
26
- ],
27
- }]
28
- }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LW91dHB1dC10b3VjaC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2NvcmUvZGV2aWNlcy9jbGllbnQtb3V0cHV0LXRvdWNoLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFFM0U7OztHQUdHO0FBVUgsTUFBTSxPQUFPLDBCQUEwQjsrR0FBMUIsMEJBQTBCO21HQUExQiwwQkFBMEIscURBUDFCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLHFCQUFxQjtnQkFDOUIsUUFBUSxFQUFFLFdBQVcsQ0FBQyxNQUFNO2FBQzdCO1NBQ0Y7OzRGQUVVLDBCQUEwQjtrQkFUdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNEJBQTRCO29CQUN0QyxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLHFCQUFxQjs0QkFDOUIsUUFBUSxFQUFFLFdBQVcsQ0FBQyxNQUFNO3lCQUM3QjtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR1JBTklURV9DTElFTlRfT1VUUFVULCBkZXZpY2VUb3VjaCB9IGZyb20gJy4uL2NsaWVudC1lbnZpcm9ubWVudCc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHVzZWQgdG8gdGVsbCBjb21wb25lbnRzIGFuZCB0aGVpciBzdWIgY29tcG9uZW50cyB0aGF0IGNsaWVudCBvdXRwdXRcbiAqIHNob3VsZCBiZSBhZGFwdGVkIGZvciB0b3VjaCBkZXZpY2VzIGxpa2UgbW9iaWxlcyBhbmQgdGFibGV0cy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiBgW2dyYW5pdGVDbGllbnRPdXRwdXRUb3VjaF1gLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBHUkFOSVRFX0NMSUVOVF9PVVRQVVQsXG4gICAgICB1c2VWYWx1ZTogZGV2aWNlVG91Y2gub3V0cHV0LFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIENsaWVudE91dHB1dFRvdWNoRGlyZWN0aXZlIHt9XG4iXX0=
@@ -1,83 +0,0 @@
1
- import { Directive, ElementRef, Renderer2, } from '@angular/core';
2
- import { fromEvent } from 'rxjs';
3
- import { debounceTime } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- export class GraniteHideOnOverflowDirective {
6
- constructor(_elementRef, renderer) {
7
- this._elementRef = _elementRef;
8
- this.renderer = renderer;
9
- }
10
- ngAfterViewInit() {
11
- this.hideOnOverflow();
12
- this.observeResize();
13
- this.observeContentChange();
14
- }
15
- ngOnDestroy() {
16
- this.unObserveResize();
17
- this.unObserveContentChange();
18
- }
19
- hideOnOverflow() {
20
- const element = this._elementRef?.nativeElement;
21
- if (element) {
22
- const contentWidth = element.scrollWidth;
23
- const containerWidth = element.clientWidth;
24
- if (contentWidth > containerWidth) {
25
- this.renderer.setStyle(element, 'visibility', 'hidden');
26
- }
27
- else {
28
- this.renderer.removeStyle(element, 'visibility');
29
- }
30
- }
31
- }
32
- observeResize() {
33
- if (window.ResizeObserver) {
34
- const element = this._elementRef?.nativeElement;
35
- if (element) {
36
- this.resizeObserver = new ResizeObserver(() => this.hideOnOverflow());
37
- this.resizeObserver.observe(element);
38
- }
39
- }
40
- else {
41
- this.subscribeToResize();
42
- }
43
- }
44
- unObserveResize() {
45
- if (this.resizeObserver) {
46
- this.resizeObserver.disconnect();
47
- }
48
- if (this.resizeSubscription) {
49
- this.resizeSubscription.unsubscribe();
50
- }
51
- }
52
- subscribeToResize() {
53
- this.resizeSubscription = fromEvent(window, 'resize')
54
- .pipe(debounceTime(1000))
55
- .subscribe(() => this.hideOnOverflow());
56
- }
57
- observeContentChange() {
58
- const element = this._elementRef?.nativeElement;
59
- if (element) {
60
- this.mutationObserver = new MutationObserver(() => this.hideOnOverflow());
61
- this.mutationObserver.observe(element, {
62
- childList: true,
63
- subtree: true,
64
- characterData: true,
65
- });
66
- }
67
- }
68
- unObserveContentChange() {
69
- if (this.mutationObserver) {
70
- this.mutationObserver.disconnect();
71
- }
72
- }
73
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteHideOnOverflowDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
74
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: GraniteHideOnOverflowDirective, selector: "[graniteHideOnOverflow]", exportAs: ["graniteHideOnOverflow"], ngImport: i0 }); }
75
- }
76
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteHideOnOverflowDirective, decorators: [{
77
- type: Directive,
78
- args: [{
79
- selector: '[graniteHideOnOverflow]',
80
- exportAs: 'graniteHideOnOverflow',
81
- }]
82
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }] });
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlkZS1vbi1vdmVyZmxvdy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2NvcmUvaGlkZS1vbi1vdmVyZmxvdy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxVQUFVLEVBRVYsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFNOUMsTUFBTSxPQUFPLDhCQUE4QjtJQU96QyxZQUNVLFdBQXVCLEVBQ3ZCLFFBQW1CO1FBRG5CLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLGFBQVEsR0FBUixRQUFRLENBQVc7SUFDMUIsQ0FBQztJQUVKLGVBQWU7UUFDYixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxjQUFjO1FBQ1osTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxhQUFhLENBQUM7UUFFaEQsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUM7WUFDekMsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQztZQUUzQyxJQUFJLFlBQVksR0FBRyxjQUFjLEVBQUUsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQztZQUMxRCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDO1lBQ25ELENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUMxQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQztZQUVoRCxJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUNaLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7Z0JBQ3RFLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3ZDLENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbkMsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3hDLENBQUM7SUFDSCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDO2FBQ2xELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDeEIsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxhQUFhLENBQUM7UUFFaEQsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO1lBQzFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFO2dCQUNyQyxTQUFTLEVBQUUsSUFBSTtnQkFDZixPQUFPLEVBQUUsSUFBSTtnQkFDYixhQUFhLEVBQUUsSUFBSTthQUNwQixDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQztJQUVELHNCQUFzQjtRQUNwQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNyQyxDQUFDO0lBQ0gsQ0FBQzsrR0FuRlUsOEJBQThCO21HQUE5Qiw4QkFBOEI7OzRGQUE5Qiw4QkFBOEI7a0JBSjFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsUUFBUSxFQUFFLHVCQUF1QjtpQkFDbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIE9uRGVzdHJveSxcbiAgUmVuZGVyZXIyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tncmFuaXRlSGlkZU9uT3ZlcmZsb3ddJyxcbiAgZXhwb3J0QXM6ICdncmFuaXRlSGlkZU9uT3ZlcmZsb3cnLFxufSlcbmV4cG9ydCBjbGFzcyBHcmFuaXRlSGlkZU9uT3ZlcmZsb3dEaXJlY3RpdmVcbiAgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3lcbntcbiAgcmVzaXplT2JzZXJ2ZXI6IFJlc2l6ZU9ic2VydmVyO1xuICByZXNpemVTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgbXV0YXRpb25PYnNlcnZlcjogTXV0YXRpb25PYnNlcnZlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaGlkZU9uT3ZlcmZsb3coKTtcbiAgICB0aGlzLm9ic2VydmVSZXNpemUoKTtcbiAgICB0aGlzLm9ic2VydmVDb250ZW50Q2hhbmdlKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnVuT2JzZXJ2ZVJlc2l6ZSgpO1xuICAgIHRoaXMudW5PYnNlcnZlQ29udGVudENoYW5nZSgpO1xuICB9XG5cbiAgaGlkZU9uT3ZlcmZsb3coKTogdm9pZCB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2VsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBpZiAoZWxlbWVudCkge1xuICAgICAgY29uc3QgY29udGVudFdpZHRoID0gZWxlbWVudC5zY3JvbGxXaWR0aDtcbiAgICAgIGNvbnN0IGNvbnRhaW5lcldpZHRoID0gZWxlbWVudC5jbGllbnRXaWR0aDtcblxuICAgICAgaWYgKGNvbnRlbnRXaWR0aCA+IGNvbnRhaW5lcldpZHRoKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoZWxlbWVudCwgJ3Zpc2liaWxpdHknLCAnaGlkZGVuJyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKGVsZW1lbnQsICd2aXNpYmlsaXR5Jyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb2JzZXJ2ZVJlc2l6ZSgpOiB2b2lkIHtcbiAgICBpZiAod2luZG93LlJlc2l6ZU9ic2VydmVyKSB7XG4gICAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5fZWxlbWVudFJlZj8ubmF0aXZlRWxlbWVudDtcblxuICAgICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgICAgdGhpcy5yZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoKSA9PiB0aGlzLmhpZGVPbk92ZXJmbG93KCkpO1xuICAgICAgICB0aGlzLnJlc2l6ZU9ic2VydmVyLm9ic2VydmUoZWxlbWVudCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3Vic2NyaWJlVG9SZXNpemUoKTtcbiAgICB9XG4gIH1cblxuICB1bk9ic2VydmVSZXNpemUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucmVzaXplT2JzZXJ2ZXIpIHtcbiAgICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgIH1cbiAgICBpZiAodGhpcy5yZXNpemVTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMucmVzaXplU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgc3Vic2NyaWJlVG9SZXNpemUoKTogdm9pZCB7XG4gICAgdGhpcy5yZXNpemVTdWJzY3JpcHRpb24gPSBmcm9tRXZlbnQod2luZG93LCAncmVzaXplJylcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSgxMDAwKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5oaWRlT25PdmVyZmxvdygpKTtcbiAgfVxuXG4gIG9ic2VydmVDb250ZW50Q2hhbmdlKCk6IHZvaWQge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9lbGVtZW50UmVmPy5uYXRpdmVFbGVtZW50O1xuXG4gICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgIHRoaXMubXV0YXRpb25PYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKCgpID0+IHRoaXMuaGlkZU9uT3ZlcmZsb3coKSk7XG4gICAgICB0aGlzLm11dGF0aW9uT2JzZXJ2ZXIub2JzZXJ2ZShlbGVtZW50LCB7XG4gICAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgICAgc3VidHJlZTogdHJ1ZSxcbiAgICAgICAgY2hhcmFjdGVyRGF0YTogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHVuT2JzZXJ2ZUNvbnRlbnRDaGFuZ2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXV0YXRpb25PYnNlcnZlcikge1xuICAgICAgdGhpcy5tdXRhdGlvbk9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,18 +0,0 @@
1
- import { Directive, TemplateRef, ViewChild } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class OverlayBaseComponent {
4
- constructor() {
5
- this.xPosition = 'after';
6
- this.yPosition = 'below';
7
- }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OverlayBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
9
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: OverlayBaseComponent, viewQueries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0 }); }
10
- }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OverlayBaseComponent, decorators: [{
12
- type: Directive,
13
- args: [{}]
14
- }], propDecorators: { templateRef: [{
15
- type: ViewChild,
16
- args: [TemplateRef]
17
- }] } });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ncmFuaXRlLWNvbXBvbmVudHMvc3JjL2xpYi9jb3JlL292ZXJsYXktYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVWxFLE1BQU0sT0FBTyxvQkFBb0I7SUFEakM7UUFJRSxjQUFTLEdBQWMsT0FBTyxDQUFDO1FBRS9CLGNBQVMsR0FBYyxPQUFPLENBQUM7S0FPaEM7K0dBWlksb0JBQW9CO21HQUFwQixvQkFBb0IsdUVBQ3BCLFdBQVc7OzRGQURYLG9CQUFvQjtrQkFEaEMsU0FBUzttQkFBQyxFQUFFOzhCQUVhLFdBQVc7c0JBQWxDLFNBQVM7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ2xpZW50SW5wdXRJbnRlcmZhY2UsXG4gIENsaWVudE91dHB1dEludGVyZmFjZSxcbn0gZnJvbSAnLi9jbGllbnQtZW52aXJvbm1lbnQnO1xuXG5leHBvcnQgdHlwZSBQb3NpdGlvblggPSAnYmVmb3JlJyB8ICdhZnRlcic7XG5leHBvcnQgdHlwZSBQb3NpdGlvblkgPSAnYWJvdmUnIHwgJ2JlbG93JztcblxuQERpcmVjdGl2ZSh7fSlcbmV4cG9ydCBjbGFzcyBPdmVybGF5QmFzZUNvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoVGVtcGxhdGVSZWYpIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHhQb3NpdGlvbjogUG9zaXRpb25YID0gJ2FmdGVyJztcblxuICB5UG9zaXRpb246IFBvc2l0aW9uWSA9ICdiZWxvdyc7XG5cbiAgZGlyZWN0aW9uOiBEaXJlY3Rpb247XG5cbiAgY2xpZW50SW5wdXQ6IENsaWVudElucHV0SW50ZXJmYWNlO1xuXG4gIGNsaWVudE91dHB1dDogQ2xpZW50T3V0cHV0SW50ZXJmYWNlO1xufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1wb3NpdGlvbi1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2dyYW5pdGUtY29tcG9uZW50cy9zcmMvbGliL2NvcmUvb3ZlcmxheS1wb3NpdGlvbi1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgT3ZlcmxheVBvc2l0aW9uQ29uZmlnIHtcbiAgb3JpZ2luWD86ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnO1xuICBvcmlnaW5GYWxsYmFja1g/OiAnc3RhcnQnIHwgJ2NlbnRlcicgfCAnZW5kJztcbiAgb3JpZ2luWT86ICd0b3AnIHwgJ2NlbnRlcicgfCAnYm90dG9tJztcbiAgb3JpZ2luRmFsbGJhY2tZPzogJ3RvcCcgfCAnY2VudGVyJyB8ICdib3R0b20nO1xuICBvdmVybGF5WD86ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnO1xuICBvdmVybGF5RmFsbGJhY2tYPzogJ3N0YXJ0JyB8ICdjZW50ZXInIHwgJ2VuZCc7XG4gIG92ZXJsYXlZPzogJ3RvcCcgfCAnY2VudGVyJyB8ICdib3R0b20nO1xuICBvdmVybGF5RmFsbGJhY2tZPzogJ3RvcCcgfCAnY2VudGVyJyB8ICdib3R0b20nO1xuICBvZmZzZXRYPzogbnVtYmVyO1xuICBvZmZzZXRZPzogbnVtYmVyO1xufVxuIl19
@@ -1,121 +0,0 @@
1
- import { Overlay, OverlayConfig, } from '@angular/cdk/overlay';
2
- import { Directive, ElementRef, inject, Optional, ViewContainerRef, } from '@angular/core';
3
- import { GRANITE_CLIENT_INPUT, GRANITE_CLIENT_OUTPUT, } from './client-environment';
4
- import { Directionality } from '@angular/cdk/bidi';
5
- import { OverlayService } from './overlay.service';
6
- import * as i0 from "@angular/core";
7
- export class GraniteOverlayTriggerForBaseDirective {
8
- constructor() {
9
- /** Client output device information */
10
- this._clientOutput = inject(GRANITE_CLIENT_OUTPUT);
11
- /** Client input device information */
12
- this._clientInput = inject(GRANITE_CLIENT_INPUT);
13
- this._dir = inject(Directionality);
14
- this.offsetX = 0;
15
- this.offsetY = 0;
16
- this._overlayRef = null;
17
- this._overlay = inject(Overlay);
18
- this._element = inject((ElementRef));
19
- this._viewContainerRef = inject(ViewContainerRef);
20
- this._overlayService = inject(OverlayService);
21
- }
22
- ngOnDestroy() {
23
- if (this._overlayRef) {
24
- this._overlayRef.dispose();
25
- this._overlayRef = null;
26
- }
27
- }
28
- getPositionConfig() {
29
- const [originX, originFallbackX] = this.componentRef.xPosition === 'before'
30
- ? ['end', 'start']
31
- : ['start', 'end'];
32
- const [overlayY, overlayFallbackY] = this.componentRef.yPosition === 'above'
33
- ? ['bottom', 'top']
34
- : ['top', 'bottom'];
35
- let [originY, originFallbackY] = [overlayY, overlayFallbackY];
36
- const [overlayX, overlayFallbackX] = [originX, originFallbackX];
37
- originY = overlayY === 'top' ? 'bottom' : 'top';
38
- originFallbackY = overlayFallbackY === 'top' ? 'bottom' : 'top';
39
- return {
40
- originX,
41
- originFallbackX,
42
- originY,
43
- originFallbackY,
44
- overlayX,
45
- overlayFallbackX,
46
- overlayY,
47
- overlayFallbackY,
48
- offsetX: this.offsetX,
49
- offsetY: this.offsetY,
50
- };
51
- }
52
- getPositionStrategy() {
53
- let positionStrategy = this._overlayService.desktopPositionStrategy(this._element, this.selector);
54
- const positionConfig = this.getPositionConfig();
55
- positionStrategy = this._overlayService.setPosition(positionStrategy, positionConfig);
56
- return positionStrategy;
57
- }
58
- getScrollStrategy() {
59
- return this.setScrollStrategy('close');
60
- }
61
- setScrollStrategy(scrollStrategy) {
62
- switch (scrollStrategy) {
63
- case 'reposition':
64
- return this._overlay.scrollStrategies.reposition();
65
- case 'block':
66
- return this._overlay.scrollStrategies.block();
67
- case 'close':
68
- return this._overlay.scrollStrategies.close();
69
- default:
70
- return this._overlay.scrollStrategies.close();
71
- }
72
- }
73
- toggleOverlay(isOpen) {
74
- isOpen ? this._closeOverlay() : this._openOverlay();
75
- return !isOpen;
76
- }
77
- onOutsideClick() {
78
- this._closeOverlay();
79
- }
80
- _openOverlay() {
81
- this.componentRef.direction = this._dir.value === 'rtl' ? 'rtl' : 'ltr';
82
- this.componentRef.clientInput = this._clientInput;
83
- this.componentRef.clientOutput = this._clientOutput;
84
- const panelClass = [];
85
- if (this._clientOutput?.device === 'touch') {
86
- panelClass.push('granite-overlay-pane-center');
87
- }
88
- const hasBackdrop = this._clientOutput?.device === 'touch';
89
- const config = new OverlayConfig({
90
- positionStrategy: this.getPositionStrategy(),
91
- backdropClass: 'granite-overlay-dark-glass-backdrop',
92
- scrollStrategy: this.getScrollStrategy(),
93
- direction: this._dir,
94
- panelClass,
95
- hasBackdrop,
96
- });
97
- this._overlayRef = this._overlayService.createOverlay(config, this.componentRef, this._viewContainerRef);
98
- this._overlayService.subscribeOutsideClick(this._overlayRef, () => this.onOutsideClick());
99
- }
100
- _closeOverlay() {
101
- if (!this._overlayRef) {
102
- return;
103
- }
104
- this._overlayService.closeOverlay(this._overlayRef, this._element);
105
- }
106
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteOverlayTriggerForBaseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
107
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: GraniteOverlayTriggerForBaseDirective, selector: "[graniteOverlayTriggerForBase]", ngImport: i0 }); }
108
- }
109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GraniteOverlayTriggerForBaseDirective, decorators: [{
110
- type: Directive,
111
- args: [{
112
- selector: '[graniteOverlayTriggerForBase]',
113
- }]
114
- }], propDecorators: { _clientOutput: [{
115
- type: Optional
116
- }], _clientInput: [{
117
- type: Optional
118
- }], _dir: [{
119
- type: Optional
120
- }] } });
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS10cmlnZ2VyLWZvci1iYXNlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZ3Jhbml0ZS1jb21wb25lbnRzL3NyYy9saWIvY29yZS9vdmVybGF5LXRyaWdnZXItZm9yLWJhc2UuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFLTCxPQUFPLEVBQ1AsYUFBYSxHQUtkLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUVOLFFBQVEsRUFDUixnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixxQkFBcUIsR0FDdEIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQU9uRCxNQUFNLE9BQU8scUNBQXFDO0lBSGxEO1FBSUUsdUNBQXVDO1FBRS9CLGtCQUFhLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFdEQsc0NBQXNDO1FBRTlCLGlCQUFZLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFHNUMsU0FBSSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUk1QixZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLFlBQU8sR0FBVyxDQUFDLENBQUM7UUFFdEIsZ0JBQVcsR0FBc0IsSUFBSSxDQUFDO1FBRXRDLGFBQVEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0IsYUFBUSxHQUFHLE1BQU0sQ0FBQyxDQUFBLFVBQXVCLENBQUEsQ0FBQyxDQUFDO1FBQzNDLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzdDLG9CQUFl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QUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxDQUNoRSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQ3RCLENBQUM7SUFDSixDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDckUsQ0FBQzsrR0EvSVUscUNBQXFDO21HQUFyQyxxQ0FBcUM7OzRGQUFyQyxxQ0FBcUM7a0JBSGpELFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdDQUFnQztpQkFDM0M7OEJBSVMsYUFBYTtzQkFEcEIsUUFBUTtnQkFLRCxZQUFZO3NCQURuQixRQUFRO2dCQUlELElBQUk7c0JBRFgsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJsb2NrU2Nyb2xsU3RyYXRlZ3ksXG4gIENsb3NlU2Nyb2xsU3RyYXRlZ3ksXG4gIEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSxcbiAgSG9yaXpvbnRhbENvbm5lY3Rpb25Qb3MsXG4gIE92ZXJsYXksXG4gIE92ZXJsYXlDb25maWcsXG4gIE92ZXJsYXlSZWYsXG4gIFBvc2l0aW9uU3RyYXRlZ3ksXG4gIFJlcG9zaXRpb25TY3JvbGxTdHJhdGVneSxcbiAgVmVydGljYWxDb25uZWN0aW9uUG9zLFxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIGluamVjdCxcbiAgT25EZXN0cm95LFxuICBPcHRpb25hbCxcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBHUkFOSVRFX0NMSUVOVF9JTlBVVCxcbiAgR1JBTklURV9DTElFTlRfT1VUUFVULFxufSBmcm9tICcuL2NsaWVudC1lbnZpcm9ubWVudCc7XG5pbXBvcnQgeyBEaXJlY3Rpb25hbGl0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9iaWRpJztcbmltcG9ydCB7IE92ZXJsYXlTZXJ2aWNlIH0gZnJvbSAnLi9vdmVybGF5LnNlcnZpY2UnO1xuaW1wb3J0IHsgT3ZlcmxheVBvc2l0aW9uQ29uZmlnIH0gZnJvbSAnLi9vdmVybGF5LXBvc2l0aW9uLWNvbmZpZyc7XG5pbXBvcnQgeyBPdmVybGF5QmFzZUNvbXBvbmVudCB9IGZyb20gJy4vb3ZlcmxheS1iYXNlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2dyYW5pdGVPdmVybGF5VHJpZ2dlckZvckJhc2VdJyxcbn0pXG5leHBvcnQgY2xhc3MgR3Jhbml0ZU92ZXJsYXlUcmlnZ2VyRm9yQmFzZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIC8qKiBDbGllbnQgb3V0cHV0IGRldmljZSBpbmZvcm1hdGlvbiAqL1xuICBAT3B0aW9uYWwoKVxuICBwcml2YXRlIF9jbGllbnRPdXRwdXQgPSBpbmplY3QoR1JBTklURV9DTElFTlRfT1VUUFVUKTtcblxuICAvKiogQ2xpZW50IGlucHV0IGRldmljZSBpbmZvcm1hdGlvbiAqL1xuICBAT3B0aW9uYWwoKVxuICBwcml2YXRlIF9jbGllbnRJbnB1dCA9IGluamVjdChHUkFOSVRFX0NMSUVOVF9JTlBVVCk7XG5cbiAgQE9wdGlvbmFsKClcbiAgcHJpdmF0ZSBfZGlyID0gaW5qZWN0KERpcmVjdGlvbmFsaXR5KTtcblxuICBwcm90ZWN0ZWQgY29tcG9uZW50UmVmOiBPdmVybGF5QmFzZUNvbXBvbmVudDtcbiAgcHJvdGVjdGVkIHNlbGVjdG9yOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBvZmZzZXRYOiBudW1iZXIgPSAwO1xuICBwcm90ZWN0ZWQgb2Zmc2V0WTogbnVtYmVyID0gMDtcblxuICBwcml2YXRlIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBfb3ZlcmxheSA9IGluamVjdChPdmVybGF5KTtcbiAgcHJpdmF0ZSBfZWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmPEhUTUxFbGVtZW50Pik7XG4gIHByaXZhdGUgX3ZpZXdDb250YWluZXJSZWYgPSBpbmplY3QoVmlld0NvbnRhaW5lclJlZik7XG4gIHByaXZhdGUgX292ZXJsYXlTZXJ2aWNlID0gaW5qZWN0KE92ZXJsYXlTZXJ2aWNlKTtcblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fb3ZlcmxheVJlZikge1xuICAgICAgdGhpcy5fb3ZlcmxheVJlZi5kaXNwb3NlKCk7XG4gICAgICB0aGlzLl9vdmVybGF5UmVmID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0UG9zaXRpb25Db25maWcoKTogT3ZlcmxheVBvc2l0aW9uQ29uZmlnIHtcbiAgICBjb25zdCBbb3JpZ2luWCwgb3JpZ2luRmFsbGJhY2tYXTogSG9yaXpvbnRhbENvbm5lY3Rpb25Qb3NbXSA9XG4gICAgICB0aGlzLmNvbXBvbmVudFJlZi54UG9zaXRpb24gPT09ICdiZWZvcmUnXG4gICAgICAgID8gWydlbmQnLCAnc3RhcnQnXVxuICAgICAgICA6IFsnc3RhcnQnLCAnZW5kJ107XG5cbiAgICBjb25zdCBbb3ZlcmxheVksIG92ZXJsYXlGYWxsYmFja1ldOiBWZXJ0aWNhbENvbm5lY3Rpb25Qb3NbXSA9XG4gICAgICB0aGlzLmNvbXBvbmVudFJlZi55UG9zaXRpb24gPT09ICdhYm92ZSdcbiAgICAgICAgPyBbJ2JvdHRvbScsICd0b3AnXVxuICAgICAgICA6IFsndG9wJywgJ2JvdHRvbSddO1xuXG4gICAgbGV0IFtvcmlnaW5ZLCBvcmlnaW5GYWxsYmFja1ldID0gW292ZXJsYXlZLCBvdmVybGF5RmFsbGJhY2tZXTtcbiAgICBjb25zdCBbb3ZlcmxheVgsIG92ZXJsYXlGYWxsYmFja1hdID0gW29yaWdpblgsIG9yaWdpbkZhbGxiYWNrWF07XG5cbiAgICBvcmlnaW5ZID0gb3ZlcmxheVkgPT09ICd0b3AnID8gJ2JvdHRvbScgOiAndG9wJztcbiAgICBvcmlnaW5GYWxsYmFja1kgPSBvdmVybGF5RmFsbGJhY2tZID09PSAndG9wJyA/ICdib3R0b20nIDogJ3RvcCc7XG5cbiAgICByZXR1cm4ge1xuICAgICAgb3JpZ2luWCxcbiAgICAgIG9yaWdpbkZhbGxiYWNrWCxcbiAgICAgIG9yaWdpblksXG4gICAgICBvcmlnaW5GYWxsYmFja1ksXG4gICAgICBvdmVybGF5WCxcbiAgICAgIG92ZXJsYXlGYWxsYmFja1gsXG4gICAgICBvdmVybGF5WSxcbiAgICAgIG92ZXJsYXlGYWxsYmFja1ksXG4gICAgICBvZmZzZXRYOiB0aGlzLm9mZnNldFgsXG4gICAgICBvZmZzZXRZOiB0aGlzLm9mZnNldFksXG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRQb3NpdGlvblN0cmF0ZWd5KCk6IFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgIGxldCBwb3NpdGlvblN0cmF0ZWd5OiBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3kgPVxuICAgICAgdGhpcy5fb3ZlcmxheVNlcnZpY2UuZGVza3RvcFBvc2l0aW9uU3RyYXRlZ3koXG4gICAgICAgIHRoaXMuX2VsZW1lbnQsXG4gICAgICAgIHRoaXMuc2VsZWN0b3JcbiAgICAgICk7XG4gICAgY29uc3QgcG9zaXRpb25Db25maWc6IE92ZXJsYXlQb3NpdGlvbkNvbmZpZyA9IHRoaXMuZ2V0UG9zaXRpb25Db25maWcoKTtcbiAgICBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fb3ZlcmxheVNlcnZpY2Uuc2V0UG9zaXRpb24oXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgcG9zaXRpb25Db25maWdcbiAgICApO1xuICAgIHJldHVybiBwb3NpdGlvblN0cmF0ZWd5O1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldFNjcm9sbFN0cmF0ZWd5KCk6XG4gICAgfCBSZXBvc2l0aW9uU2Nyb2xsU3RyYXRlZ3lcbiAgICB8IEJsb2NrU2Nyb2xsU3RyYXRlZ3lcbiAgICB8IENsb3NlU2Nyb2xsU3RyYXRlZ3kge1xuICAgIHJldHVybiB0aGlzLnNldFNjcm9sbFN0cmF0ZWd5KCdjbG9zZScpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldFNjcm9sbFN0cmF0ZWd5KFxuICAgIHNjcm9sbFN0cmF0ZWd5OiAncmVwb3NpdGlvbicgfCAnYmxvY2snIHwgJ2Nsb3NlJ1xuICApOiBSZXBvc2l0aW9uU2Nyb2xsU3RyYXRlZ3kgfCBCbG9ja1Njcm9sbFN0cmF0ZWd5IHwgQ2xvc2VTY3JvbGxTdHJhdGVneSB7XG4gICAgc3dpdGNoIChzY3JvbGxTdHJhdGVneSkge1xuICAgICAgY2FzZSAncmVwb3NpdGlvbic6XG4gICAgICAgIHJldHVybiB0aGlzLl9vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbigpO1xuICAgICAgY2FzZSAnYmxvY2snOlxuICAgICAgICByZXR1cm4gdGhpcy5fb3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLmJsb2NrKCk7XG4gICAgICBjYXNlICdjbG9zZSc6XG4gICAgICAgIHJldHVybiB0aGlzLl9vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuY2xvc2UoKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB0aGlzLl9vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgdG9nZ2xlT3ZlcmxheShpc09wZW46IGJvb2xlYW4pOiBib29sZWFuIHtcbiAgICBpc09wZW4gPyB0aGlzLl9jbG9zZU92ZXJsYXkoKSA6IHRoaXMuX29wZW5PdmVybGF5KCk7XG4gICAgcmV0dXJuICFpc09wZW47XG4gIH1cblxuICBwcm90ZWN0ZWQgb25PdXRzaWRlQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5fY2xvc2VPdmVybGF5KCk7XG4gIH1cblxuICBwcml2YXRlIF9vcGVuT3ZlcmxheSgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbXBvbmVudFJlZi5kaXJlY3Rpb24gPSB0aGlzLl9kaXIudmFsdWUgPT09ICdydGwnID8gJ3J0bCcgOiAnbHRyJztcbiAgICB0aGlzLmNvbXBvbmVudFJlZi5jbGllbnRJbnB1dCA9IHRoaXMuX2NsaWVudElucHV0O1xuICAgIHRoaXMuY29tcG9uZW50UmVmLmNsaWVudE91dHB1dCA9IHRoaXMuX2NsaWVudE91dHB1dDtcblxuICAgIGNvbnN0IHBhbmVsQ2xhc3M6IHN0cmluZ1tdID0gW107XG4gICAgaWYgKHRoaXMuX2NsaWVudE91dHB1dD8uZGV2aWNlID09PSAndG91Y2gnKSB7XG4gICAgICBwYW5lbENsYXNzLnB1c2goJ2dyYW5pdGUtb3ZlcmxheS1wYW5lLWNlbnRlcicpO1xuICAgIH1cblxuICAgIGNvbnN0IGhhc0JhY2tkcm9wID0gdGhpcy5fY2xpZW50T3V0cHV0Py5kZXZpY2UgPT09ICd0b3VjaCc7XG5cbiAgICBjb25zdCBjb25maWcgPSBuZXcgT3ZlcmxheUNvbmZpZyh7XG4gICAgICBwb3NpdGlvblN0cmF0ZWd5OiB0aGlzLmdldFBvc2l0aW9uU3RyYXRlZ3koKSxcbiAgICAgIGJhY2tkcm9wQ2xhc3M6ICdncmFuaXRlLW92ZXJsYXktZGFyay1nbGFzcy1iYWNrZHJvcCcsXG4gICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5nZXRTY3JvbGxTdHJhdGVneSgpLFxuICAgICAgZGlyZWN0aW9uOiB0aGlzLl9kaXIsXG4gICAgICBwYW5lbENsYXNzLFxuICAgICAgaGFzQmFja2Ryb3AsXG4gICAgfSk7XG5cbiAgICB0aGlzLl9vdmVybGF5UmVmID0gdGhpcy5fb3ZlcmxheVNlcnZpY2UuY3JlYXRlT3ZlcmxheShcbiAgICAgIGNvbmZpZyxcbiAgICAgIHRoaXMuY29tcG9uZW50UmVmLFxuICAgICAgdGhpcy5fdmlld0NvbnRhaW5lclJlZlxuICAgICk7XG4gICAgdGhpcy5fb3ZlcmxheVNlcnZpY2Uuc3Vic2NyaWJlT3V0c2lkZUNsaWNrKHRoaXMuX292ZXJsYXlSZWYsICgpID0+XG4gICAgICB0aGlzLm9uT3V0c2lkZUNsaWNrKClcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2xvc2VPdmVybGF5KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fb3ZlcmxheVJlZikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9vdmVybGF5U2VydmljZS5jbG9zZU92ZXJsYXkodGhpcy5fb3ZlcmxheVJlZiwgdGhpcy5fZWxlbWVudCk7XG4gIH1cbn1cbiJdfQ==