fulldev-ui 0.12.0 → 0.13.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 (130) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/package.json +24 -20
  3. package/public/r/accordion.json +1 -1
  4. package/public/r/alert-dialog.json +1 -1
  5. package/public/r/aspect-ratio.json +23 -0
  6. package/public/r/attachment.json +66 -0
  7. package/public/r/button-group.json +41 -0
  8. package/public/r/carousel.json +8 -8
  9. package/public/r/collapsible.json +1 -1
  10. package/public/r/combobox.json +4 -4
  11. package/public/r/command.json +2 -2
  12. package/public/r/components.json +8 -0
  13. package/public/r/dialog.json +1 -1
  14. package/public/r/doc-1.json +1 -1
  15. package/public/r/drawer.json +109 -0
  16. package/public/r/dropdown-menu.json +1 -1
  17. package/public/r/hover-card.json +2 -2
  18. package/public/r/init.json +1 -1
  19. package/public/r/navigation-menu.json +2 -2
  20. package/public/r/pagination.json +59 -0
  21. package/public/r/popover.json +1 -1
  22. package/public/r/radio-group.json +1 -1
  23. package/public/r/registry.json +414 -24
  24. package/public/r/resizable.json +36 -0
  25. package/public/r/reviews-3.json +1 -1
  26. package/public/r/select.json +1 -1
  27. package/public/r/sheet.json +1 -1
  28. package/public/r/sidebar.json +1 -1
  29. package/public/r/slider.json +2 -2
  30. package/public/r/switch.json +1 -1
  31. package/public/r/tabs.json +1 -1
  32. package/public/r/toast.json +80 -0
  33. package/public/r/toggle-group.json +34 -0
  34. package/public/r/toggle.json +1 -1
  35. package/public/r/tooltip.json +1 -1
  36. package/public/r/typography.json +21 -16
  37. package/registry/init/global.css +2 -0
  38. package/registry.json +375 -24
  39. package/src/components/blocks/doc-1.astro +76 -0
  40. package/src/components/blocks/reviews-3.astro +1 -1
  41. package/src/components/ui/aspect-ratio/aspect-ratio.astro +25 -0
  42. package/src/components/ui/aspect-ratio/index.ts +1 -0
  43. package/src/components/ui/attachment/attachment-action.astro +20 -0
  44. package/src/components/ui/attachment/attachment-actions.astro +20 -0
  45. package/src/components/ui/attachment/attachment-content.astro +20 -0
  46. package/src/components/ui/attachment/attachment-description.astro +20 -0
  47. package/src/components/ui/attachment/attachment-group.astro +20 -0
  48. package/src/components/ui/attachment/attachment-media.astro +36 -0
  49. package/src/components/ui/attachment/attachment-title.astro +20 -0
  50. package/src/components/ui/attachment/attachment-trigger.astro +24 -0
  51. package/src/components/ui/attachment/attachment.astro +52 -0
  52. package/src/components/ui/attachment/index.ts +9 -0
  53. package/src/components/ui/button-group/button-group-separator.astro +29 -0
  54. package/src/components/ui/button-group/button-group-text.astro +20 -0
  55. package/src/components/ui/button-group/button-group-variants.ts +20 -0
  56. package/src/components/ui/button-group/button-group.astro +30 -0
  57. package/src/components/ui/button-group/index.ts +7 -0
  58. package/src/components/ui/carousel/carousel-content.astro +11 -13
  59. package/src/components/ui/carousel/carousel-item.astro +2 -5
  60. package/src/components/ui/carousel/carousel-next.astro +0 -3
  61. package/src/components/ui/carousel/carousel-previous.astro +0 -3
  62. package/src/components/ui/carousel/carousel.astro +19 -219
  63. package/src/components/ui/carousel/index.ts +1 -5
  64. package/src/components/ui/combobox/combobox-input.astro +11 -4
  65. package/src/components/ui/combobox/combobox-trigger.astro +7 -7
  66. package/src/components/ui/drawer/drawer-close.astro +13 -0
  67. package/src/components/ui/drawer/drawer-content.astro +43 -0
  68. package/src/components/ui/drawer/drawer-description.astro +17 -0
  69. package/src/components/ui/drawer/drawer-footer.astro +17 -0
  70. package/src/components/ui/drawer/drawer-header.astro +17 -0
  71. package/src/components/ui/drawer/drawer-indent-background.astro +11 -0
  72. package/src/components/ui/drawer/drawer-indent.astro +11 -0
  73. package/src/components/ui/drawer/drawer-overlay.astro +21 -0
  74. package/src/components/ui/drawer/drawer-popup.astro +36 -0
  75. package/src/components/ui/drawer/drawer-portal.astro +27 -0
  76. package/src/components/ui/drawer/drawer-provider.astro +11 -0
  77. package/src/components/ui/drawer/drawer-swipe-handle.astro +20 -0
  78. package/src/components/ui/drawer/drawer-title.astro +17 -0
  79. package/src/components/ui/drawer/drawer-trigger.astro +21 -0
  80. package/src/components/ui/drawer/drawer-viewport.astro +21 -0
  81. package/src/components/ui/drawer/drawer-virtual-keyboard-provider.astro +11 -0
  82. package/src/components/ui/drawer/drawer.astro +60 -0
  83. package/src/components/ui/drawer/index.ts +28 -0
  84. package/src/components/ui/navigation-menu/navigation-menu.astro +2 -2
  85. package/src/components/ui/pagination/index.ts +7 -0
  86. package/src/components/ui/pagination/pagination-content.astro +17 -0
  87. package/src/components/ui/pagination/pagination-ellipsis.astro +22 -0
  88. package/src/components/ui/pagination/pagination-item.astro +11 -0
  89. package/src/components/ui/pagination/pagination-link.astro +41 -0
  90. package/src/components/ui/pagination/pagination-next.astro +27 -0
  91. package/src/components/ui/pagination/pagination-previous.astro +27 -0
  92. package/src/components/ui/pagination/pagination.astro +19 -0
  93. package/src/components/ui/resizable/index.ts +4 -0
  94. package/src/components/ui/resizable/resizable-handle.astro +32 -0
  95. package/src/components/ui/resizable/resizable-panel.astro +36 -0
  96. package/src/components/ui/resizable/resizable.astro +43 -0
  97. package/src/components/ui/slider/slider.astro +1 -1
  98. package/src/components/ui/toast/index.ts +26 -0
  99. package/src/components/ui/toast/toast-action.astro +25 -0
  100. package/src/components/ui/toast/toast-close.astro +27 -0
  101. package/src/components/ui/toast/toast-content.astro +20 -0
  102. package/src/components/ui/toast/toast-description.astro +18 -0
  103. package/src/components/ui/toast/toast-icon.astro +37 -0
  104. package/src/components/ui/toast/toast-item.astro +28 -0
  105. package/src/components/ui/toast/toast-template.astro +11 -0
  106. package/src/components/ui/toast/toast-title.astro +17 -0
  107. package/src/components/ui/toast/toast-viewport.astro +20 -0
  108. package/src/components/ui/toast/toast.astro +51 -0
  109. package/src/components/ui/toast/toaster.astro +37 -0
  110. package/src/components/ui/toggle-group/index.ts +2 -0
  111. package/src/components/ui/toggle-group/toggle-group-item.astro +44 -0
  112. package/src/components/ui/toggle-group/toggle-group.astro +74 -0
  113. package/src/components/ui/typography/typeset.css +441 -0
  114. package/src/components/ui/typography/typography-a.astro +13 -22
  115. package/src/components/ui/typography/typography-blockquote.astro +4 -23
  116. package/src/components/ui/typography/typography-h1.astro +13 -26
  117. package/src/components/ui/typography/typography-h2.astro +13 -31
  118. package/src/components/ui/typography/typography-h3.astro +9 -26
  119. package/src/components/ui/typography/typography-h4.astro +9 -26
  120. package/src/components/ui/typography/typography-inline-code.astro +8 -27
  121. package/src/components/ui/typography/typography-lead.astro +4 -26
  122. package/src/components/ui/typography/typography-list-item.astro +4 -24
  123. package/src/components/ui/typography/typography-list.astro +10 -40
  124. package/src/components/ui/typography/typography-p.astro +9 -28
  125. package/src/components/ui/typography/typography-table-cell.astro +9 -40
  126. package/src/components/ui/typography/typography-table-head.astro +9 -35
  127. package/src/components/ui/typography/typography-table-row.astro +4 -23
  128. package/src/components/ui/typography/typography-table.astro +8 -28
  129. package/src/components/ui/typography/typography.astro +10 -283
  130. package/src/styles/global.css +2 -0
@@ -15,45 +15,25 @@ const {
15
15
  size = "default",
16
16
  ...props
17
17
  } = Astro.props
18
+
19
+ const sizeClass =
20
+ size === "sm" ? "text-sm" : size === "lg" ? "text-lg" : "text-base"
18
21
  ---
19
22
 
20
23
  <div
21
24
  data-slot="typography-table-container"
22
25
  data-size={size}
23
- class={cn(containerClass)}
26
+ class={cn(
27
+ "border-border my-6 w-full overflow-x-auto rounded-xl border",
28
+ containerClass
29
+ )}
24
30
  >
25
31
  <table
26
32
  data-slot="typography-table"
27
33
  data-size={size}
28
- class={cn(className)}
34
+ class={cn("w-full border-collapse", sizeClass, className)}
29
35
  {...props}
30
36
  >
31
37
  <slot />
32
38
  </table>
33
39
  </div>
34
-
35
- <style is:global>
36
- @reference "@/styles/global.css";
37
-
38
- [data-slot="typography-table-container"] {
39
- @apply border-border my-6 w-full overflow-y-auto rounded-xl border;
40
- }
41
-
42
- [data-slot="typography-table"],
43
- [data-slot="typography"] > table {
44
- @apply w-full border-collapse;
45
- }
46
-
47
- [data-slot="typography-table"][data-size="sm"] {
48
- @apply text-sm;
49
- }
50
-
51
- [data-slot="typography-table"][data-size="default"],
52
- [data-slot="typography"] > table {
53
- @apply text-base;
54
- }
55
-
56
- [data-slot="typography-table"][data-size="lg"] {
57
- @apply text-lg;
58
- }
59
- </style>
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  import type { HTMLTag, Polymorphic } from "astro/types"
3
3
 
4
+ import "./typeset.css"
5
+
4
6
  import { cn } from "@/lib/utils"
5
7
 
6
8
  type Size = "sm" | "default" | "lg"
@@ -12,295 +14,20 @@ const {
12
14
  size = "default",
13
15
  ...props
14
16
  } = Astro.props
17
+
18
+ const sizeClass =
19
+ size === "sm"
20
+ ? "[--typeset-flow:1.125em] [--typeset-leading:1.7] [--typeset-size:0.875rem]"
21
+ : size === "lg"
22
+ ? "[--typeset-flow:1.5em] [--typeset-leading:1.8] [--typeset-size:1.125rem]"
23
+ : "[--typeset-flow:1.25em] [--typeset-leading:1.75] [--typeset-size:1rem]"
15
24
  ---
16
25
 
17
26
  <Tag
18
27
  data-slot="typography"
19
28
  data-size={size}
20
- class={cn("text-foreground text-base", className)}
29
+ class={cn("typeset", sizeClass, className)}
21
30
  {...props}
22
31
  >
23
32
  <slot />
24
33
  </Tag>
25
-
26
- <style is:global>
27
- @reference "@/styles/global.css";
28
-
29
- [data-slot="typography"]
30
- > :is(
31
- [data-slot="typography-lead"],
32
- [data-slot="typography-table-container"],
33
- div,
34
- section,
35
- article,
36
- aside,
37
- nav,
38
- figure,
39
- details,
40
- pre,
41
- small,
42
- dl,
43
- img,
44
- picture,
45
- video,
46
- iframe
47
- ):not(:first-child) {
48
- @apply mt-6;
49
- }
50
-
51
- [data-slot="typography"] > h1 {
52
- @apply scroll-m-20 text-4xl font-semibold tracking-tight text-balance;
53
- }
54
-
55
- [data-slot="typography"] > h2 {
56
- @apply scroll-m-20 text-3xl font-semibold tracking-tight;
57
- }
58
-
59
- [data-slot="typography"] > h2:first-child {
60
- @apply mt-0;
61
- }
62
-
63
- [data-slot="typography"] > h2:not(:first-child) {
64
- @apply mt-10;
65
- }
66
-
67
- [data-slot="typography"] > h3 {
68
- @apply scroll-m-20 text-2xl font-semibold tracking-tight;
69
- }
70
-
71
- [data-slot="typography"] > h3:not(:first-child) {
72
- @apply mt-8;
73
- }
74
-
75
- [data-slot="typography"] > h4 {
76
- @apply scroll-m-20 text-xl font-semibold tracking-tight;
77
- }
78
-
79
- [data-slot="typography"] > h4:not(:first-child) {
80
- @apply mt-8;
81
- }
82
-
83
- [data-slot="typography"]
84
- > :is(h1, h2, h3, h4)
85
- + :is(
86
- [data-slot="typography-lead"],
87
- [data-slot="typography-table-container"],
88
- div,
89
- section,
90
- article,
91
- aside,
92
- nav,
93
- figure,
94
- details,
95
- p,
96
- blockquote,
97
- pre,
98
- ul,
99
- ol,
100
- table,
101
- small,
102
- dl,
103
- img,
104
- picture,
105
- video,
106
- iframe
107
- ) {
108
- @apply mt-4;
109
- }
110
-
111
- [data-slot="typography"] > p {
112
- @apply text-base leading-7;
113
- }
114
-
115
- [data-slot="typography"] > p:not(:first-child) {
116
- @apply mt-6;
117
- }
118
-
119
- [data-slot="typography"]
120
- > :is(h1, h2, h3, h4)
121
- + :is(p, [data-slot="typography-lead"]):not(:first-child) {
122
- @apply mt-4;
123
- }
124
-
125
- [data-slot="typography"] > a:not([data-slot]),
126
- [data-slot="typography"]
127
- > :is(p, blockquote, ul, ol, dl, table)
128
- a:not([data-slot]) {
129
- @apply text-foreground font-medium underline underline-offset-4;
130
- }
131
-
132
- [data-slot="typography"] > blockquote {
133
- @apply mt-6 border-l-2 pl-6 text-base italic;
134
- }
135
-
136
- [data-slot="typography"] > hr {
137
- @apply border-border my-8;
138
- }
139
-
140
- [data-slot="typography"] > pre {
141
- @apply border-border bg-muted/60 overflow-x-auto rounded-xl border p-4 text-sm;
142
- }
143
-
144
- [data-slot="typography"] > .docs-code-block {
145
- @apply border-border bg-muted/60 relative overflow-hidden rounded-xl border;
146
- }
147
-
148
- [data-slot="typography"] > .docs-code-block > pre,
149
- [data-slot="typography"] > .docs-code-block > pre.astro-code {
150
- @apply m-0 rounded-none border-0 !bg-transparent p-4 pr-14 text-sm leading-[var(--text-sm--line-height)];
151
- font-family: var(--font-mono);
152
- }
153
-
154
- [data-slot="typography"] > .docs-code-block > pre.astro-code code {
155
- @apply text-sm leading-[var(--text-sm--line-height)] !text-[var(--shiki-light,var(--foreground))];
156
- }
157
-
158
- .dark [data-slot="typography"] > .docs-code-block > pre.astro-code code {
159
- @apply !text-[var(--shiki-dark,var(--foreground))];
160
- }
161
-
162
- .dark
163
- [data-slot="typography"]
164
- > .docs-code-block
165
- > pre.astro-code
166
- span[style*="--shiki-dark"] {
167
- @apply ![font-weight:var(--shiki-dark-font-weight,inherit)] !text-[var(--shiki-dark)] ![font-style:var(--shiki-dark-font-style,inherit)] ![text-decoration:var(--shiki-dark-text-decoration,inherit)];
168
- }
169
-
170
- [data-slot="typography"] > .docs-code-block > .docs-code-copy {
171
- @apply border-border bg-background text-muted-foreground hover:bg-accent hover:text-accent-foreground absolute top-3 right-3 z-10 inline-flex size-8 items-center justify-center rounded-md border shadow-sm transition-colors;
172
- }
173
-
174
- [data-slot="typography"] > .docs-code-block svg {
175
- @apply size-4;
176
- }
177
-
178
- [data-slot="typography"] > ul,
179
- [data-slot="typography"] > ol {
180
- @apply my-6 ml-6 text-base;
181
- }
182
-
183
- [data-slot="typography"] > ul {
184
- @apply list-disc;
185
- }
186
-
187
- [data-slot="typography"] > ol {
188
- @apply list-decimal;
189
- }
190
-
191
- [data-slot="typography"] > ul > li,
192
- [data-slot="typography"] > ol > li {
193
- @apply mt-2;
194
- }
195
-
196
- [data-slot="typography"] > [data-slot="typography-lead"] {
197
- @apply text-muted-foreground;
198
- }
199
-
200
- [data-slot="typography"][data-size="sm"] > [data-slot="typography-lead"] {
201
- @apply text-base;
202
- }
203
-
204
- [data-slot="typography"] > [data-slot="typography-lead"],
205
- [data-slot="typography"][data-size="default"]
206
- > [data-slot="typography-lead"] {
207
- @apply text-lg;
208
- }
209
-
210
- [data-slot="typography"][data-size="lg"] > [data-slot="typography-lead"] {
211
- @apply text-xl;
212
- }
213
-
214
- [data-slot="typography"] > small {
215
- @apply block leading-none font-medium;
216
- }
217
-
218
- [data-slot="typography"] > small {
219
- @apply text-sm;
220
- }
221
-
222
- [data-slot="typography"] > table {
223
- @apply border-border my-6 block w-full overflow-x-auto rounded-lg border;
224
- border-collapse: separate;
225
- border-spacing: 0;
226
- }
227
-
228
- [data-slot="typography"] > table th,
229
- [data-slot="typography"] > table td {
230
- @apply border-border border-b px-4 py-2 text-left align-top whitespace-nowrap;
231
- }
232
-
233
- [data-slot="typography"] > table th {
234
- @apply text-foreground bg-muted/40 font-medium;
235
- }
236
-
237
- [data-slot="typography"] > table tr:last-child td {
238
- @apply border-b-0;
239
- }
240
-
241
- [data-slot="typography"] > table thead,
242
- [data-slot="typography"] > table tbody,
243
- [data-slot="typography"] > table tr {
244
- @apply w-full;
245
- }
246
-
247
- [data-slot="typography"] > table tr {
248
- @apply grid grid-cols-[minmax(0,1fr)_minmax(0,1fr)_minmax(0,1fr)];
249
- }
250
-
251
- [data-slot="typography"] > table tr {
252
- @apply even:bg-muted/40 m-0 border-t p-0 first:border-t-0;
253
- }
254
-
255
- [data-slot="typography"] > table th {
256
- @apply border-r px-4 py-2 text-left font-bold last:border-r-0;
257
- }
258
-
259
- [data-slot="typography"] > table th[align="center"] {
260
- @apply text-center;
261
- }
262
-
263
- [data-slot="typography"] > table th[align="right"] {
264
- @apply text-right;
265
- }
266
-
267
- [data-slot="typography"] > table td {
268
- @apply border-r px-4 py-2 text-left last:border-r-0;
269
- }
270
-
271
- [data-slot="typography"] > table td[align="center"] {
272
- @apply text-center;
273
- }
274
-
275
- [data-slot="typography"] > table td[align="right"] {
276
- @apply text-right;
277
- }
278
-
279
- [data-slot="typography"] > table tbody tr:last-child td {
280
- @apply border-b-0;
281
- }
282
-
283
- [data-slot="typography"] :not(pre) > code {
284
- @apply bg-muted relative rounded px-[0.3rem] py-[0.2rem] font-mono text-sm font-semibold;
285
- }
286
-
287
- [data-slot="typography"] > table :not(pre) > code {
288
- @apply rounded-md text-sm leading-5 font-normal;
289
- }
290
-
291
- [data-slot="typography"] > pre.astro-code {
292
- @apply border-border !bg-muted/60 rounded-xl border p-4 text-sm leading-[var(--text-sm--line-height)];
293
- }
294
-
295
- [data-slot="typography"] > pre.astro-code code {
296
- @apply !text-inherit;
297
- }
298
-
299
- .dark [data-slot="typography"] > pre.astro-code {
300
- @apply !text-[var(--shiki-dark,var(--foreground))];
301
- }
302
-
303
- .dark [data-slot="typography"] > pre.astro-code span[style*="--shiki-dark"] {
304
- @apply ![font-weight:var(--shiki-dark-font-weight,inherit)] !text-[var(--shiki-dark)] ![font-style:var(--shiki-dark-font-style,inherit)] ![text-decoration:var(--shiki-dark-text-decoration,inherit)];
305
- }
306
- </style>
@@ -115,6 +115,8 @@
115
115
  }
116
116
 
117
117
  @theme inline {
118
+ --font-heading: var(--font-sans);
119
+
118
120
  --color-background: var(--background);
119
121
  --color-foreground: var(--foreground);
120
122
  --color-card: var(--card);