@fkui/vue 6.0.0 → 6.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/cypress.js +1 -1
- package/dist/cjs/cypress.js.map +1 -1
- package/dist/cjs/index.cjs.js +2143 -1374
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/esm/index.esm.js +2144 -1375
- package/dist/esm/index.esm.js.map +1 -1
- package/dist/types/index.d.ts +5096 -7605
- package/dist/types/tsdoc-metadata.json +1 -1
- package/htmlvalidate/rules/classdeprecated.rule.js +41 -18
- package/package.json +5 -5
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -37,11 +37,7 @@ const _sfc_main$1b = /* @__PURE__ */ vue.defineComponent({
|
|
|
37
37
|
};
|
|
38
38
|
}
|
|
39
39
|
});
|
|
40
|
-
var
|
|
41
|
-
function getDefaultExportFromCjs(x) {
|
|
42
|
-
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
|
|
43
|
-
}
|
|
44
|
-
var es_array_push = {};
|
|
40
|
+
var es_iterator_constructor = {};
|
|
45
41
|
var globalThis_1;
|
|
46
42
|
var hasRequiredGlobalThis;
|
|
47
43
|
function requireGlobalThis() {
|
|
@@ -180,13 +176,13 @@ function requireIndexedObject() {
|
|
|
180
176
|
hasRequiredIndexedObject = 1;
|
|
181
177
|
var uncurryThis = requireFunctionUncurryThis();
|
|
182
178
|
var fails2 = requireFails();
|
|
183
|
-
var
|
|
179
|
+
var classof2 = requireClassofRaw();
|
|
184
180
|
var $Object = Object;
|
|
185
181
|
var split = uncurryThis("".split);
|
|
186
182
|
indexedObject = fails2(function() {
|
|
187
183
|
return !$Object("z").propertyIsEnumerable(0);
|
|
188
184
|
}) ? function(it) {
|
|
189
|
-
return
|
|
185
|
+
return classof2(it) === "String" ? split(it, "") : $Object(it);
|
|
190
186
|
} : $Object;
|
|
191
187
|
return indexedObject;
|
|
192
188
|
}
|
|
@@ -1219,14 +1215,579 @@ function require_export() {
|
|
|
1219
1215
|
};
|
|
1220
1216
|
return _export;
|
|
1221
1217
|
}
|
|
1218
|
+
var anInstance;
|
|
1219
|
+
var hasRequiredAnInstance;
|
|
1220
|
+
function requireAnInstance() {
|
|
1221
|
+
if (hasRequiredAnInstance) return anInstance;
|
|
1222
|
+
hasRequiredAnInstance = 1;
|
|
1223
|
+
var isPrototypeOf = requireObjectIsPrototypeOf();
|
|
1224
|
+
var $TypeError = TypeError;
|
|
1225
|
+
anInstance = function(it, Prototype) {
|
|
1226
|
+
if (isPrototypeOf(Prototype, it)) return it;
|
|
1227
|
+
throw new $TypeError("Incorrect invocation");
|
|
1228
|
+
};
|
|
1229
|
+
return anInstance;
|
|
1230
|
+
}
|
|
1231
|
+
var correctPrototypeGetter;
|
|
1232
|
+
var hasRequiredCorrectPrototypeGetter;
|
|
1233
|
+
function requireCorrectPrototypeGetter() {
|
|
1234
|
+
if (hasRequiredCorrectPrototypeGetter) return correctPrototypeGetter;
|
|
1235
|
+
hasRequiredCorrectPrototypeGetter = 1;
|
|
1236
|
+
var fails2 = requireFails();
|
|
1237
|
+
correctPrototypeGetter = !fails2(function() {
|
|
1238
|
+
function F() {
|
|
1239
|
+
}
|
|
1240
|
+
F.prototype.constructor = null;
|
|
1241
|
+
return Object.getPrototypeOf(new F()) !== F.prototype;
|
|
1242
|
+
});
|
|
1243
|
+
return correctPrototypeGetter;
|
|
1244
|
+
}
|
|
1245
|
+
var objectGetPrototypeOf;
|
|
1246
|
+
var hasRequiredObjectGetPrototypeOf;
|
|
1247
|
+
function requireObjectGetPrototypeOf() {
|
|
1248
|
+
if (hasRequiredObjectGetPrototypeOf) return objectGetPrototypeOf;
|
|
1249
|
+
hasRequiredObjectGetPrototypeOf = 1;
|
|
1250
|
+
var hasOwn = requireHasOwnProperty();
|
|
1251
|
+
var isCallable2 = requireIsCallable();
|
|
1252
|
+
var toObject2 = requireToObject();
|
|
1253
|
+
var sharedKey2 = requireSharedKey();
|
|
1254
|
+
var CORRECT_PROTOTYPE_GETTER = requireCorrectPrototypeGetter();
|
|
1255
|
+
var IE_PROTO = sharedKey2("IE_PROTO");
|
|
1256
|
+
var $Object = Object;
|
|
1257
|
+
var ObjectPrototype = $Object.prototype;
|
|
1258
|
+
objectGetPrototypeOf = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function(O) {
|
|
1259
|
+
var object = toObject2(O);
|
|
1260
|
+
if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];
|
|
1261
|
+
var constructor = object.constructor;
|
|
1262
|
+
if (isCallable2(constructor) && object instanceof constructor) {
|
|
1263
|
+
return constructor.prototype;
|
|
1264
|
+
}
|
|
1265
|
+
return object instanceof $Object ? ObjectPrototype : null;
|
|
1266
|
+
};
|
|
1267
|
+
return objectGetPrototypeOf;
|
|
1268
|
+
}
|
|
1269
|
+
var defineBuiltInAccessor;
|
|
1270
|
+
var hasRequiredDefineBuiltInAccessor;
|
|
1271
|
+
function requireDefineBuiltInAccessor() {
|
|
1272
|
+
if (hasRequiredDefineBuiltInAccessor) return defineBuiltInAccessor;
|
|
1273
|
+
hasRequiredDefineBuiltInAccessor = 1;
|
|
1274
|
+
var makeBuiltIn2 = requireMakeBuiltIn();
|
|
1275
|
+
var defineProperty = requireObjectDefineProperty();
|
|
1276
|
+
defineBuiltInAccessor = function(target, name, descriptor) {
|
|
1277
|
+
if (descriptor.get) makeBuiltIn2(descriptor.get, name, {
|
|
1278
|
+
getter: true
|
|
1279
|
+
});
|
|
1280
|
+
if (descriptor.set) makeBuiltIn2(descriptor.set, name, {
|
|
1281
|
+
setter: true
|
|
1282
|
+
});
|
|
1283
|
+
return defineProperty.f(target, name, descriptor);
|
|
1284
|
+
};
|
|
1285
|
+
return defineBuiltInAccessor;
|
|
1286
|
+
}
|
|
1287
|
+
var createProperty;
|
|
1288
|
+
var hasRequiredCreateProperty;
|
|
1289
|
+
function requireCreateProperty() {
|
|
1290
|
+
if (hasRequiredCreateProperty) return createProperty;
|
|
1291
|
+
hasRequiredCreateProperty = 1;
|
|
1292
|
+
var DESCRIPTORS = requireDescriptors();
|
|
1293
|
+
var definePropertyModule = requireObjectDefineProperty();
|
|
1294
|
+
var createPropertyDescriptor2 = requireCreatePropertyDescriptor();
|
|
1295
|
+
createProperty = function(object, key, value) {
|
|
1296
|
+
if (DESCRIPTORS) definePropertyModule.f(object, key, createPropertyDescriptor2(0, value));
|
|
1297
|
+
else object[key] = value;
|
|
1298
|
+
};
|
|
1299
|
+
return createProperty;
|
|
1300
|
+
}
|
|
1301
|
+
var objectDefineProperties = {};
|
|
1302
|
+
var objectKeys;
|
|
1303
|
+
var hasRequiredObjectKeys;
|
|
1304
|
+
function requireObjectKeys() {
|
|
1305
|
+
if (hasRequiredObjectKeys) return objectKeys;
|
|
1306
|
+
hasRequiredObjectKeys = 1;
|
|
1307
|
+
var internalObjectKeys = requireObjectKeysInternal();
|
|
1308
|
+
var enumBugKeys2 = requireEnumBugKeys();
|
|
1309
|
+
objectKeys = Object.keys || function keys(O) {
|
|
1310
|
+
return internalObjectKeys(O, enumBugKeys2);
|
|
1311
|
+
};
|
|
1312
|
+
return objectKeys;
|
|
1313
|
+
}
|
|
1314
|
+
var hasRequiredObjectDefineProperties;
|
|
1315
|
+
function requireObjectDefineProperties() {
|
|
1316
|
+
if (hasRequiredObjectDefineProperties) return objectDefineProperties;
|
|
1317
|
+
hasRequiredObjectDefineProperties = 1;
|
|
1318
|
+
var DESCRIPTORS = requireDescriptors();
|
|
1319
|
+
var V8_PROTOTYPE_DEFINE_BUG = requireV8PrototypeDefineBug();
|
|
1320
|
+
var definePropertyModule = requireObjectDefineProperty();
|
|
1321
|
+
var anObject2 = requireAnObject();
|
|
1322
|
+
var toIndexedObject2 = requireToIndexedObject();
|
|
1323
|
+
var objectKeys2 = requireObjectKeys();
|
|
1324
|
+
objectDefineProperties.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {
|
|
1325
|
+
anObject2(O);
|
|
1326
|
+
var props = toIndexedObject2(Properties);
|
|
1327
|
+
var keys = objectKeys2(Properties);
|
|
1328
|
+
var length = keys.length;
|
|
1329
|
+
var index = 0;
|
|
1330
|
+
var key;
|
|
1331
|
+
while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);
|
|
1332
|
+
return O;
|
|
1333
|
+
};
|
|
1334
|
+
return objectDefineProperties;
|
|
1335
|
+
}
|
|
1336
|
+
var html;
|
|
1337
|
+
var hasRequiredHtml;
|
|
1338
|
+
function requireHtml() {
|
|
1339
|
+
if (hasRequiredHtml) return html;
|
|
1340
|
+
hasRequiredHtml = 1;
|
|
1341
|
+
var getBuiltIn2 = requireGetBuiltIn();
|
|
1342
|
+
html = getBuiltIn2("document", "documentElement");
|
|
1343
|
+
return html;
|
|
1344
|
+
}
|
|
1345
|
+
var objectCreate;
|
|
1346
|
+
var hasRequiredObjectCreate;
|
|
1347
|
+
function requireObjectCreate() {
|
|
1348
|
+
if (hasRequiredObjectCreate) return objectCreate;
|
|
1349
|
+
hasRequiredObjectCreate = 1;
|
|
1350
|
+
var anObject2 = requireAnObject();
|
|
1351
|
+
var definePropertiesModule = requireObjectDefineProperties();
|
|
1352
|
+
var enumBugKeys2 = requireEnumBugKeys();
|
|
1353
|
+
var hiddenKeys2 = requireHiddenKeys();
|
|
1354
|
+
var html2 = requireHtml();
|
|
1355
|
+
var documentCreateElement2 = requireDocumentCreateElement();
|
|
1356
|
+
var sharedKey2 = requireSharedKey();
|
|
1357
|
+
var GT = ">";
|
|
1358
|
+
var LT = "<";
|
|
1359
|
+
var PROTOTYPE = "prototype";
|
|
1360
|
+
var SCRIPT = "script";
|
|
1361
|
+
var IE_PROTO = sharedKey2("IE_PROTO");
|
|
1362
|
+
var EmptyConstructor = function() {
|
|
1363
|
+
};
|
|
1364
|
+
var scriptTag = function(content) {
|
|
1365
|
+
return LT + SCRIPT + GT + content + LT + "/" + SCRIPT + GT;
|
|
1366
|
+
};
|
|
1367
|
+
var NullProtoObjectViaActiveX = function(activeXDocument2) {
|
|
1368
|
+
activeXDocument2.write(scriptTag(""));
|
|
1369
|
+
activeXDocument2.close();
|
|
1370
|
+
var temp = activeXDocument2.parentWindow.Object;
|
|
1371
|
+
activeXDocument2 = null;
|
|
1372
|
+
return temp;
|
|
1373
|
+
};
|
|
1374
|
+
var NullProtoObjectViaIFrame = function() {
|
|
1375
|
+
var iframe = documentCreateElement2("iframe");
|
|
1376
|
+
var JS = "java" + SCRIPT + ":";
|
|
1377
|
+
var iframeDocument;
|
|
1378
|
+
iframe.style.display = "none";
|
|
1379
|
+
html2.appendChild(iframe);
|
|
1380
|
+
iframe.src = String(JS);
|
|
1381
|
+
iframeDocument = iframe.contentWindow.document;
|
|
1382
|
+
iframeDocument.open();
|
|
1383
|
+
iframeDocument.write(scriptTag("document.F=Object"));
|
|
1384
|
+
iframeDocument.close();
|
|
1385
|
+
return iframeDocument.F;
|
|
1386
|
+
};
|
|
1387
|
+
var activeXDocument;
|
|
1388
|
+
var NullProtoObject = function() {
|
|
1389
|
+
try {
|
|
1390
|
+
activeXDocument = new ActiveXObject("htmlfile");
|
|
1391
|
+
} catch (error) {
|
|
1392
|
+
}
|
|
1393
|
+
NullProtoObject = typeof document != "undefined" ? document.domain && activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame() : NullProtoObjectViaActiveX(activeXDocument);
|
|
1394
|
+
var length = enumBugKeys2.length;
|
|
1395
|
+
while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys2[length]];
|
|
1396
|
+
return NullProtoObject();
|
|
1397
|
+
};
|
|
1398
|
+
hiddenKeys2[IE_PROTO] = true;
|
|
1399
|
+
objectCreate = Object.create || function create(O, Properties) {
|
|
1400
|
+
var result;
|
|
1401
|
+
if (O !== null) {
|
|
1402
|
+
EmptyConstructor[PROTOTYPE] = anObject2(O);
|
|
1403
|
+
result = new EmptyConstructor();
|
|
1404
|
+
EmptyConstructor[PROTOTYPE] = null;
|
|
1405
|
+
result[IE_PROTO] = O;
|
|
1406
|
+
} else result = NullProtoObject();
|
|
1407
|
+
return Properties === void 0 ? result : definePropertiesModule.f(result, Properties);
|
|
1408
|
+
};
|
|
1409
|
+
return objectCreate;
|
|
1410
|
+
}
|
|
1411
|
+
var iteratorsCore;
|
|
1412
|
+
var hasRequiredIteratorsCore;
|
|
1413
|
+
function requireIteratorsCore() {
|
|
1414
|
+
if (hasRequiredIteratorsCore) return iteratorsCore;
|
|
1415
|
+
hasRequiredIteratorsCore = 1;
|
|
1416
|
+
var fails2 = requireFails();
|
|
1417
|
+
var isCallable2 = requireIsCallable();
|
|
1418
|
+
var isObject2 = requireIsObject$1();
|
|
1419
|
+
var create = requireObjectCreate();
|
|
1420
|
+
var getPrototypeOf = requireObjectGetPrototypeOf();
|
|
1421
|
+
var defineBuiltIn2 = requireDefineBuiltIn();
|
|
1422
|
+
var wellKnownSymbol2 = requireWellKnownSymbol();
|
|
1423
|
+
var IS_PURE = requireIsPure();
|
|
1424
|
+
var ITERATOR = wellKnownSymbol2("iterator");
|
|
1425
|
+
var BUGGY_SAFARI_ITERATORS = false;
|
|
1426
|
+
var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;
|
|
1427
|
+
if ([].keys) {
|
|
1428
|
+
arrayIterator = [].keys();
|
|
1429
|
+
if (!("next" in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;
|
|
1430
|
+
else {
|
|
1431
|
+
PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));
|
|
1432
|
+
if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;
|
|
1433
|
+
}
|
|
1434
|
+
}
|
|
1435
|
+
var NEW_ITERATOR_PROTOTYPE = !isObject2(IteratorPrototype) || fails2(function() {
|
|
1436
|
+
var test = {};
|
|
1437
|
+
return IteratorPrototype[ITERATOR].call(test) !== test;
|
|
1438
|
+
});
|
|
1439
|
+
if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};
|
|
1440
|
+
else if (IS_PURE) IteratorPrototype = create(IteratorPrototype);
|
|
1441
|
+
if (!isCallable2(IteratorPrototype[ITERATOR])) {
|
|
1442
|
+
defineBuiltIn2(IteratorPrototype, ITERATOR, function() {
|
|
1443
|
+
return this;
|
|
1444
|
+
});
|
|
1445
|
+
}
|
|
1446
|
+
iteratorsCore = {
|
|
1447
|
+
IteratorPrototype,
|
|
1448
|
+
BUGGY_SAFARI_ITERATORS
|
|
1449
|
+
};
|
|
1450
|
+
return iteratorsCore;
|
|
1451
|
+
}
|
|
1452
|
+
var hasRequiredEs_iterator_constructor;
|
|
1453
|
+
function requireEs_iterator_constructor() {
|
|
1454
|
+
if (hasRequiredEs_iterator_constructor) return es_iterator_constructor;
|
|
1455
|
+
hasRequiredEs_iterator_constructor = 1;
|
|
1456
|
+
var $ = require_export();
|
|
1457
|
+
var globalThis2 = requireGlobalThis();
|
|
1458
|
+
var anInstance2 = requireAnInstance();
|
|
1459
|
+
var anObject2 = requireAnObject();
|
|
1460
|
+
var isCallable2 = requireIsCallable();
|
|
1461
|
+
var getPrototypeOf = requireObjectGetPrototypeOf();
|
|
1462
|
+
var defineBuiltInAccessor2 = requireDefineBuiltInAccessor();
|
|
1463
|
+
var createProperty2 = requireCreateProperty();
|
|
1464
|
+
var fails2 = requireFails();
|
|
1465
|
+
var hasOwn = requireHasOwnProperty();
|
|
1466
|
+
var wellKnownSymbol2 = requireWellKnownSymbol();
|
|
1467
|
+
var IteratorPrototype = requireIteratorsCore().IteratorPrototype;
|
|
1468
|
+
var DESCRIPTORS = requireDescriptors();
|
|
1469
|
+
var IS_PURE = requireIsPure();
|
|
1470
|
+
var CONSTRUCTOR = "constructor";
|
|
1471
|
+
var ITERATOR = "Iterator";
|
|
1472
|
+
var TO_STRING_TAG = wellKnownSymbol2("toStringTag");
|
|
1473
|
+
var $TypeError = TypeError;
|
|
1474
|
+
var NativeIterator = globalThis2[ITERATOR];
|
|
1475
|
+
var FORCED = IS_PURE || !isCallable2(NativeIterator) || NativeIterator.prototype !== IteratorPrototype || !fails2(function() {
|
|
1476
|
+
NativeIterator({});
|
|
1477
|
+
});
|
|
1478
|
+
var IteratorConstructor = function Iterator() {
|
|
1479
|
+
anInstance2(this, IteratorPrototype);
|
|
1480
|
+
if (getPrototypeOf(this) === IteratorPrototype) throw new $TypeError("Abstract class Iterator not directly constructable");
|
|
1481
|
+
};
|
|
1482
|
+
var defineIteratorPrototypeAccessor = function(key, value) {
|
|
1483
|
+
if (DESCRIPTORS) {
|
|
1484
|
+
defineBuiltInAccessor2(IteratorPrototype, key, {
|
|
1485
|
+
configurable: true,
|
|
1486
|
+
get: function() {
|
|
1487
|
+
return value;
|
|
1488
|
+
},
|
|
1489
|
+
set: function(replacement) {
|
|
1490
|
+
anObject2(this);
|
|
1491
|
+
if (this === IteratorPrototype) throw new $TypeError("You can't redefine this property");
|
|
1492
|
+
if (hasOwn(this, key)) this[key] = replacement;
|
|
1493
|
+
else createProperty2(this, key, replacement);
|
|
1494
|
+
}
|
|
1495
|
+
});
|
|
1496
|
+
} else IteratorPrototype[key] = value;
|
|
1497
|
+
};
|
|
1498
|
+
if (!hasOwn(IteratorPrototype, TO_STRING_TAG)) defineIteratorPrototypeAccessor(TO_STRING_TAG, ITERATOR);
|
|
1499
|
+
if (FORCED || !hasOwn(IteratorPrototype, CONSTRUCTOR) || IteratorPrototype[CONSTRUCTOR] === Object) {
|
|
1500
|
+
defineIteratorPrototypeAccessor(CONSTRUCTOR, IteratorConstructor);
|
|
1501
|
+
}
|
|
1502
|
+
IteratorConstructor.prototype = IteratorPrototype;
|
|
1503
|
+
$({
|
|
1504
|
+
global: true,
|
|
1505
|
+
constructor: true,
|
|
1506
|
+
forced: FORCED
|
|
1507
|
+
}, {
|
|
1508
|
+
Iterator: IteratorConstructor
|
|
1509
|
+
});
|
|
1510
|
+
return es_iterator_constructor;
|
|
1511
|
+
}
|
|
1512
|
+
requireEs_iterator_constructor();
|
|
1513
|
+
var es_iterator_forEach = {};
|
|
1514
|
+
var functionUncurryThisClause;
|
|
1515
|
+
var hasRequiredFunctionUncurryThisClause;
|
|
1516
|
+
function requireFunctionUncurryThisClause() {
|
|
1517
|
+
if (hasRequiredFunctionUncurryThisClause) return functionUncurryThisClause;
|
|
1518
|
+
hasRequiredFunctionUncurryThisClause = 1;
|
|
1519
|
+
var classofRaw2 = requireClassofRaw();
|
|
1520
|
+
var uncurryThis = requireFunctionUncurryThis();
|
|
1521
|
+
functionUncurryThisClause = function(fn2) {
|
|
1522
|
+
if (classofRaw2(fn2) === "Function") return uncurryThis(fn2);
|
|
1523
|
+
};
|
|
1524
|
+
return functionUncurryThisClause;
|
|
1525
|
+
}
|
|
1526
|
+
var functionBindContext;
|
|
1527
|
+
var hasRequiredFunctionBindContext;
|
|
1528
|
+
function requireFunctionBindContext() {
|
|
1529
|
+
if (hasRequiredFunctionBindContext) return functionBindContext;
|
|
1530
|
+
hasRequiredFunctionBindContext = 1;
|
|
1531
|
+
var uncurryThis = requireFunctionUncurryThisClause();
|
|
1532
|
+
var aCallable2 = requireACallable();
|
|
1533
|
+
var NATIVE_BIND = requireFunctionBindNative();
|
|
1534
|
+
var bind = uncurryThis(uncurryThis.bind);
|
|
1535
|
+
functionBindContext = function(fn2, that) {
|
|
1536
|
+
aCallable2(fn2);
|
|
1537
|
+
return that === void 0 ? fn2 : NATIVE_BIND ? bind(fn2, that) : function() {
|
|
1538
|
+
return fn2.apply(that, arguments);
|
|
1539
|
+
};
|
|
1540
|
+
};
|
|
1541
|
+
return functionBindContext;
|
|
1542
|
+
}
|
|
1543
|
+
var iterators;
|
|
1544
|
+
var hasRequiredIterators;
|
|
1545
|
+
function requireIterators() {
|
|
1546
|
+
if (hasRequiredIterators) return iterators;
|
|
1547
|
+
hasRequiredIterators = 1;
|
|
1548
|
+
iterators = {};
|
|
1549
|
+
return iterators;
|
|
1550
|
+
}
|
|
1551
|
+
var isArrayIteratorMethod;
|
|
1552
|
+
var hasRequiredIsArrayIteratorMethod;
|
|
1553
|
+
function requireIsArrayIteratorMethod() {
|
|
1554
|
+
if (hasRequiredIsArrayIteratorMethod) return isArrayIteratorMethod;
|
|
1555
|
+
hasRequiredIsArrayIteratorMethod = 1;
|
|
1556
|
+
var wellKnownSymbol2 = requireWellKnownSymbol();
|
|
1557
|
+
var Iterators = requireIterators();
|
|
1558
|
+
var ITERATOR = wellKnownSymbol2("iterator");
|
|
1559
|
+
var ArrayPrototype = Array.prototype;
|
|
1560
|
+
isArrayIteratorMethod = function(it) {
|
|
1561
|
+
return it !== void 0 && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);
|
|
1562
|
+
};
|
|
1563
|
+
return isArrayIteratorMethod;
|
|
1564
|
+
}
|
|
1565
|
+
var toStringTagSupport;
|
|
1566
|
+
var hasRequiredToStringTagSupport;
|
|
1567
|
+
function requireToStringTagSupport() {
|
|
1568
|
+
if (hasRequiredToStringTagSupport) return toStringTagSupport;
|
|
1569
|
+
hasRequiredToStringTagSupport = 1;
|
|
1570
|
+
var wellKnownSymbol2 = requireWellKnownSymbol();
|
|
1571
|
+
var TO_STRING_TAG = wellKnownSymbol2("toStringTag");
|
|
1572
|
+
var test = {};
|
|
1573
|
+
test[TO_STRING_TAG] = "z";
|
|
1574
|
+
toStringTagSupport = String(test) === "[object z]";
|
|
1575
|
+
return toStringTagSupport;
|
|
1576
|
+
}
|
|
1577
|
+
var classof;
|
|
1578
|
+
var hasRequiredClassof;
|
|
1579
|
+
function requireClassof() {
|
|
1580
|
+
if (hasRequiredClassof) return classof;
|
|
1581
|
+
hasRequiredClassof = 1;
|
|
1582
|
+
var TO_STRING_TAG_SUPPORT = requireToStringTagSupport();
|
|
1583
|
+
var isCallable2 = requireIsCallable();
|
|
1584
|
+
var classofRaw2 = requireClassofRaw();
|
|
1585
|
+
var wellKnownSymbol2 = requireWellKnownSymbol();
|
|
1586
|
+
var TO_STRING_TAG = wellKnownSymbol2("toStringTag");
|
|
1587
|
+
var $Object = Object;
|
|
1588
|
+
var CORRECT_ARGUMENTS = classofRaw2(/* @__PURE__ */ function() {
|
|
1589
|
+
return arguments;
|
|
1590
|
+
}()) === "Arguments";
|
|
1591
|
+
var tryGet = function(it, key) {
|
|
1592
|
+
try {
|
|
1593
|
+
return it[key];
|
|
1594
|
+
} catch (error) {
|
|
1595
|
+
}
|
|
1596
|
+
};
|
|
1597
|
+
classof = TO_STRING_TAG_SUPPORT ? classofRaw2 : function(it) {
|
|
1598
|
+
var O, tag, result;
|
|
1599
|
+
return it === void 0 ? "Undefined" : it === null ? "Null" : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == "string" ? tag : CORRECT_ARGUMENTS ? classofRaw2(O) : (result = classofRaw2(O)) === "Object" && isCallable2(O.callee) ? "Arguments" : result;
|
|
1600
|
+
};
|
|
1601
|
+
return classof;
|
|
1602
|
+
}
|
|
1603
|
+
var getIteratorMethod;
|
|
1604
|
+
var hasRequiredGetIteratorMethod;
|
|
1605
|
+
function requireGetIteratorMethod() {
|
|
1606
|
+
if (hasRequiredGetIteratorMethod) return getIteratorMethod;
|
|
1607
|
+
hasRequiredGetIteratorMethod = 1;
|
|
1608
|
+
var classof2 = requireClassof();
|
|
1609
|
+
var getMethod2 = requireGetMethod();
|
|
1610
|
+
var isNullOrUndefined2 = requireIsNullOrUndefined();
|
|
1611
|
+
var Iterators = requireIterators();
|
|
1612
|
+
var wellKnownSymbol2 = requireWellKnownSymbol();
|
|
1613
|
+
var ITERATOR = wellKnownSymbol2("iterator");
|
|
1614
|
+
getIteratorMethod = function(it) {
|
|
1615
|
+
if (!isNullOrUndefined2(it)) return getMethod2(it, ITERATOR) || getMethod2(it, "@@iterator") || Iterators[classof2(it)];
|
|
1616
|
+
};
|
|
1617
|
+
return getIteratorMethod;
|
|
1618
|
+
}
|
|
1619
|
+
var getIterator;
|
|
1620
|
+
var hasRequiredGetIterator;
|
|
1621
|
+
function requireGetIterator() {
|
|
1622
|
+
if (hasRequiredGetIterator) return getIterator;
|
|
1623
|
+
hasRequiredGetIterator = 1;
|
|
1624
|
+
var call = requireFunctionCall();
|
|
1625
|
+
var aCallable2 = requireACallable();
|
|
1626
|
+
var anObject2 = requireAnObject();
|
|
1627
|
+
var tryToString2 = requireTryToString();
|
|
1628
|
+
var getIteratorMethod2 = requireGetIteratorMethod();
|
|
1629
|
+
var $TypeError = TypeError;
|
|
1630
|
+
getIterator = function(argument, usingIterator) {
|
|
1631
|
+
var iteratorMethod = arguments.length < 2 ? getIteratorMethod2(argument) : usingIterator;
|
|
1632
|
+
if (aCallable2(iteratorMethod)) return anObject2(call(iteratorMethod, argument));
|
|
1633
|
+
throw new $TypeError(tryToString2(argument) + " is not iterable");
|
|
1634
|
+
};
|
|
1635
|
+
return getIterator;
|
|
1636
|
+
}
|
|
1637
|
+
var iteratorClose;
|
|
1638
|
+
var hasRequiredIteratorClose;
|
|
1639
|
+
function requireIteratorClose() {
|
|
1640
|
+
if (hasRequiredIteratorClose) return iteratorClose;
|
|
1641
|
+
hasRequiredIteratorClose = 1;
|
|
1642
|
+
var call = requireFunctionCall();
|
|
1643
|
+
var anObject2 = requireAnObject();
|
|
1644
|
+
var getMethod2 = requireGetMethod();
|
|
1645
|
+
iteratorClose = function(iterator, kind, value) {
|
|
1646
|
+
var innerResult, innerError;
|
|
1647
|
+
anObject2(iterator);
|
|
1648
|
+
try {
|
|
1649
|
+
innerResult = getMethod2(iterator, "return");
|
|
1650
|
+
if (!innerResult) {
|
|
1651
|
+
if (kind === "throw") throw value;
|
|
1652
|
+
return value;
|
|
1653
|
+
}
|
|
1654
|
+
innerResult = call(innerResult, iterator);
|
|
1655
|
+
} catch (error) {
|
|
1656
|
+
innerError = true;
|
|
1657
|
+
innerResult = error;
|
|
1658
|
+
}
|
|
1659
|
+
if (kind === "throw") throw value;
|
|
1660
|
+
if (innerError) throw innerResult;
|
|
1661
|
+
anObject2(innerResult);
|
|
1662
|
+
return value;
|
|
1663
|
+
};
|
|
1664
|
+
return iteratorClose;
|
|
1665
|
+
}
|
|
1666
|
+
var iterate;
|
|
1667
|
+
var hasRequiredIterate;
|
|
1668
|
+
function requireIterate() {
|
|
1669
|
+
if (hasRequiredIterate) return iterate;
|
|
1670
|
+
hasRequiredIterate = 1;
|
|
1671
|
+
var bind = requireFunctionBindContext();
|
|
1672
|
+
var call = requireFunctionCall();
|
|
1673
|
+
var anObject2 = requireAnObject();
|
|
1674
|
+
var tryToString2 = requireTryToString();
|
|
1675
|
+
var isArrayIteratorMethod2 = requireIsArrayIteratorMethod();
|
|
1676
|
+
var lengthOfArrayLike2 = requireLengthOfArrayLike();
|
|
1677
|
+
var isPrototypeOf = requireObjectIsPrototypeOf();
|
|
1678
|
+
var getIterator2 = requireGetIterator();
|
|
1679
|
+
var getIteratorMethod2 = requireGetIteratorMethod();
|
|
1680
|
+
var iteratorClose2 = requireIteratorClose();
|
|
1681
|
+
var $TypeError = TypeError;
|
|
1682
|
+
var Result = function(stopped, result) {
|
|
1683
|
+
this.stopped = stopped;
|
|
1684
|
+
this.result = result;
|
|
1685
|
+
};
|
|
1686
|
+
var ResultPrototype = Result.prototype;
|
|
1687
|
+
iterate = function(iterable, unboundFunction, options) {
|
|
1688
|
+
var that = options && options.that;
|
|
1689
|
+
var AS_ENTRIES = !!(options && options.AS_ENTRIES);
|
|
1690
|
+
var IS_RECORD = !!(options && options.IS_RECORD);
|
|
1691
|
+
var IS_ITERATOR = !!(options && options.IS_ITERATOR);
|
|
1692
|
+
var INTERRUPTED = !!(options && options.INTERRUPTED);
|
|
1693
|
+
var fn2 = bind(unboundFunction, that);
|
|
1694
|
+
var iterator, iterFn, index, length, result, next, step;
|
|
1695
|
+
var stop = function(condition) {
|
|
1696
|
+
if (iterator) iteratorClose2(iterator, "normal", condition);
|
|
1697
|
+
return new Result(true, condition);
|
|
1698
|
+
};
|
|
1699
|
+
var callFn = function(value) {
|
|
1700
|
+
if (AS_ENTRIES) {
|
|
1701
|
+
anObject2(value);
|
|
1702
|
+
return INTERRUPTED ? fn2(value[0], value[1], stop) : fn2(value[0], value[1]);
|
|
1703
|
+
}
|
|
1704
|
+
return INTERRUPTED ? fn2(value, stop) : fn2(value);
|
|
1705
|
+
};
|
|
1706
|
+
if (IS_RECORD) {
|
|
1707
|
+
iterator = iterable.iterator;
|
|
1708
|
+
} else if (IS_ITERATOR) {
|
|
1709
|
+
iterator = iterable;
|
|
1710
|
+
} else {
|
|
1711
|
+
iterFn = getIteratorMethod2(iterable);
|
|
1712
|
+
if (!iterFn) throw new $TypeError(tryToString2(iterable) + " is not iterable");
|
|
1713
|
+
if (isArrayIteratorMethod2(iterFn)) {
|
|
1714
|
+
for (index = 0, length = lengthOfArrayLike2(iterable); length > index; index++) {
|
|
1715
|
+
result = callFn(iterable[index]);
|
|
1716
|
+
if (result && isPrototypeOf(ResultPrototype, result)) return result;
|
|
1717
|
+
}
|
|
1718
|
+
return new Result(false);
|
|
1719
|
+
}
|
|
1720
|
+
iterator = getIterator2(iterable, iterFn);
|
|
1721
|
+
}
|
|
1722
|
+
next = IS_RECORD ? iterable.next : iterator.next;
|
|
1723
|
+
while (!(step = call(next, iterator)).done) {
|
|
1724
|
+
try {
|
|
1725
|
+
result = callFn(step.value);
|
|
1726
|
+
} catch (error) {
|
|
1727
|
+
iteratorClose2(iterator, "throw", error);
|
|
1728
|
+
}
|
|
1729
|
+
if (typeof result == "object" && result && isPrototypeOf(ResultPrototype, result)) return result;
|
|
1730
|
+
}
|
|
1731
|
+
return new Result(false);
|
|
1732
|
+
};
|
|
1733
|
+
return iterate;
|
|
1734
|
+
}
|
|
1735
|
+
var getIteratorDirect;
|
|
1736
|
+
var hasRequiredGetIteratorDirect;
|
|
1737
|
+
function requireGetIteratorDirect() {
|
|
1738
|
+
if (hasRequiredGetIteratorDirect) return getIteratorDirect;
|
|
1739
|
+
hasRequiredGetIteratorDirect = 1;
|
|
1740
|
+
getIteratorDirect = function(obj) {
|
|
1741
|
+
return {
|
|
1742
|
+
iterator: obj,
|
|
1743
|
+
next: obj.next,
|
|
1744
|
+
done: false
|
|
1745
|
+
};
|
|
1746
|
+
};
|
|
1747
|
+
return getIteratorDirect;
|
|
1748
|
+
}
|
|
1749
|
+
var hasRequiredEs_iterator_forEach;
|
|
1750
|
+
function requireEs_iterator_forEach() {
|
|
1751
|
+
if (hasRequiredEs_iterator_forEach) return es_iterator_forEach;
|
|
1752
|
+
hasRequiredEs_iterator_forEach = 1;
|
|
1753
|
+
var $ = require_export();
|
|
1754
|
+
var iterate2 = requireIterate();
|
|
1755
|
+
var aCallable2 = requireACallable();
|
|
1756
|
+
var anObject2 = requireAnObject();
|
|
1757
|
+
var getIteratorDirect2 = requireGetIteratorDirect();
|
|
1758
|
+
$({
|
|
1759
|
+
target: "Iterator",
|
|
1760
|
+
proto: true,
|
|
1761
|
+
real: true
|
|
1762
|
+
}, {
|
|
1763
|
+
forEach: function forEach(fn2) {
|
|
1764
|
+
anObject2(this);
|
|
1765
|
+
aCallable2(fn2);
|
|
1766
|
+
var record = getIteratorDirect2(this);
|
|
1767
|
+
var counter = 0;
|
|
1768
|
+
iterate2(record, function(value) {
|
|
1769
|
+
fn2(value, counter++);
|
|
1770
|
+
}, {
|
|
1771
|
+
IS_RECORD: true
|
|
1772
|
+
});
|
|
1773
|
+
}
|
|
1774
|
+
});
|
|
1775
|
+
return es_iterator_forEach;
|
|
1776
|
+
}
|
|
1777
|
+
requireEs_iterator_forEach();
|
|
1778
|
+
var commonjsGlobal = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
|
|
1779
|
+
function getDefaultExportFromCjs(x) {
|
|
1780
|
+
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
|
|
1781
|
+
}
|
|
1782
|
+
var es_array_push = {};
|
|
1222
1783
|
var isArray;
|
|
1223
1784
|
var hasRequiredIsArray$1;
|
|
1224
1785
|
function requireIsArray$1() {
|
|
1225
1786
|
if (hasRequiredIsArray$1) return isArray;
|
|
1226
1787
|
hasRequiredIsArray$1 = 1;
|
|
1227
|
-
var
|
|
1788
|
+
var classof2 = requireClassofRaw();
|
|
1228
1789
|
isArray = Array.isArray || function isArray2(argument) {
|
|
1229
|
-
return
|
|
1790
|
+
return classof2(argument) === "Array";
|
|
1230
1791
|
};
|
|
1231
1792
|
return isArray;
|
|
1232
1793
|
}
|
|
@@ -1412,7 +1973,7 @@ const _export_sfc = (sfc, props) => {
|
|
|
1412
1973
|
};
|
|
1413
1974
|
const _hoisted_1$U = ["aria-hidden"];
|
|
1414
1975
|
const _hoisted_2$F = ["xlink:href"];
|
|
1415
|
-
function _sfc_render$
|
|
1976
|
+
function _sfc_render$R(_ctx, _cache, $props, $setup, $data, $options) {
|
|
1416
1977
|
return vue.openBlock(), vue.createElementBlock("svg", vue.mergeProps(_ctx.$attrs, {
|
|
1417
1978
|
focusable: "false",
|
|
1418
1979
|
class: ["icon", [_ctx.spriteKey, ..._ctx.modifiers]],
|
|
@@ -1421,7 +1982,7 @@ function _sfc_render$W(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
1421
1982
|
"xlink:href": _ctx.spriteId
|
|
1422
1983
|
}, null, 8, _hoisted_2$F)], 16, _hoisted_1$U);
|
|
1423
1984
|
}
|
|
1424
|
-
const FIcon = /* @__PURE__ */ _export_sfc(_sfc_main$1a, [["render", _sfc_render$
|
|
1985
|
+
const FIcon = /* @__PURE__ */ _export_sfc(_sfc_main$1a, [["render", _sfc_render$R]]);
|
|
1425
1986
|
const DATA_TEST_ATTRIBUTE_NAME = "data-test";
|
|
1426
1987
|
function throwErrorIfEmpty(value) {
|
|
1427
1988
|
if (!value) {
|
|
@@ -1996,6 +2557,165 @@ function require_mapCacheClear() {
|
|
|
1996
2557
|
_mapCacheClear = mapCacheClear;
|
|
1997
2558
|
return _mapCacheClear;
|
|
1998
2559
|
}
|
|
2560
|
+
var es_iterator_map = {};
|
|
2561
|
+
var defineBuiltIns;
|
|
2562
|
+
var hasRequiredDefineBuiltIns;
|
|
2563
|
+
function requireDefineBuiltIns() {
|
|
2564
|
+
if (hasRequiredDefineBuiltIns) return defineBuiltIns;
|
|
2565
|
+
hasRequiredDefineBuiltIns = 1;
|
|
2566
|
+
var defineBuiltIn2 = requireDefineBuiltIn();
|
|
2567
|
+
defineBuiltIns = function(target, src, options) {
|
|
2568
|
+
for (var key in src) defineBuiltIn2(target, key, src[key], options);
|
|
2569
|
+
return target;
|
|
2570
|
+
};
|
|
2571
|
+
return defineBuiltIns;
|
|
2572
|
+
}
|
|
2573
|
+
var createIterResultObject;
|
|
2574
|
+
var hasRequiredCreateIterResultObject;
|
|
2575
|
+
function requireCreateIterResultObject() {
|
|
2576
|
+
if (hasRequiredCreateIterResultObject) return createIterResultObject;
|
|
2577
|
+
hasRequiredCreateIterResultObject = 1;
|
|
2578
|
+
createIterResultObject = function(value, done) {
|
|
2579
|
+
return {
|
|
2580
|
+
value,
|
|
2581
|
+
done
|
|
2582
|
+
};
|
|
2583
|
+
};
|
|
2584
|
+
return createIterResultObject;
|
|
2585
|
+
}
|
|
2586
|
+
var iteratorCreateProxy;
|
|
2587
|
+
var hasRequiredIteratorCreateProxy;
|
|
2588
|
+
function requireIteratorCreateProxy() {
|
|
2589
|
+
if (hasRequiredIteratorCreateProxy) return iteratorCreateProxy;
|
|
2590
|
+
hasRequiredIteratorCreateProxy = 1;
|
|
2591
|
+
var call = requireFunctionCall();
|
|
2592
|
+
var create = requireObjectCreate();
|
|
2593
|
+
var createNonEnumerableProperty2 = requireCreateNonEnumerableProperty();
|
|
2594
|
+
var defineBuiltIns2 = requireDefineBuiltIns();
|
|
2595
|
+
var wellKnownSymbol2 = requireWellKnownSymbol();
|
|
2596
|
+
var InternalStateModule = requireInternalState();
|
|
2597
|
+
var getMethod2 = requireGetMethod();
|
|
2598
|
+
var IteratorPrototype = requireIteratorsCore().IteratorPrototype;
|
|
2599
|
+
var createIterResultObject2 = requireCreateIterResultObject();
|
|
2600
|
+
var iteratorClose2 = requireIteratorClose();
|
|
2601
|
+
var TO_STRING_TAG = wellKnownSymbol2("toStringTag");
|
|
2602
|
+
var ITERATOR_HELPER = "IteratorHelper";
|
|
2603
|
+
var WRAP_FOR_VALID_ITERATOR = "WrapForValidIterator";
|
|
2604
|
+
var setInternalState = InternalStateModule.set;
|
|
2605
|
+
var createIteratorProxyPrototype = function(IS_ITERATOR) {
|
|
2606
|
+
var getInternalState = InternalStateModule.getterFor(IS_ITERATOR ? WRAP_FOR_VALID_ITERATOR : ITERATOR_HELPER);
|
|
2607
|
+
return defineBuiltIns2(create(IteratorPrototype), {
|
|
2608
|
+
next: function next() {
|
|
2609
|
+
var state = getInternalState(this);
|
|
2610
|
+
if (IS_ITERATOR) return state.nextHandler();
|
|
2611
|
+
if (state.done) return createIterResultObject2(void 0, true);
|
|
2612
|
+
try {
|
|
2613
|
+
var result = state.nextHandler();
|
|
2614
|
+
return state.returnHandlerResult ? result : createIterResultObject2(result, state.done);
|
|
2615
|
+
} catch (error) {
|
|
2616
|
+
state.done = true;
|
|
2617
|
+
throw error;
|
|
2618
|
+
}
|
|
2619
|
+
},
|
|
2620
|
+
"return": function() {
|
|
2621
|
+
var state = getInternalState(this);
|
|
2622
|
+
var iterator = state.iterator;
|
|
2623
|
+
state.done = true;
|
|
2624
|
+
if (IS_ITERATOR) {
|
|
2625
|
+
var returnMethod = getMethod2(iterator, "return");
|
|
2626
|
+
return returnMethod ? call(returnMethod, iterator) : createIterResultObject2(void 0, true);
|
|
2627
|
+
}
|
|
2628
|
+
if (state.inner) try {
|
|
2629
|
+
iteratorClose2(state.inner.iterator, "normal");
|
|
2630
|
+
} catch (error) {
|
|
2631
|
+
return iteratorClose2(iterator, "throw", error);
|
|
2632
|
+
}
|
|
2633
|
+
if (iterator) iteratorClose2(iterator, "normal");
|
|
2634
|
+
return createIterResultObject2(void 0, true);
|
|
2635
|
+
}
|
|
2636
|
+
});
|
|
2637
|
+
};
|
|
2638
|
+
var WrapForValidIteratorPrototype = createIteratorProxyPrototype(true);
|
|
2639
|
+
var IteratorHelperPrototype = createIteratorProxyPrototype(false);
|
|
2640
|
+
createNonEnumerableProperty2(IteratorHelperPrototype, TO_STRING_TAG, "Iterator Helper");
|
|
2641
|
+
iteratorCreateProxy = function(nextHandler, IS_ITERATOR, RETURN_HANDLER_RESULT) {
|
|
2642
|
+
var IteratorProxy = function Iterator(record, state) {
|
|
2643
|
+
if (state) {
|
|
2644
|
+
state.iterator = record.iterator;
|
|
2645
|
+
state.next = record.next;
|
|
2646
|
+
} else state = record;
|
|
2647
|
+
state.type = IS_ITERATOR ? WRAP_FOR_VALID_ITERATOR : ITERATOR_HELPER;
|
|
2648
|
+
state.returnHandlerResult = !!RETURN_HANDLER_RESULT;
|
|
2649
|
+
state.nextHandler = nextHandler;
|
|
2650
|
+
state.counter = 0;
|
|
2651
|
+
state.done = false;
|
|
2652
|
+
setInternalState(this, state);
|
|
2653
|
+
};
|
|
2654
|
+
IteratorProxy.prototype = IS_ITERATOR ? WrapForValidIteratorPrototype : IteratorHelperPrototype;
|
|
2655
|
+
return IteratorProxy;
|
|
2656
|
+
};
|
|
2657
|
+
return iteratorCreateProxy;
|
|
2658
|
+
}
|
|
2659
|
+
var callWithSafeIterationClosing;
|
|
2660
|
+
var hasRequiredCallWithSafeIterationClosing;
|
|
2661
|
+
function requireCallWithSafeIterationClosing() {
|
|
2662
|
+
if (hasRequiredCallWithSafeIterationClosing) return callWithSafeIterationClosing;
|
|
2663
|
+
hasRequiredCallWithSafeIterationClosing = 1;
|
|
2664
|
+
var anObject2 = requireAnObject();
|
|
2665
|
+
var iteratorClose2 = requireIteratorClose();
|
|
2666
|
+
callWithSafeIterationClosing = function(iterator, fn2, value, ENTRIES) {
|
|
2667
|
+
try {
|
|
2668
|
+
return ENTRIES ? fn2(anObject2(value)[0], value[1]) : fn2(value);
|
|
2669
|
+
} catch (error) {
|
|
2670
|
+
iteratorClose2(iterator, "throw", error);
|
|
2671
|
+
}
|
|
2672
|
+
};
|
|
2673
|
+
return callWithSafeIterationClosing;
|
|
2674
|
+
}
|
|
2675
|
+
var iteratorMap;
|
|
2676
|
+
var hasRequiredIteratorMap;
|
|
2677
|
+
function requireIteratorMap() {
|
|
2678
|
+
if (hasRequiredIteratorMap) return iteratorMap;
|
|
2679
|
+
hasRequiredIteratorMap = 1;
|
|
2680
|
+
var call = requireFunctionCall();
|
|
2681
|
+
var aCallable2 = requireACallable();
|
|
2682
|
+
var anObject2 = requireAnObject();
|
|
2683
|
+
var getIteratorDirect2 = requireGetIteratorDirect();
|
|
2684
|
+
var createIteratorProxy = requireIteratorCreateProxy();
|
|
2685
|
+
var callWithSafeIterationClosing2 = requireCallWithSafeIterationClosing();
|
|
2686
|
+
var IteratorProxy = createIteratorProxy(function() {
|
|
2687
|
+
var iterator = this.iterator;
|
|
2688
|
+
var result = anObject2(call(this.next, iterator));
|
|
2689
|
+
var done = this.done = !!result.done;
|
|
2690
|
+
if (!done) return callWithSafeIterationClosing2(iterator, this.mapper, [result.value, this.counter++], true);
|
|
2691
|
+
});
|
|
2692
|
+
iteratorMap = function map(mapper) {
|
|
2693
|
+
anObject2(this);
|
|
2694
|
+
aCallable2(mapper);
|
|
2695
|
+
return new IteratorProxy(getIteratorDirect2(this), {
|
|
2696
|
+
mapper
|
|
2697
|
+
});
|
|
2698
|
+
};
|
|
2699
|
+
return iteratorMap;
|
|
2700
|
+
}
|
|
2701
|
+
var hasRequiredEs_iterator_map;
|
|
2702
|
+
function requireEs_iterator_map() {
|
|
2703
|
+
if (hasRequiredEs_iterator_map) return es_iterator_map;
|
|
2704
|
+
hasRequiredEs_iterator_map = 1;
|
|
2705
|
+
var $ = require_export();
|
|
2706
|
+
var map = requireIteratorMap();
|
|
2707
|
+
var IS_PURE = requireIsPure();
|
|
2708
|
+
$({
|
|
2709
|
+
target: "Iterator",
|
|
2710
|
+
proto: true,
|
|
2711
|
+
real: true,
|
|
2712
|
+
forced: IS_PURE
|
|
2713
|
+
}, {
|
|
2714
|
+
map
|
|
2715
|
+
});
|
|
2716
|
+
return es_iterator_map;
|
|
2717
|
+
}
|
|
2718
|
+
requireEs_iterator_map();
|
|
1999
2719
|
var _isKeyable;
|
|
2000
2720
|
var hasRequired_isKeyable;
|
|
2001
2721
|
function require_isKeyable() {
|
|
@@ -2806,24 +3526,6 @@ function require_equalObjects() {
|
|
|
2806
3526
|
return _equalObjects;
|
|
2807
3527
|
}
|
|
2808
3528
|
var es_arrayBuffer_detached = {};
|
|
2809
|
-
var defineBuiltInAccessor;
|
|
2810
|
-
var hasRequiredDefineBuiltInAccessor;
|
|
2811
|
-
function requireDefineBuiltInAccessor() {
|
|
2812
|
-
if (hasRequiredDefineBuiltInAccessor) return defineBuiltInAccessor;
|
|
2813
|
-
hasRequiredDefineBuiltInAccessor = 1;
|
|
2814
|
-
var makeBuiltIn2 = requireMakeBuiltIn();
|
|
2815
|
-
var defineProperty = requireObjectDefineProperty();
|
|
2816
|
-
defineBuiltInAccessor = function(target, name, descriptor) {
|
|
2817
|
-
if (descriptor.get) makeBuiltIn2(descriptor.get, name, {
|
|
2818
|
-
getter: true
|
|
2819
|
-
});
|
|
2820
|
-
if (descriptor.set) makeBuiltIn2(descriptor.set, name, {
|
|
2821
|
-
setter: true
|
|
2822
|
-
});
|
|
2823
|
-
return defineProperty.f(target, name, descriptor);
|
|
2824
|
-
};
|
|
2825
|
-
return defineBuiltInAccessor;
|
|
2826
|
-
}
|
|
2827
3529
|
var arrayBufferBasicDetection;
|
|
2828
3530
|
var hasRequiredArrayBufferBasicDetection;
|
|
2829
3531
|
function requireArrayBufferBasicDetection() {
|
|
@@ -2854,11 +3556,11 @@ function requireArrayBufferByteLength() {
|
|
|
2854
3556
|
hasRequiredArrayBufferByteLength = 1;
|
|
2855
3557
|
var globalThis2 = requireGlobalThis();
|
|
2856
3558
|
var uncurryThisAccessor = requireFunctionUncurryThisAccessor();
|
|
2857
|
-
var
|
|
3559
|
+
var classof2 = requireClassofRaw();
|
|
2858
3560
|
var ArrayBuffer2 = globalThis2.ArrayBuffer;
|
|
2859
3561
|
var TypeError2 = globalThis2.TypeError;
|
|
2860
3562
|
arrayBufferByteLength = ArrayBuffer2 && uncurryThisAccessor(ArrayBuffer2.prototype, "byteLength", "get") || function(O) {
|
|
2861
|
-
if (
|
|
3563
|
+
if (classof2(O) !== "ArrayBuffer") throw new TypeError2("ArrayBuffer expected");
|
|
2862
3564
|
return O.byteLength;
|
|
2863
3565
|
};
|
|
2864
3566
|
return arrayBufferByteLength;
|
|
@@ -2940,7 +3642,7 @@ function requireEnvironment() {
|
|
|
2940
3642
|
hasRequiredEnvironment = 1;
|
|
2941
3643
|
var globalThis2 = requireGlobalThis();
|
|
2942
3644
|
var userAgent = requireEnvironmentUserAgent();
|
|
2943
|
-
var
|
|
3645
|
+
var classof2 = requireClassofRaw();
|
|
2944
3646
|
var userAgentStartsWith = function(string) {
|
|
2945
3647
|
return userAgent.slice(0, string.length) === string;
|
|
2946
3648
|
};
|
|
@@ -2951,7 +3653,7 @@ function requireEnvironment() {
|
|
|
2951
3653
|
if (userAgentStartsWith("Node.js/")) return "NODE";
|
|
2952
3654
|
if (globalThis2.Bun && typeof Bun.version == "string") return "BUN";
|
|
2953
3655
|
if (globalThis2.Deno && typeof Deno.version == "object") return "DENO";
|
|
2954
|
-
if (
|
|
3656
|
+
if (classof2(globalThis2.process) === "process") return "NODE";
|
|
2955
3657
|
if (globalThis2.window && globalThis2.document) return "BROWSER";
|
|
2956
3658
|
return "REST";
|
|
2957
3659
|
}();
|
|
@@ -3283,15 +3985,46 @@ function requireIsEqual() {
|
|
|
3283
3985
|
}
|
|
3284
3986
|
var isEqualExports = requireIsEqual();
|
|
3285
3987
|
const isEqual$1 = /* @__PURE__ */ getDefaultExportFromCjs(isEqualExports);
|
|
3286
|
-
|
|
3287
|
-
|
|
3288
|
-
|
|
3289
|
-
|
|
3290
|
-
|
|
3291
|
-
|
|
3292
|
-
|
|
3293
|
-
|
|
3294
|
-
|
|
3988
|
+
var es_iterator_find = {};
|
|
3989
|
+
var hasRequiredEs_iterator_find;
|
|
3990
|
+
function requireEs_iterator_find() {
|
|
3991
|
+
if (hasRequiredEs_iterator_find) return es_iterator_find;
|
|
3992
|
+
hasRequiredEs_iterator_find = 1;
|
|
3993
|
+
var $ = require_export();
|
|
3994
|
+
var iterate2 = requireIterate();
|
|
3995
|
+
var aCallable2 = requireACallable();
|
|
3996
|
+
var anObject2 = requireAnObject();
|
|
3997
|
+
var getIteratorDirect2 = requireGetIteratorDirect();
|
|
3998
|
+
$({
|
|
3999
|
+
target: "Iterator",
|
|
4000
|
+
proto: true,
|
|
4001
|
+
real: true
|
|
4002
|
+
}, {
|
|
4003
|
+
find: function find(predicate) {
|
|
4004
|
+
anObject2(this);
|
|
4005
|
+
aCallable2(predicate);
|
|
4006
|
+
var record = getIteratorDirect2(this);
|
|
4007
|
+
var counter = 0;
|
|
4008
|
+
return iterate2(record, function(value, stop) {
|
|
4009
|
+
if (predicate(value, counter++)) return stop(value);
|
|
4010
|
+
}, {
|
|
4011
|
+
IS_RECORD: true,
|
|
4012
|
+
INTERRUPTED: true
|
|
4013
|
+
}).result;
|
|
4014
|
+
}
|
|
4015
|
+
});
|
|
4016
|
+
return es_iterator_find;
|
|
4017
|
+
}
|
|
4018
|
+
requireEs_iterator_find();
|
|
4019
|
+
function itemEquals(item1, item2, compareAttribute) {
|
|
4020
|
+
if (!logic.isSet(item1) || !logic.isSet(item2)) {
|
|
4021
|
+
return false;
|
|
4022
|
+
}
|
|
4023
|
+
if (item1 === item2) {
|
|
4024
|
+
return true;
|
|
4025
|
+
}
|
|
4026
|
+
return item1[compareAttribute] === item2[compareAttribute];
|
|
4027
|
+
}
|
|
3295
4028
|
function includeItem(item, itemList, compareAttribute) {
|
|
3296
4029
|
if (!logic.isSet(item) || !logic.isSet(itemList)) {
|
|
3297
4030
|
return false;
|
|
@@ -3901,7 +4634,7 @@ const _hoisted_10$4 = {
|
|
|
3901
4634
|
class: "modal__shelf"
|
|
3902
4635
|
};
|
|
3903
4636
|
const _hoisted_11$3 = ["aria-label"];
|
|
3904
|
-
function _sfc_render$
|
|
4637
|
+
function _sfc_render$Q(_ctx, _cache, $props, $setup, $data, $options) {
|
|
3905
4638
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
3906
4639
|
return _ctx.isOpen ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
3907
4640
|
key: 0,
|
|
@@ -3931,7 +4664,7 @@ function _sfc_render$V(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
3931
4664
|
onFocus: _cache[2] || (_cache[2] = (...args) => _ctx.onFocusLast && _ctx.onFocusLast(...args))
|
|
3932
4665
|
}, null, 32)])])], 2)])], 32)])], 10, _hoisted_1$T)) : vue.createCommentVNode("", true);
|
|
3933
4666
|
}
|
|
3934
|
-
const FModal = /* @__PURE__ */ _export_sfc(_sfc_main$19, [["render", _sfc_render$
|
|
4667
|
+
const FModal = /* @__PURE__ */ _export_sfc(_sfc_main$19, [["render", _sfc_render$Q]]);
|
|
3935
4668
|
function prepareButtonList(src, buttonOrder = config.buttonOrder) {
|
|
3936
4669
|
const list = src.map((it) => {
|
|
3937
4670
|
var _it$event, _ref, _it$reason, _it$type;
|
|
@@ -4072,7 +4805,7 @@ const _hoisted_3$v = {
|
|
|
4072
4805
|
key: 0,
|
|
4073
4806
|
class: "sr-only"
|
|
4074
4807
|
};
|
|
4075
|
-
function _sfc_render$
|
|
4808
|
+
function _sfc_render$P(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4076
4809
|
const _component_f_modal = vue.resolveComponent("f-modal");
|
|
4077
4810
|
return vue.openBlock(), vue.createBlock(_component_f_modal, {
|
|
4078
4811
|
fullscreen: _ctx.fullscreen,
|
|
@@ -4096,7 +4829,7 @@ function _sfc_render$U(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4096
4829
|
_: 3
|
|
4097
4830
|
}, 8, ["fullscreen", "is-open", "aria-close-text", "size", "focus", "onClose"]);
|
|
4098
4831
|
}
|
|
4099
|
-
const FConfirmModal = /* @__PURE__ */ _export_sfc(_sfc_main$18, [["render", _sfc_render$
|
|
4832
|
+
const FConfirmModal = /* @__PURE__ */ _export_sfc(_sfc_main$18, [["render", _sfc_render$P]]);
|
|
4100
4833
|
const GAP = ["1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x"];
|
|
4101
4834
|
const ALIGNMENT = ["top", "center", "bottom"];
|
|
4102
4835
|
const FLOAT = ["left", "center", "right"];
|
|
@@ -4175,12 +4908,12 @@ const _sfc_main$17 = vue.defineComponent({
|
|
|
4175
4908
|
}
|
|
4176
4909
|
}
|
|
4177
4910
|
});
|
|
4178
|
-
function _sfc_render$
|
|
4911
|
+
function _sfc_render$O(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4179
4912
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
4180
4913
|
class: vue.normalizeClass(["iflex", _ctx.classList])
|
|
4181
4914
|
}, [vue.renderSlot(_ctx.$slots, "default")], 2);
|
|
4182
4915
|
}
|
|
4183
|
-
const IFlex = /* @__PURE__ */ _export_sfc(_sfc_main$17, [["render", _sfc_render$
|
|
4916
|
+
const IFlex = /* @__PURE__ */ _export_sfc(_sfc_main$17, [["render", _sfc_render$O]]);
|
|
4184
4917
|
const _sfc_main$16 = vue.defineComponent({
|
|
4185
4918
|
name: "IFlexItem",
|
|
4186
4919
|
inheritAttrs: true,
|
|
@@ -4228,12 +4961,12 @@ const _sfc_main$16 = vue.defineComponent({
|
|
|
4228
4961
|
}
|
|
4229
4962
|
}
|
|
4230
4963
|
});
|
|
4231
|
-
function _sfc_render$
|
|
4964
|
+
function _sfc_render$N(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4232
4965
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
4233
4966
|
class: vue.normalizeClass(["iflex__item", _ctx.classList])
|
|
4234
4967
|
}, [vue.renderSlot(_ctx.$slots, "default")], 2);
|
|
4235
4968
|
}
|
|
4236
|
-
const IFlexItem = /* @__PURE__ */ _export_sfc(_sfc_main$16, [["render", _sfc_render$
|
|
4969
|
+
const IFlexItem = /* @__PURE__ */ _export_sfc(_sfc_main$16, [["render", _sfc_render$N]]);
|
|
4237
4970
|
function focusError(item) {
|
|
4238
4971
|
const element = document.querySelector(`#${item.id}`);
|
|
4239
4972
|
if (!element) {
|
|
@@ -4312,7 +5045,7 @@ const _hoisted_4$p = ["onClick"];
|
|
|
4312
5045
|
const _hoisted_5$k = {
|
|
4313
5046
|
class: "error-list__link"
|
|
4314
5047
|
};
|
|
4315
|
-
function _sfc_render$
|
|
5048
|
+
function _sfc_render$M(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4316
5049
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
4317
5050
|
const _component_i_flex_item = vue.resolveComponent("i-flex-item");
|
|
4318
5051
|
const _component_i_flex = vue.resolveComponent("i-flex");
|
|
@@ -4366,7 +5099,81 @@ function _sfc_render$R(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4366
5099
|
_: 3
|
|
4367
5100
|
})]);
|
|
4368
5101
|
}
|
|
4369
|
-
const FErrorList = /* @__PURE__ */ _export_sfc(_sfc_main$15, [["render", _sfc_render$
|
|
5102
|
+
const FErrorList = /* @__PURE__ */ _export_sfc(_sfc_main$15, [["render", _sfc_render$M]]);
|
|
5103
|
+
var es_iterator_every = {};
|
|
5104
|
+
var hasRequiredEs_iterator_every;
|
|
5105
|
+
function requireEs_iterator_every() {
|
|
5106
|
+
if (hasRequiredEs_iterator_every) return es_iterator_every;
|
|
5107
|
+
hasRequiredEs_iterator_every = 1;
|
|
5108
|
+
var $ = require_export();
|
|
5109
|
+
var iterate2 = requireIterate();
|
|
5110
|
+
var aCallable2 = requireACallable();
|
|
5111
|
+
var anObject2 = requireAnObject();
|
|
5112
|
+
var getIteratorDirect2 = requireGetIteratorDirect();
|
|
5113
|
+
$({
|
|
5114
|
+
target: "Iterator",
|
|
5115
|
+
proto: true,
|
|
5116
|
+
real: true
|
|
5117
|
+
}, {
|
|
5118
|
+
every: function every(predicate) {
|
|
5119
|
+
anObject2(this);
|
|
5120
|
+
aCallable2(predicate);
|
|
5121
|
+
var record = getIteratorDirect2(this);
|
|
5122
|
+
var counter = 0;
|
|
5123
|
+
return !iterate2(record, function(value, stop) {
|
|
5124
|
+
if (!predicate(value, counter++)) return stop();
|
|
5125
|
+
}, {
|
|
5126
|
+
IS_RECORD: true,
|
|
5127
|
+
INTERRUPTED: true
|
|
5128
|
+
}).stopped;
|
|
5129
|
+
}
|
|
5130
|
+
});
|
|
5131
|
+
return es_iterator_every;
|
|
5132
|
+
}
|
|
5133
|
+
requireEs_iterator_every();
|
|
5134
|
+
var es_iterator_filter = {};
|
|
5135
|
+
var hasRequiredEs_iterator_filter;
|
|
5136
|
+
function requireEs_iterator_filter() {
|
|
5137
|
+
if (hasRequiredEs_iterator_filter) return es_iterator_filter;
|
|
5138
|
+
hasRequiredEs_iterator_filter = 1;
|
|
5139
|
+
var $ = require_export();
|
|
5140
|
+
var call = requireFunctionCall();
|
|
5141
|
+
var aCallable2 = requireACallable();
|
|
5142
|
+
var anObject2 = requireAnObject();
|
|
5143
|
+
var getIteratorDirect2 = requireGetIteratorDirect();
|
|
5144
|
+
var createIteratorProxy = requireIteratorCreateProxy();
|
|
5145
|
+
var callWithSafeIterationClosing2 = requireCallWithSafeIterationClosing();
|
|
5146
|
+
var IS_PURE = requireIsPure();
|
|
5147
|
+
var IteratorProxy = createIteratorProxy(function() {
|
|
5148
|
+
var iterator = this.iterator;
|
|
5149
|
+
var predicate = this.predicate;
|
|
5150
|
+
var next = this.next;
|
|
5151
|
+
var result, done, value;
|
|
5152
|
+
while (true) {
|
|
5153
|
+
result = anObject2(call(next, iterator));
|
|
5154
|
+
done = this.done = !!result.done;
|
|
5155
|
+
if (done) return;
|
|
5156
|
+
value = result.value;
|
|
5157
|
+
if (callWithSafeIterationClosing2(iterator, predicate, [value, this.counter++], true)) return value;
|
|
5158
|
+
}
|
|
5159
|
+
});
|
|
5160
|
+
$({
|
|
5161
|
+
target: "Iterator",
|
|
5162
|
+
proto: true,
|
|
5163
|
+
real: true,
|
|
5164
|
+
forced: IS_PURE
|
|
5165
|
+
}, {
|
|
5166
|
+
filter: function filter2(predicate) {
|
|
5167
|
+
anObject2(this);
|
|
5168
|
+
aCallable2(predicate);
|
|
5169
|
+
return new IteratorProxy(getIteratorDirect2(this), {
|
|
5170
|
+
predicate
|
|
5171
|
+
});
|
|
5172
|
+
}
|
|
5173
|
+
});
|
|
5174
|
+
return es_iterator_filter;
|
|
5175
|
+
}
|
|
5176
|
+
requireEs_iterator_filter();
|
|
4370
5177
|
function cleanUpElements(vm) {
|
|
4371
5178
|
return new Promise((resolve) => {
|
|
4372
5179
|
window.setTimeout(() => {
|
|
@@ -4450,13 +5257,13 @@ const _sfc_main$14 = vue.defineComponent({
|
|
|
4450
5257
|
}
|
|
4451
5258
|
}
|
|
4452
5259
|
});
|
|
4453
|
-
function _sfc_render$
|
|
5260
|
+
function _sfc_render$L(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4454
5261
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
4455
5262
|
onComponentValidity: _cache[0] || (_cache[0] = (...args) => _ctx.onComponentValidity && _ctx.onComponentValidity(...args)),
|
|
4456
5263
|
onComponentUnmount: _cache[1] || (_cache[1] = (...args) => _ctx.onComponentUnmount && _ctx.onComponentUnmount(...args))
|
|
4457
5264
|
}, [vue.renderSlot(_ctx.$slots, "default")], 32);
|
|
4458
5265
|
}
|
|
4459
|
-
const FValidationGroup = /* @__PURE__ */ _export_sfc(_sfc_main$14, [["render", _sfc_render$
|
|
5266
|
+
const FValidationGroup = /* @__PURE__ */ _export_sfc(_sfc_main$14, [["render", _sfc_render$L]]);
|
|
4460
5267
|
var FValidationFormAction = /* @__PURE__ */ ((FValidationFormAction2) => {
|
|
4461
5268
|
FValidationFormAction2[FValidationFormAction2["CONTINUE"] = 0] = "CONTINUE";
|
|
4462
5269
|
FValidationFormAction2[FValidationFormAction2["CANCEL"] = 1] = "CANCEL";
|
|
@@ -4608,7 +5415,7 @@ const _hoisted_2$B = {
|
|
|
4608
5415
|
tabindex: "-1",
|
|
4609
5416
|
role: "group"
|
|
4610
5417
|
};
|
|
4611
|
-
function _sfc_render$
|
|
5418
|
+
function _sfc_render$K(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4612
5419
|
const _component_f_error_list = vue.resolveComponent("f-error-list");
|
|
4613
5420
|
const _component_f_validation_group = vue.resolveComponent("f-validation-group");
|
|
4614
5421
|
return vue.openBlock(), vue.createBlock(_component_f_validation_group, {
|
|
@@ -4634,7 +5441,7 @@ function _sfc_render$P(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4634
5441
|
_: 3
|
|
4635
5442
|
}, 8, ["modelValue"]);
|
|
4636
5443
|
}
|
|
4637
|
-
const FValidationForm = /* @__PURE__ */ _export_sfc(_sfc_main$13, [["render", _sfc_render$
|
|
5444
|
+
const FValidationForm = /* @__PURE__ */ _export_sfc(_sfc_main$13, [["render", _sfc_render$K]]);
|
|
4638
5445
|
const _sfc_main$12 = vue.defineComponent({
|
|
4639
5446
|
name: "FFormModal",
|
|
4640
5447
|
components: {
|
|
@@ -4792,7 +5599,7 @@ const _hoisted_3$t = {
|
|
|
4792
5599
|
key: 0,
|
|
4793
5600
|
class: "sr-only"
|
|
4794
5601
|
};
|
|
4795
|
-
function _sfc_render$
|
|
5602
|
+
function _sfc_render$J(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4796
5603
|
const _component_f_validation_form = vue.resolveComponent("f-validation-form");
|
|
4797
5604
|
const _component_f_modal = vue.resolveComponent("f-modal");
|
|
4798
5605
|
return vue.openBlock(), vue.createBlock(_component_f_modal, {
|
|
@@ -4828,7 +5635,7 @@ function _sfc_render$O(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4828
5635
|
_: 3
|
|
4829
5636
|
}, 8, ["data-test", "fullscreen", "is-open", "size", "aria-close-text", "onClose"]);
|
|
4830
5637
|
}
|
|
4831
|
-
const FFormModal = /* @__PURE__ */ _export_sfc(_sfc_main$12, [["render", _sfc_render$
|
|
5638
|
+
const FFormModal = /* @__PURE__ */ _export_sfc(_sfc_main$12, [["render", _sfc_render$J]]);
|
|
4832
5639
|
async function confirmModal(callingInstance, texts) {
|
|
4833
5640
|
const buttons = [{
|
|
4834
5641
|
label: texts.confirm,
|
|
@@ -5201,12 +6008,12 @@ const _sfc_main$11 = vue.defineComponent({
|
|
|
5201
6008
|
const _hoisted_1$O = {
|
|
5202
6009
|
"data-test": "f-error-page"
|
|
5203
6010
|
};
|
|
5204
|
-
function _sfc_render$
|
|
6011
|
+
function _sfc_render$I(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5205
6012
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$O, _cache[0] || (_cache[0] = [vue.createElementVNode("h1", null, "Fel", -1), vue.createTextVNode(), vue.createElementVNode("p", null, "Ett fel har uppstått.", -1), vue.createTextVNode(), vue.createElementVNode("a", {
|
|
5206
6013
|
href: "/"
|
|
5207
6014
|
}, "Gå till startsidan", -1)]));
|
|
5208
6015
|
}
|
|
5209
|
-
const FErrorPage = /* @__PURE__ */ _export_sfc(_sfc_main$11, [["render", _sfc_render$
|
|
6016
|
+
const FErrorPage = /* @__PURE__ */ _export_sfc(_sfc_main$11, [["render", _sfc_render$I]]);
|
|
5210
6017
|
const _sfc_main$10 = vue.defineComponent({
|
|
5211
6018
|
name: "FErrorHandlingApp",
|
|
5212
6019
|
props: {
|
|
@@ -5236,7 +6043,7 @@ const _sfc_main$10 = vue.defineComponent({
|
|
|
5236
6043
|
});
|
|
5237
6044
|
}
|
|
5238
6045
|
});
|
|
5239
|
-
function _sfc_render$
|
|
6046
|
+
function _sfc_render$H(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5240
6047
|
return vue.openBlock(), vue.createElementBlock("div", null, [_ctx.hasError ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.errorComponent), {
|
|
5241
6048
|
key: 0,
|
|
5242
6049
|
payload: _ctx.payload
|
|
@@ -5246,7 +6053,7 @@ function _sfc_render$M(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5246
6053
|
key: 2
|
|
5247
6054
|
})]);
|
|
5248
6055
|
}
|
|
5249
|
-
const FErrorHandlingApp = /* @__PURE__ */ _export_sfc(_sfc_main$10, [["render", _sfc_render$
|
|
6056
|
+
const FErrorHandlingApp = /* @__PURE__ */ _export_sfc(_sfc_main$10, [["render", _sfc_render$H]]);
|
|
5250
6057
|
function isMonthBefore(date2, minDate) {
|
|
5251
6058
|
return Boolean(minDate && date2.isBefore(minDate.startOfMonth()));
|
|
5252
6059
|
}
|
|
@@ -5415,7 +6222,7 @@ const _hoisted_5$j = ["aria-disabled", "aria-live"];
|
|
|
5415
6222
|
const _hoisted_6$f = {
|
|
5416
6223
|
class: "sr-only"
|
|
5417
6224
|
};
|
|
5418
|
-
function _sfc_render$
|
|
6225
|
+
function _sfc_render$G(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5419
6226
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
5420
6227
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$N, [vue.createElementVNode("div", _hoisted_2$z, vue.toDisplayString(_ctx.currentText), 1), _cache[4] || (_cache[4] = vue.createTextVNode()), vue.createElementVNode("button", {
|
|
5421
6228
|
ref: "previousButton",
|
|
@@ -5439,7 +6246,7 @@ function _sfc_render$L(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5439
6246
|
name: "arrow-right"
|
|
5440
6247
|
}, null, 8, ["class"])], 8, _hoisted_5$j)]);
|
|
5441
6248
|
}
|
|
5442
|
-
const ICalendarNavbar = /* @__PURE__ */ _export_sfc(_sfc_main$$, [["render", _sfc_render$
|
|
6249
|
+
const ICalendarNavbar = /* @__PURE__ */ _export_sfc(_sfc_main$$, [["render", _sfc_render$G]]);
|
|
5443
6250
|
function getDayStartOffset(days) {
|
|
5444
6251
|
return days[0].weekDay - 1;
|
|
5445
6252
|
}
|
|
@@ -5533,23 +6340,26 @@ const _hoisted_3$r = {
|
|
|
5533
6340
|
};
|
|
5534
6341
|
const _hoisted_4$n = ["title"];
|
|
5535
6342
|
const _hoisted_5$i = {
|
|
6343
|
+
key: 1
|
|
6344
|
+
};
|
|
6345
|
+
const _hoisted_6$e = {
|
|
5536
6346
|
key: 0,
|
|
5537
6347
|
class: "calendar-month__cell calendar-month__cell--week-number",
|
|
5538
6348
|
"aria-hidden": "true"
|
|
5539
6349
|
};
|
|
5540
|
-
const _hoisted_6$e = ["colspan"];
|
|
5541
6350
|
const _hoisted_7$c = ["colspan"];
|
|
5542
|
-
const _hoisted_8$7 =
|
|
6351
|
+
const _hoisted_8$7 = ["colspan"];
|
|
6352
|
+
const _hoisted_9$5 = {
|
|
5543
6353
|
key: 0,
|
|
5544
6354
|
"aria-hidden": "true"
|
|
5545
6355
|
};
|
|
5546
|
-
const
|
|
5547
|
-
const
|
|
6356
|
+
const _hoisted_10$3 = ["colspan"];
|
|
6357
|
+
const _hoisted_11$2 = {
|
|
5548
6358
|
key: 1,
|
|
5549
6359
|
"aria-hidden": "true"
|
|
5550
6360
|
};
|
|
5551
|
-
const
|
|
5552
|
-
function _sfc_render$
|
|
6361
|
+
const _hoisted_12$2 = ["colspan"];
|
|
6362
|
+
function _sfc_render$F(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5553
6363
|
return vue.openBlock(), vue.createElementBlock("table", {
|
|
5554
6364
|
class: "calendar-month__table",
|
|
5555
6365
|
role: "grid",
|
|
@@ -5574,19 +6384,20 @@ function _sfc_render$K(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5574
6384
|
return vue.openBlock(), vue.createElementBlock("th", {
|
|
5575
6385
|
key: weekday.name,
|
|
5576
6386
|
scope: "col",
|
|
6387
|
+
"aria-hidden": "true",
|
|
5577
6388
|
class: "calendar-month__header-cell"
|
|
5578
|
-
}, [vue.
|
|
6389
|
+
}, [_ctx.showShortWeekdays ? (vue.openBlock(), vue.createElementBlock("abbr", {
|
|
6390
|
+
key: 0,
|
|
5579
6391
|
title: weekday.name
|
|
5580
|
-
}, vue.toDisplayString(
|
|
6392
|
+
}, vue.toDisplayString(weekday.shortName), 9, _hoisted_4$n)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$i, vue.toDisplayString(weekday.name), 1))]);
|
|
5581
6393
|
}), 128))])]), _cache[23] || (_cache[23] = vue.createTextVNode()), vue.createElementVNode("tbody", null, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.weeks, (week) => {
|
|
5582
6394
|
return vue.openBlock(), vue.createElementBlock("tr", {
|
|
5583
6395
|
key: week.week
|
|
5584
|
-
}, [!_ctx.internalHideWeekNumbers ? (vue.openBlock(), vue.createElementBlock("td",
|
|
6396
|
+
}, [!_ctx.internalHideWeekNumbers ? (vue.openBlock(), vue.createElementBlock("td", _hoisted_6$e, vue.toDisplayString(week.week), 1)) : vue.createCommentVNode("", true), _cache[17] || (_cache[17] = vue.createTextVNode()), _ctx.getDayStartOffset(week.days) ? (vue.openBlock(), vue.createElementBlock("td", {
|
|
5585
6397
|
key: 1,
|
|
5586
6398
|
class: "calendar-month__cell",
|
|
5587
|
-
colspan: _ctx.getDayStartOffset(week.days)
|
|
5588
|
-
|
|
5589
|
-
}, null, 8, _hoisted_6$e)) : vue.createCommentVNode("", true), _cache[18] || (_cache[18] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(week.days, (day) => {
|
|
6399
|
+
colspan: _ctx.getDayStartOffset(week.days)
|
|
6400
|
+
}, null, 8, _hoisted_7$c)) : vue.createCommentVNode("", true), _cache[18] || (_cache[18] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(week.days, (day) => {
|
|
5590
6401
|
return vue.openBlock(), vue.createElementBlock("td", {
|
|
5591
6402
|
key: day.toString(),
|
|
5592
6403
|
class: "calendar-month__cell",
|
|
@@ -5600,18 +6411,18 @@ function _sfc_render$K(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5600
6411
|
class: "calendar-month__cell",
|
|
5601
6412
|
colspan: _ctx.getDayEndOffset(week.days),
|
|
5602
6413
|
"aria-hidden": "true"
|
|
5603
|
-
}, null, 8,
|
|
5604
|
-
}), 128)), _cache[20] || (_cache[20] = vue.createTextVNode()), _ctx.weeks.length < 5 ? (vue.openBlock(), vue.createElementBlock("tr",
|
|
6414
|
+
}, null, 8, _hoisted_8$7)) : vue.createCommentVNode("", true)]);
|
|
6415
|
+
}), 128)), _cache[20] || (_cache[20] = vue.createTextVNode()), _ctx.weeks.length < 5 ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_9$5, [vue.createElementVNode("td", {
|
|
5605
6416
|
class: "calendar-month__cell",
|
|
5606
6417
|
colspan: _ctx.totalCols,
|
|
5607
6418
|
"aria-hidden": "true"
|
|
5608
|
-
}, null, 8,
|
|
6419
|
+
}, null, 8, _hoisted_10$3)])) : vue.createCommentVNode("", true), _cache[21] || (_cache[21] = vue.createTextVNode()), _ctx.weeks.length < 6 ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_11$2, [vue.createElementVNode("td", {
|
|
5609
6420
|
class: "calendar-month__cell",
|
|
5610
6421
|
colspan: _ctx.totalCols,
|
|
5611
6422
|
"aria-hidden": "true"
|
|
5612
|
-
}, null, 8,
|
|
6423
|
+
}, null, 8, _hoisted_12$2)])) : vue.createCommentVNode("", true)])], 40, _hoisted_1$M);
|
|
5613
6424
|
}
|
|
5614
|
-
const ICalendarMonthGrid = /* @__PURE__ */ _export_sfc(_sfc_main$_, [["render", _sfc_render$
|
|
6425
|
+
const ICalendarMonthGrid = /* @__PURE__ */ _export_sfc(_sfc_main$_, [["render", _sfc_render$F]]);
|
|
5615
6426
|
const DayStep = {
|
|
5616
6427
|
ArrowRight: 1,
|
|
5617
6428
|
ArrowLeft: -1,
|
|
@@ -5726,7 +6537,7 @@ const _sfc_main$Z = vue.defineComponent({
|
|
|
5726
6537
|
}
|
|
5727
6538
|
});
|
|
5728
6539
|
const _hoisted_1$L = ["data-date", "tabindex", "onClick", "onKeydown"];
|
|
5729
|
-
function _sfc_render$
|
|
6540
|
+
function _sfc_render$E(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5730
6541
|
const _component_i_calendar_month_grid = vue.resolveComponent("i-calendar-month-grid");
|
|
5731
6542
|
return vue.openBlock(), vue.createBlock(_component_i_calendar_month_grid, {
|
|
5732
6543
|
value: _ctx.modelValue
|
|
@@ -5749,7 +6560,7 @@ function _sfc_render$J(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5749
6560
|
_: 3
|
|
5750
6561
|
}, 8, ["value"]);
|
|
5751
6562
|
}
|
|
5752
|
-
const ICalendarMonth = /* @__PURE__ */ _export_sfc(_sfc_main$Z, [["render", _sfc_render$
|
|
6563
|
+
const ICalendarMonth = /* @__PURE__ */ _export_sfc(_sfc_main$Z, [["render", _sfc_render$E]]);
|
|
5753
6564
|
const _sfc_main$Y = vue.defineComponent({
|
|
5754
6565
|
name: "FCalendar",
|
|
5755
6566
|
components: {
|
|
@@ -5804,7 +6615,7 @@ const _sfc_main$Y = vue.defineComponent({
|
|
|
5804
6615
|
const _hoisted_1$K = {
|
|
5805
6616
|
class: "calendar__wrapper"
|
|
5806
6617
|
};
|
|
5807
|
-
function _sfc_render$
|
|
6618
|
+
function _sfc_render$D(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5808
6619
|
const _component_i_calendar_navbar = vue.resolveComponent("i-calendar-navbar");
|
|
5809
6620
|
const _component_i_calendar_month = vue.resolveComponent("i-calendar-month");
|
|
5810
6621
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$K, [vue.createVNode(_component_i_calendar_navbar, {
|
|
@@ -5830,7 +6641,7 @@ function _sfc_render$I(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
5830
6641
|
_: 3
|
|
5831
6642
|
}, 8, ["model-value", "min-date", "max-date", "tab-date", "onClick", "onUpdate:modelValue"])]);
|
|
5832
6643
|
}
|
|
5833
|
-
const FCalendar = /* @__PURE__ */ _export_sfc(_sfc_main$Y, [["render", _sfc_render$
|
|
6644
|
+
const FCalendar = /* @__PURE__ */ _export_sfc(_sfc_main$Y, [["render", _sfc_render$D]]);
|
|
5834
6645
|
function getCalendarDaySrText(day, enabled, selected, t) {
|
|
5835
6646
|
const parts = [];
|
|
5836
6647
|
if (!enabled) {
|
|
@@ -5920,12 +6731,12 @@ const _hoisted_1$J = {
|
|
|
5920
6731
|
const _hoisted_2$x = {
|
|
5921
6732
|
class: "sr-only"
|
|
5922
6733
|
};
|
|
5923
|
-
function _sfc_render$
|
|
6734
|
+
function _sfc_render$C(_ctx, _cache, $props, $setup, $data, $options) {
|
|
5924
6735
|
return vue.openBlock(), vue.createElementBlock("span", {
|
|
5925
6736
|
class: vue.normalizeClass(_ctx.dayClasses)
|
|
5926
6737
|
}, [vue.createElementVNode("span", _hoisted_1$J, vue.toDisplayString(_ctx.day.day), 1), _cache[0] || (_cache[0] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_2$x, vue.toDisplayString(_ctx.srText), 1)], 2);
|
|
5927
6738
|
}
|
|
5928
|
-
const FCalendarDay = /* @__PURE__ */ _export_sfc(_sfc_main$X, [["render", _sfc_render$
|
|
6739
|
+
const FCalendarDay = /* @__PURE__ */ _export_sfc(_sfc_main$X, [["render", _sfc_render$C]]);
|
|
5929
6740
|
function useEventListener(target, event, callback) {
|
|
5930
6741
|
vue.onMounted(() => {
|
|
5931
6742
|
var _a;
|
|
@@ -5939,10 +6750,10 @@ function useEventListener(target, event, callback) {
|
|
|
5939
6750
|
function useSlotUtils() {
|
|
5940
6751
|
const $slots = vue.useSlots();
|
|
5941
6752
|
return {
|
|
5942
|
-
hasSlot(
|
|
6753
|
+
hasSlot(...args) {
|
|
5943
6754
|
return hasSlot({
|
|
5944
6755
|
$slots
|
|
5945
|
-
},
|
|
6756
|
+
}, ...args);
|
|
5946
6757
|
}
|
|
5947
6758
|
};
|
|
5948
6759
|
}
|
|
@@ -6102,7 +6913,7 @@ const _sfc_main$V = vue.defineComponent({
|
|
|
6102
6913
|
}
|
|
6103
6914
|
}
|
|
6104
6915
|
});
|
|
6105
|
-
function _sfc_render$
|
|
6916
|
+
function _sfc_render$B(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6106
6917
|
return vue.openBlock(), vue.createBlock(vue.Transition, {
|
|
6107
6918
|
onEnter: _ctx.enter,
|
|
6108
6919
|
onAfterEnter: _ctx.afterEnter,
|
|
@@ -6114,7 +6925,7 @@ function _sfc_render$G(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6114
6925
|
_: 3
|
|
6115
6926
|
}, 8, ["onEnter", "onAfterEnter", "onLeave"]);
|
|
6116
6927
|
}
|
|
6117
|
-
const FExpand = /* @__PURE__ */ _export_sfc(_sfc_main$V, [["render", _sfc_render$
|
|
6928
|
+
const FExpand = /* @__PURE__ */ _export_sfc(_sfc_main$V, [["render", _sfc_render$B]]);
|
|
6118
6929
|
function offset(page, el) {
|
|
6119
6930
|
const rect = el.getBoundingClientRect();
|
|
6120
6931
|
return {
|
|
@@ -6680,7 +7491,7 @@ const _sfc_main$U = vue.defineComponent({
|
|
|
6680
7491
|
}
|
|
6681
7492
|
}
|
|
6682
7493
|
});
|
|
6683
|
-
function _sfc_render$
|
|
7494
|
+
function _sfc_render$A(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6684
7495
|
return _ctx.isOpen ? (vue.openBlock(), vue.createBlock(vue.Teleport, {
|
|
6685
7496
|
key: 0,
|
|
6686
7497
|
to: _ctx.teleportTarget,
|
|
@@ -6701,7 +7512,7 @@ function _sfc_render$F(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6701
7512
|
placement: _ctx.placement
|
|
6702
7513
|
})))], 544)], 16)], 8, ["to", "disabled"])) : vue.createCommentVNode("", true);
|
|
6703
7514
|
}
|
|
6704
|
-
const IPopup = /* @__PURE__ */ _export_sfc(_sfc_main$U, [["render", _sfc_render$
|
|
7515
|
+
const IPopup = /* @__PURE__ */ _export_sfc(_sfc_main$U, [["render", _sfc_render$A]]);
|
|
6705
7516
|
function computeArrowOffset(placement, inputIconRect, wrapperRect) {
|
|
6706
7517
|
switch (placement) {
|
|
6707
7518
|
case Placement.A: {
|
|
@@ -6816,6 +7627,9 @@ const _sfc_main$T = vue.defineComponent({
|
|
|
6816
7627
|
},
|
|
6817
7628
|
errorStyle() {
|
|
6818
7629
|
return `--i-popup-error-offset: ${this.arrowOffset}px`;
|
|
7630
|
+
},
|
|
7631
|
+
teleportTarget() {
|
|
7632
|
+
return config.teleportTarget;
|
|
6819
7633
|
}
|
|
6820
7634
|
},
|
|
6821
7635
|
watch: {
|
|
@@ -6904,11 +7718,11 @@ const _hoisted_1$H = {
|
|
|
6904
7718
|
ref: "wrapper",
|
|
6905
7719
|
class: "popup-error__wrapper"
|
|
6906
7720
|
};
|
|
6907
|
-
function _sfc_render$
|
|
7721
|
+
function _sfc_render$z(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6908
7722
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
6909
7723
|
return _ctx.isOpen ? (vue.openBlock(), vue.createBlock(vue.Teleport, {
|
|
6910
7724
|
key: 0,
|
|
6911
|
-
to:
|
|
7725
|
+
to: _ctx.teleportTarget,
|
|
6912
7726
|
disabled: _ctx.teleportDisabled
|
|
6913
7727
|
}, [vue.createElementVNode("div", {
|
|
6914
7728
|
ref: "popup",
|
|
@@ -6926,9 +7740,9 @@ function _sfc_render$E(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6926
7740
|
}, [vue.createVNode(_component_f_icon, {
|
|
6927
7741
|
name: "close",
|
|
6928
7742
|
class: "button__icon"
|
|
6929
|
-
})])], 6)], 512)], 2)], 8, ["disabled"])) : vue.createCommentVNode("", true);
|
|
7743
|
+
})])], 6)], 512)], 2)], 8, ["to", "disabled"])) : vue.createCommentVNode("", true);
|
|
6930
7744
|
}
|
|
6931
|
-
const IPopupError = /* @__PURE__ */ _export_sfc(_sfc_main$T, [["render", _sfc_render$
|
|
7745
|
+
const IPopupError = /* @__PURE__ */ _export_sfc(_sfc_main$T, [["render", _sfc_render$z]]);
|
|
6932
7746
|
function numItems(itemHeight, availableHeight, verticalSpacing) {
|
|
6933
7747
|
const itemsFit = Math.floor((availableHeight - verticalSpacing) / itemHeight);
|
|
6934
7748
|
return Math.min(itemsFit, 7);
|
|
@@ -7459,7 +8273,7 @@ const _hoisted_5$h = {
|
|
|
7459
8273
|
key: 0,
|
|
7460
8274
|
class: "sr-only"
|
|
7461
8275
|
};
|
|
7462
|
-
function _sfc_render$
|
|
8276
|
+
function _sfc_render$y(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7463
8277
|
const _component_i_popup = vue.resolveComponent("i-popup");
|
|
7464
8278
|
return vue.openBlock(), vue.createBlock(_component_i_popup, {
|
|
7465
8279
|
class: "ipopupmenu",
|
|
@@ -7495,7 +8309,7 @@ function _sfc_render$D(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
7495
8309
|
_: 1
|
|
7496
8310
|
}, 8, ["is-open", "anchor", "focus-element", "onKeyup", "onKeydown"]);
|
|
7497
8311
|
}
|
|
7498
|
-
const IPopupMenu = /* @__PURE__ */ _export_sfc(_sfc_main$R, [["render", _sfc_render$
|
|
8312
|
+
const IPopupMenu = /* @__PURE__ */ _export_sfc(_sfc_main$R, [["render", _sfc_render$y]]);
|
|
7499
8313
|
const ANIMATION_DURATION = 500;
|
|
7500
8314
|
const NO_CSS_CLASSES = "";
|
|
7501
8315
|
const CLOSED_CSS_CLASS_OPACITY = "animate-expand animate-expand--opacity";
|
|
@@ -7698,13 +8512,13 @@ const _hoisted_1$E = {
|
|
|
7698
8512
|
ref: "content",
|
|
7699
8513
|
"data-test": "animation-content"
|
|
7700
8514
|
};
|
|
7701
|
-
function _sfc_render$
|
|
8515
|
+
function _sfc_render$x(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7702
8516
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
7703
8517
|
class: vue.normalizeClass(_ctx.animationClasses),
|
|
7704
8518
|
style: vue.normalizeStyle(_ctx.heightStyle)
|
|
7705
8519
|
}, [_ctx.shouldVIf ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", _hoisted_1$E, [vue.renderSlot(_ctx.$slots, "default")], 512)), [[vue.vShow, _ctx.shouldVShow]]) : vue.createCommentVNode("", true)], 6);
|
|
7706
8520
|
}
|
|
7707
|
-
const IAnimateExpand = /* @__PURE__ */ _export_sfc(_sfc_main$Q, [["render", _sfc_render$
|
|
8521
|
+
const IAnimateExpand = /* @__PURE__ */ _export_sfc(_sfc_main$Q, [["render", _sfc_render$x]]);
|
|
7708
8522
|
const _sfc_main$P = vue.defineComponent({
|
|
7709
8523
|
name: "ISkipLink",
|
|
7710
8524
|
mixins: [TranslationMixin],
|
|
@@ -7720,13 +8534,13 @@ const _sfc_main$P = vue.defineComponent({
|
|
|
7720
8534
|
}
|
|
7721
8535
|
});
|
|
7722
8536
|
const _hoisted_1$D = ["href"];
|
|
7723
|
-
function _sfc_render$
|
|
8537
|
+
function _sfc_render$w(_ctx, _cache, $props, $setup, $data, $options) {
|
|
7724
8538
|
return vue.openBlock(), vue.createElementBlock("a", {
|
|
7725
8539
|
class: "iskiplink",
|
|
7726
8540
|
href: _ctx.href
|
|
7727
8541
|
}, [vue.renderSlot(_ctx.$slots, "default", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.$t("fkui.skip-link.text", "Gå direkt till innehåll")), 1)])], 8, _hoisted_1$D);
|
|
7728
8542
|
}
|
|
7729
|
-
const ISkipLink = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["render", _sfc_render$
|
|
8543
|
+
const ISkipLink = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["render", _sfc_render$w]]);
|
|
7730
8544
|
function filterOptions(options, filter2, selectMode) {
|
|
7731
8545
|
if (logic.isEmpty(filter2) || selectMode) {
|
|
7732
8546
|
return options;
|
|
@@ -8344,7 +9158,7 @@ const _hoisted_5$g = {
|
|
|
8344
9158
|
const _hoisted_6$d = {
|
|
8345
9159
|
class: "tooltip__footer"
|
|
8346
9160
|
};
|
|
8347
|
-
function _sfc_render$
|
|
9161
|
+
function _sfc_render$v(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8348
9162
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
8349
9163
|
return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [(vue.openBlock(), vue.createBlock(vue.Teleport, {
|
|
8350
9164
|
disabled: _ctx.iconTarget === null,
|
|
@@ -8377,7 +9191,7 @@ function _sfc_render$A(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8377
9191
|
name: "close"
|
|
8378
9192
|
})])])])) : vue.createCommentVNode("", true)], 16)], 64);
|
|
8379
9193
|
}
|
|
8380
|
-
const FTooltip = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["render", _sfc_render$
|
|
9194
|
+
const FTooltip = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["render", _sfc_render$v]]);
|
|
8381
9195
|
function* labelClasses(options) {
|
|
8382
9196
|
const {
|
|
8383
9197
|
labelClass
|
|
@@ -8678,7 +9492,7 @@ const _hoisted_9$4 = {
|
|
|
8678
9492
|
key: 0,
|
|
8679
9493
|
class: "label__message label__message--error"
|
|
8680
9494
|
};
|
|
8681
|
-
function _sfc_render$
|
|
9495
|
+
function _sfc_render$u(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8682
9496
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
8683
9497
|
return vue.openBlock(), vue.createElementBlock("fieldset", {
|
|
8684
9498
|
id: _ctx.id,
|
|
@@ -8715,7 +9529,7 @@ function _sfc_render$z(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8715
9529
|
class: vue.normalizeClass(_ctx.groupContentClass)
|
|
8716
9530
|
}, [vue.renderSlot(_ctx.$slots, "default")], 2)], 42, _hoisted_1$z);
|
|
8717
9531
|
}
|
|
8718
|
-
const FFieldset = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["render", _sfc_render$
|
|
9532
|
+
const FFieldset = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["render", _sfc_render$u]]);
|
|
8719
9533
|
const anyType$1 = [String, Object, Array, Number, Date, Boolean];
|
|
8720
9534
|
const _sfc_main$K = vue.defineComponent({
|
|
8721
9535
|
name: "FCheckboxField",
|
|
@@ -8913,7 +9727,7 @@ const _hoisted_4$i = {
|
|
|
8913
9727
|
key: 0,
|
|
8914
9728
|
class: "checkbox__details"
|
|
8915
9729
|
};
|
|
8916
|
-
function _sfc_render$
|
|
9730
|
+
function _sfc_render$t(_ctx, _cache, $props, $setup, $data, $options) {
|
|
8917
9731
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
8918
9732
|
class: vue.normalizeClass(["checkbox", _ctx.disabledClass]),
|
|
8919
9733
|
onValidity: _cache[2] || (_cache[2] = (...args) => _ctx.onValidity && _ctx.onValidity(...args))
|
|
@@ -8943,7 +9757,38 @@ function _sfc_render$y(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
8943
9757
|
_: 3
|
|
8944
9758
|
}, 8, ["onEnter", "onAfterEnter", "onLeave"])) : vue.createCommentVNode("", true)], 64)) : vue.createCommentVNode("", true)], 10, _hoisted_2$q)], 34);
|
|
8945
9759
|
}
|
|
8946
|
-
const FCheckboxField = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render$
|
|
9760
|
+
const FCheckboxField = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render$t]]);
|
|
9761
|
+
var es_iterator_some = {};
|
|
9762
|
+
var hasRequiredEs_iterator_some;
|
|
9763
|
+
function requireEs_iterator_some() {
|
|
9764
|
+
if (hasRequiredEs_iterator_some) return es_iterator_some;
|
|
9765
|
+
hasRequiredEs_iterator_some = 1;
|
|
9766
|
+
var $ = require_export();
|
|
9767
|
+
var iterate2 = requireIterate();
|
|
9768
|
+
var aCallable2 = requireACallable();
|
|
9769
|
+
var anObject2 = requireAnObject();
|
|
9770
|
+
var getIteratorDirect2 = requireGetIteratorDirect();
|
|
9771
|
+
$({
|
|
9772
|
+
target: "Iterator",
|
|
9773
|
+
proto: true,
|
|
9774
|
+
real: true
|
|
9775
|
+
}, {
|
|
9776
|
+
some: function some(predicate) {
|
|
9777
|
+
anObject2(this);
|
|
9778
|
+
aCallable2(predicate);
|
|
9779
|
+
var record = getIteratorDirect2(this);
|
|
9780
|
+
var counter = 0;
|
|
9781
|
+
return iterate2(record, function(value, stop) {
|
|
9782
|
+
if (predicate(value, counter++)) return stop();
|
|
9783
|
+
}, {
|
|
9784
|
+
IS_RECORD: true,
|
|
9785
|
+
INTERRUPTED: true
|
|
9786
|
+
}).stopped;
|
|
9787
|
+
}
|
|
9788
|
+
});
|
|
9789
|
+
return es_iterator_some;
|
|
9790
|
+
}
|
|
9791
|
+
requireEs_iterator_some();
|
|
8947
9792
|
function isContextMenuTextItem(value) {
|
|
8948
9793
|
return typeof value.key === "string";
|
|
8949
9794
|
}
|
|
@@ -9168,7 +10013,7 @@ const _hoisted_5$e = {
|
|
|
9168
10013
|
key: 0,
|
|
9169
10014
|
class: "contextmenu__separator"
|
|
9170
10015
|
};
|
|
9171
|
-
function _sfc_render$
|
|
10016
|
+
function _sfc_render$s(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9172
10017
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
9173
10018
|
const _component_i_popup = vue.resolveComponent("i-popup");
|
|
9174
10019
|
return vue.openBlock(), vue.createBlock(_component_i_popup, {
|
|
@@ -9208,7 +10053,7 @@ function _sfc_render$x(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9208
10053
|
_: 1
|
|
9209
10054
|
}, 8, ["is-open", "anchor", "focus-element"]);
|
|
9210
10055
|
}
|
|
9211
|
-
const FContextMenu = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["render", _sfc_render$
|
|
10056
|
+
const FContextMenu = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["render", _sfc_render$s]]);
|
|
9212
10057
|
var Operation = /* @__PURE__ */ ((Operation2) => {
|
|
9213
10058
|
Operation2[Operation2["ADD"] = 0] = "ADD";
|
|
9214
10059
|
Operation2[Operation2["DELETE"] = 1] = "DELETE";
|
|
@@ -9216,30 +10061,14 @@ var Operation = /* @__PURE__ */ ((Operation2) => {
|
|
|
9216
10061
|
Operation2[Operation2["NONE"] = 3] = "NONE";
|
|
9217
10062
|
return Operation2;
|
|
9218
10063
|
})(Operation || {});
|
|
9219
|
-
const
|
|
9220
|
-
|
|
9221
|
-
|
|
9222
|
-
|
|
9223
|
-
|
|
9224
|
-
|
|
9225
|
-
|
|
9226
|
-
|
|
9227
|
-
provide() {
|
|
9228
|
-
return {
|
|
9229
|
-
delete: (item) => {
|
|
9230
|
-
this.deleteItem(item);
|
|
9231
|
-
},
|
|
9232
|
-
modify: (item) => {
|
|
9233
|
-
this.updateItem(item);
|
|
9234
|
-
},
|
|
9235
|
-
registerCallbackAfterItemAdd: (callback) => {
|
|
9236
|
-
this.callbackAfterItemAdd = callback;
|
|
9237
|
-
},
|
|
9238
|
-
registerCallbackBeforeItemDelete: (callback) => {
|
|
9239
|
-
this.callbackBeforeItemDelete = callback;
|
|
9240
|
-
}
|
|
9241
|
-
};
|
|
9242
|
-
},
|
|
10064
|
+
const _hoisted_1$w = {
|
|
10065
|
+
class: "crud-dataset"
|
|
10066
|
+
};
|
|
10067
|
+
const _hoisted_2$o = {
|
|
10068
|
+
key: 0
|
|
10069
|
+
};
|
|
10070
|
+
const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
|
|
10071
|
+
__name: "FCrudDataset",
|
|
9243
10072
|
props: {
|
|
9244
10073
|
/**
|
|
9245
10074
|
* The list of items that should be deleted, modified or added to.
|
|
@@ -9323,25 +10152,24 @@ const _sfc_main$I = vue.defineComponent({
|
|
|
9323
10152
|
}
|
|
9324
10153
|
},
|
|
9325
10154
|
emits: ["created", "deleted", "updated", "update:modelValue"],
|
|
9326
|
-
|
|
9327
|
-
|
|
9328
|
-
|
|
9329
|
-
|
|
9330
|
-
|
|
9331
|
-
|
|
9332
|
-
|
|
9333
|
-
|
|
9334
|
-
|
|
9335
|
-
|
|
9336
|
-
|
|
9337
|
-
|
|
9338
|
-
|
|
9339
|
-
|
|
9340
|
-
|
|
9341
|
-
|
|
9342
|
-
|
|
9343
|
-
const
|
|
9344
|
-
const cancelButtonText = this.operation === Operation.ADD ? this.$t("fkui.crud-dataset.modal.cancel.add", "Avbryt") : this.$t("fkui.crud-dataset.modal.cancel.modify", "Avbryt");
|
|
10155
|
+
setup(__props, {
|
|
10156
|
+
emit: __emit
|
|
10157
|
+
}) {
|
|
10158
|
+
const $t2 = useTranslate();
|
|
10159
|
+
const slots = vue.useSlots();
|
|
10160
|
+
const result = vue.ref([]);
|
|
10161
|
+
const operation = vue.ref(Operation.NONE);
|
|
10162
|
+
const item = vue.ref(null);
|
|
10163
|
+
const originalItemToUpdate = vue.ref(null);
|
|
10164
|
+
const isFormModalOpen = vue.ref(false);
|
|
10165
|
+
const isConfirmModalOpen = vue.ref(false);
|
|
10166
|
+
const callbackAfterItemAdd = vue.ref(() => ({}));
|
|
10167
|
+
const callbackBeforeItemDelete = vue.ref(() => ({}));
|
|
10168
|
+
const props = __props;
|
|
10169
|
+
const emit = __emit;
|
|
10170
|
+
const formModalButtons = vue.computed(() => {
|
|
10171
|
+
const confirmButtonText = operation.value === Operation.ADD ? $t2("fkui.crud-dataset.modal.confirm.add", "Lägg till") : $t2("fkui.crud-dataset.modal.confirm.modify", "Spara");
|
|
10172
|
+
const cancelButtonText = operation.value === Operation.ADD ? $t2("fkui.crud-dataset.modal.cancel.add", "Avbryt") : $t2("fkui.crud-dataset.modal.cancel.modify", "Avbryt");
|
|
9345
10173
|
return [{
|
|
9346
10174
|
label: confirmButtonText,
|
|
9347
10175
|
event: "confirm",
|
|
@@ -9353,175 +10181,168 @@ const _sfc_main$I = vue.defineComponent({
|
|
|
9353
10181
|
type: "secondary",
|
|
9354
10182
|
submitButton: false
|
|
9355
10183
|
}];
|
|
9356
|
-
}
|
|
9357
|
-
confirmDeleteButtons() {
|
|
10184
|
+
});
|
|
10185
|
+
const confirmDeleteButtons = vue.computed(() => {
|
|
9358
10186
|
return [{
|
|
9359
|
-
label:
|
|
10187
|
+
label: $t2("fkui.crud-dataset.modal.confirm.delete", "Ja, ta bort"),
|
|
9360
10188
|
type: "primary",
|
|
9361
10189
|
event: "confirm"
|
|
9362
10190
|
}, {
|
|
9363
|
-
label:
|
|
10191
|
+
label: $t2("fkui.crud-dataset.modal.cancel.delete", "Nej, avbryt"),
|
|
9364
10192
|
type: "secondary"
|
|
9365
10193
|
}];
|
|
9366
|
-
}
|
|
9367
|
-
hasAddSlot() {
|
|
9368
|
-
return Boolean(
|
|
9369
|
-
}
|
|
9370
|
-
hasDeleteSlot() {
|
|
9371
|
-
return Boolean(
|
|
9372
|
-
}
|
|
9373
|
-
hasModifySlot() {
|
|
9374
|
-
return Boolean(
|
|
9375
|
-
}
|
|
9376
|
-
formModalHeader() {
|
|
9377
|
-
return
|
|
9378
|
-
}
|
|
9379
|
-
|
|
9380
|
-
|
|
9381
|
-
|
|
9382
|
-
|
|
9383
|
-
|
|
9384
|
-
|
|
9385
|
-
|
|
10194
|
+
});
|
|
10195
|
+
const hasAddSlot = vue.computed(() => {
|
|
10196
|
+
return Boolean(slots.add);
|
|
10197
|
+
});
|
|
10198
|
+
const hasDeleteSlot = vue.computed(() => {
|
|
10199
|
+
return Boolean(slots.delete);
|
|
10200
|
+
});
|
|
10201
|
+
const hasModifySlot = vue.computed(() => {
|
|
10202
|
+
return Boolean(slots.modify);
|
|
10203
|
+
});
|
|
10204
|
+
const formModalHeader = vue.computed(() => {
|
|
10205
|
+
return operation.value === Operation.ADD ? props.addNewModalHeader : props.modifyModalHeader;
|
|
10206
|
+
});
|
|
10207
|
+
vue.provide("delete", deleteItem);
|
|
10208
|
+
vue.provide("modify", updateItem);
|
|
10209
|
+
vue.provide("registerCallbackAfterItemAdd", (callback) => {
|
|
10210
|
+
callbackAfterItemAdd.value = callback;
|
|
10211
|
+
});
|
|
10212
|
+
vue.provide("registerCallbackBeforeItemDelete", (callback) => {
|
|
10213
|
+
callbackBeforeItemDelete.value = callback;
|
|
10214
|
+
});
|
|
10215
|
+
vue.onMounted(() => {
|
|
10216
|
+
if (!hasAddSlot.value && !hasDeleteSlot.value && !hasModifySlot.value) {
|
|
10217
|
+
throw Error("At least one template of the following must be defined. #add, #delete or #modify");
|
|
9386
10218
|
}
|
|
9387
|
-
}
|
|
9388
|
-
|
|
9389
|
-
|
|
9390
|
-
|
|
9391
|
-
|
|
9392
|
-
|
|
9393
|
-
|
|
9394
|
-
|
|
9395
|
-
|
|
9396
|
-
if (!this.hasAddSlot) {
|
|
10219
|
+
});
|
|
10220
|
+
vue.watch(() => props.modelValue, (data) => {
|
|
10221
|
+
result.value = [...data];
|
|
10222
|
+
}, {
|
|
10223
|
+
immediate: true,
|
|
10224
|
+
deep: true
|
|
10225
|
+
});
|
|
10226
|
+
function createItem() {
|
|
10227
|
+
if (!hasAddSlot.value) {
|
|
9397
10228
|
throw Error("No template is defined for #add");
|
|
9398
10229
|
}
|
|
9399
|
-
|
|
9400
|
-
|
|
9401
|
-
|
|
9402
|
-
}
|
|
9403
|
-
deleteItem(
|
|
9404
|
-
if (!
|
|
10230
|
+
operation.value = Operation.ADD;
|
|
10231
|
+
item.value = props.beforeCreate ? props.beforeCreate() : {};
|
|
10232
|
+
isFormModalOpen.value = true;
|
|
10233
|
+
}
|
|
10234
|
+
function deleteItem(current) {
|
|
10235
|
+
if (!hasDeleteSlot.value) {
|
|
9405
10236
|
throw Error("No template is defined for #delete");
|
|
9406
10237
|
}
|
|
9407
|
-
|
|
9408
|
-
|
|
9409
|
-
|
|
9410
|
-
}
|
|
9411
|
-
onDeleteConfirm() {
|
|
9412
|
-
if (!
|
|
10238
|
+
operation.value = Operation.DELETE;
|
|
10239
|
+
item.value = current;
|
|
10240
|
+
isConfirmModalOpen.value = true;
|
|
10241
|
+
}
|
|
10242
|
+
function onDeleteConfirm() {
|
|
10243
|
+
if (!item.value) {
|
|
9413
10244
|
return;
|
|
9414
10245
|
}
|
|
9415
|
-
|
|
9416
|
-
|
|
9417
|
-
|
|
9418
|
-
|
|
9419
|
-
logic.alertScreenReader(
|
|
10246
|
+
callbackBeforeItemDelete.value(item.value);
|
|
10247
|
+
result.value = result.value.filter((it) => it !== item.value);
|
|
10248
|
+
emit("deleted", item.value);
|
|
10249
|
+
emit("update:modelValue", result.value);
|
|
10250
|
+
logic.alertScreenReader($t2("fkui.crud-dataset.aria-live.delete", "Raden har tagits bort"), {
|
|
9420
10251
|
assertive: true
|
|
9421
10252
|
});
|
|
9422
|
-
}
|
|
9423
|
-
onDeleteClose(e) {
|
|
9424
|
-
|
|
9425
|
-
if (e.reason === "close" &&
|
|
9426
|
-
|
|
10253
|
+
}
|
|
10254
|
+
function onDeleteClose(e) {
|
|
10255
|
+
onModalClose();
|
|
10256
|
+
if (e.reason === "close" && props.onCancel) {
|
|
10257
|
+
props.onCancel();
|
|
9427
10258
|
}
|
|
9428
|
-
}
|
|
9429
|
-
onModalClose() {
|
|
9430
|
-
|
|
9431
|
-
|
|
9432
|
-
}
|
|
9433
|
-
onFormModalSubmit() {
|
|
9434
|
-
if (!
|
|
10259
|
+
}
|
|
10260
|
+
function onModalClose() {
|
|
10261
|
+
isFormModalOpen.value = false;
|
|
10262
|
+
isConfirmModalOpen.value = false;
|
|
10263
|
+
}
|
|
10264
|
+
function onFormModalSubmit() {
|
|
10265
|
+
if (!item.value) {
|
|
9435
10266
|
return;
|
|
9436
10267
|
}
|
|
9437
|
-
if (
|
|
9438
|
-
|
|
9439
|
-
|
|
9440
|
-
|
|
9441
|
-
|
|
9442
|
-
logic.alertScreenReader(
|
|
10268
|
+
if (operation.value === Operation.ADD) {
|
|
10269
|
+
result.value.push(item.value);
|
|
10270
|
+
emit("created", item.value);
|
|
10271
|
+
emit("update:modelValue", result.value);
|
|
10272
|
+
callbackAfterItemAdd.value(item.value);
|
|
10273
|
+
logic.alertScreenReader($t2("fkui.crud-dataset.aria-live.add", "En rad har lagts till"), {
|
|
9443
10274
|
assertive: true
|
|
9444
10275
|
});
|
|
9445
|
-
} else if (
|
|
9446
|
-
if (
|
|
9447
|
-
Object.assign(
|
|
10276
|
+
} else if (operation.value === Operation.MODIFY) {
|
|
10277
|
+
if (originalItemToUpdate.value) {
|
|
10278
|
+
Object.assign(originalItemToUpdate.value, item.value);
|
|
9448
10279
|
} else {
|
|
9449
|
-
|
|
10280
|
+
originalItemToUpdate.value = item.value;
|
|
9450
10281
|
}
|
|
9451
|
-
|
|
9452
|
-
|
|
9453
|
-
logic.alertScreenReader(
|
|
10282
|
+
emit("updated", originalItemToUpdate.value);
|
|
10283
|
+
emit("update:modelValue", result.value);
|
|
10284
|
+
logic.alertScreenReader($t2("fkui.crud-dataset.aria-live.modify", "Raden har ändrats"), {
|
|
9454
10285
|
assertive: true
|
|
9455
10286
|
});
|
|
9456
10287
|
}
|
|
9457
|
-
|
|
9458
|
-
}
|
|
9459
|
-
updateItem(
|
|
9460
|
-
if (!
|
|
10288
|
+
isFormModalOpen.value = false;
|
|
10289
|
+
}
|
|
10290
|
+
function updateItem(current) {
|
|
10291
|
+
if (!hasModifySlot.value) {
|
|
9461
10292
|
throw Error("No template is defined for #modify");
|
|
9462
10293
|
}
|
|
9463
|
-
|
|
9464
|
-
|
|
9465
|
-
|
|
9466
|
-
|
|
10294
|
+
operation.value = Operation.MODIFY;
|
|
10295
|
+
originalItemToUpdate.value = current;
|
|
10296
|
+
item.value = logic.deepClone(current);
|
|
10297
|
+
isFormModalOpen.value = true;
|
|
9467
10298
|
}
|
|
10299
|
+
return (_ctx, _cache) => {
|
|
10300
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$w, [vue.renderSlot(_ctx.$slots, "default"), _cache[5] || (_cache[5] = vue.createTextVNode()), hasAddSlot.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$o, [vue.createElementVNode("button", {
|
|
10301
|
+
"data-test": "f-crud-dataset-add-button",
|
|
10302
|
+
type: "button",
|
|
10303
|
+
class: "button button--tertiary crud-dataset__add-button",
|
|
10304
|
+
onClick: _cache[0] || (_cache[0] = ($event) => createItem())
|
|
10305
|
+
}, [vue.createVNode(vue.unref(FIcon), {
|
|
10306
|
+
class: "button__icon",
|
|
10307
|
+
name: "plus"
|
|
10308
|
+
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "add-button", {}, () => [vue.createTextVNode(vue.toDisplayString(vue.unref($t2)("fkui.crud-dataset.button.add", "Lägg till ny")), 1)])])])) : vue.createCommentVNode("", true), _cache[6] || (_cache[6] = vue.createTextVNode()), vue.createVNode(vue.unref(FFormModal), {
|
|
10309
|
+
"is-open": isFormModalOpen.value,
|
|
10310
|
+
"aria-close-text": vue.unref($t2)("fkui.crud-dataset.modal.close", "Stäng"),
|
|
10311
|
+
buttons: formModalButtons.value,
|
|
10312
|
+
"use-error-list": false,
|
|
10313
|
+
"before-submit": __props.beforeSubmit,
|
|
10314
|
+
"before-validation": __props.beforeValidation,
|
|
10315
|
+
"on-cancel": __props.onCancel,
|
|
10316
|
+
onClose: onModalClose,
|
|
10317
|
+
onCancel: __props.onCancel,
|
|
10318
|
+
onSubmit: onFormModalSubmit
|
|
10319
|
+
}, {
|
|
10320
|
+
header: vue.withCtx(() => [vue.createTextVNode(vue.toDisplayString(formModalHeader.value), 1)]),
|
|
10321
|
+
"input-text-fields": vue.withCtx(() => [operation.value === vue.unref(Operation).ADD ? vue.renderSlot(_ctx.$slots, "add", vue.normalizeProps(vue.mergeProps({
|
|
10322
|
+
key: 0
|
|
10323
|
+
}, {
|
|
10324
|
+
item: item.value
|
|
10325
|
+
}))) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), operation.value === vue.unref(Operation).MODIFY ? vue.renderSlot(_ctx.$slots, "modify", vue.normalizeProps(vue.mergeProps({
|
|
10326
|
+
key: 1
|
|
10327
|
+
}, {
|
|
10328
|
+
item: item.value
|
|
10329
|
+
}))) : vue.createCommentVNode("", true)]),
|
|
10330
|
+
_: 3
|
|
10331
|
+
}, 8, ["is-open", "aria-close-text", "buttons", "before-submit", "before-validation", "on-cancel", "onCancel"]), _cache[7] || (_cache[7] = vue.createTextVNode()), vue.createVNode(vue.unref(FConfirmModal), {
|
|
10332
|
+
"is-open": isConfirmModalOpen.value,
|
|
10333
|
+
buttons: confirmDeleteButtons.value,
|
|
10334
|
+
onConfirm: onDeleteConfirm,
|
|
10335
|
+
onClose: onDeleteClose
|
|
10336
|
+
}, {
|
|
10337
|
+
heading: vue.withCtx(() => [vue.createTextVNode(vue.toDisplayString(__props.deleteModalHeader), 1)]),
|
|
10338
|
+
content: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "delete", vue.normalizeProps(vue.guardReactiveProps({
|
|
10339
|
+
item: item.value
|
|
10340
|
+
})))]),
|
|
10341
|
+
_: 3
|
|
10342
|
+
}, 8, ["is-open", "buttons"])]);
|
|
10343
|
+
};
|
|
9468
10344
|
}
|
|
9469
10345
|
});
|
|
9470
|
-
const _hoisted_1$w = {
|
|
9471
|
-
class: "crud-dataset"
|
|
9472
|
-
};
|
|
9473
|
-
const _hoisted_2$o = {
|
|
9474
|
-
key: 0
|
|
9475
|
-
};
|
|
9476
|
-
function _sfc_render$w(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9477
|
-
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
9478
|
-
const _component_f_form_modal = vue.resolveComponent("f-form-modal");
|
|
9479
|
-
const _component_f_confirm_modal = vue.resolveComponent("f-confirm-modal");
|
|
9480
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$w, [vue.renderSlot(_ctx.$slots, "default"), _cache[5] || (_cache[5] = vue.createTextVNode()), _ctx.hasAddSlot ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$o, [vue.createElementVNode("button", {
|
|
9481
|
-
"data-test": "f-crud-dataset-add-button",
|
|
9482
|
-
type: "button",
|
|
9483
|
-
class: "button button--tertiary crud-dataset__add-button",
|
|
9484
|
-
onClick: _cache[0] || (_cache[0] = ($event) => _ctx.createItem())
|
|
9485
|
-
}, [vue.createVNode(_component_f_icon, {
|
|
9486
|
-
class: "button__icon",
|
|
9487
|
-
name: "plus"
|
|
9488
|
-
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "add-button", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.$t("fkui.crud-dataset.button.add", "Lägg till ny")), 1)])])])) : vue.createCommentVNode("", true), _cache[6] || (_cache[6] = vue.createTextVNode()), vue.createVNode(_component_f_form_modal, {
|
|
9489
|
-
"is-open": _ctx.isFormModalOpen,
|
|
9490
|
-
"aria-close-text": _ctx.$t("fkui.crud-dataset.modal.close", "Stäng"),
|
|
9491
|
-
buttons: _ctx.formModalButtons,
|
|
9492
|
-
"use-error-list": false,
|
|
9493
|
-
"before-submit": _ctx.beforeSubmit,
|
|
9494
|
-
"before-validation": _ctx.beforeValidation,
|
|
9495
|
-
"on-cancel": _ctx.onCancel,
|
|
9496
|
-
onClose: _ctx.onModalClose,
|
|
9497
|
-
onCancel: _ctx.onCancel,
|
|
9498
|
-
onSubmit: _ctx.onFormModalSubmit
|
|
9499
|
-
}, {
|
|
9500
|
-
header: vue.withCtx(() => [vue.createTextVNode(vue.toDisplayString(_ctx.formModalHeader), 1)]),
|
|
9501
|
-
"input-text-fields": vue.withCtx(() => [_ctx.operation === _ctx.Operation.ADD ? vue.renderSlot(_ctx.$slots, "add", vue.normalizeProps(vue.mergeProps({
|
|
9502
|
-
key: 0
|
|
9503
|
-
}, {
|
|
9504
|
-
item: _ctx.item
|
|
9505
|
-
}))) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), _ctx.operation === _ctx.Operation.MODIFY ? vue.renderSlot(_ctx.$slots, "modify", vue.normalizeProps(vue.mergeProps({
|
|
9506
|
-
key: 1
|
|
9507
|
-
}, {
|
|
9508
|
-
item: _ctx.item
|
|
9509
|
-
}))) : vue.createCommentVNode("", true)]),
|
|
9510
|
-
_: 3
|
|
9511
|
-
}, 8, ["is-open", "aria-close-text", "buttons", "before-submit", "before-validation", "on-cancel", "onClose", "onCancel", "onSubmit"]), _cache[7] || (_cache[7] = vue.createTextVNode()), vue.createVNode(_component_f_confirm_modal, {
|
|
9512
|
-
"is-open": _ctx.isConfirmModalOpen,
|
|
9513
|
-
buttons: _ctx.confirmDeleteButtons,
|
|
9514
|
-
onConfirm: _ctx.onDeleteConfirm,
|
|
9515
|
-
onClose: _ctx.onDeleteClose
|
|
9516
|
-
}, {
|
|
9517
|
-
heading: vue.withCtx(() => [vue.createTextVNode(vue.toDisplayString(_ctx.deleteModalHeader), 1)]),
|
|
9518
|
-
content: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "delete", vue.normalizeProps(vue.guardReactiveProps({
|
|
9519
|
-
item: _ctx.item
|
|
9520
|
-
})))]),
|
|
9521
|
-
_: 3
|
|
9522
|
-
}, 8, ["is-open", "buttons", "onConfirm", "onClose"])]);
|
|
9523
|
-
}
|
|
9524
|
-
const FCrudDataset = /* @__PURE__ */ _export_sfc(_sfc_main$I, [["render", _sfc_render$w]]);
|
|
9525
10346
|
function FCrudDatasetInjected() {
|
|
9526
10347
|
return {
|
|
9527
10348
|
delete: vue.inject("delete"),
|
|
@@ -9588,7 +10409,7 @@ const _hoisted_1$v = {
|
|
|
9588
10409
|
key: 1,
|
|
9589
10410
|
class: "sr-only"
|
|
9590
10411
|
};
|
|
9591
|
-
function _sfc_render$
|
|
10412
|
+
function _sfc_render$r(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9592
10413
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
9593
10414
|
return vue.openBlock(), vue.createElementBlock("button", {
|
|
9594
10415
|
type: "button",
|
|
@@ -9602,7 +10423,7 @@ function _sfc_render$v(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9602
10423
|
key: 2
|
|
9603
10424
|
}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.buttonText), 1)]) : vue.createCommentVNode("", true)]);
|
|
9604
10425
|
}
|
|
9605
|
-
const FCrudButton = /* @__PURE__ */ _export_sfc(_sfc_main$H, [["render", _sfc_render$
|
|
10426
|
+
const FCrudButton = /* @__PURE__ */ _export_sfc(_sfc_main$H, [["render", _sfc_render$r]]);
|
|
9606
10427
|
function ActivateItemInjected() {
|
|
9607
10428
|
return {
|
|
9608
10429
|
registerCallbackAfterItemAdd: vue.inject("registerCallbackAfterItemAdd", () => void 0),
|
|
@@ -9827,7 +10648,7 @@ const _sfc_main$G = vue.defineComponent({
|
|
|
9827
10648
|
});
|
|
9828
10649
|
}
|
|
9829
10650
|
});
|
|
9830
|
-
function _sfc_render$
|
|
10651
|
+
function _sfc_render$q(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9831
10652
|
return _ctx.renderColumns && _ctx.visible ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.tagName), vue.mergeProps({
|
|
9832
10653
|
key: 0,
|
|
9833
10654
|
class: _ctx.classes,
|
|
@@ -9839,7 +10660,7 @@ function _sfc_render$u(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9839
10660
|
_: 3
|
|
9840
10661
|
}, 16, ["class", "scope"])) : vue.createCommentVNode("", true);
|
|
9841
10662
|
}
|
|
9842
|
-
const FTableColumn = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["render", _sfc_render$
|
|
10663
|
+
const FTableColumn = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["render", _sfc_render$q]]);
|
|
9843
10664
|
function FSortFilterDatasetInjected() {
|
|
9844
10665
|
return {
|
|
9845
10666
|
sort: vue.inject("sort", () => void 0),
|
|
@@ -9904,7 +10725,7 @@ const _hoisted_7$a = {
|
|
|
9904
10725
|
key: 0,
|
|
9905
10726
|
class: "label__message label__message--error"
|
|
9906
10727
|
};
|
|
9907
|
-
function _sfc_render$
|
|
10728
|
+
function _sfc_render$p(_ctx, _cache, $props, $setup, $data, $options) {
|
|
9908
10729
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
9909
10730
|
return _ctx.$slots.tooltip ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$u, [_ctx.hasDefaultSlot ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$n, [vue.createElementVNode("label", {
|
|
9910
10731
|
class: "label",
|
|
@@ -9931,7 +10752,7 @@ function _sfc_render$t(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
9931
10752
|
name: "error"
|
|
9932
10753
|
}), _cache[4] || (_cache[4] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "error-message")])) : vue.createCommentVNode("", true)], 8, _hoisted_6$b));
|
|
9933
10754
|
}
|
|
9934
|
-
const FLabel = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["render", _sfc_render$
|
|
10755
|
+
const FLabel = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["render", _sfc_render$p]]);
|
|
9935
10756
|
function resolveWidthClass$1(words, inline) {
|
|
9936
10757
|
return inline ? void 0 : words.split(" ").map((word) => `i-width-${word}`).join(" ");
|
|
9937
10758
|
}
|
|
@@ -10067,7 +10888,7 @@ const _sfc_main$E = vue.defineComponent({
|
|
|
10067
10888
|
}
|
|
10068
10889
|
});
|
|
10069
10890
|
const _hoisted_1$t = ["id"];
|
|
10070
|
-
function _sfc_render$
|
|
10891
|
+
function _sfc_render$o(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10071
10892
|
const _component_f_label = vue.resolveComponent("f-label");
|
|
10072
10893
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
10073
10894
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -10114,7 +10935,7 @@ function _sfc_render$s(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10114
10935
|
name: "arrow-down"
|
|
10115
10936
|
})], 2)], 34);
|
|
10116
10937
|
}
|
|
10117
|
-
const FSelectField = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["render", _sfc_render$
|
|
10938
|
+
const FSelectField = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["render", _sfc_render$o]]);
|
|
10118
10939
|
function resolveWidthClass(words, inline) {
|
|
10119
10940
|
return inline ? void 0 : words.split(" ").map((word) => `i-width-${word}`).join(" ");
|
|
10120
10941
|
}
|
|
@@ -10519,7 +11340,7 @@ const _hoisted_7$9 = {
|
|
|
10519
11340
|
key: 3,
|
|
10520
11341
|
class: "text-field__append-inner"
|
|
10521
11342
|
};
|
|
10522
|
-
function _sfc_render$
|
|
11343
|
+
function _sfc_render$n(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10523
11344
|
const _component_f_label = vue.resolveComponent("f-label");
|
|
10524
11345
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
10525
11346
|
const _component_i_popup_error = vue.resolveComponent("i-popup-error");
|
|
@@ -10602,7 +11423,7 @@ function _sfc_render$r(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10602
11423
|
onClose: _ctx.onDropdownClose
|
|
10603
11424
|
}, null, 8, ["id", "is-open", "options", "active-option", "active-option-id", "input-node", "onSelect", "onClose"])) : vue.createCommentVNode("", true)], 2);
|
|
10604
11425
|
}
|
|
10605
|
-
const FTextField = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["render", _sfc_render$
|
|
11426
|
+
const FTextField = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["render", _sfc_render$n]]);
|
|
10606
11427
|
const _sfc_main$C = vue.defineComponent({
|
|
10607
11428
|
name: "FEmailTextField",
|
|
10608
11429
|
components: {
|
|
@@ -10722,7 +11543,7 @@ const _sfc_main$C = vue.defineComponent({
|
|
|
10722
11543
|
const _hoisted_1$r = {
|
|
10723
11544
|
key: 0
|
|
10724
11545
|
};
|
|
10725
|
-
function _sfc_render$
|
|
11546
|
+
function _sfc_render$m(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10726
11547
|
const _component_f_text_field = vue.resolveComponent("f-text-field");
|
|
10727
11548
|
return vue.openBlock(), vue.createElementBlock("div", null, [vue.createVNode(_component_f_text_field, vue.mergeProps({
|
|
10728
11549
|
id: _ctx.id,
|
|
@@ -10752,7 +11573,7 @@ function _sfc_render$q(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10752
11573
|
_: 3
|
|
10753
11574
|
}, 8, ["modelValue", "maxlength", "onPaste"])) : vue.createCommentVNode("", true)]);
|
|
10754
11575
|
}
|
|
10755
|
-
const FEmailTextField = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["render", _sfc_render$
|
|
11576
|
+
const FEmailTextField = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["render", _sfc_render$m]]);
|
|
10756
11577
|
const _sfc_main$B = vue.defineComponent({
|
|
10757
11578
|
name: "FPhoneTextField",
|
|
10758
11579
|
components: {
|
|
@@ -10853,7 +11674,7 @@ const _sfc_main$B = vue.defineComponent({
|
|
|
10853
11674
|
}
|
|
10854
11675
|
}
|
|
10855
11676
|
});
|
|
10856
|
-
function _sfc_render$
|
|
11677
|
+
function _sfc_render$l(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10857
11678
|
const _component_f_text_field = vue.resolveComponent("f-text-field");
|
|
10858
11679
|
return vue.openBlock(), vue.createElementBlock("div", null, [vue.createVNode(_component_f_text_field, vue.mergeProps({
|
|
10859
11680
|
id: _ctx.id,
|
|
@@ -10880,7 +11701,7 @@ function _sfc_render$p(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
10880
11701
|
_: 3
|
|
10881
11702
|
}, 8, ["modelValue", "maxlength"])) : vue.createCommentVNode("", true)]);
|
|
10882
11703
|
}
|
|
10883
|
-
const FPhoneTextField = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["render", _sfc_render$
|
|
11704
|
+
const FPhoneTextField = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["render", _sfc_render$l]]);
|
|
10884
11705
|
const _sfc_main$A = vue.defineComponent({
|
|
10885
11706
|
name: "FCurrencyTextField",
|
|
10886
11707
|
extends: FTextField,
|
|
@@ -10979,7 +11800,7 @@ const _sfc_main$z = vue.defineComponent({
|
|
|
10979
11800
|
const _hoisted_1$q = {
|
|
10980
11801
|
class: "sr-only"
|
|
10981
11802
|
};
|
|
10982
|
-
function _sfc_render$
|
|
11803
|
+
function _sfc_render$k(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10983
11804
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
10984
11805
|
const _component_f_text_field = vue.resolveComponent("f-text-field");
|
|
10985
11806
|
return vue.openBlock(), vue.createElementBlock("div", null, [vue.createVNode(_component_f_text_field, vue.mergeProps({
|
|
@@ -11029,7 +11850,7 @@ function _sfc_render$o(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
11029
11850
|
key: "1"
|
|
11030
11851
|
} : void 0]), 1040, ["id", "maxlength", "model-value", "onChange", "onInput", "onBlur", "onUpdate"])]);
|
|
11031
11852
|
}
|
|
11032
|
-
const FSearchTextField = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["render", _sfc_render$
|
|
11853
|
+
const FSearchTextField = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["render", _sfc_render$k]]);
|
|
11033
11854
|
const _sfc_main$y = vue.defineComponent({
|
|
11034
11855
|
name: "FBankAccountNumberTextField",
|
|
11035
11856
|
extends: FTextField,
|
|
@@ -11425,51 +12246,40 @@ function filter(list, filterAttributes, searchString) {
|
|
|
11425
12246
|
const searchTerms = searchString.split(/\s+/).map((word) => word.toLocaleLowerCase());
|
|
11426
12247
|
return list.filter((item) => includesAllSearchTerms(item, filterAttributes, searchTerms));
|
|
11427
12248
|
}
|
|
11428
|
-
const
|
|
11429
|
-
|
|
11430
|
-
|
|
11431
|
-
|
|
11432
|
-
|
|
11433
|
-
|
|
11434
|
-
|
|
11435
|
-
|
|
11436
|
-
|
|
11437
|
-
|
|
11438
|
-
|
|
11439
|
-
|
|
11440
|
-
|
|
11441
|
-
|
|
11442
|
-
|
|
11443
|
-
|
|
11444
|
-
|
|
11445
|
-
|
|
11446
|
-
|
|
11447
|
-
|
|
11448
|
-
|
|
11449
|
-
|
|
11450
|
-
|
|
11451
|
-
|
|
11452
|
-
|
|
11453
|
-
|
|
11454
|
-
|
|
11455
|
-
|
|
11456
|
-
|
|
11457
|
-
|
|
11458
|
-
|
|
11459
|
-
|
|
11460
|
-
|
|
11461
|
-
|
|
11462
|
-
/**
|
|
11463
|
-
* The data that you wish to sort or filter.
|
|
11464
|
-
*/
|
|
11465
|
-
data: {
|
|
11466
|
-
type: Array,
|
|
11467
|
-
required: true,
|
|
11468
|
-
default: () => []
|
|
11469
|
-
},
|
|
11470
|
-
/**
|
|
11471
|
-
* All the attributes you want to enable sorting for and the corresponding name to display in the dropdown.
|
|
11472
|
-
* Structured as `{attributeName: "Name for dropdown", secondAttributeName: "Name for dropdown"}`
|
|
12249
|
+
const _hoisted_1$p = {
|
|
12250
|
+
class: "sort-filter-dataset"
|
|
12251
|
+
};
|
|
12252
|
+
const _hoisted_2$l = {
|
|
12253
|
+
class: "sort-filter-dataset__search"
|
|
12254
|
+
};
|
|
12255
|
+
const _hoisted_3$h = {
|
|
12256
|
+
class: "sr-only"
|
|
12257
|
+
};
|
|
12258
|
+
const _hoisted_4$e = ["title"];
|
|
12259
|
+
const _hoisted_5$b = {
|
|
12260
|
+
class: "sr-only"
|
|
12261
|
+
};
|
|
12262
|
+
const _hoisted_6$9 = {
|
|
12263
|
+
value: {
|
|
12264
|
+
attribute: "",
|
|
12265
|
+
ascending: false
|
|
12266
|
+
}
|
|
12267
|
+
};
|
|
12268
|
+
const _hoisted_7$8 = ["value"];
|
|
12269
|
+
const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
|
|
12270
|
+
__name: "FSortFilterDataset",
|
|
12271
|
+
props: {
|
|
12272
|
+
/**
|
|
12273
|
+
* The data that you wish to sort or filter.
|
|
12274
|
+
*/
|
|
12275
|
+
data: {
|
|
12276
|
+
type: Array,
|
|
12277
|
+
required: true,
|
|
12278
|
+
default: () => []
|
|
12279
|
+
},
|
|
12280
|
+
/**
|
|
12281
|
+
* All the attributes you want to enable sorting for and the corresponding name to display in the dropdown.
|
|
12282
|
+
* Structured as `{attributeName: "Name for dropdown", secondAttributeName: "Name for dropdown"}`
|
|
11473
12283
|
*/
|
|
11474
12284
|
sortableAttributes: {
|
|
11475
12285
|
type: Object,
|
|
@@ -11506,7 +12316,7 @@ const _sfc_main$p = vue.defineComponent({
|
|
|
11506
12316
|
placeholderFilter: {
|
|
11507
12317
|
type: String,
|
|
11508
12318
|
required: false,
|
|
11509
|
-
default:
|
|
12319
|
+
default: logic.TranslationService.provider.translate("fkui.sort-filter-dataset.placeholder.filter", "Sök")
|
|
11510
12320
|
},
|
|
11511
12321
|
/**
|
|
11512
12322
|
* The order the data will be sorted by if defaultSortAttribute has been set.
|
|
@@ -11518,243 +12328,237 @@ const _sfc_main$p = vue.defineComponent({
|
|
|
11518
12328
|
}
|
|
11519
12329
|
},
|
|
11520
12330
|
emits: ["datasetSorted", "usedSortAttributes"],
|
|
11521
|
-
|
|
11522
|
-
|
|
11523
|
-
|
|
11524
|
-
|
|
11525
|
-
|
|
11526
|
-
|
|
11527
|
-
|
|
11528
|
-
|
|
11529
|
-
|
|
11530
|
-
|
|
11531
|
-
|
|
11532
|
-
|
|
11533
|
-
|
|
11534
|
-
|
|
12331
|
+
setup(__props, {
|
|
12332
|
+
emit: __emit
|
|
12333
|
+
}) {
|
|
12334
|
+
const $t2 = useTranslate();
|
|
12335
|
+
const searchString = vue.ref("");
|
|
12336
|
+
const sortAttribute = vue.ref({
|
|
12337
|
+
attribute: "",
|
|
12338
|
+
name: "",
|
|
12339
|
+
ascendingName: "",
|
|
12340
|
+
ascending: false,
|
|
12341
|
+
id: 0
|
|
12342
|
+
});
|
|
12343
|
+
const sortFilterResult = vue.ref([]);
|
|
12344
|
+
const debouncedFilterResultset = logic.debounce(filterResultset, 250);
|
|
12345
|
+
let tableCallbackOnSort = () => {
|
|
11535
12346
|
};
|
|
11536
|
-
|
|
11537
|
-
|
|
11538
|
-
|
|
11539
|
-
|
|
11540
|
-
|
|
11541
|
-
|
|
12347
|
+
let tableCallbackSortableColumns = () => {
|
|
12348
|
+
};
|
|
12349
|
+
const props = __props;
|
|
12350
|
+
const emit = __emit;
|
|
12351
|
+
const showClearButton = vue.computed(() => {
|
|
12352
|
+
return searchString.value.length > 0;
|
|
12353
|
+
});
|
|
12354
|
+
const sortOrders = vue.computed(() => {
|
|
11542
12355
|
const arr = [];
|
|
11543
12356
|
let id = 0;
|
|
11544
|
-
Object.keys(
|
|
12357
|
+
Object.keys(props.sortableAttributes).forEach((key) => {
|
|
11545
12358
|
arr.push({
|
|
11546
12359
|
attribute: key,
|
|
11547
|
-
name:
|
|
11548
|
-
ascendingName:
|
|
12360
|
+
name: props.sortableAttributes[key],
|
|
12361
|
+
ascendingName: $t2("fkui.sort-filter-dataset.label.ascending", "stigande"),
|
|
11549
12362
|
ascending: true,
|
|
11550
12363
|
id: id++
|
|
11551
12364
|
});
|
|
11552
12365
|
arr.push({
|
|
11553
12366
|
attribute: key,
|
|
11554
|
-
name:
|
|
11555
|
-
ascendingName:
|
|
12367
|
+
name: props.sortableAttributes[key],
|
|
12368
|
+
ascendingName: $t2("fkui.sort-filter-dataset.label.descending", "fallande"),
|
|
11556
12369
|
ascending: false,
|
|
11557
12370
|
id: id++
|
|
11558
12371
|
});
|
|
11559
12372
|
});
|
|
11560
12373
|
return arr;
|
|
11561
|
-
}
|
|
11562
|
-
filterAttributes() {
|
|
11563
|
-
return Object.keys(
|
|
11564
|
-
}
|
|
11565
|
-
|
|
11566
|
-
|
|
11567
|
-
|
|
11568
|
-
|
|
11569
|
-
|
|
11570
|
-
|
|
11571
|
-
|
|
11572
|
-
|
|
11573
|
-
|
|
11574
|
-
|
|
11575
|
-
|
|
12374
|
+
});
|
|
12375
|
+
const filterAttributes = vue.computed(() => {
|
|
12376
|
+
return Object.keys(props.sortableAttributes);
|
|
12377
|
+
});
|
|
12378
|
+
vue.provide("sort", (attribute, ascending) => {
|
|
12379
|
+
const foundAttribute = sortOrders.value.find((item) => {
|
|
12380
|
+
return item.attribute === attribute && item.ascending === ascending;
|
|
12381
|
+
});
|
|
12382
|
+
if (foundAttribute) {
|
|
12383
|
+
sortAttribute.value = foundAttribute;
|
|
12384
|
+
} else {
|
|
12385
|
+
sortAttribute.value = {
|
|
12386
|
+
attribute: "",
|
|
12387
|
+
ascending: false
|
|
12388
|
+
};
|
|
12389
|
+
}
|
|
12390
|
+
sortFilterData();
|
|
12391
|
+
emit("usedSortAttributes", sortAttribute.value);
|
|
12392
|
+
});
|
|
12393
|
+
vue.provide("registerCallbackOnSort", (callback) => {
|
|
12394
|
+
tableCallbackOnSort = callback;
|
|
12395
|
+
});
|
|
12396
|
+
vue.provide("registerCallbackOnMount", (callback) => {
|
|
12397
|
+
tableCallbackSortableColumns = callback;
|
|
12398
|
+
});
|
|
12399
|
+
vue.onMounted(() => {
|
|
12400
|
+
tableCallbackSortableColumns(Object.keys(props.sortableAttributes));
|
|
12401
|
+
});
|
|
12402
|
+
vue.watch(() => props.data, () => {
|
|
12403
|
+
if (props.defaultSortAttribute !== "") {
|
|
12404
|
+
const foundAttribute = sortOrders.value.find((item) => {
|
|
12405
|
+
return item.attribute === props.defaultSortAttribute && item.ascending === props.defaultSortAscending;
|
|
12406
|
+
});
|
|
12407
|
+
if (foundAttribute) {
|
|
12408
|
+
sortAttribute.value = foundAttribute;
|
|
11576
12409
|
}
|
|
11577
|
-
this.sortFilterData();
|
|
11578
12410
|
}
|
|
11579
|
-
|
|
11580
|
-
|
|
11581
|
-
|
|
11582
|
-
|
|
11583
|
-
|
|
11584
|
-
|
|
11585
|
-
|
|
11586
|
-
|
|
11587
|
-
|
|
11588
|
-
sortFilterData() {
|
|
11589
|
-
const filteredData = filter(this.data, this.filterAttributes, this.searchString);
|
|
11590
|
-
if (this.sortAttribute.attribute === "") {
|
|
11591
|
-
this.sortFilterResult = filteredData;
|
|
12411
|
+
sortFilterData();
|
|
12412
|
+
}, {
|
|
12413
|
+
immediate: true,
|
|
12414
|
+
deep: true
|
|
12415
|
+
});
|
|
12416
|
+
function sortFilterData() {
|
|
12417
|
+
const filteredData = filter(props.data, filterAttributes.value, searchString.value);
|
|
12418
|
+
if (sortAttribute.value.attribute === "") {
|
|
12419
|
+
sortFilterResult.value = filteredData;
|
|
11592
12420
|
} else {
|
|
11593
|
-
|
|
12421
|
+
sortFilterResult.value = sort([...filteredData], sortAttribute.value.attribute, sortAttribute.value.ascending);
|
|
11594
12422
|
}
|
|
11595
|
-
|
|
11596
|
-
|
|
12423
|
+
vue.nextTick(() => {
|
|
12424
|
+
tableCallbackOnSort(sortAttribute.value.attribute, sortAttribute.value.ascending);
|
|
11597
12425
|
});
|
|
11598
|
-
|
|
11599
|
-
}
|
|
11600
|
-
onChangeSortAttribute() {
|
|
11601
|
-
|
|
11602
|
-
|
|
11603
|
-
}
|
|
11604
|
-
onSearchInput(event) {
|
|
11605
|
-
|
|
11606
|
-
|
|
11607
|
-
}
|
|
11608
|
-
onClickClearSearch() {
|
|
11609
|
-
|
|
11610
|
-
|
|
11611
|
-
const input =
|
|
12426
|
+
emit("datasetSorted", sortFilterResult.value);
|
|
12427
|
+
}
|
|
12428
|
+
function onChangeSortAttribute() {
|
|
12429
|
+
sortFilterData();
|
|
12430
|
+
emit("usedSortAttributes", sortAttribute.value);
|
|
12431
|
+
}
|
|
12432
|
+
function onSearchInput(event) {
|
|
12433
|
+
searchString.value = event.target.value;
|
|
12434
|
+
debouncedFilterResultset();
|
|
12435
|
+
}
|
|
12436
|
+
function onClickClearSearch() {
|
|
12437
|
+
searchString.value = "";
|
|
12438
|
+
sortFilterData();
|
|
12439
|
+
const input = vue.useTemplateRef("search-field").value;
|
|
11612
12440
|
logic.focus(input);
|
|
11613
|
-
}
|
|
11614
|
-
|
|
11615
|
-
|
|
11616
|
-
|
|
11617
|
-
|
|
11618
|
-
if (this.searchString === "") {
|
|
11619
|
-
logic.alertScreenReader(this.$t("fkui.sort-filter-dataset.aria-live.empty", "Sök redigera Sök tom"));
|
|
12441
|
+
}
|
|
12442
|
+
function filterResultset() {
|
|
12443
|
+
sortFilterData();
|
|
12444
|
+
if (searchString.value === "") {
|
|
12445
|
+
logic.alertScreenReader($t2("fkui.sort-filter-dataset.aria-live.empty", "Sök redigera Sök tom"));
|
|
11620
12446
|
} else {
|
|
11621
|
-
const searchAriaLive =
|
|
11622
|
-
result:
|
|
11623
|
-
search:
|
|
12447
|
+
const searchAriaLive = $t2("fkui.sort-filter-dataset.aria-live.search", `Din sökning på "{{ search }}" gav {{ result }} träffar.`, {
|
|
12448
|
+
result: sortFilterResult.value.length,
|
|
12449
|
+
search: searchString.value
|
|
11624
12450
|
});
|
|
11625
12451
|
logic.alertScreenReader(searchAriaLive);
|
|
11626
12452
|
}
|
|
11627
12453
|
}
|
|
11628
|
-
|
|
11629
|
-
|
|
11630
|
-
const _hoisted_1$p = {
|
|
11631
|
-
class: "sort-filter-dataset"
|
|
11632
|
-
};
|
|
11633
|
-
const _hoisted_2$l = {
|
|
11634
|
-
class: "sort-filter-dataset__search"
|
|
11635
|
-
};
|
|
11636
|
-
const _hoisted_3$h = {
|
|
11637
|
-
class: "sr-only"
|
|
11638
|
-
};
|
|
11639
|
-
const _hoisted_4$e = ["title"];
|
|
11640
|
-
const _hoisted_5$b = {
|
|
11641
|
-
class: "sr-only"
|
|
11642
|
-
};
|
|
11643
|
-
const _hoisted_6$9 = {
|
|
11644
|
-
value: {
|
|
11645
|
-
attribute: "",
|
|
11646
|
-
ascending: false
|
|
11647
|
-
}
|
|
11648
|
-
};
|
|
11649
|
-
const _hoisted_7$8 = ["value"];
|
|
11650
|
-
function _sfc_render$n(_ctx, _cache, $props, $setup, $data, $options) {
|
|
11651
|
-
const _component_i_flex_item = vue.resolveComponent("i-flex-item");
|
|
11652
|
-
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
11653
|
-
const _component_f_text_field = vue.resolveComponent("f-text-field");
|
|
11654
|
-
const _component_f_select_field = vue.resolveComponent("f-select-field");
|
|
11655
|
-
const _component_i_flex = vue.resolveComponent("i-flex");
|
|
11656
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$p, [vue.createVNode(_component_i_flex, {
|
|
11657
|
-
collapse: "",
|
|
11658
|
-
gap: "3x",
|
|
11659
|
-
wrap: ""
|
|
11660
|
-
}, {
|
|
11661
|
-
default: vue.withCtx(() => [vue.createVNode(_component_i_flex_item, {
|
|
11662
|
-
shrink: "",
|
|
11663
|
-
align: "center"
|
|
11664
|
-
}, {
|
|
11665
|
-
default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "header", vue.normalizeProps(vue.guardReactiveProps({
|
|
11666
|
-
slotClass: "sort-filter-dataset__toolbar__header"
|
|
11667
|
-
})))]),
|
|
11668
|
-
_: 3
|
|
11669
|
-
}), _cache[9] || (_cache[9] = vue.createTextVNode()), vue.createVNode(_component_i_flex_item, {
|
|
11670
|
-
grow: ""
|
|
11671
|
-
}, {
|
|
11672
|
-
default: vue.withCtx(() => [vue.createVNode(_component_i_flex, {
|
|
12454
|
+
return (_ctx, _cache) => {
|
|
12455
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$p, [vue.createVNode(vue.unref(IFlex), {
|
|
11673
12456
|
collapse: "",
|
|
11674
|
-
|
|
12457
|
+
gap: "3x",
|
|
12458
|
+
wrap: ""
|
|
11675
12459
|
}, {
|
|
11676
|
-
default: vue.withCtx(() => [
|
|
11677
|
-
key: 0,
|
|
12460
|
+
default: vue.withCtx(() => [vue.createVNode(vue.unref(IFlexItem), {
|
|
11678
12461
|
shrink: "",
|
|
11679
12462
|
align: "center"
|
|
11680
12463
|
}, {
|
|
11681
|
-
default: vue.withCtx(() => [vue.
|
|
11682
|
-
|
|
11683
|
-
|
|
11684
|
-
|
|
11685
|
-
|
|
11686
|
-
|
|
11687
|
-
inline: "",
|
|
11688
|
-
placeholder: _ctx.placeholderFilter,
|
|
11689
|
-
maxlength: "64",
|
|
11690
|
-
onInput: _ctx.onSearchInput
|
|
11691
|
-
}, {
|
|
11692
|
-
default: vue.withCtx(() => [vue.createElementVNode("span", _hoisted_3$h, vue.toDisplayString(_ctx.placeholderFilter), 1)]),
|
|
11693
|
-
_: 1
|
|
11694
|
-
}, 8, ["modelValue", "placeholder", "onInput"]), _cache[5] || (_cache[5] = vue.createTextVNode()), _ctx.showClearButton ? (vue.openBlock(), vue.createElementBlock("button", {
|
|
11695
|
-
key: 0,
|
|
11696
|
-
type: "button",
|
|
11697
|
-
class: "button button--discrete sort-filter-dataset__search__close-icon",
|
|
11698
|
-
title: _ctx.$t("fkui.sort-filter-dataset.clear.filter", "Rensa sökfält"),
|
|
11699
|
-
onClick: _cache[1] || (_cache[1] = (...args) => _ctx.onClickClearSearch && _ctx.onClickClearSearch(...args))
|
|
11700
|
-
}, [vue.createVNode(_component_f_icon, {
|
|
11701
|
-
name: "close"
|
|
11702
|
-
}), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_5$b, vue.toDisplayString(_ctx.$t("fkui.sort-filter-dataset.clear.filter", "Rensa sökfält")), 1)], 8, _hoisted_4$e)) : vue.createCommentVNode("", true)])]),
|
|
11703
|
-
_: 1
|
|
11704
|
-
})) : vue.createCommentVNode("", true), _cache[8] || (_cache[8] = vue.createTextVNode()), _ctx.showSort ? (vue.openBlock(), vue.createBlock(_component_i_flex_item, {
|
|
11705
|
-
key: 1,
|
|
11706
|
-
shrink: "",
|
|
11707
|
-
align: "center"
|
|
12464
|
+
default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "header", vue.normalizeProps(vue.guardReactiveProps({
|
|
12465
|
+
slotClass: "sort-filter-dataset__toolbar__header"
|
|
12466
|
+
})))]),
|
|
12467
|
+
_: 3
|
|
12468
|
+
}), _cache[8] || (_cache[8] = vue.createTextVNode()), vue.createVNode(vue.unref(IFlexItem), {
|
|
12469
|
+
grow: ""
|
|
11708
12470
|
}, {
|
|
11709
|
-
default: vue.withCtx(() => [vue.createVNode(
|
|
11710
|
-
|
|
11711
|
-
|
|
11712
|
-
class: "sort-filter-dataset__sort",
|
|
11713
|
-
inline: "",
|
|
11714
|
-
onChange: _ctx.onChangeSortAttribute
|
|
12471
|
+
default: vue.withCtx(() => [vue.createVNode(vue.unref(IFlex), {
|
|
12472
|
+
collapse: "",
|
|
12473
|
+
float: "right"
|
|
11715
12474
|
}, {
|
|
11716
|
-
|
|
11717
|
-
|
|
11718
|
-
|
|
11719
|
-
|
|
11720
|
-
|
|
11721
|
-
|
|
11722
|
-
|
|
12475
|
+
default: vue.withCtx(() => [__props.showFilter ? (vue.openBlock(), vue.createBlock(vue.unref(IFlexItem), {
|
|
12476
|
+
key: 0,
|
|
12477
|
+
shrink: "",
|
|
12478
|
+
align: "center"
|
|
12479
|
+
}, {
|
|
12480
|
+
default: vue.withCtx(() => [vue.createElementVNode("div", _hoisted_2$l, [vue.createVNode(vue.unref(FIcon), {
|
|
12481
|
+
name: "search",
|
|
12482
|
+
class: "sort-filter-dataset__search__magnify-icon"
|
|
12483
|
+
}), _cache[3] || (_cache[3] = vue.createTextVNode()), vue.createVNode(vue.unref(FTextField), {
|
|
12484
|
+
ref: "search-field",
|
|
12485
|
+
modelValue: searchString.value,
|
|
12486
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchString.value = $event),
|
|
12487
|
+
inline: "",
|
|
12488
|
+
placeholder: __props.placeholderFilter,
|
|
12489
|
+
maxlength: "64",
|
|
12490
|
+
onInput: onSearchInput
|
|
12491
|
+
}, {
|
|
12492
|
+
default: vue.withCtx(() => [vue.createElementVNode("span", _hoisted_3$h, vue.toDisplayString(__props.placeholderFilter), 1)]),
|
|
12493
|
+
_: 1
|
|
12494
|
+
}, 8, ["modelValue", "placeholder"]), _cache[4] || (_cache[4] = vue.createTextVNode()), showClearButton.value ? (vue.openBlock(), vue.createElementBlock("button", {
|
|
12495
|
+
key: 0,
|
|
12496
|
+
type: "button",
|
|
12497
|
+
class: "button button--discrete sort-filter-dataset__search__close-icon",
|
|
12498
|
+
title: vue.unref($t2)("fkui.sort-filter-dataset.clear.filter", "Rensa sökfält"),
|
|
12499
|
+
onClick: onClickClearSearch
|
|
12500
|
+
}, [vue.createVNode(vue.unref(FIcon), {
|
|
12501
|
+
name: "close"
|
|
12502
|
+
}), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createElementVNode("span", _hoisted_5$b, vue.toDisplayString(vue.unref($t2)("fkui.sort-filter-dataset.clear.filter", "Rensa sökfält")), 1)], 8, _hoisted_4$e)) : vue.createCommentVNode("", true)])]),
|
|
12503
|
+
_: 1
|
|
12504
|
+
})) : vue.createCommentVNode("", true), _cache[7] || (_cache[7] = vue.createTextVNode()), __props.showSort ? (vue.openBlock(), vue.createBlock(vue.unref(IFlexItem), {
|
|
12505
|
+
key: 1,
|
|
12506
|
+
shrink: "",
|
|
12507
|
+
align: "center"
|
|
12508
|
+
}, {
|
|
12509
|
+
default: vue.withCtx(() => [vue.createVNode(vue.unref(FSelectField), {
|
|
12510
|
+
modelValue: sortAttribute.value,
|
|
12511
|
+
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => sortAttribute.value = $event),
|
|
12512
|
+
class: "sort-filter-dataset__sort",
|
|
12513
|
+
inline: "",
|
|
12514
|
+
onChange: onChangeSortAttribute
|
|
12515
|
+
}, {
|
|
12516
|
+
label: vue.withCtx(() => [vue.createTextVNode(vue.toDisplayString(vue.unref($t2)("fkui.sort-filter-dataset.label.sort", "Sortera på")), 1)]),
|
|
12517
|
+
default: vue.withCtx(() => [_cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("option", _hoisted_6$9, vue.toDisplayString(vue.unref($t2)("fkui.sort-filter-dataset.label.unsorted", "Välj")), 1), _cache[6] || (_cache[6] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(sortOrders.value, (sortOrder) => {
|
|
12518
|
+
return vue.openBlock(), vue.createElementBlock("option", {
|
|
12519
|
+
key: sortOrder.id,
|
|
12520
|
+
value: sortOrder
|
|
12521
|
+
}, vue.toDisplayString(sortOrder.name) + " (" + vue.toDisplayString(sortOrder.ascendingName) + ")\n ", 9, _hoisted_7$8);
|
|
12522
|
+
}), 128))]),
|
|
12523
|
+
_: 1
|
|
12524
|
+
}, 8, ["modelValue"])]),
|
|
12525
|
+
_: 1
|
|
12526
|
+
})) : vue.createCommentVNode("", true)]),
|
|
11723
12527
|
_: 1
|
|
11724
|
-
}
|
|
12528
|
+
})]),
|
|
11725
12529
|
_: 1
|
|
11726
|
-
})
|
|
11727
|
-
_:
|
|
11728
|
-
})]),
|
|
11729
|
-
|
|
11730
|
-
|
|
11731
|
-
_: 3
|
|
11732
|
-
}), _cache[10] || (_cache[10] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps({
|
|
11733
|
-
sortFilterResult: _ctx.sortFilterResult
|
|
11734
|
-
})))]);
|
|
11735
|
-
}
|
|
11736
|
-
const FSortFilterDataset = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["render", _sfc_render$n]]);
|
|
11737
|
-
const _sfc_main$o = vue.defineComponent({
|
|
11738
|
-
name: "FDataTable",
|
|
11739
|
-
components: {
|
|
11740
|
-
FIcon
|
|
11741
|
-
},
|
|
11742
|
-
mixins: [TranslationMixin],
|
|
11743
|
-
provide() {
|
|
11744
|
-
return {
|
|
11745
|
-
addColumn: (column) => {
|
|
11746
|
-
if (column.type === FTableColumnType.ACTION) {
|
|
11747
|
-
throw new Error("Cannot use action column in FDataTable component");
|
|
11748
|
-
}
|
|
11749
|
-
this.columns = addColumn(this.columns, column);
|
|
11750
|
-
},
|
|
11751
|
-
setVisibilityColumn: (id, visible) => {
|
|
11752
|
-
setVisibilityColumn(this.columns, id, visible);
|
|
11753
|
-
},
|
|
11754
|
-
textFieldTableMode: true
|
|
12530
|
+
})]),
|
|
12531
|
+
_: 3
|
|
12532
|
+
}), _cache[9] || (_cache[9] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps({
|
|
12533
|
+
sortFilterResult: sortFilterResult.value
|
|
12534
|
+
})))]);
|
|
11755
12535
|
};
|
|
12536
|
+
}
|
|
12537
|
+
});
|
|
12538
|
+
const _hoisted_1$o = ["tabindex"];
|
|
12539
|
+
const _hoisted_2$k = {
|
|
12540
|
+
key: 0
|
|
12541
|
+
};
|
|
12542
|
+
const _hoisted_3$g = {
|
|
12543
|
+
class: "table__row"
|
|
12544
|
+
};
|
|
12545
|
+
const _hoisted_4$d = ["innerHTML"];
|
|
12546
|
+
const _hoisted_5$a = {
|
|
12547
|
+
key: 1,
|
|
12548
|
+
class: "table__column__description"
|
|
12549
|
+
};
|
|
12550
|
+
const _hoisted_6$8 = {
|
|
12551
|
+
key: 0
|
|
12552
|
+
};
|
|
12553
|
+
const _hoisted_7$7 = {
|
|
12554
|
+
key: 1
|
|
12555
|
+
};
|
|
12556
|
+
const _hoisted_8$5 = ["colspan"];
|
|
12557
|
+
const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
|
|
12558
|
+
...{
|
|
12559
|
+
inheritAttrs: false
|
|
11756
12560
|
},
|
|
11757
|
-
|
|
12561
|
+
__name: "FDataTable",
|
|
11758
12562
|
props: {
|
|
11759
12563
|
/**
|
|
11760
12564
|
* The rows to be listed.
|
|
@@ -11797,67 +12601,80 @@ const _sfc_main$o = vue.defineComponent({
|
|
|
11797
12601
|
}
|
|
11798
12602
|
}
|
|
11799
12603
|
},
|
|
11800
|
-
setup(
|
|
11801
|
-
|
|
11802
|
-
|
|
11803
|
-
|
|
11804
|
-
|
|
11805
|
-
|
|
11806
|
-
|
|
11807
|
-
|
|
11808
|
-
|
|
11809
|
-
|
|
11810
|
-
|
|
11811
|
-
|
|
12604
|
+
setup(__props) {
|
|
12605
|
+
const $t2 = useTranslate();
|
|
12606
|
+
const {
|
|
12607
|
+
hasSlot: hasSlot2
|
|
12608
|
+
} = useSlotUtils();
|
|
12609
|
+
const {
|
|
12610
|
+
sort: sort2,
|
|
12611
|
+
registerCallbackOnSort,
|
|
12612
|
+
registerCallbackOnMount
|
|
12613
|
+
} = FSortFilterDatasetInjected();
|
|
12614
|
+
const columns = vue.ref([]);
|
|
12615
|
+
const props = __props;
|
|
12616
|
+
const hasCaption = vue.computed(() => {
|
|
12617
|
+
return hasSlot2("caption", {}, {
|
|
11812
12618
|
stripClasses: []
|
|
11813
12619
|
});
|
|
11814
|
-
}
|
|
11815
|
-
tableClasses() {
|
|
12620
|
+
});
|
|
12621
|
+
const tableClasses = vue.computed(() => {
|
|
11816
12622
|
const classes = [];
|
|
11817
|
-
if (
|
|
12623
|
+
if (props.striped) {
|
|
11818
12624
|
classes.push("table--striped");
|
|
11819
12625
|
}
|
|
11820
12626
|
return classes;
|
|
11821
|
-
}
|
|
11822
|
-
isEmpty() {
|
|
11823
|
-
return
|
|
11824
|
-
}
|
|
11825
|
-
visibleColumns() {
|
|
11826
|
-
return
|
|
11827
|
-
}
|
|
11828
|
-
wrapperClasses() {
|
|
11829
|
-
return tableScrollClasses(
|
|
11830
|
-
}
|
|
11831
|
-
tabindex() {
|
|
11832
|
-
return
|
|
11833
|
-
}
|
|
11834
|
-
|
|
11835
|
-
|
|
11836
|
-
|
|
11837
|
-
|
|
11838
|
-
|
|
11839
|
-
|
|
11840
|
-
|
|
11841
|
-
|
|
12627
|
+
});
|
|
12628
|
+
const isEmpty = vue.computed(() => {
|
|
12629
|
+
return props.rows.length === 0;
|
|
12630
|
+
});
|
|
12631
|
+
const visibleColumns = vue.computed(() => {
|
|
12632
|
+
return columns.value.filter((col) => col.visible);
|
|
12633
|
+
});
|
|
12634
|
+
const wrapperClasses = vue.computed(() => {
|
|
12635
|
+
return tableScrollClasses(props.scroll);
|
|
12636
|
+
});
|
|
12637
|
+
const tabindex = vue.computed(() => {
|
|
12638
|
+
return props.scroll !== TableScroll.NONE ? 0 : void 0;
|
|
12639
|
+
});
|
|
12640
|
+
vue.provide("addColumn", (column) => {
|
|
12641
|
+
if (column.type === FTableColumnType.ACTION) {
|
|
12642
|
+
throw new Error("Cannot use action column in FDataTable component");
|
|
12643
|
+
}
|
|
12644
|
+
columns.value = addColumn(columns.value, column);
|
|
12645
|
+
});
|
|
12646
|
+
vue.provide("setVisibilityColumn", (id, visible) => {
|
|
12647
|
+
setVisibilityColumn(columns.value, id, visible);
|
|
12648
|
+
});
|
|
12649
|
+
vue.provide("textFieldTableMode", true);
|
|
12650
|
+
vue.provide("renderColumns", vue.computed(() => {
|
|
12651
|
+
return props.rows.length > 0;
|
|
12652
|
+
}));
|
|
12653
|
+
vue.onMounted(() => {
|
|
12654
|
+
registerCallbackOnSort(callbackOnSort);
|
|
12655
|
+
registerCallbackOnMount(callbackSortableColumns);
|
|
12656
|
+
});
|
|
12657
|
+
function rowKey(item) {
|
|
12658
|
+
const key = item[props.keyAttribute];
|
|
11842
12659
|
if (typeof key === "undefined") {
|
|
11843
|
-
throw new Error(`Key attribute [${
|
|
12660
|
+
throw new Error(`Key attribute [${props.keyAttribute}]' is missing in row`);
|
|
11844
12661
|
}
|
|
11845
12662
|
return String(key);
|
|
11846
|
-
}
|
|
11847
|
-
columnClasses(column) {
|
|
12663
|
+
}
|
|
12664
|
+
function columnClasses(column) {
|
|
11848
12665
|
const classes = ["table__column", `table__column--${column.type}`, column.size];
|
|
11849
12666
|
if (column.sortable) {
|
|
11850
12667
|
classes.push("table__column--sortable");
|
|
11851
12668
|
}
|
|
11852
12669
|
return classes;
|
|
11853
|
-
}
|
|
11854
|
-
|
|
12670
|
+
}
|
|
12671
|
+
function iconClasses2(column) {
|
|
11855
12672
|
return getSortableIconClasses(column);
|
|
11856
|
-
}
|
|
11857
|
-
iconName(column) {
|
|
12673
|
+
}
|
|
12674
|
+
function iconName(column) {
|
|
11858
12675
|
return getSortableIconName(column);
|
|
11859
|
-
}
|
|
11860
|
-
onClickColumnHeader(column) {
|
|
12676
|
+
}
|
|
12677
|
+
function onClickColumnHeader(column) {
|
|
11861
12678
|
if (!column.sortable) {
|
|
11862
12679
|
return;
|
|
11863
12680
|
}
|
|
@@ -11866,81 +12683,60 @@ const _sfc_main$o = vue.defineComponent({
|
|
|
11866
12683
|
columnName = "";
|
|
11867
12684
|
column.sort = FTableColumnSort.UNSORTED;
|
|
11868
12685
|
}
|
|
11869
|
-
|
|
11870
|
-
}
|
|
11871
|
-
callbackOnSort(columnName, ascending) {
|
|
11872
|
-
updateSortOrder(
|
|
11873
|
-
}
|
|
11874
|
-
callbackSortableColumns(columnNames) {
|
|
11875
|
-
setSortableColumns(
|
|
11876
|
-
}
|
|
11877
|
-
escapeNewlines(value) {
|
|
12686
|
+
sort2(columnName, column.sort !== FTableColumnSort.ASCENDING);
|
|
12687
|
+
}
|
|
12688
|
+
function callbackOnSort(columnName, ascending) {
|
|
12689
|
+
updateSortOrder(columns.value, columnName, ascending);
|
|
12690
|
+
}
|
|
12691
|
+
function callbackSortableColumns(columnNames) {
|
|
12692
|
+
setSortableColumns(columns.value, columnNames);
|
|
12693
|
+
}
|
|
12694
|
+
function escapeNewlines(value) {
|
|
11878
12695
|
return value.replace(/\n/g, "<br/>");
|
|
11879
12696
|
}
|
|
12697
|
+
return (_ctx, _cache) => {
|
|
12698
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
12699
|
+
class: vue.normalizeClass(wrapperClasses.value)
|
|
12700
|
+
}, [vue.createElementVNode("table", vue.mergeProps({
|
|
12701
|
+
class: ["table", tableClasses.value],
|
|
12702
|
+
tabindex: tabindex.value
|
|
12703
|
+
}, _ctx.$attrs), [hasCaption.value ? (vue.openBlock(), vue.createElementBlock("caption", _hoisted_2$k, [vue.renderSlot(_ctx.$slots, "caption")])) : vue.createCommentVNode("", true), _cache[4] || (_cache[4] = vue.createTextVNode()), vue.createElementVNode("colgroup", null, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(columns.value, (column) => {
|
|
12704
|
+
return vue.openBlock(), vue.createElementBlock("col", {
|
|
12705
|
+
key: column.id,
|
|
12706
|
+
class: vue.normalizeClass(column.size)
|
|
12707
|
+
}, null, 2);
|
|
12708
|
+
}), 128))]), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("thead", null, [vue.createElementVNode("tr", _hoisted_3$g, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(visibleColumns.value, (column) => {
|
|
12709
|
+
return vue.openBlock(), vue.createElementBlock("th", vue.mergeProps({
|
|
12710
|
+
key: column.id,
|
|
12711
|
+
scope: "col",
|
|
12712
|
+
class: columnClasses(column)
|
|
12713
|
+
}, vue.toHandlers(column.sortable ? {
|
|
12714
|
+
click: () => onClickColumnHeader(column)
|
|
12715
|
+
} : {}, true)), [vue.createElementVNode("span", {
|
|
12716
|
+
innerHTML: escapeNewlines(column.title)
|
|
12717
|
+
}, null, 8, _hoisted_4$d), _cache[0] || (_cache[0] = vue.createTextVNode()), column.sortable ? (vue.openBlock(), vue.createBlock(vue.unref(FIcon), {
|
|
12718
|
+
key: 0,
|
|
12719
|
+
class: vue.normalizeClass(iconClasses2(column)),
|
|
12720
|
+
name: iconName(column)
|
|
12721
|
+
}, null, 8, ["class", "name"])) : vue.createCommentVNode("", true), _cache[1] || (_cache[1] = vue.createTextVNode()), column.description ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$a, vue.toDisplayString(column.description), 1)) : vue.createCommentVNode("", true)], 16);
|
|
12722
|
+
}), 128))])]), _cache[6] || (_cache[6] = vue.createTextVNode()), vue.createElementVNode("tbody", null, [isEmpty.value && columns.value.length === 0 ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_6$8, [vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps({
|
|
12723
|
+
row: {}
|
|
12724
|
+
})))])) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), isEmpty.value ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_7$7, [vue.createElementVNode("td", {
|
|
12725
|
+
class: "table__column table__column--action",
|
|
12726
|
+
colspan: columns.value.length
|
|
12727
|
+
}, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createTextVNode(vue.toDisplayString(vue.unref($t2)("fkui.data-table.empty", "Tabellen är tom")), 1)])], 8, _hoisted_8$5)])) : vue.createCommentVNode("", true), _cache[3] || (_cache[3] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.rows, (row) => {
|
|
12728
|
+
return vue.openBlock(), vue.createElementBlock("tr", {
|
|
12729
|
+
key: rowKey(row),
|
|
12730
|
+
class: "table__row"
|
|
12731
|
+
}, [vue.renderSlot(_ctx.$slots, "default", vue.mergeProps({
|
|
12732
|
+
ref_for: true
|
|
12733
|
+
}, {
|
|
12734
|
+
row
|
|
12735
|
+
}))]);
|
|
12736
|
+
}), 128))])], 16, _hoisted_1$o)], 2);
|
|
12737
|
+
};
|
|
11880
12738
|
}
|
|
11881
12739
|
});
|
|
11882
|
-
const _hoisted_1$o = ["tabindex"];
|
|
11883
|
-
const _hoisted_2$k = {
|
|
11884
|
-
key: 0
|
|
11885
|
-
};
|
|
11886
|
-
const _hoisted_3$g = {
|
|
11887
|
-
class: "table__row"
|
|
11888
|
-
};
|
|
11889
|
-
const _hoisted_4$d = ["innerHTML"];
|
|
11890
|
-
const _hoisted_5$a = {
|
|
11891
|
-
key: 1,
|
|
11892
|
-
class: "table__column__description"
|
|
11893
|
-
};
|
|
11894
|
-
const _hoisted_6$8 = {
|
|
11895
|
-
key: 0
|
|
11896
|
-
};
|
|
11897
|
-
const _hoisted_7$7 = {
|
|
11898
|
-
key: 1
|
|
11899
|
-
};
|
|
11900
|
-
const _hoisted_8$5 = ["colspan"];
|
|
11901
|
-
function _sfc_render$m(_ctx, _cache, $props, $setup, $data, $options) {
|
|
11902
|
-
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
11903
|
-
return vue.openBlock(), vue.createElementBlock("div", {
|
|
11904
|
-
class: vue.normalizeClass(_ctx.wrapperClasses)
|
|
11905
|
-
}, [vue.createElementVNode("table", vue.mergeProps({
|
|
11906
|
-
class: ["table", _ctx.tableClasses],
|
|
11907
|
-
tabindex: _ctx.tabindex
|
|
11908
|
-
}, _ctx.$attrs), [_ctx.hasCaption ? (vue.openBlock(), vue.createElementBlock("caption", _hoisted_2$k, [vue.renderSlot(_ctx.$slots, "caption")])) : vue.createCommentVNode("", true), _cache[4] || (_cache[4] = vue.createTextVNode()), vue.createElementVNode("colgroup", null, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.columns, (column) => {
|
|
11909
|
-
return vue.openBlock(), vue.createElementBlock("col", {
|
|
11910
|
-
key: column.id,
|
|
11911
|
-
class: vue.normalizeClass(column.size)
|
|
11912
|
-
}, null, 2);
|
|
11913
|
-
}), 128))]), _cache[5] || (_cache[5] = vue.createTextVNode()), vue.createElementVNode("thead", null, [vue.createElementVNode("tr", _hoisted_3$g, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.visibleColumns, (column) => {
|
|
11914
|
-
return vue.openBlock(), vue.createElementBlock("th", vue.mergeProps({
|
|
11915
|
-
key: column.id,
|
|
11916
|
-
scope: "col",
|
|
11917
|
-
class: _ctx.columnClasses(column)
|
|
11918
|
-
}, vue.toHandlers(column.sortable ? {
|
|
11919
|
-
click: () => _ctx.onClickColumnHeader(column)
|
|
11920
|
-
} : {}, true)), [vue.createElementVNode("span", {
|
|
11921
|
-
innerHTML: _ctx.escapeNewlines(column.title)
|
|
11922
|
-
}, null, 8, _hoisted_4$d), _cache[0] || (_cache[0] = vue.createTextVNode()), column.sortable ? (vue.openBlock(), vue.createBlock(_component_f_icon, {
|
|
11923
|
-
key: 0,
|
|
11924
|
-
class: vue.normalizeClass(_ctx.iconClasses(column)),
|
|
11925
|
-
name: _ctx.iconName(column)
|
|
11926
|
-
}, null, 8, ["class", "name"])) : vue.createCommentVNode("", true), _cache[1] || (_cache[1] = vue.createTextVNode()), column.description ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$a, vue.toDisplayString(column.description), 1)) : vue.createCommentVNode("", true)], 16);
|
|
11927
|
-
}), 128))])]), _cache[6] || (_cache[6] = vue.createTextVNode()), vue.createElementVNode("tbody", null, [_ctx.isEmpty && _ctx.columns.length === 0 ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_6$8, [vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps({
|
|
11928
|
-
row: {}
|
|
11929
|
-
})))])) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), _ctx.isEmpty ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_7$7, [vue.createElementVNode("td", {
|
|
11930
|
-
class: "table__column table__column--action",
|
|
11931
|
-
colspan: _ctx.columns.length
|
|
11932
|
-
}, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.$t("fkui.data-table.empty", "Tabellen är tom")), 1)])], 8, _hoisted_8$5)])) : vue.createCommentVNode("", true), _cache[3] || (_cache[3] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.rows, (row) => {
|
|
11933
|
-
return vue.openBlock(), vue.createElementBlock("tr", {
|
|
11934
|
-
key: _ctx.rowKey(row),
|
|
11935
|
-
class: "table__row"
|
|
11936
|
-
}, [vue.renderSlot(_ctx.$slots, "default", vue.mergeProps({
|
|
11937
|
-
ref_for: true
|
|
11938
|
-
}, {
|
|
11939
|
-
row
|
|
11940
|
-
}))]);
|
|
11941
|
-
}), 128))])], 16, _hoisted_1$o)], 2);
|
|
11942
|
-
}
|
|
11943
|
-
const FDataTable = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["render", _sfc_render$m]]);
|
|
11944
12740
|
function isDayEnabled(day, config2) {
|
|
11945
12741
|
return passesMinDate(day, config2.minDate) && passesMaxDate(day, config2.maxDate) && passesInvalidDates(day, config2.invalidDates) && passesInvalidWeekdays(day, config2.invalidWeekdays);
|
|
11946
12742
|
}
|
|
@@ -12285,7 +13081,7 @@ const _hoisted_3$f = {
|
|
|
12285
13081
|
const _hoisted_4$c = {
|
|
12286
13082
|
class: "datepicker-field__close"
|
|
12287
13083
|
};
|
|
12288
|
-
function _sfc_render$
|
|
13084
|
+
function _sfc_render$j(_ctx, _cache, $props, $setup, $data, $options) {
|
|
12289
13085
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
12290
13086
|
const _component_f_text_field = vue.resolveComponent("f-text-field");
|
|
12291
13087
|
const _component_f_calendar_day = vue.resolveComponent("f-calendar-day");
|
|
@@ -12355,7 +13151,7 @@ function _sfc_render$l(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
12355
13151
|
"min-date": _ctx.minDate,
|
|
12356
13152
|
"max-date": _ctx.maxDate,
|
|
12357
13153
|
onClick: _ctx.onSelectCalendarDay,
|
|
12358
|
-
onKeyup: vue.withKeys(vue.withModifiers(_ctx.onKeyupEsc, ["stop"]), ["esc"
|
|
13154
|
+
onKeyup: vue.withKeys(vue.withModifiers(_ctx.onKeyupEsc, ["stop"]), ["esc"])
|
|
12359
13155
|
}, {
|
|
12360
13156
|
default: vue.withCtx(({
|
|
12361
13157
|
date: date2,
|
|
@@ -12381,7 +13177,7 @@ function _sfc_render$l(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
12381
13177
|
_: 1
|
|
12382
13178
|
}, 8, ["is-open", "anchor", "inline", "onOpen", "onClose"])], 512);
|
|
12383
13179
|
}
|
|
12384
|
-
const FDatepickerField = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["render", _sfc_render$
|
|
13180
|
+
const FDatepickerField = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["render", _sfc_render$j]]);
|
|
12385
13181
|
function isDialogueTreeEndQuestion(value) {
|
|
12386
13182
|
return Boolean(value.userData);
|
|
12387
13183
|
}
|
|
@@ -12471,7 +13267,7 @@ const _hoisted_2$i = {
|
|
|
12471
13267
|
class: "dialogue-tree__list"
|
|
12472
13268
|
};
|
|
12473
13269
|
const _hoisted_3$e = ["onClick"];
|
|
12474
|
-
function _sfc_render$
|
|
13270
|
+
function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) {
|
|
12475
13271
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
12476
13272
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$m, [_ctx.options.length > 0 ? (vue.openBlock(), vue.createElementBlock("ul", _hoisted_2$i, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.options, (option, index) => {
|
|
12477
13273
|
return vue.openBlock(), vue.createElementBlock("li", {
|
|
@@ -12491,7 +13287,7 @@ function _sfc_render$k(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
12491
13287
|
userData: _ctx.userData
|
|
12492
13288
|
})))]);
|
|
12493
13289
|
}
|
|
12494
|
-
const FDialogueTree = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["render", _sfc_render$
|
|
13290
|
+
const FDialogueTree = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["render", _sfc_render$i]]);
|
|
12495
13291
|
const _sfc_main$l = vue.defineComponent({
|
|
12496
13292
|
name: "FExpandablePanel",
|
|
12497
13293
|
components: {
|
|
@@ -12585,7 +13381,7 @@ const _hoisted_8$4 = {
|
|
|
12585
13381
|
key: 0,
|
|
12586
13382
|
class: "expandable-panel__outside"
|
|
12587
13383
|
};
|
|
12588
|
-
function _sfc_render$
|
|
13384
|
+
function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) {
|
|
12589
13385
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
12590
13386
|
const _component_f_expand = vue.resolveComponent("f-expand");
|
|
12591
13387
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -12622,7 +13418,7 @@ function _sfc_render$j(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
12622
13418
|
_: 3
|
|
12623
13419
|
})], 2);
|
|
12624
13420
|
}
|
|
12625
|
-
const FExpandablePanel = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$
|
|
13421
|
+
const FExpandablePanel = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$h]]);
|
|
12626
13422
|
const _sfc_main$k = vue.defineComponent({
|
|
12627
13423
|
name: "FExpandableParagraph",
|
|
12628
13424
|
components: {
|
|
@@ -12724,7 +13520,7 @@ const _hoisted_7$5 = {
|
|
|
12724
13520
|
key: 0,
|
|
12725
13521
|
class: "expandable-paragraph__separator"
|
|
12726
13522
|
};
|
|
12727
|
-
function _sfc_render$
|
|
13523
|
+
function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) {
|
|
12728
13524
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
12729
13525
|
const _component_f_expand = vue.resolveComponent("f-expand");
|
|
12730
13526
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -12755,7 +13551,7 @@ function _sfc_render$i(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
12755
13551
|
_: 3
|
|
12756
13552
|
})], 2);
|
|
12757
13553
|
}
|
|
12758
|
-
const FExpandableParagraph = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["render", _sfc_render$
|
|
13554
|
+
const FExpandableParagraph = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["render", _sfc_render$g]]);
|
|
12759
13555
|
const DEFAULT_ICON = "file";
|
|
12760
13556
|
const iconMap = {
|
|
12761
13557
|
"image/*": "pic",
|
|
@@ -12863,7 +13659,7 @@ const _hoisted_7$4 = {
|
|
|
12863
13659
|
key: 0,
|
|
12864
13660
|
class: "file-item__change-info"
|
|
12865
13661
|
};
|
|
12866
|
-
function _sfc_render$
|
|
13662
|
+
function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
|
|
12867
13663
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
12868
13664
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$j, [vue.createElementVNode("div", _hoisted_2$f, [vue.createElementVNode("a", vue.mergeProps({
|
|
12869
13665
|
id: _ctx.id,
|
|
@@ -12876,7 +13672,7 @@ function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
12876
13672
|
class: "file-item__separator"
|
|
12877
13673
|
}, null, -1))]);
|
|
12878
13674
|
}
|
|
12879
|
-
const FFileItem = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$
|
|
13675
|
+
const FFileItem = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$f]]);
|
|
12880
13676
|
const _sfc_main$i = vue.defineComponent({
|
|
12881
13677
|
name: "FFileSelector",
|
|
12882
13678
|
components: {
|
|
@@ -12943,7 +13739,7 @@ const _hoisted_1$i = {
|
|
|
12943
13739
|
};
|
|
12944
13740
|
const _hoisted_2$e = ["id", "aria-labelledby", "aria-disabled"];
|
|
12945
13741
|
const _hoisted_3$a = ["id", "for"];
|
|
12946
|
-
function _sfc_render$
|
|
13742
|
+
function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
|
|
12947
13743
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
12948
13744
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$i, [vue.createElementVNode("input", vue.mergeProps({
|
|
12949
13745
|
id: _ctx.id,
|
|
@@ -12964,32 +13760,41 @@ function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
12964
13760
|
name: "paper-clip"
|
|
12965
13761
|
}), _cache[1] || (_cache[1] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default")], 10, _hoisted_3$a)]);
|
|
12966
13762
|
}
|
|
12967
|
-
const FFileSelector = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["render", _sfc_render$
|
|
12968
|
-
const keybindings =
|
|
12969
|
-
|
|
13763
|
+
const FFileSelector = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["render", _sfc_render$e]]);
|
|
13764
|
+
const keybindings = {
|
|
13765
|
+
Up: focusTrAbove,
|
|
13766
|
+
Down: focusTrBelow,
|
|
13767
|
+
ArrowUp: focusTrAbove,
|
|
13768
|
+
ArrowDown: focusTrBelow,
|
|
13769
|
+
" ": activateRow,
|
|
13770
|
+
Spacebar: activateRow
|
|
13771
|
+
};
|
|
13772
|
+
function focusTrAbove(table, current) {
|
|
13773
|
+
const tr = table.tr.value;
|
|
12970
13774
|
if (current > 0) {
|
|
12971
|
-
|
|
13775
|
+
tr[current - 1].focus();
|
|
12972
13776
|
} else {
|
|
12973
|
-
|
|
13777
|
+
tr[tr.length - 1].focus();
|
|
12974
13778
|
}
|
|
12975
13779
|
}
|
|
12976
|
-
function focusTrBelow(current) {
|
|
12977
|
-
|
|
12978
|
-
|
|
13780
|
+
function focusTrBelow(table, current) {
|
|
13781
|
+
const tr = table.tr.value;
|
|
13782
|
+
if (current < tr.length - 1) {
|
|
13783
|
+
tr[current + 1].focus();
|
|
12979
13784
|
} else {
|
|
12980
|
-
|
|
13785
|
+
tr[0].focus();
|
|
12981
13786
|
}
|
|
12982
13787
|
}
|
|
12983
|
-
function activateRow(current) {
|
|
12984
|
-
const row =
|
|
12985
|
-
const element =
|
|
12986
|
-
|
|
13788
|
+
function activateRow(table, current) {
|
|
13789
|
+
const row = table.rows[current];
|
|
13790
|
+
const element = table.tr.value[current];
|
|
13791
|
+
table.activate(row, element);
|
|
12987
13792
|
}
|
|
12988
|
-
function onKeydown(event, current) {
|
|
13793
|
+
function onKeydown(table, event, current) {
|
|
12989
13794
|
const fn2 = keybindings[event.key];
|
|
12990
13795
|
if (fn2) {
|
|
12991
13796
|
event.preventDefault();
|
|
12992
|
-
fn2
|
|
13797
|
+
fn2(table, current);
|
|
12993
13798
|
}
|
|
12994
13799
|
}
|
|
12995
13800
|
function useExpandableTable(expandableAttribute, keyAttribute, describedby, emit, slots) {
|
|
@@ -13053,7 +13858,6 @@ function useExpandableTable(expandableAttribute, keyAttribute, describedby, emit
|
|
|
13053
13858
|
return Boolean(expandableRows(row));
|
|
13054
13859
|
}
|
|
13055
13860
|
return {
|
|
13056
|
-
expandedRows,
|
|
13057
13861
|
isExpandableTable,
|
|
13058
13862
|
hasExpandableSlot,
|
|
13059
13863
|
toggleExpanded,
|
|
@@ -13065,32 +13869,76 @@ function useExpandableTable(expandableAttribute, keyAttribute, describedby, emit
|
|
|
13065
13869
|
hasExpandableContent
|
|
13066
13870
|
};
|
|
13067
13871
|
}
|
|
13068
|
-
|
|
13069
|
-
|
|
13070
|
-
|
|
13071
|
-
|
|
13072
|
-
|
|
13073
|
-
|
|
13074
|
-
|
|
13075
|
-
|
|
13076
|
-
|
|
13077
|
-
|
|
13078
|
-
|
|
13079
|
-
|
|
13080
|
-
|
|
13081
|
-
|
|
13082
|
-
|
|
13083
|
-
|
|
13084
|
-
|
|
13085
|
-
|
|
13086
|
-
|
|
13087
|
-
|
|
13088
|
-
|
|
13089
|
-
|
|
13090
|
-
|
|
13091
|
-
|
|
13872
|
+
const _hoisted_1$h = ["role"];
|
|
13873
|
+
const _hoisted_2$d = {
|
|
13874
|
+
key: 0
|
|
13875
|
+
};
|
|
13876
|
+
const _hoisted_3$9 = {
|
|
13877
|
+
key: 0,
|
|
13878
|
+
class: "table__column--shrink"
|
|
13879
|
+
};
|
|
13880
|
+
const _hoisted_4$8 = {
|
|
13881
|
+
key: 1,
|
|
13882
|
+
class: "table__column--shrink"
|
|
13883
|
+
};
|
|
13884
|
+
const _hoisted_5$6 = {
|
|
13885
|
+
class: "table__row"
|
|
13886
|
+
};
|
|
13887
|
+
const _hoisted_6$4 = {
|
|
13888
|
+
key: 0,
|
|
13889
|
+
scope: "col"
|
|
13890
|
+
};
|
|
13891
|
+
const _hoisted_7$3 = {
|
|
13892
|
+
class: "sr-only"
|
|
13893
|
+
};
|
|
13894
|
+
const _hoisted_8$3 = {
|
|
13895
|
+
key: 1,
|
|
13896
|
+
scope: "col"
|
|
13897
|
+
};
|
|
13898
|
+
const _hoisted_9$3 = {
|
|
13899
|
+
class: "sr-only"
|
|
13900
|
+
};
|
|
13901
|
+
const _hoisted_10$2 = ["innerHTML"];
|
|
13902
|
+
const _hoisted_11$1 = {
|
|
13903
|
+
key: 1,
|
|
13904
|
+
class: "table__column__description"
|
|
13905
|
+
};
|
|
13906
|
+
const _hoisted_12$1 = ["aria-label", "aria-expanded", "aria-level", "aria-describedby", "onKeydown", "onClick"];
|
|
13907
|
+
const _hoisted_13 = {
|
|
13908
|
+
key: 0
|
|
13909
|
+
};
|
|
13910
|
+
const _hoisted_14 = {
|
|
13911
|
+
key: 0,
|
|
13912
|
+
class: "table__expand-icon"
|
|
13913
|
+
};
|
|
13914
|
+
const _hoisted_15 = {
|
|
13915
|
+
key: 1,
|
|
13916
|
+
class: "table__column--selectable"
|
|
13917
|
+
};
|
|
13918
|
+
const _hoisted_16 = {
|
|
13919
|
+
class: "table__input"
|
|
13920
|
+
};
|
|
13921
|
+
const _hoisted_17 = {
|
|
13922
|
+
key: 0,
|
|
13923
|
+
class: "sr-only"
|
|
13924
|
+
};
|
|
13925
|
+
const _hoisted_18 = {
|
|
13926
|
+
key: 0,
|
|
13927
|
+
class: "table__column--placeholder"
|
|
13928
|
+
};
|
|
13929
|
+
const _hoisted_19 = ["colspan"];
|
|
13930
|
+
const _hoisted_20 = {
|
|
13931
|
+
key: 0
|
|
13932
|
+
};
|
|
13933
|
+
const _hoisted_21 = {
|
|
13934
|
+
key: 1
|
|
13935
|
+
};
|
|
13936
|
+
const _hoisted_22 = ["colspan"];
|
|
13937
|
+
const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
|
|
13938
|
+
...{
|
|
13939
|
+
inheritAttrs: false
|
|
13092
13940
|
},
|
|
13093
|
-
|
|
13941
|
+
__name: "FInteractiveTable",
|
|
13094
13942
|
props: {
|
|
13095
13943
|
/**
|
|
13096
13944
|
* The rows to be listed.
|
|
@@ -13187,437 +14035,376 @@ const _sfc_main$h = vue.defineComponent({
|
|
|
13187
14035
|
default: () => void 0
|
|
13188
14036
|
}
|
|
13189
14037
|
},
|
|
13190
|
-
emits: [
|
|
13191
|
-
|
|
13192
|
-
|
|
13193
|
-
|
|
13194
|
-
|
|
13195
|
-
|
|
13196
|
-
|
|
13197
|
-
|
|
13198
|
-
|
|
13199
|
-
|
|
13200
|
-
|
|
13201
|
-
|
|
13202
|
-
|
|
13203
|
-
|
|
13204
|
-
|
|
13205
|
-
|
|
13206
|
-
|
|
13207
|
-
|
|
13208
|
-
|
|
13209
|
-
|
|
13210
|
-
|
|
13211
|
-
|
|
13212
|
-
|
|
13213
|
-
|
|
13214
|
-
|
|
13215
|
-
|
|
13216
|
-
const
|
|
13217
|
-
|
|
13218
|
-
|
|
13219
|
-
|
|
13220
|
-
|
|
13221
|
-
|
|
13222
|
-
|
|
13223
|
-
|
|
13224
|
-
|
|
13225
|
-
|
|
13226
|
-
|
|
13227
|
-
|
|
13228
|
-
|
|
13229
|
-
selectedRows: [],
|
|
13230
|
-
tr: [],
|
|
13231
|
-
tbodyKey: 0
|
|
13232
|
-
};
|
|
13233
|
-
},
|
|
13234
|
-
computed: {
|
|
13235
|
-
hasCaption() {
|
|
13236
|
-
return hasSlot(this, "caption", {}, {
|
|
14038
|
+
emits: ["change", "click", "unselect", "update:modelValue", "update:active", "select", "expand", "collapse"],
|
|
14039
|
+
setup(__props, {
|
|
14040
|
+
emit: __emit
|
|
14041
|
+
}) {
|
|
14042
|
+
const $t2 = useTranslate();
|
|
14043
|
+
const slots = vue.useSlots();
|
|
14044
|
+
const {
|
|
14045
|
+
hasSlot: hasSlot2
|
|
14046
|
+
} = useSlotUtils();
|
|
14047
|
+
const {
|
|
14048
|
+
sort: sort2,
|
|
14049
|
+
registerCallbackOnSort,
|
|
14050
|
+
registerCallbackOnMount
|
|
14051
|
+
} = FSortFilterDatasetInjected();
|
|
14052
|
+
const {
|
|
14053
|
+
registerCallbackAfterItemAdd,
|
|
14054
|
+
registerCallbackBeforeItemDelete
|
|
14055
|
+
} = ActivateItemInjected();
|
|
14056
|
+
const activeRow = vue.ref(void 0);
|
|
14057
|
+
const columns = vue.ref([]);
|
|
14058
|
+
const selectedRows = vue.ref([]);
|
|
14059
|
+
const tr = vue.shallowRef([]);
|
|
14060
|
+
const tbodyKey = vue.ref(0);
|
|
14061
|
+
const props = __props;
|
|
14062
|
+
const emit = __emit;
|
|
14063
|
+
const expandableTable = useExpandableTable(props.expandableAttribute, props.keyAttribute, props.expandableDescribedby, emit, slots);
|
|
14064
|
+
const {
|
|
14065
|
+
isExpandableTable,
|
|
14066
|
+
hasExpandableSlot,
|
|
14067
|
+
toggleExpanded,
|
|
14068
|
+
isExpanded,
|
|
14069
|
+
rowAriaExpanded,
|
|
14070
|
+
expandableRowClasses,
|
|
14071
|
+
getExpandableDescribedby,
|
|
14072
|
+
expandableRows,
|
|
14073
|
+
hasExpandableContent
|
|
14074
|
+
} = expandableTable;
|
|
14075
|
+
const hasCaption = vue.computed(() => {
|
|
14076
|
+
return hasSlot2("caption", {}, {
|
|
13237
14077
|
stripClasses: []
|
|
13238
14078
|
});
|
|
13239
|
-
}
|
|
13240
|
-
hasCheckboxDescription() {
|
|
13241
|
-
const firstRow =
|
|
13242
|
-
return
|
|
14079
|
+
});
|
|
14080
|
+
const hasCheckboxDescription = vue.computed(() => {
|
|
14081
|
+
const firstRow = props.rows[0];
|
|
14082
|
+
return hasSlot2("checkbox-description", {
|
|
13243
14083
|
row: firstRow
|
|
13244
14084
|
});
|
|
13245
|
-
}
|
|
13246
|
-
isEmpty() {
|
|
13247
|
-
return
|
|
13248
|
-
}
|
|
13249
|
-
visibleColumns() {
|
|
13250
|
-
return
|
|
13251
|
-
}
|
|
13252
|
-
tableClasses() {
|
|
14085
|
+
});
|
|
14086
|
+
const isEmpty = vue.computed(() => {
|
|
14087
|
+
return props.rows.length === 0;
|
|
14088
|
+
});
|
|
14089
|
+
const visibleColumns = vue.computed(() => {
|
|
14090
|
+
return columns.value.filter((col) => col.visible);
|
|
14091
|
+
});
|
|
14092
|
+
const tableClasses = vue.computed(() => {
|
|
13253
14093
|
const classes = [];
|
|
13254
|
-
if (
|
|
14094
|
+
if (props.selectable) {
|
|
13255
14095
|
classes.push("table--selectable");
|
|
13256
14096
|
}
|
|
13257
|
-
if (
|
|
14097
|
+
if (props.hover) {
|
|
13258
14098
|
classes.push("table--hover");
|
|
13259
14099
|
}
|
|
13260
14100
|
return classes;
|
|
13261
|
-
}
|
|
13262
|
-
tableRole() {
|
|
13263
|
-
return
|
|
13264
|
-
}
|
|
13265
|
-
wrapperClasses() {
|
|
13266
|
-
return tableScrollClasses(
|
|
13267
|
-
}
|
|
13268
|
-
nbOfColumns() {
|
|
13269
|
-
let columnCount =
|
|
13270
|
-
if (
|
|
14101
|
+
});
|
|
14102
|
+
const tableRole = vue.computed(() => {
|
|
14103
|
+
return isExpandableTable.value ? "treegrid" : "grid";
|
|
14104
|
+
});
|
|
14105
|
+
const wrapperClasses = vue.computed(() => {
|
|
14106
|
+
return tableScrollClasses(props.scroll);
|
|
14107
|
+
});
|
|
14108
|
+
const nbOfColumns = vue.computed(() => {
|
|
14109
|
+
let columnCount = visibleColumns.value.length;
|
|
14110
|
+
if (props.selectable) {
|
|
13271
14111
|
columnCount++;
|
|
13272
14112
|
}
|
|
13273
|
-
if (
|
|
14113
|
+
if (isExpandableTable.value) {
|
|
13274
14114
|
columnCount++;
|
|
13275
14115
|
}
|
|
13276
14116
|
return columnCount;
|
|
13277
|
-
}
|
|
13278
|
-
|
|
13279
|
-
|
|
13280
|
-
|
|
13281
|
-
|
|
13282
|
-
|
|
13283
|
-
|
|
13284
|
-
|
|
13285
|
-
|
|
13286
|
-
|
|
13287
|
-
|
|
13288
|
-
|
|
13289
|
-
|
|
13290
|
-
|
|
13291
|
-
active: {
|
|
13292
|
-
immediate: true,
|
|
13293
|
-
handler: function() {
|
|
13294
|
-
this.updateActiveRowFromVModel();
|
|
14117
|
+
});
|
|
14118
|
+
vue.provide("addColumn", (column) => {
|
|
14119
|
+
columns.value = addColumn(columns.value, column);
|
|
14120
|
+
});
|
|
14121
|
+
vue.provide("setVisibilityColumn", (id, visible) => {
|
|
14122
|
+
setVisibilityColumn(columns.value, id, visible);
|
|
14123
|
+
});
|
|
14124
|
+
vue.provide("textFieldTableMode", true);
|
|
14125
|
+
vue.provide("renderColumns", vue.computed(() => props.rows.length > 0));
|
|
14126
|
+
vue.watch(() => props.rows, () => {
|
|
14127
|
+
if (props.modelValue) {
|
|
14128
|
+
selectedRows.value = props.modelValue.filter((row) => {
|
|
14129
|
+
return includeItem(row, props.rows, props.keyAttribute);
|
|
14130
|
+
});
|
|
13295
14131
|
}
|
|
13296
|
-
},
|
|
13297
|
-
showActive: {
|
|
14132
|
+
}, {
|
|
13298
14133
|
immediate: true,
|
|
13299
|
-
|
|
13300
|
-
if (!val) {
|
|
13301
|
-
this.tbodyKey ^= 1;
|
|
13302
|
-
}
|
|
13303
|
-
}
|
|
13304
|
-
}
|
|
13305
|
-
},
|
|
13306
|
-
updated() {
|
|
13307
|
-
const tbodyElement = this.$refs["tbodyElement"];
|
|
13308
|
-
const trElements = [].slice.call(tbodyElement.children);
|
|
13309
|
-
const trInteractableElements = trElements.filter((tr) => {
|
|
13310
|
-
return tr.tabIndex === 0;
|
|
14134
|
+
deep: true
|
|
13311
14135
|
});
|
|
13312
|
-
|
|
13313
|
-
|
|
13314
|
-
|
|
13315
|
-
|
|
13316
|
-
|
|
13317
|
-
|
|
13318
|
-
|
|
13319
|
-
|
|
13320
|
-
methods: {
|
|
13321
|
-
isActive(row) {
|
|
13322
|
-
if (!this.showActive) {
|
|
13323
|
-
return false;
|
|
13324
|
-
}
|
|
13325
|
-
return itemEquals(row, this.activeRow, this.keyAttribute);
|
|
13326
|
-
},
|
|
13327
|
-
isSelected(row) {
|
|
13328
|
-
return includeItem(row, this.selectedRows, this.keyAttribute);
|
|
13329
|
-
},
|
|
13330
|
-
onKeydownExpandable(event, index) {
|
|
13331
|
-
if (event.key === " " || event.key === "Spacebar") {
|
|
13332
|
-
event.preventDefault();
|
|
13333
|
-
return;
|
|
13334
|
-
}
|
|
13335
|
-
onKeydown.call(this, event, index);
|
|
13336
|
-
},
|
|
13337
|
-
onKeydown(event, index) {
|
|
13338
|
-
onKeydown.call(this, event, index);
|
|
13339
|
-
},
|
|
13340
|
-
onClick(event, row) {
|
|
13341
|
-
const {
|
|
13342
|
-
target
|
|
13343
|
-
} = event;
|
|
13344
|
-
const isRelevant = ["TD", "TH"].includes(target.nodeName);
|
|
13345
|
-
if (isRelevant) {
|
|
13346
|
-
const parent = target.parentElement;
|
|
13347
|
-
this.activate(row, parent);
|
|
13348
|
-
}
|
|
13349
|
-
},
|
|
13350
|
-
activate(row, tr) {
|
|
13351
|
-
this.$emit("click", row);
|
|
13352
|
-
if (this.isExpandableTable && this.hasExpandableContent(row)) {
|
|
13353
|
-
this.toggleExpanded(row);
|
|
13354
|
-
}
|
|
13355
|
-
if (!itemEquals(row, this.activeRow, this.keyAttribute)) {
|
|
13356
|
-
this.$emit("change", row);
|
|
13357
|
-
this.setActiveRow(row);
|
|
13358
|
-
if (tr) {
|
|
13359
|
-
tr.focus();
|
|
13360
|
-
const td = tr.children[0];
|
|
13361
|
-
forceRepaintIE11(td);
|
|
13362
|
-
}
|
|
14136
|
+
vue.watch(() => props.active, () => {
|
|
14137
|
+
updateActiveRowFromVModel();
|
|
14138
|
+
}, {
|
|
14139
|
+
immediate: true
|
|
14140
|
+
});
|
|
14141
|
+
vue.watch(() => props.showActive, (val) => {
|
|
14142
|
+
if (!val) {
|
|
14143
|
+
tbodyKey.value ^= 1;
|
|
13363
14144
|
}
|
|
13364
|
-
},
|
|
13365
|
-
|
|
13366
|
-
|
|
13367
|
-
|
|
13368
|
-
|
|
14145
|
+
}, {
|
|
14146
|
+
immediate: true
|
|
14147
|
+
});
|
|
14148
|
+
function updateTr(tbodyElement) {
|
|
14149
|
+
const trElements = [].slice.call(tbodyElement.children);
|
|
14150
|
+
const trInteractableElements = trElements.filter((tr2) => {
|
|
14151
|
+
return tr2.tabIndex === 0;
|
|
13369
14152
|
});
|
|
13370
|
-
|
|
13371
|
-
|
|
13372
|
-
|
|
13373
|
-
|
|
13374
|
-
|
|
13375
|
-
|
|
13376
|
-
this.selectedRows.push(row);
|
|
13377
|
-
this.$emit("select", row);
|
|
13378
|
-
}
|
|
13379
|
-
this.updateVModelWithSelectedRows();
|
|
13380
|
-
this.$forceUpdate();
|
|
13381
|
-
},
|
|
13382
|
-
updateVModelWithSelectedRows() {
|
|
13383
|
-
if (this.modelValue) {
|
|
13384
|
-
this.$emit("update:modelValue", this.selectedRows);
|
|
13385
|
-
}
|
|
13386
|
-
},
|
|
13387
|
-
rowClasses(row, index) {
|
|
13388
|
-
const active = this.isActive(row) ? ["table__row--active"] : [];
|
|
13389
|
-
const selected = this.isSelected(row) ? ["table__row--selected"] : [];
|
|
13390
|
-
const isExpandableRow = this.isExpandableTable && this.hasExpandableContent(row);
|
|
13391
|
-
const expandable = isExpandableRow ? ["table__row--expandable"] : [];
|
|
13392
|
-
const expanded = this.isExpanded(row) ? ["table__row--expanded-border"] : [];
|
|
13393
|
-
const striped = this.striped && index % 2 !== 0 ? ["table__row--striped"] : [];
|
|
13394
|
-
return ["table__row", ...active, ...selected, ...striped, ...expandable, ...expanded];
|
|
13395
|
-
},
|
|
13396
|
-
rowKey(row) {
|
|
13397
|
-
const key = row[this.keyAttribute];
|
|
13398
|
-
if (typeof key === "undefined") {
|
|
13399
|
-
throw new Error(`Key attribute [${this.keyAttribute}]' is missing in row`);
|
|
13400
|
-
}
|
|
13401
|
-
return String(key);
|
|
13402
|
-
},
|
|
13403
|
-
columnClasses(column) {
|
|
13404
|
-
const sortable = column.sortable ? ["table__column--sortable"] : [];
|
|
13405
|
-
return ["table__column", `table__column--${column.type}`, ...sortable, column.size];
|
|
13406
|
-
},
|
|
13407
|
-
iconClasses(column) {
|
|
13408
|
-
return getSortableIconClasses(column);
|
|
13409
|
-
},
|
|
13410
|
-
iconName(column) {
|
|
13411
|
-
return getSortableIconName(column);
|
|
13412
|
-
},
|
|
13413
|
-
onClickColumnHeader(column) {
|
|
13414
|
-
if (!column.sortable) {
|
|
13415
|
-
return;
|
|
13416
|
-
}
|
|
13417
|
-
let columnName = column.name;
|
|
13418
|
-
if (column.sort === FTableColumnSort.DESCENDING) {
|
|
13419
|
-
columnName = "";
|
|
13420
|
-
column.sort = FTableColumnSort.UNSORTED;
|
|
13421
|
-
}
|
|
13422
|
-
this.sort(columnName, column.sort !== FTableColumnSort.ASCENDING);
|
|
13423
|
-
},
|
|
13424
|
-
callbackOnSort(columnName, ascending) {
|
|
13425
|
-
updateSortOrder(this.columns, columnName, ascending);
|
|
13426
|
-
},
|
|
13427
|
-
callbackSortableColumns(columnNames) {
|
|
13428
|
-
setSortableColumns(this.columns, columnNames);
|
|
13429
|
-
},
|
|
13430
|
-
callbackAfterItemAdd(item) {
|
|
13431
|
-
this.activate(item, null);
|
|
13432
|
-
},
|
|
13433
|
-
callbackBeforeItemDelete(item) {
|
|
13434
|
-
if (this.rows.length === 0) {
|
|
13435
|
-
return;
|
|
14153
|
+
tr.value = trInteractableElements;
|
|
14154
|
+
}
|
|
14155
|
+
vue.onUpdated(() => {
|
|
14156
|
+
const tbodyElement = vue.useTemplateRef("tbodyElement");
|
|
14157
|
+
if (tbodyElement.value) {
|
|
14158
|
+
updateTr(tbodyElement.value);
|
|
13436
14159
|
}
|
|
13437
|
-
|
|
13438
|
-
|
|
13439
|
-
|
|
13440
|
-
|
|
13441
|
-
|
|
14160
|
+
});
|
|
14161
|
+
vue.onMounted(() => {
|
|
14162
|
+
const tbodyElement = vue.useTemplateRef("tbodyElement");
|
|
14163
|
+
if (tbodyElement.value) {
|
|
14164
|
+
updateTr(tbodyElement.value);
|
|
14165
|
+
}
|
|
14166
|
+
registerCallbackOnSort(callbackOnSort);
|
|
14167
|
+
registerCallbackOnMount(callbackSortableColumns);
|
|
14168
|
+
registerCallbackAfterItemAdd(callbackAfterItemAdd);
|
|
14169
|
+
registerCallbackBeforeItemDelete(callbackBeforeItemDelete);
|
|
14170
|
+
});
|
|
14171
|
+
function forceRepaintIE11(target) {
|
|
14172
|
+
if (navigator.userAgent.includes("Trident")) {
|
|
14173
|
+
target.style.display = "none";
|
|
14174
|
+
target.offsetHeight;
|
|
14175
|
+
target.style.removeProperty("display");
|
|
13442
14176
|
}
|
|
13443
|
-
|
|
13444
|
-
|
|
13445
|
-
|
|
13446
|
-
|
|
13447
|
-
},
|
|
13448
|
-
updateActiveRowFromVModel() {
|
|
13449
|
-
if (this.active === void 0) {
|
|
13450
|
-
this.setActiveRow(void 0);
|
|
13451
|
-
} else if (!itemEquals(this.active, this.activeRow, this.keyAttribute)) {
|
|
13452
|
-
this.setActiveRow(this.active);
|
|
14177
|
+
}
|
|
14178
|
+
function isActive(row) {
|
|
14179
|
+
if (!props.showActive) {
|
|
14180
|
+
return false;
|
|
13453
14181
|
}
|
|
13454
|
-
|
|
13455
|
-
setActiveRow(row) {
|
|
13456
|
-
this.activeRow = row;
|
|
13457
|
-
this.$emit("update:active", this.activeRow);
|
|
14182
|
+
return itemEquals(row, activeRow.value, props.keyAttribute);
|
|
13458
14183
|
}
|
|
13459
|
-
|
|
13460
|
-
|
|
13461
|
-
|
|
13462
|
-
|
|
13463
|
-
|
|
13464
|
-
|
|
13465
|
-
|
|
13466
|
-
|
|
13467
|
-
|
|
13468
|
-
}
|
|
13469
|
-
|
|
13470
|
-
|
|
13471
|
-
|
|
13472
|
-
};
|
|
13473
|
-
const
|
|
13474
|
-
|
|
13475
|
-
|
|
13476
|
-
|
|
13477
|
-
|
|
13478
|
-
|
|
13479
|
-
|
|
13480
|
-
|
|
13481
|
-
|
|
13482
|
-
|
|
13483
|
-
|
|
13484
|
-
|
|
13485
|
-
|
|
13486
|
-
|
|
13487
|
-
|
|
13488
|
-
|
|
13489
|
-
|
|
13490
|
-
|
|
13491
|
-
|
|
13492
|
-
|
|
13493
|
-
|
|
13494
|
-
|
|
13495
|
-
const
|
|
13496
|
-
|
|
13497
|
-
key: 0
|
|
13498
|
-
};
|
|
13499
|
-
const _hoisted_14 = {
|
|
13500
|
-
key: 0,
|
|
13501
|
-
class: "table__expand-icon"
|
|
13502
|
-
};
|
|
13503
|
-
const _hoisted_15 = {
|
|
13504
|
-
key: 1,
|
|
13505
|
-
class: "table__column--selectable"
|
|
13506
|
-
};
|
|
13507
|
-
const _hoisted_16 = {
|
|
13508
|
-
class: "table__input"
|
|
13509
|
-
};
|
|
13510
|
-
const _hoisted_17 = {
|
|
13511
|
-
key: 0,
|
|
13512
|
-
class: "sr-only"
|
|
13513
|
-
};
|
|
13514
|
-
const _hoisted_18 = {
|
|
13515
|
-
key: 0,
|
|
13516
|
-
class: "table__column--placeholder"
|
|
13517
|
-
};
|
|
13518
|
-
const _hoisted_19 = ["colspan"];
|
|
13519
|
-
const _hoisted_20 = {
|
|
13520
|
-
key: 0
|
|
13521
|
-
};
|
|
13522
|
-
const _hoisted_21 = {
|
|
13523
|
-
key: 1
|
|
13524
|
-
};
|
|
13525
|
-
const _hoisted_22 = ["colspan"];
|
|
13526
|
-
function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
|
|
13527
|
-
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
13528
|
-
const _component_f_checkbox_field = vue.resolveComponent("f-checkbox-field");
|
|
13529
|
-
return vue.openBlock(), vue.createElementBlock("div", {
|
|
13530
|
-
class: vue.normalizeClass(_ctx.wrapperClasses)
|
|
13531
|
-
}, [vue.createElementVNode("table", vue.mergeProps({
|
|
13532
|
-
class: ["table", _ctx.tableClasses],
|
|
13533
|
-
role: _ctx.tableRole
|
|
13534
|
-
}, _ctx.$attrs), [_ctx.hasCaption ? (vue.openBlock(), vue.createElementBlock("caption", _hoisted_2$d, [vue.renderSlot(_ctx.$slots, "caption")])) : vue.createCommentVNode("", true), _cache[15] || (_cache[15] = vue.createTextVNode()), vue.createElementVNode("colgroup", null, [_ctx.isExpandableTable ? (vue.openBlock(), vue.createElementBlock("col", _hoisted_3$9)) : vue.createCommentVNode("", true), _cache[0] || (_cache[0] = vue.createTextVNode()), _ctx.selectable ? (vue.openBlock(), vue.createElementBlock("col", _hoisted_4$8)) : vue.createCommentVNode("", true), _cache[1] || (_cache[1] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.columns, (column) => {
|
|
13535
|
-
return vue.openBlock(), vue.createElementBlock("col", {
|
|
13536
|
-
key: column.id,
|
|
13537
|
-
class: vue.normalizeClass(column.size)
|
|
13538
|
-
}, null, 2);
|
|
13539
|
-
}), 128))]), _cache[16] || (_cache[16] = vue.createTextVNode()), vue.createElementVNode("thead", null, [vue.createElementVNode("tr", _hoisted_5$6, [_ctx.isExpandableTable ? (vue.openBlock(), vue.createElementBlock("th", _hoisted_6$4, [vue.createElementVNode("span", _hoisted_7$3, vue.toDisplayString(_ctx.$t("fkui.interactive-table.select", "Expandera")), 1)])) : vue.createCommentVNode("", true), _cache[4] || (_cache[4] = vue.createTextVNode()), _ctx.selectable ? (vue.openBlock(), vue.createElementBlock("th", _hoisted_8$3, [vue.createElementVNode("span", _hoisted_9$3, vue.toDisplayString(_ctx.$t("fkui.interactive-table.select", "Markera")), 1)])) : vue.createCommentVNode("", true), _cache[5] || (_cache[5] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.visibleColumns, (column) => {
|
|
13540
|
-
return vue.openBlock(), vue.createElementBlock("th", vue.mergeProps({
|
|
13541
|
-
key: column.id,
|
|
13542
|
-
scope: "col",
|
|
13543
|
-
class: _ctx.columnClasses(column)
|
|
13544
|
-
}, vue.toHandlers(column.sortable ? {
|
|
13545
|
-
click: () => _ctx.onClickColumnHeader(column)
|
|
13546
|
-
} : {}, true)), [vue.createElementVNode("span", {
|
|
13547
|
-
innerHTML: _ctx.escapeNewlines(column.title)
|
|
13548
|
-
}, null, 8, _hoisted_10$2), _cache[2] || (_cache[2] = vue.createTextVNode()), column.sortable ? (vue.openBlock(), vue.createBlock(_component_f_icon, {
|
|
13549
|
-
key: 0,
|
|
13550
|
-
class: vue.normalizeClass(_ctx.iconClasses(column)),
|
|
13551
|
-
name: _ctx.iconName(column)
|
|
13552
|
-
}, null, 8, ["class", "name"])) : vue.createCommentVNode("", true), _cache[3] || (_cache[3] = vue.createTextVNode()), column.description ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_11$1, vue.toDisplayString(column.description), 1)) : vue.createCommentVNode("", true)], 16);
|
|
13553
|
-
}), 128))])]), _cache[17] || (_cache[17] = vue.createTextVNode()), (vue.openBlock(), vue.createElementBlock("tbody", {
|
|
13554
|
-
ref: "tbodyElement",
|
|
13555
|
-
key: _ctx.tbodyKey
|
|
13556
|
-
}, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.rows, (row, index) => {
|
|
13557
|
-
return vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
13558
|
-
key: _ctx.rowKey(row)
|
|
13559
|
-
}, [vue.createElementVNode("tr", {
|
|
13560
|
-
class: vue.normalizeClass(_ctx.rowClasses(row, index)),
|
|
13561
|
-
"aria-label": _ctx.rowDescription(row),
|
|
13562
|
-
"aria-expanded": _ctx.rowAriaExpanded(row),
|
|
13563
|
-
"aria-level": _ctx.isExpandableTable ? 1 : void 0,
|
|
13564
|
-
"aria-describedby": _ctx.getExpandableDescribedby(row),
|
|
13565
|
-
tabindex: "0",
|
|
13566
|
-
onKeydown: vue.withModifiers(($event) => _ctx.onKeydown($event, index), ["self"]),
|
|
13567
|
-
onClick: ($event) => _ctx.onClick($event, row, index)
|
|
13568
|
-
}, [_ctx.isExpandableTable ? (vue.openBlock(), vue.createElementBlock("td", _hoisted_13, [_ctx.hasExpandableContent(row) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_14, [vue.createVNode(_component_f_icon, {
|
|
13569
|
-
name: "arrow-right",
|
|
13570
|
-
rotate: _ctx.isExpanded(row) ? "270" : "90"
|
|
13571
|
-
}, null, 8, ["rotate"])])) : vue.createCommentVNode("", true)])) : vue.createCommentVNode("", true), _cache[6] || (_cache[6] = vue.createTextVNode()), _ctx.selectable ? (vue.openBlock(), vue.createElementBlock("td", _hoisted_15, [vue.createElementVNode("div", _hoisted_16, [vue.createVNode(_component_f_checkbox_field, {
|
|
13572
|
-
value: true,
|
|
13573
|
-
"model-value": _ctx.isSelected(row),
|
|
13574
|
-
onClick: vue.withModifiers(($event) => _ctx.onSelect(row), ["self"])
|
|
13575
|
-
}, {
|
|
13576
|
-
default: vue.withCtx(() => [_ctx.hasCheckboxDescription ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_17, [vue.renderSlot(_ctx.$slots, "checkbox-description", vue.mergeProps({
|
|
13577
|
-
ref_for: true
|
|
13578
|
-
}, {
|
|
14184
|
+
function isSelected(row) {
|
|
14185
|
+
return includeItem(row, selectedRows.value, props.keyAttribute);
|
|
14186
|
+
}
|
|
14187
|
+
function onKeydown$1(event, index) {
|
|
14188
|
+
onKeydown({
|
|
14189
|
+
rows: props.rows,
|
|
14190
|
+
tr,
|
|
14191
|
+
activate
|
|
14192
|
+
}, event, index);
|
|
14193
|
+
}
|
|
14194
|
+
function onClick(event, row) {
|
|
14195
|
+
const {
|
|
14196
|
+
target
|
|
14197
|
+
} = event;
|
|
14198
|
+
const isRelevant = ["TD", "TH"].includes(target.nodeName);
|
|
14199
|
+
if (isRelevant) {
|
|
14200
|
+
const parent = target.parentElement;
|
|
14201
|
+
activate(row, parent);
|
|
14202
|
+
}
|
|
14203
|
+
}
|
|
14204
|
+
function activate(row, tr2) {
|
|
14205
|
+
emit("click", row);
|
|
14206
|
+
if (isExpandableTable.value && hasExpandableContent(row)) {
|
|
14207
|
+
toggleExpanded(row);
|
|
14208
|
+
}
|
|
14209
|
+
if (!itemEquals(row, activeRow.value, props.keyAttribute)) {
|
|
14210
|
+
emit("change", row);
|
|
14211
|
+
setActiveRow(row);
|
|
14212
|
+
if (tr2) {
|
|
14213
|
+
tr2.focus();
|
|
14214
|
+
const td = tr2.children[0];
|
|
14215
|
+
forceRepaintIE11(td);
|
|
14216
|
+
}
|
|
14217
|
+
}
|
|
14218
|
+
}
|
|
14219
|
+
function rowDescription(row) {
|
|
14220
|
+
const slot = slots["row-description"];
|
|
14221
|
+
return renderSlotText(slot, {
|
|
13579
14222
|
row
|
|
13580
|
-
})
|
|
13581
|
-
|
|
13582
|
-
|
|
13583
|
-
|
|
13584
|
-
|
|
13585
|
-
|
|
13586
|
-
|
|
13587
|
-
|
|
13588
|
-
|
|
13589
|
-
|
|
13590
|
-
|
|
13591
|
-
|
|
13592
|
-
|
|
13593
|
-
|
|
13594
|
-
|
|
13595
|
-
|
|
13596
|
-
|
|
13597
|
-
|
|
13598
|
-
|
|
13599
|
-
|
|
13600
|
-
|
|
13601
|
-
|
|
13602
|
-
|
|
13603
|
-
|
|
13604
|
-
|
|
13605
|
-
|
|
13606
|
-
|
|
13607
|
-
|
|
13608
|
-
|
|
13609
|
-
|
|
13610
|
-
|
|
13611
|
-
|
|
13612
|
-
|
|
13613
|
-
|
|
13614
|
-
|
|
13615
|
-
|
|
13616
|
-
|
|
13617
|
-
|
|
13618
|
-
|
|
13619
|
-
|
|
13620
|
-
|
|
14223
|
+
});
|
|
14224
|
+
}
|
|
14225
|
+
function onSelect(row) {
|
|
14226
|
+
var _a, _b;
|
|
14227
|
+
if (includeItem(row, selectedRows.value, props.keyAttribute)) {
|
|
14228
|
+
selectedRows.value = selectedRows.value.filter((i) => !itemEquals(i, row, props.keyAttribute));
|
|
14229
|
+
emit("unselect", row);
|
|
14230
|
+
} else {
|
|
14231
|
+
selectedRows.value.push(row);
|
|
14232
|
+
emit("select", row);
|
|
14233
|
+
}
|
|
14234
|
+
updateVModelWithSelectedRows();
|
|
14235
|
+
(_b = (_a = vue.getCurrentInstance()) == null ? void 0 : _a.proxy) == null ? void 0 : _b.$forceUpdate();
|
|
14236
|
+
}
|
|
14237
|
+
function updateVModelWithSelectedRows() {
|
|
14238
|
+
if (props.modelValue) {
|
|
14239
|
+
emit("update:modelValue", selectedRows.value);
|
|
14240
|
+
}
|
|
14241
|
+
}
|
|
14242
|
+
function rowClasses(row, index) {
|
|
14243
|
+
const active = isActive(row) ? ["table__row--active"] : [];
|
|
14244
|
+
const selected = isSelected(row) ? ["table__row--selected"] : [];
|
|
14245
|
+
const isExpandableRow = isExpandableTable.value && hasExpandableContent(row);
|
|
14246
|
+
const expandable = isExpandableRow ? ["table__row--expandable"] : [];
|
|
14247
|
+
const expanded = isExpanded(row) ? ["table__row--expanded-border"] : [];
|
|
14248
|
+
const striped = props.striped && index % 2 !== 0 ? ["table__row--striped"] : [];
|
|
14249
|
+
return ["table__row", ...active, ...selected, ...striped, ...expandable, ...expanded];
|
|
14250
|
+
}
|
|
14251
|
+
function rowKey(row) {
|
|
14252
|
+
const key = row[props.keyAttribute];
|
|
14253
|
+
if (typeof key === "undefined") {
|
|
14254
|
+
throw new Error(`Key attribute [${props.keyAttribute}]' is missing in row`);
|
|
14255
|
+
}
|
|
14256
|
+
return String(key);
|
|
14257
|
+
}
|
|
14258
|
+
function columnClasses(column) {
|
|
14259
|
+
const sortable = column.sortable ? ["table__column--sortable"] : [];
|
|
14260
|
+
return ["table__column", `table__column--${column.type}`, ...sortable, column.size];
|
|
14261
|
+
}
|
|
14262
|
+
function iconClasses2(column) {
|
|
14263
|
+
return getSortableIconClasses(column);
|
|
14264
|
+
}
|
|
14265
|
+
function iconName(column) {
|
|
14266
|
+
return getSortableIconName(column);
|
|
14267
|
+
}
|
|
14268
|
+
function onClickColumnHeader(column) {
|
|
14269
|
+
if (!column.sortable) {
|
|
14270
|
+
return;
|
|
14271
|
+
}
|
|
14272
|
+
let columnName = column.name;
|
|
14273
|
+
if (column.sort === FTableColumnSort.DESCENDING) {
|
|
14274
|
+
columnName = "";
|
|
14275
|
+
column.sort = FTableColumnSort.UNSORTED;
|
|
14276
|
+
}
|
|
14277
|
+
sort2(columnName, column.sort !== FTableColumnSort.ASCENDING);
|
|
14278
|
+
}
|
|
14279
|
+
function callbackOnSort(columnName, ascending) {
|
|
14280
|
+
updateSortOrder(columns.value, columnName, ascending);
|
|
14281
|
+
}
|
|
14282
|
+
function callbackSortableColumns(columnNames) {
|
|
14283
|
+
setSortableColumns(columns.value, columnNames);
|
|
14284
|
+
}
|
|
14285
|
+
function callbackAfterItemAdd(item) {
|
|
14286
|
+
activate(item, null);
|
|
14287
|
+
}
|
|
14288
|
+
function callbackBeforeItemDelete(item) {
|
|
14289
|
+
if (props.rows.length === 0) {
|
|
14290
|
+
return;
|
|
14291
|
+
}
|
|
14292
|
+
let targetIndex = props.rows.indexOf(item) - 1;
|
|
14293
|
+
if (targetIndex < 0 && props.rows.length > 1) {
|
|
14294
|
+
targetIndex = 1;
|
|
14295
|
+
} else if (targetIndex < 0) {
|
|
14296
|
+
targetIndex = 0;
|
|
14297
|
+
}
|
|
14298
|
+
activate(props.rows[targetIndex], tr.value[targetIndex]);
|
|
14299
|
+
}
|
|
14300
|
+
function escapeNewlines(value) {
|
|
14301
|
+
return value.replace(/\n/g, "<br/>");
|
|
14302
|
+
}
|
|
14303
|
+
function updateActiveRowFromVModel() {
|
|
14304
|
+
if (props.active === void 0) {
|
|
14305
|
+
setActiveRow(void 0);
|
|
14306
|
+
} else if (!itemEquals(props.active, activeRow.value, props.keyAttribute)) {
|
|
14307
|
+
setActiveRow(props.active);
|
|
14308
|
+
}
|
|
14309
|
+
}
|
|
14310
|
+
function setActiveRow(row) {
|
|
14311
|
+
activeRow.value = row;
|
|
14312
|
+
emit("update:active", activeRow.value);
|
|
14313
|
+
}
|
|
14314
|
+
return (_ctx, _cache) => {
|
|
14315
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
14316
|
+
class: vue.normalizeClass(wrapperClasses.value)
|
|
14317
|
+
}, [vue.createCommentVNode("", true), _cache[18] || (_cache[18] = vue.createTextVNode()), vue.createElementVNode("table", vue.mergeProps({
|
|
14318
|
+
class: ["table", tableClasses.value],
|
|
14319
|
+
role: tableRole.value
|
|
14320
|
+
}, _ctx.$attrs), [hasCaption.value ? (vue.openBlock(), vue.createElementBlock("caption", _hoisted_2$d, [vue.renderSlot(_ctx.$slots, "caption")])) : vue.createCommentVNode("", true), _cache[15] || (_cache[15] = vue.createTextVNode()), vue.createElementVNode("colgroup", null, [vue.unref(isExpandableTable) ? (vue.openBlock(), vue.createElementBlock("col", _hoisted_3$9)) : vue.createCommentVNode("", true), _cache[0] || (_cache[0] = vue.createTextVNode()), __props.selectable ? (vue.openBlock(), vue.createElementBlock("col", _hoisted_4$8)) : vue.createCommentVNode("", true), _cache[1] || (_cache[1] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(columns.value, (column) => {
|
|
14321
|
+
return vue.openBlock(), vue.createElementBlock("col", {
|
|
14322
|
+
key: column.id,
|
|
14323
|
+
class: vue.normalizeClass(column.size)
|
|
14324
|
+
}, null, 2);
|
|
14325
|
+
}), 128))]), _cache[16] || (_cache[16] = vue.createTextVNode()), vue.createElementVNode("thead", null, [vue.createElementVNode("tr", _hoisted_5$6, [vue.unref(isExpandableTable) ? (vue.openBlock(), vue.createElementBlock("th", _hoisted_6$4, [vue.createElementVNode("span", _hoisted_7$3, vue.toDisplayString(vue.unref($t2)("fkui.interactive-table.select", "Expandera")), 1)])) : vue.createCommentVNode("", true), _cache[4] || (_cache[4] = vue.createTextVNode()), __props.selectable ? (vue.openBlock(), vue.createElementBlock("th", _hoisted_8$3, [vue.createElementVNode("span", _hoisted_9$3, vue.toDisplayString(vue.unref($t2)("fkui.interactive-table.select", "Markera")), 1)])) : vue.createCommentVNode("", true), _cache[5] || (_cache[5] = vue.createTextVNode()), (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(visibleColumns.value, (column) => {
|
|
14326
|
+
return vue.openBlock(), vue.createElementBlock("th", vue.mergeProps({
|
|
14327
|
+
key: column.id,
|
|
14328
|
+
scope: "col",
|
|
14329
|
+
class: columnClasses(column)
|
|
14330
|
+
}, vue.toHandlers(column.sortable ? {
|
|
14331
|
+
click: () => onClickColumnHeader(column)
|
|
14332
|
+
} : {}, true)), [vue.createElementVNode("span", {
|
|
14333
|
+
innerHTML: escapeNewlines(column.title)
|
|
14334
|
+
}, null, 8, _hoisted_10$2), _cache[2] || (_cache[2] = vue.createTextVNode()), column.sortable ? (vue.openBlock(), vue.createBlock(vue.unref(FIcon), {
|
|
14335
|
+
key: 0,
|
|
14336
|
+
class: vue.normalizeClass(iconClasses2(column)),
|
|
14337
|
+
name: iconName(column)
|
|
14338
|
+
}, null, 8, ["class", "name"])) : vue.createCommentVNode("", true), _cache[3] || (_cache[3] = vue.createTextVNode()), column.description ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_11$1, vue.toDisplayString(column.description), 1)) : vue.createCommentVNode("", true)], 16);
|
|
14339
|
+
}), 128))])]), _cache[17] || (_cache[17] = vue.createTextVNode()), (vue.openBlock(), vue.createElementBlock("tbody", {
|
|
14340
|
+
ref: "tbodyElement",
|
|
14341
|
+
key: tbodyKey.value
|
|
14342
|
+
}, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.rows, (row, index) => {
|
|
14343
|
+
return vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
14344
|
+
key: rowKey(row)
|
|
14345
|
+
}, [vue.createElementVNode("tr", {
|
|
14346
|
+
class: vue.normalizeClass(rowClasses(row, index)),
|
|
14347
|
+
"aria-label": rowDescription(row),
|
|
14348
|
+
"aria-expanded": vue.unref(rowAriaExpanded)(row),
|
|
14349
|
+
"aria-level": vue.unref(isExpandableTable) ? 1 : void 0,
|
|
14350
|
+
"aria-describedby": vue.unref(getExpandableDescribedby)(row),
|
|
14351
|
+
tabindex: "0",
|
|
14352
|
+
onKeydown: vue.withModifiers(($event) => onKeydown$1($event, index), ["self"]),
|
|
14353
|
+
onClick: ($event) => onClick($event, row)
|
|
14354
|
+
}, [vue.unref(isExpandableTable) ? (vue.openBlock(), vue.createElementBlock("td", _hoisted_13, [vue.unref(hasExpandableContent)(row) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_14, [vue.createVNode(vue.unref(FIcon), {
|
|
14355
|
+
name: "arrow-right",
|
|
14356
|
+
rotate: vue.unref(isExpanded)(row) ? "270" : "90"
|
|
14357
|
+
}, null, 8, ["rotate"])])) : vue.createCommentVNode("", true)])) : vue.createCommentVNode("", true), _cache[6] || (_cache[6] = vue.createTextVNode()), __props.selectable ? (vue.openBlock(), vue.createElementBlock("td", _hoisted_15, [vue.createElementVNode("div", _hoisted_16, [vue.createVNode(vue.unref(FCheckboxField), {
|
|
14358
|
+
value: true,
|
|
14359
|
+
"model-value": isSelected(row),
|
|
14360
|
+
onClick: vue.withModifiers(($event) => onSelect(row), ["self"])
|
|
14361
|
+
}, {
|
|
14362
|
+
default: vue.withCtx(() => [hasCheckboxDescription.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_17, [vue.renderSlot(_ctx.$slots, "checkbox-description", vue.mergeProps({
|
|
14363
|
+
ref_for: true
|
|
14364
|
+
}, {
|
|
14365
|
+
row
|
|
14366
|
+
}))])) : vue.createCommentVNode("", true)]),
|
|
14367
|
+
_: 2
|
|
14368
|
+
}, 1032, ["model-value", "onClick"])])])) : vue.createCommentVNode("", true), _cache[7] || (_cache[7] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default", vue.mergeProps({
|
|
14369
|
+
ref_for: true
|
|
14370
|
+
}, {
|
|
14371
|
+
row
|
|
14372
|
+
}))], 42, _hoisted_12$1), _cache[11] || (_cache[11] = vue.createTextVNode()), vue.unref(isExpandableTable) && vue.unref(hasExpandableContent)(row) ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, {
|
|
14373
|
+
key: 0
|
|
14374
|
+
}, vue.renderList(vue.unref(expandableRows)(row), (expandableRow, expandableIndex) => {
|
|
14375
|
+
return vue.openBlock(), vue.createElementBlock("tr", {
|
|
14376
|
+
key: rowKey(expandableRow),
|
|
14377
|
+
"aria-level": "2",
|
|
14378
|
+
class: vue.normalizeClass(vue.unref(expandableRowClasses)(row, expandableIndex))
|
|
14379
|
+
}, [_cache[8] || (_cache[8] = vue.createElementVNode("td", {
|
|
14380
|
+
class: "table__column--placeholder"
|
|
14381
|
+
}, null, -1)), _cache[9] || (_cache[9] = vue.createTextVNode()), __props.selectable ? (vue.openBlock(), vue.createElementBlock("td", _hoisted_18)) : vue.createCommentVNode("", true), _cache[10] || (_cache[10] = vue.createTextVNode()), !vue.unref(hasExpandableSlot) ? vue.renderSlot(_ctx.$slots, "default", vue.mergeProps({
|
|
14382
|
+
key: 1,
|
|
14383
|
+
ref_for: true
|
|
14384
|
+
}, {
|
|
14385
|
+
row: expandableRow
|
|
14386
|
+
})) : (vue.openBlock(), vue.createElementBlock("td", {
|
|
14387
|
+
key: 2,
|
|
14388
|
+
class: "table__column table__column--indented",
|
|
14389
|
+
colspan: columns.value.length
|
|
14390
|
+
}, [vue.renderSlot(_ctx.$slots, "expandable", vue.mergeProps({
|
|
14391
|
+
ref_for: true
|
|
14392
|
+
}, {
|
|
14393
|
+
expandableRow,
|
|
14394
|
+
parentRow: row
|
|
14395
|
+
}))], 8, _hoisted_19))], 2);
|
|
14396
|
+
}), 128)) : vue.createCommentVNode("", true)], 64);
|
|
14397
|
+
}), 128)), _cache[13] || (_cache[13] = vue.createTextVNode()), isEmpty.value && columns.value.length === 0 ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_20, [vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps({
|
|
14398
|
+
row: {}
|
|
14399
|
+
})))])) : vue.createCommentVNode("", true), _cache[14] || (_cache[14] = vue.createTextVNode()), isEmpty.value ? (vue.openBlock(), vue.createElementBlock("tr", _hoisted_21, [vue.createElementVNode("td", {
|
|
14400
|
+
class: "table__column table__column--action",
|
|
14401
|
+
colspan: nbOfColumns.value
|
|
14402
|
+
}, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createTextVNode(vue.toDisplayString(vue.unref($t2)("fkui.interactive-table.empty", "Tabellen är tom")), 1)])], 8, _hoisted_22), _cache[12] || (_cache[12] = vue.createTextVNode()), vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps({
|
|
14403
|
+
row: {}
|
|
14404
|
+
})))])) : vue.createCommentVNode("", true)]))], 16, _hoisted_1$h)], 2);
|
|
14405
|
+
};
|
|
14406
|
+
}
|
|
14407
|
+
});
|
|
13621
14408
|
const _sfc_main$g = vue.defineComponent({
|
|
13622
14409
|
name: "FLayoutApplicationTemplate",
|
|
13623
14410
|
computed: {
|
|
@@ -13662,12 +14449,12 @@ const _hoisted_5$5 = {
|
|
|
13662
14449
|
key: 0,
|
|
13663
14450
|
class: "layout-application-template__footer"
|
|
13664
14451
|
};
|
|
13665
|
-
function _sfc_render$
|
|
14452
|
+
function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
|
|
13666
14453
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$g, [_ctx.showHeader || _ctx.showTopNavigation ? (vue.openBlock(), vue.createElementBlock("header", _hoisted_2$c, [_ctx.showHeader ? vue.renderSlot(_ctx.$slots, "header", {
|
|
13667
14454
|
key: 0
|
|
13668
14455
|
}) : vue.createCommentVNode("", true), _cache[0] || (_cache[0] = vue.createTextVNode()), _ctx.showTopNavigation ? (vue.openBlock(), vue.createElementBlock("nav", _hoisted_3$8, [vue.renderSlot(_ctx.$slots, "top-navigation")])) : vue.createCommentVNode("", true)], 512)) : vue.createCommentVNode("", true), _cache[2] || (_cache[2] = vue.createTextVNode()), vue.createElementVNode("main", _hoisted_4$7, [vue.renderSlot(_ctx.$slots, "default"), _cache[1] || (_cache[1] = vue.createTextVNode()), _ctx.showFooter ? (vue.openBlock(), vue.createElementBlock("footer", _hoisted_5$5, [vue.renderSlot(_ctx.$slots, "footer")])) : vue.createCommentVNode("", true)], 512)]);
|
|
13669
14456
|
}
|
|
13670
|
-
const FLayoutApplicationTemplate = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["render", _sfc_render$
|
|
14457
|
+
const FLayoutApplicationTemplate = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["render", _sfc_render$d]]);
|
|
13671
14458
|
function getGridClasses(target) {
|
|
13672
14459
|
if (target === null) {
|
|
13673
14460
|
return {};
|
|
@@ -13864,7 +14651,7 @@ const _hoisted_4$6 = {
|
|
|
13864
14651
|
key: 1,
|
|
13865
14652
|
class: "layout-navigation__navigation__inner--minimized"
|
|
13866
14653
|
};
|
|
13867
|
-
function _sfc_render$
|
|
14654
|
+
function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
|
|
13868
14655
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
13869
14656
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$f, [vue.createElementVNode("nav", {
|
|
13870
14657
|
id: "layout-navigation__navigation",
|
|
@@ -13915,7 +14702,7 @@ function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
13915
14702
|
style: vue.normalizeStyle(_ctx.primaryStyle)
|
|
13916
14703
|
}, [vue.renderSlot(_ctx.$slots, "default")], 6)]);
|
|
13917
14704
|
}
|
|
13918
|
-
const FLayoutLeftPanel = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["render", _sfc_render$
|
|
14705
|
+
const FLayoutLeftPanel = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["render", _sfc_render$c]]);
|
|
13919
14706
|
class FRightPanelServiceImpl {
|
|
13920
14707
|
constructor() {
|
|
13921
14708
|
_defineProperty(this, "focusedElementBeforeOpenining", null);
|
|
@@ -14068,7 +14855,7 @@ const _hoisted_1$e = {
|
|
|
14068
14855
|
const _hoisted_2$a = {
|
|
14069
14856
|
class: "layout-secondary__secondary__inner"
|
|
14070
14857
|
};
|
|
14071
|
-
function _sfc_render$
|
|
14858
|
+
function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
|
|
14072
14859
|
const _component_f_icon = vue.resolveComponent("f-icon");
|
|
14073
14860
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$e, [vue.createElementVNode("div", {
|
|
14074
14861
|
id: "layout-secondary__primary",
|
|
@@ -14107,13 +14894,34 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
14107
14894
|
name: "close"
|
|
14108
14895
|
})])], 6)])], 4)) : vue.createCommentVNode("", true)]);
|
|
14109
14896
|
}
|
|
14110
|
-
const FLayoutRightPanel = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$
|
|
14111
|
-
const
|
|
14112
|
-
|
|
14113
|
-
|
|
14114
|
-
|
|
14115
|
-
|
|
14116
|
-
|
|
14897
|
+
const FLayoutRightPanel = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$b]]);
|
|
14898
|
+
const _hoisted_1$d = {
|
|
14899
|
+
key: 0,
|
|
14900
|
+
class: "list"
|
|
14901
|
+
};
|
|
14902
|
+
const _hoisted_2$9 = {
|
|
14903
|
+
key: 0,
|
|
14904
|
+
class: "list__item"
|
|
14905
|
+
};
|
|
14906
|
+
const _hoisted_3$6 = {
|
|
14907
|
+
class: "list__item__itempane"
|
|
14908
|
+
};
|
|
14909
|
+
const _hoisted_4$5 = ["tabindex"];
|
|
14910
|
+
const _hoisted_5$4 = ["id", "aria-labelledby", "tabindex", "onKeydown"];
|
|
14911
|
+
const _hoisted_6$3 = ["onClick"];
|
|
14912
|
+
const _hoisted_7$2 = {
|
|
14913
|
+
class: "list__item__selectpane__input"
|
|
14914
|
+
};
|
|
14915
|
+
const _hoisted_8$2 = ["id"];
|
|
14916
|
+
const _hoisted_9$2 = {
|
|
14917
|
+
key: 0,
|
|
14918
|
+
class: "list__item"
|
|
14919
|
+
};
|
|
14920
|
+
const _hoisted_10$1 = {
|
|
14921
|
+
class: "list__item__itempane"
|
|
14922
|
+
};
|
|
14923
|
+
const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
|
|
14924
|
+
__name: "FList",
|
|
14117
14925
|
props: {
|
|
14118
14926
|
/**
|
|
14119
14927
|
* The items to be listed.
|
|
@@ -14173,273 +14981,234 @@ const _sfc_main$d = vue.defineComponent({
|
|
|
14173
14981
|
default: () => logic.ElementIdService.generateElementId()
|
|
14174
14982
|
}
|
|
14175
14983
|
},
|
|
14176
|
-
emits: ["change", "click", "
|
|
14177
|
-
setup(
|
|
14178
|
-
|
|
14179
|
-
}
|
|
14180
|
-
|
|
14181
|
-
|
|
14182
|
-
|
|
14183
|
-
|
|
14184
|
-
|
|
14185
|
-
|
|
14186
|
-
|
|
14187
|
-
|
|
14188
|
-
|
|
14189
|
-
|
|
14190
|
-
|
|
14191
|
-
|
|
14192
|
-
|
|
14193
|
-
|
|
14194
|
-
|
|
14195
|
-
|
|
14984
|
+
emits: ["change", "click", "select", "unselect", "update:active", "update:modelValue"],
|
|
14985
|
+
setup(__props, {
|
|
14986
|
+
emit: __emit
|
|
14987
|
+
}) {
|
|
14988
|
+
const $t2 = useTranslate();
|
|
14989
|
+
const slots = vue.useSlots();
|
|
14990
|
+
const {
|
|
14991
|
+
registerCallbackAfterItemAdd,
|
|
14992
|
+
registerCallbackBeforeItemDelete
|
|
14993
|
+
} = ActivateItemInjected();
|
|
14994
|
+
const selectedItems = vue.ref([]);
|
|
14995
|
+
const activeItem = vue.ref(void 0);
|
|
14996
|
+
const ulElement = vue.ref();
|
|
14997
|
+
const props = __props;
|
|
14998
|
+
const emit = __emit;
|
|
14999
|
+
const isEmpty = vue.computed(() => {
|
|
15000
|
+
return props.items.length === 0;
|
|
15001
|
+
});
|
|
15002
|
+
vue.watch(() => props.items, () => {
|
|
15003
|
+
updateSelectedItemsFromVModel();
|
|
15004
|
+
}, {
|
|
14196
15005
|
deep: true,
|
|
14197
|
-
immediate: true
|
|
14198
|
-
|
|
14199
|
-
|
|
14200
|
-
|
|
14201
|
-
},
|
|
14202
|
-
modelValue: {
|
|
15006
|
+
immediate: true
|
|
15007
|
+
});
|
|
15008
|
+
vue.watch(() => props.modelValue, () => {
|
|
15009
|
+
updateSelectedItemsFromVModel();
|
|
15010
|
+
}, {
|
|
14203
15011
|
deep: true,
|
|
14204
|
-
immediate: true
|
|
14205
|
-
|
|
14206
|
-
|
|
14207
|
-
|
|
14208
|
-
},
|
|
14209
|
-
|
|
14210
|
-
|
|
14211
|
-
|
|
14212
|
-
|
|
14213
|
-
|
|
14214
|
-
|
|
14215
|
-
|
|
14216
|
-
|
|
14217
|
-
|
|
14218
|
-
if (!this.$slots["screenreader"]) {
|
|
14219
|
-
throw Error('Slot "screenreader" is required when having "selectable" & "checkbox" option.');
|
|
15012
|
+
immediate: true
|
|
15013
|
+
});
|
|
15014
|
+
vue.watch(() => props.active, () => {
|
|
15015
|
+
updateActiveItemFromVModel();
|
|
15016
|
+
}, {
|
|
15017
|
+
immediate: true
|
|
15018
|
+
});
|
|
15019
|
+
vue.onMounted(() => {
|
|
15020
|
+
if (props.selectable && props.checkbox) {
|
|
15021
|
+
if (!slots["screenreader"]) {
|
|
15022
|
+
throw Error('Slot "screenreader" is required when having "selectable" & "checkbox" option.');
|
|
15023
|
+
}
|
|
15024
|
+
registerCallbackAfterItemAdd(callbackAfterItemAdd);
|
|
15025
|
+
registerCallbackBeforeItemDelete(callbackBeforeItemDelete);
|
|
14220
15026
|
}
|
|
14221
|
-
|
|
14222
|
-
|
|
15027
|
+
});
|
|
15028
|
+
function getLiElements() {
|
|
15029
|
+
const element = getElementFromVueRef(ulElement.value);
|
|
15030
|
+
return Array.from(element.children);
|
|
14223
15031
|
}
|
|
14224
|
-
|
|
14225
|
-
|
|
14226
|
-
getLiElements() {
|
|
14227
|
-
const ulElement = getElementFromVueRef(this.$refs["ulElement"]);
|
|
14228
|
-
return Array.from(ulElement.children);
|
|
14229
|
-
},
|
|
14230
|
-
itemKey(item) {
|
|
14231
|
-
const key = item[this.keyAttribute];
|
|
15032
|
+
function itemKey(item) {
|
|
15033
|
+
const key = item[props.keyAttribute];
|
|
14232
15034
|
if (typeof key === "undefined") {
|
|
14233
|
-
throw new Error(`Key attribute [${
|
|
15035
|
+
throw new Error(`Key attribute [${props.keyAttribute}]' is missing in item`);
|
|
14234
15036
|
}
|
|
14235
15037
|
return String(key);
|
|
14236
|
-
}
|
|
14237
|
-
isSelected(item) {
|
|
14238
|
-
return includeItem(item,
|
|
14239
|
-
}
|
|
14240
|
-
itemClasses(item) {
|
|
15038
|
+
}
|
|
15039
|
+
function isSelected(item) {
|
|
15040
|
+
return includeItem(item, selectedItems.value, props.keyAttribute);
|
|
15041
|
+
}
|
|
15042
|
+
function itemClasses(item) {
|
|
14241
15043
|
return {
|
|
14242
|
-
"list__item--selected":
|
|
14243
|
-
"list__item--active":
|
|
15044
|
+
"list__item--selected": isSelected(item),
|
|
15045
|
+
"list__item--active": isActive(item)
|
|
14244
15046
|
};
|
|
14245
|
-
}
|
|
14246
|
-
|
|
14247
|
-
|
|
14248
|
-
|
|
14249
|
-
|
|
14250
|
-
|
|
14251
|
-
this.selectedItems = this.selectedItems.filter((i) => !itemEquals(i, item, this.keyAttribute));
|
|
14252
|
-
this.$emit("unselect", item);
|
|
15047
|
+
}
|
|
15048
|
+
function onSelect(item) {
|
|
15049
|
+
var _a, _b;
|
|
15050
|
+
if (includeItem(item, selectedItems.value, props.keyAttribute)) {
|
|
15051
|
+
selectedItems.value = selectedItems.value.filter((i) => !itemEquals(i, item, props.keyAttribute));
|
|
15052
|
+
emit("unselect", item);
|
|
14253
15053
|
} else {
|
|
14254
|
-
|
|
14255
|
-
|
|
15054
|
+
selectedItems.value.push(item);
|
|
15055
|
+
emit("select", item);
|
|
14256
15056
|
}
|
|
14257
|
-
|
|
14258
|
-
|
|
14259
|
-
}
|
|
14260
|
-
setActiveItem(item) {
|
|
14261
|
-
|
|
14262
|
-
if (!itemEquals(item,
|
|
14263
|
-
|
|
14264
|
-
|
|
14265
|
-
|
|
15057
|
+
updateVModelWithSelectedItems();
|
|
15058
|
+
(_b = (_a = vue.getCurrentInstance()) == null ? void 0 : _a.proxy) == null ? void 0 : _b.$forceUpdate();
|
|
15059
|
+
}
|
|
15060
|
+
function setActiveItem(item) {
|
|
15061
|
+
emit("click", item);
|
|
15062
|
+
if (!itemEquals(item, activeItem.value, props.keyAttribute)) {
|
|
15063
|
+
emit("change", item);
|
|
15064
|
+
activeItem.value = item;
|
|
15065
|
+
emit("update:active", activeItem.value);
|
|
14266
15066
|
}
|
|
14267
|
-
}
|
|
14268
|
-
onItemClick(event, index, item) {
|
|
14269
|
-
|
|
14270
|
-
}
|
|
14271
|
-
updateVModelWithSelectedItems() {
|
|
14272
|
-
if (
|
|
14273
|
-
|
|
15067
|
+
}
|
|
15068
|
+
function onItemClick(event, index, item) {
|
|
15069
|
+
setActiveItem(item);
|
|
15070
|
+
}
|
|
15071
|
+
function updateVModelWithSelectedItems() {
|
|
15072
|
+
if (props.modelValue) {
|
|
15073
|
+
emit("update:modelValue", selectedItems.value);
|
|
14274
15074
|
}
|
|
14275
|
-
}
|
|
14276
|
-
updateSelectedItemsFromVModel() {
|
|
14277
|
-
if (Array.isArray(
|
|
14278
|
-
|
|
14279
|
-
return includeItem(item,
|
|
15075
|
+
}
|
|
15076
|
+
function updateSelectedItemsFromVModel() {
|
|
15077
|
+
if (Array.isArray(props.modelValue)) {
|
|
15078
|
+
selectedItems.value = props.modelValue.filter((item) => {
|
|
15079
|
+
return includeItem(item, props.items, props.keyAttribute);
|
|
14280
15080
|
});
|
|
14281
15081
|
} else {
|
|
14282
|
-
|
|
15082
|
+
selectedItems.value = [];
|
|
14283
15083
|
}
|
|
14284
|
-
}
|
|
14285
|
-
updateActiveItemFromVModel() {
|
|
14286
|
-
if (
|
|
14287
|
-
|
|
14288
|
-
} else if (!itemEquals(
|
|
14289
|
-
|
|
15084
|
+
}
|
|
15085
|
+
function updateActiveItemFromVModel() {
|
|
15086
|
+
if (props.active === void 0) {
|
|
15087
|
+
activeItem.value = void 0;
|
|
15088
|
+
} else if (!itemEquals(props.active, activeItem.value, props.keyAttribute)) {
|
|
15089
|
+
activeItem.value = props.active;
|
|
14290
15090
|
}
|
|
14291
|
-
}
|
|
14292
|
-
onItemKeyDown(event, item) {
|
|
15091
|
+
}
|
|
15092
|
+
function onItemKeyDown(event, item) {
|
|
14293
15093
|
switch (event.key) {
|
|
14294
15094
|
case "Up":
|
|
14295
15095
|
case "Down":
|
|
14296
15096
|
case "ArrowUp":
|
|
14297
15097
|
case "ArrowDown":
|
|
14298
15098
|
event.preventDefault();
|
|
14299
|
-
handleKeyboardFocusNavigation(event.key, event.target,
|
|
15099
|
+
handleKeyboardFocusNavigation(event.key, event.target, getLiElements());
|
|
14300
15100
|
break;
|
|
14301
15101
|
case " ":
|
|
14302
15102
|
case "Spacebar":
|
|
14303
15103
|
event.preventDefault();
|
|
14304
|
-
|
|
15104
|
+
setActiveItem(item);
|
|
14305
15105
|
break;
|
|
14306
15106
|
}
|
|
14307
|
-
}
|
|
14308
|
-
|
|
14309
|
-
|
|
14310
|
-
|
|
14311
|
-
|
|
14312
|
-
|
|
14313
|
-
|
|
14314
|
-
|
|
14315
|
-
},
|
|
14316
|
-
// Focus effect is done with box-shadow.
|
|
14317
|
-
// By setting position to relative the
|
|
14318
|
-
// item and box-shadow is drawn with a higher z-index,
|
|
14319
|
-
// thus no focus border under other list items.
|
|
14320
|
-
onItemFocus(event) {
|
|
15107
|
+
}
|
|
15108
|
+
function getAriaLabelledbyId(item) {
|
|
15109
|
+
return `${props.elementId}_${itemKey(item)}`;
|
|
15110
|
+
}
|
|
15111
|
+
function getItemId(item) {
|
|
15112
|
+
return `${props.elementId}_item_${itemKey(item)}`;
|
|
15113
|
+
}
|
|
15114
|
+
function onItemFocus(event) {
|
|
14321
15115
|
if (event && event.target) {
|
|
14322
15116
|
event.target.style.position = "relative";
|
|
14323
15117
|
}
|
|
14324
|
-
}
|
|
14325
|
-
onItemBlur(event) {
|
|
15118
|
+
}
|
|
15119
|
+
function onItemBlur(event) {
|
|
14326
15120
|
if (event && event.target) {
|
|
14327
15121
|
event.target.style.position = "static";
|
|
14328
15122
|
}
|
|
14329
|
-
}
|
|
14330
|
-
callbackAfterItemAdd(item) {
|
|
14331
|
-
|
|
14332
|
-
}
|
|
14333
|
-
callbackBeforeItemDelete(item) {
|
|
14334
|
-
if (
|
|
15123
|
+
}
|
|
15124
|
+
function callbackAfterItemAdd(item) {
|
|
15125
|
+
setActiveItem(item);
|
|
15126
|
+
}
|
|
15127
|
+
function callbackBeforeItemDelete(item) {
|
|
15128
|
+
if (props.items.length === 0) {
|
|
14335
15129
|
return;
|
|
14336
15130
|
}
|
|
14337
|
-
let targetIndex =
|
|
14338
|
-
if (targetIndex < 0 &&
|
|
15131
|
+
let targetIndex = props.items.indexOf(item) - 1;
|
|
15132
|
+
if (targetIndex < 0 && props.items.length > 1) {
|
|
14339
15133
|
targetIndex = 1;
|
|
14340
15134
|
} else if (targetIndex < 0) {
|
|
14341
15135
|
targetIndex = 0;
|
|
14342
15136
|
}
|
|
14343
|
-
|
|
14344
|
-
|
|
14345
|
-
|
|
15137
|
+
setActiveItem(props.items[targetIndex]);
|
|
15138
|
+
const targetElement = getLiElements()[targetIndex];
|
|
15139
|
+
if (targetElement) {
|
|
15140
|
+
targetElement.focus();
|
|
14346
15141
|
}
|
|
14347
|
-
},
|
|
14348
|
-
isActive(item) {
|
|
14349
|
-
return this.checkbox && itemEquals(this.activeItem, item, this.keyAttribute);
|
|
14350
15142
|
}
|
|
15143
|
+
function isActive(item) {
|
|
15144
|
+
return props.checkbox && itemEquals(activeItem.value, item, props.keyAttribute);
|
|
15145
|
+
}
|
|
15146
|
+
return (_ctx, _cache) => {
|
|
15147
|
+
return !__props.selectable ? (vue.openBlock(), vue.createElementBlock("ul", _hoisted_1$d, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.items, (item) => {
|
|
15148
|
+
return vue.openBlock(), vue.createElementBlock("li", {
|
|
15149
|
+
key: itemKey(item),
|
|
15150
|
+
class: "list__item"
|
|
15151
|
+
}, [vue.createElementVNode("div", {
|
|
15152
|
+
ref_for: true,
|
|
15153
|
+
ref: "listItemPanes",
|
|
15154
|
+
class: "list__item__itempane"
|
|
15155
|
+
}, [vue.renderSlot(_ctx.$slots, "default", vue.mergeProps({
|
|
15156
|
+
ref_for: true
|
|
15157
|
+
}, {
|
|
15158
|
+
item
|
|
15159
|
+
}))], 512)]);
|
|
15160
|
+
}), 128)), _cache[0] || (_cache[0] = vue.createTextVNode()), isEmpty.value ? (vue.openBlock(), vue.createElementBlock("li", _hoisted_2$9, [vue.createElementVNode("div", _hoisted_3$6, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createElementVNode("em", null, vue.toDisplayString(vue.unref($t2)("fkui.list.empty", "Listan är tom")), 1)])])])) : vue.createCommentVNode("", true)])) : (vue.openBlock(), vue.createElementBlock("ul", {
|
|
15161
|
+
key: 1,
|
|
15162
|
+
ref_key: "ulElement",
|
|
15163
|
+
ref: ulElement,
|
|
15164
|
+
class: "list list--hover",
|
|
15165
|
+
tabindex: __props.checkbox ? 0 : void 0
|
|
15166
|
+
}, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.items, (item, index) => {
|
|
15167
|
+
return vue.openBlock(), vue.createElementBlock("li", {
|
|
15168
|
+
id: getItemId(item),
|
|
15169
|
+
key: itemKey(item),
|
|
15170
|
+
"aria-labelledby": getItemId(item),
|
|
15171
|
+
class: vue.normalizeClass([itemClasses(item), "list__item"]),
|
|
15172
|
+
tabindex: __props.checkbox ? 0 : void 0,
|
|
15173
|
+
onKeydown: vue.withModifiers(($event) => onItemKeyDown($event, item), ["self"]),
|
|
15174
|
+
onFocus: vue.withModifiers(onItemFocus, ["self"]),
|
|
15175
|
+
onBlur: vue.withModifiers(onItemBlur, ["self"])
|
|
15176
|
+
}, [__props.checkbox ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
15177
|
+
key: 0,
|
|
15178
|
+
class: "list__item__selectpane",
|
|
15179
|
+
onClick: vue.withModifiers(($event) => onSelect(item), ["self"])
|
|
15180
|
+
}, [vue.createElementVNode("div", _hoisted_7$2, [vue.createVNode(vue.unref(FCheckboxField), {
|
|
15181
|
+
value: true,
|
|
15182
|
+
"model-value": isSelected(item),
|
|
15183
|
+
onClick: vue.withModifiers(($event) => onSelect(item), ["self"])
|
|
15184
|
+
}, {
|
|
15185
|
+
default: vue.withCtx(() => [vue.createElementVNode("span", {
|
|
15186
|
+
id: getAriaLabelledbyId(item),
|
|
15187
|
+
class: "sr-only"
|
|
15188
|
+
}, [vue.renderSlot(_ctx.$slots, "screenreader", vue.mergeProps({
|
|
15189
|
+
ref_for: true
|
|
15190
|
+
}, {
|
|
15191
|
+
item
|
|
15192
|
+
}))], 8, _hoisted_8$2)]),
|
|
15193
|
+
_: 2
|
|
15194
|
+
}, 1032, ["model-value", "onClick"])])], 8, _hoisted_6$3)) : vue.createCommentVNode("", true), _cache[1] || (_cache[1] = vue.createTextVNode()), (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(__props.checkbox ? "div" : "a"), {
|
|
15195
|
+
ref_for: true,
|
|
15196
|
+
ref: "listItemPanes",
|
|
15197
|
+
href: !__props.checkbox ? "javascript:" : void 0,
|
|
15198
|
+
class: "list__item__itempane",
|
|
15199
|
+
onClick: ($event) => onItemClick($event, index, item)
|
|
15200
|
+
}, {
|
|
15201
|
+
default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default", vue.mergeProps({
|
|
15202
|
+
ref_for: true
|
|
15203
|
+
}, {
|
|
15204
|
+
item
|
|
15205
|
+
}))]),
|
|
15206
|
+
_: 2
|
|
15207
|
+
}, 1032, ["href", "onClick"]))], 42, _hoisted_5$4);
|
|
15208
|
+
}), 128)), _cache[2] || (_cache[2] = vue.createTextVNode()), isEmpty.value ? (vue.openBlock(), vue.createElementBlock("li", _hoisted_9$2, [vue.createElementVNode("div", _hoisted_10$1, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createElementVNode("em", null, vue.toDisplayString(vue.unref($t2)("fkui.list.empty", "Listan är tom")), 1)])])])) : vue.createCommentVNode("", true)], 8, _hoisted_4$5));
|
|
15209
|
+
};
|
|
14351
15210
|
}
|
|
14352
15211
|
});
|
|
14353
|
-
const _hoisted_1$d = {
|
|
14354
|
-
key: 0,
|
|
14355
|
-
class: "list"
|
|
14356
|
-
};
|
|
14357
|
-
const _hoisted_2$9 = {
|
|
14358
|
-
key: 0,
|
|
14359
|
-
class: "list__item"
|
|
14360
|
-
};
|
|
14361
|
-
const _hoisted_3$6 = {
|
|
14362
|
-
class: "list__item__itempane"
|
|
14363
|
-
};
|
|
14364
|
-
const _hoisted_4$5 = ["tabindex"];
|
|
14365
|
-
const _hoisted_5$4 = ["id", "aria-labelledby", "tabindex", "onKeydown"];
|
|
14366
|
-
const _hoisted_6$3 = ["onClick"];
|
|
14367
|
-
const _hoisted_7$2 = {
|
|
14368
|
-
class: "list__item__selectpane__input"
|
|
14369
|
-
};
|
|
14370
|
-
const _hoisted_8$2 = ["id"];
|
|
14371
|
-
const _hoisted_9$2 = {
|
|
14372
|
-
key: 0,
|
|
14373
|
-
class: "list__item"
|
|
14374
|
-
};
|
|
14375
|
-
const _hoisted_10$1 = {
|
|
14376
|
-
class: "list__item__itempane"
|
|
14377
|
-
};
|
|
14378
|
-
function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
|
|
14379
|
-
const _component_f_checkbox_field = vue.resolveComponent("f-checkbox-field");
|
|
14380
|
-
return !_ctx.selectable ? (vue.openBlock(), vue.createElementBlock("ul", _hoisted_1$d, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.items, (item) => {
|
|
14381
|
-
return vue.openBlock(), vue.createElementBlock("li", {
|
|
14382
|
-
key: _ctx.itemKey(item),
|
|
14383
|
-
class: "list__item"
|
|
14384
|
-
}, [vue.createElementVNode("div", {
|
|
14385
|
-
ref_for: true,
|
|
14386
|
-
ref: "listItemPanes",
|
|
14387
|
-
class: "list__item__itempane"
|
|
14388
|
-
}, [vue.renderSlot(_ctx.$slots, "default", vue.mergeProps({
|
|
14389
|
-
ref_for: true
|
|
14390
|
-
}, {
|
|
14391
|
-
item
|
|
14392
|
-
}))], 512)]);
|
|
14393
|
-
}), 128)), _cache[2] || (_cache[2] = vue.createTextVNode()), _ctx.isEmpty ? (vue.openBlock(), vue.createElementBlock("li", _hoisted_2$9, [vue.createElementVNode("div", _hoisted_3$6, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createElementVNode("em", null, vue.toDisplayString(_ctx.$t("fkui.list.empty", "Listan är tom")), 1)])])])) : vue.createCommentVNode("", true)])) : (vue.openBlock(), vue.createElementBlock("ul", {
|
|
14394
|
-
key: 1,
|
|
14395
|
-
ref: "ulElement",
|
|
14396
|
-
class: "list list--hover",
|
|
14397
|
-
tabindex: _ctx.checkbox ? 0 : void 0
|
|
14398
|
-
}, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.items, (item, index) => {
|
|
14399
|
-
return vue.openBlock(), vue.createElementBlock("li", {
|
|
14400
|
-
id: _ctx.getItemId(item),
|
|
14401
|
-
key: _ctx.itemKey(item),
|
|
14402
|
-
"aria-labelledby": _ctx.getItemId(item),
|
|
14403
|
-
class: vue.normalizeClass([_ctx.itemClasses(item), "list__item"]),
|
|
14404
|
-
tabindex: _ctx.checkbox ? 0 : void 0,
|
|
14405
|
-
onKeydown: vue.withModifiers(($event) => _ctx.onItemKeyDown($event, item), ["self"]),
|
|
14406
|
-
onFocus: _cache[0] || (_cache[0] = vue.withModifiers((...args) => _ctx.onItemFocus && _ctx.onItemFocus(...args), ["self"])),
|
|
14407
|
-
onBlur: _cache[1] || (_cache[1] = vue.withModifiers((...args) => _ctx.onItemBlur && _ctx.onItemBlur(...args), ["self"]))
|
|
14408
|
-
}, [_ctx.checkbox ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
14409
|
-
key: 0,
|
|
14410
|
-
class: "list__item__selectpane",
|
|
14411
|
-
onClick: vue.withModifiers(($event) => _ctx.onSelect(item), ["self"])
|
|
14412
|
-
}, [vue.createElementVNode("div", _hoisted_7$2, [vue.createVNode(_component_f_checkbox_field, {
|
|
14413
|
-
value: true,
|
|
14414
|
-
"model-value": _ctx.isSelected(item),
|
|
14415
|
-
onClick: vue.withModifiers(($event) => _ctx.onSelect(item), ["self"])
|
|
14416
|
-
}, {
|
|
14417
|
-
default: vue.withCtx(() => [vue.createElementVNode("span", {
|
|
14418
|
-
id: _ctx.getAriaLabelledbyId(item),
|
|
14419
|
-
class: "sr-only"
|
|
14420
|
-
}, [vue.renderSlot(_ctx.$slots, "screenreader", vue.mergeProps({
|
|
14421
|
-
ref_for: true
|
|
14422
|
-
}, {
|
|
14423
|
-
item
|
|
14424
|
-
}))], 8, _hoisted_8$2)]),
|
|
14425
|
-
_: 2
|
|
14426
|
-
}, 1032, ["model-value", "onClick"])])], 8, _hoisted_6$3)) : vue.createCommentVNode("", true), _cache[3] || (_cache[3] = vue.createTextVNode()), (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.checkbox ? "div" : "a"), {
|
|
14427
|
-
ref_for: true,
|
|
14428
|
-
ref: "listItemPanes",
|
|
14429
|
-
href: !_ctx.checkbox ? "javascript:" : void 0,
|
|
14430
|
-
class: "list__item__itempane",
|
|
14431
|
-
onClick: ($event) => _ctx.onItemClick($event, index, item)
|
|
14432
|
-
}, {
|
|
14433
|
-
default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default", vue.mergeProps({
|
|
14434
|
-
ref_for: true
|
|
14435
|
-
}, {
|
|
14436
|
-
item
|
|
14437
|
-
}))]),
|
|
14438
|
-
_: 2
|
|
14439
|
-
}, 1032, ["href", "onClick"]))], 42, _hoisted_5$4);
|
|
14440
|
-
}), 128)), _cache[4] || (_cache[4] = vue.createTextVNode()), _ctx.isEmpty ? (vue.openBlock(), vue.createElementBlock("li", _hoisted_9$2, [vue.createElementVNode("div", _hoisted_10$1, [vue.renderSlot(_ctx.$slots, "empty", {}, () => [vue.createElementVNode("em", null, vue.toDisplayString(_ctx.$t("fkui.list.empty", "Listan är tom")), 1)])])])) : vue.createCommentVNode("", true)], 8, _hoisted_4$5));
|
|
14441
|
-
}
|
|
14442
|
-
const FList = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["render", _sfc_render$b]]);
|
|
14443
15212
|
const _sfc_main$c = vue.defineComponent({
|
|
14444
15213
|
name: "FLoader",
|
|
14445
15214
|
mixins: [TranslationMixin],
|
|
@@ -16516,10 +17285,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
16516
17285
|
class: "wizard-step-body",
|
|
16517
17286
|
onSubmit: _ctx.onSubmit
|
|
16518
17287
|
}, {
|
|
16519
|
-
"error-message": vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "error-message", vue.
|
|
16520
|
-
stepNumber: _ctx.stepNumber,
|
|
16521
|
-
totalSteps: _ctx.totalSteps
|
|
16522
|
-
})), () => [vue.createTextVNode(vue.toDisplayString(_ctx.$t("fkui.wizard-step.errorlist.title", "Oj, du har glömt att fylla i något. Gå till:")), 1)])]),
|
|
17288
|
+
"error-message": vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "error-message", {}, () => [vue.createTextVNode(vue.toDisplayString(_ctx.$t("fkui.wizard-step.errorlist.title", "Oj, du har glömt att fylla i något. Gå till:")), 1)])]),
|
|
16523
17289
|
default: vue.withCtx(() => [vue.renderSlot(_ctx.$slots, "default"), _cache[14] || (_cache[14] = vue.createTextVNode()), vue.createElementVNode("div", _hoisted_10, [vue.createElementVNode("button", {
|
|
16524
17290
|
"data-test": "submit-button",
|
|
16525
17291
|
"data-disabled": _ctx.ignoreClick ? "true" : "false",
|
|
@@ -16537,7 +17303,10 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
16537
17303
|
type: "button",
|
|
16538
17304
|
class: "button button--secondary button-group__item button--large",
|
|
16539
17305
|
onClick: _cache[2] || (_cache[2] = (...args) => _ctx.onCancel && _ctx.onCancel(...args))
|
|
16540
|
-
}, [vue.renderSlot(_ctx.$slots, "cancel-button-text",
|
|
17306
|
+
}, [vue.renderSlot(_ctx.$slots, "cancel-button-text", vue.normalizeProps(vue.guardReactiveProps({
|
|
17307
|
+
stepNumber: _ctx.stepNumber,
|
|
17308
|
+
totalSteps: _ctx.totalSteps
|
|
17309
|
+
})), () => [vue.createTextVNode(vue.toDisplayString(_ctx.$t("fkui.wizard-step.button.cancel.text", "Avbryt")), 1)])])])]),
|
|
16541
17310
|
_: 3
|
|
16542
17311
|
}, 8, ["id", "before-submit", "before-validation", "use-error-list", "onSubmit"])]),
|
|
16543
17312
|
_: 3
|
|
@@ -16560,9 +17329,9 @@ exports.FClearingnumberTextField = _sfc_main$w;
|
|
|
16560
17329
|
exports.FConfirmModal = FConfirmModal;
|
|
16561
17330
|
exports.FContextMenu = FContextMenu;
|
|
16562
17331
|
exports.FCrudButton = FCrudButton;
|
|
16563
|
-
exports.FCrudDataset =
|
|
17332
|
+
exports.FCrudDataset = _sfc_main$I;
|
|
16564
17333
|
exports.FCurrencyTextField = _sfc_main$A;
|
|
16565
|
-
exports.FDataTable =
|
|
17334
|
+
exports.FDataTable = _sfc_main$o;
|
|
16566
17335
|
exports.FDatepickerField = FDatepickerField;
|
|
16567
17336
|
exports.FDialogueTree = FDialogueTree;
|
|
16568
17337
|
exports.FEmailTextField = FEmailTextField;
|
|
@@ -16577,14 +17346,14 @@ exports.FFileSelector = FFileSelector;
|
|
|
16577
17346
|
exports.FFormModal = FFormModal;
|
|
16578
17347
|
exports.FFormModalAction = FValidationFormAction;
|
|
16579
17348
|
exports.FIcon = FIcon;
|
|
16580
|
-
exports.FInteractiveTable =
|
|
17349
|
+
exports.FInteractiveTable = _sfc_main$h;
|
|
16581
17350
|
exports.FKUIConfigButtonOrder = FKUIConfigButtonOrder;
|
|
16582
17351
|
exports.FLabel = FLabel;
|
|
16583
17352
|
exports.FLayoutApplicationTemplate = FLayoutApplicationTemplate;
|
|
16584
17353
|
exports.FLayoutLeftPanel = FLayoutLeftPanel;
|
|
16585
17354
|
exports.FLayoutRightPanel = FLayoutRightPanel;
|
|
16586
17355
|
exports.FLayoutRightPanelService = FLayoutRightPanelService;
|
|
16587
|
-
exports.FList =
|
|
17356
|
+
exports.FList = _sfc_main$d;
|
|
16588
17357
|
exports.FLoader = FLoader;
|
|
16589
17358
|
exports.FLogo = _sfc_main$b;
|
|
16590
17359
|
exports.FMessageBox = FMessageBox;
|
|
@@ -16604,7 +17373,7 @@ exports.FProgressbar = _sfc_main$5;
|
|
|
16604
17373
|
exports.FRadioField = FRadioField;
|
|
16605
17374
|
exports.FSearchTextField = FSearchTextField;
|
|
16606
17375
|
exports.FSelectField = FSelectField;
|
|
16607
|
-
exports.FSortFilterDataset =
|
|
17376
|
+
exports.FSortFilterDataset = _sfc_main$p;
|
|
16608
17377
|
exports.FSortFilterDatasetInjected = FSortFilterDatasetInjected;
|
|
16609
17378
|
exports.FStaticField = FStaticField;
|
|
16610
17379
|
exports.FTableColumn = FTableColumn;
|