elegance-js 2.1.7 → 2.1.10
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/build.d.ts +2 -0
- package/dist/build.mjs +49 -60
- package/dist/client/client.mjs +36 -165
- package/dist/client/processPageElements.mjs +7 -7
- package/dist/client/render.mjs +1 -2
- package/dist/client/watcher.mjs +1 -2
- package/dist/compile_docs.mjs +8 -224
- package/dist/components/Link.mjs +3 -51
- package/dist/global.d.ts +4 -1
- package/dist/helpers/ObjectAttributeType.mjs +0 -1
- package/dist/helpers/camelToKebab.mjs +1 -2
- package/dist/index.mjs +3 -215
- package/dist/internal/deprecate.mjs +1 -2
- package/dist/log.mjs +2 -3
- package/dist/page_compiler.d.ts +1 -3
- package/dist/page_compiler.mjs +85 -780
- package/dist/server/generateHTMLTemplate.mjs +2 -194
- package/dist/server/layout.mjs +3 -4
- package/dist/server/loadHook.mjs +5 -11
- package/dist/server/observe.mjs +3 -3
- package/dist/server/render.mjs +3 -149
- package/dist/server/server.mjs +128 -1230
- package/dist/server/state.mjs +13 -34
- package/dist/shared/bindServerElements.mjs +1 -143
- package/dist/shared/serverElements.mjs +8 -9
- package/package.json +2 -2
|
@@ -1,197 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
return (options, ...children) => ({
|
|
4
|
-
tag,
|
|
5
|
-
options: options || {},
|
|
6
|
-
children
|
|
7
|
-
});
|
|
8
|
-
};
|
|
9
|
-
var createChildrenlessBuildableElement = (tag) => {
|
|
10
|
-
return (options) => ({
|
|
11
|
-
tag,
|
|
12
|
-
options: options || {},
|
|
13
|
-
children: null
|
|
14
|
-
});
|
|
15
|
-
};
|
|
16
|
-
var childrenlessElementTags = [
|
|
17
|
-
"area",
|
|
18
|
-
"base",
|
|
19
|
-
"br",
|
|
20
|
-
"col",
|
|
21
|
-
"embed",
|
|
22
|
-
"hr",
|
|
23
|
-
"img",
|
|
24
|
-
"input",
|
|
25
|
-
"link",
|
|
26
|
-
"meta",
|
|
27
|
-
"source",
|
|
28
|
-
"track",
|
|
29
|
-
"path",
|
|
30
|
-
"rect"
|
|
31
|
-
];
|
|
32
|
-
var elementTags = [
|
|
33
|
-
"a",
|
|
34
|
-
"address",
|
|
35
|
-
"article",
|
|
36
|
-
"aside",
|
|
37
|
-
"audio",
|
|
38
|
-
"blockquote",
|
|
39
|
-
"body",
|
|
40
|
-
"button",
|
|
41
|
-
"canvas",
|
|
42
|
-
"caption",
|
|
43
|
-
"colgroup",
|
|
44
|
-
"data",
|
|
45
|
-
"datalist",
|
|
46
|
-
"dd",
|
|
47
|
-
"del",
|
|
48
|
-
"details",
|
|
49
|
-
"dialog",
|
|
50
|
-
"div",
|
|
51
|
-
"dl",
|
|
52
|
-
"dt",
|
|
53
|
-
"fieldset",
|
|
54
|
-
"figcaption",
|
|
55
|
-
"figure",
|
|
56
|
-
"footer",
|
|
57
|
-
"form",
|
|
58
|
-
"h1",
|
|
59
|
-
"h2",
|
|
60
|
-
"h3",
|
|
61
|
-
"h4",
|
|
62
|
-
"h5",
|
|
63
|
-
"h6",
|
|
64
|
-
"head",
|
|
65
|
-
"header",
|
|
66
|
-
"hgroup",
|
|
67
|
-
"html",
|
|
68
|
-
"iframe",
|
|
69
|
-
"ins",
|
|
70
|
-
"label",
|
|
71
|
-
"legend",
|
|
72
|
-
"li",
|
|
73
|
-
"main",
|
|
74
|
-
"map",
|
|
75
|
-
"meter",
|
|
76
|
-
"nav",
|
|
77
|
-
"noscript",
|
|
78
|
-
"object",
|
|
79
|
-
"ol",
|
|
80
|
-
"optgroup",
|
|
81
|
-
"option",
|
|
82
|
-
"output",
|
|
83
|
-
"p",
|
|
84
|
-
"picture",
|
|
85
|
-
"pre",
|
|
86
|
-
"progress",
|
|
87
|
-
"q",
|
|
88
|
-
"section",
|
|
89
|
-
"select",
|
|
90
|
-
"summary",
|
|
91
|
-
"table",
|
|
92
|
-
"tbody",
|
|
93
|
-
"td",
|
|
94
|
-
"template",
|
|
95
|
-
"textarea",
|
|
96
|
-
"tfoot",
|
|
97
|
-
"th",
|
|
98
|
-
"thead",
|
|
99
|
-
"time",
|
|
100
|
-
"tr",
|
|
101
|
-
"ul",
|
|
102
|
-
"video",
|
|
103
|
-
"span",
|
|
104
|
-
"script",
|
|
105
|
-
"abbr",
|
|
106
|
-
"b",
|
|
107
|
-
"bdi",
|
|
108
|
-
"bdo",
|
|
109
|
-
"cite",
|
|
110
|
-
"code",
|
|
111
|
-
"dfn",
|
|
112
|
-
"em",
|
|
113
|
-
"i",
|
|
114
|
-
"kbd",
|
|
115
|
-
"mark",
|
|
116
|
-
"rp",
|
|
117
|
-
"rt",
|
|
118
|
-
"ruby",
|
|
119
|
-
"s",
|
|
120
|
-
"samp",
|
|
121
|
-
"small",
|
|
122
|
-
"strong",
|
|
123
|
-
"sub",
|
|
124
|
-
"sup",
|
|
125
|
-
"u",
|
|
126
|
-
"wbr",
|
|
127
|
-
"title",
|
|
128
|
-
"svg"
|
|
129
|
-
];
|
|
130
|
-
var elements = {};
|
|
131
|
-
var childrenlessElements = {};
|
|
132
|
-
for (const element of elementTags) {
|
|
133
|
-
elements[element] = createBuildableElement(element);
|
|
134
|
-
}
|
|
135
|
-
for (const element of childrenlessElementTags) {
|
|
136
|
-
childrenlessElements[element] = createChildrenlessBuildableElement(element);
|
|
137
|
-
}
|
|
138
|
-
var allElements = {
|
|
139
|
-
...elements,
|
|
140
|
-
...childrenlessElements
|
|
141
|
-
};
|
|
142
|
-
|
|
143
|
-
// src/shared/bindServerElements.ts
|
|
144
|
-
Object.assign(globalThis, elements);
|
|
145
|
-
Object.assign(globalThis, childrenlessElements);
|
|
146
|
-
|
|
147
|
-
// src/server/render.ts
|
|
148
|
-
var renderRecursively = (element) => {
|
|
149
|
-
let returnString = "";
|
|
150
|
-
if (typeof element === "boolean") return returnString;
|
|
151
|
-
else if (typeof element === "number" || typeof element === "string") {
|
|
152
|
-
return returnString + element;
|
|
153
|
-
} else if (Array.isArray(element)) {
|
|
154
|
-
return returnString + element.join(", ");
|
|
155
|
-
}
|
|
156
|
-
returnString += `<${element.tag}`;
|
|
157
|
-
if (typeof element.options === "object") {
|
|
158
|
-
const {
|
|
159
|
-
tag: elementTag,
|
|
160
|
-
options: elementOptions,
|
|
161
|
-
children: elementChildren
|
|
162
|
-
} = element.options;
|
|
163
|
-
if (elementTag !== void 0 && elementOptions !== void 0 && elementChildren !== void 0) {
|
|
164
|
-
const children = element.children;
|
|
165
|
-
element.children = [
|
|
166
|
-
element.options,
|
|
167
|
-
...children
|
|
168
|
-
];
|
|
169
|
-
element.options = {};
|
|
170
|
-
} else {
|
|
171
|
-
for (const [attrName, attrValue] of Object.entries(element.options)) {
|
|
172
|
-
if (typeof attrValue === "object") {
|
|
173
|
-
throw `Attr ${attrName}, for element ${element.tag} has obj type. Got: ${JSON.stringify(element, null, 2)}`;
|
|
174
|
-
}
|
|
175
|
-
returnString += ` ${attrName.toLowerCase()}="${attrValue}"`;
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
} else if (typeof element.options !== "object" && element.options !== void 0) {
|
|
179
|
-
element.children = [element.options, ...element.children || []];
|
|
180
|
-
}
|
|
181
|
-
if (element.children === null) {
|
|
182
|
-
returnString += "/>";
|
|
183
|
-
return returnString;
|
|
184
|
-
}
|
|
185
|
-
returnString += ">";
|
|
186
|
-
for (const child of element.children) {
|
|
187
|
-
returnString += renderRecursively(child);
|
|
188
|
-
}
|
|
189
|
-
returnString += `</${element.tag}>`;
|
|
190
|
-
return returnString;
|
|
191
|
-
};
|
|
192
|
-
|
|
193
|
-
// src/server/generateHTMLTemplate.ts
|
|
194
|
-
var generateHTMLTemplate = async ({
|
|
1
|
+
import { renderRecursively } from "./render";
|
|
2
|
+
const generateHTMLTemplate = async ({
|
|
195
3
|
pageURL,
|
|
196
4
|
head,
|
|
197
5
|
serverData = null,
|
package/dist/server/layout.mjs
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var getLayouts = () => globalThis.__SERVER_CURRENT_LAYOUTS__;
|
|
1
|
+
const resetLayouts = () => globalThis.__SERVER_CURRENT_LAYOUTS__ = /* @__PURE__ */ new Map();
|
|
2
|
+
const getLayouts = () => globalThis.__SERVER_CURRENT_LAYOUTS__;
|
|
4
3
|
if (!globalThis.__SERVER_CURRENT_LAYOUT_ID__) globalThis.__SERVER_CURRENT_LAYOUT_ID__ = 1;
|
|
5
|
-
|
|
4
|
+
const createLayout = (name) => {
|
|
6
5
|
process.emitWarning(
|
|
7
6
|
"Function createLayout() is deprecated. Prefer layout.ts files instead.",
|
|
8
7
|
{ type: "DeprecationWarning" }
|
package/dist/server/loadHook.mjs
CHANGED
|
@@ -1,13 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
};
|
|
6
|
-
|
|
7
|
-
// src/server/loadHook.ts
|
|
8
|
-
var resetLoadHooks = () => globalThis.__SERVER_CURRENT_LOADHOOKS__ = [];
|
|
9
|
-
var getLoadHooks = () => globalThis.__SERVER_CURRENT_LOADHOOKS__;
|
|
10
|
-
var loadHook = (deps, fn, bind) => {
|
|
1
|
+
import { ShowDeprecationWarning } from "../internal/deprecate";
|
|
2
|
+
const resetLoadHooks = () => globalThis.__SERVER_CURRENT_LOADHOOKS__ = [];
|
|
3
|
+
const getLoadHooks = () => globalThis.__SERVER_CURRENT_LOADHOOKS__;
|
|
4
|
+
const loadHook = (deps, fn, bind) => {
|
|
11
5
|
const stringFn = fn.toString();
|
|
12
6
|
const depsArray = (deps || []).map((dep) => ({
|
|
13
7
|
id: dep.id,
|
|
@@ -27,7 +21,7 @@ var loadHook = (deps, fn, bind) => {
|
|
|
27
21
|
bind: bind || ""
|
|
28
22
|
});
|
|
29
23
|
};
|
|
30
|
-
|
|
24
|
+
const createLoadHook = (options) => {
|
|
31
25
|
ShowDeprecationWarning("WARNING: createLoadHook() is a deprecated function. Use loadHook() from elegance-js/loadHook instead.");
|
|
32
26
|
const stringFn = options.fn.toString();
|
|
33
27
|
const deps = (options.deps || []).map((dep) => ({
|
package/dist/server/observe.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { ObjectAttributeType } from "../helpers/ObjectAttributeType";
|
|
2
|
+
const observe = (refs, update) => {
|
|
3
3
|
const returnValue = {
|
|
4
|
-
type:
|
|
4
|
+
type: ObjectAttributeType.OBSERVER,
|
|
5
5
|
initialValues: refs.map((ref) => ref.value),
|
|
6
6
|
update,
|
|
7
7
|
refs: refs.map((ref) => ({
|
package/dist/server/render.mjs
CHANGED
|
@@ -1,151 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
return (options, ...children) => ({
|
|
4
|
-
tag,
|
|
5
|
-
options: options || {},
|
|
6
|
-
children
|
|
7
|
-
});
|
|
8
|
-
};
|
|
9
|
-
var createChildrenlessBuildableElement = (tag) => {
|
|
10
|
-
return (options) => ({
|
|
11
|
-
tag,
|
|
12
|
-
options: options || {},
|
|
13
|
-
children: null
|
|
14
|
-
});
|
|
15
|
-
};
|
|
16
|
-
var childrenlessElementTags = [
|
|
17
|
-
"area",
|
|
18
|
-
"base",
|
|
19
|
-
"br",
|
|
20
|
-
"col",
|
|
21
|
-
"embed",
|
|
22
|
-
"hr",
|
|
23
|
-
"img",
|
|
24
|
-
"input",
|
|
25
|
-
"link",
|
|
26
|
-
"meta",
|
|
27
|
-
"source",
|
|
28
|
-
"track",
|
|
29
|
-
"path",
|
|
30
|
-
"rect"
|
|
31
|
-
];
|
|
32
|
-
var elementTags = [
|
|
33
|
-
"a",
|
|
34
|
-
"address",
|
|
35
|
-
"article",
|
|
36
|
-
"aside",
|
|
37
|
-
"audio",
|
|
38
|
-
"blockquote",
|
|
39
|
-
"body",
|
|
40
|
-
"button",
|
|
41
|
-
"canvas",
|
|
42
|
-
"caption",
|
|
43
|
-
"colgroup",
|
|
44
|
-
"data",
|
|
45
|
-
"datalist",
|
|
46
|
-
"dd",
|
|
47
|
-
"del",
|
|
48
|
-
"details",
|
|
49
|
-
"dialog",
|
|
50
|
-
"div",
|
|
51
|
-
"dl",
|
|
52
|
-
"dt",
|
|
53
|
-
"fieldset",
|
|
54
|
-
"figcaption",
|
|
55
|
-
"figure",
|
|
56
|
-
"footer",
|
|
57
|
-
"form",
|
|
58
|
-
"h1",
|
|
59
|
-
"h2",
|
|
60
|
-
"h3",
|
|
61
|
-
"h4",
|
|
62
|
-
"h5",
|
|
63
|
-
"h6",
|
|
64
|
-
"head",
|
|
65
|
-
"header",
|
|
66
|
-
"hgroup",
|
|
67
|
-
"html",
|
|
68
|
-
"iframe",
|
|
69
|
-
"ins",
|
|
70
|
-
"label",
|
|
71
|
-
"legend",
|
|
72
|
-
"li",
|
|
73
|
-
"main",
|
|
74
|
-
"map",
|
|
75
|
-
"meter",
|
|
76
|
-
"nav",
|
|
77
|
-
"noscript",
|
|
78
|
-
"object",
|
|
79
|
-
"ol",
|
|
80
|
-
"optgroup",
|
|
81
|
-
"option",
|
|
82
|
-
"output",
|
|
83
|
-
"p",
|
|
84
|
-
"picture",
|
|
85
|
-
"pre",
|
|
86
|
-
"progress",
|
|
87
|
-
"q",
|
|
88
|
-
"section",
|
|
89
|
-
"select",
|
|
90
|
-
"summary",
|
|
91
|
-
"table",
|
|
92
|
-
"tbody",
|
|
93
|
-
"td",
|
|
94
|
-
"template",
|
|
95
|
-
"textarea",
|
|
96
|
-
"tfoot",
|
|
97
|
-
"th",
|
|
98
|
-
"thead",
|
|
99
|
-
"time",
|
|
100
|
-
"tr",
|
|
101
|
-
"ul",
|
|
102
|
-
"video",
|
|
103
|
-
"span",
|
|
104
|
-
"script",
|
|
105
|
-
"abbr",
|
|
106
|
-
"b",
|
|
107
|
-
"bdi",
|
|
108
|
-
"bdo",
|
|
109
|
-
"cite",
|
|
110
|
-
"code",
|
|
111
|
-
"dfn",
|
|
112
|
-
"em",
|
|
113
|
-
"i",
|
|
114
|
-
"kbd",
|
|
115
|
-
"mark",
|
|
116
|
-
"rp",
|
|
117
|
-
"rt",
|
|
118
|
-
"ruby",
|
|
119
|
-
"s",
|
|
120
|
-
"samp",
|
|
121
|
-
"small",
|
|
122
|
-
"strong",
|
|
123
|
-
"sub",
|
|
124
|
-
"sup",
|
|
125
|
-
"u",
|
|
126
|
-
"wbr",
|
|
127
|
-
"title",
|
|
128
|
-
"svg"
|
|
129
|
-
];
|
|
130
|
-
var elements = {};
|
|
131
|
-
var childrenlessElements = {};
|
|
132
|
-
for (const element of elementTags) {
|
|
133
|
-
elements[element] = createBuildableElement(element);
|
|
134
|
-
}
|
|
135
|
-
for (const element of childrenlessElementTags) {
|
|
136
|
-
childrenlessElements[element] = createChildrenlessBuildableElement(element);
|
|
137
|
-
}
|
|
138
|
-
var allElements = {
|
|
139
|
-
...elements,
|
|
140
|
-
...childrenlessElements
|
|
141
|
-
};
|
|
142
|
-
|
|
143
|
-
// src/shared/bindServerElements.ts
|
|
144
|
-
Object.assign(globalThis, elements);
|
|
145
|
-
Object.assign(globalThis, childrenlessElements);
|
|
146
|
-
|
|
147
|
-
// src/server/render.ts
|
|
148
|
-
var renderRecursively = (element) => {
|
|
1
|
+
import "../shared/bindServerElements";
|
|
2
|
+
const renderRecursively = (element) => {
|
|
149
3
|
let returnString = "";
|
|
150
4
|
if (typeof element === "boolean") return returnString;
|
|
151
5
|
else if (typeof element === "number" || typeof element === "string") {
|
|
@@ -189,7 +43,7 @@ var renderRecursively = (element) => {
|
|
|
189
43
|
returnString += `</${element.tag}>`;
|
|
190
44
|
return returnString;
|
|
191
45
|
};
|
|
192
|
-
|
|
46
|
+
const serverSideRenderPage = async (page, pathname) => {
|
|
193
47
|
if (!page) {
|
|
194
48
|
throw `No Page Provided.`;
|
|
195
49
|
}
|