@cloudscape-design/components-themeable 3.0.639 → 3.0.641

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 (181) hide show
  1. package/lib/internal/manifest.json +1 -1
  2. package/lib/internal/scss/button/styles.scss +12 -0
  3. package/lib/internal/scss/drawer/styles.scss +5 -5
  4. package/lib/internal/scss/form-field/motion.scss +5 -2
  5. package/lib/internal/scss/form-field/styles.scss +11 -2
  6. package/lib/internal/scss/help-panel/styles.scss +8 -8
  7. package/lib/internal/scss/input/styles.scss +9 -0
  8. package/lib/internal/scss/internal/components/button-trigger/styles.scss +5 -0
  9. package/lib/internal/scss/internal/styles/forms/mixins.scss +11 -0
  10. package/lib/internal/scss/side-navigation/styles.scss +6 -5
  11. package/lib/internal/scss/slider/mixins.scss +9 -4
  12. package/lib/internal/scss/table/body-cell/styles.scss +7 -2
  13. package/lib/internal/scss/textarea/styles.scss +4 -0
  14. package/lib/internal/scss/token-group/styles.scss +9 -2
  15. package/lib/internal/template/alert/index.d.ts.map +1 -1
  16. package/lib/internal/template/alert/index.js +9 -5
  17. package/lib/internal/template/alert/index.js.map +1 -1
  18. package/lib/internal/template/attribute-editor/interfaces.d.ts +4 -0
  19. package/lib/internal/template/attribute-editor/interfaces.d.ts.map +1 -1
  20. package/lib/internal/template/attribute-editor/interfaces.js.map +1 -1
  21. package/lib/internal/template/attribute-editor/row.d.ts.map +1 -1
  22. package/lib/internal/template/attribute-editor/row.js +4 -1
  23. package/lib/internal/template/attribute-editor/row.js.map +1 -1
  24. package/lib/internal/template/button/styles.css.js +19 -19
  25. package/lib/internal/template/button/styles.scoped.css +159 -151
  26. package/lib/internal/template/button/styles.selectors.js +19 -19
  27. package/lib/internal/template/container/index.js +1 -1
  28. package/lib/internal/template/container/index.js.map +1 -1
  29. package/lib/internal/template/date-picker/index.d.ts.map +1 -1
  30. package/lib/internal/template/date-picker/index.js +2 -2
  31. package/lib/internal/template/date-picker/index.js.map +1 -1
  32. package/lib/internal/template/date-range-picker/index.d.ts.map +1 -1
  33. package/lib/internal/template/date-range-picker/index.js +2 -2
  34. package/lib/internal/template/date-range-picker/index.js.map +1 -1
  35. package/lib/internal/template/drawer/styles.css.js +3 -3
  36. package/lib/internal/template/drawer/styles.scoped.css +13 -13
  37. package/lib/internal/template/drawer/styles.selectors.js +3 -3
  38. package/lib/internal/template/file-upload/interfaces.d.ts +14 -4
  39. package/lib/internal/template/file-upload/interfaces.d.ts.map +1 -1
  40. package/lib/internal/template/file-upload/interfaces.js.map +1 -1
  41. package/lib/internal/template/file-upload/internal.js +13 -7
  42. package/lib/internal/template/file-upload/internal.js.map +1 -1
  43. package/lib/internal/template/form/index.d.ts.map +1 -1
  44. package/lib/internal/template/form/index.js +17 -6
  45. package/lib/internal/template/form/index.js.map +1 -1
  46. package/lib/internal/template/form/internal.d.ts.map +1 -1
  47. package/lib/internal/template/form/internal.js +1 -14
  48. package/lib/internal/template/form/internal.js.map +1 -1
  49. package/lib/internal/template/form-field/index.d.ts.map +1 -1
  50. package/lib/internal/template/form-field/index.js +3 -2
  51. package/lib/internal/template/form-field/index.js.map +1 -1
  52. package/lib/internal/template/form-field/interfaces.d.ts +12 -1
  53. package/lib/internal/template/form-field/interfaces.d.ts.map +1 -1
  54. package/lib/internal/template/form-field/interfaces.js.map +1 -1
  55. package/lib/internal/template/form-field/internal.d.ts +9 -3
  56. package/lib/internal/template/form-field/internal.d.ts.map +1 -1
  57. package/lib/internal/template/form-field/internal.js +36 -11
  58. package/lib/internal/template/form-field/internal.js.map +1 -1
  59. package/lib/internal/template/form-field/styles.css.js +23 -19
  60. package/lib/internal/template/form-field/styles.scoped.css +45 -29
  61. package/lib/internal/template/form-field/styles.selectors.js +23 -19
  62. package/lib/internal/template/form-field/util.d.ts +3 -2
  63. package/lib/internal/template/form-field/util.d.ts.map +1 -1
  64. package/lib/internal/template/form-field/util.js +4 -3
  65. package/lib/internal/template/form-field/util.js.map +1 -1
  66. package/lib/internal/template/help-panel/styles.css.js +4 -4
  67. package/lib/internal/template/help-panel/styles.scoped.css +71 -71
  68. package/lib/internal/template/help-panel/styles.selectors.js +4 -4
  69. package/lib/internal/template/input/index.d.ts.map +1 -1
  70. package/lib/internal/template/input/index.js +2 -1
  71. package/lib/internal/template/input/index.js.map +1 -1
  72. package/lib/internal/template/input/internal.d.ts.map +1 -1
  73. package/lib/internal/template/input/internal.js +4 -1
  74. package/lib/internal/template/input/internal.js.map +1 -1
  75. package/lib/internal/template/input/styles.css.js +13 -12
  76. package/lib/internal/template/input/styles.scoped.css +46 -30
  77. package/lib/internal/template/input/styles.selectors.js +13 -12
  78. package/lib/internal/template/internal/analytics/components/analytics-funnel.d.ts +12 -12
  79. package/lib/internal/template/internal/analytics/components/analytics-funnel.d.ts.map +1 -1
  80. package/lib/internal/template/internal/analytics/components/analytics-funnel.js +38 -25
  81. package/lib/internal/template/internal/analytics/components/analytics-funnel.js.map +1 -1
  82. package/lib/internal/template/internal/analytics/context/analytics-context.d.ts +7 -2
  83. package/lib/internal/template/internal/analytics/context/analytics-context.d.ts.map +1 -1
  84. package/lib/internal/template/internal/analytics/context/analytics-context.js.map +1 -1
  85. package/lib/internal/template/internal/analytics/hooks/use-funnel.d.ts +5 -1
  86. package/lib/internal/template/internal/analytics/hooks/use-funnel.d.ts.map +1 -1
  87. package/lib/internal/template/internal/analytics/hooks/use-funnel.js +9 -5
  88. package/lib/internal/template/internal/analytics/hooks/use-funnel.js.map +1 -1
  89. package/lib/internal/template/internal/analytics/interfaces.d.ts +23 -37
  90. package/lib/internal/template/internal/analytics/interfaces.d.ts.map +1 -1
  91. package/lib/internal/template/internal/analytics/interfaces.js.map +1 -1
  92. package/lib/internal/template/internal/base-component/index.d.ts +1 -1
  93. package/lib/internal/template/internal/base-component/index.d.ts.map +1 -1
  94. package/lib/internal/template/internal/base-component/index.js +1 -1
  95. package/lib/internal/template/internal/base-component/index.js.map +1 -1
  96. package/lib/internal/template/internal/base-component/styles.scoped.css +35 -0
  97. package/lib/internal/template/internal/components/button-trigger/index.d.ts +1 -0
  98. package/lib/internal/template/internal/components/button-trigger/index.d.ts.map +1 -1
  99. package/lib/internal/template/internal/components/button-trigger/index.js +2 -2
  100. package/lib/internal/template/internal/components/button-trigger/index.js.map +1 -1
  101. package/lib/internal/template/internal/components/button-trigger/styles.css.js +11 -10
  102. package/lib/internal/template/internal/components/button-trigger/styles.scoped.css +35 -24
  103. package/lib/internal/template/internal/components/button-trigger/styles.selectors.js +11 -10
  104. package/lib/internal/template/internal/context/form-field-context.d.ts +14 -1
  105. package/lib/internal/template/internal/context/form-field-context.d.ts.map +1 -1
  106. package/lib/internal/template/internal/context/form-field-context.js +1 -1
  107. package/lib/internal/template/internal/context/form-field-context.js.map +1 -1
  108. package/lib/internal/template/internal/environment.js +1 -1
  109. package/lib/internal/template/internal/environment.json +1 -1
  110. package/lib/internal/template/internal/generated/styles/tokens.d.ts +5 -0
  111. package/lib/internal/template/internal/generated/styles/tokens.js +5 -0
  112. package/lib/internal/template/internal/generated/theming/index.cjs +75 -0
  113. package/lib/internal/template/internal/generated/theming/index.js +75 -0
  114. package/lib/internal/template/link/internal.d.ts.map +1 -1
  115. package/lib/internal/template/link/internal.js +9 -3
  116. package/lib/internal/template/link/internal.js.map +1 -1
  117. package/lib/internal/template/modal/body-scroll.d.ts.map +1 -1
  118. package/lib/internal/template/modal/body-scroll.js +5 -0
  119. package/lib/internal/template/modal/body-scroll.js.map +1 -1
  120. package/lib/internal/template/select/parts/filter.d.ts +1 -1
  121. package/lib/internal/template/select/parts/filter.d.ts.map +1 -1
  122. package/lib/internal/template/select/parts/trigger.d.ts.map +1 -1
  123. package/lib/internal/template/select/parts/trigger.js +2 -2
  124. package/lib/internal/template/select/parts/trigger.js.map +1 -1
  125. package/lib/internal/template/side-navigation/styles.css.js +28 -28
  126. package/lib/internal/template/side-navigation/styles.scoped.css +44 -43
  127. package/lib/internal/template/side-navigation/styles.selectors.js +28 -28
  128. package/lib/internal/template/table/body-cell/disabled-inline-editor.d.ts +1 -1
  129. package/lib/internal/template/table/body-cell/disabled-inline-editor.d.ts.map +1 -1
  130. package/lib/internal/template/table/body-cell/disabled-inline-editor.js +2 -2
  131. package/lib/internal/template/table/body-cell/disabled-inline-editor.js.map +1 -1
  132. package/lib/internal/template/table/body-cell/index.d.ts +1 -0
  133. package/lib/internal/template/table/body-cell/index.d.ts.map +1 -1
  134. package/lib/internal/template/table/body-cell/index.js +2 -2
  135. package/lib/internal/template/table/body-cell/index.js.map +1 -1
  136. package/lib/internal/template/table/body-cell/styles.css.js +44 -43
  137. package/lib/internal/template/table/body-cell/styles.scoped.css +167 -165
  138. package/lib/internal/template/table/body-cell/styles.selectors.js +44 -43
  139. package/lib/internal/template/table/internal.d.ts.map +1 -1
  140. package/lib/internal/template/table/internal.js +1 -1
  141. package/lib/internal/template/table/internal.js.map +1 -1
  142. package/lib/internal/template/test-utils/dom/file-upload/index.d.ts +2 -0
  143. package/lib/internal/template/test-utils/dom/file-upload/index.js +6 -0
  144. package/lib/internal/template/test-utils/dom/file-upload/index.js.map +1 -1
  145. package/lib/internal/template/test-utils/dom/form-field/index.d.ts +1 -0
  146. package/lib/internal/template/test-utils/dom/form-field/index.js +3 -0
  147. package/lib/internal/template/test-utils/dom/form-field/index.js.map +1 -1
  148. package/lib/internal/template/test-utils/selectors/file-upload/index.d.ts +2 -0
  149. package/lib/internal/template/test-utils/selectors/file-upload/index.js +6 -0
  150. package/lib/internal/template/test-utils/selectors/file-upload/index.js.map +1 -1
  151. package/lib/internal/template/test-utils/selectors/form-field/index.d.ts +1 -0
  152. package/lib/internal/template/test-utils/selectors/form-field/index.js +3 -0
  153. package/lib/internal/template/test-utils/selectors/form-field/index.js.map +1 -1
  154. package/lib/internal/template/test-utils/tsconfig.tsbuildinfo +1 -1
  155. package/lib/internal/template/textarea/index.d.ts.map +1 -1
  156. package/lib/internal/template/textarea/index.js +2 -1
  157. package/lib/internal/template/textarea/index.js.map +1 -1
  158. package/lib/internal/template/textarea/styles.css.js +5 -4
  159. package/lib/internal/template/textarea/styles.scoped.css +23 -12
  160. package/lib/internal/template/textarea/styles.selectors.js +5 -4
  161. package/lib/internal/template/token-group/styles.css.js +9 -8
  162. package/lib/internal/template/token-group/styles.scoped.css +27 -16
  163. package/lib/internal/template/token-group/styles.selectors.js +9 -8
  164. package/lib/internal/template/token-group/token.d.ts +3 -1
  165. package/lib/internal/template/token-group/token.d.ts.map +1 -1
  166. package/lib/internal/template/token-group/token.js +8 -5
  167. package/lib/internal/template/token-group/token.js.map +1 -1
  168. package/lib/internal/template/wizard/analytics.d.ts +2 -1
  169. package/lib/internal/template/wizard/analytics.d.ts.map +1 -1
  170. package/lib/internal/template/wizard/analytics.js +7 -3
  171. package/lib/internal/template/wizard/analytics.js.map +1 -1
  172. package/lib/internal/template/wizard/index.js +1 -1
  173. package/lib/internal/template/wizard/index.js.map +1 -1
  174. package/lib/internal/template/wizard/internal.d.ts.map +1 -1
  175. package/lib/internal/template/wizard/internal.js +2 -2
  176. package/lib/internal/template/wizard/internal.js.map +1 -1
  177. package/lib/internal/template/wizard/wizard-form.d.ts +4 -2
  178. package/lib/internal/template/wizard/wizard-form.d.ts.map +1 -1
  179. package/lib/internal/template/wizard/wizard-form.js +31 -19
  180. package/lib/internal/template/wizard/wizard-form.js.map +1 -1
  181. package/package.json +1 -1
@@ -1193,6 +1193,10 @@ export var preset = {
1193
1193
  "light": "{colorGrey700}",
1194
1194
  "dark": "{colorGrey700}"
1195
1195
  },
1196
+ "colorBorderPanelHeader": {
1197
+ "light": "{colorBorderDividerDefault}",
1198
+ "dark": "{colorBorderDividerDefault}"
1199
+ },
1196
1200
  "colorBorderPopover": {
1197
1201
  "light": "{colorGrey400}",
1198
1202
  "dark": "{colorGrey550}"
@@ -2107,6 +2111,22 @@ export var preset = {
2107
2111
  "comfortable": "0px",
2108
2112
  "compact": "0px"
2109
2113
  },
2114
+ "spacePanelContentBottom": {
2115
+ "comfortable": "{spaceScaledXxxl}",
2116
+ "compact": "{spaceScaledXxxl}"
2117
+ },
2118
+ "spacePanelContentTop": {
2119
+ "comfortable": "{spaceScaledL}",
2120
+ "compact": "{spaceScaledL}"
2121
+ },
2122
+ "spacePanelDividerMarginHorizontal": {
2123
+ "comfortable": "{spaceXs}",
2124
+ "compact": "{spaceXs}"
2125
+ },
2126
+ "spacePanelHeaderVertical": {
2127
+ "comfortable": "{spaceScaledL}",
2128
+ "compact": "{spaceScaledL}"
2129
+ },
2110
2130
  "spacePanelNavLeft": {
2111
2131
  "comfortable": "28px",
2112
2132
  "compact": "28px"
@@ -2553,6 +2573,22 @@ export var preset = {
2553
2573
  "comfortable": "0px",
2554
2574
  "compact": "0px"
2555
2575
  },
2576
+ "spacePanelContentBottom": {
2577
+ "comfortable": "{spaceScaledXxxl}",
2578
+ "compact": "{spaceScaledXxxl}"
2579
+ },
2580
+ "spacePanelContentTop": {
2581
+ "comfortable": "{spaceScaledL}",
2582
+ "compact": "{spaceScaledL}"
2583
+ },
2584
+ "spacePanelDividerMarginHorizontal": {
2585
+ "comfortable": "{spaceXs}",
2586
+ "compact": "{spaceXs}"
2587
+ },
2588
+ "spacePanelHeaderVertical": {
2589
+ "comfortable": "{spaceScaledL}",
2590
+ "compact": "{spaceScaledL}"
2591
+ },
2556
2592
  "spacePanelNavLeft": {
2557
2593
  "comfortable": "28px",
2558
2594
  "compact": "28px"
@@ -3263,6 +3299,10 @@ export var preset = {
3263
3299
  "light": "{colorGrey700}",
3264
3300
  "dark": "{colorGrey700}"
3265
3301
  },
3302
+ "colorBorderPanelHeader": {
3303
+ "light": "{colorBorderDividerDefault}",
3304
+ "dark": "{colorBorderDividerDefault}"
3305
+ },
3266
3306
  "colorBorderPopover": {
3267
3307
  "light": "{colorGrey550}",
3268
3308
  "dark": "{colorGrey550}"
@@ -4305,6 +4345,10 @@ export var preset = {
4305
4345
  "light": "{colorGrey700}",
4306
4346
  "dark": "{colorGrey700}"
4307
4347
  },
4348
+ "colorBorderPanelHeader": {
4349
+ "light": "{colorBorderDividerDefault}",
4350
+ "dark": "{colorBorderDividerDefault}"
4351
+ },
4308
4352
  "colorBorderPopover": {
4309
4353
  "light": "{colorGrey550}",
4310
4354
  "dark": "{colorGrey550}"
@@ -5279,6 +5323,10 @@ export var preset = {
5279
5323
  "light": "{colorGrey700}",
5280
5324
  "dark": "{colorGrey700}"
5281
5325
  },
5326
+ "colorBorderPanelHeader": {
5327
+ "light": "{colorBorderDividerDefault}",
5328
+ "dark": "{colorBorderDividerDefault}"
5329
+ },
5282
5330
  "colorBorderPopover": {
5283
5331
  "light": "{colorGrey400}",
5284
5332
  "dark": "{colorGrey550}"
@@ -6253,6 +6301,10 @@ export var preset = {
6253
6301
  "light": "{colorGrey700}",
6254
6302
  "dark": "{colorGrey700}"
6255
6303
  },
6304
+ "colorBorderPanelHeader": {
6305
+ "light": "{colorBorderDividerDefault}",
6306
+ "dark": "{colorBorderDividerDefault}"
6307
+ },
6256
6308
  "colorBorderPopover": {
6257
6309
  "light": "{colorGrey400}",
6258
6310
  "dark": "{colorGrey550}"
@@ -7227,6 +7279,10 @@ export var preset = {
7227
7279
  "light": "{colorGrey700}",
7228
7280
  "dark": "{colorGrey700}"
7229
7281
  },
7282
+ "colorBorderPanelHeader": {
7283
+ "light": "{colorBorderDividerDefault}",
7284
+ "dark": "{colorBorderDividerDefault}"
7285
+ },
7230
7286
  "colorBorderPopover": {
7231
7287
  "light": "{colorGrey400}",
7232
7288
  "dark": "{colorGrey550}"
@@ -8203,6 +8259,10 @@ export var preset = {
8203
8259
  "light": "{colorGrey700}",
8204
8260
  "dark": "{colorGrey700}"
8205
8261
  },
8262
+ "colorBorderPanelHeader": {
8263
+ "light": "{colorBorderDividerDefault}",
8264
+ "dark": "{colorBorderDividerDefault}"
8265
+ },
8206
8266
  "colorBorderPopover": {
8207
8267
  "light": "{colorGrey550}",
8208
8268
  "dark": "{colorGrey550}"
@@ -8966,6 +9026,7 @@ export var preset = {
8966
9026
  "colorBorderItemSelected": "color",
8967
9027
  "colorBorderLayout": "color",
8968
9028
  "colorBorderNotificationStackBar": "color",
9029
+ "colorBorderPanelHeader": "color",
8969
9030
  "colorBorderPopover": "color",
8970
9031
  "colorBorderSegmentActive": "color",
8971
9032
  "colorBorderSegmentDefault": "color",
@@ -9173,6 +9234,10 @@ export var preset = {
9173
9234
  "spaceModalContentBottom": "density",
9174
9235
  "spaceModalHorizontal": "density",
9175
9236
  "spaceOptionIconBigTop": "density",
9237
+ "spacePanelContentBottom": "density",
9238
+ "spacePanelContentTop": "density",
9239
+ "spacePanelDividerMarginHorizontal": "density",
9240
+ "spacePanelHeaderVertical": "density",
9176
9241
  "spacePanelNavLeft": "density",
9177
9242
  "spacePanelSideLeft": "density",
9178
9243
  "spacePanelSideRight": "density",
@@ -10145,6 +10210,7 @@ export var preset = {
10145
10210
  "colorBorderItemSelected": "color-border-item-selected",
10146
10211
  "colorBorderLayout": "color-border-layout",
10147
10212
  "colorBorderNotificationStackBar": "color-border-notification-stack-bar",
10213
+ "colorBorderPanelHeader": "color-border-panel-header",
10148
10214
  "colorBorderPopover": "color-border-popover",
10149
10215
  "colorBorderSegmentActive": "color-border-segment-active",
10150
10216
  "colorBorderSegmentDefault": "color-border-segment-default",
@@ -10438,6 +10504,10 @@ export var preset = {
10438
10504
  "spaceModalContentBottom": "space-modal-content-bottom",
10439
10505
  "spaceModalHorizontal": "space-modal-horizontal",
10440
10506
  "spaceOptionIconBigTop": "space-option-icon-big-top",
10507
+ "spacePanelContentBottom": "space-panel-content-bottom",
10508
+ "spacePanelContentTop": "space-panel-content-top",
10509
+ "spacePanelDividerMarginHorizontal": "space-panel-divider-margin-horizontal",
10510
+ "spacePanelHeaderVertical": "space-panel-header-vertical",
10441
10511
  "spacePanelNavLeft": "space-panel-nav-left",
10442
10512
  "spacePanelSideLeft": "space-panel-side-left",
10443
10513
  "spacePanelSideRight": "space-panel-side-right",
@@ -10840,6 +10910,7 @@ export var preset = {
10840
10910
  "colorBorderItemSelected": "--color-border-item-selected-k00wlz",
10841
10911
  "colorBorderLayout": "--color-border-layout-ownedw",
10842
10912
  "colorBorderNotificationStackBar": "--color-border-notification-stack-bar-t3aws2",
10913
+ "colorBorderPanelHeader": "--color-border-panel-header-lf0q4c",
10843
10914
  "colorBorderPopover": "--color-border-popover-umqvld",
10844
10915
  "colorBorderSegmentActive": "--color-border-segment-active-9ah16u",
10845
10916
  "colorBorderSegmentDefault": "--color-border-segment-default-a5zrkd",
@@ -11133,6 +11204,10 @@ export var preset = {
11133
11204
  "spaceModalContentBottom": "--space-modal-content-bottom-hqahub",
11134
11205
  "spaceModalHorizontal": "--space-modal-horizontal-f89syl",
11135
11206
  "spaceOptionIconBigTop": "--space-option-icon-big-top-hybljv",
11207
+ "spacePanelContentBottom": "--space-panel-content-bottom-7k6er3",
11208
+ "spacePanelContentTop": "--space-panel-content-top-wac3yp",
11209
+ "spacePanelDividerMarginHorizontal": "--space-panel-divider-margin-horizontal-sbik1z",
11210
+ "spacePanelHeaderVertical": "--space-panel-header-vertical-gv9pti",
11136
11211
  "spacePanelNavLeft": "--space-panel-nav-left-b1g0mt",
11137
11212
  "spacePanelSideLeft": "--space-panel-side-left-5t0who",
11138
11213
  "spacePanelSideRight": "--space-panel-side-right-xofg51",
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../src/link/internal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAQlD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAwBlF,QAAA,MAAM,YAAY;cAHJ,SAAS,CAAC,SAAS,CAAC,GAAG,gBAAgB,GAAG,MAAM,GAAG,UAAU;uCA0L1E,CAAC;AAqBF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../src/link/internal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAQlD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAwBlF,QAAA,MAAM,YAAY;cAHJ,SAAS,CAAC,SAAS,CAAC,GAAG,gBAAgB,GAAG,MAAM,GAAG,UAAU;uCAgM1E,CAAC;AAqBF,eAAe,YAAY,CAAC"}
@@ -36,17 +36,20 @@ const InternalLink = React.forwardRef((_a, ref) => {
36
36
  const linkId = useUniqueId('link-self');
37
37
  const infoId = useUniqueId('link-info');
38
38
  const infoLinkLabelFromContext = useContext(InfoLinkLabelContext);
39
- const { funnelInteractionId } = useFunnel();
40
- const { stepNumber, stepNameSelector } = useFunnelStep();
41
- const { subStepSelector, subStepNameSelector } = useFunnelSubStep();
39
+ const { funnelIdentifier, funnelInteractionId } = useFunnel();
40
+ const { stepIdentifier, stepNumber, stepNameSelector } = useFunnelStep();
41
+ const { subStepIdentifier, subStepSelector, subStepNameSelector } = useFunnelSubStep();
42
42
  const fireFunnelEvent = (funnelInteractionId) => {
43
43
  if (variant === 'info') {
44
44
  const stepName = getNameFromSelector(stepNameSelector);
45
45
  const subStepName = getNameFromSelector(subStepNameSelector);
46
46
  FunnelMetrics.helpPanelInteracted({
47
+ funnelIdentifier,
47
48
  funnelInteractionId,
49
+ stepIdentifier,
48
50
  stepNumber,
49
51
  stepName,
52
+ subStepIdentifier,
50
53
  stepNameSelector,
51
54
  subStepSelector,
52
55
  subStepName,
@@ -59,10 +62,13 @@ const InternalLink = React.forwardRef((_a, ref) => {
59
62
  const stepName = getNameFromSelector(stepNameSelector);
60
63
  const subStepName = getNameFromSelector(subStepNameSelector);
61
64
  FunnelMetrics.externalLinkInteracted({
65
+ funnelIdentifier,
62
66
  funnelInteractionId,
67
+ stepIdentifier,
63
68
  stepNumber,
64
69
  stepName,
65
70
  stepNameSelector,
71
+ subStepIdentifier,
66
72
  subStepSelector,
67
73
  subStepName,
68
74
  subStepNameSelector,
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/link/internal.tsx"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAC5C,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,eAAe,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAG9C,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAEpG,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,kDAAkD,CAAC;AAC7F,OAAO,EAAE,0BAA0B,EAAE,MAAM,wDAAwD,CAAC;AAOpG,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CACnC,CACE,EAcoB,EACpB,GAA6B,EAC7B,EAAE;QAhBF,EACE,OAAO,EAAE,eAAe,EACxB,QAAQ,GAAG,QAAQ,EACnB,KAAK,GAAG,QAAQ,EAChB,QAAQ,GAAG,KAAK,EAChB,MAAM,EACN,IAAI,EACJ,GAAG,EACH,SAAS,EACT,qBAAqB,EACrB,QAAQ,EACR,QAAQ,EACR,iBAAiB,GAAG,IAAI,OAEN,EADf,KAAK,cAbV,wJAcC,CADS;IAIV,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3B,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC;IACvB,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC,yBAAyB,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,eAAe,IAAI,cAAc,CAAC;IAClD,MAAM,aAAa,GAAG,CAAC,gBAAgB,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IAC7D,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAE5D,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,YAAY,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACzF,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IAExC,MAAM,wBAAwB,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAElE,MAAM,EAAE,mBAAmB,EAAE,GAAG,SAAS,EAAE,CAAC;IAC5C,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,aAAa,EAAE,CAAC;IACzD,MAAM,EAAE,eAAe,EAAE,mBAAmB,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAEpE,MAAM,eAAe,GAAG,CAAC,mBAA2B,EAAE,EAAE;QACtD,IAAI,OAAO,KAAK,MAAM,EAAE;YACtB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;YACvD,MAAM,WAAW,GAAG,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;YAE7D,aAAa,CAAC,mBAAmB,CAAC;gBAChC,mBAAmB;gBACnB,UAAU;gBACV,QAAQ;gBACR,gBAAgB;gBAChB,eAAe;gBACf,WAAW;gBACX,mBAAmB;gBACnB,eAAe,EAAE,sBAAsB,CAAC,QAAQ,CAAC;gBACjD,kBAAkB,EAAE,qBAAqB,EAAE;aAC5C,CAAC,CAAC;SACJ;aAAM,IAAI,QAAQ,EAAE;YACnB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;YACvD,MAAM,WAAW,GAAG,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;YAE7D,aAAa,CAAC,sBAAsB,CAAC;gBACnC,mBAAmB;gBACnB,UAAU;gBACV,QAAQ;gBACR,gBAAgB;gBAChB,eAAe;gBACf,WAAW;gBACX,mBAAmB;gBACnB,eAAe,EAAE,sBAAsB,CAAC,QAAQ,CAAC;gBACjD,kBAAkB,EAAE,qBAAqB,EAAE;aAC5C,CAAC,CAAC;SACJ;IACH,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,KAA2B,EAAE,EAAE;QACtD,IAAI,mBAAmB,EAAE;YACvB,eAAe,CAAC,mBAAmB,CAAC,CAAC;SACtC;QAED,mBAAmB,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,KAAK,CAAC,CAAC;IACjF,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,KAAuB,EAAE,EAAE;QAClD,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE;YAC3B,eAAe,CAAC,KAAK,CAAC,CAAC;SACxB;IACH,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,KAAuB,EAAE,EAAE;QACpD,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAG,CAAC,KAA0B,EAAE,EAAE;QACzD,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,EAAE;YACtE,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,eAAe,CAAC,KAAK,CAAC,CAAC;SACxB;IACH,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAc,IAAI,CAAC,CAAC;IAC1C,MAAM,eAAe,GAAG,gBAAgB,EAAE,CAAC;IAC3C,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAE9B,2HAA2H;IAC3H,MAAM,iBAAiB,GAAG,QAAQ,IAAI,eAAe,IAAI,CAAC,eAAe,CAAC;IAE1E,MAAM,WAAW,iCACf,EAAE,EAAE,MAAM,IACP,SAAS;QACZ,uDAAuD;QACvD,GAAG,EAAE,YAAY,CAAC,OAAO,EAAE,iBAAiB,CAAC,EAC7C,SAAS,EAAE,IAAI,CACb,MAAM,CAAC,IAAI,EACX,SAAS,CAAC,SAAS,EACnB,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EACxC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,EAChC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,EAC3C,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CACtC,EACD,YAAY,EAAE,SAAS,EACvB,iBAAiB,EAAE,EAAE,EACrB,CAAC,sBAAsB,CAAC,EAAE,QAAQ,GACnC,CAAC;IAEF,IAAI,OAAO,KAAK,MAAM,IAAI,wBAAwB,IAAI,CAAC,SAAS,EAAE;QAChE,WAAW,CAAC,iBAAiB,CAAC,GAAG,GAAG,WAAW,CAAC,EAAE,IAAI,MAAM,IAAI,wBAAwB,EAAE,CAAC;KAC5F;IAED,MAAM,6BAA6B,GAAG,IAAI,CAAC,uBAAuB,EAAE,qBAAqB,CAAC,CAAC;IAC3F,MAAM,OAAO,GAAG,CACd;QACG,QAAQ;QACR,QAAQ,IAAI,CACX,8BAAM,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC;;YAErC,8BACE,SAAS,EAAE,MAAM,CAAC,IAAI,gBACV,6BAA6B,EACzC,IAAI,EAAE,6BAA6B,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBAEvD,oBAAC,YAAY,IAAC,IAAI,EAAC,UAAU,EAAC,IAAI,EAAC,SAAS,GAAG,CAC1C,CACF,CACR;QACA,OAAO,KAAK,MAAM,IAAI,CACrB,8BAAM,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,QAEvB,CACR,CACA,CACJ,CAAC;IAEF,MAAM,EAAE,QAAQ,EAAE,GAAG,0BAA0B,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;IAEjG,IAAI,QAAQ,EAAE;QACZ,OAAO,CACL,2CACM,WAAW,IACf,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,mBAAmB,EAC9B,OAAO,EAAE,iBAAiB,KAEzB,OAAO,CACN,CACL,CAAC;KACH;IAED,OAAO;IACL,kDAAkD;IAClD,qDAAqD;IACrD,2CACM,WAAW,IACf,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,eAAe,KAEvB,OAAO,CACN,CACL,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,SAAS,eAAe,CAAC,OAAyD;IAChF,OAAO,WAAW,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC;AACrD,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAqC,EAAE,QAAuC;IACtG,QAAQ,OAAO,EAAE;QACf,KAAK,MAAM;YACT,OAAO,kBAAkB,CAAC;QAC5B,KAAK,mBAAmB;YACtB,OAAO,qBAAqB,CAAC;QAC/B;YACE,OAAO,aAAa,QAAQ,EAAE,CAAC;KAClC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,OAAqC,EAAE,KAAiC;IAC7F,OAAO,SAAS,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;AAC1D,CAAC;AAED,eAAe,YAAY,CAAC","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';\nimport InternalIcon from '../icon/internal';\nimport styles from './styles.css.js';\nimport { getBaseProps } from '../internal/base-component';\nimport { fireCancelableEvent, isPlainLeftClick } from '../internal/events';\nimport useForwardFocus from '../internal/hooks/forward-focus';\nimport { KeyCode } from '../internal/keycode';\nimport { LinkProps } from './interfaces';\nimport { InternalBaseComponentProps } from '../internal/hooks/use-base-component';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode';\nimport { checkSafeUrl } from '../internal/utils/check-safe-url';\nimport { useInternalI18n } from '../i18n/context';\nimport { InfoLinkLabelContext } from '../internal/context/info-link-label-context';\nimport { useFunnel, useFunnelStep, useFunnelSubStep } from '../internal/analytics/hooks/use-funnel';\n\nimport { FunnelMetrics } from '../internal/analytics';\nimport { useUniqueId } from '../internal/hooks/use-unique-id';\nimport {\n DATA_ATTR_FUNNEL_VALUE,\n getFunnelValueSelector,\n getNameFromSelector,\n getSubStepAllSelector,\n} from '../internal/analytics/selectors';\nimport { LinkDefaultVariantContext } from '../internal/context/link-default-variant-context';\nimport { useSingleTabStopNavigation } from '../internal/context/single-tab-stop-navigation-context';\n\ntype InternalLinkProps = InternalBaseComponentProps<HTMLAnchorElement> &\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 children,\n __internalRootRef = null,\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 { funnelInteractionId } = useFunnel();\n const { stepNumber, stepNameSelector } = useFunnelStep();\n const { subStepSelector, subStepNameSelector } = useFunnelSubStep();\n\n const fireFunnelEvent = (funnelInteractionId: string) => {\n if (variant === 'info') {\n const stepName = getNameFromSelector(stepNameSelector);\n const subStepName = getNameFromSelector(subStepNameSelector);\n\n FunnelMetrics.helpPanelInteracted({\n funnelInteractionId,\n stepNumber,\n stepName,\n stepNameSelector,\n subStepSelector,\n subStepName,\n subStepNameSelector,\n elementSelector: getFunnelValueSelector(uniqueId),\n subStepAllSelector: getSubStepAllSelector(),\n });\n } else if (external) {\n const stepName = getNameFromSelector(stepNameSelector);\n const subStepName = getNameFromSelector(subStepNameSelector);\n\n FunnelMetrics.externalLinkInteracted({\n funnelInteractionId,\n stepNumber,\n stepName,\n stepNameSelector,\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 handleLinkClick = (event: React.MouseEvent) => {\n if (isPlainLeftClick(event)) {\n fireFollowEvent(event);\n }\n };\n\n const handleButtonClick = (event: React.MouseEvent) => {\n fireFollowEvent(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 }\n };\n\n const linkRef = useRef<HTMLElement>(null);\n const isVisualRefresh = useVisualRefresh();\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 // https://github.com/microsoft/TypeScript/issues/36659\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 ),\n 'aria-label': ariaLabel,\n 'aria-labelledby': '',\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 {children}\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 <a\n {...sharedProps}\n role=\"button\"\n tabIndex={tabIndex}\n onKeyDown={handleButtonKeyDown}\n onClick={handleButtonClick}\n >\n {content}\n </a>\n );\n }\n\n return (\n // we dynamically set proper rel in the code above\n // eslint-disable-next-line react/jsx-no-target-blank\n <a\n {...sharedProps}\n tabIndex={tabIndex}\n target={anchorTarget}\n rel={anchorRel}\n href={href}\n onClick={handleLinkClick}\n >\n {content}\n </a>\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';\nimport InternalIcon from '../icon/internal';\nimport styles from './styles.css.js';\nimport { getBaseProps } from '../internal/base-component';\nimport { fireCancelableEvent, isPlainLeftClick } from '../internal/events';\nimport useForwardFocus from '../internal/hooks/forward-focus';\nimport { KeyCode } from '../internal/keycode';\nimport { LinkProps } from './interfaces';\nimport { InternalBaseComponentProps } from '../internal/hooks/use-base-component';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode';\nimport { checkSafeUrl } from '../internal/utils/check-safe-url';\nimport { useInternalI18n } from '../i18n/context';\nimport { InfoLinkLabelContext } from '../internal/context/info-link-label-context';\nimport { useFunnel, useFunnelStep, useFunnelSubStep } from '../internal/analytics/hooks/use-funnel';\n\nimport { FunnelMetrics } from '../internal/analytics';\nimport { useUniqueId } from '../internal/hooks/use-unique-id';\nimport {\n DATA_ATTR_FUNNEL_VALUE,\n getFunnelValueSelector,\n getNameFromSelector,\n getSubStepAllSelector,\n} from '../internal/analytics/selectors';\nimport { LinkDefaultVariantContext } from '../internal/context/link-default-variant-context';\nimport { useSingleTabStopNavigation } from '../internal/context/single-tab-stop-navigation-context';\n\ntype InternalLinkProps = InternalBaseComponentProps<HTMLAnchorElement> &\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 children,\n __internalRootRef = null,\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 = getNameFromSelector(stepNameSelector);\n const subStepName = getNameFromSelector(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 = getNameFromSelector(stepNameSelector);\n const subStepName = getNameFromSelector(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 handleLinkClick = (event: React.MouseEvent) => {\n if (isPlainLeftClick(event)) {\n fireFollowEvent(event);\n }\n };\n\n const handleButtonClick = (event: React.MouseEvent) => {\n fireFollowEvent(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 }\n };\n\n const linkRef = useRef<HTMLElement>(null);\n const isVisualRefresh = useVisualRefresh();\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 // https://github.com/microsoft/TypeScript/issues/36659\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 ),\n 'aria-label': ariaLabel,\n 'aria-labelledby': '',\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 {children}\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 <a\n {...sharedProps}\n role=\"button\"\n tabIndex={tabIndex}\n onKeyDown={handleButtonKeyDown}\n onClick={handleButtonClick}\n >\n {content}\n </a>\n );\n }\n\n return (\n // we dynamically set proper rel in the code above\n // eslint-disable-next-line react/jsx-no-target-blank\n <a\n {...sharedProps}\n tabIndex={tabIndex}\n target={anchorTarget}\n rel={anchorRel}\n href={href}\n onClick={handleLinkClick}\n >\n {content}\n </a>\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 +1 @@
1
- {"version":3,"file":"body-scroll.d.ts","sourceRoot":"","sources":["../../../src/modal/body-scroll.ts"],"names":[],"mappings":"AAOA,wBAAgB,oBAAoB,SAGnC;AAED,wBAAgB,mBAAmB,SAGlC"}
1
+ {"version":3,"file":"body-scroll.d.ts","sourceRoot":"","sources":["../../../src/modal/body-scroll.ts"],"names":[],"mappings":"AAaA,wBAAgB,oBAAoB,SAGnC;AAED,wBAAgB,mBAAmB,SAGlC"}
@@ -2,6 +2,11 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
  import styles from './styles.css.js';
4
4
  import { browserScrollbarSize } from '../internal/utils/browser-scrollbar-size';
5
+ // Read this before making changes to the code below.
6
+ //
7
+ // When a modal is used from an iframe the body scrolling utils take no effect because they need to be applied to another document.
8
+ // The customers replicate this behavior by running the same code on the correct document instance, see AWSUI-41915.
9
+ // Hence, we should avoid making changes to the component that break the body scrolling logic in its current form.
5
10
  let initialBodyPaddingRightStyle = undefined;
6
11
  export function disableBodyScrolling() {
7
12
  setBodyScrollbarPadding();
@@ -1 +1 @@
1
- {"version":3,"file":"body-scroll.js","sourceRoot":"","sources":["../../../src/modal/body-scroll.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAEhF,IAAI,4BAA4B,GAAuB,SAAS,CAAC;AAEjE,MAAM,UAAU,oBAAoB;IAClC,uBAAuB,EAAE,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IACrD,2BAA2B,EAAE,CAAC;AAChC,CAAC;AAED,SAAS,uBAAuB;IAC9B,IAAI,gBAAgB,EAAE,EAAE;QACtB,4BAA4B,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;QAChE,MAAM,uBAAuB,GAAG,8BAA8B,EAAE,CAAC;QACjE,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAC,KAAK,CAAC;QACpD,MAAM,mBAAmB,GAAG,uBAAuB,GAAG,cAAc,CAAC;QACrE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,mBAAmB,GAAG,IAAI,CAAC;KAC/D;AACH,CAAC;AAED,SAAS,8BAA8B;IACrC,OAAO,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,2BAA2B;IAClC,IAAI,4BAA4B,EAAE;QAChC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,eAAe,EAAE,4BAA4B,CAAC,CAAC;KAChF;SAAM;QACL,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;KACrD;IACD,4BAA4B,GAAG,SAAS,CAAC;AAC3C,CAAC;AAED,SAAS,gBAAgB;IACvB,4FAA4F;IAC5F,gGAAgG;IAChG,YAAY;IACZ,OAAO,QAAQ,CAAC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACvD,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport styles from './styles.css.js';\nimport { browserScrollbarSize } from '../internal/utils/browser-scrollbar-size';\n\nlet initialBodyPaddingRightStyle: string | undefined = undefined;\n\nexport function disableBodyScrolling() {\n setBodyScrollbarPadding();\n document.body.classList.add(styles['modal-open']);\n}\n\nexport function enableBodyScrolling() {\n document.body.classList.remove(styles['modal-open']);\n restoreBodyScrollbarPadding();\n}\n\nfunction setBodyScrollbarPadding() {\n if (bodyHasScrollbar()) {\n initialBodyPaddingRightStyle = document.body.style.paddingRight;\n const initialBodyPaddingRight = computedBodyPaddingRightPixels();\n const scrollbarWidth = browserScrollbarSize().width;\n const newBodyPaddingRight = initialBodyPaddingRight + scrollbarWidth;\n document.body.style.paddingRight = newBodyPaddingRight + 'px';\n }\n}\n\nfunction computedBodyPaddingRightPixels() {\n return parseInt(window.getComputedStyle(document.body).paddingRight, 10);\n}\n\nfunction restoreBodyScrollbarPadding() {\n if (initialBodyPaddingRightStyle) {\n document.body.style.setProperty('padding-right', initialBodyPaddingRightStyle);\n } else {\n document.body.style.removeProperty('padding-right');\n }\n initialBodyPaddingRightStyle = undefined;\n}\n\nfunction bodyHasScrollbar() {\n // Unfortunately this difference doesn't appear to match the scrollbar width during testing,\n // otherwise we could remove browserScrollbarSize(). Bootstrap also doesn't use this difference\n // directly.\n return document.body.clientWidth < window.innerWidth;\n}\n"]}
1
+ {"version":3,"file":"body-scroll.js","sourceRoot":"","sources":["../../../src/modal/body-scroll.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAEhF,qDAAqD;AACrD,EAAE;AACF,mIAAmI;AACnI,oHAAoH;AACpH,kHAAkH;AAElH,IAAI,4BAA4B,GAAuB,SAAS,CAAC;AAEjE,MAAM,UAAU,oBAAoB;IAClC,uBAAuB,EAAE,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IACrD,2BAA2B,EAAE,CAAC;AAChC,CAAC;AAED,SAAS,uBAAuB;IAC9B,IAAI,gBAAgB,EAAE,EAAE;QACtB,4BAA4B,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;QAChE,MAAM,uBAAuB,GAAG,8BAA8B,EAAE,CAAC;QACjE,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAC,KAAK,CAAC;QACpD,MAAM,mBAAmB,GAAG,uBAAuB,GAAG,cAAc,CAAC;QACrE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,mBAAmB,GAAG,IAAI,CAAC;KAC/D;AACH,CAAC;AAED,SAAS,8BAA8B;IACrC,OAAO,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,2BAA2B;IAClC,IAAI,4BAA4B,EAAE;QAChC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,eAAe,EAAE,4BAA4B,CAAC,CAAC;KAChF;SAAM;QACL,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;KACrD;IACD,4BAA4B,GAAG,SAAS,CAAC;AAC3C,CAAC;AAED,SAAS,gBAAgB;IACvB,4FAA4F;IAC5F,gGAAgG;IAChG,YAAY;IACZ,OAAO,QAAQ,CAAC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACvD,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport styles from './styles.css.js';\nimport { browserScrollbarSize } from '../internal/utils/browser-scrollbar-size';\n\n// Read this before making changes to the code below.\n//\n// When a modal is used from an iframe the body scrolling utils take no effect because they need to be applied to another document.\n// The customers replicate this behavior by running the same code on the correct document instance, see AWSUI-41915.\n// Hence, we should avoid making changes to the component that break the body scrolling logic in its current form.\n\nlet initialBodyPaddingRightStyle: string | undefined = undefined;\n\nexport function disableBodyScrolling() {\n setBodyScrollbarPadding();\n document.body.classList.add(styles['modal-open']);\n}\n\nexport function enableBodyScrolling() {\n document.body.classList.remove(styles['modal-open']);\n restoreBodyScrollbarPadding();\n}\n\nfunction setBodyScrollbarPadding() {\n if (bodyHasScrollbar()) {\n initialBodyPaddingRightStyle = document.body.style.paddingRight;\n const initialBodyPaddingRight = computedBodyPaddingRightPixels();\n const scrollbarWidth = browserScrollbarSize().width;\n const newBodyPaddingRight = initialBodyPaddingRight + scrollbarWidth;\n document.body.style.paddingRight = newBodyPaddingRight + 'px';\n }\n}\n\nfunction computedBodyPaddingRightPixels() {\n return parseInt(window.getComputedStyle(document.body).paddingRight, 10);\n}\n\nfunction restoreBodyScrollbarPadding() {\n if (initialBodyPaddingRightStyle) {\n document.body.style.setProperty('padding-right', initialBodyPaddingRightStyle);\n } else {\n document.body.style.removeProperty('padding-right');\n }\n initialBodyPaddingRightStyle = undefined;\n}\n\nfunction bodyHasScrollbar() {\n // Unfortunately this difference doesn't appear to match the scrollbar width during testing,\n // otherwise we could remove browserScrollbarSize(). Bootstrap also doesn't use this difference\n // directly.\n return document.body.clientWidth < window.innerWidth;\n}\n"]}
@@ -5,6 +5,6 @@ export interface FilterProps extends InternalInputProps {
5
5
  ref?: React.Ref<HTMLInputElement>;
6
6
  filteringType: SelectProps.FilteringType;
7
7
  }
8
- declare const Filter: React.ForwardRefExoticComponent<Pick<FilterProps, "disabled" | "autoComplete" | "autoFocus" | "name" | "className" | "id" | "placeholder" | "inputMode" | "type" | "readOnly" | "step" | "value" | "onFocus" | "onBlur" | "onChange" | "onKeyDown" | "onKeyUp" | "invalid" | "__internalRootRef" | "ariaLabel" | "ariaDescribedby" | "__nativeAttributes" | "clearAriaLabel" | "ariaLabelledby" | "controlId" | "filteringType" | "ariaRequired" | "disableBrowserAutocorrect" | "spellcheck" | "__leftIcon" | "__leftIconVariant" | "__onLeftIconClick" | "__rightIcon" | "__onRightIconClick" | "__noBorderRadius" | "__onDelayedInput" | "__onBlurWithDetail" | "__inheritFormFieldProps"> & React.RefAttributes<HTMLInputElement>>;
8
+ declare const Filter: React.ForwardRefExoticComponent<Pick<FilterProps, "disabled" | "autoComplete" | "autoFocus" | "name" | "className" | "id" | "placeholder" | "inputMode" | "type" | "readOnly" | "step" | "value" | "onFocus" | "onBlur" | "onChange" | "onKeyDown" | "onKeyUp" | "warning" | "invalid" | "__internalRootRef" | "ariaLabel" | "ariaDescribedby" | "__nativeAttributes" | "clearAriaLabel" | "ariaLabelledby" | "controlId" | "filteringType" | "ariaRequired" | "disableBrowserAutocorrect" | "spellcheck" | "__leftIcon" | "__leftIconVariant" | "__onLeftIconClick" | "__rightIcon" | "__onRightIconClick" | "__noBorderRadius" | "__onDelayedInput" | "__onBlurWithDetail" | "__inheritFormFieldProps"> & React.RefAttributes<HTMLInputElement>>;
9
9
  export default Filter;
10
10
  //# sourceMappingURL=filter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../../../src/select/parts/filter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAsB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACrD,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAClC,aAAa,EAAE,WAAW,CAAC,aAAa,CAAC;CAC1C;AAED,QAAA,MAAM,MAAM,wsBAyBV,CAAC;AAEH,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../../../src/select/parts/filter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAsB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACrD,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAClC,aAAa,EAAE,WAAW,CAAC,aAAa,CAAC;CAC1C;AAED,QAAA,MAAM,MAAM,otBAyBV,CAAC;AAEH,eAAe,MAAM,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"trigger.d.ts","sourceRoot":"","sources":["../../../../src/select/parts/trigger.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAC/E,OAAO,EAAE,+BAA+B,EAAE,MAAM,2CAA2C,CAAC;AAG5F,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAIzD,MAAM,WAAW,YAAa,SAAQ,+BAA+B;IACnE,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,YAAY,EAAE,kBAAkB,CAAC;IACjC,cAAc,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACxC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,WAAW,CAAC,cAAc,GAAG,gBAAgB,CAAC,cAAc,CAAC;IAC9E,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;CACnD;AAED,QAAA,MAAM,OAAO,wFA4FZ,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"trigger.d.ts","sourceRoot":"","sources":["../../../../src/select/parts/trigger.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6CAA6C,CAAC;AAC/E,OAAO,EAAE,+BAA+B,EAAE,MAAM,2CAA2C,CAAC;AAG5F,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAIzD,MAAM,WAAW,YAAa,SAAQ,+BAA+B;IACnE,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,YAAY,EAAE,kBAAkB,CAAC;IACjC,cAAc,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACxC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,WAAW,CAAC,cAAc,GAAG,gBAAgB,CAAC,cAAc,CAAC;IAC9E,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;CACnD;AAED,QAAA,MAAM,OAAO,wFA8FZ,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -9,7 +9,7 @@ import Option from '../../internal/components/option';
9
9
  import { useUniqueId } from '../../internal/hooks/use-unique-id';
10
10
  import { joinStrings } from '../../internal/utils/strings';
11
11
  import { useVisualRefresh } from '../../internal/hooks/use-visual-mode';
12
- const Trigger = React.forwardRef(({ ariaLabelledby, ariaDescribedby, controlId, invalid, triggerProps, selectedOption, selectedOptions, triggerVariant, inFilteringToken, isOpen, placeholder, disabled, }, ref) => {
12
+ const Trigger = React.forwardRef(({ ariaLabelledby, ariaDescribedby, controlId, invalid, warning, triggerProps, selectedOption, selectedOptions, triggerVariant, inFilteringToken, isOpen, placeholder, disabled, }, ref) => {
13
13
  const isVisualRefresh = useVisualRefresh();
14
14
  const generatedId = useUniqueId();
15
15
  const id = controlId !== null && controlId !== void 0 ? controlId : generatedId;
@@ -42,7 +42,7 @@ const Trigger = React.forwardRef(({ ariaLabelledby, ariaDescribedby, controlId,
42
42
  triggerContent = (React.createElement("span", { id: triggerContentId, className: styles.trigger }, selectedOption.label || selectedOption.value));
43
43
  }
44
44
  const mergedRef = useMergeRefs(triggerProps.ref, ref);
45
- return (React.createElement(ButtonTrigger, Object.assign({}, triggerProps, { id: id, ref: mergedRef, pressed: isOpen, disabled: disabled, invalid: invalid, inFilteringToken: inFilteringToken, inlineTokens: triggerVariant === 'tokens', ariaDescribedby: ariaDescribedby, ariaLabelledby: ariaLabelledbyIds }), triggerContent));
45
+ return (React.createElement(ButtonTrigger, Object.assign({}, triggerProps, { id: id, ref: mergedRef, pressed: isOpen, disabled: disabled, invalid: invalid, warning: warning && !invalid, inFilteringToken: inFilteringToken, inlineTokens: triggerVariant === 'tokens', ariaDescribedby: ariaDescribedby, ariaLabelledby: ariaLabelledbyIds }), triggerContent));
46
46
  });
47
47
  export default Trigger;
48
48
  //# sourceMappingURL=trigger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trigger.js","sourceRoot":"","sources":["../../../../src/select/parts/trigger.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 from 'react';\nimport { useMergeRefs } from '../../internal/hooks/use-merge-refs';\nimport clsx from 'clsx';\nimport ButtonTrigger from '../../internal/components/button-trigger';\nimport { SelectProps } from '../interfaces';\nimport { MultiselectProps } from '../../multiselect/interfaces';\nimport styles from './styles.css.js';\nimport { OptionDefinition } from '../../internal/components/option/interfaces';\nimport { FormFieldValidationControlProps } from '../../internal/context/form-field-context';\nimport Option from '../../internal/components/option';\nimport { useUniqueId } from '../../internal/hooks/use-unique-id';\nimport { SelectTriggerProps } from '../utils/use-select';\nimport { joinStrings } from '../../internal/utils/strings';\nimport { useVisualRefresh } from '../../internal/hooks/use-visual-mode';\n\nexport interface TriggerProps extends FormFieldValidationControlProps {\n placeholder: string | undefined;\n disabled: boolean | undefined;\n triggerProps: SelectTriggerProps;\n selectedOption: OptionDefinition | null;\n isOpen?: boolean;\n triggerVariant?: SelectProps.TriggerVariant | MultiselectProps.TriggerVariant;\n inFilteringToken?: boolean;\n selectedOptions?: ReadonlyArray<OptionDefinition>;\n}\n\nconst Trigger = React.forwardRef(\n (\n {\n ariaLabelledby,\n ariaDescribedby,\n controlId,\n invalid,\n triggerProps,\n selectedOption,\n selectedOptions,\n triggerVariant,\n inFilteringToken,\n isOpen,\n placeholder,\n disabled,\n }: TriggerProps,\n ref: React.Ref<HTMLButtonElement>\n ) => {\n const isVisualRefresh = useVisualRefresh();\n const generatedId = useUniqueId();\n const id = controlId ?? generatedId;\n const triggerContentId = useUniqueId('trigger-content-');\n\n let ariaLabelledbyIds = joinStrings(ariaLabelledby, triggerContentId);\n\n let triggerContent = null;\n if (triggerVariant === 'tokens') {\n if (selectedOptions?.length) {\n triggerContent = (\n <span\n className={clsx(\n styles['inline-token-trigger'],\n disabled && styles['inline-token-trigger--disabled'],\n isVisualRefresh && styles['visual-refresh']\n )}\n >\n <span className={styles['inline-token-list']}>\n {selectedOptions.map(({ label }, i) => (\n <span key={i} className={styles['inline-token']}>\n {label}\n </span>\n ))}\n </span>\n <span className={styles['inline-token-counter']} id={triggerContentId}>\n <span className={styles['inline-token-hidden-placeholder']}>{placeholder}</span>\n <span>({selectedOptions.length})</span>\n </span>\n </span>\n );\n ariaLabelledbyIds = ariaLabelledby;\n } else {\n triggerContent = (\n <span aria-disabled=\"true\" className={clsx(styles.placeholder, styles.trigger)} id={triggerContentId}>\n {placeholder}\n </span>\n );\n }\n } else if (!selectedOption) {\n triggerContent = (\n <span aria-disabled=\"true\" className={clsx(styles.placeholder, styles.trigger)} id={triggerContentId}>\n {placeholder}\n </span>\n );\n } else if (triggerVariant === 'option') {\n triggerContent = <Option id={triggerContentId} option={{ ...selectedOption, disabled }} triggerVariant={true} />;\n } else {\n triggerContent = (\n <span id={triggerContentId} className={styles.trigger}>\n {selectedOption.label || selectedOption.value}\n </span>\n );\n }\n\n const mergedRef = useMergeRefs(triggerProps.ref, ref);\n\n return (\n <ButtonTrigger\n {...triggerProps}\n id={id}\n ref={mergedRef}\n pressed={isOpen}\n disabled={disabled}\n invalid={invalid}\n inFilteringToken={inFilteringToken}\n inlineTokens={triggerVariant === 'tokens'}\n ariaDescribedby={ariaDescribedby}\n ariaLabelledby={ariaLabelledbyIds}\n >\n {triggerContent}\n </ButtonTrigger>\n );\n }\n);\n\nexport default Trigger;\n"]}
1
+ {"version":3,"file":"trigger.js","sourceRoot":"","sources":["../../../../src/select/parts/trigger.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 from 'react';\nimport { useMergeRefs } from '../../internal/hooks/use-merge-refs';\nimport clsx from 'clsx';\nimport ButtonTrigger from '../../internal/components/button-trigger';\nimport { SelectProps } from '../interfaces';\nimport { MultiselectProps } from '../../multiselect/interfaces';\nimport styles from './styles.css.js';\nimport { OptionDefinition } from '../../internal/components/option/interfaces';\nimport { FormFieldValidationControlProps } from '../../internal/context/form-field-context';\nimport Option from '../../internal/components/option';\nimport { useUniqueId } from '../../internal/hooks/use-unique-id';\nimport { SelectTriggerProps } from '../utils/use-select';\nimport { joinStrings } from '../../internal/utils/strings';\nimport { useVisualRefresh } from '../../internal/hooks/use-visual-mode';\n\nexport interface TriggerProps extends FormFieldValidationControlProps {\n placeholder: string | undefined;\n disabled: boolean | undefined;\n triggerProps: SelectTriggerProps;\n selectedOption: OptionDefinition | null;\n isOpen?: boolean;\n triggerVariant?: SelectProps.TriggerVariant | MultiselectProps.TriggerVariant;\n inFilteringToken?: boolean;\n selectedOptions?: ReadonlyArray<OptionDefinition>;\n}\n\nconst Trigger = React.forwardRef(\n (\n {\n ariaLabelledby,\n ariaDescribedby,\n controlId,\n invalid,\n warning,\n triggerProps,\n selectedOption,\n selectedOptions,\n triggerVariant,\n inFilteringToken,\n isOpen,\n placeholder,\n disabled,\n }: TriggerProps,\n ref: React.Ref<HTMLButtonElement>\n ) => {\n const isVisualRefresh = useVisualRefresh();\n const generatedId = useUniqueId();\n const id = controlId ?? generatedId;\n const triggerContentId = useUniqueId('trigger-content-');\n\n let ariaLabelledbyIds = joinStrings(ariaLabelledby, triggerContentId);\n\n let triggerContent = null;\n if (triggerVariant === 'tokens') {\n if (selectedOptions?.length) {\n triggerContent = (\n <span\n className={clsx(\n styles['inline-token-trigger'],\n disabled && styles['inline-token-trigger--disabled'],\n isVisualRefresh && styles['visual-refresh']\n )}\n >\n <span className={styles['inline-token-list']}>\n {selectedOptions.map(({ label }, i) => (\n <span key={i} className={styles['inline-token']}>\n {label}\n </span>\n ))}\n </span>\n <span className={styles['inline-token-counter']} id={triggerContentId}>\n <span className={styles['inline-token-hidden-placeholder']}>{placeholder}</span>\n <span>({selectedOptions.length})</span>\n </span>\n </span>\n );\n ariaLabelledbyIds = ariaLabelledby;\n } else {\n triggerContent = (\n <span aria-disabled=\"true\" className={clsx(styles.placeholder, styles.trigger)} id={triggerContentId}>\n {placeholder}\n </span>\n );\n }\n } else if (!selectedOption) {\n triggerContent = (\n <span aria-disabled=\"true\" className={clsx(styles.placeholder, styles.trigger)} id={triggerContentId}>\n {placeholder}\n </span>\n );\n } else if (triggerVariant === 'option') {\n triggerContent = <Option id={triggerContentId} option={{ ...selectedOption, disabled }} triggerVariant={true} />;\n } else {\n triggerContent = (\n <span id={triggerContentId} className={styles.trigger}>\n {selectedOption.label || selectedOption.value}\n </span>\n );\n }\n\n const mergedRef = useMergeRefs(triggerProps.ref, ref);\n\n return (\n <ButtonTrigger\n {...triggerProps}\n id={id}\n ref={mergedRef}\n pressed={isOpen}\n disabled={disabled}\n invalid={invalid}\n warning={warning && !invalid}\n inFilteringToken={inFilteringToken}\n inlineTokens={triggerVariant === 'tokens'}\n ariaDescribedby={ariaDescribedby}\n ariaLabelledby={ariaLabelledbyIds}\n >\n {triggerContent}\n </ButtonTrigger>\n );\n }\n);\n\nexport default Trigger;\n"]}
@@ -1,33 +1,33 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "root": "awsui_root_l0dv0_1qw6y_99",
5
- "header": "awsui_header_l0dv0_1qw6y_136",
6
- "header-link": "awsui_header-link_l0dv0_1qw6y_149",
7
- "header-link--has-logo": "awsui_header-link--has-logo_l0dv0_1qw6y_159",
8
- "header-link-text": "awsui_header-link-text_l0dv0_1qw6y_159",
9
- "header-logo": "awsui_header-logo_l0dv0_1qw6y_164",
10
- "header-logo--stretched": "awsui_header-logo--stretched_l0dv0_1qw6y_170",
11
- "list-container": "awsui_list-container_l0dv0_1qw6y_175",
12
- "list": "awsui_list_l0dv0_1qw6y_175",
13
- "list-variant-root": "awsui_list-variant-root_l0dv0_1qw6y_187",
14
- "list-variant-root--last": "awsui_list-variant-root--last_l0dv0_1qw6y_194",
15
- "list-variant-expandable-link-group": "awsui_list-variant-expandable-link-group_l0dv0_1qw6y_198",
16
- "list-item": "awsui_list-item_l0dv0_1qw6y_202",
17
- "section": "awsui_section_l0dv0_1qw6y_210",
18
- "expandable-link-group": "awsui_expandable-link-group_l0dv0_1qw6y_211",
19
- "section--no-ident": "awsui_section--no-ident_l0dv0_1qw6y_214",
20
- "expandable-link-group--no-ident": "awsui_expandable-link-group--no-ident_l0dv0_1qw6y_215",
21
- "refresh": "awsui_refresh_l0dv0_1qw6y_223",
22
- "list-variant-section-group": "awsui_list-variant-section-group_l0dv0_1qw6y_231",
23
- "section-group": "awsui_section-group_l0dv0_1qw6y_238",
24
- "section-group-title": "awsui_section-group-title_l0dv0_1qw6y_249",
25
- "link": "awsui_link_l0dv0_1qw6y_253",
26
- "link-active": "awsui_link-active_l0dv0_1qw6y_262",
27
- "info": "awsui_info_l0dv0_1qw6y_299",
28
- "external-icon": "awsui_external-icon_l0dv0_1qw6y_303",
29
- "divider": "awsui_divider_l0dv0_1qw6y_307",
30
- "divider-default": "awsui_divider-default_l0dv0_1qw6y_313",
31
- "divider-header": "awsui_divider-header_l0dv0_1qw6y_318"
4
+ "root": "awsui_root_l0dv0_1igbc_99",
5
+ "header": "awsui_header_l0dv0_1igbc_136",
6
+ "header-link": "awsui_header-link_l0dv0_1igbc_149",
7
+ "header-link--has-logo": "awsui_header-link--has-logo_l0dv0_1igbc_159",
8
+ "header-link-text": "awsui_header-link-text_l0dv0_1igbc_159",
9
+ "header-logo": "awsui_header-logo_l0dv0_1igbc_164",
10
+ "header-logo--stretched": "awsui_header-logo--stretched_l0dv0_1igbc_170",
11
+ "list-container": "awsui_list-container_l0dv0_1igbc_175",
12
+ "list": "awsui_list_l0dv0_1igbc_175",
13
+ "list-variant-root": "awsui_list-variant-root_l0dv0_1igbc_187",
14
+ "list-variant-root--last": "awsui_list-variant-root--last_l0dv0_1igbc_194",
15
+ "list-variant-expandable-link-group": "awsui_list-variant-expandable-link-group_l0dv0_1igbc_198",
16
+ "list-item": "awsui_list-item_l0dv0_1igbc_202",
17
+ "section": "awsui_section_l0dv0_1igbc_210",
18
+ "expandable-link-group": "awsui_expandable-link-group_l0dv0_1igbc_211",
19
+ "section--no-ident": "awsui_section--no-ident_l0dv0_1igbc_214",
20
+ "expandable-link-group--no-ident": "awsui_expandable-link-group--no-ident_l0dv0_1igbc_215",
21
+ "refresh": "awsui_refresh_l0dv0_1igbc_223",
22
+ "list-variant-section-group": "awsui_list-variant-section-group_l0dv0_1igbc_231",
23
+ "section-group": "awsui_section-group_l0dv0_1igbc_238",
24
+ "section-group-title": "awsui_section-group-title_l0dv0_1igbc_249",
25
+ "link": "awsui_link_l0dv0_1igbc_253",
26
+ "link-active": "awsui_link-active_l0dv0_1igbc_262",
27
+ "info": "awsui_info_l0dv0_1igbc_299",
28
+ "external-icon": "awsui_external-icon_l0dv0_1igbc_303",
29
+ "divider": "awsui_divider_l0dv0_1igbc_307",
30
+ "divider-default": "awsui_divider-default_l0dv0_1igbc_312",
31
+ "divider-header": "awsui_divider-header_l0dv0_1igbc_318"
32
32
  };
33
33