@telus-uds/components-web 2.11.0 → 2.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/CHANGELOG.md +38 -2
  2. package/component-docs.json +123 -35
  3. package/lib/Autocomplete/Loading.js +5 -10
  4. package/lib/Autocomplete/dictionary.js +2 -2
  5. package/lib/Card/Card.js +2 -0
  6. package/lib/DatePicker/DatePicker.js +6 -0
  7. package/lib/ExpandCollapseMini/ExpandCollapseMini.js +5 -10
  8. package/lib/ExpandCollapseMini/ExpandCollapseMiniControl.js +32 -7
  9. package/lib/Footnote/FootnoteLink.js +1 -2
  10. package/lib/NavigationBar/NavigationSubMenu.js +4 -8
  11. package/lib/PriceLockup/PriceLockup.js +6 -1
  12. package/lib/Spinner/Spinner.js +10 -1
  13. package/lib/Spinner/SpinnerContent.js +8 -0
  14. package/lib/Table/Cell.js +62 -91
  15. package/lib/Table/Header.js +4 -1
  16. package/lib/Table/SubHeading.js +4 -1
  17. package/lib/Table/Table.js +2 -1
  18. package/lib/TermsAndConditions/ExpandCollapse.js +31 -13
  19. package/lib/TermsAndConditions/TermsAndConditions.js +21 -6
  20. package/lib/VideoPicker/VideoPickerPlayer.js +4 -2
  21. package/lib/VideoPicker/VideoPickerThumbnail.js +103 -60
  22. package/lib/VideoPicker/VideoSlider.js +2 -2
  23. package/lib-module/Autocomplete/Loading.js +6 -12
  24. package/lib-module/Autocomplete/dictionary.js +2 -2
  25. package/lib-module/Card/Card.js +2 -0
  26. package/lib-module/DatePicker/DatePicker.js +7 -1
  27. package/lib-module/ExpandCollapseMini/ExpandCollapseMini.js +6 -11
  28. package/lib-module/ExpandCollapseMini/ExpandCollapseMiniControl.js +32 -7
  29. package/lib-module/Footnote/FootnoteLink.js +1 -2
  30. package/lib-module/NavigationBar/NavigationSubMenu.js +5 -9
  31. package/lib-module/PriceLockup/PriceLockup.js +7 -2
  32. package/lib-module/Spinner/Spinner.js +10 -1
  33. package/lib-module/Spinner/SpinnerContent.js +8 -0
  34. package/lib-module/Table/Cell.js +65 -90
  35. package/lib-module/Table/Header.js +4 -1
  36. package/lib-module/Table/SubHeading.js +4 -1
  37. package/lib-module/Table/Table.js +2 -1
  38. package/lib-module/TermsAndConditions/ExpandCollapse.js +33 -15
  39. package/lib-module/TermsAndConditions/TermsAndConditions.js +22 -7
  40. package/lib-module/VideoPicker/VideoPickerPlayer.js +4 -2
  41. package/lib-module/VideoPicker/VideoPickerThumbnail.js +103 -61
  42. package/lib-module/VideoPicker/VideoSlider.js +2 -2
  43. package/package.json +3 -3
  44. package/src/Autocomplete/Loading.jsx +2 -5
  45. package/src/Autocomplete/dictionary.js +2 -2
  46. package/src/Card/Card.jsx +12 -8
  47. package/src/DatePicker/DatePicker.jsx +8 -1
  48. package/src/ExpandCollapseMini/ExpandCollapseMini.jsx +9 -6
  49. package/src/ExpandCollapseMini/ExpandCollapseMiniControl.jsx +21 -4
  50. package/src/Footnote/FootnoteLink.jsx +1 -2
  51. package/src/NavigationBar/NavigationSubMenu.jsx +3 -4
  52. package/src/PriceLockup/PriceLockup.jsx +7 -2
  53. package/src/Spinner/Spinner.jsx +9 -1
  54. package/src/Spinner/SpinnerContent.jsx +13 -1
  55. package/src/Table/Cell.jsx +58 -78
  56. package/src/Table/Header.jsx +6 -1
  57. package/src/Table/SubHeading.jsx +4 -1
  58. package/src/Table/Table.jsx +10 -2
  59. package/src/TermsAndConditions/ExpandCollapse.jsx +36 -14
  60. package/src/TermsAndConditions/TermsAndConditions.jsx +18 -6
  61. package/src/VideoPicker/VideoPickerPlayer.jsx +2 -2
  62. package/src/VideoPicker/VideoPickerThumbnail.jsx +51 -30
  63. package/src/VideoPicker/VideoSlider.jsx +2 -2
  64. package/types/BaseProvider.d.ts +25 -0
  65. package/types/index.d.ts +1 -1
package/CHANGELOG.md CHANGED
@@ -1,12 +1,48 @@
1
1
  # Change Log - @telus-uds/components-web
2
2
 
3
- This log was last generated on Wed, 21 Jun 2023 20:33:00 GMT and should not be manually modified.
3
+ This log was last generated on Fri, 07 Jul 2023 19:17:02 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 2.13.0
8
+
9
+ Fri, 07 Jul 2023 19:17:02 GMT
10
+
11
+ ### Minor changes
12
+
13
+ - Refactored Table for proper standardization (wlsdud194@hotmail.com)
14
+ - New prop labelPosition added to the Spinner and SpinnerContent components (35577399+JoshHC@users.noreply.github.com)
15
+ - standardization for terms and conditions (mauricio.batresmontejo@telus.com)
16
+ - Loading component updated inside autocomplete to use the label as a prop of spinner (35577399+JoshHC@users.noreply.github.com)
17
+ - Navigation bar item tokenized (akshay.pandey1@telus.com)
18
+ - add state to videopickerthumbnail (evander.owusu@telus.com)
19
+ - added types for BaseProvider (kyle.king2@telus.com)
20
+ - Bump @telus-uds/components-base to v1.54.0
21
+ - Bump @telus-uds/system-theme-tokens to v2.37.0
22
+
23
+ ### Patches
24
+
25
+ - Fix an issue where `DatePicker` is unable to reset `date` programmatically (shahzaibkhalidmalik@outlook.com)
26
+
27
+ ## 2.12.0
28
+
29
+ Wed, 28 Jun 2023 23:27:23 GMT
30
+
31
+ ### Minor changes
32
+
33
+ - Fixed an issue where FootnoteLink had a default property value which was being applied as 'smallerpx' instead of the intended 'smaller' (kyle.king2@telus.com)
34
+ - Gradient token added to Card component (35577399+JoshHC@users.noreply.github.com)
35
+ - added function to select link tokens from themeTokens (kyle.king2@telus.com)
36
+ - Bump @telus-uds/components-base to v1.53.0
37
+ - Bump @telus-uds/system-theme-tokens to v2.36.0
38
+
39
+ ### Patches
40
+
41
+ - May not be able to focus `ChevronLink` for `theme-allium` (shahzaibkhalidmalik@outlook.com)
42
+
7
43
  ## 2.11.0
8
44
 
9
- Wed, 21 Jun 2023 20:33:00 GMT
45
+ Wed, 21 Jun 2023 20:40:42 GMT
10
46
 
11
47
  ### Minor changes
12
48
 
@@ -522,6 +522,7 @@
522
522
  "flex": "integer",
523
523
  "backgroundColor": "color",
524
524
  "borderColor": "color",
525
+ "gradient": "gradient",
525
526
  "borderRadius": "radius",
526
527
  "borderWidth": "border",
527
528
  "paddingBottom": "size",
@@ -1067,11 +1068,14 @@
1067
1068
  },
1068
1069
  "required": false
1069
1070
  },
1070
- "fontSize": {
1071
- "defaultValue": {
1072
- "value": "'smaller'",
1073
- "computed": false
1071
+ "onClick": {
1072
+ "type": {
1073
+ "name": "func"
1074
1074
  },
1075
+ "required": true,
1076
+ "description": "A callback function to handle the click of a FootnoteLink."
1077
+ },
1078
+ "fontSize": {
1075
1079
  "type": {
1076
1080
  "name": "union",
1077
1081
  "value": [
@@ -1085,13 +1089,6 @@
1085
1089
  },
1086
1090
  "required": false,
1087
1091
  "description": "Override default `fontSize` to set specific font size value"
1088
- },
1089
- "onClick": {
1090
- "type": {
1091
- "name": "func"
1092
- },
1093
- "required": true,
1094
- "description": "A callback function to handle the click of a FootnoteLink."
1095
1092
  }
1096
1093
  },
1097
1094
  "attributes": {}
@@ -2362,6 +2359,55 @@
2362
2359
  },
2363
2360
  "required": false,
2364
2361
  "description": "To provide a11y text for `PriceLockup` component\n\n**Note:** a11yText will override strikethrough price, so it must include price (ie. \"was 50 dollars per month\")"
2362
+ },
2363
+ "tokens": {
2364
+ "type": {
2365
+ "name": "custom",
2366
+ "raw": {
2367
+ "fontName": "fontName",
2368
+ "fontWeight": "fontWeight",
2369
+ "footnoteMarginTop": "size",
2370
+ "footnoteGap": "size",
2371
+ "bottomTextMarginTop": "size",
2372
+ "priceMarginBottom": "size",
2373
+ "bottomLinksMarginLeft": "size",
2374
+ "topTextMarginBottom": "size",
2375
+ "strikeThroughHeight": "size",
2376
+ "strikeThroughColor": "color",
2377
+ "fontColor": "color",
2378
+ "dividerColor": "color",
2379
+ "topTextFontSize": "fontSize",
2380
+ "strikeThroughPosition": "size",
2381
+ "topTextLineHeight": "lineHeight",
2382
+ "currencySymbolFontSize": "fontSize",
2383
+ "currencySymbolLineHeight": "lineHeight",
2384
+ "currencySymbolFontName": "fontName",
2385
+ "currencySymbolFontWeight": "fontWeight",
2386
+ "amountFontSize": "fontSize",
2387
+ "amountLineHeight": "lineHeight",
2388
+ "amountLetterSpacing": "letterSpacing",
2389
+ "amountFontWeight": "fontWeight",
2390
+ "amountFontName": "fontName",
2391
+ "centsFontSize": "fontSize",
2392
+ "centsLineHeight": "lineHeight",
2393
+ "centsFontName": "fontName",
2394
+ "centsFontWeight": "fontWeight",
2395
+ "topTextFontName": "fontName",
2396
+ "topTextFontWeight": "fontWeight",
2397
+ "rateFontSize": "fontSize",
2398
+ "rateLineHeight": "lineHeight",
2399
+ "rateFontName": "fontName",
2400
+ "rateFontWeight": "fontWeight",
2401
+ "bottomTextFontSize": "fontSize",
2402
+ "bottomTextLineHeight": "lineHeight",
2403
+ "footnoteLinkColor": "color",
2404
+ "footnoteLinkFontName": "fontName",
2405
+ "footnoteLinkFontWeight": "fontWeight",
2406
+ "footnoteLinkFontSize": "fontSize"
2407
+ }
2408
+ },
2409
+ "required": false,
2410
+ "description": "`PriceLockup` tokens"
2365
2411
  }
2366
2412
  },
2367
2413
  "attributes": {}
@@ -3021,6 +3067,13 @@
3021
3067
  },
3022
3068
  "required": true,
3023
3069
  "description": "Communicates a message to assistive technology while visible. This same message\nwill appear underneath the spinner when its `size` is `large`."
3070
+ },
3071
+ "labelPosition": {
3072
+ "type": {
3073
+ "name": "string"
3074
+ },
3075
+ "required": false,
3076
+ "description": "Determine where the label of the spinner should be placed, left, right, bottom or top."
3024
3077
  }
3025
3078
  },
3026
3079
  "attributes": {}
@@ -3109,6 +3162,13 @@
3109
3162
  "docs": {
3110
3163
  "description": "Use `Table` to display tabular data.\n\n- Takes an optional `spacing` variant (compact)\n- Available in 2 text styles (medium, small)\n- When `Table` exceeds viewport, the first column becomes sticky, enabling horizontal scrolling\n- Right-align prices and numbers that display decimal points\n\n### Building up a `Table`\n- Use `Table.Header` and `Table.Body` as direct children of `Table`\n- Use `Table.SubHeading` to render an intermediate data heading row\n- Use `Table.Row` and `Table.Cell` to build up the tabular data\n- Use `Cell`'s `type` prop to visually mark it as a row heading (`type=\"rowHeading\"`)",
3111
3164
  "props": {
3165
+ "spacing": {
3166
+ "defaultValue": {
3167
+ "value": "'default'",
3168
+ "computed": false
3169
+ },
3170
+ "required": false
3171
+ },
3112
3172
  "fullWidth": {
3113
3173
  "defaultValue": {
3114
3174
  "value": "true",
@@ -3211,59 +3271,55 @@
3211
3271
  "docs": {
3212
3272
  "description": "",
3213
3273
  "props": {
3214
- "type": {
3274
+ "align": {
3215
3275
  "defaultValue": {
3216
- "value": "'default'",
3276
+ "value": "'left'",
3217
3277
  "computed": false
3218
3278
  },
3219
3279
  "type": {
3220
3280
  "name": "enum",
3221
3281
  "value": [
3222
3282
  {
3223
- "value": "'default'",
3224
- "computed": false
3225
- },
3226
- {
3227
- "value": "'heading'",
3283
+ "value": "'left'",
3228
3284
  "computed": false
3229
3285
  },
3230
3286
  {
3231
- "value": "'subHeading'",
3287
+ "value": "'center'",
3232
3288
  "computed": false
3233
3289
  },
3234
3290
  {
3235
- "value": "'rowHeading'",
3291
+ "value": "'right'",
3236
3292
  "computed": false
3237
3293
  }
3238
3294
  ]
3239
3295
  },
3240
3296
  "required": false,
3241
- "description": "Defines the visual styles of a cell, and whether it should be a `td` or `th` element"
3297
+ "description": "Defines the text alignment within the cell"
3242
3298
  },
3243
- "align": {
3244
- "defaultValue": {
3245
- "value": "'left'",
3246
- "computed": false
3247
- },
3299
+ "type": {
3248
3300
  "type": {
3249
3301
  "name": "enum",
3250
3302
  "value": [
3251
3303
  {
3252
- "value": "'left'",
3304
+ "value": "'default'",
3253
3305
  "computed": false
3254
3306
  },
3255
3307
  {
3256
- "value": "'center'",
3308
+ "value": "'heading'",
3257
3309
  "computed": false
3258
3310
  },
3259
3311
  {
3260
- "value": "'right'",
3312
+ "value": "'subHeading'",
3313
+ "computed": false
3314
+ },
3315
+ {
3316
+ "value": "'rowHeading'",
3261
3317
  "computed": false
3262
3318
  }
3263
3319
  ]
3264
3320
  },
3265
3321
  "required": false,
3266
- "description": "Defines the text alignment within the cell"
3322
+ "description": ""
3267
3323
  },
3268
3324
  "tokens": {
3269
3325
  "type": {
@@ -6906,7 +6962,19 @@
6906
6962
  "borderRadius": "radius",
6907
6963
  "borderWidth": "border",
6908
6964
  "expandDividerColor": "color",
6909
- "expandDividerWidth": "size"
6965
+ "expandDividerWidth": "size",
6966
+ "contentPanelBackgroundColor": "color",
6967
+ "contentPanelPaddingLeft": "size",
6968
+ "contentPanelPaddingRight": "size",
6969
+ "contentPanelPaddingTop": "size",
6970
+ "contentPanelPaddingBottom": "size",
6971
+ "contentPanelBorderWidth": "border",
6972
+ "contentPanelBorderColor": "color",
6973
+ "contentPanelFontName": "fontName",
6974
+ "contentPanelFontSize": "fontSize",
6975
+ "contentPanelFontColor": "color",
6976
+ "contentPanelFontWeight": "fontWeight",
6977
+ "contentPanelLineHeight": "lineHeight"
6910
6978
  }
6911
6979
  },
6912
6980
  "required": false,
@@ -6923,7 +6991,7 @@
6923
6991
  "type": {
6924
6992
  "name": "func"
6925
6993
  },
6926
- "required": true,
6994
+ "required": false,
6927
6995
  "description": "Function to call on pressing the panel's control, which should open or close the panel.\nIf Panel is a direct child of `ExpandCollapse`, this prop will be provided by the ExpandCollapse parent."
6928
6996
  },
6929
6997
  "onPress": {
@@ -6951,10 +7019,10 @@
6951
7019
  "control": {
6952
7020
  "type": {
6953
7021
  "name": "custom",
6954
- "raw": "ExpandCollapseControl.propTypes.children.isRequired"
7022
+ "raw": "ExpandCollapseControl.propTypes.children"
6955
7023
  },
6956
7024
  "required": false,
6957
- "description": "The content inside the always-visible control element that opens and closes the ExpandCollapse when pressed."
7025
+ "description": "The content inside the control element that opens and closes the ExpandCollapse when pressed."
6958
7026
  },
6959
7027
  "controlTokens": {
6960
7028
  "type": {
@@ -6992,6 +7060,13 @@
6992
7060
  },
6993
7061
  "required": false,
6994
7062
  "description": "An optional ref to be attached to the control"
7063
+ },
7064
+ "content": {
7065
+ "type": {
7066
+ "name": "bool"
7067
+ },
7068
+ "required": false,
7069
+ "description": "A boolean prop to determine if the panel is a content panel or not. If true, the panel will not have a control"
6995
7070
  }
6996
7071
  },
6997
7072
  "attributes": {
@@ -9118,6 +9193,7 @@
9118
9193
  "flex": "integer",
9119
9194
  "backgroundColor": "color",
9120
9195
  "borderColor": "color",
9196
+ "gradient": "gradient",
9121
9197
  "borderRadius": "radius",
9122
9198
  "borderWidth": "border",
9123
9199
  "paddingBottom": "size",
@@ -11208,7 +11284,12 @@
11208
11284
  "outlineWidth": "border",
11209
11285
  "paddingHorizontal": "size",
11210
11286
  "paddingVertical": "size",
11211
- "borderRadius": "radius"
11287
+ "borderRadius": "radius",
11288
+ "textLine": "textLine",
11289
+ "fontName": "fontName",
11290
+ "fontWeight": "fontWeight",
11291
+ "fontSize": "fontSize",
11292
+ "lineHeight": "lineHeight"
11212
11293
  }
11213
11294
  },
11214
11295
  "required": false,
@@ -12742,7 +12823,10 @@
12742
12823
  "paddingBottom": "size",
12743
12824
  "shadow": "shadow",
12744
12825
  "alignSelf": "flexAlign",
12826
+ "space": "integer",
12745
12827
  "icon": "icon",
12828
+ "trackHeight": "size",
12829
+ "outerBorderGapButton": "size",
12746
12830
  "width": "size",
12747
12831
  "trackBorderWidth": "border",
12748
12832
  "trackBorderColor": "color",
@@ -13068,7 +13152,10 @@
13068
13152
  "paddingBottom": "size",
13069
13153
  "shadow": "shadow",
13070
13154
  "alignSelf": "flexAlign",
13155
+ "space": "integer",
13071
13156
  "icon": "icon",
13157
+ "trackHeight": "size",
13158
+ "outerBorderGapButton": "size",
13072
13159
  "width": "size",
13073
13160
  "trackBorderWidth": "border",
13074
13161
  "trackBorderColor": "color",
@@ -13464,6 +13551,7 @@
13464
13551
  "name": "custom",
13465
13552
  "raw": {
13466
13553
  "fontName": "fontName",
13554
+ "superScriptFontSize": "fontSize",
13467
13555
  "fontWeight": "fontWeight",
13468
13556
  "fontSize": "fontSize",
13469
13557
  "color": "color",
@@ -23,23 +23,18 @@ const Loading = _ref => {
23
23
  } = _ref;
24
24
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_componentsBase.Box, {
25
25
  space: 3,
26
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_componentsBase.StackView, {
26
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_componentsBase.StackView, {
27
27
  direction: "row",
28
28
  space: 2,
29
29
  tokens: {
30
30
  alignItems: 'center'
31
31
  },
32
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {
32
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Spinner.default, {
33
33
  inline: true,
34
34
  show: true,
35
- size: "small"
36
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_componentsBase.Typography, {
37
- variant: {
38
- size: 'small'
39
- },
40
- accessibilityLiveRegion: "polite",
41
- children: label
42
- })]
35
+ label: label,
36
+ labelPosition: "right"
37
+ })
43
38
  })
44
39
  });
45
40
  };
@@ -7,12 +7,12 @@ exports.default = void 0;
7
7
  var _default = {
8
8
  en: {
9
9
  hasResults: 'Some results are available',
10
- loading: 'Loading suggestions...',
10
+ loading: 'Searching...',
11
11
  noResults: 'No results found'
12
12
  },
13
13
  fr: {
14
14
  hasResults: 'Quelques suggestions sont disponible',
15
- loading: 'Chargement en cours...',
15
+ loading: 'Recherche...',
16
16
  noResults: 'Aucun résultat trouvé'
17
17
  }
18
18
  };
package/lib/Card/Card.js CHANGED
@@ -30,6 +30,7 @@ const selectCardBaseTokens = _ref => {
30
30
  let {
31
31
  backgroundColor,
32
32
  borderColor,
33
+ gradient,
33
34
  borderWidth,
34
35
  borderRadius,
35
36
  shadow,
@@ -38,6 +39,7 @@ const selectCardBaseTokens = _ref => {
38
39
  return {
39
40
  backgroundColor,
40
41
  borderColor,
42
+ gradient,
41
43
  borderWidth,
42
44
  borderRadius,
43
45
  shadow,
@@ -136,6 +136,12 @@ const DatePicker = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
136
136
  dictionary: _dictionary.default,
137
137
  copy
138
138
  });
139
+ (0, _react.useEffect)(() => {
140
+ if (!(0, _moment.default)(date).isSame(inputDate)) {
141
+ setInputDate(date);
142
+ setInputText(date instanceof _moment.default ? date.format(dateFormat) : '');
143
+ }
144
+ }, [date, inputDate]);
139
145
 
140
146
  const onFocusChange = _ref2 => {
141
147
  let {
@@ -28,12 +28,6 @@ const ExpandCollapseMini = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
28
28
  tokens,
29
29
  ...rest
30
30
  } = _ref;
31
- const {
32
- variant
33
- } = rest;
34
- const {
35
- borderWidth
36
- } = (0, _componentsBase.useThemeTokens)('ExpandCollapseMini', tokens, variant);
37
31
 
38
32
  const handleChange = (openPanels, event) => {
39
33
  if (typeof onToggle === 'function') {
@@ -43,9 +37,6 @@ const ExpandCollapseMini = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
43
37
  };
44
38
 
45
39
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_componentsBase.ExpandCollapse, {
46
- tokens: {
47
- borderWidth
48
- },
49
40
  onChange: handleChange,
50
41
  children: expandProps => /*#__PURE__*/(0, _jsxRuntime.jsx)(_componentsBase.ExpandCollapse.Panel, { ...expandProps,
51
42
  panelId: "ExpandCollapseMiniPanel",
@@ -53,7 +44,11 @@ const ExpandCollapseMini = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
53
44
  mini: true
54
45
  },
55
46
  controlTokens: {
56
- icon: null
47
+ // Remove unwanted look and feel from ExpandCollapse(background pressed, focus border and text underline)
48
+ icon: null,
49
+ borderColor: 'transparent',
50
+ textLine: 'none',
51
+ backgroundColor: 'transparent'
57
52
  } // TODO refactor
58
53
  // eslint-disable-next-line react/no-unstable-nested-components
59
54
  ,
@@ -29,7 +29,22 @@ const presentationOnly = {
29
29
 
30
30
  };
31
31
 
32
- const ExpandCollapseMiniControl = _ref => {
32
+ const selectLinkTokens = _ref => {
33
+ let {
34
+ color,
35
+ textLine,
36
+ lineHeight,
37
+ fontSize
38
+ } = _ref;
39
+ return {
40
+ color,
41
+ textLine,
42
+ blockLineHeight: lineHeight,
43
+ blockFontSize: fontSize
44
+ };
45
+ };
46
+
47
+ const ExpandCollapseMiniControl = _ref2 => {
33
48
  let {
34
49
  pressableState,
35
50
  collapseTitle,
@@ -38,16 +53,25 @@ const ExpandCollapseMiniControl = _ref => {
38
53
  tokens,
39
54
  variant = {},
40
55
  ...rest
41
- } = _ref;
56
+ } = _ref2;
42
57
  const {
43
58
  expanded,
44
- hover
45
- } = pressableState || {};
59
+ hover,
60
+ focus
61
+ } = pressableState || {}; // we only want focus outline when focusing, if user is pressing we don't want the border.
62
+
63
+ const {
64
+ outerBorderColor
65
+ } = (0, _componentsBase.useThemeTokens)('Link', {}, {}, {
66
+ focus
67
+ });
46
68
  const {
47
69
  size,
48
- icon
70
+ icon,
71
+ ...themeTokens
49
72
  } = (0, _componentsBase.useThemeTokens)('ExpandCollapseMiniControl', tokens, variant, {
50
- expanded
73
+ expanded,
74
+ focus
51
75
  }); // Choose hover styles when any part of Control is hoverred
52
76
 
53
77
  const appearance = { ...variant,
@@ -75,7 +99,8 @@ const ExpandCollapseMiniControl = _ref => {
75
99
  icon: icon,
76
100
  iconPosition: iconPosition,
77
101
  tokens: linkState => ({ ...getTokens(linkState),
78
- outerBorderWidth: 0
102
+ ...selectLinkTokens(themeTokens),
103
+ outerBorderColor
79
104
  }),
80
105
  ...presentationOnly,
81
106
  ...selectProps(rest),
@@ -140,8 +140,7 @@ FootnoteLink.propTypes = { ...selectedSystemPropTypes,
140
140
  fontSize: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string])
141
141
  };
142
142
  FootnoteLink.defaultProps = {
143
- copy: 'en',
144
- fontSize: 'smaller'
143
+ copy: 'en'
145
144
  };
146
145
  var _default = FootnoteLink;
147
146
  exports.default = _default;
@@ -115,22 +115,18 @@ const NavigationSubMenu = _ref => {
115
115
  onClick: handleClick,
116
116
  icon: icoMenu,
117
117
  children: _ref2 => {
118
- var _textStyles$, _textStyles$2;
118
+ var _textStyles$;
119
119
 
120
120
  let {
121
121
  textStyles
122
122
  } = _ref2;
123
- return [children, /*#__PURE__*/(0, _jsxRuntime.jsx)(_componentsBase.Spacer, {
124
- space: 1,
125
- direction: "row"
126
- }, `${id}_spacer`), /*#__PURE__*/(0, _jsxRuntime.jsx)(_componentsBase.Icon, {
123
+ return [children, /*#__PURE__*/(0, _jsxRuntime.jsx)(_componentsBase.Icon, {
127
124
  icon: icoMenu,
128
125
  variant: {
129
- size: 'small'
126
+ size: 'micro'
130
127
  },
131
128
  tokens: {
132
- color: (_textStyles$ = textStyles[0]) === null || _textStyles$ === void 0 ? void 0 : _textStyles$.color,
133
- size: (_textStyles$2 = textStyles[0]) === null || _textStyles$2 === void 0 ? void 0 : _textStyles$2.fontSize
129
+ color: (_textStyles$ = textStyles[0]) === null || _textStyles$ === void 0 ? void 0 : _textStyles$.color
134
130
  }
135
131
  }, `${id}_icon`)];
136
132
  }
@@ -316,7 +316,12 @@ PriceLockup.propTypes = { ...selectedSystemPropTypes,
316
316
  *
317
317
  * **Note:** a11yText will override strikethrough price, so it must include price (ie. "was 50 dollars per month")
318
318
  */
319
- a11yText: _propTypes.default.string
319
+ a11yText: _propTypes.default.string,
320
+
321
+ /**
322
+ * `PriceLockup` tokens
323
+ */
324
+ tokens: (0, _componentsBase.getTokensPropType)('PriceLockup')
320
325
  };
321
326
  var _default = PriceLockup;
322
327
  exports.default = _default;
@@ -109,6 +109,7 @@ const Spinner = _ref3 => {
109
109
  fullScreen = false,
110
110
  inline = false,
111
111
  label,
112
+ labelPosition,
112
113
  show = false,
113
114
  isStatic = false,
114
115
  tokens,
@@ -141,6 +142,7 @@ const Spinner = _ref3 => {
141
142
  ...selectProps(rest),
142
143
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SpinnerContent.default, {
143
144
  label: label,
145
+ labelPosition: labelPosition,
144
146
  overlay: true,
145
147
  size: size,
146
148
  thickness: thickness,
@@ -160,6 +162,7 @@ const Spinner = _ref3 => {
160
162
  ...selectProps(rest),
161
163
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SpinnerContent.default, {
162
164
  label: label,
165
+ labelPosition: labelPosition,
163
166
  overlay: true,
164
167
  size: size,
165
168
  thickness: thickness,
@@ -185,6 +188,7 @@ const Spinner = _ref3 => {
185
188
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(SpinnerContainer, { ...selectProps(rest),
186
189
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_SpinnerContent.default, {
187
190
  label: label,
191
+ labelPosition: labelPosition,
188
192
  size: size,
189
193
  thickness: thickness,
190
194
  sizeVariant: sizeVariant,
@@ -232,7 +236,12 @@ Spinner.propTypes = { ...selectedSystemPropTypes,
232
236
  /**
233
237
  * If true, it should render a static spinner
234
238
  */
235
- isStatic: _propTypes.default.bool
239
+ isStatic: _propTypes.default.bool,
240
+
241
+ /**
242
+ * Determine where the label of the spinner should be placed, left, right, bottom or top.
243
+ */
244
+ labelPosition: _propTypes.default.string
236
245
  };
237
246
  var _default = Spinner;
238
247
  exports.default = _default;
@@ -47,6 +47,7 @@ const Container = /*#__PURE__*/_styledComponents.default.div.withConfig({
47
47
  const SpinnerContent = _ref2 => {
48
48
  let {
49
49
  label,
50
+ labelPosition,
50
51
  overlay = false,
51
52
  sizeVariant,
52
53
  size,
@@ -54,6 +55,12 @@ const SpinnerContent = _ref2 => {
54
55
  isStatic,
55
56
  ...rest
56
57
  } = _ref2;
58
+ const labelMapping = {
59
+ top: 'column-reverse',
60
+ bottom: 'column',
61
+ left: 'row-reverse',
62
+ right: 'row'
63
+ };
57
64
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(Container, {
58
65
  overlay: overlay,
59
66
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_componentsBase.StackView, {
@@ -61,6 +68,7 @@ const SpinnerContent = _ref2 => {
61
68
  tokens: {
62
69
  alignItems: 'center'
63
70
  },
71
+ direction: labelMapping[labelPosition],
64
72
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_componentsBase.ActivityIndicator, {
65
73
  label: label,
66
74
  tokens: {