@cloudscape-design/components-themeable 3.0.1314 → 3.0.1316

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 (83) hide show
  1. package/lib/internal/manifest.json +1 -1
  2. package/lib/internal/scss/internal/generated/custom-css-properties/index.scss +1 -1
  3. package/lib/internal/scss/link/styles.scss +16 -0
  4. package/lib/internal/scss/side-navigation/styles.scss +221 -48
  5. package/lib/internal/scss/side-navigation/test-classes/styles.scss +4 -0
  6. package/lib/internal/scss/top-navigation/test-classes/styles.scss +8 -0
  7. package/lib/internal/template/file-token-group/file-token.d.ts.map +1 -1
  8. package/lib/internal/template/file-token-group/file-token.js +33 -27
  9. package/lib/internal/template/file-token-group/file-token.js.map +1 -1
  10. package/lib/internal/template/internal/base-component/styles.scoped.css +13 -1
  11. package/lib/internal/template/internal/breakpoints.d.ts +1 -1
  12. package/lib/internal/template/internal/breakpoints.d.ts.map +1 -1
  13. package/lib/internal/template/internal/breakpoints.js +25 -3
  14. package/lib/internal/template/internal/breakpoints.js.map +1 -1
  15. package/lib/internal/template/internal/environment.js +2 -2
  16. package/lib/internal/template/internal/environment.json +2 -2
  17. package/lib/internal/template/internal/generated/styles/tokens.d.ts +5 -0
  18. package/lib/internal/template/internal/generated/styles/tokens.js +5 -0
  19. package/lib/internal/template/internal/generated/theming/index.cjs +99 -0
  20. package/lib/internal/template/internal/generated/theming/index.cjs.d.ts +36 -0
  21. package/lib/internal/template/internal/generated/theming/index.d.ts +36 -0
  22. package/lib/internal/template/internal/generated/theming/index.js +99 -0
  23. package/lib/internal/template/internal/hooks/container-queries/use-container-breakpoints.d.ts.map +1 -1
  24. package/lib/internal/template/internal/hooks/container-queries/use-container-breakpoints.js +2 -1
  25. package/lib/internal/template/internal/hooks/container-queries/use-container-breakpoints.js.map +1 -1
  26. package/lib/internal/template/link/internal.js +1 -1
  27. package/lib/internal/template/link/internal.js.map +1 -1
  28. package/lib/internal/template/link/styles.css.js +21 -21
  29. package/lib/internal/template/link/styles.scoped.css +118 -72
  30. package/lib/internal/template/link/styles.selectors.js +21 -21
  31. package/lib/internal/template/prompt-input/index.d.ts.map +1 -1
  32. package/lib/internal/template/prompt-input/index.js +3 -1
  33. package/lib/internal/template/prompt-input/index.js.map +1 -1
  34. package/lib/internal/template/side-navigation/implementation.d.ts +1 -1
  35. package/lib/internal/template/side-navigation/implementation.d.ts.map +1 -1
  36. package/lib/internal/template/side-navigation/implementation.js +4 -4
  37. package/lib/internal/template/side-navigation/implementation.js.map +1 -1
  38. package/lib/internal/template/side-navigation/index.d.ts +1 -1
  39. package/lib/internal/template/side-navigation/index.d.ts.map +1 -1
  40. package/lib/internal/template/side-navigation/index.js +5 -3
  41. package/lib/internal/template/side-navigation/index.js.map +1 -1
  42. package/lib/internal/template/side-navigation/interfaces.d.ts +20 -1
  43. package/lib/internal/template/side-navigation/interfaces.d.ts.map +1 -1
  44. package/lib/internal/template/side-navigation/interfaces.js.map +1 -1
  45. package/lib/internal/template/side-navigation/parts.d.ts +3 -2
  46. package/lib/internal/template/side-navigation/parts.d.ts.map +1 -1
  47. package/lib/internal/template/side-navigation/parts.js +147 -37
  48. package/lib/internal/template/side-navigation/parts.js.map +1 -1
  49. package/lib/internal/template/side-navigation/styles.css.js +46 -30
  50. package/lib/internal/template/side-navigation/styles.scoped.css +223 -74
  51. package/lib/internal/template/side-navigation/styles.selectors.js +46 -30
  52. package/lib/internal/template/side-navigation/test-classes/styles.css.js +2 -1
  53. package/lib/internal/template/side-navigation/test-classes/styles.scoped.css +5 -1
  54. package/lib/internal/template/side-navigation/test-classes/styles.selectors.js +2 -1
  55. package/lib/internal/template/test-utils/dom/top-navigation/index.d.ts +2 -1
  56. package/lib/internal/template/test-utils/dom/top-navigation/index.js +4 -0
  57. package/lib/internal/template/test-utils/dom/top-navigation/index.js.map +1 -1
  58. package/lib/internal/template/test-utils/selectors/top-navigation/index.d.ts +1 -0
  59. package/lib/internal/template/test-utils/selectors/top-navigation/index.js +4 -0
  60. package/lib/internal/template/test-utils/selectors/top-navigation/index.js.map +1 -1
  61. package/lib/internal/template/token/internal.d.ts +18 -2
  62. package/lib/internal/template/token/internal.d.ts.map +1 -1
  63. package/lib/internal/template/token/internal.js +20 -9
  64. package/lib/internal/template/token/internal.js.map +1 -1
  65. package/lib/internal/template/top-navigation/index.d.ts +1 -1
  66. package/lib/internal/template/top-navigation/index.d.ts.map +1 -1
  67. package/lib/internal/template/top-navigation/index.js +2 -2
  68. package/lib/internal/template/top-navigation/index.js.map +1 -1
  69. package/lib/internal/template/top-navigation/interfaces.d.ts +14 -1
  70. package/lib/internal/template/top-navigation/interfaces.d.ts.map +1 -1
  71. package/lib/internal/template/top-navigation/interfaces.js.map +1 -1
  72. package/lib/internal/template/top-navigation/internal.d.ts +2 -2
  73. package/lib/internal/template/top-navigation/internal.d.ts.map +1 -1
  74. package/lib/internal/template/top-navigation/internal.js +42 -21
  75. package/lib/internal/template/top-navigation/internal.js.map +1 -1
  76. package/lib/internal/template/top-navigation/test-classes/styles.css.js +6 -0
  77. package/lib/internal/template/top-navigation/test-classes/styles.scoped.css +7 -0
  78. package/lib/internal/template/top-navigation/test-classes/styles.selectors.js +7 -0
  79. package/lib/internal/template/top-navigation/use-top-navigation.d.ts +5 -0
  80. package/lib/internal/template/top-navigation/use-top-navigation.d.ts.map +1 -1
  81. package/lib/internal/template/top-navigation/use-top-navigation.js +12 -5
  82. package/lib/internal/template/top-navigation/use-top-navigation.js.map +1 -1
  83. package/package.json +1 -1
@@ -1391,6 +1391,10 @@ export var preset = {
1391
1391
  "light": "{colorPrimary50}",
1392
1392
  "dark": "{colorPrimary1000}"
1393
1393
  },
1394
+ "colorBackgroundSideNavigationItemActive": {
1395
+ "light": "transparent",
1396
+ "dark": "transparent"
1397
+ },
1394
1398
  "colorBackgroundLayoutMain": {
1395
1399
  "light": "{colorWhite}",
1396
1400
  "dark": "{colorNeutral850}"
@@ -1723,6 +1727,10 @@ export var preset = {
1723
1727
  "light": "{colorPrimary600}",
1724
1728
  "dark": "{colorPrimary400}"
1725
1729
  },
1730
+ "colorTextSideNavigationItemActive": {
1731
+ "light": "{colorTextAccent}",
1732
+ "dark": "{colorTextAccent}"
1733
+ },
1726
1734
  "colorBorderCalendarGrid": {
1727
1735
  "light": "transparent",
1728
1736
  "dark": "transparent"
@@ -2900,6 +2908,10 @@ export var preset = {
2900
2908
  "comfortable": "15px",
2901
2909
  "compact": "13px"
2902
2910
  },
2911
+ "sizeSideNavigationItemHeight": {
2912
+ "comfortable": "28px",
2913
+ "compact": "24px"
2914
+ },
2903
2915
  "spaceAlertActionLeft": {
2904
2916
  "comfortable": "{spaceS}",
2905
2917
  "compact": "{spaceS}"
@@ -3180,6 +3192,14 @@ export var preset = {
3180
3192
  "comfortable": "{spaceXl}",
3181
3193
  "compact": "{spaceXl}"
3182
3194
  },
3195
+ "spaceSideNavigationItemGap": {
3196
+ "comfortable": "0px",
3197
+ "compact": "0px"
3198
+ },
3199
+ "spaceSideNavigationItemCollapsedGap": {
3200
+ "comfortable": "{spaceXs}",
3201
+ "compact": "{spaceXs}"
3202
+ },
3183
3203
  "spaceTileGutter": {
3184
3204
  "comfortable": "{spaceXl}",
3185
3205
  "compact": "{spaceM}"
@@ -3734,6 +3754,14 @@ export var preset = {
3734
3754
  "comfortable": "{spaceXl}",
3735
3755
  "compact": "{spaceXl}"
3736
3756
  },
3757
+ "spaceSideNavigationItemGap": {
3758
+ "comfortable": "0px",
3759
+ "compact": "0px"
3760
+ },
3761
+ "spaceSideNavigationItemCollapsedGap": {
3762
+ "comfortable": "{spaceXs}",
3763
+ "compact": "{spaceXs}"
3764
+ },
3737
3765
  "spaceTileGutter": {
3738
3766
  "comfortable": "{spaceXl}",
3739
3767
  "compact": "{spaceM}"
@@ -4168,6 +4196,10 @@ export var preset = {
4168
4196
  "light": "{colorPrimary1000}",
4169
4197
  "dark": "{colorPrimary1000}"
4170
4198
  },
4199
+ "colorBackgroundSideNavigationItemActive": {
4200
+ "light": "transparent",
4201
+ "dark": "transparent"
4202
+ },
4171
4203
  "colorBackgroundLayoutMain": {
4172
4204
  "light": "{colorNeutral850}",
4173
4205
  "dark": "{colorNeutral850}"
@@ -4500,6 +4532,10 @@ export var preset = {
4500
4532
  "light": "{colorPrimary400}",
4501
4533
  "dark": "{colorPrimary400}"
4502
4534
  },
4535
+ "colorTextSideNavigationItemActive": {
4536
+ "light": "{colorTextAccent}",
4537
+ "dark": "{colorTextAccent}"
4538
+ },
4503
4539
  "colorBorderCalendarGrid": {
4504
4540
  "light": "transparent",
4505
4541
  "dark": "transparent"
@@ -5777,6 +5813,10 @@ export var preset = {
5777
5813
  "light": "{colorPrimary1000}",
5778
5814
  "dark": "{colorPrimary1000}"
5779
5815
  },
5816
+ "colorBackgroundSideNavigationItemActive": {
5817
+ "light": "transparent",
5818
+ "dark": "transparent"
5819
+ },
5780
5820
  "colorBackgroundLayoutMain": {
5781
5821
  "light": "{colorNeutral950}",
5782
5822
  "dark": "{colorNeutral950}"
@@ -6109,6 +6149,10 @@ export var preset = {
6109
6149
  "light": "{colorPrimary400}",
6110
6150
  "dark": "{colorPrimary400}"
6111
6151
  },
6152
+ "colorTextSideNavigationItemActive": {
6153
+ "light": "{colorTextAccent}",
6154
+ "dark": "{colorTextAccent}"
6155
+ },
6112
6156
  "colorBorderCalendarGrid": {
6113
6157
  "light": "transparent",
6114
6158
  "dark": "transparent"
@@ -7314,6 +7358,10 @@ export var preset = {
7314
7358
  "light": "{colorPrimary50}",
7315
7359
  "dark": "{colorPrimary1000}"
7316
7360
  },
7361
+ "colorBackgroundSideNavigationItemActive": {
7362
+ "light": "transparent",
7363
+ "dark": "transparent"
7364
+ },
7317
7365
  "colorBackgroundLayoutMain": {
7318
7366
  "light": "{colorWhite}",
7319
7367
  "dark": "{colorNeutral850}"
@@ -7646,6 +7694,10 @@ export var preset = {
7646
7694
  "light": "{colorPrimary600}",
7647
7695
  "dark": "{colorPrimary400}"
7648
7696
  },
7697
+ "colorTextSideNavigationItemActive": {
7698
+ "light": "{colorTextAccent}",
7699
+ "dark": "{colorTextAccent}"
7700
+ },
7649
7701
  "colorBorderCalendarGrid": {
7650
7702
  "light": "transparent",
7651
7703
  "dark": "transparent"
@@ -8716,6 +8768,10 @@ export var preset = {
8716
8768
  "light": "{colorPrimary50}",
8717
8769
  "dark": "{colorPrimary1000}"
8718
8770
  },
8771
+ "colorBackgroundSideNavigationItemActive": {
8772
+ "light": "transparent",
8773
+ "dark": "transparent"
8774
+ },
8719
8775
  "colorBackgroundLayoutMain": {
8720
8776
  "light": "{colorWhite}",
8721
8777
  "dark": "{colorNeutral850}"
@@ -9048,6 +9104,10 @@ export var preset = {
9048
9104
  "light": "{colorPrimary600}",
9049
9105
  "dark": "{colorPrimary400}"
9050
9106
  },
9107
+ "colorTextSideNavigationItemActive": {
9108
+ "light": "{colorTextAccent}",
9109
+ "dark": "{colorTextAccent}"
9110
+ },
9051
9111
  "colorBorderCalendarGrid": {
9052
9112
  "light": "transparent",
9053
9113
  "dark": "transparent"
@@ -10118,6 +10178,10 @@ export var preset = {
10118
10178
  "light": "{colorPrimary50}",
10119
10179
  "dark": "{colorPrimary1000}"
10120
10180
  },
10181
+ "colorBackgroundSideNavigationItemActive": {
10182
+ "light": "transparent",
10183
+ "dark": "transparent"
10184
+ },
10121
10185
  "colorBackgroundLayoutMain": {
10122
10186
  "light": "{colorWhite}",
10123
10187
  "dark": "{colorNeutral850}"
@@ -10450,6 +10514,10 @@ export var preset = {
10450
10514
  "light": "{colorPrimary600}",
10451
10515
  "dark": "{colorPrimary400}"
10452
10516
  },
10517
+ "colorTextSideNavigationItemActive": {
10518
+ "light": "{colorTextAccent}",
10519
+ "dark": "{colorTextAccent}"
10520
+ },
10453
10521
  "colorBorderCalendarGrid": {
10454
10522
  "light": "transparent",
10455
10523
  "dark": "transparent"
@@ -11522,6 +11590,10 @@ export var preset = {
11522
11590
  "light": "{colorPrimary1000}",
11523
11591
  "dark": "{colorPrimary1000}"
11524
11592
  },
11593
+ "colorBackgroundSideNavigationItemActive": {
11594
+ "light": "transparent",
11595
+ "dark": "transparent"
11596
+ },
11525
11597
  "colorBackgroundLayoutMain": {
11526
11598
  "light": "{colorNeutral850}",
11527
11599
  "dark": "{colorNeutral850}"
@@ -11854,6 +11926,10 @@ export var preset = {
11854
11926
  "light": "{colorPrimary400}",
11855
11927
  "dark": "{colorPrimary400}"
11856
11928
  },
11929
+ "colorTextSideNavigationItemActive": {
11930
+ "light": "{colorTextAccent}",
11931
+ "dark": "{colorTextAccent}"
11932
+ },
11857
11933
  "colorBorderCalendarGrid": {
11858
11934
  "light": "transparent",
11859
11935
  "dark": "transparent"
@@ -13042,6 +13118,7 @@ export var preset = {
13042
13118
  "colorBackgroundInputDefault": "color",
13043
13119
  "colorBackgroundInputDisabled": "color",
13044
13120
  "colorBackgroundItemSelected": "color",
13121
+ "colorBackgroundSideNavigationItemActive": "color",
13045
13122
  "colorBackgroundLayoutMain": "color",
13046
13123
  "colorBackgroundDrawer": "color",
13047
13124
  "colorBackgroundDrawerBackdrop": "color",
@@ -13125,6 +13202,7 @@ export var preset = {
13125
13202
  "colorBorderButtonPrimaryHover": "color",
13126
13203
  "colorTextButtonPrimaryDisabled": "color",
13127
13204
  "colorItemSelected": "color",
13205
+ "colorTextSideNavigationItemActive": "color",
13128
13206
  "colorBorderCalendarGrid": "color",
13129
13207
  "colorBorderCalendarGridSelectedFocusRing": "color",
13130
13208
  "colorBorderCellShaded": "color",
@@ -13384,6 +13462,7 @@ export var preset = {
13384
13462
  "sizeTableSelectionHorizontal": "density",
13385
13463
  "sizeVerticalInput": "density",
13386
13464
  "sizeVerticalPanelIconOffset": "density",
13465
+ "sizeSideNavigationItemHeight": "density",
13387
13466
  "spaceAlertActionLeft": "density",
13388
13467
  "spaceAlertHorizontal": "density",
13389
13468
  "spaceAlertMessageRight": "density",
@@ -13454,6 +13533,8 @@ export var preset = {
13454
13533
  "spaceTableHeaderToolsFullPageBottom": "density",
13455
13534
  "spaceTableHorizontal": "density",
13456
13535
  "spaceTreeViewIndentation": "density",
13536
+ "spaceSideNavigationItemGap": "density",
13537
+ "spaceSideNavigationItemCollapsedGap": "density",
13457
13538
  "spaceTileGutter": "density",
13458
13539
  "spaceActionCardHorizontalDefault": "density",
13459
13540
  "spaceActionCardHorizontalEmbedded": "density",
@@ -13854,6 +13935,7 @@ export var preset = {
13854
13935
  "colorBackgroundInputDefault",
13855
13936
  "colorBackgroundInputDisabled",
13856
13937
  "colorBackgroundItemSelected",
13938
+ "colorBackgroundSideNavigationItemActive",
13857
13939
  "colorBackgroundLayoutMain",
13858
13940
  "colorBackgroundLayoutPanel",
13859
13941
  "colorBackgroundLayoutToolbar",
@@ -13914,6 +13996,7 @@ export var preset = {
13914
13996
  "colorBorderButtonPrimaryHover",
13915
13997
  "colorTextButtonPrimaryDisabled",
13916
13998
  "colorItemSelected",
13999
+ "colorTextSideNavigationItemActive",
13917
14000
  "colorBorderCard",
13918
14001
  "colorBorderContainerTop",
13919
14002
  "colorBorderControlDefault",
@@ -14143,6 +14226,7 @@ export var preset = {
14143
14226
  "borderWidthPopover",
14144
14227
  "borderWidthToken",
14145
14228
  "sizeVerticalInput",
14229
+ "sizeSideNavigationItemHeight",
14146
14230
  "spaceAlertVertical",
14147
14231
  "spaceButtonHorizontal",
14148
14232
  "spaceButtonVertical",
@@ -14153,6 +14237,7 @@ export var preset = {
14153
14237
  "spaceCardVerticalDefault",
14154
14238
  "spaceCardVerticalEmbedded",
14155
14239
  "spaceTabsVertical",
14240
+ "spaceSideNavigationItemGap",
14156
14241
  "spaceActionCardHorizontalDefault",
14157
14242
  "spaceActionCardHorizontalEmbedded",
14158
14243
  "spaceActionCardVerticalDefault",
@@ -14367,6 +14452,7 @@ export var preset = {
14367
14452
  "colorBackgroundInputDefault",
14368
14453
  "colorBackgroundInputDisabled",
14369
14454
  "colorBackgroundItemSelected",
14455
+ "colorBackgroundSideNavigationItemActive",
14370
14456
  "colorBackgroundLayoutMain",
14371
14457
  "colorBackgroundLayoutPanel",
14372
14458
  "colorBackgroundLayoutToolbar",
@@ -14426,6 +14512,7 @@ export var preset = {
14426
14512
  "colorBorderButtonPrimaryHover",
14427
14513
  "colorTextButtonPrimaryDisabled",
14428
14514
  "colorItemSelected",
14515
+ "colorTextSideNavigationItemActive",
14429
14516
  "colorBorderCard",
14430
14517
  "colorBorderContainerTop",
14431
14518
  "colorBorderControlDefault",
@@ -14653,6 +14740,7 @@ export var preset = {
14653
14740
  "motionKeyframesStatusIconError",
14654
14741
  "motionKeyframesScalePopup",
14655
14742
  "sizeVerticalInput",
14743
+ "sizeSideNavigationItemHeight",
14656
14744
  "spaceAlertVertical",
14657
14745
  "spaceButtonHorizontal",
14658
14746
  "spaceButtonVertical",
@@ -14666,6 +14754,7 @@ export var preset = {
14666
14754
  "spaceFieldHorizontal",
14667
14755
  "spaceTabsVertical",
14668
14756
  "spaceTreeViewIndentation",
14757
+ "spaceSideNavigationItemGap",
14669
14758
  "spaceActionCardHorizontalDefault",
14670
14759
  "spaceActionCardHorizontalEmbedded",
14671
14760
  "spaceActionCardVerticalDefault",
@@ -15032,6 +15121,7 @@ export var preset = {
15032
15121
  "colorBackgroundInputDefault": "color-background-input-default",
15033
15122
  "colorBackgroundInputDisabled": "color-background-input-disabled",
15034
15123
  "colorBackgroundItemSelected": "color-background-item-selected",
15124
+ "colorBackgroundSideNavigationItemActive": "color-background-side-navigation-item-active",
15035
15125
  "colorBackgroundLayoutMain": "color-background-layout-main",
15036
15126
  "colorBackgroundDrawer": "color-background-drawer",
15037
15127
  "colorBackgroundDrawerBackdrop": "color-background-drawer-backdrop",
@@ -15115,6 +15205,7 @@ export var preset = {
15115
15205
  "colorBorderButtonPrimaryHover": "color-border-button-primary-hover",
15116
15206
  "colorTextButtonPrimaryDisabled": "color-text-button-primary-disabled",
15117
15207
  "colorItemSelected": "color-item-selected",
15208
+ "colorTextSideNavigationItemActive": "color-text-side-navigation-item-active",
15118
15209
  "colorBorderCalendarGrid": "color-border-calendar-grid",
15119
15210
  "colorBorderCalendarGridSelectedFocusRing": "color-border-calendar-grid-selected-focus-ring",
15120
15211
  "colorBorderCellShaded": "color-border-cell-shaded",
@@ -15515,6 +15606,7 @@ export var preset = {
15515
15606
  "sizeTableSelectionHorizontal": "size-table-selection-horizontal",
15516
15607
  "sizeVerticalInput": "size-vertical-input",
15517
15608
  "sizeVerticalPanelIconOffset": "size-vertical-panel-icon-offset",
15609
+ "sizeSideNavigationItemHeight": "size-side-navigation-item-height",
15518
15610
  "spaceAlertActionLeft": "space-alert-action-left",
15519
15611
  "spaceAlertHorizontal": "space-alert-horizontal",
15520
15612
  "spaceAlertMessageRight": "space-alert-message-right",
@@ -15585,6 +15677,8 @@ export var preset = {
15585
15677
  "spaceTableHeaderToolsFullPageBottom": "space-table-header-tools-full-page-bottom",
15586
15678
  "spaceTableHorizontal": "space-table-horizontal",
15587
15679
  "spaceTreeViewIndentation": "space-tree-view-indentation",
15680
+ "spaceSideNavigationItemGap": "space-side-navigation-item-gap",
15681
+ "spaceSideNavigationItemCollapsedGap": "space-side-navigation-item-collapsed-gap",
15588
15682
  "spaceTileGutter": "space-tile-gutter",
15589
15683
  "spaceActionCardHorizontalDefault": "space-action-card-horizontal-default",
15590
15684
  "spaceActionCardHorizontalEmbedded": "space-action-card-horizontal-embedded",
@@ -15992,6 +16086,7 @@ export var preset = {
15992
16086
  "colorBackgroundInputDefault": "--color-background-input-default-ifz5bb",
15993
16087
  "colorBackgroundInputDisabled": "--color-background-input-disabled-dihaja",
15994
16088
  "colorBackgroundItemSelected": "--color-background-item-selected-9gppru",
16089
+ "colorBackgroundSideNavigationItemActive": "--color-background-side-navigation-item-active-adfprg",
15995
16090
  "colorBackgroundLayoutMain": "--color-background-layout-main-5ilwcb",
15996
16091
  "colorBackgroundDrawer": "--color-background-drawer-5hs0eh",
15997
16092
  "colorBackgroundDrawerBackdrop": "--color-background-drawer-backdrop-ducxi3",
@@ -16075,6 +16170,7 @@ export var preset = {
16075
16170
  "colorBorderButtonPrimaryHover": "--color-border-button-primary-hover-rktx0f",
16076
16171
  "colorTextButtonPrimaryDisabled": "--color-text-button-primary-disabled-q79gms",
16077
16172
  "colorItemSelected": "--color-item-selected-72rnwy",
16173
+ "colorTextSideNavigationItemActive": "--color-text-side-navigation-item-active-w3c4dj",
16078
16174
  "colorBorderCalendarGrid": "--color-border-calendar-grid-67r4w4",
16079
16175
  "colorBorderCalendarGridSelectedFocusRing": "--color-border-calendar-grid-selected-focus-ring-jk1fb0",
16080
16176
  "colorBorderCellShaded": "--color-border-cell-shaded-0ipazf",
@@ -16475,6 +16571,7 @@ export var preset = {
16475
16571
  "sizeTableSelectionHorizontal": "--size-table-selection-horizontal-qqiajd",
16476
16572
  "sizeVerticalInput": "--size-vertical-input-p1d7xx",
16477
16573
  "sizeVerticalPanelIconOffset": "--size-vertical-panel-icon-offset-z959cw",
16574
+ "sizeSideNavigationItemHeight": "--size-side-navigation-item-height-lokap3",
16478
16575
  "spaceAlertActionLeft": "--space-alert-action-left-4s8zo5",
16479
16576
  "spaceAlertHorizontal": "--space-alert-horizontal-ul364s",
16480
16577
  "spaceAlertMessageRight": "--space-alert-message-right-mrjbnn",
@@ -16545,6 +16642,8 @@ export var preset = {
16545
16642
  "spaceTableHeaderToolsFullPageBottom": "--space-table-header-tools-full-page-bottom-9m47g6",
16546
16643
  "spaceTableHorizontal": "--space-table-horizontal-suurzj",
16547
16644
  "spaceTreeViewIndentation": "--space-tree-view-indentation-xh9kis",
16645
+ "spaceSideNavigationItemGap": "--space-side-navigation-item-gap-5vlwdw",
16646
+ "spaceSideNavigationItemCollapsedGap": "--space-side-navigation-item-collapsed-gap-d9lti2",
16548
16647
  "spaceTileGutter": "--space-tile-gutter-bi2bdv",
16549
16648
  "spaceActionCardHorizontalDefault": "--space-action-card-horizontal-default-su1e86",
16550
16649
  "spaceActionCardHorizontalEmbedded": "--space-action-card-horizontal-embedded-pb8pj4",
@@ -1 +1 @@
1
- {"version":3,"file":"use-container-breakpoints.d.ts","sourceRoot":"","sources":["../../../../../src/internal/hooks/container-queries/use-container-breakpoints.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,UAAU,EAAyB,MAAM,mBAAmB,CAAC;AAEtE;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,SAAS,UAAU,EAAE,EAAE,CAAC,SAAS,OAAO,GAAG,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC,GAIF,CACxG,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,EAC5B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CACb,CACF"}
1
+ {"version":3,"file":"use-container-breakpoints.d.ts","sourceRoot":"","sources":["../../../../../src/internal/hooks/container-queries/use-container-breakpoints.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,UAAU,EAAyB,MAAM,mBAAmB,CAAC;AAEtE;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,SAAS,UAAU,EAAE,EAAE,CAAC,SAAS,OAAO,GAAG,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC,GAOvG,CAAC,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAClD"}
@@ -10,7 +10,8 @@ import { getMatchingBreakpoint } from '../../breakpoints';
10
10
  export function useContainerBreakpoints(triggers) {
11
11
  // triggers.join() gives us a stable value to use for the dependencies argument
12
12
  const triggersDep = triggers === null || triggers === void 0 ? void 0 : triggers.join();
13
+ return useContainerQuery((rect, previousBreakpoint) => getMatchingBreakpoint(rect.contentBoxWidth, triggers, previousBreakpoint),
13
14
  // eslint-disable-next-line react-hooks/exhaustive-deps
14
- return useContainerQuery(rect => getMatchingBreakpoint(rect.contentBoxWidth, triggers), [triggersDep]);
15
+ [triggersDep]);
15
16
  }
16
17
  //# sourceMappingURL=use-container-breakpoints.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-container-breakpoints.js","sourceRoot":"","sources":["../../../../../src/internal/hooks/container-queries/use-container-breakpoints.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,EAAc,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAEtE;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAA2D,QAAY;IAC5G,+EAA+E;IAC/E,MAAM,WAAW,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,EAAE,CAAC;IACrC,uDAAuD;IACvD,OAAO,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,CAAC,CAGpG,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\n\nimport { useContainerQuery } from '@cloudscape-design/component-toolkit';\n\nimport { Breakpoint, getMatchingBreakpoint } from '../../breakpoints';\n\n/**\n * Re-renders the component when the breakpoint for the component changes. Scopes the re-renders to the specific\n * breakpoints you want to break at. \"default\" is always included as a fallback, so [\"xs\"] would trigger for\n * \"default\" and \"xs\".\n *\n * @param triggers The relevant breakpoints to trigger for.\n */\nexport function useContainerBreakpoints<T extends readonly Breakpoint[], E extends Element = any>(triggers?: T) {\n // triggers.join() gives us a stable value to use for the dependencies argument\n const triggersDep = triggers?.join();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return useContainerQuery(rect => getMatchingBreakpoint(rect.contentBoxWidth, triggers), [triggersDep]) as [\n 'default' | T[number] | null,\n React.Ref<E>,\n ];\n}\n"]}
1
+ {"version":3,"file":"use-container-breakpoints.js","sourceRoot":"","sources":["../../../../../src/internal/hooks/container-queries/use-container-breakpoints.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,EAAc,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAEtE;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAA2D,QAAY;IAC5G,+EAA+E;IAC/E,MAAM,WAAW,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,EAAE,CAAC;IACrC,OAAO,iBAAiB,CACtB,CAAC,IAAI,EAAE,kBAAkB,EAAE,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,eAAe,EAAE,QAAQ,EAAE,kBAAkB,CAAC;IACvG,uDAAuD;IACvD,CAAC,WAAW,CAAC,CACkC,CAAC;AACpD,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\n\nimport { useContainerQuery } from '@cloudscape-design/component-toolkit';\n\nimport { Breakpoint, getMatchingBreakpoint } from '../../breakpoints';\n\n/**\n * Re-renders the component when the breakpoint for the component changes. Scopes the re-renders to the specific\n * breakpoints you want to break at. \"default\" is always included as a fallback, so [\"xs\"] would trigger for\n * \"default\" and \"xs\".\n *\n * @param triggers The relevant breakpoints to trigger for.\n */\nexport function useContainerBreakpoints<T extends readonly Breakpoint[], E extends Element = any>(triggers?: T) {\n // triggers.join() gives us a stable value to use for the dependencies argument\n const triggersDep = triggers?.join();\n return useContainerQuery(\n (rect, previousBreakpoint) => getMatchingBreakpoint(rect.contentBoxWidth, triggers, previousBreakpoint),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [triggersDep]\n ) as ['default' | T[number] | null, React.Ref<E>];\n}\n"]}
@@ -26,7 +26,7 @@ const InternalLink = React.forwardRef(({ variant: providedVariant, fontSize = 'b
26
26
  const isButton = !href;
27
27
  const { defaultVariant } = useContext(LinkDefaultVariantContext);
28
28
  const variant = providedVariant || defaultVariant;
29
- const specialStyles = ['top-navigation', 'link', 'recovery'];
29
+ const specialStyles = ['top-navigation', 'link', 'recovery', 'info'];
30
30
  const hasSpecialStyle = specialStyles.indexOf(variant) > -1;
31
31
  const i18n = useInternalI18n('link');
32
32
  const baseProps = getBaseProps(props);
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/link/internal.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useContext, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { useMergeRefs, useUniqueId } from '@cloudscape-design/component-toolkit/internal';\nimport { useSingleTabStopNavigation } from '@cloudscape-design/component-toolkit/internal';\n\nimport { useInternalI18n } from '../i18n/context';\nimport InternalIcon from '../icon/internal';\nimport { FunnelMetrics } from '../internal/analytics';\nimport { useFunnel, useFunnelStep, useFunnelSubStep } from '../internal/analytics/hooks/use-funnel';\nimport {\n DATA_ATTR_FUNNEL_VALUE,\n getFunnelValueSelector,\n getSubStepAllSelector,\n getTextFromSelector,\n} from '../internal/analytics/selectors';\nimport { getBaseProps } from '../internal/base-component';\nimport { InfoLinkLabelContext } from '../internal/context/info-link-label-context';\nimport { LinkDefaultVariantContext } from '../internal/context/link-default-variant-context';\nimport { useTokenInlineContext } from '../internal/context/token-inline-context';\nimport { fireCancelableEvent, fireNonCancelableEvent, isPlainLeftClick } from '../internal/events';\nimport useForwardFocus from '../internal/hooks/forward-focus';\nimport { InternalBaseComponentProps } from '../internal/hooks/use-base-component';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode';\nimport { KeyCode } from '../internal/keycode';\nimport { checkSafeUrl } from '../internal/utils/check-safe-url';\nimport WithNativeAttributes from '../internal/utils/with-native-attributes';\nimport { LinkProps } from './interfaces';\nimport { getLinkStyles } from './style';\n\nimport styles from './styles.css.js';\n\ntype InternalLinkProps = InternalBaseComponentProps &\n Omit<LinkProps, 'variant'> & {\n variant?: LinkProps['variant'] | 'top-navigation' | 'link' | 'recovery';\n };\n\nconst InternalLink = React.forwardRef(\n (\n {\n variant: providedVariant,\n fontSize = 'body-m',\n color = 'normal',\n external = false,\n target,\n href,\n rel,\n ariaLabel,\n externalIconAriaLabel,\n onFollow,\n onClick,\n children,\n nativeAttributes,\n __internalRootRef,\n style,\n ...props\n }: InternalLinkProps,\n ref: React.Ref<LinkProps.Ref>\n ) => {\n checkSafeUrl('Link', href);\n const isButton = !href;\n const { defaultVariant } = useContext(LinkDefaultVariantContext);\n const variant = providedVariant || defaultVariant;\n const specialStyles = ['top-navigation', 'link', 'recovery'];\n const hasSpecialStyle = specialStyles.indexOf(variant) > -1;\n\n const i18n = useInternalI18n('link');\n const baseProps = getBaseProps(props);\n const anchorTarget = target ?? (external ? '_blank' : undefined);\n const anchorRel = rel ?? (anchorTarget === '_blank' ? 'noopener noreferrer' : undefined);\n const uniqueId = useUniqueId('link');\n const linkId = useUniqueId('link-self');\n const infoId = useUniqueId('link-info');\n\n const infoLinkLabelFromContext = useContext(InfoLinkLabelContext);\n\n const { funnelIdentifier, funnelInteractionId } = useFunnel();\n const { stepIdentifier, stepNumber, stepNameSelector } = useFunnelStep();\n const { subStepIdentifier, subStepSelector, subStepNameSelector } = useFunnelSubStep();\n\n const fireFunnelEvent = (funnelInteractionId: string) => {\n if (variant === 'info') {\n const stepName = getTextFromSelector(stepNameSelector);\n const subStepName = getTextFromSelector(subStepNameSelector);\n\n FunnelMetrics.helpPanelInteracted({\n funnelIdentifier,\n funnelInteractionId,\n stepIdentifier,\n stepNumber,\n stepName,\n subStepIdentifier,\n stepNameSelector,\n subStepSelector,\n subStepName,\n subStepNameSelector,\n elementSelector: getFunnelValueSelector(uniqueId),\n subStepAllSelector: getSubStepAllSelector(),\n });\n } else if (external) {\n const stepName = getTextFromSelector(stepNameSelector);\n const subStepName = getTextFromSelector(subStepNameSelector);\n\n FunnelMetrics.externalLinkInteracted({\n funnelIdentifier,\n funnelInteractionId,\n stepIdentifier,\n stepNumber,\n stepName,\n stepNameSelector,\n subStepIdentifier,\n subStepSelector,\n subStepName,\n subStepNameSelector,\n elementSelector: getFunnelValueSelector(uniqueId),\n subStepAllSelector: getSubStepAllSelector(),\n });\n }\n };\n\n const fireFollowEvent = (event: React.SyntheticEvent) => {\n if (funnelInteractionId) {\n fireFunnelEvent(funnelInteractionId);\n }\n\n fireCancelableEvent(onFollow, { href, external, target: anchorTarget }, event);\n };\n\n const fireClickEvent = (event: React.MouseEvent | React.KeyboardEvent) => {\n const { altKey, ctrlKey, metaKey, shiftKey } = event;\n // eslint-disable-next-line no-restricted-syntax -- MouseEvent vs KeyboardEvent discrimination\n const button = 'button' in event ? event.button : 0;\n // make onClick non-cancelable to prevent it from being used to block full page reload\n // for navigation use `onFollow` event instead\n fireNonCancelableEvent(onClick, { altKey, button, ctrlKey, metaKey, shiftKey });\n };\n\n const handleLinkClick = (event: React.MouseEvent) => {\n if (isPlainLeftClick(event)) {\n fireFollowEvent(event);\n }\n fireClickEvent(event);\n };\n\n const handleButtonClick = (event: React.MouseEvent) => {\n fireFollowEvent(event);\n fireClickEvent(event);\n };\n\n const handleButtonKeyDown = (event: React.KeyboardEvent) => {\n if (event.keyCode === KeyCode.space || event.keyCode === KeyCode.enter) {\n event.preventDefault();\n fireFollowEvent(event);\n fireClickEvent(event);\n }\n };\n\n const linkRef = useRef<HTMLElement>(null);\n const isVisualRefresh = useVisualRefresh();\n const { isInlineToken } = useTokenInlineContext();\n useForwardFocus(ref, linkRef);\n\n // Visual refresh should only add styles to buttons that don't already have unique styles (e.g. primary/secondary variants)\n const applyButtonStyles = isButton && isVisualRefresh && !hasSpecialStyle;\n\n const sharedProps = {\n id: linkId,\n ...baseProps,\n ref: useMergeRefs(linkRef, __internalRootRef),\n className: clsx(\n styles.link,\n baseProps.className,\n applyButtonStyles ? styles.button : null,\n styles[getVariantStyle(variant)],\n styles[getFontSizeStyle(variant, fontSize)],\n styles[getColorStyle(variant, color)],\n isInlineToken && styles['in-inline-token']\n ),\n style: getLinkStyles(style),\n 'aria-label': ariaLabel,\n 'aria-labelledby': undefined as string | undefined,\n [DATA_ATTR_FUNNEL_VALUE]: uniqueId,\n };\n\n if (variant === 'info' && infoLinkLabelFromContext && !ariaLabel) {\n sharedProps['aria-labelledby'] = `${sharedProps.id} ${infoId} ${infoLinkLabelFromContext}`;\n }\n\n const renderedExternalIconAriaLabel = i18n('externalIconAriaLabel', externalIconAriaLabel);\n const content = (\n <>\n <span>{children}</span>\n {external && (\n <span className={styles['icon-wrapper']}>\n &nbsp;\n <span\n className={styles.icon}\n aria-label={renderedExternalIconAriaLabel}\n role={renderedExternalIconAriaLabel ? 'img' : undefined}\n >\n <InternalIcon name=\"external\" size=\"inherit\" />\n </span>\n </span>\n )}\n {variant === 'info' && (\n <span hidden={true} id={infoId}>\n :\n </span>\n )}\n </>\n );\n\n const { tabIndex } = useSingleTabStopNavigation(linkRef, { tabIndex: isButton ? 0 : undefined });\n\n if (isButton) {\n return (\n <WithNativeAttributes\n {...sharedProps}\n tag=\"a\"\n componentName=\"Link\"\n nativeAttributes={nativeAttributes}\n role=\"button\"\n tabIndex={tabIndex}\n onKeyDown={handleButtonKeyDown}\n onClick={handleButtonClick}\n >\n {content}\n </WithNativeAttributes>\n );\n }\n\n return (\n <WithNativeAttributes\n {...sharedProps}\n tag=\"a\"\n componentName=\"Link\"\n nativeAttributes={nativeAttributes}\n tabIndex={tabIndex}\n target={anchorTarget}\n rel={anchorRel}\n href={href}\n onClick={handleLinkClick}\n >\n {content}\n </WithNativeAttributes>\n );\n }\n);\n\nfunction getVariantStyle(variant: Exclude<InternalLinkProps['variant'], undefined>) {\n return `variant-${variant.replace(/^awsui-/, '')}`;\n}\n\nfunction getFontSizeStyle(variant: InternalLinkProps['variant'], fontSize: InternalLinkProps['fontSize']) {\n switch (variant) {\n case 'info':\n return 'font-size-body-s';\n case 'awsui-value-large':\n return 'font-size-display-l';\n default:\n return `font-size-${fontSize}`;\n }\n}\n\nfunction getColorStyle(variant: InternalLinkProps['variant'], color: InternalLinkProps['color']) {\n return `color-${variant === 'info' ? 'normal' : color}`;\n}\n\nexport default InternalLink;\n"]}
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/link/internal.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useContext, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { useMergeRefs, useUniqueId } from '@cloudscape-design/component-toolkit/internal';\nimport { useSingleTabStopNavigation } from '@cloudscape-design/component-toolkit/internal';\n\nimport { useInternalI18n } from '../i18n/context';\nimport InternalIcon from '../icon/internal';\nimport { FunnelMetrics } from '../internal/analytics';\nimport { useFunnel, useFunnelStep, useFunnelSubStep } from '../internal/analytics/hooks/use-funnel';\nimport {\n DATA_ATTR_FUNNEL_VALUE,\n getFunnelValueSelector,\n getSubStepAllSelector,\n getTextFromSelector,\n} from '../internal/analytics/selectors';\nimport { getBaseProps } from '../internal/base-component';\nimport { InfoLinkLabelContext } from '../internal/context/info-link-label-context';\nimport { LinkDefaultVariantContext } from '../internal/context/link-default-variant-context';\nimport { useTokenInlineContext } from '../internal/context/token-inline-context';\nimport { fireCancelableEvent, fireNonCancelableEvent, isPlainLeftClick } from '../internal/events';\nimport useForwardFocus from '../internal/hooks/forward-focus';\nimport { InternalBaseComponentProps } from '../internal/hooks/use-base-component';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode';\nimport { KeyCode } from '../internal/keycode';\nimport { checkSafeUrl } from '../internal/utils/check-safe-url';\nimport WithNativeAttributes from '../internal/utils/with-native-attributes';\nimport { LinkProps } from './interfaces';\nimport { getLinkStyles } from './style';\n\nimport styles from './styles.css.js';\n\ntype InternalLinkProps = InternalBaseComponentProps &\n Omit<LinkProps, 'variant'> & {\n variant?: LinkProps['variant'] | 'top-navigation' | 'link' | 'recovery';\n };\n\nconst InternalLink = React.forwardRef(\n (\n {\n variant: providedVariant,\n fontSize = 'body-m',\n color = 'normal',\n external = false,\n target,\n href,\n rel,\n ariaLabel,\n externalIconAriaLabel,\n onFollow,\n onClick,\n children,\n nativeAttributes,\n __internalRootRef,\n style,\n ...props\n }: InternalLinkProps,\n ref: React.Ref<LinkProps.Ref>\n ) => {\n checkSafeUrl('Link', href);\n const isButton = !href;\n const { defaultVariant } = useContext(LinkDefaultVariantContext);\n const variant = providedVariant || defaultVariant;\n const specialStyles = ['top-navigation', 'link', 'recovery', 'info'];\n const hasSpecialStyle = specialStyles.indexOf(variant) > -1;\n\n const i18n = useInternalI18n('link');\n const baseProps = getBaseProps(props);\n const anchorTarget = target ?? (external ? '_blank' : undefined);\n const anchorRel = rel ?? (anchorTarget === '_blank' ? 'noopener noreferrer' : undefined);\n const uniqueId = useUniqueId('link');\n const linkId = useUniqueId('link-self');\n const infoId = useUniqueId('link-info');\n\n const infoLinkLabelFromContext = useContext(InfoLinkLabelContext);\n\n const { funnelIdentifier, funnelInteractionId } = useFunnel();\n const { stepIdentifier, stepNumber, stepNameSelector } = useFunnelStep();\n const { subStepIdentifier, subStepSelector, subStepNameSelector } = useFunnelSubStep();\n\n const fireFunnelEvent = (funnelInteractionId: string) => {\n if (variant === 'info') {\n const stepName = getTextFromSelector(stepNameSelector);\n const subStepName = getTextFromSelector(subStepNameSelector);\n\n FunnelMetrics.helpPanelInteracted({\n funnelIdentifier,\n funnelInteractionId,\n stepIdentifier,\n stepNumber,\n stepName,\n subStepIdentifier,\n stepNameSelector,\n subStepSelector,\n subStepName,\n subStepNameSelector,\n elementSelector: getFunnelValueSelector(uniqueId),\n subStepAllSelector: getSubStepAllSelector(),\n });\n } else if (external) {\n const stepName = getTextFromSelector(stepNameSelector);\n const subStepName = getTextFromSelector(subStepNameSelector);\n\n FunnelMetrics.externalLinkInteracted({\n funnelIdentifier,\n funnelInteractionId,\n stepIdentifier,\n stepNumber,\n stepName,\n stepNameSelector,\n subStepIdentifier,\n subStepSelector,\n subStepName,\n subStepNameSelector,\n elementSelector: getFunnelValueSelector(uniqueId),\n subStepAllSelector: getSubStepAllSelector(),\n });\n }\n };\n\n const fireFollowEvent = (event: React.SyntheticEvent) => {\n if (funnelInteractionId) {\n fireFunnelEvent(funnelInteractionId);\n }\n\n fireCancelableEvent(onFollow, { href, external, target: anchorTarget }, event);\n };\n\n const fireClickEvent = (event: React.MouseEvent | React.KeyboardEvent) => {\n const { altKey, ctrlKey, metaKey, shiftKey } = event;\n // eslint-disable-next-line no-restricted-syntax -- MouseEvent vs KeyboardEvent discrimination\n const button = 'button' in event ? event.button : 0;\n // make onClick non-cancelable to prevent it from being used to block full page reload\n // for navigation use `onFollow` event instead\n fireNonCancelableEvent(onClick, { altKey, button, ctrlKey, metaKey, shiftKey });\n };\n\n const handleLinkClick = (event: React.MouseEvent) => {\n if (isPlainLeftClick(event)) {\n fireFollowEvent(event);\n }\n fireClickEvent(event);\n };\n\n const handleButtonClick = (event: React.MouseEvent) => {\n fireFollowEvent(event);\n fireClickEvent(event);\n };\n\n const handleButtonKeyDown = (event: React.KeyboardEvent) => {\n if (event.keyCode === KeyCode.space || event.keyCode === KeyCode.enter) {\n event.preventDefault();\n fireFollowEvent(event);\n fireClickEvent(event);\n }\n };\n\n const linkRef = useRef<HTMLElement>(null);\n const isVisualRefresh = useVisualRefresh();\n const { isInlineToken } = useTokenInlineContext();\n useForwardFocus(ref, linkRef);\n\n // Visual refresh should only add styles to buttons that don't already have unique styles (e.g. primary/secondary variants)\n const applyButtonStyles = isButton && isVisualRefresh && !hasSpecialStyle;\n\n const sharedProps = {\n id: linkId,\n ...baseProps,\n ref: useMergeRefs(linkRef, __internalRootRef),\n className: clsx(\n styles.link,\n baseProps.className,\n applyButtonStyles ? styles.button : null,\n styles[getVariantStyle(variant)],\n styles[getFontSizeStyle(variant, fontSize)],\n styles[getColorStyle(variant, color)],\n isInlineToken && styles['in-inline-token']\n ),\n style: getLinkStyles(style),\n 'aria-label': ariaLabel,\n 'aria-labelledby': undefined as string | undefined,\n [DATA_ATTR_FUNNEL_VALUE]: uniqueId,\n };\n\n if (variant === 'info' && infoLinkLabelFromContext && !ariaLabel) {\n sharedProps['aria-labelledby'] = `${sharedProps.id} ${infoId} ${infoLinkLabelFromContext}`;\n }\n\n const renderedExternalIconAriaLabel = i18n('externalIconAriaLabel', externalIconAriaLabel);\n const content = (\n <>\n <span>{children}</span>\n {external && (\n <span className={styles['icon-wrapper']}>\n &nbsp;\n <span\n className={styles.icon}\n aria-label={renderedExternalIconAriaLabel}\n role={renderedExternalIconAriaLabel ? 'img' : undefined}\n >\n <InternalIcon name=\"external\" size=\"inherit\" />\n </span>\n </span>\n )}\n {variant === 'info' && (\n <span hidden={true} id={infoId}>\n :\n </span>\n )}\n </>\n );\n\n const { tabIndex } = useSingleTabStopNavigation(linkRef, { tabIndex: isButton ? 0 : undefined });\n\n if (isButton) {\n return (\n <WithNativeAttributes\n {...sharedProps}\n tag=\"a\"\n componentName=\"Link\"\n nativeAttributes={nativeAttributes}\n role=\"button\"\n tabIndex={tabIndex}\n onKeyDown={handleButtonKeyDown}\n onClick={handleButtonClick}\n >\n {content}\n </WithNativeAttributes>\n );\n }\n\n return (\n <WithNativeAttributes\n {...sharedProps}\n tag=\"a\"\n componentName=\"Link\"\n nativeAttributes={nativeAttributes}\n tabIndex={tabIndex}\n target={anchorTarget}\n rel={anchorRel}\n href={href}\n onClick={handleLinkClick}\n >\n {content}\n </WithNativeAttributes>\n );\n }\n);\n\nfunction getVariantStyle(variant: Exclude<InternalLinkProps['variant'], undefined>) {\n return `variant-${variant.replace(/^awsui-/, '')}`;\n}\n\nfunction getFontSizeStyle(variant: InternalLinkProps['variant'], fontSize: InternalLinkProps['fontSize']) {\n switch (variant) {\n case 'info':\n return 'font-size-body-s';\n case 'awsui-value-large':\n return 'font-size-display-l';\n default:\n return `font-size-${fontSize}`;\n }\n}\n\nfunction getColorStyle(variant: InternalLinkProps['variant'], color: InternalLinkProps['color']) {\n return `color-${variant === 'info' ? 'normal' : color}`;\n}\n\nexport default InternalLink;\n"]}
@@ -1,26 +1,26 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "link": "awsui_link_4c84z_1c1ni_145",
5
- "variant-recovery": "awsui_variant-recovery_4c84z_1c1ni_213",
6
- "variant-secondary": "awsui_variant-secondary_4c84z_1c1ni_246",
7
- "variant-primary": "awsui_variant-primary_4c84z_1c1ni_281",
8
- "variant-info": "awsui_variant-info_4c84z_1c1ni_314",
9
- "variant-value-large": "awsui_variant-value-large_4c84z_1c1ni_349",
10
- "variant-top-navigation": "awsui_variant-top-navigation_4c84z_1c1ni_381",
11
- "button": "awsui_button_4c84z_1c1ni_416",
12
- "color-inverted": "awsui_color-inverted_4c84z_1c1ni_451",
13
- "font-size-body-s": "awsui_font-size-body-s_4c84z_1c1ni_472",
14
- "font-size-body-m": "awsui_font-size-body-m_4c84z_1c1ni_480",
15
- "font-size-heading-xs": "awsui_font-size-heading-xs_4c84z_1c1ni_487",
16
- "font-size-heading-s": "awsui_font-size-heading-s_4c84z_1c1ni_495",
17
- "font-size-heading-m": "awsui_font-size-heading-m_4c84z_1c1ni_503",
18
- "font-size-heading-l": "awsui_font-size-heading-l_4c84z_1c1ni_511",
19
- "font-size-heading-xl": "awsui_font-size-heading-xl_4c84z_1c1ni_519",
20
- "font-size-display-l": "awsui_font-size-display-l_4c84z_1c1ni_527",
21
- "font-size-inherit": "awsui_font-size-inherit_4c84z_1c1ni_535",
22
- "in-inline-token": "awsui_in-inline-token_4c84z_1c1ni_543",
23
- "icon-wrapper": "awsui_icon-wrapper_4c84z_1c1ni_547",
24
- "icon": "awsui_icon_4c84z_1c1ni_547"
4
+ "link": "awsui_link_4c84z_1kln3_145",
5
+ "variant-recovery": "awsui_variant-recovery_4c84z_1kln3_213",
6
+ "variant-secondary": "awsui_variant-secondary_4c84z_1kln3_246",
7
+ "variant-primary": "awsui_variant-primary_4c84z_1kln3_281",
8
+ "variant-info": "awsui_variant-info_4c84z_1kln3_314",
9
+ "variant-value-large": "awsui_variant-value-large_4c84z_1kln3_349",
10
+ "variant-top-navigation": "awsui_variant-top-navigation_4c84z_1kln3_381",
11
+ "button": "awsui_button_4c84z_1kln3_416",
12
+ "color-inverted": "awsui_color-inverted_4c84z_1kln3_488",
13
+ "font-size-body-s": "awsui_font-size-body-s_4c84z_1kln3_516",
14
+ "font-size-body-m": "awsui_font-size-body-m_4c84z_1kln3_524",
15
+ "font-size-heading-xs": "awsui_font-size-heading-xs_4c84z_1kln3_531",
16
+ "font-size-heading-s": "awsui_font-size-heading-s_4c84z_1kln3_539",
17
+ "font-size-heading-m": "awsui_font-size-heading-m_4c84z_1kln3_547",
18
+ "font-size-heading-l": "awsui_font-size-heading-l_4c84z_1kln3_555",
19
+ "font-size-heading-xl": "awsui_font-size-heading-xl_4c84z_1kln3_563",
20
+ "font-size-display-l": "awsui_font-size-display-l_4c84z_1kln3_571",
21
+ "font-size-inherit": "awsui_font-size-inherit_4c84z_1kln3_579",
22
+ "in-inline-token": "awsui_in-inline-token_4c84z_1kln3_587",
23
+ "icon-wrapper": "awsui_icon-wrapper_4c84z_1kln3_591",
24
+ "icon": "awsui_icon_4c84z_1kln3_591"
25
25
  };
26
26