@oat-sa/tao-core-ui 3.8.1 → 3.9.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.
@@ -77,7 +77,11 @@ define(['exports', 'context', 'lodash'], function (exports, context, _) { 'use s
77
77
  }
78
78
  if (!context.featureFlags['FEATURE_FLAG_DISABLE_FIGURE_WIDGET'] && prevClassName !== className) {
79
79
  // Re-build Figure widget to toggle between inline/block
80
- const parent = searchRecurse(widget.element.bdy.rootElement.bdy, widget.serial);
80
+ const parent = searchRecurse(widget.element.rootElement.bdy, widget.serial);
81
+ // If it's Image not Figure (Choice, GapMatch/HotText qti-flow-container)
82
+ if (!parent) {
83
+ return;
84
+ }
81
85
  // If Figure is not in A-block (Prompt, TextReader PCI)
82
86
  if (parent.contentModel === 'inlineStatic' || widget.$container.closest('.qti-customInteraction').length) {
83
87
  _.defer(() => {
@@ -247,14 +247,26 @@ define(['jquery', 'lodash', 'handlebars', 'lib/handlebars/helpers', 'css!ui/sear
247
247
  + escapeExpression(((stack1 = ((stack1 = (depth0 && depth0.criterion)),stack1 == null || stack1 === false ? stack1 : stack1.type)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))
248
248
  + "\">\n <button class=\"icon-result-nok\" aria-label=\""
249
249
  + escapeExpression((helper = helpers.__ || (depth0 && depth0.__),options={hash:{},data:data},helper ? helper.call(depth0, "Remove criteria", options) : helperMissing.call(depth0, "__", "Remove criteria", options)))
250
- + "\"></button>\n <label>\n <span class=\"filter-label-text\">"
250
+ + "\"></button>\n <div class=\"criterion-container\">\n <span class=\"filter-label-text\">"
251
251
  + escapeExpression(((stack1 = ((stack1 = (depth0 && depth0.criterion)),stack1 == null || stack1 === false ? stack1 : stack1.label)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))
252
252
  + "\n ";
253
253
  stack1 = helpers['if'].call(depth0, ((stack1 = (depth0 && depth0.criterion)),stack1 == null || stack1 === false ? stack1 : stack1.isDuplicated), {hash:{},inverse:self.noop,fn:self.program(1, program1, data),data:data});
254
254
  if(stack1 || stack1 === 0) { buffer += stack1; }
255
- buffer += "\n </span>\n <input type='text' name=\""
255
+ buffer += "\n </span>\n <div class=\"logic-radio-group\">\n <label class=\"logic-label\">\n <input type=\"radio\" name=\""
256
+ + escapeExpression(((stack1 = ((stack1 = (depth0 && depth0.criterion)),stack1 == null || stack1 === false ? stack1 : stack1.id)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))
257
+ + "-logic\" value=\"LOGIC_AND\"><span class=\"icon-radio\"></span> "
258
+ + escapeExpression((helper = helpers.__ || (depth0 && depth0.__),options={hash:{},data:data},helper ? helper.call(depth0, "Exact match", options) : helperMissing.call(depth0, "__", "Exact match", options)))
259
+ + "\n </label>\n <label class=\"logic-label\">\n <input type=\"radio\" name=\""
260
+ + escapeExpression(((stack1 = ((stack1 = (depth0 && depth0.criterion)),stack1 == null || stack1 === false ? stack1 : stack1.id)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))
261
+ + "-logic\" value=\"LOGIC_OR\"><span class=\"icon-radio\"></span> "
262
+ + escapeExpression((helper = helpers.__ || (depth0 && depth0.__),options={hash:{},data:data},helper ? helper.call(depth0, "In", options) : helperMissing.call(depth0, "__", "In", options)))
263
+ + "\n </label>\n <label class=\"logic-label\">\n <input type=\"radio\" name=\""
256
264
  + escapeExpression(((stack1 = ((stack1 = (depth0 && depth0.criterion)),stack1 == null || stack1 === false ? stack1 : stack1.id)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))
257
- + "-select\">\n </label>\n</div>\n";
265
+ + "-logic\" value=\"LOGIC_NOT\"><span class=\"icon-radio\"></span> "
266
+ + escapeExpression((helper = helpers.__ || (depth0 && depth0.__),options={hash:{},data:data},helper ? helper.call(depth0, "Not in", options) : helperMissing.call(depth0, "__", "Not in", options)))
267
+ + "\n </label>\n </div>\n <input type='text' name=\""
268
+ + escapeExpression(((stack1 = ((stack1 = (depth0 && depth0.criterion)),stack1 == null || stack1 === false ? stack1 : stack1.id)),typeof stack1 === functionType ? stack1.apply(depth0) : stack1))
269
+ + "-select\">\n </div>\n</div>\n";
258
270
  return buffer;
259
271
  });
260
272
  function listSelectCriterionTpl(data, options, asString) {
@@ -404,6 +416,11 @@ define(['jquery', 'lodash', 'handlebars', 'lib/handlebars/helpers', 'css!ui/sear
404
416
  text: 'text',
405
417
  list: 'list'
406
418
  };
419
+ const criteriaLogic = {
420
+ and: 'LOGIC_AND',
421
+ or: 'LOGIC_OR',
422
+ not: 'LOGIC_NOT'
423
+ };
407
424
  let isAdvancedSearchStatusEnabled;
408
425
  let isCriteriaListUpdated = false;
409
426
 
@@ -453,6 +470,7 @@ define(['jquery', 'lodash', 'handlebars', 'lib/handlebars/helpers', 'css!ui/sear
453
470
  _.forEach(criteriaState, criterion => {
454
471
  criterion.rendered = false;
455
472
  criterion.value = null;
473
+ criterion.logic = null;
456
474
  });
457
475
  },
458
476
  /**
@@ -472,8 +490,14 @@ define(['jquery', 'lodash', 'handlebars', 'lib/handlebars/helpers', 'css!ui/sear
472
490
  }
473
491
  } else if (renderedCriterion.type === criteriaTypes.list) {
474
492
  if (renderedCriterion.value && renderedCriterion.value.length > 0) {
475
- /* Temp replaced OR with AND. See ADF-7 for details */
476
- query += `${queryParam}:${renderedCriterion.value.join(' AND ')}`;
493
+ if (renderedCriterion.value.length === 1 && renderedCriterion.logic === criteriaLogic.not) {
494
+ //we have to pass NOT logic anyways, so add empty member to have NOT logic modifier in the query
495
+ renderedCriterion.value.push('');
496
+ }
497
+ query += renderedCriterion.value.map(value => `${queryParam}:${value}`).join(` ${renderedCriterion.logic} `);
498
+
499
+ //we need to remove empty member from renderedCriterion.value because renderedCriterion can be reused after the query is done
500
+ renderedCriterion.value = renderedCriterion.value.filter(value => value !== '');
477
501
  }
478
502
  }
479
503
  });
@@ -749,10 +773,16 @@ define(['jquery', 'lodash', 'handlebars', 'lib/handlebars/helpers', 'css!ui/sear
749
773
  if (criterion.value) {
750
774
  $$1(`input[name=${criterion.id}-select]`, $criterionContainer).select2('data', initialCriterion);
751
775
  }
776
+ criterion.logic = criterion.logic || criteriaLogic.and;
777
+ $$1(`input[name="${criterion.id}-logic"][value="${criterion.logic}"]`, $criterionContainer).prop('checked', true);
752
778
  // set event to bind input value to critariaState
753
779
  $$1(`input[name=${criterion.id}-select]`, $criterionContainer).on('change', event => {
754
780
  criterion.value = event.val;
755
781
  });
782
+ // set event to bind logic selector to critariaState
783
+ $$1(`input[name="${criterion.id}-logic"]`, $criterionContainer).on('change', event => {
784
+ criterion.logic = event.target.value;
785
+ });
756
786
  } else {
757
787
  // set initial value
758
788
  if (criterion.value) {
@@ -83,7 +83,7 @@ Usage:
83
83
  .advanced-search-container .advanced-criteria-container .filter-container .filter-bool-group input[type=checkbox] {
84
84
  margin-left: 0;
85
85
  }
86
- .advanced-search-container .advanced-criteria-container .filter-container label {
86
+ .advanced-search-container .advanced-criteria-container .filter-container div.criterion-container {
87
87
  width: 100%;
88
88
  padding: 0;
89
89
  margin: 0;
@@ -112,6 +112,11 @@ Usage:
112
112
  .advanced-search-container .advanced-criteria-container .filter-container[data-type=list] input[type=text] {
113
113
  width: 100%;
114
114
  }
115
+ .advanced-search-container .advanced-criteria-container .filter-container .logic-radio-group {
116
+ display: flex;
117
+ justify-content: flex-start;
118
+ gap: 16px;
119
+ }
115
120
  .advanced-search-container .advanced-criteria-container .invalid-criteria-warning-container {
116
121
  background-color: #cfdfe9;
117
122
  border: 1px solid #266d9c;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../scss/inc/_functions.scss","../../../scss/inc/fonts/_tao-icon-vars.scss","../scss/advancedSearch.scss%23sass","../scss/advancedSearch.scss","../../../scss/inc/_colors.scss"],"names":[],"mappings":"AAaA;;;;;;CAAA;AAoQA,oEAAA;ACjRA,gBAAA;ACKA;EACI,cAAA;EACA,aAAA;EACA,aAAA;EACA,sBAAA;ACKJ;ADJI;EACI,mBAAA;ACMR;ADJI;EACI,iBAAA;EACA,mBAAA;EACA,kBAAA;ACMR;ADLQ;EACI,iBAAA;EACA,kBAAA;EACA,QAAA;EACA,iBAAA;EACA,sCAAA;EACA,qBAAA;ACOZ;ADLQ;EACI,qBAAA;ACOZ;ADLQ;EACI,kBAAA;EACA,kBAAA;EACA,OAAA;EACA,wBAAA;ACOZ;ADLQ;EACI,aAAA;ACOZ;ADJI;EACI,gBAAA;EACA,mBAAA;EACA,gBAAA;EACA,aAAA;EACA,aAAA;EACA,sBAAA;ACMR;ADLQ;EACI,iBAAA;ACOZ;ADLQ;EACI,mBAAA;ACOZ;ADNY;EACI,mBAAA;ACQhB;ADNY;EACI,QAAA;EACA,QAAA;EACA,eAAA;EACA,kBAAA;EACA,4BAAA;EACA,gBAAA;EACA,UAAA;EACA,uBAAA;EACA,gBAAA;EACA,SAAA;EACA,cAAA;EACA,cAAA;EACA,UAAA;EACA,8BAAA;ACQhB;ADPgB;EACI,6BEKV;ADIV;ADLgB;EACI,mBAAA;ACOpB;ADLgB;EACI,cAAA;ACOpB;ADJY;EACI,WAAA;EACA,UAAA;EACA,SAAA;ACMhB;ADJY;EACI,mBAAA;EACA,qBAAA;EACA,WAAA;EACA,sBAAA;ACMhB;ADHgB;EACI,iBAAA;EACA,WAAA;ACKpB;ADDgB;EACI,WAAA;ACGpB;ADDgB;EACI,gBAAA;EACA,eAAA;ACGpB;ADDgB;EACI,cAAA;EACA,mBAAA;ACGpB;ADDgB;EACI,WAAA;ACGpB;ADCQ;EACI,yBAAA;EACA,yBAAA;EACA,aAAA;ACCZ;ADAY;EACI,gBAAA;ACEhB;ADAY;EACI,gBAAA;EACA,mBAAA;EACA,eAAA;ACEhB;ADCQ;EACI,mBAAA;ACCZ;ADCQ;EACI,0BAAA;ACCZ;ADCQ;EACI,6BAAA;ACCZ;;ADKA;EACI,sBAAA;ECFJ,4BAAA;AACA;ADGI;EACI,kBAAA;EACA,yBAAA;ACDR;;ADKA;ECFA,cAAA;EDII,gBAAA;ACFJ;;ADKA;ECFA,cAAA;EDII,gBAAA;ACFJ;;ADKA;ECFA,WAAA;AACA;;ADKA;ECFA;IDIQ,uBAAA;ECFR;EDII;IACI,yBAAA;ECFN;AACF","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: calc(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: calc((($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 calc(($colWidth * 100 / $context) * 1%)\n}\n\n@function remDist($fontSizePx) {\n @return calc(($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: calc(($remPx) * 1px) !important;\n font-size: calc(($remPx / 10) * 1rem) !important;\n }\n @else {\n font-size: calc(($remPx) * 1px);\n font-size: calc(($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\n/* based on \"visually-hidden\" mixin in LDS for accessibility goals */\n@mixin visuallyHidden() {\n position: absolute;\n width: 1px;\n height: 1px;\n overflow: hidden;\n clip: rect(1px, 1px, 1px, 1px);\n margin: 0;\n padding: 0;\n}\n","/* 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: never;\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-align-center { content: \"\\e92a\"; }\n@mixin icon-multiple-magicwand { content: \"\\e929\"; }\n@mixin icon-sd-import { content: \"\\e91f\"; }\n@mixin icon-sd-export { content: \"\\e924\"; }\n@mixin icon-browse { content: \"\\e925\"; }\n@mixin icon-minus { content: \"\\e926\"; }\n@mixin icon-plus { content: \"\\e927\"; }\n@mixin icon-sd-save { content: \"\\e928\"; }\n@mixin icon-back-button { content: \"\\e91e\"; }\n@mixin icon-japan-incorrect { content: \"\\e91b\"; }\n@mixin icon-japan-correct { content: \"\\e91c\"; }\n@mixin icon-japan-partial { content: \"\\e91d\"; }\n@mixin icon-score-partial { content: \"\\e91a\"; }\n@mixin icon-furigana { content: \"\\e919\"; }\n@mixin icon-add-subsection { content: \"\\e918\"; }\n@mixin icon-info-bare { content: \"\\e923\"; }\n@mixin icon-bookmark-outline { content: \"\\e922\"; }\n@mixin icon-bookmark { content: \"\\e921\"; }\n@mixin icon-indicator { content: \"\\e920\"; }\n@mixin icon-wrap-inline { content: \"\\e915\"; }\n@mixin icon-wrap-left { content: \"\\e916\"; }\n@mixin icon-wrap-right { content: \"\\e917\"; }\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","@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-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: calc(100% - 20px);\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.advanced-search-container .class-path {\n color: #616161;\n font-size: 0.8em;\n}\n\n.criteria-dropdown-select2 .class-path {\n color: #808080;\n font-size: 0.8em;\n}\n\n.select2-highlighted .class-path {\n color: #FFF;\n}\n\n@keyframes rotating {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\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-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: calc(100% - 20px);\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.advanced-search-container .class-path {\n color: #616161;\n font-size: 0.8em;\n}\n\n.criteria-dropdown-select2 .class-path {\n color: #808080;\n font-size: 0.8em;\n}\n\n.select2-highlighted .class-path {\n color: #FFF;\n}\n\n@keyframes rotating {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\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$textSecondary: #737373;\n$shadowColor: rgba(0, 0, 0, 0.25);\n\n$modalBorderColor: #dddfe2;\n$searchInp: #dddfe2;\n\n$uiGeneralContentBg: white();\n$uiGeneralContentBorder: #ddd;\n\n$uiHeaderBg: #d4d5d7;\n\n$uiClickableDefaultBg: #f3f1ef;\n$uiClickableHoverBg: whiten($info, 0.2);\n//$uiClickableActiveBg: $uiHeaderBg;\n$uiClickableActiveBg: whiten($websiteBorder, 0.2);\n//$uiClickableActiveBg: #aaa;\n\n$uiSelectableSelectedBg: whiten($info, 0.2);\n$uiSelectableSelectedHoverBg: whiten($info, 0.1);\n$uiSelectableHoverBg: whiten($info, 0.9);\n\n$uiOverlay: $lightBlueGrey;\n\n// new layout. Implemented now only for review panel\n$uiReviewPanelBg: #f2f2f2;\n$uiReviewPanelTextDisabled: hsl(0, 0%, 45%);\n$uiReviewPanelTextDefault: hsl(0, 0%, 12%);\n$uiReviewPanelBgDefault: $uiGeneralContentBg;\n$uiReviewPanelPrimaryHighlight: hsl(208, 100%, 32%);\n$uiReviewPanelBgInverted: $uiReviewPanelTextDefault;\n$uiReviewPanelTextInverted: $uiGeneralContentBg;\n\n// sidebars etc.\n$canvas: mix(#fff, $grey, 85%);\n\n// colors taken from feedback.scss\n$successBgColor: whiten($success, 0.8);\n$successBorderColor: whiten($success, 0.1);\n\n$infoBgColor: whiten($info, 0.8);\n$infoBorderColor: whiten($info, 0.1);\n\n$warningBgColor: whiten($warning, 0.8);\n$warningBorderColor: whiten($warning, 0.1);\n\n$dangerBgColor: whiten($danger, 0.8);\n$dangerBorderColor: whiten($danger, 0.1);\n\n$errorBgColor: whiten($error, 0.8);\n$errorBorderColor: whiten($error, 0.1);\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$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"]}
1
+ {"version":3,"sources":["../../../scss/inc/_functions.scss","../../../scss/inc/fonts/_tao-icon-vars.scss","../scss/advancedSearch.scss%23sass","../scss/advancedSearch.scss","../../../scss/inc/_colors.scss"],"names":[],"mappings":"AAaA;;;;;;CAAA;AAoQA,oEAAA;ACjRA,gBAAA;ACKA;EACI,cAAA;EACA,aAAA;EACA,aAAA;EACA,sBAAA;ACKJ;ADJI;EACI,mBAAA;ACMR;ADJI;EACI,iBAAA;EACA,mBAAA;EACA,kBAAA;ACMR;ADLQ;EACI,iBAAA;EACA,kBAAA;EACA,QAAA;EACA,iBAAA;EACA,sCAAA;EACA,qBAAA;ACOZ;ADLQ;EACI,qBAAA;ACOZ;ADLQ;EACI,kBAAA;EACA,kBAAA;EACA,OAAA;EACA,wBAAA;ACOZ;ADLQ;EACI,aAAA;ACOZ;ADJI;EACI,gBAAA;EACA,mBAAA;EACA,gBAAA;EACA,aAAA;EACA,aAAA;EACA,sBAAA;ACMR;ADLQ;EACI,iBAAA;ACOZ;ADLQ;EACI,mBAAA;ACOZ;ADNY;EACI,mBAAA;ACQhB;ADNY;EACI,QAAA;EACA,QAAA;EACA,eAAA;EACA,kBAAA;EACA,4BAAA;EACA,gBAAA;EACA,UAAA;EACA,uBAAA;EACA,gBAAA;EACA,SAAA;EACA,cAAA;EACA,cAAA;EACA,UAAA;EACA,8BAAA;ACQhB;ADPgB;EACI,6BEKV;ADIV;ADLgB;EACI,mBAAA;ACOpB;ADLgB;EACI,cAAA;ACOpB;ADJY;EACI,WAAA;EACA,UAAA;EACA,SAAA;ACMhB;ADJY;EACI,mBAAA;EACA,qBAAA;EACA,WAAA;EACA,sBAAA;ACMhB;ADHgB;EACI,iBAAA;EACA,WAAA;ACKpB;ADDgB;EACI,WAAA;ACGpB;ADDgB;EACI,gBAAA;EACA,eAAA;ACGpB;ADDgB;EACI,cAAA;EACA,mBAAA;ACGpB;ADDgB;EACI,WAAA;ACGpB;ADAY;EACI,aAAA;EACA,2BAAA;EACA,SAAA;ACEhB;ADEQ;EACI,yBAAA;EACA,yBAAA;EACA,aAAA;ACAZ;ADCY;EACI,gBAAA;ACChB;ADCY;EACI,gBAAA;EACA,mBAAA;EACA,eAAA;ACChB;ADEQ;EACI,mBAAA;ACAZ;ADEQ;EACI,0BAAA;ACAZ;ADEQ;EACI,6BAAA;ACAZ;;ADMA;ECHA,sBAAA;EDKI,4BAAA;ACHJ;ADII;EACI,kBAAA;EACA,yBAAA;ACFR;;ADMA;EACI,cAAA;ECHJ,gBAAA;AACA;;ADMA;EACI,cAAA;ECHJ,gBAAA;AACA;;ADMA;EACI,WAAA;ACHJ;;ADMA;EACI;ICHJ,uBAAA;EACE;EACF;IDKQ,yBAAA;ECHN;AACF","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: calc(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: calc((($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 calc(($colWidth * 100 / $context) * 1%)\n}\n\n@function remDist($fontSizePx) {\n @return calc(($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: calc(($remPx) * 1px) !important;\n font-size: calc(($remPx / 10) * 1rem) !important;\n }\n @else {\n font-size: calc(($remPx) * 1px);\n font-size: calc(($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\n/* based on \"visually-hidden\" mixin in LDS for accessibility goals */\n@mixin visuallyHidden() {\n position: absolute;\n width: 1px;\n height: 1px;\n overflow: hidden;\n clip: rect(1px, 1px, 1px, 1px);\n margin: 0;\n padding: 0;\n}\n","/* 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: never;\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-align-center { content: \"\\e92a\"; }\n@mixin icon-multiple-magicwand { content: \"\\e929\"; }\n@mixin icon-sd-import { content: \"\\e91f\"; }\n@mixin icon-sd-export { content: \"\\e924\"; }\n@mixin icon-browse { content: \"\\e925\"; }\n@mixin icon-minus { content: \"\\e926\"; }\n@mixin icon-plus { content: \"\\e927\"; }\n@mixin icon-sd-save { content: \"\\e928\"; }\n@mixin icon-back-button { content: \"\\e91e\"; }\n@mixin icon-japan-incorrect { content: \"\\e91b\"; }\n@mixin icon-japan-correct { content: \"\\e91c\"; }\n@mixin icon-japan-partial { content: \"\\e91d\"; }\n@mixin icon-score-partial { content: \"\\e91a\"; }\n@mixin icon-furigana { content: \"\\e919\"; }\n@mixin icon-add-subsection { content: \"\\e918\"; }\n@mixin icon-info-bare { content: \"\\e923\"; }\n@mixin icon-bookmark-outline { content: \"\\e922\"; }\n@mixin icon-bookmark { content: \"\\e921\"; }\n@mixin icon-indicator { content: \"\\e920\"; }\n@mixin icon-wrap-inline { content: \"\\e915\"; }\n@mixin icon-wrap-left { content: \"\\e916\"; }\n@mixin icon-wrap-right { content: \"\\e917\"; }\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","@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-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: calc(100% - 20px);\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 div.criterion-container {\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 .logic-radio-group {\n display: flex;\n justify-content: flex-start;\n gap: 16px;\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.advanced-search-container .class-path {\n color: #616161;\n font-size: 0.8em;\n}\n\n.criteria-dropdown-select2 .class-path {\n color: #808080;\n font-size: 0.8em;\n}\n\n.select2-highlighted .class-path {\n color: #FFF;\n}\n\n@keyframes rotating {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\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-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: calc(100% - 20px);\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 div.criterion-container {\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 .logic-radio-group {\n display: flex;\n justify-content: flex-start;\n gap: 16px;\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.advanced-search-container .class-path {\n color: #616161;\n font-size: 0.8em;\n}\n\n.criteria-dropdown-select2 .class-path {\n color: #808080;\n font-size: 0.8em;\n}\n\n.select2-highlighted .class-path {\n color: #FFF;\n}\n\n@keyframes rotating {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\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$textSecondary: #737373;\n$shadowColor: rgba(0, 0, 0, 0.25);\n\n$modalBorderColor: #dddfe2;\n$searchInp: #dddfe2;\n\n$uiGeneralContentBg: white();\n$uiGeneralContentBorder: #ddd;\n\n$uiHeaderBg: #d4d5d7;\n\n$uiClickableDefaultBg: #f3f1ef;\n$uiClickableHoverBg: whiten($info, 0.2);\n//$uiClickableActiveBg: $uiHeaderBg;\n$uiClickableActiveBg: whiten($websiteBorder, 0.2);\n//$uiClickableActiveBg: #aaa;\n\n$uiSelectableSelectedBg: whiten($info, 0.2);\n$uiSelectableSelectedHoverBg: whiten($info, 0.1);\n$uiSelectableHoverBg: whiten($info, 0.9);\n\n$uiOverlay: $lightBlueGrey;\n\n// new layout. Implemented now only for review panel\n$uiReviewPanelBg: #f2f2f2;\n$uiReviewPanelTextDisabled: hsl(0, 0%, 45%);\n$uiReviewPanelTextDefault: hsl(0, 0%, 12%);\n$uiReviewPanelBgDefault: $uiGeneralContentBg;\n$uiReviewPanelPrimaryHighlight: hsl(208, 100%, 32%);\n$uiReviewPanelBgInverted: $uiReviewPanelTextDefault;\n$uiReviewPanelTextInverted: $uiGeneralContentBg;\n\n// sidebars etc.\n$canvas: mix(#fff, $grey, 85%);\n\n// colors taken from feedback.scss\n$successBgColor: whiten($success, 0.8);\n$successBorderColor: whiten($success, 0.1);\n\n$infoBgColor: whiten($info, 0.8);\n$infoBorderColor: whiten($info, 0.1);\n\n$warningBgColor: whiten($warning, 0.8);\n$warningBorderColor: whiten($warning, 0.1);\n\n$dangerBgColor: whiten($danger, 0.8);\n$dangerBorderColor: whiten($danger, 0.1);\n\n$errorBgColor: whiten($error, 0.8);\n$errorBorderColor: whiten($error, 0.1);\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$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"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oat-sa/tao-core-ui",
3
- "version": "3.8.1",
3
+ "version": "3.9.1",
4
4
  "displayName": "TAO Core UI",
5
5
  "description": "UI libraries of TAO",
6
6
  "scripts": {
@@ -19,7 +19,8 @@
19
19
  "build:scss": "node ./build/scss.js",
20
20
  "lint:src": "eslint -c .eslintrc.js src",
21
21
  "lint:test": "eslint -c test/.eslintrc.js test",
22
- "lint:report": "eslint -c .eslintrc.js --output-file eslint_report.json --format json src | true"
22
+ "lint:report": "eslint -c .eslintrc.js --output-file eslint_report.json --format json src | true",
23
+ "prepare": "npm run build:all"
23
24
  },
24
25
  "keywords": [
25
26
  "tao",
File without changes
File without changes
package/src/feedback.js CHANGED
File without changes
@@ -81,7 +81,11 @@ export const positionFloat = function positionFloat(widget, position) {
81
81
 
82
82
  if (!context.featureFlags['FEATURE_FLAG_DISABLE_FIGURE_WIDGET'] && prevClassName !== className) {
83
83
  // Re-build Figure widget to toggle between inline/block
84
- const parent = searchRecurse(widget.element.bdy.rootElement.bdy, widget.serial);
84
+ const parent = searchRecurse(widget.element.rootElement.bdy, widget.serial);
85
+ // If it's Image not Figure (Choice, GapMatch/HotText qti-flow-container)
86
+ if (!parent) {
87
+ return;
88
+ }
85
89
  // If Figure is not in A-block (Prompt, TextReader PCI)
86
90
  if (parent.contentModel === 'inlineStatic' || widget.$container.closest('.qti-customInteraction').length) {
87
91
  _.defer(() => {
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -73,6 +73,11 @@ export default function advancedSearchFactory(config) {
73
73
  text: 'text',
74
74
  list: 'list'
75
75
  };
76
+ const criteriaLogic = {
77
+ and: 'LOGIC_AND',
78
+ or: 'LOGIC_OR',
79
+ not: 'LOGIC_NOT'
80
+ };
76
81
 
77
82
  let isAdvancedSearchStatusEnabled;
78
83
  let isCriteriaListUpdated = false;
@@ -127,6 +132,7 @@ export default function advancedSearchFactory(config) {
127
132
  _.forEach(criteriaState, criterion => {
128
133
  criterion.rendered = false;
129
134
  criterion.value = null;
135
+ criterion.logic = null;
130
136
  });
131
137
  },
132
138
  /**
@@ -147,8 +153,16 @@ export default function advancedSearchFactory(config) {
147
153
  }
148
154
  } else if (renderedCriterion.type === criteriaTypes.list) {
149
155
  if (renderedCriterion.value && renderedCriterion.value.length > 0) {
150
- /* Temp replaced OR with AND. See ADF-7 for details */
151
- query += `${queryParam}:${renderedCriterion.value.join(' AND ')}`;
156
+ if (renderedCriterion.value.length === 1 && renderedCriterion.logic === criteriaLogic.not) {
157
+ //we have to pass NOT logic anyways, so add empty member to have NOT logic modifier in the query
158
+ renderedCriterion.value.push('');
159
+ }
160
+ query += renderedCriterion.value
161
+ .map(value => `${queryParam}:${value}`)
162
+ .join(` ${renderedCriterion.logic} `);
163
+
164
+ //we need to remove empty member from renderedCriterion.value because renderedCriterion can be reused after the query is done
165
+ renderedCriterion.value = renderedCriterion.value.filter(value => value !== '');
152
166
  }
153
167
  }
154
168
  });
@@ -431,10 +445,19 @@ export default function advancedSearchFactory(config) {
431
445
  if (criterion.value) {
432
446
  $(`input[name=${criterion.id}-select]`, $criterionContainer).select2('data', initialCriterion);
433
447
  }
448
+ criterion.logic = criterion.logic || criteriaLogic.and;
449
+ $(`input[name="${criterion.id}-logic"][value="${criterion.logic}"]`, $criterionContainer).prop(
450
+ 'checked',
451
+ true
452
+ );
434
453
  // set event to bind input value to critariaState
435
454
  $(`input[name=${criterion.id}-select]`, $criterionContainer).on('change', event => {
436
455
  criterion.value = event.val;
437
456
  });
457
+ // set event to bind logic selector to critariaState
458
+ $(`input[name="${criterion.id}-logic"]`, $criterionContainer).on('change', event => {
459
+ criterion.logic = event.target.value;
460
+ });
438
461
  } else {
439
462
  // set initial value
440
463
  if (criterion.value) {
@@ -83,7 +83,7 @@ Usage:
83
83
  .advanced-search-container .advanced-criteria-container .filter-container .filter-bool-group input[type=checkbox] {
84
84
  margin-left: 0;
85
85
  }
86
- .advanced-search-container .advanced-criteria-container .filter-container label {
86
+ .advanced-search-container .advanced-criteria-container .filter-container div.criterion-container {
87
87
  width: 100%;
88
88
  padding: 0;
89
89
  margin: 0;
@@ -112,6 +112,11 @@ Usage:
112
112
  .advanced-search-container .advanced-criteria-container .filter-container[data-type=list] input[type=text] {
113
113
  width: 100%;
114
114
  }
115
+ .advanced-search-container .advanced-criteria-container .filter-container .logic-radio-group {
116
+ display: flex;
117
+ justify-content: flex-start;
118
+ gap: 16px;
119
+ }
115
120
  .advanced-search-container .advanced-criteria-container .invalid-criteria-warning-container {
116
121
  background-color: #cfdfe9;
117
122
  border: 1px solid #266d9c;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../scss/inc/_functions.scss","../../../scss/inc/fonts/_tao-icon-vars.scss","../scss/advancedSearch.scss%23sass","../scss/advancedSearch.scss","../../../scss/inc/_colors.scss"],"names":[],"mappings":"AAaA;;;;;;CAAA;AAoQA,oEAAA;ACjRA,gBAAA;ACKA;EACI,cAAA;EACA,aAAA;EACA,aAAA;EACA,sBAAA;ACKJ;ADJI;EACI,mBAAA;ACMR;ADJI;EACI,iBAAA;EACA,mBAAA;EACA,kBAAA;ACMR;ADLQ;EACI,iBAAA;EACA,kBAAA;EACA,QAAA;EACA,iBAAA;EACA,sCAAA;EACA,qBAAA;ACOZ;ADLQ;EACI,qBAAA;ACOZ;ADLQ;EACI,kBAAA;EACA,kBAAA;EACA,OAAA;EACA,wBAAA;ACOZ;ADLQ;EACI,aAAA;ACOZ;ADJI;EACI,gBAAA;EACA,mBAAA;EACA,gBAAA;EACA,aAAA;EACA,aAAA;EACA,sBAAA;ACMR;ADLQ;EACI,iBAAA;ACOZ;ADLQ;EACI,mBAAA;ACOZ;ADNY;EACI,mBAAA;ACQhB;ADNY;EACI,QAAA;EACA,QAAA;EACA,eAAA;EACA,kBAAA;EACA,4BAAA;EACA,gBAAA;EACA,UAAA;EACA,uBAAA;EACA,gBAAA;EACA,SAAA;EACA,cAAA;EACA,cAAA;EACA,UAAA;EACA,8BAAA;ACQhB;ADPgB;EACI,6BEKV;ADIV;ADLgB;EACI,mBAAA;ACOpB;ADLgB;EACI,cAAA;ACOpB;ADJY;EACI,WAAA;EACA,UAAA;EACA,SAAA;ACMhB;ADJY;EACI,mBAAA;EACA,qBAAA;EACA,WAAA;EACA,sBAAA;ACMhB;ADHgB;EACI,iBAAA;EACA,WAAA;ACKpB;ADDgB;EACI,WAAA;ACGpB;ADDgB;EACI,gBAAA;EACA,eAAA;ACGpB;ADDgB;EACI,cAAA;EACA,mBAAA;ACGpB;ADDgB;EACI,WAAA;ACGpB;ADCQ;EACI,yBAAA;EACA,yBAAA;EACA,aAAA;ACCZ;ADAY;EACI,gBAAA;ACEhB;ADAY;EACI,gBAAA;EACA,mBAAA;EACA,eAAA;ACEhB;ADCQ;EACI,mBAAA;ACCZ;ADCQ;EACI,0BAAA;ACCZ;ADCQ;EACI,6BAAA;ACCZ;;ADKA;EACI,sBAAA;ECFJ,4BAAA;AACA;ADGI;EACI,kBAAA;EACA,yBAAA;ACDR;;ADKA;ECFA,cAAA;EDII,gBAAA;ACFJ;;ADKA;ECFA,cAAA;EDII,gBAAA;ACFJ;;ADKA;ECFA,WAAA;AACA;;ADKA;ECFA;IDIQ,uBAAA;ECFR;EDII;IACI,yBAAA;ECFN;AACF","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: calc(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: calc((($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 calc(($colWidth * 100 / $context) * 1%)\n}\n\n@function remDist($fontSizePx) {\n @return calc(($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: calc(($remPx) * 1px) !important;\n font-size: calc(($remPx / 10) * 1rem) !important;\n }\n @else {\n font-size: calc(($remPx) * 1px);\n font-size: calc(($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\n/* based on \"visually-hidden\" mixin in LDS for accessibility goals */\n@mixin visuallyHidden() {\n position: absolute;\n width: 1px;\n height: 1px;\n overflow: hidden;\n clip: rect(1px, 1px, 1px, 1px);\n margin: 0;\n padding: 0;\n}\n","/* 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: never;\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-align-center { content: \"\\e92a\"; }\n@mixin icon-multiple-magicwand { content: \"\\e929\"; }\n@mixin icon-sd-import { content: \"\\e91f\"; }\n@mixin icon-sd-export { content: \"\\e924\"; }\n@mixin icon-browse { content: \"\\e925\"; }\n@mixin icon-minus { content: \"\\e926\"; }\n@mixin icon-plus { content: \"\\e927\"; }\n@mixin icon-sd-save { content: \"\\e928\"; }\n@mixin icon-back-button { content: \"\\e91e\"; }\n@mixin icon-japan-incorrect { content: \"\\e91b\"; }\n@mixin icon-japan-correct { content: \"\\e91c\"; }\n@mixin icon-japan-partial { content: \"\\e91d\"; }\n@mixin icon-score-partial { content: \"\\e91a\"; }\n@mixin icon-furigana { content: \"\\e919\"; }\n@mixin icon-add-subsection { content: \"\\e918\"; }\n@mixin icon-info-bare { content: \"\\e923\"; }\n@mixin icon-bookmark-outline { content: \"\\e922\"; }\n@mixin icon-bookmark { content: \"\\e921\"; }\n@mixin icon-indicator { content: \"\\e920\"; }\n@mixin icon-wrap-inline { content: \"\\e915\"; }\n@mixin icon-wrap-left { content: \"\\e916\"; }\n@mixin icon-wrap-right { content: \"\\e917\"; }\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","@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-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: calc(100% - 20px);\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.advanced-search-container .class-path {\n color: #616161;\n font-size: 0.8em;\n}\n\n.criteria-dropdown-select2 .class-path {\n color: #808080;\n font-size: 0.8em;\n}\n\n.select2-highlighted .class-path {\n color: #FFF;\n}\n\n@keyframes rotating {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\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-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: calc(100% - 20px);\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.advanced-search-container .class-path {\n color: #616161;\n font-size: 0.8em;\n}\n\n.criteria-dropdown-select2 .class-path {\n color: #808080;\n font-size: 0.8em;\n}\n\n.select2-highlighted .class-path {\n color: #FFF;\n}\n\n@keyframes rotating {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\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$textSecondary: #737373;\n$shadowColor: rgba(0, 0, 0, 0.25);\n\n$modalBorderColor: #dddfe2;\n$searchInp: #dddfe2;\n\n$uiGeneralContentBg: white();\n$uiGeneralContentBorder: #ddd;\n\n$uiHeaderBg: #d4d5d7;\n\n$uiClickableDefaultBg: #f3f1ef;\n$uiClickableHoverBg: whiten($info, 0.2);\n//$uiClickableActiveBg: $uiHeaderBg;\n$uiClickableActiveBg: whiten($websiteBorder, 0.2);\n//$uiClickableActiveBg: #aaa;\n\n$uiSelectableSelectedBg: whiten($info, 0.2);\n$uiSelectableSelectedHoverBg: whiten($info, 0.1);\n$uiSelectableHoverBg: whiten($info, 0.9);\n\n$uiOverlay: $lightBlueGrey;\n\n// new layout. Implemented now only for review panel\n$uiReviewPanelBg: #f2f2f2;\n$uiReviewPanelTextDisabled: hsl(0, 0%, 45%);\n$uiReviewPanelTextDefault: hsl(0, 0%, 12%);\n$uiReviewPanelBgDefault: $uiGeneralContentBg;\n$uiReviewPanelPrimaryHighlight: hsl(208, 100%, 32%);\n$uiReviewPanelBgInverted: $uiReviewPanelTextDefault;\n$uiReviewPanelTextInverted: $uiGeneralContentBg;\n\n// sidebars etc.\n$canvas: mix(#fff, $grey, 85%);\n\n// colors taken from feedback.scss\n$successBgColor: whiten($success, 0.8);\n$successBorderColor: whiten($success, 0.1);\n\n$infoBgColor: whiten($info, 0.8);\n$infoBorderColor: whiten($info, 0.1);\n\n$warningBgColor: whiten($warning, 0.8);\n$warningBorderColor: whiten($warning, 0.1);\n\n$dangerBgColor: whiten($danger, 0.8);\n$dangerBorderColor: whiten($danger, 0.1);\n\n$errorBgColor: whiten($error, 0.8);\n$errorBorderColor: whiten($error, 0.1);\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$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"]}
1
+ {"version":3,"sources":["../../../scss/inc/_functions.scss","../../../scss/inc/fonts/_tao-icon-vars.scss","../scss/advancedSearch.scss%23sass","../scss/advancedSearch.scss","../../../scss/inc/_colors.scss"],"names":[],"mappings":"AAaA;;;;;;CAAA;AAoQA,oEAAA;ACjRA,gBAAA;ACKA;EACI,cAAA;EACA,aAAA;EACA,aAAA;EACA,sBAAA;ACKJ;ADJI;EACI,mBAAA;ACMR;ADJI;EACI,iBAAA;EACA,mBAAA;EACA,kBAAA;ACMR;ADLQ;EACI,iBAAA;EACA,kBAAA;EACA,QAAA;EACA,iBAAA;EACA,sCAAA;EACA,qBAAA;ACOZ;ADLQ;EACI,qBAAA;ACOZ;ADLQ;EACI,kBAAA;EACA,kBAAA;EACA,OAAA;EACA,wBAAA;ACOZ;ADLQ;EACI,aAAA;ACOZ;ADJI;EACI,gBAAA;EACA,mBAAA;EACA,gBAAA;EACA,aAAA;EACA,aAAA;EACA,sBAAA;ACMR;ADLQ;EACI,iBAAA;ACOZ;ADLQ;EACI,mBAAA;ACOZ;ADNY;EACI,mBAAA;ACQhB;ADNY;EACI,QAAA;EACA,QAAA;EACA,eAAA;EACA,kBAAA;EACA,4BAAA;EACA,gBAAA;EACA,UAAA;EACA,uBAAA;EACA,gBAAA;EACA,SAAA;EACA,cAAA;EACA,cAAA;EACA,UAAA;EACA,8BAAA;ACQhB;ADPgB;EACI,6BEKV;ADIV;ADLgB;EACI,mBAAA;ACOpB;ADLgB;EACI,cAAA;ACOpB;ADJY;EACI,WAAA;EACA,UAAA;EACA,SAAA;ACMhB;ADJY;EACI,mBAAA;EACA,qBAAA;EACA,WAAA;EACA,sBAAA;ACMhB;ADHgB;EACI,iBAAA;EACA,WAAA;ACKpB;ADDgB;EACI,WAAA;ACGpB;ADDgB;EACI,gBAAA;EACA,eAAA;ACGpB;ADDgB;EACI,cAAA;EACA,mBAAA;ACGpB;ADDgB;EACI,WAAA;ACGpB;ADAY;EACI,aAAA;EACA,2BAAA;EACA,SAAA;ACEhB;ADEQ;EACI,yBAAA;EACA,yBAAA;EACA,aAAA;ACAZ;ADCY;EACI,gBAAA;ACChB;ADCY;EACI,gBAAA;EACA,mBAAA;EACA,eAAA;ACChB;ADEQ;EACI,mBAAA;ACAZ;ADEQ;EACI,0BAAA;ACAZ;ADEQ;EACI,6BAAA;ACAZ;;ADMA;ECHA,sBAAA;EDKI,4BAAA;ACHJ;ADII;EACI,kBAAA;EACA,yBAAA;ACFR;;ADMA;EACI,cAAA;ECHJ,gBAAA;AACA;;ADMA;EACI,cAAA;ECHJ,gBAAA;AACA;;ADMA;EACI,WAAA;ACHJ;;ADMA;EACI;ICHJ,uBAAA;EACE;EACF;IDKQ,yBAAA;ECHN;AACF","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: calc(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: calc((($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 calc(($colWidth * 100 / $context) * 1%)\n}\n\n@function remDist($fontSizePx) {\n @return calc(($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: calc(($remPx) * 1px) !important;\n font-size: calc(($remPx / 10) * 1rem) !important;\n }\n @else {\n font-size: calc(($remPx) * 1px);\n font-size: calc(($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\n/* based on \"visually-hidden\" mixin in LDS for accessibility goals */\n@mixin visuallyHidden() {\n position: absolute;\n width: 1px;\n height: 1px;\n overflow: hidden;\n clip: rect(1px, 1px, 1px, 1px);\n margin: 0;\n padding: 0;\n}\n","/* 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: never;\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-align-center { content: \"\\e92a\"; }\n@mixin icon-multiple-magicwand { content: \"\\e929\"; }\n@mixin icon-sd-import { content: \"\\e91f\"; }\n@mixin icon-sd-export { content: \"\\e924\"; }\n@mixin icon-browse { content: \"\\e925\"; }\n@mixin icon-minus { content: \"\\e926\"; }\n@mixin icon-plus { content: \"\\e927\"; }\n@mixin icon-sd-save { content: \"\\e928\"; }\n@mixin icon-back-button { content: \"\\e91e\"; }\n@mixin icon-japan-incorrect { content: \"\\e91b\"; }\n@mixin icon-japan-correct { content: \"\\e91c\"; }\n@mixin icon-japan-partial { content: \"\\e91d\"; }\n@mixin icon-score-partial { content: \"\\e91a\"; }\n@mixin icon-furigana { content: \"\\e919\"; }\n@mixin icon-add-subsection { content: \"\\e918\"; }\n@mixin icon-info-bare { content: \"\\e923\"; }\n@mixin icon-bookmark-outline { content: \"\\e922\"; }\n@mixin icon-bookmark { content: \"\\e921\"; }\n@mixin icon-indicator { content: \"\\e920\"; }\n@mixin icon-wrap-inline { content: \"\\e915\"; }\n@mixin icon-wrap-left { content: \"\\e916\"; }\n@mixin icon-wrap-right { content: \"\\e917\"; }\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","@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-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: calc(100% - 20px);\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 div.criterion-container {\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 .logic-radio-group {\n display: flex;\n justify-content: flex-start;\n gap: 16px;\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.advanced-search-container .class-path {\n color: #616161;\n font-size: 0.8em;\n}\n\n.criteria-dropdown-select2 .class-path {\n color: #808080;\n font-size: 0.8em;\n}\n\n.select2-highlighted .class-path {\n color: #FFF;\n}\n\n@keyframes rotating {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\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-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: calc(100% - 20px);\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 div.criterion-container {\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 .logic-radio-group {\n display: flex;\n justify-content: flex-start;\n gap: 16px;\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.advanced-search-container .class-path {\n color: #616161;\n font-size: 0.8em;\n}\n\n.criteria-dropdown-select2 .class-path {\n color: #808080;\n font-size: 0.8em;\n}\n\n.select2-highlighted .class-path {\n color: #FFF;\n}\n\n@keyframes rotating {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\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$textSecondary: #737373;\n$shadowColor: rgba(0, 0, 0, 0.25);\n\n$modalBorderColor: #dddfe2;\n$searchInp: #dddfe2;\n\n$uiGeneralContentBg: white();\n$uiGeneralContentBorder: #ddd;\n\n$uiHeaderBg: #d4d5d7;\n\n$uiClickableDefaultBg: #f3f1ef;\n$uiClickableHoverBg: whiten($info, 0.2);\n//$uiClickableActiveBg: $uiHeaderBg;\n$uiClickableActiveBg: whiten($websiteBorder, 0.2);\n//$uiClickableActiveBg: #aaa;\n\n$uiSelectableSelectedBg: whiten($info, 0.2);\n$uiSelectableSelectedHoverBg: whiten($info, 0.1);\n$uiSelectableHoverBg: whiten($info, 0.9);\n\n$uiOverlay: $lightBlueGrey;\n\n// new layout. Implemented now only for review panel\n$uiReviewPanelBg: #f2f2f2;\n$uiReviewPanelTextDisabled: hsl(0, 0%, 45%);\n$uiReviewPanelTextDefault: hsl(0, 0%, 12%);\n$uiReviewPanelBgDefault: $uiGeneralContentBg;\n$uiReviewPanelPrimaryHighlight: hsl(208, 100%, 32%);\n$uiReviewPanelBgInverted: $uiReviewPanelTextDefault;\n$uiReviewPanelTextInverted: $uiGeneralContentBg;\n\n// sidebars etc.\n$canvas: mix(#fff, $grey, 85%);\n\n// colors taken from feedback.scss\n$successBgColor: whiten($success, 0.8);\n$successBorderColor: whiten($success, 0.1);\n\n$infoBgColor: whiten($info, 0.8);\n$infoBorderColor: whiten($info, 0.1);\n\n$warningBgColor: whiten($warning, 0.8);\n$warningBorderColor: whiten($warning, 0.1);\n\n$dangerBgColor: whiten($danger, 0.8);\n$dangerBorderColor: whiten($danger, 0.1);\n\n$errorBgColor: whiten($error, 0.8);\n$errorBorderColor: whiten($error, 0.1);\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$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"]}
@@ -78,7 +78,7 @@ $invalidCriteriaBorder: #266d9c;
78
78
  margin-left: 0;
79
79
  }
80
80
  }
81
- label {
81
+ div.criterion-container {
82
82
  width: 100%;
83
83
  padding: 0;
84
84
  margin: 0;
@@ -111,6 +111,12 @@ $invalidCriteriaBorder: #266d9c;
111
111
  width: 100%;
112
112
  }
113
113
  }
114
+ .logic-radio-group {
115
+ display: flex;
116
+ justify-content: flex-start;
117
+ gap: 16px;
118
+ }
119
+
114
120
  }
115
121
  .invalid-criteria-warning-container {
116
122
  background-color: $invalidCriteriaBackground;
@@ -1,12 +1,23 @@
1
1
  <div class="filter-container {{criterion.id}}-filter" data-criteria="{{criterion.label}}" data-type="{{criterion.type}}">
2
2
  <button class="icon-result-nok" aria-label="{{__ "Remove criteria"}}"></button>
3
- <label>
3
+ <div class="criterion-container">
4
4
  <span class="filter-label-text">{{criterion.label}}
5
5
  {{#if criterion.isDuplicated}}
6
6
  {{#if criterion.alias}}<span class="criteria-alias">({{criterion.alias}})</span>{{/if}}
7
7
  {{#if criterion.class.label}}<span class="class-path">/ {{criterion.class.label}}</span>{{/if}}
8
8
  {{/if}}
9
9
  </span>
10
+ <div class="logic-radio-group">
11
+ <label class="logic-label">
12
+ <input type="radio" name="{{criterion.id}}-logic" value="LOGIC_AND"><span class="icon-radio"></span> {{__ "Exact match"}}
13
+ </label>
14
+ <label class="logic-label">
15
+ <input type="radio" name="{{criterion.id}}-logic" value="LOGIC_OR"><span class="icon-radio"></span> {{__ "In"}}
16
+ </label>
17
+ <label class="logic-label">
18
+ <input type="radio" name="{{criterion.id}}-logic" value="LOGIC_NOT"><span class="icon-radio"></span> {{__ "Not in"}}
19
+ </label>
20
+ </div>
10
21
  <input type='text' name="{{criterion.id}}-select">
11
- </label>
22
+ </div>
12
23
  </div>
File without changes
File without changes
File without changes