@pantool/components 1.0.0-alpha.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 (207) hide show
  1. package/README.md +80 -0
  2. package/dist/atoms/alert-dialog/alert-dialog.d.ts +7 -0
  3. package/dist/atoms/alert-dialog/alert-dialog.js +2 -0
  4. package/dist/atoms/alert-dialog/alert-dialog.js.map +1 -0
  5. package/dist/atoms/alert-dialog/index.d.ts +1 -0
  6. package/dist/atoms/alert-dialog/index.js +1 -0
  7. package/dist/atoms/button/button.css +18 -0
  8. package/dist/atoms/button/button.d.ts +16 -0
  9. package/dist/atoms/button/button.js +2 -0
  10. package/dist/atoms/button/button.js.map +1 -0
  11. package/dist/atoms/button/button.module.js +2 -0
  12. package/dist/atoms/button/button.module.js.map +1 -0
  13. package/dist/atoms/button/index.d.ts +1 -0
  14. package/dist/atoms/button/index.js +1 -0
  15. package/dist/atoms/checkbox/checkbox.css +119 -0
  16. package/dist/atoms/checkbox/checkbox.d.ts +53 -0
  17. package/dist/atoms/checkbox/checkbox.js +2 -0
  18. package/dist/atoms/checkbox/checkbox.js.map +1 -0
  19. package/dist/atoms/checkbox/checkbox.module.js +2 -0
  20. package/dist/atoms/checkbox/checkbox.module.js.map +1 -0
  21. package/dist/atoms/checkbox/index.d.ts +1 -0
  22. package/dist/atoms/checkbox/index.js +1 -0
  23. package/dist/atoms/combobox/combobox.css +302 -0
  24. package/dist/atoms/combobox/combobox.d.ts +115 -0
  25. package/dist/atoms/combobox/combobox.js +2 -0
  26. package/dist/atoms/combobox/combobox.js.map +1 -0
  27. package/dist/atoms/combobox/combobox.module.js +2 -0
  28. package/dist/atoms/combobox/combobox.module.js.map +1 -0
  29. package/dist/atoms/combobox/components/chip.js +2 -0
  30. package/dist/atoms/combobox/components/chip.js.map +1 -0
  31. package/dist/atoms/combobox/components/item.d.ts +17 -0
  32. package/dist/atoms/combobox/components/item.js +2 -0
  33. package/dist/atoms/combobox/components/item.js.map +1 -0
  34. package/dist/atoms/combobox/index.d.ts +1 -0
  35. package/dist/atoms/combobox/index.js +1 -0
  36. package/dist/atoms/condition-guard/condition-guard.d.ts +32 -0
  37. package/dist/atoms/condition-guard/condition-guard.js +2 -0
  38. package/dist/atoms/condition-guard/condition-guard.js.map +1 -0
  39. package/dist/atoms/condition-guard/index.js +1 -0
  40. package/dist/atoms/context-menu/context-menu.css +75 -0
  41. package/dist/atoms/context-menu/context-menu.d.ts +41 -0
  42. package/dist/atoms/context-menu/context-menu.js +2 -0
  43. package/dist/atoms/context-menu/context-menu.js.map +1 -0
  44. package/dist/atoms/context-menu/context-menu.module.js +2 -0
  45. package/dist/atoms/context-menu/context-menu.module.js.map +1 -0
  46. package/dist/atoms/context-menu/index.js +1 -0
  47. package/dist/atoms/dialog/dialog.d.ts +7 -0
  48. package/dist/atoms/dialog/dialog.js +2 -0
  49. package/dist/atoms/dialog/dialog.js.map +1 -0
  50. package/dist/atoms/dialog/index.d.ts +1 -0
  51. package/dist/atoms/dialog/index.js +1 -0
  52. package/dist/atoms/icon/icon.d.ts +14 -0
  53. package/dist/atoms/icon/icon.js +2 -0
  54. package/dist/atoms/icon/icon.js.map +1 -0
  55. package/dist/atoms/icon/index.d.ts +1 -0
  56. package/dist/atoms/icon/index.js +1 -0
  57. package/dist/atoms/icon-button/icon-button.css +12 -0
  58. package/dist/atoms/icon-button/icon-button.d.ts +14 -0
  59. package/dist/atoms/icon-button/icon-button.js +2 -0
  60. package/dist/atoms/icon-button/icon-button.js.map +1 -0
  61. package/dist/atoms/icon-button/icon-button.module.js +2 -0
  62. package/dist/atoms/icon-button/icon-button.module.js.map +1 -0
  63. package/dist/atoms/icon-button/index.d.ts +1 -0
  64. package/dist/atoms/icon-button/index.js +1 -0
  65. package/dist/atoms/index.d.ts +17 -0
  66. package/dist/atoms/index.js +1 -0
  67. package/dist/atoms/input/index.d.ts +1 -0
  68. package/dist/atoms/input/index.js +1 -0
  69. package/dist/atoms/input/input.css +29 -0
  70. package/dist/atoms/input/input.d.ts +39 -0
  71. package/dist/atoms/input/input.js +2 -0
  72. package/dist/atoms/input/input.js.map +1 -0
  73. package/dist/atoms/input/input.module.js +2 -0
  74. package/dist/atoms/input/input.module.js.map +1 -0
  75. package/dist/atoms/radio/index.d.ts +1 -0
  76. package/dist/atoms/radio/index.js +1 -0
  77. package/dist/atoms/radio/radio.css +142 -0
  78. package/dist/atoms/radio/radio.d.ts +40 -0
  79. package/dist/atoms/radio/radio.js +2 -0
  80. package/dist/atoms/radio/radio.js.map +1 -0
  81. package/dist/atoms/radio/radio.module.js +2 -0
  82. package/dist/atoms/radio/radio.module.js.map +1 -0
  83. package/dist/atoms/switch/index.d.ts +1 -0
  84. package/dist/atoms/switch/index.js +1 -0
  85. package/dist/atoms/switch/switch.css +68 -0
  86. package/dist/atoms/switch/switch.d.ts +19 -0
  87. package/dist/atoms/switch/switch.js +2 -0
  88. package/dist/atoms/switch/switch.js.map +1 -0
  89. package/dist/atoms/switch/switch.module.js +2 -0
  90. package/dist/atoms/switch/switch.module.js.map +1 -0
  91. package/dist/atoms/tabs/index.d.ts +3 -0
  92. package/dist/atoms/tabs/index.js +1 -0
  93. package/dist/atoms/tabs/tabs.css +92 -0
  94. package/dist/atoms/tabs/tabs.d.ts +43 -0
  95. package/dist/atoms/tabs/tabs.js +2 -0
  96. package/dist/atoms/tabs/tabs.js.map +1 -0
  97. package/dist/atoms/tabs/tabs.module.js +2 -0
  98. package/dist/atoms/tabs/tabs.module.js.map +1 -0
  99. package/dist/atoms/text/index.d.ts +1 -0
  100. package/dist/atoms/text/index.js +1 -0
  101. package/dist/atoms/text/text.css +273 -0
  102. package/dist/atoms/text/text.d.ts +18 -0
  103. package/dist/atoms/text/text.js +2 -0
  104. package/dist/atoms/text/text.js.map +1 -0
  105. package/dist/atoms/text/text.module.js +2 -0
  106. package/dist/atoms/text/text.module.js.map +1 -0
  107. package/dist/atoms/toast/index.d.ts +1 -0
  108. package/dist/atoms/toast/index.js +1 -0
  109. package/dist/atoms/toast/toast.css +151 -0
  110. package/dist/atoms/toast/toast.d.ts +11 -0
  111. package/dist/atoms/toast/toast.js +2 -0
  112. package/dist/atoms/toast/toast.js.map +1 -0
  113. package/dist/atoms/toast/toast.module.js +2 -0
  114. package/dist/atoms/toast/toast.module.js.map +1 -0
  115. package/dist/atoms/tooltip/index.d.ts +1 -0
  116. package/dist/atoms/tooltip/index.js +1 -0
  117. package/dist/atoms/tooltip/tooltip.css +92 -0
  118. package/dist/atoms/tooltip/tooltip.d.ts +50 -0
  119. package/dist/atoms/tooltip/tooltip.js +2 -0
  120. package/dist/atoms/tooltip/tooltip.js.map +1 -0
  121. package/dist/atoms/tooltip/tooltip.module.js +2 -0
  122. package/dist/atoms/tooltip/tooltip.module.js.map +1 -0
  123. package/dist/helpers/portal/context/hooks.d.ts +7 -0
  124. package/dist/helpers/portal/context/hooks.js +2 -0
  125. package/dist/helpers/portal/context/hooks.js.map +1 -0
  126. package/dist/helpers/portal/context/index.internal.d.ts +2 -0
  127. package/dist/helpers/portal/context/index.internal.js +1 -0
  128. package/dist/helpers/portal/context/portal-config.d.ts +12 -0
  129. package/dist/helpers/portal/context/portal-config.js +2 -0
  130. package/dist/helpers/portal/context/portal-config.js.map +1 -0
  131. package/dist/helpers/portal/context/provider.d.ts +11 -0
  132. package/dist/helpers/portal/context/provider.js +2 -0
  133. package/dist/helpers/portal/context/provider.js.map +1 -0
  134. package/dist/helpers/portal/index.d.ts +3 -0
  135. package/dist/helpers/portal/index.js +1 -0
  136. package/dist/helpers/portal/portal.d.ts +24 -0
  137. package/dist/helpers/portal/portal.js +2 -0
  138. package/dist/helpers/portal/portal.js.map +1 -0
  139. package/dist/index.d.ts +27 -0
  140. package/dist/index.js +1 -0
  141. package/dist/internals/base-button/base-button.css +262 -0
  142. package/dist/internals/base-button/base-button.d.ts +19 -0
  143. package/dist/internals/base-button/base-button.js +2 -0
  144. package/dist/internals/base-button/base-button.js.map +1 -0
  145. package/dist/internals/base-button/base-button.module.js +2 -0
  146. package/dist/internals/base-button/base-button.module.js.map +1 -0
  147. package/dist/internals/base-button/index.d.ts +1 -0
  148. package/dist/internals/base-button/index.js +1 -0
  149. package/dist/internals/base-dialog/base-dialog.css +74 -0
  150. package/dist/internals/base-dialog/base-dialog.d.ts +40 -0
  151. package/dist/internals/base-dialog/base-dialog.js +2 -0
  152. package/dist/internals/base-dialog/base-dialog.js.map +1 -0
  153. package/dist/internals/base-dialog/base-dialog.module.js +2 -0
  154. package/dist/internals/base-dialog/base-dialog.module.js.map +1 -0
  155. package/dist/internals/base-dialog/index.d.ts +1 -0
  156. package/dist/internals/base-dialog/index.js +1 -0
  157. package/dist/internals/base-field/base-field.css +115 -0
  158. package/dist/internals/base-field/base-field.d.ts +75 -0
  159. package/dist/internals/base-field/base-field.js +2 -0
  160. package/dist/internals/base-field/base-field.js.map +1 -0
  161. package/dist/internals/base-field/base-field.module.js +2 -0
  162. package/dist/internals/base-field/base-field.module.js.map +1 -0
  163. package/dist/internals/base-field/components/description.js +2 -0
  164. package/dist/internals/base-field/components/description.js.map +1 -0
  165. package/dist/internals/base-field/components/error.js +2 -0
  166. package/dist/internals/base-field/components/error.js.map +1 -0
  167. package/dist/internals/base-field/components/label.js +2 -0
  168. package/dist/internals/base-field/components/label.js.map +1 -0
  169. package/dist/internals/base-field/index.d.ts +1 -0
  170. package/dist/internals/base-field/index.js +1 -0
  171. package/dist/internals/base-svg/base-svg.css +137 -0
  172. package/dist/internals/base-svg/base-svg.d.ts +29 -0
  173. package/dist/internals/base-svg/base-svg.js +2 -0
  174. package/dist/internals/base-svg/base-svg.js.map +1 -0
  175. package/dist/internals/base-svg/base-svg.module.js +2 -0
  176. package/dist/internals/base-svg/base-svg.module.js.map +1 -0
  177. package/dist/internals/base-svg/index.d.ts +1 -0
  178. package/dist/internals/base-svg/index.js +1 -0
  179. package/dist/providers/alert-dialog-provider/alert-dialog-provider.d.ts +43 -0
  180. package/dist/providers/alert-dialog-provider/alert-dialog-provider.js +2 -0
  181. package/dist/providers/alert-dialog-provider/alert-dialog-provider.js.map +1 -0
  182. package/dist/providers/alert-dialog-provider/hooks.d.ts +16 -0
  183. package/dist/providers/alert-dialog-provider/hooks.js +2 -0
  184. package/dist/providers/alert-dialog-provider/hooks.js.map +1 -0
  185. package/dist/providers/alert-dialog-provider/index.d.ts +2 -0
  186. package/dist/providers/alert-dialog-provider/index.js +1 -0
  187. package/dist/providers/dialog-provider/dialog-provider.d.ts +43 -0
  188. package/dist/providers/dialog-provider/dialog-provider.js +2 -0
  189. package/dist/providers/dialog-provider/dialog-provider.js.map +1 -0
  190. package/dist/providers/dialog-provider/hooks.d.ts +16 -0
  191. package/dist/providers/dialog-provider/hooks.js +2 -0
  192. package/dist/providers/dialog-provider/hooks.js.map +1 -0
  193. package/dist/providers/dialog-provider/index.d.ts +2 -0
  194. package/dist/providers/dialog-provider/index.js +1 -0
  195. package/dist/providers/index.d.ts +8 -0
  196. package/dist/providers/index.js +1 -0
  197. package/dist/providers/toast-provider/index.d.ts +1 -0
  198. package/dist/providers/toast-provider/index.js +1 -0
  199. package/dist/providers/toast-provider/toast-provider.css +13 -0
  200. package/dist/providers/toast-provider/toast-provider.d.ts +124 -0
  201. package/dist/providers/toast-provider/toast-provider.js +2 -0
  202. package/dist/providers/toast-provider/toast-provider.js.map +1 -0
  203. package/dist/providers/toast-provider/toast-provider.module.js +2 -0
  204. package/dist/providers/toast-provider/toast-provider.module.js.map +1 -0
  205. package/dist/types.d.ts +43 -0
  206. package/dist/types.js +1 -0
  207. package/package.json +77 -0
@@ -0,0 +1,273 @@
1
+ .D5_2ra_root {
2
+ --txt-color: currentColor;
3
+ --txt-size: inherit;
4
+ --txt-weight: inherit;
5
+ --txt-line-height: inherit;
6
+ color: var(--txt-color);
7
+ font-size: var(--txt-size);
8
+ font-weight: var(--txt-weight);
9
+ font-family: var(--typography-typeface-ltr);
10
+ margin: 0;
11
+ padding: 0;
12
+ transition: color .2s ease-in-out;
13
+ }
14
+
15
+ .D5_2ra_root[data-display="inline"] {
16
+ display: inline;
17
+ }
18
+
19
+ .D5_2ra_root[data-display="block"] {
20
+ display: block;
21
+ }
22
+
23
+ .D5_2ra_root[data-display="inline-block"] {
24
+ display: inline-block;
25
+ }
26
+
27
+ .D5_2ra_root[data-align="left"] {
28
+ text-align: left;
29
+ }
30
+
31
+ .D5_2ra_root[data-align="right"] {
32
+ text-align: right;
33
+ }
34
+
35
+ .D5_2ra_root[data-align="center"] {
36
+ text-align: center;
37
+ }
38
+
39
+ .D5_2ra_root[data-align="justify"] {
40
+ text-align: justify;
41
+ }
42
+
43
+ .D5_2ra_root[data-align="start"] {
44
+ text-align: start;
45
+ }
46
+
47
+ .D5_2ra_root[data-align="end"] {
48
+ text-align: end;
49
+ }
50
+
51
+ .D5_2ra_root[data-no-wrap] {
52
+ white-space: nowrap;
53
+ overflow: hidden;
54
+ }
55
+
56
+ .D5_2ra_root[data-text-overflow="clip"] {
57
+ text-overflow: clip;
58
+ }
59
+
60
+ .D5_2ra_root[data-text-overflow="ellipsis"] {
61
+ text-overflow: ellipsis;
62
+ }
63
+
64
+ .D5_2ra_root[data-weight="100"] {
65
+ --txt-weight: 100 !important;
66
+ }
67
+
68
+ .D5_2ra_root[data-weight="200"] {
69
+ --txt-weight: 200 !important;
70
+ }
71
+
72
+ .D5_2ra_root[data-weight="300"] {
73
+ --txt-weight: 300 !important;
74
+ }
75
+
76
+ .D5_2ra_root[data-weight="400"] {
77
+ --txt-weight: 400 !important;
78
+ }
79
+
80
+ .D5_2ra_root[data-weight="500"] {
81
+ --txt-weight: 500 !important;
82
+ }
83
+
84
+ .D5_2ra_root[data-weight="600"] {
85
+ --txt-weight: 600 !important;
86
+ }
87
+
88
+ .D5_2ra_root[data-weight="700"] {
89
+ --txt-weight: 700 !important;
90
+ }
91
+
92
+ .D5_2ra_root[data-weight="800"] {
93
+ --txt-weight: 800 !important;
94
+ }
95
+
96
+ .D5_2ra_root[data-weight="900"] {
97
+ --txt-weight: 900 !important;
98
+ }
99
+
100
+ .D5_2ra_root[data-variant="h1"] {
101
+ --txt-size: var(--typography-heading-h1-size);
102
+ --txt-weight: var(--typography-heading-h1-weight);
103
+ }
104
+
105
+ .D5_2ra_root[data-variant="h2"] {
106
+ --txt-size: var(--typography-heading-h2-size);
107
+ --txt-weight: var(--typography-heading-h2-weight);
108
+ }
109
+
110
+ .D5_2ra_root[data-variant="h3"] {
111
+ --txt-size: var(--typography-heading-h3-size);
112
+ --txt-weight: var(--typography-heading-h3-weight);
113
+ }
114
+
115
+ .D5_2ra_root[data-variant="h4"] {
116
+ --txt-size: var(--typography-heading-h4-size);
117
+ --txt-weight: var(--typography-heading-h4-weight);
118
+ }
119
+
120
+ .D5_2ra_root[data-variant="h5"] {
121
+ --txt-size: var(--typography-heading-h5-size);
122
+ --txt-weight: var(--typography-heading-h5-weight);
123
+ }
124
+
125
+ .D5_2ra_root[data-variant="h6"] {
126
+ --txt-size: var(--typography-heading-h6-size);
127
+ --txt-weight: var(--typography-heading-h6-weight);
128
+ }
129
+
130
+ .D5_2ra_root[data-variant="subheading1"] {
131
+ --txt-size: var(--typography-subheading-1-size);
132
+ --txt-weight: var(--typography-subheading-1-weight);
133
+ }
134
+
135
+ .D5_2ra_root[data-variant="subheading2"] {
136
+ --txt-size: var(--typography-subheading-2-size);
137
+ --txt-weight: var(--typography-subheading-2-weight);
138
+ }
139
+
140
+ .D5_2ra_root[data-variant="body1"] {
141
+ --txt-size: var(--typography-body-1-size);
142
+ --txt-weight: var(--typography-body-1-weight);
143
+ }
144
+
145
+ .D5_2ra_root[data-variant="body2"] {
146
+ --txt-size: var(--typography-body-2-size);
147
+ --txt-weight: var(--typography-body-2-weight);
148
+ }
149
+
150
+ .D5_2ra_root[data-variant="caption"] {
151
+ --txt-size: var(--typography-caption-base-size);
152
+ --txt-weight: var(--typography-caption-base-weight);
153
+ }
154
+
155
+ .D5_2ra_root[data-color="normal"] {
156
+ --txt-color: var(--color-content-neutral-base);
157
+ }
158
+
159
+ .D5_2ra_root[data-color="secondary"] {
160
+ --txt-color: var(--color-content-neutral-secondary);
161
+ }
162
+
163
+ .D5_2ra_root[data-color="tertiary"] {
164
+ --txt-color: var(--color-content-neutral-tertiary);
165
+ }
166
+
167
+ .D5_2ra_root[data-color="muted"] {
168
+ --txt-color: var(--color-content-neutral-muted);
169
+ }
170
+
171
+ .D5_2ra_root[data-color="brand"] {
172
+ --txt-color: var(--color-content-brand-base);
173
+ }
174
+
175
+ .D5_2ra_root[data-color="brand-secondary"] {
176
+ --txt-color: var(--color-content-brand-secondary);
177
+ }
178
+
179
+ .D5_2ra_root[data-color="brand-tertiary"] {
180
+ --txt-color: var(--color-content-brand-tertiary);
181
+ }
182
+
183
+ .D5_2ra_root[data-color="brand-muted"] {
184
+ --txt-color: var(--color-content-brand-muted);
185
+ }
186
+
187
+ .D5_2ra_root[data-color="positive"] {
188
+ --txt-color: var(--color-content-positive-base);
189
+ }
190
+
191
+ .D5_2ra_root[data-color="positive-secondary"] {
192
+ --txt-color: var(--color-content-positive-secondary);
193
+ }
194
+
195
+ .D5_2ra_root[data-color="positive-tertiary"] {
196
+ --txt-color: var(--color-content-positive-tertiary);
197
+ }
198
+
199
+ .D5_2ra_root[data-color="positive-muted"] {
200
+ --txt-color: var(--color-content-positive-muted);
201
+ }
202
+
203
+ .D5_2ra_root[data-color="negative"] {
204
+ --txt-color: var(--color-content-negative-base);
205
+ }
206
+
207
+ .D5_2ra_root[data-color="negative-secondary"] {
208
+ --txt-color: var(--color-content-negative-secondary);
209
+ }
210
+
211
+ .D5_2ra_root[data-color="negative-tertiary"] {
212
+ --txt-color: var(--color-content-negative-tertiary);
213
+ }
214
+
215
+ .D5_2ra_root[data-color="negative-muted"] {
216
+ --txt-color: var(--color-content-negative-muted);
217
+ }
218
+
219
+ .D5_2ra_root[data-color="warn"] {
220
+ --txt-color: var(--color-content-warn-base);
221
+ }
222
+
223
+ .D5_2ra_root[data-color="warn-secondary"] {
224
+ --txt-color: var(--color-content-warn-secondary);
225
+ }
226
+
227
+ .D5_2ra_root[data-color="warn-tertiary"] {
228
+ --txt-color: var(--color-content-warn-tertiary);
229
+ }
230
+
231
+ .D5_2ra_root[data-color="warn-muted"] {
232
+ --txt-color: var(--color-content-warn-muted);
233
+ }
234
+
235
+ .D5_2ra_root[data-color="info"] {
236
+ --txt-color: var(--color-content-info-base);
237
+ }
238
+
239
+ .D5_2ra_root[data-color="info-secondary"] {
240
+ --txt-color: var(--color-content-info-secondary);
241
+ }
242
+
243
+ .D5_2ra_root[data-color="info-tertiary"] {
244
+ --txt-color: var(--color-content-info-tertiary);
245
+ }
246
+
247
+ .D5_2ra_root[data-color="info-muted"] {
248
+ --txt-color: var(--color-content-info-muted);
249
+ }
250
+
251
+ .D5_2ra_root[data-color="on-neutral"] {
252
+ --txt-color: var(--color-on-neutral);
253
+ }
254
+
255
+ .D5_2ra_root[data-color="on-brand"] {
256
+ --txt-color: var(--color-on-brand);
257
+ }
258
+
259
+ .D5_2ra_root[data-color="on-positive"] {
260
+ --txt-color: var(--color-on-positive);
261
+ }
262
+
263
+ .D5_2ra_root[data-color="on-negative"] {
264
+ --txt-color: var(--color-on-negative);
265
+ }
266
+
267
+ .D5_2ra_root[data-color="on-warn"] {
268
+ --txt-color: var(--color-on-warn);
269
+ }
270
+
271
+ .D5_2ra_root[data-color="on-info"] {
272
+ --txt-color: var(--color-on-info);
273
+ }
@@ -0,0 +1,18 @@
1
+ import { PolymorphicProps, WithBaseProps, WithColorProps } from "../../types.js";
2
+ import * as React from "react";
3
+
4
+ //#region src/atoms/text/text.d.ts
5
+ type TextVariant = "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "subheading1" | "subheading2" | "body1" | "body2" | "caption";
6
+ type TextColor = "currentcolor" | "normal" | "secondary" | "tertiary" | "muted" | "brand" | "brand-secondary" | "brand-tertiary" | "brand-muted" | "positive" | "positive-secondary" | "positive-tertiary" | "positive-muted" | "negative" | "negative-secondary" | "negative-tertiary" | "negative-muted" | "warn" | "warn-secondary" | "warn-tertiary" | "warn-muted" | "info" | "info-secondary" | "info-tertiary" | "info-muted" | "on-neutral" | "on-brand" | "on-positive" | "on-negative" | "on-warn" | "on-info";
7
+ type TextProps<E extends React.ElementType = "span"> = PolymorphicProps<E, WithBaseProps<WithColorProps<{
8
+ /** Applies the theme typography styles. */variant: TextVariant; /** Set the text-align on the text. */
9
+ align?: "left" | "center" | "right" | "justify" | "start" | "end"; /** Set the font-weight on the text. Overrides variant default if provided. */
10
+ weight?: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900; /** Set the display property. */
11
+ display?: "inline" | "block" | "inline-block"; /** Set the text-overflow strategy. @default "ellipsis" */
12
+ textOverflow?: "clip" | "ellipsis"; /** If true, text will not wrap and will overflow based on `textOverflow`. @default false */
13
+ noWrap?: boolean;
14
+ }>>>;
15
+ declare const Text: <E extends React.ElementType = "span">(props: TextProps<E>) => import("react/jsx-runtime").JSX.Element;
16
+ //#endregion
17
+ export { Text, TextColor, TextProps, TextVariant };
18
+ //# sourceMappingURL=text.d.ts.map
@@ -0,0 +1,2 @@
1
+ import e from"./text.module.js";import"react";import{jsx as t}from"react/jsx-runtime";const n=n=>{let{children:r,className:i,variant:a,align:o,display:s,weight:c,as:l=`span`,color:u=`currentcolor`,noWrap:d=!1,textOverflow:f=`ellipsis`,...p}=n;return t(l,{...p,className:`${e.root} ${i||``}`.trim(),"data-variant":a,"data-color":u,"data-align":o,"data-weight":c,"data-display":s,"data-text-overflow":f,"data-no-wrap":d?``:void 0,children:r})};export{n as Text};
2
+ //# sourceMappingURL=text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","names":["styles"],"sources":["../../../src/atoms/text/text.tsx"],"sourcesContent":["import * as React from \"react\";\nimport type {\n PolymorphicProps,\n WithBaseProps,\n WithColorProps,\n} from \"../../types.ts\";\nimport styles from \"./text.module.css\";\n\nexport type TextVariant =\n | \"h1\"\n | \"h2\"\n | \"h3\"\n | \"h4\"\n | \"h5\"\n | \"h6\"\n | \"subheading1\"\n | \"subheading2\"\n | \"body1\"\n | \"body2\"\n | \"caption\";\n\nexport type TextColor =\n | \"currentcolor\"\n | \"normal\"\n | \"secondary\"\n | \"tertiary\"\n | \"muted\"\n | \"brand\"\n | \"brand-secondary\"\n | \"brand-tertiary\"\n | \"brand-muted\"\n | \"positive\"\n | \"positive-secondary\"\n | \"positive-tertiary\"\n | \"positive-muted\"\n | \"negative\"\n | \"negative-secondary\"\n | \"negative-tertiary\"\n | \"negative-muted\"\n | \"warn\"\n | \"warn-secondary\"\n | \"warn-tertiary\"\n | \"warn-muted\"\n | \"info\"\n | \"info-secondary\"\n | \"info-tertiary\"\n | \"info-muted\"\n | \"on-neutral\"\n | \"on-brand\"\n | \"on-positive\"\n | \"on-negative\"\n | \"on-warn\"\n | \"on-info\";\n\nexport type TextProps<E extends React.ElementType = \"span\"> = PolymorphicProps<\n E,\n WithBaseProps<\n WithColorProps<{\n /** Applies the theme typography styles. */\n variant: TextVariant;\n /** Set the text-align on the text. */\n align?: \"left\" | \"center\" | \"right\" | \"justify\" | \"start\" | \"end\";\n /** Set the font-weight on the text. Overrides variant default if provided. */\n weight?: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900;\n /** Set the display property. */\n display?: \"inline\" | \"block\" | \"inline-block\";\n /** Set the text-overflow strategy. @default \"ellipsis\" */\n textOverflow?: \"clip\" | \"ellipsis\";\n /** If true, text will not wrap and will overflow based on `textOverflow`. @default false */\n noWrap?: boolean;\n }>\n >\n>;\n\nexport const Text = <E extends React.ElementType = \"span\">(\n props: TextProps<E>,\n) => {\n const {\n children,\n className,\n variant,\n align,\n display,\n weight,\n as: Root = \"span\",\n color = \"currentcolor\",\n noWrap = false,\n textOverflow = \"ellipsis\",\n ...otherProps\n } = props as any; // Type asserted to any to satisfy Polymorphic wrapper internals\n\n return (\n <Root\n {...otherProps}\n className={`${styles[\"root\"]} ${className || \"\"}`.trim()}\n data-variant={variant}\n data-color={color}\n data-align={align}\n data-weight={weight}\n data-display={display}\n data-text-overflow={textOverflow}\n data-no-wrap={noWrap ? \"\" : undefined}\n >\n {children}\n </Root>\n );\n};\n"],"mappings":"sFA0EA,MAAa,EACX,GACG,CACH,GAAM,CACJ,WACA,YACA,UACA,QACA,UACA,SACA,GAAI,EAAO,OACX,QAAQ,eACR,SAAS,GACT,eAAe,WACf,GAAG,GACD,EAEJ,OACE,EAAC,EAAD,CACE,GAAI,EACJ,UAAW,GAAGA,EAAO,KAAQ,GAAG,GAAa,KAAK,KAAK,EACvD,eAAc,EACd,aAAY,EACZ,aAAY,EACZ,cAAa,EACb,eAAc,EACd,qBAAoB,EACpB,eAAc,EAAS,GAAK,IAAA,GAE3B,UACG,CAAA,CAEV"}
@@ -0,0 +1,2 @@
1
+ var e={root:`D5_2ra_root`};export{e as default};
2
+ //# sourceMappingURL=text.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.module.js","names":[],"sources":["../../../src/atoms/text/text.module.css"],"sourcesContent":[".root {\n /* Internal local variables */\n --txt-color: currentColor;\n --txt-size: inherit;\n --txt-weight: inherit;\n --txt-line-height: inherit;\n\n /* Base properties mapped to local variables */\n color: var(--txt-color);\n font-size: var(--txt-size);\n font-weight: var(--txt-weight);\n /* line-height: var(--txt-line-height); */\n\n /* Defaults */\n margin: 0;\n padding: 0;\n font-family: var(--typography-typeface-ltr);\n transition: color 0.2s ease-in-out;\n}\n\n/* --- Layout & Alignment --- */\n.root[data-display=\"inline\"] {\n display: inline;\n}\n.root[data-display=\"block\"] {\n display: block;\n}\n.root[data-display=\"inline-block\"] {\n display: inline-block;\n}\n\n.root[data-align=\"left\"] {\n text-align: left;\n}\n.root[data-align=\"right\"] {\n text-align: right;\n}\n.root[data-align=\"center\"] {\n text-align: center;\n}\n.root[data-align=\"justify\"] {\n text-align: justify;\n}\n.root[data-align=\"start\"] {\n text-align: start;\n}\n.root[data-align=\"end\"] {\n text-align: end;\n}\n\n/* --- Text Overflow --- */\n.root[data-no-wrap] {\n white-space: nowrap;\n overflow: hidden;\n}\n.root[data-text-overflow=\"clip\"] {\n text-overflow: clip;\n}\n.root[data-text-overflow=\"ellipsis\"] {\n text-overflow: ellipsis;\n}\n\n/* --- Custom Weights (Overrides variant defaults) --- */\n.root[data-weight=\"100\"] {\n --txt-weight: 100 !important;\n}\n.root[data-weight=\"200\"] {\n --txt-weight: 200 !important;\n}\n.root[data-weight=\"300\"] {\n --txt-weight: 300 !important;\n}\n.root[data-weight=\"400\"] {\n --txt-weight: 400 !important;\n}\n.root[data-weight=\"500\"] {\n --txt-weight: 500 !important;\n}\n.root[data-weight=\"600\"] {\n --txt-weight: 600 !important;\n}\n.root[data-weight=\"700\"] {\n --txt-weight: 700 !important;\n}\n.root[data-weight=\"800\"] {\n --txt-weight: 800 !important;\n}\n.root[data-weight=\"900\"] {\n --txt-weight: 900 !important;\n}\n\n/* --- Typography Variants --- */\n.root[data-variant=\"h1\"] {\n --txt-size: var(--typography-heading-h1-size);\n --txt-weight: var(--typography-heading-h1-weight);\n /* --txt-line-height: var(--typography-heading-h1-height); */\n}\n.root[data-variant=\"h2\"] {\n --txt-size: var(--typography-heading-h2-size);\n --txt-weight: var(--typography-heading-h2-weight);\n /* --txt-line-height: var(--typography-heading-h2-height); */\n}\n.root[data-variant=\"h3\"] {\n --txt-size: var(--typography-heading-h3-size);\n --txt-weight: var(--typography-heading-h3-weight);\n /* --txt-line-height: var(--typography-heading-h3-height); */\n}\n.root[data-variant=\"h4\"] {\n --txt-size: var(--typography-heading-h4-size);\n --txt-weight: var(--typography-heading-h4-weight);\n /* --txt-line-height: var(--typography-heading-h4-height); */\n}\n.root[data-variant=\"h5\"] {\n --txt-size: var(--typography-heading-h5-size);\n --txt-weight: var(--typography-heading-h5-weight);\n /* --txt-line-height: var(--typography-heading-h5-height); */\n}\n.root[data-variant=\"h6\"] {\n --txt-size: var(--typography-heading-h6-size);\n --txt-weight: var(--typography-heading-h6-weight);\n /* --txt-line-height: var(--typography-heading-h6-height); */\n}\n.root[data-variant=\"subheading1\"] {\n --txt-size: var(--typography-subheading-1-size);\n --txt-weight: var(--typography-subheading-1-weight);\n /* --txt-line-height: var(--typography-subheading-1-height); */\n}\n.root[data-variant=\"subheading2\"] {\n --txt-size: var(--typography-subheading-2-size);\n --txt-weight: var(--typography-subheading-2-weight);\n /* --txt-line-height: var(--typography-subheading-2-height); */\n}\n.root[data-variant=\"body1\"] {\n --txt-size: var(--typography-body-1-size);\n --txt-weight: var(--typography-body-1-weight);\n /* --txt-line-height: var(--typography-body-1-height); */\n}\n.root[data-variant=\"body2\"] {\n --txt-size: var(--typography-body-2-size);\n --txt-weight: var(--typography-body-2-weight);\n /* --txt-line-height: var(--typography-body-2-height); */\n}\n.root[data-variant=\"caption\"] {\n --txt-size: var(--typography-caption-base-size);\n --txt-weight: var(--typography-caption-base-weight);\n /* --txt-line-height: var(--typography-caption-base-height); */\n}\n\n/* --- Color Variants --- */\n.root[data-color=\"normal\"] {\n --txt-color: var(--color-content-neutral-base);\n}\n.root[data-color=\"secondary\"] {\n --txt-color: var(--color-content-neutral-secondary);\n}\n.root[data-color=\"tertiary\"] {\n --txt-color: var(--color-content-neutral-tertiary);\n}\n.root[data-color=\"muted\"] {\n --txt-color: var(--color-content-neutral-muted);\n}\n\n.root[data-color=\"brand\"] {\n --txt-color: var(--color-content-brand-base);\n}\n.root[data-color=\"brand-secondary\"] {\n --txt-color: var(--color-content-brand-secondary);\n}\n.root[data-color=\"brand-tertiary\"] {\n --txt-color: var(--color-content-brand-tertiary);\n}\n.root[data-color=\"brand-muted\"] {\n --txt-color: var(--color-content-brand-muted);\n}\n\n.root[data-color=\"positive\"] {\n --txt-color: var(--color-content-positive-base);\n}\n.root[data-color=\"positive-secondary\"] {\n --txt-color: var(--color-content-positive-secondary);\n}\n.root[data-color=\"positive-tertiary\"] {\n --txt-color: var(--color-content-positive-tertiary);\n}\n.root[data-color=\"positive-muted\"] {\n --txt-color: var(--color-content-positive-muted);\n}\n\n.root[data-color=\"negative\"] {\n --txt-color: var(--color-content-negative-base);\n}\n.root[data-color=\"negative-secondary\"] {\n --txt-color: var(--color-content-negative-secondary);\n}\n.root[data-color=\"negative-tertiary\"] {\n --txt-color: var(--color-content-negative-tertiary);\n}\n.root[data-color=\"negative-muted\"] {\n --txt-color: var(--color-content-negative-muted);\n}\n\n.root[data-color=\"warn\"] {\n --txt-color: var(--color-content-warn-base);\n}\n.root[data-color=\"warn-secondary\"] {\n --txt-color: var(--color-content-warn-secondary);\n}\n.root[data-color=\"warn-tertiary\"] {\n --txt-color: var(--color-content-warn-tertiary);\n}\n.root[data-color=\"warn-muted\"] {\n --txt-color: var(--color-content-warn-muted);\n}\n\n.root[data-color=\"info\"] {\n --txt-color: var(--color-content-info-base);\n}\n.root[data-color=\"info-secondary\"] {\n --txt-color: var(--color-content-info-secondary);\n}\n.root[data-color=\"info-tertiary\"] {\n --txt-color: var(--color-content-info-tertiary);\n}\n.root[data-color=\"info-muted\"] {\n --txt-color: var(--color-content-info-muted);\n}\n\n/* On-Backgrounds */\n.root[data-color=\"on-neutral\"] {\n --txt-color: var(--color-on-neutral);\n}\n.root[data-color=\"on-brand\"] {\n --txt-color: var(--color-on-brand);\n}\n.root[data-color=\"on-positive\"] {\n --txt-color: var(--color-on-positive);\n}\n.root[data-color=\"on-negative\"] {\n --txt-color: var(--color-on-negative);\n}\n.root[data-color=\"on-warn\"] {\n --txt-color: var(--color-on-warn);\n}\n.root[data-color=\"on-info\"] {\n --txt-color: var(--color-on-info);\n}\n"],"mappings":"AAEA,IAAA,EAAc,CAAA,KAAC,aAAA"}
@@ -0,0 +1 @@
1
+ import { Toast, ToastData, ToastProps } from "./toast.js";
@@ -0,0 +1 @@
1
+ import"./toast.js";
@@ -0,0 +1,151 @@
1
+ .dLl3pG_root {
2
+ --gap: .75rem;
3
+ --peek: .75rem;
4
+ --scale: calc(max(0, 1 - (var(--toast-index) * .1)));
5
+ --shrink: calc(1 - var(--scale));
6
+ --height: var(--toast-frontmost-height, var(--toast-height));
7
+ --offset-y: calc(var(--toast-offset-y) * -1 + (var(--toast-index) * var(--gap) * -1) +
8
+ var(--toast-swipe-movement-y));
9
+ --background: var(--color-surface-secondary);
10
+ --foreground: var(--color-content-neutral-base);
11
+ --border: var(--color-border-primary);
12
+ box-sizing: border-box;
13
+ border: 1px solid var(--border);
14
+ background-color: var(--background);
15
+ width: 100%;
16
+ color: var(--foreground);
17
+ transform-origin: bottom;
18
+ border-radius: var(--spacing-sm);
19
+ -webkit-user-select: none;
20
+ user-select: none;
21
+ cursor: default;
22
+ z-index: calc(1000 - var(--toast-index));
23
+ height: var(--height);
24
+ transform: translateX(var(--toast-swipe-movement-x))
25
+ translateY(calc(var(--toast-swipe-movement-y) - (var(--toast-index) * var(--peek)) -
26
+ (var(--shrink) * var(--height))))
27
+ scale(var(--scale));
28
+ margin: 0 0 0 auto;
29
+ transition: transform .5s cubic-bezier(.22, 1, .36, 1), opacity .5s, height .15s;
30
+ position: absolute;
31
+ bottom: 0;
32
+ left: auto;
33
+ right: 0;
34
+
35
+ &[data-expanded] {
36
+ transform: translateX(var(--toast-swipe-movement-x))
37
+ translateY(var(--offset-y));
38
+ height: var(--toast-height);
39
+ }
40
+
41
+ &[data-starting-style], &[data-ending-style] {
42
+ transform: translateY(150%);
43
+ }
44
+
45
+ &[data-limited] {
46
+ opacity: 0;
47
+ }
48
+
49
+ &[data-ending-style] {
50
+ opacity: 0;
51
+
52
+ &[data-swipe-direction="up"] {
53
+ transform: translateY(calc(var(--toast-swipe-movement-y) - 150%));
54
+ }
55
+
56
+ &[data-swipe-direction="left"] {
57
+ transform: translateX(calc(var(--toast-swipe-movement-x) - 150%))
58
+ translateY(var(--offset-y));
59
+ }
60
+
61
+ &[data-swipe-direction="right"] {
62
+ transform: translateX(calc(var(--toast-swipe-movement-x) + 150%))
63
+ translateY(var(--offset-y));
64
+ }
65
+
66
+ &[data-swipe-direction="down"] {
67
+ transform: translateY(calc(var(--toast-swipe-movement-y) + 150%));
68
+ }
69
+ }
70
+
71
+ &:after {
72
+ content: "";
73
+ width: 100%;
74
+ height: calc(var(--gap) + 1px);
75
+ position: absolute;
76
+ top: 100%;
77
+ left: 0;
78
+ }
79
+
80
+ &:focus-visible {
81
+ outline-style: solid;
82
+ outline-width: var(--stroke-focus-ring);
83
+ outline-color: var(--color-action-info-base);
84
+ outline-offset: var(--spacing-xxs);
85
+ }
86
+
87
+ &[data-color="neutral"] {
88
+ --background: var(--color-action-neutral-base);
89
+ --foreground: var(--color-on-neutral);
90
+ }
91
+
92
+ &[data-color="positive"] {
93
+ --background: var(--color-action-positive-base);
94
+ --foreground: var(--color-on-positive);
95
+ }
96
+
97
+ &[data-color="negative"] {
98
+ --background: var(--color-action-negative-base);
99
+ --foreground: var(--color-on-negative);
100
+ }
101
+
102
+ &[data-color="warn"] {
103
+ --background: var(--color-action-warn-base);
104
+ --foreground: var(--color-on-warn);
105
+ }
106
+
107
+ &[data-color="info"] {
108
+ --background: var(--color-action-info-base);
109
+ --foreground: var(--color-on-info);
110
+ }
111
+ }
112
+
113
+ .dLl3pG_content {
114
+ box-sizing: border-box;
115
+ align-items: center;
116
+ gap: 1rem;
117
+ height: 100%;
118
+ padding: .75rem;
119
+ transition: opacity .25s cubic-bezier(.22, 1, .36, 1);
120
+ display: flex;
121
+ overflow: hidden;
122
+
123
+ &[data-behind] {
124
+ opacity: 0;
125
+ }
126
+
127
+ &[data-expanded] {
128
+ opacity: 1;
129
+ }
130
+ }
131
+
132
+ .dLl3pG_text {
133
+ flex-direction: column;
134
+ flex: 1;
135
+ gap: .25rem;
136
+ min-width: 0;
137
+ display: flex;
138
+ }
139
+
140
+ .dLl3pG_title {
141
+ margin: 0;
142
+ font-size: .875rem;
143
+ font-weight: 700;
144
+ line-height: 1.25rem;
145
+ }
146
+
147
+ .dLl3pG_description {
148
+ margin: 0;
149
+ font-size: .875rem;
150
+ line-height: 1.25rem;
151
+ }
@@ -0,0 +1,11 @@
1
+ import { ToastObject } from "@base-ui/react/toast";
2
+
3
+ //#region src/atoms/toast/toast.d.ts
4
+ type ToastData = {
5
+ color: "neutral" | "info" | "warn" | "negative" | "positive" | "brand";
6
+ };
7
+ type ToastProps = ToastObject<ToastData>;
8
+ declare const Toast$1: (props: ToastProps) => import("react/jsx-runtime").JSX.Element;
9
+ //#endregion
10
+ export { Toast$1 as Toast, ToastData, ToastProps };
11
+ //# sourceMappingURL=toast.d.ts.map
@@ -0,0 +1,2 @@
1
+ import{Text as e}from"../text/text.js";import"../text/index.js";import{Icon as t}from"../icon/icon.js";import"../icon/index.js";import{IconButton as n}from"../icon-button/icon-button.js";import"../icon-button/index.js";import r from"./toast.module.js";import{jsx as i,jsxs as a}from"react/jsx-runtime";import{mdiClose as o}from"@mdi/js";import{Toast as s}from"@base-ui/react/toast";const c=c=>{let{id:l,title:u,description:d,data:f}=c,p=f?.color||`neutral`;return i(s.Root,{"data-color":p,toast:c,className:r.root,children:a(s.Content,{className:r.content,children:[a(`div`,{className:r.text,children:[i(e,{as:`h2`,variant:`h6`,children:u}),i(e,{as:`p`,variant:`body1`,children:d})]}),i(s.Close,{render:i(n,{label:`close`,color:p,icon:i(t,{data:o})})})]})},l)};export{c as Toast};
2
+ //# sourceMappingURL=toast.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast.js","names":["Toast","BaseUIToast","styles"],"sources":["../../../src/atoms/toast/toast.tsx"],"sourcesContent":["import { Toast as BaseUIToast, type ToastObject } from \"@base-ui/react/toast\";\nimport { mdiClose } from \"@mdi/js\";\nimport { Icon } from \"../icon\";\nimport { IconButton } from \"../icon-button\";\nimport { Text } from \"../text\";\nimport styles from \"./toast.module.css\";\n\nexport type ToastData = {\n color: \"neutral\" | \"info\" | \"warn\" | \"negative\" | \"positive\" | \"brand\";\n};\n\nexport type ToastProps = ToastObject<ToastData>;\n\nexport const Toast = (props: ToastProps) => {\n const { id, title, description, data } = props;\n const color = data?.color || \"neutral\";\n return (\n <BaseUIToast.Root\n data-color={color}\n key={id}\n toast={props}\n className={styles[\"root\"]}\n >\n <BaseUIToast.Content className={styles[\"content\"]}>\n <div className={styles[\"text\"]}>\n <Text\n as=\"h2\"\n variant=\"h6\"\n >\n {title}\n </Text>\n <Text\n as=\"p\"\n variant=\"body1\"\n >\n {description}\n </Text>\n </div>\n\n <BaseUIToast.Close\n render={\n <IconButton\n label=\"close\"\n color={color}\n icon={<Icon data={mdiClose} />}\n />\n }\n />\n </BaseUIToast.Content>\n </BaseUIToast.Root>\n );\n};\n"],"mappings":"8XAaA,MAAaA,EAAS,GAAsB,CAC1C,GAAM,CAAE,KAAI,QAAO,cAAa,QAAS,EACnC,EAAQ,GAAM,OAAS,UAC7B,OACE,EAACC,EAAY,KAAb,CACE,aAAY,EAEZ,MAAO,EACP,UAAWC,EAAO,cAElB,EAACD,EAAY,QAAb,CAAqB,UAAWC,EAAO,iBAAvC,CACE,EAAC,MAAD,CAAK,UAAWA,EAAO,cAAvB,CACE,EAAC,EAAD,CACE,GAAG,KACH,QAAQ,cAEP,CACG,CAAA,EACN,EAAC,EAAD,CACE,GAAG,IACH,QAAQ,iBAEP,CACG,CAAA,CACH,IAEL,EAACD,EAAY,MAAb,CACE,OACE,EAAC,EAAD,CACE,MAAM,QACC,QACP,KAAM,EAAC,EAAD,CAAM,KAAM,CAAW,CAAA,CAC9B,CAAA,CAEJ,CAAA,CACkB,GACL,EA9BX,CA8BW,CAEtB"}
@@ -0,0 +1,2 @@
1
+ var e={content:`dLl3pG_content`,description:`dLl3pG_description`,root:`dLl3pG_root`,text:`dLl3pG_text`,title:`dLl3pG_title`};export{e as default};
2
+ //# sourceMappingURL=toast.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast.module.js","names":[],"sources":["../../../src/atoms/toast/toast.module.css"],"sourcesContent":[".root {\n --gap: 0.75rem;\n --peek: 0.75rem;\n --scale: calc(max(0, 1 - (var(--toast-index) * 0.1)));\n --shrink: calc(1 - var(--scale));\n --height: var(--toast-frontmost-height, var(--toast-height));\n --offset-y: calc(\n var(--toast-offset-y) * -1 + (var(--toast-index) * var(--gap) * -1) +\n var(--toast-swipe-movement-y)\n );\n --background: var(--color-surface-secondary);\n --foreground: var(--color-content-neutral-base);\n --border: var(--color-border-primary);\n\n position: absolute;\n right: 0;\n margin: 0 auto;\n box-sizing: border-box;\n width: 100%;\n border: 1px solid var(--border);\n background-color: var(--background);\n color: var(--foreground);\n transform-origin: bottom center;\n border-radius: var(--spacing-sm);\n bottom: 0;\n left: auto;\n margin-right: 0;\n -webkit-user-select: none;\n user-select: none;\n transition:\n transform 0.5s cubic-bezier(0.22, 1, 0.36, 1),\n opacity 0.5s,\n height 0.15s;\n cursor: default;\n z-index: calc(1000 - var(--toast-index));\n height: var(--height);\n transform: translateX(var(--toast-swipe-movement-x))\n translateY(\n calc(\n var(--toast-swipe-movement-y) - (var(--toast-index) * var(--peek)) -\n (var(--shrink) * var(--height))\n )\n )\n scale(var(--scale));\n\n &[data-expanded] {\n transform: translateX(var(--toast-swipe-movement-x))\n translateY(var(--offset-y));\n height: var(--toast-height);\n }\n\n &[data-starting-style],\n &[data-ending-style] {\n transform: translateY(150%);\n }\n\n &[data-limited] {\n opacity: 0;\n }\n\n &[data-ending-style] {\n opacity: 0;\n\n &[data-swipe-direction=\"up\"] {\n transform: translateY(calc(var(--toast-swipe-movement-y) - 150%));\n }\n &[data-swipe-direction=\"left\"] {\n transform: translateX(calc(var(--toast-swipe-movement-x) - 150%))\n translateY(var(--offset-y));\n }\n &[data-swipe-direction=\"right\"] {\n transform: translateX(calc(var(--toast-swipe-movement-x) + 150%))\n translateY(var(--offset-y));\n }\n &[data-swipe-direction=\"down\"] {\n transform: translateY(calc(var(--toast-swipe-movement-y) + 150%));\n }\n }\n\n &::after {\n content: \"\";\n position: absolute;\n width: 100%;\n top: 100%;\n left: 0;\n height: calc(var(--gap) + 1px);\n }\n\n &:focus-visible {\n outline-style: solid;\n outline-width: var(--stroke-focus-ring);\n outline-color: var(--color-action-info-base);\n outline-offset: var(--spacing-xxs);\n }\n\n &[data-color=\"neutral\"] {\n --background: var(--color-action-neutral-base);\n --foreground: var(--color-on-neutral);\n }\n &[data-color=\"positive\"] {\n --background: var(--color-action-positive-base);\n --foreground: var(--color-on-positive);\n }\n &[data-color=\"negative\"] {\n --background: var(--color-action-negative-base);\n --foreground: var(--color-on-negative);\n }\n &[data-color=\"warn\"] {\n --background: var(--color-action-warn-base);\n --foreground: var(--color-on-warn);\n }\n &[data-color=\"info\"] {\n --background: var(--color-action-info-base);\n --foreground: var(--color-on-info);\n }\n}\n\n.content {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n gap: 1rem;\n height: 100%;\n padding: 0.75rem;\n overflow: hidden;\n transition: opacity 0.25s cubic-bezier(0.22, 1, 0.36, 1);\n\n &[data-behind] {\n opacity: 0;\n }\n\n &[data-expanded] {\n opacity: 1;\n }\n}\n\n.text {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n min-width: 0;\n flex: 1;\n}\n\n.title {\n font-weight: 700;\n font-size: 0.875rem;\n line-height: 1.25rem;\n margin: 0;\n}\n\n.description {\n font-size: 0.875rem;\n line-height: 1.25rem;\n margin: 0;\n}\n"],"mappings":"AAUA,IAAA,EAAe,CAAC,QAAM,iBAAc,YAAA,qBAAA,KAAA,cAAA,KAAA,cAAA,MAAA,cAAA"}
@@ -0,0 +1 @@
1
+ import { Tooltip, TooltipProps, TooltipProvider, TooltipProviderProps } from "./tooltip.js";
@@ -0,0 +1 @@
1
+ import"./tooltip.js";
@@ -0,0 +1,92 @@
1
+ .o4Okuq_trigger {
2
+ border: 0;
3
+ outline: none;
4
+ margin: 0;
5
+ padding: 0;
6
+ }
7
+
8
+ .o4Okuq_trigger:focus-visible {
9
+ outline-style: solid;
10
+ outline-width: var(--stroke-focus-ring);
11
+ outline-color: var(--color-action-info-base);
12
+ outline-offset: var(--spacing-xxs);
13
+ }
14
+
15
+ .o4Okuq_popup {
16
+ box-sizing: border-box;
17
+ z-index: 1;
18
+ max-width: 20rem;
19
+ padding: var(--spacing-xs) var(--spacing-sm);
20
+ border-style: solid;
21
+ border-width: .0625rem;
22
+ border-color: var(--color-border-primary);
23
+ border-radius: var(--spacing-xs);
24
+ background-color: var(--color-surface-base);
25
+ color: var(--color-content-neutral-base);
26
+ transform-origin: var(--transform-origin);
27
+ flex-direction: column;
28
+ transition: opacity .1s ease-out, scale .1s ease-out;
29
+ display: flex;
30
+ position: relative;
31
+ box-shadow: 0 .25rem .75rem #0000001f;
32
+ }
33
+
34
+ .o4Okuq_popup[data-starting-style], .o4Okuq_popup[data-ending-style] {
35
+ opacity: 0;
36
+ scale: .98;
37
+ }
38
+
39
+ .o4Okuq_popup[data-instant] {
40
+ transition: none;
41
+ }
42
+
43
+ .o4Okuq_viewport {
44
+ font-family: var(--typography-typeface-ltr);
45
+ font-size: var(--typography-caption-base-size);
46
+ color: inherit;
47
+ line-height: 1.4;
48
+ }
49
+
50
+ .o4Okuq_arrow {
51
+ width: .75rem;
52
+ height: .375rem;
53
+ display: block;
54
+ position: relative;
55
+ overflow: clip;
56
+ }
57
+
58
+ .o4Okuq_arrow[data-side="top"] {
59
+ bottom: -.375rem;
60
+ rotate: 180deg;
61
+ }
62
+
63
+ .o4Okuq_arrow[data-side="bottom"] {
64
+ top: -.375rem;
65
+ rotate: 0deg;
66
+ }
67
+
68
+ .o4Okuq_arrow[data-side="left"] {
69
+ right: -.5625rem;
70
+ rotate: 90deg;
71
+ }
72
+
73
+ .o4Okuq_arrow[data-side="right"] {
74
+ left: -.5625rem;
75
+ rotate: -90deg;
76
+ }
77
+
78
+ .o4Okuq_arrow:before {
79
+ content: "";
80
+ box-sizing: border-box;
81
+ border-style: solid;
82
+ border-width: .0625rem;
83
+ border-color: var(--color-border-primary);
84
+ background-color: var(--color-surface-base);
85
+ width: .53033rem;
86
+ height: .53033rem;
87
+ display: block;
88
+ position: absolute;
89
+ bottom: 0;
90
+ left: 50%;
91
+ transform: translate(-50%, 50%) rotate(45deg);
92
+ }
@@ -0,0 +1,50 @@
1
+ import * as React from "react";
2
+ import { Tooltip } from "@base-ui/react/tooltip";
3
+
4
+ //#region src/atoms/tooltip/tooltip.d.ts
5
+ type TooltipProps = Omit<Tooltip.Root.Props, "children"> & {
6
+ /**
7
+ * The trigger element.
8
+ * Should be a single React element that can accept props/refs (e.g. button).
9
+ */
10
+ children: React.ReactElement;
11
+ /**
12
+ * Tooltip content.
13
+ */
14
+ content: React.ReactNode;
15
+ /**
16
+ * Distance from trigger.
17
+ */
18
+ sideOffset?: number;
19
+ /**
20
+ * Whether to render the arrow.
21
+ */
22
+ arrow?: boolean;
23
+ /**
24
+ * Props forwarded to BaseTooltip.Popup.
25
+ */
26
+ popupProps?: Omit<Tooltip.Popup.Props, "children" | "className">;
27
+ /**
28
+ * Class name applied to the popup.
29
+ */
30
+ popupClassName?: string;
31
+ /**
32
+ * Class name applied to the arrow.
33
+ */
34
+ arrowClassName?: string;
35
+ };
36
+ declare function Tooltip$1({
37
+ children,
38
+ content,
39
+ sideOffset,
40
+ arrow,
41
+ popupProps,
42
+ popupClassName,
43
+ arrowClassName,
44
+ ...rootProps
45
+ }: TooltipProps): import("react/jsx-runtime").JSX.Element;
46
+ type TooltipProviderProps = Tooltip.Provider.Props;
47
+ declare function TooltipProvider(props: TooltipProviderProps): import("react/jsx-runtime").JSX.Element;
48
+ //#endregion
49
+ export { Tooltip$1 as Tooltip, TooltipProps, TooltipProvider, TooltipProviderProps };
50
+ //# sourceMappingURL=tooltip.d.ts.map
@@ -0,0 +1,2 @@
1
+ import{usePortalConfig as e}from"../../helpers/portal/context/hooks.js";import"../../helpers/portal/index.js";import t from"./tooltip.module.js";import n from"clsx";import"react";import{jsx as r,jsxs as i}from"react/jsx-runtime";import{Tooltip as a}from"@base-ui/react/tooltip";function o({children:o,content:s,sideOffset:c=8,arrow:l=!0,popupProps:u,popupClassName:d,arrowClassName:f,...p}){let{resolveContainer:m}=e(),h=m();return i(a.Root,{...p,children:[r(a.Trigger,{className:t.trigger,children:o}),r(a.Portal,{container:h,children:r(a.Positioner,{sideOffset:c,children:i(a.Popup,{...u,className:n(t.popup,d),children:[l?r(a.Arrow,{className:n([t.arrow,f])}):null,r(a.Viewport,{className:t.viewport,children:s})]})})})]})}function s(e){return r(a.Provider,{...e})}export{o as Tooltip,s as TooltipProvider};
2
+ //# sourceMappingURL=tooltip.js.map