@seamly/web-ui 20.2.0-alpha.3 → 20.3.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 (104) hide show
  1. package/CHANGELOG.md +729 -0
  2. package/build/dist/lib/deprecated-view.css +1 -1
  3. package/build/dist/lib/index.debug.js +270 -260
  4. package/build/dist/lib/index.debug.min.js +1 -1
  5. package/build/dist/lib/index.debug.min.js.LICENSE.txt +64 -60
  6. package/build/dist/lib/index.js +4487 -3568
  7. package/build/dist/lib/index.min.js +1 -1
  8. package/build/dist/lib/index.min.js.LICENSE.txt +2 -2
  9. package/build/dist/lib/standalone.js +11945 -9368
  10. package/build/dist/lib/standalone.min.js +1 -1
  11. package/build/dist/lib/standalone.min.js.LICENSE.txt +1 -1
  12. package/build/dist/lib/style-guide.js +7462 -7267
  13. package/build/dist/lib/style-guide.min.js +1 -1
  14. package/build/dist/lib/styles.css +1 -1
  15. package/package.json +15 -14
  16. package/src/javascripts/api/index.js +5 -4
  17. package/src/javascripts/domains/app/actions.js +22 -10
  18. package/src/javascripts/domains/config/reducer.js +2 -2
  19. package/src/javascripts/domains/forms/reducer.js +1 -1
  20. package/src/javascripts/domains/i18n/reducer.js +1 -1
  21. package/src/javascripts/domains/interrupt/reducer.js +1 -1
  22. package/src/javascripts/domains/translations/components/chat-status.js +10 -9
  23. package/src/javascripts/domains/translations/components/options-button.js +8 -3
  24. package/src/javascripts/domains/translations/components/options-dialog/form.js +6 -5
  25. package/src/javascripts/domains/translations/components/options-dialog/index.js +5 -2
  26. package/src/javascripts/domains/translations/hooks.js +15 -1
  27. package/src/javascripts/domains/translations/middleware.js +5 -2
  28. package/src/javascripts/domains/translations/reducer.js +2 -2
  29. package/src/javascripts/domains/visibility/actions.js +1 -1
  30. package/src/javascripts/lib/debug.js +1 -0
  31. package/src/javascripts/lib/external-api/index.js +29 -4
  32. package/src/javascripts/style-guide/components/app.js +1 -1
  33. package/src/javascripts/style-guide/components/static-core.js +1 -4
  34. package/src/javascripts/ui/components/conversation/conversation.js +2 -2
  35. package/src/javascripts/ui/components/conversation/event/card-component.js +4 -1
  36. package/src/javascripts/ui/components/conversation/event/carousel-component/index.js +1 -1
  37. package/src/javascripts/ui/components/conversation/event/conversation-suggestions.js +18 -10
  38. package/src/javascripts/ui/components/conversation/event/cta.js +1 -1
  39. package/src/javascripts/ui/components/conversation/event/divider/variants/new-translation.js +4 -9
  40. package/src/javascripts/ui/components/conversation/event/image.js +1 -1
  41. package/src/javascripts/ui/components/conversation/event/participant.js +3 -8
  42. package/src/javascripts/ui/components/conversation/event/text.js +2 -2
  43. package/src/javascripts/ui/components/conversation/loader.js +1 -1
  44. package/src/javascripts/ui/components/conversation/message-container.js +1 -1
  45. package/src/javascripts/ui/components/core/seamly-activity-monitor.js +1 -1
  46. package/src/javascripts/ui/components/core/seamly-core.js +2 -2
  47. package/src/javascripts/ui/components/core/seamly-file-upload.js +1 -1
  48. package/src/javascripts/ui/components/core/seamly-instance-functions-loader.js +6 -2
  49. package/src/javascripts/ui/components/core/seamly-live-region.js +2 -2
  50. package/src/javascripts/ui/components/entry/entry-container.js +2 -2
  51. package/src/javascripts/ui/components/entry/text-entry/hooks.js +1 -4
  52. package/src/javascripts/ui/components/entry/text-entry/text-entry-form.js +1 -1
  53. package/src/javascripts/ui/components/form-controls/select.js +1 -1
  54. package/src/javascripts/ui/components/layout/agent-info.js +1 -1
  55. package/src/javascripts/ui/components/layout/header.js +1 -1
  56. package/src/javascripts/ui/components/options/options-button.js +1 -1
  57. package/src/javascripts/ui/components/options/options.js +1 -1
  58. package/src/javascripts/ui/components/options/transcript/index.js +1 -1
  59. package/src/javascripts/ui/components/suggestions/suggestions-item.js +1 -1
  60. package/src/javascripts/ui/components/warnings/resume-conversation-prompt.js +1 -1
  61. package/src/javascripts/ui/components/widgets/lightbox.js +1 -1
  62. package/src/javascripts/ui/hooks/file-upload-hooks.js +2 -3
  63. package/src/javascripts/ui/hooks/focus-helper-hooks.js +2 -2
  64. package/src/javascripts/ui/hooks/seamly-entry-hooks.js +1 -1
  65. package/src/javascripts/ui/hooks/seamly-option-hooks.js +1 -1
  66. package/src/javascripts/ui/hooks/use-seamly-chat.js +2 -2
  67. package/src/javascripts/ui/hooks/use-seamly-commands.js +7 -7
  68. package/src/javascripts/ui/hooks/use-seamly-idle-detach-countdown.js +4 -4
  69. package/src/javascripts/ui/hooks/use-seamly-resume-conversation-prompt.js +2 -2
  70. package/src/javascripts/ui/hooks/use-single-file-upload.js +1 -1
  71. package/src/javascripts/ui/utils/general-utils.js +1 -1
  72. package/src/javascripts/ui/utils/seamly-utils.js +1 -0
  73. package/src/stylesheets/1-settings/_animations.scss +1 -1
  74. package/src/stylesheets/1-settings/_config.scss +17 -2
  75. package/src/stylesheets/2-tools/_functions.scss +4 -4
  76. package/src/stylesheets/2-tools/_mixins.scss +16 -14
  77. package/src/stylesheets/3-chat/_chat.scss +1 -1
  78. package/src/stylesheets/5-components/_choice-prompt.scss +1 -1
  79. package/src/stylesheets/5-components/_collapse-button.scss +1 -1
  80. package/src/stylesheets/5-components/_input.scss +1 -1
  81. package/src/stylesheets/5-components/_loader.scss +2 -2
  82. package/src/stylesheets/5-components/_message-carousel.scss +1 -1
  83. package/src/stylesheets/5-components/_message-count.scss +1 -1
  84. package/src/stylesheets/5-components/_message.scss +1 -2
  85. package/src/stylesheets/5-components/_modal.scss +1 -1
  86. package/src/stylesheets/5-components/_options.scss +3 -3
  87. package/src/stylesheets/5-components/_suggestions.scss +4 -5
  88. package/src/stylesheets/5-components/_upload.scss +1 -1
  89. package/src/stylesheets/7-deprecated/1-settings/_animations.scss +1 -1
  90. package/src/stylesheets/7-deprecated/1-settings/_config.scss +10 -7
  91. package/src/stylesheets/7-deprecated/2-tools/_functions.scss +2 -2
  92. package/src/stylesheets/7-deprecated/2-tools/_mixins.scss +6 -4
  93. package/src/stylesheets/7-deprecated/3-app/_app.scss +2 -2
  94. package/src/stylesheets/7-deprecated/4-base/_formelements.scss +1 -0
  95. package/src/stylesheets/7-deprecated/5-components/_chat-status.scss +1 -1
  96. package/src/stylesheets/7-deprecated/5-components/_collapse-button.scss +1 -1
  97. package/src/stylesheets/7-deprecated/5-components/_disclaimer.scss +1 -1
  98. package/src/stylesheets/7-deprecated/5-components/_input.scss +2 -1
  99. package/src/stylesheets/7-deprecated/5-components/_loader.scss +2 -2
  100. package/src/stylesheets/7-deprecated/5-components/_message-count.scss +1 -1
  101. package/src/stylesheets/7-deprecated/5-components/_message.scss +3 -4
  102. package/src/stylesheets/7-deprecated/5-components/_modal.scss +1 -1
  103. package/src/stylesheets/7-deprecated/5-components/_options.scss +2 -2
  104. package/src/stylesheets/7-deprecated/5-components/_upload.scss +1 -1
@@ -1,9 +1,5 @@
1
1
  import { useCallback, useRef } from 'preact/hooks'
2
- import useSeamlyDispatchContext from './use-seamly-dispatch'
3
- import { useSeamlyStateContext } from './seamly-state-hooks'
4
- import useSeamlyCommands from './use-seamly-commands'
5
2
  import { useI18n } from 'domains/i18n'
6
- import { useLiveRegion } from './live-region-hooks'
7
3
  import {
8
4
  getTimeFromSeconds,
9
5
  millisecondsToSeconds,
@@ -11,6 +7,10 @@ import {
11
7
  import { actionTypes, seamlyActions } from 'ui/utils/seamly-utils'
12
8
  import { screenReaderDebounceDelaySeconds } from 'config'
13
9
  import { useVisibility } from 'domains/visibility'
10
+ import { useLiveRegion } from './live-region-hooks'
11
+ import useSeamlyCommands from './use-seamly-commands'
12
+ import { useSeamlyStateContext } from './seamly-state-hooks'
13
+ import useSeamlyDispatchContext from './use-seamly-dispatch'
14
14
 
15
15
  const {
16
16
  CLEAR_IDLE_DETACH_COUNTDOWN,
@@ -1,9 +1,9 @@
1
+ import { useI18n } from 'domains/i18n'
2
+ import { actionTypes, dismissTypes, seamlyActions } from 'ui/utils/seamly-utils'
1
3
  import useSeamlyDispatchContext from './use-seamly-dispatch'
2
4
  import { useSeamlyStateContext } from './seamly-state-hooks'
3
5
  import useSeamlyCommands from './use-seamly-commands'
4
- import { useI18n } from 'domains/i18n'
5
6
  import { useLiveRegion } from './live-region-hooks'
6
- import { actionTypes, dismissTypes, seamlyActions } from 'ui/utils/seamly-utils'
7
7
 
8
8
  const { CLEAR_RESUME_CONVERSATION_PROMPT } = seamlyActions
9
9
 
@@ -1,6 +1,6 @@
1
- import { useFileUploads } from './seamly-hooks'
2
1
  import { Selectors } from 'domains/forms'
3
2
  import { useSelectorWithProps } from 'domains/redux'
3
+ import { useFileUploads } from './seamly-hooks'
4
4
 
5
5
  const useSingleFileUpload = (formId, name) => {
6
6
  const fileList = useSelectorWithProps(
@@ -103,7 +103,7 @@ export const formatBytes = (bytes, decimals = 2) => {
103
103
 
104
104
  const i = Math.floor(Math.log(bytes) / Math.log(k))
105
105
 
106
- return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i]
106
+ return parseFloat((bytes / k ** i).toFixed(dm)) + ' ' + sizes[i]
107
107
  }
108
108
 
109
109
  export const getUrlParams = () => {
@@ -42,6 +42,7 @@ export const actionTypes = {
42
42
  interactivityUpdate: 'interactivity_update',
43
43
  dismiss: 'dismiss',
44
44
  sendTranscript: 'send_transcript',
45
+ setTopic: 'set_topic',
45
46
  setTranslation: 'set_translation',
46
47
  clickCta: 'click_cta',
47
48
  clickCard: 'click_card',
@@ -4,7 +4,7 @@
4
4
  75%,
5
5
  100% {
6
6
  transform: scaleY(0.45);
7
- border-radius: 50% 50%;
7
+ border-radius: 50%;
8
8
  }
9
9
 
10
10
  37.5% {
@@ -22,23 +22,28 @@ $brand3: #4a48c1 !default; // 'tertiary'
22
22
  $interaction: $brand3 !default;
23
23
  $interaction-dark: $brand2 !default;
24
24
 
25
+ // NEGATIVE
25
26
  $negative: #db1639 !default;
26
27
  $negative-dark: #ad001f !default;
27
28
 
29
+ // GREYS
28
30
  $grey-a: #eff3f6 !default;
29
31
  $grey-b: #dee3e5 !default;
30
32
  $grey-c: #a3b4bf !default;
31
33
  $grey-d: #6a7f8c !default;
32
34
  $grey-e: #3d4166 !default;
33
35
 
36
+ // DISABLED
34
37
  $disabled: #5e727b; // 5:1
35
38
 
39
+ // BLACK & WHITE
36
40
  $white: #fff !default;
37
41
  $black: #000 !default;
38
42
 
39
43
  // BACKGROUND COLORS
40
44
  $chat-bg: $white !default;
41
45
 
46
+ // THREADLIST
42
47
  $threadlist-agent-text-bgcolor: $grey-a;
43
48
  $threadlist-user-text-bgcolor: $brand2;
44
49
 
@@ -51,11 +56,13 @@ $fontsize-large: 18px !default;
51
56
  $fontsize-xlarge: 21px !default;
52
57
  $fontsize-xxlarge: 24px !default;
53
58
 
59
+ // FONT-WEIGHTS
54
60
  $fontweight-light: 300 !default;
55
61
  $fontweight-regular: 400 !default;
56
62
  $fontweight-semibold: 600 !default;
57
63
  $fontweight-bold: 700 !default;
58
64
 
65
+ // FONT-FAMILY
59
66
  $fontfamily-default: arial, helvetica, sans-serif !default;
60
67
 
61
68
  // SPACER
@@ -73,34 +80,42 @@ $borderradius-large: $borderradius * 2 !default;
73
80
  $chat-window-width: $spacer * 18 !default;
74
81
  $chat-window-height: $spacer * 36 !default;
75
82
 
83
+ // CHAT INLINE
76
84
  $chat-inline-height: $spacer * 32 !default;
77
85
  $chat-inline-maxheight: 90vh !default;
78
86
 
87
+ // CHAT SUGGESTION
79
88
  $chat-suggestions-maxheight: $spacer * 16 !default;
80
89
 
90
+ // VIEWPORT SIZES
81
91
  $viewport-width: 100vw !default;
82
92
  $viewport-height: 100vh !default;
83
93
 
94
+ // ICON SIZES
84
95
  $iconsize-small: 16px !default;
85
96
  $iconsize: 24px !default;
86
97
  $iconsize-large: 32px !default;
87
98
 
99
+ // BUTTON SIZED
88
100
  $buttonsize-small: 32px !default;
89
101
  $buttonsize: 40px !default;
90
102
 
103
+ // AVATAR SIZES
91
104
  $avatarsize: 32px !default;
92
105
  $avatarsize-large: 48px !default;
93
106
 
107
+ // DIVIDER
94
108
  $dividersize: 32px !default;
95
109
 
110
+ // MESSAGE COUNT
96
111
  $messagecountsize: $spacer * 1.25;
97
112
 
98
113
  // Z-INDEX
99
114
  $z-index: 1 !default;
100
115
 
101
116
  // BOX SHADOWS
102
- $boxshadow: 0 $spacer * 0.25 $spacer * 1.5 hsla(204, 26%, 28%, 0.15),
103
- 0 $spacer * 0.15 $spacer * 0.5 hsla(204, 26%, 28%, 0.2) !default;
117
+ $boxshadow: 0 $spacer * 0.25 $spacer * 1.5 hsl(204deg 26% 28% / 15%),
118
+ 0 $spacer * 0.15 $spacer * 0.5 hsl(204deg 26% 28% / 20%) !default;
104
119
  $boxshadow-soft: 0 0 $spacer 0 rgba($black, 0.1) !default;
105
120
 
106
121
  // TRANSITIONS
@@ -1,15 +1,15 @@
1
- // SET TEXT COLOR
1
+ /** SET TEXT COLOR */
2
2
  @function set-text-color($color) {
3
- @if (lightness($color) > 66.66) {
3
+ @if lightness($color) > 66.66 {
4
4
  @return $grey-e;
5
5
  } @else {
6
6
  @return $white;
7
7
  }
8
8
  }
9
9
 
10
- // SET BORDER COLOR
10
+ /** SET BORDER COLOR */
11
11
  @function set-border-color($color) {
12
- @if (lightness($color) > 66.66) {
12
+ @if lightness($color) > 66.66 {
13
13
  @return $grey-c;
14
14
  } @else {
15
15
  @return $white;
@@ -1,5 +1,5 @@
1
1
  /* stylelint-disable selector-max-universal */
2
- // BOX-SIZING
2
+ /** BOX-SIZING */
3
3
  @mixin boxSizing($value: border-box) {
4
4
  box-sizing: $value;
5
5
 
@@ -10,14 +10,15 @@
10
10
  }
11
11
  }
12
12
 
13
- // RESPONSIVE APP SIZING
13
+ /** RESPONSIVE APP SIZING */
14
14
  @mixin responsiveAppSizing() {
15
15
  max-width: calc(#{$viewport-width} - #{$spacer * 2});
16
16
  max-height: calc(#{$viewport-height * 0.85} - #{$spacer * 2});
17
17
 
18
18
  @include media('>phablet-l') {
19
19
  max-height: calc(#{$viewport-height} - #{$spacer * 2});
20
- // iOS Safari needs a bit more space
20
+
21
+ /** iOS Safari needs a bit more space */
21
22
  @supports (-webkit-overflow-scrolling: touch) {
22
23
  max-height: calc(#{$viewport-height * 0.9} - #{$spacer * 2});
23
24
  }
@@ -27,39 +28,40 @@
27
28
  right: $spacer;
28
29
  bottom: $spacer;
29
30
  max-height: calc(#{$viewport-height} - #{$spacer * 2});
30
- // iOS Safari needs a bit more space
31
+
32
+ /** iOS Safari needs a bit more space */
31
33
  @supports (-webkit-overflow-scrolling: touch) {
32
34
  max-height: calc(#{$viewport-height * 0.9} - #{$spacer * 2});
33
35
  }
34
36
  }
35
37
  }
36
38
 
37
- // UNLIST
39
+ /** UNLIST */
38
40
  @mixin unList() {
39
41
  margin: 0;
40
42
  padding: 0;
41
43
  list-style: none;
42
44
  }
43
45
 
44
- // STYLE PLACEHOLDER
46
+ /** STYLE PLACEHOLDER */
45
47
  @mixin stylePlaceholder() {
46
- &::-webkit-input-placeholder {
47
- // Chrome/Opera/Safari
48
+ &::input-placeholder {
49
+ /** Chrome/Opera/Safari */
48
50
  @content;
49
51
  }
50
52
 
51
- &::-moz-placeholder {
52
- // Firefox 19+
53
+ &::placeholder {
54
+ /** Firefox 19+ */
53
55
  @content;
54
56
  }
55
57
 
56
- &:-ms-input-placeholder {
57
- // IE 10+
58
+ &:input-placeholder {
59
+ /** IE 10+ */
58
60
  @content;
59
61
  }
60
62
 
61
- &:-moz-placeholder {
62
- // Firefox 18-
63
+ &:placeholder {
64
+ /** Firefox 18- */
63
65
  @content;
64
66
  }
65
67
  }
@@ -27,7 +27,7 @@
27
27
  }
28
28
 
29
29
  .#{$n}-chat--layout-window {
30
- @include responsiveAppSizing();
30
+ @include responsiveAppSizing;
31
31
 
32
32
  display: none;
33
33
  position: fixed;
@@ -50,7 +50,7 @@
50
50
  }
51
51
 
52
52
  .#{$n}-button--choose-again .#{$n}-icon path {
53
- fill: currentColor;
53
+ fill: currentcolor;
54
54
  }
55
55
 
56
56
  .#{$n}-button--choose-again[aria-expanded='true'] .#{$n}-icon {
@@ -10,7 +10,7 @@
10
10
  height: $buttonsize;
11
11
  padding: 0;
12
12
  border: 0 none;
13
- border-radius: 50% 50%;
13
+ border-radius: 50%;
14
14
  background-color: $white;
15
15
  box-shadow: $boxshadow;
16
16
  }
@@ -26,7 +26,7 @@
26
26
  font-size: $fontsize-default;
27
27
  resize: none;
28
28
 
29
- @include stylePlaceholder() {
29
+ @include stylePlaceholder {
30
30
  overflow: visible;
31
31
  color: $grey-c;
32
32
  line-height: $spacer;
@@ -24,8 +24,8 @@ $loader-quarter-duration: $loader-animation-duration * 0.2;
24
24
  animation-iteration-count: infinite;
25
25
  animation-direction: normal;
26
26
  animation-fill-mode: forwards;
27
- border-radius: 50% 50%;
28
- background-color: currentColor;
27
+ border-radius: 50%;
28
+ background-color: currentcolor;
29
29
 
30
30
  &.#{$n}-one {
31
31
  animation-delay: $loader-quarter-duration;
@@ -131,7 +131,7 @@
131
131
  height: $iconsize-small * 0.6;
132
132
  transform: translate(-50%, -50%);
133
133
  transform-origin: 50% 50%;
134
- border-radius: 50% 50%;
134
+ border-radius: 50%;
135
135
  background-color: $grey-c;
136
136
  }
137
137
  }
@@ -11,7 +11,7 @@
11
11
  transform: scale(1);
12
12
  transform-origin: 50% 50%;
13
13
  transition: transform 0.3s 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
14
- border-radius: 50% 50%;
14
+ border-radius: 50%;
15
15
  background-color: $negative;
16
16
  color: $white;
17
17
  font-size: $fontsize-small;
@@ -1,7 +1,6 @@
1
1
  .#{$n}-message {
2
2
  display: flex;
3
- flex-direction: row;
4
- flex-wrap: wrap;
3
+ flex-flow: row wrap;
5
4
  width: 80%;
6
5
  }
7
6
 
@@ -97,7 +97,7 @@
97
97
  height: $buttonsize;
98
98
  padding: 0;
99
99
  border: 0 none;
100
- border-radius: 50% 50%;
100
+ border-radius: 50%;
101
101
  background-color: $white;
102
102
  color: transparent;
103
103
  font-size: 0;
@@ -34,7 +34,7 @@
34
34
  }
35
35
 
36
36
  .#{$n}-chat__options__button .#{$n}-icon path {
37
- fill: currentColor;
37
+ fill: currentcolor;
38
38
  }
39
39
 
40
40
  // CONTEXT MENU
@@ -174,7 +174,7 @@
174
174
  }
175
175
 
176
176
  .#{$n}-options__close .#{$n}-icon path {
177
- fill: currentColor;
177
+ fill: currentcolor;
178
178
  }
179
179
 
180
180
  .#{$n}-options__form {
@@ -232,7 +232,7 @@
232
232
  border: $thin-border solid $grey-b;
233
233
  }
234
234
 
235
- @include stylePlaceholder() {
235
+ @include stylePlaceholder {
236
236
  overflow: visible;
237
237
  color: $grey-c;
238
238
  line-height: $spacer;
@@ -63,26 +63,25 @@
63
63
 
64
64
  .#{$n}-chat--layout-inline > .#{$n}-suggestions .#{$n}-suggestions__list {
65
65
  flex: 1 1 100%;
66
- flex-direction: column;
67
- flex-wrap: nowrap;
66
+ flex-flow: column nowrap;
68
67
  height: 100%;
69
68
  max-height: 100%;
70
69
  overflow-y: auto;
71
70
  }
72
71
 
73
- .#{$n}-suggestions-item {
72
+ .#{$n}-suggestions__item {
74
73
  display: block;
75
74
  flex: 0 0 auto;
76
75
  max-width: 100%;
77
76
  margin: 0 $spacer * 0.25 $spacer * 0.25 0;
78
77
  }
79
78
 
80
- .#{$n}-chat--layout-inline > .#{$n}-suggestions .#{$n}-suggestions-item {
79
+ .#{$n}-chat--layout-inline > .#{$n}-suggestions .#{$n}-suggestions__item {
81
80
  width: 100%;
82
81
  margin-right: 0;
83
82
  }
84
83
 
85
- .#{$n}-suggestions-item .#{$n}-icon {
84
+ .#{$n}-suggestions__item .#{$n}-icon {
86
85
  display: none;
87
86
  }
88
87
 
@@ -116,7 +116,7 @@
116
116
  }
117
117
 
118
118
  .#{$n}-upload__label .#{$n}-icon path {
119
- fill: currentColor;
119
+ fill: currentcolor;
120
120
  }
121
121
 
122
122
  .#{$n}-upload__label--text {
@@ -8,7 +8,7 @@
8
8
  75%,
9
9
  100% {
10
10
  transform: scaleY(0.45);
11
- border-radius: 50% 50%;
11
+ border-radius: 50%;
12
12
  }
13
13
 
14
14
  37.5% {
@@ -21,22 +21,28 @@ $brand3: #4a48c1 !default; // 'tertiary'
21
21
  // UI COLORS
22
22
  $interaction: $brand3 !default;
23
23
 
24
+ // Highlight color
24
25
  $highlight: #ffc700 !default;
25
26
 
27
+ // Positive colors
26
28
  $positive: #00875e !default;
27
29
  $positive-light: #19b183 !default;
28
30
 
31
+ // Negative colors
29
32
  $negative: #db1639 !default;
30
33
  $negative-dark: #ad001f !default;
31
34
 
35
+ // Greys
32
36
  $grey-a: #eff3f6 !default;
33
37
  $grey-b: #dee3e5 !default;
34
38
  $grey-c: #a3b4bf !default;
35
39
  $grey-d: #6a7f8c !default;
36
40
  $grey-e: #3d4166 !default;
37
41
 
42
+ // Disabled color
38
43
  $disabled: #5e727b; // 5:1
39
44
 
45
+ // BLACK & WHITE
40
46
  $white: #fff !default;
41
47
  $black: #000 !default;
42
48
 
@@ -51,8 +57,10 @@ $fontsize-default: 16px !default;
51
57
  $fontsize-large: 18px !default;
52
58
  $fontsize-xlarge: 21px !default;
53
59
 
60
+ // FONT-WEIGHT
54
61
  $fontweight-bold: 700 !default;
55
62
 
63
+ // FONT-FAMILY
56
64
  $fontfamily-default: arial, helvetica, sans-serif !default;
57
65
 
58
66
  // SPACER
@@ -69,26 +77,21 @@ $borderradius-small: $borderradius * 0.5 !default;
69
77
  // DIMENSIONS
70
78
  $app-initial-width: 195px !default;
71
79
  $app-started-width: 375px !default;
72
-
73
80
  $app-full-height: 720px !default;
74
81
  $app-collapsed-height: 54px !default;
75
-
76
82
  $app-inline-height: 480px !default;
77
-
78
83
  $post-full-height: 170px !default;
79
84
  $post-collapsed-height: 65px !default;
80
-
81
85
  $viewport-width: 100vw !default;
82
86
  $viewport-height: 100vh !default;
83
-
84
87
  $badge-touch-size: 32px !default;
85
88
 
86
89
  // Z-INDEX
87
90
  $z-index: 1 !default;
88
91
 
89
92
  // BOX SHADOWS
90
- $boxshadow: 0 $spacer * 0.25 $spacer * 1.5 hsla(204, 26%, 28%, 0.15),
91
- 0 $spacer * 0.15 $spacer * 0.5 hsla(204, 26%, 28%, 0.2) !default;
93
+ $boxshadow: 0 $spacer * 0.25 $spacer * 1.5 hsl(204deg 26% 28% / 15%),
94
+ 0 $spacer * 0.15 $spacer * 0.5 hsl(204deg 26% 28% / 20%) !default;
92
95
  $boxshadow-soft: 0 0 $spacer 0 rgba($black, 0.1) !default;
93
96
 
94
97
  // TRANSITIONS
@@ -4,7 +4,7 @@
4
4
  // SET TEXT COLOR
5
5
 
6
6
  @function set-text-color($color) {
7
- @if (lightness($color) > 66.66) {
7
+ @if lightness($color) > 66.66 {
8
8
  @return $grey-e;
9
9
  } @else {
10
10
  @return $white;
@@ -14,7 +14,7 @@
14
14
  // SET BORDER COLOR
15
15
 
16
16
  @function set-border-color($color) {
17
- @if (lightness($color) > 66.66) {
17
+ @if lightness($color) > 66.66 {
18
18
  @return $grey-c;
19
19
  } @else {
20
20
  @return $white;
@@ -25,6 +25,7 @@
25
25
 
26
26
  @include media('>phablet-l') {
27
27
  max-height: calc(#{$viewport-height} - #{$flex-spacer * 2});
28
+
28
29
  // iOS Safari needs a bit more space
29
30
  @supports (-webkit-overflow-scrolling: touch) {
30
31
  max-height: calc(#{$viewport-height * 0.9} - #{$flex-spacer * 2});
@@ -35,6 +36,7 @@
35
36
  right: $spacer;
36
37
  bottom: $spacer;
37
38
  max-height: calc(#{$viewport-height} - #{$spacer * 2});
39
+
38
40
  // iOS Safari needs a bit more space
39
41
  @supports (-webkit-overflow-scrolling: touch) {
40
42
  max-height: calc(#{$viewport-height * 0.9} - #{$spacer * 2});
@@ -55,22 +57,22 @@
55
57
  // -----------------
56
58
 
57
59
  @mixin stylePlaceholder() {
58
- &::-webkit-input-placeholder {
60
+ &::input-placeholder {
59
61
  // Chrome/Opera/Safari
60
62
  @content;
61
63
  }
62
64
 
63
- &::-moz-placeholder {
65
+ &::placeholder {
64
66
  // Firefox 19+
65
67
  @content;
66
68
  }
67
69
 
68
- &:-ms-input-placeholder {
70
+ &:input-placeholder {
69
71
  // IE 10+
70
72
  @content;
71
73
  }
72
74
 
73
- &:-moz-placeholder {
75
+ &:placeholder {
74
76
  // Firefox 18-
75
77
  @content;
76
78
  }
@@ -1,9 +1,9 @@
1
- // See settings/_config.scss for vars
1
+ /** See settings/_config.scss for vars */
2
2
  $app-parts-padding: $spacer * 0.5;
3
3
  $app-header-bgcolor: $brand3;
4
4
 
5
5
  .#{$n}-app--deprecated {
6
- @include responsiveAppSizing();
6
+ @include responsiveAppSizing;
7
7
  @include boxSizing;
8
8
 
9
9
  display: flex;
@@ -38,6 +38,7 @@
38
38
  color: $grey-e;
39
39
  font-size: $fontsize-small;
40
40
  resize: none;
41
+
41
42
  // iOS will zoom in on focus if font-size below 16px, and not go back.
42
43
  // User has to pinch to zoom out; very nasty UX. So:
43
44
  @supports (-webkit-overflow-scrolling: touch) {
@@ -42,7 +42,7 @@
42
42
  animation-iteration-count: infinite;
43
43
  animation-direction: normal;
44
44
  animation-fill-mode: forwards;
45
- border-radius: 50% 50%;
45
+ border-radius: 50%;
46
46
  background-color: $interaction;
47
47
  }
48
48
  }
@@ -11,7 +11,7 @@
11
11
  height: $badge-touch-size;
12
12
  padding: 0;
13
13
  border: 0 none;
14
- border-radius: 50% 50%;
14
+ border-radius: 50%;
15
15
  background-color: $white;
16
16
  box-shadow: $boxshadow;
17
17
  }
@@ -4,7 +4,7 @@
4
4
  // VARS
5
5
  // ----
6
6
 
7
- $small-shadow-light: 0 $spacer * 0.2 $spacer * 0.3333 0 rgba(0, 0, 0, 0.1);
7
+ $small-shadow-light: 0 $spacer * 0.2 $spacer * 0.3333 0 rgb(0 0 0 / 10%);
8
8
 
9
9
  // BASE
10
10
  // ----
@@ -32,6 +32,7 @@
32
32
  color: $grey-e;
33
33
  font-size: $fontsize-small;
34
34
  resize: none;
35
+
35
36
  // iOS will zoom in on focus if font-size below 16px, and not go back.
36
37
  // User has to pinch to zoom out; bad UX.
37
38
  // Do not change this:
@@ -39,7 +40,7 @@
39
40
  font-size: 16px;
40
41
  }
41
42
 
42
- @include stylePlaceholder() {
43
+ @include stylePlaceholder {
43
44
  overflow: visible;
44
45
  color: $grey-c;
45
46
  line-height: $spacer;
@@ -37,8 +37,8 @@ $loader-quarter-duration: $loader-animation-duration * 0.2;
37
37
  animation-iteration-count: infinite;
38
38
  animation-direction: normal;
39
39
  animation-fill-mode: forwards;
40
- border-radius: 50% 50%;
41
- background-color: currentColor;
40
+ border-radius: 50%;
41
+ background-color: currentcolor;
42
42
 
43
43
  &.#{$n}-one {
44
44
  animation-delay: $loader-quarter-duration;
@@ -22,7 +22,7 @@ $messagecount-size: $spacer;
22
22
  height: $messagecount-size;
23
23
  transform: scale(1);
24
24
  transition: transform 0.3s 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
25
- border-radius: 50% 50%;
25
+ border-radius: 50%;
26
26
  background-color: $messagecount-bgcolor;
27
27
  color: $messagecount-textcolor;
28
28
  font-size: $fontsize-small;