@hyalo/angular 0.0.0-stage → 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 (229) hide show
  1. package/CHANGELOG.md +95 -0
  2. package/LICENSE +21 -0
  3. package/README.md +45 -2
  4. package/fesm2022/hyalo-angular-accordion.mjs +230 -0
  5. package/fesm2022/hyalo-angular-accordion.mjs.map +1 -0
  6. package/fesm2022/hyalo-angular-alert.mjs +171 -0
  7. package/fesm2022/hyalo-angular-alert.mjs.map +1 -0
  8. package/fesm2022/hyalo-angular-aspect-ratio.mjs +64 -0
  9. package/fesm2022/hyalo-angular-aspect-ratio.mjs.map +1 -0
  10. package/fesm2022/hyalo-angular-avatar.mjs +169 -0
  11. package/fesm2022/hyalo-angular-avatar.mjs.map +1 -0
  12. package/fesm2022/hyalo-angular-badge.mjs +268 -0
  13. package/fesm2022/hyalo-angular-badge.mjs.map +1 -0
  14. package/fesm2022/hyalo-angular-bento.mjs +132 -0
  15. package/fesm2022/hyalo-angular-bento.mjs.map +1 -0
  16. package/fesm2022/hyalo-angular-blocks.mjs +985 -0
  17. package/fesm2022/hyalo-angular-blocks.mjs.map +1 -0
  18. package/fesm2022/hyalo-angular-border-beam.mjs +73 -0
  19. package/fesm2022/hyalo-angular-border-beam.mjs.map +1 -0
  20. package/fesm2022/hyalo-angular-breadcrumb.mjs +77 -0
  21. package/fesm2022/hyalo-angular-breadcrumb.mjs.map +1 -0
  22. package/fesm2022/hyalo-angular-button-group.mjs +90 -0
  23. package/fesm2022/hyalo-angular-button-group.mjs.map +1 -0
  24. package/fesm2022/hyalo-angular-button.mjs +204 -0
  25. package/fesm2022/hyalo-angular-button.mjs.map +1 -0
  26. package/fesm2022/hyalo-angular-card.mjs +221 -0
  27. package/fesm2022/hyalo-angular-card.mjs.map +1 -0
  28. package/fesm2022/hyalo-angular-carousel.mjs +709 -0
  29. package/fesm2022/hyalo-angular-carousel.mjs.map +1 -0
  30. package/fesm2022/hyalo-angular-chapter-nav.mjs +336 -0
  31. package/fesm2022/hyalo-angular-chapter-nav.mjs.map +1 -0
  32. package/fesm2022/hyalo-angular-chart-engine-DSJop6He.mjs +5 -0
  33. package/fesm2022/hyalo-angular-chart-engine-DSJop6He.mjs.map +1 -0
  34. package/fesm2022/hyalo-angular-chart.mjs +391 -0
  35. package/fesm2022/hyalo-angular-chart.mjs.map +1 -0
  36. package/fesm2022/hyalo-angular-choice.mjs +789 -0
  37. package/fesm2022/hyalo-angular-choice.mjs.map +1 -0
  38. package/fesm2022/hyalo-angular-code-block-highlight-B20d5C76.mjs +40 -0
  39. package/fesm2022/hyalo-angular-code-block-highlight-B20d5C76.mjs.map +1 -0
  40. package/fesm2022/hyalo-angular-code-block.mjs +161 -0
  41. package/fesm2022/hyalo-angular-code-block.mjs.map +1 -0
  42. package/fesm2022/hyalo-angular-command.mjs +193 -0
  43. package/fesm2022/hyalo-angular-command.mjs.map +1 -0
  44. package/fesm2022/hyalo-angular-copy.mjs +138 -0
  45. package/fesm2022/hyalo-angular-copy.mjs.map +1 -0
  46. package/fesm2022/hyalo-angular-core.mjs +424 -0
  47. package/fesm2022/hyalo-angular-core.mjs.map +1 -0
  48. package/fesm2022/hyalo-angular-description-list.mjs +57 -0
  49. package/fesm2022/hyalo-angular-description-list.mjs.map +1 -0
  50. package/fesm2022/hyalo-angular-dialog.mjs +600 -0
  51. package/fesm2022/hyalo-angular-dialog.mjs.map +1 -0
  52. package/fesm2022/hyalo-angular-divider.mjs +66 -0
  53. package/fesm2022/hyalo-angular-divider.mjs.map +1 -0
  54. package/fesm2022/hyalo-angular-empty-state.mjs +123 -0
  55. package/fesm2022/hyalo-angular-empty-state.mjs.map +1 -0
  56. package/fesm2022/hyalo-angular-field.mjs +344 -0
  57. package/fesm2022/hyalo-angular-field.mjs.map +1 -0
  58. package/fesm2022/hyalo-angular-filter.mjs +309 -0
  59. package/fesm2022/hyalo-angular-filter.mjs.map +1 -0
  60. package/fesm2022/hyalo-angular-hotspot.mjs +225 -0
  61. package/fesm2022/hyalo-angular-hotspot.mjs.map +1 -0
  62. package/fesm2022/hyalo-angular-hover-card.mjs +233 -0
  63. package/fesm2022/hyalo-angular-hover-card.mjs.map +1 -0
  64. package/fesm2022/hyalo-angular-icon.mjs +385 -0
  65. package/fesm2022/hyalo-angular-icon.mjs.map +1 -0
  66. package/fesm2022/hyalo-angular-image-compare.mjs +168 -0
  67. package/fesm2022/hyalo-angular-image-compare.mjs.map +1 -0
  68. package/fesm2022/hyalo-angular-interaction.mjs +446 -0
  69. package/fesm2022/hyalo-angular-interaction.mjs.map +1 -0
  70. package/fesm2022/hyalo-angular-kbd.mjs +41 -0
  71. package/fesm2022/hyalo-angular-kbd.mjs.map +1 -0
  72. package/fesm2022/hyalo-angular-lightbox.mjs +228 -0
  73. package/fesm2022/hyalo-angular-lightbox.mjs.map +1 -0
  74. package/fesm2022/hyalo-angular-link.mjs +42 -0
  75. package/fesm2022/hyalo-angular-link.mjs.map +1 -0
  76. package/fesm2022/hyalo-angular-list.mjs +131 -0
  77. package/fesm2022/hyalo-angular-list.mjs.map +1 -0
  78. package/fesm2022/hyalo-angular-marquee.mjs +197 -0
  79. package/fesm2022/hyalo-angular-marquee.mjs.map +1 -0
  80. package/fesm2022/hyalo-angular-menu.mjs +423 -0
  81. package/fesm2022/hyalo-angular-menu.mjs.map +1 -0
  82. package/fesm2022/hyalo-angular-mesh.mjs +126 -0
  83. package/fesm2022/hyalo-angular-mesh.mjs.map +1 -0
  84. package/fesm2022/hyalo-angular-motion.mjs +620 -0
  85. package/fesm2022/hyalo-angular-motion.mjs.map +1 -0
  86. package/fesm2022/hyalo-angular-navbar.mjs +343 -0
  87. package/fesm2022/hyalo-angular-navbar.mjs.map +1 -0
  88. package/fesm2022/hyalo-angular-navigation-menu.mjs +222 -0
  89. package/fesm2022/hyalo-angular-navigation-menu.mjs.map +1 -0
  90. package/fesm2022/hyalo-angular-number-ticker.mjs +174 -0
  91. package/fesm2022/hyalo-angular-number-ticker.mjs.map +1 -0
  92. package/fesm2022/hyalo-angular-overlay.mjs +163 -0
  93. package/fesm2022/hyalo-angular-overlay.mjs.map +1 -0
  94. package/fesm2022/hyalo-angular-pagination.mjs +187 -0
  95. package/fesm2022/hyalo-angular-pagination.mjs.map +1 -0
  96. package/fesm2022/hyalo-angular-popover-overlay-kit-6wPwnxln.mjs +3 -0
  97. package/fesm2022/hyalo-angular-popover.mjs +516 -0
  98. package/fesm2022/hyalo-angular-popover.mjs.map +1 -0
  99. package/fesm2022/hyalo-angular-progress.mjs +209 -0
  100. package/fesm2022/hyalo-angular-progress.mjs.map +1 -0
  101. package/fesm2022/hyalo-angular-progressive-blur.mjs +73 -0
  102. package/fesm2022/hyalo-angular-progressive-blur.mjs.map +1 -0
  103. package/fesm2022/hyalo-angular-refraction-renderer-5ZA-kfsA.mjs +186 -0
  104. package/fesm2022/hyalo-angular-refraction-renderer-5ZA-kfsA.mjs.map +1 -0
  105. package/fesm2022/hyalo-angular-refraction.mjs +178 -0
  106. package/fesm2022/hyalo-angular-refraction.mjs.map +1 -0
  107. package/fesm2022/hyalo-angular-scroll-area.mjs +93 -0
  108. package/fesm2022/hyalo-angular-scroll-area.mjs.map +1 -0
  109. package/fesm2022/hyalo-angular-scroll-to-top.mjs +127 -0
  110. package/fesm2022/hyalo-angular-scroll-to-top.mjs.map +1 -0
  111. package/fesm2022/hyalo-angular-segmented.mjs +223 -0
  112. package/fesm2022/hyalo-angular-segmented.mjs.map +1 -0
  113. package/fesm2022/hyalo-angular-select.mjs +561 -0
  114. package/fesm2022/hyalo-angular-select.mjs.map +1 -0
  115. package/fesm2022/hyalo-angular-sidebar.mjs +241 -0
  116. package/fesm2022/hyalo-angular-sidebar.mjs.map +1 -0
  117. package/fesm2022/hyalo-angular-skeleton.mjs +131 -0
  118. package/fesm2022/hyalo-angular-skeleton.mjs.map +1 -0
  119. package/fesm2022/hyalo-angular-sparkline.mjs +110 -0
  120. package/fesm2022/hyalo-angular-sparkline.mjs.map +1 -0
  121. package/fesm2022/hyalo-angular-split-text.mjs +126 -0
  122. package/fesm2022/hyalo-angular-split-text.mjs.map +1 -0
  123. package/fesm2022/hyalo-angular-stat.mjs +193 -0
  124. package/fesm2022/hyalo-angular-stat.mjs.map +1 -0
  125. package/fesm2022/hyalo-angular-stepper.mjs +254 -0
  126. package/fesm2022/hyalo-angular-stepper.mjs.map +1 -0
  127. package/fesm2022/hyalo-angular-table.mjs +335 -0
  128. package/fesm2022/hyalo-angular-table.mjs.map +1 -0
  129. package/fesm2022/hyalo-angular-tabs.mjs +324 -0
  130. package/fesm2022/hyalo-angular-tabs.mjs.map +1 -0
  131. package/fesm2022/hyalo-angular-theme.mjs +94 -0
  132. package/fesm2022/hyalo-angular-theme.mjs.map +1 -0
  133. package/fesm2022/hyalo-angular-timeline.mjs +157 -0
  134. package/fesm2022/hyalo-angular-timeline.mjs.map +1 -0
  135. package/fesm2022/hyalo-angular-toast.mjs +323 -0
  136. package/fesm2022/hyalo-angular-toast.mjs.map +1 -0
  137. package/fesm2022/hyalo-angular.mjs +2 -0
  138. package/package.json +329 -3
  139. package/styles/hyalo-core.css +25 -0
  140. package/styles/hyalo.css +17 -0
  141. package/styles/overlays/dialog.css +9 -0
  142. package/styles/overlays/popover.css +9 -0
  143. package/styles/overlays/select.css +9 -0
  144. package/styles/overlays/toast.css +8 -0
  145. package/styles/palettes/aurora.css +47 -0
  146. package/styles/palettes/ember.css +47 -0
  147. package/styles/palettes/graphite.css +47 -0
  148. package/styles/palettes/ocean.css +47 -0
  149. package/styles/palettes/orchid.css +47 -0
  150. package/styles/palettes/rose.css +47 -0
  151. package/styles/parts/card.css +49 -0
  152. package/styles/parts/dialog.css +116 -0
  153. package/styles/parts/drawer.css +124 -0
  154. package/styles/parts/field.css +44 -0
  155. package/styles/parts/glass.css +139 -0
  156. package/styles/parts/motion.css +101 -0
  157. package/styles/parts/navbar.css +55 -0
  158. package/styles/parts/popover.css +27 -0
  159. package/styles/parts/presence.css +55 -0
  160. package/styles/parts/reset.css +42 -0
  161. package/styles/parts/select.css +46 -0
  162. package/styles/parts/themes.css +105 -0
  163. package/styles/parts/toast.css +128 -0
  164. package/styles/parts/tokens.css +151 -0
  165. package/styles/parts/typography.css +81 -0
  166. package/types/hyalo-angular-accordion.d.ts +74 -0
  167. package/types/hyalo-angular-alert.d.ts +47 -0
  168. package/types/hyalo-angular-aspect-ratio.d.ts +13 -0
  169. package/types/hyalo-angular-avatar.d.ts +39 -0
  170. package/types/hyalo-angular-badge.d.ts +82 -0
  171. package/types/hyalo-angular-bento.d.ts +25 -0
  172. package/types/hyalo-angular-blocks.d.ts +272 -0
  173. package/types/hyalo-angular-border-beam.d.ts +15 -0
  174. package/types/hyalo-angular-breadcrumb.d.ts +22 -0
  175. package/types/hyalo-angular-button-group.d.ts +19 -0
  176. package/types/hyalo-angular-button.d.ts +89 -0
  177. package/types/hyalo-angular-card.d.ts +61 -0
  178. package/types/hyalo-angular-carousel.d.ts +147 -0
  179. package/types/hyalo-angular-chapter-nav.d.ts +79 -0
  180. package/types/hyalo-angular-chart.d.ts +90 -0
  181. package/types/hyalo-angular-choice.d.ts +259 -0
  182. package/types/hyalo-angular-code-block.d.ts +46 -0
  183. package/types/hyalo-angular-command.d.ts +41 -0
  184. package/types/hyalo-angular-copy.d.ts +39 -0
  185. package/types/hyalo-angular-core.d.ts +210 -0
  186. package/types/hyalo-angular-description-list.d.ts +16 -0
  187. package/types/hyalo-angular-dialog.d.ts +171 -0
  188. package/types/hyalo-angular-divider.d.ts +12 -0
  189. package/types/hyalo-angular-empty-state.d.ts +30 -0
  190. package/types/hyalo-angular-field.d.ts +141 -0
  191. package/types/hyalo-angular-filter.d.ts +122 -0
  192. package/types/hyalo-angular-hotspot.d.ts +70 -0
  193. package/types/hyalo-angular-hover-card.d.ts +47 -0
  194. package/types/hyalo-angular-icon.d.ts +122 -0
  195. package/types/hyalo-angular-image-compare.d.ts +55 -0
  196. package/types/hyalo-angular-interaction.d.ts +131 -0
  197. package/types/hyalo-angular-kbd.d.ts +5 -0
  198. package/types/hyalo-angular-lightbox.d.ts +67 -0
  199. package/types/hyalo-angular-link.d.ts +5 -0
  200. package/types/hyalo-angular-list.d.ts +30 -0
  201. package/types/hyalo-angular-marquee.d.ts +48 -0
  202. package/types/hyalo-angular-menu.d.ts +105 -0
  203. package/types/hyalo-angular-mesh.d.ts +36 -0
  204. package/types/hyalo-angular-motion.d.ts +218 -0
  205. package/types/hyalo-angular-navbar.d.ts +110 -0
  206. package/types/hyalo-angular-navigation-menu.d.ts +47 -0
  207. package/types/hyalo-angular-number-ticker.d.ts +52 -0
  208. package/types/hyalo-angular-overlay.d.ts +40 -0
  209. package/types/hyalo-angular-pagination.d.ts +59 -0
  210. package/types/hyalo-angular-popover.d.ts +152 -0
  211. package/types/hyalo-angular-progress.d.ts +46 -0
  212. package/types/hyalo-angular-progressive-blur.d.ts +14 -0
  213. package/types/hyalo-angular-refraction.d.ts +46 -0
  214. package/types/hyalo-angular-scroll-area.d.ts +18 -0
  215. package/types/hyalo-angular-scroll-to-top.d.ts +31 -0
  216. package/types/hyalo-angular-segmented.d.ts +79 -0
  217. package/types/hyalo-angular-select.d.ts +176 -0
  218. package/types/hyalo-angular-sidebar.d.ts +57 -0
  219. package/types/hyalo-angular-skeleton.d.ts +34 -0
  220. package/types/hyalo-angular-sparkline.d.ts +19 -0
  221. package/types/hyalo-angular-split-text.d.ts +24 -0
  222. package/types/hyalo-angular-stat.d.ts +56 -0
  223. package/types/hyalo-angular-stepper.d.ts +63 -0
  224. package/types/hyalo-angular-table.d.ts +125 -0
  225. package/types/hyalo-angular-tabs.d.ts +102 -0
  226. package/types/hyalo-angular-theme.d.ts +46 -0
  227. package/types/hyalo-angular-timeline.d.ts +36 -0
  228. package/types/hyalo-angular-toast.d.ts +79 -0
  229. package/types/hyalo-angular.d.ts +2 -0
@@ -0,0 +1,193 @@
1
+ import { HyNumberTicker } from "@hyalo/angular/number-ticker";
2
+ import * as i0 from "@angular/core";
3
+ import { ChangeDetectionStrategy, Component, booleanAttribute, computed, input } from "@angular/core";
4
+ var HyStat = class HyStat {
5
+ value = input.required(...ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []);
6
+ label = input.required(...ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []);
7
+ trend = input("", ...ngDevMode ? [{ debugName: "trend" }] : /* istanbul ignore next */ []);
8
+ locale = input(...ngDevMode ? [void 0, { debugName: "locale" }] : /* istanbul ignore next */ []);
9
+ format = input({ maximumFractionDigits: 0 }, ...ngDevMode ? [{ debugName: "format" }] : /* istanbul ignore next */ []);
10
+ animate = input(false, {
11
+ ...ngDevMode ? { debugName: "animate" } : /* istanbul ignore next */ {},
12
+ transform: booleanAttribute
13
+ });
14
+ prefix = input("", ...ngDevMode ? [{ debugName: "prefix" }] : /* istanbul ignore next */ []);
15
+ suffix = input("", ...ngDevMode ? [{ debugName: "suffix" }] : /* istanbul ignore next */ []);
16
+ formatted = computed(() => this.prefix() + new Intl.NumberFormat(this.locale(), this.format()).format(Number.isFinite(this.value()) ? this.value() : 0) + this.suffix(), ...ngDevMode ? [{ debugName: "formatted" }] : /* istanbul ignore next */ []);
17
+ accessible = this.formatted;
18
+ static ɵfac = i0.ɵɵngDeclareFactory({
19
+ minVersion: "12.0.0",
20
+ version: "22.2.3",
21
+ ngImport: i0,
22
+ type: HyStat,
23
+ deps: [],
24
+ target: i0.ɵɵFactoryTarget.Component
25
+ });
26
+ static ɵcmp = i0.ɵɵngDeclareComponent({
27
+ minVersion: "17.0.0",
28
+ version: "22.2.3",
29
+ type: HyStat,
30
+ isStandalone: true,
31
+ selector: "hy-stat",
32
+ inputs: {
33
+ value: {
34
+ classPropertyName: "value",
35
+ publicName: "value",
36
+ isSignal: true,
37
+ isRequired: true,
38
+ transformFunction: null
39
+ },
40
+ label: {
41
+ classPropertyName: "label",
42
+ publicName: "label",
43
+ isSignal: true,
44
+ isRequired: true,
45
+ transformFunction: null
46
+ },
47
+ trend: {
48
+ classPropertyName: "trend",
49
+ publicName: "trend",
50
+ isSignal: true,
51
+ isRequired: false,
52
+ transformFunction: null
53
+ },
54
+ locale: {
55
+ classPropertyName: "locale",
56
+ publicName: "locale",
57
+ isSignal: true,
58
+ isRequired: false,
59
+ transformFunction: null
60
+ },
61
+ format: {
62
+ classPropertyName: "format",
63
+ publicName: "format",
64
+ isSignal: true,
65
+ isRequired: false,
66
+ transformFunction: null
67
+ },
68
+ animate: {
69
+ classPropertyName: "animate",
70
+ publicName: "animate",
71
+ isSignal: true,
72
+ isRequired: false,
73
+ transformFunction: null
74
+ },
75
+ prefix: {
76
+ classPropertyName: "prefix",
77
+ publicName: "prefix",
78
+ isSignal: true,
79
+ isRequired: false,
80
+ transformFunction: null
81
+ },
82
+ suffix: {
83
+ classPropertyName: "suffix",
84
+ publicName: "suffix",
85
+ isSignal: true,
86
+ isRequired: false,
87
+ transformFunction: null
88
+ }
89
+ },
90
+ ngImport: i0,
91
+ template: "<dl>\r\n <dt>{{ label() }}</dt>\r\n <dd>\r\n <hy-number-ticker\r\n [value]=\"value()\"\r\n [locale]=\"locale()\"\r\n [format]=\"format()\"\r\n [animate]=\"animate()\"\r\n [prefix]=\"prefix()\"\r\n [suffix]=\"suffix()\"\r\n />\r\n </dd>\r\n</dl>\r\n@if (trend()) {\r\n <p>{{ trend() }}</p>\r\n}\r\n<ng-content />\r\n",
92
+ styles: [":host{display:block;min-inline-size:0;padding:1.5rem;background:var(--hy-surface-1);border:1px solid var(--hy-line);border-radius:var(--hy-radius-l);color:var(--hy-ink)}dl,p{margin:0}dt{color:var(--hy-ink-2);font-size:.875rem}dd{margin:.5rem 0 0;font-weight:600;font-size:clamp(1.75rem,3vw,2.5rem);letter-spacing:-.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}p{color:var(--hy-ink-2);font-size:.8125rem;margin-block-start:.5rem}.sr{position:absolute;inline-size:1px;block-size:1px;clip-path:inset(50%);overflow:hidden}\n"],
93
+ dependencies: [{
94
+ kind: "component",
95
+ type: HyNumberTicker,
96
+ selector: "hy-number-ticker",
97
+ inputs: [
98
+ "value",
99
+ "locale",
100
+ "format",
101
+ "animate",
102
+ "prefix",
103
+ "suffix"
104
+ ]
105
+ }],
106
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
107
+ });
108
+ };
109
+ i0.ɵɵngDeclareClassMetadata({
110
+ minVersion: "12.0.0",
111
+ version: "22.2.3",
112
+ ngImport: i0,
113
+ type: HyStat,
114
+ decorators: [{
115
+ type: Component,
116
+ args: [{
117
+ selector: "hy-stat",
118
+ imports: [HyNumberTicker],
119
+ changeDetection: ChangeDetectionStrategy.OnPush,
120
+ template: "<dl>\r\n <dt>{{ label() }}</dt>\r\n <dd>\r\n <hy-number-ticker\r\n [value]=\"value()\"\r\n [locale]=\"locale()\"\r\n [format]=\"format()\"\r\n [animate]=\"animate()\"\r\n [prefix]=\"prefix()\"\r\n [suffix]=\"suffix()\"\r\n />\r\n </dd>\r\n</dl>\r\n@if (trend()) {\r\n <p>{{ trend() }}</p>\r\n}\r\n<ng-content />\r\n",
121
+ styles: [":host{display:block;min-inline-size:0;padding:1.5rem;background:var(--hy-surface-1);border:1px solid var(--hy-line);border-radius:var(--hy-radius-l);color:var(--hy-ink)}dl,p{margin:0}dt{color:var(--hy-ink-2);font-size:.875rem}dd{margin:.5rem 0 0;font-weight:600;font-size:clamp(1.75rem,3vw,2.5rem);letter-spacing:-.04em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}p{color:var(--hy-ink-2);font-size:.8125rem;margin-block-start:.5rem}.sr{position:absolute;inline-size:1px;block-size:1px;clip-path:inset(50%);overflow:hidden}\n"]
122
+ }]
123
+ }],
124
+ propDecorators: {
125
+ value: [{
126
+ type: i0.Input,
127
+ args: [{
128
+ isSignal: true,
129
+ alias: "value",
130
+ required: true
131
+ }]
132
+ }],
133
+ label: [{
134
+ type: i0.Input,
135
+ args: [{
136
+ isSignal: true,
137
+ alias: "label",
138
+ required: true
139
+ }]
140
+ }],
141
+ trend: [{
142
+ type: i0.Input,
143
+ args: [{
144
+ isSignal: true,
145
+ alias: "trend",
146
+ required: false
147
+ }]
148
+ }],
149
+ locale: [{
150
+ type: i0.Input,
151
+ args: [{
152
+ isSignal: true,
153
+ alias: "locale",
154
+ required: false
155
+ }]
156
+ }],
157
+ format: [{
158
+ type: i0.Input,
159
+ args: [{
160
+ isSignal: true,
161
+ alias: "format",
162
+ required: false
163
+ }]
164
+ }],
165
+ animate: [{
166
+ type: i0.Input,
167
+ args: [{
168
+ isSignal: true,
169
+ alias: "animate",
170
+ required: false
171
+ }]
172
+ }],
173
+ prefix: [{
174
+ type: i0.Input,
175
+ args: [{
176
+ isSignal: true,
177
+ alias: "prefix",
178
+ required: false
179
+ }]
180
+ }],
181
+ suffix: [{
182
+ type: i0.Input,
183
+ args: [{
184
+ isSignal: true,
185
+ alias: "suffix",
186
+ required: false
187
+ }]
188
+ }]
189
+ }
190
+ });
191
+ export { HyStat };
192
+
193
+ //# sourceMappingURL=hyalo-angular-stat.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hyalo-angular-stat.mjs","names":[],"sources":["../../../projects/hyalo/stat/stat.ts","../../../projects/hyalo/stat/stat.html"],"sourcesContent":["import { HyNumberTicker } from '@hyalo/angular/number-ticker';\nimport {\n ChangeDetectionStrategy,\n Component,\n booleanAttribute,\n computed,\n input,\n} from '@angular/core';\n@Component({\n selector: 'hy-stat',\n imports: [HyNumberTicker],\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './stat.html',\n styleUrl: './stat.css',\n})\nexport class HyStat {\n readonly value = input.required<number>();\n readonly label = input.required<string>();\n readonly trend = input('');\n readonly locale = input<string>();\n readonly format = input<Intl.NumberFormatOptions>({ maximumFractionDigits: 0 });\n readonly animate = input(false, { transform: booleanAttribute });\n readonly prefix = input('');\n readonly suffix = input('');\n readonly formatted = computed(\n () =>\n this.prefix() +\n new Intl.NumberFormat(this.locale(), this.format()).format(\n Number.isFinite(this.value()) ? this.value() : 0,\n ) +\n this.suffix(),\n );\n readonly accessible = this.formatted;\n}\n","<dl>\r\n <dt>{{ label() }}</dt>\r\n <dd>\r\n <hy-number-ticker\r\n [value]=\"value()\"\r\n [locale]=\"locale()\"\r\n [format]=\"format()\"\r\n [animate]=\"animate()\"\r\n [prefix]=\"prefix()\"\r\n [suffix]=\"suffix()\"\r\n />\r\n </dd>\r\n</dl>\r\n@if (trend()) {\r\n <p>{{ trend() }}</p>\r\n}\r\n<ng-content />\r\n"],"mappings":";;;AAeA,IAAa,SAAb,MAAa,OAAM;CACR,QAAQ,MAAM,SAAkB,GAAA,YAAA,CAAA,EAAA,WAAA,QAAA,CAAA,+BAAA,CAAA,CAAA;CAChC,QAAQ,MAAM,SAAkB,GAAA,YAAA,CAAA,EAAA,WAAA,QAAA,CAAA,+BAAA,CAAA,CAAA;CAChC,QAAQ,MAAM,IAAG,GAAA,YAAA,CAAA,EAAA,WAAA,QAAA,CAAA,+BAAA,CAAA,CAAA;CACjB,SAAS,MAAe,GAAA,YAAA,CAAA,QAAA,EAAA,WAAA,SAAA,CAAA,+BAAA,CAAA,CAAA;CACxB,SAAS,MAAgC,EAAE,uBAAuB,EAAC,GAAG,GAAA,YAAA,CAAA,EAAA,WAAA,SAAA,CAAA,+BAAA,CAAA,CAAA;CACtE,UAAU,MAAM,OAAK;EAAA,GAAA,YAAA,EAAA,WAAA,UAAA,+BAAA,CAAA;EAAI,WAAW;CAAgB,CAAA;CACpD,SAAS,MAAM,IAAG,GAAA,YAAA,CAAA,EAAA,WAAA,SAAA,CAAA,+BAAA,CAAA,CAAA;CAClB,SAAS,MAAM,IAAG,GAAA,YAAA,CAAA,EAAA,WAAA,SAAA,CAAA,+BAAA,CAAA,CAAA;CAClB,YAAY,eAEjB,KAAK,OAAM,IACX,IAAI,KAAK,aAAa,KAAK,OAAM,GAAI,KAAK,OAAM,CAAE,CAAC,CAAC,OAClD,OAAO,SAAS,KAAK,MAAK,CAAE,IAAI,KAAK,MAAK,IAAK,CAAC,IAElD,KAAK,OAAM,GACd,GAAA,YAAA,CAAA,EAAA,WAAA,YAAA,CAAA,+BAAA,CAAA,CAAA;CACQ,aAAa,KAAK;CAjBhB,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;GAAA,OAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,OAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,OAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,QAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,QAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,SAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,QAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,QAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;EAAA;EAAA,UAAA;EAAA,UCfnB;EAiBA,QAAA,CAAA,2hBAAA;EAAA,cAAA,CAAA;GAAA,MAAA;GAAA,MDPY;GAAc,UAAA;GAAA,QAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;GAAA;EAAA,CAAA;EAAA,iBAAA,GAAA,wBAAA;CAAA,CAAA;;AAKb,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAM,YAAA,CAAA;EAPlB,MAAA;EACW,MAAA,CAAA;GAAA,UAAA;GAAS,SACV,CAAC,cAAc;GAAC,iBACR,wBAAwB;GAAM,UAAA;GAAA,QAAA,CAAA,2hBAAA;EAAA,CAAA"}
@@ -0,0 +1,254 @@
1
+ import * as i0 from "@angular/core";
2
+ import { ChangeDetectionStrategy, Component, ElementRef, Injector, afterNextRender, booleanAttribute, computed, contentChildren, inject, input, model } from "@angular/core";
3
+ import { injectId } from "@hyalo/angular/core";
4
+ var HyStep = class HyStep {
5
+ stepper = inject(HyStepper);
6
+ label = input.required(...ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []);
7
+ completed = input(false, {
8
+ ...ngDevMode ? { debugName: "completed" } : /* istanbul ignore next */ {},
9
+ transform: booleanAttribute
10
+ });
11
+ disabled = input(false, {
12
+ ...ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {},
13
+ transform: booleanAttribute
14
+ });
15
+ id = injectId("step");
16
+ active = computed(() => this.stepper.steps()[this.stepper.activeIndex()] === this, ...ngDevMode ? [{ debugName: "active" }] : /* istanbul ignore next */ []);
17
+ static ɵfac = i0.ɵɵngDeclareFactory({
18
+ minVersion: "12.0.0",
19
+ version: "22.2.3",
20
+ ngImport: i0,
21
+ type: HyStep,
22
+ deps: [],
23
+ target: i0.ɵɵFactoryTarget.Component
24
+ });
25
+ static ɵcmp = i0.ɵɵngDeclareComponent({
26
+ minVersion: "17.1.0",
27
+ version: "22.2.3",
28
+ type: HyStep,
29
+ isStandalone: true,
30
+ selector: "hy-step",
31
+ inputs: {
32
+ label: {
33
+ classPropertyName: "label",
34
+ publicName: "label",
35
+ isSignal: true,
36
+ isRequired: true,
37
+ transformFunction: null
38
+ },
39
+ completed: {
40
+ classPropertyName: "completed",
41
+ publicName: "completed",
42
+ isSignal: true,
43
+ isRequired: false,
44
+ transformFunction: null
45
+ },
46
+ disabled: {
47
+ classPropertyName: "disabled",
48
+ publicName: "disabled",
49
+ isSignal: true,
50
+ isRequired: false,
51
+ transformFunction: null
52
+ }
53
+ },
54
+ host: {
55
+ attributes: { "role": "group" },
56
+ properties: {
57
+ "id": "id + \"-panel\"",
58
+ "attr.aria-labelledby": "id",
59
+ "hidden": "!active()",
60
+ "attr.inert": "active() ? null : \"\""
61
+ }
62
+ },
63
+ ngImport: i0,
64
+ template: "<ng-content />",
65
+ isInline: true,
66
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
67
+ });
68
+ };
69
+ i0.ɵɵngDeclareClassMetadata({
70
+ minVersion: "12.0.0",
71
+ version: "22.2.3",
72
+ ngImport: i0,
73
+ type: HyStep,
74
+ decorators: [{
75
+ type: Component,
76
+ args: [{
77
+ selector: "hy-step",
78
+ changeDetection: ChangeDetectionStrategy.OnPush,
79
+ template: "<ng-content />",
80
+ host: {
81
+ role: "group",
82
+ "[id]": "id + \"-panel\"",
83
+ "[attr.aria-labelledby]": "id",
84
+ "[hidden]": "!active()",
85
+ "[attr.inert]": "active() ? null : \"\""
86
+ }
87
+ }]
88
+ }],
89
+ propDecorators: {
90
+ label: [{
91
+ type: i0.Input,
92
+ args: [{
93
+ isSignal: true,
94
+ alias: "label",
95
+ required: true
96
+ }]
97
+ }],
98
+ completed: [{
99
+ type: i0.Input,
100
+ args: [{
101
+ isSignal: true,
102
+ alias: "completed",
103
+ required: false
104
+ }]
105
+ }],
106
+ disabled: [{
107
+ type: i0.Input,
108
+ args: [{
109
+ isSignal: true,
110
+ alias: "disabled",
111
+ required: false
112
+ }]
113
+ }]
114
+ }
115
+ });
116
+ var HyStepper = class HyStepper {
117
+ el = inject(ElementRef).nativeElement;
118
+ injector = inject(Injector);
119
+ label = input("Steps", ...ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []);
120
+ linear = input(true, {
121
+ ...ngDevMode ? { debugName: "linear" } : /* istanbul ignore next */ {},
122
+ transform: booleanAttribute
123
+ });
124
+ selected = model(0, ...ngDevMode ? [{ debugName: "selected" }] : /* istanbul ignore next */ []);
125
+ steps = contentChildren(HyStep, ...ngDevMode ? [{ debugName: "steps" }] : /* istanbul ignore next */ []);
126
+ available = computed(() => this.steps().map((step, i, steps) => !step.disabled() && (!this.linear() || steps.slice(0, i).every((previous) => previous.completed()))), ...ngDevMode ? [{ debugName: "available" }] : /* istanbul ignore next */ []);
127
+ activeIndex = computed(() => {
128
+ const requested = Math.trunc(this.selected());
129
+ if (this.available()[requested]) return requested;
130
+ return this.available().findIndex(Boolean);
131
+ }, ...ngDevMode ? [{ debugName: "activeIndex" }] : /* istanbul ignore next */ []);
132
+ select(index) {
133
+ if (!this.available()[index]) return;
134
+ this.selected.set(index);
135
+ afterNextRender(() => this.el.querySelectorAll("nav button")[this.activeIndex()]?.focus(), { injector: this.injector });
136
+ }
137
+ next() {
138
+ this.select(this.activeIndex() + 1);
139
+ }
140
+ previous() {
141
+ this.select(this.activeIndex() - 1);
142
+ }
143
+ onKey(event, index) {
144
+ const rtl = this.el.ownerDocument.defaultView?.getComputedStyle(this.el).direction === "rtl";
145
+ let delta = 0;
146
+ if (event.key === "ArrowRight") delta = rtl ? -1 : 1;
147
+ else if (event.key === "ArrowLeft") delta = rtl ? 1 : -1;
148
+ else if (event.key !== "Home" && event.key !== "End") return;
149
+ event.preventDefault();
150
+ const indices = this.available().flatMap((enabled, i) => enabled ? [i] : []);
151
+ const target = event.key === "Home" ? indices[0] : event.key === "End" ? indices.at(-1) : indices[indices.indexOf(index) + delta];
152
+ if (target !== void 0) this.el.querySelectorAll("nav button")[target]?.focus();
153
+ }
154
+ static ɵfac = i0.ɵɵngDeclareFactory({
155
+ minVersion: "12.0.0",
156
+ version: "22.2.3",
157
+ ngImport: i0,
158
+ type: HyStepper,
159
+ deps: [],
160
+ target: i0.ɵɵFactoryTarget.Component
161
+ });
162
+ static ɵcmp = i0.ɵɵngDeclareComponent({
163
+ minVersion: "17.0.0",
164
+ version: "22.2.3",
165
+ type: HyStepper,
166
+ isStandalone: true,
167
+ selector: "hy-stepper",
168
+ inputs: {
169
+ label: {
170
+ classPropertyName: "label",
171
+ publicName: "label",
172
+ isSignal: true,
173
+ isRequired: false,
174
+ transformFunction: null
175
+ },
176
+ linear: {
177
+ classPropertyName: "linear",
178
+ publicName: "linear",
179
+ isSignal: true,
180
+ isRequired: false,
181
+ transformFunction: null
182
+ },
183
+ selected: {
184
+ classPropertyName: "selected",
185
+ publicName: "selected",
186
+ isSignal: true,
187
+ isRequired: false,
188
+ transformFunction: null
189
+ }
190
+ },
191
+ outputs: { selected: "selectedChange" },
192
+ queries: [{
193
+ propertyName: "steps",
194
+ predicate: HyStep,
195
+ isSignal: true
196
+ }],
197
+ ngImport: i0,
198
+ template: "<nav [attr.aria-label]=\"label()\">\r\n <ol>\r\n @for (step of steps(); track step; let i = $index) {\r\n <li>\r\n <button\r\n type=\"button\"\r\n [id]=\"step.id\"\r\n [disabled]=\"!available()[i]\"\r\n [attr.aria-current]=\"activeIndex() === i ? 'step' : null\"\r\n [attr.aria-controls]=\"step.id + '-panel'\"\r\n (click)=\"select(i)\"\r\n (keydown)=\"onKey($event, i)\"\r\n >\r\n <span aria-hidden=\"true\">{{ step.completed() ? '✓' : i + 1 }}</span\r\n >{{ step.label() }}\r\n </button>\r\n </li>\r\n }\r\n </ol>\r\n</nav>\r\n<ng-content />\r\n",
199
+ styles: [":host{display:block;color:var(--hy-ink)}ol{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin-block:0 var(--hy-space-6);gap:var(--hy-space-2)}li{flex:1}button{display:flex;align-items:center;gap:var(--hy-space-2);inline-size:100%;padding:var(--hy-space-3);background:var(--hy-surface-2);color:var(--hy-ink-2);border:1px solid var(--hy-line);border-radius:var(--hy-radius-m);font:inherit;cursor:pointer;text-align:start}button[aria-current]{color:var(--hy-primary);border-color:currentColor;background:var(--hy-primary-wash)}button:disabled{opacity:.6;cursor:default}button:focus-visible{outline:2px solid var(--hy-primary);outline-offset:2px}button span{display:grid;place-items:center;inline-size:2rem;block-size:2rem;flex-shrink:0;border:1px solid currentColor;border-radius:50%}\n"],
200
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
201
+ });
202
+ };
203
+ i0.ɵɵngDeclareClassMetadata({
204
+ minVersion: "12.0.0",
205
+ version: "22.2.3",
206
+ ngImport: i0,
207
+ type: HyStepper,
208
+ decorators: [{
209
+ type: Component,
210
+ args: [{
211
+ selector: "hy-stepper",
212
+ changeDetection: ChangeDetectionStrategy.OnPush,
213
+ template: "<nav [attr.aria-label]=\"label()\">\r\n <ol>\r\n @for (step of steps(); track step; let i = $index) {\r\n <li>\r\n <button\r\n type=\"button\"\r\n [id]=\"step.id\"\r\n [disabled]=\"!available()[i]\"\r\n [attr.aria-current]=\"activeIndex() === i ? 'step' : null\"\r\n [attr.aria-controls]=\"step.id + '-panel'\"\r\n (click)=\"select(i)\"\r\n (keydown)=\"onKey($event, i)\"\r\n >\r\n <span aria-hidden=\"true\">{{ step.completed() ? '✓' : i + 1 }}</span\r\n >{{ step.label() }}\r\n </button>\r\n </li>\r\n }\r\n </ol>\r\n</nav>\r\n<ng-content />\r\n",
214
+ styles: [":host{display:block;color:var(--hy-ink)}ol{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin-block:0 var(--hy-space-6);gap:var(--hy-space-2)}li{flex:1}button{display:flex;align-items:center;gap:var(--hy-space-2);inline-size:100%;padding:var(--hy-space-3);background:var(--hy-surface-2);color:var(--hy-ink-2);border:1px solid var(--hy-line);border-radius:var(--hy-radius-m);font:inherit;cursor:pointer;text-align:start}button[aria-current]{color:var(--hy-primary);border-color:currentColor;background:var(--hy-primary-wash)}button:disabled{opacity:.6;cursor:default}button:focus-visible{outline:2px solid var(--hy-primary);outline-offset:2px}button span{display:grid;place-items:center;inline-size:2rem;block-size:2rem;flex-shrink:0;border:1px solid currentColor;border-radius:50%}\n"]
215
+ }]
216
+ }],
217
+ propDecorators: {
218
+ label: [{
219
+ type: i0.Input,
220
+ args: [{
221
+ isSignal: true,
222
+ alias: "label",
223
+ required: false
224
+ }]
225
+ }],
226
+ linear: [{
227
+ type: i0.Input,
228
+ args: [{
229
+ isSignal: true,
230
+ alias: "linear",
231
+ required: false
232
+ }]
233
+ }],
234
+ selected: [{
235
+ type: i0.Input,
236
+ args: [{
237
+ isSignal: true,
238
+ alias: "selected",
239
+ required: false
240
+ }]
241
+ }, {
242
+ type: i0.Output,
243
+ args: ["selectedChange"]
244
+ }],
245
+ steps: [{
246
+ type: i0.ContentChildren,
247
+ args: [i0.forwardRef(() => HyStep), { isSignal: true }]
248
+ }]
249
+ }
250
+ });
251
+ const HY_STEPPER = [HyStepper, HyStep];
252
+ export { HY_STEPPER, HyStep, HyStepper };
253
+
254
+ //# sourceMappingURL=hyalo-angular-stepper.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hyalo-angular-stepper.mjs","names":[],"sources":["../../../projects/hyalo/stepper/stepper.ts","../../../projects/hyalo/stepper/stepper.html"],"sourcesContent":["import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ElementRef,\r\n Injector,\r\n afterNextRender,\r\n booleanAttribute,\r\n computed,\r\n contentChildren,\r\n inject,\r\n input,\r\n model,\r\n} from '@angular/core';\r\nimport { injectId } from '@hyalo/angular/core';\r\n\r\n@Component({\r\n selector: 'hy-step',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n template: '<ng-content />',\r\n host: {\r\n role: 'group',\r\n '[id]': 'id + \"-panel\"',\r\n '[attr.aria-labelledby]': 'id',\r\n '[hidden]': '!active()',\r\n '[attr.inert]': 'active() ? null : \"\"',\r\n },\r\n})\r\nexport class HyStep {\r\n private readonly stepper = inject(HyStepper);\r\n readonly label = input.required<string>();\r\n readonly completed = input(false, { transform: booleanAttribute });\r\n readonly disabled = input(false, { transform: booleanAttribute });\r\n readonly id = injectId('step');\r\n protected readonly active = computed(\r\n () => this.stepper.steps()[this.stepper.activeIndex()] === this,\r\n );\r\n}\r\n\r\n/** Linear steps require each preceding step to be completed before advancing. */\r\n@Component({\r\n selector: 'hy-stepper',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n templateUrl: './stepper.html',\r\n styleUrl: './stepper.css',\r\n})\r\nexport class HyStepper {\r\n private readonly el = inject<ElementRef<HTMLElement>>(ElementRef).nativeElement;\r\n private readonly injector = inject(Injector);\r\n readonly label = input('Steps');\r\n readonly linear = input(true, { transform: booleanAttribute });\r\n readonly selected = model(0);\r\n readonly steps = contentChildren(HyStep);\r\n protected readonly available = computed(() =>\r\n this.steps().map(\r\n (step, i, steps) =>\r\n !step.disabled() &&\r\n (!this.linear() || steps.slice(0, i).every((previous) => previous.completed())),\r\n ),\r\n );\r\n readonly activeIndex = computed(() => {\r\n const requested = Math.trunc(this.selected());\r\n if (this.available()[requested]) return requested;\r\n return this.available().findIndex(Boolean);\r\n });\r\n\r\n select(index: number): void {\r\n if (!this.available()[index]) return;\r\n this.selected.set(index);\r\n afterNextRender(\r\n () => this.el.querySelectorAll<HTMLButtonElement>('nav button')[this.activeIndex()]?.focus(),\r\n { injector: this.injector },\r\n );\r\n }\r\n next(): void {\r\n this.select(this.activeIndex() + 1);\r\n }\r\n previous(): void {\r\n this.select(this.activeIndex() - 1);\r\n }\r\n\r\n protected onKey(event: KeyboardEvent, index: number): void {\r\n const rtl = this.el.ownerDocument.defaultView?.getComputedStyle(this.el).direction === 'rtl';\r\n let delta = 0;\r\n if (event.key === 'ArrowRight') delta = rtl ? -1 : 1;\r\n else if (event.key === 'ArrowLeft') delta = rtl ? 1 : -1;\r\n else if (event.key !== 'Home' && event.key !== 'End') return;\r\n event.preventDefault();\r\n const indices = this.available().flatMap((enabled, i) => (enabled ? [i] : []));\r\n const target =\r\n event.key === 'Home'\r\n ? indices[0]\r\n : event.key === 'End'\r\n ? indices.at(-1)\r\n : indices[indices.indexOf(index) + delta];\r\n if (target !== undefined)\r\n this.el.querySelectorAll<HTMLButtonElement>('nav button')[target]?.focus();\r\n }\r\n}\r\nexport const HY_STEPPER = [HyStepper, HyStep] as const;\r\n","<nav [attr.aria-label]=\"label()\">\r\n <ol>\r\n @for (step of steps(); track step; let i = $index) {\r\n <li>\r\n <button\r\n type=\"button\"\r\n [id]=\"step.id\"\r\n [disabled]=\"!available()[i]\"\r\n [attr.aria-current]=\"activeIndex() === i ? 'step' : null\"\r\n [attr.aria-controls]=\"step.id + '-panel'\"\r\n (click)=\"select(i)\"\r\n (keydown)=\"onKey($event, i)\"\r\n >\r\n <span aria-hidden=\"true\">{{ step.completed() ? '✓' : i + 1 }}</span\r\n >{{ step.label() }}\r\n </button>\r\n </li>\r\n }\r\n </ol>\r\n</nav>\r\n<ng-content />\r\n"],"mappings":"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"}