apprun 3.36.0 → 3.37.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/CHANGELOG.md +28 -0
- package/README.md +143 -25
- package/WHATSNEW.md +29 -12
- package/apprun-book.jpg +0 -0
- package/apprun.d.ts +136 -46
- package/cli/app.js +29 -0
- package/cli/index.html +13 -0
- package/{apprun-cli.js → cli/index.js} +8 -14
- package/dist/apprun-code.js +2 -0
- package/dist/apprun-code.js.map +1 -0
- package/dist/apprun-dev-tools.js +1 -2
- package/dist/apprun-dev-tools.js.map +1 -1
- package/dist/apprun-html.esm.js +7 -7
- package/dist/apprun-html.esm.js.map +1 -1
- package/dist/apprun-html.js +1 -1
- package/dist/apprun-html.js.map +1 -1
- package/dist/apprun-play-html.esm.js +7 -7
- package/dist/apprun-play-html.esm.js.map +1 -1
- package/dist/apprun-play.js +1 -1
- package/dist/apprun-play.js.map +1 -1
- package/dist/apprun.esm.js +1 -1
- package/dist/apprun.esm.js.map +1 -1
- package/dist/apprun.js +1 -1
- package/dist/apprun.js.map +1 -1
- package/dist/createState.js +2 -0
- package/dist/createState.js.map +1 -0
- package/esm/add-components.js +90 -0
- package/esm/add-components.js.map +1 -0
- package/esm/app.js +15 -8
- package/esm/app.js.map +1 -1
- package/esm/apprun-code.js +51 -16
- package/esm/apprun-code.js.map +1 -1
- package/esm/apprun-dev-tools.js +32 -32
- package/esm/apprun-dev-tools.js.map +1 -1
- package/esm/apprun-play.js +50 -17
- package/esm/apprun-play.js.map +1 -1
- package/esm/apprun.js +42 -11
- package/esm/apprun.js.map +1 -1
- package/esm/component.js +17 -20
- package/esm/component.js.map +1 -1
- package/esm/createState.js +9 -0
- package/esm/createState.js.map +1 -0
- package/esm/decorator.js.map +1 -1
- package/esm/directive.js +1 -1
- package/esm/directive.js.map +1 -1
- package/esm/router.js +241 -18
- package/esm/router.js.map +1 -1
- package/esm/shadow.js +1 -1
- package/esm/shadow.js.map +1 -1
- package/esm/type-utils.js +2 -3
- package/esm/type-utils.js.map +1 -1
- package/esm/vdom-my-new.js +327 -0
- package/esm/vdom-my-new.js.map +1 -0
- package/esm/vdom-my-prop-attr.js +227 -0
- package/esm/vdom-my-prop-attr.js.map +1 -0
- package/esm/vdom-my.js +114 -150
- package/esm/vdom-my.js.map +1 -1
- package/esm/vdom-patch.js +1 -1
- package/esm/vdom-patch.js.map +1 -1
- package/esm/version.js +1 -1
- package/esm/web-component.js +3 -4
- package/esm/web-component.js.map +1 -1
- package/index.html +5 -2
- package/jest.config.js +2 -2
- package/jest.setup.js +29 -3
- package/jsx-runtime.js +1 -1
- package/jsx-runtime.js.map +1 -1
- package/package.json +14 -14
- package/src/add-components.ts +103 -0
- package/src/app.ts +10 -19
- package/src/apprun-code.tsx +48 -10
- package/src/apprun-dev-tools.tsx +23 -27
- package/src/apprun-play.tsx +46 -9
- package/src/apprun.ts +49 -40
- package/src/component.ts +15 -8
- package/src/createState.ts +11 -0
- package/src/decorator.ts +2 -1
- package/src/router.ts +261 -17
- package/src/shadow.tsx +1 -1
- package/src/tsconfig.json +2 -2
- package/src/types.ts +62 -2
- package/src/vdom-my-new.ts +311 -0
- package/src/vdom-my-prop-attr.ts +241 -0
- package/src/vdom-my.ts +109 -134
- package/src/version.ts +1 -1
- package/src/web-component.ts +4 -10
- package/tsconfig.jest.json +15 -6
- package/tsconfig.json +3 -3
- package/webpack.config.cjs +3 -1
- package/cli/export.js +0 -92
- package/cli/import.js +0 -68
- package/plan/plan-apprun-bugfixes.md +0 -207
- package/src/types/apprun.d.ts +0 -56
package/esm/vdom-my.js
CHANGED
|
@@ -1,8 +1,51 @@
|
|
|
1
|
+
/** * VDOM Implementation for AppRun
|
|
2
|
+
*
|
|
3
|
+
* Notes for AppRun’s key prop
|
|
4
|
+
* Use the key prop only if you need to preserve browser-side DOM state (such as cursor
|
|
5
|
+
* position in an <input>, focus, or maintaining state in inline components).
|
|
6
|
+
*
|
|
7
|
+
* For most use cases, especially with stateless or purely data-driven UIs, key is not
|
|
8
|
+
* needed and may decrease performance by forcing DOM moves.
|
|
9
|
+
*
|
|
10
|
+
* AppRun aggressively updates DOM to match your vdom, so DOM node preservation is
|
|
11
|
+
* only valuable when you intentionally depend on browser-managed state.
|
|
12
|
+
*
|
|
13
|
+
* | Use Case | Should I use `key`? | Why |
|
|
14
|
+
* | ----------------------------- | ------------------- | --------------------- |
|
|
15
|
+
* | Preserve input cursor/focus | ✅ Yes | Keeps browser state |
|
|
16
|
+
* | Inline stateful component | ✅ Yes | Preserves component |
|
|
17
|
+
* | Regular data list (stateless) | 🚫 No | Unnecessary DOM moves |
|
|
18
|
+
* | Purely visual updates | 🚫 No | No state to preserve |
|
|
19
|
+
*
|
|
20
|
+
* Features:
|
|
21
|
+
* - Virtual DOM rendering and diffing for efficient DOM updates
|
|
22
|
+
* - JSX Fragment support for both Babel and TypeScript
|
|
23
|
+
* - Element creation with props, children, and event handling
|
|
24
|
+
* - SVG element support with proper namespace handling
|
|
25
|
+
* - Component lifecycle management and caching
|
|
26
|
+
* - Keyed element optimization with automatic cleanup for memory management
|
|
27
|
+
* - Safe HTML insertion and text node creation
|
|
28
|
+
* - Directive processing integration
|
|
29
|
+
*
|
|
30
|
+
* Implementation:
|
|
31
|
+
* - Uses plain JavaScript object for keyCache instead of Map for better performance
|
|
32
|
+
* - Implements automatic cleanup of disconnected elements from keyCache
|
|
33
|
+
* - Supports both string and function-based tags
|
|
34
|
+
* - Handles component mounting and state management
|
|
35
|
+
* - Optimized children updating with minimal DOM operations
|
|
36
|
+
* - Memory-efficient caching with configurable thresholds (500 ops, 1000 max size)
|
|
37
|
+
*
|
|
38
|
+
* Recent Changes:
|
|
39
|
+
* - 2025-07-15: Converted keyCache from Map to plain object ({}) for improved performance
|
|
40
|
+
* - Updated cleanup functions to use object property deletion instead of Map methods
|
|
41
|
+
* - Enhanced memory management with automatic cleanup of disconnected elements
|
|
42
|
+
* - Added comprehensive key prop usage documentation and guidelines
|
|
43
|
+
*/
|
|
1
44
|
import directive from './directive';
|
|
45
|
+
import { updateProps } from './vdom-my-prop-attr';
|
|
2
46
|
export function Fragment(props, ...children) {
|
|
3
47
|
return collect(children);
|
|
4
48
|
}
|
|
5
|
-
const ATTR_PROPS = '_props';
|
|
6
49
|
function collect(children) {
|
|
7
50
|
const ch = [];
|
|
8
51
|
const push = (c) => {
|
|
@@ -20,6 +63,27 @@ function collect(children) {
|
|
|
20
63
|
});
|
|
21
64
|
return ch;
|
|
22
65
|
}
|
|
66
|
+
const keyCache = {};
|
|
67
|
+
let cleanupCounter = 0;
|
|
68
|
+
const CLEANUP_THRESHOLD = 500; // Cleanup every 500 operations
|
|
69
|
+
const MAX_CACHE_SIZE = 1000;
|
|
70
|
+
// Lightweight cleanup function - only runs when needed
|
|
71
|
+
function cleanupKeyCache() {
|
|
72
|
+
if (Object.keys(keyCache).length <= MAX_CACHE_SIZE)
|
|
73
|
+
return; // Skip if under limit
|
|
74
|
+
for (const [key, element] of Object.entries(keyCache)) {
|
|
75
|
+
if (!element.isConnected) {
|
|
76
|
+
delete keyCache[key];
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
// Export cleanup function for manual cleanup if needed
|
|
81
|
+
export function clearKeyCache() {
|
|
82
|
+
for (const key in keyCache) {
|
|
83
|
+
delete keyCache[key];
|
|
84
|
+
}
|
|
85
|
+
cleanupCounter = 0;
|
|
86
|
+
}
|
|
23
87
|
export function createElement(tag, props, ...children) {
|
|
24
88
|
const ch = collect(children);
|
|
25
89
|
if (typeof tag === 'string')
|
|
@@ -36,7 +100,6 @@ export function createElement(tag, props, ...children) {
|
|
|
36
100
|
throw new Error(`Unknown tag in vdom ${tag}`);
|
|
37
101
|
}
|
|
38
102
|
;
|
|
39
|
-
const keyCache = {};
|
|
40
103
|
export const updateElement = (element, nodes, component = {}) => {
|
|
41
104
|
// tslint:disable-next-line
|
|
42
105
|
if (nodes == null || nodes === false)
|
|
@@ -78,83 +141,59 @@ function update(element, node, isSvg) {
|
|
|
78
141
|
updateProps(element, node.props, isSvg);
|
|
79
142
|
}
|
|
80
143
|
function updateChildren(element, children, isSvg) {
|
|
81
|
-
|
|
82
|
-
const
|
|
83
|
-
const new_len = (children === null || children === void 0 ? void 0 : children.length) || 0;
|
|
84
|
-
// Handle key-based reordering first if any children have keys
|
|
85
|
-
const hasKeysInNewChildren = children === null || children === void 0 ? void 0 : children.some(child => child && typeof child === 'object' && child.props && child.props.key !== undefined);
|
|
86
|
-
if (hasKeysInNewChildren) {
|
|
87
|
-
// Create a map of existing keyed elements
|
|
88
|
-
const existingKeyedElements = new Map();
|
|
89
|
-
for (let i = 0; i < old_len; i++) {
|
|
90
|
-
const el = element.childNodes[i];
|
|
91
|
-
if (el && el.key) {
|
|
92
|
-
existingKeyedElements.set(el.key, el);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
// Build new DOM structure
|
|
96
|
-
const fragment = document.createDocumentFragment();
|
|
97
|
-
for (let i = 0; i < new_len; i++) {
|
|
98
|
-
const child = children[i];
|
|
99
|
-
if (child == null)
|
|
100
|
-
continue;
|
|
101
|
-
const key = child.props && child.props['key'];
|
|
102
|
-
if (key && existingKeyedElements.has(key)) {
|
|
103
|
-
// Reuse existing element
|
|
104
|
-
const existingEl = existingKeyedElements.get(key);
|
|
105
|
-
update(existingEl, child, isSvg);
|
|
106
|
-
fragment.appendChild(existingEl);
|
|
107
|
-
existingKeyedElements.delete(key); // Mark as used
|
|
108
|
-
}
|
|
109
|
-
else {
|
|
110
|
-
// Create new element
|
|
111
|
-
fragment.appendChild(create(child, isSvg));
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
// Clear current children and append new structure
|
|
115
|
-
while (element.firstChild) {
|
|
116
|
-
element.removeChild(element.firstChild);
|
|
117
|
-
}
|
|
118
|
-
element.appendChild(fragment);
|
|
119
|
-
return;
|
|
120
|
-
}
|
|
121
|
-
// Original non-keyed logic
|
|
144
|
+
const old_len = element.childNodes?.length || 0;
|
|
145
|
+
const new_len = children?.length || 0;
|
|
122
146
|
const len = Math.min(old_len, new_len);
|
|
123
147
|
for (let i = 0; i < len; i++) {
|
|
124
148
|
const child = children[i];
|
|
125
|
-
if (child == null)
|
|
126
|
-
continue;
|
|
127
149
|
const el = element.childNodes[i];
|
|
128
|
-
if (!el)
|
|
129
|
-
continue; // Safety check for undefined childNodes
|
|
130
150
|
if (typeof child === 'string') {
|
|
131
|
-
if (el.
|
|
132
|
-
if (el.
|
|
151
|
+
if (el.textContent !== child) {
|
|
152
|
+
if (el.nodeType === 3) {
|
|
133
153
|
el.nodeValue = child;
|
|
134
154
|
}
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
155
|
+
else {
|
|
156
|
+
element.replaceChild(createText(child), el);
|
|
157
|
+
}
|
|
138
158
|
}
|
|
139
159
|
}
|
|
140
160
|
else if (child instanceof HTMLElement || child instanceof SVGElement) {
|
|
141
|
-
element.
|
|
161
|
+
element.insertBefore(child, el);
|
|
142
162
|
}
|
|
143
|
-
else
|
|
144
|
-
|
|
163
|
+
else {
|
|
164
|
+
const key = child.props && child.props['key'];
|
|
165
|
+
if (key) {
|
|
166
|
+
if (el.key === key) {
|
|
167
|
+
update(element.childNodes[i], child, isSvg);
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
// console.log(el.key, key);
|
|
171
|
+
const old = keyCache[key];
|
|
172
|
+
if (old) {
|
|
173
|
+
// const temp = old.nextSibling;
|
|
174
|
+
element.insertBefore(old, el);
|
|
175
|
+
// temp ? element.insertBefore(el, temp) : element.appendChild(el);
|
|
176
|
+
update(element.childNodes[i], child, isSvg);
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
element.replaceChild(create(child, isSvg), el);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
update(element.childNodes[i], child, isSvg);
|
|
185
|
+
}
|
|
145
186
|
}
|
|
146
187
|
}
|
|
147
|
-
|
|
148
|
-
while (
|
|
188
|
+
let n = element.childNodes?.length || 0;
|
|
189
|
+
while (n > len) {
|
|
149
190
|
element.removeChild(element.lastChild);
|
|
191
|
+
n--;
|
|
150
192
|
}
|
|
151
193
|
if (new_len > len) {
|
|
152
194
|
const d = document.createDocumentFragment();
|
|
153
195
|
for (let i = len; i < children.length; i++) {
|
|
154
|
-
|
|
155
|
-
if (child != null) {
|
|
156
|
-
d.appendChild(create(child, isSvg));
|
|
157
|
-
}
|
|
196
|
+
d.appendChild(create(children[i], isSvg));
|
|
158
197
|
}
|
|
159
198
|
element.appendChild(d);
|
|
160
199
|
}
|
|
@@ -165,13 +204,13 @@ export const safeHTML = (html) => {
|
|
|
165
204
|
return Array.from(div.children);
|
|
166
205
|
};
|
|
167
206
|
function createText(node) {
|
|
168
|
-
if (
|
|
207
|
+
if (node?.indexOf('_html:') === 0) { // ?
|
|
169
208
|
const div = document.createElement('div');
|
|
170
209
|
div.insertAdjacentHTML('afterbegin', node.substring(6));
|
|
171
210
|
return div;
|
|
172
211
|
}
|
|
173
212
|
else {
|
|
174
|
-
return document.createTextNode(node
|
|
213
|
+
return document.createTextNode(node ?? '');
|
|
175
214
|
}
|
|
176
215
|
}
|
|
177
216
|
function create(node, isSvg) {
|
|
@@ -180,10 +219,8 @@ function create(node, isSvg) {
|
|
|
180
219
|
return node;
|
|
181
220
|
if (typeof node === "string")
|
|
182
221
|
return createText(node);
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
return createText(typeof node === 'object' ? JSON.stringify(node) : String(node !== null && node !== void 0 ? node : ''));
|
|
186
|
-
}
|
|
222
|
+
if (!node.tag || (typeof node.tag === 'function'))
|
|
223
|
+
return createText(JSON.stringify(node));
|
|
187
224
|
isSvg = isSvg || node.tag === "svg";
|
|
188
225
|
const element = isSvg
|
|
189
226
|
? document.createElementNS("http://www.w3.org/2000/svg", node.tag)
|
|
@@ -191,88 +228,16 @@ function create(node, isSvg) {
|
|
|
191
228
|
updateProps(element, node.props, isSvg);
|
|
192
229
|
if (node.children)
|
|
193
230
|
node.children.forEach(child => element.appendChild(create(child, isSvg)));
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
Object.keys(oldProps).forEach(p => props[p] = null);
|
|
202
|
-
if (newProps)
|
|
203
|
-
Object.keys(newProps).forEach(p => props[p] = newProps[p]);
|
|
204
|
-
return props;
|
|
205
|
-
}
|
|
206
|
-
export function updateProps(element, props, isSvg) {
|
|
207
|
-
// console.assert(!!element);
|
|
208
|
-
const cached = element[ATTR_PROPS] || {};
|
|
209
|
-
props = mergeProps(cached, props || {});
|
|
210
|
-
element[ATTR_PROPS] = props;
|
|
211
|
-
for (const name in props) {
|
|
212
|
-
const value = props[name];
|
|
213
|
-
// if (cached[name] === value) continue;
|
|
214
|
-
// console.log('updateProps', name, value);
|
|
215
|
-
if (name.startsWith('data-')) {
|
|
216
|
-
const dname = name.substring(5);
|
|
217
|
-
const cname = dname.replace(/-(\w)/g, (match) => match[1].toUpperCase());
|
|
218
|
-
if (element.dataset[cname] !== value) {
|
|
219
|
-
if (value || value === "")
|
|
220
|
-
element.dataset[cname] = value;
|
|
221
|
-
else
|
|
222
|
-
delete element.dataset[cname];
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
else if (name === 'style') {
|
|
226
|
-
if (element.style.cssText)
|
|
227
|
-
element.style.cssText = '';
|
|
228
|
-
if (typeof value === 'string')
|
|
229
|
-
element.style.cssText = value;
|
|
230
|
-
else {
|
|
231
|
-
for (const s in value) {
|
|
232
|
-
if (element.style[s] !== value[s])
|
|
233
|
-
element.style[s] = value[s];
|
|
234
|
-
}
|
|
235
|
-
}
|
|
231
|
+
if (node.props && node.props.key !== undefined) {
|
|
232
|
+
element.key = node.props.key;
|
|
233
|
+
keyCache[node.props.key] = element;
|
|
234
|
+
// Lightweight cleanup - only when counter reaches threshold
|
|
235
|
+
if (++cleanupCounter >= CLEANUP_THRESHOLD) {
|
|
236
|
+
cleanupKeyCache();
|
|
237
|
+
cleanupCounter = 0;
|
|
236
238
|
}
|
|
237
|
-
else if (name.startsWith('xlink')) {
|
|
238
|
-
const xname = name.replace('xlink', '').toLowerCase();
|
|
239
|
-
if (value == null || value === false) {
|
|
240
|
-
element.removeAttributeNS('http://www.w3.org/1999/xlink', xname);
|
|
241
|
-
}
|
|
242
|
-
else {
|
|
243
|
-
element.setAttributeNS('http://www.w3.org/1999/xlink', xname, value);
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
else if (name.startsWith('on')) {
|
|
247
|
-
if (!value || typeof value === 'function') {
|
|
248
|
-
element[name] = value;
|
|
249
|
-
}
|
|
250
|
-
else if (typeof value === 'string') {
|
|
251
|
-
if (value)
|
|
252
|
-
element.setAttribute(name, value);
|
|
253
|
-
else
|
|
254
|
-
element.removeAttribute(name);
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
else if (/^id$|^class$|^list$|^readonly$|^contenteditable$|^role|-|^for$/g.test(name) || isSvg) {
|
|
258
|
-
if (element.getAttribute(name) !== value) {
|
|
259
|
-
if (value)
|
|
260
|
-
element.setAttribute(name, value);
|
|
261
|
-
else
|
|
262
|
-
element.removeAttribute(name);
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
else if (element[name] !== value) {
|
|
266
|
-
element[name] = value;
|
|
267
|
-
}
|
|
268
|
-
if (name === 'key' && value !== undefined) {
|
|
269
|
-
keyCache[value] = element;
|
|
270
|
-
element.key = value; // Set key property on the DOM element
|
|
271
|
-
}
|
|
272
|
-
}
|
|
273
|
-
if (props && typeof props['ref'] === 'function') {
|
|
274
|
-
window.requestAnimationFrame(() => props['ref'](element));
|
|
275
239
|
}
|
|
240
|
+
return element;
|
|
276
241
|
}
|
|
277
242
|
function render_component(node, parent, idx) {
|
|
278
243
|
const { tag, props, children } = node;
|
|
@@ -292,7 +257,7 @@ function render_component(node, parent, idx) {
|
|
|
292
257
|
let component = parent.__componentCache[key];
|
|
293
258
|
if (!component || !(component instanceof tag) || !component.element) {
|
|
294
259
|
const element = document.createElement(asTag);
|
|
295
|
-
component = parent.__componentCache[key] = new tag(
|
|
260
|
+
component = parent.__componentCache[key] = new tag({ ...props, children }).mount(element, { render: true });
|
|
296
261
|
}
|
|
297
262
|
else {
|
|
298
263
|
component.renderState(component.state);
|
|
@@ -305,7 +270,6 @@ function render_component(node, parent, idx) {
|
|
|
305
270
|
return component.element;
|
|
306
271
|
}
|
|
307
272
|
function createComponent(node, parent, idx = 0) {
|
|
308
|
-
var _a;
|
|
309
273
|
if (typeof node === 'string')
|
|
310
274
|
return node;
|
|
311
275
|
if (Array.isArray(node))
|
|
@@ -315,7 +279,7 @@ function createComponent(node, parent, idx = 0) {
|
|
|
315
279
|
vdom = render_component(node, parent, idx);
|
|
316
280
|
}
|
|
317
281
|
if (vdom && Array.isArray(vdom.children)) {
|
|
318
|
-
const new_parent =
|
|
282
|
+
const new_parent = vdom.props?._component;
|
|
319
283
|
if (new_parent) {
|
|
320
284
|
let i = 0;
|
|
321
285
|
vdom.children = vdom.children.map(child => createComponent(child, new_parent, i++));
|
package/esm/vdom-my.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vdom-my.js","sourceRoot":"","sources":["../src/vdom-my.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vdom-my.js","sourceRoot":"","sources":["../src/vdom-my.ts"],"names":[],"mappings":"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"}
|
package/esm/vdom-patch.js
CHANGED
|
@@ -4,7 +4,7 @@ var CHANGES;
|
|
|
4
4
|
CHANGES[CHANGES["NO_TREE_CHANGE"] = 2] = "NO_TREE_CHANGE";
|
|
5
5
|
})(CHANGES || (CHANGES = {}));
|
|
6
6
|
export function patch(vdom1, vdom2) {
|
|
7
|
-
if (!
|
|
7
|
+
if (!vdom1?.length || !vdom2?.length)
|
|
8
8
|
return;
|
|
9
9
|
const old_len = vdom1.length;
|
|
10
10
|
const new_len = vdom2.length;
|
package/esm/vdom-patch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vdom-patch.js","sourceRoot":"","sources":["../src/vdom-patch.ts"],"names":[],"mappings":"AAAA,IAAK,OAGJ;AAHD,WAAK,OAAO;IACV,yDAAkB,CAAA;IAClB,yDAAkB,CAAA;AACpB,CAAC,EAHI,OAAO,KAAP,OAAO,QAGX;AAED,MAAM,UAAU,KAAK,CAAC,KAAK,EAAE,KAAK;IAChC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"vdom-patch.js","sourceRoot":"","sources":["../src/vdom-patch.ts"],"names":[],"mappings":"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"}
|
package/esm/version.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
// Import version from package.json to maintain single source of truth
|
|
11
11
|
// This version string is used across the framework
|
|
12
|
-
export const APPRUN_VERSION = '3.
|
|
12
|
+
export const APPRUN_VERSION = '3.37.0';
|
|
13
13
|
// Version string with prefix for global tracking
|
|
14
14
|
export const APPRUN_VERSION_GLOBAL = `AppRun-${APPRUN_VERSION}`;
|
|
15
15
|
//# sourceMappingURL=version.js.map
|
package/esm/web-component.js
CHANGED
|
@@ -94,7 +94,7 @@ export const customElement = (componentClass, options = {}) => class CustomEleme
|
|
|
94
94
|
requestAnimationFrame(() => {
|
|
95
95
|
const children = this.children ? Array.from(this.children) : [];
|
|
96
96
|
// children.forEach(el => el.parentElement.removeChild(el));
|
|
97
|
-
this._component = new componentClass(
|
|
97
|
+
this._component = new componentClass({ ...props, children }).mount(this._shadowRoot, opts);
|
|
98
98
|
// attach props to component
|
|
99
99
|
this._component._props = props;
|
|
100
100
|
// expose dispatchEvent
|
|
@@ -112,9 +112,8 @@ export const customElement = (componentClass, options = {}) => class CustomEleme
|
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
114
|
disconnectedCallback() {
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
(_d = (_c = this._component) === null || _c === void 0 ? void 0 : _c.unmount) === null || _d === void 0 ? void 0 : _d.call(_c);
|
|
115
|
+
this._component?.unload?.();
|
|
116
|
+
this._component?.unmount?.();
|
|
118
117
|
this._component = null;
|
|
119
118
|
}
|
|
120
119
|
attributeChangedCallback(name, oldValue, value) {
|
package/esm/web-component.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-component.js","sourceRoot":"","sources":["../src/web-component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;
|
|
1
|
+
{"version":3,"file":"web-component.js","sourceRoot":"","sources":["../src/web-component.ts"],"names":[],"mappings":"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"}
|
package/index.html
CHANGED
|
@@ -7,8 +7,12 @@
|
|
|
7
7
|
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"
|
|
8
8
|
integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
|
|
9
9
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.0/animate.min.css">
|
|
10
|
+
<link rel="stylesheet" href="demo/lib/codemirror.css">
|
|
11
|
+
<script src="demo/lib/codemirror.js"></script>
|
|
12
|
+
<script src="demo/mode/javascript/javascript.js"></script>
|
|
13
|
+
<script src="demo/mode/xml/xml.js"></script>
|
|
14
|
+
<script src="demo/mode/jsx/jsx.js"></script>
|
|
10
15
|
<link rel="stylesheet" type="text/css" href="demo/styles.css">
|
|
11
|
-
<script src="docs/assets/apprun-code.js"></script>
|
|
12
16
|
</head>
|
|
13
17
|
<body>
|
|
14
18
|
<!-- navbar -->
|
|
@@ -79,6 +83,5 @@
|
|
|
79
83
|
integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
|
|
80
84
|
|
|
81
85
|
<script src="demo/app.js"></script>
|
|
82
|
-
|
|
83
86
|
</body>
|
|
84
87
|
</html>
|
package/jest.config.js
CHANGED
|
@@ -2,13 +2,12 @@
|
|
|
2
2
|
module.exports = {
|
|
3
3
|
testEnvironment: "jsdom",
|
|
4
4
|
transformIgnorePatterns: [
|
|
5
|
-
"node_modules/(?!(lit|@lit|lit-html|@lit-labs))"
|
|
5
|
+
"node_modules/(?!(lit|@lit|lit-html|@lit-labs|property-information))"
|
|
6
6
|
],
|
|
7
7
|
transform: {
|
|
8
8
|
"^.+\\.(t|j)sx?$": ["ts-jest", {
|
|
9
9
|
useESM: true,
|
|
10
10
|
tsconfig: "tsconfig.jest.json",
|
|
11
|
-
isolatedModules: true,
|
|
12
11
|
diagnostics: {
|
|
13
12
|
warnOnly: true, // Convert type-check errors to warnings during tests
|
|
14
13
|
ignoreCodes: [
|
|
@@ -44,6 +43,7 @@ module.exports = {
|
|
|
44
43
|
"^lit$": "<rootDir>/node_modules/lit/development/index.js",
|
|
45
44
|
"^lit/directive$": "<rootDir>/node_modules/lit/development/directive.js",
|
|
46
45
|
"^lit/directives/(.*)$": "<rootDir>/node_modules/lit/development/directives/$1",
|
|
46
|
+
"^property-information$": "<rootDir>/node_modules/property-information/index.js",
|
|
47
47
|
"^(\\.{1,2}/.*)\\.js$": "$1",
|
|
48
48
|
"^(\\.{1,2}/.*)\\.jsx?$": "$1",
|
|
49
49
|
"^(\\.{1,2}/.*)\\.tsx?$": "$1"
|
package/jest.setup.js
CHANGED
|
@@ -11,6 +11,32 @@ global.spyOn = (obj, method) => {
|
|
|
11
11
|
return spy;
|
|
12
12
|
};
|
|
13
13
|
|
|
14
|
+
// Add TextEncoder/TextDecoder polyfills for JSDOM environment
|
|
15
|
+
if (typeof TextEncoder === 'undefined') {
|
|
16
|
+
const { TextEncoder, TextDecoder } = require('util');
|
|
17
|
+
global.TextEncoder = TextEncoder;
|
|
18
|
+
global.TextDecoder = TextDecoder;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
// Ensure global references are properly set up for JSDOM
|
|
22
|
+
Object.defineProperty(global, 'Node', {
|
|
23
|
+
value: globalThis.Node || class Node { },
|
|
24
|
+
writable: true,
|
|
25
|
+
configurable: true
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
Object.defineProperty(global, 'HTMLElement', {
|
|
29
|
+
value: globalThis.HTMLElement || class HTMLElement { },
|
|
30
|
+
writable: true,
|
|
31
|
+
configurable: true
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
Object.defineProperty(global, 'SVGElement', {
|
|
35
|
+
value: globalThis.SVGElement || class SVGElement { },
|
|
36
|
+
writable: true,
|
|
37
|
+
configurable: true
|
|
38
|
+
});
|
|
39
|
+
|
|
14
40
|
// Mock jasmine functionality with Jest equivalents
|
|
15
41
|
global.jasmine = {
|
|
16
42
|
createSpy: (name) => {
|
|
@@ -35,13 +61,13 @@ global.jasmine = {
|
|
|
35
61
|
if (typeof document === 'undefined') {
|
|
36
62
|
global.document = {
|
|
37
63
|
createElement: () => ({
|
|
38
|
-
setAttribute: () => {},
|
|
64
|
+
setAttribute: () => { },
|
|
39
65
|
style: {},
|
|
40
|
-
appendChild: () => {}
|
|
66
|
+
appendChild: () => { }
|
|
41
67
|
}),
|
|
42
68
|
createComment: () => ({}),
|
|
43
69
|
body: {
|
|
44
|
-
appendChild: () => {}
|
|
70
|
+
appendChild: () => { }
|
|
45
71
|
}
|
|
46
72
|
};
|
|
47
73
|
}
|