@westpac/ui 0.47.0 → 0.48.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.
- package/CHANGELOG.md +18 -0
- package/dist/component-type.json +1 -1
- package/dist/components/accordion/accordion.component.js +4 -4
- package/dist/components/accordion/accordion.styles.d.ts +9 -0
- package/dist/components/accordion/accordion.styles.js +4 -1
- package/dist/components/accordion/components/accordion-item/accordion-item.component.d.ts +1 -1
- package/dist/components/accordion/components/accordion-item/accordion-item.component.js +7 -3
- package/dist/components/accordion/components/accordion-item/accordion-item.styles.d.ts +15 -0
- package/dist/components/accordion/components/accordion-item/accordion-item.styles.js +27 -5
- package/dist/components/accordion/components/accordion-item/accordion-item.types.d.ts +5 -0
- package/dist/components/alert/alert.styles.js +1 -1
- package/dist/components/field/field.component.js +1 -1
- package/dist/components/header/header.component.d.ts +1 -1
- package/dist/components/header/header.component.js +6 -2
- package/dist/components/header/header.types.d.ts +11 -1
- package/dist/components/modal/components/modal-backdrop/modal-backdrop.component.js +3 -2
- package/dist/components/modal/components/modal-backdrop/modal-backdrop.styles.js +1 -1
- package/dist/components/modal/modal.component.d.ts +1 -1
- package/dist/components/modal/modal.component.js +2 -1
- package/dist/components/modal/modal.types.d.ts +4 -0
- package/dist/css/westpac-ui.css +90 -40
- package/dist/css/westpac-ui.min.css +90 -40
- package/package.json +3 -3
- package/src/components/accordion/accordion.component.tsx +3 -3
- package/src/components/accordion/accordion.styles.ts +4 -1
- package/src/components/accordion/components/accordion-item/accordion-item.component.tsx +12 -2
- package/src/components/accordion/components/accordion-item/accordion-item.styles.ts +15 -6
- package/src/components/accordion/components/accordion-item/accordion-item.types.ts +6 -0
- package/src/components/alert/alert.styles.ts +1 -1
- package/src/components/field/field.component.tsx +5 -3
- package/src/components/header/header.component.tsx +4 -2
- package/src/components/header/header.types.ts +11 -1
- package/src/components/modal/components/modal-backdrop/modal-backdrop.component.tsx +2 -3
- package/src/components/modal/components/modal-backdrop/modal-backdrop.styles.ts +1 -1
- package/src/components/modal/modal.component.tsx +12 -2
- package/src/components/modal/modal.types.ts +4 -0
|
@@ -3356,9 +3356,6 @@ body {
|
|
|
3356
3356
|
.z-10 {
|
|
3357
3357
|
z-index: 10;
|
|
3358
3358
|
}
|
|
3359
|
-
.z-50 {
|
|
3360
|
-
z-index: 50;
|
|
3361
|
-
}
|
|
3362
3359
|
.z-\[999\] {
|
|
3363
3360
|
z-index: 999;
|
|
3364
3361
|
}
|
|
@@ -3620,6 +3617,9 @@ body {
|
|
|
3620
3617
|
.mt-\[0\.875rem\] {
|
|
3621
3618
|
margin-top: 0.875rem;
|
|
3622
3619
|
}
|
|
3620
|
+
.mt-\[1px\] {
|
|
3621
|
+
margin-top: 1px;
|
|
3622
|
+
}
|
|
3623
3623
|
.mt-\[200px\] {
|
|
3624
3624
|
margin-top: 200px;
|
|
3625
3625
|
}
|
|
@@ -4655,10 +4655,6 @@ body {
|
|
|
4655
4655
|
--tw-border-opacity: 1;
|
|
4656
4656
|
border-bottom-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
|
|
4657
4657
|
}
|
|
4658
|
-
.border-l-border {
|
|
4659
|
-
--tw-border-opacity: 1;
|
|
4660
|
-
border-left-color: rgba(var(--colors-border), var(--tw-border-opacity, 1));
|
|
4661
|
-
}
|
|
4662
4658
|
.border-l-hero {
|
|
4663
4659
|
--tw-border-opacity: 1;
|
|
4664
4660
|
border-left-color: rgba(var(--colors-hero), var(--tw-border-opacity, 1));
|
|
@@ -6287,9 +6283,9 @@ body {
|
|
|
6287
6283
|
--tw-shadow-colored: 0 5px 10px var(--tw-shadow-color);
|
|
6288
6284
|
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
|
6289
6285
|
}
|
|
6290
|
-
.shadow-\[
|
|
6291
|
-
--tw-shadow: inset 0 1px 0 var(--tw-shadow-color);
|
|
6292
|
-
--tw-shadow-colored: inset 0 1px 0 var(--tw-shadow-color);
|
|
6286
|
+
.shadow-\[inset_0px_1px_0_0_var\(--tw-shadow-color\)\2c inset_0_-1px_0_0_var\(--tw-shadow-color\)\] {
|
|
6287
|
+
--tw-shadow: inset 0px 1px 0 0 var(--tw-shadow-color),inset 0 -1px 0 0 var(--tw-shadow-color);
|
|
6288
|
+
--tw-shadow-colored: inset 0px 1px 0 0 var(--tw-shadow-color), inset 0 -1px 0 0 var(--tw-shadow-color);
|
|
6293
6289
|
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
|
6294
6290
|
}
|
|
6295
6291
|
.shadow-lg {
|
|
@@ -8190,10 +8186,17 @@ body {
|
|
|
8190
8186
|
border-top-left-radius: 0.1875rem;
|
|
8191
8187
|
border-bottom-left-radius: 0.1875rem;
|
|
8192
8188
|
}
|
|
8189
|
+
.group:first-child .group-first\:rounded-t-sm {
|
|
8190
|
+
border-top-left-radius: 0.125rem;
|
|
8191
|
+
border-top-right-radius: 0.125rem;
|
|
8192
|
+
}
|
|
8193
8193
|
.group\/add-on-before:first-child .group-first\/add-on-before\:\!border-x {
|
|
8194
8194
|
border-left-width: 1px !important;
|
|
8195
8195
|
border-right-width: 1px !important;
|
|
8196
8196
|
}
|
|
8197
|
+
.group:first-child .group-first\:border-t-0 {
|
|
8198
|
+
border-top-width: 0px;
|
|
8199
|
+
}
|
|
8197
8200
|
.group\/panel:first-child .group-first\/panel\:px-4 {
|
|
8198
8201
|
padding-left: 1.5rem;
|
|
8199
8202
|
padding-right: 1.5rem;
|
|
@@ -8201,6 +8204,9 @@ body {
|
|
|
8201
8204
|
.group\/panel:first-child .group-first\/panel\:pt-4 {
|
|
8202
8205
|
padding-top: 1.5rem;
|
|
8203
8206
|
}
|
|
8207
|
+
.group:last-child .group-last\:rounded-none {
|
|
8208
|
+
border-radius: 0px;
|
|
8209
|
+
}
|
|
8204
8210
|
.group\/add-on-after:last-child .group-last\/add-on-after\:\!rounded-r {
|
|
8205
8211
|
border-top-right-radius: 0.1875rem !important;
|
|
8206
8212
|
border-bottom-right-radius: 0.1875rem !important;
|
|
@@ -8213,6 +8219,10 @@ body {
|
|
|
8213
8219
|
border-top-right-radius: 0.1875rem;
|
|
8214
8220
|
border-bottom-right-radius: 0.1875rem;
|
|
8215
8221
|
}
|
|
8222
|
+
.group:last-child .group-last\:rounded-b-sm {
|
|
8223
|
+
border-bottom-right-radius: 0.125rem;
|
|
8224
|
+
border-bottom-left-radius: 0.125rem;
|
|
8225
|
+
}
|
|
8216
8226
|
.group\/add-on-after:last-child .group-last\/add-on-after\:\!border-x {
|
|
8217
8227
|
border-left-width: 1px !important;
|
|
8218
8228
|
border-right-width: 1px !important;
|
|
@@ -9014,9 +9024,6 @@ body {
|
|
|
9014
9024
|
.xsl\:self-center {
|
|
9015
9025
|
align-self: center;
|
|
9016
9026
|
}
|
|
9017
|
-
.xsl\:overflow-hidden {
|
|
9018
|
-
overflow: hidden;
|
|
9019
|
-
}
|
|
9020
9027
|
.xsl\:truncate {
|
|
9021
9028
|
overflow: hidden;
|
|
9022
9029
|
text-overflow: ellipsis;
|
|
@@ -9111,6 +9118,9 @@ body {
|
|
|
9111
9118
|
.xsl\:border-l-\[6px\] {
|
|
9112
9119
|
border-left-width: 6px;
|
|
9113
9120
|
}
|
|
9121
|
+
.xsl\:border-r {
|
|
9122
|
+
border-right-width: 1px;
|
|
9123
|
+
}
|
|
9114
9124
|
.xsl\:border-r-0 {
|
|
9115
9125
|
border-right-width: 0px;
|
|
9116
9126
|
}
|
|
@@ -9543,9 +9553,9 @@ body {
|
|
|
9543
9553
|
--tw-shadow-colored: inset 0 0 0 2px var(--tw-shadow-color);
|
|
9544
9554
|
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
|
9545
9555
|
}
|
|
9546
|
-
.xsl\:shadow-\[
|
|
9547
|
-
--tw-shadow: inset 0 1px 0 var(--tw-shadow-color);
|
|
9548
|
-
--tw-shadow-colored: inset 0 1px 0 var(--tw-shadow-color);
|
|
9556
|
+
.xsl\:shadow-\[inset_0px_1px_0_0_var\(--tw-shadow-color\)\2c inset_0_-1px_0_0_var\(--tw-shadow-color\)\] {
|
|
9557
|
+
--tw-shadow: inset 0px 1px 0 0 var(--tw-shadow-color),inset 0 -1px 0 0 var(--tw-shadow-color);
|
|
9558
|
+
--tw-shadow-colored: inset 0px 1px 0 0 var(--tw-shadow-color), inset 0 -1px 0 0 var(--tw-shadow-color);
|
|
9549
9559
|
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
|
9550
9560
|
}
|
|
9551
9561
|
.xsl\:shadow-md {
|
|
@@ -9838,6 +9848,14 @@ body {
|
|
|
9838
9848
|
--tw-bg-opacity: 1;
|
|
9839
9849
|
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
|
|
9840
9850
|
}
|
|
9851
|
+
.group:first-child .xsl\:group-first\:rounded-t-sm {
|
|
9852
|
+
border-top-left-radius: 0.125rem;
|
|
9853
|
+
border-top-right-radius: 0.125rem;
|
|
9854
|
+
}
|
|
9855
|
+
.group:last-child .xsl\:group-last\:rounded-b-sm {
|
|
9856
|
+
border-bottom-right-radius: 0.125rem;
|
|
9857
|
+
border-bottom-left-radius: 0.125rem;
|
|
9858
|
+
}
|
|
9841
9859
|
@media (hover: hover) and (pointer: fine) {
|
|
9842
9860
|
.group\/dualaction:hover .xsl\:group-hover\/dualaction\:text-primary {
|
|
9843
9861
|
--tw-text-opacity: 1;
|
|
@@ -10549,9 +10567,6 @@ body {
|
|
|
10549
10567
|
.sm\:self-center {
|
|
10550
10568
|
align-self: center;
|
|
10551
10569
|
}
|
|
10552
|
-
.sm\:overflow-hidden {
|
|
10553
|
-
overflow: hidden;
|
|
10554
|
-
}
|
|
10555
10570
|
.sm\:truncate {
|
|
10556
10571
|
overflow: hidden;
|
|
10557
10572
|
text-overflow: ellipsis;
|
|
@@ -10646,6 +10661,9 @@ body {
|
|
|
10646
10661
|
.sm\:border-l-\[6px\] {
|
|
10647
10662
|
border-left-width: 6px;
|
|
10648
10663
|
}
|
|
10664
|
+
.sm\:border-r {
|
|
10665
|
+
border-right-width: 1px;
|
|
10666
|
+
}
|
|
10649
10667
|
.sm\:border-r-0 {
|
|
10650
10668
|
border-right-width: 0px;
|
|
10651
10669
|
}
|
|
@@ -11101,9 +11119,9 @@ body {
|
|
|
11101
11119
|
--tw-shadow-colored: inset 0 0 0 2px var(--tw-shadow-color);
|
|
11102
11120
|
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
|
11103
11121
|
}
|
|
11104
|
-
.sm\:shadow-\[
|
|
11105
|
-
--tw-shadow: inset 0 1px 0 var(--tw-shadow-color);
|
|
11106
|
-
--tw-shadow-colored: inset 0 1px 0 var(--tw-shadow-color);
|
|
11122
|
+
.sm\:shadow-\[inset_0px_1px_0_0_var\(--tw-shadow-color\)\2c inset_0_-1px_0_0_var\(--tw-shadow-color\)\] {
|
|
11123
|
+
--tw-shadow: inset 0px 1px 0 0 var(--tw-shadow-color),inset 0 -1px 0 0 var(--tw-shadow-color);
|
|
11124
|
+
--tw-shadow-colored: inset 0px 1px 0 0 var(--tw-shadow-color), inset 0 -1px 0 0 var(--tw-shadow-color);
|
|
11107
11125
|
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
|
11108
11126
|
}
|
|
11109
11127
|
.sm\:shadow-md {
|
|
@@ -11396,6 +11414,14 @@ body {
|
|
|
11396
11414
|
--tw-bg-opacity: 1;
|
|
11397
11415
|
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
|
|
11398
11416
|
}
|
|
11417
|
+
.group:first-child .sm\:group-first\:rounded-t-sm {
|
|
11418
|
+
border-top-left-radius: 0.125rem;
|
|
11419
|
+
border-top-right-radius: 0.125rem;
|
|
11420
|
+
}
|
|
11421
|
+
.group:last-child .sm\:group-last\:rounded-b-sm {
|
|
11422
|
+
border-bottom-right-radius: 0.125rem;
|
|
11423
|
+
border-bottom-left-radius: 0.125rem;
|
|
11424
|
+
}
|
|
11399
11425
|
@media (hover: hover) and (pointer: fine) {
|
|
11400
11426
|
.group\/checkbox-option:hover .sm\:group-hover\/checkbox-option\:translate-x-1 {
|
|
11401
11427
|
--tw-translate-x: 0.375rem;
|
|
@@ -12178,9 +12204,6 @@ body {
|
|
|
12178
12204
|
.md\:self-center {
|
|
12179
12205
|
align-self: center;
|
|
12180
12206
|
}
|
|
12181
|
-
.md\:overflow-hidden {
|
|
12182
|
-
overflow: hidden;
|
|
12183
|
-
}
|
|
12184
12207
|
.md\:truncate {
|
|
12185
12208
|
overflow: hidden;
|
|
12186
12209
|
text-overflow: ellipsis;
|
|
@@ -12278,6 +12301,9 @@ body {
|
|
|
12278
12301
|
.md\:border-l-\[6px\] {
|
|
12279
12302
|
border-left-width: 6px;
|
|
12280
12303
|
}
|
|
12304
|
+
.md\:border-r {
|
|
12305
|
+
border-right-width: 1px;
|
|
12306
|
+
}
|
|
12281
12307
|
.md\:border-r-0 {
|
|
12282
12308
|
border-right-width: 0px;
|
|
12283
12309
|
}
|
|
@@ -12741,9 +12767,9 @@ body {
|
|
|
12741
12767
|
--tw-shadow-colored: inset 0 0 0 2px var(--tw-shadow-color);
|
|
12742
12768
|
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
|
12743
12769
|
}
|
|
12744
|
-
.md\:shadow-\[
|
|
12745
|
-
--tw-shadow: inset 0 1px 0 var(--tw-shadow-color);
|
|
12746
|
-
--tw-shadow-colored: inset 0 1px 0 var(--tw-shadow-color);
|
|
12770
|
+
.md\:shadow-\[inset_0px_1px_0_0_var\(--tw-shadow-color\)\2c inset_0_-1px_0_0_var\(--tw-shadow-color\)\] {
|
|
12771
|
+
--tw-shadow: inset 0px 1px 0 0 var(--tw-shadow-color),inset 0 -1px 0 0 var(--tw-shadow-color);
|
|
12772
|
+
--tw-shadow-colored: inset 0px 1px 0 0 var(--tw-shadow-color), inset 0 -1px 0 0 var(--tw-shadow-color);
|
|
12747
12773
|
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
|
12748
12774
|
}
|
|
12749
12775
|
.md\:shadow-md {
|
|
@@ -13036,6 +13062,14 @@ body {
|
|
|
13036
13062
|
--tw-bg-opacity: 1;
|
|
13037
13063
|
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
|
|
13038
13064
|
}
|
|
13065
|
+
.group:first-child .md\:group-first\:rounded-t-sm {
|
|
13066
|
+
border-top-left-radius: 0.125rem;
|
|
13067
|
+
border-top-right-radius: 0.125rem;
|
|
13068
|
+
}
|
|
13069
|
+
.group:last-child .md\:group-last\:rounded-b-sm {
|
|
13070
|
+
border-bottom-right-radius: 0.125rem;
|
|
13071
|
+
border-bottom-left-radius: 0.125rem;
|
|
13072
|
+
}
|
|
13039
13073
|
@media (hover: hover) and (pointer: fine) {
|
|
13040
13074
|
.group\/dualaction:hover .md\:group-hover\/dualaction\:text-primary {
|
|
13041
13075
|
--tw-text-opacity: 1;
|
|
@@ -13800,9 +13834,6 @@ body {
|
|
|
13800
13834
|
.lg\:self-center {
|
|
13801
13835
|
align-self: center;
|
|
13802
13836
|
}
|
|
13803
|
-
.lg\:overflow-hidden {
|
|
13804
|
-
overflow: hidden;
|
|
13805
|
-
}
|
|
13806
13837
|
.lg\:truncate {
|
|
13807
13838
|
overflow: hidden;
|
|
13808
13839
|
text-overflow: ellipsis;
|
|
@@ -13897,6 +13928,9 @@ body {
|
|
|
13897
13928
|
.lg\:border-l-\[6px\] {
|
|
13898
13929
|
border-left-width: 6px;
|
|
13899
13930
|
}
|
|
13931
|
+
.lg\:border-r {
|
|
13932
|
+
border-right-width: 1px;
|
|
13933
|
+
}
|
|
13900
13934
|
.lg\:border-r-0 {
|
|
13901
13935
|
border-right-width: 0px;
|
|
13902
13936
|
}
|
|
@@ -14341,9 +14375,9 @@ body {
|
|
|
14341
14375
|
--tw-shadow-colored: inset 0 0 0 2px var(--tw-shadow-color);
|
|
14342
14376
|
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
|
14343
14377
|
}
|
|
14344
|
-
.lg\:shadow-\[
|
|
14345
|
-
--tw-shadow: inset 0 1px 0 var(--tw-shadow-color);
|
|
14346
|
-
--tw-shadow-colored: inset 0 1px 0 var(--tw-shadow-color);
|
|
14378
|
+
.lg\:shadow-\[inset_0px_1px_0_0_var\(--tw-shadow-color\)\2c inset_0_-1px_0_0_var\(--tw-shadow-color\)\] {
|
|
14379
|
+
--tw-shadow: inset 0px 1px 0 0 var(--tw-shadow-color),inset 0 -1px 0 0 var(--tw-shadow-color);
|
|
14380
|
+
--tw-shadow-colored: inset 0px 1px 0 0 var(--tw-shadow-color), inset 0 -1px 0 0 var(--tw-shadow-color);
|
|
14347
14381
|
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
|
14348
14382
|
}
|
|
14349
14383
|
.lg\:shadow-md {
|
|
@@ -14636,6 +14670,14 @@ body {
|
|
|
14636
14670
|
--tw-bg-opacity: 1;
|
|
14637
14671
|
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
|
|
14638
14672
|
}
|
|
14673
|
+
.group:first-child .lg\:group-first\:rounded-t-sm {
|
|
14674
|
+
border-top-left-radius: 0.125rem;
|
|
14675
|
+
border-top-right-radius: 0.125rem;
|
|
14676
|
+
}
|
|
14677
|
+
.group:last-child .lg\:group-last\:rounded-b-sm {
|
|
14678
|
+
border-bottom-right-radius: 0.125rem;
|
|
14679
|
+
border-bottom-left-radius: 0.125rem;
|
|
14680
|
+
}
|
|
14639
14681
|
@media (hover: hover) and (pointer: fine) {
|
|
14640
14682
|
.group\/dualaction:hover .lg\:group-hover\/dualaction\:text-primary {
|
|
14641
14683
|
--tw-text-opacity: 1;
|
|
@@ -15346,9 +15388,6 @@ body {
|
|
|
15346
15388
|
.xl\:self-center {
|
|
15347
15389
|
align-self: center;
|
|
15348
15390
|
}
|
|
15349
|
-
.xl\:overflow-hidden {
|
|
15350
|
-
overflow: hidden;
|
|
15351
|
-
}
|
|
15352
15391
|
.xl\:truncate {
|
|
15353
15392
|
overflow: hidden;
|
|
15354
15393
|
text-overflow: ellipsis;
|
|
@@ -15443,6 +15482,9 @@ body {
|
|
|
15443
15482
|
.xl\:border-l-\[6px\] {
|
|
15444
15483
|
border-left-width: 6px;
|
|
15445
15484
|
}
|
|
15485
|
+
.xl\:border-r {
|
|
15486
|
+
border-right-width: 1px;
|
|
15487
|
+
}
|
|
15446
15488
|
.xl\:border-r-0 {
|
|
15447
15489
|
border-right-width: 0px;
|
|
15448
15490
|
}
|
|
@@ -15869,9 +15911,9 @@ body {
|
|
|
15869
15911
|
--tw-shadow-colored: inset 0 0 0 2px var(--tw-shadow-color);
|
|
15870
15912
|
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
|
15871
15913
|
}
|
|
15872
|
-
.xl\:shadow-\[
|
|
15873
|
-
--tw-shadow: inset 0 1px 0 var(--tw-shadow-color);
|
|
15874
|
-
--tw-shadow-colored: inset 0 1px 0 var(--tw-shadow-color);
|
|
15914
|
+
.xl\:shadow-\[inset_0px_1px_0_0_var\(--tw-shadow-color\)\2c inset_0_-1px_0_0_var\(--tw-shadow-color\)\] {
|
|
15915
|
+
--tw-shadow: inset 0px 1px 0 0 var(--tw-shadow-color),inset 0 -1px 0 0 var(--tw-shadow-color);
|
|
15916
|
+
--tw-shadow-colored: inset 0px 1px 0 0 var(--tw-shadow-color), inset 0 -1px 0 0 var(--tw-shadow-color);
|
|
15875
15917
|
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
|
|
15876
15918
|
}
|
|
15877
15919
|
.xl\:shadow-md {
|
|
@@ -16164,6 +16206,14 @@ body {
|
|
|
16164
16206
|
--tw-bg-opacity: 1;
|
|
16165
16207
|
background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
|
|
16166
16208
|
}
|
|
16209
|
+
.group:first-child .xl\:group-first\:rounded-t-sm {
|
|
16210
|
+
border-top-left-radius: 0.125rem;
|
|
16211
|
+
border-top-right-radius: 0.125rem;
|
|
16212
|
+
}
|
|
16213
|
+
.group:last-child .xl\:group-last\:rounded-b-sm {
|
|
16214
|
+
border-bottom-right-radius: 0.125rem;
|
|
16215
|
+
border-bottom-left-radius: 0.125rem;
|
|
16216
|
+
}
|
|
16167
16217
|
@media (hover: hover) and (pointer: fine) {
|
|
16168
16218
|
.group\/dualaction:hover .xl\:group-hover\/dualaction\:text-primary {
|
|
16169
16219
|
--tw-text-opacity: 1;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@westpac/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.48.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"type": "module",
|
|
@@ -229,7 +229,6 @@
|
|
|
229
229
|
"@vitejs/plugin-react-swc": "^3.7.0",
|
|
230
230
|
"@vitest/coverage-v8": "~3.2.4",
|
|
231
231
|
"chokidar": "^3.5.3",
|
|
232
|
-
"colorjs.io": "~0.4.5",
|
|
233
232
|
"cross-env": "~7.0.3",
|
|
234
233
|
"csstype": "~3.1.3",
|
|
235
234
|
"eslint": "^9.32.0",
|
|
@@ -253,8 +252,8 @@
|
|
|
253
252
|
"typescript": "^5.5.4",
|
|
254
253
|
"vite": "^7.0.5",
|
|
255
254
|
"vitest": "^3.2.4",
|
|
256
|
-
"@westpac/eslint-config": "~1.0.1",
|
|
257
255
|
"@westpac/test-config": "~0.0.0",
|
|
256
|
+
"@westpac/eslint-config": "~1.0.1",
|
|
258
257
|
"@westpac/ts-config": "~0.0.0"
|
|
259
258
|
},
|
|
260
259
|
"dependencies": {
|
|
@@ -262,6 +261,7 @@
|
|
|
262
261
|
"@react-aria/accordion": "3.0.0-alpha.37",
|
|
263
262
|
"@react-aria/utils": "~3.29.1",
|
|
264
263
|
"@react-spectrum/utils": "~3.11.5",
|
|
264
|
+
"colorjs.io": "~0.4.5",
|
|
265
265
|
"clsx": "^1.2.1",
|
|
266
266
|
"lodash.throttle": "~4.1.1",
|
|
267
267
|
"motion": "~12.23.12",
|
|
@@ -50,11 +50,11 @@ function Accordion<T extends object>(
|
|
|
50
50
|
{...filterDOMProps(finalProps as DOMProps)}
|
|
51
51
|
{...accordionProps}
|
|
52
52
|
ref={domRef}
|
|
53
|
-
className={styles({ className, rounded })}
|
|
53
|
+
className={styles({ className, rounded, lego: look === 'lego' })}
|
|
54
54
|
>
|
|
55
|
-
<div
|
|
55
|
+
<div>
|
|
56
56
|
{[...state.collection].map(item => (
|
|
57
|
-
<AccordionItemContent<T> key={item.key} item={item} state={state} look={look} />
|
|
57
|
+
<AccordionItemContent<T> key={item.key} item={item} rounded={rounded} state={state} look={look} />
|
|
58
58
|
))}
|
|
59
59
|
</div>
|
|
60
60
|
</div>
|
|
@@ -16,6 +16,7 @@ export function AccordionItem<T = HTMLElement>({
|
|
|
16
16
|
className,
|
|
17
17
|
tag: Tag = 'div',
|
|
18
18
|
look = 'soft',
|
|
19
|
+
rounded = true,
|
|
19
20
|
...props
|
|
20
21
|
}: AccordionItemProps<T>) {
|
|
21
22
|
const ref = useRef<HTMLButtonElement>(null);
|
|
@@ -26,7 +27,7 @@ export function AccordionItem<T = HTMLElement>({
|
|
|
26
27
|
const isDisabled = state.disabledKeys.has(item.key);
|
|
27
28
|
const { hoverProps } = useHover({ isDisabled });
|
|
28
29
|
const { direction } = useLocale();
|
|
29
|
-
const styles = accordionItemStyles({ isOpen, isDisabled, look, isFocusVisible });
|
|
30
|
+
const styles = accordionItemStyles({ isOpen, isDisabled, look, isFocusVisible, rounded });
|
|
30
31
|
|
|
31
32
|
return (
|
|
32
33
|
<Tag className={styles.base({ className })}>
|
|
@@ -61,7 +62,16 @@ export function AccordionItem<T = HTMLElement>({
|
|
|
61
62
|
}}
|
|
62
63
|
transition={{ duration: 0.3, ease: [0.25, 0.1, 0.25, 1.0] }}
|
|
63
64
|
>
|
|
64
|
-
<div
|
|
65
|
+
<div
|
|
66
|
+
className={styles.content()}
|
|
67
|
+
// TODO: Remove below with updated accordion that uses disclosure as the issue doesn't happen with that version
|
|
68
|
+
// Need to call stopPropagation here as some events from children are bubbling up and focusing the accordion i.e. inputs
|
|
69
|
+
onBlur={e => {
|
|
70
|
+
e.stopPropagation();
|
|
71
|
+
}}
|
|
72
|
+
>
|
|
73
|
+
{item.props.children}
|
|
74
|
+
</div>
|
|
65
75
|
</m.div>
|
|
66
76
|
)}
|
|
67
77
|
</AnimatePresence>
|
|
@@ -3,8 +3,8 @@ import { tv } from 'tailwind-variants';
|
|
|
3
3
|
export const styles = tv(
|
|
4
4
|
{
|
|
5
5
|
slots: {
|
|
6
|
-
base: '
|
|
7
|
-
itemHeader: 'typography-body-9 flex w-full flex-1 items-center justify-between px-3 py-2',
|
|
6
|
+
base: 'group',
|
|
7
|
+
itemHeader: 'typography-body-9 flex w-full flex-1 items-center justify-between px-3 py-2 group-first:border-t-0',
|
|
8
8
|
headerTitleWrapper: 'flex-1 pr-2 text-left',
|
|
9
9
|
indicator: 'size-3 rotate-90',
|
|
10
10
|
content: 'hidden',
|
|
@@ -16,12 +16,12 @@ export const styles = tv(
|
|
|
16
16
|
},
|
|
17
17
|
lego: {
|
|
18
18
|
itemHeader:
|
|
19
|
-
'border-l-[0.375rem] border-border bg-light shadow-[
|
|
19
|
+
'mb-[-1px] border-l-[0.375rem] border-r border-border bg-light shadow-[inset_0px_1px_0_0_var(--tw-shadow-color),inset_0_-1px_0_0_var(--tw-shadow-color)] !shadow-border transition-colors',
|
|
20
20
|
},
|
|
21
21
|
},
|
|
22
22
|
isOpen: {
|
|
23
23
|
true: {
|
|
24
|
-
content: 'block border-
|
|
24
|
+
content: 'block border-border p-3',
|
|
25
25
|
},
|
|
26
26
|
false: {
|
|
27
27
|
base: '',
|
|
@@ -40,6 +40,7 @@ export const styles = tv(
|
|
|
40
40
|
itemHeader: 'outline-none',
|
|
41
41
|
},
|
|
42
42
|
},
|
|
43
|
+
rounded: { true: { itemHeader: 'group-first:rounded-t-sm group-last:rounded-b-sm' } },
|
|
43
44
|
},
|
|
44
45
|
compoundSlots: [
|
|
45
46
|
{
|
|
@@ -55,9 +56,17 @@ export const styles = tv(
|
|
|
55
56
|
},
|
|
56
57
|
{
|
|
57
58
|
slots: ['content'],
|
|
58
|
-
look: '
|
|
59
|
-
|
|
59
|
+
look: 'soft',
|
|
60
|
+
isOpen: true,
|
|
61
|
+
className: 'border-t',
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
slots: ['itemHeader'],
|
|
65
|
+
isOpen: true,
|
|
66
|
+
rounded: true,
|
|
67
|
+
className: 'group-last:rounded-none',
|
|
60
68
|
},
|
|
69
|
+
{ slots: ['content'], isOpen: true, look: 'lego', className: 'mt-[1px] border-l-[0.375rem] border-r' },
|
|
61
70
|
],
|
|
62
71
|
},
|
|
63
72
|
{ responsiveVariants: ['xsl', 'sm', 'md', 'lg', 'xl'] },
|
|
@@ -2,6 +2,8 @@ import { HTMLAttributes, ReactNode } from 'react';
|
|
|
2
2
|
import { Node, TreeState } from 'react-stately';
|
|
3
3
|
import { type VariantProps } from 'tailwind-variants';
|
|
4
4
|
|
|
5
|
+
import { AccordionProps } from '../../accordion.types.js';
|
|
6
|
+
|
|
5
7
|
import { styles } from './accordion-item.styles.js';
|
|
6
8
|
|
|
7
9
|
type Variants = VariantProps<typeof styles>;
|
|
@@ -19,6 +21,10 @@ export type AccordionItemProps<T = HTMLElement> = {
|
|
|
19
21
|
* Look of the item
|
|
20
22
|
*/
|
|
21
23
|
look?: Variants['look'];
|
|
24
|
+
/**
|
|
25
|
+
* Whether accordion is rounded
|
|
26
|
+
*/
|
|
27
|
+
rounded?: AccordionProps['rounded'];
|
|
22
28
|
/**
|
|
23
29
|
* Tree state
|
|
24
30
|
*/
|
|
@@ -3,7 +3,7 @@ import { tv } from 'tailwind-variants';
|
|
|
3
3
|
export const styles = tv(
|
|
4
4
|
{
|
|
5
5
|
slots: {
|
|
6
|
-
base: 'typography-body-10 relative mb-
|
|
6
|
+
base: 'typography-body-10 relative mb-5 xsl:flex',
|
|
7
7
|
icon: 'float-left flex-none',
|
|
8
8
|
body: 'relative flex-1 overflow-hidden xsl:top-[0.125rem] [&_a]:underline',
|
|
9
9
|
heading: 'typography-body-9 mb-1 font-bold',
|
|
@@ -37,9 +37,11 @@ export function Field({
|
|
|
37
37
|
|
|
38
38
|
return (
|
|
39
39
|
<Tag className={styles({ className })} {...props}>
|
|
40
|
-
|
|
41
|
-
{
|
|
42
|
-
|
|
40
|
+
{label && (
|
|
41
|
+
<Label size={labelSize} {...labelProps}>
|
|
42
|
+
{label}
|
|
43
|
+
</Label>
|
|
44
|
+
)}
|
|
43
45
|
{hintMessage && <Hint {...descriptionProps}>{hintMessage}</Hint>}
|
|
44
46
|
{errorMessage && <ErrorMessage {...errorMessageProps} message={errorMessage} />}
|
|
45
47
|
{renderChildren()}
|
|
@@ -52,10 +52,12 @@ const logoMap = {
|
|
|
52
52
|
};
|
|
53
53
|
|
|
54
54
|
export function Header({
|
|
55
|
+
anchorTarget,
|
|
55
56
|
brand,
|
|
56
57
|
className,
|
|
57
58
|
children,
|
|
58
59
|
fixed = false,
|
|
60
|
+
fixedMaxWidth,
|
|
59
61
|
isScrolled,
|
|
60
62
|
leftIcon,
|
|
61
63
|
leftOnClick,
|
|
@@ -97,7 +99,7 @@ export function Header({
|
|
|
97
99
|
|
|
98
100
|
return (
|
|
99
101
|
<header className={styles.base({ className })} {...props}>
|
|
100
|
-
<div className={styles.inner()}>
|
|
102
|
+
<div className={styles.inner()} style={{ maxWidth: fixed ? fixedMaxWidth : undefined }}>
|
|
101
103
|
{skipToContentId && <SkipLink href={skipToContentId}>{skipLinkContent}</SkipLink>}
|
|
102
104
|
{leftIcon && (
|
|
103
105
|
<div className={styles.leftContent()}>
|
|
@@ -113,7 +115,7 @@ export function Header({
|
|
|
113
115
|
</div>
|
|
114
116
|
)}
|
|
115
117
|
{/* useFocusRing was causing this link to need two clicks to activate so focus-visible styling is used instead */}
|
|
116
|
-
<a href={logoLink} className={styles.logoLink()} onClick={logoOnClick}>
|
|
118
|
+
<a href={logoLink} target={anchorTarget} className={styles.logoLink()} onClick={logoOnClick}>
|
|
117
119
|
<SmallLogo align={logoAlignment} aria-label={logoAssistiveText} className={styles.smallLogo()} />
|
|
118
120
|
<LargeLogo aria-label={logoAssistiveText} className={styles.largeLogo()} />
|
|
119
121
|
</a>
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Property } from 'csstype';
|
|
2
|
+
import { HTMLAttributeAnchorTarget, HTMLAttributes } from 'react';
|
|
2
3
|
|
|
3
4
|
import { BrandKey } from '../../tailwind/index.js';
|
|
4
5
|
|
|
5
6
|
export type HeaderProps = {
|
|
7
|
+
/**
|
|
8
|
+
* Target for the logo link
|
|
9
|
+
*/
|
|
10
|
+
anchorTarget?: HTMLAttributeAnchorTarget;
|
|
6
11
|
/**
|
|
7
12
|
* Icon for brand
|
|
8
13
|
*/
|
|
@@ -11,6 +16,11 @@ export type HeaderProps = {
|
|
|
11
16
|
* Enable fixed header
|
|
12
17
|
*/
|
|
13
18
|
fixed?: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Set max width for fixed header for certain layouts
|
|
21
|
+
* NOTE: Using max-w in classname will work for non-fixed headers
|
|
22
|
+
*/
|
|
23
|
+
fixedMaxWidth?: Property.MaxWidth;
|
|
14
24
|
/**
|
|
15
25
|
* Used with fixed to show drop shadow when something on screen is scrolled that should trigger drop shadow but doesn't
|
|
16
26
|
*/
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
|
|
3
2
|
import React, { useMemo, useRef } from 'react';
|
|
4
3
|
import { Overlay, useModalOverlay } from 'react-aria';
|
|
5
4
|
|
|
@@ -13,7 +12,7 @@ export function ModalBackdrop({ zIndex = 100, portalContainer, size, ...props }:
|
|
|
13
12
|
const { children, state, className } = props;
|
|
14
13
|
|
|
15
14
|
const ref = useRef(null);
|
|
16
|
-
const styles = backdropStyles({
|
|
15
|
+
const styles = backdropStyles({ fullscreen: size === 'full', fluid: size === 'fluid' });
|
|
17
16
|
|
|
18
17
|
const { modalProps, underlayProps } = useModalOverlay(props, state, ref);
|
|
19
18
|
|
|
@@ -33,7 +32,7 @@ export function ModalBackdrop({ zIndex = 100, portalContainer, size, ...props }:
|
|
|
33
32
|
|
|
34
33
|
return (
|
|
35
34
|
<Overlay portalContainer={portalContainer || brandContainer}>
|
|
36
|
-
<div
|
|
35
|
+
<div className={styles.base({ className })} style={{ zIndex }} {...underlayProps}>
|
|
37
36
|
<div {...modalProps} ref={ref} className={styles.modal()}>
|
|
38
37
|
{children}
|
|
39
38
|
</div>
|
|
@@ -2,7 +2,7 @@ import { tv } from 'tailwind-variants';
|
|
|
2
2
|
|
|
3
3
|
export const styles = tv({
|
|
4
4
|
slots: {
|
|
5
|
-
base: 'fixed inset-0
|
|
5
|
+
base: 'fixed inset-0 flex animate-fadeIn items-center justify-center overflow-y-auto bg-black/50 p-2',
|
|
6
6
|
modal: 'relative top-3 z-10 h-fit w-full animate-fadeInDown',
|
|
7
7
|
},
|
|
8
8
|
variants: {
|
|
@@ -5,9 +5,19 @@ import React from 'react';
|
|
|
5
5
|
import { ModalBackdrop, ModalDialog } from './components/index.js';
|
|
6
6
|
import { type ModalProps } from './modal.types.js';
|
|
7
7
|
|
|
8
|
-
export function Modal({
|
|
8
|
+
export function Modal({
|
|
9
|
+
children,
|
|
10
|
+
backdropStyle,
|
|
11
|
+
title,
|
|
12
|
+
role,
|
|
13
|
+
body,
|
|
14
|
+
size,
|
|
15
|
+
className,
|
|
16
|
+
fullscreen,
|
|
17
|
+
...props
|
|
18
|
+
}: ModalProps) {
|
|
9
19
|
return (
|
|
10
|
-
<ModalBackdrop size={size} {...props}>
|
|
20
|
+
<ModalBackdrop size={size} className={backdropStyle} {...props}>
|
|
11
21
|
<ModalDialog
|
|
12
22
|
fullscreen={fullscreen}
|
|
13
23
|
onClose={props.isDismissable ? () => props.state.close() : undefined}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { type ModalBackdropProps, ModalDialogProps } from './components/index.js';
|
|
2
2
|
|
|
3
3
|
export type ModalProps = {
|
|
4
|
+
/**
|
|
5
|
+
* Provide inset styles for the backdrop for centering in certain containers
|
|
6
|
+
*/
|
|
7
|
+
backdropStyle?: string;
|
|
4
8
|
/**
|
|
5
9
|
* Whether the modal is fullscreen
|
|
6
10
|
*/
|