@symbo.ls/scratch 2.11.429 → 2.11.438
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/defaultConfig/index.js +3 -1
- package/dist/cjs/defaultConfig/responsive.js +3 -1
- package/dist/cjs/factory.js +303 -106
- package/dist/cjs/index.js +655 -219
- package/dist/cjs/set.js +653 -217
- package/dist/cjs/system/color.js +651 -216
- package/dist/cjs/system/document.js +650 -215
- package/dist/cjs/system/font.js +650 -215
- package/dist/cjs/system/index.js +655 -219
- package/dist/cjs/system/reset.js +651 -216
- package/dist/cjs/system/shadow.js +651 -216
- package/dist/cjs/system/spacing.js +650 -215
- package/dist/cjs/system/svg.js +650 -215
- package/dist/cjs/system/theme.js +651 -216
- package/dist/cjs/system/timing.js +650 -215
- package/dist/cjs/system/typography.js +652 -216
- package/dist/cjs/transforms/index.js +652 -217
- package/dist/cjs/utils/color.js +304 -109
- package/dist/cjs/utils/index.js +650 -215
- package/dist/cjs/utils/sequence.js +650 -215
- package/dist/cjs/utils/sprite.js +303 -106
- package/dist/cjs/utils/var.js +650 -215
- package/package.json +2 -2
- package/src/defaultConfig/responsive.js +3 -1
- package/src/system/color.js +1 -1
- package/src/system/shadow.js +1 -1
- package/src/system/theme.js +1 -1
- package/src/system/typography.js +2 -1
|
@@ -193,6 +193,7 @@ var require_cjs = __commonJS({
|
|
|
193
193
|
var __toCommonJS22 = (mod) => __copyProps22(__defProp22({}, "__esModule", { value: true }), mod);
|
|
194
194
|
var node_exports = {};
|
|
195
195
|
__export22(node_exports, {
|
|
196
|
+
isDOMNode: () => isDOMNode,
|
|
196
197
|
isHtmlElement: () => isHtmlElement,
|
|
197
198
|
isNode: () => isNode
|
|
198
199
|
});
|
|
@@ -204,6 +205,9 @@ var require_cjs = __commonJS({
|
|
|
204
205
|
var isHtmlElement = (obj) => {
|
|
205
206
|
return (typeof HTMLElement === "object" ? obj instanceof import_globals2.window.HTMLElement : obj && typeof obj === "object" && obj !== null && obj.nodeType === 1 && typeof obj.nodeName === "string") || false;
|
|
206
207
|
};
|
|
208
|
+
var isDOMNode = (obj) => {
|
|
209
|
+
return typeof import_globals2.window !== "undefined" && (obj instanceof import_globals2.window.Node || obj instanceof import_globals2.window.Window || obj === import_globals2.window || obj === document);
|
|
210
|
+
};
|
|
207
211
|
}
|
|
208
212
|
});
|
|
209
213
|
var require_types2 = __commonJS2({
|
|
@@ -319,7 +323,6 @@ var require_cjs = __commonJS({
|
|
|
319
323
|
addItemAfterEveryElement: () => addItemAfterEveryElement,
|
|
320
324
|
arrayContainsOtherArray: () => arrayContainsOtherArray,
|
|
321
325
|
arraysEqual: () => arraysEqual,
|
|
322
|
-
createNestedObject: () => createNestedObject,
|
|
323
326
|
cutArrayAfterValue: () => cutArrayAfterValue,
|
|
324
327
|
cutArrayBeforeValue: () => cutArrayBeforeValue,
|
|
325
328
|
getFrequencyInArray: () => getFrequencyInArray,
|
|
@@ -365,10 +368,10 @@ var require_cjs = __commonJS({
|
|
|
365
368
|
return [].concat(...arrays);
|
|
366
369
|
};
|
|
367
370
|
var mergeArray = (arr, excludeFrom = []) => {
|
|
368
|
-
return arr.reduce((a, c) => (0, import_object.deepMerge)(a, (0, import_object.
|
|
371
|
+
return arr.reduce((a, c) => (0, import_object.deepMerge)(a, (0, import_object.deepCloneWithExtend)(c, excludeFrom), excludeFrom), {});
|
|
369
372
|
};
|
|
370
373
|
var mergeAndCloneIfArray = (obj) => {
|
|
371
|
-
return (0, import_types.isArray)(obj) ? mergeArray(obj) : (0, import_object.
|
|
374
|
+
return (0, import_types.isArray)(obj) ? mergeArray(obj) : (0, import_object.deepCloneWithExtend)(obj);
|
|
372
375
|
};
|
|
373
376
|
var cutArrayBeforeValue = (arr, value) => {
|
|
374
377
|
const index = arr.indexOf(value);
|
|
@@ -386,22 +389,6 @@ var require_cjs = __commonJS({
|
|
|
386
389
|
}
|
|
387
390
|
return arr;
|
|
388
391
|
};
|
|
389
|
-
var createNestedObject = (arr, lastValue) => {
|
|
390
|
-
const nestedObject = {};
|
|
391
|
-
if (arr.length === 0) {
|
|
392
|
-
return lastValue;
|
|
393
|
-
}
|
|
394
|
-
arr.reduce((obj, value, index) => {
|
|
395
|
-
if (!obj[value]) {
|
|
396
|
-
obj[value] = {};
|
|
397
|
-
}
|
|
398
|
-
if (index === arr.length - 1 && lastValue) {
|
|
399
|
-
obj[value] = lastValue;
|
|
400
|
-
}
|
|
401
|
-
return obj[value];
|
|
402
|
-
}, nestedObject);
|
|
403
|
-
return nestedObject;
|
|
404
|
-
};
|
|
405
392
|
var removeValueFromArray = (arr, value) => {
|
|
406
393
|
const index = arr.indexOf(value);
|
|
407
394
|
if (index > -1) {
|
|
@@ -472,6 +459,8 @@ var require_cjs = __commonJS({
|
|
|
472
459
|
__export22(string_exports, {
|
|
473
460
|
customDecodeURIComponent: () => customDecodeURIComponent,
|
|
474
461
|
customEncodeURIComponent: () => customEncodeURIComponent,
|
|
462
|
+
decodeNewlines: () => decodeNewlines,
|
|
463
|
+
encodeNewlines: () => encodeNewlines,
|
|
475
464
|
findKeyPosition: () => findKeyPosition,
|
|
476
465
|
lowercaseFirstLetter: () => lowercaseFirstLetter,
|
|
477
466
|
replaceLiteralsWithObjectFields: () => replaceLiteralsWithObjectFields,
|
|
@@ -575,6 +564,12 @@ var require_cjs = __commonJS({
|
|
|
575
564
|
return char;
|
|
576
565
|
});
|
|
577
566
|
};
|
|
567
|
+
var encodeNewlines = (str) => {
|
|
568
|
+
return str.split("\n").join("/////n").split("`").join("/////tilde").split("$").join("/////dlrsgn");
|
|
569
|
+
};
|
|
570
|
+
var decodeNewlines = (encodedStr) => {
|
|
571
|
+
return encodedStr.split("/////n").join("\n").split("/////tilde").join("`").split("/////dlrsgn").join("$");
|
|
572
|
+
};
|
|
578
573
|
var customEncodeURIComponent = (str) => {
|
|
579
574
|
return str.split("").map((char) => {
|
|
580
575
|
if (/[^a-zA-Z0-9\s]/.test(char)) {
|
|
@@ -610,8 +605,8 @@ var require_cjs = __commonJS({
|
|
|
610
605
|
var __toCommonJS22 = (mod) => __copyProps22(__defProp22({}, "__esModule", { value: true }), mod);
|
|
611
606
|
var object_exports = {};
|
|
612
607
|
__export22(object_exports, {
|
|
613
|
-
checkIfKeyIsComponent: () => checkIfKeyIsComponent,
|
|
614
608
|
clone: () => clone,
|
|
609
|
+
createNestedObject: () => createNestedObject,
|
|
615
610
|
createObjectWithoutPrototype: () => createObjectWithoutPrototype,
|
|
616
611
|
deepClone: () => deepClone2,
|
|
617
612
|
deepCloneExclude: () => deepCloneExclude,
|
|
@@ -622,13 +617,12 @@ var require_cjs = __commonJS({
|
|
|
622
617
|
deepMerge: () => deepMerge2,
|
|
623
618
|
deepStringify: () => deepStringify,
|
|
624
619
|
detachFunctionsFromObject: () => detachFunctionsFromObject,
|
|
620
|
+
detectInfiniteLoop: () => detectInfiniteLoop,
|
|
625
621
|
diff: () => diff,
|
|
626
622
|
diffArrays: () => diffArrays,
|
|
627
623
|
diffObjects: () => diffObjects,
|
|
628
624
|
exec: () => exec,
|
|
629
625
|
flattenRecursive: () => flattenRecursive,
|
|
630
|
-
getChildrenComponentsByKey: () => getChildrenComponentsByKey,
|
|
631
|
-
getExtendsInElement: () => getExtendsInElement,
|
|
632
626
|
hasOwnProperty: () => hasOwnProperty,
|
|
633
627
|
isEmpty: () => isEmpty,
|
|
634
628
|
isEmptyObject: () => isEmptyObject,
|
|
@@ -643,6 +637,7 @@ var require_cjs = __commonJS({
|
|
|
643
637
|
overwriteDeep: () => overwriteDeep,
|
|
644
638
|
overwriteShallow: () => overwriteShallow,
|
|
645
639
|
removeFromObject: () => removeFromObject,
|
|
640
|
+
removeNestedKeyByPath: () => removeNestedKeyByPath,
|
|
646
641
|
stringToObject: () => stringToObject
|
|
647
642
|
});
|
|
648
643
|
module22.exports = __toCommonJS22(object_exports);
|
|
@@ -650,6 +645,8 @@ var require_cjs = __commonJS({
|
|
|
650
645
|
var import_types = require_types2();
|
|
651
646
|
var import_array = require_array2();
|
|
652
647
|
var import_string = require_string2();
|
|
648
|
+
var import_node = require_node2();
|
|
649
|
+
var ENV = "development";
|
|
653
650
|
var exec = (param, element, state, context) => {
|
|
654
651
|
if ((0, import_types.isFunction)(param)) {
|
|
655
652
|
return param(
|
|
@@ -728,27 +725,28 @@ var require_cjs = __commonJS({
|
|
|
728
725
|
var mergeArrayExclude = (arr, excl = []) => {
|
|
729
726
|
return arr.reduce((acc, curr) => deepMerge2(acc, deepCloneExclude(curr, excl)), {});
|
|
730
727
|
};
|
|
731
|
-
var deepClone2 = (obj,
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
728
|
+
var deepClone2 = (obj, exclude = [], cleanUndefined = false, visited = /* @__PURE__ */ new WeakMap()) => {
|
|
729
|
+
if (!(0, import_types.isObjectLike)(obj) || (0, import_node.isDOMNode)(obj))
|
|
730
|
+
return obj;
|
|
731
|
+
if (visited.has(obj))
|
|
732
|
+
return visited.get(obj);
|
|
733
|
+
const clone2 = (0, import_types.isArray)(obj) ? [] : {};
|
|
734
|
+
visited.set(obj, clone2);
|
|
735
|
+
for (const key in obj) {
|
|
736
|
+
if (Object.prototype.hasOwnProperty.call(obj, key) && !exclude.includes(key)) {
|
|
737
|
+
const value = obj[key];
|
|
738
|
+
if ((0, import_node.isDOMNode)(value)) {
|
|
739
|
+
clone2[key] = value;
|
|
740
|
+
} else if (key === "extend" && (0, import_types.isArray)(value)) {
|
|
741
|
+
clone2[key] = (0, import_array.mergeArray)(value, exclude);
|
|
742
|
+
} else if ((0, import_types.isObjectLike)(value)) {
|
|
743
|
+
clone2[key] = deepClone2(value, exclude, cleanUndefined, visited);
|
|
744
|
+
} else {
|
|
745
|
+
clone2[key] = value;
|
|
746
|
+
}
|
|
745
747
|
}
|
|
746
|
-
if ((0, import_types.isObjectLike)(objProp)) {
|
|
747
|
-
o[prop] = deepClone2(objProp, excludeFrom, cleanUndefined);
|
|
748
|
-
} else
|
|
749
|
-
o[prop] = objProp;
|
|
750
748
|
}
|
|
751
|
-
return
|
|
749
|
+
return clone2;
|
|
752
750
|
};
|
|
753
751
|
var deepCloneWithExtend = (obj, excludeFrom = ["node"], options = {}) => {
|
|
754
752
|
const o = options.window ? (0, import_types.isArray)(obj) ? new options.window.Array([]) : new options.window.Object({}) : (0, import_types.isArray)(obj) ? [] : {};
|
|
@@ -760,6 +758,8 @@ var require_cjs = __commonJS({
|
|
|
760
758
|
continue;
|
|
761
759
|
if ((0, import_types.isObjectLike)(objProp)) {
|
|
762
760
|
o[prop] = deepCloneWithExtend(objProp, excludeFrom, options);
|
|
761
|
+
} else if ((0, import_types.isFunction)(objProp) && options.window) {
|
|
762
|
+
o[prop] = (options.window || import_globals2.window).eval("(" + objProp.toString() + ")");
|
|
763
763
|
} else
|
|
764
764
|
o[prop] = objProp;
|
|
765
765
|
}
|
|
@@ -1003,16 +1003,23 @@ var require_cjs = __commonJS({
|
|
|
1003
1003
|
}
|
|
1004
1004
|
return obj;
|
|
1005
1005
|
};
|
|
1006
|
-
var overwriteDeep = (obj, params, excludeFrom = []) => {
|
|
1006
|
+
var overwriteDeep = (obj, params, excludeFrom = [], visited = /* @__PURE__ */ new WeakMap()) => {
|
|
1007
|
+
if (!(0, import_types.isObjectLike)(obj) || !(0, import_types.isObjectLike)(params) || (0, import_node.isDOMNode)(obj) || (0, import_node.isDOMNode)(params)) {
|
|
1008
|
+
return params;
|
|
1009
|
+
}
|
|
1010
|
+
if (visited.has(obj)) {
|
|
1011
|
+
return visited.get(obj);
|
|
1012
|
+
}
|
|
1013
|
+
visited.set(obj, obj);
|
|
1007
1014
|
for (const e in params) {
|
|
1008
|
-
if (e === "
|
|
1009
|
-
continue;
|
|
1010
|
-
if (excludeFrom.includes(e) || e.startsWith("__"))
|
|
1015
|
+
if (e === "__ref" || excludeFrom.includes(e) || e.startsWith("__"))
|
|
1011
1016
|
continue;
|
|
1012
1017
|
const objProp = obj[e];
|
|
1013
1018
|
const paramsProp = params[e];
|
|
1014
|
-
if ((0,
|
|
1015
|
-
|
|
1019
|
+
if ((0, import_node.isDOMNode)(paramsProp)) {
|
|
1020
|
+
obj[e] = paramsProp;
|
|
1021
|
+
} else if ((0, import_types.isObjectLike)(objProp) && (0, import_types.isObjectLike)(paramsProp)) {
|
|
1022
|
+
obj[e] = overwriteDeep(objProp, paramsProp, excludeFrom, visited);
|
|
1016
1023
|
} else if (paramsProp !== void 0) {
|
|
1017
1024
|
obj[e] = paramsProp;
|
|
1018
1025
|
}
|
|
@@ -1059,30 +1066,40 @@ var require_cjs = __commonJS({
|
|
|
1059
1066
|
}
|
|
1060
1067
|
return true;
|
|
1061
1068
|
};
|
|
1062
|
-
var deepContains = (obj1, obj2) => {
|
|
1063
|
-
if (
|
|
1069
|
+
var deepContains = (obj1, obj2, ignoredKeys = ["node", "__ref"]) => {
|
|
1070
|
+
if (obj1 === obj2)
|
|
1071
|
+
return true;
|
|
1072
|
+
if (!(0, import_types.isObjectLike)(obj1) || !(0, import_types.isObjectLike)(obj2))
|
|
1064
1073
|
return false;
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1074
|
+
if ((0, import_node.isDOMNode)(obj1) || (0, import_node.isDOMNode)(obj2))
|
|
1075
|
+
return obj1 === obj2;
|
|
1076
|
+
const stack = [[obj1, obj2]];
|
|
1077
|
+
const visited = /* @__PURE__ */ new WeakSet();
|
|
1078
|
+
while (stack.length > 0) {
|
|
1079
|
+
const [current1, current2] = stack.pop();
|
|
1080
|
+
if (visited.has(current1))
|
|
1081
|
+
continue;
|
|
1082
|
+
visited.add(current1);
|
|
1083
|
+
const keys1 = Object.keys(current1).filter((key) => !ignoredKeys.includes(key));
|
|
1084
|
+
const keys2 = Object.keys(current2).filter((key) => !ignoredKeys.includes(key));
|
|
1085
|
+
if (keys1.length !== keys2.length)
|
|
1086
|
+
return false;
|
|
1087
|
+
for (const key of keys1) {
|
|
1088
|
+
if (!Object.prototype.hasOwnProperty.call(current2, key))
|
|
1069
1089
|
return false;
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
}
|
|
1075
|
-
}
|
|
1076
|
-
} else if ((0, import_types.isObjectLike)(obj1) && obj2 !== null) {
|
|
1077
|
-
for (const key in obj1) {
|
|
1078
|
-
const hasOwnProperty2 = Object.prototype.hasOwnProperty.call(obj2, key);
|
|
1079
|
-
if (!hasOwnProperty2 || !deepContains(obj1[key], obj2[key])) {
|
|
1090
|
+
const value1 = current1[key];
|
|
1091
|
+
const value2 = current2[key];
|
|
1092
|
+
if ((0, import_node.isDOMNode)(value1) || (0, import_node.isDOMNode)(value2)) {
|
|
1093
|
+
if (value1 !== value2)
|
|
1080
1094
|
return false;
|
|
1095
|
+
} else if ((0, import_types.isObjectLike)(value1) && (0, import_types.isObjectLike)(value2)) {
|
|
1096
|
+
if (value1 !== value2) {
|
|
1097
|
+
stack.push([value1, value2]);
|
|
1081
1098
|
}
|
|
1099
|
+
} else if (value1 !== value2) {
|
|
1100
|
+
return false;
|
|
1082
1101
|
}
|
|
1083
1102
|
}
|
|
1084
|
-
} else {
|
|
1085
|
-
return obj2 === obj1;
|
|
1086
1103
|
}
|
|
1087
1104
|
return true;
|
|
1088
1105
|
};
|
|
@@ -1110,53 +1127,60 @@ var require_cjs = __commonJS({
|
|
|
1110
1127
|
}
|
|
1111
1128
|
return newObj;
|
|
1112
1129
|
};
|
|
1113
|
-
var
|
|
1114
|
-
const
|
|
1115
|
-
if (
|
|
1116
|
-
return;
|
|
1117
|
-
|
|
1118
|
-
|
|
1130
|
+
var createNestedObject = (arr, lastValue) => {
|
|
1131
|
+
const nestedObject = {};
|
|
1132
|
+
if (arr.length === 0) {
|
|
1133
|
+
return lastValue;
|
|
1134
|
+
}
|
|
1135
|
+
arr.reduce((obj, value, index) => {
|
|
1136
|
+
if (!obj[value]) {
|
|
1137
|
+
obj[value] = {};
|
|
1138
|
+
}
|
|
1139
|
+
if (index === arr.length - 1 && lastValue) {
|
|
1140
|
+
obj[value] = lastValue;
|
|
1141
|
+
}
|
|
1142
|
+
return obj[value];
|
|
1143
|
+
}, nestedObject);
|
|
1144
|
+
return nestedObject;
|
|
1119
1145
|
};
|
|
1120
|
-
var
|
|
1121
|
-
if (
|
|
1122
|
-
|
|
1146
|
+
var removeNestedKeyByPath = (obj, path) => {
|
|
1147
|
+
if (!Array.isArray(path)) {
|
|
1148
|
+
throw new Error("Path must be an array.");
|
|
1123
1149
|
}
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1150
|
+
let current = obj;
|
|
1151
|
+
for (let i = 0; i < path.length - 1; i++) {
|
|
1152
|
+
if (current[path[i]] === void 0) {
|
|
1153
|
+
return;
|
|
1154
|
+
}
|
|
1155
|
+
current = current[path[i]];
|
|
1129
1156
|
}
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
if (foundString || foundInArray)
|
|
1134
|
-
return el;
|
|
1157
|
+
const lastKey = path[path.length - 1];
|
|
1158
|
+
if (current && Object.hasOwnProperty.call(current, lastKey)) {
|
|
1159
|
+
delete current[lastKey];
|
|
1135
1160
|
}
|
|
1136
1161
|
};
|
|
1137
|
-
var
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
if (
|
|
1153
|
-
|
|
1162
|
+
var detectInfiniteLoop = (arr) => {
|
|
1163
|
+
const maxRepeats = 10;
|
|
1164
|
+
let pattern = [];
|
|
1165
|
+
let repeatCount = 0;
|
|
1166
|
+
for (let i = 0; i < arr.length; i++) {
|
|
1167
|
+
if (pattern.length < 2) {
|
|
1168
|
+
pattern.push(arr[i]);
|
|
1169
|
+
} else {
|
|
1170
|
+
if (arr[i] === pattern[i % 2]) {
|
|
1171
|
+
repeatCount++;
|
|
1172
|
+
} else {
|
|
1173
|
+
pattern = [arr[i - 1], arr[i]];
|
|
1174
|
+
repeatCount = 1;
|
|
1175
|
+
}
|
|
1176
|
+
if (repeatCount >= maxRepeats * 2) {
|
|
1177
|
+
if (ENV === "test" || ENV === "development") {
|
|
1178
|
+
console.warn("Warning: Potential infinite loop detected due to repeated sequence:", pattern);
|
|
1154
1179
|
}
|
|
1180
|
+
return true;
|
|
1155
1181
|
}
|
|
1156
1182
|
}
|
|
1157
1183
|
}
|
|
1158
|
-
traverse(obj);
|
|
1159
|
-
return result;
|
|
1160
1184
|
};
|
|
1161
1185
|
}
|
|
1162
1186
|
});
|
|
@@ -1182,6 +1206,7 @@ var require_cjs = __commonJS({
|
|
|
1182
1206
|
var __toCommonJS22 = (mod) => __copyProps22(__defProp22({}, "__esModule", { value: true }), mod);
|
|
1183
1207
|
var function_exports = {};
|
|
1184
1208
|
__export22(function_exports, {
|
|
1209
|
+
cloneFunction: () => cloneFunction,
|
|
1185
1210
|
debounce: () => debounce,
|
|
1186
1211
|
debounceOnContext: () => debounceOnContext,
|
|
1187
1212
|
isStringFunction: () => isStringFunction,
|
|
@@ -1231,6 +1256,17 @@ var require_cjs = __commonJS({
|
|
|
1231
1256
|
const functionRegex = /^((function\s*\([^)]*\)\s*\{[^}]*\})|(\([^)]*\)\s*=>))/;
|
|
1232
1257
|
return functionRegex.test(inputString);
|
|
1233
1258
|
};
|
|
1259
|
+
function cloneFunction(fn, win = window) {
|
|
1260
|
+
const temp = function() {
|
|
1261
|
+
return fn.apply(win, arguments);
|
|
1262
|
+
};
|
|
1263
|
+
for (const key in fn) {
|
|
1264
|
+
if (Object.hasOwnProperty.call(fn, key)) {
|
|
1265
|
+
temp[key] = fn[key];
|
|
1266
|
+
}
|
|
1267
|
+
}
|
|
1268
|
+
return temp;
|
|
1269
|
+
}
|
|
1234
1270
|
}
|
|
1235
1271
|
});
|
|
1236
1272
|
var require_log2 = __commonJS2({
|
|
@@ -1493,6 +1529,170 @@ var require_cjs = __commonJS({
|
|
|
1493
1529
|
var isValidHtmlTag = (arg) => HTML_TAGS.body.includes(arg);
|
|
1494
1530
|
}
|
|
1495
1531
|
});
|
|
1532
|
+
var require_component2 = __commonJS2({
|
|
1533
|
+
"../../../domql/packages/utils/dist/cjs/component.js"(exports2, module22) {
|
|
1534
|
+
"use strict";
|
|
1535
|
+
var __defProp22 = Object.defineProperty;
|
|
1536
|
+
var __getOwnPropDesc22 = Object.getOwnPropertyDescriptor;
|
|
1537
|
+
var __getOwnPropNames22 = Object.getOwnPropertyNames;
|
|
1538
|
+
var __hasOwnProp22 = Object.prototype.hasOwnProperty;
|
|
1539
|
+
var __export22 = (target, all) => {
|
|
1540
|
+
for (var name in all)
|
|
1541
|
+
__defProp22(target, name, { get: all[name], enumerable: true });
|
|
1542
|
+
};
|
|
1543
|
+
var __copyProps22 = (to, from, except, desc) => {
|
|
1544
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
1545
|
+
for (let key of __getOwnPropNames22(from))
|
|
1546
|
+
if (!__hasOwnProp22.call(to, key) && key !== except)
|
|
1547
|
+
__defProp22(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc22(from, key)) || desc.enumerable });
|
|
1548
|
+
}
|
|
1549
|
+
return to;
|
|
1550
|
+
};
|
|
1551
|
+
var __toCommonJS22 = (mod) => __copyProps22(__defProp22({}, "__esModule", { value: true }), mod);
|
|
1552
|
+
var component_exports = {};
|
|
1553
|
+
__export22(component_exports, {
|
|
1554
|
+
addAdditionalExtend: () => addAdditionalExtend,
|
|
1555
|
+
applyComponentFromContext: () => applyComponentFromContext,
|
|
1556
|
+
applyKeyComponentAsExtend: () => applyKeyComponentAsExtend,
|
|
1557
|
+
checkIfKeyIsComponent: () => checkIfKeyIsComponent,
|
|
1558
|
+
checkIfKeyIsProperty: () => checkIfKeyIsProperty,
|
|
1559
|
+
extendizeByKey: () => extendizeByKey,
|
|
1560
|
+
getChildrenComponentsByKey: () => getChildrenComponentsByKey,
|
|
1561
|
+
getExtendsInElement: () => getExtendsInElement,
|
|
1562
|
+
hasVariantProp: () => hasVariantProp,
|
|
1563
|
+
isVariant: () => isVariant
|
|
1564
|
+
});
|
|
1565
|
+
module22.exports = __toCommonJS22(component_exports);
|
|
1566
|
+
var import__ = require_cjs4();
|
|
1567
|
+
var ENV = "development";
|
|
1568
|
+
var checkIfKeyIsComponent = (key) => {
|
|
1569
|
+
const isFirstKeyString = (0, import__.isString)(key);
|
|
1570
|
+
if (!isFirstKeyString)
|
|
1571
|
+
return;
|
|
1572
|
+
const firstCharKey = key.slice(0, 1);
|
|
1573
|
+
return /^[A-Z]*$/.test(firstCharKey);
|
|
1574
|
+
};
|
|
1575
|
+
var checkIfKeyIsProperty = (key) => {
|
|
1576
|
+
const isFirstKeyString = (0, import__.isString)(key);
|
|
1577
|
+
if (!isFirstKeyString)
|
|
1578
|
+
return;
|
|
1579
|
+
const firstCharKey = key.slice(0, 1);
|
|
1580
|
+
return /^[a-z]*$/.test(firstCharKey);
|
|
1581
|
+
};
|
|
1582
|
+
var addAdditionalExtend = (newExtend, element) => {
|
|
1583
|
+
const { extend: elementExtend } = element;
|
|
1584
|
+
const originalArray = (0, import__.isArray)(elementExtend) ? elementExtend : [elementExtend];
|
|
1585
|
+
const receivedArray = (0, import__.isArray)(newExtend) ? newExtend : [newExtend];
|
|
1586
|
+
const extend = (0, import__.joinArrays)(receivedArray, originalArray);
|
|
1587
|
+
return { ...element, extend };
|
|
1588
|
+
};
|
|
1589
|
+
var extendizeByKey = (element, parent, key) => {
|
|
1590
|
+
const { context } = parent;
|
|
1591
|
+
const { tag, extend, props, attr, state, childExtend, childProps, on, if: condition, data } = element;
|
|
1592
|
+
const hasComponentAttrs = extend || childExtend || props || state || on || condition || attr || data;
|
|
1593
|
+
const extendFromKey = key.includes("+") ? key.split("+") : key.includes("_") ? [key.split("_")[0]] : key.includes(".") && !checkIfKeyIsComponent(key.split(".")[1]) ? [key.split(".")[0]] : [key];
|
|
1594
|
+
const isExtendKeyComponent = context && context.components[extendFromKey];
|
|
1595
|
+
if (element === isExtendKeyComponent)
|
|
1596
|
+
return element;
|
|
1597
|
+
else if (!hasComponentAttrs || childProps) {
|
|
1598
|
+
return {
|
|
1599
|
+
extend: extendFromKey,
|
|
1600
|
+
tag,
|
|
1601
|
+
props: { ...element }
|
|
1602
|
+
};
|
|
1603
|
+
} else if (!extend || extend === true) {
|
|
1604
|
+
return {
|
|
1605
|
+
...element,
|
|
1606
|
+
tag,
|
|
1607
|
+
extend: extendFromKey
|
|
1608
|
+
};
|
|
1609
|
+
} else if (extend) {
|
|
1610
|
+
return addAdditionalExtend(extendFromKey, element);
|
|
1611
|
+
} else if ((0, import__.isFunction)(element)) {
|
|
1612
|
+
return {
|
|
1613
|
+
extend: extendFromKey,
|
|
1614
|
+
tag,
|
|
1615
|
+
props: { ...(0, import__.exec)(element, parent) }
|
|
1616
|
+
};
|
|
1617
|
+
}
|
|
1618
|
+
};
|
|
1619
|
+
var applyKeyComponentAsExtend = (element, parent, key) => {
|
|
1620
|
+
return extendizeByKey(element, parent, key) || element;
|
|
1621
|
+
};
|
|
1622
|
+
var applyComponentFromContext = (element, parent, options) => {
|
|
1623
|
+
const { context } = element;
|
|
1624
|
+
if (!context || !context.components)
|
|
1625
|
+
return;
|
|
1626
|
+
const { components } = context;
|
|
1627
|
+
const { extend } = element;
|
|
1628
|
+
const execExtend = (0, import__.exec)(extend, element);
|
|
1629
|
+
if ((0, import__.isString)(execExtend)) {
|
|
1630
|
+
const componentExists = components[execExtend] || components["smbls." + execExtend];
|
|
1631
|
+
if (componentExists)
|
|
1632
|
+
element.extend = componentExists;
|
|
1633
|
+
else {
|
|
1634
|
+
if ((ENV === "test" || ENV === "development") && options.verbose) {
|
|
1635
|
+
console.warn(execExtend, "is not in library", components, element);
|
|
1636
|
+
console.warn("replacing with ", {});
|
|
1637
|
+
}
|
|
1638
|
+
element.extend = {};
|
|
1639
|
+
}
|
|
1640
|
+
}
|
|
1641
|
+
};
|
|
1642
|
+
var isVariant = (param) => {
|
|
1643
|
+
if (!(0, import__.isString)(param))
|
|
1644
|
+
return;
|
|
1645
|
+
const firstCharKey = param.slice(0, 1);
|
|
1646
|
+
return firstCharKey === ".";
|
|
1647
|
+
};
|
|
1648
|
+
var hasVariantProp = (element) => {
|
|
1649
|
+
const { props } = element;
|
|
1650
|
+
if ((0, import__.isObject)(props) && (0, import__.isString)(props.variant))
|
|
1651
|
+
return true;
|
|
1652
|
+
};
|
|
1653
|
+
var getChildrenComponentsByKey = (key, el) => {
|
|
1654
|
+
if (key === el.key || el.__ref.__componentKey === key) {
|
|
1655
|
+
return el;
|
|
1656
|
+
}
|
|
1657
|
+
if (el.extend) {
|
|
1658
|
+
const foundString = (0, import__.isString)(el.extend) && el.extend === key;
|
|
1659
|
+
const foundInArray = (0, import__.isArray)(el.extend) && el.extend.filter((v) => v === key).length;
|
|
1660
|
+
if (foundString || foundInArray)
|
|
1661
|
+
return el;
|
|
1662
|
+
}
|
|
1663
|
+
if (el.parent && el.parent.childExtend) {
|
|
1664
|
+
const foundString = (0, import__.isString)(el.parent.childExtend) && el.parent.childExtend === key;
|
|
1665
|
+
const foundInArray = (0, import__.isArray)(el.parent.childExtend) && el.parent.childExtend.filter((v) => v === key).length;
|
|
1666
|
+
if (foundString || foundInArray)
|
|
1667
|
+
return el;
|
|
1668
|
+
}
|
|
1669
|
+
};
|
|
1670
|
+
var getExtendsInElement = (obj) => {
|
|
1671
|
+
let result = [];
|
|
1672
|
+
function traverse(o) {
|
|
1673
|
+
for (const key in o) {
|
|
1674
|
+
if (Object.hasOwnProperty.call(o, key)) {
|
|
1675
|
+
if (checkIfKeyIsComponent(key)) {
|
|
1676
|
+
result.push(key);
|
|
1677
|
+
}
|
|
1678
|
+
if (key === "extend") {
|
|
1679
|
+
if (typeof o[key] === "string") {
|
|
1680
|
+
result.push(o[key]);
|
|
1681
|
+
} else if (Array.isArray(o[key])) {
|
|
1682
|
+
result = result.concat(o[key]);
|
|
1683
|
+
}
|
|
1684
|
+
}
|
|
1685
|
+
if (typeof o[key] === "object" && o[key] !== null) {
|
|
1686
|
+
traverse(o[key]);
|
|
1687
|
+
}
|
|
1688
|
+
}
|
|
1689
|
+
}
|
|
1690
|
+
}
|
|
1691
|
+
traverse(obj);
|
|
1692
|
+
return result;
|
|
1693
|
+
};
|
|
1694
|
+
}
|
|
1695
|
+
});
|
|
1496
1696
|
var require_cjs4 = __commonJS2({
|
|
1497
1697
|
"../../../domql/packages/utils/dist/cjs/index.js"(exports2, module22) {
|
|
1498
1698
|
"use strict";
|
|
@@ -1524,11 +1724,13 @@ var require_cjs = __commonJS({
|
|
|
1524
1724
|
__reExport(utils_exports, require_globals2(), module22.exports);
|
|
1525
1725
|
__reExport(utils_exports, require_cookie2(), module22.exports);
|
|
1526
1726
|
__reExport(utils_exports, require_tags2(), module22.exports);
|
|
1727
|
+
__reExport(utils_exports, require_component2(), module22.exports);
|
|
1527
1728
|
}
|
|
1528
1729
|
});
|
|
1529
1730
|
var src_exports = {};
|
|
1530
1731
|
__export2(src_exports, {
|
|
1531
1732
|
arrayzeValue: () => arrayzeValue,
|
|
1733
|
+
copyJavaScriptToClipboard: () => copyJavaScriptToClipboard,
|
|
1532
1734
|
copyStringToClipboard: () => copyStringToClipboard,
|
|
1533
1735
|
fibonacciNumberByIndex: () => fibonacciNumberByIndex,
|
|
1534
1736
|
findClosestNumber: () => findClosestNumber,
|
|
@@ -1538,7 +1740,9 @@ var require_cjs = __commonJS({
|
|
|
1538
1740
|
loadCssFile: () => loadCssFile,
|
|
1539
1741
|
loadJavascript: () => loadJavascript,
|
|
1540
1742
|
loadJavascriptFile: () => loadJavascriptFile,
|
|
1743
|
+
loadJavascriptFileEmbedSync: () => loadJavascriptFileEmbedSync,
|
|
1541
1744
|
loadJavascriptFileSync: () => loadJavascriptFileSync,
|
|
1745
|
+
registerFrameListener: () => registerFrameListener,
|
|
1542
1746
|
removeChars: () => removeChars,
|
|
1543
1747
|
toCamelCase: () => toCamelCase2,
|
|
1544
1748
|
toDashCase: () => toDashCase2,
|
|
@@ -1611,7 +1815,27 @@ var require_cjs = __commonJS({
|
|
|
1611
1815
|
}
|
|
1612
1816
|
});
|
|
1613
1817
|
};
|
|
1614
|
-
var loadJavascriptFileSync = (
|
|
1818
|
+
var loadJavascriptFileSync = (fileUrl, doc = document, type = "text/javascript") => {
|
|
1819
|
+
return new Promise((resolve, reject) => {
|
|
1820
|
+
const scriptEle = doc.createElement("script");
|
|
1821
|
+
scriptEle.type = type;
|
|
1822
|
+
scriptEle.src = fileUrl;
|
|
1823
|
+
const blocker = doc.createElement("div");
|
|
1824
|
+
blocker.style.cssText = "position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,0.8);z-index:9999;";
|
|
1825
|
+
doc.body.appendChild(blocker);
|
|
1826
|
+
scriptEle.onload = () => {
|
|
1827
|
+
console.log(`Successfully loaded: ${fileUrl}`);
|
|
1828
|
+
doc.body.removeChild(blocker);
|
|
1829
|
+
resolve();
|
|
1830
|
+
};
|
|
1831
|
+
scriptEle.onerror = () => {
|
|
1832
|
+
doc.body.removeChild(blocker);
|
|
1833
|
+
reject(new Error(`Failed to load: ${fileUrl}`));
|
|
1834
|
+
};
|
|
1835
|
+
doc.body.appendChild(scriptEle);
|
|
1836
|
+
});
|
|
1837
|
+
};
|
|
1838
|
+
var loadJavascriptFileEmbedSync = (FILE_URL, doc = document, fallback, type = "text/javascript") => {
|
|
1615
1839
|
const xhr = new window.XMLHttpRequest();
|
|
1616
1840
|
xhr.open("GET", FILE_URL, false);
|
|
1617
1841
|
xhr.send();
|
|
@@ -1656,15 +1880,29 @@ var require_cjs = __commonJS({
|
|
|
1656
1880
|
}
|
|
1657
1881
|
};
|
|
1658
1882
|
var isPhoto = (format) => ["jpeg", "gif", "jpg", "png", "tiff", "woff"].includes(format);
|
|
1659
|
-
var
|
|
1660
|
-
const
|
|
1661
|
-
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
|
|
1883
|
+
var registerFrameListener = (el) => {
|
|
1884
|
+
const { __ref: ref } = el;
|
|
1885
|
+
const { frameListeners } = ref.root.data;
|
|
1886
|
+
if (frameListeners && !frameListeners.has(el)) {
|
|
1887
|
+
frameListeners.add(el);
|
|
1888
|
+
}
|
|
1889
|
+
};
|
|
1890
|
+
var copyStringToClipboard = async (str) => {
|
|
1891
|
+
try {
|
|
1892
|
+
await navigator.clipboard.writeText(str);
|
|
1893
|
+
} catch (err) {
|
|
1894
|
+
console.warn("Failed to copy text: ", err);
|
|
1895
|
+
}
|
|
1896
|
+
};
|
|
1897
|
+
var copyJavaScriptToClipboard = async (jsCode) => {
|
|
1898
|
+
try {
|
|
1899
|
+
const blob = new Blob([jsCode], { type: "text/javascript" });
|
|
1900
|
+
const clipboardItem = new window.ClipboardItem({ "text/plain": blob });
|
|
1901
|
+
await navigator.clipboard.write([clipboardItem]);
|
|
1902
|
+
console.log("JavaScript code copied to clipboard as text/javascript");
|
|
1903
|
+
} catch (err) {
|
|
1904
|
+
console.error("Failed to copy JavaScript code: ", err);
|
|
1905
|
+
}
|
|
1668
1906
|
};
|
|
1669
1907
|
var removeChars = (str) => {
|
|
1670
1908
|
return str.replace(/[^a-zA-Z0-9_]/g, "");
|
|
@@ -1836,6 +2074,7 @@ var require_node = __commonJS({
|
|
|
1836
2074
|
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
|
|
1837
2075
|
var node_exports = {};
|
|
1838
2076
|
__export2(node_exports, {
|
|
2077
|
+
isDOMNode: () => isDOMNode,
|
|
1839
2078
|
isHtmlElement: () => isHtmlElement,
|
|
1840
2079
|
isNode: () => isNode
|
|
1841
2080
|
});
|
|
@@ -1847,6 +2086,9 @@ var require_node = __commonJS({
|
|
|
1847
2086
|
var isHtmlElement = (obj) => {
|
|
1848
2087
|
return (typeof HTMLElement === "object" ? obj instanceof import_globals2.window.HTMLElement : obj && typeof obj === "object" && obj !== null && obj.nodeType === 1 && typeof obj.nodeName === "string") || false;
|
|
1849
2088
|
};
|
|
2089
|
+
var isDOMNode = (obj) => {
|
|
2090
|
+
return typeof import_globals2.window !== "undefined" && (obj instanceof import_globals2.window.Node || obj instanceof import_globals2.window.Window || obj === import_globals2.window || obj === document);
|
|
2091
|
+
};
|
|
1850
2092
|
}
|
|
1851
2093
|
});
|
|
1852
2094
|
|
|
@@ -1966,7 +2208,6 @@ var require_array = __commonJS({
|
|
|
1966
2208
|
addItemAfterEveryElement: () => addItemAfterEveryElement,
|
|
1967
2209
|
arrayContainsOtherArray: () => arrayContainsOtherArray,
|
|
1968
2210
|
arraysEqual: () => arraysEqual,
|
|
1969
|
-
createNestedObject: () => createNestedObject,
|
|
1970
2211
|
cutArrayAfterValue: () => cutArrayAfterValue,
|
|
1971
2212
|
cutArrayBeforeValue: () => cutArrayBeforeValue,
|
|
1972
2213
|
getFrequencyInArray: () => getFrequencyInArray,
|
|
@@ -2033,22 +2274,6 @@ var require_array = __commonJS({
|
|
|
2033
2274
|
}
|
|
2034
2275
|
return arr;
|
|
2035
2276
|
};
|
|
2036
|
-
var createNestedObject = (arr, lastValue) => {
|
|
2037
|
-
const nestedObject = {};
|
|
2038
|
-
if (arr.length === 0) {
|
|
2039
|
-
return lastValue;
|
|
2040
|
-
}
|
|
2041
|
-
arr.reduce((obj, value, index) => {
|
|
2042
|
-
if (!obj[value]) {
|
|
2043
|
-
obj[value] = {};
|
|
2044
|
-
}
|
|
2045
|
-
if (index === arr.length - 1 && lastValue) {
|
|
2046
|
-
obj[value] = lastValue;
|
|
2047
|
-
}
|
|
2048
|
-
return obj[value];
|
|
2049
|
-
}, nestedObject);
|
|
2050
|
-
return nestedObject;
|
|
2051
|
-
};
|
|
2052
2277
|
var removeValueFromArray = (arr, value) => {
|
|
2053
2278
|
const index = arr.indexOf(value);
|
|
2054
2279
|
if (index > -1) {
|
|
@@ -2269,8 +2494,8 @@ var require_object = __commonJS({
|
|
|
2269
2494
|
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
|
|
2270
2495
|
var object_exports = {};
|
|
2271
2496
|
__export2(object_exports, {
|
|
2272
|
-
checkIfKeyIsComponent: () => checkIfKeyIsComponent,
|
|
2273
2497
|
clone: () => clone,
|
|
2498
|
+
createNestedObject: () => createNestedObject,
|
|
2274
2499
|
createObjectWithoutPrototype: () => createObjectWithoutPrototype,
|
|
2275
2500
|
deepClone: () => deepClone2,
|
|
2276
2501
|
deepCloneExclude: () => deepCloneExclude,
|
|
@@ -2281,13 +2506,12 @@ var require_object = __commonJS({
|
|
|
2281
2506
|
deepMerge: () => deepMerge2,
|
|
2282
2507
|
deepStringify: () => deepStringify,
|
|
2283
2508
|
detachFunctionsFromObject: () => detachFunctionsFromObject,
|
|
2509
|
+
detectInfiniteLoop: () => detectInfiniteLoop,
|
|
2284
2510
|
diff: () => diff,
|
|
2285
2511
|
diffArrays: () => diffArrays,
|
|
2286
2512
|
diffObjects: () => diffObjects,
|
|
2287
2513
|
exec: () => exec,
|
|
2288
2514
|
flattenRecursive: () => flattenRecursive,
|
|
2289
|
-
getChildrenComponentsByKey: () => getChildrenComponentsByKey,
|
|
2290
|
-
getExtendsInElement: () => getExtendsInElement,
|
|
2291
2515
|
hasOwnProperty: () => hasOwnProperty,
|
|
2292
2516
|
isEmpty: () => isEmpty,
|
|
2293
2517
|
isEmptyObject: () => isEmptyObject,
|
|
@@ -2302,6 +2526,7 @@ var require_object = __commonJS({
|
|
|
2302
2526
|
overwriteDeep: () => overwriteDeep,
|
|
2303
2527
|
overwriteShallow: () => overwriteShallow,
|
|
2304
2528
|
removeFromObject: () => removeFromObject,
|
|
2529
|
+
removeNestedKeyByPath: () => removeNestedKeyByPath,
|
|
2305
2530
|
stringToObject: () => stringToObject
|
|
2306
2531
|
});
|
|
2307
2532
|
module2.exports = __toCommonJS2(object_exports);
|
|
@@ -2309,6 +2534,8 @@ var require_object = __commonJS({
|
|
|
2309
2534
|
var import_types = require_types();
|
|
2310
2535
|
var import_array = require_array();
|
|
2311
2536
|
var import_string = require_string();
|
|
2537
|
+
var import_node = require_node();
|
|
2538
|
+
var ENV = "development";
|
|
2312
2539
|
var exec = (param, element, state, context) => {
|
|
2313
2540
|
if ((0, import_types.isFunction)(param)) {
|
|
2314
2541
|
return param(
|
|
@@ -2387,27 +2614,28 @@ var require_object = __commonJS({
|
|
|
2387
2614
|
var mergeArrayExclude = (arr, excl = []) => {
|
|
2388
2615
|
return arr.reduce((acc, curr) => deepMerge2(acc, deepCloneExclude(curr, excl)), {});
|
|
2389
2616
|
};
|
|
2390
|
-
var deepClone2 = (obj,
|
|
2391
|
-
|
|
2392
|
-
|
|
2393
|
-
|
|
2394
|
-
|
|
2395
|
-
|
|
2396
|
-
|
|
2397
|
-
|
|
2398
|
-
|
|
2399
|
-
|
|
2400
|
-
|
|
2401
|
-
|
|
2402
|
-
|
|
2403
|
-
|
|
2617
|
+
var deepClone2 = (obj, exclude = [], cleanUndefined = false, visited = /* @__PURE__ */ new WeakMap()) => {
|
|
2618
|
+
if (!(0, import_types.isObjectLike)(obj) || (0, import_node.isDOMNode)(obj))
|
|
2619
|
+
return obj;
|
|
2620
|
+
if (visited.has(obj))
|
|
2621
|
+
return visited.get(obj);
|
|
2622
|
+
const clone2 = (0, import_types.isArray)(obj) ? [] : {};
|
|
2623
|
+
visited.set(obj, clone2);
|
|
2624
|
+
for (const key in obj) {
|
|
2625
|
+
if (Object.prototype.hasOwnProperty.call(obj, key) && !exclude.includes(key)) {
|
|
2626
|
+
const value = obj[key];
|
|
2627
|
+
if ((0, import_node.isDOMNode)(value)) {
|
|
2628
|
+
clone2[key] = value;
|
|
2629
|
+
} else if (key === "extend" && (0, import_types.isArray)(value)) {
|
|
2630
|
+
clone2[key] = (0, import_array.mergeArray)(value, exclude);
|
|
2631
|
+
} else if ((0, import_types.isObjectLike)(value)) {
|
|
2632
|
+
clone2[key] = deepClone2(value, exclude, cleanUndefined, visited);
|
|
2633
|
+
} else {
|
|
2634
|
+
clone2[key] = value;
|
|
2635
|
+
}
|
|
2404
2636
|
}
|
|
2405
|
-
if ((0, import_types.isObjectLike)(objProp)) {
|
|
2406
|
-
o[prop] = deepClone2(objProp, excludeFrom, cleanUndefined);
|
|
2407
|
-
} else
|
|
2408
|
-
o[prop] = objProp;
|
|
2409
2637
|
}
|
|
2410
|
-
return
|
|
2638
|
+
return clone2;
|
|
2411
2639
|
};
|
|
2412
2640
|
var deepCloneWithExtend = (obj, excludeFrom = ["node"], options = {}) => {
|
|
2413
2641
|
const o = options.window ? (0, import_types.isArray)(obj) ? new options.window.Array([]) : new options.window.Object({}) : (0, import_types.isArray)(obj) ? [] : {};
|
|
@@ -2419,6 +2647,8 @@ var require_object = __commonJS({
|
|
|
2419
2647
|
continue;
|
|
2420
2648
|
if ((0, import_types.isObjectLike)(objProp)) {
|
|
2421
2649
|
o[prop] = deepCloneWithExtend(objProp, excludeFrom, options);
|
|
2650
|
+
} else if ((0, import_types.isFunction)(objProp) && options.window) {
|
|
2651
|
+
o[prop] = (options.window || import_globals2.window).eval("(" + objProp.toString() + ")");
|
|
2422
2652
|
} else
|
|
2423
2653
|
o[prop] = objProp;
|
|
2424
2654
|
}
|
|
@@ -2662,16 +2892,23 @@ var require_object = __commonJS({
|
|
|
2662
2892
|
}
|
|
2663
2893
|
return obj;
|
|
2664
2894
|
};
|
|
2665
|
-
var overwriteDeep = (obj, params, excludeFrom = []) => {
|
|
2895
|
+
var overwriteDeep = (obj, params, excludeFrom = [], visited = /* @__PURE__ */ new WeakMap()) => {
|
|
2896
|
+
if (!(0, import_types.isObjectLike)(obj) || !(0, import_types.isObjectLike)(params) || (0, import_node.isDOMNode)(obj) || (0, import_node.isDOMNode)(params)) {
|
|
2897
|
+
return params;
|
|
2898
|
+
}
|
|
2899
|
+
if (visited.has(obj)) {
|
|
2900
|
+
return visited.get(obj);
|
|
2901
|
+
}
|
|
2902
|
+
visited.set(obj, obj);
|
|
2666
2903
|
for (const e in params) {
|
|
2667
|
-
if (e === "__ref")
|
|
2668
|
-
continue;
|
|
2669
|
-
if (excludeFrom.includes(e) || e.startsWith("__"))
|
|
2904
|
+
if (e === "__ref" || excludeFrom.includes(e) || e.startsWith("__"))
|
|
2670
2905
|
continue;
|
|
2671
2906
|
const objProp = obj[e];
|
|
2672
2907
|
const paramsProp = params[e];
|
|
2673
|
-
if ((0,
|
|
2674
|
-
|
|
2908
|
+
if ((0, import_node.isDOMNode)(paramsProp)) {
|
|
2909
|
+
obj[e] = paramsProp;
|
|
2910
|
+
} else if ((0, import_types.isObjectLike)(objProp) && (0, import_types.isObjectLike)(paramsProp)) {
|
|
2911
|
+
obj[e] = overwriteDeep(objProp, paramsProp, excludeFrom, visited);
|
|
2675
2912
|
} else if (paramsProp !== void 0) {
|
|
2676
2913
|
obj[e] = paramsProp;
|
|
2677
2914
|
}
|
|
@@ -2718,30 +2955,40 @@ var require_object = __commonJS({
|
|
|
2718
2955
|
}
|
|
2719
2956
|
return true;
|
|
2720
2957
|
};
|
|
2721
|
-
var deepContains = (obj1, obj2) => {
|
|
2722
|
-
if (
|
|
2958
|
+
var deepContains = (obj1, obj2, ignoredKeys = ["node", "__ref"]) => {
|
|
2959
|
+
if (obj1 === obj2)
|
|
2960
|
+
return true;
|
|
2961
|
+
if (!(0, import_types.isObjectLike)(obj1) || !(0, import_types.isObjectLike)(obj2))
|
|
2723
2962
|
return false;
|
|
2724
|
-
|
|
2725
|
-
|
|
2726
|
-
|
|
2727
|
-
|
|
2963
|
+
if ((0, import_node.isDOMNode)(obj1) || (0, import_node.isDOMNode)(obj2))
|
|
2964
|
+
return obj1 === obj2;
|
|
2965
|
+
const stack = [[obj1, obj2]];
|
|
2966
|
+
const visited = /* @__PURE__ */ new WeakSet();
|
|
2967
|
+
while (stack.length > 0) {
|
|
2968
|
+
const [current1, current2] = stack.pop();
|
|
2969
|
+
if (visited.has(current1))
|
|
2970
|
+
continue;
|
|
2971
|
+
visited.add(current1);
|
|
2972
|
+
const keys1 = Object.keys(current1).filter((key) => !ignoredKeys.includes(key));
|
|
2973
|
+
const keys2 = Object.keys(current2).filter((key) => !ignoredKeys.includes(key));
|
|
2974
|
+
if (keys1.length !== keys2.length)
|
|
2975
|
+
return false;
|
|
2976
|
+
for (const key of keys1) {
|
|
2977
|
+
if (!Object.prototype.hasOwnProperty.call(current2, key))
|
|
2728
2978
|
return false;
|
|
2729
|
-
|
|
2730
|
-
|
|
2731
|
-
|
|
2732
|
-
|
|
2733
|
-
}
|
|
2734
|
-
}
|
|
2735
|
-
} else if ((0, import_types.isObjectLike)(obj1) && obj2 !== null) {
|
|
2736
|
-
for (const key in obj1) {
|
|
2737
|
-
const hasOwnProperty2 = Object.prototype.hasOwnProperty.call(obj2, key);
|
|
2738
|
-
if (!hasOwnProperty2 || !deepContains(obj1[key], obj2[key])) {
|
|
2979
|
+
const value1 = current1[key];
|
|
2980
|
+
const value2 = current2[key];
|
|
2981
|
+
if ((0, import_node.isDOMNode)(value1) || (0, import_node.isDOMNode)(value2)) {
|
|
2982
|
+
if (value1 !== value2)
|
|
2739
2983
|
return false;
|
|
2984
|
+
} else if ((0, import_types.isObjectLike)(value1) && (0, import_types.isObjectLike)(value2)) {
|
|
2985
|
+
if (value1 !== value2) {
|
|
2986
|
+
stack.push([value1, value2]);
|
|
2740
2987
|
}
|
|
2988
|
+
} else if (value1 !== value2) {
|
|
2989
|
+
return false;
|
|
2741
2990
|
}
|
|
2742
2991
|
}
|
|
2743
|
-
} else {
|
|
2744
|
-
return obj2 === obj1;
|
|
2745
2992
|
}
|
|
2746
2993
|
return true;
|
|
2747
2994
|
};
|
|
@@ -2769,53 +3016,60 @@ var require_object = __commonJS({
|
|
|
2769
3016
|
}
|
|
2770
3017
|
return newObj;
|
|
2771
3018
|
};
|
|
2772
|
-
var
|
|
2773
|
-
const
|
|
2774
|
-
if (
|
|
2775
|
-
return;
|
|
2776
|
-
|
|
2777
|
-
|
|
3019
|
+
var createNestedObject = (arr, lastValue) => {
|
|
3020
|
+
const nestedObject = {};
|
|
3021
|
+
if (arr.length === 0) {
|
|
3022
|
+
return lastValue;
|
|
3023
|
+
}
|
|
3024
|
+
arr.reduce((obj, value, index) => {
|
|
3025
|
+
if (!obj[value]) {
|
|
3026
|
+
obj[value] = {};
|
|
3027
|
+
}
|
|
3028
|
+
if (index === arr.length - 1 && lastValue) {
|
|
3029
|
+
obj[value] = lastValue;
|
|
3030
|
+
}
|
|
3031
|
+
return obj[value];
|
|
3032
|
+
}, nestedObject);
|
|
3033
|
+
return nestedObject;
|
|
2778
3034
|
};
|
|
2779
|
-
var
|
|
2780
|
-
if (
|
|
2781
|
-
|
|
3035
|
+
var removeNestedKeyByPath = (obj, path) => {
|
|
3036
|
+
if (!Array.isArray(path)) {
|
|
3037
|
+
throw new Error("Path must be an array.");
|
|
2782
3038
|
}
|
|
2783
|
-
|
|
2784
|
-
|
|
2785
|
-
|
|
2786
|
-
|
|
2787
|
-
|
|
3039
|
+
let current = obj;
|
|
3040
|
+
for (let i = 0; i < path.length - 1; i++) {
|
|
3041
|
+
if (current[path[i]] === void 0) {
|
|
3042
|
+
return;
|
|
3043
|
+
}
|
|
3044
|
+
current = current[path[i]];
|
|
2788
3045
|
}
|
|
2789
|
-
|
|
2790
|
-
|
|
2791
|
-
|
|
2792
|
-
if (foundString || foundInArray)
|
|
2793
|
-
return el;
|
|
3046
|
+
const lastKey = path[path.length - 1];
|
|
3047
|
+
if (current && Object.hasOwnProperty.call(current, lastKey)) {
|
|
3048
|
+
delete current[lastKey];
|
|
2794
3049
|
}
|
|
2795
3050
|
};
|
|
2796
|
-
var
|
|
2797
|
-
|
|
2798
|
-
|
|
2799
|
-
|
|
2800
|
-
|
|
2801
|
-
|
|
2802
|
-
|
|
2803
|
-
|
|
2804
|
-
|
|
2805
|
-
|
|
2806
|
-
|
|
2807
|
-
|
|
2808
|
-
|
|
2809
|
-
|
|
2810
|
-
|
|
2811
|
-
if (
|
|
2812
|
-
|
|
3051
|
+
var detectInfiniteLoop = (arr) => {
|
|
3052
|
+
const maxRepeats = 10;
|
|
3053
|
+
let pattern = [];
|
|
3054
|
+
let repeatCount = 0;
|
|
3055
|
+
for (let i = 0; i < arr.length; i++) {
|
|
3056
|
+
if (pattern.length < 2) {
|
|
3057
|
+
pattern.push(arr[i]);
|
|
3058
|
+
} else {
|
|
3059
|
+
if (arr[i] === pattern[i % 2]) {
|
|
3060
|
+
repeatCount++;
|
|
3061
|
+
} else {
|
|
3062
|
+
pattern = [arr[i - 1], arr[i]];
|
|
3063
|
+
repeatCount = 1;
|
|
3064
|
+
}
|
|
3065
|
+
if (repeatCount >= maxRepeats * 2) {
|
|
3066
|
+
if (ENV === "test" || ENV === "development") {
|
|
3067
|
+
console.warn("Warning: Potential infinite loop detected due to repeated sequence:", pattern);
|
|
2813
3068
|
}
|
|
3069
|
+
return true;
|
|
2814
3070
|
}
|
|
2815
3071
|
}
|
|
2816
3072
|
}
|
|
2817
|
-
traverse(obj);
|
|
2818
|
-
return result;
|
|
2819
3073
|
};
|
|
2820
3074
|
}
|
|
2821
3075
|
});
|
|
@@ -2843,6 +3097,7 @@ var require_function = __commonJS({
|
|
|
2843
3097
|
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
|
|
2844
3098
|
var function_exports = {};
|
|
2845
3099
|
__export2(function_exports, {
|
|
3100
|
+
cloneFunction: () => cloneFunction,
|
|
2846
3101
|
debounce: () => debounce,
|
|
2847
3102
|
debounceOnContext: () => debounceOnContext,
|
|
2848
3103
|
isStringFunction: () => isStringFunction,
|
|
@@ -2892,6 +3147,17 @@ var require_function = __commonJS({
|
|
|
2892
3147
|
const functionRegex = /^((function\s*\([^)]*\)\s*\{[^}]*\})|(\([^)]*\)\s*=>))/;
|
|
2893
3148
|
return functionRegex.test(inputString);
|
|
2894
3149
|
};
|
|
3150
|
+
function cloneFunction(fn, win = window) {
|
|
3151
|
+
const temp = function() {
|
|
3152
|
+
return fn.apply(win, arguments);
|
|
3153
|
+
};
|
|
3154
|
+
for (const key in fn) {
|
|
3155
|
+
if (Object.hasOwnProperty.call(fn, key)) {
|
|
3156
|
+
temp[key] = fn[key];
|
|
3157
|
+
}
|
|
3158
|
+
}
|
|
3159
|
+
return temp;
|
|
3160
|
+
}
|
|
2895
3161
|
}
|
|
2896
3162
|
});
|
|
2897
3163
|
|
|
@@ -3161,6 +3427,172 @@ var require_tags = __commonJS({
|
|
|
3161
3427
|
}
|
|
3162
3428
|
});
|
|
3163
3429
|
|
|
3430
|
+
// ../../../domql/packages/utils/dist/cjs/component.js
|
|
3431
|
+
var require_component = __commonJS({
|
|
3432
|
+
"../../../domql/packages/utils/dist/cjs/component.js"(exports, module2) {
|
|
3433
|
+
"use strict";
|
|
3434
|
+
var __defProp2 = Object.defineProperty;
|
|
3435
|
+
var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
|
|
3436
|
+
var __getOwnPropNames2 = Object.getOwnPropertyNames;
|
|
3437
|
+
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
|
|
3438
|
+
var __export2 = (target, all) => {
|
|
3439
|
+
for (var name in all)
|
|
3440
|
+
__defProp2(target, name, { get: all[name], enumerable: true });
|
|
3441
|
+
};
|
|
3442
|
+
var __copyProps2 = (to, from, except, desc) => {
|
|
3443
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
3444
|
+
for (let key of __getOwnPropNames2(from))
|
|
3445
|
+
if (!__hasOwnProp2.call(to, key) && key !== except)
|
|
3446
|
+
__defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
|
|
3447
|
+
}
|
|
3448
|
+
return to;
|
|
3449
|
+
};
|
|
3450
|
+
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
|
|
3451
|
+
var component_exports = {};
|
|
3452
|
+
__export2(component_exports, {
|
|
3453
|
+
addAdditionalExtend: () => addAdditionalExtend,
|
|
3454
|
+
applyComponentFromContext: () => applyComponentFromContext,
|
|
3455
|
+
applyKeyComponentAsExtend: () => applyKeyComponentAsExtend,
|
|
3456
|
+
checkIfKeyIsComponent: () => checkIfKeyIsComponent,
|
|
3457
|
+
checkIfKeyIsProperty: () => checkIfKeyIsProperty,
|
|
3458
|
+
extendizeByKey: () => extendizeByKey,
|
|
3459
|
+
getChildrenComponentsByKey: () => getChildrenComponentsByKey,
|
|
3460
|
+
getExtendsInElement: () => getExtendsInElement,
|
|
3461
|
+
hasVariantProp: () => hasVariantProp,
|
|
3462
|
+
isVariant: () => isVariant
|
|
3463
|
+
});
|
|
3464
|
+
module2.exports = __toCommonJS2(component_exports);
|
|
3465
|
+
var import__ = require_cjs2();
|
|
3466
|
+
var ENV = "development";
|
|
3467
|
+
var checkIfKeyIsComponent = (key) => {
|
|
3468
|
+
const isFirstKeyString = (0, import__.isString)(key);
|
|
3469
|
+
if (!isFirstKeyString)
|
|
3470
|
+
return;
|
|
3471
|
+
const firstCharKey = key.slice(0, 1);
|
|
3472
|
+
return /^[A-Z]*$/.test(firstCharKey);
|
|
3473
|
+
};
|
|
3474
|
+
var checkIfKeyIsProperty = (key) => {
|
|
3475
|
+
const isFirstKeyString = (0, import__.isString)(key);
|
|
3476
|
+
if (!isFirstKeyString)
|
|
3477
|
+
return;
|
|
3478
|
+
const firstCharKey = key.slice(0, 1);
|
|
3479
|
+
return /^[a-z]*$/.test(firstCharKey);
|
|
3480
|
+
};
|
|
3481
|
+
var addAdditionalExtend = (newExtend, element) => {
|
|
3482
|
+
const { extend: elementExtend } = element;
|
|
3483
|
+
const originalArray = (0, import__.isArray)(elementExtend) ? elementExtend : [elementExtend];
|
|
3484
|
+
const receivedArray = (0, import__.isArray)(newExtend) ? newExtend : [newExtend];
|
|
3485
|
+
const extend = (0, import__.joinArrays)(receivedArray, originalArray);
|
|
3486
|
+
return { ...element, extend };
|
|
3487
|
+
};
|
|
3488
|
+
var extendizeByKey = (element, parent, key) => {
|
|
3489
|
+
const { context } = parent;
|
|
3490
|
+
const { tag, extend, props, attr, state, childExtend, childProps, on, if: condition, data } = element;
|
|
3491
|
+
const hasComponentAttrs = extend || childExtend || props || state || on || condition || attr || data;
|
|
3492
|
+
const extendFromKey = key.includes("+") ? key.split("+") : key.includes("_") ? [key.split("_")[0]] : key.includes(".") && !checkIfKeyIsComponent(key.split(".")[1]) ? [key.split(".")[0]] : [key];
|
|
3493
|
+
const isExtendKeyComponent = context && context.components[extendFromKey];
|
|
3494
|
+
if (element === isExtendKeyComponent)
|
|
3495
|
+
return element;
|
|
3496
|
+
else if (!hasComponentAttrs || childProps) {
|
|
3497
|
+
return {
|
|
3498
|
+
extend: extendFromKey,
|
|
3499
|
+
tag,
|
|
3500
|
+
props: { ...element }
|
|
3501
|
+
};
|
|
3502
|
+
} else if (!extend || extend === true) {
|
|
3503
|
+
return {
|
|
3504
|
+
...element,
|
|
3505
|
+
tag,
|
|
3506
|
+
extend: extendFromKey
|
|
3507
|
+
};
|
|
3508
|
+
} else if (extend) {
|
|
3509
|
+
return addAdditionalExtend(extendFromKey, element);
|
|
3510
|
+
} else if ((0, import__.isFunction)(element)) {
|
|
3511
|
+
return {
|
|
3512
|
+
extend: extendFromKey,
|
|
3513
|
+
tag,
|
|
3514
|
+
props: { ...(0, import__.exec)(element, parent) }
|
|
3515
|
+
};
|
|
3516
|
+
}
|
|
3517
|
+
};
|
|
3518
|
+
var applyKeyComponentAsExtend = (element, parent, key) => {
|
|
3519
|
+
return extendizeByKey(element, parent, key) || element;
|
|
3520
|
+
};
|
|
3521
|
+
var applyComponentFromContext = (element, parent, options) => {
|
|
3522
|
+
const { context } = element;
|
|
3523
|
+
if (!context || !context.components)
|
|
3524
|
+
return;
|
|
3525
|
+
const { components } = context;
|
|
3526
|
+
const { extend } = element;
|
|
3527
|
+
const execExtend = (0, import__.exec)(extend, element);
|
|
3528
|
+
if ((0, import__.isString)(execExtend)) {
|
|
3529
|
+
const componentExists = components[execExtend] || components["smbls." + execExtend];
|
|
3530
|
+
if (componentExists)
|
|
3531
|
+
element.extend = componentExists;
|
|
3532
|
+
else {
|
|
3533
|
+
if ((ENV === "test" || ENV === "development") && options.verbose) {
|
|
3534
|
+
console.warn(execExtend, "is not in library", components, element);
|
|
3535
|
+
console.warn("replacing with ", {});
|
|
3536
|
+
}
|
|
3537
|
+
element.extend = {};
|
|
3538
|
+
}
|
|
3539
|
+
}
|
|
3540
|
+
};
|
|
3541
|
+
var isVariant = (param) => {
|
|
3542
|
+
if (!(0, import__.isString)(param))
|
|
3543
|
+
return;
|
|
3544
|
+
const firstCharKey = param.slice(0, 1);
|
|
3545
|
+
return firstCharKey === ".";
|
|
3546
|
+
};
|
|
3547
|
+
var hasVariantProp = (element) => {
|
|
3548
|
+
const { props } = element;
|
|
3549
|
+
if ((0, import__.isObject)(props) && (0, import__.isString)(props.variant))
|
|
3550
|
+
return true;
|
|
3551
|
+
};
|
|
3552
|
+
var getChildrenComponentsByKey = (key, el) => {
|
|
3553
|
+
if (key === el.key || el.__ref.__componentKey === key) {
|
|
3554
|
+
return el;
|
|
3555
|
+
}
|
|
3556
|
+
if (el.extend) {
|
|
3557
|
+
const foundString = (0, import__.isString)(el.extend) && el.extend === key;
|
|
3558
|
+
const foundInArray = (0, import__.isArray)(el.extend) && el.extend.filter((v) => v === key).length;
|
|
3559
|
+
if (foundString || foundInArray)
|
|
3560
|
+
return el;
|
|
3561
|
+
}
|
|
3562
|
+
if (el.parent && el.parent.childExtend) {
|
|
3563
|
+
const foundString = (0, import__.isString)(el.parent.childExtend) && el.parent.childExtend === key;
|
|
3564
|
+
const foundInArray = (0, import__.isArray)(el.parent.childExtend) && el.parent.childExtend.filter((v) => v === key).length;
|
|
3565
|
+
if (foundString || foundInArray)
|
|
3566
|
+
return el;
|
|
3567
|
+
}
|
|
3568
|
+
};
|
|
3569
|
+
var getExtendsInElement = (obj) => {
|
|
3570
|
+
let result = [];
|
|
3571
|
+
function traverse(o) {
|
|
3572
|
+
for (const key in o) {
|
|
3573
|
+
if (Object.hasOwnProperty.call(o, key)) {
|
|
3574
|
+
if (checkIfKeyIsComponent(key)) {
|
|
3575
|
+
result.push(key);
|
|
3576
|
+
}
|
|
3577
|
+
if (key === "extend") {
|
|
3578
|
+
if (typeof o[key] === "string") {
|
|
3579
|
+
result.push(o[key]);
|
|
3580
|
+
} else if (Array.isArray(o[key])) {
|
|
3581
|
+
result = result.concat(o[key]);
|
|
3582
|
+
}
|
|
3583
|
+
}
|
|
3584
|
+
if (typeof o[key] === "object" && o[key] !== null) {
|
|
3585
|
+
traverse(o[key]);
|
|
3586
|
+
}
|
|
3587
|
+
}
|
|
3588
|
+
}
|
|
3589
|
+
}
|
|
3590
|
+
traverse(obj);
|
|
3591
|
+
return result;
|
|
3592
|
+
};
|
|
3593
|
+
}
|
|
3594
|
+
});
|
|
3595
|
+
|
|
3164
3596
|
// ../../../domql/packages/utils/dist/cjs/index.js
|
|
3165
3597
|
var require_cjs2 = __commonJS({
|
|
3166
3598
|
"../../../domql/packages/utils/dist/cjs/index.js"(exports, module2) {
|
|
@@ -3193,6 +3625,7 @@ var require_cjs2 = __commonJS({
|
|
|
3193
3625
|
__reExport(utils_exports, require_globals(), module2.exports);
|
|
3194
3626
|
__reExport(utils_exports, require_cookie(), module2.exports);
|
|
3195
3627
|
__reExport(utils_exports, require_tags(), module2.exports);
|
|
3628
|
+
__reExport(utils_exports, require_component(), module2.exports);
|
|
3196
3629
|
}
|
|
3197
3630
|
});
|
|
3198
3631
|
|
|
@@ -3409,9 +3842,11 @@ var BREAKPOINTS = {
|
|
|
3409
3842
|
mobileXS: 375
|
|
3410
3843
|
};
|
|
3411
3844
|
var DEVICES = {
|
|
3845
|
+
screenXXL: [2560, 1440],
|
|
3846
|
+
screenXL: [2240, 1260],
|
|
3412
3847
|
screenL: [1920, 1024],
|
|
3413
3848
|
screenM: [1680, 1024],
|
|
3414
|
-
screenS: [1440,
|
|
3849
|
+
screenS: [1440, 720],
|
|
3415
3850
|
tabletL: [1366, 926],
|
|
3416
3851
|
tabletM: [1280, 768],
|
|
3417
3852
|
tabletS: [1024, 768],
|