@visitwonders/assembly 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) hide show
  1. package/declarations/action/button-group.d.ts +89 -0
  2. package/declarations/action/button-group.d.ts.map +1 -0
  3. package/declarations/action/button.d.ts +4 -0
  4. package/declarations/action/button.d.ts.map +1 -1
  5. package/declarations/action/index.d.ts +1 -0
  6. package/declarations/action/index.d.ts.map +1 -1
  7. package/declarations/components/form/checkbox.d.ts +0 -65
  8. package/declarations/components/form/control.d.ts +0 -36
  9. package/declarations/components/form/error-message.d.ts +0 -22
  10. package/declarations/components/form/field.d.ts +0 -21
  11. package/declarations/components/form/form.d.ts +0 -14
  12. package/declarations/components/form/help-text.d.ts +0 -14
  13. package/declarations/components/form/index.d.ts +0 -15
  14. package/declarations/components/form/input.d.ts +0 -80
  15. package/declarations/components/form/label.d.ts +0 -34
  16. package/declarations/components/form/radio-group.d.ts +0 -43
  17. package/declarations/components/form/radio.d.ts +0 -54
  18. package/declarations/components/form/search-input.d.ts +0 -35
  19. package/declarations/components/form/select.d.ts +0 -36
  20. package/declarations/components/form/test.d.ts +0 -11
  21. package/declarations/components/form/textarea.d.ts +0 -79
  22. package/declarations/components/form/toggle.d.ts +0 -23
  23. package/declarations/components/primitives/grid-item.d.ts +0 -21
  24. package/declarations/components/primitives/grid.d.ts +0 -49
  25. package/declarations/components/primitives/h-stack.d.ts +0 -17
  26. package/declarations/components/primitives/heading.d.ts +0 -52
  27. package/declarations/components/primitives/image.d.ts +0 -24
  28. package/declarations/components/primitives/index.d.ts +0 -8
  29. package/declarations/components/primitives/link.d.ts +0 -16
  30. package/declarations/components/primitives/stack.d.ts +0 -23
  31. package/declarations/components/primitives/text.d.ts +0 -50
  32. package/declarations/components/primitives/v-stack.d.ts +0 -16
  33. package/declarations/components/ui/badge.d.ts +0 -14
  34. package/declarations/components/ui/button.d.ts +0 -32
  35. package/declarations/components/ui/card.d.ts +0 -27
  36. package/declarations/components/ui/description-list.d.ts +0 -22
  37. package/declarations/components/ui/drawer.d.ts +0 -14
  38. package/declarations/components/ui/icon-button.d.ts +0 -21
  39. package/declarations/components/ui/icon.d.ts +0 -21
  40. package/declarations/components/ui/index.d.ts +0 -17
  41. package/declarations/components/ui/modal.d.ts +0 -14
  42. package/declarations/components/ui/page-header.d.ts +0 -16
  43. package/declarations/components/ui/skeleton-card.d.ts +0 -17
  44. package/declarations/components/ui/skeleton-text.d.ts +0 -16
  45. package/declarations/components/ui/skeleton.d.ts +0 -20
  46. package/declarations/components/ui/spinner.d.ts +0 -11
  47. package/declarations/components/ui/tab-nav/index.d.ts +0 -36
  48. package/declarations/components/ui/table/body.d.ts +0 -11
  49. package/declarations/components/ui/table/caption.d.ts +0 -18
  50. package/declarations/components/ui/table/cell.d.ts +0 -31
  51. package/declarations/components/ui/table/footer.d.ts +0 -11
  52. package/declarations/components/ui/table/header-cell.d.ts +0 -35
  53. package/declarations/components/ui/table/header.d.ts +0 -11
  54. package/declarations/components/ui/table/row.d.ts +0 -21
  55. package/declarations/components/ui/table_old.d.ts +0 -29
  56. package/declarations/data/table.d.ts +0 -1
  57. package/declarations/data/table.d.ts.map +1 -1
  58. package/declarations/form/calendar.d.ts +0 -1
  59. package/declarations/form/calendar.d.ts.map +1 -1
  60. package/declarations/form/control.d.ts +5 -1
  61. package/declarations/form/control.d.ts.map +1 -1
  62. package/declarations/form/country-select-field.d.ts +6 -0
  63. package/declarations/form/country-select-field.d.ts.map +1 -1
  64. package/declarations/form/country-select.d.ts +0 -1
  65. package/declarations/form/country-select.d.ts.map +1 -1
  66. package/declarations/form/date-picker-field.d.ts +6 -0
  67. package/declarations/form/date-picker-field.d.ts.map +1 -1
  68. package/declarations/form/date-picker.d.ts +0 -1
  69. package/declarations/form/date-picker.d.ts.map +1 -1
  70. package/declarations/form/date-range-picker-field.d.ts +6 -0
  71. package/declarations/form/date-range-picker-field.d.ts.map +1 -1
  72. package/declarations/form/date-range-picker.d.ts +0 -1
  73. package/declarations/form/date-range-picker.d.ts.map +1 -1
  74. package/declarations/form/fieldset.d.ts +22 -0
  75. package/declarations/form/fieldset.d.ts.map +1 -0
  76. package/declarations/form/form.d.ts +0 -1
  77. package/declarations/form/form.d.ts.map +1 -1
  78. package/declarations/form/index.d.ts +1 -0
  79. package/declarations/form/index.d.ts.map +1 -1
  80. package/declarations/form/label.d.ts +4 -0
  81. package/declarations/form/label.d.ts.map +1 -1
  82. package/declarations/form/listbox.d.ts +0 -1
  83. package/declarations/form/listbox.d.ts.map +1 -1
  84. package/declarations/form/money-field.d.ts +6 -1
  85. package/declarations/form/money-field.d.ts.map +1 -1
  86. package/declarations/form/multi-select.d.ts +0 -1
  87. package/declarations/form/multi-select.d.ts.map +1 -1
  88. package/declarations/form/number-field.d.ts +9 -1
  89. package/declarations/form/number-field.d.ts.map +1 -1
  90. package/declarations/form/select-field.d.ts +4 -1
  91. package/declarations/form/select-field.d.ts.map +1 -1
  92. package/declarations/form/test.d.ts +0 -11
  93. package/declarations/form/text-field.d.ts +9 -0
  94. package/declarations/form/text-field.d.ts.map +1 -1
  95. package/declarations/form/time-picker-field.d.ts +6 -0
  96. package/declarations/form/time-picker-field.d.ts.map +1 -1
  97. package/declarations/form/time-picker.d.ts +0 -1
  98. package/declarations/form/time-picker.d.ts.map +1 -1
  99. package/declarations/form/toggle.d.ts +4 -0
  100. package/declarations/form/toggle.d.ts.map +1 -1
  101. package/declarations/layout/index.d.ts +1 -0
  102. package/declarations/layout/index.d.ts.map +1 -1
  103. package/declarations/layout/panel.d.ts +34 -0
  104. package/declarations/layout/panel.d.ts.map +1 -0
  105. package/declarations/media/icon.d.ts +0 -1
  106. package/declarations/media/icon.d.ts.map +1 -1
  107. package/declarations/media/image.d.ts +1 -1
  108. package/declarations/overlay/blanket.d.ts +0 -1
  109. package/declarations/overlay/blanket.d.ts.map +1 -1
  110. package/declarations/overlay/drawer.d.ts +4 -1
  111. package/declarations/overlay/drawer.d.ts.map +1 -1
  112. package/declarations/overlay/modal.d.ts +0 -1
  113. package/declarations/overlay/modal.d.ts.map +1 -1
  114. package/declarations/overlay/popover.d.ts +0 -1
  115. package/declarations/overlay/popover.d.ts.map +1 -1
  116. package/declarations/overlay/toast.d.ts +0 -1
  117. package/declarations/overlay/toast.d.ts.map +1 -1
  118. package/declarations/overlay/tooltip.d.ts +0 -1
  119. package/declarations/overlay/tooltip.d.ts.map +1 -1
  120. package/declarations/primitives/grid-item.d.ts +0 -21
  121. package/declarations/primitives/grid.d.ts +0 -49
  122. package/declarations/primitives/h-stack.d.ts +0 -17
  123. package/declarations/primitives/heading.d.ts +0 -52
  124. package/declarations/primitives/image.d.ts +0 -24
  125. package/declarations/primitives/index.d.ts +0 -4
  126. package/declarations/primitives/link.d.ts +0 -16
  127. package/declarations/primitives/stack.d.ts +0 -23
  128. package/declarations/primitives/text.d.ts +0 -50
  129. package/declarations/primitives/v-stack.d.ts +0 -16
  130. package/declarations/status/badge.d.ts +0 -1
  131. package/declarations/status/badge.d.ts.map +1 -1
  132. package/declarations/status/skeleton-avatar.d.ts +1 -1
  133. package/declarations/status/skeleton-avatar.d.ts.map +1 -1
  134. package/declarations/status/skeleton-button.d.ts +1 -1
  135. package/declarations/status/skeleton-button.d.ts.map +1 -1
  136. package/declarations/status/skeleton-image.d.ts +1 -1
  137. package/declarations/status/skeleton-image.d.ts.map +1 -1
  138. package/declarations/status/skeleton-text.d.ts +1 -1
  139. package/declarations/status/skeleton-text.d.ts.map +1 -1
  140. package/declarations/status/skeleton.d.ts +1 -1
  141. package/declarations/status/skeleton.d.ts.map +1 -1
  142. package/declarations/status/tag.d.ts +0 -1
  143. package/declarations/status/tag.d.ts.map +1 -1
  144. package/declarations/typography/link.d.ts +0 -16
  145. package/declarations/ui/button.d.ts +0 -50
  146. package/declarations/ui/icon.d.ts +0 -21
  147. package/dist/_app_/action/button-group.js +1 -0
  148. package/dist/_app_/form/fieldset.js +1 -0
  149. package/dist/_app_/layout/panel.js +1 -0
  150. package/dist/action/button-group.css +18 -0
  151. package/dist/action/button-group.js +130 -0
  152. package/dist/action/button-group.js.map +1 -0
  153. package/dist/action/button.css +152 -0
  154. package/dist/action/button.js +1 -1
  155. package/dist/action/index.js +1 -0
  156. package/dist/action/index.js.map +1 -1
  157. package/dist/data/table.css +48 -47
  158. package/dist/data/table.js +1 -1
  159. package/dist/form/checkbox.css +3 -3
  160. package/dist/form/control-css-02e93d930aecac651d5c69dc10a83504.css +36 -0
  161. package/dist/form/control.js +2 -2
  162. package/dist/form/country-select-field.js +1 -1
  163. package/dist/form/country-select-field.js.map +1 -1
  164. package/dist/form/country-select.css +1 -1
  165. package/dist/form/date-picker-field.js +1 -1
  166. package/dist/form/date-picker-field.js.map +1 -1
  167. package/dist/form/date-range-picker-field.js +1 -1
  168. package/dist/form/date-range-picker-field.js.map +1 -1
  169. package/dist/form/field.css +3 -3
  170. package/dist/form/fieldset.css +65 -0
  171. package/dist/form/fieldset.js +20 -0
  172. package/dist/form/fieldset.js.map +1 -0
  173. package/dist/form/help-text.css +1 -1
  174. package/dist/form/index.js +1 -0
  175. package/dist/form/index.js.map +1 -1
  176. package/dist/form/input.css +1 -0
  177. package/dist/form/label.css +15 -1
  178. package/dist/form/label.js +10 -4
  179. package/dist/form/money-field.js +1 -1
  180. package/dist/form/multi-select.css +1 -1
  181. package/dist/form/number-field.css +1 -0
  182. package/dist/form/number-field.js +1 -1
  183. package/dist/form/radio.css +3 -3
  184. package/dist/form/select-field.js +1 -1
  185. package/dist/form/select-field.js.map +1 -1
  186. package/dist/form/select.css +1 -1
  187. package/dist/form/{text-field-css-f60360f3f8aaf4da664eaccd1bcc9f8f.css → text-field-css-754feeb82dbd9fc9afdc1f00dceb13ad.css} +22 -1
  188. package/dist/form/text-field.js +2 -2
  189. package/dist/form/textarea.css +2 -1
  190. package/dist/form/time-picker-field.js +1 -1
  191. package/dist/form/time-picker-field.js.map +1 -1
  192. package/dist/form/toggle.css +27 -1
  193. package/dist/form/toggle.js +4 -1
  194. package/dist/layout/{divider-css-1ba104b9c606cbd1f542b45640fb5f2b.css → divider-css-7e0cc7d350e31172582851c6cb2cf586.css} +2 -2
  195. package/dist/layout/divider.js +1 -1
  196. package/dist/layout/{grid-css-086976eb41686e3714554f56c098d3d5.css → grid-css-c8259b34d7062f44e78f0a2cc139cb44.css} +13 -13
  197. package/dist/layout/grid.js +1 -1
  198. package/dist/layout/index.js +1 -0
  199. package/dist/layout/index.js.map +1 -1
  200. package/dist/layout/panel.css +229 -0
  201. package/dist/layout/panel.js +32 -0
  202. package/dist/layout/panel.js.map +1 -0
  203. package/dist/overlay/blanket.css +12 -11
  204. package/dist/overlay/blanket.js +1 -1
  205. package/dist/overlay/drawer.css +99 -62
  206. package/dist/overlay/drawer.js +7 -4
  207. package/dist/overlay/modal.css +22 -21
  208. package/dist/overlay/modal.js +4 -4
  209. package/dist/overlay/popover.css +30 -29
  210. package/dist/overlay/popover.js +4 -4
  211. package/dist/overlay/toast.css +49 -48
  212. package/dist/overlay/toast.js +2 -2
  213. package/dist/overlay/tooltip.css +38 -37
  214. package/dist/overlay/tooltip.js +2 -2
  215. package/dist/skeleton-shared-BTA5oAjw.js +3 -0
  216. package/dist/skeleton-shared-BTA5oAjw.js.map +1 -0
  217. package/dist/status/badge.css +30 -29
  218. package/dist/status/badge.js +1 -1
  219. package/dist/status/skeleton-avatar.js +1 -1
  220. package/dist/status/skeleton-avatar.js.map +1 -1
  221. package/dist/status/skeleton-button.js +1 -1
  222. package/dist/status/skeleton-button.js.map +1 -1
  223. package/dist/status/skeleton-image.js +1 -1
  224. package/dist/status/skeleton-image.js.map +1 -1
  225. package/dist/status/skeleton-text.js +1 -1
  226. package/dist/status/skeleton-text.js.map +1 -1
  227. package/dist/status/skeleton.js +1 -1
  228. package/dist/status/skeleton.js.map +1 -1
  229. package/dist/status/tag.css +50 -51
  230. package/dist/status/tag.js +1 -1
  231. package/dist/styles/base/typography.css +1 -1
  232. package/dist/styles/primitive/typography.css +10 -7
  233. package/dist/styles/semantic/typography.css +4 -4
  234. package/dist/styles.css +15 -12
  235. package/dist/typography/{heading-css-8850735eabc2efb34f15240b852c99e7.css → heading-css-726c4c3109f2b741657733e1ba103c67.css} +9 -9
  236. package/dist/typography/heading.js +1 -1
  237. package/package.json +22 -18
  238. package/dist/form/control-css-6c81caf37fd813b36033091d5340bc70.css +0 -20
  239. package/dist/skeleton-CL5Pcwrk.js +0 -3
  240. package/dist/skeleton-CL5Pcwrk.js.map +0 -1
  241. /package/dist/status/{skeleton.css → skeleton-shared.css} +0 -0
@@ -1,12 +1,13 @@
1
+ /* src/overlay/tooltip.css */
1
2
  /* ===================================
2
3
  * Tooltip Component
3
4
  * =================================== */
4
5
 
5
- .tooltip {
6
+ .tooltip_e1d3ad271 {
6
7
  display: inline-flex;
7
8
  }
8
9
 
9
- .tooltip-provider {
10
+ .tooltip-provider_e1d3ad271 {
10
11
  display: contents;
11
12
  }
12
13
 
@@ -14,7 +15,7 @@
14
15
  * Trigger
15
16
  * =================================== */
16
17
 
17
- .tooltip-trigger {
18
+ .tooltip-trigger_e1d3ad271 {
18
19
  display: inline-flex;
19
20
  align-items: center;
20
21
  justify-content: center;
@@ -24,7 +25,7 @@
24
25
  * Content - Dark variant (default)
25
26
  * =================================== */
26
27
 
27
- .tooltip-content {
28
+ .tooltip-content_e1d3ad271 {
28
29
  /* Positioning */
29
30
  position: absolute;
30
31
  z-index: var(--z-tooltip, 9999);
@@ -42,14 +43,14 @@
42
43
  /* Typography */
43
44
  font-size: var(--font-size-sm, 14px);
44
45
  font-weight: var(--font-weight-medium, 500);
45
- line-height: var(--line-height-tight, 1.25);
46
+ line-height: var(--line-height-tight);
46
47
 
47
48
  /* Sizing */
48
49
  max-width: 240px;
49
50
  padding: 6px 10px;
50
51
 
51
52
  /* Animation */
52
- animation: tooltip-fade-in var(--duration-150, 150ms)
53
+ animation: tooltip-fade-in__e1d3ad271 var(--duration-150, 150ms)
53
54
  var(--easing-out, ease-out);
54
55
 
55
56
  /* Prevent text selection */
@@ -58,26 +59,26 @@
58
59
  }
59
60
 
60
61
  /* Light variant */
61
- .tooltip-content[data-variant="light"] {
62
+ .tooltip-content_e1d3ad271[data-variant="light"] {
62
63
  background: var(--white, #fff);
63
64
  color: var(--gray-900, #161a2e);
64
65
  border: 1px solid var(--gray-200, #d8dcea);
65
66
  }
66
67
 
67
68
  /* Transform origin based on side */
68
- .tooltip-content[data-side="top"] {
69
+ .tooltip-content_e1d3ad271[data-side="top"] {
69
70
  --transform-origin: bottom center;
70
71
  }
71
72
 
72
- .tooltip-content[data-side="bottom"] {
73
+ .tooltip-content_e1d3ad271[data-side="bottom"] {
73
74
  --transform-origin: top center;
74
75
  }
75
76
 
76
- .tooltip-content[data-side="left"] {
77
+ .tooltip-content_e1d3ad271[data-side="left"] {
77
78
  --transform-origin: right center;
78
79
  }
79
80
 
80
- .tooltip-content[data-side="right"] {
81
+ .tooltip-content_e1d3ad271[data-side="right"] {
81
82
  --transform-origin: left center;
82
83
  }
83
84
 
@@ -85,7 +86,7 @@
85
86
  * Animation
86
87
  * =================================== */
87
88
 
88
- @keyframes tooltip-fade-in {
89
+ @keyframes tooltip-fade-in__e1d3ad271 {
89
90
  from {
90
91
  opacity: 0;
91
92
  transform: scale(0.96);
@@ -100,7 +101,7 @@
100
101
  * Arrow (Caret)
101
102
  * =================================== */
102
103
 
103
- .tooltip-arrow {
104
+ .tooltip-arrow_e1d3ad271 {
104
105
  position: absolute;
105
106
  width: 0;
106
107
  height: 0;
@@ -108,37 +109,37 @@
108
109
  }
109
110
 
110
111
  /* Arrow pointing down (tooltip on top) */
111
- .tooltip-arrow[data-side="top"] {
112
+ .tooltip-arrow_e1d3ad271[data-side="top"] {
112
113
  border-width: 6px 6px 0 6px;
113
114
  border-color: var(--gray-900, #161a2e) transparent transparent transparent;
114
115
  }
115
116
 
116
117
  /* Arrow pointing up (tooltip on bottom) */
117
- .tooltip-arrow[data-side="bottom"] {
118
+ .tooltip-arrow_e1d3ad271[data-side="bottom"] {
118
119
  border-width: 0 6px 6px 6px;
119
120
  border-color: transparent transparent var(--gray-900, #161a2e) transparent;
120
121
  }
121
122
 
122
123
  /* Arrow pointing right (tooltip on left) */
123
- .tooltip-arrow[data-side="left"] {
124
+ .tooltip-arrow_e1d3ad271[data-side="left"] {
124
125
  border-width: 6px 0 6px 6px;
125
126
  border-color: transparent transparent transparent var(--gray-900, #161a2e);
126
127
  }
127
128
 
128
129
  /* Arrow pointing left (tooltip on right) */
129
- .tooltip-arrow[data-side="right"] {
130
+ .tooltip-arrow_e1d3ad271[data-side="right"] {
130
131
  border-width: 6px 6px 6px 0;
131
132
  border-color: transparent var(--gray-900, #161a2e) transparent transparent;
132
133
  }
133
134
 
134
135
  /* Light variant arrow - uses pseudo-element for border effect */
135
- .tooltip-content[data-variant="light"] .tooltip-arrow {
136
+ .tooltip-content_e1d3ad271[data-variant="light"] .tooltip-arrow_e1d3ad271 {
136
137
  /* Hide the default arrow, we'll use pseudo-elements instead */
137
138
  border-color: transparent;
138
139
  }
139
140
 
140
- .tooltip-content[data-variant="light"] .tooltip-arrow::before,
141
- .tooltip-content[data-variant="light"] .tooltip-arrow::after {
141
+ .tooltip-content_e1d3ad271[data-variant="light"] .tooltip-arrow_e1d3ad271::before,
142
+ .tooltip-content_e1d3ad271[data-variant="light"] .tooltip-arrow_e1d3ad271::after {
142
143
  content: "";
143
144
  position: absolute;
144
145
  width: 0;
@@ -147,24 +148,24 @@
147
148
  }
148
149
 
149
150
  /* Border layer (behind) */
150
- .tooltip-content[data-variant="light"] .tooltip-arrow::before {
151
+ .tooltip-content_e1d3ad271[data-variant="light"] .tooltip-arrow_e1d3ad271::before {
151
152
  z-index: 0;
152
153
  }
153
154
 
154
155
  /* Fill layer (in front) */
155
- .tooltip-content[data-variant="light"] .tooltip-arrow::after {
156
+ .tooltip-content_e1d3ad271[data-variant="light"] .tooltip-arrow_e1d3ad271::after {
156
157
  z-index: 1;
157
158
  }
158
159
 
159
160
  /* Top arrow (pointing down) - light variant */
160
- .tooltip-content[data-variant="light"] .tooltip-arrow[data-side="top"]::before {
161
+ .tooltip-content_e1d3ad271[data-variant="light"] .tooltip-arrow_e1d3ad271[data-side="top"]::before {
161
162
  border-width: 7px 7px 0 7px;
162
163
  border-color: var(--gray-200, #d8dcea) transparent transparent transparent;
163
164
  top: 0;
164
165
  left: -1px;
165
166
  }
166
167
 
167
- .tooltip-content[data-variant="light"] .tooltip-arrow[data-side="top"]::after {
168
+ .tooltip-content_e1d3ad271[data-variant="light"] .tooltip-arrow_e1d3ad271[data-side="top"]::after {
168
169
  border-width: 6px 6px 0 6px;
169
170
  border-color: var(--white, #fff) transparent transparent transparent;
170
171
  top: 0;
@@ -172,16 +173,16 @@
172
173
  }
173
174
 
174
175
  /* Bottom arrow (pointing up) - light variant */
175
- .tooltip-content[data-variant="light"]
176
- .tooltip-arrow[data-side="bottom"]::before {
176
+ .tooltip-content_e1d3ad271[data-variant="light"]
177
+ .tooltip-arrow_e1d3ad271[data-side="bottom"]::before {
177
178
  border-width: 0 7px 7px 7px;
178
179
  border-color: transparent transparent var(--gray-200, #d8dcea) transparent;
179
180
  bottom: 0;
180
181
  left: -1px;
181
182
  }
182
183
 
183
- .tooltip-content[data-variant="light"]
184
- .tooltip-arrow[data-side="bottom"]::after {
184
+ .tooltip-content_e1d3ad271[data-variant="light"]
185
+ .tooltip-arrow_e1d3ad271[data-side="bottom"]::after {
185
186
  border-width: 0 6px 6px 6px;
186
187
  border-color: transparent transparent var(--white, #fff) transparent;
187
188
  bottom: 0;
@@ -189,15 +190,15 @@
189
190
  }
190
191
 
191
192
  /* Left arrow (pointing right) - light variant */
192
- .tooltip-content[data-variant="light"]
193
- .tooltip-arrow[data-side="left"]::before {
193
+ .tooltip-content_e1d3ad271[data-variant="light"]
194
+ .tooltip-arrow_e1d3ad271[data-side="left"]::before {
194
195
  border-width: 7px 0 7px 7px;
195
196
  border-color: transparent transparent transparent var(--gray-200, #d8dcea);
196
197
  top: -1px;
197
198
  left: 0;
198
199
  }
199
200
 
200
- .tooltip-content[data-variant="light"] .tooltip-arrow[data-side="left"]::after {
201
+ .tooltip-content_e1d3ad271[data-variant="light"] .tooltip-arrow_e1d3ad271[data-side="left"]::after {
201
202
  border-width: 6px 0 6px 6px;
202
203
  border-color: transparent transparent transparent var(--white, #fff);
203
204
  top: 0;
@@ -205,16 +206,16 @@
205
206
  }
206
207
 
207
208
  /* Right arrow (pointing left) - light variant */
208
- .tooltip-content[data-variant="light"]
209
- .tooltip-arrow[data-side="right"]::before {
209
+ .tooltip-content_e1d3ad271[data-variant="light"]
210
+ .tooltip-arrow_e1d3ad271[data-side="right"]::before {
210
211
  border-width: 7px 7px 7px 0;
211
212
  border-color: transparent var(--gray-200, #d8dcea) transparent transparent;
212
213
  top: -1px;
213
214
  right: 0;
214
215
  }
215
216
 
216
- .tooltip-content[data-variant="light"]
217
- .tooltip-arrow[data-side="right"]::after {
217
+ .tooltip-content_e1d3ad271[data-variant="light"]
218
+ .tooltip-arrow_e1d3ad271[data-side="right"]::after {
218
219
  border-width: 6px 6px 6px 0;
219
220
  border-color: transparent var(--white, #fff) transparent transparent;
220
221
  top: 0;
@@ -225,7 +226,7 @@
225
226
  * Keyboard Shortcut Badge
226
227
  * =================================== */
227
228
 
228
- .tooltip-kbd {
229
+ .tooltip-kbd_e1d3ad271 {
229
230
  display: inline-flex;
230
231
  align-items: center;
231
232
  justify-content: center;
@@ -241,6 +242,6 @@
241
242
  color: var(--gray-300, #c2c7d9);
242
243
  }
243
244
 
244
- .tooltip-kbd + .tooltip-kbd {
245
+ .tooltip-kbd_e1d3ad271 + .tooltip-kbd_e1d3ad271 {
245
246
  margin-left: var(--spacing-1, 4px);
246
247
  }
@@ -48,7 +48,7 @@ class TooltipProvider extends Component {
48
48
  };
49
49
  });
50
50
  static {
51
- setComponentTemplate(precompileTemplate("<div class=\"tooltip-provider\" {{this.setupProvider}} ...attributes>\n {{yield}}\n</div>", {
51
+ setComponentTemplate(precompileTemplate("<div class=\"tooltip-provider_e1d3ad271\" {{this.setupProvider}} ...attributes>\n {{yield}}\n</div>", {
52
52
  strictMode: true
53
53
  }), this);
54
54
  }
@@ -355,7 +355,7 @@ class Tooltip extends Component {
355
355
  return this.isOpen ? this.contentId : undefined;
356
356
  }
357
357
  static {
358
- setComponentTemplate(precompileTemplate("<span class=\"tooltip\" {{this.setupEventListeners}} data-test-tooltip ...attributes>\n <span class=\"tooltip-trigger\" aria-describedby={{this.ariaDescribedBy}} {{on \"mouseenter\" this.handleMouseEnter}} {{on \"mouseleave\" this.handleMouseLeave}} {{on \"focusin\" this.handleFocusIn}} {{on \"focusout\" this.handleFocusOut}} {{this.registerTrigger}} data-test-tooltip-trigger>\n {{yield}}\n </span>\n\n {{#if this.isOpen}}\n {{#in-element this.destinationElement insertBefore=null}}\n <div id={{this.contentId}} class=\"tooltip-content\" role=\"tooltip\" aria-label={{@aria-label}} data-side={{this.actualSide}} data-variant={{this.variant}} {{on \"mouseenter\" this.handleContentMouseEnter}} {{on \"mouseleave\" this.handleContentMouseLeave}} {{this.applyPositioning trigger=this.triggerElement placement=this.placement offsetOptions=this.offsetOptions flipOptions=this.flipOptions shiftOptions=this.shiftOptions}} data-test-tooltip-content>\n {{#if (has-block \"content\")}}\n {{yield to=\"content\"}}\n {{else}}\n {{@content}}\n {{/if}}\n {{#if this.showArrow}}\n <div class=\"tooltip-arrow\" data-test-tooltip-arrow></div>\n {{/if}}\n </div>\n {{/in-element}}\n {{/if}}\n</span>", {
358
+ setComponentTemplate(precompileTemplate("<span class=\"tooltip_e1d3ad271\" {{this.setupEventListeners}} data-test-tooltip ...attributes>\n <span class=\"tooltip-trigger_e1d3ad271\" aria-describedby={{this.ariaDescribedBy}} {{on \"mouseenter\" this.handleMouseEnter}} {{on \"mouseleave\" this.handleMouseLeave}} {{on \"focusin\" this.handleFocusIn}} {{on \"focusout\" this.handleFocusOut}} {{this.registerTrigger}} data-test-tooltip-trigger>\n {{yield}}\n </span>\n\n {{#if this.isOpen}}\n {{#in-element this.destinationElement insertBefore=null}}\n <div id={{this.contentId}} class=\"tooltip-content_e1d3ad271\" role=\"tooltip\" aria-label={{@aria-label}} data-side={{this.actualSide}} data-variant={{this.variant}} {{on \"mouseenter\" this.handleContentMouseEnter}} {{on \"mouseleave\" this.handleContentMouseLeave}} {{this.applyPositioning trigger=this.triggerElement placement=this.placement offsetOptions=this.offsetOptions flipOptions=this.flipOptions shiftOptions=this.shiftOptions}} data-test-tooltip-content>\n {{#if (has-block \"content\")}}\n {{yield to=\"content\"}}\n {{else}}\n {{@content}}\n {{/if}}\n {{#if this.showArrow}}\n <div class=\"tooltip-arrow_e1d3ad271\" data-test-tooltip-arrow></div>\n {{/if}}\n </div>\n {{/in-element}}\n {{/if}}\n</span>", {
359
359
  strictMode: true,
360
360
  scope: () => ({
361
361
  on
@@ -0,0 +1,3 @@
1
+ import "./status/skeleton-shared.css"
2
+ ;
3
+ //# sourceMappingURL=skeleton-shared-BTA5oAjw.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skeleton-shared-BTA5oAjw.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,8 +1,9 @@
1
+ /* src/status/badge.css */
1
2
  /* ===================================
2
3
  * Badge Component
3
4
  * =================================== */
4
5
 
5
- .badge {
6
+ .badge_e706d9725 {
6
7
  /* Layout */
7
8
  display: inline-flex;
8
9
  align-items: center;
@@ -28,30 +29,30 @@
28
29
  * Sizes
29
30
  * =================================== */
30
31
 
31
- .badge[data-size="sm"] {
32
+ .badge_e706d9725[data-size="sm"] {
32
33
  height: 20px;
33
34
  padding: 0 var(--spacing-2);
34
35
  font-size: var(--font-size-xs);
35
36
  }
36
37
 
37
- .badge[data-size="md"] {
38
+ .badge_e706d9725[data-size="md"] {
38
39
  height: 24px;
39
40
  padding: 0 var(--spacing-2-5);
40
41
  font-size: var(--font-size-sm);
41
42
  }
42
43
 
43
44
  /* Count mode - pill shape */
44
- .badge[data-count="true"] {
45
+ .badge_e706d9725[data-count="true"] {
45
46
  border-radius: var(--radius-full);
46
47
  min-width: 20px;
47
48
  }
48
49
 
49
- .badge[data-count="true"][data-size="sm"] {
50
+ .badge_e706d9725[data-count="true"][data-size="sm"] {
50
51
  min-width: 18px;
51
52
  padding: 0 var(--spacing-1-5);
52
53
  }
53
54
 
54
- .badge[data-count="true"][data-size="md"] {
55
+ .badge_e706d9725[data-count="true"][data-size="md"] {
55
56
  min-width: 22px;
56
57
  padding: 0 var(--spacing-2);
57
58
  }
@@ -60,7 +61,7 @@
60
61
  * Dot Indicator
61
62
  * =================================== */
62
63
 
63
- .badge[data-dot="true"]::before {
64
+ .badge_e706d9725[data-dot="true"]::before {
64
65
  content: "";
65
66
  display: block;
66
67
  width: 6px;
@@ -70,7 +71,7 @@
70
71
  flex-shrink: 0;
71
72
  }
72
73
 
73
- .badge[data-dot="true"][data-size="sm"]::before {
74
+ .badge_e706d9725[data-dot="true"][data-size="sm"]::before {
74
75
  width: 5px;
75
76
  height: 5px;
76
77
  }
@@ -80,37 +81,37 @@
80
81
  * =================================== */
81
82
 
82
83
  /* Neutral */
83
- .badge[data-variant="default"][data-tone="neutral"] {
84
+ .badge_e706d9725[data-variant="default"][data-tone="neutral"] {
84
85
  background: var(--color-bg-fill-neutral);
85
86
  color: var(--color-text-on-neutral);
86
87
  }
87
88
 
88
89
  /* Primary */
89
- .badge[data-variant="default"][data-tone="primary"] {
90
+ .badge_e706d9725[data-variant="default"][data-tone="primary"] {
90
91
  background: var(--color-bg-fill-primary);
91
92
  color: var(--color-text-on-primary);
92
93
  }
93
94
 
94
95
  /* Success */
95
- .badge[data-variant="default"][data-tone="success"] {
96
+ .badge_e706d9725[data-variant="default"][data-tone="success"] {
96
97
  background: var(--color-bg-fill-success);
97
98
  color: var(--color-text-on-success);
98
99
  }
99
100
 
100
101
  /* Warning */
101
- .badge[data-variant="default"][data-tone="warning"] {
102
+ .badge_e706d9725[data-variant="default"][data-tone="warning"] {
102
103
  background: var(--color-bg-fill-warning);
103
104
  color: var(--color-text-on-warning);
104
105
  }
105
106
 
106
107
  /* Critical */
107
- .badge[data-variant="default"][data-tone="critical"] {
108
+ .badge_e706d9725[data-variant="default"][data-tone="critical"] {
108
109
  background: var(--color-bg-fill-critical);
109
110
  color: var(--color-text-on-critical);
110
111
  }
111
112
 
112
113
  /* Info */
113
- .badge[data-variant="default"][data-tone="info"] {
114
+ .badge_e706d9725[data-variant="default"][data-tone="info"] {
114
115
  background: var(--color-bg-fill-info);
115
116
  color: var(--color-text-on-info);
116
117
  }
@@ -120,37 +121,37 @@
120
121
  * =================================== */
121
122
 
122
123
  /* Neutral */
123
- .badge[data-variant="subtle"][data-tone="neutral"] {
124
+ .badge_e706d9725[data-variant="subtle"][data-tone="neutral"] {
124
125
  background: var(--color-bg-neutral-subtle);
125
126
  color: var(--color-text);
126
127
  }
127
128
 
128
129
  /* Primary */
129
- .badge[data-variant="subtle"][data-tone="primary"] {
130
+ .badge_e706d9725[data-variant="subtle"][data-tone="primary"] {
130
131
  background: var(--color-bg-primary-subtle);
131
132
  color: var(--color-text-primary);
132
133
  }
133
134
 
134
135
  /* Success */
135
- .badge[data-variant="subtle"][data-tone="success"] {
136
+ .badge_e706d9725[data-variant="subtle"][data-tone="success"] {
136
137
  background: var(--color-bg-success-subtle);
137
138
  color: var(--color-text-success);
138
139
  }
139
140
 
140
141
  /* Warning */
141
- .badge[data-variant="subtle"][data-tone="warning"] {
142
+ .badge_e706d9725[data-variant="subtle"][data-tone="warning"] {
142
143
  background: var(--color-bg-warning-subtle);
143
144
  color: var(--color-text-warning);
144
145
  }
145
146
 
146
147
  /* Critical */
147
- .badge[data-variant="subtle"][data-tone="critical"] {
148
+ .badge_e706d9725[data-variant="subtle"][data-tone="critical"] {
148
149
  background: var(--color-bg-critical-subtle);
149
150
  color: var(--color-text-critical);
150
151
  }
151
152
 
152
153
  /* Info */
153
- .badge[data-variant="subtle"][data-tone="info"] {
154
+ .badge_e706d9725[data-variant="subtle"][data-tone="info"] {
154
155
  background: var(--color-bg-info-subtle);
155
156
  color: var(--color-text-info);
156
157
  }
@@ -160,42 +161,42 @@
160
161
  * =================================== */
161
162
 
162
163
  /* Neutral */
163
- .badge[data-variant="outline"][data-tone="neutral"] {
164
+ .badge_e706d9725[data-variant="outline"][data-tone="neutral"] {
164
165
  background: transparent;
165
166
  border: 1px solid var(--color-border-neutral);
166
167
  color: var(--color-text);
167
168
  }
168
169
 
169
170
  /* Primary */
170
- .badge[data-variant="outline"][data-tone="primary"] {
171
+ .badge_e706d9725[data-variant="outline"][data-tone="primary"] {
171
172
  background: transparent;
172
173
  border: 1px solid var(--color-border-primary);
173
174
  color: var(--color-text-primary);
174
175
  }
175
176
 
176
177
  /* Success */
177
- .badge[data-variant="outline"][data-tone="success"] {
178
+ .badge_e706d9725[data-variant="outline"][data-tone="success"] {
178
179
  background: transparent;
179
180
  border: 1px solid var(--color-border-success);
180
181
  color: var(--color-text-success);
181
182
  }
182
183
 
183
184
  /* Warning */
184
- .badge[data-variant="outline"][data-tone="warning"] {
185
+ .badge_e706d9725[data-variant="outline"][data-tone="warning"] {
185
186
  background: transparent;
186
187
  border: 1px solid var(--color-border-warning);
187
188
  color: var(--color-text-warning);
188
189
  }
189
190
 
190
191
  /* Critical */
191
- .badge[data-variant="outline"][data-tone="critical"] {
192
+ .badge_e706d9725[data-variant="outline"][data-tone="critical"] {
192
193
  background: transparent;
193
194
  border: 1px solid var(--color-border-critical);
194
195
  color: var(--color-text-critical);
195
196
  }
196
197
 
197
198
  /* Info */
198
- .badge[data-variant="outline"][data-tone="info"] {
199
+ .badge_e706d9725[data-variant="outline"][data-tone="info"] {
199
200
  background: transparent;
200
201
  border: 1px solid var(--color-border-info);
201
202
  color: var(--color-text-info);
@@ -205,14 +206,14 @@
205
206
  * Inner Elements
206
207
  * =================================== */
207
208
 
208
- .badge-prefix,
209
- .badge-suffix {
209
+ .badge-prefix_e706d9725,
210
+ .badge-suffix_e706d9725 {
210
211
  display: flex;
211
212
  align-items: center;
212
213
  flex-shrink: 0;
213
214
  }
214
215
 
215
- .badge-content {
216
+ .badge-content_e706d9725 {
216
217
  flex: 1 1 auto;
217
218
  text-align: center;
218
219
  }
@@ -28,7 +28,7 @@ class Badge extends Component {
28
28
  return String(count);
29
29
  }
30
30
  static {
31
- setComponentTemplate(precompileTemplate("<span class=\"badge\" aria-label={{@aria-label}} data-tone={{this.tone}} data-variant={{this.variant}} data-size={{this.size}} data-dot={{if @dot \"true\"}} data-count={{if this.isCountMode \"true\"}} data-test-badge ...attributes>\n {{#if (has-block \"prefix\")}}\n <span class=\"badge-prefix\" data-test-badge-prefix>\n {{yield to=\"prefix\"}}\n </span>\n {{/if}}\n <span class=\"badge-content\">\n {{#if this.isCountMode}}\n {{this.displayCount}}\n {{else}}\n {{yield}}\n {{/if}}\n </span>\n {{#if (has-block \"suffix\")}}\n <span class=\"badge-suffix\" data-test-badge-suffix>\n {{yield to=\"suffix\"}}\n </span>\n {{/if}}\n</span>", {
31
+ setComponentTemplate(precompileTemplate("<span class=\"badge_e706d9725\" aria-label={{@aria-label}} data-tone={{this.tone}} data-variant={{this.variant}} data-size={{this.size}} data-dot={{if @dot \"true\"}} data-count={{if this.isCountMode \"true\"}} data-test-badge ...attributes>\n {{#if (has-block \"prefix\")}}\n <span class=\"badge-prefix_e706d9725\" data-test-badge-prefix>\n {{yield to=\"prefix\"}}\n </span>\n {{/if}}\n <span class=\"badge-content_e706d9725\">\n {{#if this.isCountMode}}\n {{this.displayCount}}\n {{else}}\n {{yield}}\n {{/if}}\n </span>\n {{#if (has-block \"suffix\")}}\n <span class=\"badge-suffix_e706d9725\" data-test-badge-suffix>\n {{yield to=\"suffix\"}}\n </span>\n {{/if}}\n</span>", {
32
32
  strictMode: true
33
33
  }), this);
34
34
  }
@@ -1,5 +1,5 @@
1
1
  import Component from '@glimmer/component';
2
- import '../skeleton-CL5Pcwrk.js';
2
+ import '../skeleton-shared-BTA5oAjw.js';
3
3
  import { precompileTemplate } from '@ember/template-compilation';
4
4
  import { setComponentTemplate } from '@ember/component';
5
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-avatar.js","sources":["../../src/status/skeleton-avatar.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport type { SkeletonAnimation } from './skeleton.gts';\nimport './skeleton.css';\n\nexport type SkeletonAvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\nexport interface SkeletonAvatarSignature {\n Element: HTMLDivElement;\n Args: {\n /** Avatar size */\n size?: SkeletonAvatarSize;\n\n /** Custom size in pixels (overrides size prop) */\n customSize?: number;\n\n /** Animation style */\n animation?: SkeletonAnimation;\n };\n}\n\nexport default class SkeletonAvatar extends Component<SkeletonAvatarSignature> {\n get size(): SkeletonAvatarSize {\n return this.args.size ?? 'md';\n }\n\n get animation(): SkeletonAnimation {\n return this.args.animation ?? 'wave';\n }\n\n get hasCustomSize(): boolean {\n return this.args.customSize !== undefined;\n }\n\n get style(): string | undefined {\n if (!this.hasCustomSize) return undefined;\n const size = `${this.args.customSize}px`;\n return `width: ${size}; height: ${size}`;\n }\n\n <template>\n <div\n class=\"skeleton skeleton-avatar\"\n role=\"presentation\"\n aria-hidden=\"true\"\n data-variant=\"circular\"\n data-animation={{this.animation}}\n data-size={{unless this.hasCustomSize this.size}}\n style={{this.style}}\n data-test-skeleton-avatar\n ...attributes\n ></div>\n </template>\n}\n"],"names":["SkeletonAvatar","Component","size","args","animation","hasCustomSize","customSize","undefined","style","setComponentTemplate","precompileTemplate","strictMode"],"mappings":";;;;;AAoBe,MAAMA,uBAAuBC,SAAA,CAAU;EACpD,IAAIC,OAA2B;AAC7B,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,IAAI,IAAI,IAAA;AAC3B,EAAA;EAEA,IAAIE,YAA+B;AACjC,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,SAAS,IAAI,MAAA;AAChC,EAAA;EAEA,IAAIC,aAAAA,GAAyB;AAC3B,IAAA,OAAO,IAAI,CAACF,IAAI,CAACG,UAAU,KAAKC,SAAA;AAClC,EAAA;EAEA,IAAIC,KAAAA,GAA4B;AAC9B,IAAA,IAAI,CAAC,IAAI,CAACH,aAAa,EAAE,OAAOE,SAAA;IAChC,MAAML,IAAA,GAAO,CAAA,EAAG,IAAI,CAACC,IAAI,CAACG,UAAU,CAAA,EAAA,CAAI;AACxC,IAAA,OAAO,CAAA,OAAA,EAAUJ,iBAAiBA,MAAM;AAC1C,EAAA;AAEA,EAAA;IAAAO,oBAAA,CAAAC,kBAAA,CAAA,sQAAA,EAYA;MAAAC,UAAA,EAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
1
+ {"version":3,"file":"skeleton-avatar.js","sources":["../../src/status/skeleton-avatar.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport type { SkeletonAnimation } from './skeleton.gts';\nimport './skeleton-shared.css';\n\nexport type SkeletonAvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\nexport interface SkeletonAvatarSignature {\n Element: HTMLDivElement;\n Args: {\n /** Avatar size */\n size?: SkeletonAvatarSize;\n\n /** Custom size in pixels (overrides size prop) */\n customSize?: number;\n\n /** Animation style */\n animation?: SkeletonAnimation;\n };\n}\n\nexport default class SkeletonAvatar extends Component<SkeletonAvatarSignature> {\n get size(): SkeletonAvatarSize {\n return this.args.size ?? 'md';\n }\n\n get animation(): SkeletonAnimation {\n return this.args.animation ?? 'wave';\n }\n\n get hasCustomSize(): boolean {\n return this.args.customSize !== undefined;\n }\n\n get style(): string | undefined {\n if (!this.hasCustomSize) return undefined;\n const size = `${this.args.customSize}px`;\n return `width: ${size}; height: ${size}`;\n }\n\n <template>\n <div\n class=\"skeleton skeleton-avatar\"\n role=\"presentation\"\n aria-hidden=\"true\"\n data-variant=\"circular\"\n data-animation={{this.animation}}\n data-size={{unless this.hasCustomSize this.size}}\n style={{this.style}}\n data-test-skeleton-avatar\n ...attributes\n ></div>\n </template>\n}\n"],"names":["SkeletonAvatar","Component","size","args","animation","hasCustomSize","customSize","undefined","style","setComponentTemplate","precompileTemplate","strictMode"],"mappings":";;;;;AAoBe,MAAMA,uBAAuBC,SAAA,CAAU;EACpD,IAAIC,OAA2B;AAC7B,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,IAAI,IAAI,IAAA;AAC3B,EAAA;EAEA,IAAIE,YAA+B;AACjC,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,SAAS,IAAI,MAAA;AAChC,EAAA;EAEA,IAAIC,aAAAA,GAAyB;AAC3B,IAAA,OAAO,IAAI,CAACF,IAAI,CAACG,UAAU,KAAKC,SAAA;AAClC,EAAA;EAEA,IAAIC,KAAAA,GAA4B;AAC9B,IAAA,IAAI,CAAC,IAAI,CAACH,aAAa,EAAE,OAAOE,SAAA;IAChC,MAAML,IAAA,GAAO,CAAA,EAAG,IAAI,CAACC,IAAI,CAACG,UAAU,CAAA,EAAA,CAAI;AACxC,IAAA,OAAO,CAAA,OAAA,EAAUJ,iBAAiBA,MAAM;AAC1C,EAAA;AAEA,EAAA;IAAAO,oBAAA,CAAAC,kBAAA,CAAA,sQAAA,EAYA;MAAAC,UAAA,EAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -1,5 +1,5 @@
1
1
  import Component from '@glimmer/component';
2
- import '../skeleton-CL5Pcwrk.js';
2
+ import '../skeleton-shared-BTA5oAjw.js';
3
3
  import { precompileTemplate } from '@ember/template-compilation';
4
4
  import { setComponentTemplate } from '@ember/component';
5
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-button.js","sources":["../../src/status/skeleton-button.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport type { SkeletonAnimation } from './skeleton.gts';\nimport './skeleton.css';\n\nexport type SkeletonButtonSize = 'sm' | 'md' | 'lg';\n\nexport interface SkeletonButtonSignature {\n Element: HTMLDivElement;\n Args: {\n /** Button size (matches Button component sizes) */\n size?: SkeletonButtonSize;\n\n /** Custom width (CSS value) */\n width?: string;\n\n /** Animation style */\n animation?: SkeletonAnimation;\n };\n}\n\nexport default class SkeletonButton extends Component<SkeletonButtonSignature> {\n get size(): SkeletonButtonSize {\n return this.args.size ?? 'md';\n }\n\n get animation(): SkeletonAnimation {\n return this.args.animation ?? 'wave';\n }\n\n get style(): string | undefined {\n if (!this.args.width) return undefined;\n return `width: ${this.args.width}`;\n }\n\n <template>\n <div\n class=\"skeleton skeleton-button\"\n role=\"presentation\"\n aria-hidden=\"true\"\n data-variant=\"rectangular\"\n data-animation={{this.animation}}\n data-size={{this.size}}\n style={{this.style}}\n data-test-skeleton-button\n ...attributes\n ></div>\n </template>\n}\n"],"names":["SkeletonButton","Component","size","args","animation","style","width","undefined","setComponentTemplate","precompileTemplate","strictMode"],"mappings":";;;;;AAoBe,MAAMA,uBAAuBC,SAAA,CAAU;EACpD,IAAIC,OAA2B;AAC7B,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,IAAI,IAAI,IAAA;AAC3B,EAAA;EAEA,IAAIE,YAA+B;AACjC,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,SAAS,IAAI,MAAA;AAChC,EAAA;EAEA,IAAIC,KAAAA,GAA4B;IAC9B,IAAI,CAAC,IAAI,CAACF,IAAI,CAACG,KAAK,EAAE,OAAOC,SAAA;AAC7B,IAAA,OAAO,UAAU,IAAI,CAACJ,IAAI,CAACG,KAAK,CAAA,CAAE;AACpC,EAAA;AAEA,EAAA;IAAAE,oBAAA,CAAAC,kBAAA,CAAA,+OAAA,EAYA;MAAAC,UAAA,EAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
1
+ {"version":3,"file":"skeleton-button.js","sources":["../../src/status/skeleton-button.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport type { SkeletonAnimation } from './skeleton.gts';\nimport './skeleton-shared.css';\n\nexport type SkeletonButtonSize = 'sm' | 'md' | 'lg';\n\nexport interface SkeletonButtonSignature {\n Element: HTMLDivElement;\n Args: {\n /** Button size (matches Button component sizes) */\n size?: SkeletonButtonSize;\n\n /** Custom width (CSS value) */\n width?: string;\n\n /** Animation style */\n animation?: SkeletonAnimation;\n };\n}\n\nexport default class SkeletonButton extends Component<SkeletonButtonSignature> {\n get size(): SkeletonButtonSize {\n return this.args.size ?? 'md';\n }\n\n get animation(): SkeletonAnimation {\n return this.args.animation ?? 'wave';\n }\n\n get style(): string | undefined {\n if (!this.args.width) return undefined;\n return `width: ${this.args.width}`;\n }\n\n <template>\n <div\n class=\"skeleton skeleton-button\"\n role=\"presentation\"\n aria-hidden=\"true\"\n data-variant=\"rectangular\"\n data-animation={{this.animation}}\n data-size={{this.size}}\n style={{this.style}}\n data-test-skeleton-button\n ...attributes\n ></div>\n </template>\n}\n"],"names":["SkeletonButton","Component","size","args","animation","style","width","undefined","setComponentTemplate","precompileTemplate","strictMode"],"mappings":";;;;;AAoBe,MAAMA,uBAAuBC,SAAA,CAAU;EACpD,IAAIC,OAA2B;AAC7B,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,IAAI,IAAI,IAAA;AAC3B,EAAA;EAEA,IAAIE,YAA+B;AACjC,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,SAAS,IAAI,MAAA;AAChC,EAAA;EAEA,IAAIC,KAAAA,GAA4B;IAC9B,IAAI,CAAC,IAAI,CAACF,IAAI,CAACG,KAAK,EAAE,OAAOC,SAAA;AAC7B,IAAA,OAAO,UAAU,IAAI,CAACJ,IAAI,CAACG,KAAK,CAAA,CAAE;AACpC,EAAA;AAEA,EAAA;IAAAE,oBAAA,CAAAC,kBAAA,CAAA,+OAAA,EAYA;MAAAC,UAAA,EAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -1,5 +1,5 @@
1
1
  import Component from '@glimmer/component';
2
- import '../skeleton-CL5Pcwrk.js';
2
+ import '../skeleton-shared-BTA5oAjw.js';
3
3
  import { precompileTemplate } from '@ember/template-compilation';
4
4
  import { setComponentTemplate } from '@ember/component';
5
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-image.js","sources":["../../src/status/skeleton-image.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport type { SkeletonAnimation } from './skeleton.gts';\nimport './skeleton.css';\n\nexport interface SkeletonImageSignature {\n Element: HTMLDivElement;\n Args: {\n /** Width of the image skeleton (CSS value) */\n width?: string;\n\n /** Height of the image skeleton (CSS value) */\n height?: string;\n\n /** Aspect ratio (e.g., \"16/9\", \"4/3\", \"1/1\") */\n aspectRatio?: string;\n\n /** Animation style */\n animation?: SkeletonAnimation;\n };\n}\n\nexport default class SkeletonImage extends Component<SkeletonImageSignature> {\n get animation(): SkeletonAnimation {\n return this.args.animation ?? 'wave';\n }\n\n get style(): string {\n const styles: string[] = [];\n\n if (this.args.width) {\n styles.push(`width: ${this.args.width}`);\n }\n\n if (this.args.height) {\n styles.push(`height: ${this.args.height}`);\n }\n\n if (this.args.aspectRatio) {\n styles.push(`aspect-ratio: ${this.args.aspectRatio}`);\n }\n\n return styles.join('; ');\n }\n\n <template>\n <div\n class=\"skeleton skeleton-image\"\n role=\"presentation\"\n aria-hidden=\"true\"\n data-variant=\"rectangular\"\n data-animation={{this.animation}}\n style={{this.style}}\n data-test-skeleton-image\n ...attributes\n ></div>\n </template>\n}\n"],"names":["SkeletonImage","Component","animation","args","style","styles","width","push","height","aspectRatio","join","setComponentTemplate","precompileTemplate","strictMode"],"mappings":";;;;;AAqBe,MAAMA,sBAAsBC,SAAA,CAAU;EACnD,IAAIC,YAA+B;AACjC,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,SAAS,IAAI,MAAA;AAChC,EAAA;EAEA,IAAIE,KAAAA,GAAgB;IAClB,MAAMC,MAAc,GAAK,EAAE;AAE3B,IAAA,IAAI,IAAI,CAACF,IAAI,CAACG,KAAK,EAAE;MACnBD,MAAA,CAAOE,IAAI,CAAC,CAAA,OAAA,EAAU,IAAI,CAACJ,IAAI,CAACG,KAAK,CAAA,CAAE,CAAA;AACzC,IAAA;AAEA,IAAA,IAAI,IAAI,CAACH,IAAI,CAACK,MAAM,EAAE;MACpBH,MAAA,CAAOE,IAAI,CAAC,CAAA,QAAA,EAAW,IAAI,CAACJ,IAAI,CAACK,MAAM,CAAA,CAAE,CAAA;AAC3C,IAAA;AAEA,IAAA,IAAI,IAAI,CAACL,IAAI,CAACM,WAAW,EAAE;MACzBJ,MAAA,CAAOE,IAAI,CAAC,CAAA,cAAA,EAAiB,IAAI,CAACJ,IAAI,CAACM,WAAW,CAAA,CAAE,CAAA;AACtD,IAAA;AAEA,IAAA,OAAOJ,MAAA,CAAOK,IAAI,CAAC,IAAA,CAAA;AACrB,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,qNAAA,EAWA;MAAAC,UAAA,EAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
1
+ {"version":3,"file":"skeleton-image.js","sources":["../../src/status/skeleton-image.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport type { SkeletonAnimation } from './skeleton.gts';\nimport './skeleton-shared.css';\n\nexport interface SkeletonImageSignature {\n Element: HTMLDivElement;\n Args: {\n /** Width of the image skeleton (CSS value) */\n width?: string;\n\n /** Height of the image skeleton (CSS value) */\n height?: string;\n\n /** Aspect ratio (e.g., \"16/9\", \"4/3\", \"1/1\") */\n aspectRatio?: string;\n\n /** Animation style */\n animation?: SkeletonAnimation;\n };\n}\n\nexport default class SkeletonImage extends Component<SkeletonImageSignature> {\n get animation(): SkeletonAnimation {\n return this.args.animation ?? 'wave';\n }\n\n get style(): string {\n const styles: string[] = [];\n\n if (this.args.width) {\n styles.push(`width: ${this.args.width}`);\n }\n\n if (this.args.height) {\n styles.push(`height: ${this.args.height}`);\n }\n\n if (this.args.aspectRatio) {\n styles.push(`aspect-ratio: ${this.args.aspectRatio}`);\n }\n\n return styles.join('; ');\n }\n\n <template>\n <div\n class=\"skeleton skeleton-image\"\n role=\"presentation\"\n aria-hidden=\"true\"\n data-variant=\"rectangular\"\n data-animation={{this.animation}}\n style={{this.style}}\n data-test-skeleton-image\n ...attributes\n ></div>\n </template>\n}\n"],"names":["SkeletonImage","Component","animation","args","style","styles","width","push","height","aspectRatio","join","setComponentTemplate","precompileTemplate","strictMode"],"mappings":";;;;;AAqBe,MAAMA,sBAAsBC,SAAA,CAAU;EACnD,IAAIC,YAA+B;AACjC,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,SAAS,IAAI,MAAA;AAChC,EAAA;EAEA,IAAIE,KAAAA,GAAgB;IAClB,MAAMC,MAAc,GAAK,EAAE;AAE3B,IAAA,IAAI,IAAI,CAACF,IAAI,CAACG,KAAK,EAAE;MACnBD,MAAA,CAAOE,IAAI,CAAC,CAAA,OAAA,EAAU,IAAI,CAACJ,IAAI,CAACG,KAAK,CAAA,CAAE,CAAA;AACzC,IAAA;AAEA,IAAA,IAAI,IAAI,CAACH,IAAI,CAACK,MAAM,EAAE;MACpBH,MAAA,CAAOE,IAAI,CAAC,CAAA,QAAA,EAAW,IAAI,CAACJ,IAAI,CAACK,MAAM,CAAA,CAAE,CAAA;AAC3C,IAAA;AAEA,IAAA,IAAI,IAAI,CAACL,IAAI,CAACM,WAAW,EAAE;MACzBJ,MAAA,CAAOE,IAAI,CAAC,CAAA,cAAA,EAAiB,IAAI,CAACJ,IAAI,CAACM,WAAW,CAAA,CAAE,CAAA;AACtD,IAAA;AAEA,IAAA,OAAOJ,MAAA,CAAOK,IAAI,CAAC,IAAA,CAAA;AACrB,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,qNAAA,EAWA;MAAAC,UAAA,EAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -1,6 +1,6 @@
1
1
  import Component from '@glimmer/component';
2
2
  import Skeleton from './skeleton.js';
3
- import '../skeleton-CL5Pcwrk.js';
3
+ import '../skeleton-shared-BTA5oAjw.js';
4
4
  import { precompileTemplate } from '@ember/template-compilation';
5
5
  import { setComponentTemplate } from '@ember/component';
6
6
 
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton-text.js","sources":["../../src/status/skeleton-text.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport Skeleton from './skeleton.gts';\nimport type { SkeletonAnimation } from './skeleton.gts';\nimport './skeleton.css';\n\nexport interface SkeletonTextSignature {\n Element: HTMLDivElement;\n Args: {\n /** Number of text lines to render */\n lines?: number;\n\n /** Gap between lines (CSS value) */\n gap?: string;\n\n /** Width of the last line (CSS value or percentage) */\n lastLineWidth?: string;\n\n /** Animation style */\n animation?: SkeletonAnimation;\n };\n}\n\nexport default class SkeletonText extends Component<SkeletonTextSignature> {\n get lines(): number {\n return this.args.lines ?? 3;\n }\n\n get gap(): string {\n return this.args.gap ?? 'var(--spacing-2)';\n }\n\n get animation(): SkeletonAnimation {\n return this.args.animation ?? 'wave';\n }\n\n get lineNumbers(): number[] {\n return Array.from({ length: this.lines }, (_, i) => i);\n }\n\n get style(): string {\n const styles: string[] = [];\n\n styles.push(`gap: ${this.gap}`);\n\n if (this.args.lastLineWidth) {\n styles.push(`--skeleton-text-last-width: ${this.args.lastLineWidth}`);\n }\n\n return styles.join('; ');\n }\n\n <template>\n <div\n class=\"skeleton-text\"\n role=\"presentation\"\n aria-hidden=\"true\"\n style={{this.style}}\n data-test-skeleton-text\n ...attributes\n >\n {{#each this.lineNumbers as |index|}}\n <Skeleton\n @variant=\"text\"\n @animation={{this.animation}}\n data-line={{index}}\n />\n {{/each}}\n </div>\n </template>\n}\n"],"names":["SkeletonText","Component","lines","args","gap","animation","lineNumbers","Array","from","length","_","i","style","styles","push","lastLineWidth","join","setComponentTemplate","precompileTemplate","strictMode","scope","Skeleton"],"mappings":";;;;;;AAsBe,MAAMA,qBAAqBC,SAAA,CAAU;EAClD,IAAIC,KAAAA,GAAgB;AAClB,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,KAAK,IAAI,CAAA;AAC5B,EAAA;EAEA,IAAIE,GAAAA,GAAc;AAChB,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,GAAG,IAAI,kBAAA;AAC1B,EAAA;EAEA,IAAIC,YAA+B;AACjC,IAAA,OAAO,IAAI,CAACF,IAAI,CAACE,SAAS,IAAI,MAAA;AAChC,EAAA;EAEA,IAAIC,WAAAA,GAAwB;IAC1B,OAAOC,KAAA,CAAMC,IAAI,CAAC;MAAEC,MAAA,EAAQ,IAAI,CAACP;AAAM,KAAA,EAAG,CAACQ,GAAGC,CAAA,KAAMA,CAAA,CAAA;AACtD,EAAA;EAEA,IAAIC,KAAAA,GAAgB;IAClB,MAAMC,MAAc,GAAK,EAAE;IAE3BA,MAAA,CAAOC,IAAI,CAAC,CAAA,KAAA,EAAQ,IAAI,CAACV,GAAG,EAAE,CAAA;AAE9B,IAAA,IAAI,IAAI,CAACD,IAAI,CAACY,aAAa,EAAE;MAC3BF,MAAA,CAAOC,IAAI,CAAC,CAAA,4BAAA,EAA+B,IAAI,CAACX,IAAI,CAACY,aAAa,CAAA,CAAE,CAAA;AACtE,IAAA;AAEA,IAAA,OAAOF,MAAA,CAAOG,IAAI,CAAC,IAAA,CAAA;AACrB,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,yRAAA,EAiBA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
1
+ {"version":3,"file":"skeleton-text.js","sources":["../../src/status/skeleton-text.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport Skeleton from './skeleton.gts';\nimport type { SkeletonAnimation } from './skeleton.gts';\nimport './skeleton-shared.css';\n\nexport interface SkeletonTextSignature {\n Element: HTMLDivElement;\n Args: {\n /** Number of text lines to render */\n lines?: number;\n\n /** Gap between lines (CSS value) */\n gap?: string;\n\n /** Width of the last line (CSS value or percentage) */\n lastLineWidth?: string;\n\n /** Animation style */\n animation?: SkeletonAnimation;\n };\n}\n\nexport default class SkeletonText extends Component<SkeletonTextSignature> {\n get lines(): number {\n return this.args.lines ?? 3;\n }\n\n get gap(): string {\n return this.args.gap ?? 'var(--spacing-2)';\n }\n\n get animation(): SkeletonAnimation {\n return this.args.animation ?? 'wave';\n }\n\n get lineNumbers(): number[] {\n return Array.from({ length: this.lines }, (_, i) => i);\n }\n\n get style(): string {\n const styles: string[] = [];\n\n styles.push(`gap: ${this.gap}`);\n\n if (this.args.lastLineWidth) {\n styles.push(`--skeleton-text-last-width: ${this.args.lastLineWidth}`);\n }\n\n return styles.join('; ');\n }\n\n <template>\n <div\n class=\"skeleton-text\"\n role=\"presentation\"\n aria-hidden=\"true\"\n style={{this.style}}\n data-test-skeleton-text\n ...attributes\n >\n {{#each this.lineNumbers as |index|}}\n <Skeleton\n @variant=\"text\"\n @animation={{this.animation}}\n data-line={{index}}\n />\n {{/each}}\n </div>\n </template>\n}\n"],"names":["SkeletonText","Component","lines","args","gap","animation","lineNumbers","Array","from","length","_","i","style","styles","push","lastLineWidth","join","setComponentTemplate","precompileTemplate","strictMode","scope","Skeleton"],"mappings":";;;;;;AAsBe,MAAMA,qBAAqBC,SAAA,CAAU;EAClD,IAAIC,KAAAA,GAAgB;AAClB,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,KAAK,IAAI,CAAA;AAC5B,EAAA;EAEA,IAAIE,GAAAA,GAAc;AAChB,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,GAAG,IAAI,kBAAA;AAC1B,EAAA;EAEA,IAAIC,YAA+B;AACjC,IAAA,OAAO,IAAI,CAACF,IAAI,CAACE,SAAS,IAAI,MAAA;AAChC,EAAA;EAEA,IAAIC,WAAAA,GAAwB;IAC1B,OAAOC,KAAA,CAAMC,IAAI,CAAC;MAAEC,MAAA,EAAQ,IAAI,CAACP;AAAM,KAAA,EAAG,CAACQ,GAAGC,CAAA,KAAMA,CAAA,CAAA;AACtD,EAAA;EAEA,IAAIC,KAAAA,GAAgB;IAClB,MAAMC,MAAc,GAAK,EAAE;IAE3BA,MAAA,CAAOC,IAAI,CAAC,CAAA,KAAA,EAAQ,IAAI,CAACV,GAAG,EAAE,CAAA;AAE9B,IAAA,IAAI,IAAI,CAACD,IAAI,CAACY,aAAa,EAAE;MAC3BF,MAAA,CAAOC,IAAI,CAAC,CAAA,4BAAA,EAA+B,IAAI,CAACX,IAAI,CAACY,aAAa,CAAA,CAAE,CAAA;AACtE,IAAA;AAEA,IAAA,OAAOF,MAAA,CAAOG,IAAI,CAAC,IAAA,CAAA;AACrB,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,yRAAA,EAiBA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -1,5 +1,5 @@
1
1
  import Component from '@glimmer/component';
2
- import '../skeleton-CL5Pcwrk.js';
2
+ import '../skeleton-shared-BTA5oAjw.js';
3
3
  import { precompileTemplate } from '@ember/template-compilation';
4
4
  import { setComponentTemplate } from '@ember/component';
5
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton.js","sources":["../../src/status/skeleton.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport './skeleton.css';\n\nexport type SkeletonVariant = 'text' | 'rectangular' | 'circular';\nexport type SkeletonRadius = 'none' | 'sm' | 'md' | 'lg' | 'full';\nexport type SkeletonAnimation = 'pulse' | 'wave' | 'none';\n\nexport interface SkeletonSignature {\n Element: HTMLDivElement;\n Args: {\n /** Width of the skeleton (CSS value or number for pixels) */\n width?: string | number;\n\n /** Height of the skeleton (CSS value or number for pixels) */\n height?: string | number;\n\n /** Shape variant */\n variant?: SkeletonVariant;\n\n /** Border radius override */\n radius?: SkeletonRadius;\n\n /** Animation style */\n animation?: SkeletonAnimation;\n\n /** When false, renders children instead of skeleton */\n loading?: boolean;\n };\n Blocks: {\n default: [];\n };\n}\n\nfunction formatDimension(\n value: string | number | undefined,\n): string | undefined {\n if (value === undefined) return undefined;\n if (typeof value === 'number') return `${value}px`;\n return value;\n}\n\nexport default class Skeleton extends Component<SkeletonSignature> {\n get variant(): SkeletonVariant {\n return this.args.variant ?? 'text';\n }\n\n get animation(): SkeletonAnimation {\n return this.args.animation ?? 'wave';\n }\n\n get radius(): SkeletonRadius | undefined {\n return this.args.radius;\n }\n\n get isLoading(): boolean {\n return this.args.loading !== false;\n }\n\n get style(): string {\n const styles: string[] = [];\n\n const width = formatDimension(this.args.width);\n const height = formatDimension(this.args.height);\n\n if (width) {\n styles.push(`width: ${width}`);\n }\n if (height) {\n styles.push(`height: ${height}`);\n }\n\n return styles.join('; ');\n }\n\n <template>\n {{#if this.isLoading}}\n <div\n class=\"skeleton\"\n role=\"presentation\"\n aria-hidden=\"true\"\n data-variant={{this.variant}}\n data-animation={{this.animation}}\n data-radius={{this.radius}}\n style={{this.style}}\n data-test-skeleton\n ...attributes\n ></div>\n {{else}}\n {{yield}}\n {{/if}}\n </template>\n}\n"],"names":["formatDimension","value","undefined","Skeleton","Component","variant","args","animation","radius","isLoading","loading","style","styles","width","height","push","join","setComponentTemplate","precompileTemplate","strictMode"],"mappings":";;;;;AAiCA,SAASA,eAAAA,CACPC,KAAkC,EACf;AACnB,EAAA,IAAIA,KAAA,KAAUC,WAAW,OAAOA,SAAA;EAChC,IAAI,OAAOD,UAAU,QAAA,EAAU,OAAO,CAAA,EAAGA,KAAA,CAAA,EAAA,CAAS;AAClD,EAAA,OAAOA,KAAA;AACT;AAEe,MAAME,iBAAiBC,SAAA,CAAU;EAC9C,IAAIC,UAA2B;AAC7B,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,OAAO,IAAI,MAAA;AAC9B,EAAA;EAEA,IAAIE,YAA+B;AACjC,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,SAAS,IAAI,MAAA;AAChC,EAAA;EAEA,IAAIC,MAAAA,GAAqC;AACvC,IAAA,OAAO,IAAI,CAACF,IAAI,CAACE,MAAM;AACzB,EAAA;EAEA,IAAIC,SAAAA,GAAqB;AACvB,IAAA,OAAO,IAAI,CAACH,IAAI,CAACI,OAAO,KAAK,KAAA;AAC/B,EAAA;EAEA,IAAIC,KAAAA,GAAgB;IAClB,MAAMC,MAAc,GAAK,EAAE;IAE3B,MAAMC,QAAQb,eAAA,CAAgB,IAAI,CAACM,IAAI,CAACO,KAAK,CAAA;IAC7C,MAAMC,SAASd,eAAA,CAAgB,IAAI,CAACM,IAAI,CAACQ,MAAM,CAAA;AAE/C,IAAA,IAAID,KAAA,EAAO;AACTD,MAAAA,MAAA,CAAOG,IAAI,CAAC,CAAA,OAAA,EAAUF,OAAO,CAAA;AAC/B,IAAA;AACA,IAAA,IAAIC,MAAA,EAAQ;AACVF,MAAAA,MAAA,CAAOG,IAAI,CAAC,CAAA,QAAA,EAAWD,QAAQ,CAAA;AACjC,IAAA;AAEA,IAAA,OAAOF,MAAA,CAAOI,IAAI,CAAC,IAAA,CAAA;AACrB,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,uRAAA,EAgBA;MAAAC,UAAA,EAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
1
+ {"version":3,"file":"skeleton.js","sources":["../../src/status/skeleton.gts"],"sourcesContent":["import Component from '@glimmer/component';\nimport './skeleton-shared.css';\n\nexport type SkeletonVariant = 'text' | 'rectangular' | 'circular';\nexport type SkeletonRadius = 'none' | 'sm' | 'md' | 'lg' | 'full';\nexport type SkeletonAnimation = 'pulse' | 'wave' | 'none';\n\nexport interface SkeletonSignature {\n Element: HTMLDivElement;\n Args: {\n /** Width of the skeleton (CSS value or number for pixels) */\n width?: string | number;\n\n /** Height of the skeleton (CSS value or number for pixels) */\n height?: string | number;\n\n /** Shape variant */\n variant?: SkeletonVariant;\n\n /** Border radius override */\n radius?: SkeletonRadius;\n\n /** Animation style */\n animation?: SkeletonAnimation;\n\n /** When false, renders children instead of skeleton */\n loading?: boolean;\n };\n Blocks: {\n default: [];\n };\n}\n\nfunction formatDimension(\n value: string | number | undefined,\n): string | undefined {\n if (value === undefined) return undefined;\n if (typeof value === 'number') return `${value}px`;\n return value;\n}\n\nexport default class Skeleton extends Component<SkeletonSignature> {\n get variant(): SkeletonVariant {\n return this.args.variant ?? 'text';\n }\n\n get animation(): SkeletonAnimation {\n return this.args.animation ?? 'wave';\n }\n\n get radius(): SkeletonRadius | undefined {\n return this.args.radius;\n }\n\n get isLoading(): boolean {\n return this.args.loading !== false;\n }\n\n get style(): string {\n const styles: string[] = [];\n\n const width = formatDimension(this.args.width);\n const height = formatDimension(this.args.height);\n\n if (width) {\n styles.push(`width: ${width}`);\n }\n if (height) {\n styles.push(`height: ${height}`);\n }\n\n return styles.join('; ');\n }\n\n <template>\n {{#if this.isLoading}}\n <div\n class=\"skeleton\"\n role=\"presentation\"\n aria-hidden=\"true\"\n data-variant={{this.variant}}\n data-animation={{this.animation}}\n data-radius={{this.radius}}\n style={{this.style}}\n data-test-skeleton\n ...attributes\n ></div>\n {{else}}\n {{yield}}\n {{/if}}\n </template>\n}\n"],"names":["formatDimension","value","undefined","Skeleton","Component","variant","args","animation","radius","isLoading","loading","style","styles","width","height","push","join","setComponentTemplate","precompileTemplate","strictMode"],"mappings":";;;;;AAiCA,SAASA,eAAAA,CACPC,KAAkC,EACf;AACnB,EAAA,IAAIA,KAAA,KAAUC,WAAW,OAAOA,SAAA;EAChC,IAAI,OAAOD,UAAU,QAAA,EAAU,OAAO,CAAA,EAAGA,KAAA,CAAA,EAAA,CAAS;AAClD,EAAA,OAAOA,KAAA;AACT;AAEe,MAAME,iBAAiBC,SAAA,CAAU;EAC9C,IAAIC,UAA2B;AAC7B,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,OAAO,IAAI,MAAA;AAC9B,EAAA;EAEA,IAAIE,YAA+B;AACjC,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,SAAS,IAAI,MAAA;AAChC,EAAA;EAEA,IAAIC,MAAAA,GAAqC;AACvC,IAAA,OAAO,IAAI,CAACF,IAAI,CAACE,MAAM;AACzB,EAAA;EAEA,IAAIC,SAAAA,GAAqB;AACvB,IAAA,OAAO,IAAI,CAACH,IAAI,CAACI,OAAO,KAAK,KAAA;AAC/B,EAAA;EAEA,IAAIC,KAAAA,GAAgB;IAClB,MAAMC,MAAc,GAAK,EAAE;IAE3B,MAAMC,QAAQb,eAAA,CAAgB,IAAI,CAACM,IAAI,CAACO,KAAK,CAAA;IAC7C,MAAMC,SAASd,eAAA,CAAgB,IAAI,CAACM,IAAI,CAACQ,MAAM,CAAA;AAE/C,IAAA,IAAID,KAAA,EAAO;AACTD,MAAAA,MAAA,CAAOG,IAAI,CAAC,CAAA,OAAA,EAAUF,OAAO,CAAA;AAC/B,IAAA;AACA,IAAA,IAAIC,MAAA,EAAQ;AACVF,MAAAA,MAAA,CAAOG,IAAI,CAAC,CAAA,QAAA,EAAWD,QAAQ,CAAA;AACjC,IAAA;AAEA,IAAA,OAAOF,MAAA,CAAOI,IAAI,CAAC,IAAA,CAAA;AACrB,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,uRAAA,EAgBA;MAAAC,UAAA,EAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}