@orderingstack/front-hooks 3.5.0 → 3.6.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/index.es.js CHANGED
@@ -185,17 +185,17 @@ var getNative$4 = _getNative, root$3 = _root;
185
185
  var Promise$2 = getNative$4(root$3, "Promise");
186
186
  var _Promise = Promise$2;
187
187
  var getNative$3 = _getNative, root$2 = _root;
188
- var Set$1 = getNative$3(root$2, "Set");
189
- var _Set = Set$1;
188
+ var Set$2 = getNative$3(root$2, "Set");
189
+ var _Set = Set$2;
190
190
  var getNative$2 = _getNative, root$1 = _root;
191
191
  var WeakMap$1 = getNative$2(root$1, "WeakMap");
192
192
  var _WeakMap = WeakMap$1;
193
- var DataView = _DataView, Map$2 = _Map, Promise$1 = _Promise, Set = _Set, WeakMap = _WeakMap, baseGetTag$2 = _baseGetTag, toSource = _toSource;
193
+ var DataView = _DataView, Map$2 = _Map, Promise$1 = _Promise, Set$1 = _Set, WeakMap = _WeakMap, baseGetTag$2 = _baseGetTag, toSource = _toSource;
194
194
  var mapTag$6 = "[object Map]", objectTag$3 = "[object Object]", promiseTag = "[object Promise]", setTag$6 = "[object Set]", weakMapTag$2 = "[object WeakMap]";
195
195
  var dataViewTag$4 = "[object DataView]";
196
- var dataViewCtorString = toSource(DataView), mapCtorString = toSource(Map$2), promiseCtorString = toSource(Promise$1), setCtorString = toSource(Set), weakMapCtorString = toSource(WeakMap);
196
+ var dataViewCtorString = toSource(DataView), mapCtorString = toSource(Map$2), promiseCtorString = toSource(Promise$1), setCtorString = toSource(Set$1), weakMapCtorString = toSource(WeakMap);
197
197
  var getTag$5 = baseGetTag$2;
198
- if (DataView && getTag$5(new DataView(new ArrayBuffer(1))) != dataViewTag$4 || Map$2 && getTag$5(new Map$2()) != mapTag$6 || Promise$1 && getTag$5(Promise$1.resolve()) != promiseTag || Set && getTag$5(new Set()) != setTag$6 || WeakMap && getTag$5(new WeakMap()) != weakMapTag$2) {
198
+ if (DataView && getTag$5(new DataView(new ArrayBuffer(1))) != dataViewTag$4 || Map$2 && getTag$5(new Map$2()) != mapTag$6 || Promise$1 && getTag$5(Promise$1.resolve()) != promiseTag || Set$1 && getTag$5(new Set$1()) != setTag$6 || WeakMap && getTag$5(new WeakMap()) != weakMapTag$2) {
199
199
  getTag$5 = function(value) {
200
200
  var result = baseGetTag$2(value), Ctor = result == objectTag$3 ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : "";
201
201
  if (ctorString) {
@@ -1007,12 +1007,12 @@ MapCache$2.prototype.has = mapCacheHas;
1007
1007
  MapCache$2.prototype.set = mapCacheSet;
1008
1008
  var _MapCache = MapCache$2;
1009
1009
  var ListCache$1 = _ListCache, Map = _Map, MapCache$1 = _MapCache;
1010
- var LARGE_ARRAY_SIZE = 200;
1010
+ var LARGE_ARRAY_SIZE$1 = 200;
1011
1011
  function stackSet$1(key, value) {
1012
1012
  var data = this.__data__;
1013
1013
  if (data instanceof ListCache$1) {
1014
1014
  var pairs = data.__data__;
1015
- if (!Map || pairs.length < LARGE_ARRAY_SIZE - 1) {
1015
+ if (!Map || pairs.length < LARGE_ARRAY_SIZE$1 - 1) {
1016
1016
  pairs.push([key, value]);
1017
1017
  this.size = ++data.size;
1018
1018
  return this;
@@ -1046,16 +1046,16 @@ function setCacheHas$1(value) {
1046
1046
  }
1047
1047
  var _setCacheHas = setCacheHas$1;
1048
1048
  var MapCache = _MapCache, setCacheAdd = _setCacheAdd, setCacheHas = _setCacheHas;
1049
- function SetCache$1(values) {
1049
+ function SetCache$2(values) {
1050
1050
  var index = -1, length = values == null ? 0 : values.length;
1051
1051
  this.__data__ = new MapCache();
1052
1052
  while (++index < length) {
1053
1053
  this.add(values[index]);
1054
1054
  }
1055
1055
  }
1056
- SetCache$1.prototype.add = SetCache$1.prototype.push = setCacheAdd;
1057
- SetCache$1.prototype.has = setCacheHas;
1058
- var _SetCache = SetCache$1;
1056
+ SetCache$2.prototype.add = SetCache$2.prototype.push = setCacheAdd;
1057
+ SetCache$2.prototype.has = setCacheHas;
1058
+ var _SetCache = SetCache$2;
1059
1059
  function arraySome$1(array, predicate) {
1060
1060
  var index = -1, length = array == null ? 0 : array.length;
1061
1061
  while (++index < length) {
@@ -1066,11 +1066,11 @@ function arraySome$1(array, predicate) {
1066
1066
  return false;
1067
1067
  }
1068
1068
  var _arraySome = arraySome$1;
1069
- function cacheHas$1(cache, key) {
1069
+ function cacheHas$2(cache, key) {
1070
1070
  return cache.has(key);
1071
1071
  }
1072
- var _cacheHas = cacheHas$1;
1073
- var SetCache = _SetCache, arraySome = _arraySome, cacheHas = _cacheHas;
1072
+ var _cacheHas = cacheHas$2;
1073
+ var SetCache$1 = _SetCache, arraySome = _arraySome, cacheHas$1 = _cacheHas;
1074
1074
  var COMPARE_PARTIAL_FLAG$3 = 1, COMPARE_UNORDERED_FLAG$1 = 2;
1075
1075
  function equalArrays$2(array, other, bitmask, customizer, equalFunc, stack) {
1076
1076
  var isPartial = bitmask & COMPARE_PARTIAL_FLAG$3, arrLength = array.length, othLength = other.length;
@@ -1082,7 +1082,7 @@ function equalArrays$2(array, other, bitmask, customizer, equalFunc, stack) {
1082
1082
  if (arrStacked && othStacked) {
1083
1083
  return arrStacked == other && othStacked == array;
1084
1084
  }
1085
- var index = -1, result = true, seen = bitmask & COMPARE_UNORDERED_FLAG$1 ? new SetCache() : void 0;
1085
+ var index = -1, result = true, seen = bitmask & COMPARE_UNORDERED_FLAG$1 ? new SetCache$1() : void 0;
1086
1086
  stack.set(array, other);
1087
1087
  stack.set(other, array);
1088
1088
  while (++index < arrLength) {
@@ -1099,7 +1099,7 @@ function equalArrays$2(array, other, bitmask, customizer, equalFunc, stack) {
1099
1099
  }
1100
1100
  if (seen) {
1101
1101
  if (!arraySome(other, function(othValue2, othIndex) {
1102
- if (!cacheHas(seen, othIndex) && (arrValue === othValue2 || equalFunc(arrValue, othValue2, bitmask, customizer, stack))) {
1102
+ if (!cacheHas$1(seen, othIndex) && (arrValue === othValue2 || equalFunc(arrValue, othValue2, bitmask, customizer, stack))) {
1103
1103
  return seen.push(othIndex);
1104
1104
  }
1105
1105
  })) {
@@ -1127,15 +1127,15 @@ function mapToArray$1(map) {
1127
1127
  return result;
1128
1128
  }
1129
1129
  var _mapToArray = mapToArray$1;
1130
- function setToArray$1(set) {
1130
+ function setToArray$3(set) {
1131
1131
  var index = -1, result = Array(set.size);
1132
1132
  set.forEach(function(value) {
1133
1133
  result[++index] = value;
1134
1134
  });
1135
1135
  return result;
1136
1136
  }
1137
- var _setToArray = setToArray$1;
1138
- var Symbol$2 = _Symbol, Uint8Array$1 = _Uint8Array, eq$1 = eq_1, equalArrays$1 = _equalArrays, mapToArray = _mapToArray, setToArray = _setToArray;
1137
+ var _setToArray = setToArray$3;
1138
+ var Symbol$2 = _Symbol, Uint8Array$1 = _Uint8Array, eq$1 = eq_1, equalArrays$1 = _equalArrays, mapToArray = _mapToArray, setToArray$2 = _setToArray;
1139
1139
  var COMPARE_PARTIAL_FLAG$2 = 1, COMPARE_UNORDERED_FLAG = 2;
1140
1140
  var boolTag$2 = "[object Boolean]", dateTag$2 = "[object Date]", errorTag$1 = "[object Error]", mapTag$3 = "[object Map]", numberTag$2 = "[object Number]", regexpTag$2 = "[object RegExp]", setTag$3 = "[object Set]", stringTag$2 = "[object String]", symbolTag$2 = "[object Symbol]";
1141
1141
  var arrayBufferTag$2 = "[object ArrayBuffer]", dataViewTag$2 = "[object DataView]";
@@ -1166,7 +1166,7 @@ function equalByTag$1(object, other, tag, bitmask, customizer, equalFunc, stack)
1166
1166
  var convert = mapToArray;
1167
1167
  case setTag$3:
1168
1168
  var isPartial = bitmask & COMPARE_PARTIAL_FLAG$2;
1169
- convert || (convert = setToArray);
1169
+ convert || (convert = setToArray$2);
1170
1170
  if (object.size != other.size && !isPartial) {
1171
1171
  return false;
1172
1172
  }
@@ -1369,2320 +1369,2444 @@ function isEqual(value, other) {
1369
1369
  return baseIsEqual(value, other);
1370
1370
  }
1371
1371
  var isEqual_1 = isEqual;
1372
- function useAvailability(originalMenu, markOnly = false, timeZone = void 0, interval = 60) {
1373
- const [menu, setMenu] = useState(originalMenu ? filterTimeAvailabilityOfProducts(originalMenu, timeZone, void 0, markOnly) : originalMenu);
1374
- useInterval(checkAvailability, interval * 1e3);
1375
- function checkAvailability() {
1376
- const filtered = originalMenu ? filterTimeAvailabilityOfProducts(originalMenu, timeZone, void 0, markOnly) : originalMenu;
1377
- if (!isEqual_1(filtered, menu)) {
1378
- console.log("menu has changed", filtered);
1379
- setMenu(filtered);
1380
- }
1381
- }
1382
- useEffect(checkAvailability, [menu, originalMenu]);
1383
- return menu;
1384
- }
1385
- var EPaymentStatus;
1386
- (function(EPaymentStatus2) {
1387
- EPaymentStatus2["UNINITIALIZED"] = "UNINITIALIZED";
1388
- EPaymentStatus2["PROCESSING"] = "PROCESSING";
1389
- EPaymentStatus2["PAID"] = "PAID";
1390
- EPaymentStatus2["FAILED"] = "FAILED";
1391
- EPaymentStatus2["PRINTING_RECEIPT"] = "PRINTING_RECEIPT";
1392
- EPaymentStatus2["PRINTING_RECEIPT_SUCCESS"] = "PRINTING_RECEIPT_SUCCESS";
1393
- EPaymentStatus2["SENDING_RECEIPT"] = "SENDING_RECEIPT";
1394
- EPaymentStatus2["SENDING_RECEIPT_SUCCESS"] = "SENDING_RECEIPT_SUCCESS";
1395
- EPaymentStatus2["ERROR"] = "ERROR";
1396
- })(EPaymentStatus || (EPaymentStatus = {}));
1397
- var ECouponViewType;
1398
- (function(ECouponViewType2) {
1399
- ECouponViewType2["CAROUSEL"] = "carousel";
1400
- ECouponViewType2["NORMAL"] = "normal";
1401
- ECouponViewType2["IMAGE"] = "image";
1402
- })(ECouponViewType || (ECouponViewType = {}));
1403
- var EProductKind;
1404
- (function(EProductKind2) {
1405
- EProductKind2["GROUP"] = "3e/group";
1406
- EProductKind2["PRODUCT"] = "3e/product";
1407
- EProductKind2["CATEGORY"] = "3e/group/category";
1408
- EProductKind2["OPTIONS"] = "3e/group/options";
1409
- EProductKind2["CONFIG"] = "3e/group/config";
1410
- EProductKind2["STATIC"] = "3e/static";
1411
- EProductKind2["REF"] = "3e/ref";
1412
- EProductKind2["QUERY"] = "3e/query";
1413
- })(EProductKind || (EProductKind = {}));
1414
- var EProductKindBucket;
1415
- (function(EProductKindBucket2) {
1416
- EProductKindBucket2["GROUP"] = "group";
1417
- EProductKindBucket2["PRODUCT"] = "product";
1418
- })(EProductKindBucket || (EProductKindBucket = {}));
1419
- var EOrderType;
1420
- (function(EOrderType2) {
1421
- EOrderType2["TAKE_AWAY"] = "TAKE_AWAY";
1422
- EOrderType2["DELIVERY"] = "DELIVERY";
1423
- EOrderType2["DINE_IN"] = "DINE_IN";
1424
- EOrderType2["DINE_IN_OPEN"] = "DINE_IN_OPEN";
1425
- EOrderType2["GLOVO_DELIVERY"] = "GLOVO_DELIVERY";
1426
- EOrderType2["GLOVO_TAKE_AWAY"] = "GLOVO_TAKE_AWAY";
1427
- EOrderType2["JUSTEAT_DELIVERY"] = "JUSTEAT_DELIVERY";
1428
- EOrderType2["JUSTEAT_TAKE_AWAY"] = "JUSTEAT_TAKE_AWAY";
1429
- EOrderType2["UBER_DELIVERY"] = "UBER_DELIVERY";
1430
- EOrderType2["UBER_TAKE_AWAY"] = "UBER_TAKE_AWAY";
1431
- EOrderType2["UBER_DINE_IN"] = "UBER_DINE_IN";
1432
- EOrderType2["BOLT_DELIVERY"] = "BOLT_DELIVERY";
1433
- EOrderType2["BOLT_TAKE_AWAY"] = "BOLT_TAKE_AWAY";
1434
- EOrderType2["WOLT_DELIVERY"] = "WOLT_DELIVERY";
1435
- EOrderType2["WOLT_TAKE_AWAY"] = "WOLT_TAKE_AWAY";
1436
- EOrderType2["WOLT_DINE_IN"] = "WOLT_DINE_IN";
1437
- })(EOrderType || (EOrderType = {}));
1438
- var EOrderStatus;
1439
- (function(EOrderStatus2) {
1440
- EOrderStatus2["NEW"] = "NEW";
1441
- EOrderStatus2["COMPLETED"] = "COMPLETED";
1442
- EOrderStatus2["VERIFIED"] = "VERIFIED";
1443
- EOrderStatus2["DELIVER"] = "DELIVER";
1444
- EOrderStatus2["DELIVERED"] = "DELIVERED";
1445
- EOrderStatus2["CLOSED"] = "CLOSED";
1446
- EOrderStatus2["ABANDONED"] = "ABANDONED";
1447
- EOrderStatus2["CANCELLED"] = "CANCELLED";
1448
- EOrderStatus2["PICKED"] = "PICKED";
1449
- })(EOrderStatus || (EOrderStatus = {}));
1450
- var EOrderPaymentType;
1451
- (function(EOrderPaymentType2) {
1452
- EOrderPaymentType2["CASH"] = "CASH";
1453
- EOrderPaymentType2["CARD"] = "CARD";
1454
- EOrderPaymentType2["COD"] = "COD";
1455
- EOrderPaymentType2["TERMINAL"] = "TERMINAL";
1456
- EOrderPaymentType2["EPAYMENT"] = "EPAYMENT";
1457
- EOrderPaymentType2["COUPON"] = "COUPON";
1458
- EOrderPaymentType2["WALLET"] = "WALLET";
1459
- EOrderPaymentType2["PREAUTHORIZED"] = "PREAUTHORIZED";
1460
- EOrderPaymentType2["RETURN"] = "RETURN";
1461
- EOrderPaymentType2["EXTERNAL"] = "EXTERNAL";
1462
- })(EOrderPaymentType || (EOrderPaymentType = {}));
1463
- var OrderSource;
1464
- (function(OrderSource2) {
1465
- OrderSource2["KIOSK"] = "KIOSK";
1466
- OrderSource2["WEB"] = "WEB";
1467
- OrderSource2["JUST_EAT_TAKE_AWAY"] = "JUSTEATTAKEAWAY";
1468
- OrderSource2["GLOVO"] = "GLOVO";
1469
- OrderSource2["PYSZNE"] = "PYSZNE";
1470
- OrderSource2["WOLT"] = "WOLT";
1471
- OrderSource2["UBER"] = "UBER";
1472
- OrderSource2["BOLT"] = "BOLT";
1473
- })(OrderSource || (OrderSource = {}));
1474
- var EOrderLineStatus;
1475
- (function(EOrderLineStatus2) {
1476
- EOrderLineStatus2["NEW"] = "NEW";
1477
- EOrderLineStatus2["TECHNICAL"] = "TECHNICAL";
1478
- EOrderLineStatus2["CONFIRMED"] = "CONFIRMED";
1479
- EOrderLineStatus2["PROCESSING"] = "PROCESSING";
1480
- EOrderLineStatus2["PROCESSED"] = "PROCESSED";
1481
- EOrderLineStatus2["VOID"] = "VOID";
1482
- EOrderLineStatus2["WASTE"] = "WASTE";
1483
- })(EOrderLineStatus || (EOrderLineStatus = {}));
1484
- var EOrderProductKind;
1485
- (function(EOrderProductKind2) {
1486
- EOrderProductKind2["GROUP"] = "group";
1487
- EOrderProductKind2["PRODUCT"] = "product";
1488
- })(EOrderProductKind || (EOrderProductKind = {}));
1489
- var EChannelName;
1490
- (function(EChannelName2) {
1491
- EChannelName2["DINE_IN"] = "DINE_IN";
1492
- EChannelName2["TAKE_AWAY"] = "TAKE_AWAY";
1493
- EChannelName2["DELIVERY"] = "DELIVERY";
1494
- EChannelName2["GLOVO_DELIVERY"] = "GLOVO_DELIVERY";
1495
- EChannelName2["JUSTEAT_DELIVERY"] = "JUSTEAT_DELIVERY";
1496
- EChannelName2["UBER_DELIVERY"] = "UBER_DELIVERY";
1497
- EChannelName2["BOLT_DELIVERY"] = "BOLT_DELIVERY";
1498
- EChannelName2["WOLT_DELIVERY"] = "WOLT_DELIVERY";
1499
- })(EChannelName || (EChannelName = {}));
1500
- function arrayEach$1(array, iteratee) {
1501
- var index = -1, length = array == null ? 0 : array.length;
1502
- while (++index < length) {
1503
- if (iteratee(array[index], index, array) === false) {
1504
- break;
1505
- }
1506
- }
1507
- return array;
1508
- }
1509
- var _arrayEach = arrayEach$1;
1510
- var getNative = _getNative;
1511
- var defineProperty$1 = function() {
1372
+ var queryString = {};
1373
+ var strictUriEncode = (str) => encodeURIComponent(str).replace(/[!'()*]/g, (x) => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);
1374
+ var token = "%[a-f0-9]{2}";
1375
+ var singleMatcher = new RegExp("(" + token + ")|([^%]+?)", "gi");
1376
+ var multiMatcher = new RegExp("(" + token + ")+", "gi");
1377
+ function decodeComponents(components, split) {
1512
1378
  try {
1513
- var func = getNative(Object, "defineProperty");
1514
- func({}, "", {});
1515
- return func;
1516
- } catch (e) {
1517
- }
1518
- }();
1519
- var _defineProperty = defineProperty$1;
1520
- var defineProperty = _defineProperty;
1521
- function baseAssignValue$2(object, key, value) {
1522
- if (key == "__proto__" && defineProperty) {
1523
- defineProperty(object, key, {
1524
- "configurable": true,
1525
- "enumerable": true,
1526
- "value": value,
1527
- "writable": true
1528
- });
1529
- } else {
1530
- object[key] = value;
1379
+ return [decodeURIComponent(components.join(""))];
1380
+ } catch (err) {
1531
1381
  }
1532
- }
1533
- var _baseAssignValue = baseAssignValue$2;
1534
- var baseAssignValue$1 = _baseAssignValue, eq = eq_1;
1535
- var objectProto$2 = Object.prototype;
1536
- var hasOwnProperty$2 = objectProto$2.hasOwnProperty;
1537
- function assignValue$2(object, key, value) {
1538
- var objValue = object[key];
1539
- if (!(hasOwnProperty$2.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) {
1540
- baseAssignValue$1(object, key, value);
1382
+ if (components.length === 1) {
1383
+ return components;
1541
1384
  }
1385
+ split = split || 1;
1386
+ var left = components.slice(0, split);
1387
+ var right = components.slice(split);
1388
+ return Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));
1542
1389
  }
1543
- var _assignValue = assignValue$2;
1544
- var assignValue$1 = _assignValue, baseAssignValue = _baseAssignValue;
1545
- function copyObject$4(source2, props, object, customizer) {
1546
- var isNew = !object;
1547
- object || (object = {});
1548
- var index = -1, length = props.length;
1549
- while (++index < length) {
1550
- var key = props[index];
1551
- var newValue = customizer ? customizer(object[key], source2[key], key, object, source2) : void 0;
1552
- if (newValue === void 0) {
1553
- newValue = source2[key];
1554
- }
1555
- if (isNew) {
1556
- baseAssignValue(object, key, newValue);
1557
- } else {
1558
- assignValue$1(object, key, newValue);
1390
+ function decode(input) {
1391
+ try {
1392
+ return decodeURIComponent(input);
1393
+ } catch (err) {
1394
+ var tokens = input.match(singleMatcher) || [];
1395
+ for (var i = 1; i < tokens.length; i++) {
1396
+ input = decodeComponents(tokens, i).join("");
1397
+ tokens = input.match(singleMatcher) || [];
1559
1398
  }
1399
+ return input;
1560
1400
  }
1561
- return object;
1562
- }
1563
- var _copyObject = copyObject$4;
1564
- var copyObject$3 = _copyObject, keys$1 = keys_1;
1565
- function baseAssign$1(object, source2) {
1566
- return object && copyObject$3(source2, keys$1(source2), object);
1567
1401
  }
1568
- var _baseAssign = baseAssign$1;
1569
- function nativeKeysIn$1(object) {
1570
- var result = [];
1571
- if (object != null) {
1572
- for (var key in Object(object)) {
1573
- result.push(key);
1402
+ function customDecodeURIComponent(input) {
1403
+ var replaceMap = {
1404
+ "%FE%FF": "\uFFFD\uFFFD",
1405
+ "%FF%FE": "\uFFFD\uFFFD"
1406
+ };
1407
+ var match = multiMatcher.exec(input);
1408
+ while (match) {
1409
+ try {
1410
+ replaceMap[match[0]] = decodeURIComponent(match[0]);
1411
+ } catch (err) {
1412
+ var result = decode(match[0]);
1413
+ if (result !== match[0]) {
1414
+ replaceMap[match[0]] = result;
1415
+ }
1574
1416
  }
1417
+ match = multiMatcher.exec(input);
1575
1418
  }
1576
- return result;
1577
- }
1578
- var _nativeKeysIn = nativeKeysIn$1;
1579
- var isObject$3 = isObject_1, isPrototype$1 = _isPrototype, nativeKeysIn = _nativeKeysIn;
1580
- var objectProto$1 = Object.prototype;
1581
- var hasOwnProperty$1 = objectProto$1.hasOwnProperty;
1582
- function baseKeysIn$1(object) {
1583
- if (!isObject$3(object)) {
1584
- return nativeKeysIn(object);
1585
- }
1586
- var isProto = isPrototype$1(object), result = [];
1587
- for (var key in object) {
1588
- if (!(key == "constructor" && (isProto || !hasOwnProperty$1.call(object, key)))) {
1589
- result.push(key);
1590
- }
1419
+ replaceMap["%C2"] = "\uFFFD";
1420
+ var entries = Object.keys(replaceMap);
1421
+ for (var i = 0; i < entries.length; i++) {
1422
+ var key = entries[i];
1423
+ input = input.replace(new RegExp(key, "g"), replaceMap[key]);
1591
1424
  }
1592
- return result;
1425
+ return input;
1593
1426
  }
1594
- var _baseKeysIn = baseKeysIn$1;
1595
- var arrayLikeKeys = _arrayLikeKeys, baseKeysIn = _baseKeysIn, isArrayLike = isArrayLike_1;
1596
- function keysIn$3(object) {
1597
- return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
1598
- }
1599
- var keysIn_1 = keysIn$3;
1600
- var copyObject$2 = _copyObject, keysIn$2 = keysIn_1;
1601
- function baseAssignIn$1(object, source2) {
1602
- return object && copyObject$2(source2, keysIn$2(source2), object);
1603
- }
1604
- var _baseAssignIn = baseAssignIn$1;
1605
- var _cloneBuffer = { exports: {} };
1606
- (function(module, exports) {
1607
- var root2 = _root;
1608
- var freeExports = exports && !exports.nodeType && exports;
1609
- var freeModule = freeExports && true && module && !module.nodeType && module;
1610
- var moduleExports = freeModule && freeModule.exports === freeExports;
1611
- var Buffer = moduleExports ? root2.Buffer : void 0, allocUnsafe = Buffer ? Buffer.allocUnsafe : void 0;
1612
- function cloneBuffer2(buffer, isDeep) {
1613
- if (isDeep) {
1614
- return buffer.slice();
1615
- }
1616
- var length = buffer.length, result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);
1617
- buffer.copy(result);
1618
- return result;
1619
- }
1620
- module.exports = cloneBuffer2;
1621
- })(_cloneBuffer, _cloneBuffer.exports);
1622
- function copyArray$1(source2, array) {
1623
- var index = -1, length = source2.length;
1624
- array || (array = Array(length));
1625
- while (++index < length) {
1626
- array[index] = source2[index];
1427
+ var decodeUriComponent = function(encodedURI) {
1428
+ if (typeof encodedURI !== "string") {
1429
+ throw new TypeError("Expected `encodedURI` to be of type `string`, got `" + typeof encodedURI + "`");
1627
1430
  }
1628
- return array;
1629
- }
1630
- var _copyArray = copyArray$1;
1631
- var copyObject$1 = _copyObject, getSymbols$1 = _getSymbols;
1632
- function copySymbols$1(source2, object) {
1633
- return copyObject$1(source2, getSymbols$1(source2), object);
1634
- }
1635
- var _copySymbols = copySymbols$1;
1636
- var overArg = _overArg;
1637
- var getPrototype$2 = overArg(Object.getPrototypeOf, Object);
1638
- var _getPrototype = getPrototype$2;
1639
- var arrayPush = _arrayPush, getPrototype$1 = _getPrototype, getSymbols = _getSymbols, stubArray = stubArray_1;
1640
- var nativeGetSymbols = Object.getOwnPropertySymbols;
1641
- var getSymbolsIn$2 = !nativeGetSymbols ? stubArray : function(object) {
1642
- var result = [];
1643
- while (object) {
1644
- arrayPush(result, getSymbols(object));
1645
- object = getPrototype$1(object);
1431
+ try {
1432
+ encodedURI = encodedURI.replace(/\+/g, " ");
1433
+ return decodeURIComponent(encodedURI);
1434
+ } catch (err) {
1435
+ return customDecodeURIComponent(encodedURI);
1646
1436
  }
1647
- return result;
1648
1437
  };
1649
- var _getSymbolsIn = getSymbolsIn$2;
1650
- var copyObject = _copyObject, getSymbolsIn$1 = _getSymbolsIn;
1651
- function copySymbolsIn$1(source2, object) {
1652
- return copyObject(source2, getSymbolsIn$1(source2), object);
1653
- }
1654
- var _copySymbolsIn = copySymbolsIn$1;
1655
- var baseGetAllKeys = _baseGetAllKeys, getSymbolsIn = _getSymbolsIn, keysIn$1 = keysIn_1;
1656
- function getAllKeysIn$1(object) {
1657
- return baseGetAllKeys(object, keysIn$1, getSymbolsIn);
1658
- }
1659
- var _getAllKeysIn = getAllKeysIn$1;
1660
- var objectProto = Object.prototype;
1661
- var hasOwnProperty = objectProto.hasOwnProperty;
1662
- function initCloneArray$1(array) {
1663
- var length = array.length, result = new array.constructor(length);
1664
- if (length && typeof array[0] == "string" && hasOwnProperty.call(array, "index")) {
1665
- result.index = array.index;
1666
- result.input = array.input;
1667
- }
1668
- return result;
1669
- }
1670
- var _initCloneArray = initCloneArray$1;
1671
- var Uint8Array = _Uint8Array;
1672
- function cloneArrayBuffer$3(arrayBuffer) {
1673
- var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
1674
- new Uint8Array(result).set(new Uint8Array(arrayBuffer));
1675
- return result;
1676
- }
1677
- var _cloneArrayBuffer = cloneArrayBuffer$3;
1678
- var cloneArrayBuffer$2 = _cloneArrayBuffer;
1679
- function cloneDataView$1(dataView, isDeep) {
1680
- var buffer = isDeep ? cloneArrayBuffer$2(dataView.buffer) : dataView.buffer;
1681
- return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);
1682
- }
1683
- var _cloneDataView = cloneDataView$1;
1684
- var reFlags = /\w*$/;
1685
- function cloneRegExp$1(regexp) {
1686
- var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));
1687
- result.lastIndex = regexp.lastIndex;
1688
- return result;
1689
- }
1690
- var _cloneRegExp = cloneRegExp$1;
1691
- var Symbol$1 = _Symbol;
1692
- var symbolProto = Symbol$1 ? Symbol$1.prototype : void 0, symbolValueOf = symbolProto ? symbolProto.valueOf : void 0;
1693
- function cloneSymbol$1(symbol) {
1694
- return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};
1695
- }
1696
- var _cloneSymbol = cloneSymbol$1;
1697
- var cloneArrayBuffer$1 = _cloneArrayBuffer;
1698
- function cloneTypedArray$1(typedArray, isDeep) {
1699
- var buffer = isDeep ? cloneArrayBuffer$1(typedArray.buffer) : typedArray.buffer;
1700
- return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
1701
- }
1702
- var _cloneTypedArray = cloneTypedArray$1;
1703
- var cloneArrayBuffer = _cloneArrayBuffer, cloneDataView = _cloneDataView, cloneRegExp = _cloneRegExp, cloneSymbol = _cloneSymbol, cloneTypedArray = _cloneTypedArray;
1704
- var boolTag$1 = "[object Boolean]", dateTag$1 = "[object Date]", mapTag$2 = "[object Map]", numberTag$1 = "[object Number]", regexpTag$1 = "[object RegExp]", setTag$2 = "[object Set]", stringTag$1 = "[object String]", symbolTag$1 = "[object Symbol]";
1705
- var arrayBufferTag$1 = "[object ArrayBuffer]", dataViewTag$1 = "[object DataView]", float32Tag$1 = "[object Float32Array]", float64Tag$1 = "[object Float64Array]", int8Tag$1 = "[object Int8Array]", int16Tag$1 = "[object Int16Array]", int32Tag$1 = "[object Int32Array]", uint8Tag$1 = "[object Uint8Array]", uint8ClampedTag$1 = "[object Uint8ClampedArray]", uint16Tag$1 = "[object Uint16Array]", uint32Tag$1 = "[object Uint32Array]";
1706
- function initCloneByTag$1(object, tag, isDeep) {
1707
- var Ctor = object.constructor;
1708
- switch (tag) {
1709
- case arrayBufferTag$1:
1710
- return cloneArrayBuffer(object);
1711
- case boolTag$1:
1712
- case dateTag$1:
1713
- return new Ctor(+object);
1714
- case dataViewTag$1:
1715
- return cloneDataView(object, isDeep);
1716
- case float32Tag$1:
1717
- case float64Tag$1:
1718
- case int8Tag$1:
1719
- case int16Tag$1:
1720
- case int32Tag$1:
1721
- case uint8Tag$1:
1722
- case uint8ClampedTag$1:
1723
- case uint16Tag$1:
1724
- case uint32Tag$1:
1725
- return cloneTypedArray(object, isDeep);
1726
- case mapTag$2:
1727
- return new Ctor();
1728
- case numberTag$1:
1729
- case stringTag$1:
1730
- return new Ctor(object);
1731
- case regexpTag$1:
1732
- return cloneRegExp(object);
1733
- case setTag$2:
1734
- return new Ctor();
1735
- case symbolTag$1:
1736
- return cloneSymbol(object);
1737
- }
1738
- }
1739
- var _initCloneByTag = initCloneByTag$1;
1740
- var isObject$2 = isObject_1;
1741
- var objectCreate = Object.create;
1742
- var baseCreate$1 = function() {
1743
- function object() {
1744
- }
1745
- return function(proto) {
1746
- if (!isObject$2(proto)) {
1747
- return {};
1748
- }
1749
- if (objectCreate) {
1750
- return objectCreate(proto);
1751
- }
1752
- object.prototype = proto;
1753
- var result = new object();
1754
- object.prototype = void 0;
1755
- return result;
1756
- };
1757
- }();
1758
- var _baseCreate = baseCreate$1;
1759
- var baseCreate = _baseCreate, getPrototype = _getPrototype, isPrototype = _isPrototype;
1760
- function initCloneObject$1(object) {
1761
- return typeof object.constructor == "function" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {};
1762
- }
1763
- var _initCloneObject = initCloneObject$1;
1764
- var getTag$2 = _getTag, isObjectLike$1 = isObjectLike_1;
1765
- var mapTag$1 = "[object Map]";
1766
- function baseIsMap$1(value) {
1767
- return isObjectLike$1(value) && getTag$2(value) == mapTag$1;
1768
- }
1769
- var _baseIsMap = baseIsMap$1;
1770
- var baseIsMap = _baseIsMap, baseUnary$1 = _baseUnary, nodeUtil$1 = _nodeUtil.exports;
1771
- var nodeIsMap = nodeUtil$1 && nodeUtil$1.isMap;
1772
- var isMap$1 = nodeIsMap ? baseUnary$1(nodeIsMap) : baseIsMap;
1773
- var isMap_1 = isMap$1;
1774
- var getTag$1 = _getTag, isObjectLike = isObjectLike_1;
1775
- var setTag$1 = "[object Set]";
1776
- function baseIsSet$1(value) {
1777
- return isObjectLike(value) && getTag$1(value) == setTag$1;
1778
- }
1779
- var _baseIsSet = baseIsSet$1;
1780
- var baseIsSet = _baseIsSet, baseUnary = _baseUnary, nodeUtil = _nodeUtil.exports;
1781
- var nodeIsSet = nodeUtil && nodeUtil.isSet;
1782
- var isSet$1 = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;
1783
- var isSet_1 = isSet$1;
1784
- var Stack = _Stack, arrayEach = _arrayEach, assignValue = _assignValue, baseAssign = _baseAssign, baseAssignIn = _baseAssignIn, cloneBuffer = _cloneBuffer.exports, copyArray = _copyArray, copySymbols = _copySymbols, copySymbolsIn = _copySymbolsIn, getAllKeys = _getAllKeys, getAllKeysIn = _getAllKeysIn, getTag = _getTag, initCloneArray = _initCloneArray, initCloneByTag = _initCloneByTag, initCloneObject = _initCloneObject, isArray$1 = isArray_1, isBuffer$1 = isBuffer$5.exports, isMap = isMap_1, isObject$1 = isObject_1, isSet = isSet_1, keys = keys_1, keysIn = keysIn_1;
1785
- var CLONE_DEEP_FLAG$1 = 1, CLONE_FLAT_FLAG = 2, CLONE_SYMBOLS_FLAG$1 = 4;
1786
- var argsTag = "[object Arguments]", arrayTag = "[object Array]", boolTag = "[object Boolean]", dateTag = "[object Date]", errorTag = "[object Error]", funcTag = "[object Function]", genTag = "[object GeneratorFunction]", mapTag = "[object Map]", numberTag = "[object Number]", objectTag = "[object Object]", regexpTag = "[object RegExp]", setTag = "[object Set]", stringTag = "[object String]", symbolTag = "[object Symbol]", weakMapTag = "[object WeakMap]";
1787
- var arrayBufferTag = "[object ArrayBuffer]", dataViewTag = "[object DataView]", float32Tag = "[object Float32Array]", float64Tag = "[object Float64Array]", int8Tag = "[object Int8Array]", int16Tag = "[object Int16Array]", int32Tag = "[object Int32Array]", uint8Tag = "[object Uint8Array]", uint8ClampedTag = "[object Uint8ClampedArray]", uint16Tag = "[object Uint16Array]", uint32Tag = "[object Uint32Array]";
1788
- var cloneableTags = {};
1789
- cloneableTags[argsTag] = cloneableTags[arrayTag] = cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = cloneableTags[boolTag] = cloneableTags[dateTag] = cloneableTags[float32Tag] = cloneableTags[float64Tag] = cloneableTags[int8Tag] = cloneableTags[int16Tag] = cloneableTags[int32Tag] = cloneableTags[mapTag] = cloneableTags[numberTag] = cloneableTags[objectTag] = cloneableTags[regexpTag] = cloneableTags[setTag] = cloneableTags[stringTag] = cloneableTags[symbolTag] = cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
1790
- cloneableTags[errorTag] = cloneableTags[funcTag] = cloneableTags[weakMapTag] = false;
1791
- function baseClone$1(value, bitmask, customizer, key, object, stack) {
1792
- var result, isDeep = bitmask & CLONE_DEEP_FLAG$1, isFlat = bitmask & CLONE_FLAT_FLAG, isFull = bitmask & CLONE_SYMBOLS_FLAG$1;
1793
- if (customizer) {
1794
- result = object ? customizer(value, key, object, stack) : customizer(value);
1438
+ var splitOnFirst = (string, separator) => {
1439
+ if (!(typeof string === "string" && typeof separator === "string")) {
1440
+ throw new TypeError("Expected the arguments to be of type `string`");
1795
1441
  }
1796
- if (result !== void 0) {
1797
- return result;
1442
+ if (separator === "") {
1443
+ return [string];
1798
1444
  }
1799
- if (!isObject$1(value)) {
1800
- return value;
1445
+ const separatorIndex = string.indexOf(separator);
1446
+ if (separatorIndex === -1) {
1447
+ return [string];
1801
1448
  }
1802
- var isArr = isArray$1(value);
1803
- if (isArr) {
1804
- result = initCloneArray(value);
1805
- if (!isDeep) {
1806
- return copyArray(value, result);
1807
- }
1808
- } else {
1809
- var tag = getTag(value), isFunc = tag == funcTag || tag == genTag;
1810
- if (isBuffer$1(value)) {
1811
- return cloneBuffer(value, isDeep);
1812
- }
1813
- if (tag == objectTag || tag == argsTag || isFunc && !object) {
1814
- result = isFlat || isFunc ? {} : initCloneObject(value);
1815
- if (!isDeep) {
1816
- return isFlat ? copySymbolsIn(value, baseAssignIn(result, value)) : copySymbols(value, baseAssign(result, value));
1817
- }
1818
- } else {
1819
- if (!cloneableTags[tag]) {
1820
- return object ? value : {};
1821
- }
1822
- result = initCloneByTag(value, tag, isDeep);
1449
+ return [
1450
+ string.slice(0, separatorIndex),
1451
+ string.slice(separatorIndex + separator.length)
1452
+ ];
1453
+ };
1454
+ var filterObj = function(obj, predicate) {
1455
+ var ret = {};
1456
+ var keys2 = Object.keys(obj);
1457
+ var isArr = Array.isArray(predicate);
1458
+ for (var i = 0; i < keys2.length; i++) {
1459
+ var key = keys2[i];
1460
+ var val = obj[key];
1461
+ if (isArr ? predicate.indexOf(key) !== -1 : predicate(key, val, obj)) {
1462
+ ret[key] = val;
1823
1463
  }
1824
1464
  }
1825
- stack || (stack = new Stack());
1826
- var stacked = stack.get(value);
1827
- if (stacked) {
1828
- return stacked;
1829
- }
1830
- stack.set(value, result);
1831
- if (isSet(value)) {
1832
- value.forEach(function(subValue) {
1833
- result.add(baseClone$1(subValue, bitmask, customizer, subValue, value, stack));
1834
- });
1835
- } else if (isMap(value)) {
1836
- value.forEach(function(subValue, key2) {
1837
- result.set(key2, baseClone$1(subValue, bitmask, customizer, key2, value, stack));
1838
- });
1465
+ return ret;
1466
+ };
1467
+ (function(exports) {
1468
+ const strictUriEncode$1 = strictUriEncode;
1469
+ const decodeComponent = decodeUriComponent;
1470
+ const splitOnFirst$1 = splitOnFirst;
1471
+ const filterObject = filterObj;
1472
+ const isNullOrUndefined = (value) => value === null || value === void 0;
1473
+ const encodeFragmentIdentifier = Symbol("encodeFragmentIdentifier");
1474
+ function encoderForArrayFormat(options) {
1475
+ switch (options.arrayFormat) {
1476
+ case "index":
1477
+ return (key) => (result, value) => {
1478
+ const index = result.length;
1479
+ if (value === void 0 || options.skipNull && value === null || options.skipEmptyString && value === "") {
1480
+ return result;
1481
+ }
1482
+ if (value === null) {
1483
+ return [...result, [encode2(key, options), "[", index, "]"].join("")];
1484
+ }
1485
+ return [
1486
+ ...result,
1487
+ [encode2(key, options), "[", encode2(index, options), "]=", encode2(value, options)].join("")
1488
+ ];
1489
+ };
1490
+ case "bracket":
1491
+ return (key) => (result, value) => {
1492
+ if (value === void 0 || options.skipNull && value === null || options.skipEmptyString && value === "") {
1493
+ return result;
1494
+ }
1495
+ if (value === null) {
1496
+ return [...result, [encode2(key, options), "[]"].join("")];
1497
+ }
1498
+ return [...result, [encode2(key, options), "[]=", encode2(value, options)].join("")];
1499
+ };
1500
+ case "colon-list-separator":
1501
+ return (key) => (result, value) => {
1502
+ if (value === void 0 || options.skipNull && value === null || options.skipEmptyString && value === "") {
1503
+ return result;
1504
+ }
1505
+ if (value === null) {
1506
+ return [...result, [encode2(key, options), ":list="].join("")];
1507
+ }
1508
+ return [...result, [encode2(key, options), ":list=", encode2(value, options)].join("")];
1509
+ };
1510
+ case "comma":
1511
+ case "separator":
1512
+ case "bracket-separator": {
1513
+ const keyValueSep = options.arrayFormat === "bracket-separator" ? "[]=" : "=";
1514
+ return (key) => (result, value) => {
1515
+ if (value === void 0 || options.skipNull && value === null || options.skipEmptyString && value === "") {
1516
+ return result;
1517
+ }
1518
+ value = value === null ? "" : value;
1519
+ if (result.length === 0) {
1520
+ return [[encode2(key, options), keyValueSep, encode2(value, options)].join("")];
1521
+ }
1522
+ return [[result, encode2(value, options)].join(options.arrayFormatSeparator)];
1523
+ };
1524
+ }
1525
+ default:
1526
+ return (key) => (result, value) => {
1527
+ if (value === void 0 || options.skipNull && value === null || options.skipEmptyString && value === "") {
1528
+ return result;
1529
+ }
1530
+ if (value === null) {
1531
+ return [...result, encode2(key, options)];
1532
+ }
1533
+ return [...result, [encode2(key, options), "=", encode2(value, options)].join("")];
1534
+ };
1535
+ }
1839
1536
  }
1840
- var keysFunc = isFull ? isFlat ? getAllKeysIn : getAllKeys : isFlat ? keysIn : keys;
1841
- var props = isArr ? void 0 : keysFunc(value);
1842
- arrayEach(props || value, function(subValue, key2) {
1843
- if (props) {
1844
- key2 = subValue;
1845
- subValue = value[key2];
1537
+ function parserForArrayFormat(options) {
1538
+ let result;
1539
+ switch (options.arrayFormat) {
1540
+ case "index":
1541
+ return (key, value, accumulator) => {
1542
+ result = /\[(\d*)\]$/.exec(key);
1543
+ key = key.replace(/\[\d*\]$/, "");
1544
+ if (!result) {
1545
+ accumulator[key] = value;
1546
+ return;
1547
+ }
1548
+ if (accumulator[key] === void 0) {
1549
+ accumulator[key] = {};
1550
+ }
1551
+ accumulator[key][result[1]] = value;
1552
+ };
1553
+ case "bracket":
1554
+ return (key, value, accumulator) => {
1555
+ result = /(\[\])$/.exec(key);
1556
+ key = key.replace(/\[\]$/, "");
1557
+ if (!result) {
1558
+ accumulator[key] = value;
1559
+ return;
1560
+ }
1561
+ if (accumulator[key] === void 0) {
1562
+ accumulator[key] = [value];
1563
+ return;
1564
+ }
1565
+ accumulator[key] = [].concat(accumulator[key], value);
1566
+ };
1567
+ case "colon-list-separator":
1568
+ return (key, value, accumulator) => {
1569
+ result = /(:list)$/.exec(key);
1570
+ key = key.replace(/:list$/, "");
1571
+ if (!result) {
1572
+ accumulator[key] = value;
1573
+ return;
1574
+ }
1575
+ if (accumulator[key] === void 0) {
1576
+ accumulator[key] = [value];
1577
+ return;
1578
+ }
1579
+ accumulator[key] = [].concat(accumulator[key], value);
1580
+ };
1581
+ case "comma":
1582
+ case "separator":
1583
+ return (key, value, accumulator) => {
1584
+ const isArray2 = typeof value === "string" && value.includes(options.arrayFormatSeparator);
1585
+ const isEncodedArray = typeof value === "string" && !isArray2 && decode2(value, options).includes(options.arrayFormatSeparator);
1586
+ value = isEncodedArray ? decode2(value, options) : value;
1587
+ const newValue = isArray2 || isEncodedArray ? value.split(options.arrayFormatSeparator).map((item) => decode2(item, options)) : value === null ? value : decode2(value, options);
1588
+ accumulator[key] = newValue;
1589
+ };
1590
+ case "bracket-separator":
1591
+ return (key, value, accumulator) => {
1592
+ const isArray2 = /(\[\])$/.test(key);
1593
+ key = key.replace(/\[\]$/, "");
1594
+ if (!isArray2) {
1595
+ accumulator[key] = value ? decode2(value, options) : value;
1596
+ return;
1597
+ }
1598
+ const arrayValue = value === null ? [] : value.split(options.arrayFormatSeparator).map((item) => decode2(item, options));
1599
+ if (accumulator[key] === void 0) {
1600
+ accumulator[key] = arrayValue;
1601
+ return;
1602
+ }
1603
+ accumulator[key] = [].concat(accumulator[key], arrayValue);
1604
+ };
1605
+ default:
1606
+ return (key, value, accumulator) => {
1607
+ if (accumulator[key] === void 0) {
1608
+ accumulator[key] = value;
1609
+ return;
1610
+ }
1611
+ accumulator[key] = [].concat(accumulator[key], value);
1612
+ };
1846
1613
  }
1847
- assignValue(result, key2, baseClone$1(subValue, bitmask, customizer, key2, value, stack));
1848
- });
1849
- return result;
1850
- }
1851
- var _baseClone = baseClone$1;
1852
- var baseClone = _baseClone;
1853
- var CLONE_DEEP_FLAG = 1, CLONE_SYMBOLS_FLAG = 4;
1854
- function cloneDeep(value) {
1855
- return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);
1856
- }
1857
- var cloneDeep_1 = cloneDeep;
1858
- function shouldShow(product, state) {
1859
- if (!state || !state.filter || !product || !product.filter || product.kind !== EProductKind.CONFIG)
1860
- return true;
1861
- if (product.filter && product.items) {
1862
- const filteredConfig = Object.values(product.filter).flat().filter((item) => {
1863
- var _a, _b, _c, _d;
1864
- return state.filter[(_b = (_a = product.items) == null ? void 0 : _a[0]) == null ? void 0 : _b.fltCtx] && Object.values(state.filter[(_d = (_c = product.items) == null ? void 0 : _c[0]) == null ? void 0 : _d.fltCtx]).includes(item);
1865
- });
1866
- if (Array.isArray(filteredConfig) && filteredConfig.length === 0) {
1867
- return false;
1614
+ }
1615
+ function validateArrayFormatSeparator(value) {
1616
+ if (typeof value !== "string" || value.length !== 1) {
1617
+ throw new TypeError("arrayFormatSeparator must be single character string");
1868
1618
  }
1869
1619
  }
1870
- return true;
1871
- }
1872
- const calculateProductPrice = (product, rootState, level = 0) => {
1873
- if (!product)
1874
- return 0;
1875
- let price = parseFloat(product.price) || 0;
1876
- const { items } = product;
1877
- const state = cloneDeep_1(rootState);
1878
- if (shouldShow(product, state)) {
1879
- if (Array.isArray(items)) {
1880
- items.forEach((item) => {
1881
- let itemPrice = 0;
1882
- if (item.kind !== "3e/product") {
1883
- itemPrice = calculateProductPrice(item, state, level + 1);
1884
- } else {
1885
- const { selected = {} } = state;
1886
- const { selCtx, id } = item;
1887
- if (selCtx in selected && id in selected[selCtx]) {
1888
- itemPrice = calculateProductPrice(item, state, level + 1) * selected[selCtx][id];
1889
- delete state.selected[selCtx][id];
1890
- }
1891
- }
1892
- price += itemPrice;
1893
- });
1620
+ function encode2(value, options) {
1621
+ if (options.encode) {
1622
+ return options.strict ? strictUriEncode$1(value) : encodeURIComponent(value);
1894
1623
  }
1624
+ return value;
1895
1625
  }
1896
- return Math.round(100 * price) / 100;
1897
- };
1898
- const useDisplayPrice = ({
1899
- product,
1900
- state,
1901
- selected,
1902
- cheapestGroupOptionsProduct
1903
- }) => {
1904
- var _a;
1905
- const calculatedPrice = state ? calculateProductPrice(product, state) : 0;
1906
- const calculatedPriceDefaultProductState = product.state && !isEmpty_1((_a = product == null ? void 0 : product.state) == null ? void 0 : _a.selected) ? calculateProductPrice(product, product.state) : 0;
1907
- const showAsMinPrice = product.minPrice && parseFloat(product.price) === calculatedPrice;
1908
- let displayPrice = selected || !!cheapestGroupOptionsProduct || parseFloat(product.price) === 0 ? calculatedPrice || calculatedPriceDefaultProductState : parseFloat(product.price);
1909
- if (cheapestGroupOptionsProduct !== void 0) {
1910
- displayPrice -= cheapestGroupOptionsProduct;
1626
+ function decode2(value, options) {
1627
+ if (options.decode) {
1628
+ return decodeComponent(value);
1629
+ }
1630
+ return value;
1911
1631
  }
1912
- if (showAsMinPrice && product.minPrice)
1913
- displayPrice = parseFloat(product.minPrice);
1914
- return { displayPrice, showAsMinPrice, calculatedPriceDefaultProductState };
1915
- };
1916
- function groupOrderLines(array) {
1917
- const result = [];
1918
- array.reduce((res, value) => {
1919
- if (!res[value.hash]) {
1920
- res[value.hash] = {
1921
- ...value,
1922
- quantity: 0,
1923
- discounted: 0,
1924
- discounts: [],
1925
- firstProductQuantity: value.quantity,
1926
- itemsToRemove: []
1927
- };
1928
- result.push(res[value.hash]);
1632
+ function keysSorter(input) {
1633
+ if (Array.isArray(input)) {
1634
+ return input.sort();
1929
1635
  }
1930
- res[value.hash].quantity += value.quantity;
1931
- res[value.hash].itemsToRemove.push(value.id);
1932
- if (value.discounts) {
1933
- if (!res[value.hash].discounts) {
1934
- res[value.hash].discounts = [];
1636
+ if (typeof input === "object") {
1637
+ return keysSorter(Object.keys(input)).sort((a, b) => Number(a) - Number(b)).map((key) => input[key]);
1638
+ }
1639
+ return input;
1640
+ }
1641
+ function removeHash(input) {
1642
+ const hashStart = input.indexOf("#");
1643
+ if (hashStart !== -1) {
1644
+ input = input.slice(0, hashStart);
1645
+ }
1646
+ return input;
1647
+ }
1648
+ function getHash(url) {
1649
+ let hash = "";
1650
+ const hashStart = url.indexOf("#");
1651
+ if (hashStart !== -1) {
1652
+ hash = url.slice(hashStart);
1653
+ }
1654
+ return hash;
1655
+ }
1656
+ function extract(input) {
1657
+ input = removeHash(input);
1658
+ const queryStart = input.indexOf("?");
1659
+ if (queryStart === -1) {
1660
+ return "";
1661
+ }
1662
+ return input.slice(queryStart + 1);
1663
+ }
1664
+ function parseValue(value, options) {
1665
+ if (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === "string" && value.trim() !== "")) {
1666
+ value = Number(value);
1667
+ } else if (options.parseBooleans && value !== null && (value.toLowerCase() === "true" || value.toLowerCase() === "false")) {
1668
+ value = value.toLowerCase() === "true";
1669
+ }
1670
+ return value;
1671
+ }
1672
+ function parse(query, options) {
1673
+ options = Object.assign({
1674
+ decode: true,
1675
+ sort: true,
1676
+ arrayFormat: "none",
1677
+ arrayFormatSeparator: ",",
1678
+ parseNumbers: false,
1679
+ parseBooleans: false
1680
+ }, options);
1681
+ validateArrayFormatSeparator(options.arrayFormatSeparator);
1682
+ const formatter = parserForArrayFormat(options);
1683
+ const ret = /* @__PURE__ */ Object.create(null);
1684
+ if (typeof query !== "string") {
1685
+ return ret;
1686
+ }
1687
+ query = query.trim().replace(/^[?#&]/, "");
1688
+ if (!query) {
1689
+ return ret;
1690
+ }
1691
+ for (const param of query.split("&")) {
1692
+ if (param === "") {
1693
+ continue;
1935
1694
  }
1936
- res[value.hash].discounts = res[value.hash].discounts.concat(value.discounts);
1937
- res[value.hash].discounted = 0;
1938
- for (let i = 0; i < res[value.hash].discounts.length; i += 1) {
1939
- if (res[value.hash].discounts[i]) {
1940
- res[value.hash].discounted += parseFloat(res[value.hash].discounts[i].discountPrice);
1695
+ let [key, value] = splitOnFirst$1(options.decode ? param.replace(/\+/g, " ") : param, "=");
1696
+ value = value === void 0 ? null : ["comma", "separator", "bracket-separator"].includes(options.arrayFormat) ? value : decode2(value, options);
1697
+ formatter(decode2(key, options), value, ret);
1698
+ }
1699
+ for (const key of Object.keys(ret)) {
1700
+ const value = ret[key];
1701
+ if (typeof value === "object" && value !== null) {
1702
+ for (const k of Object.keys(value)) {
1703
+ value[k] = parseValue(value[k], options);
1941
1704
  }
1705
+ } else {
1706
+ ret[key] = parseValue(value, options);
1942
1707
  }
1943
1708
  }
1944
- return res;
1945
- }, {});
1946
- return result;
1709
+ if (options.sort === false) {
1710
+ return ret;
1711
+ }
1712
+ return (options.sort === true ? Object.keys(ret).sort() : Object.keys(ret).sort(options.sort)).reduce((result, key) => {
1713
+ const value = ret[key];
1714
+ if (Boolean(value) && typeof value === "object" && !Array.isArray(value)) {
1715
+ result[key] = keysSorter(value);
1716
+ } else {
1717
+ result[key] = value;
1718
+ }
1719
+ return result;
1720
+ }, /* @__PURE__ */ Object.create(null));
1721
+ }
1722
+ exports.extract = extract;
1723
+ exports.parse = parse;
1724
+ exports.stringify = (object, options) => {
1725
+ if (!object) {
1726
+ return "";
1727
+ }
1728
+ options = Object.assign({
1729
+ encode: true,
1730
+ strict: true,
1731
+ arrayFormat: "none",
1732
+ arrayFormatSeparator: ","
1733
+ }, options);
1734
+ validateArrayFormatSeparator(options.arrayFormatSeparator);
1735
+ const shouldFilter = (key) => options.skipNull && isNullOrUndefined(object[key]) || options.skipEmptyString && object[key] === "";
1736
+ const formatter = encoderForArrayFormat(options);
1737
+ const objectCopy = {};
1738
+ for (const key of Object.keys(object)) {
1739
+ if (!shouldFilter(key)) {
1740
+ objectCopy[key] = object[key];
1741
+ }
1742
+ }
1743
+ const keys2 = Object.keys(objectCopy);
1744
+ if (options.sort !== false) {
1745
+ keys2.sort(options.sort);
1746
+ }
1747
+ return keys2.map((key) => {
1748
+ const value = object[key];
1749
+ if (value === void 0) {
1750
+ return "";
1751
+ }
1752
+ if (value === null) {
1753
+ return encode2(key, options);
1754
+ }
1755
+ if (Array.isArray(value)) {
1756
+ if (value.length === 0 && options.arrayFormat === "bracket-separator") {
1757
+ return encode2(key, options) + "[]";
1758
+ }
1759
+ return value.reduce(formatter(key), []).join("&");
1760
+ }
1761
+ return encode2(key, options) + "=" + encode2(value, options);
1762
+ }).filter((x) => x.length > 0).join("&");
1763
+ };
1764
+ exports.parseUrl = (url, options) => {
1765
+ options = Object.assign({
1766
+ decode: true
1767
+ }, options);
1768
+ const [url_, hash] = splitOnFirst$1(url, "#");
1769
+ return Object.assign({
1770
+ url: url_.split("?")[0] || "",
1771
+ query: parse(extract(url), options)
1772
+ }, options && options.parseFragmentIdentifier && hash ? { fragmentIdentifier: decode2(hash, options) } : {});
1773
+ };
1774
+ exports.stringifyUrl = (object, options) => {
1775
+ options = Object.assign({
1776
+ encode: true,
1777
+ strict: true,
1778
+ [encodeFragmentIdentifier]: true
1779
+ }, options);
1780
+ const url = removeHash(object.url).split("?")[0] || "";
1781
+ const queryFromUrl = exports.extract(object.url);
1782
+ const parsedQueryFromUrl = exports.parse(queryFromUrl, { sort: false });
1783
+ const query = Object.assign(parsedQueryFromUrl, object.query);
1784
+ let queryString2 = exports.stringify(query, options);
1785
+ if (queryString2) {
1786
+ queryString2 = `?${queryString2}`;
1787
+ }
1788
+ let hash = getHash(object.url);
1789
+ if (object.fragmentIdentifier) {
1790
+ hash = `#${options[encodeFragmentIdentifier] ? encode2(object.fragmentIdentifier, options) : object.fragmentIdentifier}`;
1791
+ }
1792
+ return `${url}${queryString2}${hash}`;
1793
+ };
1794
+ exports.pick = (input, filter, options) => {
1795
+ options = Object.assign({
1796
+ parseFragmentIdentifier: true,
1797
+ [encodeFragmentIdentifier]: false
1798
+ }, options);
1799
+ const { url, query, fragmentIdentifier } = exports.parseUrl(input, options);
1800
+ return exports.stringifyUrl({
1801
+ url,
1802
+ query: filterObject(query, filter),
1803
+ fragmentIdentifier
1804
+ }, options);
1805
+ };
1806
+ exports.exclude = (input, filter, options) => {
1807
+ const exclusionFilter = Array.isArray(filter) ? (key) => !filter.includes(key) : (key, value) => !filter(key, value);
1808
+ return exports.pick(input, exclusionFilter, options);
1809
+ };
1810
+ })(queryString);
1811
+ const supported = [".png", ".jpg", ".jpeg", ".webp", ".bmp", ".tiff"];
1812
+ function getMediaUrl(url, size = 500) {
1813
+ const link = queryString.parseUrl(url);
1814
+ if (!(url.startsWith("https://orderingstackmedia.blob.core.windows.net/pictures") || url.startsWith("https://orderingstack-mmedia-tools.azurewebsites.net/api/img/"))) {
1815
+ return url;
1816
+ }
1817
+ const extension = link.url.substring(link.url.lastIndexOf("."));
1818
+ if (!supported.includes(extension)) {
1819
+ return url;
1820
+ }
1821
+ return queryString.stringifyUrl({
1822
+ url: link.url.replace("https://orderingstackmedia.blob.core.windows.net/pictures/", "https://orderingstack-mmedia-tools.azurewebsites.net/api/img/"),
1823
+ query: { ...link.query, w: size }
1824
+ });
1947
1825
  }
1948
- function useGroupOrderLines(array) {
1949
- return groupOrderLines(array);
1826
+ function useMediaUrl(url, size = 500) {
1827
+ return getMediaUrl(url, size);
1950
1828
  }
1951
- function getGroupedBucketLines(buckets) {
1952
- if (!buckets || buckets.length === 0) {
1953
- return null;
1829
+ function baseFindIndex$1(array, predicate, fromIndex, fromRight) {
1830
+ var length = array.length, index = fromIndex + (fromRight ? 1 : -1);
1831
+ while (fromRight ? index-- : ++index < length) {
1832
+ if (predicate(array[index], index, array)) {
1833
+ return index;
1834
+ }
1954
1835
  }
1955
- return groupOrderLines(buckets.flatMap((bucket) => bucket.lines));
1836
+ return -1;
1956
1837
  }
1957
- var axios$2 = { exports: {} };
1958
- var bind$2 = function bind(fn, thisArg) {
1959
- return function wrap() {
1960
- var args = new Array(arguments.length);
1961
- for (var i = 0; i < args.length; i++) {
1962
- args[i] = arguments[i];
1838
+ var _baseFindIndex = baseFindIndex$1;
1839
+ function baseIsNaN$1(value) {
1840
+ return value !== value;
1841
+ }
1842
+ var _baseIsNaN = baseIsNaN$1;
1843
+ function strictIndexOf$1(array, value, fromIndex) {
1844
+ var index = fromIndex - 1, length = array.length;
1845
+ while (++index < length) {
1846
+ if (array[index] === value) {
1847
+ return index;
1963
1848
  }
1964
- return fn.apply(thisArg, args);
1965
- };
1966
- };
1967
- var bind$1 = bind$2;
1968
- var toString = Object.prototype.toString;
1969
- function isArray(val) {
1970
- return toString.call(val) === "[object Array]";
1849
+ }
1850
+ return -1;
1971
1851
  }
1972
- function isUndefined(val) {
1973
- return typeof val === "undefined";
1852
+ var _strictIndexOf = strictIndexOf$1;
1853
+ var baseFindIndex = _baseFindIndex, baseIsNaN = _baseIsNaN, strictIndexOf = _strictIndexOf;
1854
+ function baseIndexOf$1(array, value, fromIndex) {
1855
+ return value === value ? strictIndexOf(array, value, fromIndex) : baseFindIndex(array, baseIsNaN, fromIndex);
1974
1856
  }
1975
- function isBuffer(val) {
1976
- return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && typeof val.constructor.isBuffer === "function" && val.constructor.isBuffer(val);
1857
+ var _baseIndexOf = baseIndexOf$1;
1858
+ var baseIndexOf = _baseIndexOf;
1859
+ function arrayIncludes$1(array, value) {
1860
+ var length = array == null ? 0 : array.length;
1861
+ return !!length && baseIndexOf(array, value, 0) > -1;
1977
1862
  }
1978
- function isArrayBuffer(val) {
1979
- return toString.call(val) === "[object ArrayBuffer]";
1863
+ var _arrayIncludes = arrayIncludes$1;
1864
+ function arrayIncludesWith$1(array, value, comparator) {
1865
+ var index = -1, length = array == null ? 0 : array.length;
1866
+ while (++index < length) {
1867
+ if (comparator(value, array[index])) {
1868
+ return true;
1869
+ }
1870
+ }
1871
+ return false;
1980
1872
  }
1981
- function isFormData(val) {
1982
- return typeof FormData !== "undefined" && val instanceof FormData;
1873
+ var _arrayIncludesWith = arrayIncludesWith$1;
1874
+ function noop$1() {
1983
1875
  }
1984
- function isArrayBufferView(val) {
1985
- var result;
1986
- if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) {
1987
- result = ArrayBuffer.isView(val);
1876
+ var noop_1 = noop$1;
1877
+ var Set = _Set, noop = noop_1, setToArray$1 = _setToArray;
1878
+ var INFINITY = 1 / 0;
1879
+ var createSet$1 = !(Set && 1 / setToArray$1(new Set([, -0]))[1] == INFINITY) ? noop : function(values) {
1880
+ return new Set(values);
1881
+ };
1882
+ var _createSet = createSet$1;
1883
+ var SetCache = _SetCache, arrayIncludes = _arrayIncludes, arrayIncludesWith = _arrayIncludesWith, cacheHas = _cacheHas, createSet = _createSet, setToArray = _setToArray;
1884
+ var LARGE_ARRAY_SIZE = 200;
1885
+ function baseUniq$1(array, iteratee, comparator) {
1886
+ var index = -1, includes = arrayIncludes, length = array.length, isCommon = true, result = [], seen = result;
1887
+ if (comparator) {
1888
+ isCommon = false;
1889
+ includes = arrayIncludesWith;
1890
+ } else if (length >= LARGE_ARRAY_SIZE) {
1891
+ var set = iteratee ? null : createSet(array);
1892
+ if (set) {
1893
+ return setToArray(set);
1894
+ }
1895
+ isCommon = false;
1896
+ includes = cacheHas;
1897
+ seen = new SetCache();
1988
1898
  } else {
1989
- result = val && val.buffer && val.buffer instanceof ArrayBuffer;
1990
- }
1899
+ seen = iteratee ? [] : result;
1900
+ }
1901
+ outer:
1902
+ while (++index < length) {
1903
+ var value = array[index], computed = iteratee ? iteratee(value) : value;
1904
+ value = comparator || value !== 0 ? value : 0;
1905
+ if (isCommon && computed === computed) {
1906
+ var seenIndex = seen.length;
1907
+ while (seenIndex--) {
1908
+ if (seen[seenIndex] === computed) {
1909
+ continue outer;
1910
+ }
1911
+ }
1912
+ if (iteratee) {
1913
+ seen.push(computed);
1914
+ }
1915
+ result.push(value);
1916
+ } else if (!includes(seen, computed, comparator)) {
1917
+ if (seen !== result) {
1918
+ seen.push(computed);
1919
+ }
1920
+ result.push(value);
1921
+ }
1922
+ }
1991
1923
  return result;
1992
1924
  }
1993
- function isString(val) {
1994
- return typeof val === "string";
1925
+ var _baseUniq = baseUniq$1;
1926
+ var baseUniq = _baseUniq;
1927
+ function uniq(array) {
1928
+ return array && array.length ? baseUniq(array) : [];
1995
1929
  }
1996
- function isNumber(val) {
1997
- return typeof val === "number";
1998
- }
1999
- function isObject(val) {
2000
- return val !== null && typeof val === "object";
2001
- }
2002
- function isPlainObject(val) {
2003
- if (toString.call(val) !== "[object Object]") {
2004
- return false;
1930
+ var uniq_1 = uniq;
1931
+ function useAvailability(originalMenu, markOnly = false, timeZone = void 0, interval = 60, prefetchImageSizes = void 0) {
1932
+ const [menu, setMenu] = useState(originalMenu ? filterTimeAvailabilityOfProducts(originalMenu, timeZone, void 0, markOnly) : originalMenu);
1933
+ useInterval(checkAvailability, interval * 1e3);
1934
+ function checkAvailability() {
1935
+ const filtered = originalMenu ? filterTimeAvailabilityOfProducts(originalMenu, timeZone, void 0, markOnly) : originalMenu;
1936
+ if (!isEqual_1(filtered, menu)) {
1937
+ console.log("menu has changed", filtered);
1938
+ setMenu(filtered);
1939
+ }
2005
1940
  }
2006
- var prototype = Object.getPrototypeOf(val);
2007
- return prototype === null || prototype === Object.prototype;
2008
- }
2009
- function isDate(val) {
2010
- return toString.call(val) === "[object Date]";
2011
- }
2012
- function isFile(val) {
2013
- return toString.call(val) === "[object File]";
2014
- }
2015
- function isBlob(val) {
2016
- return toString.call(val) === "[object Blob]";
2017
- }
2018
- function isFunction(val) {
2019
- return toString.call(val) === "[object Function]";
2020
- }
2021
- function isStream(val) {
2022
- return isObject(val) && isFunction(val.pipe);
2023
- }
2024
- function isURLSearchParams(val) {
2025
- return typeof URLSearchParams !== "undefined" && val instanceof URLSearchParams;
2026
- }
2027
- function trim(str) {
2028
- return str.trim ? str.trim() : str.replace(/^\s+|\s+$/g, "");
1941
+ useEffect(() => {
1942
+ if (originalMenu && prefetchImageSizes && prefetchImageSizes.length > 0) {
1943
+ const images = originalMenu.flatMap(getImages);
1944
+ const urls = uniq_1(prefetchImageSizes.flatMap((size) => images.map((image) => getMediaUrl(image, size))));
1945
+ urls.forEach((url) => {
1946
+ const img = new Image();
1947
+ img.src = url;
1948
+ console.log("prefetching image", url);
1949
+ });
1950
+ }
1951
+ }, []);
1952
+ useEffect(checkAvailability, [menu, originalMenu]);
1953
+ return menu;
2029
1954
  }
2030
- function isStandardBrowserEnv() {
2031
- if (typeof navigator !== "undefined" && (navigator.product === "ReactNative" || navigator.product === "NativeScript" || navigator.product === "NS")) {
2032
- return false;
1955
+ function getImages(item) {
1956
+ var _a, _b, _c;
1957
+ let images = [];
1958
+ if ((_c = (_b = (_a = item == null ? void 0 : item.details) == null ? void 0 : _a.media) == null ? void 0 : _b[0]) == null ? void 0 : _c.url) {
1959
+ images.push(item.details.media[0].url);
2033
1960
  }
2034
- return typeof window !== "undefined" && typeof document !== "undefined";
1961
+ if (item.items) {
1962
+ images = images.concat(item.items.flatMap((x) => getImages(x)));
1963
+ }
1964
+ return images;
2035
1965
  }
2036
- function forEach(obj, fn) {
2037
- if (obj === null || typeof obj === "undefined") {
2038
- return;
1966
+ var EPaymentStatus;
1967
+ (function(EPaymentStatus2) {
1968
+ EPaymentStatus2["UNINITIALIZED"] = "UNINITIALIZED";
1969
+ EPaymentStatus2["PROCESSING"] = "PROCESSING";
1970
+ EPaymentStatus2["PAID"] = "PAID";
1971
+ EPaymentStatus2["FAILED"] = "FAILED";
1972
+ EPaymentStatus2["PRINTING_RECEIPT"] = "PRINTING_RECEIPT";
1973
+ EPaymentStatus2["PRINTING_RECEIPT_SUCCESS"] = "PRINTING_RECEIPT_SUCCESS";
1974
+ EPaymentStatus2["SENDING_RECEIPT"] = "SENDING_RECEIPT";
1975
+ EPaymentStatus2["SENDING_RECEIPT_SUCCESS"] = "SENDING_RECEIPT_SUCCESS";
1976
+ EPaymentStatus2["ERROR"] = "ERROR";
1977
+ })(EPaymentStatus || (EPaymentStatus = {}));
1978
+ var ECouponViewType;
1979
+ (function(ECouponViewType2) {
1980
+ ECouponViewType2["CAROUSEL"] = "carousel";
1981
+ ECouponViewType2["NORMAL"] = "normal";
1982
+ ECouponViewType2["IMAGE"] = "image";
1983
+ })(ECouponViewType || (ECouponViewType = {}));
1984
+ var EProductKind;
1985
+ (function(EProductKind2) {
1986
+ EProductKind2["GROUP"] = "3e/group";
1987
+ EProductKind2["PRODUCT"] = "3e/product";
1988
+ EProductKind2["CATEGORY"] = "3e/group/category";
1989
+ EProductKind2["OPTIONS"] = "3e/group/options";
1990
+ EProductKind2["CONFIG"] = "3e/group/config";
1991
+ EProductKind2["STATIC"] = "3e/static";
1992
+ EProductKind2["REF"] = "3e/ref";
1993
+ EProductKind2["QUERY"] = "3e/query";
1994
+ })(EProductKind || (EProductKind = {}));
1995
+ var EProductKindBucket;
1996
+ (function(EProductKindBucket2) {
1997
+ EProductKindBucket2["GROUP"] = "group";
1998
+ EProductKindBucket2["PRODUCT"] = "product";
1999
+ })(EProductKindBucket || (EProductKindBucket = {}));
2000
+ var EOrderType;
2001
+ (function(EOrderType2) {
2002
+ EOrderType2["TAKE_AWAY"] = "TAKE_AWAY";
2003
+ EOrderType2["DELIVERY"] = "DELIVERY";
2004
+ EOrderType2["DINE_IN"] = "DINE_IN";
2005
+ EOrderType2["DINE_IN_OPEN"] = "DINE_IN_OPEN";
2006
+ EOrderType2["GLOVO_DELIVERY"] = "GLOVO_DELIVERY";
2007
+ EOrderType2["GLOVO_TAKE_AWAY"] = "GLOVO_TAKE_AWAY";
2008
+ EOrderType2["JUSTEAT_DELIVERY"] = "JUSTEAT_DELIVERY";
2009
+ EOrderType2["JUSTEAT_TAKE_AWAY"] = "JUSTEAT_TAKE_AWAY";
2010
+ EOrderType2["UBER_DELIVERY"] = "UBER_DELIVERY";
2011
+ EOrderType2["UBER_TAKE_AWAY"] = "UBER_TAKE_AWAY";
2012
+ EOrderType2["UBER_DINE_IN"] = "UBER_DINE_IN";
2013
+ EOrderType2["BOLT_DELIVERY"] = "BOLT_DELIVERY";
2014
+ EOrderType2["BOLT_TAKE_AWAY"] = "BOLT_TAKE_AWAY";
2015
+ EOrderType2["WOLT_DELIVERY"] = "WOLT_DELIVERY";
2016
+ EOrderType2["WOLT_TAKE_AWAY"] = "WOLT_TAKE_AWAY";
2017
+ EOrderType2["WOLT_DINE_IN"] = "WOLT_DINE_IN";
2018
+ })(EOrderType || (EOrderType = {}));
2019
+ var EOrderStatus;
2020
+ (function(EOrderStatus2) {
2021
+ EOrderStatus2["NEW"] = "NEW";
2022
+ EOrderStatus2["COMPLETED"] = "COMPLETED";
2023
+ EOrderStatus2["VERIFIED"] = "VERIFIED";
2024
+ EOrderStatus2["DELIVER"] = "DELIVER";
2025
+ EOrderStatus2["DELIVERED"] = "DELIVERED";
2026
+ EOrderStatus2["CLOSED"] = "CLOSED";
2027
+ EOrderStatus2["ABANDONED"] = "ABANDONED";
2028
+ EOrderStatus2["CANCELLED"] = "CANCELLED";
2029
+ EOrderStatus2["PICKED"] = "PICKED";
2030
+ })(EOrderStatus || (EOrderStatus = {}));
2031
+ var EOrderPaymentType;
2032
+ (function(EOrderPaymentType2) {
2033
+ EOrderPaymentType2["CASH"] = "CASH";
2034
+ EOrderPaymentType2["CARD"] = "CARD";
2035
+ EOrderPaymentType2["COD"] = "COD";
2036
+ EOrderPaymentType2["TERMINAL"] = "TERMINAL";
2037
+ EOrderPaymentType2["EPAYMENT"] = "EPAYMENT";
2038
+ EOrderPaymentType2["COUPON"] = "COUPON";
2039
+ EOrderPaymentType2["WALLET"] = "WALLET";
2040
+ EOrderPaymentType2["PREAUTHORIZED"] = "PREAUTHORIZED";
2041
+ EOrderPaymentType2["RETURN"] = "RETURN";
2042
+ EOrderPaymentType2["EXTERNAL"] = "EXTERNAL";
2043
+ })(EOrderPaymentType || (EOrderPaymentType = {}));
2044
+ var OrderSource;
2045
+ (function(OrderSource2) {
2046
+ OrderSource2["KIOSK"] = "KIOSK";
2047
+ OrderSource2["WEB"] = "WEB";
2048
+ OrderSource2["JUST_EAT_TAKE_AWAY"] = "JUSTEATTAKEAWAY";
2049
+ OrderSource2["GLOVO"] = "GLOVO";
2050
+ OrderSource2["PYSZNE"] = "PYSZNE";
2051
+ OrderSource2["WOLT"] = "WOLT";
2052
+ OrderSource2["UBER"] = "UBER";
2053
+ OrderSource2["BOLT"] = "BOLT";
2054
+ })(OrderSource || (OrderSource = {}));
2055
+ var EOrderLineStatus;
2056
+ (function(EOrderLineStatus2) {
2057
+ EOrderLineStatus2["NEW"] = "NEW";
2058
+ EOrderLineStatus2["TECHNICAL"] = "TECHNICAL";
2059
+ EOrderLineStatus2["CONFIRMED"] = "CONFIRMED";
2060
+ EOrderLineStatus2["PROCESSING"] = "PROCESSING";
2061
+ EOrderLineStatus2["PROCESSED"] = "PROCESSED";
2062
+ EOrderLineStatus2["VOID"] = "VOID";
2063
+ EOrderLineStatus2["WASTE"] = "WASTE";
2064
+ })(EOrderLineStatus || (EOrderLineStatus = {}));
2065
+ var EOrderProductKind;
2066
+ (function(EOrderProductKind2) {
2067
+ EOrderProductKind2["GROUP"] = "group";
2068
+ EOrderProductKind2["PRODUCT"] = "product";
2069
+ })(EOrderProductKind || (EOrderProductKind = {}));
2070
+ var EChannelName;
2071
+ (function(EChannelName2) {
2072
+ EChannelName2["DINE_IN"] = "DINE_IN";
2073
+ EChannelName2["TAKE_AWAY"] = "TAKE_AWAY";
2074
+ EChannelName2["DELIVERY"] = "DELIVERY";
2075
+ EChannelName2["GLOVO_DELIVERY"] = "GLOVO_DELIVERY";
2076
+ EChannelName2["JUSTEAT_DELIVERY"] = "JUSTEAT_DELIVERY";
2077
+ EChannelName2["UBER_DELIVERY"] = "UBER_DELIVERY";
2078
+ EChannelName2["BOLT_DELIVERY"] = "BOLT_DELIVERY";
2079
+ EChannelName2["WOLT_DELIVERY"] = "WOLT_DELIVERY";
2080
+ })(EChannelName || (EChannelName = {}));
2081
+ function arrayEach$1(array, iteratee) {
2082
+ var index = -1, length = array == null ? 0 : array.length;
2083
+ while (++index < length) {
2084
+ if (iteratee(array[index], index, array) === false) {
2085
+ break;
2086
+ }
2039
2087
  }
2040
- if (typeof obj !== "object") {
2041
- obj = [obj];
2088
+ return array;
2089
+ }
2090
+ var _arrayEach = arrayEach$1;
2091
+ var getNative = _getNative;
2092
+ var defineProperty$1 = function() {
2093
+ try {
2094
+ var func = getNative(Object, "defineProperty");
2095
+ func({}, "", {});
2096
+ return func;
2097
+ } catch (e) {
2042
2098
  }
2043
- if (isArray(obj)) {
2044
- for (var i = 0, l = obj.length; i < l; i++) {
2045
- fn.call(null, obj[i], i, obj);
2046
- }
2099
+ }();
2100
+ var _defineProperty = defineProperty$1;
2101
+ var defineProperty = _defineProperty;
2102
+ function baseAssignValue$2(object, key, value) {
2103
+ if (key == "__proto__" && defineProperty) {
2104
+ defineProperty(object, key, {
2105
+ "configurable": true,
2106
+ "enumerable": true,
2107
+ "value": value,
2108
+ "writable": true
2109
+ });
2047
2110
  } else {
2048
- for (var key in obj) {
2049
- if (Object.prototype.hasOwnProperty.call(obj, key)) {
2050
- fn.call(null, obj[key], key, obj);
2051
- }
2052
- }
2111
+ object[key] = value;
2053
2112
  }
2054
2113
  }
2055
- function merge() {
2056
- var result = {};
2057
- function assignValue2(val, key) {
2058
- if (isPlainObject(result[key]) && isPlainObject(val)) {
2059
- result[key] = merge(result[key], val);
2060
- } else if (isPlainObject(val)) {
2061
- result[key] = merge({}, val);
2062
- } else if (isArray(val)) {
2063
- result[key] = val.slice();
2064
- } else {
2065
- result[key] = val;
2066
- }
2067
- }
2068
- for (var i = 0, l = arguments.length; i < l; i++) {
2069
- forEach(arguments[i], assignValue2);
2114
+ var _baseAssignValue = baseAssignValue$2;
2115
+ var baseAssignValue$1 = _baseAssignValue, eq = eq_1;
2116
+ var objectProto$2 = Object.prototype;
2117
+ var hasOwnProperty$2 = objectProto$2.hasOwnProperty;
2118
+ function assignValue$2(object, key, value) {
2119
+ var objValue = object[key];
2120
+ if (!(hasOwnProperty$2.call(object, key) && eq(objValue, value)) || value === void 0 && !(key in object)) {
2121
+ baseAssignValue$1(object, key, value);
2070
2122
  }
2071
- return result;
2072
2123
  }
2073
- function extend(a, b, thisArg) {
2074
- forEach(b, function assignValue2(val, key) {
2075
- if (thisArg && typeof val === "function") {
2076
- a[key] = bind$1(val, thisArg);
2124
+ var _assignValue = assignValue$2;
2125
+ var assignValue$1 = _assignValue, baseAssignValue = _baseAssignValue;
2126
+ function copyObject$4(source2, props, object, customizer) {
2127
+ var isNew = !object;
2128
+ object || (object = {});
2129
+ var index = -1, length = props.length;
2130
+ while (++index < length) {
2131
+ var key = props[index];
2132
+ var newValue = customizer ? customizer(object[key], source2[key], key, object, source2) : void 0;
2133
+ if (newValue === void 0) {
2134
+ newValue = source2[key];
2135
+ }
2136
+ if (isNew) {
2137
+ baseAssignValue(object, key, newValue);
2077
2138
  } else {
2078
- a[key] = val;
2139
+ assignValue$1(object, key, newValue);
2079
2140
  }
2080
- });
2081
- return a;
2082
- }
2083
- function stripBOM(content) {
2084
- if (content.charCodeAt(0) === 65279) {
2085
- content = content.slice(1);
2086
2141
  }
2087
- return content;
2142
+ return object;
2088
2143
  }
2089
- var utils$d = {
2090
- isArray,
2091
- isArrayBuffer,
2092
- isBuffer,
2093
- isFormData,
2094
- isArrayBufferView,
2095
- isString,
2096
- isNumber,
2097
- isObject,
2098
- isPlainObject,
2099
- isUndefined,
2100
- isDate,
2101
- isFile,
2102
- isBlob,
2103
- isFunction,
2104
- isStream,
2105
- isURLSearchParams,
2106
- isStandardBrowserEnv,
2107
- forEach,
2108
- merge,
2109
- extend,
2110
- trim,
2111
- stripBOM
2112
- };
2113
- var utils$c = utils$d;
2114
- function encode(val) {
2115
- return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]");
2144
+ var _copyObject = copyObject$4;
2145
+ var copyObject$3 = _copyObject, keys$1 = keys_1;
2146
+ function baseAssign$1(object, source2) {
2147
+ return object && copyObject$3(source2, keys$1(source2), object);
2116
2148
  }
2117
- var buildURL$2 = function buildURL(url, params, paramsSerializer) {
2118
- if (!params) {
2119
- return url;
2120
- }
2121
- var serializedParams;
2122
- if (paramsSerializer) {
2123
- serializedParams = paramsSerializer(params);
2124
- } else if (utils$c.isURLSearchParams(params)) {
2125
- serializedParams = params.toString();
2126
- } else {
2127
- var parts = [];
2128
- utils$c.forEach(params, function serialize(val, key) {
2129
- if (val === null || typeof val === "undefined") {
2130
- return;
2131
- }
2132
- if (utils$c.isArray(val)) {
2133
- key = key + "[]";
2134
- } else {
2135
- val = [val];
2136
- }
2137
- utils$c.forEach(val, function parseValue(v) {
2138
- if (utils$c.isDate(v)) {
2139
- v = v.toISOString();
2140
- } else if (utils$c.isObject(v)) {
2141
- v = JSON.stringify(v);
2142
- }
2143
- parts.push(encode(key) + "=" + encode(v));
2144
- });
2145
- });
2146
- serializedParams = parts.join("&");
2147
- }
2148
- if (serializedParams) {
2149
- var hashmarkIndex = url.indexOf("#");
2150
- if (hashmarkIndex !== -1) {
2151
- url = url.slice(0, hashmarkIndex);
2149
+ var _baseAssign = baseAssign$1;
2150
+ function nativeKeysIn$1(object) {
2151
+ var result = [];
2152
+ if (object != null) {
2153
+ for (var key in Object(object)) {
2154
+ result.push(key);
2152
2155
  }
2153
- url += (url.indexOf("?") === -1 ? "?" : "&") + serializedParams;
2154
2156
  }
2155
- return url;
2156
- };
2157
- var utils$b = utils$d;
2158
- function InterceptorManager$1() {
2159
- this.handlers = [];
2157
+ return result;
2160
2158
  }
2161
- InterceptorManager$1.prototype.use = function use(fulfilled, rejected, options) {
2162
- this.handlers.push({
2163
- fulfilled,
2164
- rejected,
2165
- synchronous: options ? options.synchronous : false,
2166
- runWhen: options ? options.runWhen : null
2167
- });
2168
- return this.handlers.length - 1;
2169
- };
2170
- InterceptorManager$1.prototype.eject = function eject(id) {
2171
- if (this.handlers[id]) {
2172
- this.handlers[id] = null;
2159
+ var _nativeKeysIn = nativeKeysIn$1;
2160
+ var isObject$3 = isObject_1, isPrototype$1 = _isPrototype, nativeKeysIn = _nativeKeysIn;
2161
+ var objectProto$1 = Object.prototype;
2162
+ var hasOwnProperty$1 = objectProto$1.hasOwnProperty;
2163
+ function baseKeysIn$1(object) {
2164
+ if (!isObject$3(object)) {
2165
+ return nativeKeysIn(object);
2173
2166
  }
2174
- };
2175
- InterceptorManager$1.prototype.forEach = function forEach2(fn) {
2176
- utils$b.forEach(this.handlers, function forEachHandler(h) {
2177
- if (h !== null) {
2178
- fn(h);
2167
+ var isProto = isPrototype$1(object), result = [];
2168
+ for (var key in object) {
2169
+ if (!(key == "constructor" && (isProto || !hasOwnProperty$1.call(object, key)))) {
2170
+ result.push(key);
2179
2171
  }
2180
- });
2181
- };
2182
- var InterceptorManager_1 = InterceptorManager$1;
2183
- var utils$a = utils$d;
2184
- var normalizeHeaderName$1 = function normalizeHeaderName(headers, normalizedName) {
2185
- utils$a.forEach(headers, function processHeader(value, name2) {
2186
- if (name2 !== normalizedName && name2.toUpperCase() === normalizedName.toUpperCase()) {
2187
- headers[normalizedName] = value;
2188
- delete headers[name2];
2172
+ }
2173
+ return result;
2174
+ }
2175
+ var _baseKeysIn = baseKeysIn$1;
2176
+ var arrayLikeKeys = _arrayLikeKeys, baseKeysIn = _baseKeysIn, isArrayLike = isArrayLike_1;
2177
+ function keysIn$3(object) {
2178
+ return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
2179
+ }
2180
+ var keysIn_1 = keysIn$3;
2181
+ var copyObject$2 = _copyObject, keysIn$2 = keysIn_1;
2182
+ function baseAssignIn$1(object, source2) {
2183
+ return object && copyObject$2(source2, keysIn$2(source2), object);
2184
+ }
2185
+ var _baseAssignIn = baseAssignIn$1;
2186
+ var _cloneBuffer = { exports: {} };
2187
+ (function(module, exports) {
2188
+ var root2 = _root;
2189
+ var freeExports = exports && !exports.nodeType && exports;
2190
+ var freeModule = freeExports && true && module && !module.nodeType && module;
2191
+ var moduleExports = freeModule && freeModule.exports === freeExports;
2192
+ var Buffer = moduleExports ? root2.Buffer : void 0, allocUnsafe = Buffer ? Buffer.allocUnsafe : void 0;
2193
+ function cloneBuffer2(buffer, isDeep) {
2194
+ if (isDeep) {
2195
+ return buffer.slice();
2189
2196
  }
2190
- });
2191
- };
2192
- var enhanceError$2 = function enhanceError(error, config, code, request2, response) {
2193
- error.config = config;
2194
- if (code) {
2195
- error.code = code;
2197
+ var length = buffer.length, result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);
2198
+ buffer.copy(result);
2199
+ return result;
2196
2200
  }
2197
- error.request = request2;
2198
- error.response = response;
2199
- error.isAxiosError = true;
2200
- error.toJSON = function toJSON() {
2201
- return {
2202
- message: this.message,
2203
- name: this.name,
2204
- description: this.description,
2205
- number: this.number,
2206
- fileName: this.fileName,
2207
- lineNumber: this.lineNumber,
2208
- columnNumber: this.columnNumber,
2209
- stack: this.stack,
2210
- config: this.config,
2211
- code: this.code
2212
- };
2213
- };
2214
- return error;
2215
- };
2216
- var enhanceError$1 = enhanceError$2;
2217
- var createError$2 = function createError(message, config, code, request2, response) {
2218
- var error = new Error(message);
2219
- return enhanceError$1(error, config, code, request2, response);
2220
- };
2221
- var createError$1 = createError$2;
2222
- var settle$1 = function settle(resolve, reject, response) {
2223
- var validateStatus2 = response.config.validateStatus;
2224
- if (!response.status || !validateStatus2 || validateStatus2(response.status)) {
2225
- resolve(response);
2226
- } else {
2227
- reject(createError$1("Request failed with status code " + response.status, response.config, null, response.request, response));
2201
+ module.exports = cloneBuffer2;
2202
+ })(_cloneBuffer, _cloneBuffer.exports);
2203
+ function copyArray$1(source2, array) {
2204
+ var index = -1, length = source2.length;
2205
+ array || (array = Array(length));
2206
+ while (++index < length) {
2207
+ array[index] = source2[index];
2228
2208
  }
2209
+ return array;
2210
+ }
2211
+ var _copyArray = copyArray$1;
2212
+ var copyObject$1 = _copyObject, getSymbols$1 = _getSymbols;
2213
+ function copySymbols$1(source2, object) {
2214
+ return copyObject$1(source2, getSymbols$1(source2), object);
2215
+ }
2216
+ var _copySymbols = copySymbols$1;
2217
+ var overArg = _overArg;
2218
+ var getPrototype$2 = overArg(Object.getPrototypeOf, Object);
2219
+ var _getPrototype = getPrototype$2;
2220
+ var arrayPush = _arrayPush, getPrototype$1 = _getPrototype, getSymbols = _getSymbols, stubArray = stubArray_1;
2221
+ var nativeGetSymbols = Object.getOwnPropertySymbols;
2222
+ var getSymbolsIn$2 = !nativeGetSymbols ? stubArray : function(object) {
2223
+ var result = [];
2224
+ while (object) {
2225
+ arrayPush(result, getSymbols(object));
2226
+ object = getPrototype$1(object);
2227
+ }
2228
+ return result;
2229
2229
  };
2230
- var utils$9 = utils$d;
2231
- var cookies$1 = utils$9.isStandardBrowserEnv() ? function standardBrowserEnv() {
2232
- return {
2233
- write: function write(name2, value, expires, path, domain, secure) {
2234
- var cookie = [];
2235
- cookie.push(name2 + "=" + encodeURIComponent(value));
2236
- if (utils$9.isNumber(expires)) {
2237
- cookie.push("expires=" + new Date(expires).toGMTString());
2238
- }
2239
- if (utils$9.isString(path)) {
2240
- cookie.push("path=" + path);
2241
- }
2242
- if (utils$9.isString(domain)) {
2243
- cookie.push("domain=" + domain);
2244
- }
2245
- if (secure === true) {
2246
- cookie.push("secure");
2247
- }
2248
- document.cookie = cookie.join("; ");
2249
- },
2250
- read: function read(name2) {
2251
- var match = document.cookie.match(new RegExp("(^|;\\s*)(" + name2 + ")=([^;]*)"));
2252
- return match ? decodeURIComponent(match[3]) : null;
2253
- },
2254
- remove: function remove(name2) {
2255
- this.write(name2, "", Date.now() - 864e5);
2256
- }
2257
- };
2258
- }() : function nonStandardBrowserEnv() {
2259
- return {
2260
- write: function write() {
2261
- },
2262
- read: function read() {
2263
- return null;
2264
- },
2265
- remove: function remove() {
2266
- }
2267
- };
2268
- }();
2269
- var isAbsoluteURL$1 = function isAbsoluteURL(url) {
2270
- return /^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(url);
2271
- };
2272
- var combineURLs$1 = function combineURLs(baseURL, relativeURL) {
2273
- return relativeURL ? baseURL.replace(/\/+$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL;
2274
- };
2275
- var isAbsoluteURL2 = isAbsoluteURL$1;
2276
- var combineURLs2 = combineURLs$1;
2277
- var buildFullPath$1 = function buildFullPath(baseURL, requestedURL) {
2278
- if (baseURL && !isAbsoluteURL2(requestedURL)) {
2279
- return combineURLs2(baseURL, requestedURL);
2280
- }
2281
- return requestedURL;
2282
- };
2283
- var utils$8 = utils$d;
2284
- var ignoreDuplicateOf = [
2285
- "age",
2286
- "authorization",
2287
- "content-length",
2288
- "content-type",
2289
- "etag",
2290
- "expires",
2291
- "from",
2292
- "host",
2293
- "if-modified-since",
2294
- "if-unmodified-since",
2295
- "last-modified",
2296
- "location",
2297
- "max-forwards",
2298
- "proxy-authorization",
2299
- "referer",
2300
- "retry-after",
2301
- "user-agent"
2302
- ];
2303
- var parseHeaders$1 = function parseHeaders(headers) {
2304
- var parsed = {};
2305
- var key;
2306
- var val;
2307
- var i;
2308
- if (!headers) {
2309
- return parsed;
2310
- }
2311
- utils$8.forEach(headers.split("\n"), function parser(line) {
2312
- i = line.indexOf(":");
2313
- key = utils$8.trim(line.substr(0, i)).toLowerCase();
2314
- val = utils$8.trim(line.substr(i + 1));
2315
- if (key) {
2316
- if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {
2317
- return;
2318
- }
2319
- if (key === "set-cookie") {
2320
- parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);
2321
- } else {
2322
- parsed[key] = parsed[key] ? parsed[key] + ", " + val : val;
2323
- }
2324
- }
2325
- });
2326
- return parsed;
2327
- };
2328
- var utils$7 = utils$d;
2329
- var isURLSameOrigin$1 = utils$7.isStandardBrowserEnv() ? function standardBrowserEnv2() {
2330
- var msie = /(msie|trident)/i.test(navigator.userAgent);
2331
- var urlParsingNode = document.createElement("a");
2332
- var originURL;
2333
- function resolveURL(url) {
2334
- var href = url;
2335
- if (msie) {
2336
- urlParsingNode.setAttribute("href", href);
2337
- href = urlParsingNode.href;
2338
- }
2339
- urlParsingNode.setAttribute("href", href);
2340
- return {
2341
- href: urlParsingNode.href,
2342
- protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, "") : "",
2343
- host: urlParsingNode.host,
2344
- search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, "") : "",
2345
- hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, "") : "",
2346
- hostname: urlParsingNode.hostname,
2347
- port: urlParsingNode.port,
2348
- pathname: urlParsingNode.pathname.charAt(0) === "/" ? urlParsingNode.pathname : "/" + urlParsingNode.pathname
2349
- };
2350
- }
2351
- originURL = resolveURL(window.location.href);
2352
- return function isURLSameOrigin2(requestURL) {
2353
- var parsed = utils$7.isString(requestURL) ? resolveURL(requestURL) : requestURL;
2354
- return parsed.protocol === originURL.protocol && parsed.host === originURL.host;
2355
- };
2356
- }() : function nonStandardBrowserEnv2() {
2357
- return function isURLSameOrigin2() {
2358
- return true;
2359
- };
2360
- }();
2361
- var utils$6 = utils$d;
2362
- var settle2 = settle$1;
2363
- var cookies = cookies$1;
2364
- var buildURL$1 = buildURL$2;
2365
- var buildFullPath2 = buildFullPath$1;
2366
- var parseHeaders2 = parseHeaders$1;
2367
- var isURLSameOrigin = isURLSameOrigin$1;
2368
- var createError2 = createError$2;
2369
- var xhr = function xhrAdapter(config) {
2370
- return new Promise(function dispatchXhrRequest(resolve, reject) {
2371
- var requestData = config.data;
2372
- var requestHeaders = config.headers;
2373
- var responseType = config.responseType;
2374
- if (utils$6.isFormData(requestData)) {
2375
- delete requestHeaders["Content-Type"];
2376
- }
2377
- var request2 = new XMLHttpRequest();
2378
- if (config.auth) {
2379
- var username = config.auth.username || "";
2380
- var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : "";
2381
- requestHeaders.Authorization = "Basic " + btoa(username + ":" + password);
2382
- }
2383
- var fullPath = buildFullPath2(config.baseURL, config.url);
2384
- request2.open(config.method.toUpperCase(), buildURL$1(fullPath, config.params, config.paramsSerializer), true);
2385
- request2.timeout = config.timeout;
2386
- function onloadend() {
2387
- if (!request2) {
2388
- return;
2389
- }
2390
- var responseHeaders = "getAllResponseHeaders" in request2 ? parseHeaders2(request2.getAllResponseHeaders()) : null;
2391
- var responseData = !responseType || responseType === "text" || responseType === "json" ? request2.responseText : request2.response;
2392
- var response = {
2393
- data: responseData,
2394
- status: request2.status,
2395
- statusText: request2.statusText,
2396
- headers: responseHeaders,
2397
- config,
2398
- request: request2
2399
- };
2400
- settle2(resolve, reject, response);
2401
- request2 = null;
2402
- }
2403
- if ("onloadend" in request2) {
2404
- request2.onloadend = onloadend;
2405
- } else {
2406
- request2.onreadystatechange = function handleLoad() {
2407
- if (!request2 || request2.readyState !== 4) {
2408
- return;
2409
- }
2410
- if (request2.status === 0 && !(request2.responseURL && request2.responseURL.indexOf("file:") === 0)) {
2411
- return;
2412
- }
2413
- setTimeout(onloadend);
2414
- };
2415
- }
2416
- request2.onabort = function handleAbort() {
2417
- if (!request2) {
2418
- return;
2419
- }
2420
- reject(createError2("Request aborted", config, "ECONNABORTED", request2));
2421
- request2 = null;
2422
- };
2423
- request2.onerror = function handleError() {
2424
- reject(createError2("Network Error", config, null, request2));
2425
- request2 = null;
2426
- };
2427
- request2.ontimeout = function handleTimeout() {
2428
- var timeoutErrorMessage = "timeout of " + config.timeout + "ms exceeded";
2429
- if (config.timeoutErrorMessage) {
2430
- timeoutErrorMessage = config.timeoutErrorMessage;
2431
- }
2432
- reject(createError2(timeoutErrorMessage, config, config.transitional && config.transitional.clarifyTimeoutError ? "ETIMEDOUT" : "ECONNABORTED", request2));
2433
- request2 = null;
2434
- };
2435
- if (utils$6.isStandardBrowserEnv()) {
2436
- var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ? cookies.read(config.xsrfCookieName) : void 0;
2437
- if (xsrfValue) {
2438
- requestHeaders[config.xsrfHeaderName] = xsrfValue;
2439
- }
2440
- }
2441
- if ("setRequestHeader" in request2) {
2442
- utils$6.forEach(requestHeaders, function setRequestHeader(val, key) {
2443
- if (typeof requestData === "undefined" && key.toLowerCase() === "content-type") {
2444
- delete requestHeaders[key];
2445
- } else {
2446
- request2.setRequestHeader(key, val);
2447
- }
2448
- });
2449
- }
2450
- if (!utils$6.isUndefined(config.withCredentials)) {
2451
- request2.withCredentials = !!config.withCredentials;
2452
- }
2453
- if (responseType && responseType !== "json") {
2454
- request2.responseType = config.responseType;
2455
- }
2456
- if (typeof config.onDownloadProgress === "function") {
2457
- request2.addEventListener("progress", config.onDownloadProgress);
2458
- }
2459
- if (typeof config.onUploadProgress === "function" && request2.upload) {
2460
- request2.upload.addEventListener("progress", config.onUploadProgress);
2461
- }
2462
- if (config.cancelToken) {
2463
- config.cancelToken.promise.then(function onCanceled(cancel) {
2464
- if (!request2) {
2465
- return;
2466
- }
2467
- request2.abort();
2468
- reject(cancel);
2469
- request2 = null;
2470
- });
2471
- }
2472
- if (!requestData) {
2473
- requestData = null;
2474
- }
2475
- request2.send(requestData);
2476
- });
2477
- };
2478
- var utils$5 = utils$d;
2479
- var normalizeHeaderName2 = normalizeHeaderName$1;
2480
- var enhanceError2 = enhanceError$2;
2481
- var DEFAULT_CONTENT_TYPE = {
2482
- "Content-Type": "application/x-www-form-urlencoded"
2483
- };
2484
- function setContentTypeIfUnset(headers, value) {
2485
- if (!utils$5.isUndefined(headers) && utils$5.isUndefined(headers["Content-Type"])) {
2486
- headers["Content-Type"] = value;
2487
- }
2230
+ var _getSymbolsIn = getSymbolsIn$2;
2231
+ var copyObject = _copyObject, getSymbolsIn$1 = _getSymbolsIn;
2232
+ function copySymbolsIn$1(source2, object) {
2233
+ return copyObject(source2, getSymbolsIn$1(source2), object);
2488
2234
  }
2489
- function getDefaultAdapter() {
2490
- var adapter;
2491
- if (typeof XMLHttpRequest !== "undefined") {
2492
- adapter = xhr;
2493
- } else if (typeof process !== "undefined" && Object.prototype.toString.call(process) === "[object process]") {
2494
- adapter = xhr;
2495
- }
2496
- return adapter;
2235
+ var _copySymbolsIn = copySymbolsIn$1;
2236
+ var baseGetAllKeys = _baseGetAllKeys, getSymbolsIn = _getSymbolsIn, keysIn$1 = keysIn_1;
2237
+ function getAllKeysIn$1(object) {
2238
+ return baseGetAllKeys(object, keysIn$1, getSymbolsIn);
2497
2239
  }
2498
- function stringifySafely(rawValue, parser, encoder) {
2499
- if (utils$5.isString(rawValue)) {
2500
- try {
2501
- (parser || JSON.parse)(rawValue);
2502
- return utils$5.trim(rawValue);
2503
- } catch (e) {
2504
- if (e.name !== "SyntaxError") {
2505
- throw e;
2506
- }
2507
- }
2240
+ var _getAllKeysIn = getAllKeysIn$1;
2241
+ var objectProto = Object.prototype;
2242
+ var hasOwnProperty = objectProto.hasOwnProperty;
2243
+ function initCloneArray$1(array) {
2244
+ var length = array.length, result = new array.constructor(length);
2245
+ if (length && typeof array[0] == "string" && hasOwnProperty.call(array, "index")) {
2246
+ result.index = array.index;
2247
+ result.input = array.input;
2508
2248
  }
2509
- return (encoder || JSON.stringify)(rawValue);
2249
+ return result;
2510
2250
  }
2511
- var defaults$3 = {
2512
- transitional: {
2513
- silentJSONParsing: true,
2514
- forcedJSONParsing: true,
2515
- clarifyTimeoutError: false
2516
- },
2517
- adapter: getDefaultAdapter(),
2518
- transformRequest: [function transformRequest(data, headers) {
2519
- normalizeHeaderName2(headers, "Accept");
2520
- normalizeHeaderName2(headers, "Content-Type");
2521
- if (utils$5.isFormData(data) || utils$5.isArrayBuffer(data) || utils$5.isBuffer(data) || utils$5.isStream(data) || utils$5.isFile(data) || utils$5.isBlob(data)) {
2522
- return data;
2523
- }
2524
- if (utils$5.isArrayBufferView(data)) {
2525
- return data.buffer;
2526
- }
2527
- if (utils$5.isURLSearchParams(data)) {
2528
- setContentTypeIfUnset(headers, "application/x-www-form-urlencoded;charset=utf-8");
2529
- return data.toString();
2530
- }
2531
- if (utils$5.isObject(data) || headers && headers["Content-Type"] === "application/json") {
2532
- setContentTypeIfUnset(headers, "application/json");
2533
- return stringifySafely(data);
2534
- }
2535
- return data;
2536
- }],
2537
- transformResponse: [function transformResponse(data) {
2538
- var transitional2 = this.transitional;
2539
- var silentJSONParsing = transitional2 && transitional2.silentJSONParsing;
2540
- var forcedJSONParsing = transitional2 && transitional2.forcedJSONParsing;
2541
- var strictJSONParsing = !silentJSONParsing && this.responseType === "json";
2542
- if (strictJSONParsing || forcedJSONParsing && utils$5.isString(data) && data.length) {
2543
- try {
2544
- return JSON.parse(data);
2545
- } catch (e) {
2546
- if (strictJSONParsing) {
2547
- if (e.name === "SyntaxError") {
2548
- throw enhanceError2(e, this, "E_JSON_PARSE");
2549
- }
2550
- throw e;
2551
- }
2552
- }
2553
- }
2554
- return data;
2555
- }],
2556
- timeout: 0,
2557
- xsrfCookieName: "XSRF-TOKEN",
2558
- xsrfHeaderName: "X-XSRF-TOKEN",
2559
- maxContentLength: -1,
2560
- maxBodyLength: -1,
2561
- validateStatus: function validateStatus(status) {
2562
- return status >= 200 && status < 300;
2563
- }
2564
- };
2565
- defaults$3.headers = {
2566
- common: {
2567
- "Accept": "application/json, text/plain, */*"
2568
- }
2569
- };
2570
- utils$5.forEach(["delete", "get", "head"], function forEachMethodNoData(method) {
2571
- defaults$3.headers[method] = {};
2572
- });
2573
- utils$5.forEach(["post", "put", "patch"], function forEachMethodWithData(method) {
2574
- defaults$3.headers[method] = utils$5.merge(DEFAULT_CONTENT_TYPE);
2575
- });
2576
- var defaults_1 = defaults$3;
2577
- var utils$4 = utils$d;
2578
- var defaults$2 = defaults_1;
2579
- var transformData$1 = function transformData(data, headers, fns) {
2580
- var context = this || defaults$2;
2581
- utils$4.forEach(fns, function transform(fn) {
2582
- data = fn.call(context, data, headers);
2583
- });
2584
- return data;
2585
- };
2586
- var isCancel$1 = function isCancel(value) {
2587
- return !!(value && value.__CANCEL__);
2588
- };
2589
- var utils$3 = utils$d;
2590
- var transformData2 = transformData$1;
2591
- var isCancel2 = isCancel$1;
2592
- var defaults$1 = defaults_1;
2593
- function throwIfCancellationRequested(config) {
2594
- if (config.cancelToken) {
2595
- config.cancelToken.throwIfRequested();
2251
+ var _initCloneArray = initCloneArray$1;
2252
+ var Uint8Array = _Uint8Array;
2253
+ function cloneArrayBuffer$3(arrayBuffer) {
2254
+ var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
2255
+ new Uint8Array(result).set(new Uint8Array(arrayBuffer));
2256
+ return result;
2257
+ }
2258
+ var _cloneArrayBuffer = cloneArrayBuffer$3;
2259
+ var cloneArrayBuffer$2 = _cloneArrayBuffer;
2260
+ function cloneDataView$1(dataView, isDeep) {
2261
+ var buffer = isDeep ? cloneArrayBuffer$2(dataView.buffer) : dataView.buffer;
2262
+ return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);
2263
+ }
2264
+ var _cloneDataView = cloneDataView$1;
2265
+ var reFlags = /\w*$/;
2266
+ function cloneRegExp$1(regexp) {
2267
+ var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));
2268
+ result.lastIndex = regexp.lastIndex;
2269
+ return result;
2270
+ }
2271
+ var _cloneRegExp = cloneRegExp$1;
2272
+ var Symbol$1 = _Symbol;
2273
+ var symbolProto = Symbol$1 ? Symbol$1.prototype : void 0, symbolValueOf = symbolProto ? symbolProto.valueOf : void 0;
2274
+ function cloneSymbol$1(symbol) {
2275
+ return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};
2276
+ }
2277
+ var _cloneSymbol = cloneSymbol$1;
2278
+ var cloneArrayBuffer$1 = _cloneArrayBuffer;
2279
+ function cloneTypedArray$1(typedArray, isDeep) {
2280
+ var buffer = isDeep ? cloneArrayBuffer$1(typedArray.buffer) : typedArray.buffer;
2281
+ return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
2282
+ }
2283
+ var _cloneTypedArray = cloneTypedArray$1;
2284
+ var cloneArrayBuffer = _cloneArrayBuffer, cloneDataView = _cloneDataView, cloneRegExp = _cloneRegExp, cloneSymbol = _cloneSymbol, cloneTypedArray = _cloneTypedArray;
2285
+ var boolTag$1 = "[object Boolean]", dateTag$1 = "[object Date]", mapTag$2 = "[object Map]", numberTag$1 = "[object Number]", regexpTag$1 = "[object RegExp]", setTag$2 = "[object Set]", stringTag$1 = "[object String]", symbolTag$1 = "[object Symbol]";
2286
+ var arrayBufferTag$1 = "[object ArrayBuffer]", dataViewTag$1 = "[object DataView]", float32Tag$1 = "[object Float32Array]", float64Tag$1 = "[object Float64Array]", int8Tag$1 = "[object Int8Array]", int16Tag$1 = "[object Int16Array]", int32Tag$1 = "[object Int32Array]", uint8Tag$1 = "[object Uint8Array]", uint8ClampedTag$1 = "[object Uint8ClampedArray]", uint16Tag$1 = "[object Uint16Array]", uint32Tag$1 = "[object Uint32Array]";
2287
+ function initCloneByTag$1(object, tag, isDeep) {
2288
+ var Ctor = object.constructor;
2289
+ switch (tag) {
2290
+ case arrayBufferTag$1:
2291
+ return cloneArrayBuffer(object);
2292
+ case boolTag$1:
2293
+ case dateTag$1:
2294
+ return new Ctor(+object);
2295
+ case dataViewTag$1:
2296
+ return cloneDataView(object, isDeep);
2297
+ case float32Tag$1:
2298
+ case float64Tag$1:
2299
+ case int8Tag$1:
2300
+ case int16Tag$1:
2301
+ case int32Tag$1:
2302
+ case uint8Tag$1:
2303
+ case uint8ClampedTag$1:
2304
+ case uint16Tag$1:
2305
+ case uint32Tag$1:
2306
+ return cloneTypedArray(object, isDeep);
2307
+ case mapTag$2:
2308
+ return new Ctor();
2309
+ case numberTag$1:
2310
+ case stringTag$1:
2311
+ return new Ctor(object);
2312
+ case regexpTag$1:
2313
+ return cloneRegExp(object);
2314
+ case setTag$2:
2315
+ return new Ctor();
2316
+ case symbolTag$1:
2317
+ return cloneSymbol(object);
2596
2318
  }
2597
2319
  }
2598
- var dispatchRequest$1 = function dispatchRequest(config) {
2599
- throwIfCancellationRequested(config);
2600
- config.headers = config.headers || {};
2601
- config.data = transformData2.call(config, config.data, config.headers, config.transformRequest);
2602
- config.headers = utils$3.merge(config.headers.common || {}, config.headers[config.method] || {}, config.headers);
2603
- utils$3.forEach(["delete", "get", "head", "post", "put", "patch", "common"], function cleanHeaderConfig(method) {
2604
- delete config.headers[method];
2605
- });
2606
- var adapter = config.adapter || defaults$1.adapter;
2607
- return adapter(config).then(function onAdapterResolution(response) {
2608
- throwIfCancellationRequested(config);
2609
- response.data = transformData2.call(config, response.data, response.headers, config.transformResponse);
2610
- return response;
2611
- }, function onAdapterRejection(reason) {
2612
- if (!isCancel2(reason)) {
2613
- throwIfCancellationRequested(config);
2614
- if (reason && reason.response) {
2615
- reason.response.data = transformData2.call(config, reason.response.data, reason.response.headers, config.transformResponse);
2616
- }
2617
- }
2618
- return Promise.reject(reason);
2619
- });
2620
- };
2621
- var utils$2 = utils$d;
2622
- var mergeConfig$2 = function mergeConfig(config1, config2) {
2623
- config2 = config2 || {};
2624
- var config = {};
2625
- var valueFromConfig2Keys = ["url", "method", "data"];
2626
- var mergeDeepPropertiesKeys = ["headers", "auth", "proxy", "params"];
2627
- var defaultToConfig2Keys = [
2628
- "baseURL",
2629
- "transformRequest",
2630
- "transformResponse",
2631
- "paramsSerializer",
2632
- "timeout",
2633
- "timeoutMessage",
2634
- "withCredentials",
2635
- "adapter",
2636
- "responseType",
2637
- "xsrfCookieName",
2638
- "xsrfHeaderName",
2639
- "onUploadProgress",
2640
- "onDownloadProgress",
2641
- "decompress",
2642
- "maxContentLength",
2643
- "maxBodyLength",
2644
- "maxRedirects",
2645
- "transport",
2646
- "httpAgent",
2647
- "httpsAgent",
2648
- "cancelToken",
2649
- "socketPath",
2650
- "responseEncoding"
2651
- ];
2652
- var directMergeKeys = ["validateStatus"];
2653
- function getMergedValue(target, source2) {
2654
- if (utils$2.isPlainObject(target) && utils$2.isPlainObject(source2)) {
2655
- return utils$2.merge(target, source2);
2656
- } else if (utils$2.isPlainObject(source2)) {
2657
- return utils$2.merge({}, source2);
2658
- } else if (utils$2.isArray(source2)) {
2659
- return source2.slice();
2660
- }
2661
- return source2;
2320
+ var _initCloneByTag = initCloneByTag$1;
2321
+ var isObject$2 = isObject_1;
2322
+ var objectCreate = Object.create;
2323
+ var baseCreate$1 = function() {
2324
+ function object() {
2662
2325
  }
2663
- function mergeDeepProperties(prop) {
2664
- if (!utils$2.isUndefined(config2[prop])) {
2665
- config[prop] = getMergedValue(config1[prop], config2[prop]);
2666
- } else if (!utils$2.isUndefined(config1[prop])) {
2667
- config[prop] = getMergedValue(void 0, config1[prop]);
2326
+ return function(proto) {
2327
+ if (!isObject$2(proto)) {
2328
+ return {};
2329
+ }
2330
+ if (objectCreate) {
2331
+ return objectCreate(proto);
2668
2332
  }
2333
+ object.prototype = proto;
2334
+ var result = new object();
2335
+ object.prototype = void 0;
2336
+ return result;
2337
+ };
2338
+ }();
2339
+ var _baseCreate = baseCreate$1;
2340
+ var baseCreate = _baseCreate, getPrototype = _getPrototype, isPrototype = _isPrototype;
2341
+ function initCloneObject$1(object) {
2342
+ return typeof object.constructor == "function" && !isPrototype(object) ? baseCreate(getPrototype(object)) : {};
2343
+ }
2344
+ var _initCloneObject = initCloneObject$1;
2345
+ var getTag$2 = _getTag, isObjectLike$1 = isObjectLike_1;
2346
+ var mapTag$1 = "[object Map]";
2347
+ function baseIsMap$1(value) {
2348
+ return isObjectLike$1(value) && getTag$2(value) == mapTag$1;
2349
+ }
2350
+ var _baseIsMap = baseIsMap$1;
2351
+ var baseIsMap = _baseIsMap, baseUnary$1 = _baseUnary, nodeUtil$1 = _nodeUtil.exports;
2352
+ var nodeIsMap = nodeUtil$1 && nodeUtil$1.isMap;
2353
+ var isMap$1 = nodeIsMap ? baseUnary$1(nodeIsMap) : baseIsMap;
2354
+ var isMap_1 = isMap$1;
2355
+ var getTag$1 = _getTag, isObjectLike = isObjectLike_1;
2356
+ var setTag$1 = "[object Set]";
2357
+ function baseIsSet$1(value) {
2358
+ return isObjectLike(value) && getTag$1(value) == setTag$1;
2359
+ }
2360
+ var _baseIsSet = baseIsSet$1;
2361
+ var baseIsSet = _baseIsSet, baseUnary = _baseUnary, nodeUtil = _nodeUtil.exports;
2362
+ var nodeIsSet = nodeUtil && nodeUtil.isSet;
2363
+ var isSet$1 = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;
2364
+ var isSet_1 = isSet$1;
2365
+ var Stack = _Stack, arrayEach = _arrayEach, assignValue = _assignValue, baseAssign = _baseAssign, baseAssignIn = _baseAssignIn, cloneBuffer = _cloneBuffer.exports, copyArray = _copyArray, copySymbols = _copySymbols, copySymbolsIn = _copySymbolsIn, getAllKeys = _getAllKeys, getAllKeysIn = _getAllKeysIn, getTag = _getTag, initCloneArray = _initCloneArray, initCloneByTag = _initCloneByTag, initCloneObject = _initCloneObject, isArray$1 = isArray_1, isBuffer$1 = isBuffer$5.exports, isMap = isMap_1, isObject$1 = isObject_1, isSet = isSet_1, keys = keys_1, keysIn = keysIn_1;
2366
+ var CLONE_DEEP_FLAG$1 = 1, CLONE_FLAT_FLAG = 2, CLONE_SYMBOLS_FLAG$1 = 4;
2367
+ var argsTag = "[object Arguments]", arrayTag = "[object Array]", boolTag = "[object Boolean]", dateTag = "[object Date]", errorTag = "[object Error]", funcTag = "[object Function]", genTag = "[object GeneratorFunction]", mapTag = "[object Map]", numberTag = "[object Number]", objectTag = "[object Object]", regexpTag = "[object RegExp]", setTag = "[object Set]", stringTag = "[object String]", symbolTag = "[object Symbol]", weakMapTag = "[object WeakMap]";
2368
+ var arrayBufferTag = "[object ArrayBuffer]", dataViewTag = "[object DataView]", float32Tag = "[object Float32Array]", float64Tag = "[object Float64Array]", int8Tag = "[object Int8Array]", int16Tag = "[object Int16Array]", int32Tag = "[object Int32Array]", uint8Tag = "[object Uint8Array]", uint8ClampedTag = "[object Uint8ClampedArray]", uint16Tag = "[object Uint16Array]", uint32Tag = "[object Uint32Array]";
2369
+ var cloneableTags = {};
2370
+ cloneableTags[argsTag] = cloneableTags[arrayTag] = cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = cloneableTags[boolTag] = cloneableTags[dateTag] = cloneableTags[float32Tag] = cloneableTags[float64Tag] = cloneableTags[int8Tag] = cloneableTags[int16Tag] = cloneableTags[int32Tag] = cloneableTags[mapTag] = cloneableTags[numberTag] = cloneableTags[objectTag] = cloneableTags[regexpTag] = cloneableTags[setTag] = cloneableTags[stringTag] = cloneableTags[symbolTag] = cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
2371
+ cloneableTags[errorTag] = cloneableTags[funcTag] = cloneableTags[weakMapTag] = false;
2372
+ function baseClone$1(value, bitmask, customizer, key, object, stack) {
2373
+ var result, isDeep = bitmask & CLONE_DEEP_FLAG$1, isFlat = bitmask & CLONE_FLAT_FLAG, isFull = bitmask & CLONE_SYMBOLS_FLAG$1;
2374
+ if (customizer) {
2375
+ result = object ? customizer(value, key, object, stack) : customizer(value);
2669
2376
  }
2670
- utils$2.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {
2671
- if (!utils$2.isUndefined(config2[prop])) {
2672
- config[prop] = getMergedValue(void 0, config2[prop]);
2377
+ if (result !== void 0) {
2378
+ return result;
2379
+ }
2380
+ if (!isObject$1(value)) {
2381
+ return value;
2382
+ }
2383
+ var isArr = isArray$1(value);
2384
+ if (isArr) {
2385
+ result = initCloneArray(value);
2386
+ if (!isDeep) {
2387
+ return copyArray(value, result);
2673
2388
  }
2674
- });
2675
- utils$2.forEach(mergeDeepPropertiesKeys, mergeDeepProperties);
2676
- utils$2.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {
2677
- if (!utils$2.isUndefined(config2[prop])) {
2678
- config[prop] = getMergedValue(void 0, config2[prop]);
2679
- } else if (!utils$2.isUndefined(config1[prop])) {
2680
- config[prop] = getMergedValue(void 0, config1[prop]);
2389
+ } else {
2390
+ var tag = getTag(value), isFunc = tag == funcTag || tag == genTag;
2391
+ if (isBuffer$1(value)) {
2392
+ return cloneBuffer(value, isDeep);
2681
2393
  }
2682
- });
2683
- utils$2.forEach(directMergeKeys, function merge2(prop) {
2684
- if (prop in config2) {
2685
- config[prop] = getMergedValue(config1[prop], config2[prop]);
2686
- } else if (prop in config1) {
2687
- config[prop] = getMergedValue(void 0, config1[prop]);
2394
+ if (tag == objectTag || tag == argsTag || isFunc && !object) {
2395
+ result = isFlat || isFunc ? {} : initCloneObject(value);
2396
+ if (!isDeep) {
2397
+ return isFlat ? copySymbolsIn(value, baseAssignIn(result, value)) : copySymbols(value, baseAssign(result, value));
2398
+ }
2399
+ } else {
2400
+ if (!cloneableTags[tag]) {
2401
+ return object ? value : {};
2402
+ }
2403
+ result = initCloneByTag(value, tag, isDeep);
2688
2404
  }
2689
- });
2690
- var axiosKeys = valueFromConfig2Keys.concat(mergeDeepPropertiesKeys).concat(defaultToConfig2Keys).concat(directMergeKeys);
2691
- var otherKeys = Object.keys(config1).concat(Object.keys(config2)).filter(function filterAxiosKeys(key) {
2692
- return axiosKeys.indexOf(key) === -1;
2693
- });
2694
- utils$2.forEach(otherKeys, mergeDeepProperties);
2695
- return config;
2696
- };
2697
- const name = "axios";
2698
- const version = "0.21.4";
2699
- const description = "Promise based HTTP client for the browser and node.js";
2700
- const main = "index.js";
2701
- const scripts = {
2702
- test: "grunt test",
2703
- start: "node ./sandbox/server.js",
2704
- build: "NODE_ENV=production grunt build",
2705
- preversion: "npm test",
2706
- version: "npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json",
2707
- postversion: "git push && git push --tags",
2708
- examples: "node ./examples/server.js",
2709
- coveralls: "cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",
2710
- fix: "eslint --fix lib/**/*.js"
2711
- };
2712
- const repository = {
2713
- type: "git",
2714
- url: "https://github.com/axios/axios.git"
2715
- };
2716
- const keywords = [
2717
- "xhr",
2718
- "http",
2719
- "ajax",
2720
- "promise",
2721
- "node"
2722
- ];
2723
- const author = "Matt Zabriskie";
2724
- const license = "MIT";
2725
- const bugs = {
2726
- url: "https://github.com/axios/axios/issues"
2727
- };
2728
- const homepage = "https://axios-http.com";
2729
- const devDependencies = {
2730
- coveralls: "^3.0.0",
2731
- "es6-promise": "^4.2.4",
2732
- grunt: "^1.3.0",
2733
- "grunt-banner": "^0.6.0",
2734
- "grunt-cli": "^1.2.0",
2735
- "grunt-contrib-clean": "^1.1.0",
2736
- "grunt-contrib-watch": "^1.0.0",
2737
- "grunt-eslint": "^23.0.0",
2738
- "grunt-karma": "^4.0.0",
2739
- "grunt-mocha-test": "^0.13.3",
2740
- "grunt-ts": "^6.0.0-beta.19",
2741
- "grunt-webpack": "^4.0.2",
2742
- "istanbul-instrumenter-loader": "^1.0.0",
2743
- "jasmine-core": "^2.4.1",
2744
- karma: "^6.3.2",
2745
- "karma-chrome-launcher": "^3.1.0",
2746
- "karma-firefox-launcher": "^2.1.0",
2747
- "karma-jasmine": "^1.1.1",
2748
- "karma-jasmine-ajax": "^0.1.13",
2749
- "karma-safari-launcher": "^1.0.0",
2750
- "karma-sauce-launcher": "^4.3.6",
2751
- "karma-sinon": "^1.0.5",
2752
- "karma-sourcemap-loader": "^0.3.8",
2753
- "karma-webpack": "^4.0.2",
2754
- "load-grunt-tasks": "^3.5.2",
2755
- minimist: "^1.2.0",
2756
- mocha: "^8.2.1",
2757
- sinon: "^4.5.0",
2758
- "terser-webpack-plugin": "^4.2.3",
2759
- typescript: "^4.0.5",
2760
- "url-search-params": "^0.10.0",
2761
- webpack: "^4.44.2",
2762
- "webpack-dev-server": "^3.11.0"
2763
- };
2764
- const browser = {
2765
- "./lib/adapters/http.js": "./lib/adapters/xhr.js"
2766
- };
2767
- const jsdelivr = "dist/axios.min.js";
2768
- const unpkg = "dist/axios.min.js";
2769
- const typings = "./index.d.ts";
2770
- const dependencies = {
2771
- "follow-redirects": "^1.14.0"
2772
- };
2773
- const bundlesize = [
2774
- {
2775
- path: "./dist/axios.min.js",
2776
- threshold: "5kB"
2777
2405
  }
2778
- ];
2779
- var require$$0 = {
2780
- name,
2781
- version,
2782
- description,
2783
- main,
2784
- scripts,
2785
- repository,
2786
- keywords,
2787
- author,
2788
- license,
2789
- bugs,
2790
- homepage,
2791
- devDependencies,
2792
- browser,
2793
- jsdelivr,
2794
- unpkg,
2795
- typings,
2796
- dependencies,
2797
- bundlesize
2798
- };
2799
- var pkg = require$$0;
2800
- var validators$1 = {};
2801
- ["object", "boolean", "number", "function", "string", "symbol"].forEach(function(type, i) {
2802
- validators$1[type] = function validator2(thing) {
2803
- return typeof thing === type || "a" + (i < 1 ? "n " : " ") + type;
2804
- };
2805
- });
2806
- var deprecatedWarnings = {};
2807
- var currentVerArr = pkg.version.split(".");
2808
- function isOlderVersion(version2, thanVersion) {
2809
- var pkgVersionArr = thanVersion ? thanVersion.split(".") : currentVerArr;
2810
- var destVer = version2.split(".");
2811
- for (var i = 0; i < 3; i++) {
2812
- if (pkgVersionArr[i] > destVer[i]) {
2813
- return true;
2814
- } else if (pkgVersionArr[i] < destVer[i]) {
2406
+ stack || (stack = new Stack());
2407
+ var stacked = stack.get(value);
2408
+ if (stacked) {
2409
+ return stacked;
2410
+ }
2411
+ stack.set(value, result);
2412
+ if (isSet(value)) {
2413
+ value.forEach(function(subValue) {
2414
+ result.add(baseClone$1(subValue, bitmask, customizer, subValue, value, stack));
2415
+ });
2416
+ } else if (isMap(value)) {
2417
+ value.forEach(function(subValue, key2) {
2418
+ result.set(key2, baseClone$1(subValue, bitmask, customizer, key2, value, stack));
2419
+ });
2420
+ }
2421
+ var keysFunc = isFull ? isFlat ? getAllKeysIn : getAllKeys : isFlat ? keysIn : keys;
2422
+ var props = isArr ? void 0 : keysFunc(value);
2423
+ arrayEach(props || value, function(subValue, key2) {
2424
+ if (props) {
2425
+ key2 = subValue;
2426
+ subValue = value[key2];
2427
+ }
2428
+ assignValue(result, key2, baseClone$1(subValue, bitmask, customizer, key2, value, stack));
2429
+ });
2430
+ return result;
2431
+ }
2432
+ var _baseClone = baseClone$1;
2433
+ var baseClone = _baseClone;
2434
+ var CLONE_DEEP_FLAG = 1, CLONE_SYMBOLS_FLAG = 4;
2435
+ function cloneDeep(value) {
2436
+ return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);
2437
+ }
2438
+ var cloneDeep_1 = cloneDeep;
2439
+ function shouldShow(product, state) {
2440
+ if (!state || !state.filter || !product || !product.filter || product.kind !== EProductKind.CONFIG)
2441
+ return true;
2442
+ if (product.filter && product.items) {
2443
+ const filteredConfig = Object.values(product.filter).flat().filter((item) => {
2444
+ var _a, _b, _c, _d;
2445
+ return state.filter[(_b = (_a = product.items) == null ? void 0 : _a[0]) == null ? void 0 : _b.fltCtx] && Object.values(state.filter[(_d = (_c = product.items) == null ? void 0 : _c[0]) == null ? void 0 : _d.fltCtx]).includes(item);
2446
+ });
2447
+ if (Array.isArray(filteredConfig) && filteredConfig.length === 0) {
2815
2448
  return false;
2816
2449
  }
2817
2450
  }
2818
- return false;
2451
+ return true;
2819
2452
  }
2820
- validators$1.transitional = function transitional(validator2, version2, message) {
2821
- var isDeprecated = version2 && isOlderVersion(version2);
2822
- function formatMessage(opt, desc) {
2823
- return "[Axios v" + pkg.version + "] Transitional option '" + opt + "'" + desc + (message ? ". " + message : "");
2824
- }
2825
- return function(value, opt, opts) {
2826
- if (validator2 === false) {
2827
- throw new Error(formatMessage(opt, " has been removed in " + version2));
2828
- }
2829
- if (isDeprecated && !deprecatedWarnings[opt]) {
2830
- deprecatedWarnings[opt] = true;
2831
- console.warn(formatMessage(opt, " has been deprecated since v" + version2 + " and will be removed in the near future"));
2453
+ const calculateProductPrice = (product, rootState, level = 0) => {
2454
+ if (!product)
2455
+ return 0;
2456
+ let price = parseFloat(product.price) || 0;
2457
+ const { items } = product;
2458
+ const state = cloneDeep_1(rootState);
2459
+ if (shouldShow(product, state)) {
2460
+ if (Array.isArray(items)) {
2461
+ items.forEach((item) => {
2462
+ let itemPrice = 0;
2463
+ if (item.kind !== "3e/product") {
2464
+ itemPrice = calculateProductPrice(item, state, level + 1);
2465
+ } else {
2466
+ const { selected = {} } = state;
2467
+ const { selCtx, id } = item;
2468
+ if (selCtx in selected && id in selected[selCtx]) {
2469
+ itemPrice = calculateProductPrice(item, state, level + 1) * selected[selCtx][id];
2470
+ delete state.selected[selCtx][id];
2471
+ }
2472
+ }
2473
+ price += itemPrice;
2474
+ });
2832
2475
  }
2833
- return validator2 ? validator2(value, opt, opts) : true;
2834
- };
2476
+ }
2477
+ return Math.round(100 * price) / 100;
2835
2478
  };
2836
- function assertOptions(options, schema, allowUnknown) {
2837
- if (typeof options !== "object") {
2838
- throw new TypeError("options must be an object");
2479
+ const useDisplayPrice = ({
2480
+ product,
2481
+ state,
2482
+ selected,
2483
+ cheapestGroupOptionsProduct
2484
+ }) => {
2485
+ var _a;
2486
+ const calculatedPrice = state ? calculateProductPrice(product, state) : 0;
2487
+ const calculatedPriceDefaultProductState = product.state && !isEmpty_1((_a = product == null ? void 0 : product.state) == null ? void 0 : _a.selected) ? calculateProductPrice(product, product.state) : 0;
2488
+ const showAsMinPrice = product.minPrice && parseFloat(product.price) === calculatedPrice;
2489
+ let displayPrice = selected || !!cheapestGroupOptionsProduct || parseFloat(product.price) === 0 ? calculatedPrice || calculatedPriceDefaultProductState : parseFloat(product.price);
2490
+ if (cheapestGroupOptionsProduct !== void 0) {
2491
+ displayPrice -= cheapestGroupOptionsProduct;
2839
2492
  }
2840
- var keys2 = Object.keys(options);
2841
- var i = keys2.length;
2842
- while (i-- > 0) {
2843
- var opt = keys2[i];
2844
- var validator2 = schema[opt];
2845
- if (validator2) {
2846
- var value = options[opt];
2847
- var result = value === void 0 || validator2(value, opt, options);
2848
- if (result !== true) {
2849
- throw new TypeError("option " + opt + " must be " + result);
2850
- }
2851
- continue;
2493
+ if (showAsMinPrice && product.minPrice)
2494
+ displayPrice = parseFloat(product.minPrice);
2495
+ return { displayPrice, showAsMinPrice, calculatedPriceDefaultProductState };
2496
+ };
2497
+ function groupOrderLines(array) {
2498
+ const result = [];
2499
+ array.reduce((res, value) => {
2500
+ if (!res[value.hash]) {
2501
+ res[value.hash] = {
2502
+ ...value,
2503
+ quantity: 0,
2504
+ discounted: 0,
2505
+ discounts: [],
2506
+ firstProductQuantity: value.quantity,
2507
+ itemsToRemove: []
2508
+ };
2509
+ result.push(res[value.hash]);
2852
2510
  }
2853
- if (allowUnknown !== true) {
2854
- throw Error("Unknown option " + opt);
2511
+ res[value.hash].quantity += value.quantity;
2512
+ res[value.hash].itemsToRemove.push(value.id);
2513
+ if (value.discounts) {
2514
+ if (!res[value.hash].discounts) {
2515
+ res[value.hash].discounts = [];
2516
+ }
2517
+ res[value.hash].discounts = res[value.hash].discounts.concat(value.discounts);
2518
+ res[value.hash].discounted = 0;
2519
+ for (let i = 0; i < res[value.hash].discounts.length; i += 1) {
2520
+ if (res[value.hash].discounts[i]) {
2521
+ res[value.hash].discounted += parseFloat(res[value.hash].discounts[i].discountPrice);
2522
+ }
2523
+ }
2855
2524
  }
2525
+ return res;
2526
+ }, {});
2527
+ return result;
2528
+ }
2529
+ function useGroupOrderLines(array) {
2530
+ return groupOrderLines(array);
2531
+ }
2532
+ function getGroupedBucketLines(buckets) {
2533
+ if (!buckets || buckets.length === 0) {
2534
+ return null;
2856
2535
  }
2536
+ return groupOrderLines(buckets.flatMap((bucket) => bucket.lines));
2857
2537
  }
2858
- var validator$1 = {
2859
- isOlderVersion,
2860
- assertOptions,
2861
- validators: validators$1
2862
- };
2863
- var utils$1 = utils$d;
2864
- var buildURL2 = buildURL$2;
2865
- var InterceptorManager = InterceptorManager_1;
2866
- var dispatchRequest2 = dispatchRequest$1;
2867
- var mergeConfig$1 = mergeConfig$2;
2868
- var validator = validator$1;
2869
- var validators = validator.validators;
2870
- function Axios$1(instanceConfig) {
2871
- this.defaults = instanceConfig;
2872
- this.interceptors = {
2873
- request: new InterceptorManager(),
2874
- response: new InterceptorManager()
2538
+ var axios$2 = { exports: {} };
2539
+ var bind$2 = function bind(fn, thisArg) {
2540
+ return function wrap() {
2541
+ var args = new Array(arguments.length);
2542
+ for (var i = 0; i < args.length; i++) {
2543
+ args[i] = arguments[i];
2544
+ }
2545
+ return fn.apply(thisArg, args);
2875
2546
  };
2547
+ };
2548
+ var bind$1 = bind$2;
2549
+ var toString = Object.prototype.toString;
2550
+ function isArray(val) {
2551
+ return toString.call(val) === "[object Array]";
2876
2552
  }
2877
- Axios$1.prototype.request = function request(config) {
2878
- if (typeof config === "string") {
2879
- config = arguments[1] || {};
2880
- config.url = arguments[0];
2553
+ function isUndefined(val) {
2554
+ return typeof val === "undefined";
2555
+ }
2556
+ function isBuffer(val) {
2557
+ return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && typeof val.constructor.isBuffer === "function" && val.constructor.isBuffer(val);
2558
+ }
2559
+ function isArrayBuffer(val) {
2560
+ return toString.call(val) === "[object ArrayBuffer]";
2561
+ }
2562
+ function isFormData(val) {
2563
+ return typeof FormData !== "undefined" && val instanceof FormData;
2564
+ }
2565
+ function isArrayBufferView(val) {
2566
+ var result;
2567
+ if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) {
2568
+ result = ArrayBuffer.isView(val);
2881
2569
  } else {
2882
- config = config || {};
2570
+ result = val && val.buffer && val.buffer instanceof ArrayBuffer;
2883
2571
  }
2884
- config = mergeConfig$1(this.defaults, config);
2885
- if (config.method) {
2886
- config.method = config.method.toLowerCase();
2887
- } else if (this.defaults.method) {
2888
- config.method = this.defaults.method.toLowerCase();
2889
- } else {
2890
- config.method = "get";
2572
+ return result;
2573
+ }
2574
+ function isString(val) {
2575
+ return typeof val === "string";
2576
+ }
2577
+ function isNumber(val) {
2578
+ return typeof val === "number";
2579
+ }
2580
+ function isObject(val) {
2581
+ return val !== null && typeof val === "object";
2582
+ }
2583
+ function isPlainObject(val) {
2584
+ if (toString.call(val) !== "[object Object]") {
2585
+ return false;
2891
2586
  }
2892
- var transitional2 = config.transitional;
2893
- if (transitional2 !== void 0) {
2894
- validator.assertOptions(transitional2, {
2895
- silentJSONParsing: validators.transitional(validators.boolean, "1.0.0"),
2896
- forcedJSONParsing: validators.transitional(validators.boolean, "1.0.0"),
2897
- clarifyTimeoutError: validators.transitional(validators.boolean, "1.0.0")
2898
- }, false);
2587
+ var prototype = Object.getPrototypeOf(val);
2588
+ return prototype === null || prototype === Object.prototype;
2589
+ }
2590
+ function isDate(val) {
2591
+ return toString.call(val) === "[object Date]";
2592
+ }
2593
+ function isFile(val) {
2594
+ return toString.call(val) === "[object File]";
2595
+ }
2596
+ function isBlob(val) {
2597
+ return toString.call(val) === "[object Blob]";
2598
+ }
2599
+ function isFunction(val) {
2600
+ return toString.call(val) === "[object Function]";
2601
+ }
2602
+ function isStream(val) {
2603
+ return isObject(val) && isFunction(val.pipe);
2604
+ }
2605
+ function isURLSearchParams(val) {
2606
+ return typeof URLSearchParams !== "undefined" && val instanceof URLSearchParams;
2607
+ }
2608
+ function trim(str) {
2609
+ return str.trim ? str.trim() : str.replace(/^\s+|\s+$/g, "");
2610
+ }
2611
+ function isStandardBrowserEnv() {
2612
+ if (typeof navigator !== "undefined" && (navigator.product === "ReactNative" || navigator.product === "NativeScript" || navigator.product === "NS")) {
2613
+ return false;
2899
2614
  }
2900
- var requestInterceptorChain = [];
2901
- var synchronousRequestInterceptors = true;
2902
- this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {
2903
- if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config) === false) {
2904
- return;
2905
- }
2906
- synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;
2907
- requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);
2908
- });
2909
- var responseInterceptorChain = [];
2910
- this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {
2911
- responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);
2912
- });
2913
- var promise;
2914
- if (!synchronousRequestInterceptors) {
2915
- var chain = [dispatchRequest2, void 0];
2916
- Array.prototype.unshift.apply(chain, requestInterceptorChain);
2917
- chain = chain.concat(responseInterceptorChain);
2918
- promise = Promise.resolve(config);
2919
- while (chain.length) {
2920
- promise = promise.then(chain.shift(), chain.shift());
2615
+ return typeof window !== "undefined" && typeof document !== "undefined";
2616
+ }
2617
+ function forEach(obj, fn) {
2618
+ if (obj === null || typeof obj === "undefined") {
2619
+ return;
2620
+ }
2621
+ if (typeof obj !== "object") {
2622
+ obj = [obj];
2623
+ }
2624
+ if (isArray(obj)) {
2625
+ for (var i = 0, l = obj.length; i < l; i++) {
2626
+ fn.call(null, obj[i], i, obj);
2627
+ }
2628
+ } else {
2629
+ for (var key in obj) {
2630
+ if (Object.prototype.hasOwnProperty.call(obj, key)) {
2631
+ fn.call(null, obj[key], key, obj);
2632
+ }
2921
2633
  }
2922
- return promise;
2923
2634
  }
2924
- var newConfig = config;
2925
- while (requestInterceptorChain.length) {
2926
- var onFulfilled = requestInterceptorChain.shift();
2927
- var onRejected = requestInterceptorChain.shift();
2928
- try {
2929
- newConfig = onFulfilled(newConfig);
2930
- } catch (error) {
2931
- onRejected(error);
2932
- break;
2635
+ }
2636
+ function merge() {
2637
+ var result = {};
2638
+ function assignValue2(val, key) {
2639
+ if (isPlainObject(result[key]) && isPlainObject(val)) {
2640
+ result[key] = merge(result[key], val);
2641
+ } else if (isPlainObject(val)) {
2642
+ result[key] = merge({}, val);
2643
+ } else if (isArray(val)) {
2644
+ result[key] = val.slice();
2645
+ } else {
2646
+ result[key] = val;
2933
2647
  }
2934
2648
  }
2935
- try {
2936
- promise = dispatchRequest2(newConfig);
2937
- } catch (error) {
2938
- return Promise.reject(error);
2649
+ for (var i = 0, l = arguments.length; i < l; i++) {
2650
+ forEach(arguments[i], assignValue2);
2939
2651
  }
2940
- while (responseInterceptorChain.length) {
2941
- promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());
2652
+ return result;
2653
+ }
2654
+ function extend(a, b, thisArg) {
2655
+ forEach(b, function assignValue2(val, key) {
2656
+ if (thisArg && typeof val === "function") {
2657
+ a[key] = bind$1(val, thisArg);
2658
+ } else {
2659
+ a[key] = val;
2660
+ }
2661
+ });
2662
+ return a;
2663
+ }
2664
+ function stripBOM(content) {
2665
+ if (content.charCodeAt(0) === 65279) {
2666
+ content = content.slice(1);
2942
2667
  }
2943
- return promise;
2668
+ return content;
2669
+ }
2670
+ var utils$d = {
2671
+ isArray,
2672
+ isArrayBuffer,
2673
+ isBuffer,
2674
+ isFormData,
2675
+ isArrayBufferView,
2676
+ isString,
2677
+ isNumber,
2678
+ isObject,
2679
+ isPlainObject,
2680
+ isUndefined,
2681
+ isDate,
2682
+ isFile,
2683
+ isBlob,
2684
+ isFunction,
2685
+ isStream,
2686
+ isURLSearchParams,
2687
+ isStandardBrowserEnv,
2688
+ forEach,
2689
+ merge,
2690
+ extend,
2691
+ trim,
2692
+ stripBOM
2944
2693
  };
2945
- Axios$1.prototype.getUri = function getUri(config) {
2946
- config = mergeConfig$1(this.defaults, config);
2947
- return buildURL2(config.url, config.params, config.paramsSerializer).replace(/^\?/, "");
2694
+ var utils$c = utils$d;
2695
+ function encode(val) {
2696
+ return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]");
2697
+ }
2698
+ var buildURL$2 = function buildURL(url, params, paramsSerializer) {
2699
+ if (!params) {
2700
+ return url;
2701
+ }
2702
+ var serializedParams;
2703
+ if (paramsSerializer) {
2704
+ serializedParams = paramsSerializer(params);
2705
+ } else if (utils$c.isURLSearchParams(params)) {
2706
+ serializedParams = params.toString();
2707
+ } else {
2708
+ var parts = [];
2709
+ utils$c.forEach(params, function serialize(val, key) {
2710
+ if (val === null || typeof val === "undefined") {
2711
+ return;
2712
+ }
2713
+ if (utils$c.isArray(val)) {
2714
+ key = key + "[]";
2715
+ } else {
2716
+ val = [val];
2717
+ }
2718
+ utils$c.forEach(val, function parseValue(v) {
2719
+ if (utils$c.isDate(v)) {
2720
+ v = v.toISOString();
2721
+ } else if (utils$c.isObject(v)) {
2722
+ v = JSON.stringify(v);
2723
+ }
2724
+ parts.push(encode(key) + "=" + encode(v));
2725
+ });
2726
+ });
2727
+ serializedParams = parts.join("&");
2728
+ }
2729
+ if (serializedParams) {
2730
+ var hashmarkIndex = url.indexOf("#");
2731
+ if (hashmarkIndex !== -1) {
2732
+ url = url.slice(0, hashmarkIndex);
2733
+ }
2734
+ url += (url.indexOf("?") === -1 ? "?" : "&") + serializedParams;
2735
+ }
2736
+ return url;
2948
2737
  };
2949
- utils$1.forEach(["delete", "get", "head", "options"], function forEachMethodNoData2(method) {
2950
- Axios$1.prototype[method] = function(url, config) {
2951
- return this.request(mergeConfig$1(config || {}, {
2952
- method,
2953
- url,
2954
- data: (config || {}).data
2955
- }));
2956
- };
2957
- });
2958
- utils$1.forEach(["post", "put", "patch"], function forEachMethodWithData2(method) {
2959
- Axios$1.prototype[method] = function(url, data, config) {
2960
- return this.request(mergeConfig$1(config || {}, {
2961
- method,
2962
- url,
2963
- data
2964
- }));
2965
- };
2966
- });
2967
- var Axios_1 = Axios$1;
2968
- function Cancel$1(message) {
2969
- this.message = message;
2738
+ var utils$b = utils$d;
2739
+ function InterceptorManager$1() {
2740
+ this.handlers = [];
2970
2741
  }
2971
- Cancel$1.prototype.toString = function toString2() {
2972
- return "Cancel" + (this.message ? ": " + this.message : "");
2742
+ InterceptorManager$1.prototype.use = function use(fulfilled, rejected, options) {
2743
+ this.handlers.push({
2744
+ fulfilled,
2745
+ rejected,
2746
+ synchronous: options ? options.synchronous : false,
2747
+ runWhen: options ? options.runWhen : null
2748
+ });
2749
+ return this.handlers.length - 1;
2973
2750
  };
2974
- Cancel$1.prototype.__CANCEL__ = true;
2975
- var Cancel_1 = Cancel$1;
2976
- var Cancel = Cancel_1;
2977
- function CancelToken(executor) {
2978
- if (typeof executor !== "function") {
2979
- throw new TypeError("executor must be a function.");
2751
+ InterceptorManager$1.prototype.eject = function eject(id) {
2752
+ if (this.handlers[id]) {
2753
+ this.handlers[id] = null;
2980
2754
  }
2981
- var resolvePromise;
2982
- this.promise = new Promise(function promiseExecutor(resolve) {
2983
- resolvePromise = resolve;
2755
+ };
2756
+ InterceptorManager$1.prototype.forEach = function forEach2(fn) {
2757
+ utils$b.forEach(this.handlers, function forEachHandler(h) {
2758
+ if (h !== null) {
2759
+ fn(h);
2760
+ }
2984
2761
  });
2985
- var token2 = this;
2986
- executor(function cancel(message) {
2987
- if (token2.reason) {
2988
- return;
2762
+ };
2763
+ var InterceptorManager_1 = InterceptorManager$1;
2764
+ var utils$a = utils$d;
2765
+ var normalizeHeaderName$1 = function normalizeHeaderName(headers, normalizedName) {
2766
+ utils$a.forEach(headers, function processHeader(value, name2) {
2767
+ if (name2 !== normalizedName && name2.toUpperCase() === normalizedName.toUpperCase()) {
2768
+ headers[normalizedName] = value;
2769
+ delete headers[name2];
2989
2770
  }
2990
- token2.reason = new Cancel(message);
2991
- resolvePromise(token2.reason);
2992
2771
  });
2993
- }
2994
- CancelToken.prototype.throwIfRequested = function throwIfRequested() {
2995
- if (this.reason) {
2996
- throw this.reason;
2772
+ };
2773
+ var enhanceError$2 = function enhanceError(error, config, code, request2, response) {
2774
+ error.config = config;
2775
+ if (code) {
2776
+ error.code = code;
2997
2777
  }
2778
+ error.request = request2;
2779
+ error.response = response;
2780
+ error.isAxiosError = true;
2781
+ error.toJSON = function toJSON() {
2782
+ return {
2783
+ message: this.message,
2784
+ name: this.name,
2785
+ description: this.description,
2786
+ number: this.number,
2787
+ fileName: this.fileName,
2788
+ lineNumber: this.lineNumber,
2789
+ columnNumber: this.columnNumber,
2790
+ stack: this.stack,
2791
+ config: this.config,
2792
+ code: this.code
2793
+ };
2794
+ };
2795
+ return error;
2998
2796
  };
2999
- CancelToken.source = function source() {
3000
- var cancel;
3001
- var token2 = new CancelToken(function executor(c) {
3002
- cancel = c;
3003
- });
2797
+ var enhanceError$1 = enhanceError$2;
2798
+ var createError$2 = function createError(message, config, code, request2, response) {
2799
+ var error = new Error(message);
2800
+ return enhanceError$1(error, config, code, request2, response);
2801
+ };
2802
+ var createError$1 = createError$2;
2803
+ var settle$1 = function settle(resolve, reject, response) {
2804
+ var validateStatus2 = response.config.validateStatus;
2805
+ if (!response.status || !validateStatus2 || validateStatus2(response.status)) {
2806
+ resolve(response);
2807
+ } else {
2808
+ reject(createError$1("Request failed with status code " + response.status, response.config, null, response.request, response));
2809
+ }
2810
+ };
2811
+ var utils$9 = utils$d;
2812
+ var cookies$1 = utils$9.isStandardBrowserEnv() ? function standardBrowserEnv() {
3004
2813
  return {
3005
- token: token2,
3006
- cancel
2814
+ write: function write(name2, value, expires, path, domain, secure) {
2815
+ var cookie = [];
2816
+ cookie.push(name2 + "=" + encodeURIComponent(value));
2817
+ if (utils$9.isNumber(expires)) {
2818
+ cookie.push("expires=" + new Date(expires).toGMTString());
2819
+ }
2820
+ if (utils$9.isString(path)) {
2821
+ cookie.push("path=" + path);
2822
+ }
2823
+ if (utils$9.isString(domain)) {
2824
+ cookie.push("domain=" + domain);
2825
+ }
2826
+ if (secure === true) {
2827
+ cookie.push("secure");
2828
+ }
2829
+ document.cookie = cookie.join("; ");
2830
+ },
2831
+ read: function read(name2) {
2832
+ var match = document.cookie.match(new RegExp("(^|;\\s*)(" + name2 + ")=([^;]*)"));
2833
+ return match ? decodeURIComponent(match[3]) : null;
2834
+ },
2835
+ remove: function remove(name2) {
2836
+ this.write(name2, "", Date.now() - 864e5);
2837
+ }
3007
2838
  };
3008
- };
3009
- var CancelToken_1 = CancelToken;
3010
- var spread = function spread2(callback) {
3011
- return function wrap(arr) {
3012
- return callback.apply(null, arr);
2839
+ }() : function nonStandardBrowserEnv() {
2840
+ return {
2841
+ write: function write() {
2842
+ },
2843
+ read: function read() {
2844
+ return null;
2845
+ },
2846
+ remove: function remove() {
2847
+ }
3013
2848
  };
2849
+ }();
2850
+ var isAbsoluteURL$1 = function isAbsoluteURL(url) {
2851
+ return /^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(url);
3014
2852
  };
3015
- var isAxiosError = function isAxiosError2(payload) {
3016
- return typeof payload === "object" && payload.isAxiosError === true;
2853
+ var combineURLs$1 = function combineURLs(baseURL, relativeURL) {
2854
+ return relativeURL ? baseURL.replace(/\/+$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL;
3017
2855
  };
3018
- var utils = utils$d;
3019
- var bind2 = bind$2;
3020
- var Axios = Axios_1;
3021
- var mergeConfig2 = mergeConfig$2;
3022
- var defaults = defaults_1;
3023
- function createInstance(defaultConfig) {
3024
- var context = new Axios(defaultConfig);
3025
- var instance = bind2(Axios.prototype.request, context);
3026
- utils.extend(instance, Axios.prototype, context);
3027
- utils.extend(instance, context);
3028
- return instance;
3029
- }
3030
- var axios$1 = createInstance(defaults);
3031
- axios$1.Axios = Axios;
3032
- axios$1.create = function create(instanceConfig) {
3033
- return createInstance(mergeConfig2(axios$1.defaults, instanceConfig));
2856
+ var isAbsoluteURL2 = isAbsoluteURL$1;
2857
+ var combineURLs2 = combineURLs$1;
2858
+ var buildFullPath$1 = function buildFullPath(baseURL, requestedURL) {
2859
+ if (baseURL && !isAbsoluteURL2(requestedURL)) {
2860
+ return combineURLs2(baseURL, requestedURL);
2861
+ }
2862
+ return requestedURL;
3034
2863
  };
3035
- axios$1.Cancel = Cancel_1;
3036
- axios$1.CancelToken = CancelToken_1;
3037
- axios$1.isCancel = isCancel$1;
3038
- axios$1.all = function all(promises) {
3039
- return Promise.all(promises);
2864
+ var utils$8 = utils$d;
2865
+ var ignoreDuplicateOf = [
2866
+ "age",
2867
+ "authorization",
2868
+ "content-length",
2869
+ "content-type",
2870
+ "etag",
2871
+ "expires",
2872
+ "from",
2873
+ "host",
2874
+ "if-modified-since",
2875
+ "if-unmodified-since",
2876
+ "last-modified",
2877
+ "location",
2878
+ "max-forwards",
2879
+ "proxy-authorization",
2880
+ "referer",
2881
+ "retry-after",
2882
+ "user-agent"
2883
+ ];
2884
+ var parseHeaders$1 = function parseHeaders(headers) {
2885
+ var parsed = {};
2886
+ var key;
2887
+ var val;
2888
+ var i;
2889
+ if (!headers) {
2890
+ return parsed;
2891
+ }
2892
+ utils$8.forEach(headers.split("\n"), function parser(line) {
2893
+ i = line.indexOf(":");
2894
+ key = utils$8.trim(line.substr(0, i)).toLowerCase();
2895
+ val = utils$8.trim(line.substr(i + 1));
2896
+ if (key) {
2897
+ if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {
2898
+ return;
2899
+ }
2900
+ if (key === "set-cookie") {
2901
+ parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);
2902
+ } else {
2903
+ parsed[key] = parsed[key] ? parsed[key] + ", " + val : val;
2904
+ }
2905
+ }
2906
+ });
2907
+ return parsed;
3040
2908
  };
3041
- axios$1.spread = spread;
3042
- axios$1.isAxiosError = isAxiosError;
3043
- axios$2.exports = axios$1;
3044
- axios$2.exports.default = axios$1;
3045
- var axios = axios$2.exports;
3046
- const getUrlFromLocalizedVenueMedia = (localizedVenueMedia, locale) => {
3047
- var _a, _b, _c;
3048
- if (localizedVenueMedia && ((_a = localizedVenueMedia == null ? void 0 : localizedVenueMedia.url) == null ? void 0 : _a.length) > 0) {
3049
- return ((_b = localizedVenueMedia.url.find((item) => item.locale === locale)) == null ? void 0 : _b.value) || ((_c = localizedVenueMedia.url.find((item) => item.locale === "*")) == null ? void 0 : _c.value) || null;
2909
+ var utils$7 = utils$d;
2910
+ var isURLSameOrigin$1 = utils$7.isStandardBrowserEnv() ? function standardBrowserEnv2() {
2911
+ var msie = /(msie|trident)/i.test(navigator.userAgent);
2912
+ var urlParsingNode = document.createElement("a");
2913
+ var originURL;
2914
+ function resolveURL(url) {
2915
+ var href = url;
2916
+ if (msie) {
2917
+ urlParsingNode.setAttribute("href", href);
2918
+ href = urlParsingNode.href;
2919
+ }
2920
+ urlParsingNode.setAttribute("href", href);
2921
+ return {
2922
+ href: urlParsingNode.href,
2923
+ protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, "") : "",
2924
+ host: urlParsingNode.host,
2925
+ search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, "") : "",
2926
+ hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, "") : "",
2927
+ hostname: urlParsingNode.hostname,
2928
+ port: urlParsingNode.port,
2929
+ pathname: urlParsingNode.pathname.charAt(0) === "/" ? urlParsingNode.pathname : "/" + urlParsingNode.pathname
2930
+ };
3050
2931
  }
3051
- return null;
2932
+ originURL = resolveURL(window.location.href);
2933
+ return function isURLSameOrigin2(requestURL) {
2934
+ var parsed = utils$7.isString(requestURL) ? resolveURL(requestURL) : requestURL;
2935
+ return parsed.protocol === originURL.protocol && parsed.host === originURL.host;
2936
+ };
2937
+ }() : function nonStandardBrowserEnv2() {
2938
+ return function isURLSameOrigin2() {
2939
+ return true;
2940
+ };
2941
+ }();
2942
+ var utils$6 = utils$d;
2943
+ var settle2 = settle$1;
2944
+ var cookies = cookies$1;
2945
+ var buildURL$1 = buildURL$2;
2946
+ var buildFullPath2 = buildFullPath$1;
2947
+ var parseHeaders2 = parseHeaders$1;
2948
+ var isURLSameOrigin = isURLSameOrigin$1;
2949
+ var createError2 = createError$2;
2950
+ var xhr = function xhrAdapter(config) {
2951
+ return new Promise(function dispatchXhrRequest(resolve, reject) {
2952
+ var requestData = config.data;
2953
+ var requestHeaders = config.headers;
2954
+ var responseType = config.responseType;
2955
+ if (utils$6.isFormData(requestData)) {
2956
+ delete requestHeaders["Content-Type"];
2957
+ }
2958
+ var request2 = new XMLHttpRequest();
2959
+ if (config.auth) {
2960
+ var username = config.auth.username || "";
2961
+ var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : "";
2962
+ requestHeaders.Authorization = "Basic " + btoa(username + ":" + password);
2963
+ }
2964
+ var fullPath = buildFullPath2(config.baseURL, config.url);
2965
+ request2.open(config.method.toUpperCase(), buildURL$1(fullPath, config.params, config.paramsSerializer), true);
2966
+ request2.timeout = config.timeout;
2967
+ function onloadend() {
2968
+ if (!request2) {
2969
+ return;
2970
+ }
2971
+ var responseHeaders = "getAllResponseHeaders" in request2 ? parseHeaders2(request2.getAllResponseHeaders()) : null;
2972
+ var responseData = !responseType || responseType === "text" || responseType === "json" ? request2.responseText : request2.response;
2973
+ var response = {
2974
+ data: responseData,
2975
+ status: request2.status,
2976
+ statusText: request2.statusText,
2977
+ headers: responseHeaders,
2978
+ config,
2979
+ request: request2
2980
+ };
2981
+ settle2(resolve, reject, response);
2982
+ request2 = null;
2983
+ }
2984
+ if ("onloadend" in request2) {
2985
+ request2.onloadend = onloadend;
2986
+ } else {
2987
+ request2.onreadystatechange = function handleLoad() {
2988
+ if (!request2 || request2.readyState !== 4) {
2989
+ return;
2990
+ }
2991
+ if (request2.status === 0 && !(request2.responseURL && request2.responseURL.indexOf("file:") === 0)) {
2992
+ return;
2993
+ }
2994
+ setTimeout(onloadend);
2995
+ };
2996
+ }
2997
+ request2.onabort = function handleAbort() {
2998
+ if (!request2) {
2999
+ return;
3000
+ }
3001
+ reject(createError2("Request aborted", config, "ECONNABORTED", request2));
3002
+ request2 = null;
3003
+ };
3004
+ request2.onerror = function handleError() {
3005
+ reject(createError2("Network Error", config, null, request2));
3006
+ request2 = null;
3007
+ };
3008
+ request2.ontimeout = function handleTimeout() {
3009
+ var timeoutErrorMessage = "timeout of " + config.timeout + "ms exceeded";
3010
+ if (config.timeoutErrorMessage) {
3011
+ timeoutErrorMessage = config.timeoutErrorMessage;
3012
+ }
3013
+ reject(createError2(timeoutErrorMessage, config, config.transitional && config.transitional.clarifyTimeoutError ? "ETIMEDOUT" : "ECONNABORTED", request2));
3014
+ request2 = null;
3015
+ };
3016
+ if (utils$6.isStandardBrowserEnv()) {
3017
+ var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ? cookies.read(config.xsrfCookieName) : void 0;
3018
+ if (xsrfValue) {
3019
+ requestHeaders[config.xsrfHeaderName] = xsrfValue;
3020
+ }
3021
+ }
3022
+ if ("setRequestHeader" in request2) {
3023
+ utils$6.forEach(requestHeaders, function setRequestHeader(val, key) {
3024
+ if (typeof requestData === "undefined" && key.toLowerCase() === "content-type") {
3025
+ delete requestHeaders[key];
3026
+ } else {
3027
+ request2.setRequestHeader(key, val);
3028
+ }
3029
+ });
3030
+ }
3031
+ if (!utils$6.isUndefined(config.withCredentials)) {
3032
+ request2.withCredentials = !!config.withCredentials;
3033
+ }
3034
+ if (responseType && responseType !== "json") {
3035
+ request2.responseType = config.responseType;
3036
+ }
3037
+ if (typeof config.onDownloadProgress === "function") {
3038
+ request2.addEventListener("progress", config.onDownloadProgress);
3039
+ }
3040
+ if (typeof config.onUploadProgress === "function" && request2.upload) {
3041
+ request2.upload.addEventListener("progress", config.onUploadProgress);
3042
+ }
3043
+ if (config.cancelToken) {
3044
+ config.cancelToken.promise.then(function onCanceled(cancel) {
3045
+ if (!request2) {
3046
+ return;
3047
+ }
3048
+ request2.abort();
3049
+ reject(cancel);
3050
+ request2 = null;
3051
+ });
3052
+ }
3053
+ if (!requestData) {
3054
+ requestData = null;
3055
+ }
3056
+ request2.send(requestData);
3057
+ });
3052
3058
  };
3053
- const getLocalizedVenueMediaFromArray = (localizedVenueMedia, venue) => {
3054
- var _a, _b;
3055
- return ((_a = localizedVenueMedia == null ? void 0 : localizedVenueMedia.find) == null ? void 0 : _a.call(localizedVenueMedia, (item) => item.venue === venue)) || ((_b = localizedVenueMedia == null ? void 0 : localizedVenueMedia.find) == null ? void 0 : _b.call(localizedVenueMedia, (item) => item.venue === "*"));
3059
+ var utils$5 = utils$d;
3060
+ var normalizeHeaderName2 = normalizeHeaderName$1;
3061
+ var enhanceError2 = enhanceError$2;
3062
+ var DEFAULT_CONTENT_TYPE = {
3063
+ "Content-Type": "application/x-www-form-urlencoded"
3056
3064
  };
3057
- function useCms(id, intervalSeconds = 600, withLocalStorage = true, baseUrl, tenant) {
3058
- var _a, _b;
3059
- if (!baseUrl || !tenant) {
3060
- throw new Error("baseUrl or tenant was not provided");
3061
- }
3062
- const key = `${id}_${tenant}_${baseUrl}`;
3063
- const url = `${baseUrl.endsWith("/") ? baseUrl.slice(0, -1) : baseUrl}/cms-api/content/${tenant}/${id}`;
3064
- const loadedData = ((_a = getFromLocalStorage()) == null ? void 0 : _a.value) || null;
3065
- const [timestamp, setTimestamp] = useState(((_b = getFromLocalStorage()) == null ? void 0 : _b.timestamp) || 0);
3066
- const [state, setState] = useState(loadedData || null);
3067
- const [error, setError] = useState(false);
3068
- function getCms() {
3069
- axios.get(url).then((res) => {
3070
- if (isEmpty_1(res.data)) {
3071
- throw new Error(`CMS data '${id}' is an empty object`);
3072
- }
3073
- if (!isEqual_1(res.data, state)) {
3074
- setState(res.data);
3075
- }
3076
- if (error) {
3077
- setError(false);
3078
- }
3079
- if (withLocalStorage) {
3080
- saveToLocalStorage(res.data);
3081
- }
3082
- }).catch((e) => {
3083
- console.error(e);
3084
- setError(true);
3085
- });
3086
- return;
3065
+ function setContentTypeIfUnset(headers, value) {
3066
+ if (!utils$5.isUndefined(headers) && utils$5.isUndefined(headers["Content-Type"])) {
3067
+ headers["Content-Type"] = value;
3087
3068
  }
3088
- function saveToLocalStorage(data) {
3089
- const t = new Date().valueOf();
3090
- const value = JSON.stringify({
3091
- value: data,
3092
- timestamp: t
3093
- });
3094
- localStorage.setItem(key, value);
3095
- setTimestamp(t);
3069
+ }
3070
+ function getDefaultAdapter() {
3071
+ var adapter;
3072
+ if (typeof XMLHttpRequest !== "undefined") {
3073
+ adapter = xhr;
3074
+ } else if (typeof process !== "undefined" && Object.prototype.toString.call(process) === "[object process]") {
3075
+ adapter = xhr;
3096
3076
  }
3097
- function getFromLocalStorage() {
3077
+ return adapter;
3078
+ }
3079
+ function stringifySafely(rawValue, parser, encoder) {
3080
+ if (utils$5.isString(rawValue)) {
3098
3081
  try {
3099
- const value = localStorage.getItem(key);
3100
- if (value) {
3101
- return JSON.parse(value);
3102
- }
3082
+ (parser || JSON.parse)(rawValue);
3083
+ return utils$5.trim(rawValue);
3103
3084
  } catch (e) {
3104
- console.warn(e);
3105
- }
3106
- return null;
3107
- }
3108
- useEffect(() => {
3109
- if (new Date().valueOf() - timestamp > intervalSeconds * 1e3) {
3110
- getCms();
3085
+ if (e.name !== "SyntaxError") {
3086
+ throw e;
3087
+ }
3111
3088
  }
3112
- }, []);
3113
- useInterval(getCms, intervalSeconds * 1e3);
3114
- return { value: state, isError: error, isLoading: !error && !state };
3115
- }
3116
- function useVenueCms(id, intervalSeconds = 600, withLocalStorage = true, baseUrl, tenant, venue) {
3117
- var _a, _b, _c, _d;
3118
- if (!baseUrl || !tenant || !venue) {
3119
- throw new Error("baseUrl, tenant or venue was not provided");
3120
3089
  }
3121
- const arrayOfEntries = useCms(id, intervalSeconds, withLocalStorage, baseUrl, tenant);
3122
- return {
3123
- value: ((_b = (_a = arrayOfEntries.value) == null ? void 0 : _a.find) == null ? void 0 : _b.call(_a, (item) => item.venue === venue)) || ((_d = (_c = arrayOfEntries.value) == null ? void 0 : _c.find) == null ? void 0 : _d.call(_c, (item) => item.venue === "*")) || null,
3124
- isError: arrayOfEntries.isError
3125
- };
3090
+ return (encoder || JSON.stringify)(rawValue);
3126
3091
  }
3127
- function useLocalizedVenueMedia(id, venue, locale, intervalSeconds = 300, withLocalStorage = true) {
3128
- var _a, _b, _c, _d;
3129
- const config = useContext(ConfigContext);
3130
- if (!config) {
3131
- throw new Error("Missing config context");
3092
+ var defaults$3 = {
3093
+ transitional: {
3094
+ silentJSONParsing: true,
3095
+ forcedJSONParsing: true,
3096
+ clarifyTimeoutError: false
3097
+ },
3098
+ adapter: getDefaultAdapter(),
3099
+ transformRequest: [function transformRequest(data, headers) {
3100
+ normalizeHeaderName2(headers, "Accept");
3101
+ normalizeHeaderName2(headers, "Content-Type");
3102
+ if (utils$5.isFormData(data) || utils$5.isArrayBuffer(data) || utils$5.isBuffer(data) || utils$5.isStream(data) || utils$5.isFile(data) || utils$5.isBlob(data)) {
3103
+ return data;
3104
+ }
3105
+ if (utils$5.isArrayBufferView(data)) {
3106
+ return data.buffer;
3107
+ }
3108
+ if (utils$5.isURLSearchParams(data)) {
3109
+ setContentTypeIfUnset(headers, "application/x-www-form-urlencoded;charset=utf-8");
3110
+ return data.toString();
3111
+ }
3112
+ if (utils$5.isObject(data) || headers && headers["Content-Type"] === "application/json") {
3113
+ setContentTypeIfUnset(headers, "application/json");
3114
+ return stringifySafely(data);
3115
+ }
3116
+ return data;
3117
+ }],
3118
+ transformResponse: [function transformResponse(data) {
3119
+ var transitional2 = this.transitional;
3120
+ var silentJSONParsing = transitional2 && transitional2.silentJSONParsing;
3121
+ var forcedJSONParsing = transitional2 && transitional2.forcedJSONParsing;
3122
+ var strictJSONParsing = !silentJSONParsing && this.responseType === "json";
3123
+ if (strictJSONParsing || forcedJSONParsing && utils$5.isString(data) && data.length) {
3124
+ try {
3125
+ return JSON.parse(data);
3126
+ } catch (e) {
3127
+ if (strictJSONParsing) {
3128
+ if (e.name === "SyntaxError") {
3129
+ throw enhanceError2(e, this, "E_JSON_PARSE");
3130
+ }
3131
+ throw e;
3132
+ }
3133
+ }
3134
+ }
3135
+ return data;
3136
+ }],
3137
+ timeout: 0,
3138
+ xsrfCookieName: "XSRF-TOKEN",
3139
+ xsrfHeaderName: "X-XSRF-TOKEN",
3140
+ maxContentLength: -1,
3141
+ maxBodyLength: -1,
3142
+ validateStatus: function validateStatus(status) {
3143
+ return status >= 200 && status < 300;
3132
3144
  }
3133
- const { value, isError } = useVenueCms(id, intervalSeconds, withLocalStorage, config.baseUrl, config.tenant, venue);
3134
- let localizedValue = null;
3135
- let fallbackUrl = null;
3136
- if (value && ((_a = value == null ? void 0 : value.url) == null ? void 0 : _a.length) > 0) {
3137
- localizedValue = ((_b = value.url.find((item) => item.locale === locale)) == null ? void 0 : _b.value) || ((_c = value.url.find((item) => item.locale === "*")) == null ? void 0 : _c.value) || null;
3145
+ };
3146
+ defaults$3.headers = {
3147
+ common: {
3148
+ "Accept": "application/json, text/plain, */*"
3138
3149
  }
3139
- if (!localizedValue && value && ((_d = value == null ? void 0 : value.url) == null ? void 0 : _d.length) > 0) {
3140
- fallbackUrl = value.url[0].value;
3150
+ };
3151
+ utils$5.forEach(["delete", "get", "head"], function forEachMethodNoData(method) {
3152
+ defaults$3.headers[method] = {};
3153
+ });
3154
+ utils$5.forEach(["post", "put", "patch"], function forEachMethodWithData(method) {
3155
+ defaults$3.headers[method] = utils$5.merge(DEFAULT_CONTENT_TYPE);
3156
+ });
3157
+ var defaults_1 = defaults$3;
3158
+ var utils$4 = utils$d;
3159
+ var defaults$2 = defaults_1;
3160
+ var transformData$1 = function transformData(data, headers, fns) {
3161
+ var context = this || defaults$2;
3162
+ utils$4.forEach(fns, function transform(fn) {
3163
+ data = fn.call(context, data, headers);
3164
+ });
3165
+ return data;
3166
+ };
3167
+ var isCancel$1 = function isCancel(value) {
3168
+ return !!(value && value.__CANCEL__);
3169
+ };
3170
+ var utils$3 = utils$d;
3171
+ var transformData2 = transformData$1;
3172
+ var isCancel2 = isCancel$1;
3173
+ var defaults$1 = defaults_1;
3174
+ function throwIfCancellationRequested(config) {
3175
+ if (config.cancelToken) {
3176
+ config.cancelToken.throwIfRequested();
3141
3177
  }
3142
- return { url: localizedValue, fallbackUrl, isError };
3143
- }
3144
- function useKioskMediaCms({
3145
- kioskMediaId,
3146
- kioskMediaType,
3147
- intervalSeconds = 600,
3148
- withLocalStorage = true,
3149
- baseUrl,
3150
- tenant,
3151
- venue,
3152
- locale
3153
- }) {
3154
- var _a;
3155
- const { value, isError, isLoading } = useCms(kioskMediaId, intervalSeconds, withLocalStorage, baseUrl, tenant);
3156
- const kioskMediaFoundType = (value == null ? void 0 : value[kioskMediaType]) || [];
3157
- const kioskMediaFoundTypeVenue = getLocalizedVenueMediaFromArray(kioskMediaFoundType, venue);
3158
- const localizedValue = getUrlFromLocalizedVenueMedia(kioskMediaFoundTypeVenue, locale);
3159
- const fallbackUrl = !localizedValue && kioskMediaFoundTypeVenue && ((_a = kioskMediaFoundTypeVenue == null ? void 0 : kioskMediaFoundTypeVenue.url) == null ? void 0 : _a.length) > 0 ? kioskMediaFoundTypeVenue.url[0].value : null;
3160
- return {
3161
- url: localizedValue,
3162
- fallbackUrl,
3163
- mediaType: kioskMediaFoundTypeVenue == null ? void 0 : kioskMediaFoundTypeVenue.mediaType,
3164
- isError,
3165
- isLoading
3166
- };
3167
3178
  }
3168
- function useKioskMediaCmsWithContext({
3169
- kioskMediaId,
3170
- kioskMediaType,
3171
- venue,
3172
- intervalSeconds = 600,
3173
- withLocalStorage = true
3174
- }) {
3175
- const config = useContext(ConfigContext);
3176
- if (!config) {
3177
- throw new Error("Missing config context");
3178
- }
3179
- const {
3180
- i18n: { language }
3181
- } = useTranslation();
3182
- return useKioskMediaCms({
3183
- kioskMediaId,
3184
- kioskMediaType,
3185
- intervalSeconds,
3186
- withLocalStorage,
3187
- venue,
3188
- baseUrl: config.baseUrl,
3189
- tenant: config.tenant,
3190
- locale: language
3179
+ var dispatchRequest$1 = function dispatchRequest(config) {
3180
+ throwIfCancellationRequested(config);
3181
+ config.headers = config.headers || {};
3182
+ config.data = transformData2.call(config, config.data, config.headers, config.transformRequest);
3183
+ config.headers = utils$3.merge(config.headers.common || {}, config.headers[config.method] || {}, config.headers);
3184
+ utils$3.forEach(["delete", "get", "head", "post", "put", "patch", "common"], function cleanHeaderConfig(method) {
3185
+ delete config.headers[method];
3191
3186
  });
3192
- }
3193
- function useOnClickOutside(ref, handler) {
3194
- useEffect(() => {
3195
- const listener = (event) => {
3196
- if (!ref.current || ref.current.contains(event.target)) {
3197
- return;
3187
+ var adapter = config.adapter || defaults$1.adapter;
3188
+ return adapter(config).then(function onAdapterResolution(response) {
3189
+ throwIfCancellationRequested(config);
3190
+ response.data = transformData2.call(config, response.data, response.headers, config.transformResponse);
3191
+ return response;
3192
+ }, function onAdapterRejection(reason) {
3193
+ if (!isCancel2(reason)) {
3194
+ throwIfCancellationRequested(config);
3195
+ if (reason && reason.response) {
3196
+ reason.response.data = transformData2.call(config, reason.response.data, reason.response.headers, config.transformResponse);
3198
3197
  }
3199
- handler(event);
3200
- };
3201
- document.addEventListener("mousedown", listener);
3202
- document.addEventListener("touchstart", listener);
3203
- return () => {
3204
- document.removeEventListener("mousedown", listener);
3205
- document.removeEventListener("touchstart", listener);
3206
- };
3207
- }, [ref, handler]);
3208
- }
3209
- function useKioskChannelsAvailability(channelConstraints) {
3210
- const [dineInOpen, setDineInOpen] = useState(isChannelOpen(channelConstraints == null ? void 0 : channelConstraints.DINE_IN));
3211
- const [takeAwayOpen, setTakeAwayOpen] = useState(isChannelOpen(channelConstraints == null ? void 0 : channelConstraints.TAKE_AWAY));
3212
- function checkOpen() {
3213
- const dineIn = isChannelOpen(channelConstraints == null ? void 0 : channelConstraints.DINE_IN);
3214
- const takeAway = isChannelOpen(channelConstraints == null ? void 0 : channelConstraints.TAKE_AWAY);
3215
- if (dineIn !== dineInOpen) {
3216
- console.log("dine in open changed", dineInOpen, "=>", dineIn);
3217
- setDineInOpen(dineIn);
3218
3198
  }
3219
- if (takeAway !== takeAwayOpen) {
3220
- console.log("take away open changed", takeAwayOpen, "=>", takeAway);
3221
- setTakeAwayOpen(takeAway);
3199
+ return Promise.reject(reason);
3200
+ });
3201
+ };
3202
+ var utils$2 = utils$d;
3203
+ var mergeConfig$2 = function mergeConfig(config1, config2) {
3204
+ config2 = config2 || {};
3205
+ var config = {};
3206
+ var valueFromConfig2Keys = ["url", "method", "data"];
3207
+ var mergeDeepPropertiesKeys = ["headers", "auth", "proxy", "params"];
3208
+ var defaultToConfig2Keys = [
3209
+ "baseURL",
3210
+ "transformRequest",
3211
+ "transformResponse",
3212
+ "paramsSerializer",
3213
+ "timeout",
3214
+ "timeoutMessage",
3215
+ "withCredentials",
3216
+ "adapter",
3217
+ "responseType",
3218
+ "xsrfCookieName",
3219
+ "xsrfHeaderName",
3220
+ "onUploadProgress",
3221
+ "onDownloadProgress",
3222
+ "decompress",
3223
+ "maxContentLength",
3224
+ "maxBodyLength",
3225
+ "maxRedirects",
3226
+ "transport",
3227
+ "httpAgent",
3228
+ "httpsAgent",
3229
+ "cancelToken",
3230
+ "socketPath",
3231
+ "responseEncoding"
3232
+ ];
3233
+ var directMergeKeys = ["validateStatus"];
3234
+ function getMergedValue(target, source2) {
3235
+ if (utils$2.isPlainObject(target) && utils$2.isPlainObject(source2)) {
3236
+ return utils$2.merge(target, source2);
3237
+ } else if (utils$2.isPlainObject(source2)) {
3238
+ return utils$2.merge({}, source2);
3239
+ } else if (utils$2.isArray(source2)) {
3240
+ return source2.slice();
3222
3241
  }
3242
+ return source2;
3223
3243
  }
3224
- useEffect(() => {
3225
- checkOpen();
3226
- }, [channelConstraints]);
3227
- useInterval(checkOpen, 6e4);
3228
- return { dineInOpen, takeAwayOpen, loaded: !!channelConstraints };
3229
- }
3230
- var queryString = {};
3231
- var strictUriEncode = (str) => encodeURIComponent(str).replace(/[!'()*]/g, (x) => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);
3232
- var token = "%[a-f0-9]{2}";
3233
- var singleMatcher = new RegExp("(" + token + ")|([^%]+?)", "gi");
3234
- var multiMatcher = new RegExp("(" + token + ")+", "gi");
3235
- function decodeComponents(components, split) {
3236
- try {
3237
- return [decodeURIComponent(components.join(""))];
3238
- } catch (err) {
3239
- }
3240
- if (components.length === 1) {
3241
- return components;
3244
+ function mergeDeepProperties(prop) {
3245
+ if (!utils$2.isUndefined(config2[prop])) {
3246
+ config[prop] = getMergedValue(config1[prop], config2[prop]);
3247
+ } else if (!utils$2.isUndefined(config1[prop])) {
3248
+ config[prop] = getMergedValue(void 0, config1[prop]);
3249
+ }
3242
3250
  }
3243
- split = split || 1;
3244
- var left = components.slice(0, split);
3245
- var right = components.slice(split);
3246
- return Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));
3247
- }
3248
- function decode(input) {
3249
- try {
3250
- return decodeURIComponent(input);
3251
- } catch (err) {
3252
- var tokens = input.match(singleMatcher) || [];
3253
- for (var i = 1; i < tokens.length; i++) {
3254
- input = decodeComponents(tokens, i).join("");
3255
- tokens = input.match(singleMatcher) || [];
3251
+ utils$2.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {
3252
+ if (!utils$2.isUndefined(config2[prop])) {
3253
+ config[prop] = getMergedValue(void 0, config2[prop]);
3256
3254
  }
3257
- return input;
3255
+ });
3256
+ utils$2.forEach(mergeDeepPropertiesKeys, mergeDeepProperties);
3257
+ utils$2.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {
3258
+ if (!utils$2.isUndefined(config2[prop])) {
3259
+ config[prop] = getMergedValue(void 0, config2[prop]);
3260
+ } else if (!utils$2.isUndefined(config1[prop])) {
3261
+ config[prop] = getMergedValue(void 0, config1[prop]);
3262
+ }
3263
+ });
3264
+ utils$2.forEach(directMergeKeys, function merge2(prop) {
3265
+ if (prop in config2) {
3266
+ config[prop] = getMergedValue(config1[prop], config2[prop]);
3267
+ } else if (prop in config1) {
3268
+ config[prop] = getMergedValue(void 0, config1[prop]);
3269
+ }
3270
+ });
3271
+ var axiosKeys = valueFromConfig2Keys.concat(mergeDeepPropertiesKeys).concat(defaultToConfig2Keys).concat(directMergeKeys);
3272
+ var otherKeys = Object.keys(config1).concat(Object.keys(config2)).filter(function filterAxiosKeys(key) {
3273
+ return axiosKeys.indexOf(key) === -1;
3274
+ });
3275
+ utils$2.forEach(otherKeys, mergeDeepProperties);
3276
+ return config;
3277
+ };
3278
+ const name = "axios";
3279
+ const version = "0.21.4";
3280
+ const description = "Promise based HTTP client for the browser and node.js";
3281
+ const main = "index.js";
3282
+ const scripts = {
3283
+ test: "grunt test",
3284
+ start: "node ./sandbox/server.js",
3285
+ build: "NODE_ENV=production grunt build",
3286
+ preversion: "npm test",
3287
+ version: "npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json",
3288
+ postversion: "git push && git push --tags",
3289
+ examples: "node ./examples/server.js",
3290
+ coveralls: "cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",
3291
+ fix: "eslint --fix lib/**/*.js"
3292
+ };
3293
+ const repository = {
3294
+ type: "git",
3295
+ url: "https://github.com/axios/axios.git"
3296
+ };
3297
+ const keywords = [
3298
+ "xhr",
3299
+ "http",
3300
+ "ajax",
3301
+ "promise",
3302
+ "node"
3303
+ ];
3304
+ const author = "Matt Zabriskie";
3305
+ const license = "MIT";
3306
+ const bugs = {
3307
+ url: "https://github.com/axios/axios/issues"
3308
+ };
3309
+ const homepage = "https://axios-http.com";
3310
+ const devDependencies = {
3311
+ coveralls: "^3.0.0",
3312
+ "es6-promise": "^4.2.4",
3313
+ grunt: "^1.3.0",
3314
+ "grunt-banner": "^0.6.0",
3315
+ "grunt-cli": "^1.2.0",
3316
+ "grunt-contrib-clean": "^1.1.0",
3317
+ "grunt-contrib-watch": "^1.0.0",
3318
+ "grunt-eslint": "^23.0.0",
3319
+ "grunt-karma": "^4.0.0",
3320
+ "grunt-mocha-test": "^0.13.3",
3321
+ "grunt-ts": "^6.0.0-beta.19",
3322
+ "grunt-webpack": "^4.0.2",
3323
+ "istanbul-instrumenter-loader": "^1.0.0",
3324
+ "jasmine-core": "^2.4.1",
3325
+ karma: "^6.3.2",
3326
+ "karma-chrome-launcher": "^3.1.0",
3327
+ "karma-firefox-launcher": "^2.1.0",
3328
+ "karma-jasmine": "^1.1.1",
3329
+ "karma-jasmine-ajax": "^0.1.13",
3330
+ "karma-safari-launcher": "^1.0.0",
3331
+ "karma-sauce-launcher": "^4.3.6",
3332
+ "karma-sinon": "^1.0.5",
3333
+ "karma-sourcemap-loader": "^0.3.8",
3334
+ "karma-webpack": "^4.0.2",
3335
+ "load-grunt-tasks": "^3.5.2",
3336
+ minimist: "^1.2.0",
3337
+ mocha: "^8.2.1",
3338
+ sinon: "^4.5.0",
3339
+ "terser-webpack-plugin": "^4.2.3",
3340
+ typescript: "^4.0.5",
3341
+ "url-search-params": "^0.10.0",
3342
+ webpack: "^4.44.2",
3343
+ "webpack-dev-server": "^3.11.0"
3344
+ };
3345
+ const browser = {
3346
+ "./lib/adapters/http.js": "./lib/adapters/xhr.js"
3347
+ };
3348
+ const jsdelivr = "dist/axios.min.js";
3349
+ const unpkg = "dist/axios.min.js";
3350
+ const typings = "./index.d.ts";
3351
+ const dependencies = {
3352
+ "follow-redirects": "^1.14.0"
3353
+ };
3354
+ const bundlesize = [
3355
+ {
3356
+ path: "./dist/axios.min.js",
3357
+ threshold: "5kB"
3258
3358
  }
3259
- }
3260
- function customDecodeURIComponent(input) {
3261
- var replaceMap = {
3262
- "%FE%FF": "\uFFFD\uFFFD",
3263
- "%FF%FE": "\uFFFD\uFFFD"
3359
+ ];
3360
+ var require$$0 = {
3361
+ name,
3362
+ version,
3363
+ description,
3364
+ main,
3365
+ scripts,
3366
+ repository,
3367
+ keywords,
3368
+ author,
3369
+ license,
3370
+ bugs,
3371
+ homepage,
3372
+ devDependencies,
3373
+ browser,
3374
+ jsdelivr,
3375
+ unpkg,
3376
+ typings,
3377
+ dependencies,
3378
+ bundlesize
3379
+ };
3380
+ var pkg = require$$0;
3381
+ var validators$1 = {};
3382
+ ["object", "boolean", "number", "function", "string", "symbol"].forEach(function(type, i) {
3383
+ validators$1[type] = function validator2(thing) {
3384
+ return typeof thing === type || "a" + (i < 1 ? "n " : " ") + type;
3264
3385
  };
3265
- var match = multiMatcher.exec(input);
3266
- while (match) {
3267
- try {
3268
- replaceMap[match[0]] = decodeURIComponent(match[0]);
3269
- } catch (err) {
3270
- var result = decode(match[0]);
3271
- if (result !== match[0]) {
3272
- replaceMap[match[0]] = result;
3273
- }
3386
+ });
3387
+ var deprecatedWarnings = {};
3388
+ var currentVerArr = pkg.version.split(".");
3389
+ function isOlderVersion(version2, thanVersion) {
3390
+ var pkgVersionArr = thanVersion ? thanVersion.split(".") : currentVerArr;
3391
+ var destVer = version2.split(".");
3392
+ for (var i = 0; i < 3; i++) {
3393
+ if (pkgVersionArr[i] > destVer[i]) {
3394
+ return true;
3395
+ } else if (pkgVersionArr[i] < destVer[i]) {
3396
+ return false;
3274
3397
  }
3275
- match = multiMatcher.exec(input);
3276
- }
3277
- replaceMap["%C2"] = "\uFFFD";
3278
- var entries = Object.keys(replaceMap);
3279
- for (var i = 0; i < entries.length; i++) {
3280
- var key = entries[i];
3281
- input = input.replace(new RegExp(key, "g"), replaceMap[key]);
3282
3398
  }
3283
- return input;
3399
+ return false;
3284
3400
  }
3285
- var decodeUriComponent = function(encodedURI) {
3286
- if (typeof encodedURI !== "string") {
3287
- throw new TypeError("Expected `encodedURI` to be of type `string`, got `" + typeof encodedURI + "`");
3288
- }
3289
- try {
3290
- encodedURI = encodedURI.replace(/\+/g, " ");
3291
- return decodeURIComponent(encodedURI);
3292
- } catch (err) {
3293
- return customDecodeURIComponent(encodedURI);
3294
- }
3295
- };
3296
- var splitOnFirst = (string, separator) => {
3297
- if (!(typeof string === "string" && typeof separator === "string")) {
3298
- throw new TypeError("Expected the arguments to be of type `string`");
3299
- }
3300
- if (separator === "") {
3301
- return [string];
3302
- }
3303
- const separatorIndex = string.indexOf(separator);
3304
- if (separatorIndex === -1) {
3305
- return [string];
3401
+ validators$1.transitional = function transitional(validator2, version2, message) {
3402
+ var isDeprecated = version2 && isOlderVersion(version2);
3403
+ function formatMessage(opt, desc) {
3404
+ return "[Axios v" + pkg.version + "] Transitional option '" + opt + "'" + desc + (message ? ". " + message : "");
3306
3405
  }
3307
- return [
3308
- string.slice(0, separatorIndex),
3309
- string.slice(separatorIndex + separator.length)
3310
- ];
3311
- };
3312
- var filterObj = function(obj, predicate) {
3313
- var ret = {};
3314
- var keys2 = Object.keys(obj);
3315
- var isArr = Array.isArray(predicate);
3316
- for (var i = 0; i < keys2.length; i++) {
3317
- var key = keys2[i];
3318
- var val = obj[key];
3319
- if (isArr ? predicate.indexOf(key) !== -1 : predicate(key, val, obj)) {
3320
- ret[key] = val;
3406
+ return function(value, opt, opts) {
3407
+ if (validator2 === false) {
3408
+ throw new Error(formatMessage(opt, " has been removed in " + version2));
3321
3409
  }
3322
- }
3323
- return ret;
3410
+ if (isDeprecated && !deprecatedWarnings[opt]) {
3411
+ deprecatedWarnings[opt] = true;
3412
+ console.warn(formatMessage(opt, " has been deprecated since v" + version2 + " and will be removed in the near future"));
3413
+ }
3414
+ return validator2 ? validator2(value, opt, opts) : true;
3415
+ };
3324
3416
  };
3325
- (function(exports) {
3326
- const strictUriEncode$1 = strictUriEncode;
3327
- const decodeComponent = decodeUriComponent;
3328
- const splitOnFirst$1 = splitOnFirst;
3329
- const filterObject = filterObj;
3330
- const isNullOrUndefined = (value) => value === null || value === void 0;
3331
- const encodeFragmentIdentifier = Symbol("encodeFragmentIdentifier");
3332
- function encoderForArrayFormat(options) {
3333
- switch (options.arrayFormat) {
3334
- case "index":
3335
- return (key) => (result, value) => {
3336
- const index = result.length;
3337
- if (value === void 0 || options.skipNull && value === null || options.skipEmptyString && value === "") {
3338
- return result;
3339
- }
3340
- if (value === null) {
3341
- return [...result, [encode2(key, options), "[", index, "]"].join("")];
3342
- }
3343
- return [
3344
- ...result,
3345
- [encode2(key, options), "[", encode2(index, options), "]=", encode2(value, options)].join("")
3346
- ];
3347
- };
3348
- case "bracket":
3349
- return (key) => (result, value) => {
3350
- if (value === void 0 || options.skipNull && value === null || options.skipEmptyString && value === "") {
3351
- return result;
3352
- }
3353
- if (value === null) {
3354
- return [...result, [encode2(key, options), "[]"].join("")];
3355
- }
3356
- return [...result, [encode2(key, options), "[]=", encode2(value, options)].join("")];
3357
- };
3358
- case "colon-list-separator":
3359
- return (key) => (result, value) => {
3360
- if (value === void 0 || options.skipNull && value === null || options.skipEmptyString && value === "") {
3361
- return result;
3362
- }
3363
- if (value === null) {
3364
- return [...result, [encode2(key, options), ":list="].join("")];
3365
- }
3366
- return [...result, [encode2(key, options), ":list=", encode2(value, options)].join("")];
3367
- };
3368
- case "comma":
3369
- case "separator":
3370
- case "bracket-separator": {
3371
- const keyValueSep = options.arrayFormat === "bracket-separator" ? "[]=" : "=";
3372
- return (key) => (result, value) => {
3373
- if (value === void 0 || options.skipNull && value === null || options.skipEmptyString && value === "") {
3374
- return result;
3375
- }
3376
- value = value === null ? "" : value;
3377
- if (result.length === 0) {
3378
- return [[encode2(key, options), keyValueSep, encode2(value, options)].join("")];
3379
- }
3380
- return [[result, encode2(value, options)].join(options.arrayFormatSeparator)];
3381
- };
3417
+ function assertOptions(options, schema, allowUnknown) {
3418
+ if (typeof options !== "object") {
3419
+ throw new TypeError("options must be an object");
3420
+ }
3421
+ var keys2 = Object.keys(options);
3422
+ var i = keys2.length;
3423
+ while (i-- > 0) {
3424
+ var opt = keys2[i];
3425
+ var validator2 = schema[opt];
3426
+ if (validator2) {
3427
+ var value = options[opt];
3428
+ var result = value === void 0 || validator2(value, opt, options);
3429
+ if (result !== true) {
3430
+ throw new TypeError("option " + opt + " must be " + result);
3382
3431
  }
3383
- default:
3384
- return (key) => (result, value) => {
3385
- if (value === void 0 || options.skipNull && value === null || options.skipEmptyString && value === "") {
3386
- return result;
3387
- }
3388
- if (value === null) {
3389
- return [...result, encode2(key, options)];
3390
- }
3391
- return [...result, [encode2(key, options), "=", encode2(value, options)].join("")];
3392
- };
3432
+ continue;
3393
3433
  }
3394
- }
3395
- function parserForArrayFormat(options) {
3396
- let result;
3397
- switch (options.arrayFormat) {
3398
- case "index":
3399
- return (key, value, accumulator) => {
3400
- result = /\[(\d*)\]$/.exec(key);
3401
- key = key.replace(/\[\d*\]$/, "");
3402
- if (!result) {
3403
- accumulator[key] = value;
3404
- return;
3405
- }
3406
- if (accumulator[key] === void 0) {
3407
- accumulator[key] = {};
3408
- }
3409
- accumulator[key][result[1]] = value;
3410
- };
3411
- case "bracket":
3412
- return (key, value, accumulator) => {
3413
- result = /(\[\])$/.exec(key);
3414
- key = key.replace(/\[\]$/, "");
3415
- if (!result) {
3416
- accumulator[key] = value;
3417
- return;
3418
- }
3419
- if (accumulator[key] === void 0) {
3420
- accumulator[key] = [value];
3421
- return;
3422
- }
3423
- accumulator[key] = [].concat(accumulator[key], value);
3424
- };
3425
- case "colon-list-separator":
3426
- return (key, value, accumulator) => {
3427
- result = /(:list)$/.exec(key);
3428
- key = key.replace(/:list$/, "");
3429
- if (!result) {
3430
- accumulator[key] = value;
3431
- return;
3432
- }
3433
- if (accumulator[key] === void 0) {
3434
- accumulator[key] = [value];
3435
- return;
3436
- }
3437
- accumulator[key] = [].concat(accumulator[key], value);
3438
- };
3439
- case "comma":
3440
- case "separator":
3441
- return (key, value, accumulator) => {
3442
- const isArray2 = typeof value === "string" && value.includes(options.arrayFormatSeparator);
3443
- const isEncodedArray = typeof value === "string" && !isArray2 && decode2(value, options).includes(options.arrayFormatSeparator);
3444
- value = isEncodedArray ? decode2(value, options) : value;
3445
- const newValue = isArray2 || isEncodedArray ? value.split(options.arrayFormatSeparator).map((item) => decode2(item, options)) : value === null ? value : decode2(value, options);
3446
- accumulator[key] = newValue;
3447
- };
3448
- case "bracket-separator":
3449
- return (key, value, accumulator) => {
3450
- const isArray2 = /(\[\])$/.test(key);
3451
- key = key.replace(/\[\]$/, "");
3452
- if (!isArray2) {
3453
- accumulator[key] = value ? decode2(value, options) : value;
3454
- return;
3455
- }
3456
- const arrayValue = value === null ? [] : value.split(options.arrayFormatSeparator).map((item) => decode2(item, options));
3457
- if (accumulator[key] === void 0) {
3458
- accumulator[key] = arrayValue;
3459
- return;
3460
- }
3461
- accumulator[key] = [].concat(accumulator[key], arrayValue);
3462
- };
3463
- default:
3464
- return (key, value, accumulator) => {
3465
- if (accumulator[key] === void 0) {
3466
- accumulator[key] = value;
3467
- return;
3468
- }
3469
- accumulator[key] = [].concat(accumulator[key], value);
3470
- };
3434
+ if (allowUnknown !== true) {
3435
+ throw Error("Unknown option " + opt);
3471
3436
  }
3472
3437
  }
3473
- function validateArrayFormatSeparator(value) {
3474
- if (typeof value !== "string" || value.length !== 1) {
3475
- throw new TypeError("arrayFormatSeparator must be single character string");
3476
- }
3438
+ }
3439
+ var validator$1 = {
3440
+ isOlderVersion,
3441
+ assertOptions,
3442
+ validators: validators$1
3443
+ };
3444
+ var utils$1 = utils$d;
3445
+ var buildURL2 = buildURL$2;
3446
+ var InterceptorManager = InterceptorManager_1;
3447
+ var dispatchRequest2 = dispatchRequest$1;
3448
+ var mergeConfig$1 = mergeConfig$2;
3449
+ var validator = validator$1;
3450
+ var validators = validator.validators;
3451
+ function Axios$1(instanceConfig) {
3452
+ this.defaults = instanceConfig;
3453
+ this.interceptors = {
3454
+ request: new InterceptorManager(),
3455
+ response: new InterceptorManager()
3456
+ };
3457
+ }
3458
+ Axios$1.prototype.request = function request(config) {
3459
+ if (typeof config === "string") {
3460
+ config = arguments[1] || {};
3461
+ config.url = arguments[0];
3462
+ } else {
3463
+ config = config || {};
3477
3464
  }
3478
- function encode2(value, options) {
3479
- if (options.encode) {
3480
- return options.strict ? strictUriEncode$1(value) : encodeURIComponent(value);
3481
- }
3482
- return value;
3465
+ config = mergeConfig$1(this.defaults, config);
3466
+ if (config.method) {
3467
+ config.method = config.method.toLowerCase();
3468
+ } else if (this.defaults.method) {
3469
+ config.method = this.defaults.method.toLowerCase();
3470
+ } else {
3471
+ config.method = "get";
3483
3472
  }
3484
- function decode2(value, options) {
3485
- if (options.decode) {
3486
- return decodeComponent(value);
3487
- }
3488
- return value;
3473
+ var transitional2 = config.transitional;
3474
+ if (transitional2 !== void 0) {
3475
+ validator.assertOptions(transitional2, {
3476
+ silentJSONParsing: validators.transitional(validators.boolean, "1.0.0"),
3477
+ forcedJSONParsing: validators.transitional(validators.boolean, "1.0.0"),
3478
+ clarifyTimeoutError: validators.transitional(validators.boolean, "1.0.0")
3479
+ }, false);
3489
3480
  }
3490
- function keysSorter(input) {
3491
- if (Array.isArray(input)) {
3492
- return input.sort();
3481
+ var requestInterceptorChain = [];
3482
+ var synchronousRequestInterceptors = true;
3483
+ this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {
3484
+ if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config) === false) {
3485
+ return;
3493
3486
  }
3494
- if (typeof input === "object") {
3495
- return keysSorter(Object.keys(input)).sort((a, b) => Number(a) - Number(b)).map((key) => input[key]);
3487
+ synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;
3488
+ requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);
3489
+ });
3490
+ var responseInterceptorChain = [];
3491
+ this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {
3492
+ responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);
3493
+ });
3494
+ var promise;
3495
+ if (!synchronousRequestInterceptors) {
3496
+ var chain = [dispatchRequest2, void 0];
3497
+ Array.prototype.unshift.apply(chain, requestInterceptorChain);
3498
+ chain = chain.concat(responseInterceptorChain);
3499
+ promise = Promise.resolve(config);
3500
+ while (chain.length) {
3501
+ promise = promise.then(chain.shift(), chain.shift());
3496
3502
  }
3497
- return input;
3503
+ return promise;
3498
3504
  }
3499
- function removeHash(input) {
3500
- const hashStart = input.indexOf("#");
3501
- if (hashStart !== -1) {
3502
- input = input.slice(0, hashStart);
3505
+ var newConfig = config;
3506
+ while (requestInterceptorChain.length) {
3507
+ var onFulfilled = requestInterceptorChain.shift();
3508
+ var onRejected = requestInterceptorChain.shift();
3509
+ try {
3510
+ newConfig = onFulfilled(newConfig);
3511
+ } catch (error) {
3512
+ onRejected(error);
3513
+ break;
3503
3514
  }
3504
- return input;
3505
3515
  }
3506
- function getHash(url) {
3507
- let hash = "";
3508
- const hashStart = url.indexOf("#");
3509
- if (hashStart !== -1) {
3510
- hash = url.slice(hashStart);
3511
- }
3512
- return hash;
3516
+ try {
3517
+ promise = dispatchRequest2(newConfig);
3518
+ } catch (error) {
3519
+ return Promise.reject(error);
3513
3520
  }
3514
- function extract(input) {
3515
- input = removeHash(input);
3516
- const queryStart = input.indexOf("?");
3517
- if (queryStart === -1) {
3518
- return "";
3519
- }
3520
- return input.slice(queryStart + 1);
3521
+ while (responseInterceptorChain.length) {
3522
+ promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());
3521
3523
  }
3522
- function parseValue(value, options) {
3523
- if (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === "string" && value.trim() !== "")) {
3524
- value = Number(value);
3525
- } else if (options.parseBooleans && value !== null && (value.toLowerCase() === "true" || value.toLowerCase() === "false")) {
3526
- value = value.toLowerCase() === "true";
3527
- }
3528
- return value;
3524
+ return promise;
3525
+ };
3526
+ Axios$1.prototype.getUri = function getUri(config) {
3527
+ config = mergeConfig$1(this.defaults, config);
3528
+ return buildURL2(config.url, config.params, config.paramsSerializer).replace(/^\?/, "");
3529
+ };
3530
+ utils$1.forEach(["delete", "get", "head", "options"], function forEachMethodNoData2(method) {
3531
+ Axios$1.prototype[method] = function(url, config) {
3532
+ return this.request(mergeConfig$1(config || {}, {
3533
+ method,
3534
+ url,
3535
+ data: (config || {}).data
3536
+ }));
3537
+ };
3538
+ });
3539
+ utils$1.forEach(["post", "put", "patch"], function forEachMethodWithData2(method) {
3540
+ Axios$1.prototype[method] = function(url, data, config) {
3541
+ return this.request(mergeConfig$1(config || {}, {
3542
+ method,
3543
+ url,
3544
+ data
3545
+ }));
3546
+ };
3547
+ });
3548
+ var Axios_1 = Axios$1;
3549
+ function Cancel$1(message) {
3550
+ this.message = message;
3551
+ }
3552
+ Cancel$1.prototype.toString = function toString2() {
3553
+ return "Cancel" + (this.message ? ": " + this.message : "");
3554
+ };
3555
+ Cancel$1.prototype.__CANCEL__ = true;
3556
+ var Cancel_1 = Cancel$1;
3557
+ var Cancel = Cancel_1;
3558
+ function CancelToken(executor) {
3559
+ if (typeof executor !== "function") {
3560
+ throw new TypeError("executor must be a function.");
3529
3561
  }
3530
- function parse(query, options) {
3531
- options = Object.assign({
3532
- decode: true,
3533
- sort: true,
3534
- arrayFormat: "none",
3535
- arrayFormatSeparator: ",",
3536
- parseNumbers: false,
3537
- parseBooleans: false
3538
- }, options);
3539
- validateArrayFormatSeparator(options.arrayFormatSeparator);
3540
- const formatter = parserForArrayFormat(options);
3541
- const ret = /* @__PURE__ */ Object.create(null);
3542
- if (typeof query !== "string") {
3543
- return ret;
3544
- }
3545
- query = query.trim().replace(/^[?#&]/, "");
3546
- if (!query) {
3547
- return ret;
3548
- }
3549
- for (const param of query.split("&")) {
3550
- if (param === "") {
3551
- continue;
3552
- }
3553
- let [key, value] = splitOnFirst$1(options.decode ? param.replace(/\+/g, " ") : param, "=");
3554
- value = value === void 0 ? null : ["comma", "separator", "bracket-separator"].includes(options.arrayFormat) ? value : decode2(value, options);
3555
- formatter(decode2(key, options), value, ret);
3556
- }
3557
- for (const key of Object.keys(ret)) {
3558
- const value = ret[key];
3559
- if (typeof value === "object" && value !== null) {
3560
- for (const k of Object.keys(value)) {
3561
- value[k] = parseValue(value[k], options);
3562
- }
3563
- } else {
3564
- ret[key] = parseValue(value, options);
3565
- }
3566
- }
3567
- if (options.sort === false) {
3568
- return ret;
3562
+ var resolvePromise;
3563
+ this.promise = new Promise(function promiseExecutor(resolve) {
3564
+ resolvePromise = resolve;
3565
+ });
3566
+ var token2 = this;
3567
+ executor(function cancel(message) {
3568
+ if (token2.reason) {
3569
+ return;
3569
3570
  }
3570
- return (options.sort === true ? Object.keys(ret).sort() : Object.keys(ret).sort(options.sort)).reduce((result, key) => {
3571
- const value = ret[key];
3572
- if (Boolean(value) && typeof value === "object" && !Array.isArray(value)) {
3573
- result[key] = keysSorter(value);
3574
- } else {
3575
- result[key] = value;
3576
- }
3577
- return result;
3578
- }, /* @__PURE__ */ Object.create(null));
3571
+ token2.reason = new Cancel(message);
3572
+ resolvePromise(token2.reason);
3573
+ });
3574
+ }
3575
+ CancelToken.prototype.throwIfRequested = function throwIfRequested() {
3576
+ if (this.reason) {
3577
+ throw this.reason;
3578
+ }
3579
+ };
3580
+ CancelToken.source = function source() {
3581
+ var cancel;
3582
+ var token2 = new CancelToken(function executor(c) {
3583
+ cancel = c;
3584
+ });
3585
+ return {
3586
+ token: token2,
3587
+ cancel
3588
+ };
3589
+ };
3590
+ var CancelToken_1 = CancelToken;
3591
+ var spread = function spread2(callback) {
3592
+ return function wrap(arr) {
3593
+ return callback.apply(null, arr);
3594
+ };
3595
+ };
3596
+ var isAxiosError = function isAxiosError2(payload) {
3597
+ return typeof payload === "object" && payload.isAxiosError === true;
3598
+ };
3599
+ var utils = utils$d;
3600
+ var bind2 = bind$2;
3601
+ var Axios = Axios_1;
3602
+ var mergeConfig2 = mergeConfig$2;
3603
+ var defaults = defaults_1;
3604
+ function createInstance(defaultConfig) {
3605
+ var context = new Axios(defaultConfig);
3606
+ var instance = bind2(Axios.prototype.request, context);
3607
+ utils.extend(instance, Axios.prototype, context);
3608
+ utils.extend(instance, context);
3609
+ return instance;
3610
+ }
3611
+ var axios$1 = createInstance(defaults);
3612
+ axios$1.Axios = Axios;
3613
+ axios$1.create = function create(instanceConfig) {
3614
+ return createInstance(mergeConfig2(axios$1.defaults, instanceConfig));
3615
+ };
3616
+ axios$1.Cancel = Cancel_1;
3617
+ axios$1.CancelToken = CancelToken_1;
3618
+ axios$1.isCancel = isCancel$1;
3619
+ axios$1.all = function all(promises) {
3620
+ return Promise.all(promises);
3621
+ };
3622
+ axios$1.spread = spread;
3623
+ axios$1.isAxiosError = isAxiosError;
3624
+ axios$2.exports = axios$1;
3625
+ axios$2.exports.default = axios$1;
3626
+ var axios = axios$2.exports;
3627
+ const getUrlFromLocalizedVenueMedia = (localizedVenueMedia, locale) => {
3628
+ var _a, _b, _c;
3629
+ if (localizedVenueMedia && ((_a = localizedVenueMedia == null ? void 0 : localizedVenueMedia.url) == null ? void 0 : _a.length) > 0) {
3630
+ return ((_b = localizedVenueMedia.url.find((item) => item.locale === locale)) == null ? void 0 : _b.value) || ((_c = localizedVenueMedia.url.find((item) => item.locale === "*")) == null ? void 0 : _c.value) || null;
3631
+ }
3632
+ return null;
3633
+ };
3634
+ const getLocalizedVenueMediaFromArray = (localizedVenueMedia, venue) => {
3635
+ var _a, _b;
3636
+ return ((_a = localizedVenueMedia == null ? void 0 : localizedVenueMedia.find) == null ? void 0 : _a.call(localizedVenueMedia, (item) => item.venue === venue)) || ((_b = localizedVenueMedia == null ? void 0 : localizedVenueMedia.find) == null ? void 0 : _b.call(localizedVenueMedia, (item) => item.venue === "*"));
3637
+ };
3638
+ function useCms(id, intervalSeconds = 600, withLocalStorage = true, baseUrl, tenant) {
3639
+ var _a, _b;
3640
+ if (!baseUrl || !tenant) {
3641
+ throw new Error("baseUrl or tenant was not provided");
3579
3642
  }
3580
- exports.extract = extract;
3581
- exports.parse = parse;
3582
- exports.stringify = (object, options) => {
3583
- if (!object) {
3584
- return "";
3585
- }
3586
- options = Object.assign({
3587
- encode: true,
3588
- strict: true,
3589
- arrayFormat: "none",
3590
- arrayFormatSeparator: ","
3591
- }, options);
3592
- validateArrayFormatSeparator(options.arrayFormatSeparator);
3593
- const shouldFilter = (key) => options.skipNull && isNullOrUndefined(object[key]) || options.skipEmptyString && object[key] === "";
3594
- const formatter = encoderForArrayFormat(options);
3595
- const objectCopy = {};
3596
- for (const key of Object.keys(object)) {
3597
- if (!shouldFilter(key)) {
3598
- objectCopy[key] = object[key];
3643
+ const key = `${id}_${tenant}_${baseUrl}`;
3644
+ const url = `${baseUrl.endsWith("/") ? baseUrl.slice(0, -1) : baseUrl}/cms-api/content/${tenant}/${id}`;
3645
+ const loadedData = ((_a = getFromLocalStorage()) == null ? void 0 : _a.value) || null;
3646
+ const [timestamp, setTimestamp] = useState(((_b = getFromLocalStorage()) == null ? void 0 : _b.timestamp) || 0);
3647
+ const [state, setState] = useState(loadedData || null);
3648
+ const [error, setError] = useState(false);
3649
+ function getCms() {
3650
+ axios.get(url).then((res) => {
3651
+ if (isEmpty_1(res.data)) {
3652
+ throw new Error(`CMS data '${id}' is an empty object`);
3599
3653
  }
3600
- }
3601
- const keys2 = Object.keys(objectCopy);
3602
- if (options.sort !== false) {
3603
- keys2.sort(options.sort);
3604
- }
3605
- return keys2.map((key) => {
3606
- const value = object[key];
3607
- if (value === void 0) {
3608
- return "";
3654
+ if (!isEqual_1(res.data, state)) {
3655
+ setState(res.data);
3609
3656
  }
3610
- if (value === null) {
3611
- return encode2(key, options);
3657
+ if (error) {
3658
+ setError(false);
3612
3659
  }
3613
- if (Array.isArray(value)) {
3614
- if (value.length === 0 && options.arrayFormat === "bracket-separator") {
3615
- return encode2(key, options) + "[]";
3616
- }
3617
- return value.reduce(formatter(key), []).join("&");
3660
+ if (withLocalStorage) {
3661
+ saveToLocalStorage(res.data);
3618
3662
  }
3619
- return encode2(key, options) + "=" + encode2(value, options);
3620
- }).filter((x) => x.length > 0).join("&");
3621
- };
3622
- exports.parseUrl = (url, options) => {
3623
- options = Object.assign({
3624
- decode: true
3625
- }, options);
3626
- const [url_, hash] = splitOnFirst$1(url, "#");
3627
- return Object.assign({
3628
- url: url_.split("?")[0] || "",
3629
- query: parse(extract(url), options)
3630
- }, options && options.parseFragmentIdentifier && hash ? { fragmentIdentifier: decode2(hash, options) } : {});
3631
- };
3632
- exports.stringifyUrl = (object, options) => {
3633
- options = Object.assign({
3634
- encode: true,
3635
- strict: true,
3636
- [encodeFragmentIdentifier]: true
3637
- }, options);
3638
- const url = removeHash(object.url).split("?")[0] || "";
3639
- const queryFromUrl = exports.extract(object.url);
3640
- const parsedQueryFromUrl = exports.parse(queryFromUrl, { sort: false });
3641
- const query = Object.assign(parsedQueryFromUrl, object.query);
3642
- let queryString2 = exports.stringify(query, options);
3643
- if (queryString2) {
3644
- queryString2 = `?${queryString2}`;
3663
+ }).catch((e) => {
3664
+ console.error(e);
3665
+ setError(true);
3666
+ });
3667
+ return;
3668
+ }
3669
+ function saveToLocalStorage(data) {
3670
+ const t = new Date().valueOf();
3671
+ const value = JSON.stringify({
3672
+ value: data,
3673
+ timestamp: t
3674
+ });
3675
+ localStorage.setItem(key, value);
3676
+ setTimestamp(t);
3677
+ }
3678
+ function getFromLocalStorage() {
3679
+ try {
3680
+ const value = localStorage.getItem(key);
3681
+ if (value) {
3682
+ return JSON.parse(value);
3683
+ }
3684
+ } catch (e) {
3685
+ console.warn(e);
3645
3686
  }
3646
- let hash = getHash(object.url);
3647
- if (object.fragmentIdentifier) {
3648
- hash = `#${options[encodeFragmentIdentifier] ? encode2(object.fragmentIdentifier, options) : object.fragmentIdentifier}`;
3687
+ return null;
3688
+ }
3689
+ useEffect(() => {
3690
+ if (new Date().valueOf() - timestamp > intervalSeconds * 1e3) {
3691
+ getCms();
3649
3692
  }
3650
- return `${url}${queryString2}${hash}`;
3651
- };
3652
- exports.pick = (input, filter, options) => {
3653
- options = Object.assign({
3654
- parseFragmentIdentifier: true,
3655
- [encodeFragmentIdentifier]: false
3656
- }, options);
3657
- const { url, query, fragmentIdentifier } = exports.parseUrl(input, options);
3658
- return exports.stringifyUrl({
3659
- url,
3660
- query: filterObject(query, filter),
3661
- fragmentIdentifier
3662
- }, options);
3663
- };
3664
- exports.exclude = (input, filter, options) => {
3665
- const exclusionFilter = Array.isArray(filter) ? (key) => !filter.includes(key) : (key, value) => !filter(key, value);
3666
- return exports.pick(input, exclusionFilter, options);
3693
+ }, []);
3694
+ useInterval(getCms, intervalSeconds * 1e3);
3695
+ return { value: state, isError: error, isLoading: !error && !state };
3696
+ }
3697
+ function useVenueCms(id, intervalSeconds = 600, withLocalStorage = true, baseUrl, tenant, venue) {
3698
+ var _a, _b, _c, _d;
3699
+ if (!baseUrl || !tenant || !venue) {
3700
+ throw new Error("baseUrl, tenant or venue was not provided");
3701
+ }
3702
+ const arrayOfEntries = useCms(id, intervalSeconds, withLocalStorage, baseUrl, tenant);
3703
+ return {
3704
+ value: ((_b = (_a = arrayOfEntries.value) == null ? void 0 : _a.find) == null ? void 0 : _b.call(_a, (item) => item.venue === venue)) || ((_d = (_c = arrayOfEntries.value) == null ? void 0 : _c.find) == null ? void 0 : _d.call(_c, (item) => item.venue === "*")) || null,
3705
+ isError: arrayOfEntries.isError
3667
3706
  };
3668
- })(queryString);
3669
- const supported = [".png", ".jpg", ".jpeg", ".webp", ".bmp", ".tiff"];
3670
- function getMediaUrl(url, size = 500) {
3671
- const link = queryString.parseUrl(url);
3672
- if (!(url.startsWith("https://orderingstackmedia.blob.core.windows.net/pictures") || url.startsWith("https://orderingstack-mmedia-tools.azurewebsites.net/api/img/"))) {
3673
- return url;
3707
+ }
3708
+ function useLocalizedVenueMedia(id, venue, locale, intervalSeconds = 300, withLocalStorage = true) {
3709
+ var _a, _b, _c, _d;
3710
+ const config = useContext(ConfigContext);
3711
+ if (!config) {
3712
+ throw new Error("Missing config context");
3674
3713
  }
3675
- const extension = link.url.substring(link.url.lastIndexOf("."));
3676
- if (!supported.includes(extension)) {
3677
- return url;
3714
+ const { value, isError } = useVenueCms(id, intervalSeconds, withLocalStorage, config.baseUrl, config.tenant, venue);
3715
+ let localizedValue = null;
3716
+ let fallbackUrl = null;
3717
+ if (value && ((_a = value == null ? void 0 : value.url) == null ? void 0 : _a.length) > 0) {
3718
+ localizedValue = ((_b = value.url.find((item) => item.locale === locale)) == null ? void 0 : _b.value) || ((_c = value.url.find((item) => item.locale === "*")) == null ? void 0 : _c.value) || null;
3678
3719
  }
3679
- return queryString.stringifyUrl({
3680
- url: link.url.replace("https://orderingstackmedia.blob.core.windows.net/pictures/", "https://orderingstack-mmedia-tools.azurewebsites.net/api/img/"),
3681
- query: { ...link.query, w: size }
3720
+ if (!localizedValue && value && ((_d = value == null ? void 0 : value.url) == null ? void 0 : _d.length) > 0) {
3721
+ fallbackUrl = value.url[0].value;
3722
+ }
3723
+ return { url: localizedValue, fallbackUrl, isError };
3724
+ }
3725
+ function useKioskMediaCms({
3726
+ kioskMediaId,
3727
+ kioskMediaType,
3728
+ intervalSeconds = 600,
3729
+ withLocalStorage = true,
3730
+ baseUrl,
3731
+ tenant,
3732
+ venue,
3733
+ locale
3734
+ }) {
3735
+ var _a;
3736
+ const { value, isError, isLoading } = useCms(kioskMediaId, intervalSeconds, withLocalStorage, baseUrl, tenant);
3737
+ const kioskMediaFoundType = (value == null ? void 0 : value[kioskMediaType]) || [];
3738
+ const kioskMediaFoundTypeVenue = getLocalizedVenueMediaFromArray(kioskMediaFoundType, venue);
3739
+ const localizedValue = getUrlFromLocalizedVenueMedia(kioskMediaFoundTypeVenue, locale);
3740
+ const fallbackUrl = !localizedValue && kioskMediaFoundTypeVenue && ((_a = kioskMediaFoundTypeVenue == null ? void 0 : kioskMediaFoundTypeVenue.url) == null ? void 0 : _a.length) > 0 ? kioskMediaFoundTypeVenue.url[0].value : null;
3741
+ return {
3742
+ url: localizedValue,
3743
+ fallbackUrl,
3744
+ mediaType: kioskMediaFoundTypeVenue == null ? void 0 : kioskMediaFoundTypeVenue.mediaType,
3745
+ isError,
3746
+ isLoading
3747
+ };
3748
+ }
3749
+ function useKioskMediaCmsWithContext({
3750
+ kioskMediaId,
3751
+ kioskMediaType,
3752
+ venue,
3753
+ intervalSeconds = 600,
3754
+ withLocalStorage = true
3755
+ }) {
3756
+ const config = useContext(ConfigContext);
3757
+ if (!config) {
3758
+ throw new Error("Missing config context");
3759
+ }
3760
+ const {
3761
+ i18n: { language }
3762
+ } = useTranslation();
3763
+ return useKioskMediaCms({
3764
+ kioskMediaId,
3765
+ kioskMediaType,
3766
+ intervalSeconds,
3767
+ withLocalStorage,
3768
+ venue,
3769
+ baseUrl: config.baseUrl,
3770
+ tenant: config.tenant,
3771
+ locale: language
3682
3772
  });
3683
3773
  }
3684
- function useMediaUrl(url, size = 500) {
3685
- return getMediaUrl(url, size);
3774
+ function useOnClickOutside(ref, handler) {
3775
+ useEffect(() => {
3776
+ const listener = (event) => {
3777
+ if (!ref.current || ref.current.contains(event.target)) {
3778
+ return;
3779
+ }
3780
+ handler(event);
3781
+ };
3782
+ document.addEventListener("mousedown", listener);
3783
+ document.addEventListener("touchstart", listener);
3784
+ return () => {
3785
+ document.removeEventListener("mousedown", listener);
3786
+ document.removeEventListener("touchstart", listener);
3787
+ };
3788
+ }, [ref, handler]);
3789
+ }
3790
+ function useKioskChannelsAvailability(channelConstraints) {
3791
+ const [dineInOpen, setDineInOpen] = useState(isChannelOpen(channelConstraints == null ? void 0 : channelConstraints.DINE_IN));
3792
+ const [takeAwayOpen, setTakeAwayOpen] = useState(isChannelOpen(channelConstraints == null ? void 0 : channelConstraints.TAKE_AWAY));
3793
+ function checkOpen() {
3794
+ const dineIn = isChannelOpen(channelConstraints == null ? void 0 : channelConstraints.DINE_IN);
3795
+ const takeAway = isChannelOpen(channelConstraints == null ? void 0 : channelConstraints.TAKE_AWAY);
3796
+ if (dineIn !== dineInOpen) {
3797
+ console.log("dine in open changed", dineInOpen, "=>", dineIn);
3798
+ setDineInOpen(dineIn);
3799
+ }
3800
+ if (takeAway !== takeAwayOpen) {
3801
+ console.log("take away open changed", takeAwayOpen, "=>", takeAway);
3802
+ setTakeAwayOpen(takeAway);
3803
+ }
3804
+ }
3805
+ useEffect(() => {
3806
+ checkOpen();
3807
+ }, [channelConstraints]);
3808
+ useInterval(checkOpen, 6e4);
3809
+ return { dineInOpen, takeAwayOpen, loaded: !!channelConstraints };
3686
3810
  }
3687
3811
  function addDiscounts(discounts) {
3688
3812
  let value = 0;