@odx/angular 1.0.0-rc.6 → 1.0.0-rc.8

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 (241) hide show
  1. package/cdk/active-indicator/lib/active-indicator.directive.d.ts +1 -0
  2. package/cdk/connected-overlay/README.md +3 -0
  3. package/cdk/connected-overlay/index.d.ts +3 -0
  4. package/cdk/connected-overlay/lib/connected-overlay.component.d.ts +28 -0
  5. package/cdk/connected-overlay/lib/connected-overlay.service.d.ts +10 -0
  6. package/cdk/connected-overlay/lib/helpers/compute-overlay-position.d.ts +3 -0
  7. package/cdk/connected-overlay/lib/helpers/get-opposite-overlay-side.d.ts +2 -0
  8. package/cdk/connected-overlay/lib/helpers/get-overlay-side.d.ts +2 -0
  9. package/cdk/connected-overlay/lib/helpers/index.d.ts +3 -0
  10. package/cdk/connected-overlay/lib/models/connected-overlay-options.d.ts +23 -0
  11. package/cdk/connected-overlay/lib/models/connected-overlay-ref.d.ts +12 -0
  12. package/cdk/connected-overlay/lib/models/index.d.ts +2 -0
  13. package/cdk/dynamic-view/lib/models/dynamic-view-options.d.ts +1 -1
  14. package/components/circular-progress/lib/circular-progress.component.d.ts +1 -0
  15. package/components/dropdown/README.md +3 -0
  16. package/components/dropdown/index.d.ts +4 -0
  17. package/components/dropdown/lib/dropdown.component.d.ts +11 -0
  18. package/components/dropdown/lib/dropdown.directive.d.ts +36 -0
  19. package/components/dropdown/lib/dropdown.module.d.ts +8 -0
  20. package/components/dropdown/lib/models/dropdown-options.d.ts +3 -0
  21. package/components/dropdown/lib/models/index.d.ts +1 -0
  22. package/components/inline-message/README.md +3 -0
  23. package/components/inline-message/index.d.ts +2 -0
  24. package/components/inline-message/lib/inline-message.component.d.ts +9 -0
  25. package/components/inline-message/lib/models/inline-message-variant.d.ts +7 -0
  26. package/components/launch-tile/README.md +3 -0
  27. package/components/launch-tile/index.d.ts +5 -0
  28. package/components/launch-tile/lib/components/launch-tile-footer/launch-tile-footer.component.d.ts +5 -0
  29. package/components/launch-tile/lib/components/launch-tile-subtitle/launch-tile-subtitle.component.d.ts +5 -0
  30. package/components/launch-tile/lib/directives/launch-tile-menu/launch-tile-menu.directive.d.ts +5 -0
  31. package/components/launch-tile/lib/launch-tile.component.d.ts +11 -0
  32. package/components/launch-tile/lib/launch-tile.module.d.ts +16 -0
  33. package/components/loading-spinner/lib/loading-spinner.component.d.ts +2 -2
  34. package/components/loading-spinner/lib/loading-spinner.directive.d.ts +6 -7
  35. package/components/select/README.md +3 -0
  36. package/components/select/index.d.ts +7 -0
  37. package/components/select/lib/abstract/index.d.ts +2 -0
  38. package/components/select/lib/abstract/select-control-option.d.ts +7 -0
  39. package/components/select/lib/abstract/select-control.d.ts +11 -0
  40. package/components/select/lib/components/index.d.ts +1 -0
  41. package/components/select/lib/components/option/option.component.d.ts +22 -0
  42. package/components/select/lib/directives/index.d.ts +1 -0
  43. package/components/select/lib/directives/select-search-field.directive.d.ts +13 -0
  44. package/components/select/lib/pipes/index.d.ts +1 -0
  45. package/components/select/lib/pipes/select-search-filter.pipe.d.ts +13 -0
  46. package/components/select/lib/select.component.d.ts +50 -0
  47. package/components/select/lib/select.module.d.ts +11 -0
  48. package/components/select/lib/select.tokens.d.ts +3 -0
  49. package/components/spinbox/README.md +3 -0
  50. package/components/spinbox/index.d.ts +1 -0
  51. package/components/spinbox/lib/spinbox.component.d.ts +25 -0
  52. package/components/tab-bar/README.md +3 -0
  53. package/components/tab-bar/index.d.ts +4 -0
  54. package/components/tab-bar/lib/components/index.d.ts +1 -0
  55. package/components/tab-bar/lib/components/tab-bar-item/tab-bar-item.component.d.ts +20 -0
  56. package/components/tab-bar/lib/models/index.d.ts +1 -0
  57. package/components/tab-bar/lib/models/tab-change-event.d.ts +5 -0
  58. package/components/tab-bar/lib/tab-bar.component.d.ts +31 -0
  59. package/components/tab-bar/lib/tab-bar.config.d.ts +3 -0
  60. package/components/tab-bar/lib/tab-bar.module.d.ts +9 -0
  61. package/components/tooltip/README.md +3 -0
  62. package/components/tooltip/index.d.ts +3 -0
  63. package/components/tooltip/lib/helpers/index.d.ts +1 -0
  64. package/components/tooltip/lib/helpers/resolve-tooltip-trigger-events.d.ts +2 -0
  65. package/components/tooltip/lib/models/index.d.ts +3 -0
  66. package/components/tooltip/lib/models/tooltip-options.d.ts +10 -0
  67. package/components/tooltip/lib/models/tooltip-size.d.ts +7 -0
  68. package/components/tooltip/lib/models/tooltip-trigger.d.ts +1 -0
  69. package/components/tooltip/lib/tooltip.component.d.ts +12 -0
  70. package/components/tooltip/lib/tooltip.directive.d.ts +33 -0
  71. package/esm2020/cdk/active-indicator/lib/active-indicator.directive.mjs +8 -7
  72. package/esm2020/cdk/connected-overlay/index.mjs +4 -0
  73. package/esm2020/cdk/connected-overlay/lib/connected-overlay.component.mjs +112 -0
  74. package/esm2020/cdk/connected-overlay/lib/connected-overlay.service.mjs +25 -0
  75. package/esm2020/cdk/connected-overlay/lib/helpers/compute-overlay-position.mjs +57 -0
  76. package/esm2020/cdk/connected-overlay/lib/helpers/get-opposite-overlay-side.mjs +13 -0
  77. package/esm2020/cdk/connected-overlay/lib/helpers/get-overlay-side.mjs +4 -0
  78. package/esm2020/cdk/connected-overlay/lib/helpers/index.mjs +4 -0
  79. package/esm2020/cdk/connected-overlay/lib/models/connected-overlay-options.mjs +10 -0
  80. package/esm2020/cdk/connected-overlay/lib/models/connected-overlay-ref.mjs +15 -0
  81. package/esm2020/cdk/connected-overlay/lib/models/index.mjs +3 -0
  82. package/esm2020/cdk/connected-overlay/odx-angular-cdk-connected-overlay.mjs +5 -0
  83. package/esm2020/cdk/dynamic-view/lib/models/dynamic-component-ref.mjs +5 -3
  84. package/esm2020/cdk/dynamic-view/lib/models/dynamic-template-ref.mjs +4 -2
  85. package/esm2020/cdk/dynamic-view/lib/models/dynamic-view-options.mjs +1 -1
  86. package/esm2020/components/accordion/lib/components/accordion-item/accordion-item.component.mjs +3 -3
  87. package/esm2020/components/circular-progress/lib/circular-progress.component.mjs +11 -4
  88. package/esm2020/components/dropdown/index.mjs +5 -0
  89. package/esm2020/components/dropdown/lib/dropdown.component.mjs +31 -0
  90. package/esm2020/components/dropdown/lib/dropdown.directive.mjs +137 -0
  91. package/esm2020/components/dropdown/lib/dropdown.module.mjs +18 -0
  92. package/esm2020/components/dropdown/lib/models/dropdown-options.mjs +8 -0
  93. package/esm2020/components/dropdown/lib/models/index.mjs +2 -0
  94. package/esm2020/components/dropdown/odx-angular-components-dropdown.mjs +5 -0
  95. package/esm2020/components/inline-message/index.mjs +3 -0
  96. package/esm2020/components/inline-message/lib/inline-message.component.mjs +43 -0
  97. package/esm2020/components/inline-message/lib/models/inline-message-variant.mjs +7 -0
  98. package/esm2020/components/inline-message/odx-angular-components-inline-message.mjs +5 -0
  99. package/esm2020/components/launch-tile/index.mjs +6 -0
  100. package/esm2020/components/launch-tile/lib/components/launch-tile-footer/launch-tile-footer.component.mjs +13 -0
  101. package/esm2020/components/launch-tile/lib/components/launch-tile-subtitle/launch-tile-subtitle.component.mjs +13 -0
  102. package/esm2020/components/launch-tile/lib/directives/launch-tile-menu/launch-tile-menu.directive.mjs +17 -0
  103. package/esm2020/components/launch-tile/lib/launch-tile.component.mjs +40 -0
  104. package/esm2020/components/launch-tile/lib/launch-tile.module.mjs +59 -0
  105. package/esm2020/components/launch-tile/odx-angular-components-launch-tile.mjs +5 -0
  106. package/esm2020/components/loading-spinner/lib/loading-spinner.component.mjs +7 -7
  107. package/esm2020/components/loading-spinner/lib/loading-spinner.directive.mjs +28 -24
  108. package/esm2020/components/main-menu/lib/main-menu.component.mjs +3 -3
  109. package/esm2020/components/select/index.mjs +8 -0
  110. package/esm2020/components/select/lib/abstract/index.mjs +3 -0
  111. package/esm2020/components/select/lib/abstract/select-control-option.mjs +2 -0
  112. package/esm2020/components/select/lib/abstract/select-control.mjs +2 -0
  113. package/esm2020/components/select/lib/components/index.mjs +2 -0
  114. package/esm2020/components/select/lib/components/option/option.component.mjs +78 -0
  115. package/esm2020/components/select/lib/directives/index.mjs +2 -0
  116. package/esm2020/components/select/lib/directives/select-search-field.directive.mjs +47 -0
  117. package/esm2020/components/select/lib/pipes/index.mjs +2 -0
  118. package/esm2020/components/select/lib/pipes/select-search-filter.pipe.mjs +51 -0
  119. package/esm2020/components/select/lib/select.component.mjs +190 -0
  120. package/esm2020/components/select/lib/select.module.mjs +21 -0
  121. package/esm2020/components/select/lib/select.tokens.mjs +3 -0
  122. package/esm2020/components/select/odx-angular-components-select.mjs +5 -0
  123. package/esm2020/components/spinbox/index.mjs +2 -0
  124. package/esm2020/components/spinbox/lib/spinbox.component.mjs +91 -0
  125. package/esm2020/components/spinbox/odx-angular-components-spinbox.mjs +5 -0
  126. package/esm2020/components/tab-bar/index.mjs +5 -0
  127. package/esm2020/components/tab-bar/lib/components/index.mjs +2 -0
  128. package/esm2020/components/tab-bar/lib/components/tab-bar-item/tab-bar-item.component.mjs +70 -0
  129. package/esm2020/components/tab-bar/lib/models/index.mjs +2 -0
  130. package/esm2020/components/tab-bar/lib/models/tab-change-event.mjs +2 -0
  131. package/esm2020/components/tab-bar/lib/tab-bar.component.mjs +116 -0
  132. package/esm2020/components/tab-bar/lib/tab-bar.config.mjs +3 -0
  133. package/esm2020/components/tab-bar/lib/tab-bar.module.mjs +19 -0
  134. package/esm2020/components/tab-bar/odx-angular-components-tab-bar.mjs +5 -0
  135. package/esm2020/components/tooltip/index.mjs +4 -0
  136. package/esm2020/components/tooltip/lib/helpers/index.mjs +2 -0
  137. package/esm2020/components/tooltip/lib/helpers/resolve-tooltip-trigger-events.mjs +9 -0
  138. package/esm2020/components/tooltip/lib/models/index.mjs +4 -0
  139. package/esm2020/components/tooltip/lib/models/tooltip-options.mjs +10 -0
  140. package/esm2020/components/tooltip/lib/models/tooltip-size.mjs +7 -0
  141. package/esm2020/components/tooltip/lib/models/tooltip-trigger.mjs +2 -0
  142. package/esm2020/components/tooltip/lib/tooltip.component.mjs +39 -0
  143. package/esm2020/components/tooltip/lib/tooltip.directive.mjs +132 -0
  144. package/esm2020/components/tooltip/odx-angular-components-tooltip.mjs +5 -0
  145. package/esm2020/index.mjs +2 -1
  146. package/esm2020/lib/tokens/identity-matcher.mjs +7 -0
  147. package/esm2020/lib/tokens/index.mjs +4 -0
  148. package/esm2020/lib/tokens/string-search-handler.mjs +9 -0
  149. package/esm2020/lib/tokens/stringify.mjs +8 -0
  150. package/esm2020/rxjs/index.mjs +3 -1
  151. package/esm2020/rxjs/lib/delay-until.mjs +5 -0
  152. package/esm2020/rxjs/lib/form-query-list.mjs +5 -0
  153. package/esm2020/utils/lib/decorators/index.mjs +2 -1
  154. package/esm2020/utils/lib/decorators/pure.mjs +37 -0
  155. package/esm2020/utils/lib/helpers/defer-fn.mjs +4 -0
  156. package/esm2020/utils/lib/helpers/event-manager.mjs +30 -0
  157. package/esm2020/utils/lib/helpers/index.mjs +3 -1
  158. package/fesm2015/odx-angular-cdk-active-indicator.mjs +9 -6
  159. package/fesm2015/odx-angular-cdk-active-indicator.mjs.map +1 -1
  160. package/fesm2015/odx-angular-cdk-connected-overlay.mjs +234 -0
  161. package/fesm2015/odx-angular-cdk-connected-overlay.mjs.map +1 -0
  162. package/fesm2015/odx-angular-cdk-dynamic-view.mjs +6 -3
  163. package/fesm2015/odx-angular-cdk-dynamic-view.mjs.map +1 -1
  164. package/fesm2015/odx-angular-components-accordion.mjs +2 -2
  165. package/fesm2015/odx-angular-components-accordion.mjs.map +1 -1
  166. package/fesm2015/odx-angular-components-circular-progress.mjs +10 -3
  167. package/fesm2015/odx-angular-components-circular-progress.mjs.map +1 -1
  168. package/fesm2015/odx-angular-components-dropdown.mjs +185 -0
  169. package/fesm2015/odx-angular-components-dropdown.mjs.map +1 -0
  170. package/fesm2015/odx-angular-components-inline-message.mjs +55 -0
  171. package/fesm2015/odx-angular-components-inline-message.mjs.map +1 -0
  172. package/fesm2015/odx-angular-components-launch-tile.mjs +133 -0
  173. package/fesm2015/odx-angular-components-launch-tile.mjs.map +1 -0
  174. package/fesm2015/odx-angular-components-loading-spinner.mjs +75 -85
  175. package/fesm2015/odx-angular-components-loading-spinner.mjs.map +1 -1
  176. package/fesm2015/odx-angular-components-main-menu.mjs +2 -2
  177. package/fesm2015/odx-angular-components-main-menu.mjs.map +1 -1
  178. package/fesm2015/odx-angular-components-select.mjs +375 -0
  179. package/fesm2015/odx-angular-components-select.mjs.map +1 -0
  180. package/fesm2015/odx-angular-components-spinbox.mjs +100 -0
  181. package/fesm2015/odx-angular-components-spinbox.mjs.map +1 -0
  182. package/fesm2015/odx-angular-components-tab-bar.mjs +201 -0
  183. package/fesm2015/odx-angular-components-tab-bar.mjs.map +1 -0
  184. package/fesm2015/odx-angular-components-tooltip.mjs +187 -0
  185. package/fesm2015/odx-angular-components-tooltip.mjs.map +1 -0
  186. package/fesm2015/odx-angular-rxjs.mjs +10 -2
  187. package/fesm2015/odx-angular-rxjs.mjs.map +1 -1
  188. package/fesm2015/odx-angular-utils.mjs +72 -2
  189. package/fesm2015/odx-angular-utils.mjs.map +1 -1
  190. package/fesm2015/odx-angular.mjs +21 -1
  191. package/fesm2015/odx-angular.mjs.map +1 -1
  192. package/fesm2020/odx-angular-cdk-active-indicator.mjs +7 -6
  193. package/fesm2020/odx-angular-cdk-active-indicator.mjs.map +1 -1
  194. package/fesm2020/odx-angular-cdk-connected-overlay.mjs +230 -0
  195. package/fesm2020/odx-angular-cdk-connected-overlay.mjs.map +1 -0
  196. package/fesm2020/odx-angular-cdk-dynamic-view.mjs +6 -3
  197. package/fesm2020/odx-angular-cdk-dynamic-view.mjs.map +1 -1
  198. package/fesm2020/odx-angular-components-accordion.mjs +2 -2
  199. package/fesm2020/odx-angular-components-accordion.mjs.map +1 -1
  200. package/fesm2020/odx-angular-components-circular-progress.mjs +10 -3
  201. package/fesm2020/odx-angular-components-circular-progress.mjs.map +1 -1
  202. package/fesm2020/odx-angular-components-dropdown.mjs +187 -0
  203. package/fesm2020/odx-angular-components-dropdown.mjs.map +1 -0
  204. package/fesm2020/odx-angular-components-inline-message.mjs +55 -0
  205. package/fesm2020/odx-angular-components-inline-message.mjs.map +1 -0
  206. package/fesm2020/odx-angular-components-launch-tile.mjs +132 -0
  207. package/fesm2020/odx-angular-components-launch-tile.mjs.map +1 -0
  208. package/fesm2020/odx-angular-components-loading-spinner.mjs +74 -84
  209. package/fesm2020/odx-angular-components-loading-spinner.mjs.map +1 -1
  210. package/fesm2020/odx-angular-components-main-menu.mjs +2 -2
  211. package/fesm2020/odx-angular-components-main-menu.mjs.map +1 -1
  212. package/fesm2020/odx-angular-components-select.mjs +362 -0
  213. package/fesm2020/odx-angular-components-select.mjs.map +1 -0
  214. package/fesm2020/odx-angular-components-spinbox.mjs +97 -0
  215. package/fesm2020/odx-angular-components-spinbox.mjs.map +1 -0
  216. package/fesm2020/odx-angular-components-tab-bar.mjs +196 -0
  217. package/fesm2020/odx-angular-components-tab-bar.mjs.map +1 -0
  218. package/fesm2020/odx-angular-components-tooltip.mjs +192 -0
  219. package/fesm2020/odx-angular-components-tooltip.mjs.map +1 -0
  220. package/fesm2020/odx-angular-rxjs.mjs +10 -2
  221. package/fesm2020/odx-angular-rxjs.mjs.map +1 -1
  222. package/fesm2020/odx-angular-utils.mjs +71 -2
  223. package/fesm2020/odx-angular-utils.mjs.map +1 -1
  224. package/fesm2020/odx-angular.mjs +21 -1
  225. package/fesm2020/odx-angular.mjs.map +1 -1
  226. package/index.d.ts +1 -0
  227. package/lib/tokens/identity-matcher.d.ts +3 -0
  228. package/lib/tokens/index.d.ts +3 -0
  229. package/lib/tokens/string-search-handler.d.ts +3 -0
  230. package/lib/tokens/stringify.d.ts +3 -0
  231. package/package.json +66 -2
  232. package/rxjs/index.d.ts +2 -0
  233. package/rxjs/lib/delay-until.d.ts +2 -0
  234. package/rxjs/lib/form-query-list.d.ts +3 -0
  235. package/utils/lib/decorators/index.d.ts +1 -0
  236. package/utils/lib/decorators/pure.d.ts +1 -0
  237. package/utils/lib/helpers/defer-fn.d.ts +1 -0
  238. package/utils/lib/helpers/event-manager.d.ts +12 -0
  239. package/utils/lib/helpers/index.d.ts +2 -0
  240. package/components/loading-spinner/lib/loading-spinner.service.d.ts +0 -9
  241. package/esm2020/components/loading-spinner/lib/loading-spinner.service.mjs +0 -17
@@ -0,0 +1,132 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, ChangeDetectionStrategy, ViewEncapsulation, Directive, ContentChild, NgModule } from '@angular/core';
3
+ import { __decorate } from 'tslib';
4
+ import * as i2 from '@odx/angular';
5
+ import { DisabledController, CoreModule } from '@odx/angular';
6
+ import { ActionGroupComponent } from '@odx/angular/components/action-group';
7
+ import { ButtonComponent } from '@odx/angular/components/button';
8
+ import * as i3 from '@odx/angular/components/dropdown';
9
+ import { DropdownModule } from '@odx/angular/components/dropdown';
10
+ import { IconComponent } from '@odx/angular/components/icon';
11
+ import { CSSComponent } from '@odx/angular/internal';
12
+ import { injectElement } from '@odx/angular/utils';
13
+ import * as i1 from '@angular/common';
14
+ import { AvatarComponent } from '@odx/angular/components/avatar';
15
+ import { ButtonGroupComponent } from '@odx/angular/components/button-group';
16
+ import { ListModule } from '@odx/angular/components/list';
17
+
18
+ class LaunchTileFooterComponent {
19
+ }
20
+ LaunchTileFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
+ LaunchTileFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: LaunchTileFooterComponent, isStandalone: true, selector: "odx-launch-tile-footer", host: { properties: { "class.odx-launch-tile__footer": "true" } }, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileFooterComponent, decorators: [{
23
+ type: Component,
24
+ args: [{ selector: 'odx-launch-tile-footer', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
25
+ '[class.odx-launch-tile__footer]': 'true',
26
+ }, template: "<ng-content></ng-content>\n" }]
27
+ }] });
28
+
29
+ class LaunchTileSubtitleComponent {
30
+ }
31
+ LaunchTileSubtitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileSubtitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
32
+ LaunchTileSubtitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: LaunchTileSubtitleComponent, isStandalone: true, selector: "odx-launch-tile-subtitle", host: { properties: { "class.odx-launch-tile__subtitle": "true" } }, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileSubtitleComponent, decorators: [{
34
+ type: Component,
35
+ args: [{ selector: 'odx-launch-tile-subtitle', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
36
+ '[class.odx-launch-tile__subtitle]': 'true',
37
+ }, template: "<ng-content></ng-content>\n" }]
38
+ }] });
39
+
40
+ class LaunchTileMenuListDirective {
41
+ }
42
+ LaunchTileMenuListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileMenuListDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
43
+ LaunchTileMenuListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: LaunchTileMenuListDirective, isStandalone: true, selector: "[odxLaunchTileMenuList]", host: { properties: { "class.odx-launch-tile__menu-list": "true" } }, ngImport: i0 });
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileMenuListDirective, decorators: [{
45
+ type: Directive,
46
+ args: [{
47
+ standalone: true,
48
+ selector: '[odxLaunchTileMenuList]',
49
+ host: {
50
+ '[class.odx-launch-tile__menu-list]': 'true',
51
+ },
52
+ }]
53
+ }] });
54
+
55
+ let LaunchTileComponent = class LaunchTileComponent {
56
+ constructor() {
57
+ this.disabledController = DisabledController.inject();
58
+ this.element = injectElement();
59
+ }
60
+ get isDisabled() {
61
+ return !!this.disabledController?.disabled;
62
+ }
63
+ };
64
+ LaunchTileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
65
+ LaunchTileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: LaunchTileComponent, isStandalone: true, selector: "odx-launch-tile", host: { properties: { "class.is-disabled": "isDisabled", "attr.tabindex": "isDisabled ? -1 : 0" } }, providers: [DisabledController.connect()], queries: [{ propertyName: "menuList", first: true, predicate: LaunchTileMenuListDirective, descendants: true }], ngImport: i0, template: "<odx-action-group *ngIf=\"!!menuList\">\n <button [disabled]=\"isDisabled\" odxButton [odxDropdown]=\"menu\" [odxDropdownOptions]=\"{ position: 'bottom-end' }\" [odxDropdownHost]=\"element.nativeElement\">\n <odx-icon name=\"more\"></odx-icon>\n </button>\n\n <ng-template #menu>\n <ng-content select=\"odx-list[odxLaunchTileMenuList]\"></ng-content>\n </ng-template>\n</odx-action-group>\n\n<div class=\"odx-launch-tile__container\">\n <ng-content select=\"odx-avatar\"></ng-content>\n <div class=\"odx-launch-tile__content\">\n <div class=\"odx-launch-tile__title\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"odx-launch-tile-subtitle\"></ng-content>\n </div>\n</div>\n\n<ng-content select=\"odx-launch-tile-footer\"></ng-content>\n", dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DisabledController, selector: "[disabled]", inputs: ["disabled"] }, { kind: "directive", type: i3.DropdownDirective, selector: "[odxDropdown]", inputs: ["odxDropdown", "odxDropdownDisabled", "odxDropdownShowLoader", "odxDropdownOptions", "odxDropdownReferenceElement", "odxDropdownTriggerElement", "odxDropdownHost", "odxDropdownOpenTrigger", "odxDropdownCloseTrigger"], outputs: ["odxDropdownBeforeOpen", "odxDropdownAfterOpen", "odxDropdownBeforeClose", "odxDropdownAfterClose"], exportAs: ["odxDropdown"] }, { kind: "component", type: ActionGroupComponent, selector: "odx-action-group", inputs: ["reverse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
66
+ LaunchTileComponent = __decorate([
67
+ CSSComponent('launch-tile')
68
+ ], LaunchTileComponent);
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileComponent, decorators: [{
70
+ type: Component,
71
+ args: [{ selector: 'odx-launch-tile', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [DisabledController.connect()], imports: [ButtonComponent, IconComponent, DropdownModule, ActionGroupComponent], host: {
72
+ '[class.is-disabled]': 'isDisabled',
73
+ '[attr.tabindex]': 'isDisabled ? -1 : 0',
74
+ }, template: "<odx-action-group *ngIf=\"!!menuList\">\n <button [disabled]=\"isDisabled\" odxButton [odxDropdown]=\"menu\" [odxDropdownOptions]=\"{ position: 'bottom-end' }\" [odxDropdownHost]=\"element.nativeElement\">\n <odx-icon name=\"more\"></odx-icon>\n </button>\n\n <ng-template #menu>\n <ng-content select=\"odx-list[odxLaunchTileMenuList]\"></ng-content>\n </ng-template>\n</odx-action-group>\n\n<div class=\"odx-launch-tile__container\">\n <ng-content select=\"odx-avatar\"></ng-content>\n <div class=\"odx-launch-tile__content\">\n <div class=\"odx-launch-tile__title\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"odx-launch-tile-subtitle\"></ng-content>\n </div>\n</div>\n\n<ng-content select=\"odx-launch-tile-footer\"></ng-content>\n" }]
75
+ }], propDecorators: { menuList: [{
76
+ type: ContentChild,
77
+ args: [LaunchTileMenuListDirective]
78
+ }] } });
79
+
80
+ const modules = [
81
+ LaunchTileComponent,
82
+ LaunchTileMenuListDirective,
83
+ LaunchTileFooterComponent,
84
+ LaunchTileSubtitleComponent,
85
+ AvatarComponent,
86
+ ButtonGroupComponent,
87
+ ButtonComponent,
88
+ IconComponent,
89
+ ListModule,
90
+ ];
91
+ class LaunchTileModule {
92
+ }
93
+ LaunchTileModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
94
+ LaunchTileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileModule, imports: [LaunchTileComponent,
95
+ LaunchTileMenuListDirective,
96
+ LaunchTileFooterComponent,
97
+ LaunchTileSubtitleComponent,
98
+ AvatarComponent,
99
+ ButtonGroupComponent,
100
+ ButtonComponent,
101
+ IconComponent,
102
+ ListModule], exports: [CoreModule, LaunchTileComponent,
103
+ LaunchTileMenuListDirective,
104
+ LaunchTileFooterComponent,
105
+ LaunchTileSubtitleComponent,
106
+ AvatarComponent,
107
+ ButtonGroupComponent,
108
+ ButtonComponent,
109
+ IconComponent,
110
+ ListModule] });
111
+ LaunchTileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileModule, imports: [LaunchTileComponent,
112
+ LaunchTileFooterComponent,
113
+ LaunchTileSubtitleComponent,
114
+ AvatarComponent,
115
+ ButtonGroupComponent,
116
+ ButtonComponent,
117
+ IconComponent,
118
+ ListModule, CoreModule, ListModule] });
119
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LaunchTileModule, decorators: [{
120
+ type: NgModule,
121
+ args: [{
122
+ imports: [modules],
123
+ exports: [CoreModule, ...modules],
124
+ }]
125
+ }] });
126
+
127
+ /**
128
+ * Generated bundle index. Do not edit.
129
+ */
130
+
131
+ export { LaunchTileComponent, LaunchTileFooterComponent, LaunchTileMenuListDirective, LaunchTileModule, LaunchTileSubtitleComponent };
132
+ //# sourceMappingURL=odx-angular-components-launch-tile.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"odx-angular-components-launch-tile.mjs","sources":["../../../../libs/angular/components/launch-tile/src/lib/components/launch-tile-footer/launch-tile-footer.component.ts","../../../../libs/angular/components/launch-tile/src/lib/components/launch-tile-footer/launch-tile-footer.component.html","../../../../libs/angular/components/launch-tile/src/lib/components/launch-tile-subtitle/launch-tile-subtitle.component.ts","../../../../libs/angular/components/launch-tile/src/lib/components/launch-tile-subtitle/launch-tile-subtitle.component.html","../../../../libs/angular/components/launch-tile/src/lib/directives/launch-tile-menu/launch-tile-menu.directive.ts","../../../../libs/angular/components/launch-tile/src/lib/launch-tile.component.ts","../../../../libs/angular/components/launch-tile/src/lib/launch-tile.component.html","../../../../libs/angular/components/launch-tile/src/lib/launch-tile.module.ts","../../../../libs/angular/components/launch-tile/src/odx-angular-components-launch-tile.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'odx-launch-tile-footer',\n templateUrl: './launch-tile-footer.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.odx-launch-tile__footer]': 'true',\n },\n})\nexport class LaunchTileFooterComponent {}\n","<ng-content></ng-content>\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'odx-launch-tile-subtitle',\n templateUrl: './launch-tile-subtitle.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.odx-launch-tile__subtitle]': 'true',\n },\n})\nexport class LaunchTileSubtitleComponent {}\n","<ng-content></ng-content>\n","import { Directive } from '@angular/core';\n\n@Directive({\n standalone: true,\n selector: '[odxLaunchTileMenuList]',\n host: {\n '[class.odx-launch-tile__menu-list]': 'true',\n },\n})\nexport class LaunchTileMenuListDirective {}\n","import { ChangeDetectionStrategy, Component, ContentChild, ViewEncapsulation } from '@angular/core';\nimport { DisabledController } from '@odx/angular';\nimport { ActionGroupComponent } from '@odx/angular/components/action-group';\nimport { ButtonComponent } from '@odx/angular/components/button';\nimport { DropdownModule } from '@odx/angular/components/dropdown';\nimport { IconComponent } from '@odx/angular/components/icon';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { LaunchTileMenuListDirective } from './directives/launch-tile-menu/launch-tile-menu.directive';\n\n@CSSComponent('launch-tile')\n@Component({\n selector: 'odx-launch-tile',\n templateUrl: './launch-tile.component.html',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [DisabledController.connect()],\n imports: [ButtonComponent, IconComponent, DropdownModule, ActionGroupComponent],\n host: {\n '[class.is-disabled]': 'isDisabled',\n '[attr.tabindex]': 'isDisabled ? -1 : 0',\n },\n})\nexport class LaunchTileComponent {\n protected readonly disabledController = DisabledController.inject();\n\n public readonly element = injectElement();\n\n public get isDisabled(): boolean {\n return !!this.disabledController?.disabled;\n }\n\n @ContentChild(LaunchTileMenuListDirective)\n public readonly menuList?: LaunchTileMenuListDirective;\n}\n","<odx-action-group *ngIf=\"!!menuList\">\n <button [disabled]=\"isDisabled\" odxButton [odxDropdown]=\"menu\" [odxDropdownOptions]=\"{ position: 'bottom-end' }\" [odxDropdownHost]=\"element.nativeElement\">\n <odx-icon name=\"more\"></odx-icon>\n </button>\n\n <ng-template #menu>\n <ng-content select=\"odx-list[odxLaunchTileMenuList]\"></ng-content>\n </ng-template>\n</odx-action-group>\n\n<div class=\"odx-launch-tile__container\">\n <ng-content select=\"odx-avatar\"></ng-content>\n <div class=\"odx-launch-tile__content\">\n <div class=\"odx-launch-tile__title\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"odx-launch-tile-subtitle\"></ng-content>\n </div>\n</div>\n\n<ng-content select=\"odx-launch-tile-footer\"></ng-content>\n","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { AvatarComponent } from '@odx/angular/components/avatar';\nimport { ButtonComponent } from '@odx/angular/components/button';\nimport { ButtonGroupComponent } from '@odx/angular/components/button-group';\nimport { IconComponent } from '@odx/angular/components/icon';\nimport { ListModule } from '@odx/angular/components/list';\nimport { LaunchTileFooterComponent } from './components/launch-tile-footer/launch-tile-footer.component';\nimport { LaunchTileSubtitleComponent } from './components/launch-tile-subtitle/launch-tile-subtitle.component';\nimport { LaunchTileMenuListDirective } from './directives/launch-tile-menu/launch-tile-menu.directive';\nimport { LaunchTileComponent } from './launch-tile.component';\n\nconst modules = [\n LaunchTileComponent,\n LaunchTileMenuListDirective,\n LaunchTileFooterComponent,\n LaunchTileSubtitleComponent,\n AvatarComponent,\n ButtonGroupComponent,\n ButtonComponent,\n IconComponent,\n ListModule,\n];\n\n@NgModule({\n imports: [modules],\n exports: [CoreModule, ...modules],\n})\nexport class LaunchTileModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,119 +1,63 @@
1
1
  import { __decorate, __metadata } from 'tslib';
2
2
  import { trigger, transition, useAnimation } from '@angular/animations';
3
3
  import * as i0 from '@angular/core';
4
- import { Injectable, inject, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, ElementRef, Renderer2, Directive, NgModule } from '@angular/core';
4
+ import { inject, Renderer2, Directive, Input, Component, ViewEncapsulation, ChangeDetectionStrategy, NgModule } from '@angular/core';
5
5
  import { WindowRef, CoreModule } from '@odx/angular';
6
6
  import { fadeIn, fadeOut } from '@odx/angular/animations';
7
7
  import { CircularProgressComponent } from '@odx/angular/components/circular-progress';
8
8
  import { CSSModifier, CSSComponent } from '@odx/angular/internal';
9
- import { injectElement, getInjector, px, Transform } from '@odx/angular/utils';
10
- import { Subject } from 'rxjs';
9
+ import { injectElement, getInjector, px, deferFn, Transform } from '@odx/angular/utils';
11
10
  import { coerceNumberProperty, coerceBooleanProperty } from '@angular/cdk/coercion';
12
11
  import { DynamicViewService } from '@odx/angular/cdk/dynamic-view';
13
12
 
14
- class LoadingSpinnerService {
15
- constructor() {
16
- this.spinnerDestroyed$ = new Subject();
17
- }
18
- ngOnDestroy() {
19
- this.spinnerDestroyed$.complete();
20
- }
21
- }
22
- LoadingSpinnerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LoadingSpinnerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
23
- LoadingSpinnerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LoadingSpinnerService });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LoadingSpinnerService, decorators: [{
25
- type: Injectable
26
- }] });
27
-
28
- const BROWSER_TRANSPARENT_COLOR = 'rgba(0, 0, 0, 0)';
29
- let LoadingSpinnerComponent = class LoadingSpinnerComponent {
30
- constructor() {
31
- this.spinnerService = inject(LoadingSpinnerService);
32
- this.windowRef = inject(WindowRef);
33
- this.backgroundColor = null;
34
- this.element = injectElement();
35
- this.autoColor = false;
36
- }
37
- animationFinished({ toState }) {
38
- if (toState === 'void') {
39
- this.spinnerService.spinnerDestroyed$.next();
40
- }
41
- }
42
- ngOnInit() {
43
- this.backgroundColor = this.resolveBackgroundColor(this.element.nativeElement);
44
- }
45
- resolveBackgroundColor(element) {
46
- const { backgroundColor } = this.windowRef.nativeWindow.getComputedStyle(element);
47
- if (backgroundColor !== BROWSER_TRANSPARENT_COLOR) {
48
- return backgroundColor;
49
- }
50
- if (element.parentElement) {
51
- return this.resolveBackgroundColor(element.parentElement);
52
- }
53
- return null;
54
- }
55
- };
56
- LoadingSpinnerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LoadingSpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
57
- LoadingSpinnerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: LoadingSpinnerComponent, isStandalone: true, selector: "odx-loading-spinner", inputs: { autoColor: "autoColor" }, host: { listeners: { "@hostAnimation.done": "animationFinished($event)" }, properties: { "@hostAnimation": "true" } }, ngImport: i0, template: "<odx-circular-progress size=\"auto\" value=\"-1\"></odx-circular-progress>\n<div class=\"odx-loading-spinner__backdrop\" [style.backgroundColor]=\"backgroundColor\"></div>\n", dependencies: [{ kind: "component", type: CircularProgressComponent, selector: "odx-circular-progress", inputs: ["stroke", "size", "value"] }], animations: [trigger('hostAnimation', [transition(':enter', useAnimation(fadeIn())), transition(':leave', useAnimation(fadeOut()))])], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
58
- __decorate([
59
- CSSModifier(),
60
- __metadata("design:type", Object)
61
- ], LoadingSpinnerComponent.prototype, "autoColor", void 0);
62
- LoadingSpinnerComponent = __decorate([
63
- CSSComponent('loading-spinner')
64
- ], LoadingSpinnerComponent);
65
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LoadingSpinnerComponent, decorators: [{
66
- type: Component,
67
- args: [{ standalone: true, selector: 'odx-loading-spinner', imports: [CircularProgressComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
68
- '[@hostAnimation]': 'true',
69
- '(@hostAnimation.done)': 'animationFinished($event)',
70
- }, animations: [trigger('hostAnimation', [transition(':enter', useAnimation(fadeIn())), transition(':leave', useAnimation(fadeOut()))])], template: "<odx-circular-progress size=\"auto\" value=\"-1\"></odx-circular-progress>\n<div class=\"odx-loading-spinner__backdrop\" [style.backgroundColor]=\"backgroundColor\"></div>\n" }]
71
- }], propDecorators: { autoColor: [{
72
- type: Input
73
- }] } });
74
-
13
+ const LOADING_SPINNER_PARENT_CLASS = 'odx-loading-spinner-parent';
75
14
  class LoadingSpinnerDirective {
76
15
  constructor() {
77
16
  this.dynamicViewService = inject(DynamicViewService);
78
- this.hostElement = inject(ElementRef);
17
+ this.hostElement = injectElement();
79
18
  this.renderer = inject(Renderer2);
80
- this.spinnerService = inject(LoadingSpinnerService);
81
19
  this.injector = getInjector();
82
20
  this.windowRef = inject(WindowRef);
83
- this.parentMinHeight = 0;
84
21
  this.viewRef = null;
85
22
  this.autoColor = false;
86
- this.spinnerService.spinnerDestroyed$.subscribe(() => this.resetParentElement());
87
23
  }
88
24
  set isLoading(value) {
89
25
  if (value) {
90
- this.setParent();
91
- this.appendSpinner();
26
+ this.createSpinner();
92
27
  }
93
28
  else {
94
- this.viewRef?.destroy();
29
+ this.removeSpinner();
95
30
  }
96
31
  }
32
+ get isLoading() {
33
+ return this.viewRef !== null;
34
+ }
97
35
  set minHeight(value) {
98
36
  this.parentMinHeight = coerceNumberProperty(value);
99
37
  this.setParentHeight();
100
38
  }
101
- setParent() {
102
- this.renderer.addClass(this.hostElement.nativeElement, 'odx-loading-spinner-parent');
39
+ setParentHeight() {
40
+ this.renderer.setStyle(this.hostElement.nativeElement, 'minHeight', this.parentMinHeight ? px(this.parentMinHeight) : 'inherit');
41
+ }
42
+ createSpinner() {
43
+ this.renderer.addClass(this.hostElement.nativeElement, LOADING_SPINNER_PARENT_CLASS);
103
44
  this.setParentHeight();
104
45
  if (this.hasStaticPosition()) {
105
46
  this.renderer.setStyle(this.hostElement.nativeElement, 'position', 'relative');
106
47
  }
48
+ this.viewRef = this.dynamicViewService.createView(LoadingSpinnerComponent, {
49
+ injector: this.injector,
50
+ context: { autoColor: this.autoColor },
51
+ host: this.hostElement.nativeElement,
52
+ });
53
+ deferFn(() => (this.hostElement.nativeElement.scrollTop = 0));
107
54
  }
108
- setParentHeight() {
109
- this.renderer.setStyle(this.hostElement.nativeElement, 'minHeight', px(this.parentMinHeight));
110
- }
111
- appendSpinner() {
112
- this.viewRef = this.dynamicViewService.createView(LoadingSpinnerComponent, { injector: this.injector, context: { autoColor: this.autoColor } });
113
- this.renderer.appendChild(this.hostElement.nativeElement, this.viewRef.getElement());
55
+ removeSpinner() {
56
+ this.viewRef?.destroy();
57
+ this.viewRef = null;
114
58
  }
115
- resetParentElement() {
116
- this.renderer.removeClass(this.hostElement.nativeElement, 'odx-loading-spinner-parent');
59
+ resetParentStyles() {
60
+ this.renderer.removeClass(this.hostElement.nativeElement, LOADING_SPINNER_PARENT_CLASS);
117
61
  this.renderer.removeStyle(this.hostElement.nativeElement, 'minHeight');
118
62
  this.renderer.removeStyle(this.hostElement.nativeElement, 'position');
119
63
  }
@@ -122,7 +66,7 @@ class LoadingSpinnerDirective {
122
66
  }
123
67
  }
124
68
  LoadingSpinnerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LoadingSpinnerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
125
- LoadingSpinnerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: LoadingSpinnerDirective, isStandalone: true, selector: "[odxLoadingSpinner]", inputs: { autoColor: ["odxLoadingSpinnerAutoColor", "autoColor"], isLoading: ["odxLoadingSpinner", "isLoading"], minHeight: ["odxLoadingSpinnerMinHeight", "minHeight"] }, providers: [LoadingSpinnerService], ngImport: i0 });
69
+ LoadingSpinnerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: LoadingSpinnerDirective, isStandalone: true, selector: "[odxLoadingSpinner]", inputs: { autoColor: ["odxLoadingSpinnerAutoColor", "autoColor"], isLoading: ["odxLoadingSpinner", "isLoading"], minHeight: ["odxLoadingSpinnerMinHeight", "minHeight"] }, ngImport: i0 });
126
70
  __decorate([
127
71
  Transform(coerceBooleanProperty),
128
72
  __metadata("design:type", Object)
@@ -137,9 +81,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
137
81
  args: [{
138
82
  selector: '[odxLoadingSpinner]',
139
83
  standalone: true,
140
- providers: [LoadingSpinnerService],
141
84
  }]
142
- }], ctorParameters: function () { return []; }, propDecorators: { autoColor: [{
85
+ }], propDecorators: { autoColor: [{
143
86
  type: Input,
144
87
  args: ['odxLoadingSpinnerAutoColor']
145
88
  }], isLoading: [{
@@ -150,6 +93,53 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
150
93
  args: ['odxLoadingSpinnerMinHeight']
151
94
  }] } });
152
95
 
96
+ const BROWSER_TRANSPARENT_COLOR = 'rgba(0, 0, 0, 0)';
97
+ let LoadingSpinnerComponent = class LoadingSpinnerComponent {
98
+ constructor() {
99
+ this.host = inject(LoadingSpinnerDirective);
100
+ this.windowRef = inject(WindowRef);
101
+ this.backgroundColor = null;
102
+ this.element = injectElement();
103
+ this.autoColor = false;
104
+ }
105
+ ngOnInit() {
106
+ this.backgroundColor = this.resolveBackgroundColor(this.element.nativeElement);
107
+ }
108
+ animationFinished({ toState }) {
109
+ if (toState === 'void') {
110
+ this.host.resetParentStyles();
111
+ }
112
+ }
113
+ resolveBackgroundColor(element) {
114
+ const { backgroundColor } = this.windowRef.nativeWindow.getComputedStyle(element);
115
+ if (backgroundColor !== BROWSER_TRANSPARENT_COLOR) {
116
+ return backgroundColor;
117
+ }
118
+ if (element.parentElement) {
119
+ return this.resolveBackgroundColor(element.parentElement);
120
+ }
121
+ return null;
122
+ }
123
+ };
124
+ LoadingSpinnerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LoadingSpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
125
+ LoadingSpinnerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: LoadingSpinnerComponent, isStandalone: true, selector: "odx-loading-spinner", inputs: { autoColor: "autoColor" }, host: { listeners: { "@hostAnimation.done": "animationFinished($event)" }, properties: { "@hostAnimation": "true" } }, ngImport: i0, template: "<odx-circular-progress size=\"auto\" value=\"-1\"></odx-circular-progress>\n<div class=\"odx-loading-spinner__backdrop\" [style.backgroundColor]=\"backgroundColor\"></div>\n", dependencies: [{ kind: "component", type: CircularProgressComponent, selector: "odx-circular-progress", inputs: ["stroke", "size", "value"] }], animations: [trigger('hostAnimation', [transition(':enter', useAnimation(fadeIn())), transition(':leave', useAnimation(fadeOut()))])], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
126
+ __decorate([
127
+ CSSModifier(),
128
+ __metadata("design:type", Object)
129
+ ], LoadingSpinnerComponent.prototype, "autoColor", void 0);
130
+ LoadingSpinnerComponent = __decorate([
131
+ CSSComponent('loading-spinner')
132
+ ], LoadingSpinnerComponent);
133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LoadingSpinnerComponent, decorators: [{
134
+ type: Component,
135
+ args: [{ standalone: true, selector: 'odx-loading-spinner', imports: [CircularProgressComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
136
+ '[@hostAnimation]': 'true',
137
+ '(@hostAnimation.done)': 'animationFinished($event)',
138
+ }, animations: [trigger('hostAnimation', [transition(':enter', useAnimation(fadeIn())), transition(':leave', useAnimation(fadeOut()))])], template: "<odx-circular-progress size=\"auto\" value=\"-1\"></odx-circular-progress>\n<div class=\"odx-loading-spinner__backdrop\" [style.backgroundColor]=\"backgroundColor\"></div>\n" }]
139
+ }], propDecorators: { autoColor: [{
140
+ type: Input
141
+ }] } });
142
+
153
143
  const modules = [LoadingSpinnerComponent, LoadingSpinnerDirective];
154
144
  class LoadingSpinnerModule {
155
145
  }
@@ -1 +1 @@
1
- {"version":3,"file":"odx-angular-components-loading-spinner.mjs","sources":["../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.service.ts","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.component.ts","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.component.html","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.directive.ts","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.module.ts","../../../../libs/angular/components/loading-spinner/src/odx-angular-components-loading-spinner.ts"],"sourcesContent":["import { Injectable, OnDestroy } from '@angular/core';\nimport { Subject } from 'rxjs';\n\n@Injectable()\nexport class LoadingSpinnerService implements OnDestroy {\n public readonly spinnerDestroyed$ = new Subject<void>();\n\n public ngOnDestroy(): void {\n this.spinnerDestroyed$.complete();\n }\n}\n","import { AnimationEvent, transition, trigger, useAnimation } from '@angular/animations';\nimport { ChangeDetectionStrategy, Component, inject, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { WindowRef } from '@odx/angular';\nimport { fadeIn, fadeOut } from '@odx/angular/animations';\nimport { CircularProgressComponent } from '@odx/angular/components/circular-progress';\nimport { CSSComponent, CSSModifier } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { LoadingSpinnerService } from './loading-spinner.service';\n\nconst BROWSER_TRANSPARENT_COLOR = 'rgba(0, 0, 0, 0)';\n\n@CSSComponent('loading-spinner')\n@Component({\n standalone: true,\n selector: 'odx-loading-spinner',\n templateUrl: './loading-spinner.component.html',\n imports: [CircularProgressComponent],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[@hostAnimation]': 'true',\n '(@hostAnimation.done)': 'animationFinished($event)',\n },\n animations: [trigger('hostAnimation', [transition(':enter', useAnimation(fadeIn())), transition(':leave', useAnimation(fadeOut()))])],\n})\nexport class LoadingSpinnerComponent implements OnInit {\n private readonly spinnerService = inject(LoadingSpinnerService);\n private readonly windowRef = inject(WindowRef);\n\n protected backgroundColor: string | null = null;\n\n public readonly element = injectElement();\n\n @CSSModifier()\n @Input()\n public autoColor = false;\n\n public animationFinished({ toState }: AnimationEvent): void {\n if (toState === 'void') {\n this.spinnerService.spinnerDestroyed$.next();\n }\n }\n\n public ngOnInit(): void {\n this.backgroundColor = this.resolveBackgroundColor(this.element.nativeElement);\n }\n\n private resolveBackgroundColor(element: HTMLElement): string | null {\n const { backgroundColor } = this.windowRef.nativeWindow.getComputedStyle(element);\n if (backgroundColor !== BROWSER_TRANSPARENT_COLOR) {\n return backgroundColor;\n }\n if (element.parentElement) {\n return this.resolveBackgroundColor(element.parentElement);\n }\n return null;\n }\n}\n","<odx-circular-progress size=\"auto\" value=\"-1\"></odx-circular-progress>\n<div class=\"odx-loading-spinner__backdrop\" [style.backgroundColor]=\"backgroundColor\"></div>\n","import { BooleanInput, coerceBooleanProperty, coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\nimport { Directive, ElementRef, inject, Input, Renderer2 } from '@angular/core';\nimport { WindowRef } from '@odx/angular';\nimport { DynamicViewRef, DynamicViewService } from '@odx/angular/cdk/dynamic-view';\nimport { getInjector, px, Transform } from '@odx/angular/utils';\nimport { LoadingSpinnerComponent } from './loading-spinner.component';\nimport { LoadingSpinnerService } from './loading-spinner.service';\n\n@Directive({\n selector: '[odxLoadingSpinner]',\n standalone: true,\n providers: [LoadingSpinnerService],\n})\nexport class LoadingSpinnerDirective {\n public static ngAcceptInputType_autoColor: BooleanInput;\n public static ngAcceptInputType_isLoading: BooleanInput;\n public static ngAcceptInputType_minHeight: NumberInput;\n\n private readonly dynamicViewService = inject(DynamicViewService);\n private readonly hostElement = inject(ElementRef);\n private readonly renderer = inject(Renderer2);\n private readonly spinnerService = inject(LoadingSpinnerService);\n private readonly injector = getInjector();\n private readonly windowRef = inject(WindowRef);\n\n private parentMinHeight = 0;\n private viewRef: DynamicViewRef<typeof LoadingSpinnerComponent> | null = null;\n\n @Transform(coerceBooleanProperty)\n @Input('odxLoadingSpinnerAutoColor')\n public autoColor = false;\n\n @Input('odxLoadingSpinner')\n public set isLoading(value: boolean) {\n if (value) {\n this.setParent();\n this.appendSpinner();\n } else {\n this.viewRef?.destroy();\n }\n }\n\n @Transform(coerceNumberProperty)\n @Input('odxLoadingSpinnerMinHeight')\n public set minHeight(value: unknown) {\n this.parentMinHeight = coerceNumberProperty(value);\n this.setParentHeight();\n }\n\n private setParent(): void {\n this.renderer.addClass(this.hostElement.nativeElement, 'odx-loading-spinner-parent');\n this.setParentHeight();\n if (this.hasStaticPosition()) {\n this.renderer.setStyle(this.hostElement.nativeElement, 'position', 'relative');\n }\n }\n\n private setParentHeight(): void {\n this.renderer.setStyle(this.hostElement.nativeElement, 'minHeight', px(this.parentMinHeight));\n }\n\n private appendSpinner(): void {\n this.viewRef = this.dynamicViewService.createView(LoadingSpinnerComponent, { injector: this.injector, context: { autoColor: this.autoColor } });\n this.renderer.appendChild(this.hostElement.nativeElement, this.viewRef.getElement());\n }\n\n private resetParentElement(): void {\n this.renderer.removeClass(this.hostElement.nativeElement, 'odx-loading-spinner-parent');\n this.renderer.removeStyle(this.hostElement.nativeElement, 'minHeight');\n this.renderer.removeStyle(this.hostElement.nativeElement, 'position');\n }\n\n private hasStaticPosition(): boolean {\n return this.windowRef.nativeWindow.getComputedStyle(this.hostElement.nativeElement).position === 'static';\n }\n\n constructor() {\n this.spinnerService.spinnerDestroyed$.subscribe(() => this.resetParentElement());\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { LoadingSpinnerComponent } from './loading-spinner.component';\nimport { LoadingSpinnerDirective } from './loading-spinner.directive';\n\nconst modules = [LoadingSpinnerComponent, LoadingSpinnerDirective];\n\n@NgModule({\n imports: modules,\n exports: [CoreModule, ...modules],\n})\nexport class LoadingSpinnerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"odx-angular-components-loading-spinner.mjs","sources":["../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.directive.ts","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.component.ts","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.component.html","../../../../libs/angular/components/loading-spinner/src/lib/loading-spinner.module.ts","../../../../libs/angular/components/loading-spinner/src/odx-angular-components-loading-spinner.ts"],"sourcesContent":["import { BooleanInput, coerceBooleanProperty, coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\nimport { Directive, inject, Input, Renderer2 } from '@angular/core';\nimport { WindowRef } from '@odx/angular';\nimport { DynamicViewRef, DynamicViewService } from '@odx/angular/cdk/dynamic-view';\nimport { deferFn, getInjector, injectElement, px, Transform } from '@odx/angular/utils';\nimport { LoadingSpinnerComponent } from './loading-spinner.component';\n\nconst LOADING_SPINNER_PARENT_CLASS = 'odx-loading-spinner-parent';\n\n@Directive({\n selector: '[odxLoadingSpinner]',\n standalone: true,\n})\nexport class LoadingSpinnerDirective {\n public static ngAcceptInputType_autoColor: BooleanInput;\n public static ngAcceptInputType_isLoading: BooleanInput;\n public static ngAcceptInputType_minHeight: NumberInput;\n\n private readonly dynamicViewService = inject(DynamicViewService);\n private readonly hostElement = injectElement();\n private readonly renderer = inject(Renderer2);\n private readonly injector = getInjector();\n private readonly windowRef = inject(WindowRef);\n\n private parentMinHeight?: number;\n private viewRef: DynamicViewRef<typeof LoadingSpinnerComponent> | null = null;\n\n @Transform(coerceBooleanProperty)\n @Input('odxLoadingSpinnerAutoColor')\n public autoColor = false;\n\n @Input('odxLoadingSpinner')\n public set isLoading(value: boolean | null | undefined) {\n if (value) {\n this.createSpinner();\n } else {\n this.removeSpinner();\n }\n }\n public get isLoading(): boolean {\n return this.viewRef !== null;\n }\n\n @Transform(coerceNumberProperty)\n @Input('odxLoadingSpinnerMinHeight')\n public set minHeight(value: unknown) {\n this.parentMinHeight = coerceNumberProperty(value);\n this.setParentHeight();\n }\n\n private setParentHeight(): void {\n this.renderer.setStyle(this.hostElement.nativeElement, 'minHeight', this.parentMinHeight ? px(this.parentMinHeight) : 'inherit');\n }\n\n private createSpinner(): void {\n this.renderer.addClass(this.hostElement.nativeElement, LOADING_SPINNER_PARENT_CLASS);\n this.setParentHeight();\n if (this.hasStaticPosition()) {\n this.renderer.setStyle(this.hostElement.nativeElement, 'position', 'relative');\n }\n this.viewRef = this.dynamicViewService.createView(LoadingSpinnerComponent, {\n injector: this.injector,\n context: { autoColor: this.autoColor },\n host: this.hostElement.nativeElement,\n });\n deferFn(() => (this.hostElement.nativeElement.scrollTop = 0));\n }\n\n private removeSpinner(): void {\n this.viewRef?.destroy();\n this.viewRef = null;\n }\n\n public resetParentStyles(): void {\n this.renderer.removeClass(this.hostElement.nativeElement, LOADING_SPINNER_PARENT_CLASS);\n this.renderer.removeStyle(this.hostElement.nativeElement, 'minHeight');\n this.renderer.removeStyle(this.hostElement.nativeElement, 'position');\n }\n\n private hasStaticPosition(): boolean {\n return this.windowRef.nativeWindow.getComputedStyle(this.hostElement.nativeElement).position === 'static';\n }\n}\n","import { AnimationEvent, transition, trigger, useAnimation } from '@angular/animations';\nimport { ChangeDetectionStrategy, Component, inject, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { WindowRef } from '@odx/angular';\nimport { fadeIn, fadeOut } from '@odx/angular/animations';\nimport { CircularProgressComponent } from '@odx/angular/components/circular-progress';\nimport { CSSComponent, CSSModifier } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { LoadingSpinnerDirective } from './loading-spinner.directive';\n\nconst BROWSER_TRANSPARENT_COLOR = 'rgba(0, 0, 0, 0)';\n\n@CSSComponent('loading-spinner')\n@Component({\n standalone: true,\n selector: 'odx-loading-spinner',\n templateUrl: './loading-spinner.component.html',\n imports: [CircularProgressComponent],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[@hostAnimation]': 'true',\n '(@hostAnimation.done)': 'animationFinished($event)',\n },\n animations: [trigger('hostAnimation', [transition(':enter', useAnimation(fadeIn())), transition(':leave', useAnimation(fadeOut()))])],\n})\nexport class LoadingSpinnerComponent implements OnInit {\n private readonly host = inject(LoadingSpinnerDirective);\n private readonly windowRef = inject(WindowRef);\n\n protected backgroundColor: string | null = null;\n\n public readonly element = injectElement();\n\n @CSSModifier()\n @Input()\n public autoColor = false;\n\n public ngOnInit(): void {\n this.backgroundColor = this.resolveBackgroundColor(this.element.nativeElement);\n }\n\n protected animationFinished({ toState }: AnimationEvent): void {\n if (toState === 'void') {\n this.host.resetParentStyles();\n }\n }\n\n private resolveBackgroundColor(element: HTMLElement): string | null {\n const { backgroundColor } = this.windowRef.nativeWindow.getComputedStyle(element);\n if (backgroundColor !== BROWSER_TRANSPARENT_COLOR) {\n return backgroundColor;\n }\n if (element.parentElement) {\n return this.resolveBackgroundColor(element.parentElement);\n }\n return null;\n }\n}\n","<odx-circular-progress size=\"auto\" value=\"-1\"></odx-circular-progress>\n<div class=\"odx-loading-spinner__backdrop\" [style.backgroundColor]=\"backgroundColor\"></div>\n","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { LoadingSpinnerComponent } from './loading-spinner.component';\nimport { LoadingSpinnerDirective } from './loading-spinner.directive';\n\nconst modules = [LoadingSpinnerComponent, LoadingSpinnerDirective];\n\n@NgModule({\n imports: modules,\n exports: [CoreModule, ...modules],\n})\nexport class LoadingSpinnerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -137,7 +137,7 @@ let MainMenuComponent = class MainMenuComponent {
137
137
  }
138
138
  };
139
139
  MainMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: MainMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
140
- MainMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: MainMenuComponent, isStandalone: true, selector: "odx-main-menu", inputs: { title: "title", subtitle: "subtitle", copyright: "copyright", isOpen: "isOpen" }, outputs: { menuOpen: "menuOpen" }, host: { listeners: { "window:keydown.escape": "close()" }, properties: { "class.is-open": "isOpen" } }, ngImport: i0, template: "<aside @menuAnimation class=\"odx-main-menu__inner\" cdkTrapFocus cdkTrapFocusAutoCapture *ngIf=\"menuOpen | async\">\n <div class=\"odx-main-menu__actions\">\n <button class=\"odx-main-menu__close\" odxButton disabled=\"false\" (click)=\"close()\">\n <odx-icon name=\"close\"></odx-icon>\n </button>\n </div>\n <odx-area-header class=\"odx-main-menu__header\">\n {{ title }}\n <odx-area-header-subtitle *ngIf=\"subtitle\">\n {{ subtitle }}\n </odx-area-header-subtitle>\n </odx-area-header>\n <nav class=\"odx-main-menu__content\">\n <ng-content></ng-content>\n </nav>\n <div class=\"odx-main-menu__info\">\n <ng-content select=\"[odxLink]\"></ng-content>\n </div>\n <div class=\"odx-main-menu__footer\">\n <odx-logo variant=\"inverse\"></odx-logo>\n <p class=\"odx-text odx-text--small\" *ngIf=\"copyright\">\n {{ copyright }}\n </p>\n </div>\n</aside>\n<div @overlayAnimation class=\"odx-main-menu__overlay\" (click)=\"close()\" *ngIf=\"menuOpen | async\"></div>\n", dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "directive", type: i3.DisabledController, selector: "[disabled]", inputs: ["disabled"] }, { kind: "ngmodule", type: AreaHeaderModule }, { kind: "component", type: i4.AreaHeaderComponent, selector: "odx-area-header", inputs: ["size"] }, { kind: "directive", type: i4.AreaHeaderSubtitleDirective, selector: "odx-area-header-subtitle" }, { kind: "component", type: i5.ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: i6.IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name"] }, { kind: "directive", type: LogoDirective, selector: "odx-logo", inputs: ["size", "variant"] }], animations: [
140
+ MainMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: MainMenuComponent, isStandalone: true, selector: "odx-main-menu", inputs: { title: "title", subtitle: "subtitle", copyright: "copyright", isOpen: "isOpen" }, outputs: { menuOpen: "menuOpen" }, host: { listeners: { "window:keyup.esc": "close()" }, properties: { "class.is-open": "isOpen" } }, ngImport: i0, template: "<aside @menuAnimation class=\"odx-main-menu__inner\" cdkTrapFocus cdkTrapFocusAutoCapture *ngIf=\"menuOpen | async\">\n <div class=\"odx-main-menu__actions\">\n <button class=\"odx-main-menu__close\" odxButton disabled=\"false\" (click)=\"close()\">\n <odx-icon name=\"close\"></odx-icon>\n </button>\n </div>\n <odx-area-header class=\"odx-main-menu__header\">\n {{ title }}\n <odx-area-header-subtitle *ngIf=\"subtitle\">\n {{ subtitle }}\n </odx-area-header-subtitle>\n </odx-area-header>\n <nav class=\"odx-main-menu__content\">\n <ng-content></ng-content>\n </nav>\n <div class=\"odx-main-menu__info\">\n <ng-content select=\"[odxLink]\"></ng-content>\n </div>\n <div class=\"odx-main-menu__footer\">\n <odx-logo variant=\"inverse\"></odx-logo>\n <p class=\"odx-text odx-text--small\" *ngIf=\"copyright\">\n {{ copyright }}\n </p>\n </div>\n</aside>\n<div @overlayAnimation class=\"odx-main-menu__overlay\" (click)=\"close()\" *ngIf=\"menuOpen | async\"></div>\n", dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "ngmodule", type: CoreModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "directive", type: i3.DisabledController, selector: "[disabled]", inputs: ["disabled"] }, { kind: "ngmodule", type: AreaHeaderModule }, { kind: "component", type: i4.AreaHeaderComponent, selector: "odx-area-header", inputs: ["size"] }, { kind: "directive", type: i4.AreaHeaderSubtitleDirective, selector: "odx-area-header-subtitle" }, { kind: "component", type: i5.ButtonComponent, selector: "button[odxButton], a[odxButton]", inputs: ["variant", "size"] }, { kind: "component", type: i6.IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name"] }, { kind: "directive", type: LogoDirective, selector: "odx-logo", inputs: ["size", "variant"] }], animations: [
141
141
  trigger('menuAnimation', [transition(':enter', [useAnimation(slideInLeft)]), transition(':leave', [useAnimation(slideOutLeft)])]),
142
142
  trigger('overlayAnimation', [transition(':enter', [useAnimation(fadeIn())]), transition(':leave', [useAnimation(fadeOut())])]),
143
143
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
@@ -164,7 +164,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
164
164
  type: Output
165
165
  }], close: [{
166
166
  type: HostListener,
167
- args: ['window:keydown.escape']
167
+ args: ['window:keyup.esc']
168
168
  }] } });
169
169
 
170
170
  const modules = [LinkDirective, MainMenuComponent, MainMenuItemDirective, MainMenuButtonDirective];
@@ -1 +1 @@
1
- {"version":3,"file":"odx-angular-components-main-menu.mjs","sources":["../../../../libs/angular/components/main-menu/src/lib/main-menu.service.ts","../../../../libs/angular/components/main-menu/src/lib/directives/main-menu-button.directive.ts","../../../../libs/angular/components/main-menu/src/lib/directives/main-menu-item.directive.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.component.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.component.html","../../../../libs/angular/components/main-menu/src/lib/main-menu.module.ts","../../../../libs/angular/components/main-menu/src/odx-angular-components-main-menu.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { isBoolean } from '@odx/angular/utils';\nimport { BehaviorSubject, distinctUntilChanged, shareReplay } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class MainMenuService {\n private readonly isOpen$$ = new BehaviorSubject(false);\n\n public readonly isOpen$ = this.isOpen$$.pipe(distinctUntilChanged(), shareReplay({ refCount: true }));\n\n public isOpen(): boolean {\n return this.isOpen$$.getValue();\n }\n\n public open(): void {\n this.toggle(true);\n }\n\n public close(): void {\n this.toggle(false);\n }\n\n public toggle(forceState?: boolean): void {\n if (isBoolean(forceState)) {\n this.isOpen$$.next(forceState);\n } else if (this.isOpen()) {\n this.isOpen$$.next(false);\n } else {\n this.isOpen$$.next(true);\n }\n }\n}\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { MainMenuService } from '../main-menu.service';\n\n@CSSComponent('main-menu-button')\n@Directive({\n selector: 'button[odxMainMenuButton]',\n standalone: true,\n})\nexport class MainMenuButtonDirective {\n private readonly mainMenuService = inject(MainMenuService);\n public readonly element = injectElement<HTMLButtonElement>();\n\n @HostListener('click')\n public onClick() {\n this.mainMenuService.toggle();\n }\n}\n","import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { Directive, inject, Input } from '@angular/core';\nimport { RouterLinkActive } from '@angular/router';\nimport { DisabledController } from '@odx/angular';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement, Transform } from '@odx/angular/utils';\n\n@CSSComponent('main-menu-item')\n@Directive({\n selector: '[odxMainMenuItem]',\n standalone: true,\n providers: [DisabledController.connect()],\n host: {\n '[class.is-selected]': 'isSelected || routerLinkActive?.isActive',\n '[class.is-disabled]': 'isDisabled',\n '[attr.disabled]': 'isDisabled || null',\n '[attr.role]': '\"button\"',\n '[tabindex]': 'isDisabled ? -1 : 0',\n },\n})\nexport class MainMenuItemDirective {\n public static readonly ngAcceptInputType_isSelected: BooleanInput;\n\n protected readonly disabledController = DisabledController.inject();\n protected readonly routerLinkActive = inject(RouterLinkActive, { optional: true });\n\n public readonly element = injectElement<HTMLLinkElement>();\n\n public get isDisabled(): boolean {\n return !!this.disabledController?.disabled;\n }\n\n @Transform(coerceBooleanProperty)\n @Input()\n public isSelected = false;\n}\n","import { transition, trigger, useAnimation } from '@angular/animations';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { ChangeDetectionStrategy, Component, HostListener, inject, Input, Output, ViewEncapsulation } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { fadeIn, fadeOut, slideInLeft, slideOutLeft } from '@odx/angular/animations';\nimport { AreaHeaderModule } from '@odx/angular/components/area-header';\nimport { ButtonComponent } from '@odx/angular/components/button';\nimport { IconComponent } from '@odx/angular/components/icon';\nimport { LogoDirective } from '@odx/angular/components/logo';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { MainMenuService } from './main-menu.service';\n\n@CSSComponent('main-menu')\n@Component({\n selector: 'odx-main-menu',\n templateUrl: './main-menu.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [A11yModule, CoreModule, AreaHeaderModule, ButtonComponent, IconComponent, LogoDirective],\n standalone: true,\n host: {\n '[class.is-open]': 'isOpen',\n },\n animations: [\n trigger('menuAnimation', [transition(':enter', [useAnimation(slideInLeft)]), transition(':leave', [useAnimation(slideOutLeft)])]),\n trigger('overlayAnimation', [transition(':enter', [useAnimation(fadeIn())]), transition(':leave', [useAnimation(fadeOut())])]),\n ],\n})\nexport class MainMenuComponent {\n public static readonly ngAcceptInputType_isOpen: BooleanInput;\n\n protected readonly mainMenuService = inject(MainMenuService);\n public readonly element = injectElement();\n\n @Input()\n public title!: string;\n\n @Input()\n public subtitle: string | null = null;\n\n @Input()\n public copyright: string | null = null;\n\n @Input()\n public set isOpen(value: boolean) {\n this.mainMenuService.toggle(coerceBooleanProperty(value));\n }\n\n public get isOpen(): boolean {\n return this.mainMenuService.isOpen();\n }\n\n @Output()\n public menuOpen = this.mainMenuService.isOpen$;\n\n @HostListener('window:keydown.escape')\n public close(): void {\n this.mainMenuService.close();\n }\n}\n","<aside @menuAnimation class=\"odx-main-menu__inner\" cdkTrapFocus cdkTrapFocusAutoCapture *ngIf=\"menuOpen | async\">\n <div class=\"odx-main-menu__actions\">\n <button class=\"odx-main-menu__close\" odxButton disabled=\"false\" (click)=\"close()\">\n <odx-icon name=\"close\"></odx-icon>\n </button>\n </div>\n <odx-area-header class=\"odx-main-menu__header\">\n {{ title }}\n <odx-area-header-subtitle *ngIf=\"subtitle\">\n {{ subtitle }}\n </odx-area-header-subtitle>\n </odx-area-header>\n <nav class=\"odx-main-menu__content\">\n <ng-content></ng-content>\n </nav>\n <div class=\"odx-main-menu__info\">\n <ng-content select=\"[odxLink]\"></ng-content>\n </div>\n <div class=\"odx-main-menu__footer\">\n <odx-logo variant=\"inverse\"></odx-logo>\n <p class=\"odx-text odx-text--small\" *ngIf=\"copyright\">\n {{ copyright }}\n </p>\n </div>\n</aside>\n<div @overlayAnimation class=\"odx-main-menu__overlay\" (click)=\"close()\" *ngIf=\"menuOpen | async\"></div>\n","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { LinkDirective } from '@odx/angular/components/link';\nimport { MainMenuButtonDirective, MainMenuItemDirective } from './directives';\nimport { MainMenuComponent } from './main-menu.component';\n\nconst modules = [LinkDirective, MainMenuComponent, MainMenuItemDirective, MainMenuButtonDirective];\n\n@NgModule({\n imports: modules,\n exports: [CoreModule, ...modules],\n})\nexport class MainMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"odx-angular-components-main-menu.mjs","sources":["../../../../libs/angular/components/main-menu/src/lib/main-menu.service.ts","../../../../libs/angular/components/main-menu/src/lib/directives/main-menu-button.directive.ts","../../../../libs/angular/components/main-menu/src/lib/directives/main-menu-item.directive.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.component.ts","../../../../libs/angular/components/main-menu/src/lib/main-menu.component.html","../../../../libs/angular/components/main-menu/src/lib/main-menu.module.ts","../../../../libs/angular/components/main-menu/src/odx-angular-components-main-menu.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { isBoolean } from '@odx/angular/utils';\nimport { BehaviorSubject, distinctUntilChanged, shareReplay } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class MainMenuService {\n private readonly isOpen$$ = new BehaviorSubject(false);\n\n public readonly isOpen$ = this.isOpen$$.pipe(distinctUntilChanged(), shareReplay({ refCount: true }));\n\n public isOpen(): boolean {\n return this.isOpen$$.getValue();\n }\n\n public open(): void {\n this.toggle(true);\n }\n\n public close(): void {\n this.toggle(false);\n }\n\n public toggle(forceState?: boolean): void {\n if (isBoolean(forceState)) {\n this.isOpen$$.next(forceState);\n } else if (this.isOpen()) {\n this.isOpen$$.next(false);\n } else {\n this.isOpen$$.next(true);\n }\n }\n}\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { MainMenuService } from '../main-menu.service';\n\n@CSSComponent('main-menu-button')\n@Directive({\n selector: 'button[odxMainMenuButton]',\n standalone: true,\n})\nexport class MainMenuButtonDirective {\n private readonly mainMenuService = inject(MainMenuService);\n public readonly element = injectElement<HTMLButtonElement>();\n\n @HostListener('click')\n public onClick() {\n this.mainMenuService.toggle();\n }\n}\n","import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { Directive, inject, Input } from '@angular/core';\nimport { RouterLinkActive } from '@angular/router';\nimport { DisabledController } from '@odx/angular';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement, Transform } from '@odx/angular/utils';\n\n@CSSComponent('main-menu-item')\n@Directive({\n selector: '[odxMainMenuItem]',\n standalone: true,\n providers: [DisabledController.connect()],\n host: {\n '[class.is-selected]': 'isSelected || routerLinkActive?.isActive',\n '[class.is-disabled]': 'isDisabled',\n '[attr.disabled]': 'isDisabled || null',\n '[attr.role]': '\"button\"',\n '[tabindex]': 'isDisabled ? -1 : 0',\n },\n})\nexport class MainMenuItemDirective {\n public static readonly ngAcceptInputType_isSelected: BooleanInput;\n\n protected readonly disabledController = DisabledController.inject();\n protected readonly routerLinkActive = inject(RouterLinkActive, { optional: true });\n\n public readonly element = injectElement<HTMLLinkElement>();\n\n public get isDisabled(): boolean {\n return !!this.disabledController?.disabled;\n }\n\n @Transform(coerceBooleanProperty)\n @Input()\n public isSelected = false;\n}\n","import { transition, trigger, useAnimation } from '@angular/animations';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { ChangeDetectionStrategy, Component, HostListener, inject, Input, Output, ViewEncapsulation } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { fadeIn, fadeOut, slideInLeft, slideOutLeft } from '@odx/angular/animations';\nimport { AreaHeaderModule } from '@odx/angular/components/area-header';\nimport { ButtonComponent } from '@odx/angular/components/button';\nimport { IconComponent } from '@odx/angular/components/icon';\nimport { LogoDirective } from '@odx/angular/components/logo';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { MainMenuService } from './main-menu.service';\n\n@CSSComponent('main-menu')\n@Component({\n selector: 'odx-main-menu',\n templateUrl: './main-menu.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [A11yModule, CoreModule, AreaHeaderModule, ButtonComponent, IconComponent, LogoDirective],\n standalone: true,\n host: {\n '[class.is-open]': 'isOpen',\n },\n animations: [\n trigger('menuAnimation', [transition(':enter', [useAnimation(slideInLeft)]), transition(':leave', [useAnimation(slideOutLeft)])]),\n trigger('overlayAnimation', [transition(':enter', [useAnimation(fadeIn())]), transition(':leave', [useAnimation(fadeOut())])]),\n ],\n})\nexport class MainMenuComponent {\n public static readonly ngAcceptInputType_isOpen: BooleanInput;\n\n protected readonly mainMenuService = inject(MainMenuService);\n public readonly element = injectElement();\n\n @Input()\n public title!: string;\n\n @Input()\n public subtitle: string | null = null;\n\n @Input()\n public copyright: string | null = null;\n\n @Input()\n public set isOpen(value: boolean) {\n this.mainMenuService.toggle(coerceBooleanProperty(value));\n }\n\n public get isOpen(): boolean {\n return this.mainMenuService.isOpen();\n }\n\n @Output()\n public menuOpen = this.mainMenuService.isOpen$;\n\n @HostListener('window:keyup.esc')\n public close(): void {\n this.mainMenuService.close();\n }\n}\n","<aside @menuAnimation class=\"odx-main-menu__inner\" cdkTrapFocus cdkTrapFocusAutoCapture *ngIf=\"menuOpen | async\">\n <div class=\"odx-main-menu__actions\">\n <button class=\"odx-main-menu__close\" odxButton disabled=\"false\" (click)=\"close()\">\n <odx-icon name=\"close\"></odx-icon>\n </button>\n </div>\n <odx-area-header class=\"odx-main-menu__header\">\n {{ title }}\n <odx-area-header-subtitle *ngIf=\"subtitle\">\n {{ subtitle }}\n </odx-area-header-subtitle>\n </odx-area-header>\n <nav class=\"odx-main-menu__content\">\n <ng-content></ng-content>\n </nav>\n <div class=\"odx-main-menu__info\">\n <ng-content select=\"[odxLink]\"></ng-content>\n </div>\n <div class=\"odx-main-menu__footer\">\n <odx-logo variant=\"inverse\"></odx-logo>\n <p class=\"odx-text odx-text--small\" *ngIf=\"copyright\">\n {{ copyright }}\n </p>\n </div>\n</aside>\n<div @overlayAnimation class=\"odx-main-menu__overlay\" (click)=\"close()\" *ngIf=\"menuOpen | async\"></div>\n","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { LinkDirective } from '@odx/angular/components/link';\nimport { MainMenuButtonDirective, MainMenuItemDirective } from './directives';\nimport { MainMenuComponent } from './main-menu.component';\n\nconst modules = [LinkDirective, MainMenuComponent, MainMenuItemDirective, MainMenuButtonDirective];\n\n@NgModule({\n imports: modules,\n exports: [CoreModule, ...modules],\n})\nexport class MainMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}