@roqua/quby-frontend 0.12.4 → 0.12.5
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.
- package/dist/quby-frontend.es.js +761 -247
- package/package.json +1 -1
package/dist/quby-frontend.es.js
CHANGED
|
@@ -10,7 +10,6 @@ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot
|
|
|
10
10
|
var _flatOptions;
|
|
11
11
|
import * as React from "react";
|
|
12
12
|
import React__default, { createContext, useContext, useState, useRef, useEffect, createElement, memo } from "react";
|
|
13
|
-
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
14
13
|
import root from "react-shadow";
|
|
15
14
|
const consoleLogger = {
|
|
16
15
|
type: "logger",
|
|
@@ -8100,11 +8099,11 @@ function requireLodash() {
|
|
|
8100
8099
|
}
|
|
8101
8100
|
function baseFill(array, value, start, end) {
|
|
8102
8101
|
var length = array.length;
|
|
8103
|
-
start =
|
|
8102
|
+
start = toInteger2(start);
|
|
8104
8103
|
if (start < 0) {
|
|
8105
8104
|
start = -start > length ? 0 : length + start;
|
|
8106
8105
|
}
|
|
8107
|
-
end = end === undefined$1 || end > length ? length :
|
|
8106
|
+
end = end === undefined$1 || end > length ? length : toInteger2(end);
|
|
8108
8107
|
if (end < 0) {
|
|
8109
8108
|
end += length;
|
|
8110
8109
|
}
|
|
@@ -9290,7 +9289,7 @@ function requireLodash() {
|
|
|
9290
9289
|
var func = Math2[methodName];
|
|
9291
9290
|
return function(number, precision) {
|
|
9292
9291
|
number = toNumber(number);
|
|
9293
|
-
precision = precision == null ? 0 : nativeMin(
|
|
9292
|
+
precision = precision == null ? 0 : nativeMin(toInteger2(precision), 292);
|
|
9294
9293
|
if (precision && nativeIsFinite(number)) {
|
|
9295
9294
|
var pair = (toString(number) + "e").split("e"), value = func(pair[0] + "e" + (+pair[1] + precision));
|
|
9296
9295
|
pair = (toString(value) + "e").split("e");
|
|
@@ -9324,8 +9323,8 @@ function requireLodash() {
|
|
|
9324
9323
|
bitmask &= -97;
|
|
9325
9324
|
partials = holders = undefined$1;
|
|
9326
9325
|
}
|
|
9327
|
-
ary2 = ary2 === undefined$1 ? ary2 : nativeMax(
|
|
9328
|
-
arity = arity === undefined$1 ? arity :
|
|
9326
|
+
ary2 = ary2 === undefined$1 ? ary2 : nativeMax(toInteger2(ary2), 0);
|
|
9327
|
+
arity = arity === undefined$1 ? arity : toInteger2(arity);
|
|
9329
9328
|
length -= holders ? holders.length : 0;
|
|
9330
9329
|
if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) {
|
|
9331
9330
|
var partialsRight = partials, holdersRight = holders;
|
|
@@ -9958,7 +9957,7 @@ function requireLodash() {
|
|
|
9958
9957
|
if (guard ? isIterateeCall(array, size2, guard) : size2 === undefined$1) {
|
|
9959
9958
|
size2 = 1;
|
|
9960
9959
|
} else {
|
|
9961
|
-
size2 = nativeMax(
|
|
9960
|
+
size2 = nativeMax(toInteger2(size2), 0);
|
|
9962
9961
|
}
|
|
9963
9962
|
var length = array == null ? 0 : array.length;
|
|
9964
9963
|
if (!length || size2 < 1) {
|
|
@@ -10013,7 +10012,7 @@ function requireLodash() {
|
|
|
10013
10012
|
if (!length) {
|
|
10014
10013
|
return [];
|
|
10015
10014
|
}
|
|
10016
|
-
n2 = guard || n2 === undefined$1 ? 1 :
|
|
10015
|
+
n2 = guard || n2 === undefined$1 ? 1 : toInteger2(n2);
|
|
10017
10016
|
return baseSlice(array, n2 < 0 ? 0 : n2, length);
|
|
10018
10017
|
}
|
|
10019
10018
|
function dropRight(array, n2, guard) {
|
|
@@ -10021,7 +10020,7 @@ function requireLodash() {
|
|
|
10021
10020
|
if (!length) {
|
|
10022
10021
|
return [];
|
|
10023
10022
|
}
|
|
10024
|
-
n2 = guard || n2 === undefined$1 ? 1 :
|
|
10023
|
+
n2 = guard || n2 === undefined$1 ? 1 : toInteger2(n2);
|
|
10025
10024
|
n2 = length - n2;
|
|
10026
10025
|
return baseSlice(array, 0, n2 < 0 ? 0 : n2);
|
|
10027
10026
|
}
|
|
@@ -10047,7 +10046,7 @@ function requireLodash() {
|
|
|
10047
10046
|
if (!length) {
|
|
10048
10047
|
return -1;
|
|
10049
10048
|
}
|
|
10050
|
-
var index = fromIndex == null ? 0 :
|
|
10049
|
+
var index = fromIndex == null ? 0 : toInteger2(fromIndex);
|
|
10051
10050
|
if (index < 0) {
|
|
10052
10051
|
index = nativeMax(length + index, 0);
|
|
10053
10052
|
}
|
|
@@ -10060,7 +10059,7 @@ function requireLodash() {
|
|
|
10060
10059
|
}
|
|
10061
10060
|
var index = length - 1;
|
|
10062
10061
|
if (fromIndex !== undefined$1) {
|
|
10063
|
-
index =
|
|
10062
|
+
index = toInteger2(fromIndex);
|
|
10064
10063
|
index = fromIndex < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1);
|
|
10065
10064
|
}
|
|
10066
10065
|
return baseFindIndex(array, getIteratee(predicate, 3), index, true);
|
|
@@ -10078,7 +10077,7 @@ function requireLodash() {
|
|
|
10078
10077
|
if (!length) {
|
|
10079
10078
|
return [];
|
|
10080
10079
|
}
|
|
10081
|
-
depth = depth === undefined$1 ? 1 :
|
|
10080
|
+
depth = depth === undefined$1 ? 1 : toInteger2(depth);
|
|
10082
10081
|
return baseFlatten(array, depth);
|
|
10083
10082
|
}
|
|
10084
10083
|
function fromPairs(pairs) {
|
|
@@ -10097,7 +10096,7 @@ function requireLodash() {
|
|
|
10097
10096
|
if (!length) {
|
|
10098
10097
|
return -1;
|
|
10099
10098
|
}
|
|
10100
|
-
var index = fromIndex == null ? 0 :
|
|
10099
|
+
var index = fromIndex == null ? 0 : toInteger2(fromIndex);
|
|
10101
10100
|
if (index < 0) {
|
|
10102
10101
|
index = nativeMax(length + index, 0);
|
|
10103
10102
|
}
|
|
@@ -10142,13 +10141,13 @@ function requireLodash() {
|
|
|
10142
10141
|
}
|
|
10143
10142
|
var index = length;
|
|
10144
10143
|
if (fromIndex !== undefined$1) {
|
|
10145
|
-
index =
|
|
10144
|
+
index = toInteger2(fromIndex);
|
|
10146
10145
|
index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1);
|
|
10147
10146
|
}
|
|
10148
10147
|
return value === value ? strictLastIndexOf(array, value, index) : baseFindIndex(array, baseIsNaN, index, true);
|
|
10149
10148
|
}
|
|
10150
10149
|
function nth(array, n2) {
|
|
10151
|
-
return array && array.length ? baseNth(array,
|
|
10150
|
+
return array && array.length ? baseNth(array, toInteger2(n2)) : undefined$1;
|
|
10152
10151
|
}
|
|
10153
10152
|
var pull = baseRest(pullAll);
|
|
10154
10153
|
function pullAll(array, values2) {
|
|
@@ -10196,8 +10195,8 @@ function requireLodash() {
|
|
|
10196
10195
|
start = 0;
|
|
10197
10196
|
end = length;
|
|
10198
10197
|
} else {
|
|
10199
|
-
start = start == null ? 0 :
|
|
10200
|
-
end = end === undefined$1 ? length :
|
|
10198
|
+
start = start == null ? 0 : toInteger2(start);
|
|
10199
|
+
end = end === undefined$1 ? length : toInteger2(end);
|
|
10201
10200
|
}
|
|
10202
10201
|
return baseSlice(array, start, end);
|
|
10203
10202
|
}
|
|
@@ -10247,7 +10246,7 @@ function requireLodash() {
|
|
|
10247
10246
|
if (!(array && array.length)) {
|
|
10248
10247
|
return [];
|
|
10249
10248
|
}
|
|
10250
|
-
n2 = guard || n2 === undefined$1 ? 1 :
|
|
10249
|
+
n2 = guard || n2 === undefined$1 ? 1 : toInteger2(n2);
|
|
10251
10250
|
return baseSlice(array, 0, n2 < 0 ? 0 : n2);
|
|
10252
10251
|
}
|
|
10253
10252
|
function takeRight(array, n2, guard) {
|
|
@@ -10255,7 +10254,7 @@ function requireLodash() {
|
|
|
10255
10254
|
if (!length) {
|
|
10256
10255
|
return [];
|
|
10257
10256
|
}
|
|
10258
|
-
n2 = guard || n2 === undefined$1 ? 1 :
|
|
10257
|
+
n2 = guard || n2 === undefined$1 ? 1 : toInteger2(n2);
|
|
10259
10258
|
n2 = length - n2;
|
|
10260
10259
|
return baseSlice(array, n2 < 0 ? 0 : n2, length);
|
|
10261
10260
|
}
|
|
@@ -10459,7 +10458,7 @@ function requireLodash() {
|
|
|
10459
10458
|
return baseFlatten(map(collection, iteratee2), INFINITY);
|
|
10460
10459
|
}
|
|
10461
10460
|
function flatMapDepth(collection, iteratee2, depth) {
|
|
10462
|
-
depth = depth === undefined$1 ? 1 :
|
|
10461
|
+
depth = depth === undefined$1 ? 1 : toInteger2(depth);
|
|
10463
10462
|
return baseFlatten(map(collection, iteratee2), depth);
|
|
10464
10463
|
}
|
|
10465
10464
|
function forEach(collection, iteratee2) {
|
|
@@ -10479,7 +10478,7 @@ function requireLodash() {
|
|
|
10479
10478
|
});
|
|
10480
10479
|
function includes(collection, value, fromIndex, guard) {
|
|
10481
10480
|
collection = isArrayLike(collection) ? collection : values(collection);
|
|
10482
|
-
fromIndex = fromIndex && !guard ?
|
|
10481
|
+
fromIndex = fromIndex && !guard ? toInteger2(fromIndex) : 0;
|
|
10483
10482
|
var length = collection.length;
|
|
10484
10483
|
if (fromIndex < 0) {
|
|
10485
10484
|
fromIndex = nativeMax(length + fromIndex, 0);
|
|
@@ -10538,7 +10537,7 @@ function requireLodash() {
|
|
|
10538
10537
|
if (guard ? isIterateeCall(collection, n2, guard) : n2 === undefined$1) {
|
|
10539
10538
|
n2 = 1;
|
|
10540
10539
|
} else {
|
|
10541
|
-
n2 =
|
|
10540
|
+
n2 = toInteger2(n2);
|
|
10542
10541
|
}
|
|
10543
10542
|
var func = isArray(collection) ? arraySampleSize : baseSampleSize;
|
|
10544
10543
|
return func(collection, n2);
|
|
@@ -10586,7 +10585,7 @@ function requireLodash() {
|
|
|
10586
10585
|
if (typeof func != "function") {
|
|
10587
10586
|
throw new TypeError2(FUNC_ERROR_TEXT);
|
|
10588
10587
|
}
|
|
10589
|
-
n2 =
|
|
10588
|
+
n2 = toInteger2(n2);
|
|
10590
10589
|
return function() {
|
|
10591
10590
|
if (--n2 < 1) {
|
|
10592
10591
|
return func.apply(this, arguments);
|
|
@@ -10603,7 +10602,7 @@ function requireLodash() {
|
|
|
10603
10602
|
if (typeof func != "function") {
|
|
10604
10603
|
throw new TypeError2(FUNC_ERROR_TEXT);
|
|
10605
10604
|
}
|
|
10606
|
-
n2 =
|
|
10605
|
+
n2 = toInteger2(n2);
|
|
10607
10606
|
return function() {
|
|
10608
10607
|
if (--n2 > 0) {
|
|
10609
10608
|
result2 = func.apply(this, arguments);
|
|
@@ -10797,14 +10796,14 @@ function requireLodash() {
|
|
|
10797
10796
|
if (typeof func != "function") {
|
|
10798
10797
|
throw new TypeError2(FUNC_ERROR_TEXT);
|
|
10799
10798
|
}
|
|
10800
|
-
start = start === undefined$1 ? start :
|
|
10799
|
+
start = start === undefined$1 ? start : toInteger2(start);
|
|
10801
10800
|
return baseRest(func, start);
|
|
10802
10801
|
}
|
|
10803
10802
|
function spread(func, start) {
|
|
10804
10803
|
if (typeof func != "function") {
|
|
10805
10804
|
throw new TypeError2(FUNC_ERROR_TEXT);
|
|
10806
10805
|
}
|
|
10807
|
-
start = start == null ? 0 : nativeMax(
|
|
10806
|
+
start = start == null ? 0 : nativeMax(toInteger2(start), 0);
|
|
10808
10807
|
return baseRest(function(args) {
|
|
10809
10808
|
var array = args[start], otherArgs = castSlice(args, 0, start);
|
|
10810
10809
|
if (array) {
|
|
@@ -10933,7 +10932,7 @@ function requireLodash() {
|
|
|
10933
10932
|
return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
|
|
10934
10933
|
}
|
|
10935
10934
|
function isInteger(value) {
|
|
10936
|
-
return typeof value == "number" && value ==
|
|
10935
|
+
return typeof value == "number" && value == toInteger2(value);
|
|
10937
10936
|
}
|
|
10938
10937
|
function isLength(value) {
|
|
10939
10938
|
return typeof value == "number" && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
|
|
@@ -11031,12 +11030,12 @@ function requireLodash() {
|
|
|
11031
11030
|
}
|
|
11032
11031
|
return value === value ? value : 0;
|
|
11033
11032
|
}
|
|
11034
|
-
function
|
|
11033
|
+
function toInteger2(value) {
|
|
11035
11034
|
var result2 = toFinite(value), remainder = result2 % 1;
|
|
11036
11035
|
return result2 === result2 ? remainder ? result2 - remainder : result2 : 0;
|
|
11037
11036
|
}
|
|
11038
11037
|
function toLength(value) {
|
|
11039
|
-
return value ? baseClamp(
|
|
11038
|
+
return value ? baseClamp(toInteger2(value), 0, MAX_ARRAY_LENGTH) : 0;
|
|
11040
11039
|
}
|
|
11041
11040
|
function toNumber(value) {
|
|
11042
11041
|
if (typeof value == "number") {
|
|
@@ -11060,7 +11059,7 @@ function requireLodash() {
|
|
|
11060
11059
|
return copyObject(value, keysIn(value));
|
|
11061
11060
|
}
|
|
11062
11061
|
function toSafeInteger(value) {
|
|
11063
|
-
return value ? baseClamp(
|
|
11062
|
+
return value ? baseClamp(toInteger2(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER) : value === 0 ? value : 0;
|
|
11064
11063
|
}
|
|
11065
11064
|
function toString(value) {
|
|
11066
11065
|
return value == null ? "" : baseToString(value);
|
|
@@ -11372,7 +11371,7 @@ function requireLodash() {
|
|
|
11372
11371
|
string = toString(string);
|
|
11373
11372
|
target = baseToString(target);
|
|
11374
11373
|
var length = string.length;
|
|
11375
|
-
position = position === undefined$1 ? length : baseClamp(
|
|
11374
|
+
position = position === undefined$1 ? length : baseClamp(toInteger2(position), 0, length);
|
|
11376
11375
|
var end = position;
|
|
11377
11376
|
position -= target.length;
|
|
11378
11377
|
return position >= 0 && string.slice(position, end) == target;
|
|
@@ -11394,7 +11393,7 @@ function requireLodash() {
|
|
|
11394
11393
|
var lowerFirst = createCaseFirst("toLowerCase");
|
|
11395
11394
|
function pad(string, length, chars2) {
|
|
11396
11395
|
string = toString(string);
|
|
11397
|
-
length =
|
|
11396
|
+
length = toInteger2(length);
|
|
11398
11397
|
var strLength = length ? stringSize(string) : 0;
|
|
11399
11398
|
if (!length || strLength >= length) {
|
|
11400
11399
|
return string;
|
|
@@ -11404,13 +11403,13 @@ function requireLodash() {
|
|
|
11404
11403
|
}
|
|
11405
11404
|
function padEnd(string, length, chars2) {
|
|
11406
11405
|
string = toString(string);
|
|
11407
|
-
length =
|
|
11406
|
+
length = toInteger2(length);
|
|
11408
11407
|
var strLength = length ? stringSize(string) : 0;
|
|
11409
11408
|
return length && strLength < length ? string + createPadding(length - strLength, chars2) : string;
|
|
11410
11409
|
}
|
|
11411
11410
|
function padStart(string, length, chars2) {
|
|
11412
11411
|
string = toString(string);
|
|
11413
|
-
length =
|
|
11412
|
+
length = toInteger2(length);
|
|
11414
11413
|
var strLength = length ? stringSize(string) : 0;
|
|
11415
11414
|
return length && strLength < length ? createPadding(length - strLength, chars2) + string : string;
|
|
11416
11415
|
}
|
|
@@ -11426,7 +11425,7 @@ function requireLodash() {
|
|
|
11426
11425
|
if (guard ? isIterateeCall(string, n2, guard) : n2 === undefined$1) {
|
|
11427
11426
|
n2 = 1;
|
|
11428
11427
|
} else {
|
|
11429
|
-
n2 =
|
|
11428
|
+
n2 = toInteger2(n2);
|
|
11430
11429
|
}
|
|
11431
11430
|
return baseRepeat(toString(string), n2);
|
|
11432
11431
|
}
|
|
@@ -11459,7 +11458,7 @@ function requireLodash() {
|
|
|
11459
11458
|
});
|
|
11460
11459
|
function startsWith(string, target, position) {
|
|
11461
11460
|
string = toString(string);
|
|
11462
|
-
position = position == null ? 0 : baseClamp(
|
|
11461
|
+
position = position == null ? 0 : baseClamp(toInteger2(position), 0, string.length);
|
|
11463
11462
|
target = baseToString(target);
|
|
11464
11463
|
return string.slice(position, position + target.length) == target;
|
|
11465
11464
|
}
|
|
@@ -11555,7 +11554,7 @@ function requireLodash() {
|
|
|
11555
11554
|
var length = DEFAULT_TRUNC_LENGTH, omission = DEFAULT_TRUNC_OMISSION;
|
|
11556
11555
|
if (isObject(options)) {
|
|
11557
11556
|
var separator = "separator" in options ? options.separator : separator;
|
|
11558
|
-
length = "length" in options ?
|
|
11557
|
+
length = "length" in options ? toInteger2(options.length) : length;
|
|
11559
11558
|
omission = "omission" in options ? baseToString(options.omission) : omission;
|
|
11560
11559
|
}
|
|
11561
11560
|
string = toString(string);
|
|
@@ -11717,7 +11716,7 @@ function requireLodash() {
|
|
|
11717
11716
|
function noop2() {
|
|
11718
11717
|
}
|
|
11719
11718
|
function nthArg(n2) {
|
|
11720
|
-
n2 =
|
|
11719
|
+
n2 = toInteger2(n2);
|
|
11721
11720
|
return baseRest(function(args) {
|
|
11722
11721
|
return baseNth(args, n2);
|
|
11723
11722
|
});
|
|
@@ -11751,7 +11750,7 @@ function requireLodash() {
|
|
|
11751
11750
|
return true;
|
|
11752
11751
|
}
|
|
11753
11752
|
function times(n2, iteratee2) {
|
|
11754
|
-
n2 =
|
|
11753
|
+
n2 = toInteger2(n2);
|
|
11755
11754
|
if (n2 < 1 || n2 > MAX_SAFE_INTEGER) {
|
|
11756
11755
|
return [];
|
|
11757
11756
|
}
|
|
@@ -12101,7 +12100,7 @@ function requireLodash() {
|
|
|
12101
12100
|
lodash2.template = template;
|
|
12102
12101
|
lodash2.times = times;
|
|
12103
12102
|
lodash2.toFinite = toFinite;
|
|
12104
|
-
lodash2.toInteger =
|
|
12103
|
+
lodash2.toInteger = toInteger2;
|
|
12105
12104
|
lodash2.toLength = toLength;
|
|
12106
12105
|
lodash2.toLower = toLower;
|
|
12107
12106
|
lodash2.toNumber = toNumber;
|
|
@@ -12134,7 +12133,7 @@ function requireLodash() {
|
|
|
12134
12133
|
});
|
|
12135
12134
|
arrayEach(["drop", "take"], function(methodName, index) {
|
|
12136
12135
|
LazyWrapper.prototype[methodName] = function(n2) {
|
|
12137
|
-
n2 = n2 === undefined$1 ? 1 : nativeMax(
|
|
12136
|
+
n2 = n2 === undefined$1 ? 1 : nativeMax(toInteger2(n2), 0);
|
|
12138
12137
|
var result2 = this.__filtered__ && !index ? new LazyWrapper(this) : this.clone();
|
|
12139
12138
|
if (result2.__filtered__) {
|
|
12140
12139
|
result2.__takeCount__ = nativeMin(n2, result2.__takeCount__);
|
|
@@ -12195,7 +12194,7 @@ function requireLodash() {
|
|
|
12195
12194
|
return this.filter(negate(getIteratee(predicate)));
|
|
12196
12195
|
};
|
|
12197
12196
|
LazyWrapper.prototype.slice = function(start, end) {
|
|
12198
|
-
start =
|
|
12197
|
+
start = toInteger2(start);
|
|
12199
12198
|
var result2 = this;
|
|
12200
12199
|
if (result2.__filtered__ && (start > 0 || end < 0)) {
|
|
12201
12200
|
return new LazyWrapper(result2);
|
|
@@ -12206,7 +12205,7 @@ function requireLodash() {
|
|
|
12206
12205
|
result2 = result2.drop(start);
|
|
12207
12206
|
}
|
|
12208
12207
|
if (end !== undefined$1) {
|
|
12209
|
-
end =
|
|
12208
|
+
end = toInteger2(end);
|
|
12210
12209
|
result2 = end < 0 ? result2.dropRight(-end) : result2.take(end - start);
|
|
12211
12210
|
}
|
|
12212
12211
|
return result2;
|
|
@@ -12663,6 +12662,198 @@ function isExists(year, month, day) {
|
|
|
12663
12662
|
var date = new Date(year, month, day);
|
|
12664
12663
|
return date.getFullYear() === year && date.getMonth() === month && date.getDate() === day;
|
|
12665
12664
|
}
|
|
12665
|
+
var millisecondsInMinute = 6e4;
|
|
12666
|
+
var millisecondsInHour = 36e5;
|
|
12667
|
+
function requiredArgs(required, args) {
|
|
12668
|
+
if (args.length < required) {
|
|
12669
|
+
throw new TypeError(required + " argument required, but only " + args.length + " present");
|
|
12670
|
+
}
|
|
12671
|
+
}
|
|
12672
|
+
function toInteger(dirtyNumber) {
|
|
12673
|
+
if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) {
|
|
12674
|
+
return NaN;
|
|
12675
|
+
}
|
|
12676
|
+
var number = Number(dirtyNumber);
|
|
12677
|
+
if (isNaN(number)) {
|
|
12678
|
+
return number;
|
|
12679
|
+
}
|
|
12680
|
+
return number < 0 ? Math.ceil(number) : Math.floor(number);
|
|
12681
|
+
}
|
|
12682
|
+
function parseISO(argument, options) {
|
|
12683
|
+
var _options$additionalDi;
|
|
12684
|
+
requiredArgs(1, arguments);
|
|
12685
|
+
var additionalDigits = toInteger((_options$additionalDi = void 0) !== null && _options$additionalDi !== void 0 ? _options$additionalDi : 2);
|
|
12686
|
+
if (additionalDigits !== 2 && additionalDigits !== 1 && additionalDigits !== 0) {
|
|
12687
|
+
throw new RangeError("additionalDigits must be 0, 1 or 2");
|
|
12688
|
+
}
|
|
12689
|
+
if (!(typeof argument === "string" || Object.prototype.toString.call(argument) === "[object String]")) {
|
|
12690
|
+
return /* @__PURE__ */ new Date(NaN);
|
|
12691
|
+
}
|
|
12692
|
+
var dateStrings = splitDateString(argument);
|
|
12693
|
+
var date;
|
|
12694
|
+
if (dateStrings.date) {
|
|
12695
|
+
var parseYearResult = parseYear(dateStrings.date, additionalDigits);
|
|
12696
|
+
date = parseDate(parseYearResult.restDateString, parseYearResult.year);
|
|
12697
|
+
}
|
|
12698
|
+
if (!date || isNaN(date.getTime())) {
|
|
12699
|
+
return /* @__PURE__ */ new Date(NaN);
|
|
12700
|
+
}
|
|
12701
|
+
var timestamp = date.getTime();
|
|
12702
|
+
var time = 0;
|
|
12703
|
+
var offset;
|
|
12704
|
+
if (dateStrings.time) {
|
|
12705
|
+
time = parseTime(dateStrings.time);
|
|
12706
|
+
if (isNaN(time)) {
|
|
12707
|
+
return /* @__PURE__ */ new Date(NaN);
|
|
12708
|
+
}
|
|
12709
|
+
}
|
|
12710
|
+
if (dateStrings.timezone) {
|
|
12711
|
+
offset = parseTimezone(dateStrings.timezone);
|
|
12712
|
+
if (isNaN(offset)) {
|
|
12713
|
+
return /* @__PURE__ */ new Date(NaN);
|
|
12714
|
+
}
|
|
12715
|
+
} else {
|
|
12716
|
+
var dirtyDate = new Date(timestamp + time);
|
|
12717
|
+
var result = /* @__PURE__ */ new Date(0);
|
|
12718
|
+
result.setFullYear(dirtyDate.getUTCFullYear(), dirtyDate.getUTCMonth(), dirtyDate.getUTCDate());
|
|
12719
|
+
result.setHours(dirtyDate.getUTCHours(), dirtyDate.getUTCMinutes(), dirtyDate.getUTCSeconds(), dirtyDate.getUTCMilliseconds());
|
|
12720
|
+
return result;
|
|
12721
|
+
}
|
|
12722
|
+
return new Date(timestamp + time + offset);
|
|
12723
|
+
}
|
|
12724
|
+
var patterns = {
|
|
12725
|
+
dateTimeDelimiter: /[T ]/,
|
|
12726
|
+
timeZoneDelimiter: /[Z ]/i,
|
|
12727
|
+
timezone: /([Z+-].*)$/
|
|
12728
|
+
};
|
|
12729
|
+
var dateRegex = /^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/;
|
|
12730
|
+
var timeRegex = /^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/;
|
|
12731
|
+
var timezoneRegex = /^([+-])(\d{2})(?::?(\d{2}))?$/;
|
|
12732
|
+
function splitDateString(dateString) {
|
|
12733
|
+
var dateStrings = {};
|
|
12734
|
+
var array = dateString.split(patterns.dateTimeDelimiter);
|
|
12735
|
+
var timeString;
|
|
12736
|
+
if (array.length > 2) {
|
|
12737
|
+
return dateStrings;
|
|
12738
|
+
}
|
|
12739
|
+
if (/:/.test(array[0])) {
|
|
12740
|
+
timeString = array[0];
|
|
12741
|
+
} else {
|
|
12742
|
+
dateStrings.date = array[0];
|
|
12743
|
+
timeString = array[1];
|
|
12744
|
+
if (patterns.timeZoneDelimiter.test(dateStrings.date)) {
|
|
12745
|
+
dateStrings.date = dateString.split(patterns.timeZoneDelimiter)[0];
|
|
12746
|
+
timeString = dateString.substr(dateStrings.date.length, dateString.length);
|
|
12747
|
+
}
|
|
12748
|
+
}
|
|
12749
|
+
if (timeString) {
|
|
12750
|
+
var token = patterns.timezone.exec(timeString);
|
|
12751
|
+
if (token) {
|
|
12752
|
+
dateStrings.time = timeString.replace(token[1], "");
|
|
12753
|
+
dateStrings.timezone = token[1];
|
|
12754
|
+
} else {
|
|
12755
|
+
dateStrings.time = timeString;
|
|
12756
|
+
}
|
|
12757
|
+
}
|
|
12758
|
+
return dateStrings;
|
|
12759
|
+
}
|
|
12760
|
+
function parseYear(dateString, additionalDigits) {
|
|
12761
|
+
var regex = new RegExp("^(?:(\\d{4}|[+-]\\d{" + (4 + additionalDigits) + "})|(\\d{2}|[+-]\\d{" + (2 + additionalDigits) + "})$)");
|
|
12762
|
+
var captures = dateString.match(regex);
|
|
12763
|
+
if (!captures) return {
|
|
12764
|
+
year: NaN,
|
|
12765
|
+
restDateString: ""
|
|
12766
|
+
};
|
|
12767
|
+
var year = captures[1] ? parseInt(captures[1]) : null;
|
|
12768
|
+
var century = captures[2] ? parseInt(captures[2]) : null;
|
|
12769
|
+
return {
|
|
12770
|
+
year: century === null ? year : century * 100,
|
|
12771
|
+
restDateString: dateString.slice((captures[1] || captures[2]).length)
|
|
12772
|
+
};
|
|
12773
|
+
}
|
|
12774
|
+
function parseDate(dateString, year) {
|
|
12775
|
+
if (year === null) return /* @__PURE__ */ new Date(NaN);
|
|
12776
|
+
var captures = dateString.match(dateRegex);
|
|
12777
|
+
if (!captures) return /* @__PURE__ */ new Date(NaN);
|
|
12778
|
+
var isWeekDate = !!captures[4];
|
|
12779
|
+
var dayOfYear = parseDateUnit(captures[1]);
|
|
12780
|
+
var month = parseDateUnit(captures[2]) - 1;
|
|
12781
|
+
var day = parseDateUnit(captures[3]);
|
|
12782
|
+
var week = parseDateUnit(captures[4]);
|
|
12783
|
+
var dayOfWeek = parseDateUnit(captures[5]) - 1;
|
|
12784
|
+
if (isWeekDate) {
|
|
12785
|
+
if (!validateWeekDate(year, week, dayOfWeek)) {
|
|
12786
|
+
return /* @__PURE__ */ new Date(NaN);
|
|
12787
|
+
}
|
|
12788
|
+
return dayOfISOWeekYear(year, week, dayOfWeek);
|
|
12789
|
+
} else {
|
|
12790
|
+
var date = /* @__PURE__ */ new Date(0);
|
|
12791
|
+
if (!validateDate(year, month, day) || !validateDayOfYearDate(year, dayOfYear)) {
|
|
12792
|
+
return /* @__PURE__ */ new Date(NaN);
|
|
12793
|
+
}
|
|
12794
|
+
date.setUTCFullYear(year, month, Math.max(dayOfYear, day));
|
|
12795
|
+
return date;
|
|
12796
|
+
}
|
|
12797
|
+
}
|
|
12798
|
+
function parseDateUnit(value) {
|
|
12799
|
+
return value ? parseInt(value) : 1;
|
|
12800
|
+
}
|
|
12801
|
+
function parseTime(timeString) {
|
|
12802
|
+
var captures = timeString.match(timeRegex);
|
|
12803
|
+
if (!captures) return NaN;
|
|
12804
|
+
var hours = parseTimeUnit(captures[1]);
|
|
12805
|
+
var minutes = parseTimeUnit(captures[2]);
|
|
12806
|
+
var seconds = parseTimeUnit(captures[3]);
|
|
12807
|
+
if (!validateTime(hours, minutes, seconds)) {
|
|
12808
|
+
return NaN;
|
|
12809
|
+
}
|
|
12810
|
+
return hours * millisecondsInHour + minutes * millisecondsInMinute + seconds * 1e3;
|
|
12811
|
+
}
|
|
12812
|
+
function parseTimeUnit(value) {
|
|
12813
|
+
return value && parseFloat(value.replace(",", ".")) || 0;
|
|
12814
|
+
}
|
|
12815
|
+
function parseTimezone(timezoneString) {
|
|
12816
|
+
if (timezoneString === "Z") return 0;
|
|
12817
|
+
var captures = timezoneString.match(timezoneRegex);
|
|
12818
|
+
if (!captures) return 0;
|
|
12819
|
+
var sign = captures[1] === "+" ? -1 : 1;
|
|
12820
|
+
var hours = parseInt(captures[2]);
|
|
12821
|
+
var minutes = captures[3] && parseInt(captures[3]) || 0;
|
|
12822
|
+
if (!validateTimezone(hours, minutes)) {
|
|
12823
|
+
return NaN;
|
|
12824
|
+
}
|
|
12825
|
+
return sign * (hours * millisecondsInHour + minutes * millisecondsInMinute);
|
|
12826
|
+
}
|
|
12827
|
+
function dayOfISOWeekYear(isoWeekYear, week, day) {
|
|
12828
|
+
var date = /* @__PURE__ */ new Date(0);
|
|
12829
|
+
date.setUTCFullYear(isoWeekYear, 0, 4);
|
|
12830
|
+
var fourthOfJanuaryDay = date.getUTCDay() || 7;
|
|
12831
|
+
var diff = (week - 1) * 7 + day + 1 - fourthOfJanuaryDay;
|
|
12832
|
+
date.setUTCDate(date.getUTCDate() + diff);
|
|
12833
|
+
return date;
|
|
12834
|
+
}
|
|
12835
|
+
var daysInMonths = [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
|
|
12836
|
+
function isLeapYearIndex(year) {
|
|
12837
|
+
return year % 400 === 0 || year % 4 === 0 && year % 100 !== 0;
|
|
12838
|
+
}
|
|
12839
|
+
function validateDate(year, month, date) {
|
|
12840
|
+
return month >= 0 && month <= 11 && date >= 1 && date <= (daysInMonths[month] || (isLeapYearIndex(year) ? 29 : 28));
|
|
12841
|
+
}
|
|
12842
|
+
function validateDayOfYearDate(year, dayOfYear) {
|
|
12843
|
+
return dayOfYear >= 1 && dayOfYear <= (isLeapYearIndex(year) ? 366 : 365);
|
|
12844
|
+
}
|
|
12845
|
+
function validateWeekDate(_year, week, day) {
|
|
12846
|
+
return week >= 1 && week <= 53 && day >= 0 && day <= 6;
|
|
12847
|
+
}
|
|
12848
|
+
function validateTime(hours, minutes, seconds) {
|
|
12849
|
+
if (hours === 24) {
|
|
12850
|
+
return minutes === 0 && seconds === 0;
|
|
12851
|
+
}
|
|
12852
|
+
return seconds >= 0 && seconds < 60 && minutes >= 0 && minutes < 60 && hours >= 0 && hours < 25;
|
|
12853
|
+
}
|
|
12854
|
+
function validateTimezone(_hours, minutes) {
|
|
12855
|
+
return minutes >= 0 && minutes <= 59;
|
|
12856
|
+
}
|
|
12666
12857
|
const ignorableErrors = [
|
|
12667
12858
|
"requires_answer",
|
|
12668
12859
|
"minimum_checked_required",
|
|
@@ -12837,7 +13028,7 @@ class MinimumValidator extends BaseValidator {
|
|
|
12837
13028
|
validate(response) {
|
|
12838
13029
|
const validationState = response.getValidationFieldState(this.config.fieldKey);
|
|
12839
13030
|
if (!isPresentNumber(validationState.value)) return;
|
|
12840
|
-
if (
|
|
13031
|
+
if (validationState.value < this.config.value) {
|
|
12841
13032
|
validationState.addError({ type: this.config.type, message: this.config.explanation || { t: "minimum", value: this.config.value.toString() } });
|
|
12842
13033
|
}
|
|
12843
13034
|
}
|
|
@@ -12846,7 +13037,7 @@ class MaximumValidator extends BaseValidator {
|
|
|
12846
13037
|
validate(response) {
|
|
12847
13038
|
const validationState = response.getValidationFieldState(this.config.fieldKey);
|
|
12848
13039
|
if (!isPresentNumber(validationState.value)) return;
|
|
12849
|
-
if (
|
|
13040
|
+
if (validationState.value > this.config.value) {
|
|
12850
13041
|
validationState.addError({ type: this.config.type, message: this.config.explanation || { t: "maximum", value: this.config.value.toString() } });
|
|
12851
13042
|
}
|
|
12852
13043
|
}
|
|
@@ -12856,7 +13047,8 @@ class MinimumDateValidator extends BaseValidator {
|
|
|
12856
13047
|
const validationState = response.getValidationFieldState(this.config.fieldKey);
|
|
12857
13048
|
if (!isPresentStringMap(validationState.value)) return;
|
|
12858
13049
|
const values = dateValuesWithDefaults(validationState.value);
|
|
12859
|
-
|
|
13050
|
+
const minimumDate = parseISO(this.config.value);
|
|
13051
|
+
if (values && new Date(values.year, values.month, values.day, values.hour, values.minute) < minimumDate) {
|
|
12860
13052
|
validationState.addError({ type: this.config.type, message: { t: "minimum_date", friendly_date: this.config.value } });
|
|
12861
13053
|
}
|
|
12862
13054
|
}
|
|
@@ -12866,7 +13058,8 @@ class MaximumDateValidator extends BaseValidator {
|
|
|
12866
13058
|
const validationState = response.getValidationFieldState(this.config.fieldKey);
|
|
12867
13059
|
if (!isPresentStringMap(validationState.value)) return;
|
|
12868
13060
|
const values = dateValuesWithDefaults(validationState.value);
|
|
12869
|
-
|
|
13061
|
+
const maximumDate = parseISO(this.config.value);
|
|
13062
|
+
if (values && new Date(values.year, values.month, values.day, values.hour, values.minute) > maximumDate) {
|
|
12870
13063
|
validationState.addError({ type: this.config.type, message: { t: "maximum_date", friendly_date: this.config.value } });
|
|
12871
13064
|
}
|
|
12872
13065
|
}
|
|
@@ -12974,7 +13167,7 @@ class Response {
|
|
|
12974
13167
|
// returns values with hidden and disabled values nulled.
|
|
12975
13168
|
cleanValues() {
|
|
12976
13169
|
const validKeys = Object.keys(this.values).filter(
|
|
12977
|
-
(key) => this.values[key] && this.isVisible(key) && !this.isDisabled(key)
|
|
13170
|
+
(key) => presenceValue(this.values[key]) != null && this.isVisible(key) && !this.isDisabled(key)
|
|
12978
13171
|
);
|
|
12979
13172
|
return lodashExports.pick(this.values, validKeys);
|
|
12980
13173
|
}
|
|
@@ -13433,6 +13626,327 @@ const parseMultiSelectAnswer = (answer, question) => {
|
|
|
13433
13626
|
});
|
|
13434
13627
|
return answerSet;
|
|
13435
13628
|
};
|
|
13629
|
+
var jsxRuntime = { exports: {} };
|
|
13630
|
+
var reactJsxRuntime_production = {};
|
|
13631
|
+
/**
|
|
13632
|
+
* @license React
|
|
13633
|
+
* react-jsx-runtime.production.js
|
|
13634
|
+
*
|
|
13635
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
13636
|
+
*
|
|
13637
|
+
* This source code is licensed under the MIT license found in the
|
|
13638
|
+
* LICENSE file in the root directory of this source tree.
|
|
13639
|
+
*/
|
|
13640
|
+
var hasRequiredReactJsxRuntime_production;
|
|
13641
|
+
function requireReactJsxRuntime_production() {
|
|
13642
|
+
if (hasRequiredReactJsxRuntime_production) return reactJsxRuntime_production;
|
|
13643
|
+
hasRequiredReactJsxRuntime_production = 1;
|
|
13644
|
+
var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), REACT_FRAGMENT_TYPE = Symbol.for("react.fragment");
|
|
13645
|
+
function jsxProd(type, config, maybeKey) {
|
|
13646
|
+
var key = null;
|
|
13647
|
+
void 0 !== maybeKey && (key = "" + maybeKey);
|
|
13648
|
+
void 0 !== config.key && (key = "" + config.key);
|
|
13649
|
+
if ("key" in config) {
|
|
13650
|
+
maybeKey = {};
|
|
13651
|
+
for (var propName in config)
|
|
13652
|
+
"key" !== propName && (maybeKey[propName] = config[propName]);
|
|
13653
|
+
} else maybeKey = config;
|
|
13654
|
+
config = maybeKey.ref;
|
|
13655
|
+
return {
|
|
13656
|
+
$$typeof: REACT_ELEMENT_TYPE,
|
|
13657
|
+
type,
|
|
13658
|
+
key,
|
|
13659
|
+
ref: void 0 !== config ? config : null,
|
|
13660
|
+
props: maybeKey
|
|
13661
|
+
};
|
|
13662
|
+
}
|
|
13663
|
+
reactJsxRuntime_production.Fragment = REACT_FRAGMENT_TYPE;
|
|
13664
|
+
reactJsxRuntime_production.jsx = jsxProd;
|
|
13665
|
+
reactJsxRuntime_production.jsxs = jsxProd;
|
|
13666
|
+
return reactJsxRuntime_production;
|
|
13667
|
+
}
|
|
13668
|
+
var reactJsxRuntime_development = {};
|
|
13669
|
+
/**
|
|
13670
|
+
* @license React
|
|
13671
|
+
* react-jsx-runtime.development.js
|
|
13672
|
+
*
|
|
13673
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
13674
|
+
*
|
|
13675
|
+
* This source code is licensed under the MIT license found in the
|
|
13676
|
+
* LICENSE file in the root directory of this source tree.
|
|
13677
|
+
*/
|
|
13678
|
+
var hasRequiredReactJsxRuntime_development;
|
|
13679
|
+
function requireReactJsxRuntime_development() {
|
|
13680
|
+
if (hasRequiredReactJsxRuntime_development) return reactJsxRuntime_development;
|
|
13681
|
+
hasRequiredReactJsxRuntime_development = 1;
|
|
13682
|
+
"production" !== process.env.NODE_ENV && (function() {
|
|
13683
|
+
function getComponentNameFromType(type) {
|
|
13684
|
+
if (null == type) return null;
|
|
13685
|
+
if ("function" === typeof type)
|
|
13686
|
+
return type.$$typeof === REACT_CLIENT_REFERENCE ? null : type.displayName || type.name || null;
|
|
13687
|
+
if ("string" === typeof type) return type;
|
|
13688
|
+
switch (type) {
|
|
13689
|
+
case REACT_FRAGMENT_TYPE:
|
|
13690
|
+
return "Fragment";
|
|
13691
|
+
case REACT_PROFILER_TYPE:
|
|
13692
|
+
return "Profiler";
|
|
13693
|
+
case REACT_STRICT_MODE_TYPE:
|
|
13694
|
+
return "StrictMode";
|
|
13695
|
+
case REACT_SUSPENSE_TYPE:
|
|
13696
|
+
return "Suspense";
|
|
13697
|
+
case REACT_SUSPENSE_LIST_TYPE:
|
|
13698
|
+
return "SuspenseList";
|
|
13699
|
+
case REACT_ACTIVITY_TYPE:
|
|
13700
|
+
return "Activity";
|
|
13701
|
+
}
|
|
13702
|
+
if ("object" === typeof type)
|
|
13703
|
+
switch ("number" === typeof type.tag && console.error(
|
|
13704
|
+
"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
|
|
13705
|
+
), type.$$typeof) {
|
|
13706
|
+
case REACT_PORTAL_TYPE:
|
|
13707
|
+
return "Portal";
|
|
13708
|
+
case REACT_CONTEXT_TYPE:
|
|
13709
|
+
return (type.displayName || "Context") + ".Provider";
|
|
13710
|
+
case REACT_CONSUMER_TYPE:
|
|
13711
|
+
return (type._context.displayName || "Context") + ".Consumer";
|
|
13712
|
+
case REACT_FORWARD_REF_TYPE:
|
|
13713
|
+
var innerType = type.render;
|
|
13714
|
+
type = type.displayName;
|
|
13715
|
+
type || (type = innerType.displayName || innerType.name || "", type = "" !== type ? "ForwardRef(" + type + ")" : "ForwardRef");
|
|
13716
|
+
return type;
|
|
13717
|
+
case REACT_MEMO_TYPE:
|
|
13718
|
+
return innerType = type.displayName || null, null !== innerType ? innerType : getComponentNameFromType(type.type) || "Memo";
|
|
13719
|
+
case REACT_LAZY_TYPE:
|
|
13720
|
+
innerType = type._payload;
|
|
13721
|
+
type = type._init;
|
|
13722
|
+
try {
|
|
13723
|
+
return getComponentNameFromType(type(innerType));
|
|
13724
|
+
} catch (x2) {
|
|
13725
|
+
}
|
|
13726
|
+
}
|
|
13727
|
+
return null;
|
|
13728
|
+
}
|
|
13729
|
+
function testStringCoercion(value) {
|
|
13730
|
+
return "" + value;
|
|
13731
|
+
}
|
|
13732
|
+
function checkKeyStringCoercion(value) {
|
|
13733
|
+
try {
|
|
13734
|
+
testStringCoercion(value);
|
|
13735
|
+
var JSCompiler_inline_result = false;
|
|
13736
|
+
} catch (e2) {
|
|
13737
|
+
JSCompiler_inline_result = true;
|
|
13738
|
+
}
|
|
13739
|
+
if (JSCompiler_inline_result) {
|
|
13740
|
+
JSCompiler_inline_result = console;
|
|
13741
|
+
var JSCompiler_temp_const = JSCompiler_inline_result.error;
|
|
13742
|
+
var JSCompiler_inline_result$jscomp$0 = "function" === typeof Symbol && Symbol.toStringTag && value[Symbol.toStringTag] || value.constructor.name || "Object";
|
|
13743
|
+
JSCompiler_temp_const.call(
|
|
13744
|
+
JSCompiler_inline_result,
|
|
13745
|
+
"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
|
|
13746
|
+
JSCompiler_inline_result$jscomp$0
|
|
13747
|
+
);
|
|
13748
|
+
return testStringCoercion(value);
|
|
13749
|
+
}
|
|
13750
|
+
}
|
|
13751
|
+
function getTaskName(type) {
|
|
13752
|
+
if (type === REACT_FRAGMENT_TYPE) return "<>";
|
|
13753
|
+
if ("object" === typeof type && null !== type && type.$$typeof === REACT_LAZY_TYPE)
|
|
13754
|
+
return "<...>";
|
|
13755
|
+
try {
|
|
13756
|
+
var name = getComponentNameFromType(type);
|
|
13757
|
+
return name ? "<" + name + ">" : "<...>";
|
|
13758
|
+
} catch (x2) {
|
|
13759
|
+
return "<...>";
|
|
13760
|
+
}
|
|
13761
|
+
}
|
|
13762
|
+
function getOwner() {
|
|
13763
|
+
var dispatcher = ReactSharedInternals.A;
|
|
13764
|
+
return null === dispatcher ? null : dispatcher.getOwner();
|
|
13765
|
+
}
|
|
13766
|
+
function UnknownOwner() {
|
|
13767
|
+
return Error("react-stack-top-frame");
|
|
13768
|
+
}
|
|
13769
|
+
function hasValidKey(config) {
|
|
13770
|
+
if (hasOwnProperty.call(config, "key")) {
|
|
13771
|
+
var getter = Object.getOwnPropertyDescriptor(config, "key").get;
|
|
13772
|
+
if (getter && getter.isReactWarning) return false;
|
|
13773
|
+
}
|
|
13774
|
+
return void 0 !== config.key;
|
|
13775
|
+
}
|
|
13776
|
+
function defineKeyPropWarningGetter(props, displayName) {
|
|
13777
|
+
function warnAboutAccessingKey() {
|
|
13778
|
+
specialPropKeyWarningShown || (specialPropKeyWarningShown = true, console.error(
|
|
13779
|
+
"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
|
|
13780
|
+
displayName
|
|
13781
|
+
));
|
|
13782
|
+
}
|
|
13783
|
+
warnAboutAccessingKey.isReactWarning = true;
|
|
13784
|
+
Object.defineProperty(props, "key", {
|
|
13785
|
+
get: warnAboutAccessingKey,
|
|
13786
|
+
configurable: true
|
|
13787
|
+
});
|
|
13788
|
+
}
|
|
13789
|
+
function elementRefGetterWithDeprecationWarning() {
|
|
13790
|
+
var componentName = getComponentNameFromType(this.type);
|
|
13791
|
+
didWarnAboutElementRef[componentName] || (didWarnAboutElementRef[componentName] = true, console.error(
|
|
13792
|
+
"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
|
|
13793
|
+
));
|
|
13794
|
+
componentName = this.props.ref;
|
|
13795
|
+
return void 0 !== componentName ? componentName : null;
|
|
13796
|
+
}
|
|
13797
|
+
function ReactElement(type, key, self2, source, owner, props, debugStack, debugTask) {
|
|
13798
|
+
self2 = props.ref;
|
|
13799
|
+
type = {
|
|
13800
|
+
$$typeof: REACT_ELEMENT_TYPE,
|
|
13801
|
+
type,
|
|
13802
|
+
key,
|
|
13803
|
+
props,
|
|
13804
|
+
_owner: owner
|
|
13805
|
+
};
|
|
13806
|
+
null !== (void 0 !== self2 ? self2 : null) ? Object.defineProperty(type, "ref", {
|
|
13807
|
+
enumerable: false,
|
|
13808
|
+
get: elementRefGetterWithDeprecationWarning
|
|
13809
|
+
}) : Object.defineProperty(type, "ref", { enumerable: false, value: null });
|
|
13810
|
+
type._store = {};
|
|
13811
|
+
Object.defineProperty(type._store, "validated", {
|
|
13812
|
+
configurable: false,
|
|
13813
|
+
enumerable: false,
|
|
13814
|
+
writable: true,
|
|
13815
|
+
value: 0
|
|
13816
|
+
});
|
|
13817
|
+
Object.defineProperty(type, "_debugInfo", {
|
|
13818
|
+
configurable: false,
|
|
13819
|
+
enumerable: false,
|
|
13820
|
+
writable: true,
|
|
13821
|
+
value: null
|
|
13822
|
+
});
|
|
13823
|
+
Object.defineProperty(type, "_debugStack", {
|
|
13824
|
+
configurable: false,
|
|
13825
|
+
enumerable: false,
|
|
13826
|
+
writable: true,
|
|
13827
|
+
value: debugStack
|
|
13828
|
+
});
|
|
13829
|
+
Object.defineProperty(type, "_debugTask", {
|
|
13830
|
+
configurable: false,
|
|
13831
|
+
enumerable: false,
|
|
13832
|
+
writable: true,
|
|
13833
|
+
value: debugTask
|
|
13834
|
+
});
|
|
13835
|
+
Object.freeze && (Object.freeze(type.props), Object.freeze(type));
|
|
13836
|
+
return type;
|
|
13837
|
+
}
|
|
13838
|
+
function jsxDEVImpl(type, config, maybeKey, isStaticChildren, source, self2, debugStack, debugTask) {
|
|
13839
|
+
var children = config.children;
|
|
13840
|
+
if (void 0 !== children)
|
|
13841
|
+
if (isStaticChildren)
|
|
13842
|
+
if (isArrayImpl(children)) {
|
|
13843
|
+
for (isStaticChildren = 0; isStaticChildren < children.length; isStaticChildren++)
|
|
13844
|
+
validateChildKeys(children[isStaticChildren]);
|
|
13845
|
+
Object.freeze && Object.freeze(children);
|
|
13846
|
+
} else
|
|
13847
|
+
console.error(
|
|
13848
|
+
"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
|
|
13849
|
+
);
|
|
13850
|
+
else validateChildKeys(children);
|
|
13851
|
+
if (hasOwnProperty.call(config, "key")) {
|
|
13852
|
+
children = getComponentNameFromType(type);
|
|
13853
|
+
var keys = Object.keys(config).filter(function(k2) {
|
|
13854
|
+
return "key" !== k2;
|
|
13855
|
+
});
|
|
13856
|
+
isStaticChildren = 0 < keys.length ? "{key: someKey, " + keys.join(": ..., ") + ": ...}" : "{key: someKey}";
|
|
13857
|
+
didWarnAboutKeySpread[children + isStaticChildren] || (keys = 0 < keys.length ? "{" + keys.join(": ..., ") + ": ...}" : "{}", console.error(
|
|
13858
|
+
'A props object containing a "key" prop is being spread into JSX:\n let props = %s;\n <%s {...props} />\nReact keys must be passed directly to JSX without using spread:\n let props = %s;\n <%s key={someKey} {...props} />',
|
|
13859
|
+
isStaticChildren,
|
|
13860
|
+
children,
|
|
13861
|
+
keys,
|
|
13862
|
+
children
|
|
13863
|
+
), didWarnAboutKeySpread[children + isStaticChildren] = true);
|
|
13864
|
+
}
|
|
13865
|
+
children = null;
|
|
13866
|
+
void 0 !== maybeKey && (checkKeyStringCoercion(maybeKey), children = "" + maybeKey);
|
|
13867
|
+
hasValidKey(config) && (checkKeyStringCoercion(config.key), children = "" + config.key);
|
|
13868
|
+
if ("key" in config) {
|
|
13869
|
+
maybeKey = {};
|
|
13870
|
+
for (var propName in config)
|
|
13871
|
+
"key" !== propName && (maybeKey[propName] = config[propName]);
|
|
13872
|
+
} else maybeKey = config;
|
|
13873
|
+
children && defineKeyPropWarningGetter(
|
|
13874
|
+
maybeKey,
|
|
13875
|
+
"function" === typeof type ? type.displayName || type.name || "Unknown" : type
|
|
13876
|
+
);
|
|
13877
|
+
return ReactElement(
|
|
13878
|
+
type,
|
|
13879
|
+
children,
|
|
13880
|
+
self2,
|
|
13881
|
+
source,
|
|
13882
|
+
getOwner(),
|
|
13883
|
+
maybeKey,
|
|
13884
|
+
debugStack,
|
|
13885
|
+
debugTask
|
|
13886
|
+
);
|
|
13887
|
+
}
|
|
13888
|
+
function validateChildKeys(node) {
|
|
13889
|
+
"object" === typeof node && null !== node && node.$$typeof === REACT_ELEMENT_TYPE && node._store && (node._store.validated = 1);
|
|
13890
|
+
}
|
|
13891
|
+
var React2 = React__default, REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = Symbol.for("react.profiler");
|
|
13892
|
+
var REACT_CONSUMER_TYPE = Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = Symbol.for("react.memo"), REACT_LAZY_TYPE = Symbol.for("react.lazy"), REACT_ACTIVITY_TYPE = Symbol.for("react.activity"), REACT_CLIENT_REFERENCE = Symbol.for("react.client.reference"), ReactSharedInternals = React2.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, hasOwnProperty = Object.prototype.hasOwnProperty, isArrayImpl = Array.isArray, createTask = console.createTask ? console.createTask : function() {
|
|
13893
|
+
return null;
|
|
13894
|
+
};
|
|
13895
|
+
React2 = {
|
|
13896
|
+
react_stack_bottom_frame: function(callStackForError) {
|
|
13897
|
+
return callStackForError();
|
|
13898
|
+
}
|
|
13899
|
+
};
|
|
13900
|
+
var specialPropKeyWarningShown;
|
|
13901
|
+
var didWarnAboutElementRef = {};
|
|
13902
|
+
var unknownOwnerDebugStack = React2.react_stack_bottom_frame.bind(
|
|
13903
|
+
React2,
|
|
13904
|
+
UnknownOwner
|
|
13905
|
+
)();
|
|
13906
|
+
var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));
|
|
13907
|
+
var didWarnAboutKeySpread = {};
|
|
13908
|
+
reactJsxRuntime_development.Fragment = REACT_FRAGMENT_TYPE;
|
|
13909
|
+
reactJsxRuntime_development.jsx = function(type, config, maybeKey, source, self2) {
|
|
13910
|
+
var trackActualOwner = 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;
|
|
13911
|
+
return jsxDEVImpl(
|
|
13912
|
+
type,
|
|
13913
|
+
config,
|
|
13914
|
+
maybeKey,
|
|
13915
|
+
false,
|
|
13916
|
+
source,
|
|
13917
|
+
self2,
|
|
13918
|
+
trackActualOwner ? Error("react-stack-top-frame") : unknownOwnerDebugStack,
|
|
13919
|
+
trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask
|
|
13920
|
+
);
|
|
13921
|
+
};
|
|
13922
|
+
reactJsxRuntime_development.jsxs = function(type, config, maybeKey, source, self2) {
|
|
13923
|
+
var trackActualOwner = 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;
|
|
13924
|
+
return jsxDEVImpl(
|
|
13925
|
+
type,
|
|
13926
|
+
config,
|
|
13927
|
+
maybeKey,
|
|
13928
|
+
true,
|
|
13929
|
+
source,
|
|
13930
|
+
self2,
|
|
13931
|
+
trackActualOwner ? Error("react-stack-top-frame") : unknownOwnerDebugStack,
|
|
13932
|
+
trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask
|
|
13933
|
+
);
|
|
13934
|
+
};
|
|
13935
|
+
})();
|
|
13936
|
+
return reactJsxRuntime_development;
|
|
13937
|
+
}
|
|
13938
|
+
var hasRequiredJsxRuntime;
|
|
13939
|
+
function requireJsxRuntime() {
|
|
13940
|
+
if (hasRequiredJsxRuntime) return jsxRuntime.exports;
|
|
13941
|
+
hasRequiredJsxRuntime = 1;
|
|
13942
|
+
if (process.env.NODE_ENV === "production") {
|
|
13943
|
+
jsxRuntime.exports = requireReactJsxRuntime_production();
|
|
13944
|
+
} else {
|
|
13945
|
+
jsxRuntime.exports = requireReactJsxRuntime_development();
|
|
13946
|
+
}
|
|
13947
|
+
return jsxRuntime.exports;
|
|
13948
|
+
}
|
|
13949
|
+
var jsxRuntimeExports = requireJsxRuntime();
|
|
13436
13950
|
var classnames = { exports: {} };
|
|
13437
13951
|
/*!
|
|
13438
13952
|
Copyright (c) 2018 Jed Watson.
|
|
@@ -13617,13 +14131,13 @@ const ProgressBar = ({
|
|
|
13617
14131
|
if (max <= 1) {
|
|
13618
14132
|
return null;
|
|
13619
14133
|
}
|
|
13620
|
-
return /* @__PURE__ */ jsx("div", { className: "progress-bar", children: /* @__PURE__ */ jsxs("div", { className: "progress-wrapper", children: [
|
|
13621
|
-
/* @__PURE__ */ jsx(
|
|
14134
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "progress-bar", children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "progress-wrapper", children: [
|
|
14135
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
13622
14136
|
"div",
|
|
13623
14137
|
{
|
|
13624
14138
|
className: classNames("progress-slider", { "long-list": max > 25 }),
|
|
13625
14139
|
children: Array.from({ length: max }, (_x, i2) => {
|
|
13626
|
-
return /* @__PURE__ */ jsx(
|
|
14140
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
13627
14141
|
"span",
|
|
13628
14142
|
{
|
|
13629
14143
|
className: classNames("progress-stop", `step-${i2 + 1}`, {
|
|
@@ -13639,33 +14153,33 @@ const ProgressBar = ({
|
|
|
13639
14153
|
})
|
|
13640
14154
|
}
|
|
13641
14155
|
),
|
|
13642
|
-
/* @__PURE__ */ jsx("div", { className: "progress-details", children: t2("step_i_of_n", { i: current + 1, n: max }) })
|
|
14156
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "progress-details", children: t2("step_i_of_n", { i: current + 1, n: max }) })
|
|
13643
14157
|
] }) });
|
|
13644
14158
|
};
|
|
13645
14159
|
const HtmlItem = ({ item }) => {
|
|
13646
14160
|
const html = useTranslationCurliesFor(`${item.key}`);
|
|
13647
14161
|
if (!html) return null;
|
|
13648
|
-
return /* @__PURE__ */ jsx("div", { className: "item", children: /* @__PURE__ */ jsx("div", { className: "prose text", dangerouslySetInnerHTML: { __html: html } }) });
|
|
14162
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "item", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "prose text", dangerouslySetInnerHTML: { __html: html } }) });
|
|
13649
14163
|
};
|
|
13650
14164
|
const MainLabel = ({ question }) => {
|
|
13651
14165
|
const titleText = useTranslationCurliesFor(`${question.key}.title`);
|
|
13652
14166
|
if (!titleText) return null;
|
|
13653
14167
|
const labelFor = `answer_${question.key}`;
|
|
13654
|
-
return /* @__PURE__ */ jsx("div", { className: "main", children: /* @__PURE__ */ jsx("label", { htmlFor: labelFor, dangerouslySetInnerHTML: { __html: titleText } }) });
|
|
14168
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "main", children: /* @__PURE__ */ jsxRuntimeExports.jsx("label", { htmlFor: labelFor, dangerouslySetInnerHTML: { __html: titleText } }) });
|
|
13655
14169
|
};
|
|
13656
14170
|
const QuestionDescription = (props) => {
|
|
13657
14171
|
const description = useTranslationCurliesFor(`${props.question.key}.description`);
|
|
13658
14172
|
if (!description) return null;
|
|
13659
|
-
return /* @__PURE__ */ jsx("div", { className: "font-light description prose", dangerouslySetInnerHTML: { __html: description } });
|
|
14173
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "font-light description prose", dangerouslySetInnerHTML: { __html: description } });
|
|
13660
14174
|
};
|
|
13661
14175
|
const ValidationErrors = ({ fieldState }) => {
|
|
13662
14176
|
if (!fieldState.showErrors) return null;
|
|
13663
|
-
return /* @__PURE__ */ jsx(Fragment, { children: fieldState.errors.map((error) => /* @__PURE__ */ jsx(Error$1, { error, fieldKey: fieldState.key }, error.type)) });
|
|
14177
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: fieldState.errors.map((error) => /* @__PURE__ */ jsxRuntimeExports.jsx(Error$1, { error, fieldKey: fieldState.key }, error.type)) });
|
|
13664
14178
|
};
|
|
13665
14179
|
const Error$1 = ({ error, fieldKey }) => {
|
|
13666
14180
|
const className = classNames("error", error.type);
|
|
13667
14181
|
const message = useMessageAsString(error, fieldKey);
|
|
13668
|
-
return /* @__PURE__ */ jsx("div", { className, children: message });
|
|
14182
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className, children: message });
|
|
13669
14183
|
};
|
|
13670
14184
|
function useMessageAsString(error, fieldKey) {
|
|
13671
14185
|
const { t: t2 } = useTranslation();
|
|
@@ -13689,10 +14203,10 @@ const QuestionWrapper = (props) => {
|
|
|
13689
14203
|
active: fieldState.isActiveQuestion,
|
|
13690
14204
|
indent: (question.indent || 0) > 0
|
|
13691
14205
|
});
|
|
13692
|
-
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
13693
|
-
/* @__PURE__ */ jsx(ContextDescriptionItem, { i18nKey: `${question.key}.context_description` }),
|
|
13694
|
-
/* @__PURE__ */ jsxs("div", { className, ref: questionRef, style: mapCssVars(question.cssVars), children: [
|
|
13695
|
-
/* @__PURE__ */ jsx(ValidationErrors, { fieldState }),
|
|
14206
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
|
|
14207
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ContextDescriptionItem, { i18nKey: `${question.key}.context_description` }),
|
|
14208
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className, ref: questionRef, style: mapCssVars(question.cssVars), children: [
|
|
14209
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ValidationErrors, { fieldState }),
|
|
13696
14210
|
props.children
|
|
13697
14211
|
] })
|
|
13698
14212
|
] });
|
|
@@ -13700,7 +14214,7 @@ const QuestionWrapper = (props) => {
|
|
|
13700
14214
|
const ContextDescriptionItem = ({ i18nKey }) => {
|
|
13701
14215
|
const interpolatedString = useTranslationCurliesFor(i18nKey);
|
|
13702
14216
|
if (!interpolatedString) return null;
|
|
13703
|
-
return /* @__PURE__ */ jsx("div", { className: "context-description prose", dangerouslySetInnerHTML: { __html: interpolatedString } });
|
|
14217
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "context-description prose", dangerouslySetInnerHTML: { __html: interpolatedString } });
|
|
13704
14218
|
};
|
|
13705
14219
|
const StringQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
13706
14220
|
var _a;
|
|
@@ -13716,11 +14230,11 @@ const StringQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
13716
14230
|
subitem: false
|
|
13717
14231
|
// TODO
|
|
13718
14232
|
});
|
|
13719
|
-
return /* @__PURE__ */ jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
13720
|
-
/* @__PURE__ */ jsx(MainLabel, { question }),
|
|
13721
|
-
/* @__PURE__ */ jsxs("div", { className: "description-and-fields", children: [
|
|
13722
|
-
/* @__PURE__ */ jsx(QuestionDescription, { question }),
|
|
13723
|
-
/* @__PURE__ */ jsx("div", { className: "fields", id: htmlId$a(question), children: /* @__PURE__ */ jsx(
|
|
14233
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
14234
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MainLabel, { question }),
|
|
14235
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "description-and-fields", children: [
|
|
14236
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(QuestionDescription, { question }),
|
|
14237
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "fields", id: htmlId$a(question), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
13724
14238
|
"input",
|
|
13725
14239
|
{
|
|
13726
14240
|
type: "text",
|
|
@@ -13741,11 +14255,11 @@ function htmlId$a(question) {
|
|
|
13741
14255
|
}
|
|
13742
14256
|
const ScaleQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
13743
14257
|
const fieldsClassNames = classNames("fields");
|
|
13744
|
-
return /* @__PURE__ */ jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
13745
|
-
/* @__PURE__ */ jsx(MainLabel, { question }),
|
|
13746
|
-
/* @__PURE__ */ jsxs("div", { className: "description-and-fields", children: [
|
|
13747
|
-
/* @__PURE__ */ jsx(QuestionDescription, { question }),
|
|
13748
|
-
/* @__PURE__ */ jsx("div", { className: fieldsClassNames, id: htmlId$9(question), children: /* @__PURE__ */ jsx("table", { cellSpacing: "0", width: "100%", children: /* @__PURE__ */ jsx("tbody", { children: /* @__PURE__ */ jsx("tr", { children: question.children.map((child, index) => /* @__PURE__ */ jsx(
|
|
14258
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
14259
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MainLabel, { question }),
|
|
14260
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "description-and-fields", children: [
|
|
14261
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(QuestionDescription, { question }),
|
|
14262
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: fieldsClassNames, id: htmlId$9(question), children: /* @__PURE__ */ jsxRuntimeExports.jsx("table", { cellSpacing: "0", width: "100%", children: /* @__PURE__ */ jsxRuntimeExports.jsx("tbody", { children: /* @__PURE__ */ jsxRuntimeExports.jsx("tr", { children: question.children.map((child, index) => /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
13749
14263
|
Option$4,
|
|
13750
14264
|
{
|
|
13751
14265
|
question,
|
|
@@ -13775,10 +14289,10 @@ const Option$4 = ({ question, option, index, fieldState }) => {
|
|
|
13775
14289
|
const handleClick = () => {
|
|
13776
14290
|
checked && fieldState.setValue(null);
|
|
13777
14291
|
};
|
|
13778
|
-
return /* @__PURE__ */ jsxs("td", { className: tdClassNames, style: { width: `${100 / question.children.length}%` }, children: [
|
|
13779
|
-
/* @__PURE__ */ jsx(ShowValue$2, { question, option }),
|
|
13780
|
-
/* @__PURE__ */ jsxs("span", { children: [
|
|
13781
|
-
/* @__PURE__ */ jsx(
|
|
14292
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("td", { className: tdClassNames, style: { width: `${100 / question.children.length}%` }, children: [
|
|
14293
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ShowValue$2, { question, option }),
|
|
14294
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("span", { children: [
|
|
14295
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
13782
14296
|
"input",
|
|
13783
14297
|
{
|
|
13784
14298
|
type: "radio",
|
|
@@ -13792,33 +14306,33 @@ const Option$4 = ({ question, option, index, fieldState }) => {
|
|
|
13792
14306
|
onFocus: fieldState.setAsActiveQuestion
|
|
13793
14307
|
}
|
|
13794
14308
|
),
|
|
13795
|
-
/* @__PURE__ */ jsx(ShowDescription$1, { question, option })
|
|
14309
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ShowDescription$1, { question, option })
|
|
13796
14310
|
] })
|
|
13797
14311
|
] });
|
|
13798
14312
|
};
|
|
13799
14313
|
const ShowDescription$1 = ({ question, option }) => {
|
|
13800
14314
|
const label = useTranslationCurliesFor(`${question.key}.${option.key}.label`);
|
|
13801
14315
|
if (!label) return null;
|
|
13802
|
-
return /* @__PURE__ */ jsx("label", { htmlFor: option.viewId, children: /* @__PURE__ */ jsx("span", { dangerouslySetInnerHTML: { __html: label } }) });
|
|
14316
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("label", { htmlFor: option.viewId, children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { dangerouslySetInnerHTML: { __html: label } }) });
|
|
13803
14317
|
};
|
|
13804
14318
|
const ShowValue$2 = ({ question, option }) => {
|
|
13805
14319
|
if (!question.showValues) return null;
|
|
13806
|
-
return /* @__PURE__ */ jsx("div", { className: "value", children: option.value });
|
|
14320
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "value", children: option.value });
|
|
13807
14321
|
};
|
|
13808
14322
|
function htmlId$9(question) {
|
|
13809
14323
|
return `answer_${question.key}_input`;
|
|
13810
14324
|
}
|
|
13811
14325
|
const SubQuestions = ({ questions }) => {
|
|
13812
14326
|
if (questions.length == 0) return null;
|
|
13813
|
-
return /* @__PURE__ */ jsx("div", { className: "subquestions mt-1", children: questions.map((question) => /* @__PURE__ */ jsx(QuestionItem, { fieldKey: question.key })) });
|
|
14327
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "subquestions mt-1", children: questions.map((question) => /* @__PURE__ */ jsxRuntimeExports.jsx(QuestionItem, { fieldKey: question.key })) });
|
|
13814
14328
|
};
|
|
13815
14329
|
const RadioQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
13816
14330
|
const fieldsClassNames = classNames("fields", question.presentation !== "horizontal" ? `options${question.children.length}` : null);
|
|
13817
|
-
return /* @__PURE__ */ jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
13818
|
-
/* @__PURE__ */ jsx(MainLabel, { question }),
|
|
13819
|
-
/* @__PURE__ */ jsxs("div", { className: "description-and-fields", children: [
|
|
13820
|
-
/* @__PURE__ */ jsx(QuestionDescription, { question }),
|
|
13821
|
-
/* @__PURE__ */ jsx("div", { className: fieldsClassNames, id: htmlId$8(question), children: question.children.map((child, index) => child.type === "option" ? /* @__PURE__ */ jsx(
|
|
14331
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
14332
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MainLabel, { question }),
|
|
14333
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "description-and-fields", children: [
|
|
14334
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(QuestionDescription, { question }),
|
|
14335
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: fieldsClassNames, id: htmlId$8(question), children: question.children.map((child, index) => child.type === "option" ? /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
13822
14336
|
Option$3,
|
|
13823
14337
|
{
|
|
13824
14338
|
question,
|
|
@@ -13827,7 +14341,7 @@ const RadioQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
13827
14341
|
fieldState
|
|
13828
14342
|
},
|
|
13829
14343
|
child.key
|
|
13830
|
-
) : /* @__PURE__ */ jsx(InnerTitle$1, { i18nKey: `${question.key}.${child.key}.html` }, child.key)) })
|
|
14344
|
+
) : /* @__PURE__ */ jsxRuntimeExports.jsx(InnerTitle$1, { i18nKey: `${question.key}.${child.key}.html` }, child.key)) })
|
|
13831
14345
|
] })
|
|
13832
14346
|
] });
|
|
13833
14347
|
};
|
|
@@ -13847,8 +14361,8 @@ const Option$3 = ({ question, option, fieldState }) => {
|
|
|
13847
14361
|
const handleClick = (_event) => {
|
|
13848
14362
|
checked && fieldState.setValue(null);
|
|
13849
14363
|
};
|
|
13850
|
-
return /* @__PURE__ */ jsxs("div", { className: divClassNames, children: [
|
|
13851
|
-
/* @__PURE__ */ jsx("div", { className: "inline radiocheckwrapper", children: /* @__PURE__ */ jsx(
|
|
14364
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: divClassNames, children: [
|
|
14365
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "inline radiocheckwrapper", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
13852
14366
|
"input",
|
|
13853
14367
|
{
|
|
13854
14368
|
type: "radio",
|
|
@@ -13862,28 +14376,28 @@ const Option$3 = ({ question, option, fieldState }) => {
|
|
|
13862
14376
|
onFocus: fieldState.setAsActiveQuestion
|
|
13863
14377
|
}
|
|
13864
14378
|
) }),
|
|
13865
|
-
/* @__PURE__ */ jsx(ShowValue$1, { question, option }),
|
|
13866
|
-
/* @__PURE__ */ jsx(ShowDescription, { question, option }),
|
|
13867
|
-
/* @__PURE__ */ jsx(SubQuestions, { questions: option.questions })
|
|
14379
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ShowValue$1, { question, option }),
|
|
14380
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ShowDescription, { question, option }),
|
|
14381
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(SubQuestions, { questions: option.questions })
|
|
13868
14382
|
] });
|
|
13869
14383
|
};
|
|
13870
14384
|
const InnerTitle$1 = ({ i18nKey }) => {
|
|
13871
14385
|
const interpolatedString = useTranslationCurliesFor(i18nKey);
|
|
13872
14386
|
if (!interpolatedString) return null;
|
|
13873
|
-
return /* @__PURE__ */ jsx("div", { className: "inner-title", dangerouslySetInnerHTML: { __html: interpolatedString } });
|
|
14387
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "inner-title", dangerouslySetInnerHTML: { __html: interpolatedString } });
|
|
13874
14388
|
};
|
|
13875
14389
|
const ShowDescription = ({ question, option }) => {
|
|
13876
14390
|
const label = useTranslationCurliesFor(`${question.key}.${option.key}.label`);
|
|
13877
14391
|
const description = useTranslationCurliesFor(`${question.key}.${option.key}.description`);
|
|
13878
14392
|
if (!label) return null;
|
|
13879
|
-
return /* @__PURE__ */ jsxs("div", { className: "inline labelwrapper", children: [
|
|
13880
|
-
/* @__PURE__ */ jsx("label", { htmlFor: option.viewId, "aria-describedby": description && `${option.viewId}_description`, children: /* @__PURE__ */ jsx("span", { dangerouslySetInnerHTML: { __html: label } }) }),
|
|
13881
|
-
description && /* @__PURE__ */ jsx("div", { className: "de-em", id: `${option.viewId}_description`, dangerouslySetInnerHTML: { __html: description } })
|
|
14393
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "inline labelwrapper", children: [
|
|
14394
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("label", { htmlFor: option.viewId, "aria-describedby": description && `${option.viewId}_description`, children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { dangerouslySetInnerHTML: { __html: label } }) }),
|
|
14395
|
+
description && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "de-em", id: `${option.viewId}_description`, dangerouslySetInnerHTML: { __html: description } })
|
|
13882
14396
|
] });
|
|
13883
14397
|
};
|
|
13884
14398
|
const ShowValue$1 = ({ question, option }) => {
|
|
13885
14399
|
if (!question.showValues) return null;
|
|
13886
|
-
return /* @__PURE__ */ jsx("div", { className: "inline value", children: option.value });
|
|
14400
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "inline value", children: option.value });
|
|
13887
14401
|
};
|
|
13888
14402
|
function htmlId$8(question) {
|
|
13889
14403
|
return `answer_${question.key}_input`;
|
|
@@ -13893,11 +14407,11 @@ const SelectQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
13893
14407
|
fieldState.setValue(event.target.value);
|
|
13894
14408
|
};
|
|
13895
14409
|
const fieldsClassNames = classNames("fields", question.presentation !== "horizontal" ? `options${question.children.length}` : null);
|
|
13896
|
-
return /* @__PURE__ */ jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
13897
|
-
/* @__PURE__ */ jsx(MainLabel, { question }),
|
|
13898
|
-
/* @__PURE__ */ jsxs("div", { className: "description-and-fields", children: [
|
|
13899
|
-
/* @__PURE__ */ jsx(QuestionDescription, { question }),
|
|
13900
|
-
/* @__PURE__ */ jsx("div", { className: fieldsClassNames, id: htmlId$7(question), children: /* @__PURE__ */ jsxs(
|
|
14410
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
14411
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MainLabel, { question }),
|
|
14412
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "description-and-fields", children: [
|
|
14413
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(QuestionDescription, { question }),
|
|
14414
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: fieldsClassNames, id: htmlId$7(question), children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
13901
14415
|
"select",
|
|
13902
14416
|
{
|
|
13903
14417
|
onChange: handleChange,
|
|
@@ -13907,8 +14421,8 @@ const SelectQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
13907
14421
|
id: `answer_${question.key}`,
|
|
13908
14422
|
name: question.key,
|
|
13909
14423
|
children: [
|
|
13910
|
-
/* @__PURE__ */ jsx(Placeholder, { i18nKey: `${question.key}.placeholder` }),
|
|
13911
|
-
question.children.map((child) => child.type === "optgroup" ? /* @__PURE__ */ jsx(Optgroup, { question, optgroup: child, fieldState }, child.key) : /* @__PURE__ */ jsx(Option$2, { question, option: child, fieldState }, child.key))
|
|
14424
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Placeholder, { i18nKey: `${question.key}.placeholder` }),
|
|
14425
|
+
question.children.map((child) => child.type === "optgroup" ? /* @__PURE__ */ jsxRuntimeExports.jsx(Optgroup, { question, optgroup: child, fieldState }, child.key) : /* @__PURE__ */ jsxRuntimeExports.jsx(Option$2, { question, option: child, fieldState }, child.key))
|
|
13912
14426
|
]
|
|
13913
14427
|
}
|
|
13914
14428
|
) })
|
|
@@ -13918,28 +14432,28 @@ const SelectQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
13918
14432
|
const Placeholder = ({ i18nKey }) => {
|
|
13919
14433
|
const interpolatedString = useTranslationCurliesFor(i18nKey);
|
|
13920
14434
|
if (!interpolatedString) return null;
|
|
13921
|
-
return /* @__PURE__ */ jsx("option", { className: "placeholder", children: interpolatedString }, "placeholder");
|
|
14435
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("option", { className: "placeholder", children: interpolatedString }, "placeholder");
|
|
13922
14436
|
};
|
|
13923
14437
|
const Optgroup = ({ question, optgroup, fieldState }) => {
|
|
13924
14438
|
const label = useTranslationCurliesFor(`${question.key}.${optgroup.key}.label`);
|
|
13925
|
-
return /* @__PURE__ */ jsx("optgroup", { label, children: optgroup.options.map((option) => /* @__PURE__ */ jsx(Option$2, { question, option, fieldState }, option.key)) });
|
|
14439
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("optgroup", { label, children: optgroup.options.map((option) => /* @__PURE__ */ jsxRuntimeExports.jsx(Option$2, { question, option, fieldState }, option.key)) });
|
|
13926
14440
|
};
|
|
13927
14441
|
const Option$2 = ({ question, option, fieldState }) => {
|
|
13928
14442
|
const interpolatedString = useTranslationCurliesFor(`${question.key}.${option.key}.label`);
|
|
13929
14443
|
if (option.hidden && fieldState.value !== option.key) return null;
|
|
13930
|
-
return /* @__PURE__ */ jsx("option", { value: option.key, disabled: false, children: interpolatedString });
|
|
14444
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("option", { value: option.key, disabled: false, children: interpolatedString });
|
|
13931
14445
|
};
|
|
13932
14446
|
function htmlId$7(question) {
|
|
13933
14447
|
return `answer_${question.key}_input`;
|
|
13934
14448
|
}
|
|
13935
14449
|
const DatePartsQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
13936
|
-
return /* @__PURE__ */ jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
13937
|
-
/* @__PURE__ */ jsx(MainLabel, { question }),
|
|
13938
|
-
/* @__PURE__ */ jsxs("div", { className: "description-and-fields", children: [
|
|
13939
|
-
/* @__PURE__ */ jsx(QuestionDescription, { question }),
|
|
13940
|
-
/* @__PURE__ */ jsxs("div", { className: "fields", id: htmlId$6(question), children: [
|
|
13941
|
-
/* @__PURE__ */ jsx(DateParts, { question, parts: ["year", "month", "day"], fieldState }),
|
|
13942
|
-
/* @__PURE__ */ jsx(DateParts, { question, parts: ["hour", "minute"], fieldState })
|
|
14450
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
14451
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MainLabel, { question }),
|
|
14452
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "description-and-fields", children: [
|
|
14453
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(QuestionDescription, { question }),
|
|
14454
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "fields", id: htmlId$6(question), children: [
|
|
14455
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(DateParts, { question, parts: ["year", "month", "day"], fieldState }),
|
|
14456
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(DateParts, { question, parts: ["hour", "minute"], fieldState })
|
|
13943
14457
|
] })
|
|
13944
14458
|
] })
|
|
13945
14459
|
] });
|
|
@@ -13965,12 +14479,12 @@ const DateParts = ({ question, parts, fieldState }) => {
|
|
|
13965
14479
|
if (dateParts.length === 0) {
|
|
13966
14480
|
return null;
|
|
13967
14481
|
}
|
|
13968
|
-
return /* @__PURE__ */ jsxs("div", { className: "mb-2 ", children: [
|
|
14482
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "mb-2 ", children: [
|
|
13969
14483
|
dateParts.flatMap(
|
|
13970
14484
|
(datePart) => {
|
|
13971
14485
|
var _a;
|
|
13972
14486
|
return [
|
|
13973
|
-
/* @__PURE__ */ jsx(
|
|
14487
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
13974
14488
|
"input",
|
|
13975
14489
|
{
|
|
13976
14490
|
id: `answer_${question.key}_${datePart.part}`,
|
|
@@ -13987,14 +14501,14 @@ const DateParts = ({ question, parts, fieldState }) => {
|
|
|
13987
14501
|
},
|
|
13988
14502
|
datePart.part
|
|
13989
14503
|
),
|
|
13990
|
-
lodashExports.isEqual(parts, ["hour", "minute"]) && datePart.part === "hour" && /* @__PURE__ */ jsx("span", { className: "me-1", children: ":" }, "colon")
|
|
14504
|
+
lodashExports.isEqual(parts, ["hour", "minute"]) && datePart.part === "hour" && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "me-1", children: ":" }, "colon")
|
|
13991
14505
|
];
|
|
13992
14506
|
}
|
|
13993
14507
|
),
|
|
13994
14508
|
dateParts.flatMap((datePart) => [
|
|
13995
14509
|
// inline-block so the units appear rtl in rtl mode
|
|
13996
|
-
/* @__PURE__ */ jsx("span", { className: "me-1 inline-block", children: t2(datePart.part) }, `label_${datePart.part}`),
|
|
13997
|
-
lodashExports.isEqual(parts, ["hour", "minute"]) && datePart.part === "hour" && /* @__PURE__ */ jsx("span", { className: "me-1", children: ":" }, "label_colon")
|
|
14510
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "me-1 inline-block", children: t2(datePart.part) }, `label_${datePart.part}`),
|
|
14511
|
+
lodashExports.isEqual(parts, ["hour", "minute"]) && datePart.part === "hour" && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "me-1", children: ":" }, "label_colon")
|
|
13998
14512
|
])
|
|
13999
14513
|
] });
|
|
14000
14514
|
};
|
|
@@ -14020,12 +14534,12 @@ const IntegerQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
14020
14534
|
subitem: false
|
|
14021
14535
|
// TODO
|
|
14022
14536
|
});
|
|
14023
|
-
return /* @__PURE__ */ jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
14024
|
-
/* @__PURE__ */ jsx(MainLabel, { question }),
|
|
14025
|
-
/* @__PURE__ */ jsxs("div", { className: "description-and-fields", children: [
|
|
14026
|
-
/* @__PURE__ */ jsx(QuestionDescription, { question }),
|
|
14027
|
-
/* @__PURE__ */ jsxs("div", { className: "fields", id: htmlId$5(question), children: [
|
|
14028
|
-
/* @__PURE__ */ jsx(
|
|
14537
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
14538
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MainLabel, { question }),
|
|
14539
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "description-and-fields", children: [
|
|
14540
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(QuestionDescription, { question }),
|
|
14541
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "fields", id: htmlId$5(question), children: [
|
|
14542
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
14029
14543
|
"input",
|
|
14030
14544
|
{
|
|
14031
14545
|
type: "text",
|
|
@@ -14038,7 +14552,7 @@ const IntegerQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
14038
14552
|
...mbvArgs
|
|
14039
14553
|
}
|
|
14040
14554
|
),
|
|
14041
|
-
question.unit && /* @__PURE__ */ jsxs("span", { className: "unit", children: [
|
|
14555
|
+
question.unit && /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "unit", children: [
|
|
14042
14556
|
" ",
|
|
14043
14557
|
t2(`units.${question.unit}`, { defaultValue: question.unit })
|
|
14044
14558
|
] })
|
|
@@ -14077,13 +14591,13 @@ const FloatQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
14077
14591
|
subitem: false
|
|
14078
14592
|
// TODO
|
|
14079
14593
|
});
|
|
14080
|
-
return /* @__PURE__ */ jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
14081
|
-
/* @__PURE__ */ jsx(MainLabel, { question }),
|
|
14082
|
-
/* @__PURE__ */ jsxs("div", { className: "description-and-fields", children: [
|
|
14083
|
-
/* @__PURE__ */ jsx(QuestionDescription, { question }),
|
|
14084
|
-
commaError && /* @__PURE__ */ jsx("div", { className: "error", children: t2("comma_in_float_warning") }),
|
|
14085
|
-
/* @__PURE__ */ jsxs("div", { className: "fields", id: htmlId$4(question), children: [
|
|
14086
|
-
/* @__PURE__ */ jsx(
|
|
14594
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
14595
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MainLabel, { question }),
|
|
14596
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "description-and-fields", children: [
|
|
14597
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(QuestionDescription, { question }),
|
|
14598
|
+
commaError && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "error", children: t2("comma_in_float_warning") }),
|
|
14599
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "fields", id: htmlId$4(question), children: [
|
|
14600
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
14087
14601
|
"input",
|
|
14088
14602
|
{
|
|
14089
14603
|
type: "text",
|
|
@@ -14097,7 +14611,7 @@ const FloatQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
14097
14611
|
...mbvArgs
|
|
14098
14612
|
}
|
|
14099
14613
|
),
|
|
14100
|
-
question.unit && /* @__PURE__ */ jsxs("span", { className: "unit", children: [
|
|
14614
|
+
question.unit && /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { className: "unit", children: [
|
|
14101
14615
|
" ",
|
|
14102
14616
|
t2(`units.${question.unit}`, { defaultValue: question.unit })
|
|
14103
14617
|
] })
|
|
@@ -15073,11 +15587,11 @@ const SliderQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
15073
15587
|
const blank = fieldState.value == null;
|
|
15074
15588
|
const value = fieldState.value ?? question.defaultPosition;
|
|
15075
15589
|
const markerLabels = calculateMarkerLabels(question, labels);
|
|
15076
|
-
return /* @__PURE__ */ jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
15077
|
-
/* @__PURE__ */ jsx(MainLabel, { question }),
|
|
15078
|
-
/* @__PURE__ */ jsxs("div", { className: "description-and-fields", dir: "ltr", children: [
|
|
15079
|
-
/* @__PURE__ */ jsx(QuestionDescription, { question }),
|
|
15080
|
-
/* @__PURE__ */ jsx("div", { className: "fields mt-3", ref: parentRef, style: { height: TRACK_HEIGHT + labelPositioning.height }, children: /* @__PURE__ */ jsx(
|
|
15590
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
15591
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MainLabel, { question }),
|
|
15592
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "description-and-fields", dir: "ltr", children: [
|
|
15593
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(QuestionDescription, { question }),
|
|
15594
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "fields mt-3", ref: parentRef, style: { height: TRACK_HEIGHT + labelPositioning.height }, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
15081
15595
|
libExports.Range,
|
|
15082
15596
|
{
|
|
15083
15597
|
values: [value],
|
|
@@ -15086,7 +15600,7 @@ const SliderQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
15086
15600
|
max: question.maximum,
|
|
15087
15601
|
step: question.step,
|
|
15088
15602
|
disabled: fieldState.disabled,
|
|
15089
|
-
renderTrack: ({ props, children }) => /* @__PURE__ */ jsx("div", { ...props, style: { ...props.style, ...trackStyles }, children }),
|
|
15603
|
+
renderTrack: ({ props, children }) => /* @__PURE__ */ jsxRuntimeExports.jsx("div", { ...props, style: { ...props.style, ...trackStyles }, children }),
|
|
15090
15604
|
renderThumb: (thumbProps) => renderThumb({
|
|
15091
15605
|
...thumbProps,
|
|
15092
15606
|
id: `answer_${question.key}`,
|
|
@@ -15122,14 +15636,14 @@ const renderThumb = ({ props, id, value, isDragged, blank, showTooltip, startThu
|
|
|
15122
15636
|
},
|
|
15123
15637
|
onFocus
|
|
15124
15638
|
},
|
|
15125
|
-
/* @__PURE__ */ jsx("div", { style: {
|
|
15639
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: {
|
|
15126
15640
|
margin: "6px auto",
|
|
15127
15641
|
width: "6px",
|
|
15128
15642
|
height: "14px",
|
|
15129
15643
|
border: "1px solid oklch(var(--foreground))",
|
|
15130
15644
|
borderWidth: "0 1px 0 1px"
|
|
15131
15645
|
} }),
|
|
15132
|
-
showTooltip && isDragged && /* @__PURE__ */ jsx("div", { style: labelStyles, children: value })
|
|
15646
|
+
showTooltip && isDragged && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: labelStyles, children: value })
|
|
15133
15647
|
);
|
|
15134
15648
|
};
|
|
15135
15649
|
const renderMark = (props, label, { info, setRef }) => {
|
|
@@ -15149,7 +15663,7 @@ const renderMark = (props, label, { info, setRef }) => {
|
|
|
15149
15663
|
// important so react-range does not add negative margins to center.
|
|
15150
15664
|
}
|
|
15151
15665
|
},
|
|
15152
|
-
/* @__PURE__ */ jsx(
|
|
15666
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
15153
15667
|
"div",
|
|
15154
15668
|
{
|
|
15155
15669
|
ref: (node) => {
|
|
@@ -15173,7 +15687,7 @@ const renderMark = (props, label, { info, setRef }) => {
|
|
|
15173
15687
|
dangerouslySetInnerHTML: { __html: label.text }
|
|
15174
15688
|
}
|
|
15175
15689
|
),
|
|
15176
|
-
/* @__PURE__ */ jsx(LabelArrow, { label, top })
|
|
15690
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(LabelArrow, { label, top })
|
|
15177
15691
|
);
|
|
15178
15692
|
};
|
|
15179
15693
|
const LabelArrow = ({ top, label }) => {
|
|
@@ -15181,9 +15695,9 @@ const LabelArrow = ({ top, label }) => {
|
|
|
15181
15695
|
const arrowHeight = top + 1;
|
|
15182
15696
|
const arrow = label.first ? `M0.5,${arrowHeight - 0.5} V0.5 C0.5,${arrowHeight / 2} 5,${arrowHeight} 9,${arrowHeight - 0.5}` : label.last ? `M8.5,${arrowHeight - 0.5} V0.5 C8.5,${arrowHeight / 2} 4,${arrowHeight} 0.5,${arrowHeight - 0.5}` : `M0.5,${arrowHeight - 0.5} C2,${arrowHeight - 0.5} 4.5,5 4.5,0 C4.5,5 7,${arrowHeight - 0.5} ${arrowHeight - 0.5},${arrowHeight - 0.5}`;
|
|
15183
15697
|
const arrowMargin = label.first ? 0 : label.last ? -arrowWidth : -arrowWidth / 2;
|
|
15184
|
-
return /* @__PURE__ */ jsx("svg", { width: arrowWidth, height: arrowHeight, viewBox: `0 0 9 ${arrowHeight}`, preserveAspectRatio: "none", style: { marginLeft: arrowMargin, position: "absolute", left: -TRACK_BORDER }, children: /* @__PURE__ */ jsxs("g", { strokeWidth: LABEL_BORDER, children: [
|
|
15185
|
-
/* @__PURE__ */ jsx("line", { x1: "0", y1: arrowHeight, x2: "9", y2: arrowHeight, stroke: "oklch(var(--slider-track))" }),
|
|
15186
|
-
/* @__PURE__ */ jsx("path", { d: arrow, fill: "oklch(var(--slider-track))", strokeLinecap: "square", stroke: "oklch(var(--foreground))" })
|
|
15698
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { width: arrowWidth, height: arrowHeight, viewBox: `0 0 9 ${arrowHeight}`, preserveAspectRatio: "none", style: { marginLeft: arrowMargin, position: "absolute", left: -TRACK_BORDER }, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("g", { strokeWidth: LABEL_BORDER, children: [
|
|
15699
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("line", { x1: "0", y1: arrowHeight, x2: "9", y2: arrowHeight, stroke: "oklch(var(--slider-track))" }),
|
|
15700
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("path", { d: arrow, fill: "oklch(var(--slider-track))", strokeLinecap: "square", stroke: "oklch(var(--foreground))" })
|
|
15187
15701
|
] }) });
|
|
15188
15702
|
};
|
|
15189
15703
|
const calculateMarkerLabels = (question, labels) => {
|
|
@@ -15328,11 +15842,11 @@ const TextareaQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
15328
15842
|
subitem: false
|
|
15329
15843
|
// TODO
|
|
15330
15844
|
});
|
|
15331
|
-
return /* @__PURE__ */ jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
15332
|
-
/* @__PURE__ */ jsx(MainLabel, { question }),
|
|
15333
|
-
/* @__PURE__ */ jsxs("div", { className: "description-and-fields", children: [
|
|
15334
|
-
/* @__PURE__ */ jsx(QuestionDescription, { question }),
|
|
15335
|
-
/* @__PURE__ */ jsx("div", { className: "fields", id: htmlId$3(question), children: /* @__PURE__ */ jsx(
|
|
15845
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
15846
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MainLabel, { question }),
|
|
15847
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "description-and-fields", children: [
|
|
15848
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(QuestionDescription, { question }),
|
|
15849
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "fields", id: htmlId$3(question), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
15336
15850
|
"textarea",
|
|
15337
15851
|
{
|
|
15338
15852
|
id: `answer_${question.key}`,
|
|
@@ -15352,11 +15866,11 @@ function htmlId$3(question) {
|
|
|
15352
15866
|
}
|
|
15353
15867
|
const CheckBoxQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
15354
15868
|
const fieldsClassNames = classNames("fields", question.presentation !== "horizontal" ? `options${question.children.length}` : null);
|
|
15355
|
-
return /* @__PURE__ */ jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
15356
|
-
/* @__PURE__ */ jsx(MainLabel, { question }),
|
|
15357
|
-
/* @__PURE__ */ jsxs("div", { className: "description-and-fields", children: [
|
|
15358
|
-
/* @__PURE__ */ jsx(QuestionDescription, { question }),
|
|
15359
|
-
/* @__PURE__ */ jsx("div", { className: fieldsClassNames, id: htmlId$2(question), children: question.children.map((child, index) => child.type === "option" ? /* @__PURE__ */ jsx(
|
|
15869
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
15870
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MainLabel, { question }),
|
|
15871
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "description-and-fields", children: [
|
|
15872
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(QuestionDescription, { question }),
|
|
15873
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: fieldsClassNames, id: htmlId$2(question), children: question.children.map((child, index) => child.type === "option" ? /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
15360
15874
|
Option$1,
|
|
15361
15875
|
{
|
|
15362
15876
|
question,
|
|
@@ -15365,7 +15879,7 @@ const CheckBoxQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
15365
15879
|
fieldState
|
|
15366
15880
|
},
|
|
15367
15881
|
child.key
|
|
15368
|
-
) : /* @__PURE__ */ jsx(InnerTitle, { i18nKey: `${question.key}.${child.key}.html` }, child.key)) })
|
|
15882
|
+
) : /* @__PURE__ */ jsxRuntimeExports.jsx(InnerTitle, { i18nKey: `${question.key}.${child.key}.html` }, child.key)) })
|
|
15369
15883
|
] })
|
|
15370
15884
|
] });
|
|
15371
15885
|
};
|
|
@@ -15384,8 +15898,8 @@ const Option$1 = ({ question, option, fieldState }) => {
|
|
|
15384
15898
|
// TODO
|
|
15385
15899
|
});
|
|
15386
15900
|
const handleChange = (_event) => option.key && fieldState.setValue(toggleValue(fieldState, option.key, question));
|
|
15387
|
-
return /* @__PURE__ */ jsxs("div", { className: divClassNames, children: [
|
|
15388
|
-
/* @__PURE__ */ jsx("div", { className: "inline radiocheckwrapper", children: /* @__PURE__ */ jsx(
|
|
15901
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: divClassNames, children: [
|
|
15902
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "inline radiocheckwrapper", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
15389
15903
|
"input",
|
|
15390
15904
|
{
|
|
15391
15905
|
type: "checkbox",
|
|
@@ -15398,18 +15912,18 @@ const Option$1 = ({ question, option, fieldState }) => {
|
|
|
15398
15912
|
onFocus: fieldState.setAsActiveQuestion
|
|
15399
15913
|
}
|
|
15400
15914
|
) }),
|
|
15401
|
-
/* @__PURE__ */ jsx(ShowValue, { question, option }),
|
|
15402
|
-
/* @__PURE__ */ jsxs("div", { className: "inline labelwrapper", children: [
|
|
15403
|
-
/* @__PURE__ */ jsx("label", { htmlFor: option.viewId, "aria-describedby": description && `${option.viewId}_description`, children: /* @__PURE__ */ jsx("span", { dangerouslySetInnerHTML: { __html: label } }) }),
|
|
15404
|
-
description && /* @__PURE__ */ jsx("div", { className: "de-em", id: `${option.viewId}_description`, dangerouslySetInnerHTML: { __html: description } })
|
|
15915
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ShowValue, { question, option }),
|
|
15916
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "inline labelwrapper", children: [
|
|
15917
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("label", { htmlFor: option.viewId, "aria-describedby": description && `${option.viewId}_description`, children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", { dangerouslySetInnerHTML: { __html: label } }) }),
|
|
15918
|
+
description && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "de-em", id: `${option.viewId}_description`, dangerouslySetInnerHTML: { __html: description } })
|
|
15405
15919
|
] }),
|
|
15406
|
-
/* @__PURE__ */ jsx(SubQuestions, { questions: option.questions })
|
|
15920
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(SubQuestions, { questions: option.questions })
|
|
15407
15921
|
] });
|
|
15408
15922
|
};
|
|
15409
15923
|
const InnerTitle = ({ i18nKey }) => {
|
|
15410
15924
|
const interpolatedString = useTranslationCurliesFor(i18nKey);
|
|
15411
15925
|
if (!interpolatedString) return null;
|
|
15412
|
-
return /* @__PURE__ */ jsx("div", { className: "
|
|
15926
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "inner-title", dangerouslySetInnerHTML: { __html: interpolatedString } });
|
|
15413
15927
|
};
|
|
15414
15928
|
const ShowValue = () => {
|
|
15415
15929
|
return null;
|
|
@@ -17571,11 +18085,11 @@ const CountrySelectQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
17571
18085
|
fieldState.setValue(event.target.value.length !== 0 ? event.target.value : null);
|
|
17572
18086
|
};
|
|
17573
18087
|
const { t: t2 } = useTranslation();
|
|
17574
|
-
return /* @__PURE__ */ jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
17575
|
-
/* @__PURE__ */ jsx(MainLabel, { question }),
|
|
17576
|
-
/* @__PURE__ */ jsxs("div", { className: "description-and-fields", children: [
|
|
17577
|
-
/* @__PURE__ */ jsx(QuestionDescription, { question }),
|
|
17578
|
-
/* @__PURE__ */ jsx("div", { className: fieldsClassNames, id: htmlId$1(question), children: /* @__PURE__ */ jsxs(
|
|
18088
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
18089
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MainLabel, { question }),
|
|
18090
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "description-and-fields", children: [
|
|
18091
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(QuestionDescription, { question }),
|
|
18092
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: fieldsClassNames, id: htmlId$1(question), children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
17579
18093
|
"select",
|
|
17580
18094
|
{
|
|
17581
18095
|
value: fieldState.value ?? "",
|
|
@@ -17585,8 +18099,8 @@ const CountrySelectQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
17585
18099
|
name: question.key,
|
|
17586
18100
|
id: `answer_${question.key}`,
|
|
17587
18101
|
children: [
|
|
17588
|
-
/* @__PURE__ */ jsx("option", { value: "", children: t2("choose_a_country") }),
|
|
17589
|
-
/* @__PURE__ */ jsx(CountryOptions, { lang: instance.language })
|
|
18102
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("option", { value: "", children: t2("choose_a_country") }),
|
|
18103
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(CountryOptions, { lang: instance.language })
|
|
17590
18104
|
]
|
|
17591
18105
|
}
|
|
17592
18106
|
) })
|
|
@@ -17602,7 +18116,7 @@ function htmlId$1(question) {
|
|
|
17602
18116
|
return `answer_${question.key}_input`;
|
|
17603
18117
|
}
|
|
17604
18118
|
const CountryOptions = memo(
|
|
17605
|
-
(props) => /* @__PURE__ */ jsx(Fragment, { children: getAllCountries(props.lang).map((country) => /* @__PURE__ */ jsx(Option, { option: country }, country.numeric)) })
|
|
18119
|
+
(props) => /* @__PURE__ */ jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: getAllCountries(props.lang).map((country) => /* @__PURE__ */ jsxRuntimeExports.jsx(Option, { option: country }, country.numeric)) })
|
|
17606
18120
|
);
|
|
17607
18121
|
function getAllCountries(lang) {
|
|
17608
18122
|
return Object.entries(countries$3.getNames(lang)).sort(([_k1, name1], [_k2, name2]) => name1.localeCompare(name2)).map(([key, name]) => ({
|
|
@@ -17611,7 +18125,7 @@ function getAllCountries(lang) {
|
|
|
17611
18125
|
}));
|
|
17612
18126
|
}
|
|
17613
18127
|
const Option = ({ option }) => {
|
|
17614
|
-
return /* @__PURE__ */ jsx("option", { value: option.numeric ?? "", children: option.country });
|
|
18128
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("option", { value: option.numeric ?? "", children: option.country });
|
|
17615
18129
|
};
|
|
17616
18130
|
const SplitToUnitsQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
17617
18131
|
const { t: t2 } = useTranslation();
|
|
@@ -17620,12 +18134,12 @@ const SplitToUnitsQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
17620
18134
|
const setValue = (key, value) => {
|
|
17621
18135
|
fieldState.setValue(calcValue(question, valueHash.set(key, value)));
|
|
17622
18136
|
};
|
|
17623
|
-
return /* @__PURE__ */ jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
17624
|
-
/* @__PURE__ */ jsx(MainLabel, { question }),
|
|
17625
|
-
/* @__PURE__ */ jsxs("div", { className: "description-and-fields", children: [
|
|
17626
|
-
/* @__PURE__ */ jsx(QuestionDescription, { question }),
|
|
17627
|
-
/* @__PURE__ */ jsx("div", { className: "fields", id: htmlId(question), children: question.units.map((unit) => /* @__PURE__ */ jsxs(React__default.Fragment, { children: [
|
|
17628
|
-
/* @__PURE__ */ jsx(
|
|
18137
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(QuestionWrapper, { question, fieldState, setQuestionRef, children: [
|
|
18138
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(MainLabel, { question }),
|
|
18139
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "description-and-fields", children: [
|
|
18140
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(QuestionDescription, { question }),
|
|
18141
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "fields", id: htmlId(question), children: question.units.map((unit) => /* @__PURE__ */ jsxRuntimeExports.jsxs(React__default.Fragment, { children: [
|
|
18142
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
17629
18143
|
"input",
|
|
17630
18144
|
{
|
|
17631
18145
|
type: "text",
|
|
@@ -17639,7 +18153,7 @@ const SplitToUnitsQuestion = ({ question, fieldState, setQuestionRef }) => {
|
|
|
17639
18153
|
onFocus: fieldState.setAsActiveQuestion
|
|
17640
18154
|
}
|
|
17641
18155
|
),
|
|
17642
|
-
/* @__PURE__ */ jsx("span", { className: "mx-1", children: t2(`units.${unit}`, { defaultValue: unit }) })
|
|
18156
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "mx-1", children: t2(`units.${unit}`, { defaultValue: unit }) })
|
|
17643
18157
|
] }, unit)) })
|
|
17644
18158
|
] })
|
|
17645
18159
|
] });
|
|
@@ -17672,36 +18186,36 @@ const RenderWithFieldState = ({ Component, question }) => {
|
|
|
17672
18186
|
() => response.getFieldState(question.key)
|
|
17673
18187
|
);
|
|
17674
18188
|
if (fieldState.hidden) return null;
|
|
17675
|
-
return /* @__PURE__ */ jsx(Component, { question, fieldState, setQuestionRef }, question.key);
|
|
18189
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(Component, { question, fieldState, setQuestionRef }, question.key);
|
|
17676
18190
|
};
|
|
17677
18191
|
const QuestionItem = ({ fieldKey }) => {
|
|
17678
18192
|
const { questionnaire } = React__default.useContext(QubyContext);
|
|
17679
18193
|
const question = questionnaire.getField(fieldKey);
|
|
17680
18194
|
switch (question.as) {
|
|
17681
18195
|
case "string":
|
|
17682
|
-
return /* @__PURE__ */ jsx(RenderWithFieldState, { Component: StringQuestion, question }, fieldKey);
|
|
18196
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(RenderWithFieldState, { Component: StringQuestion, question }, fieldKey);
|
|
17683
18197
|
case "country_select":
|
|
17684
|
-
return /* @__PURE__ */ jsx(RenderWithFieldState, { Component: CountrySelectQuestion, question }, fieldKey);
|
|
18198
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(RenderWithFieldState, { Component: CountrySelectQuestion, question }, fieldKey);
|
|
17685
18199
|
case "scale":
|
|
17686
|
-
return /* @__PURE__ */ jsx(RenderWithFieldState, { Component: ScaleQuestion, question }, fieldKey);
|
|
18200
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(RenderWithFieldState, { Component: ScaleQuestion, question }, fieldKey);
|
|
17687
18201
|
case "radio":
|
|
17688
|
-
return /* @__PURE__ */ jsx(RenderWithFieldState, { Component: RadioQuestion, question }, fieldKey);
|
|
18202
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(RenderWithFieldState, { Component: RadioQuestion, question }, fieldKey);
|
|
17689
18203
|
case "select":
|
|
17690
|
-
return /* @__PURE__ */ jsx(RenderWithFieldState, { Component: SelectQuestion, question }, fieldKey);
|
|
18204
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(RenderWithFieldState, { Component: SelectQuestion, question }, fieldKey);
|
|
17691
18205
|
case "date_parts":
|
|
17692
|
-
return /* @__PURE__ */ jsx(RenderWithFieldState, { Component: DatePartsQuestion, question }, fieldKey);
|
|
18206
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(RenderWithFieldState, { Component: DatePartsQuestion, question }, fieldKey);
|
|
17693
18207
|
case "integer":
|
|
17694
|
-
return /* @__PURE__ */ jsx(RenderWithFieldState, { Component: IntegerQuestion, question }, fieldKey);
|
|
18208
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(RenderWithFieldState, { Component: IntegerQuestion, question }, fieldKey);
|
|
17695
18209
|
case "float":
|
|
17696
|
-
return /* @__PURE__ */ jsx(RenderWithFieldState, { Component: FloatQuestion, question }, fieldKey);
|
|
18210
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(RenderWithFieldState, { Component: FloatQuestion, question }, fieldKey);
|
|
17697
18211
|
case "slider":
|
|
17698
|
-
return /* @__PURE__ */ jsx(RenderWithFieldState, { Component: SliderQuestion, question }, fieldKey);
|
|
18212
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(RenderWithFieldState, { Component: SliderQuestion, question }, fieldKey);
|
|
17699
18213
|
case "split_to_units":
|
|
17700
|
-
return /* @__PURE__ */ jsx(RenderWithFieldState, { Component: SplitToUnitsQuestion, question }, fieldKey);
|
|
18214
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(RenderWithFieldState, { Component: SplitToUnitsQuestion, question }, fieldKey);
|
|
17701
18215
|
case "textarea":
|
|
17702
|
-
return /* @__PURE__ */ jsx(RenderWithFieldState, { Component: TextareaQuestion, question }, fieldKey);
|
|
18216
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(RenderWithFieldState, { Component: TextareaQuestion, question }, fieldKey);
|
|
17703
18217
|
case "check_box":
|
|
17704
|
-
return /* @__PURE__ */ jsx(RenderWithFieldState, { Component: CheckBoxQuestion, question }, fieldKey);
|
|
18218
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(RenderWithFieldState, { Component: CheckBoxQuestion, question }, fieldKey);
|
|
17705
18219
|
}
|
|
17706
18220
|
throw new Error(`unknown question type`);
|
|
17707
18221
|
};
|
|
@@ -17872,12 +18386,12 @@ function useInView({
|
|
|
17872
18386
|
const TranslationCurlies = ({ i18nKey, Component }) => {
|
|
17873
18387
|
const interpolatedString = useTranslationCurliesFor(i18nKey);
|
|
17874
18388
|
if (!interpolatedString) return null;
|
|
17875
|
-
return /* @__PURE__ */ jsx(Component, { children: interpolatedString });
|
|
18389
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(Component, { children: interpolatedString });
|
|
17876
18390
|
};
|
|
17877
18391
|
const TranslationCurliesHtml = ({ i18nKey, Component }) => {
|
|
17878
18392
|
const interpolatedString = useTranslationCurliesFor(i18nKey);
|
|
17879
18393
|
if (!interpolatedString) return null;
|
|
17880
|
-
return /* @__PURE__ */ jsx(Component, { dangerouslySetInnerHTML: { __html: interpolatedString } });
|
|
18394
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(Component, { dangerouslySetInnerHTML: { __html: interpolatedString } });
|
|
17881
18395
|
};
|
|
17882
18396
|
const InfoItem = ({ item }) => {
|
|
17883
18397
|
const [open, setOpen] = React__default.useState(item.startOpen);
|
|
@@ -17906,9 +18420,9 @@ const InfoItem = ({ item }) => {
|
|
|
17906
18420
|
if (item.items.some((subItem) => subItem.type === "question") && item.items.every((subItem) => subItem.type !== "question" || !response.isVisible(subItem.key))) {
|
|
17907
18421
|
return null;
|
|
17908
18422
|
}
|
|
17909
|
-
return /* @__PURE__ */ jsxs("div", { className: classNames("info-item", item.subtype || "info"), children: [
|
|
17910
|
-
/* @__PURE__ */ jsx("div", { ref }),
|
|
17911
|
-
/* @__PURE__ */ jsx(
|
|
18423
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: classNames("info-item", item.subtype || "info"), children: [
|
|
18424
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref }),
|
|
18425
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
17912
18426
|
"div",
|
|
17913
18427
|
{
|
|
17914
18428
|
className: classNames("info-icon", { "stuck": !inView && item.items.length > 0 }),
|
|
@@ -17918,20 +18432,20 @@ const InfoItem = ({ item }) => {
|
|
|
17918
18432
|
"aria-expanded": open || item.startOpen && inView,
|
|
17919
18433
|
"aria-controls": `%{item.key}`,
|
|
17920
18434
|
tabIndex: item.startOpen ? -1 : 0,
|
|
17921
|
-
children: item.subtype == "question-bar" ? null : /* @__PURE__ */ jsx(InfoSvg, {})
|
|
18435
|
+
children: item.subtype == "question-bar" ? null : /* @__PURE__ */ jsxRuntimeExports.jsx(InfoSvg, {})
|
|
17922
18436
|
}
|
|
17923
18437
|
),
|
|
17924
|
-
open && /* @__PURE__ */ jsx("div", { id: item.key, className: classNames("info-html prose", { "open": open, "opening": opening }), children: /* @__PURE__ */ jsx(TranslationCurliesHtml, { i18nKey: `${item.key}.html`, Component: "div" }) }),
|
|
17925
|
-
item.items.map((subItem, idx) => /* @__PURE__ */ jsx(PanelItem, { item: subItem }, idx))
|
|
18438
|
+
open && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { id: item.key, className: classNames("info-html prose", { "open": open, "opening": opening }), children: /* @__PURE__ */ jsxRuntimeExports.jsx(TranslationCurliesHtml, { i18nKey: `${item.key}.html`, Component: "div" }) }),
|
|
18439
|
+
item.items.map((subItem, idx) => /* @__PURE__ */ jsxRuntimeExports.jsx(PanelItem, { item: subItem }, idx))
|
|
17926
18440
|
] });
|
|
17927
18441
|
};
|
|
17928
|
-
const InfoSvg = () => /* @__PURE__ */ jsxs("svg", { "aria-label": "info", viewBox: "0 0 1024 1024", xmlns: "http://www.w3.org/2000/svg", strokeWidth: "0", fill: "currentColor", stroke: "currentColor", children: [
|
|
17929
|
-
/* @__PURE__ */ jsx("path", { d: "M260 740 A460 350 0 1 1 430 790 A300 200 -25 0 1 200 930 A200 300 65 0 0 260 740 Z", fill: "none", strokeWidth: "80" }),
|
|
17930
|
-
/* @__PURE__ */ jsx("circle", { cx: "490", cy: "260", r: "45" }),
|
|
17931
|
-
/* @__PURE__ */ jsx("line", { x1: "490", x2: "490", y1: "420", y2: "640", strokeWidth: "90", strokeLinecap: "round" })
|
|
18442
|
+
const InfoSvg = () => /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { "aria-label": "info", viewBox: "0 0 1024 1024", xmlns: "http://www.w3.org/2000/svg", strokeWidth: "0", fill: "currentColor", stroke: "currentColor", children: [
|
|
18443
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("path", { d: "M260 740 A460 350 0 1 1 430 790 A300 200 -25 0 1 200 930 A200 300 65 0 0 260 740 Z", fill: "none", strokeWidth: "80" }),
|
|
18444
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("circle", { cx: "490", cy: "260", r: "45" }),
|
|
18445
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("line", { x1: "490", x2: "490", y1: "420", y2: "640", strokeWidth: "90", strokeLinecap: "round" })
|
|
17932
18446
|
] });
|
|
17933
18447
|
const UnknownItem = ({ item }) => {
|
|
17934
|
-
return /* @__PURE__ */ jsxs("div", { className: "item", style: { border: "1px red", background: "yellow" }, children: [
|
|
18448
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "item", style: { border: "1px red", background: "yellow" }, children: [
|
|
17935
18449
|
"Unknown item type:",
|
|
17936
18450
|
item.type
|
|
17937
18451
|
] });
|
|
@@ -17939,23 +18453,23 @@ const UnknownItem = ({ item }) => {
|
|
|
17939
18453
|
const PanelItem = (props) => {
|
|
17940
18454
|
switch (props.item.type) {
|
|
17941
18455
|
case "html": {
|
|
17942
|
-
return /* @__PURE__ */ jsx(HtmlItem, { item: props.item });
|
|
18456
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(HtmlItem, { item: props.item });
|
|
17943
18457
|
}
|
|
17944
18458
|
case "question": {
|
|
17945
|
-
return /* @__PURE__ */ jsx(QuestionItem, { fieldKey: props.item.key }, props.item.key);
|
|
18459
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(QuestionItem, { fieldKey: props.item.key }, props.item.key);
|
|
17946
18460
|
}
|
|
17947
18461
|
case "info": {
|
|
17948
|
-
return /* @__PURE__ */ jsx(InfoItem, { item: props.item });
|
|
18462
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(InfoItem, { item: props.item });
|
|
17949
18463
|
}
|
|
17950
18464
|
default: {
|
|
17951
|
-
return /* @__PURE__ */ jsx(UnknownItem, { item: props.item });
|
|
18465
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(UnknownItem, { item: props.item });
|
|
17952
18466
|
}
|
|
17953
18467
|
}
|
|
17954
18468
|
};
|
|
17955
18469
|
const PanelContent = ({ panel }) => {
|
|
17956
|
-
return /* @__PURE__ */ jsxs("div", { className: "m-panel-padding", children: [
|
|
17957
|
-
/* @__PURE__ */ jsx(TranslationCurlies, { i18nKey: `${panel.key}.title`, Component: "h1" }),
|
|
17958
|
-
panel.items.map((item, idx) => /* @__PURE__ */ jsx(PanelItem, { item }, idx))
|
|
18470
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "m-panel-padding", children: [
|
|
18471
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(TranslationCurlies, { i18nKey: `${panel.key}.title`, Component: "h1" }),
|
|
18472
|
+
panel.items.map((item, idx) => /* @__PURE__ */ jsxRuntimeExports.jsx(PanelItem, { item }, idx))
|
|
17959
18473
|
] });
|
|
17960
18474
|
};
|
|
17961
18475
|
const buttonsClassName = "buttons bg-slate-100 dark:bg-slate-700 p-panel-padding";
|
|
@@ -17985,20 +18499,20 @@ const Paginator = (props) => {
|
|
|
17985
18499
|
};
|
|
17986
18500
|
switch (props.displayMode) {
|
|
17987
18501
|
case "paged": {
|
|
17988
|
-
return /* @__PURE__ */ jsxs(PagedPanel, { panelLogic: props.panelLogic, panelIndex: activeIndex, navigate, children: [
|
|
17989
|
-
/* @__PURE__ */ jsx("span", { ref: topRef, tabIndex: -1 }),
|
|
17990
|
-
/* @__PURE__ */ jsx(PanelContent, { panel: props.panelLogic.panels[activeIndex] })
|
|
18502
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(PagedPanel, { panelLogic: props.panelLogic, panelIndex: activeIndex, navigate, children: [
|
|
18503
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { ref: topRef, tabIndex: -1 }),
|
|
18504
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(PanelContent, { panel: props.panelLogic.panels[activeIndex] })
|
|
17991
18505
|
] });
|
|
17992
18506
|
}
|
|
17993
18507
|
case "single_page": {
|
|
17994
|
-
return /* @__PURE__ */ jsxs(React__default.Fragment, { children: [
|
|
17995
|
-
/* @__PURE__ */ jsx("span", { ref: topRef, tabIndex: -1 }),
|
|
17996
|
-
props.panelLogic.panels.map((panel, index) => !props.panelLogic.allQuestionsHidden(index) && /* @__PURE__ */ jsxs(React__default.Fragment, { children: [
|
|
17997
|
-
/* @__PURE__ */ jsxs("fieldset", { className: "panel", children: [
|
|
17998
|
-
/* @__PURE__ */ jsx(PanelContent, { panel }),
|
|
17999
|
-
props.panelLogic.isLastPanel(index) ? /* @__PURE__ */ jsx(Buttons, { firstPanel: false, lastPanel: true, navigate }) : null
|
|
18508
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(React__default.Fragment, { children: [
|
|
18509
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { ref: topRef, tabIndex: -1 }),
|
|
18510
|
+
props.panelLogic.panels.map((panel, index) => !props.panelLogic.allQuestionsHidden(index) && /* @__PURE__ */ jsxRuntimeExports.jsxs(React__default.Fragment, { children: [
|
|
18511
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("fieldset", { className: "panel", children: [
|
|
18512
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(PanelContent, { panel }),
|
|
18513
|
+
props.panelLogic.isLastPanel(index) ? /* @__PURE__ */ jsxRuntimeExports.jsx(Buttons, { firstPanel: false, lastPanel: true, navigate }) : null
|
|
18000
18514
|
] }),
|
|
18001
|
-
index < props.panelLogic.panels.length - 1 && /* @__PURE__ */ jsx("div", { className: buttonsClassName })
|
|
18515
|
+
index < props.panelLogic.panels.length - 1 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: buttonsClassName })
|
|
18002
18516
|
] }, index))
|
|
18003
18517
|
] });
|
|
18004
18518
|
}
|
|
@@ -18008,34 +18522,34 @@ const Paginator = (props) => {
|
|
|
18008
18522
|
}
|
|
18009
18523
|
};
|
|
18010
18524
|
const PagedPanel = (props) => {
|
|
18011
|
-
return /* @__PURE__ */ jsxs("fieldset", { className: "panel", children: [
|
|
18012
|
-
/* @__PURE__ */ jsx(Hotkeys, {}),
|
|
18525
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("fieldset", { className: "panel", children: [
|
|
18526
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Hotkeys, {}),
|
|
18013
18527
|
props.children,
|
|
18014
|
-
/* @__PURE__ */ jsx(ProgressBar, { max: props.panelLogic.count(), current: props.panelIndex }),
|
|
18015
|
-
/* @__PURE__ */ jsx(Buttons, { firstPanel: props.panelLogic.isFirstPanel(props.panelIndex), lastPanel: props.panelLogic.isLastPanel(props.panelIndex), navigate: props.navigate })
|
|
18528
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(ProgressBar, { max: props.panelLogic.count(), current: props.panelIndex }),
|
|
18529
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Buttons, { firstPanel: props.panelLogic.isFirstPanel(props.panelIndex), lastPanel: props.panelLogic.isLastPanel(props.panelIndex), navigate: props.navigate })
|
|
18016
18530
|
] });
|
|
18017
18531
|
};
|
|
18018
18532
|
const Buttons = (props) => {
|
|
18019
18533
|
const { t: t2 } = useTranslation();
|
|
18020
18534
|
const doneButtonLabel = props.navigate.nextSavePressWillOnlyRunMinimalValidations ? t2("questionnaire_not_completed.save_anyway") : t2("done");
|
|
18021
|
-
return /* @__PURE__ */ jsxs("div", { className: buttonsClassName, children: [
|
|
18535
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: buttonsClassName, children: [
|
|
18022
18536
|
props.navigate.nextSavePressWillOnlyRunMinimalValidations && saveInvalidWarning(t2),
|
|
18023
|
-
/* @__PURE__ */ jsxs("div", { className: "flex justify-between", children: [
|
|
18024
|
-
/* @__PURE__ */ jsx("div", { className: "next order-last", children: props.navigate.next ? /* @__PURE__ */ jsx(Button, { onClick: props.navigate.next, value: t2("next"), onFocus: props.navigate.onFocus, variant: "primary" }) : /* @__PURE__ */ jsx(Button, { onClick: props.navigate.done, value: doneButtonLabel, onFocus: props.navigate.onFocus, variant: "primary" }) }),
|
|
18025
|
-
/* @__PURE__ */ jsxs("div", { className: "prev", children: [
|
|
18026
|
-
props.navigate.prev && /* @__PURE__ */ jsx(Button, { onClick: props.navigate.prev, value: t2("previous"), onFocus: props.navigate.onFocus }),
|
|
18027
|
-
props.navigate.previousQuestionnaire && /* @__PURE__ */ jsx(Button, { onClick: props.navigate.previousQuestionnaire, value: t2("previous_questionnaire"), onFocus: props.navigate.onFocus })
|
|
18537
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "flex justify-between", children: [
|
|
18538
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "next order-last", children: props.navigate.next ? /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { onClick: props.navigate.next, value: t2("next"), onFocus: props.navigate.onFocus, variant: "primary" }) : /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { onClick: props.navigate.done, value: doneButtonLabel, onFocus: props.navigate.onFocus, variant: "primary" }) }),
|
|
18539
|
+
/* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "prev", children: [
|
|
18540
|
+
props.navigate.prev && /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { onClick: props.navigate.prev, value: t2("previous"), onFocus: props.navigate.onFocus }),
|
|
18541
|
+
props.navigate.previousQuestionnaire && /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { onClick: props.navigate.previousQuestionnaire, value: t2("previous_questionnaire"), onFocus: props.navigate.onFocus })
|
|
18028
18542
|
] }),
|
|
18029
|
-
/* @__PURE__ */ jsx("div", { className: "abort text-center", children: props.navigate.abort && /* @__PURE__ */ jsx(Button, { onClick: props.navigate.abort, value: t2("abort"), onFocus: props.navigate.onFocus }) })
|
|
18543
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "abort text-center", children: props.navigate.abort && /* @__PURE__ */ jsxRuntimeExports.jsx(Button, { onClick: props.navigate.abort, value: t2("abort"), onFocus: props.navigate.onFocus }) })
|
|
18030
18544
|
] })
|
|
18031
18545
|
] });
|
|
18032
18546
|
};
|
|
18033
|
-
const saveInvalidWarning = (t2) => /* @__PURE__ */ jsxs("div", { className: "m-panel-padding p-panel-padding border-2 rounded border-warning fg-warning-inv", children: [
|
|
18034
|
-
/* @__PURE__ */ jsx("h1", { children: t2("questionnaire_not_completed.heading") }),
|
|
18035
|
-
/* @__PURE__ */ jsx("p", { children: t2("questionnaire_not_completed.explanation") })
|
|
18547
|
+
const saveInvalidWarning = (t2) => /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "m-panel-padding p-panel-padding border-2 rounded border-warning fg-warning-inv", children: [
|
|
18548
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("h1", { children: t2("questionnaire_not_completed.heading") }),
|
|
18549
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("p", { children: t2("questionnaire_not_completed.explanation") })
|
|
18036
18550
|
] });
|
|
18037
18551
|
const Button = ({ value, onClick, onFocus, variant }) => {
|
|
18038
|
-
return /* @__PURE__ */ jsx("button", { onClick, onFocus, className: variant || "secondary", children: value });
|
|
18552
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("button", { onClick, onFocus, className: variant || "secondary", children: value });
|
|
18039
18553
|
};
|
|
18040
18554
|
const Hotkeys = () => {
|
|
18041
18555
|
return null;
|
|
@@ -18043,7 +18557,7 @@ const Hotkeys = () => {
|
|
|
18043
18557
|
const Footer = () => {
|
|
18044
18558
|
const footerHtml = useTranslationCurliesFor("footer");
|
|
18045
18559
|
if (!footerHtml) return null;
|
|
18046
|
-
return /* @__PURE__ */ jsx("footer", { className: "quby-footer", dangerouslySetInnerHTML: { __html: footerHtml } });
|
|
18560
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx("footer", { className: "quby-footer", dangerouslySetInnerHTML: { __html: footerHtml } });
|
|
18047
18561
|
};
|
|
18048
18562
|
const AnswerPage = ({ questionnaire, response, displayOptions, allowSkipValidation, onSave, onAbort, onPreviousQuestionnaire }) => {
|
|
18049
18563
|
useRerenderOnResponseChange(response);
|
|
@@ -18097,8 +18611,8 @@ const AnswerPage = ({ questionnaire, response, displayOptions, allowSkipValidati
|
|
|
18097
18611
|
const topClassName = classNames({
|
|
18098
18612
|
dark: displayOptions.darkMode
|
|
18099
18613
|
});
|
|
18100
|
-
return /* @__PURE__ */ jsx(QubyContext.Provider, { value: { questionnaire, response, displayOptions, setQuestionRef, translationsCurlies }, children: /* @__PURE__ */ jsxs("div", { ref: qubyRef, className: topClassName, style: mapCssVars(questionnaire.cssVars), lang: displayOptions.language, dir: displayOptions.dir, children: [
|
|
18101
|
-
/* @__PURE__ */ jsx("form", { className: "paged", onSubmit: (event) => event.preventDefault(), children: /* @__PURE__ */ jsx(
|
|
18614
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsx(QubyContext.Provider, { value: { questionnaire, response, displayOptions, setQuestionRef, translationsCurlies }, children: /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { ref: qubyRef, className: topClassName, style: mapCssVars(questionnaire.cssVars), lang: displayOptions.language, dir: displayOptions.dir, children: [
|
|
18615
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("form", { className: "paged", onSubmit: (event) => event.preventDefault(), children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
18102
18616
|
Paginator,
|
|
18103
18617
|
{
|
|
18104
18618
|
beforeNext,
|
|
@@ -18111,7 +18625,7 @@ const AnswerPage = ({ questionnaire, response, displayOptions, allowSkipValidati
|
|
|
18111
18625
|
onFocus: () => response.setActiveQuestion(null)
|
|
18112
18626
|
}
|
|
18113
18627
|
) }),
|
|
18114
|
-
/* @__PURE__ */ jsx(Footer, {})
|
|
18628
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(Footer, {})
|
|
18115
18629
|
] }) });
|
|
18116
18630
|
};
|
|
18117
18631
|
const useRerenderOnResponseChange = (response) => {
|
|
@@ -18142,7 +18656,7 @@ const scrollToAndFocus = (ref) => {
|
|
|
18142
18656
|
firstInput.focus();
|
|
18143
18657
|
}
|
|
18144
18658
|
};
|
|
18145
|
-
const styles = '/*\n! tailwindcss v3.3.3 | MIT License | https://tailwindcss.com\n*//*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n\n::before,\n::after {\n --tw-content: \'\';\n}\n\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user\'s configured `sans` font-family by default.\n5. Use the user\'s configured `sans` font-feature-settings by default.\n6. Use the user\'s configured `sans` font-variation-settings by default.\n*/\n\nhtml {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4; /* 3 */\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n}\n\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\n*/\n\nbody {\n margin: 0; /* 1 */\n line-height: inherit; /* 2 */\n}\n\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\nRemove the default font size and weight for headings.\n*/\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n1. Use the user\'s configured `mono` font family by default.\n2. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/*\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/*\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n3. Remove gaps between table borders by default.\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-feature-settings: inherit; /* 1 */\n font-variation-settings: inherit; /* 1 */\n font-size: 100%; /* 1 */\n font-weight: inherit; /* 1 */\n line-height: inherit; /* 1 */\n color: inherit; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 3 */\n}\n\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\n\nbutton,\n[type=\'button\'],\n[type=\'reset\'],\n[type=\'submit\'] {\n -webkit-appearance: button; /* 1 */\n background-color: transparent; /* 2 */\n background-image: none; /* 2 */\n}\n\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n\n:-moz-focusring {\n outline: auto;\n}\n\n/*\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type=\'search\'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to `inherit` in Safari.\n*/\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/*\nReset default styling for dialogs.\n*/\ndialog {\n padding: 0;\n}\n\n/*\nPrevent resizing textareas horizontally by default.\n*/\n\ntextarea {\n resize: vertical;\n}\n\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user\'s configured gray 400 color.\n*/\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\n/*\nSet the default cursor for buttons.\n*/\n\nbutton,\n[role="button"] {\n cursor: pointer;\n}\n\n/*\nMake sure disabled buttons don\'t get the pointer cursor.\n*/\n:disabled {\n cursor: default;\n}\n\n/*\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n/* Make elements with the HTML hidden attribute stay hidden by default */\n[hidden] {\n display: none;\n}\n em {\n font-style: italic;\n font-weight: 500;\n }\n\n strong {\n font-weight: bolder;\n }\n strong em {\n font-weight: inherit;\n }\n\n em.clean {\n font-style: inherit;\n }\n\n strong.clean { \n font-weight: inherit;\n }\n\n .underline { /* mostly for <strong class="clean underline"> */\n text-decoration: underline;\n }\n\n /* de-emphasize the text */\n .de-em {\n font-weight: 300;\n}\n .de-em em {\n font-weight: 400;\n}\n .de-em strong {\n font-weight: 600;\n}\n\n a {\n color: oklch(var(--primary));\n text-decoration: underline;\n }\n\n .serif {\n font-family: Georgia, serif;\n }\n\n small {\n font-size: 0.8rem;\n }\n .text-center img, .text-center svg, .text-center input[type="radio"] { /* These are made display block by tailwind, but we want to center when scaled */\n margin-inline: auto;\n }\n\n h1, h2, h3, h4, .h1, .h2, .h3, .h4 {\n font-weight: 700;\n}\n\n h1 em, h2 em, h3 em, h4 em, .h1 em, .h2 em, .h3 em, .h4 em {\n font-weight: inherit;\n }\n\n h1 strong, h2 strong, h3 strong, h4 strong, .h1 strong, .h2 strong, .h3 strong, .h4 strong {\n font-weight: 900;\n}\n\n h1, h2, h3, h4, .h1, .h2, .h3, .h4 {\n margin: 1.5rem 0 1rem;\n }\n\n h1, .h1 {\n font-size: 1.75rem;\n margin: 1.5rem 0 2rem;\n }\n\n h2, .h2 {\n font-size: 1.5rem;\n }\n\n h3, .h3 {\n font-size: 1.25rem;\n }\n\n h4, .h4 {\n font-size: 1rem;\n }\n :host {\n --page: 1 0 0;\n --background: 1 0 0;\n --foreground: .21 .04 266; /* text color */\n --foreground-80: .38 .04 266;\n --foreground-60: .55 .04 266;\n --muted: var(--foreground-60); /* text color muted */\n --super-muted: .95 .04 266;\n --primary: .454 .135 254;\n --primary-muted: .5 .135 254;\n --primary-hover: 0.5 0.16 254;\n --primary-inv: var(--background);\n --error-bar: .64 .24 27;\n --error-background: var(--error-bar) / .4;\n --slider-track: .91 0 0;\n --info-block-bg: .87 .055 223;\n --info-block-fg: var(--foreground);\n\n --panel-padding: 1rem;\n --default-radius: 0.25rem;\n --checkradio-size: 1rem;\n --checkradio-padding: 0.75rem;\n --question-padding: 2rem;\n --question-bar-padding: 8px;\n --question-bar-width: 4px;\n --list-indent: 1.5rem;\n\n /* To change in questionnaires */\n --option-gap-y: 0; /* vertical gap between options, 1, 2, 3, 4 */\n --question-mb-factor: 1; /* vertical gap to the next question, 0, 0.5, 1, 1.5, 2 */\n --max-page-width: 75rem;\n }\n\n @media(min-width: 800px) {\n :host {\n --panel-padding: 2rem;\n --question-bar-padding: 10px;\n }\n }\n\n .dark {\n --page: .186 .031 272;\n --background: 0 0 0;\n --foreground: 1 0 0;\n --foreground-80: .8 0 0;\n --foreground-60: .6 0 0;\n --foreground-40: .4 0 0;\n --muted: var(--foreground-60);\n --super-muted: .3 0 0;\n --primary: .68 .16 254;\n --primary-hover: 0.5 0.16 254;\n --primary-muted: .3 .135 254;\n --primary-inv: var(--foreground);\n --slider-track: .23 0 197;\n --info-block-bg: .4342 .052 233;\n --info-block-fg: var(--foreground);\n }\n\n :host {\n all: initial;\n display: block;\n position: relative; /* fix absolute children when quby lives in a scrolling container */\n /* Copied from tailwind html css. */\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n\n /* Made normal font thinner (300) in tailwind.conf */\n\n font-weight: 400;\n }\n\n input, textarea, select {\n border: 1px solid oklch(var(--foreground));\n border-radius: var(--default-radius);\n }\n input:focus, textarea:focus, select:focus {\n box-shadow: 0 0 0 6px oklch(var(--primary) / .2);\n outline: 3px solid transparent; /* replace shadow when forced colors */\n border-color: oklch(var(--primary));\n }\n input:disabled, textarea:disabled, select:disabled {\n color: oklch(var(--foreground-60));\n border-color: oklch(var(--foreground-60));\n cursor: not-allowed;\n }\n\n input:not([type=checkbox]):not([type=radio]), textarea, select {\n padding: .4rem;\n background-color: oklch(var(--background));\n color: var(--foreground);\n caret-color: oklch(var(--primary));\n }\n\n input[type=checkbox], input[type=radio] {\n --check-color: var(--foreground); /* when active changes to primary */\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n position: relative;\n display: grid; /* easiest way to perfectly center the ::before */\n place-content: center;\n width: var(--checkradio-size);\n height: var(--checkradio-size);\n margin: .25rem 0;\n } /* center vertically, (line-height-height)/2 */\n input[type=checkbox]:hover, input[type=radio]:hover {\n border-color: oklch(var(--primary)); /* minimal feedback that clicking radio/label will do something */\n border-width: 2px;\n }\n input[type=checkbox]::before, input[type=radio]::before {\n content: "";\n width: calc(var(--checkradio-size) - 6px);\n height: calc(var(--checkradio-size) - 6px);\n transform: scale(0); /* hide when not checked */\n transition: 125ms transform ease-in-out;\n box-shadow: inset 1em 1em oklch(var(--check-color)); /* bg instead of bgcolor to enable printing */\n background-color: CanvasText; /* replace shadow when forced colors */\n }\n input[type=checkbox]::after, input[type=radio]::after {\n content: "";\n position: absolute;\n top: -4px;\n inset-inline-start: -4px;\n height: 24px;\n width: 24px;\n }\n input[type=checkbox]:checked::before, input[type=radio]:checked::before {\n transform: scale(1);\n }\n\n input[type=checkbox] {\n border-radius: var(--default-radius);\n }\n input[type=checkbox]::before {\n clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%); /* checkmark */\n } \n input[type=radio] {\n border-radius: 50%;\n }\n input[type=radio]::before {\n border-radius: 50%;\n }\n .active input[type=checkbox]:not(:disabled), .active input[type=radio]:not(:disabled) {\n --check-color: var(--primary);\n }\n\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n.progress-bar {\n margin: var(--panel-padding);\n }\n.progress-bar .progress-wrapper .progress-slider {\n background-position: 0 4px;\n display: inline-block;\n height: 12px;\n border: 1px solid #ccc;\n border-radius: 6px;\n padding: 1px;\n }\n.panel .progress-bar .progress-wrapper {\n text-align: center;\n }\n.progress-bar .progress-stop {\n height: 8px;\n line-height: 8px;\n width: 6px;\n background: none;\n font-size: 6px;\n text-indent: -1234em;\n display: block;\n float: inline-start;\n }\n.progress-bar .progress-stop.first-child {\n width: 8px;\n border-radius: 5px 0 0 5px;\n }\n.progress-bar .progress-stop.last-child {\n width: 8px;\n border-radius: 0 5px 5px 0;\n }\n.progress-bar .progress-stop.active {\n background: oklch(var(--muted));\n }\n.progress-bar .progress-stop.current {\n border-radius: 0 5px 5px 0;\n }\n.progress-bar .progress-stop.current.first-child {\n border-radius: 5px;\n }\n.progress-bar .progress-details {\n color: has(var(--muted));\n font-size: 9px;\n }\n.prose p {\n margin: 0 0 1rem 0;\n }\n/* for things like description we want less, so the parent will determine the outer margin. */\n/* if only margin-trim was more widely supported */\n.prose > *:first-child {\n margin-top: 0;\n }\n.prose > *:last-child {\n margin-bottom: 0;\n }\n.prose ul {\n list-style-type: disc;\n margin-block: 0 1rem;\n margin-inline: var(--list-indent) 0;\n }\n.prose ol {\n list-style-type: lower-alpha;\n margin-block: 0 1rem;\n margin-inline: var(--list-indent) 0;\n }\n.prose ol.list-decimal {\n list-style-type: decimal;\n }\n.prose li {\n padding-inline-start: 0.5rem;\n }\n.prose hr {\n margin: var(--question-padding) 1rem;\n border: none;\n height: 0.125rem;\n background-color: oklch(var(--muted));\n }\n.prose hr.compact {\n margin: 1rem;\n }\nblockquote {\n margin: 1em 2em;\n }\nblockquote >* {\n font-style: italic;\n }\nblockquote >p::before,\n blockquote >p:last-child::after,\n blockquote >ul::before,\n blockquote >ul:last-child > li:last-child::after {\n content: "“";\n font-family: Georgia;\n font-size: 2.5rem;\n margin-block: -.8rem 0;\n margin-inline: -1.4rem 0;\n position: absolute;\n color: #666;\n }\nblockquote >ul::before {\n margin-inline-start: calc(-1.1rem - var(--list-indent));\n }\nblockquote >p:last-child::after,\n blockquote >ul:last-child > li:last-child::after {\n content: "”";\n margin: 0;\n margin-inline-start: -.1rem\n }\nblockquote.blue-quotes p::before,\n blockquote.blue-quotes p:last-child::after {\n color: #298ED5;\n }\n.visible {\n visibility: visible;\n}\n.absolute {\n position: absolute;\n}\n.sticky {\n position: sticky;\n}\n.order-last {\n order: 9999;\n}\n.float-right {\n float: right;\n}\n.m-panel-padding {\n margin: var(--panel-padding);\n}\n.mx-1 {\n margin-left: 0.25rem;\n margin-right: 0.25rem;\n}\n.my-1 {\n margin-top: 0.25rem;\n margin-bottom: 0.25rem;\n}\n.mb-2 {\n margin-bottom: 0.5rem;\n}\n.me-1 {\n margin-inline-end: 0.25rem;\n}\n.mt-1 {\n margin-top: 0.25rem;\n}\n.mt-3 {\n margin-top: 0.75rem;\n}\n.block {\n display: block;\n}\n.inline-block {\n display: inline-block;\n}\n.inline {\n display: inline;\n}\n.flex {\n display: flex;\n}\n.table {\n display: table;\n}\n.hidden {\n display: none;\n}\n.w-1\\/2 {\n width: 50%;\n}\n.w-1\\/3 {\n width: 33.333333%;\n}\n.w-1\\/4 {\n width: 25%;\n}\n.w-1\\/5 {\n width: 20%;\n}\n.w-1\\/6 {\n width: 16.666667%;\n}\n.w-2\\/3 {\n width: 66.666667%;\n}\n.w-2\\/5 {\n width: 40%;\n}\n.w-3\\/4 {\n width: 75%;\n}\n.w-3\\/5 {\n width: 60%;\n}\n.w-4\\/5 {\n width: 80%;\n}\n.w-5\\/6 {\n width: 83.333333%;\n}\n.w-full {\n width: 100%;\n}\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.resize {\n resize: both;\n}\n.list-decimal {\n list-style-type: decimal;\n}\n.justify-between {\n justify-content: space-between;\n}\n.rounded {\n border-radius: 0.25rem;\n}\n.border {\n border-width: 1px;\n}\n.border-2 {\n border-width: 2px;\n}\n.border-warning {\n --tw-border-opacity: 1;\n border-color: rgb(255 165 0 / var(--tw-border-opacity));\n}\n.bg-slate-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(241 245 249 / var(--tw-bg-opacity));\n}\n.p-panel-padding {\n padding: var(--panel-padding);\n}\n.text-center {\n text-align: center;\n}\n.align-top {\n vertical-align: top;\n}\n.text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n.font-light {\n font-weight: 300;\n}\n.font-medium {\n font-weight: 500;\n}\n.underline {\n text-decoration-line: underline;\n}\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n:host > div {\n background-color: oklch(var(--page));\n color: oklch(var(--foreground));\n min-height: 100cqh;\n}\n:host > div > * {\n max-width: var(--max-page-width);\n margin: 0 auto;\n}\n.panel + .panel {\n margin-top: 5rem;\n}\n.option .labelwrapper p {\n display: inline; /* temp fix, should be stripped by quby-compiler */\n}\n.item.question, .question-bar {\n --question-bar-color: var(--super-muted);\n box-shadow: calc(-1 * var(--question-bar-padding)) 0 0 0 oklch(var(--page)), calc(0px - var(--question-bar-width) - var(--question-bar-padding)) 0px 0px 0px oklch(var(--question-bar-color));\n}\n.item.question:dir(rtl), .question-bar:dir(rtl) {\n box-shadow: calc(var(--question-bar-padding)) 0 0 0 oklch(var(--page)), calc(var(--question-bar-width) + var(--question-bar-padding)) 0px 0px 0px oklch(var(--question-bar-color));\n }\n.item.question.active, .item.question .item:has(.active), .question-bar.active, .question-bar .item:has(.active) {\n --question-bar-color: var(--primary);\n }\n.item.question.errors, .question-bar.errors {\n --question-bar-color: var(--error-background);\n }\n.item.question.errors.active, .question-bar.errors.active {\n --question-bar-color: var(--error-bar);\n }\n.item .main {\n font-weight: 700;\n}\n.item .main em {\n font-weight: inherit;\n }\n.item .main strong {\n font-weight: 900;\n}\n.item .main {\n margin-bottom: 0.25rem; /* margin to .description, collapses with .field if that is the next element */\n}\n.item .inner-title {\n margin: 1rem 0 0.5rem;\n font-weight: 600;\n }\n.item .inner-title em {\n font-weight: 700;\n}\n.item .inner-title strong {\n font-weight: 800;\n}\n.item .description-and-fields > .description {\n font-weight: 300;\n}\n.item .description-and-fields > .description em {\n font-weight: 400;\n}\n.item .description-and-fields > .description strong {\n font-weight: 600;\n}\n.item .description-and-fields > .description .instruction {\n font-weight: 400;\n}\n.item .description-and-fields > .description .example {}\n.item .description-and-fields > .description .explanation {}\n.item .fields {\n margin-top: 0.5rem;\n}\nbutton {\n border-radius: 0.375rem;\n padding-left: 1rem;\n padding-right: 1rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n font-weight: 600;\n}\nbutton:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\nbutton.secondary {\n border-width: 2px;\n border-color: oklch(var(--primary));\n background-color: oklch(var(--background));\n color: oklch(var(--primary));\n}\nbutton.secondary:hover {\n border-color: oklch(var(--primary-hover));\n color: oklch(var(--primary-hover));\n }\nbutton.primary {\n background-color: oklch(var(--primary));\n color: oklch(var(--background));\n}\nbutton.primary:hover {\n background-color: oklch(var(--primary-hover));\n }\n.info-item {\n --icon-size: 20px;\n --icon-margin: 8px;\n}\n.info-item .info-html {\n margin-bottom: var(--question-padding);\n z-index: 1; /* prevent showing under slider */\n padding-inline-end: calc(var(--icon-size) + 2 * var(--icon-margin));\n }\n.info-item .info-html.open { /* opened by clicking icon */\n position: sticky;\n top: 0;\n }\n.info-item .info-html>div { /* actual content, extra div needed to animate scale. */\n transform-origin: center top;\n transition: inherit;\n }\n.info-item .info-html>div :first-child {\n margin-top: 0;\n }\n.info-item .info-html>div :last-child {\n margin-bottom: 0;\n }\n.info-item .info-html.opening {\n height: 0;\n margin-bottom: 0;\n }\n.info-item .info-html.opening>div { \n transform: scale(1, 0); /* animating scale, since we can\'t both hide content and have the icon float */\n }\n.info-item .info-html {\n transition: all 0.3s linear;\n interpolate-size: allow-keywords;\n}\n/* gradient under info-html, to make text fade under it */\n.info-item .info-html::after {\n content: "";\n position: absolute;\n bottom: calc(-1 * var(--question-padding));\n height: var(--question-padding);\n width: 100%;\n left: 0;\n background: linear-gradient(in oklch, oklch(var(--page)), transparent);\n }\n.info-item .info-icon {\n position: relative; /* with z-index to make it appear above the info-html */\n z-index: 2;\n float: inline-end;\n top: 0;\n transition: margin 0.5s;\n position: sticky;\n }\n.info-item .info-icon:hover {\n cursor: pointer;\n }\n.info-item .info-icon.stuck {\n margin-right: calc(-1 * var(--panel-padding));\n }\n.info-item .info-icon svg {\n width: var(--icon-size);\n height: var(--icon-size);\n margin: var(--icon-margin);\n }\n/* default type */\n.info-item.info .info-html, .info-item.info .info-icon {\n background-color: oklch(var(--info-block-bg));\n }\n.info-item.info .info-html {\n padding: 0.5rem;\n color: oklch(var(--info-block-fg));\n}\n/* type actionbar */\n.info-item.question-bar .info-html, .info-item.question-bar info-icon {\n background-color: oklch(var(--page));\n }\n.info-item.question-bar .info-html {\n padding: 0;\n }\n.info-item.question-bar .info-html>div {\n max-height: 40vh; /* Just a precaution, should be shorter */\n overflow: auto;\n }\n.item.radio .option, .item.check_box .option {\n display: flex;\n flex-wrap: wrap;\n}\n.item.radio .option .radiocheckwrapper, .item.check_box .option .radiocheckwrapper {\n flex: 0 0 var(--checkradio-size);\n }\n.item.radio .option .value, .item.check_box .option .value {\n flex: 0 0 2rem;\n text-align: right;\n }\n.item.radio .option .labelwrapper, .item.check_box .option .labelwrapper {\n flex: 1 1 0;\n }\n.item.radio .option .labelwrapper>*, .item.check_box .option .labelwrapper>* {\n padding-inline-start: var(--checkradio-padding); /* padding in label, so no space between input and label */\n }\n.item.radio .option .subquestions, .item.check_box .option .subquestions {\n width: 100%; /* forces it to the next lines */\n }\n.item.radio .option + .option, .item.check_box .option + .option {\n margin-top: calc(var(--option-gap-y) * 0.25rem);\n }\n.subquestions {\n margin-inline-start: calc(var(--question-bar-padding) + var(--checkradio-size)/2 + 2px); /* align active bar under checkbox/radio */\n}\n/* context-description doesn\'t live under question, so doesn\'t react to a single question override. */\n.item, .context-description {\n position: relative;\n margin-bottom: calc(var(--question-padding) * var(--question-mb-factor));\n}\n.item:has(+.indent.question) {\n margin-bottom: 0;\n padding-bottom: calc(var(--question-padding) * var(--question-mb-factor) / 2);\n}\n.question.indent {\n padding-inline-start: calc(var(--checkradio-size) + var(--checkradio-padding));\n}\n/* align with option text, it\'s often below selects and a fine padding for other types */\n.question.indent::before {\n content: "";\n position: absolute;\n top: 10px;\n inset-inline-start: 0;\n margin-inline-start: calc(0px - var(--question-bar-padding));\n width: calc(var(--checkradio-size) + var(--question-bar-padding));\n height: var(--question-bar-width);\n background-color: oklch(var(--super-muted));\n }\n.question.indent.active::before {\n background-color: oklch(var(--primary));\n }\n.subquestions .item {\n margin-bottom: 0;\n}\n/* Distance from inputs feel than from text, since they don\'t have extra line-height padding.\n * So we add a bit of padding, but not for radio/checkbox, \n * since they do have line-height from the labels.\n * but also because it would prevent margin-collapsing when they have subquestions.\n * Let\'s hope someday text-box-trim will make this obsolete. */\n.item:not(.radio):not(.check_box) .description-and-fields {\n padding-bottom: 0.5em;\n}\n.item .error {\n background: oklch(var(--error-background));\n outline: 1px solid oklch(var(--error-bar));\n border-radius: var(--default-radius);\n margin: 0.25rem;\n padding: 0.25rem;\n}\nfooter {\n font-weight: 300;\n}\nfooter em {\n font-weight: 400;\n}\nfooter strong {\n font-weight: 600;\n}\nfooter {\n font-size: .875rem;\n padding: var(--panel-padding);\n color: oklch(var(--foreground-80));\n}\n:is(.dark .dark\\:bg-slate-700) {\n --tw-bg-opacity: 1;\n background-color: rgb(51 65 85 / var(--tw-bg-opacity));\n}\n';
|
|
18659
|
+
const styles = '/*\n! tailwindcss v3.3.3 | MIT License | https://tailwindcss.com\n*//*\n1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)\n2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)\n*/\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n\n::before,\n::after {\n --tw-content: \'\';\n}\n\n/*\n1. Use a consistent sensible line-height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n3. Use a more readable tab size.\n4. Use the user\'s configured `sans` font-family by default.\n5. Use the user\'s configured `sans` font-feature-settings by default.\n6. Use the user\'s configured `sans` font-variation-settings by default.\n*/\n\nhtml {\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4; /* 3 */\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n}\n\n/*\n1. Remove the margin in all browsers.\n2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.\n*/\n\nbody {\n margin: 0; /* 1 */\n line-height: inherit; /* 2 */\n}\n\n/*\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n3. Ensure horizontal rules are visible by default.\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n border-top-width: 1px; /* 3 */\n}\n\n/*\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/*\nRemove the default font size and weight for headings.\n*/\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/*\nReset links to optimize for opt-in styling instead of opt-out.\n*/\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/*\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/*\n1. Use the user\'s configured `mono` font family by default.\n2. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/*\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/*\nPrevent `sub` and `sup` elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n3. Remove gaps between table borders by default.\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n border-collapse: collapse; /* 3 */\n}\n\n/*\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n3. Remove default padding in all browsers.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-feature-settings: inherit; /* 1 */\n font-variation-settings: inherit; /* 1 */\n font-size: 100%; /* 1 */\n font-weight: inherit; /* 1 */\n line-height: inherit; /* 1 */\n color: inherit; /* 1 */\n margin: 0; /* 2 */\n padding: 0; /* 3 */\n}\n\n/*\nRemove the inheritance of text transform in Edge and Firefox.\n*/\n\nbutton,\nselect {\n text-transform: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Remove default button styles.\n*/\n\nbutton,\n[type=\'button\'],\n[type=\'reset\'],\n[type=\'submit\'] {\n -webkit-appearance: button; /* 1 */\n background-color: transparent; /* 2 */\n background-image: none; /* 2 */\n}\n\n/*\nUse the modern Firefox focus style for all focusable elements.\n*/\n\n:-moz-focusring {\n outline: auto;\n}\n\n/*\nRemove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)\n*/\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/*\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/*\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/*\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type=\'search\'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/*\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/*\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to `inherit` in Safari.\n*/\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/*\nRemoves the default spacing and border for appropriate elements.\n*/\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nlegend {\n padding: 0;\n}\n\nol,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/*\nReset default styling for dialogs.\n*/\ndialog {\n padding: 0;\n}\n\n/*\nPrevent resizing textareas horizontally by default.\n*/\n\ntextarea {\n resize: vertical;\n}\n\n/*\n1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)\n2. Set the default placeholder color to the user\'s configured gray 400 color.\n*/\n\ninput::-moz-placeholder, textarea::-moz-placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1; /* 1 */\n color: #9ca3af; /* 2 */\n}\n\n/*\nSet the default cursor for buttons.\n*/\n\nbutton,\n[role="button"] {\n cursor: pointer;\n}\n\n/*\nMake sure disabled buttons don\'t get the pointer cursor.\n*/\n:disabled {\n cursor: default;\n}\n\n/*\n1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)\n2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)\n This can trigger a poorly considered lint error in some tools but is included by design.\n*/\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block; /* 1 */\n vertical-align: middle; /* 2 */\n}\n\n/*\nConstrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)\n*/\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n/* Make elements with the HTML hidden attribute stay hidden by default */\n[hidden] {\n display: none;\n}\n em {\n font-style: italic;\n font-weight: 500;\n }\n\n strong {\n font-weight: bolder;\n }\n strong em {\n font-weight: inherit;\n }\n\n em.clean {\n font-style: inherit;\n }\n\n strong.clean { \n font-weight: inherit;\n }\n\n .underline { /* mostly for <strong class="clean underline"> */\n text-decoration: underline;\n }\n\n /* de-emphasize the text */\n .de-em {\n font-weight: 300;\n}\n .de-em em {\n font-weight: 400;\n}\n .de-em strong {\n font-weight: 600;\n}\n\n a {\n color: oklch(var(--primary));\n text-decoration: underline;\n }\n\n .serif {\n font-family: Georgia, serif;\n }\n\n small {\n font-size: 0.8rem;\n }\n .text-center img, .text-center svg, .text-center input[type="radio"] { /* These are made display block by tailwind, but we want to center when scaled */\n margin-inline: auto;\n }\n\n h1, h2, h3, h4, .h1, .h2, .h3, .h4 {\n font-weight: 700;\n}\n\n h1 em, h2 em, h3 em, h4 em, .h1 em, .h2 em, .h3 em, .h4 em {\n font-weight: inherit;\n }\n\n h1 strong, h2 strong, h3 strong, h4 strong, .h1 strong, .h2 strong, .h3 strong, .h4 strong {\n font-weight: 900;\n}\n\n h1, h2, h3, h4, .h1, .h2, .h3, .h4 {\n margin: 1.5rem 0 1rem;\n }\n\n h1, .h1 {\n font-size: 1.75rem;\n margin: 1.5rem 0 2rem;\n }\n\n h2, .h2 {\n font-size: 1.5rem;\n }\n\n h3, .h3 {\n font-size: 1.25rem;\n }\n\n h4, .h4 {\n font-size: 1rem;\n }\n :host {\n --page: 1 0 0;\n --background: 1 0 0;\n --foreground: .21 .04 266; /* text color */\n --foreground-80: .38 .04 266;\n --foreground-60: .55 .04 266;\n --muted: var(--foreground-60); /* text color muted */\n --super-muted: .95 .04 266;\n --primary: .454 .135 254;\n --primary-muted: .5 .135 254;\n --primary-hover: 0.5 0.16 254;\n --primary-inv: var(--background);\n --error-bar: .64 .24 27;\n --error-background: var(--error-bar) / .4;\n --slider-track: .91 0 0;\n --info-block-bg: .87 .055 223;\n --info-block-fg: var(--foreground);\n\n --panel-padding: 1rem;\n --default-radius: 0.25rem;\n --checkradio-size: 1rem;\n --checkradio-padding: 0.75rem;\n --question-padding: 2rem;\n --question-bar-padding: 8px;\n --question-bar-width: 4px;\n --list-indent: 1.5rem;\n\n /* To change in questionnaires */\n --option-gap-y: 0; /* vertical gap between options, 1, 2, 3, 4 */\n --question-mb-factor: 1; /* vertical gap to the next question, 0, 0.5, 1, 1.5, 2 */\n --max-page-width: 75rem;\n }\n\n @media(min-width: 800px) {\n :host {\n --panel-padding: 2rem;\n --question-bar-padding: 10px;\n }\n }\n\n .dark {\n --page: .186 .031 272;\n --background: 0 0 0;\n --foreground: 1 0 0;\n --foreground-80: .8 0 0;\n --foreground-60: .6 0 0;\n --foreground-40: .4 0 0;\n --muted: var(--foreground-60);\n --super-muted: .3 0 0;\n --primary: .68 .16 254;\n --primary-hover: 0.5 0.16 254;\n --primary-muted: .3 .135 254;\n --primary-inv: var(--foreground);\n --slider-track: .23 0 197;\n --info-block-bg: .4342 .052 233;\n --info-block-fg: var(--foreground);\n }\n\n :host {\n all: initial;\n display: block;\n position: relative; /* fix absolute children when quby lives in a scrolling container */\n /* Copied from tailwind html css. */\n line-height: 1.5; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4; /* 3 */\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */\n font-feature-settings: normal; /* 5 */\n font-variation-settings: normal; /* 6 */\n\n /* Made normal font thinner (300) in tailwind.conf */\n\n font-weight: 400;\n }\n\n input, textarea, select {\n border: 1px solid oklch(var(--foreground));\n border-radius: var(--default-radius);\n }\n input:focus, textarea:focus, select:focus {\n box-shadow: 0 0 0 6px oklch(var(--primary) / .2);\n outline: 3px solid transparent; /* replace shadow when forced colors */\n border-color: oklch(var(--primary));\n }\n input:disabled, textarea:disabled, select:disabled {\n color: oklch(var(--foreground-60));\n border-color: oklch(var(--foreground-60));\n cursor: not-allowed;\n }\n\n input:not([type=checkbox]):not([type=radio]), textarea, select {\n padding: .4rem;\n background-color: oklch(var(--background));\n color: var(--foreground);\n caret-color: oklch(var(--primary));\n }\n\n input[type=checkbox], input[type=radio] {\n --check-color: var(--foreground); /* when active changes to primary */\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n position: relative;\n display: grid; /* easiest way to perfectly center the ::before */\n place-content: center;\n width: var(--checkradio-size);\n height: var(--checkradio-size);\n margin: .25rem 0;\n } /* center vertically, (line-height-height)/2 */\n input[type=checkbox]:hover, input[type=radio]:hover {\n border-color: oklch(var(--primary)); /* minimal feedback that clicking radio/label will do something */\n border-width: 2px;\n }\n input[type=checkbox]::before, input[type=radio]::before {\n content: "";\n width: calc(var(--checkradio-size) - 6px);\n height: calc(var(--checkradio-size) - 6px);\n transform: scale(0); /* hide when not checked */\n transition: 125ms transform ease-in-out;\n box-shadow: inset 1em 1em oklch(var(--check-color)); /* bg instead of bgcolor to enable printing */\n background-color: CanvasText; /* replace shadow when forced colors */\n }\n input[type=checkbox]::after, input[type=radio]::after {\n content: "";\n position: absolute;\n top: -4px;\n inset-inline-start: -4px;\n height: 24px;\n width: 24px;\n }\n input[type=checkbox]:checked::before, input[type=radio]:checked::before {\n transform: scale(1);\n }\n\n input[type=checkbox] {\n border-radius: var(--default-radius);\n }\n input[type=checkbox]::before {\n clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%); /* checkmark */\n } \n input[type=radio] {\n border-radius: 50%;\n }\n input[type=radio]::before {\n border-radius: 50%;\n }\n .active input[type=checkbox]:not(:disabled), .active input[type=radio]:not(:disabled) {\n --check-color: var(--primary);\n }\n\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n.progress-bar {\n margin: var(--panel-padding);\n }\n.progress-bar .progress-wrapper .progress-slider {\n background-position: 0 4px;\n display: inline-block;\n height: 12px;\n border: 1px solid #ccc;\n border-radius: 6px;\n padding: 1px;\n }\n.panel .progress-bar .progress-wrapper {\n text-align: center;\n }\n.progress-bar .progress-stop {\n height: 8px;\n line-height: 8px;\n width: 6px;\n background: none;\n font-size: 6px;\n text-indent: -1234em;\n display: block;\n float: inline-start;\n }\n.progress-bar .progress-stop.first-child {\n width: 8px;\n border-radius: 5px 0 0 5px;\n }\n.progress-bar .progress-stop.last-child {\n width: 8px;\n border-radius: 0 5px 5px 0;\n }\n.progress-bar .progress-stop.active {\n background: oklch(var(--muted));\n }\n.progress-bar .progress-stop.current {\n border-radius: 0 5px 5px 0;\n }\n.progress-bar .progress-stop.current.first-child {\n border-radius: 5px;\n }\n.progress-bar .progress-details {\n color: has(var(--muted));\n font-size: 9px;\n }\n.prose p {\n margin: 0 0 1rem 0;\n }\n/* for things like description we want less, so the parent will determine the outer margin. */\n/* if only margin-trim was more widely supported */\n.prose > *:first-child {\n margin-top: 0;\n }\n.prose > *:last-child {\n margin-bottom: 0;\n }\n.prose ul {\n list-style-type: disc;\n margin-block: 0 1rem;\n margin-inline: var(--list-indent) 0;\n }\n.prose ol {\n list-style-type: lower-alpha;\n margin-block: 0 1rem;\n margin-inline: var(--list-indent) 0;\n }\n.prose ol.list-decimal {\n list-style-type: decimal;\n }\n.prose li {\n padding-inline-start: 0.5rem;\n }\n.prose hr {\n margin: var(--question-padding) 1rem;\n border: none;\n height: 0.125rem;\n background-color: oklch(var(--muted));\n }\n.prose hr.compact {\n margin: 1rem;\n }\nblockquote {\n margin: 1em 2em;\n }\nblockquote >* {\n font-style: italic;\n }\nblockquote >p::before,\n blockquote >p:last-child::after,\n blockquote >ul::before,\n blockquote >ul:last-child > li:last-child::after {\n content: "“";\n font-family: Georgia;\n font-size: 2.5rem;\n margin-block: -.8rem 0;\n margin-inline: -1.4rem 0;\n position: absolute;\n color: #666;\n }\nblockquote >ul::before {\n margin-inline-start: calc(-1.1rem - var(--list-indent));\n }\nblockquote >p:last-child::after,\n blockquote >ul:last-child > li:last-child::after {\n content: "”";\n margin: 0;\n margin-inline-start: -.1rem\n }\nblockquote.blue-quotes p::before,\n blockquote.blue-quotes p:last-child::after {\n color: #298ED5;\n }\n.visible {\n visibility: visible;\n}\n.absolute {\n position: absolute;\n}\n.sticky {\n position: sticky;\n}\n.order-last {\n order: 9999;\n}\n.float-right {\n float: right;\n}\n.m-panel-padding {\n margin: var(--panel-padding);\n}\n.mx-1 {\n margin-left: 0.25rem;\n margin-right: 0.25rem;\n}\n.mb-2 {\n margin-bottom: 0.5rem;\n}\n.me-1 {\n margin-inline-end: 0.25rem;\n}\n.mt-1 {\n margin-top: 0.25rem;\n}\n.mt-3 {\n margin-top: 0.75rem;\n}\n.block {\n display: block;\n}\n.inline-block {\n display: inline-block;\n}\n.inline {\n display: inline;\n}\n.flex {\n display: flex;\n}\n.table {\n display: table;\n}\n.hidden {\n display: none;\n}\n.w-1\\/2 {\n width: 50%;\n}\n.w-1\\/3 {\n width: 33.333333%;\n}\n.w-1\\/4 {\n width: 25%;\n}\n.w-1\\/5 {\n width: 20%;\n}\n.w-1\\/6 {\n width: 16.666667%;\n}\n.w-2\\/3 {\n width: 66.666667%;\n}\n.w-2\\/5 {\n width: 40%;\n}\n.w-3\\/4 {\n width: 75%;\n}\n.w-3\\/5 {\n width: 60%;\n}\n.w-4\\/5 {\n width: 80%;\n}\n.w-5\\/6 {\n width: 83.333333%;\n}\n.w-full {\n width: 100%;\n}\n.transform {\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.resize {\n resize: both;\n}\n.list-decimal {\n list-style-type: decimal;\n}\n.justify-between {\n justify-content: space-between;\n}\n.rounded {\n border-radius: 0.25rem;\n}\n.border {\n border-width: 1px;\n}\n.border-2 {\n border-width: 2px;\n}\n.border-warning {\n --tw-border-opacity: 1;\n border-color: rgb(255 165 0 / var(--tw-border-opacity));\n}\n.bg-slate-100 {\n --tw-bg-opacity: 1;\n background-color: rgb(241 245 249 / var(--tw-bg-opacity));\n}\n.p-panel-padding {\n padding: var(--panel-padding);\n}\n.text-center {\n text-align: center;\n}\n.align-top {\n vertical-align: top;\n}\n.font-light {\n font-weight: 300;\n}\n.underline {\n text-decoration-line: underline;\n}\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n:host > div {\n background-color: oklch(var(--page));\n color: oklch(var(--foreground));\n min-height: 100cqh;\n}\n:host > div > * {\n max-width: var(--max-page-width);\n margin: 0 auto;\n}\n.panel + .panel {\n margin-top: 5rem;\n}\n.option .labelwrapper p {\n display: inline; /* temp fix, should be stripped by quby-compiler */\n}\n.item.question, .question-bar {\n --question-bar-color: var(--super-muted);\n box-shadow: calc(-1 * var(--question-bar-padding)) 0 0 0 oklch(var(--page)), calc(0px - var(--question-bar-width) - var(--question-bar-padding)) 0px 0px 0px oklch(var(--question-bar-color));\n}\n.item.question:dir(rtl), .question-bar:dir(rtl) {\n box-shadow: calc(var(--question-bar-padding)) 0 0 0 oklch(var(--page)), calc(var(--question-bar-width) + var(--question-bar-padding)) 0px 0px 0px oklch(var(--question-bar-color));\n }\n.item.question.active, .item.question .item:has(.active), .question-bar.active, .question-bar .item:has(.active) {\n --question-bar-color: var(--primary);\n }\n.item.question.errors, .question-bar.errors {\n --question-bar-color: var(--error-background);\n }\n.item.question.errors.active, .question-bar.errors.active {\n --question-bar-color: var(--error-bar);\n }\n.item .main {\n font-weight: 700;\n}\n.item .main em {\n font-weight: inherit;\n }\n.item .main strong {\n font-weight: 900;\n}\n.item .main {\n margin-bottom: 0.25rem; /* margin to .description, collapses with .field if that is the next element */\n}\n.item .inner-title {\n margin: 1rem 0 0.5rem;\n font-weight: 600;\n }\n.item .inner-title em {\n font-weight: 700;\n}\n.item .inner-title strong {\n font-weight: 800;\n}\n.item .description-and-fields > .description {\n font-weight: 300;\n}\n.item .description-and-fields > .description em {\n font-weight: 400;\n}\n.item .description-and-fields > .description strong {\n font-weight: 600;\n}\n.item .description-and-fields > .description .instruction {\n font-weight: 400;\n}\n.item .description-and-fields > .description .example {}\n.item .description-and-fields > .description .explanation {}\n.item .fields {\n margin-top: 0.5rem;\n}\nbutton {\n border-radius: 0.375rem;\n padding-left: 1rem;\n padding-right: 1rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n font-weight: 600;\n}\nbutton:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);\n}\nbutton.secondary {\n border-width: 2px;\n border-color: oklch(var(--primary));\n background-color: oklch(var(--background));\n color: oklch(var(--primary));\n}\nbutton.secondary:hover {\n border-color: oklch(var(--primary-hover));\n color: oklch(var(--primary-hover));\n }\nbutton.primary {\n background-color: oklch(var(--primary));\n color: oklch(var(--background));\n}\nbutton.primary:hover {\n background-color: oklch(var(--primary-hover));\n }\n.info-item {\n --icon-size: 20px;\n --icon-margin: 8px;\n}\n.info-item .info-html {\n margin-bottom: var(--question-padding);\n z-index: 1; /* prevent showing under slider */\n padding-inline-end: calc(var(--icon-size) + 2 * var(--icon-margin));\n }\n.info-item .info-html.open { /* opened by clicking icon */\n position: sticky;\n top: 0;\n }\n.info-item .info-html>div { /* actual content, extra div needed to animate scale. */\n transform-origin: center top;\n transition: inherit;\n }\n.info-item .info-html>div :first-child {\n margin-top: 0;\n }\n.info-item .info-html>div :last-child {\n margin-bottom: 0;\n }\n.info-item .info-html.opening {\n height: 0;\n margin-bottom: 0;\n }\n.info-item .info-html.opening>div { \n transform: scale(1, 0); /* animating scale, since we can\'t both hide content and have the icon float */\n }\n.info-item .info-html {\n transition: all 0.3s linear;\n interpolate-size: allow-keywords;\n}\n/* gradient under info-html, to make text fade under it */\n.info-item .info-html::after {\n content: "";\n position: absolute;\n bottom: calc(-1 * var(--question-padding));\n height: var(--question-padding);\n width: 100%;\n left: 0;\n background: linear-gradient(in oklch, oklch(var(--page)), transparent);\n }\n.info-item .info-icon {\n position: relative; /* with z-index to make it appear above the info-html */\n z-index: 2;\n float: inline-end;\n top: 0;\n transition: margin 0.5s;\n position: sticky;\n }\n.info-item .info-icon:hover {\n cursor: pointer;\n }\n.info-item .info-icon.stuck {\n margin-right: calc(-1 * var(--panel-padding));\n }\n.info-item .info-icon svg {\n width: var(--icon-size);\n height: var(--icon-size);\n margin: var(--icon-margin);\n }\n/* default type */\n.info-item.info .info-html, .info-item.info .info-icon {\n background-color: oklch(var(--info-block-bg));\n }\n.info-item.info .info-html {\n padding: 0.5rem;\n color: oklch(var(--info-block-fg));\n}\n/* type actionbar */\n.info-item.question-bar .info-html, .info-item.question-bar info-icon {\n background-color: oklch(var(--page));\n }\n.info-item.question-bar .info-html {\n padding: 0;\n }\n.info-item.question-bar .info-html>div {\n max-height: 40vh; /* Just a precaution, should be shorter */\n overflow: auto;\n }\n.item.radio .option, .item.check_box .option {\n display: flex;\n flex-wrap: wrap;\n}\n.item.radio .option .radiocheckwrapper, .item.check_box .option .radiocheckwrapper {\n flex: 0 0 var(--checkradio-size);\n }\n.item.radio .option .value, .item.check_box .option .value {\n flex: 0 0 2rem;\n text-align: right;\n }\n.item.radio .option .labelwrapper, .item.check_box .option .labelwrapper {\n flex: 1 1 0;\n }\n.item.radio .option .labelwrapper>*, .item.check_box .option .labelwrapper>* {\n padding-inline-start: var(--checkradio-padding); /* padding in label, so no space between input and label */\n }\n.item.radio .option .subquestions, .item.check_box .option .subquestions {\n width: 100%; /* forces it to the next lines */\n }\n.item.radio .option + .option, .item.check_box .option + .option {\n margin-top: calc(var(--option-gap-y) * 0.25rem);\n }\n.subquestions {\n margin-inline-start: calc(var(--question-bar-padding) + var(--checkradio-size)/2 + 2px); /* align active bar under checkbox/radio */\n}\n/* context-description doesn\'t live under question, so doesn\'t react to a single question override. */\n.item, .context-description {\n position: relative;\n margin-bottom: calc(var(--question-padding) * var(--question-mb-factor));\n}\n.item:has(+.indent.question) {\n margin-bottom: 0;\n padding-bottom: calc(var(--question-padding) * var(--question-mb-factor) / 2);\n}\n.question.indent {\n padding-inline-start: calc(var(--checkradio-size) + var(--checkradio-padding));\n}\n/* align with option text, it\'s often below selects and a fine padding for other types */\n.question.indent::before {\n content: "";\n position: absolute;\n top: 10px;\n inset-inline-start: 0;\n margin-inline-start: calc(0px - var(--question-bar-padding));\n width: calc(var(--checkradio-size) + var(--question-bar-padding));\n height: var(--question-bar-width);\n background-color: oklch(var(--super-muted));\n }\n.question.indent.active::before {\n background-color: oklch(var(--primary));\n }\n.subquestions .item {\n margin-bottom: 0;\n}\n/* Distance from inputs feel than from text, since they don\'t have extra line-height padding.\n * So we add a bit of padding, but not for radio/checkbox, \n * since they do have line-height from the labels.\n * but also because it would prevent margin-collapsing when they have subquestions.\n * Let\'s hope someday text-box-trim will make this obsolete. */\n.item:not(.radio):not(.check_box) .description-and-fields {\n padding-bottom: 0.5em;\n}\n.item .error {\n background: oklch(var(--error-background));\n outline: 1px solid oklch(var(--error-bar));\n border-radius: var(--default-radius);\n margin: 0.25rem;\n padding: 0.25rem;\n}\nfooter {\n font-weight: 300;\n}\nfooter em {\n font-weight: 400;\n}\nfooter strong {\n font-weight: 600;\n}\nfooter {\n font-size: .875rem;\n padding: var(--panel-padding);\n color: oklch(var(--foreground-80));\n}\n:is(.dark .dark\\:bg-slate-700) {\n --tw-bg-opacity: 1;\n background-color: rgb(51 65 85 / var(--tw-bg-opacity));\n}\n';
|
|
18146
18660
|
const oldStyles = ':host {\n --background: 0 0% 100%;\n}\n\n.item.date_parts .mr-1 {\n margin-right: 0.125rem;\n}\n.item.date_parts .mb-2 { \n margin-bottom: 0.25rem;\n}\n\n\n/* line 5, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\nhtml, body, div, span, applet, object, iframe,\nh1, h2, h3, h4, h5, h6, p, blockquote, pre,\na, abbr, acronym, address, big, cite, code,\ndel, dfn, em, img, ins, kbd, q, s, samp,\nsmall, strike, strong, sub, sup, tt, var,\nb, u, i, center,\ndl, dt, dd, ol, ul, li,\nfieldset, form, label, legend,\ntable, caption, tbody, tfoot, thead, tr, th, td,\narticle, aside, canvas, details, embed,\nfigure, figcaption, footer, header, hgroup,\nmenu, nav, output, ruby, section, summary,\ntime, mark, audio, video {\n margin: 0;\n padding: 0;\n border: 0;\n font: inherit;\n font-size: 100%;\n vertical-align: baseline;\n}\n\n/* line 22, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\nhtml {\n line-height: 1;\n}\n\n/* line 24, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\nol, ul {\n list-style: none;\n}\n\n/* line 26, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\n/* line 28, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\ncaption, th, td {\n text-align: left;\n font-weight: normal;\n vertical-align: middle;\n}\n\n/* line 30, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\nq, blockquote {\n quotes: none;\n}\n/* line 103, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\nq:before, q:after, blockquote:before, blockquote:after {\n content: "";\n content: none;\n}\n\n/* line 32, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\na img {\n border: none;\n}\n\n/* line 116, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\narticle, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {\n display: block;\n}\n\n/* line 3, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#modalFrameDialog {\n padding: 0;\n}\n\n/* line 6, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#modalFrame {\n width: 100%;\n height: 99%;\n}\n\n/* line 11, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.x_container {\n display: none;\n}\n\n/* line 15, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\nsup, sub {\n font-size: 0.8em !important;\n position: relative;\n line-height: 0;\n}\n\n/* line 21, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\nsup {\n top: -0.4em;\n}\n\n/* line 25, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\nsub {\n bottom: -0.25em;\n}\n\n/* line 29, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\nhtml {\n overflow-x: hidden;\n}\n\n/* line 33, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\nbody {\n font-family: Verdana, sans-serif;\n font-size: 0.8em;\n line-height: normal;\n background-color: #eeeeee;\n max-width: 100%;\n overflow-x: hidden;\n position: relative;\n}\n\n/* line 43, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.panel-action-links {\n text-align: right;\n margin-bottom: 1em;\n}\n\n/* line 48, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.panel-action-link {\n margin-left: 1em;\n}\n\n/* line 52, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#mastfoot {\n margin: 0 auto;\n max-width: 900px;\n text-align: right;\n color: #aaaaaa;\n}\n/* line 58, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#mastfoot:before {\n content: "\\2014";\n}\n/* line 62, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#mastfoot:after {\n content: "\\2014";\n}\n\n/* line 67, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#noscript-warning {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n background: yellow;\n border: 4px solid red;\n color: red;\n font-size: 1.5em;\n text-align: center;\n}\n\n/* line 79, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.nowrap {\n white-space: nowrap;\n}\n\n/* line 83, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\nselect {\n width: 100%;\n}\n\n/* line 87, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\ni {\n font-style: italic !important;\n}\n\n/* line 91, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\nem {\n font-weight: bold;\n}\n\n/* line 95, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#content {\n margin-bottom: 4em;\n}\n/* line 98, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#content input[disabled] {\n background-color: #ddd;\n}\n/* line 102, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#content .flash {\n max-width: 59em;\n _width: 59em;\n padding-left: 1em;\n padding-right: 1em;\n margin-left: auto;\n margin-right: auto;\n margin-bottom: 1em;\n}\n/* line 38, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/utilities/general/_clearfix.scss */\n#content .flash:after {\n content: "";\n display: table;\n clear: both;\n}\n/* line 106, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#content .flash div {\n padding: 5px;\n background: #333333;\n border: 1px solid black;\n}\n/* line 112, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#content .flash .error {\n background: #ffbbbb;\n border: 1px solid #ff3333;\n}\n/* line 116, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#content .flash .notice {\n background: #ffffcc;\n border: 1px solid #ffcc66;\n}\n/* line 120, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#content .flash .success {\n background-color: #ccffcc;\n border: 1px solid #11cc11;\n}\n/* line 126, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#content #force-submit {\n background: #ffffcc;\n border: 1px solid #ffcc66;\n padding: 3em;\n font-size: 1.2em;\n margin-bottom: 5em;\n}\n/* line 133, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#content #force-submit h1 {\n font-weight: bold;\n margin-bottom: 1em;\n}\n/* line 134, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#content #force-submit p {\n margin-bottom: 1em;\n}\n/* line 137, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#content .specifier {\n margin: 0 !important;\n}\n/* line 139, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n#content .specifier.errors {\n width: auto !important;\n float: left;\n}\n\n/* line 148, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.evenRow {\n background-color: #eeeeee;\n}\n\n/* line 157, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.hotkeyDialog p {\n margin: 1em 0;\n}\n/* line 160, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.hotkeyDialog td {\n border: 0px;\n}\n\n/* line 165, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\ntable {\n width: 100%;\n border-collapse: collapse;\n margin-bottom: 1.5em;\n}\n/* line 169, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\ntable thead tr th {\n background: black;\n color: white;\n padding: 5px;\n}\n/* line 175, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\ntable tr.even {\n background: #e9e9e9;\n}\n/* line 179, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\ntable td {\n padding: 5px;\n border: 1px solid #cecece;\n vertical-align: top;\n}\n\n/* line 186, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.ui-dialog-buttonpane {\n overflow: hidden !important;\n}\n\n/* line 190, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\npre {\n font-family: "Deja Vu Sans Mono", "Courier New", "Courier", monospace;\n}\n\n/* line 194, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.question {\n background: #e5e5e5;\n margin: 2em;\n padding: 2em;\n}\n\n/* line 202, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\nlabel.placeholder {\n cursor: text;\n padding: 4px 4px 4px 4px;\n color: #999999;\n}\n\n/* line 209, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\ninput::-webkit-input-placeholder, textarea::-webkit-input-placeholder {\n color: #999999;\n}\n\n/* line 213, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\ninput:placeholder, textarea:placeholder {\n color: #999999;\n}\n\n/* line 217, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.focus {\n background: #cce8ed !important;\n}\n\n/* line 221, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.print {\n width: 83.05085%;\n float: left;\n margin-right: 1.69492%;\n display: inline;\n margin-top: 2em;\n}\n/* line 224, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.print a {\n color: blue;\n text-decoration: underline;\n}\n\n/* line 230, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\n.error .stacktrace {\n color: #777;\n white-space: pre-line;\n}\n\n/* line 235, /home/marten/rgoc/quby/app/assets/stylesheets/quby/screen.scss */\nhtml.busy, html.busy * {\n cursor: wait !important;\n}\n\n/* line 4, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.hidden {\n display: none;\n}\n\n/* line 7, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .noVisibleQuestions, .single-page .noVisibleQuestions {\n display: none;\n}\n/* line 9, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .hide, .single-page .hide {\n margin: 0 !important;\n outline: none !important;\n}\n/* line 14, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .hide > *, .single-page .hide > * {\n display: none !important;\n}\n/* line 34, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel, .single-page .panel {\n background: white;\n}\n/* line 6, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .panel, .single-page .panel {\n max-width: 59em;\n _width: 59em;\n padding-left: 1em;\n padding-right: 1em;\n margin-left: auto;\n margin-right: auto;\n padding-top: 20px;\n}\n/* line 38, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/utilities/general/_clearfix.scss */\n.paged .panel:after, .single-page .panel:after {\n content: "";\n display: table;\n clear: both;\n}\n/* line 40, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\n.paged .panel .table div, .single-page .panel .table div, .paged .panel .table span, .single-page .panel .table span, .paged .panel .table applet, .single-page .panel .table applet, .paged .panel .table object, .single-page .panel .table object, .paged .panel .table iframe, .single-page .panel .table iframe,\n.paged .panel .table h1,\n.single-page .panel .table h1, .paged .panel .table h2, .single-page .panel .table h2, .paged .panel .table h3, .single-page .panel .table h3, .paged .panel .table h4, .single-page .panel .table h4, .paged .panel .table h5, .single-page .panel .table h5, .paged .panel .table h6, .single-page .panel .table h6, .paged .panel .table p, .single-page .panel .table p, .paged .panel .table blockquote, .single-page .panel .table blockquote, .paged .panel .table pre, .single-page .panel .table pre,\n.paged .panel .table a,\n.single-page .panel .table a, .paged .panel .table abbr, .single-page .panel .table abbr, .paged .panel .table acronym, .single-page .panel .table acronym, .paged .panel .table address, .single-page .panel .table address, .paged .panel .table big, .single-page .panel .table big, .paged .panel .table cite, .single-page .panel .table cite, .paged .panel .table code, .single-page .panel .table code,\n.paged .panel .table del,\n.single-page .panel .table del, .paged .panel .table dfn, .single-page .panel .table dfn, .paged .panel .table em, .single-page .panel .table em, .paged .panel .table img, .single-page .panel .table img, .paged .panel .table ins, .single-page .panel .table ins, .paged .panel .table kbd, .single-page .panel .table kbd, .paged .panel .table q, .single-page .panel .table q, .paged .panel .table s, .single-page .panel .table s, .paged .panel .table samp, .single-page .panel .table samp,\n.paged .panel .table small,\n.single-page .panel .table small, .paged .panel .table strike, .single-page .panel .table strike, .paged .panel .table strong, .single-page .panel .table strong, .paged .panel .table sub, .single-page .panel .table sub, .paged .panel .table sup, .single-page .panel .table sup, .paged .panel .table tt, .single-page .panel .table tt, .paged .panel .table var, .single-page .panel .table var,\n.paged .panel .table b,\n.single-page .panel .table b, .paged .panel .table u, .single-page .panel .table u, .paged .panel .table i, .single-page .panel .table i, .paged .panel .table center, .single-page .panel .table center,\n.paged .panel .table dl,\n.single-page .panel .table dl, .paged .panel .table dt, .single-page .panel .table dt, .paged .panel .table dd, .single-page .panel .table dd, .paged .panel .table ol, .single-page .panel .table ol, .paged .panel .table ul, .single-page .panel .table ul, .paged .panel .table li, .single-page .panel .table li,\n.paged .panel .table fieldset,\n.single-page .panel .table fieldset, .paged .panel .table form, .single-page .panel .table form, .paged .panel .table label, .single-page .panel .table label, .paged .panel .table legend, .single-page .panel .table legend,\n.paged .panel .table table,\n.single-page .panel .table table, .paged .panel .table caption, .single-page .panel .table caption, .paged .panel .table tbody, .single-page .panel .table tbody, .paged .panel .table tfoot, .single-page .panel .table tfoot, .paged .panel .table thead, .single-page .panel .table thead, .paged .panel .table tr, .single-page .panel .table tr, .paged .panel .table th, .single-page .panel .table th, .paged .panel .table td, .single-page .panel .table td,\n.paged .panel .table article,\n.single-page .panel .table article, .paged .panel .table aside, .single-page .panel .table aside, .paged .panel .table canvas, .single-page .panel .table canvas, .paged .panel .table details, .single-page .panel .table details, .paged .panel .table embed, .single-page .panel .table embed,\n.paged .panel .table figure,\n.single-page .panel .table figure, .paged .panel .table figcaption, .single-page .panel .table figcaption, .paged .panel .table footer, .single-page .panel .table footer, .paged .panel .table header, .single-page .panel .table header, .paged .panel .table hgroup, .single-page .panel .table hgroup,\n.paged .panel .table menu,\n.single-page .panel .table menu, .paged .panel .table nav, .single-page .panel .table nav, .paged .panel .table output, .single-page .panel .table output, .paged .panel .table ruby, .single-page .panel .table ruby, .paged .panel .table section, .single-page .panel .table section, .paged .panel .table summary, .single-page .panel .table summary,\n.paged .panel .table time,\n.single-page .panel .table time, .paged .panel .table mark, .single-page .panel .table mark, .paged .panel .table audio, .single-page .panel .table audio, .paged .panel .table video, .single-page .panel .table video {\n margin: 0;\n padding: 0;\n border: 0;\n font: inherit;\n font-size: 100%;\n vertical-align: baseline;\n}\n/* line 55, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\n.paged .panel .table table, .single-page .panel .table table {\n border-collapse: collapse;\n border-spacing: 0;\n}\n/* line 57, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\n.paged .panel .table caption, .single-page .panel .table caption, .paged .panel .table th, .single-page .panel .table th, .paged .panel .table td, .single-page .panel .table td {\n text-align: left;\n font-weight: normal;\n vertical-align: middle;\n}\n/* line 59, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\n.paged .panel .table q, .single-page .panel .table q, .paged .panel .table blockquote, .single-page .panel .table blockquote {\n quotes: none;\n}\n/* line 103, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\n.paged .panel .table q:before, .single-page .panel .table q:before, .paged .panel .table q:after, .single-page .panel .table q:after, .paged .panel .table blockquote:before, .single-page .panel .table blockquote:before, .paged .panel .table blockquote:after, .single-page .panel .table blockquote:after {\n content: "";\n content: none;\n}\n/* line 61, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\n.paged .panel .table a img, .single-page .panel .table a img {\n border: none;\n}\n/* line 4, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table p, .single-page .panel .table p, .paged .panel .table div, .single-page .panel .table div {\n display: inline;\n}\n/* line 8, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table caption, .single-page .panel .table caption {\n margin-bottom: 0.5em;\n}\n/* line 12, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table .errors, .single-page .panel .table .errors {\n outline: 2px solid red !important;\n}\n/* line 16, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table .error, .single-page .panel .table .error {\n display: inline-block;\n background: #ffbbbb;\n outline: 1px solid #ff3333;\n}\n/* line 20, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table .error.hidden, .single-page .panel .table .error.hidden {\n display: none;\n}\n/* line 27, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table, .single-page .panel .table table {\n border-bottom: 1px solid black;\n border-collapse: collapse;\n margin: 0;\n}\n/* line 28, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table *, .single-page .panel .table table * {\n width: auto;\n}\n/* line 32, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table .option, .single-page .panel .table table .option {\n white-space: normal;\n}\n/* line 36, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table td > div > *, .single-page .panel .table table td > div > * {\n margin-top: 0.5em;\n margin-bottom: 0.5em;\n}\n/* line 44, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table .row, .single-page .panel .table table .row {\n width: 100%;\n float: right;\n margin-right: 0;\n display: inline;\n float: none;\n display: table-row;\n}\n/* line 45, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table .row td, .single-page .panel .table table .row td, .paged .panel .table table .row th, .single-page .panel .table table .row th {\n display: table-cell;\n border: 0;\n border-bottom: 1px solid #bbb;\n vertical-align: top;\n float: none;\n}\n/* line 50, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table .row td.main, .single-page .panel .table table .row td.main, .paged .panel .table table .row th.main, .single-page .panel .table table .row th.main {\n vertical-align: middle;\n}\n/* line 55, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table .row.inner_row td, .single-page .panel .table table .row.inner_row td {\n border: 0;\n}\n/* line 56, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table .row:first-child td, .single-page .panel .table table .row:first-child td {\n border-top: 1px solid #bbb;\n}\n/* line 62, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table .row input, .single-page .panel .table table .row input {\n /* These properties get overriden by our table reset, so we have to re-apply them with a more specific selector */\n}\n/* line 63, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table .row input.float, .single-page .panel .table table .row input.float, .paged .panel .table table .row input.integer, .single-page .panel .table table .row input.integer {\n width: 54px;\n}\n/* line 67, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table .row input.string, .single-page .panel .table table .row input.string, .paged .panel .table table .row input.textarea, .single-page .panel .table table .row input.textarea {\n width: 92%;\n}\n/* line 73, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table .row input.sized, .single-page .panel .table table .row input.sized {\n width: auto;\n}\n/* line 76, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table .row input.fd-form-element-hidden, .single-page .panel .table table .row input.fd-form-element-hidden {\n display: none;\n}\n/* line 86, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table table .row .unit, .single-page .panel .table table .row .unit {\n vertical-align: -20%;\n padding-left: 4px;\n}\n/* line 93, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table .item, .single-page .panel .table .item {\n float: none;\n width: auto;\n margin-right: auto;\n display: block;\n}\n/* line 96, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table .main, .single-page .panel .table .main {\n width: 33.33333%;\n float: none !important;\n display: table-cell !important;\n}\n/* line 100, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table .main label small, .single-page .panel .table .main label small {\n font-size: 0.7em;\n}\n/* line 102, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table .description, .single-page .panel .table .description {\n text-align: right;\n}\n/* line 107, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table .option_sets .option, .single-page .panel .table .option_sets .option {\n padding-left: 1em;\n padding-bottom: 0.5em;\n vertical-align: bottom;\n}\n/* line 113, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table .dark, .single-page .panel .table .dark {\n background-color: #eee;\n}\n/* line 116, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n.paged .panel .table .light, .single-page .panel .table .light {\n background-color: #fff;\n}\n@media (max-width: 420px) {\n /* line 16, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n .paged .horizontal.item.scale table, .single-page .horizontal.item.scale table {\n table-layout: fixed;\n }\n /* line 18, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n .paged .horizontal.item.scale table td.last p, .single-page .horizontal.item.scale table td.last p {\n position: absolute;\n right: 20px;\n max-width: 5rem;\n text-align: right;\n }\n}\n/* line 28, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged tr, .single-page tr {\n border: 1px solid #aaa;\n}\n/* line 32, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .item, .single-page .item {\n width: 100%;\n float: right;\n margin-right: 0;\n display: inline;\n margin-bottom: 18px;\n}\n/* line 41, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .item.horizontal.radio .option, .single-page .item.horizontal.radio .option, .paged .item.horizontal.check_box .option, .single-page .item.horizontal.check_box .option,\n.paged .item.vertical.radio .option,\n.single-page .item.vertical.radio .option,\n.paged .item.vertical.check_box .option,\n.single-page .item.vertical.check_box .option {\n width: 100%;\n float: right;\n margin-right: 0;\n display: inline;\n}\n/* line 43, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .item.horizontal.radio .option .radiocheckwrapper, .single-page .item.horizontal.radio .option .radiocheckwrapper, .paged .item.horizontal.check_box .option .radiocheckwrapper, .single-page .item.horizontal.check_box .option .radiocheckwrapper,\n.paged .item.vertical.radio .option .radiocheckwrapper,\n.single-page .item.vertical.radio .option .radiocheckwrapper,\n.paged .item.vertical.check_box .option .radiocheckwrapper,\n.single-page .item.vertical.check_box .option .radiocheckwrapper {\n width: 6.77966%;\n float: left;\n margin-right: 1.69492%;\n display: inline;\n}\n/* line 44, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .item.horizontal.radio .option .labelwrapper, .single-page .item.horizontal.radio .option .labelwrapper, .paged .item.horizontal.check_box .option .labelwrapper, .single-page .item.horizontal.check_box .option .labelwrapper,\n.paged .item.vertical.radio .option .labelwrapper,\n.single-page .item.vertical.radio .option .labelwrapper,\n.paged .item.vertical.check_box .option .labelwrapper,\n.single-page .item.vertical.check_box .option .labelwrapper {\n width: 91.52542%;\n float: right;\n margin-right: 0;\n display: inline;\n}\n/* line 47, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .item.horizontal.radio .option.show_values .value, .single-page .item.horizontal.radio .option.show_values .value, .paged .item.horizontal.check_box .option.show_values .value, .single-page .item.horizontal.check_box .option.show_values .value,\n.paged .item.vertical.radio .option.show_values .value,\n.single-page .item.vertical.radio .option.show_values .value,\n.paged .item.vertical.check_box .option.show_values .value,\n.single-page .item.vertical.check_box .option.show_values .value {\n width: 6.77966%;\n float: left;\n margin-right: 1.69492%;\n display: inline;\n}\n/* line 48, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .item.horizontal.radio .option.show_values .labelwrapper, .single-page .item.horizontal.radio .option.show_values .labelwrapper, .paged .item.horizontal.check_box .option.show_values .labelwrapper, .single-page .item.horizontal.check_box .option.show_values .labelwrapper,\n.paged .item.vertical.radio .option.show_values .labelwrapper,\n.single-page .item.vertical.radio .option.show_values .labelwrapper,\n.paged .item.vertical.check_box .option.show_values .labelwrapper,\n.single-page .item.vertical.check_box .option.show_values .labelwrapper {\n width: 83.05085%;\n float: right;\n margin-right: 0;\n display: inline;\n}\n/* line 66, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .item.horizontal.string input, .single-page .item.horizontal.string input, .paged .item.horizontal.string textarea, .single-page .item.horizontal.string textarea, .paged .item.horizontal.textarea input, .single-page .item.horizontal.textarea input, .paged .item.horizontal.textarea textarea, .single-page .item.horizontal.textarea textarea,\n.paged .item.vertical.string input,\n.single-page .item.vertical.string input,\n.paged .item.vertical.string textarea,\n.single-page .item.vertical.string textarea,\n.paged .item.vertical.textarea input,\n.single-page .item.vertical.textarea input,\n.paged .item.vertical.textarea textarea,\n.single-page .item.vertical.textarea textarea {\n width: 100%;\n margin-right: 0;\n display: inline;\n}\n/* line 67, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .item.horizontal.string .sized, .single-page .item.horizontal.string .sized, .paged .item.horizontal.textarea .sized, .single-page .item.horizontal.textarea .sized,\n.paged .item.vertical.string .sized,\n.single-page .item.vertical.string .sized,\n.paged .item.vertical.textarea .sized,\n.single-page .item.vertical.textarea .sized {\n width: auto;\n}\n/* line 97, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .progress-bar, .single-page .progress-bar {\n width: 100%;\n float: right;\n margin-right: 0;\n display: inline;\n margin-left: -20px;\n margin-right: -20px;\n padding: 1.5em 20px;\n}\n/* line 104, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .progress-bar .progress-wrapper .progress-slider, .single-page .progress-bar .progress-wrapper .progress-slider {\n background-position: 0 3px;\n display: inline-block;\n zoom: 1;\n}\n/* line 107, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .progress-bar .progress-wrapper .progress-slider .progress-stop, .single-page .progress-bar .progress-wrapper .progress-slider .progress-stop {\n margin: 0 2px;\n width: 8px;\n height: 8px;\n}\n/* line 112, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .progress-bar .progress-wrapper .progress-slider.long-list, .single-page .progress-bar .progress-wrapper .progress-slider.long-list {\n display: none;\n}\n/* line 119, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .buttons, .single-page .buttons {\n width: 100%;\n float: right;\n margin-right: 0;\n display: inline;\n margin-left: -20px;\n margin-right: -20px;\n padding: 1.5em 20px;\n border-bottom: 1px dotted #d0d0d0;\n}\n/* line 126, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .buttons .back, .single-page .buttons .back {\n width: 49.15254%;\n float: left;\n margin-right: 1.69492%;\n display: inline;\n}\n/* line 127, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .buttons .prev, .single-page .buttons .prev {\n width: 49.15254%;\n float: left;\n margin-right: 1.69492%;\n display: inline;\n}\n/* line 128, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .buttons .next, .single-page .buttons .next {\n width: 49.15254%;\n float: right;\n margin-right: 0;\n display: inline;\n text-align: right;\n}\n/* line 129, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .buttons .abort, .single-page .buttons .abort {\n display: none;\n}\n/* line 130, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .buttons .print, .single-page .buttons .print {\n display: none;\n}\n/* line 131, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .buttons .print, .single-page .buttons .print {\n width: 100%;\n float: left;\n margin-right: 1.69492%;\n display: inline;\n text-align: right;\n}\n/* line 132, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/mobile.scss */\n.paged .buttons .save, .single-page .buttons .save {\n width: 49.15254%;\n float: right;\n margin-right: 0;\n display: inline;\n text-align: right;\n}\n@media (min-width: 35em) {\n /* line 2, /home/marten/rgoc/quby/app/assets/stylesheets/quby/general/desktop.scss */\n .paged #content, .single-page #content {\n margin: 6em auto 0em auto;\n }\n /* line 9, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged tr, .single-page tr {\n border: none;\n }\n /* line 13, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .panel, .single-page .panel {\n padding-left: 1em;\n padding-right: 1em;\n margin-left: auto;\n margin-right: auto;\n /* Overwrite width. New susy version seems to break this */\n max-width: 49.5em;\n border: 4px solid #dddddd;\n margin-top: 6em;\n padding: 3em 2em 1.5em;\n }\n /* line 38, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/utilities/general/_clearfix.scss */\n .paged .panel:after, .single-page .panel:after {\n content: "";\n display: table;\n clear: both;\n }\n /* line 40, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\n .paged .panel .table div, .single-page .panel .table div, .paged .panel .table span, .single-page .panel .table span, .paged .panel .table applet, .single-page .panel .table applet, .paged .panel .table object, .single-page .panel .table object, .paged .panel .table iframe, .single-page .panel .table iframe,\n .paged .panel .table h1,\n .single-page .panel .table h1, .paged .panel .table h2, .single-page .panel .table h2, .paged .panel .table h3, .single-page .panel .table h3, .paged .panel .table h4, .single-page .panel .table h4, .paged .panel .table h5, .single-page .panel .table h5, .paged .panel .table h6, .single-page .panel .table h6, .paged .panel .table p, .single-page .panel .table p, .paged .panel .table blockquote, .single-page .panel .table blockquote, .paged .panel .table pre, .single-page .panel .table pre,\n .paged .panel .table a,\n .single-page .panel .table a, .paged .panel .table abbr, .single-page .panel .table abbr, .paged .panel .table acronym, .single-page .panel .table acronym, .paged .panel .table address, .single-page .panel .table address, .paged .panel .table big, .single-page .panel .table big, .paged .panel .table cite, .single-page .panel .table cite, .paged .panel .table code, .single-page .panel .table code,\n .paged .panel .table del,\n .single-page .panel .table del, .paged .panel .table dfn, .single-page .panel .table dfn, .paged .panel .table em, .single-page .panel .table em, .paged .panel .table img, .single-page .panel .table img, .paged .panel .table ins, .single-page .panel .table ins, .paged .panel .table kbd, .single-page .panel .table kbd, .paged .panel .table q, .single-page .panel .table q, .paged .panel .table s, .single-page .panel .table s, .paged .panel .table samp, .single-page .panel .table samp,\n .paged .panel .table small,\n .single-page .panel .table small, .paged .panel .table strike, .single-page .panel .table strike, .paged .panel .table strong, .single-page .panel .table strong, .paged .panel .table sub, .single-page .panel .table sub, .paged .panel .table sup, .single-page .panel .table sup, .paged .panel .table tt, .single-page .panel .table tt, .paged .panel .table var, .single-page .panel .table var,\n .paged .panel .table b,\n .single-page .panel .table b, .paged .panel .table u, .single-page .panel .table u, .paged .panel .table i, .single-page .panel .table i, .paged .panel .table center, .single-page .panel .table center,\n .paged .panel .table dl,\n .single-page .panel .table dl, .paged .panel .table dt, .single-page .panel .table dt, .paged .panel .table dd, .single-page .panel .table dd, .paged .panel .table ol, .single-page .panel .table ol, .paged .panel .table ul, .single-page .panel .table ul, .paged .panel .table li, .single-page .panel .table li,\n .paged .panel .table fieldset,\n .single-page .panel .table fieldset, .paged .panel .table form, .single-page .panel .table form, .paged .panel .table label, .single-page .panel .table label, .paged .panel .table legend, .single-page .panel .table legend,\n .paged .panel .table table,\n .single-page .panel .table table, .paged .panel .table caption, .single-page .panel .table caption, .paged .panel .table tbody, .single-page .panel .table tbody, .paged .panel .table tfoot, .single-page .panel .table tfoot, .paged .panel .table thead, .single-page .panel .table thead, .paged .panel .table tr, .single-page .panel .table tr, .paged .panel .table th, .single-page .panel .table th, .paged .panel .table td, .single-page .panel .table td,\n .paged .panel .table article,\n .single-page .panel .table article, .paged .panel .table aside, .single-page .panel .table aside, .paged .panel .table canvas, .single-page .panel .table canvas, .paged .panel .table details, .single-page .panel .table details, .paged .panel .table embed, .single-page .panel .table embed,\n .paged .panel .table figure,\n .single-page .panel .table figure, .paged .panel .table figcaption, .single-page .panel .table figcaption, .paged .panel .table footer, .single-page .panel .table footer, .paged .panel .table header, .single-page .panel .table header, .paged .panel .table hgroup, .single-page .panel .table hgroup,\n .paged .panel .table menu,\n .single-page .panel .table menu, .paged .panel .table nav, .single-page .panel .table nav, .paged .panel .table output, .single-page .panel .table output, .paged .panel .table ruby, .single-page .panel .table ruby, .paged .panel .table section, .single-page .panel .table section, .paged .panel .table summary, .single-page .panel .table summary,\n .paged .panel .table time,\n .single-page .panel .table time, .paged .panel .table mark, .single-page .panel .table mark, .paged .panel .table audio, .single-page .panel .table audio, .paged .panel .table video, .single-page .panel .table video {\n margin: 0;\n padding: 0;\n border: 0;\n font: inherit;\n font-size: 100%;\n vertical-align: baseline;\n }\n /* line 55, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\n .paged .panel .table table, .single-page .panel .table table {\n border-collapse: collapse;\n border-spacing: 0;\n }\n /* line 57, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\n .paged .panel .table caption, .single-page .panel .table caption, .paged .panel .table th, .single-page .panel .table th, .paged .panel .table td, .single-page .panel .table td {\n text-align: left;\n font-weight: normal;\n vertical-align: middle;\n }\n /* line 59, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\n .paged .panel .table q, .single-page .panel .table q, .paged .panel .table blockquote, .single-page .panel .table blockquote {\n quotes: none;\n }\n /* line 103, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\n .paged .panel .table q:before, .single-page .panel .table q:before, .paged .panel .table q:after, .single-page .panel .table q:after, .paged .panel .table blockquote:before, .single-page .panel .table blockquote:before, .paged .panel .table blockquote:after, .single-page .panel .table blockquote:after {\n content: "";\n content: none;\n }\n /* line 61, /home/marten/.rbenv/versions/2.5.5/lib/ruby/gems/2.5.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */\n .paged .panel .table a img, .single-page .panel .table a img {\n border: none;\n }\n /* line 4, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table p, .single-page .panel .table p, .paged .panel .table div, .single-page .panel .table div {\n display: inline;\n }\n /* line 8, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table caption, .single-page .panel .table caption {\n margin-bottom: 0.5em;\n }\n /* line 12, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table .errors, .single-page .panel .table .errors {\n outline: 2px solid red !important;\n }\n /* line 16, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table .error, .single-page .panel .table .error {\n display: inline-block;\n background: #ffbbbb;\n outline: 1px solid #ff3333;\n }\n /* line 20, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table .error.hidden, .single-page .panel .table .error.hidden {\n display: none;\n }\n /* line 27, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table, .single-page .panel .table table {\n border-bottom: 1px solid black;\n border-collapse: collapse;\n margin: 0;\n }\n /* line 28, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table *, .single-page .panel .table table * {\n width: auto;\n }\n /* line 32, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table .option, .single-page .panel .table table .option {\n white-space: normal;\n }\n /* line 36, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table td > div > *, .single-page .panel .table table td > div > * {\n margin-top: 0.5em;\n margin-bottom: 0.5em;\n }\n /* line 44, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table .row, .single-page .panel .table table .row {\n width: 100%;\n float: right;\n margin-right: 0;\n float: none;\n display: table-row;\n }\n /* line 45, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table .row td, .single-page .panel .table table .row td, .paged .panel .table table .row th, .single-page .panel .table table .row th {\n display: table-cell;\n border: 0;\n border-bottom: 1px solid #bbb;\n vertical-align: top;\n float: none;\n }\n /* line 50, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table .row td.main, .single-page .panel .table table .row td.main, .paged .panel .table table .row th.main, .single-page .panel .table table .row th.main {\n vertical-align: middle;\n }\n /* line 55, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table .row.inner_row td, .single-page .panel .table table .row.inner_row td {\n border: 0;\n }\n /* line 56, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table .row:first-child td, .single-page .panel .table table .row:first-child td {\n border-top: 1px solid #bbb;\n }\n /* line 62, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table .row input, .single-page .panel .table table .row input {\n /* These properties get overriden by our table reset, so we have to re-apply them with a more specific selector */\n }\n /* line 63, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table .row input.float, .single-page .panel .table table .row input.float, .paged .panel .table table .row input.integer, .single-page .panel .table table .row input.integer {\n width: 54px;\n }\n /* line 67, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table .row input.string, .single-page .panel .table table .row input.string, .paged .panel .table table .row input.textarea, .single-page .panel .table table .row input.textarea {\n width: 92%;\n }\n /* line 73, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table .row input.sized, .single-page .panel .table table .row input.sized {\n width: auto;\n }\n /* line 76, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table .row input.fd-form-element-hidden, .single-page .panel .table table .row input.fd-form-element-hidden {\n display: none;\n }\n /* line 86, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table table .row .unit, .single-page .panel .table table .row .unit {\n vertical-align: -20%;\n padding-left: 4px;\n }\n /* line 93, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table .item, .single-page .panel .table .item {\n float: none;\n width: auto;\n margin-right: auto;\n }\n /* line 96, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table .main, .single-page .panel .table .main {\n width: 33.33333%;\n float: none !important;\n display: table-cell !important;\n }\n /* line 100, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table .main label small, .single-page .panel .table .main label small {\n font-size: 0.7em;\n }\n /* line 102, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table .description, .single-page .panel .table .description {\n text-align: right;\n }\n /* line 107, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table .option_sets .option, .single-page .panel .table .option_sets .option {\n padding-left: 1em;\n padding-bottom: 0.5em;\n vertical-align: bottom;\n }\n /* line 113, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table .dark, .single-page .panel .table .dark {\n background-color: #eee;\n }\n /* line 116, /home/marten/rgoc/quby/app/assets/stylesheets/quby/table/layout.scss */\n .paged .panel .table .light, .single-page .panel .table .light {\n background-color: #fff;\n }\n /* line 25, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item, .single-page .item {\n width: 100%;\n float: right;\n margin-right: 0;\n margin-bottom: 18px;\n }\n /* line 34, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.radio .option, .single-page .item.horizontal.radio .option, .paged .item.horizontal.check_box .option, .single-page .item.horizontal.check_box .option {\n width: 100%;\n float: right;\n margin-right: 0;\n }\n /* line 37, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.radio .option .radiocheckwrapper, .single-page .item.horizontal.radio .option .radiocheckwrapper, .paged .item.horizontal.check_box .option .radiocheckwrapper, .single-page .item.horizontal.check_box .option .radiocheckwrapper {\n width: 4.0404%;\n float: left;\n margin-right: 1.0101%;\n }\n /* line 38, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.radio .option .labelwrapper, .single-page .item.horizontal.radio .option .labelwrapper, .paged .item.horizontal.check_box .option .labelwrapper, .single-page .item.horizontal.check_box .option .labelwrapper {\n width: 94.94949%;\n float: right;\n margin-right: 0;\n }\n /* line 43, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.radio .option.show_values .value, .single-page .item.horizontal.radio .option.show_values .value, .paged .item.horizontal.check_box .option.show_values .value, .single-page .item.horizontal.check_box .option.show_values .value {\n width: 4.0404%;\n float: left;\n margin-right: 1.0101%;\n }\n /* line 44, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.radio .option.show_values .labelwrapper, .single-page .item.horizontal.radio .option.show_values .labelwrapper, .paged .item.horizontal.check_box .option.show_values .labelwrapper, .single-page .item.horizontal.check_box .option.show_values .labelwrapper {\n width: 89.89899%;\n float: right;\n margin-right: 0;\n }\n /* line 49, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.radio .option .subquestions, .single-page .item.horizontal.radio .option .subquestions, .paged .item.horizontal.check_box .option .subquestions, .single-page .item.horizontal.check_box .option .subquestions {\n margin-left: 5.05051%;\n width: 74.74747%;\n float: left;\n margin-right: 1.0101%;\n }\n /* line 53, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.radio .option .subquestions .item, .single-page .item.horizontal.radio .option .subquestions .item, .paged .item.horizontal.check_box .option .subquestions .item, .single-page .item.horizontal.check_box .option .subquestions .item {\n width: 74.74747%;\n float: left;\n margin-right: 1.0101%;\n }\n /* line 55, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.radio .option .subquestions .item input, .single-page .item.horizontal.radio .option .subquestions .item input, .paged .item.horizontal.check_box .option .subquestions .item input, .single-page .item.horizontal.check_box .option .subquestions .item input {\n width: auto;\n }\n /* line 58, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.radio .option .subquestions .radiocheckwrapper, .single-page .item.horizontal.radio .option .subquestions .radiocheckwrapper, .paged .item.horizontal.check_box .option .subquestions .radiocheckwrapper, .single-page .item.horizontal.check_box .option .subquestions .radiocheckwrapper {\n width: 10px;\n padding-right: 20px;\n }\n /* line 62, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.radio .option .subquestions .labelwrapper, .single-page .item.horizontal.radio .option .subquestions .labelwrapper, .paged .item.horizontal.check_box .option .subquestions .labelwrapper, .single-page .item.horizontal.check_box .option .subquestions .labelwrapper {\n width: auto;\n float: none;\n }\n /* line 69, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.radio .inner-title, .single-page .item.horizontal.radio .inner-title, .paged .item.horizontal.check_box .inner-title, .single-page .item.horizontal.check_box .inner-title {\n width: 100%;\n float: right;\n margin-right: 0;\n }\n /* line 74, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.string input, .single-page .item.horizontal.string input, .paged .item.horizontal.string textarea, .single-page .item.horizontal.string textarea, .paged .item.horizontal.textarea input, .single-page .item.horizontal.textarea input, .paged .item.horizontal.textarea textarea, .single-page .item.horizontal.textarea textarea {\n width: 100%;\n margin-right: 0;\n }\n /* line 75, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.horizontal.string .sized, .single-page .item.horizontal.string .sized, .paged .item.horizontal.textarea .sized, .single-page .item.horizontal.textarea .sized {\n width: auto;\n }\n /* line 106, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical .main, .single-page .item.vertical .main {\n width: 39.39394%;\n float: left;\n margin-right: 1.0101%;\n }\n /* line 110, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical .description-and-fields, .single-page .item.vertical .description-and-fields {\n width: 59.59596%;\n float: right;\n margin-right: 0;\n float: left;\n }\n /* line 4, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n .paged .item.vertical .description-and-fields .description h2, .single-page .item.vertical .description-and-fields .description h2 {\n font-size: 1.2em;\n font-weight: bold;\n border-top: 8px solid #ddd;\n padding-top: 16px;\n }\n /* line 11, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n .paged .item.vertical .description-and-fields .description small, .single-page .item.vertical .description-and-fields .description small {\n font-size: 80%;\n }\n /* line 12, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n .paged .item.vertical .description-and-fields .description strong, .single-page .item.vertical .description-and-fields .description strong {\n font-style: italic;\n }\n /* line 13, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n .paged .item.vertical .description-and-fields .description em, .single-page .item.vertical .description-and-fields .description em {\n font-weight: bold;\n }\n /* line 15, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n .paged .item.vertical .description-and-fields .description p, .single-page .item.vertical .description-and-fields .description p {\n margin-bottom: 18px;\n }\n /* line 17, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n .paged .item.vertical .description-and-fields .description ul, .single-page .item.vertical .description-and-fields .description ul {\n margin-top: 1em;\n margin-left: 1em;\n margin-bottom: 2em;\n }\n /* line 21, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n .paged .item.vertical .description-and-fields .description ul li, .single-page .item.vertical .description-and-fields .description ul li {\n list-style-type: disc;\n margin-bottom: 1em !important;\n }\n /* line 25, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n .paged .item.vertical .description-and-fields .description ul li p, .single-page .item.vertical .description-and-fields .description ul li p {\n margin-bottom: 0;\n }\n /* line 27, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n .paged .item.vertical .description-and-fields .description ul li ul, .single-page .item.vertical .description-and-fields .description ul li ul {\n margin-bottom: 1em;\n margin-left: 1.5em;\n }\n /* line 30, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n .paged .item.vertical .description-and-fields .description ul li ul li, .single-page .item.vertical .description-and-fields .description ul li ul li {\n margin-bottom: 0 !important;\n list-style-type: none;\n }\n /* line 38, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n .paged .item.vertical .description-and-fields .description ol li, .single-page .item.vertical .description-and-fields .description ol li {\n list-style-type: lower-alpha;\n }\n /* line 118, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.radio .option, .single-page .item.vertical.radio .option, .paged .item.vertical.check_box .option, .single-page .item.vertical.check_box .option {\n width: 100%;\n float: right;\n margin-right: 0;\n }\n /* line 121, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.radio .option .radiocheckwrapper, .single-page .item.vertical.radio .option .radiocheckwrapper, .paged .item.vertical.check_box .option .radiocheckwrapper, .single-page .item.vertical.check_box .option .radiocheckwrapper {\n width: 6.77966%;\n float: left;\n margin-right: 1.69492%;\n }\n /* line 122, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.radio .option .labelwrapper, .single-page .item.vertical.radio .option .labelwrapper, .paged .item.vertical.check_box .option .labelwrapper, .single-page .item.vertical.check_box .option .labelwrapper {\n width: 91.52542%;\n float: right;\n margin-right: 0;\n }\n /* line 125, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.radio .option.show_values .value, .single-page .item.vertical.radio .option.show_values .value, .paged .item.vertical.check_box .option.show_values .value, .single-page .item.vertical.check_box .option.show_values .value {\n width: 6.77966%;\n float: left;\n margin-right: 1.69492%;\n }\n /* line 126, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.radio .option.show_values .labelwrapper, .single-page .item.vertical.radio .option.show_values .labelwrapper, .paged .item.vertical.check_box .option.show_values .labelwrapper, .single-page .item.vertical.check_box .option.show_values .labelwrapper {\n width: 83.05085%;\n float: right;\n margin-right: 0;\n }\n /* line 129, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.radio .option .subquestions, .single-page .item.vertical.radio .option .subquestions, .paged .item.vertical.check_box .option .subquestions, .single-page .item.vertical.check_box .option .subquestions {\n margin-left: 5.05051%;\n width: 91.52542%;\n float: left;\n margin-right: 1.69492%;\n }\n /* line 133, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.radio .option .subquestions .item, .single-page .item.vertical.radio .option .subquestions .item, .paged .item.vertical.check_box .option .subquestions .item, .single-page .item.vertical.check_box .option .subquestions .item {\n width: 91.52542%;\n float: left;\n margin-right: 1.69492%;\n }\n /* line 135, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.radio .option .subquestions .item .main, .single-page .item.vertical.radio .option .subquestions .item .main, .paged .item.vertical.check_box .option .subquestions .item .main, .single-page .item.vertical.check_box .option .subquestions .item .main {\n width: 100%;\n float: right;\n margin-right: 0;\n }\n /* line 136, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.radio .option .subquestions .item input, .single-page .item.vertical.radio .option .subquestions .item input, .paged .item.vertical.check_box .option .subquestions .item input, .single-page .item.vertical.check_box .option .subquestions .item input {\n width: auto;\n }\n /* line 139, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.radio .option .subquestions .radiocheckwrapper, .single-page .item.vertical.radio .option .subquestions .radiocheckwrapper, .paged .item.vertical.check_box .option .subquestions .radiocheckwrapper, .single-page .item.vertical.check_box .option .subquestions .radiocheckwrapper {\n width: 10px;\n padding-right: 20px;\n }\n /* line 143, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.radio .option .subquestions .labelwrapper, .single-page .item.vertical.radio .option .subquestions .labelwrapper, .paged .item.vertical.check_box .option .subquestions .labelwrapper, .single-page .item.vertical.check_box .option .subquestions .labelwrapper {\n width: auto;\n float: none;\n }\n /* line 150, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.radio .inner-title, .single-page .item.vertical.radio .inner-title, .paged .item.vertical.check_box .inner-title, .single-page .item.vertical.check_box .inner-title {\n width: 100%;\n float: right;\n margin-right: 0;\n }\n /* line 155, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.string input, .single-page .item.vertical.string input, .paged .item.vertical.string textarea, .single-page .item.vertical.string textarea, .paged .item.vertical.textarea input, .single-page .item.vertical.textarea input, .paged .item.vertical.textarea textarea, .single-page .item.vertical.textarea textarea {\n width: 100%;\n margin-right: 0;\n }\n /* line 156, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .item.vertical.string .sized, .single-page .item.vertical.string .sized, .paged .item.vertical.textarea .sized, .single-page .item.vertical.textarea .sized {\n width: auto;\n }\n /* line 175, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .progress-bar, .single-page .progress-bar {\n width: 100%;\n float: right;\n margin-right: 0;\n margin: 1.5em -2em -1.5em;\n padding: 1.5em 2em;\n }\n /* line 181, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .progress-bar .progress-wrapper .progress-slider, .single-page .progress-bar .progress-wrapper .progress-slider {\n background-position: 0 4px;\n display: inline-block;\n zoom: 1;\n }\n /* line 184, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .progress-bar .progress-wrapper .progress-slider .progress-stop, .single-page .progress-bar .progress-wrapper .progress-slider .progress-stop {\n margin: 0 3px;\n width: 10px;\n height: 10px;\n }\n /* line 189, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .progress-bar .progress-wrapper .progress-slider.long-list, .single-page .progress-bar .progress-wrapper .progress-slider.long-list {\n display: inline-block;\n zoom: 1;\n }\n /* line 196, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .buttons, .single-page .buttons {\n width: 100%;\n float: right;\n margin-right: 0;\n margin: 1.5em -2em -1.5em;\n padding: 1.5em 2em;\n border-bottom: 0;\n }\n /* line 202, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .buttons .back, .single-page .buttons .back {\n width: 24.24242%;\n float: left;\n margin-right: 1.0101%;\n }\n /* line 203, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .buttons .prev, .single-page .buttons .prev {\n width: 24.24242%;\n float: left;\n margin-right: 1.0101%;\n }\n /* line 204, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .buttons .abort, .single-page .buttons .abort {\n width: 24.24242%;\n float: left;\n margin-right: 1.0101%;\n text-align: center;\n display: block;\n }\n /* line 205, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .buttons .print, .single-page .buttons .print {\n width: 100%;\n float: left;\n margin-right: 1.0101%;\n text-align: right;\n }\n /* line 206, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .buttons .next, .single-page .buttons .next {\n width: 24.24242%;\n float: right;\n margin-right: 0;\n text-align: right;\n }\n /* line 207, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged/desktop.scss */\n .paged .buttons .save, .single-page .buttons .save {\n width: 24.24242%;\n float: right;\n margin-right: 0;\n text-align: right;\n }\n}\n/* line 41, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel, .single-page .panel {\n margin-bottom: 2em;\n box-shadow: 0 0 6px rgba(0, 0, 0, 0.3);\n}\n/* line 45, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel h1, .single-page .panel h1 {\n font-size: 1.5em;\n font-weight: bold;\n margin-bottom: 1.2em;\n z-index: 400;\n}\n/* line 52, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel hr, .single-page .panel hr {\n height: 8px;\n border: 0;\n background: #ddd;\n}\n/* line 54, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .progress-bar, .single-page .panel .progress-bar {\n height: 25px;\n}\n/* line 56, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .progress-bar .progress-wrapper, .single-page .panel .progress-bar .progress-wrapper {\n text-align: center;\n}\n/* line 58, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .progress-bar .progress-wrapper .progress-slider, .single-page .panel .progress-bar .progress-wrapper .progress-slider {\n height: 8px;\n text-align: center;\n border: 1px solid #ccc;\n padding: 0;\n border-radius: 6px;\n overflow: hidden;\n padding: 1px;\n}\n/* line 66, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .progress-bar .progress-wrapper .progress-slider .progress-stop, .single-page .panel .progress-bar .progress-wrapper .progress-slider .progress-stop {\n height: 8px;\n line-height: 8px;\n width: 6px;\n background: #fff;\n font-size: 6px;\n text-indent: -1234em;\n display: block;\n float: left;\n text-align: center;\n margin: 0;\n}\n/* line 77, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .progress-bar .progress-wrapper .progress-slider .progress-stop.first-child, .single-page .panel .progress-bar .progress-wrapper .progress-slider .progress-stop.first-child {\n width: 8px;\n border-radius: 5px 0 0 5px;\n}\n/* line 78, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .progress-bar .progress-wrapper .progress-slider .progress-stop.last-child, .single-page .panel .progress-bar .progress-wrapper .progress-slider .progress-stop.last-child {\n width: 8px;\n border-radius: 0 5px 5px 0;\n}\n/* line 79, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .progress-bar .progress-wrapper .progress-slider .progress-stop.active, .single-page .panel .progress-bar .progress-wrapper .progress-slider .progress-stop.active {\n background: #999;\n}\n/* line 80, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .progress-bar .progress-wrapper .progress-slider .progress-stop.current, .single-page .panel .progress-bar .progress-wrapper .progress-slider .progress-stop.current {\n border-radius: 0 5px 5px 0;\n}\n/* line 82, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .progress-bar .progress-wrapper .progress-slider .progress-stop.current.first-child, .single-page .panel .progress-bar .progress-wrapper .progress-slider .progress-stop.current.first-child {\n border-radius: 5px;\n}\n/* line 88, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .progress-bar .progress-wrapper .progress-details, .single-page .panel .progress-bar .progress-wrapper .progress-details {\n color: #999;\n font-size: 9px;\n margin: 4px 0 0 0;\n display: block;\n}\n/* line 97, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .buttons, .single-page .panel .buttons {\n border-top: 1px dotted #d6d6d6;\n background: #f3f3f3;\n}\n/* line 103, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.hidden, .single-page .panel .item.hidden {\n display: none;\n}\n/* line 105, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.errors, .single-page .panel .item.errors {\n outline: 1px solid red;\n padding: 0.4em;\n}\n/* line 108, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.errors .error, .single-page .panel .item.errors .error {\n background: #ffaaaa;\n color: #550000;\n outline: 1px solid red;\n padding: 0.3em;\n margin-bottom: 0.3em;\n}\n/* line 117, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item .main, .single-page .panel .item .main {\n font-weight: bold;\n}\n/* line 119, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item .main em, .single-page .panel .item .main em {\n font-style: italic;\n}\n/* line 4, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .text h2, .single-page .panel .item .text h2 {\n font-size: 1.2em;\n font-weight: bold;\n border-top: 8px solid #ddd;\n padding-top: 16px;\n}\n/* line 11, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .text small, .single-page .panel .item .text small {\n font-size: 80%;\n}\n/* line 12, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .text strong, .single-page .panel .item .text strong {\n font-style: italic;\n}\n/* line 13, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .text em, .single-page .panel .item .text em {\n font-weight: bold;\n}\n/* line 15, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .text p, .single-page .panel .item .text p {\n margin-bottom: 18px;\n}\n/* line 17, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .text ul, .single-page .panel .item .text ul {\n margin-top: 1em;\n margin-left: 1em;\n margin-bottom: 2em;\n}\n/* line 21, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .text ul li, .single-page .panel .item .text ul li {\n list-style-type: disc;\n margin-bottom: 1em !important;\n}\n/* line 25, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .text ul li p, .single-page .panel .item .text ul li p {\n margin-bottom: 0;\n}\n/* line 27, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .text ul li ul, .single-page .panel .item .text ul li ul {\n margin-bottom: 1em;\n margin-left: 1.5em;\n}\n/* line 30, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .text ul li ul li, .single-page .panel .item .text ul li ul li {\n margin-bottom: 0 !important;\n list-style-type: none;\n}\n/* line 38, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .text ol li, .single-page .panel .item .text ol li {\n list-style-type: lower-alpha;\n}\n/* line 4, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .description-and-fields .description h2, .single-page .panel .item .description-and-fields .description h2 {\n font-size: 1.2em;\n font-weight: bold;\n border-top: 8px solid #ddd;\n padding-top: 16px;\n}\n/* line 11, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .description-and-fields .description small, .single-page .panel .item .description-and-fields .description small {\n font-size: 80%;\n}\n/* line 12, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .description-and-fields .description strong, .single-page .panel .item .description-and-fields .description strong {\n font-style: italic;\n}\n/* line 13, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .description-and-fields .description em, .single-page .panel .item .description-and-fields .description em {\n font-weight: bold;\n}\n/* line 15, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .description-and-fields .description p, .single-page .panel .item .description-and-fields .description p {\n margin-bottom: 18px;\n}\n/* line 17, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .description-and-fields .description ul, .single-page .panel .item .description-and-fields .description ul {\n margin-top: 1em;\n margin-left: 1em;\n margin-bottom: 2em;\n}\n/* line 21, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .description-and-fields .description ul li, .single-page .panel .item .description-and-fields .description ul li {\n list-style-type: disc;\n margin-bottom: 1em !important;\n}\n/* line 25, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .description-and-fields .description ul li p, .single-page .panel .item .description-and-fields .description ul li p {\n margin-bottom: 0;\n}\n/* line 27, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .description-and-fields .description ul li ul, .single-page .panel .item .description-and-fields .description ul li ul {\n margin-bottom: 1em;\n margin-left: 1.5em;\n}\n/* line 30, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .description-and-fields .description ul li ul li, .single-page .panel .item .description-and-fields .description ul li ul li {\n margin-bottom: 0 !important;\n list-style-type: none;\n}\n/* line 38, /home/marten/rgoc/quby/app/assets/stylesheets/quby/partials/_text.scss */\n.paged .panel .item .description-and-fields .description ol li, .single-page .panel .item .description-and-fields .description ol li {\n list-style-type: lower-alpha;\n}\n/* line 133, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.horizontal .main, .single-page .panel .item.horizontal .main {\n margin-bottom: 1em;\n}\n/* line 139, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.radio .inner-title, .single-page .panel .item.radio .inner-title, .paged .panel .item.check_box .inner-title, .single-page .panel .item.check_box .inner-title {\n margin-top: 1.5em;\n margin-bottom: 1.5em;\n font-weight: bold;\n}\n/* line 147, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.radio .option .labelwrapper p, .single-page .panel .item.radio .option .labelwrapper p, .paged .panel .item.check_box .option .labelwrapper p, .single-page .panel .item.check_box .option .labelwrapper p {\n display: inline;\n}\n/* line 151, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.radio .option.show_values .value, .single-page .panel .item.radio .option.show_values .value, .paged .panel .item.check_box .option.show_values .value, .single-page .panel .item.check_box .option.show_values .value {\n text-align: center;\n}\n/* line 158, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale td, .single-page .panel .item.scale td {\n border: 0;\n text-align: center;\n}\n/* line 164, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale .option.optionwidth1, .single-page .panel .item.scale .option.optionwidth1, .paged .panel .item.scale .description.optionwidth1, .single-page .panel .item.scale .description.optionwidth1 {\n width: 20%;\n}\n/* line 165, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale .option.optionwidth2, .single-page .panel .item.scale .option.optionwidth2, .paged .panel .item.scale .description.optionwidth2, .single-page .panel .item.scale .description.optionwidth2 {\n width: 20%;\n}\n/* line 166, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale .option.optionwidth3, .single-page .panel .item.scale .option.optionwidth3, .paged .panel .item.scale .description.optionwidth3, .single-page .panel .item.scale .description.optionwidth3 {\n width: 20%;\n}\n/* line 167, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale .option.optionwidth4, .single-page .panel .item.scale .option.optionwidth4, .paged .panel .item.scale .description.optionwidth4, .single-page .panel .item.scale .description.optionwidth4 {\n width: 20%;\n}\n/* line 168, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale .option.optionwidth5, .single-page .panel .item.scale .option.optionwidth5, .paged .panel .item.scale .description.optionwidth5, .single-page .panel .item.scale .description.optionwidth5 {\n width: 20%;\n}\n/* line 169, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale .option.optionwidth6, .single-page .panel .item.scale .option.optionwidth6, .paged .panel .item.scale .description.optionwidth6, .single-page .panel .item.scale .description.optionwidth6 {\n width: 16.66667%;\n}\n/* line 170, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale .option.optionwidth7, .single-page .panel .item.scale .option.optionwidth7, .paged .panel .item.scale .description.optionwidth7, .single-page .panel .item.scale .description.optionwidth7 {\n width: 14.28571%;\n}\n/* line 171, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale .option.optionwidth8, .single-page .panel .item.scale .option.optionwidth8, .paged .panel .item.scale .description.optionwidth8, .single-page .panel .item.scale .description.optionwidth8 {\n width: 12.5%;\n}\n/* line 172, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale .option.optionwidth9, .single-page .panel .item.scale .option.optionwidth9, .paged .panel .item.scale .description.optionwidth9, .single-page .panel .item.scale .description.optionwidth9 {\n width: 11.11111%;\n}\n/* line 173, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale .option.optionwidth10, .single-page .panel .item.scale .option.optionwidth10, .paged .panel .item.scale .description.optionwidth10, .single-page .panel .item.scale .description.optionwidth10 {\n width: 10%;\n}\n/* line 174, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale .option.optionwidth11, .single-page .panel .item.scale .option.optionwidth11, .paged .panel .item.scale .description.optionwidth11, .single-page .panel .item.scale .description.optionwidth11 {\n width: 9.09091%;\n}\n/* line 175, /home/marten/rgoc/quby/app/assets/stylesheets/quby/paged.scss */\n.paged .panel .item.scale .option.optionwidth12, .single-page .panel .item.scale .option.optionwidth12, .paged .panel .item.scale .description.optionwidth12, .single-page .panel .item.scale .description.optionwidth12 {\n width: 8.33333%;\n}\n\n/* line 4, /home/marten/rgoc/quby/app/assets/stylesheets/quby/single_page/layout.scss */\n.single-page .hidden {\n display: none;\n}\n/* line 6, /home/marten/rgoc/quby/app/assets/stylesheets/quby/single_page/layout.scss */\n.single-page .panel.noVisibleQuestions {\n display: none;\n}\n/* line 10, /home/marten/rgoc/quby/app/assets/stylesheets/quby/single_page/layout.scss */\n.single-page .item.hide {\n margin: 0 !important;\n outline: none !important;\n}\n/* line 15, /home/marten/rgoc/quby/app/assets/stylesheets/quby/single_page/layout.scss */\n.single-page .item.hide > * {\n display: none !important;\n}\n';
|
|
18147
18661
|
const RTL_LANGUAGES = ["ar", "he", "fa", "ur"];
|
|
18148
18662
|
const Quby = (props) => {
|
|
@@ -18190,9 +18704,9 @@ const Quby = (props) => {
|
|
|
18190
18704
|
};
|
|
18191
18705
|
}
|
|
18192
18706
|
}, [props.unsavedResponseWarning]);
|
|
18193
|
-
return /* @__PURE__ */ jsxs(root.qubyRoot, { children: [
|
|
18194
|
-
/* @__PURE__ */ jsx("style", { children: newLayout ? styles : oldStyles }),
|
|
18195
|
-
/* @__PURE__ */ jsx(
|
|
18707
|
+
return /* @__PURE__ */ jsxRuntimeExports.jsxs(root.qubyRoot, { children: [
|
|
18708
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("style", { children: newLayout ? styles : oldStyles }),
|
|
18709
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
18196
18710
|
AnswerPage,
|
|
18197
18711
|
{
|
|
18198
18712
|
questionnaire: response.questionnaire,
|