@hyalo/angular 0.1.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/CHANGELOG.md +95 -41
  2. package/README.md +46 -32
  3. package/fesm2022/hyalo-angular-accordion.mjs +6 -6
  4. package/fesm2022/hyalo-angular-accordion.mjs.map +1 -1
  5. package/fesm2022/hyalo-angular-alert.mjs +171 -0
  6. package/fesm2022/hyalo-angular-alert.mjs.map +1 -0
  7. package/fesm2022/hyalo-angular-aspect-ratio.mjs +64 -0
  8. package/fesm2022/hyalo-angular-aspect-ratio.mjs.map +1 -0
  9. package/fesm2022/hyalo-angular-avatar.mjs +169 -0
  10. package/fesm2022/hyalo-angular-avatar.mjs.map +1 -0
  11. package/fesm2022/hyalo-angular-badge.mjs +268 -0
  12. package/fesm2022/hyalo-angular-badge.mjs.map +1 -0
  13. package/fesm2022/hyalo-angular-bento.mjs +132 -0
  14. package/fesm2022/hyalo-angular-bento.mjs.map +1 -0
  15. package/fesm2022/hyalo-angular-blocks.mjs +985 -0
  16. package/fesm2022/hyalo-angular-blocks.mjs.map +1 -0
  17. package/fesm2022/hyalo-angular-border-beam.mjs +73 -0
  18. package/fesm2022/hyalo-angular-border-beam.mjs.map +1 -0
  19. package/fesm2022/hyalo-angular-breadcrumb.mjs +77 -0
  20. package/fesm2022/hyalo-angular-breadcrumb.mjs.map +1 -0
  21. package/fesm2022/hyalo-angular-button-group.mjs +90 -0
  22. package/fesm2022/hyalo-angular-button-group.mjs.map +1 -0
  23. package/fesm2022/hyalo-angular-button.mjs +4 -3
  24. package/fesm2022/hyalo-angular-button.mjs.map +1 -1
  25. package/fesm2022/hyalo-angular-card.mjs +2 -2
  26. package/fesm2022/hyalo-angular-card.mjs.map +1 -1
  27. package/fesm2022/hyalo-angular-carousel.mjs +709 -0
  28. package/fesm2022/hyalo-angular-carousel.mjs.map +1 -0
  29. package/fesm2022/hyalo-angular-chapter-nav.mjs +336 -0
  30. package/fesm2022/hyalo-angular-chapter-nav.mjs.map +1 -0
  31. package/fesm2022/hyalo-angular-chart-engine-DSJop6He.mjs +5 -0
  32. package/fesm2022/hyalo-angular-chart-engine-DSJop6He.mjs.map +1 -0
  33. package/fesm2022/hyalo-angular-chart.mjs +391 -0
  34. package/fesm2022/hyalo-angular-chart.mjs.map +1 -0
  35. package/fesm2022/hyalo-angular-choice.mjs +2 -1
  36. package/fesm2022/hyalo-angular-choice.mjs.map +1 -1
  37. package/fesm2022/hyalo-angular-code-block-highlight-B20d5C76.mjs +40 -0
  38. package/fesm2022/hyalo-angular-code-block-highlight-B20d5C76.mjs.map +1 -0
  39. package/fesm2022/hyalo-angular-code-block.mjs +161 -0
  40. package/fesm2022/hyalo-angular-code-block.mjs.map +1 -0
  41. package/fesm2022/hyalo-angular-command.mjs +193 -0
  42. package/fesm2022/hyalo-angular-command.mjs.map +1 -0
  43. package/fesm2022/hyalo-angular-copy.mjs +138 -0
  44. package/fesm2022/hyalo-angular-copy.mjs.map +1 -0
  45. package/fesm2022/hyalo-angular-core.mjs +424 -0
  46. package/fesm2022/hyalo-angular-core.mjs.map +1 -0
  47. package/fesm2022/hyalo-angular-description-list.mjs +57 -0
  48. package/fesm2022/hyalo-angular-description-list.mjs.map +1 -0
  49. package/fesm2022/hyalo-angular-dialog.mjs +51 -22
  50. package/fesm2022/hyalo-angular-dialog.mjs.map +1 -1
  51. package/fesm2022/hyalo-angular-divider.mjs +66 -0
  52. package/fesm2022/hyalo-angular-divider.mjs.map +1 -0
  53. package/fesm2022/hyalo-angular-empty-state.mjs +123 -0
  54. package/fesm2022/hyalo-angular-empty-state.mjs.map +1 -0
  55. package/fesm2022/hyalo-angular-field.mjs +41 -9
  56. package/fesm2022/hyalo-angular-field.mjs.map +1 -1
  57. package/fesm2022/hyalo-angular-filter.mjs +309 -0
  58. package/fesm2022/hyalo-angular-filter.mjs.map +1 -0
  59. package/fesm2022/hyalo-angular-hotspot.mjs +225 -0
  60. package/fesm2022/hyalo-angular-hotspot.mjs.map +1 -0
  61. package/fesm2022/hyalo-angular-hover-card.mjs +233 -0
  62. package/fesm2022/hyalo-angular-hover-card.mjs.map +1 -0
  63. package/fesm2022/hyalo-angular-icon.mjs +42 -0
  64. package/fesm2022/hyalo-angular-icon.mjs.map +1 -1
  65. package/fesm2022/hyalo-angular-image-compare.mjs +168 -0
  66. package/fesm2022/hyalo-angular-image-compare.mjs.map +1 -0
  67. package/fesm2022/hyalo-angular-interaction.mjs +32 -41
  68. package/fesm2022/hyalo-angular-interaction.mjs.map +1 -1
  69. package/fesm2022/hyalo-angular-kbd.mjs +41 -0
  70. package/fesm2022/hyalo-angular-kbd.mjs.map +1 -0
  71. package/fesm2022/hyalo-angular-lightbox.mjs +228 -0
  72. package/fesm2022/hyalo-angular-lightbox.mjs.map +1 -0
  73. package/fesm2022/hyalo-angular-link.mjs +42 -0
  74. package/fesm2022/hyalo-angular-link.mjs.map +1 -0
  75. package/fesm2022/hyalo-angular-list.mjs +131 -0
  76. package/fesm2022/hyalo-angular-list.mjs.map +1 -0
  77. package/fesm2022/hyalo-angular-marquee.mjs +197 -0
  78. package/fesm2022/hyalo-angular-marquee.mjs.map +1 -0
  79. package/fesm2022/hyalo-angular-menu.mjs +423 -0
  80. package/fesm2022/hyalo-angular-menu.mjs.map +1 -0
  81. package/fesm2022/hyalo-angular-mesh.mjs +126 -0
  82. package/fesm2022/hyalo-angular-mesh.mjs.map +1 -0
  83. package/fesm2022/hyalo-angular-motion.mjs +620 -0
  84. package/fesm2022/hyalo-angular-motion.mjs.map +1 -0
  85. package/fesm2022/hyalo-angular-navbar.mjs +1 -1
  86. package/fesm2022/hyalo-angular-navbar.mjs.map +1 -1
  87. package/fesm2022/hyalo-angular-navigation-menu.mjs +222 -0
  88. package/fesm2022/hyalo-angular-navigation-menu.mjs.map +1 -0
  89. package/fesm2022/hyalo-angular-number-ticker.mjs +174 -0
  90. package/fesm2022/hyalo-angular-number-ticker.mjs.map +1 -0
  91. package/fesm2022/hyalo-angular-overlay.mjs +71 -2
  92. package/fesm2022/hyalo-angular-overlay.mjs.map +1 -1
  93. package/fesm2022/hyalo-angular-pagination.mjs +187 -0
  94. package/fesm2022/hyalo-angular-pagination.mjs.map +1 -0
  95. package/fesm2022/hyalo-angular-popover.mjs +34 -5
  96. package/fesm2022/hyalo-angular-popover.mjs.map +1 -1
  97. package/fesm2022/hyalo-angular-progress.mjs +209 -0
  98. package/fesm2022/hyalo-angular-progress.mjs.map +1 -0
  99. package/fesm2022/hyalo-angular-progressive-blur.mjs +73 -0
  100. package/fesm2022/hyalo-angular-progressive-blur.mjs.map +1 -0
  101. package/fesm2022/hyalo-angular-refraction-renderer-5ZA-kfsA.mjs +186 -0
  102. package/fesm2022/hyalo-angular-refraction-renderer-5ZA-kfsA.mjs.map +1 -0
  103. package/fesm2022/hyalo-angular-refraction.mjs +178 -0
  104. package/fesm2022/hyalo-angular-refraction.mjs.map +1 -0
  105. package/fesm2022/hyalo-angular-scroll-area.mjs +93 -0
  106. package/fesm2022/hyalo-angular-scroll-area.mjs.map +1 -0
  107. package/fesm2022/hyalo-angular-scroll-to-top.mjs +127 -0
  108. package/fesm2022/hyalo-angular-scroll-to-top.mjs.map +1 -0
  109. package/fesm2022/hyalo-angular-segmented.mjs +1 -1
  110. package/fesm2022/hyalo-angular-segmented.mjs.map +1 -1
  111. package/fesm2022/hyalo-angular-select.mjs +112 -15
  112. package/fesm2022/hyalo-angular-select.mjs.map +1 -1
  113. package/fesm2022/hyalo-angular-sidebar.mjs +241 -0
  114. package/fesm2022/hyalo-angular-sidebar.mjs.map +1 -0
  115. package/fesm2022/hyalo-angular-skeleton.mjs +131 -0
  116. package/fesm2022/hyalo-angular-skeleton.mjs.map +1 -0
  117. package/fesm2022/hyalo-angular-sparkline.mjs +110 -0
  118. package/fesm2022/hyalo-angular-sparkline.mjs.map +1 -0
  119. package/fesm2022/hyalo-angular-split-text.mjs +126 -0
  120. package/fesm2022/hyalo-angular-split-text.mjs.map +1 -0
  121. package/fesm2022/hyalo-angular-stat.mjs +193 -0
  122. package/fesm2022/hyalo-angular-stat.mjs.map +1 -0
  123. package/fesm2022/hyalo-angular-stepper.mjs +254 -0
  124. package/fesm2022/hyalo-angular-stepper.mjs.map +1 -0
  125. package/fesm2022/hyalo-angular-table.mjs +335 -0
  126. package/fesm2022/hyalo-angular-table.mjs.map +1 -0
  127. package/fesm2022/hyalo-angular-tabs.mjs +1 -1
  128. package/fesm2022/hyalo-angular-tabs.mjs.map +1 -1
  129. package/fesm2022/hyalo-angular-theme.mjs +1 -1
  130. package/fesm2022/hyalo-angular-theme.mjs.map +1 -1
  131. package/fesm2022/hyalo-angular-timeline.mjs +157 -0
  132. package/fesm2022/hyalo-angular-timeline.mjs.map +1 -0
  133. package/fesm2022/hyalo-angular-toast.mjs +2 -1
  134. package/fesm2022/hyalo-angular-toast.mjs.map +1 -1
  135. package/fesm2022/hyalo-angular.mjs +2 -473
  136. package/package.json +198 -2
  137. package/styles/parts/field.css +44 -36
  138. package/styles/parts/glass.css +2 -0
  139. package/styles/parts/motion.css +19 -0
  140. package/styles/parts/typography.css +17 -0
  141. package/types/hyalo-angular-accordion.d.ts +1 -1
  142. package/types/hyalo-angular-alert.d.ts +47 -0
  143. package/types/hyalo-angular-aspect-ratio.d.ts +13 -0
  144. package/types/hyalo-angular-avatar.d.ts +39 -0
  145. package/types/hyalo-angular-badge.d.ts +82 -0
  146. package/types/hyalo-angular-bento.d.ts +25 -0
  147. package/types/hyalo-angular-blocks.d.ts +272 -0
  148. package/types/hyalo-angular-border-beam.d.ts +15 -0
  149. package/types/hyalo-angular-breadcrumb.d.ts +22 -0
  150. package/types/hyalo-angular-button-group.d.ts +19 -0
  151. package/types/hyalo-angular-button.d.ts +4 -3
  152. package/types/hyalo-angular-card.d.ts +1 -1
  153. package/types/hyalo-angular-carousel.d.ts +147 -0
  154. package/types/hyalo-angular-chapter-nav.d.ts +79 -0
  155. package/types/hyalo-angular-chart.d.ts +90 -0
  156. package/types/hyalo-angular-code-block.d.ts +46 -0
  157. package/types/hyalo-angular-command.d.ts +41 -0
  158. package/types/hyalo-angular-copy.d.ts +39 -0
  159. package/types/hyalo-angular-core.d.ts +210 -0
  160. package/types/hyalo-angular-description-list.d.ts +16 -0
  161. package/types/hyalo-angular-dialog.d.ts +2 -1
  162. package/types/hyalo-angular-divider.d.ts +12 -0
  163. package/types/hyalo-angular-empty-state.d.ts +30 -0
  164. package/types/hyalo-angular-field.d.ts +10 -4
  165. package/types/hyalo-angular-filter.d.ts +122 -0
  166. package/types/hyalo-angular-hotspot.d.ts +70 -0
  167. package/types/hyalo-angular-hover-card.d.ts +47 -0
  168. package/types/hyalo-angular-image-compare.d.ts +55 -0
  169. package/types/hyalo-angular-kbd.d.ts +5 -0
  170. package/types/hyalo-angular-lightbox.d.ts +67 -0
  171. package/types/hyalo-angular-link.d.ts +5 -0
  172. package/types/hyalo-angular-list.d.ts +30 -0
  173. package/types/hyalo-angular-marquee.d.ts +48 -0
  174. package/types/hyalo-angular-menu.d.ts +105 -0
  175. package/types/hyalo-angular-mesh.d.ts +36 -0
  176. package/types/hyalo-angular-motion.d.ts +218 -0
  177. package/types/hyalo-angular-navigation-menu.d.ts +47 -0
  178. package/types/hyalo-angular-number-ticker.d.ts +52 -0
  179. package/types/hyalo-angular-overlay.d.ts +9 -0
  180. package/types/hyalo-angular-pagination.d.ts +59 -0
  181. package/types/hyalo-angular-popover.d.ts +10 -0
  182. package/types/hyalo-angular-progress.d.ts +46 -0
  183. package/types/hyalo-angular-progressive-blur.d.ts +14 -0
  184. package/types/hyalo-angular-refraction.d.ts +46 -0
  185. package/types/hyalo-angular-scroll-area.d.ts +18 -0
  186. package/types/hyalo-angular-scroll-to-top.d.ts +31 -0
  187. package/types/hyalo-angular-segmented.d.ts +1 -1
  188. package/types/hyalo-angular-select.d.ts +49 -3
  189. package/types/hyalo-angular-sidebar.d.ts +57 -0
  190. package/types/hyalo-angular-skeleton.d.ts +34 -0
  191. package/types/hyalo-angular-sparkline.d.ts +19 -0
  192. package/types/hyalo-angular-split-text.d.ts +24 -0
  193. package/types/hyalo-angular-stat.d.ts +56 -0
  194. package/types/hyalo-angular-stepper.d.ts +63 -0
  195. package/types/hyalo-angular-table.d.ts +125 -0
  196. package/types/hyalo-angular-timeline.d.ts +36 -0
  197. package/types/hyalo-angular.d.ts +2 -345
  198. package/fesm2022/hyalo-angular.mjs.map +0 -1
@@ -0,0 +1,131 @@
1
+ import * as i0 from "@angular/core";
2
+ import { ChangeDetectionStrategy, Component, input } from "@angular/core";
3
+ var HyList = class HyList {
4
+ label = input.required(...ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []);
5
+ static ɵfac = i0.ɵɵngDeclareFactory({
6
+ minVersion: "12.0.0",
7
+ version: "22.2.3",
8
+ ngImport: i0,
9
+ type: HyList,
10
+ deps: [],
11
+ target: i0.ɵɵFactoryTarget.Component
12
+ });
13
+ static ɵcmp = i0.ɵɵngDeclareComponent({
14
+ minVersion: "17.1.0",
15
+ version: "22.2.3",
16
+ type: HyList,
17
+ isStandalone: true,
18
+ selector: "hy-list",
19
+ inputs: { label: {
20
+ classPropertyName: "label",
21
+ publicName: "label",
22
+ isSignal: true,
23
+ isRequired: true,
24
+ transformFunction: null
25
+ } },
26
+ ngImport: i0,
27
+ template: "<ul [attr.aria-label]=\"label()\">\r\n <ng-content />\r\n</ul>\r\n",
28
+ styles: [":host{display:block}ul{padding:0;margin:0;list-style:none}\n"],
29
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
30
+ });
31
+ };
32
+ i0.ɵɵngDeclareClassMetadata({
33
+ minVersion: "12.0.0",
34
+ version: "22.2.3",
35
+ ngImport: i0,
36
+ type: HyList,
37
+ decorators: [{
38
+ type: Component,
39
+ args: [{
40
+ selector: "hy-list",
41
+ changeDetection: ChangeDetectionStrategy.OnPush,
42
+ template: "<ul [attr.aria-label]=\"label()\">\r\n <ng-content />\r\n</ul>\r\n",
43
+ styles: [":host{display:block}ul{padding:0;margin:0;list-style:none}\n"]
44
+ }]
45
+ }],
46
+ propDecorators: { label: [{
47
+ type: i0.Input,
48
+ args: [{
49
+ isSignal: true,
50
+ alias: "label",
51
+ required: true
52
+ }]
53
+ }] }
54
+ });
55
+ var HyListItem = class HyListItem {
56
+ heading = input.required(...ngDevMode ? [{ debugName: "heading" }] : /* istanbul ignore next */ []);
57
+ description = input("", ...ngDevMode ? [{ debugName: "description" }] : /* istanbul ignore next */ []);
58
+ static ɵfac = i0.ɵɵngDeclareFactory({
59
+ minVersion: "12.0.0",
60
+ version: "22.2.3",
61
+ ngImport: i0,
62
+ type: HyListItem,
63
+ deps: [],
64
+ target: i0.ɵɵFactoryTarget.Component
65
+ });
66
+ static ɵcmp = i0.ɵɵngDeclareComponent({
67
+ minVersion: "17.0.0",
68
+ version: "22.2.3",
69
+ type: HyListItem,
70
+ isStandalone: true,
71
+ selector: "li[hyListItem]",
72
+ inputs: {
73
+ heading: {
74
+ classPropertyName: "heading",
75
+ publicName: "heading",
76
+ isSignal: true,
77
+ isRequired: true,
78
+ transformFunction: null
79
+ },
80
+ description: {
81
+ classPropertyName: "description",
82
+ publicName: "description",
83
+ isSignal: true,
84
+ isRequired: false,
85
+ transformFunction: null
86
+ }
87
+ },
88
+ ngImport: i0,
89
+ template: "<div class=\"body\"><strong>{{heading()}}</strong>@if(description()){<span>{{description()}}</span>}</div><ng-content />",
90
+ isInline: true,
91
+ styles: [":host{display:flex;align-items:center;gap:1rem;padding:1rem;border-block-end:1px solid var(--hy-line);color:var(--hy-ink);min-inline-size:0}.body{flex:1;min-inline-size:0}strong,span{display:block;overflow-wrap:anywhere}span{color:var(--hy-ink-2);font-size:.875rem;margin-block-start:.25rem}\n"],
92
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
93
+ });
94
+ };
95
+ i0.ɵɵngDeclareClassMetadata({
96
+ minVersion: "12.0.0",
97
+ version: "22.2.3",
98
+ ngImport: i0,
99
+ type: HyListItem,
100
+ decorators: [{
101
+ type: Component,
102
+ args: [{
103
+ selector: "li[hyListItem]",
104
+ changeDetection: ChangeDetectionStrategy.OnPush,
105
+ template: "<div class=\"body\"><strong>{{heading()}}</strong>@if(description()){<span>{{description()}}</span>}</div><ng-content />",
106
+ styles: [":host{display:flex;align-items:center;gap:1rem;padding:1rem;border-block-end:1px solid var(--hy-line);color:var(--hy-ink);min-inline-size:0}.body{flex:1;min-inline-size:0}strong,span{display:block;overflow-wrap:anywhere}span{color:var(--hy-ink-2);font-size:.875rem;margin-block-start:.25rem}\n"]
107
+ }]
108
+ }],
109
+ propDecorators: {
110
+ heading: [{
111
+ type: i0.Input,
112
+ args: [{
113
+ isSignal: true,
114
+ alias: "heading",
115
+ required: true
116
+ }]
117
+ }],
118
+ description: [{
119
+ type: i0.Input,
120
+ args: [{
121
+ isSignal: true,
122
+ alias: "description",
123
+ required: false
124
+ }]
125
+ }]
126
+ }
127
+ });
128
+ const HY_LIST = [HyList, HyListItem];
129
+ export { HY_LIST, HyList, HyListItem };
130
+
131
+ //# sourceMappingURL=hyalo-angular-list.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hyalo-angular-list.mjs","names":[],"sources":["../../../projects/hyalo/list/list.ts","../../../projects/hyalo/list/list.html"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input } from '@angular/core';\r\n@Component({\r\n selector: 'hy-list',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n templateUrl: './list.html',\r\n styleUrl: './list.css',\r\n})\r\nexport class HyList {\r\n readonly label = input.required<string>();\r\n}\r\n@Component({\r\n // Native elements preserve link, list, key, and button semantics.\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'li[hyListItem]',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n template:\r\n '<div class=\"body\"><strong>{{heading()}}</strong>@if(description()){<span>{{description()}}</span>}</div><ng-content />',\r\n styles:\r\n ':host{display:flex;align-items:center;gap:1rem;padding:1rem;border-block-end:1px solid var(--hy-line);color:var(--hy-ink);min-inline-size:0}.body{flex:1;min-inline-size:0}strong,span{display:block;overflow-wrap:anywhere}span{color:var(--hy-ink-2);font-size:.875rem;margin-block-start:.25rem}',\r\n})\r\nexport class HyListItem {\r\n readonly heading = input.required<string>();\r\n readonly description = input('');\r\n}\r\nexport const HY_LIST = [HyList, HyListItem] as const;\r\n","<ul [attr.aria-label]=\"label()\">\r\n <ng-content />\r\n</ul>\r\n"],"mappings":";;AAOA,IAAa,SAAb,MAAa,OAAM;CACR,QAAQ,MAAM,SAAkB,GAAA,YAAA,CAAA,EAAA,WAAA,QAAA,CAAA,+BAAA,CAAA,CAAA;CAD9B,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAM,MAAA,CAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAN,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAM,cAAA;EAAA,UAAA;EAAA,QAAA,EAAA,OAAA;GAAA,mBAAA;GAAA,YAAA;GAAA,UAAA;GAAA,YAAA;GAAA,mBAAA;EAAA,EAAA;EAAA,UAAA;EAAA,UCPnB;EAGA,QAAA,CAAA,8DAAA;EAAA,iBAAA,GAAA,wBAAA;CAAA,CAAA;;ADIa,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAM,YAAA,CAAA;EANlB,MAAA;EACW,MAAA,CAAA;GAAA,UAAA;GAAS,iBACF,wBAAwB;GAAM,UAAA;GAAA,QAAA,CAAA,8DAAA;EAAA,CAAA;;;;;;;;;;;AAiBjD,IAAa,aAAb,MAAa,WAAU;CACZ,UAAU,MAAM,SAAkB,GAAA,YAAA,CAAA,EAAA,WAAA,UAAA,CAAA,+BAAA,CAAA,CAAA;CAClC,cAAc,MAAM,IAAG,GAAA,YAAA,CAAA,EAAA,WAAA,cAAA,CAAA,+BAAA,CAAA,CAAA;CAFrB,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAU,MAAA,CAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAV,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAU,cAAA;EAAA,UAAA;EAAA,QAAA;GAAA,SAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,aAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;EAAA;EAAA,UAAA;EAAA,UAJnB;EAAwH,UAAA;EAAA,QAAA,CAAA,uSAAA;EAAA,iBAAA,GAAA,wBAAA;CAAA,CAAA;;AAI/G,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAU,YAAA,CAAA;EAVtB,MAAA;EAGW,MAAA,CAAA;GAAA,UAAA;GAAgB,iBACT,wBAAwB;GAAM,UAE7C;GAAwH,QAAA,CAAA,uSAAA;EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;AAQ5H,MAAa,UAAU,CAAC,QAAQ,UAAU"}
@@ -0,0 +1,197 @@
1
+ import * as i0 from "@angular/core";
2
+ import { ChangeDetectionStrategy, Component, Directive, TemplateRef, booleanAttribute, computed, contentChildren, inject, input, signal } from "@angular/core";
3
+ import { NgTemplateOutlet } from "@angular/common";
4
+ import { HyMotion } from "@hyalo/angular/motion";
5
+ var HyMarqueeItem = class HyMarqueeItem {
6
+ template = inject(TemplateRef);
7
+ static ɵfac = i0.ɵɵngDeclareFactory({
8
+ minVersion: "12.0.0",
9
+ version: "22.2.3",
10
+ ngImport: i0,
11
+ type: HyMarqueeItem,
12
+ deps: [],
13
+ target: i0.ɵɵFactoryTarget.Directive
14
+ });
15
+ static ɵdir = i0.ɵɵngDeclareDirective({
16
+ minVersion: "14.0.0",
17
+ version: "22.2.3",
18
+ type: HyMarqueeItem,
19
+ isStandalone: true,
20
+ selector: "ng-template[hyMarqueeItem]",
21
+ ngImport: i0
22
+ });
23
+ };
24
+ i0.ɵɵngDeclareClassMetadata({
25
+ minVersion: "12.0.0",
26
+ version: "22.2.3",
27
+ ngImport: i0,
28
+ type: HyMarqueeItem,
29
+ decorators: [{
30
+ type: Directive,
31
+ args: [{ selector: "ng-template[hyMarqueeItem]" }]
32
+ }]
33
+ });
34
+ var HyMarquee = class HyMarquee {
35
+ motion = inject(HyMotion);
36
+ label = input("Partners", ...ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []);
37
+ duration = input("30s", ...ngDevMode ? [{ debugName: "duration" }] : /* istanbul ignore next */ []);
38
+ reverse = input(false, {
39
+ ...ngDevMode ? { debugName: "reverse" } : /* istanbul ignore next */ {},
40
+ transform: booleanAttribute
41
+ });
42
+ pauseLabel = input("Pause animation", ...ngDevMode ? [{ debugName: "pauseLabel" }] : /* istanbul ignore next */ []);
43
+ playLabel = input("Play animation", ...ngDevMode ? [{ debugName: "playLabel" }] : /* istanbul ignore next */ []);
44
+ paused = signal(false, ...ngDevMode ? [{ debugName: "paused" }] : /* istanbul ignore next */ []);
45
+ motionEnabled = computed(() => this.motion.enabled(), ...ngDevMode ? [{ debugName: "motionEnabled" }] : /* istanbul ignore next */ []);
46
+ running = computed(() => this.motion.enabled() && !this.paused(), ...ngDevMode ? [{ debugName: "running" }] : /* istanbul ignore next */ []);
47
+ items = contentChildren(HyMarqueeItem, ...ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []);
48
+ static ɵfac = i0.ɵɵngDeclareFactory({
49
+ minVersion: "12.0.0",
50
+ version: "22.2.3",
51
+ ngImport: i0,
52
+ type: HyMarquee,
53
+ deps: [],
54
+ target: i0.ɵɵFactoryTarget.Component
55
+ });
56
+ static ɵcmp = i0.ɵɵngDeclareComponent({
57
+ minVersion: "17.0.0",
58
+ version: "22.2.3",
59
+ type: HyMarquee,
60
+ isStandalone: true,
61
+ selector: "hy-marquee",
62
+ inputs: {
63
+ label: {
64
+ classPropertyName: "label",
65
+ publicName: "label",
66
+ isSignal: true,
67
+ isRequired: false,
68
+ transformFunction: null
69
+ },
70
+ duration: {
71
+ classPropertyName: "duration",
72
+ publicName: "duration",
73
+ isSignal: true,
74
+ isRequired: false,
75
+ transformFunction: null
76
+ },
77
+ reverse: {
78
+ classPropertyName: "reverse",
79
+ publicName: "reverse",
80
+ isSignal: true,
81
+ isRequired: false,
82
+ transformFunction: null
83
+ },
84
+ pauseLabel: {
85
+ classPropertyName: "pauseLabel",
86
+ publicName: "pauseLabel",
87
+ isSignal: true,
88
+ isRequired: false,
89
+ transformFunction: null
90
+ },
91
+ playLabel: {
92
+ classPropertyName: "playLabel",
93
+ publicName: "playLabel",
94
+ isSignal: true,
95
+ isRequired: false,
96
+ transformFunction: null
97
+ }
98
+ },
99
+ host: { properties: {
100
+ "attr.data-running": "running()",
101
+ "attr.data-motion": "motionEnabled()",
102
+ "style.--hy-marquee-duration": "duration()",
103
+ "attr.data-reverse": "reverse()"
104
+ } },
105
+ queries: [{
106
+ propertyName: "items",
107
+ predicate: HyMarqueeItem,
108
+ isSignal: true
109
+ }],
110
+ ngImport: i0,
111
+ template: "<div class=\"window\" role=\"group\" [attr.aria-label]=\"label()\">\r\n <div class=\"track\">\r\n <div class=\"group\">\r\n @for (item of items(); track item) {\r\n <ng-container [ngTemplateOutlet]=\"item.template\" />\r\n }\r\n </div>\r\n <div class=\"group copy\" aria-hidden=\"true\" inert>\r\n @for (item of items(); track item) {\r\n <ng-container [ngTemplateOutlet]=\"item.template\" />\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n@if (motionEnabled()) {\r\n <button type=\"button\" (click)=\"paused.set(!paused())\" [attr.aria-pressed]=\"paused()\">\r\n {{ paused() ? playLabel() : pauseLabel() }}\r\n </button>\r\n}\r\n<ng-content />\r\n",
112
+ styles: [":host{display:block}.window{overflow:clip}.track{display:flex;inline-size:max-content;animation:hy-marquee var(--hy-marquee-duration, 30s) linear infinite;animation-play-state:paused;direction:ltr}.group{display:flex;align-items:center;gap:var(--hy-space-9);padding-inline-end:var(--hy-space-9)}:host([data-running=\"true\"]) .track{animation-play-state:running}:host([data-reverse=\"true\"]) .track{animation-direction:reverse}:host(:focus-within) .track{animation-play-state:paused}@media(hover:hover){:host(:hover) .track{animation-play-state:paused}}@keyframes hy-marquee{to{transform:translate(-50%)}}button{margin-block-start:var(--hy-space-3);min-block-size:2rem;border:1px solid var(--hy-line);border-radius:var(--hy-radius-s);padding-inline:var(--hy-space-3);background:var(--hy-surface-2);color:var(--hy-ink);font:inherit;cursor:pointer}button:focus-visible{outline:2px solid var(--hy-primary);outline-offset:2px}@media(prefers-reduced-motion:reduce){.track{animation:none;inline-size:auto}.group{flex-wrap:wrap}.copy{display:none}}:host([data-running=\"false\"]) .window{overflow-x:auto}:host([data-motion=\"false\"]) .track{animation:none;inline-size:auto}:host([data-motion=\"false\"]) .group{flex-wrap:wrap}:host([data-motion=\"false\"]) .copy{display:none}\n"],
113
+ dependencies: [{
114
+ kind: "directive",
115
+ type: NgTemplateOutlet,
116
+ selector: "[ngTemplateOutlet]",
117
+ inputs: [
118
+ "ngTemplateOutletContext",
119
+ "ngTemplateOutlet",
120
+ "ngTemplateOutletInjector"
121
+ ]
122
+ }],
123
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
124
+ });
125
+ };
126
+ i0.ɵɵngDeclareClassMetadata({
127
+ minVersion: "12.0.0",
128
+ version: "22.2.3",
129
+ ngImport: i0,
130
+ type: HyMarquee,
131
+ decorators: [{
132
+ type: Component,
133
+ args: [{
134
+ selector: "hy-marquee",
135
+ imports: [NgTemplateOutlet],
136
+ changeDetection: ChangeDetectionStrategy.OnPush,
137
+ host: {
138
+ "[attr.data-running]": "running()",
139
+ "[attr.data-motion]": "motionEnabled()",
140
+ "[style.--hy-marquee-duration]": "duration()",
141
+ "[attr.data-reverse]": "reverse()"
142
+ },
143
+ template: "<div class=\"window\" role=\"group\" [attr.aria-label]=\"label()\">\r\n <div class=\"track\">\r\n <div class=\"group\">\r\n @for (item of items(); track item) {\r\n <ng-container [ngTemplateOutlet]=\"item.template\" />\r\n }\r\n </div>\r\n <div class=\"group copy\" aria-hidden=\"true\" inert>\r\n @for (item of items(); track item) {\r\n <ng-container [ngTemplateOutlet]=\"item.template\" />\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n@if (motionEnabled()) {\r\n <button type=\"button\" (click)=\"paused.set(!paused())\" [attr.aria-pressed]=\"paused()\">\r\n {{ paused() ? playLabel() : pauseLabel() }}\r\n </button>\r\n}\r\n<ng-content />\r\n",
144
+ styles: [":host{display:block}.window{overflow:clip}.track{display:flex;inline-size:max-content;animation:hy-marquee var(--hy-marquee-duration, 30s) linear infinite;animation-play-state:paused;direction:ltr}.group{display:flex;align-items:center;gap:var(--hy-space-9);padding-inline-end:var(--hy-space-9)}:host([data-running=\"true\"]) .track{animation-play-state:running}:host([data-reverse=\"true\"]) .track{animation-direction:reverse}:host(:focus-within) .track{animation-play-state:paused}@media(hover:hover){:host(:hover) .track{animation-play-state:paused}}@keyframes hy-marquee{to{transform:translate(-50%)}}button{margin-block-start:var(--hy-space-3);min-block-size:2rem;border:1px solid var(--hy-line);border-radius:var(--hy-radius-s);padding-inline:var(--hy-space-3);background:var(--hy-surface-2);color:var(--hy-ink);font:inherit;cursor:pointer}button:focus-visible{outline:2px solid var(--hy-primary);outline-offset:2px}@media(prefers-reduced-motion:reduce){.track{animation:none;inline-size:auto}.group{flex-wrap:wrap}.copy{display:none}}:host([data-running=\"false\"]) .window{overflow-x:auto}:host([data-motion=\"false\"]) .track{animation:none;inline-size:auto}:host([data-motion=\"false\"]) .group{flex-wrap:wrap}:host([data-motion=\"false\"]) .copy{display:none}\n"]
145
+ }]
146
+ }],
147
+ propDecorators: {
148
+ label: [{
149
+ type: i0.Input,
150
+ args: [{
151
+ isSignal: true,
152
+ alias: "label",
153
+ required: false
154
+ }]
155
+ }],
156
+ duration: [{
157
+ type: i0.Input,
158
+ args: [{
159
+ isSignal: true,
160
+ alias: "duration",
161
+ required: false
162
+ }]
163
+ }],
164
+ reverse: [{
165
+ type: i0.Input,
166
+ args: [{
167
+ isSignal: true,
168
+ alias: "reverse",
169
+ required: false
170
+ }]
171
+ }],
172
+ pauseLabel: [{
173
+ type: i0.Input,
174
+ args: [{
175
+ isSignal: true,
176
+ alias: "pauseLabel",
177
+ required: false
178
+ }]
179
+ }],
180
+ playLabel: [{
181
+ type: i0.Input,
182
+ args: [{
183
+ isSignal: true,
184
+ alias: "playLabel",
185
+ required: false
186
+ }]
187
+ }],
188
+ items: [{
189
+ type: i0.ContentChildren,
190
+ args: [i0.forwardRef(() => HyMarqueeItem), { isSignal: true }]
191
+ }]
192
+ }
193
+ });
194
+ const HY_MARQUEE = [HyMarquee, HyMarqueeItem];
195
+ export { HY_MARQUEE, HyMarquee, HyMarqueeItem };
196
+
197
+ //# sourceMappingURL=hyalo-angular-marquee.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hyalo-angular-marquee.mjs","names":[],"sources":["../../../projects/hyalo/marquee/marquee.ts","../../../projects/hyalo/marquee/marquee.html"],"sourcesContent":["import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Directive,\r\n TemplateRef,\r\n booleanAttribute,\r\n computed,\r\n contentChildren,\r\n inject,\r\n input,\r\n signal,\r\n} from '@angular/core';\r\nimport { NgTemplateOutlet } from '@angular/common';\r\nimport { HyMotion } from '@hyalo/angular/motion';\r\n@Directive({ selector: 'ng-template[hyMarqueeItem]' })\r\nexport class HyMarqueeItem {\r\n readonly template = inject<TemplateRef<unknown>>(TemplateRef);\r\n}\r\n@Component({\r\n selector: 'hy-marquee',\r\n imports: [NgTemplateOutlet],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n host: {\r\n '[attr.data-running]': 'running()',\r\n '[attr.data-motion]': 'motionEnabled()',\r\n '[style.--hy-marquee-duration]': 'duration()',\r\n '[attr.data-reverse]': 'reverse()',\r\n },\r\n templateUrl: './marquee.html',\r\n styleUrl: './marquee.css',\r\n})\r\nexport class HyMarquee {\r\n private readonly motion = inject(HyMotion);\r\n readonly label = input('Partners');\r\n readonly duration = input('30s');\r\n readonly reverse = input(false, { transform: booleanAttribute });\r\n readonly pauseLabel = input('Pause animation');\r\n readonly playLabel = input('Play animation');\r\n protected readonly paused = signal(false);\r\n protected readonly motionEnabled = computed(() => this.motion.enabled());\r\n protected readonly running = computed(() => this.motion.enabled() && !this.paused());\r\n protected readonly items = contentChildren(HyMarqueeItem);\r\n}\r\nexport const HY_MARQUEE = [HyMarquee, HyMarqueeItem] as const;\r\n","<div class=\"window\" role=\"group\" [attr.aria-label]=\"label()\">\r\n <div class=\"track\">\r\n <div class=\"group\">\r\n @for (item of items(); track item) {\r\n <ng-container [ngTemplateOutlet]=\"item.template\" />\r\n }\r\n </div>\r\n <div class=\"group copy\" aria-hidden=\"true\" inert>\r\n @for (item of items(); track item) {\r\n <ng-container [ngTemplateOutlet]=\"item.template\" />\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n@if (motionEnabled()) {\r\n <button type=\"button\" (click)=\"paused.set(!paused())\" [attr.aria-pressed]=\"paused()\">\r\n {{ paused() ? playLabel() : pauseLabel() }}\r\n </button>\r\n}\r\n<ng-content />\r\n"],"mappings":"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"}