@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,126 @@
1
+ import * as i0 from "@angular/core";
2
+ import { ChangeDetectionStrategy, Component, booleanAttribute, computed, inject, input, signal } from "@angular/core";
3
+ import { HyMotion, injectHyVisibility } from "@hyalo/angular/motion";
4
+ var HyMesh = class HyMesh {
5
+ motion = inject(HyMotion);
6
+ visible = injectHyVisibility();
7
+ animated = input(false, {
8
+ ...ngDevMode ? { debugName: "animated" } : /* istanbul ignore next */ {},
9
+ transform: booleanAttribute
10
+ });
11
+ pauseLabel = input("Pause background", ...ngDevMode ? [{ debugName: "pauseLabel" }] : /* istanbul ignore next */ []);
12
+ playLabel = input("Play background", ...ngDevMode ? [{ debugName: "playLabel" }] : /* istanbul ignore next */ []);
13
+ disabledLabel = input("Animation disabled", ...ngDevMode ? [{ debugName: "disabledLabel" }] : /* istanbul ignore next */ []);
14
+ paused = signal(false, ...ngDevMode ? [{ debugName: "paused" }] : /* istanbul ignore next */ []);
15
+ allowed = computed(() => this.motion.enabled(), ...ngDevMode ? [{ debugName: "allowed" }] : /* istanbul ignore next */ []);
16
+ moving = computed(() => this.animated() && !this.paused() && this.motion.enabled() && this.visible(), ...ngDevMode ? [{ debugName: "moving" }] : /* istanbul ignore next */ []);
17
+ static ɵfac = i0.ɵɵngDeclareFactory({
18
+ minVersion: "12.0.0",
19
+ version: "22.2.3",
20
+ ngImport: i0,
21
+ type: HyMesh,
22
+ deps: [],
23
+ target: i0.ɵɵFactoryTarget.Component
24
+ });
25
+ static ɵcmp = i0.ɵɵngDeclareComponent({
26
+ minVersion: "17.0.0",
27
+ version: "22.2.3",
28
+ type: HyMesh,
29
+ isStandalone: true,
30
+ selector: "hy-mesh",
31
+ inputs: {
32
+ animated: {
33
+ classPropertyName: "animated",
34
+ publicName: "animated",
35
+ isSignal: true,
36
+ isRequired: false,
37
+ transformFunction: null
38
+ },
39
+ pauseLabel: {
40
+ classPropertyName: "pauseLabel",
41
+ publicName: "pauseLabel",
42
+ isSignal: true,
43
+ isRequired: false,
44
+ transformFunction: null
45
+ },
46
+ playLabel: {
47
+ classPropertyName: "playLabel",
48
+ publicName: "playLabel",
49
+ isSignal: true,
50
+ isRequired: false,
51
+ transformFunction: null
52
+ },
53
+ disabledLabel: {
54
+ classPropertyName: "disabledLabel",
55
+ publicName: "disabledLabel",
56
+ isSignal: true,
57
+ isRequired: false,
58
+ transformFunction: null
59
+ }
60
+ },
61
+ host: { properties: {
62
+ "attr.data-animate": "moving()",
63
+ "attr.data-enabled": "allowed() && animated()"
64
+ } },
65
+ ngImport: i0,
66
+ template: "<div class=\"content\"><ng-content /></div>\r\n@if (animated()) {\r\n <button\r\n type=\"button\"\r\n [disabled]=\"!allowed()\"\r\n (click)=\"paused.set(!paused())\"\r\n [attr.aria-pressed]=\"paused()\"\r\n >\r\n {{ !allowed() ? disabledLabel() : paused() ? playLabel() : pauseLabel() }}\r\n </button>\r\n}\r\n",
67
+ styles: [":host{display:block;position:relative;isolation:isolate;overflow:clip;border-radius:var(--hy-radius-l);background:var(--hy-bg)}:host:before,:host:after{content:\"\";position:absolute;z-index:-1;inset:-30%;pointer-events:none}:host:before{background:radial-gradient(ellipse at 20% 30%,var(--hy-mesh-a, color-mix(in srgb, var(--hy-primary) 36%, transparent)),transparent 55%),radial-gradient(ellipse at 80% 70%,var(--hy-mesh-b, color-mix(in srgb, var(--hy-success) 30%, transparent)),transparent 55%);animation:hy-ambient 10s linear infinite alternate;animation-play-state:paused}:host:after{background:radial-gradient(ellipse at 70% 20%,var(--hy-mesh-c, color-mix(in srgb, var(--hy-warning) 26%, transparent)),transparent 50%);animation:hy-ambient-counter 12s linear infinite alternate;animation-play-state:paused}:host([data-animate=\"true\"]):before,:host([data-animate=\"true\"]):after{animation-play-state:running}:host([data-enabled=\"false\"]):before,:host([data-enabled=\"false\"]):after{animation:none}.content{position:relative;padding:var(--hy-mesh-padding, var(--hy-space-9))}button{margin:var(--hy-space-3);min-block-size:2rem;background:var(--hy-surface-1);color:var(--hy-ink);border:1px solid var(--hy-line);border-radius:var(--hy-radius-s);font:inherit;cursor:pointer}button:focus-visible{outline:2px solid var(--hy-primary);outline-offset:2px}@keyframes hy-ambient{to{transform:translate(18%,12%) rotate(14deg)}}@keyframes hy-ambient-counter{to{transform:translate(-16%,14%) rotate(-12deg)}}@media(prefers-reduced-motion:reduce){:host:before,:host:after{animation:none!important}}\n"],
68
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
69
+ });
70
+ };
71
+ i0.ɵɵngDeclareClassMetadata({
72
+ minVersion: "12.0.0",
73
+ version: "22.2.3",
74
+ ngImport: i0,
75
+ type: HyMesh,
76
+ decorators: [{
77
+ type: Component,
78
+ args: [{
79
+ selector: "hy-mesh",
80
+ changeDetection: ChangeDetectionStrategy.OnPush,
81
+ host: {
82
+ "[attr.data-animate]": "moving()",
83
+ "[attr.data-enabled]": "allowed() && animated()"
84
+ },
85
+ template: "<div class=\"content\"><ng-content /></div>\r\n@if (animated()) {\r\n <button\r\n type=\"button\"\r\n [disabled]=\"!allowed()\"\r\n (click)=\"paused.set(!paused())\"\r\n [attr.aria-pressed]=\"paused()\"\r\n >\r\n {{ !allowed() ? disabledLabel() : paused() ? playLabel() : pauseLabel() }}\r\n </button>\r\n}\r\n",
86
+ styles: [":host{display:block;position:relative;isolation:isolate;overflow:clip;border-radius:var(--hy-radius-l);background:var(--hy-bg)}:host:before,:host:after{content:\"\";position:absolute;z-index:-1;inset:-30%;pointer-events:none}:host:before{background:radial-gradient(ellipse at 20% 30%,var(--hy-mesh-a, color-mix(in srgb, var(--hy-primary) 36%, transparent)),transparent 55%),radial-gradient(ellipse at 80% 70%,var(--hy-mesh-b, color-mix(in srgb, var(--hy-success) 30%, transparent)),transparent 55%);animation:hy-ambient 10s linear infinite alternate;animation-play-state:paused}:host:after{background:radial-gradient(ellipse at 70% 20%,var(--hy-mesh-c, color-mix(in srgb, var(--hy-warning) 26%, transparent)),transparent 50%);animation:hy-ambient-counter 12s linear infinite alternate;animation-play-state:paused}:host([data-animate=\"true\"]):before,:host([data-animate=\"true\"]):after{animation-play-state:running}:host([data-enabled=\"false\"]):before,:host([data-enabled=\"false\"]):after{animation:none}.content{position:relative;padding:var(--hy-mesh-padding, var(--hy-space-9))}button{margin:var(--hy-space-3);min-block-size:2rem;background:var(--hy-surface-1);color:var(--hy-ink);border:1px solid var(--hy-line);border-radius:var(--hy-radius-s);font:inherit;cursor:pointer}button:focus-visible{outline:2px solid var(--hy-primary);outline-offset:2px}@keyframes hy-ambient{to{transform:translate(18%,12%) rotate(14deg)}}@keyframes hy-ambient-counter{to{transform:translate(-16%,14%) rotate(-12deg)}}@media(prefers-reduced-motion:reduce){:host:before,:host:after{animation:none!important}}\n"]
87
+ }]
88
+ }],
89
+ propDecorators: {
90
+ animated: [{
91
+ type: i0.Input,
92
+ args: [{
93
+ isSignal: true,
94
+ alias: "animated",
95
+ required: false
96
+ }]
97
+ }],
98
+ pauseLabel: [{
99
+ type: i0.Input,
100
+ args: [{
101
+ isSignal: true,
102
+ alias: "pauseLabel",
103
+ required: false
104
+ }]
105
+ }],
106
+ playLabel: [{
107
+ type: i0.Input,
108
+ args: [{
109
+ isSignal: true,
110
+ alias: "playLabel",
111
+ required: false
112
+ }]
113
+ }],
114
+ disabledLabel: [{
115
+ type: i0.Input,
116
+ args: [{
117
+ isSignal: true,
118
+ alias: "disabledLabel",
119
+ required: false
120
+ }]
121
+ }]
122
+ }
123
+ });
124
+ export { HyMesh };
125
+
126
+ //# sourceMappingURL=hyalo-angular-mesh.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hyalo-angular-mesh.mjs","names":[],"sources":["../../../projects/hyalo/mesh/mesh.ts","../../../projects/hyalo/mesh/mesh.html"],"sourcesContent":["import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n booleanAttribute,\r\n computed,\r\n inject,\r\n input,\r\n signal,\r\n} from '@angular/core';\r\nimport { HyMotion, injectHyVisibility } from '@hyalo/angular/motion';\r\n/** Ambient backdrop. Content stays in a separate, stationary layer. */\r\n@Component({\r\n selector: 'hy-mesh',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n host: { '[attr.data-animate]': 'moving()', '[attr.data-enabled]': 'allowed() && animated()' },\r\n templateUrl: './mesh.html',\r\n styleUrl: './mesh.css',\r\n})\r\nexport class HyMesh {\r\n private readonly motion = inject(HyMotion);\r\n private readonly visible = injectHyVisibility();\r\n readonly animated = input(false, { transform: booleanAttribute });\r\n readonly pauseLabel = input('Pause background');\r\n readonly playLabel = input('Play background');\r\n readonly disabledLabel = input('Animation disabled');\r\n protected readonly paused = signal(false);\r\n protected readonly allowed = computed(() => this.motion.enabled());\r\n protected readonly moving = computed(\r\n () => this.animated() && !this.paused() && this.motion.enabled() && this.visible(),\r\n );\r\n}\r\n","<div class=\"content\"><ng-content /></div>\r\n@if (animated()) {\r\n <button\r\n type=\"button\"\r\n [disabled]=\"!allowed()\"\r\n (click)=\"paused.set(!paused())\"\r\n [attr.aria-pressed]=\"paused()\"\r\n >\r\n {{ !allowed() ? disabledLabel() : paused() ? playLabel() : pauseLabel() }}\r\n </button>\r\n}\r\n"],"mappings":";;;AAkBA,IAAa,SAAb,MAAa,OAAM;CACA,SAAS,OAAO,QAAQ;CACxB,UAAU,mBAAkB;CACpC,WAAW,MAAM,OAAK;EAAA,GAAA,YAAA,EAAA,WAAA,WAAA,+BAAA,CAAA;EAAI,WAAW;CAAgB,CAAA;CACrD,aAAa,MAAM,oBAAmB,GAAA,YAAA,CAAA,EAAA,WAAA,aAAA,CAAA,+BAAA,CAAA,CAAA;CACtC,YAAY,MAAM,mBAAkB,GAAA,YAAA,CAAA,EAAA,WAAA,YAAA,CAAA,+BAAA,CAAA,CAAA;CACpC,gBAAgB,MAAM,sBAAqB,GAAA,YAAA,CAAA,EAAA,WAAA,gBAAA,CAAA,+BAAA,CAAA,CAAA;CACjC,SAAS,OAAO,OAAM,GAAA,YAAA,CAAA,EAAA,WAAA,SAAA,CAAA,+BAAA,CAAA,CAAA;CACtB,UAAU,eAAe,KAAK,OAAO,QAAO,GAAG,GAAA,YAAA,CAAA,EAAA,WAAA,UAAA,CAAA,+BAAA,CAAA,CAAA;CAC/C,SAAS,eACpB,KAAK,SAAQ,KAAM,CAAC,KAAK,OAAM,KAAM,KAAK,OAAO,QAAO,KAAM,KAAK,QAAO,GACjF,GAAA,YAAA,CAAA,EAAA,WAAA,SAAA,CAAA,+BAAA,CAAA,CAAA;CAXU,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,UAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,YAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,WAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,eAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;EAAA;EAAA,MAAA,EAAA,YAAA;GAAA,qBAAA;GAAA,qBAAA;EAAA,EAAA;EAAA,UAAA;EAAA,UClBnB;EAWA,QAAA,CAAA,+jDAAA;EAAA,iBAAA,GAAA,wBAAA;CAAA,CAAA;;ADOa,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAM,YAAA,CAAA;EAPlB,MAAA;EACW,MAAA,CAAA;GAAA,UAAA;GAAS,iBACF,wBAAwB;GAAM,MACzC;IAAE,uBAAuB;IAAY,uBAAuB;GAAyB;GAAE,UAAA;GAAA,QAAA,CAAA,+jDAAA;EAAA,CAAA"}