@seamly/web-ui 19.1.3 → 20.0.0-beta.1

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 (182) hide show
  1. package/CHANGELOG.md +625 -0
  2. package/build/dist/lib/components.js +2 -1
  3. package/build/dist/lib/components.min.js +1 -1
  4. package/build/dist/lib/index.debug.js +180 -125
  5. package/build/dist/lib/index.debug.min.js +1 -1
  6. package/build/dist/lib/index.debug.min.js.LICENSE.txt +45 -25
  7. package/build/dist/lib/index.js +7279 -7756
  8. package/build/dist/lib/index.min.js +1 -1
  9. package/build/dist/lib/index.min.js.LICENSE.txt +0 -5
  10. package/build/dist/lib/standalone.js +5700 -6184
  11. package/build/dist/lib/standalone.min.js +1 -1
  12. package/build/dist/lib/standalone.min.js.LICENSE.txt +0 -5
  13. package/build/dist/lib/style-guide.js +10820 -4993
  14. package/build/dist/lib/style-guide.min.js +2 -1
  15. package/build/dist/lib/style-guide.min.js.LICENSE.txt +9 -0
  16. package/build/dist/lib/styles.css +1 -1
  17. package/package.json +1 -2
  18. package/src/icons/icon_file-32.svg +1 -1
  19. package/src/javascripts/api/index.js +48 -37
  20. package/src/javascripts/config.js +1 -5
  21. package/src/javascripts/domains/app/actions.js +22 -5
  22. package/src/javascripts/domains/config/actions.js +3 -0
  23. package/src/javascripts/domains/config/reducer.js +9 -0
  24. package/src/javascripts/domains/forms/hooks.js +3 -1
  25. package/src/javascripts/domains/forms/provider.js +12 -0
  26. package/src/javascripts/domains/forms/reducer.js +2 -0
  27. package/src/javascripts/domains/i18n/hooks.js +2 -1
  28. package/src/javascripts/domains/i18n/reducer.js +2 -0
  29. package/src/javascripts/domains/interrupt/reducer.js +2 -2
  30. package/src/javascripts/domains/options/middleware.js +15 -31
  31. package/src/javascripts/domains/store/index.js +2 -1
  32. package/src/javascripts/domains/store/state-reducer.js +3 -8
  33. package/src/javascripts/domains/translations/components/options-dialog/form.js +1 -1
  34. package/src/javascripts/domains/translations/components/options-dialog/index.js +15 -1
  35. package/src/javascripts/domains/translations/reducer.js +2 -0
  36. package/src/javascripts/domains/visibility/actions.js +1 -1
  37. package/src/javascripts/domains/visibility/hooks.js +10 -8
  38. package/src/javascripts/domains/visibility/utils.js +1 -2
  39. package/src/javascripts/index.js +5 -3
  40. package/src/javascripts/lib/css.js +7 -1
  41. package/src/javascripts/lib/engine/index.js +4 -3
  42. package/src/javascripts/lib/external-api/index.js +38 -29
  43. package/src/javascripts/package/components.js +2 -1
  44. package/src/javascripts/style-guide/components/app.js +1 -1
  45. package/src/javascripts/style-guide/components/static-core.js +9 -3
  46. package/src/javascripts/style-guide/states.js +203 -298
  47. package/src/javascripts/ui/components/chat-app.js +1 -1
  48. package/src/javascripts/ui/components/conversation/component-filter.js +6 -0
  49. package/src/javascripts/ui/components/conversation/event/carousel-component/index.js +8 -1
  50. package/src/javascripts/ui/components/conversation/event/carousel-message/components/slide.js +2 -3
  51. package/src/javascripts/ui/components/conversation/event/conversation-suggestions.js +70 -0
  52. package/src/javascripts/ui/components/conversation/event/participant.js +2 -5
  53. package/src/javascripts/ui/components/conversation/event/splash.js +26 -0
  54. package/src/javascripts/ui/components/conversation/event/text.js +1 -2
  55. package/src/javascripts/ui/components/core/seamly-core.js +12 -9
  56. package/src/javascripts/ui/components/core/seamly-event-subscriber.js +4 -10
  57. package/src/javascripts/ui/components/core/seamly-instance-functions-loader.js +1 -8
  58. package/src/javascripts/ui/components/entry/entry-container.js +5 -3
  59. package/src/javascripts/ui/components/entry/text-entry/index.js +7 -1
  60. package/src/javascripts/ui/components/entry/text-entry/text-entry-form.js +5 -1
  61. package/src/javascripts/ui/components/entry/toggle-button.js +4 -2
  62. package/src/javascripts/ui/components/entry/upload/file-upload-form.js +1 -1
  63. package/src/javascripts/ui/components/form-controls/error.js +6 -2
  64. package/src/javascripts/ui/components/form-controls/form.js +26 -3
  65. package/src/javascripts/ui/components/layout/app-frame.js +24 -15
  66. package/src/javascripts/ui/components/layout/chat-frame.js +0 -2
  67. package/src/javascripts/ui/components/layout/modal-wrapper.js +0 -80
  68. package/src/javascripts/ui/components/layout/pre-chat-messages.js +45 -0
  69. package/src/javascripts/ui/components/options/options-frame.js +9 -4
  70. package/src/javascripts/ui/components/options/options.js +1 -4
  71. package/src/javascripts/ui/components/options/transcript/index.js +15 -1
  72. package/src/javascripts/ui/components/options/transcript/transcript-form.js +1 -1
  73. package/src/javascripts/ui/components/suggestions/index.js +174 -0
  74. package/src/javascripts/ui/components/suggestions/suggestions-item.js +40 -0
  75. package/src/javascripts/ui/components/suggestions/suggestions-list.js +24 -0
  76. package/src/javascripts/ui/components/view/app-view.js +21 -0
  77. package/src/javascripts/ui/components/view/deprecated-view.js +30 -0
  78. package/src/javascripts/ui/components/view/index.js +27 -0
  79. package/src/javascripts/ui/components/view/inline-view.js +45 -0
  80. package/src/javascripts/ui/components/view/window-view/collapse-button.js +20 -0
  81. package/src/javascripts/ui/components/view/window-view/index.js +82 -0
  82. package/src/javascripts/ui/components/view/window-view/window-open-button.js +68 -0
  83. package/src/javascripts/ui/components/widgets/lightbox.js +7 -2
  84. package/src/javascripts/ui/hooks/component-helper-hooks.js +0 -9
  85. package/src/javascripts/ui/hooks/seamly-hooks.js +0 -1
  86. package/src/javascripts/ui/hooks/seamly-state-hooks.js +28 -4
  87. package/src/javascripts/ui/hooks/use-seamly-chat.js +12 -3
  88. package/src/javascripts/ui/hooks/use-seamly-commands.js +4 -31
  89. package/src/javascripts/ui/utils/seamly-utils.js +2 -14
  90. package/src/stylesheets/1-settings/_animations.scss +0 -6
  91. package/src/stylesheets/1-settings/_config.scss +34 -35
  92. package/src/stylesheets/2-tools/_functions.scss +0 -5
  93. package/src/stylesheets/2-tools/_mixins.scss +4 -16
  94. package/src/stylesheets/3-app/_app.scss +78 -135
  95. package/src/stylesheets/4-base/_a11y.scss +0 -3
  96. package/src/stylesheets/4-base/_elements.scss +0 -11
  97. package/src/stylesheets/4-base/_formelements.scss +4 -14
  98. package/src/stylesheets/5-components/_avatar.scss +2 -44
  99. package/src/stylesheets/5-components/_buttons.scss +6 -45
  100. package/src/stylesheets/5-components/_chat-status.scss +14 -38
  101. package/src/stylesheets/5-components/_choice-prompt.scss +33 -2
  102. package/src/stylesheets/5-components/_collapse-button.scss +16 -0
  103. package/src/stylesheets/5-components/_conversation.scss +26 -2
  104. package/src/stylesheets/5-components/_disclaimer.scss +10 -12
  105. package/src/stylesheets/5-components/_divider.scss +7 -4
  106. package/src/stylesheets/5-components/_error.scss +1 -1
  107. package/src/stylesheets/5-components/_form.scss +9 -0
  108. package/src/stylesheets/5-components/_icon.scss +10 -1
  109. package/src/stylesheets/5-components/_idle.scss +0 -8
  110. package/src/stylesheets/5-components/_input.scss +14 -20
  111. package/src/stylesheets/5-components/_interrupt.scss +0 -2
  112. package/src/stylesheets/5-components/_loader.scss +0 -32
  113. package/src/stylesheets/5-components/_message-author.scss +40 -0
  114. package/src/stylesheets/5-components/_message-body.scss +194 -0
  115. package/src/stylesheets/5-components/_message-card.scss +55 -0
  116. package/src/stylesheets/5-components/_message-carousel.scss +143 -0
  117. package/src/stylesheets/5-components/_message-count.scss +11 -28
  118. package/src/stylesheets/5-components/_message-cta.scss +23 -0
  119. package/src/stylesheets/5-components/_message-info.scss +11 -0
  120. package/src/stylesheets/5-components/_message-translation-info.scss +17 -0
  121. package/src/stylesheets/5-components/_message.scss +13 -364
  122. package/src/stylesheets/5-components/_modal.scss +28 -58
  123. package/src/stylesheets/5-components/_notification.scss +0 -5
  124. package/src/stylesheets/5-components/_options.scss +27 -42
  125. package/src/stylesheets/5-components/_pre-chat-messages.scss +30 -0
  126. package/src/stylesheets/5-components/_prompt.scss +0 -8
  127. package/src/stylesheets/5-components/_skip-link.scss +3 -3
  128. package/src/stylesheets/5-components/_suggestions.scss +96 -0
  129. package/src/stylesheets/5-components/_unstarted.scss +50 -0
  130. package/src/stylesheets/5-components/_upload.scss +26 -28
  131. package/src/stylesheets/5-components/_window-open-button.scss +39 -0
  132. package/src/stylesheets/6-webui-only/_hover.scss +151 -0
  133. package/src/stylesheets/6-webui-only/_scrollbar.scss +31 -0
  134. package/src/stylesheets/7-deprecated/1-settings/_animations.scss +43 -0
  135. package/src/stylesheets/7-deprecated/1-settings/_config.scss +105 -0
  136. package/src/stylesheets/7-deprecated/2-tools/_functions.scss +22 -0
  137. package/src/stylesheets/7-deprecated/2-tools/_mixins.scss +77 -0
  138. package/src/stylesheets/7-deprecated/3-app/_app.scss +214 -0
  139. package/src/stylesheets/7-deprecated/4-base/_a11y.scss +14 -0
  140. package/src/stylesheets/7-deprecated/4-base/_elements.scss +21 -0
  141. package/src/stylesheets/7-deprecated/4-base/_formelements.scss +57 -0
  142. package/src/stylesheets/{5-components → 7-deprecated/5-components}/_agent-info.scss +0 -0
  143. package/src/stylesheets/7-deprecated/5-components/_avatar.scss +64 -0
  144. package/src/stylesheets/7-deprecated/5-components/_buttons.scss +94 -0
  145. package/src/stylesheets/{5-components → 7-deprecated/5-components}/_card.scss +0 -0
  146. package/src/stylesheets/{5-components → 7-deprecated/5-components}/_carousel.scss +0 -0
  147. package/src/stylesheets/7-deprecated/5-components/_character-limit.scss +36 -0
  148. package/src/stylesheets/{5-components/_cobrowsing.scss → 7-deprecated/5-components/_chat-status.scss} +18 -16
  149. package/src/stylesheets/7-deprecated/5-components/_choice-prompt.scss +27 -0
  150. package/src/stylesheets/7-deprecated/5-components/_collapse-button.scss +17 -0
  151. package/src/stylesheets/7-deprecated/5-components/_conversation.scss +44 -0
  152. package/src/stylesheets/7-deprecated/5-components/_disclaimer.scss +36 -0
  153. package/src/stylesheets/7-deprecated/5-components/_divider.scss +91 -0
  154. package/src/stylesheets/7-deprecated/5-components/_error.scss +24 -0
  155. package/src/stylesheets/{5-components → 7-deprecated/5-components}/_faq.scss +8 -3
  156. package/src/stylesheets/{5-components → 7-deprecated/5-components}/_header-controls.scss +0 -0
  157. package/src/stylesheets/7-deprecated/5-components/_icon.scss +4 -0
  158. package/src/stylesheets/7-deprecated/5-components/_idle.scss +61 -0
  159. package/src/stylesheets/7-deprecated/5-components/_input.scss +78 -0
  160. package/src/stylesheets/7-deprecated/5-components/_interrupt.scss +35 -0
  161. package/src/stylesheets/7-deprecated/5-components/_loader.scss +78 -0
  162. package/src/stylesheets/7-deprecated/5-components/_message-count.scss +41 -0
  163. package/src/stylesheets/7-deprecated/5-components/_message.scss +385 -0
  164. package/src/stylesheets/7-deprecated/5-components/_modal.scss +138 -0
  165. package/src/stylesheets/7-deprecated/5-components/_notification.scss +20 -0
  166. package/src/stylesheets/7-deprecated/5-components/_options.scss +286 -0
  167. package/src/stylesheets/7-deprecated/5-components/_prompt.scss +44 -0
  168. package/src/stylesheets/7-deprecated/5-components/_skip-link.scss +21 -0
  169. package/src/stylesheets/{5-components → 7-deprecated/5-components}/_svg-graphic.scss +0 -0
  170. package/src/stylesheets/7-deprecated/5-components/_upload.scss +213 -0
  171. package/src/stylesheets/deprecated-view.scss +64 -0
  172. package/src/stylesheets/styles-webui-only.scss +3 -0
  173. package/src/stylesheets/styles.scss +15 -25
  174. package/webpack/config.site.js +4 -0
  175. package/webpack/defaults.js +5 -0
  176. package/src/javascripts/ui/components/conversation/event/hooks/use-text-rendering.js +0 -35
  177. package/src/javascripts/ui/components/faq/faq.js +0 -162
  178. package/src/javascripts/ui/components/layout/view.js +0 -36
  179. package/src/javascripts/ui/components/options/cobrowsing.js +0 -110
  180. package/src/javascripts/ui/components/warnings/cobrowsing-active-frame.js +0 -29
  181. package/src/javascripts/ui/components/warnings/cobrowsing-active.js +0 -33
  182. package/src/stylesheets/5-components/_modal_mode.scss +0 -108
@@ -1,13 +1,10 @@
1
- // ##### OPTIONS #####
2
- // ===================
3
-
4
- // BASE
5
- // ----
6
1
  .#{$n}-app__options {
7
2
  display: flex;
8
3
  position: relative;
4
+ flex: 0;
9
5
  align-items: center;
10
6
  justify-content: flex-end;
7
+ width: 100%;
11
8
  padding: $spacer * 0.25;
12
9
  border-top: $thin-border solid $grey-b;
13
10
  }
@@ -25,7 +22,7 @@
25
22
  align-items: center;
26
23
  justify-content: flex-end;
27
24
  padding: $spacer * 0.25 $spacer * 0.5;
28
- border-radius: $buttons-border-radius;
25
+ border-radius: $borderradius-small;
29
26
  }
30
27
 
31
28
  &.#{$n}-app--collapsed .#{$n}-app__options-button {
@@ -33,9 +30,9 @@
33
30
  }
34
31
 
35
32
  .#{$n}-app__options__button .#{$n}-icon {
36
- flex: 0 0 $spacer * 0.75;
37
- width: $spacer * 0.75;
38
- height: $spacer * 0.75;
33
+ flex: 0 0 $iconsize-small;
34
+ width: $iconsize-small;
35
+ height: $iconsize-small;
39
36
  margin-right: $spacer * 0.25;
40
37
  }
41
38
 
@@ -44,7 +41,7 @@
44
41
  height: 100%;
45
42
  }
46
43
 
47
- .#{$n}-app__options__button.#{$n}-button--disabled .#{$n}-icon path {
44
+ .#{$n}-app__options__button .#{$n}-icon path {
48
45
  fill: currentColor;
49
46
  }
50
47
 
@@ -66,7 +63,7 @@
66
63
  border-radius: $borderradius-small;
67
64
  opacity: 0;
68
65
  background-color: $white;
69
- box-shadow: $boxshadow-ultralight;
66
+ box-shadow: $boxshadow-soft;
70
67
  list-style: none;
71
68
  }
72
69
 
@@ -99,22 +96,9 @@
99
96
  width: 100%;
100
97
  min-width: $spacer * 10;
101
98
  border-radius: $borderradius-small;
102
-
103
- &:hover {
104
- background-color: $brand2;
105
- color: $white;
106
- }
107
- }
108
-
109
- .#{$n}-options__menu .#{$n}-button.#{$n}-button--disabled {
110
- &:hover {
111
- background-color: initial;
112
- color: $disabled;
113
- }
114
99
  }
115
100
 
116
101
  // OPTIONS DIALOG
117
- // --------------
118
102
  .#{$n}-options {
119
103
  display: none;
120
104
  position: absolute;
@@ -132,7 +116,7 @@
132
116
  border-radius: $borderradius-small;
133
117
  opacity: 0;
134
118
  background-color: $white;
135
- box-shadow: $boxshadow-ultralight;
119
+ box-shadow: $boxshadow-soft;
136
120
  list-style: none;
137
121
  }
138
122
 
@@ -170,7 +154,7 @@
170
154
  display: flex;
171
155
  flex: 0 0 auto;
172
156
  align-items: center;
173
- width: calc(100% - #{$badge-touch-size} - (#{$spacer} * 0.5));
157
+ width: calc(100% - #{$buttonsize} - (#{$spacer} * 0.5));
174
158
  margin: 0;
175
159
  padding: $spacer $spacer $spacer * 0.5;
176
160
  color: $brand2;
@@ -179,27 +163,31 @@
179
163
  }
180
164
 
181
165
  .#{$n}-options__close {
166
+ display: flex;
182
167
  position: absolute;
183
168
  top: $spacer * 0.5;
184
169
  right: $spacer * 0.5;
185
- width: $badge-touch-size;
186
- height: $badge-touch-size;
170
+ align-items: center;
171
+ justify-content: center;
172
+ width: $buttonsize;
173
+ height: $buttonsize;
174
+ color: $interaction;
187
175
  font-size: 0;
188
176
  }
189
177
 
190
178
  .#{$n}-options__close .#{$n}-icon {
191
- display: flex;
192
- align-items: center;
193
- justify-content: center;
194
- width: 100%;
195
- height: 100%;
179
+ flex: 0 0 $iconsize-small;
180
+ width: $iconsize-small;
181
+ height: $iconsize-small;
196
182
  }
197
183
 
198
- .#{$n}-options__body form {
199
- display: flex;
184
+ .#{$n}-options__close .#{$n}-icon path {
185
+ fill: currentColor;
186
+ }
187
+
188
+ .#{$n}-options__form {
200
189
  flex: 1 1 auto;
201
190
  flex-direction: column;
202
- width: 100%;
203
191
  }
204
192
 
205
193
  .#{$n}-options__wrapper {
@@ -211,7 +199,7 @@
211
199
  padding: 0 $spacer;
212
200
  overflow: auto;
213
201
 
214
- // FF AND IE11 FIX
202
+ // FF FIX
215
203
  &:last-child::after {
216
204
  content: '';
217
205
  display: block;
@@ -241,20 +229,17 @@
241
229
 
242
230
  .#{$n}-transcript__input {
243
231
  width: 100%;
232
+ min-height: $buttonsize;
244
233
  padding: $spacer * 0.5;
245
234
  transition: padding $transition;
246
235
  border: $thin-border solid $grey-b;
247
236
  border-radius: $borderradius-small;
248
- font-size: $fontsize-small;
237
+ font-size: $fontsize-default;
249
238
 
250
239
  &:focus {
251
240
  border: $thin-border solid $grey-b;
252
241
  }
253
242
 
254
- @supports (-webkit-overflow-scrolling: touch) {
255
- font-size: 16px; // KEEP THIS FIXED
256
- }
257
-
258
243
  @include stylePlaceholder() {
259
244
  overflow: visible;
260
245
  color: $grey-c;
@@ -0,0 +1,30 @@
1
+ .#{$n}-pre-chat-messages {
2
+ @include unList;
3
+
4
+ margin: 0;
5
+ padding: 0;
6
+ }
7
+
8
+ .#{$n}-pre-chat-messages--window {
9
+ position: fixed;
10
+ z-index: $z-index;
11
+ right: $spacer;
12
+ bottom: $spacer + $avatarsize-large;
13
+ max-width: calc(100% - #{$spacer * 2});
14
+
15
+ @include media('>phablet-l') {
16
+ max-width: $spacer * 14;
17
+ }
18
+ }
19
+
20
+ .#{$n}-pre-chat-messages__message {
21
+ margin-bottom: $spacer * 0.5;
22
+ }
23
+
24
+ .#{$n}-pre-chat-messages--window .#{$n}-message__body {
25
+ padding: $spacer * 0.5 $spacer * 0.75;
26
+ border: $thin-border solid $white;
27
+ border-radius: $borderradius;
28
+ background-color: $threadlist-agent-text-bgcolor;
29
+ font-size: $fontsize-medium;
30
+ }
@@ -1,8 +1,3 @@
1
- // ##### PROMPT #####
2
- // ========================
3
-
4
- // BASE
5
- // ----
6
1
  .#{$n}-prompt {
7
2
  display: flex;
8
3
  flex-direction: column;
@@ -12,9 +7,6 @@
12
7
  padding: $spacer * 0.5;
13
8
  }
14
9
 
15
- // PARTS
16
- // -----------
17
-
18
10
  .#{$n}-prompt__title {
19
11
  margin-top: 0;
20
12
  margin-bottom: $spacer * 0.25;
@@ -1,14 +1,14 @@
1
1
  .#{$n}-skip-link {
2
2
  position: absolute;
3
3
  z-index: 100;
4
- top: $spacer * 0.5;
4
+ top: $spacer;
5
5
  left: 50%;
6
- padding: $spacer * 0.5 $spacer;
6
+ padding: $spacer * 0.5 $spacer * 0.75;
7
7
  transform: translate(-50%, -1 * $spacer * 0.25) scale(0);
8
8
  transform-origin: 50% 0%;
9
9
  transition: transform $transition, opacity $transition;
10
10
  border: 1px solid $white;
11
- border-radius: $spacer;
11
+ border-radius: $borderradius-small;
12
12
  opacity: 0;
13
13
  background: $interaction;
14
14
  color: $white;
@@ -0,0 +1,96 @@
1
+ .#{$n}-suggestions {
2
+ width: 100%;
3
+ height: fit-content;
4
+ overscroll-behavior: contain;
5
+ }
6
+
7
+ .#{$n}-app--layout-inline > .#{$n}-suggestions {
8
+ flex-direction: column;
9
+ max-height: $app-suggestions-maxheight;
10
+ padding: $spacer;
11
+ overflow: hidden;
12
+ transition: max-height $transition, padding $transition, transform $transition,
13
+ opacity $transition;
14
+ opacity: 0;
15
+
16
+ &.#{$n}-transition--visible {
17
+ display: flex;
18
+ }
19
+
20
+ &.#{$n}-transition--in {
21
+ transition: padding $transition-delay, transform $transition-delay,
22
+ opacity $transition-delay;
23
+ opacity: 1;
24
+
25
+ @include media('>phablet-l') {
26
+ transform: translateX(0);
27
+ }
28
+ }
29
+
30
+ @include media('>phablet-l') {
31
+ flex: 0 0 50%;
32
+ width: 50%;
33
+ height: $app-inline-height;
34
+ min-height: 100%;
35
+ max-height: $app-inline-maxheight;
36
+ transform: translateX(-100%);
37
+ }
38
+
39
+ @include media('>desktop') {
40
+ flex: 0 0 33%;
41
+ width: 33%;
42
+ }
43
+ }
44
+
45
+ .#{$n}-suggestions__heading {
46
+ flex: 0 0 auto;
47
+ margin: 0 0 $spacer * 0.5;
48
+ color: $brand1;
49
+ font-size: $fontsize-large;
50
+ font-weight: $fontweight-bold;
51
+ }
52
+
53
+ .#{$n}-suggestions__list {
54
+ @include unList;
55
+
56
+ display: flex;
57
+ flex-wrap: wrap;
58
+ align-items: flex-start;
59
+ width: 100%;
60
+ height: auto;
61
+ overscroll-behavior: contain;
62
+ }
63
+
64
+ .#{$n}-app--layout-inline > .#{$n}-suggestions .#{$n}-suggestions__list {
65
+ flex: 1 1 100%;
66
+ flex-direction: column;
67
+ flex-wrap: nowrap;
68
+ height: 100%;
69
+ max-height: 100%;
70
+ overflow-y: auto;
71
+ }
72
+
73
+ .#{$n}-suggestions-item {
74
+ display: block;
75
+ flex: 0 0 auto;
76
+ max-width: 100%;
77
+ margin: 0 $spacer * 0.25 $spacer * 0.25 0;
78
+ }
79
+
80
+ .#{$n}-app--layout-inline > .#{$n}-suggestions .#{$n}-suggestions-item {
81
+ width: 100%;
82
+ margin-right: 0;
83
+ }
84
+
85
+ .#{$n}-suggestions-item .#{$n}-icon {
86
+ display: none;
87
+ }
88
+
89
+ .#{$n}-suggestions__footer.#{$n}-suggestions__footer {
90
+ display: block;
91
+ width: 100%;
92
+ margin: $spacer * 0.25 0 0;
93
+ color: $brand1;
94
+ font-size: $fontsize-default;
95
+ font-weight: $fontweight-bold;
96
+ }
@@ -0,0 +1,50 @@
1
+ .#{$n}-unstarted-wrapper {
2
+ display: none;
3
+ width: 100%;
4
+ overflow: hidden;
5
+ transition: margin $transition, max-height $transition;
6
+
7
+ &:not(&.#{$n}-unstarted-wrapper--window) {
8
+ max-height: 0;
9
+
10
+ @include media('>desktop') {
11
+ width: 67%;
12
+ }
13
+ }
14
+ }
15
+
16
+ .#{$n}-unstarted-wrapper.#{$n}-transition--visible {
17
+ display: block;
18
+ }
19
+
20
+ .#{$n}-unstarted-wrapper:not(.#{$n}-unstarted-wrapper--window).#{$n}-transition--in {
21
+ max-height: $spacer * 30;
22
+ margin-bottom: $spacer;
23
+ }
24
+
25
+ .#{$n}-unstarted-wrapper .#{$n}-pre-chat-messages,
26
+ .#{$n}-unstarted-wrapper .#{$n}-cvco-suggestions {
27
+ display: none;
28
+ transition: transform $transition, opacity $transition;
29
+ opacity: 0;
30
+ }
31
+
32
+ .#{$n}-unstarted-wrapper.#{$n}-transition--visible .#{$n}-pre-chat-messages,
33
+ .#{$n}-unstarted-wrapper.#{$n}-transition--visible .#{$n}-cvco-suggestions {
34
+ display: block;
35
+ }
36
+
37
+ .#{$n}-unstarted-wrapper.#{$n}-transition--in .#{$n}-pre-chat-messages,
38
+ .#{$n}-unstarted-wrapper.#{$n}-transition--in .#{$n}-cvco-suggestions {
39
+ transition: transform $transition-delay, opacity $transition-delay;
40
+ opacity: 1;
41
+ }
42
+
43
+ .#{$n}-unstarted-wrapper--window .#{$n}-pre-chat-messages {
44
+ transform: scale(0);
45
+ transform-origin: 100% 100%;
46
+ }
47
+
48
+ .#{$n}-unstarted-wrapper--window.#{$n}-transition--in .#{$n}-pre-chat-messages {
49
+ transform: scale(1);
50
+ }
@@ -1,8 +1,4 @@
1
- // ##### UPLOAD #####
2
- // ==================
3
-
4
- // TOGGLE
5
- // ------
1
+ // UPLOAD TOGGLE
6
2
  .#{$n}-upload-toggle-wrapper {
7
3
  width: 0;
8
4
  height: 100%;
@@ -11,20 +7,23 @@
11
7
  }
12
8
 
13
9
  .#{$n}-upload-toggle-wrapper.#{$n}-transition--in {
14
- width: calc(#{$badge-touch-size} + (#{$spacer} * 0.5)); // INSTEAD OF MARGIN
10
+ width: calc(
11
+ #{$buttonsize} + (#{$spacer} * 0.5)
12
+ ); // INSTEAD OF MARGIN CAUSING DOUBLE ANIMATIONS
15
13
  }
16
14
 
17
15
  .#{$n}-upload-toggle {
18
16
  display: flex;
19
- flex: 0 0 $badge-touch-size;
17
+ flex: 0 0 $buttonsize;
20
18
  flex-direction: column;
21
19
  align-items: center;
22
20
  justify-content: center;
23
- width: $badge-touch-size;
24
- height: $badge-touch-size;
21
+ width: $buttonsize;
22
+ height: $buttonsize;
25
23
  padding: 0;
26
24
  transform: translateX(-100%);
27
25
  transition: transform $transition, opacity $transition;
26
+ border-radius: $borderradius-small;
28
27
  opacity: 0;
29
28
  color: transparent;
30
29
  font-size: 0;
@@ -38,9 +37,9 @@
38
37
  }
39
38
 
40
39
  .#{$n}-upload-toggle .#{$n}-icon {
41
- flex: 0 0 100%;
42
- width: 100%;
43
- height: 100%;
40
+ flex: 0 0 $iconsize;
41
+ width: $iconsize;
42
+ height: $iconsize;
44
43
  }
45
44
 
46
45
  .#{$n}-upload-toggle .#{$n}-icon svg {
@@ -49,13 +48,12 @@
49
48
  }
50
49
 
51
50
  // UPLOAD DIALOG
52
- // -------------
53
51
  .#{$n}-upload {
54
52
  width: 100%;
55
53
  padding: $spacer * 0.5 $spacer * 0.5 0;
56
54
  }
57
55
 
58
- .#{$n}-input--file {
56
+ .#{$n}-upload-form {
59
57
  display: block;
60
58
  }
61
59
 
@@ -84,10 +82,6 @@
84
82
  max-width: 100%;
85
83
  border: 1px solid $interaction;
86
84
  border-radius: $borderradius-small;
87
-
88
- &:hover {
89
- background-color: rgba($brand3, 0.1);
90
- }
91
85
  }
92
86
 
93
87
  .#{$n}-file-upload.#{$n}-focus-within {
@@ -95,7 +89,7 @@
95
89
  outline: 5px auto -webkit-focus-ring-color;
96
90
  }
97
91
 
98
- // Visually hidden
92
+ // VISUALLY HIDDEN
99
93
  .#{$n}-upload__input {
100
94
  position: absolute;
101
95
  width: 1px;
@@ -110,21 +104,26 @@
110
104
  justify-content: flex-start;
111
105
  width: 100%;
112
106
  padding: $spacer * 0.5;
107
+ color: $interaction;
113
108
  text-align: left;
114
109
  }
115
110
 
116
111
  .#{$n}-upload__label .#{$n}-icon {
117
- flex: 0 0 32px;
118
- width: 32px;
119
- height: 32px;
112
+ flex: 0 0 $iconsize-large;
113
+ width: $iconsize-large;
114
+ height: $iconsize-large;
120
115
  margin-right: $spacer * 0.5;
121
116
  }
122
117
 
118
+ .#{$n}-upload__label .#{$n}-icon path {
119
+ fill: currentColor;
120
+ }
121
+
123
122
  .#{$n}-upload__label--text {
124
123
  display: block;
125
124
  flex: 1 1 100%;
126
125
  max-width: 100%;
127
- color: $interaction;
126
+ color: inherit;
128
127
  font-size: $fontsize-medium;
129
128
  font-weight: $fontweight-bold;
130
129
  }
@@ -133,6 +132,7 @@
133
132
  display: block;
134
133
  flex: 1 1 100%;
135
134
  max-width: 100%;
135
+ color: $brand1;
136
136
  font-size: $fontsize-small;
137
137
  word-break: break-all;
138
138
  }
@@ -157,7 +157,6 @@
157
157
  }
158
158
 
159
159
  // PROGRESS
160
- // --------
161
160
  .#{$n}-progress__text {
162
161
  display: flex;
163
162
  align-items: flex-end;
@@ -193,17 +192,16 @@
193
192
  .#{$n}-progress__bar {
194
193
  appearance: none;
195
194
  width: 100%;
196
- border: 1px solid $brand1;
197
195
  border-radius: $borderradius-small;
198
- background: $white;
196
+ background: $grey-a;
199
197
 
200
198
  &::-webkit-progress-bar {
201
199
  border-radius: $borderradius-small;
202
- background: $white;
203
- box-shadow: inset 0 $spacer * 0.125 $spacer * 0.125 0 rgba(0, 0, 0, 0.22);
200
+ background: $grey-a;
204
201
  }
205
202
 
206
203
  &::-webkit-progress-value {
204
+ border-radius: $borderradius-small;
207
205
  background-color: $interaction;
208
206
  }
209
207
 
@@ -0,0 +1,39 @@
1
+ .#{$n}-window-open-button {
2
+ display: none;
3
+ position: fixed;
4
+ z-index: 1;
5
+ right: $spacer;
6
+ bottom: $spacer;
7
+ width: $avatarsize-large;
8
+ height: $avatarsize-large;
9
+ padding: 0;
10
+ transform: scale(0);
11
+ transform-origin: 100% 100%;
12
+ transition: transform $transition;
13
+ border: 1px solid $grey-c;
14
+ border-radius: $borderradius;
15
+ opacity: 0;
16
+ background-color: $brand1;
17
+ box-shadow: $boxshadow-soft;
18
+
19
+ &.#{$n}-transition--visible {
20
+ display: block;
21
+ }
22
+
23
+ &.#{$n}-transition--in {
24
+ transform: scale(1);
25
+ transition: transform $transition-delay;
26
+ opacity: 1;
27
+ }
28
+ }
29
+
30
+ .#{$n}-window-open-button .#{$n}-icon,
31
+ .#{$n}-window-open-button .#{$n}-avatar {
32
+ display: flex;
33
+ align-items: center;
34
+ justify-content: center;
35
+ width: 100%;
36
+ height: 100%;
37
+ overflow: hidden;
38
+ border-radius: $borderradius;
39
+ }