|
161 | 161 |
|
162 | 162 | <section> |
163 | 163 | <h2>Avatar</h2> |
| 164 | + |
| 165 | + <p class="muted">Image</p> |
164 | 166 | <div class="row"> |
165 | 167 | <EmAvatar size="sm"> |
166 | 168 | <EmAvatarImage alt="Small avatar" src="https://i.pravatar.cc/80?img=32" /> |
|
174 | 176 | <EmAvatarImage alt="Large avatar" src="https://i.pravatar.cc/96?img=47" /> |
175 | 177 | <EmAvatarFallback>LG</EmAvatarFallback> |
176 | 178 | </EmAvatar> |
| 179 | + </div> |
| 180 | + |
| 181 | + <p class="muted">Text (initials)</p> |
| 182 | + <div class="row"> |
177 | 183 | <EmAvatar size="sm"> |
178 | 184 | <EmAvatarFallback>AB</EmAvatarFallback> |
179 | 185 | </EmAvatar> |
|
183 | 189 | <EmAvatar size="lg"> |
184 | 190 | <EmAvatarFallback>EF</EmAvatarFallback> |
185 | 191 | </EmAvatar> |
| 192 | + </div> |
| 193 | + |
| 194 | + <p class="muted">Icon</p> |
| 195 | + <div class="row"> |
| 196 | + <EmAvatar size="sm"> |
| 197 | + <EmAvatarFallback> |
| 198 | + <PhUser :size="16" weight="regular" /> |
| 199 | + </EmAvatarFallback> |
| 200 | + </EmAvatar> |
| 201 | + <EmAvatar size="md"> |
| 202 | + <EmAvatarFallback> |
| 203 | + <PhUser :size="20" weight="regular" /> |
| 204 | + </EmAvatarFallback> |
| 205 | + </EmAvatar> |
186 | 206 | <EmAvatar size="lg"> |
187 | 207 | <EmAvatarFallback> |
188 | | - <PhUser :size="24" weight="duotone" /> |
| 208 | + <PhUser :size="24" weight="regular" /> |
189 | 209 | </EmAvatarFallback> |
190 | 210 | </EmAvatar> |
191 | 211 | </div> |
| 212 | + |
| 213 | + <p class="muted">Group</p> |
| 214 | + <div class="row"> |
| 215 | + <div class="emerald-avatar-group"> |
| 216 | + <EmAvatar size="md"> |
| 217 | + <EmAvatarImage alt="Member 1" src="https://i.pravatar.cc/80?img=12" /> |
| 218 | + <EmAvatarFallback>JD</EmAvatarFallback> |
| 219 | + </EmAvatar> |
| 220 | + <EmAvatar size="md"> |
| 221 | + <EmAvatarImage alt="Member 2" src="https://i.pravatar.cc/80?img=32" /> |
| 222 | + <EmAvatarFallback>SM</EmAvatarFallback> |
| 223 | + </EmAvatar> |
| 224 | + <EmAvatar size="md"> |
| 225 | + <EmAvatarImage alt="Member 3" src="https://i.pravatar.cc/80?img=47" /> |
| 226 | + <EmAvatarFallback>LG</EmAvatarFallback> |
| 227 | + </EmAvatar> |
| 228 | + <EmAvatar size="md"> |
| 229 | + <EmAvatarFallback>+3</EmAvatarFallback> |
| 230 | + </EmAvatar> |
| 231 | + </div> |
| 232 | + </div> |
192 | 233 | </section> |
193 | 234 |
|
194 | 235 | <section> |
|
332 | 373 | </EmTag> |
333 | 374 | </div> |
334 | 375 |
|
335 | | - <p class="muted">Bold icon weight — alternate icon style</p> |
336 | | - <div class="row"> |
337 | | - <EmTag variant="neutral"> |
338 | | - <PhCheckCircle :size="16" weight="bold" /> |
339 | | - chip text |
340 | | - </EmTag> |
341 | | - <EmTag variant="primary"> |
342 | | - <PhCheckCircle :size="16" weight="bold" /> |
343 | | - chip text |
344 | | - </EmTag> |
345 | | - <EmTag variant="success"> |
346 | | - <PhCheckCircle :size="16" weight="bold" /> |
347 | | - chip text |
348 | | - </EmTag> |
349 | | - <EmTag variant="error"> |
350 | | - <PhX :size="16" weight="bold" /> |
351 | | - chip text |
352 | | - </EmTag> |
353 | | - </div> |
354 | | - |
355 | 376 | <p class="muted">Text only — no icon</p> |
356 | 377 | <div class="row"> |
357 | 378 | <EmTag variant="neutral">vue</EmTag> |
|
929 | 950 | <EmAutoCompleteInput placeholder="Search your framework" /> |
930 | 951 | <PhCaretDown :size="14" weight="duotone" /> |
931 | 952 | </EmAutoCompleteControl> |
932 | | - <EmAutoCompleteContent> |
| 953 | + <EmAutoCompleteContent eager> |
933 | 954 | <EmAutoCompleteItem :value="'vuetify'">Vuetify</EmAutoCompleteItem> |
934 | 955 | <EmAutoCompleteItem :value="'vue'">Vue</EmAutoCompleteItem> |
935 | 956 | <EmAutoCompleteItem :value="'primevue'">Prime Vue</EmAutoCompleteItem> |
|
940 | 961 |
|
941 | 962 | <section> |
942 | 963 | <h2>DatePicker</h2> |
| 964 | + <p class="muted">Visual scaffold only — replaces with the new DatePicker once v0 ships a calendar primitive (createCalendar / useDate-backed root).</p> |
943 | 965 | <EmDatePicker v-model="datePickerValue"> |
944 | 966 | <EmDatePickerCalendar> |
945 | 967 | <EmDatePickerHeader> |
|
970 | 992 | <h2>Upload</h2> |
971 | 993 | <EmUpload v-model="uploadFiles" multiple style="width: 420px;"> |
972 | 994 | <EmUploadDropzone> |
973 | | - <PhFileArrowUp :size="16" weight="duotone" /> |
974 | | - <span>Drag and Drop your files</span> |
| 995 | + <PhFileArrowUp :size="28" weight="regular" /> |
| 996 | + <strong>Drag and drop your files</strong> |
| 997 | + <span class="muted" style="margin: 0;">or click to browse</span> |
975 | 998 | </EmUploadDropzone> |
976 | 999 | </EmUpload> |
977 | 1000 | </section> |
|
1016 | 1039 | <div class="stack" style="max-width: 520px;"> |
1017 | 1040 | <EmAlert> |
1018 | 1041 | <EmAlertIcon> |
1019 | | - <PhInfo :size="24" weight="duotone" /> |
| 1042 | + <PhInfo :size="24" weight="regular" /> |
1020 | 1043 | </EmAlertIcon> |
1021 | 1044 | <EmAlertBody> |
1022 | 1045 | <EmAlertTitle>Alert Title</EmAlertTitle> |
|
1025 | 1048 | </EmAlert> |
1026 | 1049 | <EmAlert variant="error"> |
1027 | 1050 | <EmAlertIcon> |
1028 | | - <PhXCircle :size="24" weight="duotone" /> |
| 1051 | + <PhXCircle :size="24" weight="regular" /> |
1029 | 1052 | </EmAlertIcon> |
1030 | 1053 | <EmAlertBody> |
1031 | 1054 | <EmAlertTitle>Error Alert</EmAlertTitle> |
|
1034 | 1057 | </EmAlert> |
1035 | 1058 | <EmAlert variant="success"> |
1036 | 1059 | <EmAlertIcon> |
1037 | | - <PhCheckCircle :size="24" weight="duotone" /> |
| 1060 | + <PhCheckCircle :size="24" weight="regular" /> |
1038 | 1061 | </EmAlertIcon> |
1039 | 1062 | <EmAlertBody> |
1040 | 1063 | <EmAlertTitle>Success Alert</EmAlertTitle> |
|
1043 | 1066 | </EmAlert> |
1044 | 1067 | <EmAlert variant="info"> |
1045 | 1068 | <EmAlertIcon> |
1046 | | - <PhInfo :size="24" weight="duotone" /> |
| 1069 | + <PhInfo :size="24" weight="regular" /> |
1047 | 1070 | </EmAlertIcon> |
1048 | 1071 | <EmAlertBody> |
1049 | 1072 | <EmAlertTitle>Info Alert</EmAlertTitle> |
|
1052 | 1075 | </EmAlert> |
1053 | 1076 | <EmAlert variant="warning"> |
1054 | 1077 | <EmAlertIcon> |
1055 | | - <PhWarning :size="24" weight="duotone" /> |
| 1078 | + <PhWarning :size="24" weight="regular" /> |
1056 | 1079 | </EmAlertIcon> |
1057 | 1080 | <EmAlertBody> |
1058 | 1081 | <EmAlertTitle>Warning Alert</EmAlertTitle> |
|
1061 | 1084 | </EmAlert> |
1062 | 1085 | <EmAlert variant="neutral"> |
1063 | 1086 | <EmAlertIcon> |
1064 | | - <PhAirplaneTilt :size="24" weight="duotone" /> |
| 1087 | + <PhAirplaneTilt :size="24" weight="regular" /> |
1065 | 1088 | </EmAlertIcon> |
1066 | 1089 | <EmAlertBody> |
1067 | 1090 | <EmAlertTitle>Alert</EmAlertTitle> |
|
1184 | 1207 |
|
1185 | 1208 | <section> |
1186 | 1209 | <h2>Tooltip</h2> |
1187 | | - <EmTooltip :model-value="true"> |
| 1210 | + <EmTooltip> |
1188 | 1211 | <EmTooltipContent position-area="top"> |
1189 | 1212 | Hello, I'm Tooltip |
1190 | 1213 | </EmTooltipContent> |
1191 | 1214 | <EmTooltipActivator> |
1192 | | - <EmButton>Open Tooltip</EmButton> |
| 1215 | + <EmButton>Hover for tooltip</EmButton> |
1193 | 1216 | </EmTooltipActivator> |
1194 | 1217 | </EmTooltip> |
1195 | 1218 | </section> |
|
1229 | 1252 |
|
1230 | 1253 | <section> |
1231 | 1254 | <h2>Table</h2> |
1232 | | - <EmTable style="max-width: 760px;"> |
| 1255 | + <p class="muted">Default — sortable headers, selected row, status cells</p> |
| 1256 | + <EmTable> |
1233 | 1257 | <EmTableHead> |
1234 | 1258 | <EmTableRow> |
1235 | 1259 | <EmTableHeader sort="none" sortable> |
|
1295 | 1319 | </EmTableRow> |
1296 | 1320 | </EmTableBody> |
1297 | 1321 | </EmTable> |
| 1322 | + |
| 1323 | + <p class="muted" style="margin-top: 1.5rem;">Compact — fewer columns, no border</p> |
| 1324 | + <EmTable :bordered="false"> |
| 1325 | + <EmTableHead> |
| 1326 | + <EmTableRow> |
| 1327 | + <EmTableHeader>Plan</EmTableHeader> |
| 1328 | + <EmTableHeader>Status</EmTableHeader> |
| 1329 | + <EmTableHeader align="end">Seats</EmTableHeader> |
| 1330 | + <EmTableHeader align="end">MRR</EmTableHeader> |
| 1331 | + </EmTableRow> |
| 1332 | + </EmTableHead> |
| 1333 | + <EmTableBody> |
| 1334 | + <EmTableRow> |
| 1335 | + <EmTableCell>Starter</EmTableCell> |
| 1336 | + <EmTableCell> |
| 1337 | + <EmTag tone="tinted" variant="success"> |
| 1338 | + <PhCheckCircle :size="14" weight="fill" /> |
| 1339 | + active |
| 1340 | + </EmTag> |
| 1341 | + </EmTableCell> |
| 1342 | + <EmTableCell align="end">12</EmTableCell> |
| 1343 | + <EmTableCell align="end">$120</EmTableCell> |
| 1344 | + </EmTableRow> |
| 1345 | + <EmTableRow> |
| 1346 | + <EmTableCell>Pro</EmTableCell> |
| 1347 | + <EmTableCell> |
| 1348 | + <EmTag tone="tinted" variant="warning"> |
| 1349 | + <PhWarning :size="14" weight="fill" /> |
| 1350 | + trial |
| 1351 | + </EmTag> |
| 1352 | + </EmTableCell> |
| 1353 | + <EmTableCell align="end">48</EmTableCell> |
| 1354 | + <EmTableCell align="end">$960</EmTableCell> |
| 1355 | + </EmTableRow> |
| 1356 | + <EmTableRow> |
| 1357 | + <EmTableCell>Enterprise</EmTableCell> |
| 1358 | + <EmTableCell> |
| 1359 | + <EmTag tone="tinted" variant="error"> |
| 1360 | + <PhXCircle :size="14" weight="fill" /> |
| 1361 | + churned |
| 1362 | + </EmTag> |
| 1363 | + </EmTableCell> |
| 1364 | + <EmTableCell align="end">120</EmTableCell> |
| 1365 | + <EmTableCell align="end">—</EmTableCell> |
| 1366 | + </EmTableRow> |
| 1367 | + </EmTableBody> |
| 1368 | + </EmTable> |
1298 | 1369 | </section> |
1299 | 1370 |
|
1300 | 1371 | <section> |
|
1448 | 1519 | font-size: 1.25rem; |
1449 | 1520 | } |
1450 | 1521 |
|
| 1522 | + .emerald-avatar-group { |
| 1523 | + display: inline-flex; |
| 1524 | + align-items: center; |
| 1525 | + } |
| 1526 | +
|
| 1527 | + .emerald-avatar-group > :deep(.emerald-avatar) { |
| 1528 | + box-shadow: 0 0 0 2px var(--emerald-background, #faf9ff); |
| 1529 | + } |
| 1530 | +
|
| 1531 | + .emerald-avatar-group > :deep(.emerald-avatar) + :deep(.emerald-avatar) { |
| 1532 | + margin-left: -10px; |
| 1533 | + } |
| 1534 | +
|
| 1535 | + .muted { |
| 1536 | + margin: 0.5rem 0 0.25rem; |
| 1537 | + font-size: 0.75rem; |
| 1538 | + color: var(--emerald-neutral-500); |
| 1539 | + } |
| 1540 | +
|
1451 | 1541 | :deep(.sink-carousel-slide) { |
1452 | 1542 | width: 100%; |
1453 | 1543 | aspect-ratio: 1 / 1; |
|
0 commit comments