@aws-amplify/ui 6.3.0 → 6.4.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.
@@ -84,6 +84,35 @@
84
84
  --amplify-components-autocomplete-menu-loading-gap: var(--amplify-space-xxxs);
85
85
  --amplify-components-autocomplete-menu-space-shared-padding-block: var(--amplify-space-xs);
86
86
  --amplify-components-autocomplete-menu-space-shared-padding-inline: var(--amplify-space-small);
87
+ --amplify-components-avatar-color: var(--amplify-colors-font-tertiary);
88
+ --amplify-components-avatar-line-height: 1;
89
+ --amplify-components-avatar-font-weight: var(--amplify-font-weights-semibold);
90
+ --amplify-components-avatar-font-size: var(--amplify-font-sizes-small);
91
+ --amplify-components-avatar-text-align: center;
92
+ --amplify-components-avatar-width: var(--amplify-font-sizes-xxl);
93
+ --amplify-components-avatar-height: var(--amplify-font-sizes-xxl);
94
+ --amplify-components-avatar-background-color: var(--amplify-colors-background-tertiary);
95
+ --amplify-components-avatar-border-radius: 100%;
96
+ --amplify-components-avatar-border-color: var(--amplify-colors-border-primary);
97
+ --amplify-components-avatar-border-width: var(--amplify-border-widths-medium);
98
+ --amplify-components-avatar-info-color: var(--amplify-colors-font-info);
99
+ --amplify-components-avatar-info-background-color: var(--amplify-colors-background-info);
100
+ --amplify-components-avatar-info-border-color: var(--amplify-colors-border-info);
101
+ --amplify-components-avatar-warning-color: var(--amplify-colors-font-warning);
102
+ --amplify-components-avatar-warning-background-color: var(--amplify-colors-background-warning);
103
+ --amplify-components-avatar-warning-border-color: var(--amplify-colors-border-warning);
104
+ --amplify-components-avatar-success-color: var(--amplify-colors-font-success);
105
+ --amplify-components-avatar-success-background-color: var(--amplify-colors-background-success);
106
+ --amplify-components-avatar-success-border-color: var(--amplify-colors-border-success);
107
+ --amplify-components-avatar-error-color: var(--amplify-colors-font-error);
108
+ --amplify-components-avatar-error-background-color: var(--amplify-colors-background-error);
109
+ --amplify-components-avatar-error-border-color: var(--amplify-colors-border-error);
110
+ --amplify-components-avatar-small-font-size: var(--amplify-font-sizes-xs);
111
+ --amplify-components-avatar-small-width: var(--amplify-font-sizes-xl);
112
+ --amplify-components-avatar-small-height: var(--amplify-font-sizes-xl);
113
+ --amplify-components-avatar-large-font-size: var(--amplify-font-sizes-medium);
114
+ --amplify-components-avatar-large-width: var(--amplify-font-sizes-xxxl);
115
+ --amplify-components-avatar-large-height: var(--amplify-font-sizes-xxxl);
87
116
  --amplify-components-badge-color: var(--amplify-colors-font-primary);
88
117
  --amplify-components-badge-line-height: 1;
89
118
  --amplify-components-badge-font-weight: var(--amplify-font-weights-semibold);
package/dist/styles.css CHANGED
@@ -83,6 +83,35 @@
83
83
  --amplify-components-autocomplete-menu-loading-gap: var(--amplify-space-xxxs);
84
84
  --amplify-components-autocomplete-menu-space-shared-padding-block: var(--amplify-space-xs);
85
85
  --amplify-components-autocomplete-menu-space-shared-padding-inline: var(--amplify-space-small);
86
+ --amplify-components-avatar-color: var(--amplify-colors-font-tertiary);
87
+ --amplify-components-avatar-line-height: 1;
88
+ --amplify-components-avatar-font-weight: var(--amplify-font-weights-semibold);
89
+ --amplify-components-avatar-font-size: var(--amplify-font-sizes-small);
90
+ --amplify-components-avatar-text-align: center;
91
+ --amplify-components-avatar-width: var(--amplify-font-sizes-xxl);
92
+ --amplify-components-avatar-height: var(--amplify-font-sizes-xxl);
93
+ --amplify-components-avatar-background-color: var(--amplify-colors-background-tertiary);
94
+ --amplify-components-avatar-border-radius: 100%;
95
+ --amplify-components-avatar-border-color: var(--amplify-colors-border-primary);
96
+ --amplify-components-avatar-border-width: var(--amplify-border-widths-medium);
97
+ --amplify-components-avatar-info-color: var(--amplify-colors-font-info);
98
+ --amplify-components-avatar-info-background-color: var(--amplify-colors-background-info);
99
+ --amplify-components-avatar-info-border-color: var(--amplify-colors-border-info);
100
+ --amplify-components-avatar-warning-color: var(--amplify-colors-font-warning);
101
+ --amplify-components-avatar-warning-background-color: var(--amplify-colors-background-warning);
102
+ --amplify-components-avatar-warning-border-color: var(--amplify-colors-border-warning);
103
+ --amplify-components-avatar-success-color: var(--amplify-colors-font-success);
104
+ --amplify-components-avatar-success-background-color: var(--amplify-colors-background-success);
105
+ --amplify-components-avatar-success-border-color: var(--amplify-colors-border-success);
106
+ --amplify-components-avatar-error-color: var(--amplify-colors-font-error);
107
+ --amplify-components-avatar-error-background-color: var(--amplify-colors-background-error);
108
+ --amplify-components-avatar-error-border-color: var(--amplify-colors-border-error);
109
+ --amplify-components-avatar-small-font-size: var(--amplify-font-sizes-xs);
110
+ --amplify-components-avatar-small-width: var(--amplify-font-sizes-xl);
111
+ --amplify-components-avatar-small-height: var(--amplify-font-sizes-xl);
112
+ --amplify-components-avatar-large-font-size: var(--amplify-font-sizes-medium);
113
+ --amplify-components-avatar-large-width: var(--amplify-font-sizes-xxxl);
114
+ --amplify-components-avatar-large-height: var(--amplify-font-sizes-xxxl);
86
115
  --amplify-components-badge-color: var(--amplify-colors-font-primary);
87
116
  --amplify-components-badge-line-height: 1;
88
117
  --amplify-components-badge-font-weight: var(--amplify-font-weights-semibold);
@@ -3421,6 +3450,118 @@ strong.amplify-text {
3421
3450
  gap: var(--amplify-space-medium);
3422
3451
  }
3423
3452
 
3453
+ .amplify-avatar {
3454
+ --avatar-color: var(--amplify-components-avatar-color);
3455
+ --avatar-background-color: var(--amplify-components-avatar-background-color);
3456
+ --avatar-filled-background-color: var(--amplify-components-avatar-color);
3457
+ --avatar-filled-color: var(--amplify-components-avatar-background-color);
3458
+ --avatar-border-color: var(--amplify-components-avatar-border-color);
3459
+ --avatar-size: var(--amplify-components-avatar-width);
3460
+ --amplify-components-icon-height: 100%;
3461
+ display: inline-flex;
3462
+ align-items: center;
3463
+ justify-content: center;
3464
+ color: var(--avatar-color);
3465
+ background-color: var(--avatar-background-color);
3466
+ font-weight: var(--amplify-components-avatar-font-weight);
3467
+ font-size: var(--amplify-components-avatar-font-size);
3468
+ width: var(--amplify-components-avatar-width);
3469
+ height: var(--amplify-components-avatar-height);
3470
+ overflow: hidden;
3471
+ border-radius: var(--amplify-components-avatar-border-radius);
3472
+ }
3473
+ .amplify-avatar--filled {
3474
+ background-color: var(--avatar-filled-background-color);
3475
+ color: var(--avatar-filled-color);
3476
+ }
3477
+ .amplify-avatar--outlined {
3478
+ border-width: var(--amplify-components-avatar-border-width);
3479
+ border-style: solid;
3480
+ padding: var(--amplify-components-avatar-border-width);
3481
+ border-color: var(--avatar-border-color);
3482
+ background-color: transparent;
3483
+ color: var(--avatar-color);
3484
+ }
3485
+ .amplify-avatar--small {
3486
+ --avatar-size: var(--amplify-components-avatar-small-width);
3487
+ width: var(--amplify-components-avatar-small-width);
3488
+ height: var(--amplify-components-avatar-small-height);
3489
+ font-size: var(--amplify-components-avatar-small-font-size);
3490
+ }
3491
+ .amplify-avatar--large {
3492
+ --avatar-size: var(--amplify-components-avatar-large-width);
3493
+ width: var(--amplify-components-avatar-large-width);
3494
+ height: var(--amplify-components-avatar-large-height);
3495
+ font-size: var(--amplify-components-avatar-large-font-size);
3496
+ }
3497
+ .amplify-avatar--warning {
3498
+ --avatar-border-color: var(
3499
+ --amplify-components-avatar-warning-border-color
3500
+ );
3501
+ --avatar-background-color: var(
3502
+ --amplify-components-avatar-warning-background-color
3503
+ );
3504
+ --avatar-color: var(--amplify-components-avatar-warning-color);
3505
+ --avatar-filled-background-color: var(
3506
+ --amplify-components-avatar-warning-color
3507
+ );
3508
+ --avatar-filled-color: var(
3509
+ --amplify-components-avatar-warning-background-color
3510
+ );
3511
+ }
3512
+ .amplify-avatar--error {
3513
+ --avatar-border-color: var(--amplify-components-avatar-error-border-color);
3514
+ --avatar-background-color: var(
3515
+ --amplify-components-avatar-error-background-color
3516
+ );
3517
+ --avatar-color: var(--amplify-components-avatar-error-color);
3518
+ --avatar-filled-background-color: var(
3519
+ --amplify-components-avatar-error-color
3520
+ );
3521
+ --avatar-filled-color: var(
3522
+ --amplify-components-avatar-error-background-color
3523
+ );
3524
+ }
3525
+ .amplify-avatar--info {
3526
+ --avatar-border-color: var(--amplify-components-avatar-info-border-color);
3527
+ --avatar-background-color: var(
3528
+ --amplify-components-avatar-info-background-color
3529
+ );
3530
+ --avatar-color: var(--amplify-components-avatar-info-color);
3531
+ --avatar-filled-background-color: var(
3532
+ --amplify-components-avatar-info-color
3533
+ );
3534
+ --avatar-filled-color: var(
3535
+ --amplify-components-avatar-info-background-color
3536
+ );
3537
+ }
3538
+ .amplify-avatar--success {
3539
+ --avatar-border-color: var(
3540
+ --amplify-components-avatar-success-border-color
3541
+ );
3542
+ --avatar-background-color: var(
3543
+ --amplify-components-avatar-success-background-color
3544
+ );
3545
+ --avatar-color: var(--amplify-components-avatar-success-color);
3546
+ --avatar-filled-background-color: var(
3547
+ --amplify-components-avatar-success-color
3548
+ );
3549
+ --avatar-filled-color: var(
3550
+ --amplify-components-avatar-success-background-color
3551
+ );
3552
+ }
3553
+ .amplify-avatar__icon {
3554
+ display: flex;
3555
+ font-size: calc(var(--avatar-size) * 0.6);
3556
+ }
3557
+ .amplify-avatar__image {
3558
+ width: 100%;
3559
+ height: 100%;
3560
+ -o-object-fit: cover;
3561
+ object-fit: cover;
3562
+ display: block;
3563
+ }
3564
+
3424
3565
  .amplify-breadcrumbs__list {
3425
3566
  display: flex;
3426
3567
  flex-wrap: var(--amplify-components-breadcrumbs-flex-wrap);
@@ -6184,6 +6325,115 @@ html[dir=rtl] .amplify-field-group__inner-start {
6184
6325
  gap: var(--amplify-space-small);
6185
6326
  }
6186
6327
 
6328
+ .amplify-ai-conversation {
6329
+ display: flex;
6330
+ flex-direction: column;
6331
+ height: 100%;
6332
+ }
6333
+ .amplify-ai-conversation__message {
6334
+ --content-bg: transparent;
6335
+ display: flex;
6336
+ flex-direction: var(--flex-direction);
6337
+ gap: var(--amplify-space-small);
6338
+ padding: var(--amplify-space-small);
6339
+ }
6340
+ .amplify-ai-conversation__message__list {
6341
+ display: flex;
6342
+ flex-direction: column;
6343
+ }
6344
+ .amplify-ai-conversation__message__avatar {
6345
+ flex-shrink: 0;
6346
+ }
6347
+ .amplify-ai-conversation__message__sender {
6348
+ display: flex;
6349
+ flex-direction: var(--flex-direction);
6350
+ align-items: center;
6351
+ height: var(--amplify-components-avatar-height);
6352
+ gap: var(--amplify-space-small);
6353
+ }
6354
+ .amplify-ai-conversation__message__sender__username {
6355
+ font-weight: bold;
6356
+ }
6357
+ .amplify-ai-conversation__message__sender__timestamp {
6358
+ color: var(--amplify-colors-font-tertiary);
6359
+ font-size: var(--amplify-font-sizes-small);
6360
+ }
6361
+ .amplify-ai-conversation__message__body {
6362
+ display: flex;
6363
+ flex-direction: column;
6364
+ align-items: var(--body-align-items);
6365
+ gap: var(--amplify-space-xs);
6366
+ }
6367
+ .amplify-ai-conversation__message__content {
6368
+ background-color: var(--content-bg);
6369
+ border-radius: var(--amplify-radii-medium);
6370
+ padding: var(--content-padding);
6371
+ }
6372
+ .amplify-ai-conversation__message__actions {
6373
+ display: flex;
6374
+ flex-direction: row;
6375
+ }
6376
+ .amplify-ai-conversation__message--bubble {
6377
+ --content-bg: var(--bg-color);
6378
+ --content-padding: var(--amplify-space-xxs) var(--amplify-space-xs);
6379
+ --flex-direction: row-reverse;
6380
+ --body-align-items: flex-end;
6381
+ }
6382
+ .amplify-ai-conversation__message--user {
6383
+ --bg-color: var(--amplify-colors-background-secondary);
6384
+ }
6385
+ .amplify-ai-conversation__message--assistant {
6386
+ --bg-color: var(--amplify-colors-primary-10);
6387
+ --flex-direction: row;
6388
+ --body-align-items: flex-start;
6389
+ }
6390
+ .amplify-ai-conversation__form {
6391
+ display: flex;
6392
+ flex-direction: row;
6393
+ align-items: flex-start;
6394
+ gap: var(--amplify-space-small);
6395
+ }
6396
+ .amplify-ai-conversation__form__dropzone {
6397
+ text-align: initial;
6398
+ border: none;
6399
+ padding: var(--amplify-space-xs);
6400
+ }
6401
+ .amplify-ai-conversation__attachment {
6402
+ display: flex;
6403
+ flex-direction: row;
6404
+ padding-block: var(--amplify-space-xxxs);
6405
+ padding-inline: var(--amplify-space-xs);
6406
+ border-width: var(--amplify-border-widths-small);
6407
+ border-style: solid;
6408
+ border-color: var(--amplify-colors-border-secondary);
6409
+ border-radius: var(--amplify-radii-small);
6410
+ align-items: center;
6411
+ gap: var(--amplify-space-xs);
6412
+ font-size: var(--amplify-font-sizes-small);
6413
+ }
6414
+ .amplify-ai-conversation__attachment__list {
6415
+ display: flex;
6416
+ flex-direction: row;
6417
+ flex-wrap: wrap;
6418
+ gap: var(--amplify-space-small);
6419
+ padding-block-start: var(--amplify-space-small);
6420
+ }
6421
+ .amplify-ai-conversation__attachment__image {
6422
+ width: 1rem;
6423
+ height: 1rem;
6424
+ -o-object-fit: cover;
6425
+ object-fit: cover;
6426
+ }
6427
+ .amplify-ai-conversation__attachment__size {
6428
+ color: var(--amplify-colors-font-tertiary);
6429
+ }
6430
+ .amplify-ai-conversation__attachment__remove {
6431
+ padding: var(--amplify-space-xxs);
6432
+ }
6433
+ .amplify-ai-conversation__prompt {
6434
+ font-weight: normal;
6435
+ }
6436
+
6187
6437
  .amplify-label-start {
6188
6438
  flex-direction: row;
6189
6439
  }
@@ -84,6 +84,35 @@
84
84
  --amplify-components-autocomplete-menu-loading-gap: var(--amplify-space-xxxs);
85
85
  --amplify-components-autocomplete-menu-space-shared-padding-block: var(--amplify-space-xs);
86
86
  --amplify-components-autocomplete-menu-space-shared-padding-inline: var(--amplify-space-small);
87
+ --amplify-components-avatar-color: var(--amplify-colors-font-tertiary);
88
+ --amplify-components-avatar-line-height: 1;
89
+ --amplify-components-avatar-font-weight: var(--amplify-font-weights-semibold);
90
+ --amplify-components-avatar-font-size: var(--amplify-font-sizes-small);
91
+ --amplify-components-avatar-text-align: center;
92
+ --amplify-components-avatar-width: var(--amplify-font-sizes-xxl);
93
+ --amplify-components-avatar-height: var(--amplify-font-sizes-xxl);
94
+ --amplify-components-avatar-background-color: var(--amplify-colors-background-tertiary);
95
+ --amplify-components-avatar-border-radius: 100%;
96
+ --amplify-components-avatar-border-color: var(--amplify-colors-border-primary);
97
+ --amplify-components-avatar-border-width: var(--amplify-border-widths-medium);
98
+ --amplify-components-avatar-info-color: var(--amplify-colors-font-info);
99
+ --amplify-components-avatar-info-background-color: var(--amplify-colors-background-info);
100
+ --amplify-components-avatar-info-border-color: var(--amplify-colors-border-info);
101
+ --amplify-components-avatar-warning-color: var(--amplify-colors-font-warning);
102
+ --amplify-components-avatar-warning-background-color: var(--amplify-colors-background-warning);
103
+ --amplify-components-avatar-warning-border-color: var(--amplify-colors-border-warning);
104
+ --amplify-components-avatar-success-color: var(--amplify-colors-font-success);
105
+ --amplify-components-avatar-success-background-color: var(--amplify-colors-background-success);
106
+ --amplify-components-avatar-success-border-color: var(--amplify-colors-border-success);
107
+ --amplify-components-avatar-error-color: var(--amplify-colors-font-error);
108
+ --amplify-components-avatar-error-background-color: var(--amplify-colors-background-error);
109
+ --amplify-components-avatar-error-border-color: var(--amplify-colors-border-error);
110
+ --amplify-components-avatar-small-font-size: var(--amplify-font-sizes-xs);
111
+ --amplify-components-avatar-small-width: var(--amplify-font-sizes-xl);
112
+ --amplify-components-avatar-small-height: var(--amplify-font-sizes-xl);
113
+ --amplify-components-avatar-large-font-size: var(--amplify-font-sizes-medium);
114
+ --amplify-components-avatar-large-width: var(--amplify-font-sizes-xxxl);
115
+ --amplify-components-avatar-large-height: var(--amplify-font-sizes-xxxl);
87
116
  --amplify-components-badge-color: var(--amplify-colors-font-primary);
88
117
  --amplify-components-badge-line-height: 1;
89
118
  --amplify-components-badge-font-weight: var(--amplify-font-weights-semibold);
@@ -3422,6 +3451,118 @@ strong.amplify-text {
3422
3451
  gap: var(--amplify-space-medium);
3423
3452
  }
3424
3453
 
3454
+ .amplify-avatar {
3455
+ --avatar-color: var(--amplify-components-avatar-color);
3456
+ --avatar-background-color: var(--amplify-components-avatar-background-color);
3457
+ --avatar-filled-background-color: var(--amplify-components-avatar-color);
3458
+ --avatar-filled-color: var(--amplify-components-avatar-background-color);
3459
+ --avatar-border-color: var(--amplify-components-avatar-border-color);
3460
+ --avatar-size: var(--amplify-components-avatar-width);
3461
+ --amplify-components-icon-height: 100%;
3462
+ display: inline-flex;
3463
+ align-items: center;
3464
+ justify-content: center;
3465
+ color: var(--avatar-color);
3466
+ background-color: var(--avatar-background-color);
3467
+ font-weight: var(--amplify-components-avatar-font-weight);
3468
+ font-size: var(--amplify-components-avatar-font-size);
3469
+ width: var(--amplify-components-avatar-width);
3470
+ height: var(--amplify-components-avatar-height);
3471
+ overflow: hidden;
3472
+ border-radius: var(--amplify-components-avatar-border-radius);
3473
+ }
3474
+ .amplify-avatar--filled {
3475
+ background-color: var(--avatar-filled-background-color);
3476
+ color: var(--avatar-filled-color);
3477
+ }
3478
+ .amplify-avatar--outlined {
3479
+ border-width: var(--amplify-components-avatar-border-width);
3480
+ border-style: solid;
3481
+ padding: var(--amplify-components-avatar-border-width);
3482
+ border-color: var(--avatar-border-color);
3483
+ background-color: transparent;
3484
+ color: var(--avatar-color);
3485
+ }
3486
+ .amplify-avatar--small {
3487
+ --avatar-size: var(--amplify-components-avatar-small-width);
3488
+ width: var(--amplify-components-avatar-small-width);
3489
+ height: var(--amplify-components-avatar-small-height);
3490
+ font-size: var(--amplify-components-avatar-small-font-size);
3491
+ }
3492
+ .amplify-avatar--large {
3493
+ --avatar-size: var(--amplify-components-avatar-large-width);
3494
+ width: var(--amplify-components-avatar-large-width);
3495
+ height: var(--amplify-components-avatar-large-height);
3496
+ font-size: var(--amplify-components-avatar-large-font-size);
3497
+ }
3498
+ .amplify-avatar--warning {
3499
+ --avatar-border-color: var(
3500
+ --amplify-components-avatar-warning-border-color
3501
+ );
3502
+ --avatar-background-color: var(
3503
+ --amplify-components-avatar-warning-background-color
3504
+ );
3505
+ --avatar-color: var(--amplify-components-avatar-warning-color);
3506
+ --avatar-filled-background-color: var(
3507
+ --amplify-components-avatar-warning-color
3508
+ );
3509
+ --avatar-filled-color: var(
3510
+ --amplify-components-avatar-warning-background-color
3511
+ );
3512
+ }
3513
+ .amplify-avatar--error {
3514
+ --avatar-border-color: var(--amplify-components-avatar-error-border-color);
3515
+ --avatar-background-color: var(
3516
+ --amplify-components-avatar-error-background-color
3517
+ );
3518
+ --avatar-color: var(--amplify-components-avatar-error-color);
3519
+ --avatar-filled-background-color: var(
3520
+ --amplify-components-avatar-error-color
3521
+ );
3522
+ --avatar-filled-color: var(
3523
+ --amplify-components-avatar-error-background-color
3524
+ );
3525
+ }
3526
+ .amplify-avatar--info {
3527
+ --avatar-border-color: var(--amplify-components-avatar-info-border-color);
3528
+ --avatar-background-color: var(
3529
+ --amplify-components-avatar-info-background-color
3530
+ );
3531
+ --avatar-color: var(--amplify-components-avatar-info-color);
3532
+ --avatar-filled-background-color: var(
3533
+ --amplify-components-avatar-info-color
3534
+ );
3535
+ --avatar-filled-color: var(
3536
+ --amplify-components-avatar-info-background-color
3537
+ );
3538
+ }
3539
+ .amplify-avatar--success {
3540
+ --avatar-border-color: var(
3541
+ --amplify-components-avatar-success-border-color
3542
+ );
3543
+ --avatar-background-color: var(
3544
+ --amplify-components-avatar-success-background-color
3545
+ );
3546
+ --avatar-color: var(--amplify-components-avatar-success-color);
3547
+ --avatar-filled-background-color: var(
3548
+ --amplify-components-avatar-success-color
3549
+ );
3550
+ --avatar-filled-color: var(
3551
+ --amplify-components-avatar-success-background-color
3552
+ );
3553
+ }
3554
+ .amplify-avatar__icon {
3555
+ display: flex;
3556
+ font-size: calc(var(--avatar-size) * 0.6);
3557
+ }
3558
+ .amplify-avatar__image {
3559
+ width: 100%;
3560
+ height: 100%;
3561
+ -o-object-fit: cover;
3562
+ object-fit: cover;
3563
+ display: block;
3564
+ }
3565
+
3425
3566
  .amplify-breadcrumbs__list {
3426
3567
  display: flex;
3427
3568
  flex-wrap: var(--amplify-components-breadcrumbs-flex-wrap);
@@ -6185,6 +6326,115 @@ html[dir=rtl] .amplify-field-group__inner-start {
6185
6326
  gap: var(--amplify-space-small);
6186
6327
  }
6187
6328
 
6329
+ .amplify-ai-conversation {
6330
+ display: flex;
6331
+ flex-direction: column;
6332
+ height: 100%;
6333
+ }
6334
+ .amplify-ai-conversation__message {
6335
+ --content-bg: transparent;
6336
+ display: flex;
6337
+ flex-direction: var(--flex-direction);
6338
+ gap: var(--amplify-space-small);
6339
+ padding: var(--amplify-space-small);
6340
+ }
6341
+ .amplify-ai-conversation__message__list {
6342
+ display: flex;
6343
+ flex-direction: column;
6344
+ }
6345
+ .amplify-ai-conversation__message__avatar {
6346
+ flex-shrink: 0;
6347
+ }
6348
+ .amplify-ai-conversation__message__sender {
6349
+ display: flex;
6350
+ flex-direction: var(--flex-direction);
6351
+ align-items: center;
6352
+ height: var(--amplify-components-avatar-height);
6353
+ gap: var(--amplify-space-small);
6354
+ }
6355
+ .amplify-ai-conversation__message__sender__username {
6356
+ font-weight: bold;
6357
+ }
6358
+ .amplify-ai-conversation__message__sender__timestamp {
6359
+ color: var(--amplify-colors-font-tertiary);
6360
+ font-size: var(--amplify-font-sizes-small);
6361
+ }
6362
+ .amplify-ai-conversation__message__body {
6363
+ display: flex;
6364
+ flex-direction: column;
6365
+ align-items: var(--body-align-items);
6366
+ gap: var(--amplify-space-xs);
6367
+ }
6368
+ .amplify-ai-conversation__message__content {
6369
+ background-color: var(--content-bg);
6370
+ border-radius: var(--amplify-radii-medium);
6371
+ padding: var(--content-padding);
6372
+ }
6373
+ .amplify-ai-conversation__message__actions {
6374
+ display: flex;
6375
+ flex-direction: row;
6376
+ }
6377
+ .amplify-ai-conversation__message--bubble {
6378
+ --content-bg: var(--bg-color);
6379
+ --content-padding: var(--amplify-space-xxs) var(--amplify-space-xs);
6380
+ --flex-direction: row-reverse;
6381
+ --body-align-items: flex-end;
6382
+ }
6383
+ .amplify-ai-conversation__message--user {
6384
+ --bg-color: var(--amplify-colors-background-secondary);
6385
+ }
6386
+ .amplify-ai-conversation__message--assistant {
6387
+ --bg-color: var(--amplify-colors-primary-10);
6388
+ --flex-direction: row;
6389
+ --body-align-items: flex-start;
6390
+ }
6391
+ .amplify-ai-conversation__form {
6392
+ display: flex;
6393
+ flex-direction: row;
6394
+ align-items: flex-start;
6395
+ gap: var(--amplify-space-small);
6396
+ }
6397
+ .amplify-ai-conversation__form__dropzone {
6398
+ text-align: initial;
6399
+ border: none;
6400
+ padding: var(--amplify-space-xs);
6401
+ }
6402
+ .amplify-ai-conversation__attachment {
6403
+ display: flex;
6404
+ flex-direction: row;
6405
+ padding-block: var(--amplify-space-xxxs);
6406
+ padding-inline: var(--amplify-space-xs);
6407
+ border-width: var(--amplify-border-widths-small);
6408
+ border-style: solid;
6409
+ border-color: var(--amplify-colors-border-secondary);
6410
+ border-radius: var(--amplify-radii-small);
6411
+ align-items: center;
6412
+ gap: var(--amplify-space-xs);
6413
+ font-size: var(--amplify-font-sizes-small);
6414
+ }
6415
+ .amplify-ai-conversation__attachment__list {
6416
+ display: flex;
6417
+ flex-direction: row;
6418
+ flex-wrap: wrap;
6419
+ gap: var(--amplify-space-small);
6420
+ padding-block-start: var(--amplify-space-small);
6421
+ }
6422
+ .amplify-ai-conversation__attachment__image {
6423
+ width: 1rem;
6424
+ height: 1rem;
6425
+ -o-object-fit: cover;
6426
+ object-fit: cover;
6427
+ }
6428
+ .amplify-ai-conversation__attachment__size {
6429
+ color: var(--amplify-colors-font-tertiary);
6430
+ }
6431
+ .amplify-ai-conversation__attachment__remove {
6432
+ padding: var(--amplify-space-xxs);
6433
+ }
6434
+ .amplify-ai-conversation__prompt {
6435
+ font-weight: normal;
6436
+ }
6437
+
6188
6438
  .amplify-label-start {
6189
6439
  flex-direction: row;
6190
6440
  }
package/dist/theme.css CHANGED
@@ -80,6 +80,35 @@
80
80
  --amplify-components-autocomplete-menu-loading-gap: var(--amplify-space-xxxs);
81
81
  --amplify-components-autocomplete-menu-space-shared-padding-block: var(--amplify-space-xs);
82
82
  --amplify-components-autocomplete-menu-space-shared-padding-inline: var(--amplify-space-small);
83
+ --amplify-components-avatar-color: var(--amplify-colors-font-tertiary);
84
+ --amplify-components-avatar-line-height: 1;
85
+ --amplify-components-avatar-font-weight: var(--amplify-font-weights-semibold);
86
+ --amplify-components-avatar-font-size: var(--amplify-font-sizes-small);
87
+ --amplify-components-avatar-text-align: center;
88
+ --amplify-components-avatar-width: var(--amplify-font-sizes-xxl);
89
+ --amplify-components-avatar-height: var(--amplify-font-sizes-xxl);
90
+ --amplify-components-avatar-background-color: var(--amplify-colors-background-tertiary);
91
+ --amplify-components-avatar-border-radius: 100%;
92
+ --amplify-components-avatar-border-color: var(--amplify-colors-border-primary);
93
+ --amplify-components-avatar-border-width: var(--amplify-border-widths-medium);
94
+ --amplify-components-avatar-info-color: var(--amplify-colors-font-info);
95
+ --amplify-components-avatar-info-background-color: var(--amplify-colors-background-info);
96
+ --amplify-components-avatar-info-border-color: var(--amplify-colors-border-info);
97
+ --amplify-components-avatar-warning-color: var(--amplify-colors-font-warning);
98
+ --amplify-components-avatar-warning-background-color: var(--amplify-colors-background-warning);
99
+ --amplify-components-avatar-warning-border-color: var(--amplify-colors-border-warning);
100
+ --amplify-components-avatar-success-color: var(--amplify-colors-font-success);
101
+ --amplify-components-avatar-success-background-color: var(--amplify-colors-background-success);
102
+ --amplify-components-avatar-success-border-color: var(--amplify-colors-border-success);
103
+ --amplify-components-avatar-error-color: var(--amplify-colors-font-error);
104
+ --amplify-components-avatar-error-background-color: var(--amplify-colors-background-error);
105
+ --amplify-components-avatar-error-border-color: var(--amplify-colors-border-error);
106
+ --amplify-components-avatar-small-font-size: var(--amplify-font-sizes-xs);
107
+ --amplify-components-avatar-small-width: var(--amplify-font-sizes-xl);
108
+ --amplify-components-avatar-small-height: var(--amplify-font-sizes-xl);
109
+ --amplify-components-avatar-large-font-size: var(--amplify-font-sizes-medium);
110
+ --amplify-components-avatar-large-width: var(--amplify-font-sizes-xxxl);
111
+ --amplify-components-avatar-large-height: var(--amplify-font-sizes-xxxl);
83
112
  --amplify-components-badge-color: var(--amplify-colors-font-primary);
84
113
  --amplify-components-badge-line-height: 1;
85
114
  --amplify-components-badge-font-weight: var(--amplify-font-weights-semibold);
@@ -0,0 +1,5 @@
1
+ import { Modifiers, ComponentStyles, Elements, ColorTheme, Size } from './utils';
2
+ export type AvatarTheme<Required extends boolean = false> = ComponentStyles & Modifiers<Size | ColorTheme | 'filled' | 'outlined', Required> & Elements<{
3
+ icon?: ComponentStyles;
4
+ image?: ComponentStyles;
5
+ }, Required>;
@@ -2,6 +2,7 @@ import { WebTokens } from '../tokens';
2
2
  import { AccordionTheme } from './accordion';
3
3
  import { AlertTheme } from './alert';
4
4
  import { AutoCompleteTheme } from './autocomplete';
5
+ import { AvatarTheme } from './avatar';
5
6
  import { BadgeTheme } from './badge';
6
7
  import { BreadcrumbsTheme } from './breadcrumbs';
7
8
  import { ButtonTheme } from './button';
@@ -43,11 +44,12 @@ import { ToggleButtonTheme, ToggleButtonGroupTheme } from './toggleButton';
43
44
  import { ComponentTheme, BaseComponentTheme, BaseTheme } from './utils';
44
45
  export { ClassNameFunction } from '../createTheme/createComponentClasses';
45
46
  export type { ComponentTheme, BaseComponentTheme, BaseTheme };
46
- export type ComponentsTheme<TokensType extends WebTokens = WebTokens> = BaseComponentTheme<BaseTheme, string, TokensType> | BaseComponentTheme<AccordionTheme, 'accordion', TokensType> | BaseComponentTheme<AlertTheme, 'alert', TokensType> | BaseComponentTheme<AutoCompleteTheme, 'autocomplete', TokensType> | BaseComponentTheme<BadgeTheme, 'badge', TokensType> | BaseComponentTheme<BreadcrumbsTheme, 'breadcrumbs', TokensType> | BaseComponentTheme<ButtonTheme, 'button', TokensType> | BaseComponentTheme<ButtonGroupTheme, 'buttongroup', TokensType> | BaseComponentTheme<CardTheme, 'card', TokensType> | BaseComponentTheme<CheckboxTheme, 'checkbox', TokensType> | BaseComponentTheme<CheckboxFieldTheme, 'checkboxfield', TokensType> | BaseComponentTheme<CollectionTheme, 'collection', TokensType> | BaseComponentTheme<DividerTheme, 'divider', TokensType> | BaseComponentTheme<DropZoneTheme, 'dropzone', TokensType> | BaseComponentTheme<FieldTheme, 'field', TokensType> | BaseComponentTheme<FieldGroupTheme, 'field-group', TokensType> | BaseComponentTheme<FieldsetTheme, 'fieldset', TokensType> | BaseComponentTheme<HeadingTheme, 'heading', TokensType> | BaseComponentTheme<HighlightMatchTheme, 'highlightmatch', TokensType> | BaseComponentTheme<InputTheme, 'input', TokensType> | BaseComponentTheme<LoaderTheme, 'loader', TokensType> | BaseComponentTheme<MenuTheme, 'menu', TokensType> | BaseComponentTheme<MessageTheme, 'message', TokensType> | BaseComponentTheme<PaginationTheme, 'pagination', TokensType> | BaseComponentTheme<PlaceholderTheme, 'placeholder', TokensType> | BaseComponentTheme<RatingTheme, 'rating', TokensType> | BaseComponentTheme<RadioTheme, 'radio', TokensType> | BaseComponentTheme<ScrollViewTheme, 'scrollview', TokensType> | BaseComponentTheme<SearchFieldTheme, 'searchfield', TokensType> | BaseComponentTheme<SelectTheme, 'select', TokensType> | BaseComponentTheme<SelectFieldTheme, 'selectfield', TokensType> | BaseComponentTheme<SliderFieldTheme, 'sliderfield', TokensType> | BaseComponentTheme<StepperFieldTheme, 'stepperfield', TokensType> | BaseComponentTheme<StorageManagerTheme, 'storagemanager', TokensType> | BaseComponentTheme<SwitchTheme, 'switch', TokensType> | BaseComponentTheme<SwitchFieldTheme, 'switchfield', TokensType> | BaseComponentTheme<TabsTheme, 'tabs', TokensType> | BaseComponentTheme<TableTheme, 'table', TokensType> | BaseComponentTheme<TextTheme, 'text', TokensType> | BaseComponentTheme<TextareaTheme, 'textarea', TokensType> | BaseComponentTheme<TextareaFieldTheme, 'textareafield', TokensType> | BaseComponentTheme<TextFieldTheme, 'textfield', TokensType> | BaseComponentTheme<ToggleButtonTheme, 'togglebutton', TokensType> | BaseComponentTheme<ToggleButtonGroupTheme, 'togglebuttongroup', TokensType>;
47
+ export type ComponentsTheme<TokensType extends WebTokens = WebTokens> = BaseComponentTheme<BaseTheme, string, TokensType> | BaseComponentTheme<AccordionTheme, 'accordion', TokensType> | BaseComponentTheme<AlertTheme, 'alert', TokensType> | BaseComponentTheme<AutoCompleteTheme, 'autocomplete', TokensType> | BaseComponentTheme<AvatarTheme, 'avatar', TokensType> | BaseComponentTheme<BadgeTheme, 'badge', TokensType> | BaseComponentTheme<BreadcrumbsTheme, 'breadcrumbs', TokensType> | BaseComponentTheme<ButtonTheme, 'button', TokensType> | BaseComponentTheme<ButtonGroupTheme, 'buttongroup', TokensType> | BaseComponentTheme<CardTheme, 'card', TokensType> | BaseComponentTheme<CheckboxTheme, 'checkbox', TokensType> | BaseComponentTheme<CheckboxFieldTheme, 'checkboxfield', TokensType> | BaseComponentTheme<CollectionTheme, 'collection', TokensType> | BaseComponentTheme<DividerTheme, 'divider', TokensType> | BaseComponentTheme<DropZoneTheme, 'dropzone', TokensType> | BaseComponentTheme<FieldTheme, 'field', TokensType> | BaseComponentTheme<FieldGroupTheme, 'field-group', TokensType> | BaseComponentTheme<FieldsetTheme, 'fieldset', TokensType> | BaseComponentTheme<HeadingTheme, 'heading', TokensType> | BaseComponentTheme<HighlightMatchTheme, 'highlightmatch', TokensType> | BaseComponentTheme<InputTheme, 'input', TokensType> | BaseComponentTheme<LoaderTheme, 'loader', TokensType> | BaseComponentTheme<MenuTheme, 'menu', TokensType> | BaseComponentTheme<MessageTheme, 'message', TokensType> | BaseComponentTheme<PaginationTheme, 'pagination', TokensType> | BaseComponentTheme<PlaceholderTheme, 'placeholder', TokensType> | BaseComponentTheme<RatingTheme, 'rating', TokensType> | BaseComponentTheme<RadioTheme, 'radio', TokensType> | BaseComponentTheme<ScrollViewTheme, 'scrollview', TokensType> | BaseComponentTheme<SearchFieldTheme, 'searchfield', TokensType> | BaseComponentTheme<SelectTheme, 'select', TokensType> | BaseComponentTheme<SelectFieldTheme, 'selectfield', TokensType> | BaseComponentTheme<SliderFieldTheme, 'sliderfield', TokensType> | BaseComponentTheme<StepperFieldTheme, 'stepperfield', TokensType> | BaseComponentTheme<StorageManagerTheme, 'storagemanager', TokensType> | BaseComponentTheme<SwitchTheme, 'switch', TokensType> | BaseComponentTheme<SwitchFieldTheme, 'switchfield', TokensType> | BaseComponentTheme<TabsTheme, 'tabs', TokensType> | BaseComponentTheme<TableTheme, 'table', TokensType> | BaseComponentTheme<TextTheme, 'text', TokensType> | BaseComponentTheme<TextareaTheme, 'textarea', TokensType> | BaseComponentTheme<TextareaFieldTheme, 'textareafield', TokensType> | BaseComponentTheme<TextFieldTheme, 'textfield', TokensType> | BaseComponentTheme<ToggleButtonTheme, 'togglebutton', TokensType> | BaseComponentTheme<ToggleButtonGroupTheme, 'togglebuttongroup', TokensType>;
47
48
  export type AllComponentThemes = {
48
49
  accordion: AccordionTheme;
49
50
  alert: AlertTheme;
50
51
  autocomplete: AutoCompleteTheme;
52
+ avatar: AvatarTheme;
51
53
  badge: BadgeTheme;
52
54
  breadcrumbs: BreadcrumbsTheme;
53
55
  button: ButtonTheme;
@@ -0,0 +1,14 @@
1
+ import { DesignTokenProperties, OutputVariantKey } from '../types/designToken';
2
+ type AvatarVariationTokens<OutputType> = DesignTokenProperties<'backgroundColor' | 'color' | 'borderColor', OutputType>;
3
+ type AvatarSizeTokens<OutputType> = DesignTokenProperties<'fontSize' | 'width' | 'height', OutputType>;
4
+ type AvatarKey = 'backgroundColor' | 'borderRadius' | 'borderWidth' | 'borderColor' | 'color' | 'fontSize' | 'fontWeight' | 'lineHeight' | 'height' | 'textAlign' | 'width';
5
+ export type AvatarTokens<OutputType extends OutputVariantKey> = DesignTokenProperties<AvatarKey, OutputType> & {
6
+ large?: AvatarSizeTokens<OutputType>;
7
+ small?: AvatarSizeTokens<OutputType>;
8
+ error?: AvatarVariationTokens<OutputType>;
9
+ info?: AvatarVariationTokens<OutputType>;
10
+ success?: AvatarVariationTokens<OutputType>;
11
+ warning?: AvatarVariationTokens<OutputType>;
12
+ };
13
+ export declare const avatar: Required<AvatarTokens<'default'>>;
14
+ export {};