@symbo.ls/utils 3.14.1 → 3.14.3
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/CHANGELOG.md +7 -0
- package/dist/cjs/array.cjs +1 -0
- package/dist/cjs/assets.cjs +1 -0
- package/dist/cjs/browser.cjs +1 -0
- package/dist/cjs/cache.cjs +1 -0
- package/dist/cjs/cdn.cjs +3 -0
- package/dist/cjs/component.cjs +1 -0
- package/dist/cjs/cookie.cjs +1 -0
- package/dist/cjs/date.cjs +1 -0
- package/dist/cjs/detectHeight.cjs +1 -0
- package/dist/cjs/element.cjs +1 -0
- package/dist/cjs/env.cjs +2 -0
- package/dist/cjs/events.cjs +1 -0
- package/dist/cjs/extends.cjs +1 -0
- package/dist/cjs/fibonacci.cjs +1 -0
- package/dist/cjs/files.cjs +1 -0
- package/dist/cjs/function.cjs +1 -0
- package/dist/cjs/globals.cjs +1 -0
- package/dist/cjs/if.cjs +1 -0
- package/dist/cjs/index.cjs +1 -0
- package/dist/cjs/key.cjs +1 -0
- package/dist/cjs/keys.cjs +1 -0
- package/dist/cjs/load.cjs +1 -0
- package/dist/cjs/log.cjs +1 -0
- package/dist/cjs/metadata.cjs +2 -0
- package/dist/cjs/methods.cjs +10 -0
- package/dist/cjs/node.cjs +1 -0
- package/dist/cjs/object.cjs +12 -0
- package/dist/cjs/projectKeys.cjs +1 -0
- package/dist/cjs/props.cjs +1 -0
- package/dist/cjs/scaling.cjs +1 -0
- package/dist/cjs/scope.cjs +1 -0
- package/dist/cjs/sharedLibraries.cjs +1 -0
- package/dist/cjs/state.cjs +1 -0
- package/dist/cjs/string-extra.cjs +1 -0
- package/dist/cjs/string.cjs +3 -0
- package/dist/cjs/style.cjs +1 -0
- package/dist/cjs/tags.cjs +1 -0
- package/dist/cjs/triggerEvent.cjs +1 -0
- package/dist/cjs/types.cjs +1 -0
- package/dist/cjs/update.cjs +1 -0
- package/dist/esm/array.js +1 -0
- package/dist/esm/assets.js +1 -0
- package/dist/esm/browser.js +1 -0
- package/dist/esm/cache.js +1 -0
- package/dist/esm/cdn.js +3 -0
- package/dist/esm/component.js +1 -0
- package/dist/esm/cookie.js +1 -0
- package/dist/esm/date.js +1 -0
- package/dist/esm/detectHeight.js +1 -0
- package/dist/esm/element.js +1 -0
- package/dist/esm/env.js +2 -0
- package/dist/esm/events.js +1 -0
- package/dist/esm/extends.js +1 -0
- package/dist/esm/fibonacci.js +1 -0
- package/dist/esm/files.js +1 -0
- package/dist/esm/function.js +1 -0
- package/dist/esm/globals.js +1 -0
- package/dist/esm/if.js +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/key.js +1 -0
- package/dist/esm/keys.js +1 -0
- package/dist/esm/load.js +1 -0
- package/dist/esm/log.js +1 -0
- package/dist/esm/metadata.js +2 -0
- package/dist/esm/methods.js +10 -0
- package/dist/esm/node.js +1 -0
- package/dist/esm/object.js +12 -0
- package/dist/esm/projectKeys.js +1 -0
- package/dist/esm/props.js +1 -0
- package/dist/esm/scaling.js +1 -0
- package/dist/esm/scope.js +1 -0
- package/dist/esm/sharedLibraries.js +1 -0
- package/dist/esm/state.js +1 -0
- package/dist/esm/string-extra.js +1 -0
- package/dist/esm/string.js +3 -0
- package/dist/esm/style.js +1 -0
- package/dist/esm/tags.js +1 -0
- package/dist/esm/triggerEvent.js +1 -0
- package/dist/esm/types.js +1 -0
- package/dist/esm/update.js +1 -0
- package/package.json +35 -18
- package/array.js +0 -162
- package/assets.js +0 -117
- package/browser.js +0 -13
- package/cache.js +0 -7
- package/cdn.js +0 -83
- package/component.js +0 -25
- package/cookie.js +0 -78
- package/date.js +0 -10
- package/detectHeight.js +0 -42
- package/dist/cjs/browser.js +0 -36
- package/dist/cjs/date.js +0 -33
- package/dist/cjs/detectHeight.js +0 -53
- package/dist/cjs/domqlv3hacks.js +0 -3845
- package/dist/cjs/fibonacci.js +0 -32
- package/dist/cjs/files.js +0 -26
- package/dist/cjs/index.js +0 -4100
- package/dist/cjs/load.js +0 -173
- package/dist/cjs/package.json +0 -4
- package/dist/cjs/scaling.js +0 -53
- package/dist/cjs/style.js +0 -42
- package/element.js +0 -148
- package/env.js +0 -15
- package/events.js +0 -19
- package/extends.js +0 -519
- package/fibonacci.js +0 -9
- package/files.js +0 -3
- package/function.js +0 -145
- package/globals.js +0 -8
- package/if.js +0 -30
- package/index.js +0 -42
- package/key.js +0 -20
- package/keys.js +0 -176
- package/load.js +0 -236
- package/log.js +0 -12
- package/metadata.js +0 -392
- package/methods.js +0 -684
- package/node.js +0 -37
- package/object.js +0 -837
- package/projectKeys.js +0 -30
- package/props.js +0 -327
- package/scaling.js +0 -15
- package/scope.js +0 -32
- package/sharedLibraries.js +0 -184
- package/state.js +0 -203
- package/string-extra.js +0 -69
- package/string.js +0 -206
- package/style.js +0 -23
- package/tags.js +0 -176
- package/triggerEvent.js +0 -102
- package/types.js +0 -55
- package/update.js +0 -27
package/dist/cjs/load.js
DELETED
|
@@ -1,173 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
|
|
20
|
-
// src/load.js
|
|
21
|
-
var load_exports = {};
|
|
22
|
-
__export(load_exports, {
|
|
23
|
-
loadCssFile: () => loadCssFile,
|
|
24
|
-
loadJavascript: () => loadJavascript,
|
|
25
|
-
loadJavascriptFile: () => loadJavascriptFile,
|
|
26
|
-
loadJavascriptFileEmbedSync: () => loadJavascriptFileEmbedSync,
|
|
27
|
-
loadJavascriptFileSync: () => loadJavascriptFileSync,
|
|
28
|
-
loadRemoteCSS: () => loadRemoteCSS,
|
|
29
|
-
loadRemoteScript: () => loadRemoteScript
|
|
30
|
-
});
|
|
31
|
-
module.exports = __toCommonJS(load_exports);
|
|
32
|
-
var loadJavascriptFile = (FILE_URL, async = false, doc = document, type = "text/javascript") => {
|
|
33
|
-
return new Promise((resolve, reject) => {
|
|
34
|
-
try {
|
|
35
|
-
const scriptEle = doc.createElement("script");
|
|
36
|
-
scriptEle.type = type;
|
|
37
|
-
scriptEle.async = async;
|
|
38
|
-
scriptEle.src = FILE_URL;
|
|
39
|
-
scriptEle.addEventListener("load", (ev) => {
|
|
40
|
-
resolve({
|
|
41
|
-
status: true
|
|
42
|
-
});
|
|
43
|
-
});
|
|
44
|
-
scriptEle.addEventListener("error", (ev) => {
|
|
45
|
-
reject(
|
|
46
|
-
new Error({
|
|
47
|
-
status: false,
|
|
48
|
-
message: `Failed to load the script ${FILE_URL}`
|
|
49
|
-
})
|
|
50
|
-
);
|
|
51
|
-
});
|
|
52
|
-
doc.body.appendChild(scriptEle);
|
|
53
|
-
} catch (error) {
|
|
54
|
-
reject(error);
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
};
|
|
58
|
-
var loadJavascriptFileSync = (fileUrl, doc = document, type = "text/javascript") => {
|
|
59
|
-
return new Promise((resolve, reject) => {
|
|
60
|
-
const scriptEle = doc.createElement("script");
|
|
61
|
-
scriptEle.type = type;
|
|
62
|
-
scriptEle.src = fileUrl;
|
|
63
|
-
const blocker = doc.createElement("div");
|
|
64
|
-
blocker.style.cssText = "position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,0.8);z-index:9999;";
|
|
65
|
-
doc.body.appendChild(blocker);
|
|
66
|
-
scriptEle.onload = () => {
|
|
67
|
-
console.log(`Successfully loaded: ${fileUrl}`);
|
|
68
|
-
doc.body.removeChild(blocker);
|
|
69
|
-
resolve();
|
|
70
|
-
};
|
|
71
|
-
scriptEle.onerror = () => {
|
|
72
|
-
doc.body.removeChild(blocker);
|
|
73
|
-
reject(new Error(`Failed to load: ${fileUrl}`));
|
|
74
|
-
};
|
|
75
|
-
doc.body.appendChild(scriptEle);
|
|
76
|
-
});
|
|
77
|
-
};
|
|
78
|
-
var loadJavascriptFileEmbedSync = (FILE_URL, doc = document, fallback, type = "text/javascript") => {
|
|
79
|
-
const xhr = new window.XMLHttpRequest();
|
|
80
|
-
xhr.open("GET", FILE_URL, false);
|
|
81
|
-
xhr.send();
|
|
82
|
-
if (xhr.status === 200) {
|
|
83
|
-
const scriptEle = doc.createElement("script");
|
|
84
|
-
scriptEle.type = type;
|
|
85
|
-
scriptEle.text = xhr.responseText;
|
|
86
|
-
doc.body.appendChild(scriptEle);
|
|
87
|
-
if (typeof fallback === "function") fallback();
|
|
88
|
-
} else {
|
|
89
|
-
throw new Error(`Failed to load the script ${FILE_URL}`);
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
var loadCssFile = (FILE_URL, async = false, doc = document, type = "text/javascript") => {
|
|
93
|
-
return new Promise((resolve, reject) => {
|
|
94
|
-
try {
|
|
95
|
-
const linkElem = doc.createElement("link");
|
|
96
|
-
linkElem.rel = "stylesheet";
|
|
97
|
-
linkElem.href = FILE_URL;
|
|
98
|
-
linkElem.addEventListener("load", (ev) => {
|
|
99
|
-
resolve({
|
|
100
|
-
status: true
|
|
101
|
-
});
|
|
102
|
-
});
|
|
103
|
-
doc.head.appendChild(linkElem);
|
|
104
|
-
} catch (error) {
|
|
105
|
-
reject(error);
|
|
106
|
-
}
|
|
107
|
-
});
|
|
108
|
-
};
|
|
109
|
-
var loadJavascript = (body, async = false, doc = document, type = "text/javascript", id = "smbls-script") => {
|
|
110
|
-
try {
|
|
111
|
-
const scriptEle = doc.createElement("script");
|
|
112
|
-
scriptEle.type = type;
|
|
113
|
-
scriptEle.async = async;
|
|
114
|
-
scriptEle.id = id;
|
|
115
|
-
scriptEle.innerHTML = body;
|
|
116
|
-
doc.body.appendChild(scriptEle);
|
|
117
|
-
} catch (error) {
|
|
118
|
-
console.warn(error);
|
|
119
|
-
}
|
|
120
|
-
};
|
|
121
|
-
function loadRemoteScript(url, options = {}) {
|
|
122
|
-
const { window: window2 = globalThis } = options;
|
|
123
|
-
const { document: document2 = window2.document } = options;
|
|
124
|
-
return new Promise((resolve, reject) => {
|
|
125
|
-
const existingScript = document2.querySelector(`script[src="${url}"]`);
|
|
126
|
-
if (existingScript) {
|
|
127
|
-
return resolve(existingScript);
|
|
128
|
-
}
|
|
129
|
-
const script = document2.createElement("script");
|
|
130
|
-
script.src = url;
|
|
131
|
-
script.async = options.async === true;
|
|
132
|
-
script.type = options.type || "text/javascript";
|
|
133
|
-
if (options.id) script.id = options.id;
|
|
134
|
-
if (options.integrity) script.integrity = options.integrity;
|
|
135
|
-
if (options.crossOrigin) script.crossOrigin = options.crossOrigin;
|
|
136
|
-
script.onload = () => {
|
|
137
|
-
script.onerror = script.onload = null;
|
|
138
|
-
resolve(script);
|
|
139
|
-
};
|
|
140
|
-
script.onerror = () => {
|
|
141
|
-
script.onerror = script.onload = null;
|
|
142
|
-
reject(new Error(`Failed to load script: ${url}`));
|
|
143
|
-
};
|
|
144
|
-
document2.head.appendChild(script);
|
|
145
|
-
});
|
|
146
|
-
}
|
|
147
|
-
async function loadRemoteCSS(url, options = {}) {
|
|
148
|
-
const { window: window2 = globalThis } = options;
|
|
149
|
-
const { document: document2 = window2.document } = options;
|
|
150
|
-
return new Promise((resolve, reject) => {
|
|
151
|
-
const existingLink = document2.querySelector(`link[href="${url}"]`);
|
|
152
|
-
if (existingLink) {
|
|
153
|
-
return resolve(existingLink);
|
|
154
|
-
}
|
|
155
|
-
const link = document2.createElement("link");
|
|
156
|
-
link.href = url;
|
|
157
|
-
link.rel = options.rel || "stylesheet";
|
|
158
|
-
link.type = "text/css";
|
|
159
|
-
link.media = options.media || "all";
|
|
160
|
-
if (options.id) link.id = options.id;
|
|
161
|
-
if (options.integrity) link.integrity = options.integrity;
|
|
162
|
-
if (options.crossOrigin) link.crossOrigin = options.crossOrigin;
|
|
163
|
-
link.onload = () => {
|
|
164
|
-
link.onerror = link.onload = null;
|
|
165
|
-
resolve(link);
|
|
166
|
-
};
|
|
167
|
-
link.onerror = () => {
|
|
168
|
-
link.onerror = link.onload = null;
|
|
169
|
-
reject(new Error(`Failed to load stylesheet: ${url}`));
|
|
170
|
-
};
|
|
171
|
-
document2.head.appendChild(link);
|
|
172
|
-
});
|
|
173
|
-
}
|
package/dist/cjs/package.json
DELETED
package/dist/cjs/scaling.js
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
|
|
20
|
-
// src/scaling.js
|
|
21
|
-
var scaling_exports = {};
|
|
22
|
-
__export(scaling_exports, {
|
|
23
|
-
findClosestNumber: () => findClosestNumber,
|
|
24
|
-
findClosestNumberInFactory: () => findClosestNumberInFactory
|
|
25
|
-
});
|
|
26
|
-
module.exports = __toCommonJS(scaling_exports);
|
|
27
|
-
|
|
28
|
-
// ../../../domql/packages/utils/globals.js
|
|
29
|
-
var window2 = globalThis;
|
|
30
|
-
var document2 = window2.document;
|
|
31
|
-
|
|
32
|
-
// ../../../domql/packages/utils/types.js
|
|
33
|
-
var isObject = (arg) => {
|
|
34
|
-
if (arg === null) return false;
|
|
35
|
-
return typeof arg === "object" && arg.constructor === Object;
|
|
36
|
-
};
|
|
37
|
-
var isArray = (arg) => Array.isArray(arg);
|
|
38
|
-
|
|
39
|
-
// ../../../domql/packages/utils/cookie.js
|
|
40
|
-
var isMobile = (() => typeof navigator === "undefined" ? false : /Mobi/.test(navigator.userAgent))();
|
|
41
|
-
|
|
42
|
-
// src/scaling.js
|
|
43
|
-
var findClosestNumber = (number, arr) => {
|
|
44
|
-
return (isArray(arr) ? arr : Object.values(arr)).reduce((prev, curr) => {
|
|
45
|
-
return Math.abs(curr - number) < Math.abs(prev - number) ? curr : prev;
|
|
46
|
-
});
|
|
47
|
-
};
|
|
48
|
-
var findClosestNumberInFactory = (val, factory) => {
|
|
49
|
-
val = parseFloat(val);
|
|
50
|
-
if (isObject(factory)) factory = Object.values(factory);
|
|
51
|
-
return findClosestNumber(val, factory);
|
|
52
|
-
};
|
|
53
|
-
// @preserve-env
|
package/dist/cjs/style.js
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
|
|
20
|
-
// src/style.js
|
|
21
|
-
var style_exports = {};
|
|
22
|
-
__export(style_exports, {
|
|
23
|
-
getEmotionStylesheet: () => getEmotionStylesheet
|
|
24
|
-
});
|
|
25
|
-
module.exports = __toCommonJS(style_exports);
|
|
26
|
-
var getEmotionStylesheet = () => {
|
|
27
|
-
const stylesheet = document.styleSheets[0];
|
|
28
|
-
let str = "";
|
|
29
|
-
if (stylesheet) {
|
|
30
|
-
try {
|
|
31
|
-
const cssRules = stylesheet.cssRules || stylesheet.rules;
|
|
32
|
-
for (let i = 0; i < cssRules.length; i++) {
|
|
33
|
-
str += cssRules[i].cssText;
|
|
34
|
-
}
|
|
35
|
-
} catch (error) {
|
|
36
|
-
console.error("Unable to access CSS rules. This may be due to CORS restrictions:", error);
|
|
37
|
-
}
|
|
38
|
-
} else {
|
|
39
|
-
console.log("No stylesheets found in document.styleSheets[0].");
|
|
40
|
-
}
|
|
41
|
-
return str;
|
|
42
|
-
};
|
package/element.js
DELETED
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
|
|
3
|
-
import { createExtends } from './extends.js'
|
|
4
|
-
import { createKey } from './key.js'
|
|
5
|
-
import { isNode } from './node.js'
|
|
6
|
-
import { createProps } from './props.js'
|
|
7
|
-
import { HTML_TAGS } from './tags.js'
|
|
8
|
-
import { is, isFunction } from './types.js'
|
|
9
|
-
|
|
10
|
-
const ENV = process.env.NODE_ENV
|
|
11
|
-
|
|
12
|
-
export const returnValueAsText = (element, parent, key) => {
|
|
13
|
-
const childExtendsTag = parent.childExtends && parent.childExtends.tag
|
|
14
|
-
const childPropsTag = parent.childProps && parent.childProps.tag
|
|
15
|
-
const isKeyValidHTMLTag = HTML_TAGS.body.has(key) && key
|
|
16
|
-
return {
|
|
17
|
-
text: element,
|
|
18
|
-
tag: childExtendsTag || childPropsTag || isKeyValidHTMLTag || 'string'
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export const createBasedOnType = (element, parent, key) => {
|
|
23
|
-
// if ELEMENT is not given
|
|
24
|
-
if (element === undefined) {
|
|
25
|
-
if (ENV === 'test' || ENV === 'development') {
|
|
26
|
-
console.warn(
|
|
27
|
-
key,
|
|
28
|
-
'element is undefined in',
|
|
29
|
-
parent?.__ref?.path
|
|
30
|
-
)
|
|
31
|
-
}
|
|
32
|
-
return {}
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
if (element === null) return
|
|
36
|
-
if (element === true) return {}
|
|
37
|
-
|
|
38
|
-
if (is(element)('string', 'number')) {
|
|
39
|
-
return returnValueAsText(element, parent, key)
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
if (isFunction(element)) {
|
|
43
|
-
return { props: element }
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
return element
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
export const addRef = (element, parent) => {
|
|
50
|
-
const ref = {}
|
|
51
|
-
ref.origin = element
|
|
52
|
-
ref.parent = parent
|
|
53
|
-
return ref
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
export const createParent = (element, parent, key, options, root) => {
|
|
57
|
-
if (!parent) return root
|
|
58
|
-
if (isNode(parent)) {
|
|
59
|
-
const parentNodeWrapper = { key: ':root', node: parent }
|
|
60
|
-
root[`${key}_parent`] = parentNodeWrapper
|
|
61
|
-
return parentNodeWrapper
|
|
62
|
-
}
|
|
63
|
-
return parent
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
export const createRoot = (element, parent) => {
|
|
67
|
-
const { __ref: ref } = element
|
|
68
|
-
const { __ref: parentRef } = parent
|
|
69
|
-
|
|
70
|
-
const hasRoot = parent && parent.key === ':root'
|
|
71
|
-
if (!ref?.root) {
|
|
72
|
-
ref.root = hasRoot ? element : parentRef?.root
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
export const createPath = (element, parent, key) => {
|
|
77
|
-
let { __ref: parentRef } = parent
|
|
78
|
-
// set the PATH array
|
|
79
|
-
if (!parentRef) parentRef = parent.ref = {}
|
|
80
|
-
if (!parentRef.path) parentRef.path = []
|
|
81
|
-
return parentRef.path.concat(key)
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
export const addContext = (element, parent, key, options, root) => {
|
|
85
|
-
const forcedOptionsContext =
|
|
86
|
-
options.context && !root.context && !element.context
|
|
87
|
-
if (forcedOptionsContext) root.context = options.context
|
|
88
|
-
|
|
89
|
-
// inherit from parent or root
|
|
90
|
-
return options.context || parent.context || root.context || element.context
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
export const addCaching = (element, parent, key) => {
|
|
94
|
-
const ref = addRef(element, parent)
|
|
95
|
-
|
|
96
|
-
element.__ref = ref
|
|
97
|
-
|
|
98
|
-
// enable CACHING
|
|
99
|
-
if (!ref.__defineCache) ref.__defineCache = {}
|
|
100
|
-
|
|
101
|
-
// enable EXEC
|
|
102
|
-
if (!ref.__exec) ref.__exec = {}
|
|
103
|
-
if (!ref.__execProps) ref.__execProps = {}
|
|
104
|
-
|
|
105
|
-
// enable CLASS CACHING
|
|
106
|
-
if (!ref.__class) ref.__class = {}
|
|
107
|
-
if (!ref.__classNames) ref.__classNames = {}
|
|
108
|
-
|
|
109
|
-
// enable CLASS CACHING
|
|
110
|
-
if (!ref.__attr) ref.__attr = {}
|
|
111
|
-
|
|
112
|
-
// enable CHANGES storing
|
|
113
|
-
if (!ref.__changes) ref.__changes = []
|
|
114
|
-
|
|
115
|
-
// enable CHANGES storing
|
|
116
|
-
if (!ref.__children) ref.__children = []
|
|
117
|
-
|
|
118
|
-
ref.__extends = createExtends(element, parent, key)
|
|
119
|
-
ref.path = createPath(element, parent, key)
|
|
120
|
-
|
|
121
|
-
return ref
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
export const createElement = (passedProps, parentEl, passedKey, opts, root) => {
|
|
125
|
-
const hashed = passedProps?.__hash
|
|
126
|
-
const element = hashed
|
|
127
|
-
? { extends: [passedProps] }
|
|
128
|
-
: createBasedOnType(passedProps, parentEl, passedKey)
|
|
129
|
-
if (!element) return
|
|
130
|
-
|
|
131
|
-
const parent = createParent(element, parentEl, passedKey, opts, root)
|
|
132
|
-
const key = createKey(element, parent, passedKey)
|
|
133
|
-
|
|
134
|
-
addCaching(element, parent, key)
|
|
135
|
-
|
|
136
|
-
const props = createProps(element, parent, key)
|
|
137
|
-
const context = addContext(element, parent, key, opts, root)
|
|
138
|
-
const on = element.on || {}
|
|
139
|
-
|
|
140
|
-
return {
|
|
141
|
-
...element,
|
|
142
|
-
key,
|
|
143
|
-
props,
|
|
144
|
-
parent,
|
|
145
|
-
context,
|
|
146
|
-
on
|
|
147
|
-
}
|
|
148
|
-
}
|
package/env.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
|
|
3
|
-
// @preserve-env
|
|
4
|
-
export const NODE_ENV = process.env.NODE_ENV
|
|
5
|
-
export const ENV = NODE_ENV
|
|
6
|
-
|
|
7
|
-
export const isProduction = (env = NODE_ENV) => env === 'production'
|
|
8
|
-
export const isTest = (env = NODE_ENV) => env === 'testing' || env === 'test'
|
|
9
|
-
export const isTesting = isTest
|
|
10
|
-
export const isStaging = (env = NODE_ENV) => env === 'staging'
|
|
11
|
-
export const isLocal = (env = NODE_ENV) => env === 'local'
|
|
12
|
-
export const isDevelopment = (env = NODE_ENV) =>
|
|
13
|
-
env === 'development' || env === 'dev' || env === 'local'
|
|
14
|
-
export const getNev = (key, env = NODE_ENV) => env[key]
|
|
15
|
-
export const isNotProduction = (env = NODE_ENV) => !isProduction(env)
|
package/events.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
|
|
3
|
-
import { lowercaseFirstLetter } from './string.js'
|
|
4
|
-
import { isFunction } from './types.js'
|
|
5
|
-
|
|
6
|
-
export function addEventFromProps (key, obj) {
|
|
7
|
-
const { props, on } = obj
|
|
8
|
-
const eventName = lowercaseFirstLetter(key.split('on')[1])
|
|
9
|
-
const origEvent = on[eventName]
|
|
10
|
-
const funcFromProps = props[key]
|
|
11
|
-
if (isFunction(origEvent)) {
|
|
12
|
-
on[eventName] = (...args) => {
|
|
13
|
-
const originalEventRetunrs = origEvent(...args)
|
|
14
|
-
if (originalEventRetunrs !== false) {
|
|
15
|
-
if (isFunction(funcFromProps)) return funcFromProps(...args)
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
} else on[eventName] = funcFromProps
|
|
19
|
-
}
|