@telus-uds/theme-allium 0.0.2-prerelease.5 → 0.0.2-prerelease.6

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 (95) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/build/theme.js +2841 -0
  3. package/package.json +9 -7
  4. package/src/components/ActivityIndicator.js +6 -8
  5. package/src/components/Box.js +11 -14
  6. package/src/components/Button.js +60 -67
  7. package/src/components/ButtonGroup.js +8 -11
  8. package/src/components/ButtonGroupItem.js +64 -54
  9. package/src/components/Card.js +42 -44
  10. package/src/components/Checkbox.js +37 -43
  11. package/src/components/CheckboxGroup.js +8 -0
  12. package/src/components/ChevronLink.js +7 -14
  13. package/src/components/Divider.js +5 -7
  14. package/src/components/ExpandCollapse.js +4 -7
  15. package/src/components/ExpandCollapseControl.js +17 -24
  16. package/src/components/ExpandCollapsePanel.js +7 -9
  17. package/src/components/Feedback.js +31 -40
  18. package/src/components/Icon.js +8 -10
  19. package/src/components/InputLabel.js +12 -18
  20. package/src/components/InputSupports.js +2 -4
  21. package/src/components/Link.js +59 -67
  22. package/src/components/List.js +26 -28
  23. package/src/components/Modal.js +57 -0
  24. package/src/components/Notification.js +90 -0
  25. package/src/components/Pagination.js +10 -16
  26. package/src/components/PaginationPageButton.js +33 -39
  27. package/src/components/PaginationSideButton.js +43 -52
  28. package/src/components/Progress.js +13 -0
  29. package/src/components/ProgressBar.js +31 -0
  30. package/src/components/Radio.js +47 -42
  31. package/src/components/RadioCard.js +123 -0
  32. package/src/components/RadioCardGroup.js +24 -0
  33. package/src/components/RadioGroup.js +8 -0
  34. package/src/components/Search.js +57 -0
  35. package/src/components/SearchButton.js +71 -0
  36. package/src/components/Select.js +40 -50
  37. package/src/components/SideNav.js +4 -7
  38. package/src/components/SideNavItem.js +48 -52
  39. package/src/components/SideNavItemsGroup.js +16 -23
  40. package/src/components/Skeleton.js +8 -10
  41. package/src/components/StackView.js +4 -6
  42. package/src/components/StepTracker.js +59 -0
  43. package/src/components/Tabs.js +13 -0
  44. package/src/components/TabsItem.js +81 -0
  45. package/src/components/TabsScrollButton.js +34 -0
  46. package/src/components/Tags.js +8 -11
  47. package/src/components/TagsItem.js +86 -78
  48. package/src/components/TextArea.js +3 -5
  49. package/src/components/TextInput.js +37 -47
  50. package/src/components/ToggleSwitch.js +53 -60
  51. package/src/components/Tooltip.js +18 -22
  52. package/src/components/TooltipButton.js +19 -26
  53. package/src/components/Typography.js +86 -104
  54. package/src/components/index.js +53 -37
  55. package/src/components/spacingScale.js +23 -26
  56. package/src/index.js +3 -3
  57. package/lib/components/ActivityIndicator.js +0 -35
  58. package/lib/components/Box.js +0 -89
  59. package/lib/components/Button.js +0 -252
  60. package/lib/components/ButtonGroup.js +0 -34
  61. package/lib/components/ButtonGroupItem.js +0 -108
  62. package/lib/components/Card.js +0 -120
  63. package/lib/components/Checkbox.js +0 -80
  64. package/lib/components/ChevronLink.js +0 -39
  65. package/lib/components/Divider.js +0 -44
  66. package/lib/components/ExpandCollapse.js +0 -23
  67. package/lib/components/ExpandCollapseControl.js +0 -49
  68. package/lib/components/ExpandCollapsePanel.js +0 -25
  69. package/lib/components/Feedback.js +0 -89
  70. package/lib/components/Icon.js +0 -47
  71. package/lib/components/InputLabel.js +0 -33
  72. package/lib/components/InputSupports.js +0 -19
  73. package/lib/components/Link.js +0 -241
  74. package/lib/components/List.js +0 -86
  75. package/lib/components/Pagination.js +0 -40
  76. package/lib/components/PaginationPageButton.js +0 -82
  77. package/lib/components/PaginationSideButton.js +0 -113
  78. package/lib/components/Radio.js +0 -78
  79. package/lib/components/Select.js +0 -102
  80. package/lib/components/SideNav.js +0 -23
  81. package/lib/components/SideNavItem.js +0 -118
  82. package/lib/components/SideNavItemsGroup.js +0 -49
  83. package/lib/components/Skeleton.js +0 -26
  84. package/lib/components/StackView.js +0 -22
  85. package/lib/components/Tags.js +0 -34
  86. package/lib/components/TagsItem.js +0 -133
  87. package/lib/components/TextArea.js +0 -20
  88. package/lib/components/TextInput.js +0 -97
  89. package/lib/components/ToggleSwitch.js +0 -144
  90. package/lib/components/Tooltip.js +0 -48
  91. package/lib/components/TooltipButton.js +0 -86
  92. package/lib/components/Typography.js +0 -370
  93. package/lib/components/index.js +0 -303
  94. package/lib/components/spacingScale.js +0 -163
  95. package/lib/index.js +0 -30
@@ -1,98 +1,89 @@
1
- import palette from '@telus-uds/palette-allium'
2
- import system from '@telus-uds/system-themes/src/tokens/rn'
3
- import { appearances } from '@telus-uds/system-themes/schema'
4
-
5
- import leftArrowIcon from '@telus-uds/palette-allium/build/rn/icons/arrow-left.icon.svg'
6
- import rightArrowIcon from '@telus-uds/palette-allium/build/rn/icons/arrow-right.icon.svg'
7
-
8
- export default {
1
+ module.exports = {
9
2
  appearances: {
10
- viewport: appearances.system.viewport,
11
- focus: appearances.PaginationSideButton.focus,
12
- hover: appearances.PaginationSideButton.hover,
13
- pressed: appearances.PaginationSideButton.pressed,
14
- selected: appearances.PaginationSideButton.selected,
15
- direction: appearances.PaginationSideButton.direction
3
+ viewport: '{appearances.system.viewport}',
4
+ focus: '{appearances.PaginationSideButton.focus}',
5
+ hover: '{appearances.PaginationSideButton.hover}',
6
+ pressed: '{appearances.PaginationSideButton.pressed}',
7
+ selected: '{appearances.PaginationSideButton.selected}',
8
+ direction: '{appearances.PaginationSideButton.direction}'
16
9
  },
17
10
  tokens: {
18
- borderColor: palette.color.transparent,
19
- borderWidth: palette.border.border1,
20
- borderRadius: palette.radius.radius4,
21
- backgroundColor: palette.color.transparent,
22
- paddingLeft: palette.size.size8,
23
- paddingRight: palette.size.size8,
24
- paddingTop: palette.size.size12,
25
- paddingBottom: palette.size.size12,
26
- outerBorderColor: palette.color.transparent,
11
+ borderColor: '{palette.color.transparent}',
12
+ borderWidth: '{palette.border.border1}',
13
+ borderRadius: '{palette.radius.radius4}',
14
+ backgroundColor: '{palette.color.transparent}',
15
+ paddingLeft: '{palette.size.size8}',
16
+ paddingRight: '{palette.size.size8}',
17
+ paddingTop: '{palette.size.size12}',
18
+ paddingBottom: '{palette.size.size12}',
19
+ outerBorderColor: '{palette.color.transparent}',
27
20
 
28
- color: palette.color.greyShuttle,
21
+ color: '{palette.color.greyShuttle}',
29
22
 
30
- // TODO replace with font token
31
- fontName: Object.keys(palette.font)[0],
32
- fontWeight: '400',
33
- // font: palette.font.HelveticaNow[400]
23
+ fontName: '{palette.fontName.HelveticaNow}',
24
+ fontWeight: '{palette.fontWeight.weight400}',
34
25
 
35
- fontSize: palette.fontSize.size16,
36
- lineHeight: palette.lineHeight.ratio3to2,
37
- textLine: system.textLine.underline,
26
+ fontSize: '{palette.fontSize.size16}',
27
+ lineHeight: '{palette.lineHeight.ratio3to2}',
28
+ textLine: '{system.textLine.underline}',
38
29
 
39
- icon: system.icon.none,
40
- iconSize: palette.fontSize.size24,
41
- iconDisplace: palette.size.size0,
30
+ icon: '{system.icon.none}',
31
+ iconSize: '{palette.fontSize.size24}',
32
+ iconDisplace: '{palette.size.size0}',
42
33
 
43
- width: system.size.none,
44
- textAlign: system.flexJustifyContent.center
34
+ width: '{system.size.none}',
35
+ textAlign: '{system.flexJustifyContent.center}'
45
36
  },
46
37
  rules: [
47
38
  {
48
39
  if: { viewport: ['xs', 'sm'] },
49
40
  tokens: {
50
- borderRadius: palette.radius.pill32,
51
- paddingTop: palette.size.size4,
52
- paddingBottom: palette.size.size4,
53
- width: palette.size.size32
41
+ borderRadius: '{palette.radius.pill32}',
42
+ paddingTop: '{palette.size.size4}',
43
+ paddingBottom: '{palette.size.size4}',
44
+ width: '{palette.size.size32}'
54
45
  }
55
46
  },
56
47
  {
57
48
  if: { hover: true },
58
49
  tokens: {
59
- borderColor: palette.color.greyShuttle,
60
- textLine: system.textLine.none,
61
- iconDisplace: palette.size.size4
50
+ borderColor: '{palette.color.greyShuttle}',
51
+ textLine: '{system.textLine.none}',
52
+ iconDisplace: '{palette.size.size4}'
62
53
  }
63
54
  },
64
55
  {
65
56
  if: { focus: true },
66
57
  tokens: {
67
- borderColor: palette.color.greyShuttle,
68
- borderWidth: palette.border.border3
58
+ borderColor: '{palette.color.greyShuttle}',
59
+ borderWidth: '{palette.border.border3}'
69
60
  }
70
61
  },
71
62
  {
72
63
  if: { selected: true },
73
64
  tokens: {
74
- backgroundColor: palette.color.greyShuttle,
75
- color: palette.color.white,
76
- textLine: system.textLine.none
65
+ backgroundColor: '{palette.color.greyShuttle}',
66
+ color: '{palette.color.white}',
67
+ textLine: '{system.textLine.none}'
77
68
  }
78
69
  },
79
70
  {
80
71
  if: { pressed: true },
81
72
  tokens: {
82
- backgroundColor: palette.color.greyShuttle,
83
- color: palette.color.white
73
+ backgroundColor: '{palette.color.greyShuttle}',
74
+ color: '{palette.color.white}'
84
75
  }
85
76
  },
86
77
  {
87
78
  if: { direction: 'previous' },
88
79
  tokens: {
89
- icon: leftArrowIcon
80
+ icon: '{palette.icon.ArrowLeft}'
90
81
  }
91
82
  },
92
83
  {
93
84
  if: { direction: 'next' },
94
85
  tokens: {
95
- icon: rightArrowIcon
86
+ icon: '{palette.icon.ArrowRight}'
96
87
  }
97
88
  }
98
89
  ]
@@ -0,0 +1,13 @@
1
+ module.exports = {
2
+ appearances: {
3
+ size: { values: ['mini'], type: 'variant' }
4
+ },
5
+ tokens: {
6
+ backgroundColor: '{palette.color.greyAthens}',
7
+ borderWidth: '{palette.border.border1}',
8
+ borderColor: '{palette.color.greyCloud}',
9
+ borderRadius: '{palette.radius.radius12}',
10
+ height: '{palette.size.size16}'
11
+ },
12
+ rules: [{ if: { size: 'mini' }, tokens: { height: '{palette.size.size8}' } }]
13
+ }
@@ -0,0 +1,31 @@
1
+ module.exports = {
2
+ appearances: {
3
+ inactive: '{appearances.ProgressBar.inactive}',
4
+ negative: { values: [true], type: 'variant' }
5
+ },
6
+ tokens: {
7
+ backgroundColor: '{palette.color.greenAccessible}',
8
+ borderRadius: '{palette.radius.radius12}',
9
+ gradient: '{palette.gradient.green}',
10
+ outlineWidth: '{palette.border.border1}',
11
+ outlineColor: '{palette.color.greenAccessible}'
12
+ },
13
+ rules: [
14
+ {
15
+ if: { inactive: true },
16
+ tokens: {
17
+ backgroundColor: '{palette.color.greyCloud}',
18
+ gradient: '{system.gradient.none}',
19
+ outlineColor: '{palette.color.greyThunder}'
20
+ }
21
+ },
22
+ {
23
+ if: { negative: true },
24
+ tokens: {
25
+ backgroundColor: '{palette.color.redDark}',
26
+ gradient: '{system.gradient.none}',
27
+ outlineColor: '{palette.color.redDark}'
28
+ }
29
+ }
30
+ ]
31
+ }
@@ -1,63 +1,68 @@
1
- import palette from '@telus-uds/palette-allium'
2
- import system from '@telus-uds/system-themes/src/tokens/rn'
3
- import { appearances } from '@telus-uds/system-themes/schema'
4
-
5
- export default {
1
+ module.exports = {
6
2
  appearances: {
7
- checked: appearances.Radio.checked,
8
- error: appearances.Radio.error,
9
- focus: appearances.Radio.focus,
10
- hover: appearances.Radio.hover,
11
- inactive: appearances.Radio.inactive
3
+ checked: '{appearances.Radio.checked}',
4
+ error: '{appearances.Radio.error}',
5
+ focus: '{appearances.Radio.focus}',
6
+ hover: '{appearances.Radio.hover}',
7
+ inactive: '{appearances.Radio.inactive}'
12
8
  },
13
9
  tokens: {
14
- checkedBackgroundColor: palette.color.purpleDeluge,
15
- checkedSize: palette.size.size12,
16
- containerBackgroundColor: palette.color.transparent,
17
- containerBorderRadius: palette.radius.none,
18
- containerMarginBottom: palette.size.size8,
19
- containerOpacity: system.opacity.opaque,
20
- containerPaddingBottom: palette.size.size0,
21
- containerPaddingLeft: palette.size.size0,
22
- containerPaddingRight: palette.size.size0,
23
- containerPaddingTop: palette.size.size0,
24
- containerShadow: system.shadow.none,
25
- descriptionFontSize: palette.fontSize.size14,
26
- descriptionLineHeight: palette.lineHeight.ratio10to7,
27
- descriptionMarginLeft: system.size.none,
28
- inputBackgroundColor: palette.color.white,
29
- inputBorderColor: palette.color.greyShuttle,
30
- inputBorderWidth: palette.border.border1,
31
- inputOutlineColor: palette.color.transparent,
32
- inputOutlineWidth: palette.border.none,
33
- inputSize: palette.size.size20,
34
- labelColor: palette.color.greyCharcoal,
35
- labelFontName: Object.keys(palette.font)[0],
36
- labelFontSize: palette.fontSize.size16,
37
- labelFontWeight: '400',
38
- labelLineHeight: palette.lineHeight.ratio3to2,
39
- labelMarginLeft: palette.size.size10
10
+ checkedBackgroundColor: '{palette.color.purpleDeluge}',
11
+ checkedSize: '{palette.size.size12}',
12
+ containerBackgroundColor: '{palette.color.transparent}',
13
+ containerBorderRadius: '{palette.radius.none}',
14
+ containerOpacity: '{system.opacity.opaque}',
15
+ containerPaddingBottom: '{palette.size.size0}',
16
+ containerPaddingLeft: '{palette.size.size0}',
17
+ containerPaddingRight: '{palette.size.size0}',
18
+ containerPaddingTop: '{palette.size.size0}',
19
+ containerShadow: '{system.shadow.none}',
20
+ descriptionFontSize: '{palette.fontSize.size14}',
21
+ descriptionLineHeight: '{palette.lineHeight.ratio10to7}',
22
+ descriptionMarginLeft: '{system.size.none}',
23
+ inputBackgroundColor: '{palette.color.white}',
24
+ inputBorderColor: '{palette.color.greyShuttle}',
25
+ inputBorderWidth: '{palette.border.border1}',
26
+ inputOutlineColor: '{palette.color.transparent}',
27
+ inputOutlineWidth: '{palette.border.none}',
28
+ inputSize: '{palette.size.size20}',
29
+ outerBorderWidth: '{system.border.zero}',
30
+ outerBorderColor: '{system.color.transparent}',
31
+ outerBorderGap: '{system.size.zero}',
32
+ labelColor: '{palette.color.greyCharcoal}',
33
+ labelFontName: '{palette.fontName.HelveticaNow}',
34
+ labelFontSize: '{palette.fontSize.size16}',
35
+ labelFontWeight: '{palette.fontWeight.weight400}',
36
+ labelLineHeight: '{palette.lineHeight.ratio3to2}',
37
+ labelMarginLeft: '{palette.size.size10}'
40
38
  },
41
39
  rules: [
42
40
  {
43
41
  if: { error: true },
44
42
  tokens: {
45
- inputBorderColor: palette.color.red
43
+ inputBorderColor: '{palette.color.red}'
44
+ }
45
+ },
46
+ {
47
+ if: { hover: true },
48
+ tokens: {
49
+ outerBorderWidth: '{palette.border.border2}',
50
+ outerBorderColor: '{palette.color.greyMystic}'
46
51
  }
47
52
  },
48
53
  {
49
54
  if: { focus: true },
50
55
  tokens: {
51
- inputBorderColor: palette.color.purpleDeluge,
52
- inputBorderWidth: palette.border.border3
56
+ inputBorderColor: '{palette.color.purpleDeluge}',
57
+ inputBorderWidth: '{palette.border.border3}'
53
58
  }
54
59
  },
55
60
  {
56
61
  if: { inactive: true },
57
62
  tokens: {
58
- inputBorderColor: palette.color.transparent,
59
- inputBackgroundColor: palette.color.greyMystic,
60
- labelColor: palette.color.greyShuttle
63
+ inputBorderColor: '{palette.color.transparent}',
64
+ inputBackgroundColor: '{palette.color.greyMystic}',
65
+ labelColor: '{palette.color.greyShuttle}'
61
66
  }
62
67
  }
63
68
  ]
@@ -0,0 +1,123 @@
1
+ module.exports = {
2
+ appearances: {
3
+ pressed: '{appearances.RadioCard.pressed}',
4
+ hover: '{appearances.RadioCard.hover}',
5
+ focus: '{appearances.RadioCard.focus}',
6
+ checked: '{appearances.RadioCard.checked}',
7
+ inactive: '{appearances.RadioCard.inactive}',
8
+ error: '{appearances.RadioCard.error}',
9
+ viewport: '{appearances.system.viewport}'
10
+ },
11
+ tokens: {
12
+ // Outer border
13
+ outerBorderColor: '{system.color.transparent}',
14
+ outerBorderWidth: '{system.border.zero}',
15
+ outerBorderGap: '{system.size.zero}',
16
+
17
+ // Card
18
+ flex: '{system.integer.1}',
19
+ backgroundColor: '{palette.color.white}',
20
+ borderColor: '{palette.color.greyCloud}',
21
+ borderRadius: '{palette.radius.radius6}',
22
+ borderWidth: '{palette.border.border1}',
23
+ paddingBottom: '{palette.size.size16}',
24
+ paddingLeft: '{palette.size.size10}',
25
+ paddingRight: '{palette.size.size16}',
26
+ paddingTop: '{palette.size.size16}',
27
+ minWidth: '{palette.size.size288}',
28
+ shadow: '{system.shadow.none}',
29
+
30
+ // RadioButton
31
+ radioCheckedBackgroundColor: '{palette.color.purpleDeluge}',
32
+ radioCheckedSize: '{palette.size.size12}',
33
+ radioInputBackgroundColor: '{palette.color.white}',
34
+ radioInputBorderColor: '{palette.color.greyShuttle}',
35
+ radioInputBorderWidth: '{palette.border.border1}',
36
+ radioInputOutlineColor: '{palette.color.transparent}',
37
+ radioInputOutlineWidth: '{palette.border.none}',
38
+ radioInputSize: '{palette.size.size20}',
39
+ radioOuterBorderColor: '{system.color.transparent}',
40
+ radioOuterBorderWidth: '{system.border.zero}',
41
+ radioOuterBorderGap: '{system.size.zero}',
42
+
43
+ // Title text - duplicates Typography variant { size: 'h3' }
44
+ fontSize: '{palette.fontSize.size20}',
45
+ lineHeight: '{palette.lineHeight.ratio7to5}',
46
+ color: '{palette.color.greyThunder}',
47
+ letterSpacing: '{system.letterSpacing.none}',
48
+ textTransform: '{system.textTransform.none}',
49
+ fontWeight: '{palette.fontWeight.weight500}',
50
+ fontName: '{palette.fontName.HelveticaNow}',
51
+
52
+ // Spacing
53
+ radioSpace: '{system.integer.2}',
54
+ contentSpace: '{system.integer.2}'
55
+ },
56
+ rules: [
57
+ {
58
+ if: { viewport: ['lg', 'xl'] },
59
+ tokens: {
60
+ paddingBottom: '{palette.size.size24}',
61
+ paddingLeft: '{palette.size.size16}',
62
+ paddingRight: '{palette.size.size24}',
63
+ paddingTop: '{palette.size.size16}',
64
+
65
+ fontSize: '{palette.fontSize.size24}',
66
+ lineHeight: '{palette.lineHeight.ratio4to3}'
67
+ }
68
+ },
69
+ {
70
+ if: { hover: true },
71
+ tokens: {
72
+ borderColor: '{palette.color.greyShuttle}',
73
+ outerBorderColor: '{palette.color.greyMystic}',
74
+ outerBorderWidth: '{palette.border.border2}',
75
+
76
+ radioOuterBorderWidth: '{palette.border.border2}',
77
+ radioOuterBorderColor: '{palette.color.greyMystic}'
78
+ }
79
+ },
80
+ {
81
+ if: { pressed: true },
82
+ description: 'Pressed state matches hover state plus light grey background',
83
+ tokens: {
84
+ backgroundColor: '{palette.color.greyAthens}',
85
+ borderColor: '{palette.color.greyShuttle}',
86
+ outerBorderColor: '{palette.color.greyMystic}',
87
+ outerBorderWidth: '{palette.border.border2}'
88
+ }
89
+ },
90
+ {
91
+ if: { focus: true },
92
+ tokens: {
93
+ outerBorderColor: '{palette.color.greyShuttle}',
94
+ outerBorderWidth: '{palette.border.border2}',
95
+ outerBorderGap: '{palette.size.size2}',
96
+
97
+ radioInputBorderColor: '{palette.color.purpleDeluge}',
98
+ radioInputBorderWidth: '{palette.border.border3}'
99
+ }
100
+ },
101
+ {
102
+ if: { inactive: true },
103
+ tokens: {
104
+ backgroundColor: '{palette.color.greyAthens}',
105
+ borderColor: '{system.color.transparent}',
106
+
107
+ radioInputBorderColor: '{palette.color.transparent}',
108
+ radioInputBackgroundColor: '{palette.color.greyMystic}',
109
+ color: '{palette.color.greyShuttle}'
110
+ }
111
+ },
112
+ {
113
+ if: { error: true },
114
+ tokens: {
115
+ borderColor: '{palette.color.red}',
116
+
117
+ radioInputBorderColor: '{palette.color.red}',
118
+
119
+ color: '{palette.color.red}'
120
+ }
121
+ }
122
+ ]
123
+ }
@@ -0,0 +1,24 @@
1
+ module.exports = {
2
+ appearances: {
3
+ viewport: '{appearances.system.viewport}',
4
+ fullWidth: {
5
+ description: 'Makes cards always occupy the full width of the parent, regardless of viewport',
6
+ values: [true],
7
+ type: 'variant'
8
+ }
9
+ },
10
+ tokens: {
11
+ direction: '{system.direction.column}',
12
+ space: '{system.integer.3}',
13
+ fieldSpace: '{system.integer.3}'
14
+ },
15
+ rules: [
16
+ {
17
+ if: { viewport: ['lg', 'xl'], fullWidth: null },
18
+ tokens: {
19
+ direction: '{system.direction.row}',
20
+ space: '{system.integer.4}'
21
+ }
22
+ }
23
+ ]
24
+ }
@@ -0,0 +1,8 @@
1
+ module.exports = {
2
+ appearances: {},
3
+ tokens: {
4
+ space: '{system.integer.2}',
5
+ fieldSpace: '{system.integer.2}'
6
+ },
7
+ rules: []
8
+ }
@@ -0,0 +1,57 @@
1
+ module.exports = {
2
+ appearances: {
3
+ hover: '{appearances.Search.hover}',
4
+ focus: '{appearances.Search.focus}',
5
+ inactive: '{appearances.Search.inactive}'
6
+ },
7
+ tokens: {
8
+ backgroundColor: '{palette.color.white}',
9
+ color: '{palette.color.greyCharcoal}',
10
+ borderWidth: '{palette.border.border1}',
11
+ borderColor: '{palette.color.greyShuttle}',
12
+ borderRadius: '{palette.radius.pill32}',
13
+ paddingTop: '{palette.size.size12}',
14
+ paddingBottom: '{palette.size.size12}',
15
+ paddingLeft: '{palette.size.size24}',
16
+ paddingRight: '{palette.size.size8}',
17
+
18
+ outerBackgroundColor: '{palette.color.transparent}',
19
+ outerBorderWidth: '{palette.border.border2}',
20
+ outerBorderColor: '{palette.color.transparent}',
21
+ outerBorderRadius: '{palette.radius.pill32}',
22
+
23
+ fontName: '{palette.fontName.HelveticaNow}',
24
+ fontWeight: '{palette.fontWeight.weight400}',
25
+
26
+ fontSize: '{palette.fontSize.size16}',
27
+ lineHeight: '{palette.lineHeight.ratio3to2}',
28
+
29
+ placeholderColor: '{palette.color.greyCharcoal}',
30
+ buttonsGap: '{system.integer.1}',
31
+ clearButtonIcon: '{palette.icon.Times}',
32
+ submitButtonIcon: '{palette.icon.SearchBold}'
33
+ },
34
+ rules: [
35
+ {
36
+ if: { hover: true, inactive: null },
37
+ tokens: {
38
+ outerBorderColor: '{palette.color.greyMystic}',
39
+ outerBackgroundColor: '{palette.color.greyMystic}'
40
+ }
41
+ },
42
+ {
43
+ if: { focus: true },
44
+ tokens: {
45
+ borderColor: '{palette.color.purpleDeluge}',
46
+ borderWidth: '{palette.border.border3}'
47
+ }
48
+ },
49
+ {
50
+ if: { inactive: true },
51
+ tokens: {
52
+ backgroundColor: '{palette.color.greyAthens}',
53
+ borderColor: '{palette.color.greyAthens}'
54
+ }
55
+ }
56
+ ]
57
+ }
@@ -0,0 +1,71 @@
1
+ module.exports = {
2
+ appearances: {
3
+ hover: '{appearances.SearchButton.hover}',
4
+ focus: '{appearances.SearchButton.focus}',
5
+ inactive: '{appearances.SearchButton.inactive}',
6
+ pressed: '{appearances.SearchButton.pressed}',
7
+ priority: {
8
+ description: '',
9
+ values: ['high'],
10
+ type: 'variant'
11
+ }
12
+ },
13
+ tokens: {
14
+ borderColor: '{palette.color.transparent}',
15
+ borderWidth: '{system.border.zero}',
16
+ borderRadius: '{palette.radius.pill32}',
17
+ backgroundColor: '{system.color.none}',
18
+ opacity: '{system.opacity.opaque}',
19
+ paddingLeft: '{palette.size.size8}',
20
+ paddingRight: '{palette.size.size8}',
21
+ paddingBottom: '{palette.size.size8}',
22
+ paddingTop: '{palette.size.size8}',
23
+ shadow: '{system.shadow.none}',
24
+
25
+ iconSize: '{palette.size.size20}',
26
+ iconColor: '{palette.color.greyShuttle}'
27
+ },
28
+ rules: [
29
+ {
30
+ if: { priority: 'high' },
31
+ tokens: {
32
+ backgroundColor: '{palette.color.purpleTelus}',
33
+ iconColor: '{palette.color.white}'
34
+ }
35
+ },
36
+ // only the default appearance is different for a high priority button
37
+ {
38
+ if: { hover: true },
39
+ tokens: {
40
+ backgroundColor: '{palette.color.purpleDeluge}',
41
+ borderWidth: '{system.border.zero}',
42
+ iconColor: '{palette.color.white}'
43
+ }
44
+ },
45
+ {
46
+ if: { focus: true },
47
+ tokens: {
48
+ borderColor: '{palette.color.purpleTelus}',
49
+ borderWidth: '{palette.border.border3}',
50
+ iconColor: '{palette.color.purpleTelus}',
51
+ backgroundColor: '{system.color.transparent}'
52
+ }
53
+ },
54
+ {
55
+ if: { pressed: true },
56
+ tokens: {
57
+ borderWidth: '{system.size.zero}',
58
+ backgroundColor: '{palette.color.purpleDark}',
59
+ iconColor: '{palette.color.white}'
60
+ }
61
+ },
62
+ {
63
+ if: { inactive: true },
64
+ tokens: {
65
+ backgroundColor: '{palette.color.greyMystic}',
66
+ iconColor: '{palette.color.greyShuttle}',
67
+ borderWidth: '{system.size.zero}'
68
+ }
69
+ }
70
+ ]
71
+ }