@ng-atomic/components 3.2.10 → 3.5.0

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 (224) hide show
  1. package/atoms/icon/icon.atom.d.ts +14 -0
  2. package/atoms/icon/icon.atom.d.ts.map +1 -0
  3. package/atoms/icon/icon.module.d.ts +10 -0
  4. package/atoms/icon/icon.module.d.ts.map +1 -0
  5. package/atoms/icon/index.d.ts +3 -0
  6. package/atoms/icon/index.d.ts.map +1 -0
  7. package/atoms/icon/ng-atomic-components-atoms-icon.d.ts +6 -0
  8. package/atoms/icon/ng-atomic-components-atoms-icon.d.ts.map +1 -0
  9. package/atoms/icon/package.json +10 -0
  10. package/atoms/smart-menu-button/smart-menu-button.atom.d.ts +1 -1
  11. package/atoms/smart-menu-button/smart-menu-button.atom.d.ts.map +1 -1
  12. package/esm2020/atoms/icon/icon.atom.mjs +59 -0
  13. package/esm2020/atoms/icon/icon.module.mjs +34 -0
  14. package/esm2020/atoms/icon/index.mjs +3 -0
  15. package/esm2020/atoms/icon/ng-atomic-components-atoms-icon.mjs +5 -0
  16. package/esm2020/frames/auto-layout/auto-layout.frame.mjs +2 -2
  17. package/esm2020/frames/drawer/drawer.frame.mjs +2 -2
  18. package/esm2020/frames/line-up/line-up.animations.mjs +14 -17
  19. package/esm2020/frames/line-up/line-up.frame.mjs +76 -39
  20. package/esm2020/frames/line-up/line-up.module.mjs +1 -1
  21. package/esm2020/frames/line-up/resize-observer.mjs +7 -21
  22. package/esm2020/frames/overlay/overlay.animations.mjs +4 -4
  23. package/esm2020/frames/overlay/overlay.frame.mjs +16 -32
  24. package/esm2020/frames/scroll/scroll.frame.mjs +2 -2
  25. package/esm2020/frames/smart-menu/smart-menu.frame.mjs +2 -2
  26. package/esm2020/molecules/date-input-field/date-input-field.molecule.mjs +2 -2
  27. package/esm2020/molecules/navigation-list-item/index.mjs +3 -0
  28. package/esm2020/molecules/navigation-list-item/navigation-list-item.module.mjs +41 -0
  29. package/esm2020/molecules/navigation-list-item/navigation-list-item.molecule.mjs +33 -0
  30. package/esm2020/molecules/navigation-list-item/ng-atomic-components-molecules-navigation-list-item.mjs +5 -0
  31. package/esm2020/molecules/select-input-field/select-input-field.molecule.mjs +2 -2
  32. package/esm2020/organisms/action-buttons-section/action-buttons-section.organism.mjs +2 -2
  33. package/esm2020/organisms/back-navigator/back-navigator.organism.mjs +2 -2
  34. package/esm2020/organisms/card-input-section/card-input-section.organism.mjs +2 -2
  35. package/esm2020/organisms/cvc-and-exp-input-section/cvc-and-exp-input-section.organism.mjs +2 -2
  36. package/esm2020/organisms/date-input-section/date-input-section.organism.mjs +2 -2
  37. package/esm2020/organisms/heading/heading.organism.mjs +2 -2
  38. package/esm2020/organisms/navigation-list/index.mjs +3 -0
  39. package/esm2020/organisms/navigation-list/navigation-list.module.mjs +37 -0
  40. package/esm2020/organisms/navigation-list/navigation-list.organism.mjs +39 -0
  41. package/esm2020/organisms/navigation-list/ng-atomic-components-organisms-navigation-list.mjs +5 -0
  42. package/esm2020/organisms/navigator/navigator.organism.mjs +2 -2
  43. package/esm2020/organisms/select-input-section/select-input-section.organism.mjs +2 -2
  44. package/esm2020/organisms/smart-table/smart-table.organism.mjs +2 -2
  45. package/esm2020/organisms/social-login-section/social-login-section.organism.mjs +2 -2
  46. package/esm2020/organisms/text-input-section/text-input-section.organism.mjs +2 -2
  47. package/esm2020/organisms/textarea-section/textarea-section.organism.mjs +2 -2
  48. package/esm2020/organisms/top-navigator/top-navigator.organism.mjs +2 -2
  49. package/esm2020/templates/entrance/entrance.template.mjs +2 -2
  50. package/esm2020/templates/menu/menu.module.mjs +5 -5
  51. package/esm2020/templates/menu/menu.template.mjs +12 -12
  52. package/esm2020/templates/smart-crud/smart-crud.template.mjs +2 -2
  53. package/esm2020/templates/smart-index/smart-index.template.mjs +14 -14
  54. package/fesm2015/ng-atomic-components-atoms-icon.mjs +113 -0
  55. package/fesm2015/ng-atomic-components-atoms-icon.mjs.map +1 -0
  56. package/fesm2015/ng-atomic-components-frames-auto-layout.mjs +2 -2
  57. package/fesm2015/ng-atomic-components-frames-drawer.mjs +2 -2
  58. package/fesm2015/ng-atomic-components-frames-line-up.mjs +94 -74
  59. package/fesm2015/ng-atomic-components-frames-line-up.mjs.map +1 -1
  60. package/fesm2015/ng-atomic-components-frames-overlay.mjs +17 -35
  61. package/fesm2015/ng-atomic-components-frames-overlay.mjs.map +1 -1
  62. package/fesm2015/ng-atomic-components-frames-scroll.mjs +2 -2
  63. package/fesm2015/ng-atomic-components-frames-smart-menu.mjs +2 -2
  64. package/fesm2015/ng-atomic-components-molecules-date-input-field.mjs +2 -2
  65. package/fesm2015/ng-atomic-components-molecules-navigation-list-item.mjs +87 -0
  66. package/fesm2015/ng-atomic-components-molecules-navigation-list-item.mjs.map +1 -0
  67. package/fesm2015/ng-atomic-components-molecules-select-input-field.mjs +2 -2
  68. package/fesm2015/ng-atomic-components-organisms-action-buttons-section.mjs +2 -2
  69. package/fesm2015/ng-atomic-components-organisms-back-navigator.mjs +2 -2
  70. package/fesm2015/ng-atomic-components-organisms-card-input-section.mjs +2 -2
  71. package/fesm2015/ng-atomic-components-organisms-cvc-and-exp-input-section.mjs +2 -2
  72. package/fesm2015/ng-atomic-components-organisms-date-input-section.mjs +2 -2
  73. package/fesm2015/ng-atomic-components-organisms-heading.mjs +2 -2
  74. package/fesm2015/ng-atomic-components-organisms-navigation-list.mjs +92 -0
  75. package/fesm2015/ng-atomic-components-organisms-navigation-list.mjs.map +1 -0
  76. package/fesm2015/ng-atomic-components-organisms-navigator.mjs +2 -2
  77. package/fesm2015/ng-atomic-components-organisms-select-input-section.mjs +2 -2
  78. package/fesm2015/ng-atomic-components-organisms-smart-table.mjs +2 -2
  79. package/fesm2015/ng-atomic-components-organisms-social-login-section.mjs +2 -2
  80. package/fesm2015/ng-atomic-components-organisms-text-input-section.mjs +2 -2
  81. package/fesm2015/ng-atomic-components-organisms-textarea-section.mjs +2 -2
  82. package/fesm2015/ng-atomic-components-organisms-top-navigator.mjs +2 -2
  83. package/fesm2015/ng-atomic-components-templates-entrance.mjs +2 -2
  84. package/fesm2015/ng-atomic-components-templates-menu.mjs +15 -15
  85. package/fesm2015/ng-atomic-components-templates-menu.mjs.map +1 -1
  86. package/fesm2015/ng-atomic-components-templates-smart-crud.mjs +2 -2
  87. package/fesm2015/ng-atomic-components-templates-smart-index.mjs +13 -13
  88. package/fesm2015/ng-atomic-components-templates-smart-index.mjs.map +1 -1
  89. package/fesm2020/ng-atomic-components-atoms-icon.mjs +96 -0
  90. package/fesm2020/ng-atomic-components-atoms-icon.mjs.map +1 -0
  91. package/fesm2020/ng-atomic-components-frames-auto-layout.mjs +2 -2
  92. package/fesm2020/ng-atomic-components-frames-drawer.mjs +2 -2
  93. package/fesm2020/ng-atomic-components-frames-line-up.mjs +93 -74
  94. package/fesm2020/ng-atomic-components-frames-line-up.mjs.map +1 -1
  95. package/fesm2020/ng-atomic-components-frames-overlay.mjs +17 -33
  96. package/fesm2020/ng-atomic-components-frames-overlay.mjs.map +1 -1
  97. package/fesm2020/ng-atomic-components-frames-scroll.mjs +2 -2
  98. package/fesm2020/ng-atomic-components-frames-smart-menu.mjs +2 -2
  99. package/fesm2020/ng-atomic-components-molecules-date-input-field.mjs +2 -2
  100. package/fesm2020/ng-atomic-components-molecules-navigation-list-item.mjs +78 -0
  101. package/fesm2020/ng-atomic-components-molecules-navigation-list-item.mjs.map +1 -0
  102. package/fesm2020/ng-atomic-components-molecules-select-input-field.mjs +2 -2
  103. package/fesm2020/ng-atomic-components-organisms-action-buttons-section.mjs +2 -2
  104. package/fesm2020/ng-atomic-components-organisms-back-navigator.mjs +2 -2
  105. package/fesm2020/ng-atomic-components-organisms-card-input-section.mjs +2 -2
  106. package/fesm2020/ng-atomic-components-organisms-cvc-and-exp-input-section.mjs +2 -2
  107. package/fesm2020/ng-atomic-components-organisms-date-input-section.mjs +2 -2
  108. package/fesm2020/ng-atomic-components-organisms-heading.mjs +2 -2
  109. package/fesm2020/ng-atomic-components-organisms-navigation-list.mjs +80 -0
  110. package/fesm2020/ng-atomic-components-organisms-navigation-list.mjs.map +1 -0
  111. package/fesm2020/ng-atomic-components-organisms-navigator.mjs +2 -2
  112. package/fesm2020/ng-atomic-components-organisms-select-input-section.mjs +2 -2
  113. package/fesm2020/ng-atomic-components-organisms-smart-table.mjs +2 -2
  114. package/fesm2020/ng-atomic-components-organisms-social-login-section.mjs +2 -2
  115. package/fesm2020/ng-atomic-components-organisms-text-input-section.mjs +2 -2
  116. package/fesm2020/ng-atomic-components-organisms-textarea-section.mjs +2 -2
  117. package/fesm2020/ng-atomic-components-organisms-top-navigator.mjs +2 -2
  118. package/fesm2020/ng-atomic-components-templates-entrance.mjs +2 -2
  119. package/fesm2020/ng-atomic-components-templates-menu.mjs +15 -15
  120. package/fesm2020/ng-atomic-components-templates-menu.mjs.map +1 -1
  121. package/fesm2020/ng-atomic-components-templates-smart-crud.mjs +2 -2
  122. package/fesm2020/ng-atomic-components-templates-smart-index.mjs +13 -13
  123. package/fesm2020/ng-atomic-components-templates-smart-index.mjs.map +1 -1
  124. package/frames/line-up/line-up.animations.d.ts.map +1 -1
  125. package/frames/line-up/line-up.frame.d.ts +30 -17
  126. package/frames/line-up/line-up.frame.d.ts.map +1 -1
  127. package/frames/line-up/resize-observer.d.ts +2 -15
  128. package/frames/line-up/resize-observer.d.ts.map +1 -1
  129. package/frames/overlay/overlay.animations.d.ts +1 -1
  130. package/frames/overlay/overlay.animations.d.ts.map +1 -1
  131. package/frames/overlay/overlay.frame.d.ts +2 -5
  132. package/frames/overlay/overlay.frame.d.ts.map +1 -1
  133. package/molecules/actions-column/actions-column.molecule.d.ts +1 -1
  134. package/molecules/actions-column/actions-column.molecule.d.ts.map +1 -1
  135. package/molecules/navigation-list-item/index.d.ts +3 -0
  136. package/molecules/navigation-list-item/index.d.ts.map +1 -0
  137. package/molecules/navigation-list-item/navigation-list-item.module.d.ts +11 -0
  138. package/molecules/navigation-list-item/navigation-list-item.module.d.ts.map +1 -0
  139. package/molecules/navigation-list-item/navigation-list-item.molecule.d.ts +9 -0
  140. package/molecules/navigation-list-item/navigation-list-item.molecule.d.ts.map +1 -0
  141. package/molecules/navigation-list-item/ng-atomic-components-molecules-navigation-list-item.d.ts +6 -0
  142. package/molecules/navigation-list-item/ng-atomic-components-molecules-navigation-list-item.d.ts.map +1 -0
  143. package/molecules/navigation-list-item/package.json +10 -0
  144. package/organisms/action-buttons-section/action-buttons-section.organism.d.ts +1 -1
  145. package/organisms/action-buttons-section/action-buttons-section.organism.d.ts.map +1 -1
  146. package/organisms/navigation-list/index.d.ts +3 -0
  147. package/organisms/navigation-list/index.d.ts.map +1 -0
  148. package/organisms/navigation-list/navigation-list.module.d.ts +11 -0
  149. package/organisms/navigation-list/navigation-list.module.d.ts.map +1 -0
  150. package/organisms/navigation-list/navigation-list.organism.d.ts +10 -0
  151. package/organisms/navigation-list/navigation-list.organism.d.ts.map +1 -0
  152. package/organisms/navigation-list/ng-atomic-components-organisms-navigation-list.d.ts +6 -0
  153. package/organisms/navigation-list/ng-atomic-components-organisms-navigation-list.d.ts.map +1 -0
  154. package/organisms/navigation-list/package.json +10 -0
  155. package/organisms/smart-table/smart-table.organism.d.ts +1 -1
  156. package/organisms/smart-table/smart-table.organism.d.ts.map +1 -1
  157. package/organisms/top-navigator/top-navigator.organism.d.ts +1 -1
  158. package/organisms/top-navigator/top-navigator.organism.d.ts.map +1 -1
  159. package/package.json +28 -27
  160. package/templates/menu/menu.module.d.ts +2 -2
  161. package/templates/menu/menu.template.d.ts +3 -3
  162. package/templates/menu/menu.template.d.ts.map +1 -1
  163. package/templates/smart-index/smart-index.template.d.ts +4 -4
  164. package/templates/smart-index/smart-index.template.d.ts.map +1 -1
  165. package/esm2020/frames/line-up-v2/index.mjs +0 -3
  166. package/esm2020/frames/line-up-v2/line-up.animations.mjs +0 -64
  167. package/esm2020/frames/line-up-v2/line-up.frame.mjs +0 -110
  168. package/esm2020/frames/line-up-v2/line-up.module.mjs +0 -27
  169. package/esm2020/frames/line-up-v2/ng-atomic-components-frames-line-up-v2.mjs +0 -5
  170. package/esm2020/frames/line-up-v2/resize-observer.mjs +0 -13
  171. package/esm2020/frames/overlay-v2/index.mjs +0 -3
  172. package/esm2020/frames/overlay-v2/ng-atomic-components-frames-overlay-v2.mjs +0 -5
  173. package/esm2020/frames/overlay-v2/overlay.animations.mjs +0 -28
  174. package/esm2020/frames/overlay-v2/overlay.frame.mjs +0 -30
  175. package/esm2020/frames/overlay-v2/overlay.module.mjs +0 -29
  176. package/esm2020/organisms/menu/index.mjs +0 -3
  177. package/esm2020/organisms/menu/menu.module.mjs +0 -31
  178. package/esm2020/organisms/menu/menu.organism.mjs +0 -49
  179. package/esm2020/organisms/menu/ng-atomic-components-organisms-menu.mjs +0 -5
  180. package/fesm2015/ng-atomic-components-frames-line-up-v2.mjs +0 -228
  181. package/fesm2015/ng-atomic-components-frames-line-up-v2.mjs.map +0 -1
  182. package/fesm2015/ng-atomic-components-frames-overlay-v2.mjs +0 -99
  183. package/fesm2015/ng-atomic-components-frames-overlay-v2.mjs.map +0 -1
  184. package/fesm2015/ng-atomic-components-organisms-menu.mjs +0 -96
  185. package/fesm2015/ng-atomic-components-organisms-menu.mjs.map +0 -1
  186. package/fesm2020/ng-atomic-components-frames-line-up-v2.mjs +0 -213
  187. package/fesm2020/ng-atomic-components-frames-line-up-v2.mjs.map +0 -1
  188. package/fesm2020/ng-atomic-components-frames-overlay-v2.mjs +0 -90
  189. package/fesm2020/ng-atomic-components-frames-overlay-v2.mjs.map +0 -1
  190. package/fesm2020/ng-atomic-components-organisms-menu.mjs +0 -84
  191. package/fesm2020/ng-atomic-components-organisms-menu.mjs.map +0 -1
  192. package/frames/line-up-v2/index.d.ts +0 -3
  193. package/frames/line-up-v2/index.d.ts.map +0 -1
  194. package/frames/line-up-v2/line-up.animations.d.ts +0 -2
  195. package/frames/line-up-v2/line-up.animations.d.ts.map +0 -1
  196. package/frames/line-up-v2/line-up.frame.d.ts +0 -36
  197. package/frames/line-up-v2/line-up.frame.d.ts.map +0 -1
  198. package/frames/line-up-v2/line-up.module.d.ts +0 -10
  199. package/frames/line-up-v2/line-up.module.d.ts.map +0 -1
  200. package/frames/line-up-v2/ng-atomic-components-frames-line-up-v2.d.ts +0 -6
  201. package/frames/line-up-v2/ng-atomic-components-frames-line-up-v2.d.ts.map +0 -1
  202. package/frames/line-up-v2/package.json +0 -10
  203. package/frames/line-up-v2/resize-observer.d.ts +0 -4
  204. package/frames/line-up-v2/resize-observer.d.ts.map +0 -1
  205. package/frames/overlay-v2/index.d.ts +0 -3
  206. package/frames/overlay-v2/index.d.ts.map +0 -1
  207. package/frames/overlay-v2/ng-atomic-components-frames-overlay-v2.d.ts +0 -6
  208. package/frames/overlay-v2/ng-atomic-components-frames-overlay-v2.d.ts.map +0 -1
  209. package/frames/overlay-v2/overlay.animations.d.ts +0 -2
  210. package/frames/overlay-v2/overlay.animations.d.ts.map +0 -1
  211. package/frames/overlay-v2/overlay.frame.d.ts +0 -7
  212. package/frames/overlay-v2/overlay.frame.d.ts.map +0 -1
  213. package/frames/overlay-v2/overlay.module.d.ts +0 -10
  214. package/frames/overlay-v2/overlay.module.d.ts.map +0 -1
  215. package/frames/overlay-v2/package.json +0 -10
  216. package/organisms/menu/index.d.ts +0 -3
  217. package/organisms/menu/index.d.ts.map +0 -1
  218. package/organisms/menu/menu.module.d.ts +0 -11
  219. package/organisms/menu/menu.module.d.ts.map +0 -1
  220. package/organisms/menu/menu.organism.d.ts +0 -10
  221. package/organisms/menu/menu.organism.d.ts.map +0 -1
  222. package/organisms/menu/ng-atomic-components-organisms-menu.d.ts +0 -6
  223. package/organisms/menu/ng-atomic-components-organisms-menu.d.ts.map +0 -1
  224. package/organisms/menu/package.json +0 -10
@@ -1,67 +1,66 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, Component, ChangeDetectionStrategy, HostBinding, Input, ViewChild, NgModule } from '@angular/core';
3
- import '@angular/router';
4
- import { Observable, ReplaySubject } from 'rxjs';
5
- import { startWith, map, distinctUntilChanged } from 'rxjs/operators';
3
+ import { Observable, ReplaySubject, BehaviorSubject, combineLatest } from 'rxjs';
4
+ import { map, startWith, distinctUntilChanged, takeUntil } from 'rxjs/operators';
6
5
  import { trigger, state, style, transition, animate, sequence, query, group } from '@angular/animations';
7
6
  import ResizeObserver from 'resize-observer-polyfill';
8
7
  import { CommonModule } from '@angular/common';
9
8
  import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
10
9
 
11
- const visibleHiddenAnimation = trigger('visibleHidden', [
12
- state('visible', style({
10
+ const MAIN_ANIMATION = trigger('modeChangeForMain', [
11
+ state('*', style({
13
12
  width: '100%',
14
13
  })),
15
- state('hidden', style({
14
+ state('Next', style({
16
15
  display: 'none',
17
16
  width: '0%',
18
17
  })),
19
- transition('visible => hidden', [
18
+ transition('* => Next', [
20
19
  animate('0.5s', style({ width: '0%' })),
21
20
  style({ display: 'none' }),
22
21
  ]),
23
- transition('hidden => visible', [
22
+ transition('Next => *', [
24
23
  sequence([
25
24
  style({ display: 'inherit' }),
26
25
  animate('0.5s', style({ width: '100%' })),
27
26
  ]),
28
27
  ]),
29
28
  ]);
30
- const routeAnimation = trigger('pageChange', [
29
+ const NEXT_ANIMATION = trigger('modeChangeForNext', [
31
30
  state('Next', style({
32
31
  position: 'relative',
33
32
  width: '100%',
34
33
  })),
35
- state('NextWithMainPage', style({
34
+ state('Both', style({
36
35
  position: 'relative',
37
36
  width: '100%',
38
37
  })),
39
- state('Blank', style({
38
+ state('Main', style({
40
39
  position: 'relative',
41
40
  display: 'none',
42
41
  })),
43
- transition('Blank => Next', [
42
+ transition('Main => Next', [
44
43
  query(':enter', [animate('0.5s')], { optional: true }),
45
44
  sequence([
46
45
  style({ display: 'inherit', width: '100%' }),
47
46
  animate('0.5s'),
48
47
  ]),
49
48
  ]),
50
- transition('Blank => NextWithMainPage', [
49
+ transition('Main => Both', [
51
50
  query(':enter', [animate('0.5s')], { optional: true }),
52
51
  sequence([
53
52
  style({ display: 'inherit', width: '100%' }),
54
53
  animate('0.5s'),
55
54
  ]),
56
55
  ]),
57
- transition('Next => Blank', group([
56
+ transition('Next => Main', group([
58
57
  query(':leave', animate('0.5s', style({ width: '100%' })), { optional: true }),
59
58
  sequence([
60
59
  style({ position: 'absolute', display: 'block', left: '0%' }),
61
60
  animate('0.5s', style({ left: '100%' })),
62
61
  ]),
63
62
  ])),
64
- transition('NextWithMainPage => Blank', group([
63
+ transition('Both => Main', group([
65
64
  query(':leave', animate('0.5s', style({ width: '100%' })), { optional: true }),
66
65
  sequence([
67
66
  style({ position: 'absolute', display: 'block', left: '100%' }),
@@ -69,82 +68,104 @@ const routeAnimation = trigger('pageChange', [
69
68
  ]),
70
69
  ])),
71
70
  ]);
72
- const LINE_UP_ANIMATIONS = [
73
- visibleHiddenAnimation,
74
- routeAnimation,
75
- ];
71
+ const LINE_UP_ANIMATIONS = [MAIN_ANIMATION, NEXT_ANIMATION];
76
72
 
77
- function fromResize(...elements) {
73
+ function fromResize({ nativeElement }) {
78
74
  return Observable.create(function (observer) {
79
- const resizeObserver = new ResizeObserver((observerEntries) => {
80
- for (const entry of observerEntries) {
81
- observer.next(entry);
82
- }
83
- });
84
- for (const el of elements) {
85
- resizeObserver.observe(el);
86
- }
87
- // cancel resize observer on cancelation
75
+ const callback = (entries) => entries.forEach((e) => observer.next(e));
76
+ const resizeObserver = new ResizeObserver(callback);
77
+ resizeObserver.observe(nativeElement);
88
78
  return () => resizeObserver.disconnect();
89
- }).pipe(startWith({
90
- x: 0,
91
- y: 0,
92
- width: 0,
93
- height: 0,
94
- top: 0,
95
- right: 0,
96
- bottom: 0,
97
- left: 0,
98
- }));
79
+ }).pipe(map(({ contentRect }) => contentRect?.width ?? 0), startWith(0), distinctUntilChanged());
99
80
  }
100
81
 
101
82
  const _c0 = ["next"];
102
83
  const _c1 = [[["", "main", ""]], [["", "next", ""]]];
103
84
  const _c2 = ["[main]", "[next]"];
104
- const _fromResize = (el) => fromResize(el.nativeElement)
105
- .pipe(map(({ contentRect }) => contentRect?.width ?? 0))
106
- .pipe(distinctUntilChanged());
107
- class LineUpService {
85
+ var Mode;
86
+ (function (Mode) {
87
+ Mode["MAIN"] = "Main";
88
+ Mode["BOTH"] = "Both";
89
+ Mode["NEXT"] = "Next";
90
+ })(Mode || (Mode = {}));
91
+ class LineUpFrameService {
108
92
  constructor() {
109
- this.pageAnimationDone$ = new ReplaySubject(1);
93
+ this.frames = [];
94
+ }
95
+ register(frame) {
96
+ this.frames.push(frame);
97
+ console.debug('this.frames:', this.frames);
98
+ }
99
+ unregister(frame) {
100
+ this.frames = this.frames.slice(0, this.findIndex(frame));
101
+ }
102
+ findIndex(frame) {
103
+ return this.frames.findIndex((value) => value === frame);
104
+ }
105
+ propagate(frame) {
106
+ const target = this.frames?.[this.findIndex(frame) - 1];
107
+ target?.refresh();
110
108
  }
111
109
  }
112
- LineUpService.ɵfac = function LineUpService_Factory(t) { return new (t || LineUpService)(); };
113
- LineUpService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: LineUpService, factory: LineUpService.ɵfac, providedIn: 'root' });
114
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LineUpService, [{
110
+ LineUpFrameService.ɵfac = function LineUpFrameService_Factory(t) { return new (t || LineUpFrameService)(); };
111
+ LineUpFrameService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: LineUpFrameService, factory: LineUpFrameService.ɵfac, providedIn: 'root' });
112
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LineUpFrameService, [{
115
113
  type: Injectable,
116
114
  args: [{ providedIn: 'root' }]
117
115
  }], null, null); })();
118
116
  class LineUpFrame {
119
- constructor(service, cd) {
117
+ constructor(service) {
120
118
  this.service = service;
121
- this.cd = cd;
122
- this.isMainHidden = false;
123
- this.label = 'root';
119
+ this.Mode = Mode;
120
+ this.mode = Mode.MAIN;
121
+ this.refresh$ = new ReplaySubject(1);
122
+ this.destroy$ = new ReplaySubject(1);
123
+ this.hasNext$ = new BehaviorSubject(false);
124
+ this._hasNext = false;
124
125
  this.minNextWidth = 360;
125
126
  }
126
- get page() {
127
- const page = this.outlet?.activatedRouteData?.['page'];
128
- return page === 'Blank' ? 'Blank' : this.isMainHidden ? `Next` : `NextWithMainPage`;
127
+ set hasNext(_hasNext) {
128
+ this.hasNext$.next(_hasNext);
129
+ this._hasNext = _hasNext;
130
+ }
131
+ ;
132
+ get hasNext() {
133
+ return this._hasNext;
129
134
  }
130
135
  ngOnInit() {
131
- if (this.label === 'root')
132
- return;
133
- _fromResize(this.next).subscribe((width) => {
134
- this.isMainHidden = width > this.minNextWidth;
135
- this.cd.detectChanges();
136
+ this.service.register(this);
137
+ this.refresh();
138
+ combineLatest([
139
+ this.hasNext$,
140
+ fromResize(this.nextElementRef),
141
+ this.refresh$,
142
+ ]).pipe(takeUntil(this.destroy$)).subscribe(([hasNext, width]) => {
143
+ this.mode = this.resolveMode(hasNext, width);
144
+ setTimeout(() => this.service.propagate(this), 0);
136
145
  });
137
146
  }
147
+ ngOnDestroy() {
148
+ this.service.unregister(this);
149
+ this.destroy$.next();
150
+ }
151
+ refresh() {
152
+ this.refresh$.next();
153
+ }
154
+ resolveMode(hasNext, width) {
155
+ if (hasNext && width <= this.minNextWidth)
156
+ return Mode.BOTH;
157
+ return hasNext ? Mode.NEXT : Mode.MAIN;
158
+ }
138
159
  }
139
- LineUpFrame.ɵfac = function LineUpFrame_Factory(t) { return new (t || LineUpFrame)(i0.ɵɵdirectiveInject(LineUpService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
160
+ LineUpFrame.ɵfac = function LineUpFrame_Factory(t) { return new (t || LineUpFrame)(i0.ɵɵdirectiveInject(LineUpFrameService)); };
140
161
  LineUpFrame.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LineUpFrame, selectors: [["frames-line-up"]], viewQuery: function LineUpFrame_Query(rf, ctx) { if (rf & 1) {
141
162
  i0.ɵɵviewQuery(_c0, 7);
142
163
  } if (rf & 2) {
143
164
  let _t;
144
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.next = _t.first);
165
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.nextElementRef = _t.first);
145
166
  } }, hostVars: 1, hostBindings: function LineUpFrame_HostBindings(rf, ctx) { if (rf & 2) {
146
- i0.ɵɵattribute("is-main-hidden", ctx.isMainHidden);
147
- } }, inputs: { label: "label", outlet: "outlet", minNextWidth: "minNextWidth" }, ngContentSelectors: _c2, decls: 6, vars: 2, consts: [[1, "main", "contents"], ["main", ""], [1, "next", "contents"], ["next", ""]], template: function LineUpFrame_Template(rf, ctx) { if (rf & 1) {
167
+ i0.ɵɵattribute("has-next", ctx.hasNext);
168
+ } }, inputs: { hasNext: "hasNext", minNextWidth: "minNextWidth" }, ngContentSelectors: _c2, decls: 6, vars: 2, consts: [[1, "main"], ["main", ""], [1, "next"], ["next", ""]], template: function LineUpFrame_Template(rf, ctx) { if (rf & 1) {
148
169
  i0.ɵɵprojectionDef(_c1);
149
170
  i0.ɵɵelementStart(0, "div", 0, 1);
150
171
  i0.ɵɵprojection(2);
@@ -153,23 +174,21 @@ LineUpFrame.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LineUpFrame, se
153
174
  i0.ɵɵprojection(5, 1);
154
175
  i0.ɵɵelementEnd();
155
176
  } if (rf & 2) {
156
- i0.ɵɵproperty("@visibleHidden", ctx.isMainHidden ? "hidden" : "visible");
177
+ i0.ɵɵproperty("@modeChangeForMain", ctx.mode);
157
178
  i0.ɵɵadvance(3);
158
- i0.ɵɵproperty("@pageChange", ctx.page);
159
- } }, styles: ["[_nghost-%COMP%]{--gap: 1px;--gap-SCOPED-IN-line-up-tNmZ: var(--gap);--background: #ccc;--background-SCOPED-IN-line-up-tNmZ: var(--background);--contents-background: transparent;--contents-background-SCOPED-IN-line-up-tNmZ: var(--contents-background)}[_nghost-%COMP%]{position:relative;display:flex;justify-content:flex-start;grid-gap:var(--gap-SCOPED-IN-line-up-tNmZ);gap:var(--gap-SCOPED-IN-line-up-tNmZ);width:-moz-fit-content;width:fit-content;height:100%;background:var(--background-SCOPED-IN-line-up-tNmZ)}[_nghost-%COMP%] .contents[_ngcontent-%COMP%]{display:flex;max-width:-moz-fit-content;max-width:fit-content;height:100%;background:var(--contents-background-SCOPED-IN-line-up-tNmZ)}[_nghost-%COMP%] .contents.main[_ngcontent-%COMP%]{overflow:hidden;justify-content:flex-end}[_nghost-%COMP%] .contents.next[_ngcontent-%COMP%]{overflow:visible;justify-content:flex-start}"], data: { animation: LINE_UP_ANIMATIONS } });
179
+ i0.ɵɵproperty("@modeChangeForNext", ctx.mode);
180
+ } }, styles: ["[_nghost-%COMP%]{--gap: 1px;--gap-SCOPED-IN-line-up-WRBZ: var(--gap);--background: #ccc;--background-SCOPED-IN-line-up-WRBZ: var(--background);--contents-background: transparent;--contents-background-SCOPED-IN-line-up-WRBZ: var(--contents-background)}[_nghost-%COMP%]{position:relative;display:flex;justify-content:flex-start;grid-gap:var(--gap-SCOPED-IN-line-up-WRBZ);gap:var(--gap-SCOPED-IN-line-up-WRBZ);width:-moz-fit-content;width:fit-content;height:100%;background:var(--background-SCOPED-IN-line-up-WRBZ)}[_nghost-%COMP%] div[_ngcontent-%COMP%]{display:flex;max-width:-moz-fit-content;max-width:fit-content;height:100%;background:var(--contents-background-SCOPED-IN-line-up-WRBZ)}[_nghost-%COMP%] div.main[_ngcontent-%COMP%]{overflow:hidden;justify-content:flex-end}[_nghost-%COMP%] div.next[_ngcontent-%COMP%]{overflow:visible;justify-content:flex-start}"], data: { animation: LINE_UP_ANIMATIONS } });
160
181
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LineUpFrame, [{
161
182
  type: Component,
162
- args: [{ selector: 'frames-line-up', changeDetection: ChangeDetectionStrategy.Default, animations: LINE_UP_ANIMATIONS, template: "<div class=\"main contents\" [@visibleHidden]=\"isMainHidden ? 'hidden' : 'visible' \" #main>\n <ng-content select=\"[main]\"></ng-content>\n</div>\n<div class=\"next contents\" [@pageChange]=\"page\" #next>\n <ng-content select=\"[next]\"></ng-content>\n</div>", styles: [":host{--gap: 1px;--gap-SCOPED-IN-line-up-tNmZ: var(--gap);--background: #ccc;--background-SCOPED-IN-line-up-tNmZ: var(--background);--contents-background: transparent;--contents-background-SCOPED-IN-line-up-tNmZ: var(--contents-background)}:host{position:relative;display:flex;justify-content:flex-start;grid-gap:var(--gap-SCOPED-IN-line-up-tNmZ);gap:var(--gap-SCOPED-IN-line-up-tNmZ);width:-moz-fit-content;width:fit-content;height:100%;background:var(--background-SCOPED-IN-line-up-tNmZ)}:host .contents{display:flex;max-width:-moz-fit-content;max-width:fit-content;height:100%;background:var(--contents-background-SCOPED-IN-line-up-tNmZ)}:host .contents.main{overflow:hidden;justify-content:flex-end}:host .contents.next{overflow:visible;justify-content:flex-start}\n"] }]
163
- }], function () { return [{ type: LineUpService }, { type: i0.ChangeDetectorRef }]; }, { isMainHidden: [{
183
+ args: [{ selector: 'frames-line-up', changeDetection: ChangeDetectionStrategy.Default, animations: LINE_UP_ANIMATIONS, template: "<div class=\"main\" [@modeChangeForMain]=\"mode\" #main>\n <ng-content select=\"[main]\"></ng-content>\n</div>\n<div class=\"next\" [@modeChangeForNext]=\"mode\" #next>\n <ng-content select=\"[next]\"></ng-content>\n</div>", styles: [":host{--gap: 1px;--gap-SCOPED-IN-line-up-WRBZ: var(--gap);--background: #ccc;--background-SCOPED-IN-line-up-WRBZ: var(--background);--contents-background: transparent;--contents-background-SCOPED-IN-line-up-WRBZ: var(--contents-background)}:host{position:relative;display:flex;justify-content:flex-start;grid-gap:var(--gap-SCOPED-IN-line-up-WRBZ);gap:var(--gap-SCOPED-IN-line-up-WRBZ);width:-moz-fit-content;width:fit-content;height:100%;background:var(--background-SCOPED-IN-line-up-WRBZ)}:host div{display:flex;max-width:-moz-fit-content;max-width:fit-content;height:100%;background:var(--contents-background-SCOPED-IN-line-up-WRBZ)}:host div.main{overflow:hidden;justify-content:flex-end}:host div.next{overflow:visible;justify-content:flex-start}\n"] }]
184
+ }], function () { return [{ type: LineUpFrameService }]; }, { hasNext: [{
164
185
  type: HostBinding,
165
- args: ['attr.is-main-hidden']
166
- }], label: [{
167
- type: Input
168
- }], outlet: [{
186
+ args: ['attr.has-next']
187
+ }, {
169
188
  type: Input
170
189
  }], minNextWidth: [{
171
190
  type: Input
172
- }], next: [{
191
+ }], nextElementRef: [{
173
192
  type: ViewChild,
174
193
  args: ['next', { static: true }]
175
194
  }] }); })();
@@ -200,5 +219,5 @@ LineUpModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [[
200
219
  * Generated bundle index. Do not edit.
201
220
  */
202
221
 
203
- export { LineUpFrame, LineUpModule };
222
+ export { LineUpFrame, LineUpFrameService, LineUpModule };
204
223
  //# sourceMappingURL=ng-atomic-components-frames-line-up.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-frames-line-up.mjs","sources":["../../../../libs/components/src/frames/line-up/line-up.animations.ts","../../../../libs/components/src/frames/line-up/resize-observer.ts","../../../../libs/components/src/frames/line-up/line-up.frame.ts","../../../../libs/components/src/frames/line-up/line-up.frame.html","../../../../libs/components/src/frames/line-up/line-up.module.ts","../../../../libs/components/src/frames/line-up/ng-atomic-components-frames-line-up.ts"],"sourcesContent":["import { animate, query, sequence, state, style, transition, trigger, group } from '@angular/animations';\n\nconst visibleHiddenAnimation = trigger('visibleHidden', [\n state('visible', style({\n width: '100%',\n })),\n state('hidden', style({\n display: 'none',\n width: '0%',\n })),\n transition('visible => hidden', [\n animate('0.5s', style({ width: '0%' })),\n style({display: 'none'}),\n ]),\n transition('hidden => visible', [\n sequence([\n style({ display: 'inherit' }),\n animate('0.5s', style({ width: '100%' })),\n ]),\n ]),\n]);\n\nconst routeAnimation = trigger('pageChange', [\n state('Next', style({\n position: 'relative',\n width: '100%',\n })),\n state('NextWithMainPage', style({\n position: 'relative',\n width: '100%',\n })),\n state('Blank', style({\n position: 'relative',\n display: 'none',\n })),\n transition('Blank => Next', [\n query(':enter', [animate('0.5s')], { optional: true }),\n sequence([\n style({ display: 'inherit', width: '100%' }),\n animate('0.5s'),\n ]),\n ]),\n transition('Blank => NextWithMainPage', [\n query(':enter', [animate('0.5s')], { optional: true }),\n sequence([\n style({ display: 'inherit', width: '100%' }),\n animate('0.5s'),\n ]),\n ]),\n transition('Next => Blank', group([\n query(':leave', animate('0.5s', style({width: '100%'})), { optional: true }),\n sequence([\n style({position: 'absolute', display: 'block', left: '0%'}),\n animate('0.5s', style({left: '100%'})),\n ]),\n ])),\n transition('NextWithMainPage => Blank', group([\n query(':leave', animate('0.5s', style({width: '100%'})), { optional: true }),\n sequence([\n style({position: 'absolute', display: 'block', left: '100%'}),\n animate('0.5s', style({})),\n ]),\n ])),\n]);\n\nexport const LINE_UP_ANIMATIONS = [\n visibleHiddenAnimation,\n routeAnimation,\n];","import { Observable } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\nimport ResizeObserver from 'resize-observer-polyfill';\n\nexport interface DOMRectReadOnly {\n readonly x: number;\n readonly y: number;\n readonly width: number;\n readonly height: number;\n readonly top: number;\n readonly right: number;\n readonly bottom: number;\n readonly left: number;\n}\n\nexport interface ResizeObserverEntry {\n readonly target: Element;\n readonly contentRect: DOMRectReadOnly;\n}\n\nexport function fromResize(...elements: Element[]): Observable<ResizeObserverEntry> {\n return Observable.create(function(observer: any) {\n\n const resizeObserver = new ResizeObserver((observerEntries: any) => {\n for (const entry of observerEntries) {\n observer.next(entry);\n }\n });\n\n for (const el of elements) {\n resizeObserver.observe(el);\n }\n\n // cancel resize observer on cancelation\n return () => resizeObserver.disconnect();\n }).pipe(\n startWith({\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n }) \n );\n}\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, HostBinding, Injectable, Input, ViewChild } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\nimport { ReplaySubject } from 'rxjs';\nimport { distinctUntilChanged, map } from 'rxjs/operators';\nimport { LINE_UP_ANIMATIONS } from './line-up.animations';\nimport { fromResize } from './resize-observer';\n\nconst _fromResize = (el: ElementRef) => fromResize(el.nativeElement)\n .pipe(map(({contentRect}: {contentRect: {width: number}}) => contentRect?.width ?? 0))\n .pipe(distinctUntilChanged());\n\n@Injectable({providedIn: 'root'})\nclass LineUpService {\n pageAnimationDone$ = new ReplaySubject(1);\n}\n\n@Component({\n selector: 'frames-line-up',\n templateUrl: './line-up.frame.html',\n styleUrls: ['./line-up.frame.scss'],\n changeDetection: ChangeDetectionStrategy.Default,\n animations: LINE_UP_ANIMATIONS,\n})\nexport class LineUpFrame {\n @HostBinding('attr.is-main-hidden')\n isMainHidden = false;\n\n @Input()\n label = 'root';\n\n @Input()\n outlet?: RouterOutlet;\n\n @Input()\n minNextWidth: number = 360;\n\n @ViewChild('next', {static: true})\n next!: ElementRef;\n\n get page(): string {\n const page: string = this.outlet?.activatedRouteData?.['page'];\n return page === 'Blank' ? 'Blank' : this.isMainHidden ? `Next` : `NextWithMainPage`;\n }\n\n constructor(\n public service: LineUpService,\n private cd: ChangeDetectorRef,\n ) { }\n\n ngOnInit(): void {\n if (this.label === 'root') return; \n\n _fromResize(this.next).subscribe((width: number) => {\n this.isMainHidden = width > this.minNextWidth;\n this.cd.detectChanges();\n });\n }\n}\n","<div class=\"main contents\" [@visibleHidden]=\"isMainHidden ? 'hidden' : 'visible' \" #main>\n <ng-content select=\"[main]\"></ng-content>\n</div>\n<div class=\"next contents\" [@pageChange]=\"page\" #next>\n <ng-content select=\"[next]\"></ng-content>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\n\nimport { LineUpFrame } from './line-up.frame';\n\n\n@NgModule({\n declarations: [LineUpFrame],\n imports: [\n CommonModule,\n MatProgressSpinnerModule\n ],\n exports: [LineUpFrame]\n})\nexport class LineUpModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-atomic-components-frames-line-up.mjs","sources":["../../../../libs/components/src/frames/line-up/line-up.animations.ts","../../../../libs/components/src/frames/line-up/resize-observer.ts","../../../../libs/components/src/frames/line-up/line-up.frame.ts","../../../../libs/components/src/frames/line-up/line-up.frame.html","../../../../libs/components/src/frames/line-up/line-up.module.ts","../../../../libs/components/src/frames/line-up/ng-atomic-components-frames-line-up.ts"],"sourcesContent":["import { animate, query, sequence, state, style, transition, trigger, group } from '@angular/animations';\n\nconst MAIN_ANIMATION = trigger('modeChangeForMain', [\n state('*', style({\n width: '100%',\n })),\n state('Next', style({\n display: 'none',\n width: '0%',\n })),\n transition('* => Next', [\n animate('0.5s', style({ width: '0%' })),\n style({display: 'none'}),\n ]),\n transition('Next => *', [\n sequence([\n style({ display: 'inherit' }),\n animate('0.5s', style({ width: '100%' })),\n ]),\n ]),\n]);\n\nconst NEXT_ANIMATION = trigger('modeChangeForNext', [\n state('Next', style({\n position: 'relative',\n width: '100%',\n })),\n state('Both', style({\n position: 'relative',\n width: '100%',\n })),\n state('Main', style({\n position: 'relative',\n display: 'none',\n })),\n transition('Main => Next', [\n query(':enter', [animate('0.5s')], { optional: true }),\n sequence([\n style({ display: 'inherit', width: '100%' }),\n animate('0.5s'),\n ]),\n ]),\n transition('Main => Both', [\n query(':enter', [animate('0.5s')], { optional: true }),\n sequence([\n style({ display: 'inherit', width: '100%' }),\n animate('0.5s'),\n ]),\n ]),\n transition('Next => Main', group([\n query(':leave', animate('0.5s', style({width: '100%'})), { optional: true }),\n sequence([\n style({position: 'absolute', display: 'block', left: '0%'}),\n animate('0.5s', style({left: '100%'})),\n ]),\n ])),\n transition('Both => Main', group([\n query(':leave', animate('0.5s', style({width: '100%'})), { optional: true }),\n sequence([\n style({position: 'absolute', display: 'block', left: '100%'}),\n animate('0.5s', style({})),\n ]),\n ])),\n]);\n\nexport const LINE_UP_ANIMATIONS = [MAIN_ANIMATION, NEXT_ANIMATION];\n","import { Observable } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport { distinctUntilChanged, map } from 'rxjs/operators';\nimport { ElementRef } from '@angular/core';\n\nexport function fromResize({nativeElement}: ElementRef<Element>): Observable<number> {\n return Observable.create(function(observer: any) {\n const callback = (entries: any) => entries.forEach((e: any) => observer.next(e));\n const resizeObserver = new ResizeObserver(callback);\n resizeObserver.observe(nativeElement);\n return () => resizeObserver.disconnect();\n }).pipe(\n map(({contentRect}) => contentRect?.width ?? 0),\n startWith(0),\n distinctUntilChanged(),\n );\n}\n","import { ChangeDetectionStrategy, Component, ElementRef, HostBinding, Injectable, Input, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { BehaviorSubject, combineLatest, ReplaySubject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { LINE_UP_ANIMATIONS } from './line-up.animations';\nimport { fromResize } from './resize-observer';\n\nenum Mode {\n MAIN = 'Main',\n BOTH = 'Both',\n NEXT = 'Next',\n}\n\n@Injectable({providedIn: 'root'})\nexport class LineUpFrameService {\n frames: LineUpFrame[] = [];\n\n register(frame: LineUpFrame) {\n this.frames.push(frame);\n console.debug('this.frames:', this.frames);\n }\n\n unregister(frame: LineUpFrame) {\n this.frames = this.frames.slice(0, this.findIndex(frame));\n }\n\n findIndex(frame: LineUpFrame): number {\n return this.frames.findIndex((value) => value === frame);\n }\n\n propagate(frame: LineUpFrame): void {\n const target = this.frames?.[this.findIndex(frame) - 1];\n target?.refresh();\n }\n}\n\n@Component({\n selector: 'frames-line-up',\n templateUrl: './line-up.frame.html',\n styleUrls: ['./line-up.frame.scss'],\n changeDetection: ChangeDetectionStrategy.Default,\n animations: LINE_UP_ANIMATIONS,\n})\nexport class LineUpFrame implements OnInit, OnDestroy {\n Mode = Mode;\n mode = Mode.MAIN;\n\n private readonly refresh$ = new ReplaySubject<void>(1);\n private readonly destroy$ = new ReplaySubject<void>(1);\n private readonly hasNext$ = new BehaviorSubject(false); \n\n\n private _hasNext = false;\n @HostBinding('attr.has-next')\n @Input()\n set hasNext(_hasNext: boolean) {\n this.hasNext$.next(_hasNext);\n this._hasNext = _hasNext;\n };\n get hasNext(): boolean {\n return this._hasNext;\n }\n\n @Input()\n minNextWidth: number = 360;\n\n @ViewChild('next', {static: true})\n nextElementRef!: ElementRef;\n\n constructor(private service: LineUpFrameService) { }\n\n ngOnInit(): void {\n this.service.register(this);\n this.refresh();\n \n combineLatest([\n this.hasNext$, \n fromResize(this.nextElementRef),\n this.refresh$,\n ]).pipe(takeUntil(this.destroy$)).subscribe(([hasNext, width]) => {\n this.mode = this.resolveMode(hasNext, width);\n setTimeout(() => this.service.propagate(this), 0);\n });\n }\n\n ngOnDestroy(): void {\n this.service.unregister(this);\n this.destroy$.next(); \n }\n\n refresh() {\n this.refresh$.next();\n }\n\n private resolveMode(hasNext: boolean, width: number): Mode {\n if (hasNext && width <= this.minNextWidth) return Mode.BOTH;\n return hasNext ? Mode.NEXT : Mode.MAIN;\n }\n}\n","<div class=\"main\" [@modeChangeForMain]=\"mode\" #main>\n <ng-content select=\"[main]\"></ng-content>\n</div>\n<div class=\"next\" [@modeChangeForNext]=\"mode\" #next>\n <ng-content select=\"[next]\"></ng-content>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\n\nimport { LineUpFrame } from './line-up.frame';\n\n\n@NgModule({\n declarations: [LineUpFrame],\n imports: [\n CommonModule,\n MatProgressSpinnerModule\n ],\n exports: [LineUpFrame]\n})\nexport class LineUpModule { }","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,14 +1,11 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, Input, NgModule } from '@angular/core';
3
- import '@angular/router';
2
+ import { Component, ChangeDetectionStrategy, Input, NgModule } from '@angular/core';
4
3
  import { trigger, transition, query, style, animate, animateChild } from '@angular/animations';
5
- import * as i1 from '@angular/common';
6
4
  import { CommonModule } from '@angular/common';
7
- import * as i2 from '@angular/material/progress-spinner';
8
5
  import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
9
6
 
10
- const slideInAnimation = trigger('routeAnimations', [
11
- transition('IndexPage => NextPage', [
7
+ const OVERLAY_ANIMATION = trigger('hasNext', [
8
+ transition('false => true', [
12
9
  query(':enter', [
13
10
  style({
14
11
  position: 'absolute',
@@ -20,7 +17,7 @@ const slideInAnimation = trigger('routeAnimations', [
20
17
  query(':enter', [animate('300ms ease-out', style({ left: '0%' }))]),
21
18
  query(':enter', animateChild()),
22
19
  ]),
23
- transition('NextPage => IndexPage', [
20
+ transition('true => false', [
24
21
  query(':leave', [
25
22
  style({
26
23
  position: 'absolute',
@@ -34,43 +31,30 @@ const slideInAnimation = trigger('routeAnimations', [
34
31
  ])
35
32
  ]);
36
33
 
37
- function OverlayFrame_div_0_Template(rf, ctx) { if (rf & 1) {
38
- i0.ɵɵelementStart(0, "div", 3);
39
- i0.ɵɵelement(1, "mat-spinner");
40
- i0.ɵɵelementEnd();
41
- } }
42
- const _c0 = [[["", "mainPage", ""]], [["", "nextPage", ""]]];
43
- const _c1 = ["[mainPage]", "[nextPage]"];
34
+ const _c0 = [[["", "main", ""]], [["", "next", ""]]];
35
+ const _c1 = ["[main]", "[next]"];
44
36
  class OverlayFrame {
45
37
  constructor() {
46
- this.outlet = null;
47
- this.isLoading = false;
48
- }
49
- prepareRoute(outlet) {
50
- return outlet?.activatedRouteData?.['page'];
38
+ this.hasNext = false;
51
39
  }
52
40
  }
53
41
  OverlayFrame.ɵfac = function OverlayFrame_Factory(t) { return new (t || OverlayFrame)(); };
54
- OverlayFrame.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: OverlayFrame, selectors: [["frames-overlay"]], inputs: { outlet: "outlet", isLoading: "isLoading" }, ngContentSelectors: _c1, decls: 5, vars: 2, consts: [["class", "loading", 4, "ngIf"], [1, "main", "page"], [1, "next", "page"], [1, "loading"]], template: function OverlayFrame_Template(rf, ctx) { if (rf & 1) {
42
+ OverlayFrame.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: OverlayFrame, selectors: [["frames-overlay"]], inputs: { hasNext: "hasNext" }, ngContentSelectors: _c1, decls: 4, vars: 1, consts: [[1, "main"], [1, "next"]], template: function OverlayFrame_Template(rf, ctx) { if (rf & 1) {
55
43
  i0.ɵɵprojectionDef(_c0);
56
- i0.ɵɵtemplate(0, OverlayFrame_div_0_Template, 2, 0, "div", 0);
57
- i0.ɵɵelementStart(1, "div", 1);
58
- i0.ɵɵprojection(2);
44
+ i0.ɵɵelementStart(0, "div", 0);
45
+ i0.ɵɵprojection(1);
59
46
  i0.ɵɵelementEnd();
60
- i0.ɵɵelementStart(3, "div", 2);
61
- i0.ɵɵprojection(4, 1);
47
+ i0.ɵɵelementStart(2, "div", 1);
48
+ i0.ɵɵprojection(3, 1);
62
49
  i0.ɵɵelementEnd();
63
50
  } if (rf & 2) {
64
- i0.ɵɵproperty("ngIf", ctx.isLoading);
65
- i0.ɵɵadvance(3);
66
- i0.ɵɵproperty("@routeAnimations", ctx.prepareRoute(ctx.outlet));
67
- } }, directives: [i1.NgIf, i2.MatProgressSpinner], styles: ["[_nghost-%COMP%]{--cell: 8px;--cell-SCOPED-IN-line-overlay-96pv: var(--cell);--width: 100%;--width-SCOPED-IN-line-overlay-96pv: var(--width);--height: 100%;--height-SCOPED-IN-line-overlay-96pv: var(--height)}[_nghost-%COMP%]{position:relative;display:block;width:var(--width-SCOPED-IN-line-overlay-96pv);height:var(--height-SCOPED-IN-line-overlay-96pv)}[_nghost-%COMP%] .loading[_ngcontent-%COMP%]{position:absolute;z-index:1000;top:0;left:0;display:flex;width:var(--width-SCOPED-IN-line-overlay-96pv);height:var(--height-SCOPED-IN-line-overlay-96pv);justify-content:center;align-items:center;background-color:#0006}[_nghost-%COMP%] .main.page[_ngcontent-%COMP%]{position:absolute;top:0;left:0;z-index:1;width:var(--width-SCOPED-IN-line-overlay-96pv);height:var(--height-SCOPED-IN-line-overlay-96pv);overflow:hidden}[_nghost-%COMP%] .main.page[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{--cell: var(--cell-SCOPED-IN-line-overlay-96pv);--width: var(--width-SCOPED-IN-line-overlay-96pv);--height: var(--height-SCOPED-IN-line-overlay-96pv)}[_nghost-%COMP%] .next.page[_ngcontent-%COMP%]{position:absolute;top:0;left:0;z-index:2;width:var(--width-SCOPED-IN-line-overlay-96pv);height:auto}[_nghost-%COMP%] .next.page[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{--cell: var(--cell-SCOPED-IN-line-overlay-96pv);--width: var(--width-SCOPED-IN-line-overlay-96pv);--height: var(--height-SCOPED-IN-line-overlay-96pv)}"], data: { animation: [slideInAnimation] } });
51
+ i0.ɵɵadvance(2);
52
+ i0.ɵɵproperty("@hasNext", ctx.hasNext);
53
+ } }, styles: ["[_nghost-%COMP%]{--cell: 8px;--cell-SCOPED-IN-line-overlay-N8S5: var(--cell);--width: 100%;--width-SCOPED-IN-line-overlay-N8S5: var(--width);--height: 100%;--height-SCOPED-IN-line-overlay-N8S5: var(--height)}[_nghost-%COMP%]{position:relative;display:block;width:var(--width-SCOPED-IN-line-overlay-N8S5);height:var(--height-SCOPED-IN-line-overlay-N8S5)}[_nghost-%COMP%] .loading[_ngcontent-%COMP%]{position:absolute;z-index:1000;top:0;left:0;display:flex;width:var(--width-SCOPED-IN-line-overlay-N8S5);height:var(--height-SCOPED-IN-line-overlay-N8S5);justify-content:center;align-items:center;background-color:#0006}[_nghost-%COMP%] .main[_ngcontent-%COMP%]{position:absolute;top:0;left:0;z-index:1;width:var(--width-SCOPED-IN-line-overlay-N8S5);height:var(--height-SCOPED-IN-line-overlay-N8S5);overflow:hidden}[_nghost-%COMP%] .main[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{--cell: var(--cell-SCOPED-IN-line-overlay-N8S5);--width: var(--width-SCOPED-IN-line-overlay-N8S5);--height: var(--height-SCOPED-IN-line-overlay-N8S5)}[_nghost-%COMP%] .next[_ngcontent-%COMP%]{position:absolute;top:0;left:0;z-index:2;width:var(--width-SCOPED-IN-line-overlay-N8S5);height:auto}[_nghost-%COMP%] .next[_ngcontent-%COMP%] *[_ngcontent-%COMP%]{--cell: var(--cell-SCOPED-IN-line-overlay-N8S5);--width: var(--width-SCOPED-IN-line-overlay-N8S5);--height: var(--height-SCOPED-IN-line-overlay-N8S5)}"], data: { animation: [OVERLAY_ANIMATION] }, changeDetection: 0 });
68
54
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(OverlayFrame, [{
69
55
  type: Component,
70
- args: [{ selector: 'frames-overlay', animations: [slideInAnimation], template: "<div class=\"loading\" *ngIf=\"isLoading\">\n <mat-spinner></mat-spinner>\n</div>\n<div class=\"main page\">\n <ng-content select=[mainPage]></ng-content>\n</div>\n<div class=\"next page\" [@routeAnimations]=\"prepareRoute(outlet)\">\n <ng-content select=[nextPage]></ng-content>\n</div>", styles: [":host{--cell: 8px;--cell-SCOPED-IN-line-overlay-96pv: var(--cell);--width: 100%;--width-SCOPED-IN-line-overlay-96pv: var(--width);--height: 100%;--height-SCOPED-IN-line-overlay-96pv: var(--height)}:host{position:relative;display:block;width:var(--width-SCOPED-IN-line-overlay-96pv);height:var(--height-SCOPED-IN-line-overlay-96pv)}:host .loading{position:absolute;z-index:1000;top:0;left:0;display:flex;width:var(--width-SCOPED-IN-line-overlay-96pv);height:var(--height-SCOPED-IN-line-overlay-96pv);justify-content:center;align-items:center;background-color:#0006}:host .main.page{position:absolute;top:0;left:0;z-index:1;width:var(--width-SCOPED-IN-line-overlay-96pv);height:var(--height-SCOPED-IN-line-overlay-96pv);overflow:hidden}:host .main.page *{--cell: var(--cell-SCOPED-IN-line-overlay-96pv);--width: var(--width-SCOPED-IN-line-overlay-96pv);--height: var(--height-SCOPED-IN-line-overlay-96pv)}:host .next.page{position:absolute;top:0;left:0;z-index:2;width:var(--width-SCOPED-IN-line-overlay-96pv);height:auto}:host .next.page *{--cell: var(--cell-SCOPED-IN-line-overlay-96pv);--width: var(--width-SCOPED-IN-line-overlay-96pv);--height: var(--height-SCOPED-IN-line-overlay-96pv)}\n"] }]
71
- }], null, { outlet: [{
72
- type: Input
73
- }], isLoading: [{
56
+ args: [{ selector: 'frames-overlay', animations: [OVERLAY_ANIMATION], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"main\">\n <ng-content select=[main]></ng-content>\n</div>\n<div class=\"next\" [@hasNext]=\"hasNext\">\n <ng-content select=[next]></ng-content>\n</div>", styles: [":host{--cell: 8px;--cell-SCOPED-IN-line-overlay-N8S5: var(--cell);--width: 100%;--width-SCOPED-IN-line-overlay-N8S5: var(--width);--height: 100%;--height-SCOPED-IN-line-overlay-N8S5: var(--height)}:host{position:relative;display:block;width:var(--width-SCOPED-IN-line-overlay-N8S5);height:var(--height-SCOPED-IN-line-overlay-N8S5)}:host .loading{position:absolute;z-index:1000;top:0;left:0;display:flex;width:var(--width-SCOPED-IN-line-overlay-N8S5);height:var(--height-SCOPED-IN-line-overlay-N8S5);justify-content:center;align-items:center;background-color:#0006}:host .main{position:absolute;top:0;left:0;z-index:1;width:var(--width-SCOPED-IN-line-overlay-N8S5);height:var(--height-SCOPED-IN-line-overlay-N8S5);overflow:hidden}:host .main *{--cell: var(--cell-SCOPED-IN-line-overlay-N8S5);--width: var(--width-SCOPED-IN-line-overlay-N8S5);--height: var(--height-SCOPED-IN-line-overlay-N8S5)}:host .next{position:absolute;top:0;left:0;z-index:2;width:var(--width-SCOPED-IN-line-overlay-N8S5);height:auto}:host .next *{--cell: var(--cell-SCOPED-IN-line-overlay-N8S5);--width: var(--width-SCOPED-IN-line-overlay-N8S5);--height: var(--height-SCOPED-IN-line-overlay-N8S5)}\n"] }]
57
+ }], null, { hasNext: [{
74
58
  type: Input
75
59
  }] }); })();
76
60
 
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-frames-overlay.mjs","sources":["../../../../libs/components/src/frames/overlay/overlay.animations.ts","../../../../libs/components/src/frames/overlay/overlay.frame.html","../../../../libs/components/src/frames/overlay/overlay.frame.ts","../../../../libs/components/src/frames/overlay/overlay.module.ts","../../../../libs/components/src/frames/overlay/ng-atomic-components-frames-overlay.ts"],"sourcesContent":["import { trigger, transition, style, query, group, animateChild, animate } from '@angular/animations';\n\nexport const slideInAnimation = trigger('routeAnimations', [\n transition('IndexPage => NextPage', [\n query(':enter', [\n style({\n position: 'absolute',\n top: '0px',\n left: '0px'\n })\n ]),\n query(':enter', [style({ left: '100%' })]),\n query(':enter', [animate('300ms ease-out', style({ left: '0%' }))]),\n query(':enter', animateChild()),\n ]),\n\n transition('NextPage => IndexPage', [\n query(':leave', [\n style({\n position: 'absolute',\n top: '0px',\n left: '0px'\n })\n ]),\n query(':leave', [style({ left: '0%' })]),\n query(':leave', [animate('300ms ease-in', style({ left: '100%' }))]),\n query(':leave', animateChild()),\n ])\n\n]);","<div class=\"loading\" *ngIf=\"isLoading\">\n <mat-spinner></mat-spinner>\n</div>\n<div class=\"main page\">\n <ng-content select=[mainPage]></ng-content>\n</div>\n<div class=\"next page\" [@routeAnimations]=\"prepareRoute(outlet)\">\n <ng-content select=[nextPage]></ng-content>\n</div>","import { Component, Input } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\nimport { slideInAnimation } from './overlay.animations';\n\n@Component({\n selector: 'frames-overlay',\n templateUrl: './overlay.frame.html',\n styleUrls: ['./overlay.frame.scss'],\n animations: [slideInAnimation],\n})\nexport class OverlayFrame {\n \n @Input()\n outlet?: RouterOutlet | null = null;\n\n @Input()\n isLoading: boolean = false;\n\n prepareRoute(outlet: RouterOutlet | null | undefined) {\n return outlet?.activatedRouteData?.['page'];\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { OverlayFrame } from './overlay.frame';\n\n@NgModule({\n declarations: [OverlayFrame],\n imports: [\n CommonModule,\n MatProgressSpinnerModule\n ],\n exports: [\n OverlayFrame\n ]\n})\nexport class OverlayModule { }\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-atomic-components-frames-overlay.mjs","sources":["../../../../libs/components/src/frames/overlay/overlay.animations.ts","../../../../libs/components/src/frames/overlay/overlay.frame.ts","../../../../libs/components/src/frames/overlay/overlay.frame.html","../../../../libs/components/src/frames/overlay/overlay.module.ts","../../../../libs/components/src/frames/overlay/ng-atomic-components-frames-overlay.ts"],"sourcesContent":["import { trigger, transition, style, query, animateChild, animate } from '@angular/animations';\n\nexport const OVERLAY_ANIMATION = trigger('hasNext', [\n transition('false => true', [\n query(':enter', [\n style({\n position: 'absolute',\n top: '0px',\n left: '0px'\n })\n ]),\n query(':enter', [style({ left: '100%' })]),\n query(':enter', [animate('300ms ease-out', style({ left: '0%' }))]),\n query(':enter', animateChild()),\n ]),\n transition('true => false', [\n query(':leave', [\n style({\n position: 'absolute',\n top: '0px',\n left: '0px'\n })\n ]),\n query(':leave', [style({ left: '0%' })]),\n query(':leave', [animate('300ms ease-in', style({ left: '100%' }))]),\n query(':leave', animateChild()),\n ])\n]);\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { OVERLAY_ANIMATION } from './overlay.animations';\n\n@Component({\n selector: 'frames-overlay',\n templateUrl: './overlay.frame.html',\n styleUrls: ['./overlay.frame.scss'],\n animations: [OVERLAY_ANIMATION],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class OverlayFrame {\n @Input()\n hasNext = false;\n}\n","<div class=\"main\">\n <ng-content select=[main]></ng-content>\n</div>\n<div class=\"next\" [@hasNext]=\"hasNext\">\n <ng-content select=[next]></ng-content>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { OverlayFrame } from './overlay.frame';\n\n@NgModule({\n declarations: [OverlayFrame],\n imports: [\n CommonModule,\n MatProgressSpinnerModule\n ],\n exports: [\n OverlayFrame\n ]\n})\nexport class OverlayModule { }\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -17,10 +17,10 @@ ScrollFrame.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ScrollFrame, se
17
17
  i0.ɵɵelementStart(2, "div", 1);
18
18
  i0.ɵɵprojection(3, 1);
19
19
  i0.ɵɵelementEnd();
20
- } }, directives: [i1.IosSafariScrollBuggyfillDirective], styles: ["[_nghost-%COMP%]{--height: 100%;--height-SCOPED-IN-scroll-MRqc: var(--height);--navigator-height: 56px;--navigator-height-SCOPED-IN-scroll-MRqc: var(--navigator-height)}[_nghost-%COMP%]{height:var(--height-SCOPED-IN-scroll-MRqc);overflow:hidden}[_nghost-%COMP%] .navigator-container[_ngcontent-%COMP%]{height:var(--navigator-height-SCOPED-IN-scroll-MRqc);overflow:hidden;touch-action:none}[_nghost-%COMP%] .contents-container[_ngcontent-%COMP%]{height:calc(var(--height-SCOPED-IN-scroll-MRqc) - var(--navigator-height-SCOPED-IN-scroll-MRqc));overflow:scroll;-webkit-overflow-scrolling:touch}"], changeDetection: 0 });
20
+ } }, directives: [i1.IosSafariScrollBuggyfillDirective], styles: ["[_nghost-%COMP%]{--height: 100%;--height-SCOPED-IN-scroll-Etpe: var(--height);--navigator-height: 56px;--navigator-height-SCOPED-IN-scroll-Etpe: var(--navigator-height)}[_nghost-%COMP%]{height:var(--height-SCOPED-IN-scroll-Etpe);overflow:hidden}[_nghost-%COMP%] .navigator-container[_ngcontent-%COMP%]{height:var(--navigator-height-SCOPED-IN-scroll-Etpe);overflow:hidden;touch-action:none}[_nghost-%COMP%] .contents-container[_ngcontent-%COMP%]{height:calc(var(--height-SCOPED-IN-scroll-Etpe) - var(--navigator-height-SCOPED-IN-scroll-Etpe));overflow:scroll;-webkit-overflow-scrolling:touch}"], changeDetection: 0 });
21
21
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ScrollFrame, [{
22
22
  type: Component,
23
- args: [{ selector: 'frames-scroll', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"navigator-container\" iosSafariScrollBuggyfill>\n <ng-content select=[navigator]></ng-content>\n</div>\n<div class=\"contents-container\">\n <ng-content select=[contents]></ng-content>\n</div>", styles: [":host{--height: 100%;--height-SCOPED-IN-scroll-MRqc: var(--height);--navigator-height: 56px;--navigator-height-SCOPED-IN-scroll-MRqc: var(--navigator-height)}:host{height:var(--height-SCOPED-IN-scroll-MRqc);overflow:hidden}:host .navigator-container{height:var(--navigator-height-SCOPED-IN-scroll-MRqc);overflow:hidden;touch-action:none}:host .contents-container{height:calc(var(--height-SCOPED-IN-scroll-MRqc) - var(--navigator-height-SCOPED-IN-scroll-MRqc));overflow:scroll;-webkit-overflow-scrolling:touch}\n"] }]
23
+ args: [{ selector: 'frames-scroll', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"navigator-container\" iosSafariScrollBuggyfill>\n <ng-content select=[navigator]></ng-content>\n</div>\n<div class=\"contents-container\">\n <ng-content select=[contents]></ng-content>\n</div>", styles: [":host{--height: 100%;--height-SCOPED-IN-scroll-Etpe: var(--height);--navigator-height: 56px;--navigator-height-SCOPED-IN-scroll-Etpe: var(--navigator-height)}:host{height:var(--height-SCOPED-IN-scroll-Etpe);overflow:hidden}:host .navigator-container{height:var(--navigator-height-SCOPED-IN-scroll-Etpe);overflow:hidden;touch-action:none}:host .contents-container{height:calc(var(--height-SCOPED-IN-scroll-Etpe) - var(--navigator-height-SCOPED-IN-scroll-Etpe));overflow:scroll;-webkit-overflow-scrolling:touch}\n"] }]
24
24
  }], null, null); })();
25
25
 
26
26
  class ScrollModule {
@@ -33,10 +33,10 @@ SmartMenuFrame.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SmartMenuFra
33
33
  i0.ɵɵelementStart(3, "div", 2, 3);
34
34
  i0.ɵɵprojection(5, 1);
35
35
  i0.ɵɵelementEnd();
36
- } }, styles: ["[_nghost-%COMP%]{--gap: 1px;--gap-SCOPED-IN-smart-menu-6aNB: var(--gap);--background: #ccc;--background-SCOPED-IN-smart-menu-6aNB: var(--background);--contents-background: transparent;--contents-background-SCOPED-IN-smart-menu-6aNB: var(--contents-background)}[_nghost-%COMP%]{position:relative;display:flex;justify-content:flex-start;grid-gap:var(--gap-SCOPED-IN-smart-menu-6aNB);gap:var(--gap-SCOPED-IN-smart-menu-6aNB);width:-moz-fit-content;width:fit-content;height:100%;background:var(--background-SCOPED-IN-smart-menu-6aNB)}[_nghost-%COMP%] .contents[_ngcontent-%COMP%]{display:flex;max-width:-moz-fit-content;max-width:fit-content;height:100%;background:var(--contents-background-SCOPED-IN-smart-menu-6aNB)}[_nghost-%COMP%] .contents.menu[_ngcontent-%COMP%]{overflow:hidden;justify-content:flex-end}[_nghost-%COMP%] .contents.contents[_ngcontent-%COMP%]{overflow:visible;justify-content:flex-start}"], changeDetection: 0 });
36
+ } }, styles: ["[_nghost-%COMP%]{--gap: 1px;--gap-SCOPED-IN-smart-menu-YGda: var(--gap);--background: #ccc;--background-SCOPED-IN-smart-menu-YGda: var(--background);--contents-background: transparent;--contents-background-SCOPED-IN-smart-menu-YGda: var(--contents-background)}[_nghost-%COMP%]{position:relative;display:flex;justify-content:flex-start;grid-gap:var(--gap-SCOPED-IN-smart-menu-YGda);gap:var(--gap-SCOPED-IN-smart-menu-YGda);width:-moz-fit-content;width:fit-content;height:100%;background:var(--background-SCOPED-IN-smart-menu-YGda)}[_nghost-%COMP%] .contents[_ngcontent-%COMP%]{display:flex;max-width:-moz-fit-content;max-width:fit-content;height:100%;background:var(--contents-background-SCOPED-IN-smart-menu-YGda)}[_nghost-%COMP%] .contents.menu[_ngcontent-%COMP%]{overflow:hidden;justify-content:flex-end}[_nghost-%COMP%] .contents.contents[_ngcontent-%COMP%]{overflow:visible;justify-content:flex-start}"], changeDetection: 0 });
37
37
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SmartMenuFrame, [{
38
38
  type: Component,
39
- args: [{ selector: 'frames-smart-menu', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"menu\" #menu>\n <ng-content select=\"[menu]\"></ng-content>\n</div>\n<div class=\"contents\" #contents>\n <ng-content select=\"[contents]\"></ng-content>\n</div>", styles: [":host{--gap: 1px;--gap-SCOPED-IN-smart-menu-6aNB: var(--gap);--background: #ccc;--background-SCOPED-IN-smart-menu-6aNB: var(--background);--contents-background: transparent;--contents-background-SCOPED-IN-smart-menu-6aNB: var(--contents-background)}:host{position:relative;display:flex;justify-content:flex-start;grid-gap:var(--gap-SCOPED-IN-smart-menu-6aNB);gap:var(--gap-SCOPED-IN-smart-menu-6aNB);width:-moz-fit-content;width:fit-content;height:100%;background:var(--background-SCOPED-IN-smart-menu-6aNB)}:host .contents{display:flex;max-width:-moz-fit-content;max-width:fit-content;height:100%;background:var(--contents-background-SCOPED-IN-smart-menu-6aNB)}:host .contents.menu{overflow:hidden;justify-content:flex-end}:host .contents.contents{overflow:visible;justify-content:flex-start}\n"] }]
39
+ args: [{ selector: 'frames-smart-menu', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"menu\" #menu>\n <ng-content select=\"[menu]\"></ng-content>\n</div>\n<div class=\"contents\" #contents>\n <ng-content select=\"[contents]\"></ng-content>\n</div>", styles: [":host{--gap: 1px;--gap-SCOPED-IN-smart-menu-YGda: var(--gap);--background: #ccc;--background-SCOPED-IN-smart-menu-YGda: var(--background);--contents-background: transparent;--contents-background-SCOPED-IN-smart-menu-YGda: var(--contents-background)}:host{position:relative;display:flex;justify-content:flex-start;grid-gap:var(--gap-SCOPED-IN-smart-menu-YGda);gap:var(--gap-SCOPED-IN-smart-menu-YGda);width:-moz-fit-content;width:fit-content;height:100%;background:var(--background-SCOPED-IN-smart-menu-YGda)}:host .contents{display:flex;max-width:-moz-fit-content;max-width:fit-content;height:100%;background:var(--contents-background-SCOPED-IN-smart-menu-YGda)}:host .contents.menu{overflow:hidden;justify-content:flex-end}:host .contents.contents{overflow:visible;justify-content:flex-start}\n"] }]
40
40
  }], null, { isMainHidden: [{
41
41
  type: HostBinding,
42
42
  args: ['attr.is-main-hidden']
@@ -53,10 +53,10 @@ DateInputFieldMolecule.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Date
53
53
  i0.ɵɵproperty("for", _r0);
54
54
  i0.ɵɵadvance(3);
55
55
  i0.ɵɵproperty("ngIf", ctx.hint);
56
- } }, directives: [i1.MatFormField, i1.MatLabel, i2.MatInput, i3.DefaultValueAccessor, i4.MatDatepickerInput, i3.NgControlStatus, i3.FormControlDirective, i4.MatDatepickerToggle, i1.MatSuffix, i4.MatDatepicker, i5.NgIf, i1.MatHint], styles: ["[_nghost-%COMP%]{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-date-input-field-gDRF: var(--horizontal-padding)}[_nghost-%COMP%]{display:block;width:100%}[_nghost-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}"], changeDetection: 0 });
56
+ } }, directives: [i1.MatFormField, i1.MatLabel, i2.MatInput, i3.DefaultValueAccessor, i4.MatDatepickerInput, i3.NgControlStatus, i3.FormControlDirective, i4.MatDatepickerToggle, i1.MatSuffix, i4.MatDatepicker, i5.NgIf, i1.MatHint], styles: ["[_nghost-%COMP%]{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-date-input-field-o03K: var(--horizontal-padding)}[_nghost-%COMP%]{display:block;width:100%}[_nghost-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}"], changeDetection: 0 });
57
57
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DateInputFieldMolecule, [{
58
58
  type: Component,
59
- args: [{ selector: 'molecules-date-input-field', changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'molecule field' }, template: "<mat-form-field appearance=\"outline\">\n <mat-label>{{ label }}</mat-label>\n <input matInput [formControl]=\"control\" [placeholder]=\"placeholder\" [matDatepicker]=\"picker\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n <mat-hint *ngIf=\"hint\">{{ hint }}</mat-hint>\n</mat-form-field>", styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-date-input-field-gDRF: var(--horizontal-padding)}:host{display:block;width:100%}:host mat-form-field{width:100%}\n"] }]
59
+ args: [{ selector: 'molecules-date-input-field', changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'molecule field' }, template: "<mat-form-field appearance=\"outline\">\n <mat-label>{{ label }}</mat-label>\n <input matInput [formControl]=\"control\" [placeholder]=\"placeholder\" [matDatepicker]=\"picker\">\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n <mat-hint *ngIf=\"hint\">{{ hint }}</mat-hint>\n</mat-form-field>", styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-date-input-field-o03K: var(--horizontal-padding)}:host{display:block;width:100%}:host mat-form-field{width:100%}\n"] }]
60
60
  }], null, { _control: [{
61
61
  type: Input,
62
62
  args: ['control']
@@ -0,0 +1,78 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, ViewEncapsulation, ChangeDetectionStrategy, Input, NgModule } from '@angular/core';
3
+ import * as i1 from '@angular/material/list';
4
+ import { MatListModule } from '@angular/material/list';
5
+ import * as i2 from '@ng-atomic/components/atoms/icon';
6
+ import { IconModule } from '@ng-atomic/components/atoms/icon';
7
+ import * as i3 from '@angular/material/core';
8
+ import { CommonModule } from '@angular/common';
9
+
10
+ class NavigationListItemMolecule {
11
+ constructor() {
12
+ this.selected = false;
13
+ }
14
+ }
15
+ NavigationListItemMolecule.ɵfac = function NavigationListItemMolecule_Factory(t) { return new (t || NavigationListItemMolecule)(); };
16
+ NavigationListItemMolecule.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: NavigationListItemMolecule, selectors: [["molecules-navigation-list-item"]], inputs: { item: "item", selected: "selected" }, decls: 4, vars: 5, consts: [[3, "value", "selected"], ["mat-list-icon", "", 3, "name", "color"], ["mat-line", ""]], template: function NavigationListItemMolecule_Template(rf, ctx) { if (rf & 1) {
17
+ i0.ɵɵelementStart(0, "mat-list-option", 0);
18
+ i0.ɵɵelement(1, "atoms-icon", 1);
19
+ i0.ɵɵelementStart(2, "div", 2);
20
+ i0.ɵɵtext(3);
21
+ i0.ɵɵelementEnd()();
22
+ } if (rf & 2) {
23
+ i0.ɵɵproperty("value", ctx.item.id)("selected", ctx.selected);
24
+ i0.ɵɵadvance(1);
25
+ i0.ɵɵproperty("name", ctx.item == null ? null : ctx.item.icon)("color", ctx.item == null ? null : ctx.item.color);
26
+ i0.ɵɵadvance(2);
27
+ i0.ɵɵtextInterpolate(ctx.item.name);
28
+ } }, directives: [i1.MatListOption, i2.IconAtom, i1.MatListIconCssMatStyler, i3.MatLine], styles: [":host{display:block}\n"], encapsulation: 2, changeDetection: 0 });
29
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NavigationListItemMolecule, [{
30
+ type: Component,
31
+ args: [{ selector: 'molecules-navigation-list-item', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-list-option [value]=\"item.id\" [selected]=\"selected\">\n <atoms-icon mat-list-icon [name]=\"item?.icon\" [color]=\"item?.color\"></atoms-icon>\n <div mat-line>{{item.name}}</div>\n</mat-list-option>", styles: [":host{display:block}\n"] }]
32
+ }], null, { item: [{
33
+ type: Input
34
+ }], selected: [{
35
+ type: Input
36
+ }] }); })();
37
+
38
+ class NavigationListItemModule {
39
+ }
40
+ NavigationListItemModule.ɵfac = function NavigationListItemModule_Factory(t) { return new (t || NavigationListItemModule)(); };
41
+ NavigationListItemModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: NavigationListItemModule });
42
+ NavigationListItemModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [[
43
+ CommonModule,
44
+ // Materials
45
+ MatListModule,
46
+ // Atoms
47
+ IconModule,
48
+ ]] });
49
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NavigationListItemModule, [{
50
+ type: NgModule,
51
+ args: [{
52
+ declarations: [
53
+ NavigationListItemMolecule
54
+ ],
55
+ imports: [
56
+ CommonModule,
57
+ // Materials
58
+ MatListModule,
59
+ // Atoms
60
+ IconModule,
61
+ ],
62
+ exports: [
63
+ NavigationListItemMolecule
64
+ ]
65
+ }]
66
+ }], null, null); })();
67
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(NavigationListItemModule, { declarations: [NavigationListItemMolecule], imports: [CommonModule,
68
+ // Materials
69
+ MatListModule,
70
+ // Atoms
71
+ IconModule], exports: [NavigationListItemMolecule] }); })();
72
+
73
+ /**
74
+ * Generated bundle index. Do not edit.
75
+ */
76
+
77
+ export { NavigationListItemModule, NavigationListItemMolecule };
78
+ //# sourceMappingURL=ng-atomic-components-molecules-navigation-list-item.mjs.map