@oat-sa/tao-core-ui 1.5.4 → 1.6.3

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 (43) hide show
  1. package/dist/ckeditor/ckConfigurator.js +9 -1
  2. package/dist/mediaEditor/mediaEditorComponent.js +5 -3
  3. package/dist/mediaEditor/plugins/mediaDimension/mediaDimensionComponent.js +46 -25
  4. package/dist/mediaplayer/css/player.css +104 -14
  5. package/dist/mediaplayer/css/player.css.map +1 -1
  6. package/dist/mediaplayer/players/html5.js +767 -0
  7. package/dist/mediaplayer/players/youtube.js +470 -0
  8. package/dist/mediaplayer/players.js +35 -0
  9. package/dist/mediaplayer/support.js +134 -0
  10. package/dist/mediaplayer/utils/reminder.js +198 -0
  11. package/dist/mediaplayer/utils/timeObserver.js +149 -0
  12. package/dist/mediaplayer/youtubeManager.js +177 -0
  13. package/dist/mediaplayer.js +1251 -1912
  14. package/dist/previewer.js +25 -19
  15. package/package.json +1 -1
  16. package/scss/basic.scss +1 -0
  17. package/scss/inc/_jquery.nouislider.scss +254 -0
  18. package/src/ckeditor/ckConfigurator.js +10 -1
  19. package/src/itemButtonList/css/item-button-list.css +225 -0
  20. package/src/itemButtonList/css/item-button-list.css.map +1 -0
  21. package/src/mediaEditor/mediaEditorComponent.js +25 -26
  22. package/src/mediaEditor/plugins/mediaDimension/mediaDimensionComponent.js +83 -63
  23. package/src/mediaplayer/css/player.css +104 -14
  24. package/src/mediaplayer/css/player.css.map +1 -1
  25. package/src/mediaplayer/players/html5.js +564 -0
  26. package/src/mediaplayer/players/youtube.js +323 -0
  27. package/src/mediaplayer/players.js +29 -0
  28. package/src/mediaplayer/scss/player.scss +125 -16
  29. package/src/mediaplayer/support.js +126 -0
  30. package/src/mediaplayer/tpl/audio.tpl +6 -0
  31. package/src/mediaplayer/tpl/player.tpl +11 -32
  32. package/src/mediaplayer/tpl/source.tpl +1 -0
  33. package/src/mediaplayer/tpl/video.tpl +6 -0
  34. package/src/mediaplayer/tpl/youtube.tpl +1 -0
  35. package/src/mediaplayer/utils/reminder.js +184 -0
  36. package/src/mediaplayer/utils/timeObserver.js +143 -0
  37. package/src/mediaplayer/youtubeManager.js +161 -0
  38. package/src/mediaplayer.js +1217 -1901
  39. package/src/previewer.js +40 -33
  40. package/src/searchModal/css/advancedSearch.css +190 -0
  41. package/src/searchModal/css/advancedSearch.css.map +1 -0
  42. package/src/searchModal/css/searchModal.css +506 -0
  43. package/src/searchModal/css/searchModal.css.map +1 -0
package/src/previewer.js CHANGED
@@ -11,11 +11,11 @@ import iframeNotifier from 'iframeNotifier';
11
11
  import documentViewer from 'ui/documentViewer';
12
12
  import pdfViewer from 'ui/documentViewer/providers/pdfViewer';
13
13
 
14
- var ns = 'previewer';
15
- var dataNs = 'ui.' + ns;
14
+ const ns = 'previewer';
15
+ const dataNs = `ui.${ns}`;
16
16
 
17
17
  //the plugin defaults
18
- var defaults = {
18
+ const defaults = {
19
19
  containerClass: 'previewer'
20
20
  };
21
21
 
@@ -24,7 +24,7 @@ var defaults = {
24
24
  * @type {Object}
25
25
  * @private
26
26
  */
27
- var _defaultSize = {
27
+ const _defaultSize = {
28
28
  video: {
29
29
  width: 480,
30
30
  height: 300
@@ -39,7 +39,7 @@ var _defaultSize = {
39
39
  }
40
40
  };
41
41
 
42
- var previewGenerator = {
42
+ const previewGenerator = {
43
43
  placeHolder: _.template("<p class='nopreview' data-type='${type}'>${desc}</p>"),
44
44
  youtubeTemplate: _.template("<div data-src=${jsonurl} data-type='video/youtube'></div>"),
45
45
  videoTemplate: _.template("<div data-src=${jsonurl} data-type='${mime}'></div>"),
@@ -60,7 +60,7 @@ var previewGenerator = {
60
60
  * @returns {String} the tags
61
61
  */
62
62
  generate: function generate(type, data) {
63
- var tmpl = this[type + 'Template'];
63
+ const tmpl = this[`${type}Template`];
64
64
  data.jsonurl = JSON.stringify(data.url);
65
65
  if (_.isFunction(tmpl)) {
66
66
  return tmpl(data);
@@ -73,7 +73,7 @@ documentViewer.registerProvider('pdf', pdfViewer);
73
73
  /**
74
74
  * @exports ui/previewer
75
75
  */
76
- var previewer = {
76
+ const previewer = {
77
77
  /**
78
78
  * Initialize the plugin.
79
79
  *
@@ -84,28 +84,27 @@ var previewer = {
84
84
  * @constructor
85
85
  * @param {Object} [options] - the plugin options
86
86
  * @returns {jQueryElement} for chaining
87
+ * @fires playerready when the mediaplayer (video) is sucessfully loaded and configured
87
88
  */
88
89
  init: function(options) {
89
- var self = previewer;
90
-
91
90
  //get options using default
92
91
  options = _.defaults(options || {}, defaults);
93
92
 
94
93
  return this.each(function() {
95
- var $elt = $(this);
94
+ const $elt = $(this);
96
95
  if (!$elt.data(dataNs)) {
97
96
  if (!$elt.hasClass(options.containerClass)) {
98
97
  $elt.addClass(options.containerClass);
99
98
  }
100
99
 
101
100
  $elt.data(dataNs, options);
102
- self._update($elt);
101
+ previewer._update($elt);
103
102
 
104
103
  /**
105
104
  * The plugin has been created.
106
105
  * @event previewer#create.previewer
107
106
  */
108
- $elt.trigger('create.' + ns);
107
+ $elt.trigger(`create.${ns}`);
109
108
  } else {
110
109
  $elt.previewer('update', options);
111
110
  }
@@ -120,14 +119,16 @@ var previewer = {
120
119
  */
121
120
  update: function(data) {
122
121
  return this.each(function() {
123
- var $elt = $(this);
124
- var options = $elt.data(dataNs);
122
+ const $elt = $(this);
123
+ const options = $elt.data(dataNs);
125
124
  $elt.data(dataNs, _.merge(options, data));
126
125
  previewer._update($elt);
127
126
  });
128
127
  },
129
128
  /**
130
129
  * Set the player
130
+ * @param {JQueryElement} $elt
131
+ * @param {Object} player
131
132
  * @private
132
133
  */
133
134
  _setPlayer: function($elt, player) {
@@ -135,6 +136,7 @@ var previewer = {
135
136
  },
136
137
  /**
137
138
  * Uninstalls the player if any
139
+ * @param {JQueryElement} $elt
138
140
  * @private
139
141
  */
140
142
  _clearPlayer: function($elt) {
@@ -149,13 +151,12 @@ var previewer = {
149
151
  * @param {jQueryElement} $elt - the current element
150
152
  */
151
153
  _update: function($elt) {
152
- var self = previewer;
153
- var player;
154
- var $content, $controls;
155
- var options = $elt.data(dataNs);
156
- var content, type;
154
+ let player;
155
+ let $content, $controls;
156
+ let options = $elt.data(dataNs);
157
+ let content, type;
157
158
 
158
- self._clearPlayer($elt);
159
+ previewer._clearPlayer($elt);
159
160
  if (options) {
160
161
  type = options.type || mimeType.getFileType({ mime: options.mime, name: options.url });
161
162
 
@@ -191,24 +192,30 @@ var previewer = {
191
192
  $elt.empty().html($content);
192
193
  if (options.url) {
193
194
  if (type === 'audio' || type === 'video') {
195
+ const defSize = _defaultSize[type] || _defaultSize.video;
196
+ const width = options.width || defSize.width;
197
+ const height = options.height || defSize.height;
194
198
  player = mediaplayer({
195
199
  url: options.url,
196
200
  type: options.mime,
197
- renderTo: $content
198
- }).on('ready', function() {
199
- var defSize = _defaultSize[this.getType()] || _defaultSize.video;
200
- var width = options.width || defSize.width;
201
- var height = options.height || defSize.height;
202
- this.resize(width, height);
201
+ renderTo: $content,
202
+ width,
203
+ height
204
+ })
205
+ .on('ready', function() {
206
+ /**
207
+ * @event playerready
208
+ */
209
+ $elt.trigger('playerready');
203
210
  });
204
- self._setPlayer($elt, player);
211
+ previewer._setPlayer($elt, player);
205
212
 
206
213
  // stop video and free the socket on escape keypress(modal window hides)
207
214
  $('body')
208
215
  .off('keydown.mediaelement')
209
216
  .on('keydown.mediaelement', function(event) {
210
217
  if (event.keyCode === 27) {
211
- self._clearPlayer($elt);
218
+ previewer._clearPlayer($elt);
212
219
  }
213
220
  });
214
221
 
@@ -223,7 +230,7 @@ var previewer = {
223
230
  event.stopPropagation();
224
231
  if (!$(this).closest('.mediaplayer').length) {
225
232
  $controls.off('mousedown.mediaelement');
226
- self._clearPlayer($elt);
233
+ previewer._clearPlayer($elt);
227
234
  }
228
235
  });
229
236
  } else if (type === 'pdf') {
@@ -247,7 +254,7 @@ var previewer = {
247
254
  * The plugin has been created.
248
255
  * @event previewer#update.previewer
249
256
  */
250
- $elt.trigger('update.' + ns);
257
+ $elt.trigger(`update.${ns}`);
251
258
  }
252
259
  },
253
260
  /**
@@ -259,13 +266,13 @@ var previewer = {
259
266
  */
260
267
  destroy: function() {
261
268
  this.each(function() {
262
- var $elt = $(this);
269
+ const $elt = $(this);
263
270
  previewer._clearPlayer($elt);
264
271
  /**
265
272
  * The plugin has been destroyed.
266
273
  * @event previewer#destroy.previewer
267
274
  */
268
- $elt.trigger('destroy.' + ns);
275
+ $elt.trigger(`destroy.${ns}`);
269
276
  });
270
277
  }
271
278
  };
@@ -282,7 +289,7 @@ Pluginifier.register(ns, previewer);
282
289
  */
283
290
  export default function listenDataAttr($container) {
284
291
  $container.find('[data-preview]').each(function() {
285
- var $elt = $(this);
292
+ const $elt = $(this);
286
293
  $elt.previewer({
287
294
  url: $elt.data('preview'),
288
295
  type: $elt.data('preview-type'),
@@ -0,0 +1,190 @@
1
+ /*
2
+ Usage:
3
+ - linear-gradient((color1, color2, color3)) - returns linear-gradient with evenly distributed colors,
4
+ if 3 colors used then the position of each will be 33,33%
5
+ - linear-gradient((color1 0%, color2 30%, color3 80%)) - returns linear-gradient with manually distributed colors,
6
+ first param - color, second - position. Also you can use px or other valid units for set position.
7
+ */
8
+ /* Do not edit */
9
+ .advanced-search-container {
10
+ flex: 1 1 auto;
11
+ min-height: 0;
12
+ display: flex;
13
+ flex-direction: column;
14
+ }
15
+
16
+ .advanced-search-container:not(:empty) {
17
+ padding: 0 0 32px 0;
18
+ }
19
+
20
+ .advanced-search-container .add-criteria-container {
21
+ padding-top: 16px;
22
+ padding-right: 20px;
23
+ position: relative;
24
+ }
25
+
26
+ .advanced-search-container .add-criteria-container .icon-add {
27
+ font-size: 1.6rem;
28
+ position: relative;
29
+ top: 2px;
30
+ margin-right: 8px;
31
+ }
32
+
33
+ .advanced-search-container .add-criteria-container .icon-loop {
34
+ font-size: 1.6rem;
35
+ position: relative;
36
+ top: 2px;
37
+ margin-right: 8px;
38
+ animation: rotating 2s linear infinite;
39
+ display: inline-block;
40
+ }
41
+
42
+ .advanced-search-container .add-criteria-container a {
43
+ text-decoration: none;
44
+ }
45
+
46
+ .advanced-search-container .add-criteria-container .criteria-select2 {
47
+ visibility: hidden;
48
+ position: absolute;
49
+ left: 0;
50
+ width: 70%;
51
+ }
52
+
53
+ .advanced-search-container .add-criteria-container.disabled {
54
+ display: none;
55
+ }
56
+
57
+ .advanced-search-container .advanced-criteria-container {
58
+ overflow-y: auto;
59
+ padding-right: 20px;
60
+ max-height: 100%;
61
+ min-height: 0;
62
+ display: flex;
63
+ flex-direction: column;
64
+ }
65
+
66
+ .advanced-search-container .advanced-criteria-container:not(:empty) {
67
+ padding-top: 16px;
68
+ }
69
+
70
+ .advanced-search-container .advanced-criteria-container .filter-container {
71
+ margin-bottom: 32px;
72
+ }
73
+
74
+ .advanced-search-container .advanced-criteria-container .filter-container:last-child {
75
+ margin-bottom: 16px;
76
+ }
77
+
78
+ .advanced-search-container .advanced-criteria-container .filter-container .icon-result-nok {
79
+ right: 0;
80
+ top: 2px;
81
+ cursor: pointer;
82
+ position: absolute;
83
+ font-size: 1.6rem !important;
84
+ font-weight: 400;
85
+ padding: 0;
86
+ background: transparent;
87
+ box-shadow: none;
88
+ border: 0;
89
+ color: inherit;
90
+ height: 1.8rem;
91
+ z-index: 1;
92
+ border: 1px dashed transparent;
93
+ }
94
+
95
+ .advanced-search-container .advanced-criteria-container .filter-container .icon-result-nok:focus {
96
+ border-color: #333333;
97
+ }
98
+
99
+ .advanced-search-container .advanced-criteria-container .filter-container .filter-bool-group legend {
100
+ padding-bottom: 4px;
101
+ }
102
+
103
+ .advanced-search-container .advanced-criteria-container .filter-container .filter-bool-group input[type="checkbox"] {
104
+ margin-left: 0;
105
+ }
106
+
107
+ .advanced-search-container .advanced-criteria-container .filter-container label {
108
+ width: 100%;
109
+ padding: 0;
110
+ margin: 0;
111
+ }
112
+
113
+ .advanced-search-container .advanced-criteria-container .filter-container .filter-label-text {
114
+ padding-bottom: 4px;
115
+ display: inline-block;
116
+ width: auto;
117
+ vertical-align: middle;
118
+ }
119
+
120
+ .advanced-search-container .advanced-criteria-container .filter-container[data-type='text'] input {
121
+ padding-left: 4px;
122
+ width: 100%;
123
+ }
124
+
125
+ .advanced-search-container .advanced-criteria-container .filter-container[data-type='list'] .select2-container {
126
+ width: 100%;
127
+ }
128
+
129
+ .advanced-search-container .advanced-criteria-container .filter-container[data-type='list'] ul {
130
+ list-style: none;
131
+ padding-left: 0;
132
+ }
133
+
134
+ .advanced-search-container .advanced-criteria-container .filter-container[data-type='list'] input[type='checkbox'] {
135
+ width: initial;
136
+ vertical-align: top;
137
+ }
138
+
139
+ .advanced-search-container .advanced-criteria-container .filter-container[data-type='list'] input[type='text'] {
140
+ width: 100%;
141
+ }
142
+
143
+ .advanced-search-container .advanced-criteria-container .invalid-criteria-warning-container {
144
+ background-color: #cfdfe9;
145
+ border: 1px solid #266d9c;
146
+ padding: 10px;
147
+ }
148
+
149
+ .advanced-search-container .advanced-criteria-container .invalid-criteria-warning-container p {
150
+ margin-bottom: 0;
151
+ }
152
+
153
+ .advanced-search-container .advanced-criteria-container .invalid-criteria-warning-container ul {
154
+ list-style: none;
155
+ font-weight: bolder;
156
+ padding-left: 0;
157
+ }
158
+
159
+ .advanced-search-container .advanced-criteria-container.scrollable {
160
+ padding-right: 10px;
161
+ }
162
+
163
+ .advanced-search-container .advanced-criteria-container.scroll-separator-top {
164
+ border-top: 1px solid #ddd;
165
+ }
166
+
167
+ .advanced-search-container .advanced-criteria-container.scroll-separator-bottom {
168
+ border-bottom: 1px solid #ddd;
169
+ }
170
+
171
+ .criteria-dropdown-select2 {
172
+ border: 1px solid #ddd;
173
+ box-shadow: #ddd 1px 1px 1px;
174
+ }
175
+
176
+ .criteria-dropdown-select2 input {
177
+ min-width: initial;
178
+ background-image: initial;
179
+ }
180
+
181
+ @keyframes rotating {
182
+ from {
183
+ transform: rotate(0deg);
184
+ }
185
+ to {
186
+ transform: rotate(360deg);
187
+ }
188
+ }
189
+
190
+ /*# sourceMappingURL=advancedSearch.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../scss/inc/_functions.scss","../scss/advancedSearch.scss","../../../scss/inc/fonts/_tao-icon-vars.scss","../../../scss/inc/_colors.scss"],"names":[],"mappings":"AAaA;;;;;;CCPC;ACND,gBAAA;ADKA;IACI,cAAc;IACd,aAAa;IACb,aAAa;IACb,sBAAsB;AAI1B;;AARA;IAMQ,mBAAmB;AAM3B;;AAZA;IASQ,iBAAiB;IACjB,mBAAmB;IACnB,kBAAkB;AAO1B;;AAlBA;IAaY,iBAAiB;IACjB,kBAAkB;IAClB,QAAQ;IACR,iBAAiB;AAS7B;;AAzBA;IAmBY,iBAAiB;IACjB,kBAAkB;IAClB,QAAQ;IACR,iBAAiB;IACjB,sCAAsC;IACtC,qBAAqB;AAUjC;;AAlCA;IA2BY,qBAAqB;AAWjC;;AAtCA;IA8BY,kBAAkB;IAClB,kBAAkB;IAClB,OAAO;IACP,UAAU;AAYtB;;AA7CA;IAoCY,aAAa;AAazB;;AAjDA;IAwCQ,gBAAgB;IAChB,mBAAmB;IACnB,gBAAgB;IAChB,aAAa;IACb,aAAa;IACb,sBAAsB;AAa9B;;AA1DA;IA+CY,iBAAiB;AAe7B;;AA9DA;IAkDY,mBAAmB;AAgB/B;;AAlEA;IAoDgB,mBAAmB;AAkBnC;;AAtEA;IAuDgB,QAAQ;IACR,QAAQ;IACR,eAAe;IACf,kBAAkB;IAClB,4BAA4B;IAC5B,gBAAgB;IAChB,UAAU;IACV,uBAAuB;IACvB,gBAAgB;IAChB,SAAS;IACT,cAAc;IACd,cAAc;IACd,UAAU;IACV,8BAA8B;AAmB9C;;AAvFA;IAsEoB,qBEdM;AFmC1B;;AA3FA;IA2EoB,mBAAmB;AAoBvC;;AA/FA;IA8EoB,cAAc;AAqBlC;;AAnGA;IAkFgB,WAAW;IACX,UAAU;IACV,SAAS;AAqBzB;;AAzGA;IAuFgB,mBAAmB;IACnB,qBAAqB;IACrB,WAAW;IACX,sBAAsB;AAsBtC;;AAhHA;IA8FoB,iBAAiB;IACjB,WAAW;AAsB/B;;AArHA;IAoGoB,WAAW;AAqB/B;;AAzHA;IAuGoB,gBAAgB;IAChB,eAAe;AAsBnC;;AA9HA;IA2GoB,cAAc;IACd,mBAAmB;AAuBvC;;AAnIA;IA+GoB,WAAW;AAwB/B;;AAvIA;IAoHY,yBAvHuB;IAwHvB,yBAvHmB;IAwHnB,aAAa;AAuBzB;;AA7IA;IAwHgB,gBAAgB;AAyBhC;;AAjJA;IA2HgB,gBAAgB;IAChB,mBAAmB;IACnB,eAAe;AA0B/B;;AAvJA;IAiIY,mBAAmB;AA0B/B;;AA3JA;IAoIY,0BEhHiB;AF2I7B;;AA/JA;IAuIY,6BEnHiB;AF+I7B;;AAtBA;IACI,sBE1HyB;IF2HzB,4BAA+C;AAyBnD;;AA3BA;IAIQ,kBAAkB;IAClB,yBAAyB;AA2BjC;;AAvBA;IACI;QACI,uBAAuB;IA0B3B;IAxBA;QACI,yBAAyB;IA0B7B;AACJ","file":"advancedSearch.css","sourcesContent":["@mixin iterate-sprite($iconList, $x, $y, $direction, $prefix:'') {\n @each $icon in $iconList {\n #{$prefix}#{$icon} {\n background-position: $x * 1px $y * 1px;\n }\n @if $direction == 'x' {\n $x: $x - 16;\n } @else {\n $y: $y - 16;\n }\n }\n}\n\n/*\nUsage:\n- linear-gradient((color1, color2, color3)) - returns linear-gradient with evenly distributed colors,\n if 3 colors used then the position of each will be 33,33%\n- linear-gradient((color1 0%, color2 30%, color3 80%)) - returns linear-gradient with manually distributed colors,\n first param - color, second - position. Also you can use px or other valid units for set position.\n*/\n@mixin linear-gradient($colorList, $direction: 'to right') {\n $percentage: 0;\n $units: '%';\n $count: length($colorList);\n $increment: 100 / ($count - 1);\n $css: #{$direction + ', '};\n $sep: ', ';\n @each $colorItem in $colorList {\n $color: $colorItem;\n @if (length($colorItem) > 1) {\n $color: nth($colorItem, 1);\n $percentage: nth($colorItem, 2);\n $units: '';\n }\n @if ($percentage >= 100 or index($colorList, $colorItem) == $count) {\n $sep: '';\n }\n $css: #{$css + $color + ' ' + $percentage + $units + $sep};\n $percentage: $percentage + $increment;\n }\n background: linear-gradient( #{$css} );\n}\n\n@mixin grid-unit($span, $numCols: 12, $gutter: 0) {\n $gridPx: 840;\n $rawSpanPx: (($gridPx - ($numCols * $gutter)) / $numCols);\n $spanPx: $rawSpanPx * $span + (($span - 1) * $gutter);\n $spanPercent: widthPerc($spanPx, $gridPx);\n $marginPercent: widthPerc($gutter, $gridPx);\n margin-left: $marginPercent;\n width: $spanPercent;\n}\n\n\n@mixin vendor-prefix($property, $value, $whatToPrefix: property, $prefixes: (-webkit-, -moz-, -ms-, -o-, '')) {\n @if $whatToPrefix == 'property' {\n @each $prefix in $prefixes {\n #{$prefix + $property}: #{$value};\n }\n }\n @else if $whatToPrefix == 'value' {\n @each $prefix in $prefixes {\n #{$property}: #{$prefix + $value};\n }\n }\n}\n@mixin flex-container($wrapBehavior: nowrap, $direction : row) {\n @include vendor-prefix(display, flex, value, (-ms-, -webkit-, ''));\n\n @include vendor-prefix(flex-direction, $direction, property, (-ms-, -webkit-, ''));\n @include vendor-prefix(flex-wrap, $wrapBehavior, property, (-ms-, -webkit-, ''));\n\n @include vendor-prefix(justify-content, flex-start, property, (-webkit-, ''));\n\n @include vendor-prefix(align-content, flex-start, property, (-webkit-, ''));\n\n @include vendor-prefix(align-items, stretch, property, (-webkit-, ''));\n}\n\n@mixin simple-flex-box($width: auto, $minWidth: 1) {\n\n @include vendor-prefix(order, 0, property, (-ms-, -webkit-, ''));\n flex-item-align: stretch;\n -ms-flex-item-align: stretch;\n @include vendor-prefix(align-self, stretch, property, (-webkit-, ''));\n\n // if both, min width and width are set, width will win this conflict\n @if ($width == auto) {\n @if ($minWidth != 1) {\n @include vendor-prefix(flex, 1 1 $minWidth, property, (-ms-, -webkit-, ''));\n }\n @else {\n @include vendor-prefix(flex, 1 1 auto, property, (-ms-, -webkit-, ''));\n // @see https://developer.mozilla.org/en-US/docs/Web/CSS/flex-basis#Values\n // for a discussion auto vs. main-size\n @include vendor-prefix(flex, 1 1, property, (-ms-, -webkit-, ''));\n }\n }\n @else {\n @include vendor-prefix(flex, 0 0 $width, property, (-ms-, -webkit-, ''));\n }\n}\n\n\n@mixin box-shadow($horiz: 1px, $vert: 1px, $blur: 2px, $spread: 0, $color: rgba(0, 0, 0, .2)) {\n @include vendor-prefix(box-shadow, $horiz $vert $blur $spread $color, property);\n}\n\n@mixin simple-border($color: #ddd) {\n border: 1px solid $color;\n border-radius: 2px;\n -webkit-border-radius: 2px;\n}\n\n@mixin border-radius($radius: 2) {\n -moz-border-radius: $radius * 1px;\n -webkit-border-radius: $radius * 1px;\n border-radius: $radius * 1px;\n}\n\n@mixin border-radius-top($radius: 2) {\n -webkit-border-top-left-radius: $radius * 1px;\n -webkit-border-top-right-radius: $radius * 1px;\n -moz-border-radius-topleft: $radius * 1px;\n -moz-border-radius-topright: $radius * 1px;\n border-top-left-radius: $radius * 1px;\n border-top-right-radius: $radius * 1px;\n}\n\n@mixin border-radius-bottom($radius: 2) {\n -webkit-border-bottom-right-radius: $radius * 1px;\n -webkit-border-bottom-left-radius: $radius * 1px;\n -moz-border-radius-bottomright: $radius * 1px;\n -moz-border-radius-bottomleft: $radius * 1px;\n border-bottom-right-radius: $radius * 1px;\n border-bottom-left-radius: $radius * 1px;\n}\n\n@mixin border-radius-left($radius: 2) {\n -webkit-border-top-left-radius: $radius * 1px;\n -webkit-border-bottom-left-radius: $radius * 1px;\n -moz-border-radius-topleft: $radius * 1px;\n -moz-border-radius-bottomleft: $radius * 1px;\n border-top-left-radius: $radius * 1px;\n border-bottom-left-radius: $radius * 1px;\n}\n\n@mixin border-radius-right($radius: 2) {\n -webkit-border-top-right-radius: $radius * 1px;\n -webkit-border-bottom-right-radius: $radius * 1px;\n -moz-border-radius-topright: $radius * 1px;\n -moz-border-radius-bottomright: $radius * 1px;\n border-top-right-radius: $radius * 1px;\n border-bottom-right-radius: $radius * 1px;\n}\n\n@mixin border-radius-top-left($radius: 2) {\n -webkit-border-top-left-radius: $radius * 1px;\n -moz-border-radius-topleft: $radius * 1px;\n border-top-left-radius: $radius * 1px;\n}\n\n@mixin border-radius-top-right($radius: 2) {\n -webkit-border-top-right-radius: $radius * 1px;\n -moz-border-radius-topright: $radius * 1px;\n border-top-right-radius: $radius * 1px;\n}\n\n@mixin border-radius-bottom-right($radius: 2) {\n -webkit-border-bottom-right-radius: $radius * 1px;\n -moz-border-radius-bottomright: $radius * 1px;\n border-bottom-right-radius: $radius * 1px;\n}\n\n@mixin border-radius-bottom-left($radius: 2) {\n -webkit-border-bottom-left-radius: $radius * 1px;\n -moz-border-radius-bottomleft: $radius * 1px;\n border-bottom-left-radius: $radius * 1px;\n}\n\n@mixin border-box() {\n -moz-box-sizing: border-box;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n\n@function whiten($color, $white: 0.3) {\n @return mix(#fff, $color, ($white * 100) * 1%);\n}\n\n@function blacken($color, $black: 0.3) {\n @return mix(#000, $color, ($black * 100) * 1%);\n}\n\n@function widthPerc($colWidth, $context) {\n @return ($colWidth * 100 / $context) * 1%\n}\n\n@function remDist($fontSizePx) {\n @return ($fontSizePx / 10) * 1rem\n}\n\n@function black($alpha: 1) {\n @return (rgba(0, 0, 0, $alpha))\n}\n\n@function white($alpha: 1) {\n @return (rgba(255, 255, 255, $alpha))\n}\n\n@mixin font-size($remPx, $important: false) {\n @if $important == true {\n font-size: ($remPx) * 1px !important;\n font-size: ($remPx / 10) * 1rem !important;\n }\n @else {\n font-size: ($remPx) * 1px;\n font-size: ($remPx / 10) * 1rem;\n }\n}\n\n\n@mixin keyframes($name) {\n @-o-keyframes #{$name} { @content };\n @-moz-keyframes #{$name} { @content };\n @-webkit-keyframes #{$name} { @content };\n @keyframes #{$name} { @content };\n}\n\n\n@mixin animation($value, $type:'') {\n $animation: animation;\n @if $type != '' {\n $animation: $animation + '-' + $type;\n }\n @include vendor-prefix($animation, $value, property);\n}\n\n/// CSS transition mixin to the current selection (apply also vendor prefixes).\n/// See <https://developer.mozilla.org/en-US/docs/Web/CSS/transition> for the values\n///\n/// @param {property} [$type = all] the CSS property to apply the transition to\n/// @param {time} [$duration = .5s] the transition property\n/// @param {timing-function} [$effect = ease-out] the transition property\n@mixin transition($type : all, $duration : 0.5s, $effect : ease-out, $delay : 0s){\n @include vendor-prefix(transition, $type + ', ' + $duration + ', ' + $effect + ', ' + $delay, property);\n}\n\n@mixin fade($duration: 1s){\n\n @include keyframes(fade) {\n 0% {opacity:0;}\n 50% {opacity:1;}\n 100% {opacity:0;}\n }\n\n @include vendor-prefix(animation, fade 1s forwards, property);\n}\n\n@mixin repeat(){\n @include animation(infinite, iteration-count);\n}\n\n@mixin largeHeading() {\n @include font-size(20);\n font-family: $headingFont;\n font-style: normal;\n}\n\n@mixin disableSelect() {\n @include vendor-prefix(user-select, none, property);\n}\n","@import 'inc/bootstrap';\n\n$invalidCriteriaBackground: #cfdfe9;\n$invalidCriteriaBorder: #266d9c;\n\n.advanced-search-container {\n flex: 1 1 auto;\n min-height: 0;\n display: flex;\n flex-direction: column;\n &:not(:empty) {\n padding: 0 0 32px 0;\n }\n .add-criteria-container {\n padding-top: 16px;\n padding-right: 20px;\n position: relative;\n .icon-add {\n font-size: 1.6rem;\n position: relative;\n top: 2px;\n margin-right: 8px;\n }\n .icon-loop {\n font-size: 1.6rem;\n position: relative;\n top: 2px;\n margin-right: 8px;\n animation: rotating 2s linear infinite;\n display: inline-block;\n }\n a {\n text-decoration: none;\n }\n .criteria-select2 {\n visibility: hidden;\n position: absolute;\n left: 0;\n width: 70%;\n }\n &.disabled {\n display: none;\n }\n }\n .advanced-criteria-container {\n overflow-y: auto;\n padding-right: 20px;\n max-height: 100%;\n min-height: 0;\n display: flex;\n flex-direction: column;\n &:not(:empty) {\n padding-top: 16px;\n }\n .filter-container {\n margin-bottom: 32px;\n &:last-child {\n margin-bottom: 16px;\n }\n .icon-result-nok {\n right: 0;\n top: 2px;\n cursor: pointer;\n position: absolute;\n font-size: 1.6rem !important;\n font-weight: 400;\n padding: 0;\n background: transparent;\n box-shadow: none;\n border: 0;\n color: inherit;\n height: 1.8rem;\n z-index: 1;\n border: 1px dashed transparent;\n &:focus {\n border-color: $darkBar;\n }\n }\n .filter-bool-group {\n legend {\n padding-bottom: 4px;\n }\n input[type=\"checkbox\"] {\n margin-left: 0;\n }\n }\n label {\n width: 100%;\n padding: 0;\n margin: 0;\n }\n .filter-label-text {\n padding-bottom: 4px;\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n &[data-type='text'] {\n input {\n padding-left: 4px;\n width: 100%;\n }\n }\n &[data-type='list'] {\n .select2-container {\n width: 100%;\n }\n ul {\n list-style: none;\n padding-left: 0;\n }\n input[type='checkbox'] {\n width: initial;\n vertical-align: top;\n }\n input[type='text'] {\n width: 100%;\n }\n }\n }\n .invalid-criteria-warning-container {\n background-color: $invalidCriteriaBackground;\n border: 1px solid $invalidCriteriaBorder;\n padding: 10px;\n p {\n margin-bottom: 0;\n }\n ul {\n list-style: none;\n font-weight: bolder;\n padding-left: 0;\n }\n }\n &.scrollable {\n padding-right: 10px;\n }\n &.scroll-separator-top {\n border-top: 1px solid $uiGeneralContentBorder;\n }\n &.scroll-separator-bottom {\n border-bottom: 1px solid $uiGeneralContentBorder;\n }\n }\n}\n\n// select2 appends dropdown options directly to body, so need a custom class to isolate custom styles\n.criteria-dropdown-select2 {\n border: 1px solid $uiGeneralContentBorder;\n box-shadow: $uiGeneralContentBorder 1px 1px 1px;\n input {\n min-width: initial;\n background-image: initial;\n }\n}\n\n@keyframes rotating {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\n/*# sourceMappingURL=advancedSearch.css.map */","/* Do not edit */@mixin tao-icon-setup {\n /* use !important to prevent issues with browser extensions that change fonts */\n font-family: 'tao' !important;\n speak: none;\n font-style: normal;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n\n /* Better Font Rendering =========== */\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n@mixin icon-offline { content: \"\\e913\"; }\n@mixin icon-online { content: \"\\e914\"; }\n@mixin icon-tab { content: \"\\e90d\"; }\n@mixin icon-untab { content: \"\\e90e\"; }\n@mixin icon-multi-select { content: \"\\e90b\"; }\n@mixin icon-clipboard { content: \"\\e90a\"; }\n@mixin icon-filebox { content: \"\\e909\"; }\n@mixin icon-click-to-speak { content: \"\\e907\"; }\n@mixin icon-speech-bubble { content: \"\\f0e5\"; }\n@mixin icon-microphone { content: \"\\f130\"; }\n@mixin icon-microphone-off { content: \"\\f131\"; }\n@mixin icon-disconnect { content: \"\\e905\"; }\n@mixin icon-connect { content: \"\\e906\"; }\n@mixin icon-eliminate { content: \"\\e904\"; }\n@mixin icon-wheelchair { content: \"\\e903\"; }\n@mixin icon-text-marker { content: \"\\e902\"; }\n@mixin icon-unshield { content: \"\\e32a\"; }\n@mixin icon-shield { content: \"\\e8e8\"; }\n@mixin icon-tree { content: \"\\e6b4\"; }\n@mixin icon-home { content: \"\\e6b3\"; }\n@mixin icon-shared-file { content: \"\\e6b2\"; }\n@mixin icon-end-attempt { content: \"\\e603\"; }\n@mixin icon-icon { content: \"\\f1c5\"; }\n@mixin icon-radio-bg { content: \"\\e600\"; }\n@mixin icon-checkbox-bg { content: \"\\e601\"; }\n@mixin icon-tag { content: \"\\e602\"; }\n@mixin icon-style { content: \"\\e604\"; }\n@mixin icon-ownership-transfer { content: \"\\e605\"; }\n@mixin icon-property-advanced { content: \"\\e606\"; }\n@mixin icon-property-add { content: \"\\e607\"; }\n@mixin icon-repository-add { content: \"\\e608\"; }\n@mixin icon-repository-remove { content: \"\\e609\"; }\n@mixin icon-repository { content: \"\\e60a\"; }\n@mixin icon-result-server { content: \"\\e60b\"; }\n@mixin icon-folder { content: \"\\e60c\"; }\n@mixin icon-folder-open { content: \"\\e60d\"; }\n@mixin icon-left { content: \"\\e60e\"; }\n@mixin icon-right { content: \"\\e60f\"; }\n@mixin icon-up { content: \"\\e610\"; }\n@mixin icon-down { content: \"\\e611\"; }\n@mixin icon-undo { content: \"\\e612\"; }\n@mixin icon-redo { content: \"\\e613\"; }\n@mixin icon-screen { content: \"\\e614\"; }\n@mixin icon-laptop { content: \"\\e615\"; }\n@mixin icon-tablet { content: \"\\e616\"; }\n@mixin icon-phone { content: \"\\e617\"; }\n@mixin icon-move { content: \"\\e618\"; }\n@mixin icon-bin { content: \"\\e619\"; }\n@mixin icon-shuffle { content: \"\\e61a\"; }\n@mixin icon-print { content: \"\\e61b\"; }\n@mixin icon-tools { content: \"\\e61c\"; }\n@mixin icon-settings { content: \"\\e61d\"; }\n@mixin icon-video { content: \"\\e61e\"; }\n@mixin icon-find { content: \"\\e61f\"; }\n@mixin icon-image { content: \"\\e620\"; }\n@mixin icon-edit { content: \"\\e621\"; }\n@mixin icon-document { content: \"\\e622\"; }\n@mixin icon-resize-grid { content: \"\\e623\"; }\n@mixin icon-resize { content: \"\\e624\"; }\n@mixin icon-help { content: \"\\e625\"; }\n@mixin icon-mobile-menu { content: \"\\e626\"; }\n@mixin icon-fix { content: \"\\e627\"; }\n@mixin icon-unlock { content: \"\\e628\"; }\n@mixin icon-lock { content: \"\\e629\"; }\n@mixin icon-ul { content: \"\\e62a\"; }\n@mixin icon-ol { content: \"\\e62b\"; }\n@mixin icon-email { content: \"\\e62c\"; }\n@mixin icon-download { content: \"\\e62d\"; }\n@mixin icon-logout { content: \"\\e62e\"; }\n@mixin icon-login { content: \"\\e62f\"; }\n@mixin icon-spinner { content: \"\\e630\"; }\n@mixin icon-preview { content: \"\\e631\"; }\n@mixin icon-external { content: \"\\e632\"; }\n@mixin icon-time { content: \"\\e633\"; }\n@mixin icon-save { content: \"\\e634\"; }\n@mixin icon-warning { content: \"\\e635\"; }\n@mixin icon-add { content: \"\\e636\"; }\n@mixin icon-error { content: \"\\e900\"; }\n@mixin icon-close { content: \"\\e637\"; }\n@mixin icon-success { content: \"\\e638\"; }\n@mixin icon-remove { content: \"\\e639\"; }\n@mixin icon-info { content: \"\\e63a\"; }\n@mixin icon-danger { content: \"\\e63b\"; }\n@mixin icon-users { content: \"\\e63c\"; }\n@mixin icon-user { content: \"\\e63d\"; }\n@mixin icon-test-taker { content: \"\\e63e\"; }\n@mixin icon-test-takers { content: \"\\e63f\"; }\n@mixin icon-item { content: \"\\e640\"; }\n@mixin icon-test { content: \"\\e641\"; }\n@mixin icon-delivery { content: \"\\e642\"; }\n@mixin icon-eye-slash { content: \"\\e643\"; }\n@mixin icon-result { content: \"\\e644\"; }\n@mixin icon-delivery-small { content: \"\\e645\"; }\n@mixin icon-upload { content: \"\\e646\"; }\n@mixin icon-result-small { content: \"\\e647\"; }\n@mixin icon-mobile-preview { content: \"\\e648\"; }\n@mixin icon-extension { content: \"\\e649\"; }\n@mixin icon-desktop-preview { content: \"\\e64a\"; }\n@mixin icon-tablet-preview { content: \"\\e64b\"; }\n@mixin icon-insert-horizontal-line { content: \"\\e64c\"; }\n@mixin icon-table { content: \"\\e64d\"; }\n@mixin icon-anchor { content: \"\\e64e\"; }\n@mixin icon-unlink { content: \"\\e64f\"; }\n@mixin icon-link { content: \"\\e650\"; }\n@mixin icon-right-left { content: \"\\e651\"; }\n@mixin icon-left-right { content: \"\\e652\"; }\n@mixin icon-special-character { content: \"\\e653\"; }\n@mixin icon-source { content: \"\\e654\"; }\n@mixin icon-new-page { content: \"\\e655\"; }\n@mixin icon-templates { content: \"\\e656\"; }\n@mixin icon-cut { content: \"\\e657\"; }\n@mixin icon-replace { content: \"\\e658\"; }\n@mixin icon-copy { content: \"\\e659\"; }\n@mixin icon-paste { content: \"\\e65a\"; }\n@mixin icon-select-all { content: \"\\e65b\"; }\n@mixin icon-paste-text { content: \"\\e65c\"; }\n@mixin icon-paste-word { content: \"\\e65d\"; }\n@mixin icon-bold { content: \"\\e65e\"; }\n@mixin icon-italic { content: \"\\e65f\"; }\n@mixin icon-underline { content: \"\\e660\"; }\n@mixin icon-subscript { content: \"\\e661\"; }\n@mixin icon-superscript { content: \"\\e662\"; }\n@mixin icon-strike-through { content: \"\\e663\"; }\n@mixin icon-decrease-indent { content: \"\\e664\"; }\n@mixin icon-increase-indent { content: \"\\e665\"; }\n@mixin icon-block-quote { content: \"\\e666\"; }\n@mixin icon-div-container { content: \"\\e667\"; }\n@mixin icon-align-left { content: \"\\e668\"; }\n@mixin icon-center { content: \"\\e669\"; }\n@mixin icon-align-right { content: \"\\e66a\"; }\n@mixin icon-justify { content: \"\\e66b\"; }\n@mixin icon-choice { content: \"\\e66c\"; }\n@mixin icon-inline-choice { content: \"\\e66d\"; }\n@mixin icon-match { content: \"\\e66e\"; }\n@mixin icon-associate { content: \"\\e66f\"; }\n@mixin icon-media { content: \"\\e670\"; }\n@mixin icon-graphic-order { content: \"\\e671\"; }\n@mixin icon-hotspot { content: \"\\e672\"; }\n@mixin icon-graphic-gap { content: \"\\e673\"; }\n@mixin icon-graphic-associate { content: \"\\e674\"; }\n@mixin icon-select-point { content: \"\\e675\"; }\n@mixin icon-pin { content: \"\\e676\"; }\n@mixin icon-import { content: \"\\e677\"; }\n@mixin icon-export { content: \"\\e678\"; }\n@mixin icon-move-item { content: \"\\e679\"; }\n@mixin icon-meta-data { content: \"\\e67a\"; }\n@mixin icon-slider { content: \"\\e67b\"; }\n@mixin icon-summary-report { content: \"\\e67c\"; }\n@mixin icon-text-entry { content: \"\\e67d\"; }\n@mixin icon-extended-text { content: \"\\e67e\"; }\n@mixin icon-eraser { content: \"\\e67f\"; }\n@mixin icon-row { content: \"\\e680\"; }\n@mixin icon-column { content: \"\\e681\"; }\n@mixin icon-text-color { content: \"\\e682\"; }\n@mixin icon-background-color { content: \"\\e683\"; }\n@mixin icon-spell-check { content: \"\\e684\"; }\n@mixin icon-polygon { content: \"\\e685\"; }\n@mixin icon-rectangle { content: \"\\e686\"; }\n@mixin icon-gap-match { content: \"\\e687\"; }\n@mixin icon-order { content: \"\\e688\"; }\n@mixin icon-hottext { content: \"\\e689\"; }\n@mixin icon-free-form { content: \"\\e68a\"; }\n@mixin icon-step-backward { content: \"\\e68b\"; }\n@mixin icon-fast-backward { content: \"\\e68c\"; }\n@mixin icon-backward { content: \"\\e68d\"; }\n@mixin icon-play { content: \"\\e68e\"; }\n@mixin icon-pause { content: \"\\e68f\"; }\n@mixin icon-stop { content: \"\\e690\"; }\n@mixin icon-forward { content: \"\\e691\"; }\n@mixin icon-fast-forward { content: \"\\e692\"; }\n@mixin icon-step-forward { content: \"\\e693\"; }\n@mixin icon-ellipsis { content: \"\\e694\"; }\n@mixin icon-circle { content: \"\\e695\"; }\n@mixin icon-target { content: \"\\e696\"; }\n@mixin icon-guide-arrow { content: \"\\e697\"; }\n@mixin icon-range-slider-right { content: \"\\e698\"; }\n@mixin icon-range-slider-left { content: \"\\e699\"; }\n@mixin icon-radio-checked { content: \"\\e69a\"; }\n@mixin icon-checkbox-indeterminate { content: \"\\e901\"; }\n@mixin icon-checkbox { content: \"\\e69b\"; }\n@mixin icon-checkbox-crossed { content: \"\\e69c\"; }\n@mixin icon-checkbox-checked { content: \"\\e69d\"; }\n@mixin icon-result-nok { content: \"\\e69e\"; }\n@mixin icon-result-ok { content: \"\\e69f\"; }\n@mixin icon-not-evaluated { content: \"\\e6a0\"; }\n@mixin icon-filter { content: \"\\e6a1\"; }\n@mixin icon-translate { content: \"\\e6a2\"; }\n@mixin icon-eject { content: \"\\e6a3\"; }\n@mixin icon-continue { content: \"\\e6a4\"; }\n@mixin icon-radio { content: \"\\e6a5\"; }\n@mixin icon-sphere { content: \"\\e6a6\"; }\n@mixin icon-reset { content: \"\\e6a7\"; }\n@mixin icon-smaller { content: \"\\e6a8\"; }\n@mixin icon-larger { content: \"\\e6a9\"; }\n@mixin icon-clock { content: \"\\e6aa\"; }\n@mixin icon-font { content: \"\\e6ab\"; }\n@mixin icon-maths { content: \"\\e6ac\"; }\n@mixin icon-grip { content: \"\\e6ad\"; }\n@mixin icon-rubric { content: \"\\e6ae\"; }\n@mixin icon-audio { content: \"\\e6af\"; }\n@mixin icon-grip-h { content: \"\\e6b0\"; }\n@mixin icon-magicwand { content: \"\\e6b1\"; }\n@mixin icon-loop { content: \"\\ea2e\"; }\n@mixin icon-calendar { content: \"\\e953\"; }\n@mixin icon-reload { content: \"\\e984\"; }\n@mixin icon-speed { content: \"\\e9a6\"; }\n@mixin icon-volume { content: \"\\ea27\"; }\n@mixin icon-contrast { content: \"\\e9d5\"; }\n@mixin icon-headphones { content: \"\\e910\"; }\n@mixin icon-compress { content: \"\\f066\"; }\n@mixin icon-map-o { content: \"\\f278\"; }\n@mixin icon-variable { content: \"\\e908\"; }\n@mixin icon-tooltip { content: \"\\e90c\"; }\n@mixin icon-globe { content: \"\\e9c9\"; }\n@mixin icon-highlighter { content: \"\\e90f\"; }\n@mixin icon-eliminate-crossed { content: \"\\e911\"; }\n@mixin icon-play-from-here { content: \"\\e912\"; }\n@mixin icon-wrap-inline { content: \"\\e917\"; }\n@mixin icon-wrap-right { content: \"\\e915\"; }\n@mixin icon-wrap-left { content: \"\\e916\"; }\n","// buttons and alerts\n$success: rgb(14, 145, 75);\n$info: rgb(14, 93, 145);\n$warning: rgb(216, 174, 91);\n$danger: rgb(201, 96, 67);\n$error: rgb(186, 18, 43);\n$activeInteraction: rgb(195, 90, 19);\n\n// corporate identity\n$logoRed: rgb(186, 18, 43);\n$grey: rgb(173, 161, 148);\n$darkBlueGrey: rgb(164, 187, 197);\n$mediumBlueGrey: rgb(193, 212, 220);\n$lightBlueGrey: rgb(228, 236, 239);\n$brownRedGrey: rgb(154, 137, 123);\n$darkBrown: rgb(111, 99, 89);\n$websiteBorder: rgb(141, 148, 158);\n\n// ui elements, these should only variations of the above\n// naming convention: jQueryUi theme roller -> camelCase\n\n$textColor: #222;\n$textHighlight: white;\n\n$uiGeneralContentBg: white();\n$uiGeneralContentBorder: #ddd;\n\n$uiHeaderBg: #D4D5D7;\n\n$uiClickableDefaultBg: #f3f1ef;\n$uiClickableHoverBg: whiten($info, .2);\n//$uiClickableActiveBg: $uiHeaderBg;\n$uiClickableActiveBg: whiten($websiteBorder, .2);\n//$uiClickableActiveBg: #aaa;\n\n$uiSelectableSelectedBg: whiten($info, .2);\n$uiSelectableSelectedHoverBg: whiten($info, .1);\n$uiSelectableHoverBg: whiten($info, .9);\n\n$uiOverlay: $lightBlueGrey;\n\n// sidebars etc.\n$canvas: mix(#fff, $grey, 85%);\n\n// colors taken from feedback.scss\n$successBgColor: whiten($success, .8);\n$successBorderColor: whiten($success, .1);\n\n$infoBgColor: whiten($info, .8);\n$infoBorderColor: whiten($info, .1);\n\n$warningBgColor: whiten($warning, .8);\n$warningBorderColor: whiten($warning, .1);\n\n$dangerBgColor: whiten($danger, .8);\n$dangerBorderColor: whiten($danger, .1);\n\n$errorBgColor: whiten($error, .8);\n$errorBorderColor: whiten($error, .1);\n\n\n$darkBar : rgb(51, 51, 51);\n$darkBarTxt : rgb(230, 230, 230);\n$darkBarIcon : rgb(220, 220, 220);\n\n$actionLinkColor: #276D9B;\n$actionLinkHoverColor: #4F83A7;\n\n\n$colorWheel-01: #C3BA13;\n$colorWheel-02: #84A610;\n$colorWheel-03: #2B8E0E;\n$colorWheel-04: #0F9787;\n$colorWheel-05: #0E5D91;\n$colorWheel-06: #0D2689;\n$colorWheel-07: #400D83;\n$colorWheel-08: #960E7D;\n$colorWheel-09: #BA122B;\n$colorWheel-10: #C34713;\n$colorWheel-11: #C36F13;\n$colorWheel-12: #C39413;\n"]}