solid-js 1.5.0-beta.1 → 1.5.0-beta.2
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/dev.cjs +63 -75
- package/dist/dev.js +63 -75
- package/dist/server.cjs +57 -35
- package/dist/server.js +57 -35
- package/dist/solid.cjs +63 -75
- package/dist/solid.js +63 -75
- package/h/jsx-runtime/types/jsx.d.ts +2 -0
- package/package.json +81 -21
- package/store/types/index.d.ts +4 -4
- package/store/types/mutable.d.ts +1 -1
- package/store/types/server.d.ts +1 -1
- package/types/index.d.ts +8 -8
- package/types/jsx.d.ts +2 -0
- package/types/reactive/array.d.ts +1 -1
- package/types/reactive/observable.d.ts +1 -1
- package/types/reactive/signal.d.ts +39 -33
- package/types/render/Suspense.d.ts +1 -1
- package/types/render/component.d.ts +1 -1
- package/types/render/flow.d.ts +2 -2
- package/types/render/index.d.ts +4 -4
- package/types/server/index.d.ts +3 -3
- package/types/server/reactive.d.ts +2 -2
- package/types/server/rendering.d.ts +8 -4
- package/universal/types/index.d.ts +1 -1
- package/web/dist/server.cjs +37 -26
- package/web/dist/server.js +37 -26
- package/web/types/client.d.ts +1 -1
- package/web/types/core.d.ts +2 -2
- package/web/types/index.d.ts +3 -3
- package/web/types/jsx.d.ts +1 -1
package/web/dist/server.cjs
CHANGED
|
@@ -233,7 +233,7 @@ function stringifyString(str) {
|
|
|
233
233
|
return result;
|
|
234
234
|
}
|
|
235
235
|
|
|
236
|
-
const REPLACE_SCRIPT = `function $df(e,t,d,l){d=document.getElementById(e),(l=document.getElementById("pl-"+e))&&l.replaceWith(...d.childNodes),d.remove(),_$HY.set(e,t
|
|
236
|
+
const REPLACE_SCRIPT = `function $df(e,t,d,l){d=document.getElementById(e),(l=document.getElementById("pl-"+e))&&l.replaceWith(...d.childNodes),d.remove(),_$HY.set(e,t)}`;
|
|
237
237
|
function renderToString(code, options = {}) {
|
|
238
238
|
let scripts = "";
|
|
239
239
|
solidJs.sharedConfig.context = {
|
|
@@ -271,8 +271,6 @@ function renderToStream(code, options = {}) {
|
|
|
271
271
|
onCompleteAll,
|
|
272
272
|
renderId
|
|
273
273
|
} = options;
|
|
274
|
-
const tmp = [];
|
|
275
|
-
const tasks = [];
|
|
276
274
|
const blockingResources = [];
|
|
277
275
|
const registry = new Map();
|
|
278
276
|
const dedupe = new WeakMap();
|
|
@@ -289,7 +287,7 @@ function renderToStream(code, options = {}) {
|
|
|
289
287
|
}
|
|
290
288
|
};
|
|
291
289
|
const pushTask = task => {
|
|
292
|
-
tasks
|
|
290
|
+
tasks += task + ";";
|
|
293
291
|
if (!scheduled && firstFlushed) {
|
|
294
292
|
Promise.resolve().then(writeTasks);
|
|
295
293
|
scheduled = true;
|
|
@@ -297,22 +295,25 @@ function renderToStream(code, options = {}) {
|
|
|
297
295
|
};
|
|
298
296
|
const writeTasks = () => {
|
|
299
297
|
if (tasks.length && !completed && firstFlushed) {
|
|
300
|
-
buffer.write(`<script${nonce ? ` nonce="${nonce}"` : ""}>${tasks
|
|
301
|
-
tasks
|
|
298
|
+
buffer.write(`<script${nonce ? ` nonce="${nonce}"` : ""}>${tasks}</script>`);
|
|
299
|
+
tasks = "";
|
|
302
300
|
}
|
|
303
301
|
scheduled = false;
|
|
304
302
|
};
|
|
303
|
+
let context;
|
|
305
304
|
let writable;
|
|
305
|
+
let tmp = "";
|
|
306
|
+
let tasks = "";
|
|
306
307
|
let firstFlushed = false;
|
|
307
308
|
let completed = false;
|
|
308
309
|
let scriptFlushed = false;
|
|
309
310
|
let scheduled = true;
|
|
310
311
|
let buffer = {
|
|
311
312
|
write(payload) {
|
|
312
|
-
tmp
|
|
313
|
+
tmp += payload;
|
|
313
314
|
}
|
|
314
315
|
};
|
|
315
|
-
solidJs.sharedConfig.context = {
|
|
316
|
+
solidJs.sharedConfig.context = context = {
|
|
316
317
|
id: renderId || "",
|
|
317
318
|
count: 0,
|
|
318
319
|
async: true,
|
|
@@ -320,10 +321,18 @@ function renderToStream(code, options = {}) {
|
|
|
320
321
|
suspense: {},
|
|
321
322
|
assets: [],
|
|
322
323
|
nonce,
|
|
324
|
+
replace(id, payloadFn) {
|
|
325
|
+
if (firstFlushed) return;
|
|
326
|
+
const placeholder = `<!${id}>`;
|
|
327
|
+
const first = html.indexOf(placeholder);
|
|
328
|
+
if (first === -1) return;
|
|
329
|
+
const last = html.indexOf(`<!/${id}>`, first + placeholder.length);
|
|
330
|
+
html = html.replace(html.slice(first, last + placeholder.length + 1), resolveSSRNode(payloadFn()));
|
|
331
|
+
},
|
|
323
332
|
writeResource(id, p, error, wait) {
|
|
324
|
-
if (error) return pushTask(
|
|
333
|
+
if (error) return pushTask(serializeSet(dedupe, id, p, serializeError));
|
|
325
334
|
if (!p || typeof p !== "object" || !("then" in p)) return pushTask(serializeSet(dedupe, id, p));
|
|
326
|
-
if (wait &&
|
|
335
|
+
if (!firstFlushed) wait && blockingResources.push(p);else pushTask(`_$HY.init("${id}")`);
|
|
327
336
|
p.then(d => {
|
|
328
337
|
!completed && pushTask(serializeSet(dedupe, id, d));
|
|
329
338
|
}).catch(() => {
|
|
@@ -333,7 +342,7 @@ function renderToStream(code, options = {}) {
|
|
|
333
342
|
registerFragment(key) {
|
|
334
343
|
if (!registry.has(key)) {
|
|
335
344
|
registry.set(key, []);
|
|
336
|
-
pushTask(`_$HY.init("${key}")`);
|
|
345
|
+
firstFlushed && pushTask(`_$HY.init("${key}")`);
|
|
337
346
|
}
|
|
338
347
|
return (value, error) => {
|
|
339
348
|
if (registry.has(key)) {
|
|
@@ -343,7 +352,7 @@ function renderToStream(code, options = {}) {
|
|
|
343
352
|
if ((value !== undefined || error) && !completed) {
|
|
344
353
|
if (!firstFlushed) {
|
|
345
354
|
Promise.resolve().then(() => html = replacePlaceholder(html, key, value !== undefined ? value : ""));
|
|
346
|
-
|
|
355
|
+
error && pushTask(serializeSet(dedupe, key, error, serializeError));
|
|
347
356
|
} else {
|
|
348
357
|
buffer.write(`<div hidden id="${key}">${value !== undefined ? value : " "}</div>`);
|
|
349
358
|
pushTask(`${keys.length ? keys.map(k => `_$HY.unset("${k}")`).join(";") + ";" : ""}$df("${key}"${error ? "," + serializeError(error) : ""})${!scriptFlushed ? ";" + REPLACE_SCRIPT : ""}`);
|
|
@@ -352,16 +361,20 @@ function renderToStream(code, options = {}) {
|
|
|
352
361
|
}
|
|
353
362
|
}
|
|
354
363
|
Promise.resolve().then(checkEnd);
|
|
355
|
-
return
|
|
364
|
+
return firstFlushed;
|
|
356
365
|
};
|
|
357
366
|
}
|
|
358
367
|
};
|
|
359
368
|
let html = resolveSSRNode(escape(code()));
|
|
360
369
|
function doShell() {
|
|
361
|
-
html = injectAssets(
|
|
362
|
-
|
|
370
|
+
html = injectAssets(context.assets, html);
|
|
371
|
+
for (const key in context.resources) {
|
|
372
|
+
if (!("data" in context.resources[key] || context.resources[key].ref[0].error)) pushTask(`_$HY.init("${key}")`);
|
|
373
|
+
}
|
|
374
|
+
for (const key of registry.keys()) pushTask(`_$HY.init("${key}")`);
|
|
375
|
+
if (tasks.length) html = injectScripts(html, tasks, nonce);
|
|
363
376
|
buffer.write(html);
|
|
364
|
-
tasks
|
|
377
|
+
tasks = "";
|
|
365
378
|
scheduled = false;
|
|
366
379
|
onCompleteShell && onCompleteShell({
|
|
367
380
|
write(v) {
|
|
@@ -373,9 +386,7 @@ function renderToStream(code, options = {}) {
|
|
|
373
386
|
then(fn) {
|
|
374
387
|
function complete() {
|
|
375
388
|
doShell();
|
|
376
|
-
|
|
377
|
-
for (let i = 0, len = tmp.length; i < len; i++) mapped += tmp[i];
|
|
378
|
-
fn(mapped);
|
|
389
|
+
fn(tmp);
|
|
379
390
|
}
|
|
380
391
|
if (onCompleteAll) {
|
|
381
392
|
ogComplete = onCompleteAll;
|
|
@@ -390,7 +401,7 @@ function renderToStream(code, options = {}) {
|
|
|
390
401
|
Promise.allSettled(blockingResources).then(() => {
|
|
391
402
|
doShell();
|
|
392
403
|
buffer = writable = w;
|
|
393
|
-
|
|
404
|
+
buffer.write(tmp);
|
|
394
405
|
firstFlushed = true;
|
|
395
406
|
if (completed) writable.end();else setTimeout(checkEnd);
|
|
396
407
|
});
|
|
@@ -411,7 +422,7 @@ function renderToStream(code, options = {}) {
|
|
|
411
422
|
writer.write(encoder.encode(payload));
|
|
412
423
|
}
|
|
413
424
|
};
|
|
414
|
-
|
|
425
|
+
buffer.write(tmp);
|
|
415
426
|
firstFlushed = true;
|
|
416
427
|
if (completed) writable.end();else setTimeout(checkEnd);
|
|
417
428
|
});
|
|
@@ -446,12 +457,12 @@ function NoHydration(props) {
|
|
|
446
457
|
function ssr(t, ...nodes) {
|
|
447
458
|
if (nodes.length) {
|
|
448
459
|
let result = "";
|
|
449
|
-
for (let i = 0; i <
|
|
460
|
+
for (let i = 0; i < nodes.length; i++) {
|
|
450
461
|
result += t[i];
|
|
451
462
|
const node = nodes[i];
|
|
452
463
|
if (node !== undefined) result += resolveSSRNode(node);
|
|
453
464
|
}
|
|
454
|
-
t = result;
|
|
465
|
+
t = result + t[nodes.length];
|
|
455
466
|
}
|
|
456
467
|
return {
|
|
457
468
|
t
|
|
@@ -572,7 +583,7 @@ function resolveSSRNode(node) {
|
|
|
572
583
|
for (let i = 0, len = node.length; i < len; i++) mapped += resolveSSRNode(node[i]);
|
|
573
584
|
return mapped;
|
|
574
585
|
}
|
|
575
|
-
if (t === "object") return
|
|
586
|
+
if (t === "object") return node.t;
|
|
576
587
|
if (t === "function") return resolveSSRNode(node());
|
|
577
588
|
return String(node);
|
|
578
589
|
}
|
|
@@ -624,11 +635,11 @@ function waitForFragments(registry, key) {
|
|
|
624
635
|
}
|
|
625
636
|
return false;
|
|
626
637
|
}
|
|
627
|
-
function serializeSet(registry, key, value) {
|
|
638
|
+
function serializeSet(registry, key, value, serializer = devalue) {
|
|
628
639
|
const exist = registry.get(value);
|
|
629
640
|
if (exist) return `_$HY.set("${key}", _$HY.r["${exist}"][0])`;
|
|
630
641
|
value !== null && typeof value === "object" && registry.set(value, key);
|
|
631
|
-
return `_$HY.set("${key}", ${
|
|
642
|
+
return `_$HY.set("${key}", ${serializer(value)})`;
|
|
632
643
|
}
|
|
633
644
|
function replacePlaceholder(html, key, value) {
|
|
634
645
|
const nextRegex = /(<[/]?span[^>]*>)/g;
|
package/web/dist/server.js
CHANGED
|
@@ -230,7 +230,7 @@ function stringifyString(str) {
|
|
|
230
230
|
return result;
|
|
231
231
|
}
|
|
232
232
|
|
|
233
|
-
const REPLACE_SCRIPT = `function $df(e,t,d,l){d=document.getElementById(e),(l=document.getElementById("pl-"+e))&&l.replaceWith(...d.childNodes),d.remove(),_$HY.set(e,t
|
|
233
|
+
const REPLACE_SCRIPT = `function $df(e,t,d,l){d=document.getElementById(e),(l=document.getElementById("pl-"+e))&&l.replaceWith(...d.childNodes),d.remove(),_$HY.set(e,t)}`;
|
|
234
234
|
function renderToString(code, options = {}) {
|
|
235
235
|
let scripts = "";
|
|
236
236
|
sharedConfig.context = {
|
|
@@ -268,8 +268,6 @@ function renderToStream(code, options = {}) {
|
|
|
268
268
|
onCompleteAll,
|
|
269
269
|
renderId
|
|
270
270
|
} = options;
|
|
271
|
-
const tmp = [];
|
|
272
|
-
const tasks = [];
|
|
273
271
|
const blockingResources = [];
|
|
274
272
|
const registry = new Map();
|
|
275
273
|
const dedupe = new WeakMap();
|
|
@@ -286,7 +284,7 @@ function renderToStream(code, options = {}) {
|
|
|
286
284
|
}
|
|
287
285
|
};
|
|
288
286
|
const pushTask = task => {
|
|
289
|
-
tasks
|
|
287
|
+
tasks += task + ";";
|
|
290
288
|
if (!scheduled && firstFlushed) {
|
|
291
289
|
Promise.resolve().then(writeTasks);
|
|
292
290
|
scheduled = true;
|
|
@@ -294,22 +292,25 @@ function renderToStream(code, options = {}) {
|
|
|
294
292
|
};
|
|
295
293
|
const writeTasks = () => {
|
|
296
294
|
if (tasks.length && !completed && firstFlushed) {
|
|
297
|
-
buffer.write(`<script${nonce ? ` nonce="${nonce}"` : ""}>${tasks
|
|
298
|
-
tasks
|
|
295
|
+
buffer.write(`<script${nonce ? ` nonce="${nonce}"` : ""}>${tasks}</script>`);
|
|
296
|
+
tasks = "";
|
|
299
297
|
}
|
|
300
298
|
scheduled = false;
|
|
301
299
|
};
|
|
300
|
+
let context;
|
|
302
301
|
let writable;
|
|
302
|
+
let tmp = "";
|
|
303
|
+
let tasks = "";
|
|
303
304
|
let firstFlushed = false;
|
|
304
305
|
let completed = false;
|
|
305
306
|
let scriptFlushed = false;
|
|
306
307
|
let scheduled = true;
|
|
307
308
|
let buffer = {
|
|
308
309
|
write(payload) {
|
|
309
|
-
tmp
|
|
310
|
+
tmp += payload;
|
|
310
311
|
}
|
|
311
312
|
};
|
|
312
|
-
sharedConfig.context = {
|
|
313
|
+
sharedConfig.context = context = {
|
|
313
314
|
id: renderId || "",
|
|
314
315
|
count: 0,
|
|
315
316
|
async: true,
|
|
@@ -317,10 +318,18 @@ function renderToStream(code, options = {}) {
|
|
|
317
318
|
suspense: {},
|
|
318
319
|
assets: [],
|
|
319
320
|
nonce,
|
|
321
|
+
replace(id, payloadFn) {
|
|
322
|
+
if (firstFlushed) return;
|
|
323
|
+
const placeholder = `<!${id}>`;
|
|
324
|
+
const first = html.indexOf(placeholder);
|
|
325
|
+
if (first === -1) return;
|
|
326
|
+
const last = html.indexOf(`<!/${id}>`, first + placeholder.length);
|
|
327
|
+
html = html.replace(html.slice(first, last + placeholder.length + 1), resolveSSRNode(payloadFn()));
|
|
328
|
+
},
|
|
320
329
|
writeResource(id, p, error, wait) {
|
|
321
|
-
if (error) return pushTask(
|
|
330
|
+
if (error) return pushTask(serializeSet(dedupe, id, p, serializeError));
|
|
322
331
|
if (!p || typeof p !== "object" || !("then" in p)) return pushTask(serializeSet(dedupe, id, p));
|
|
323
|
-
if (wait &&
|
|
332
|
+
if (!firstFlushed) wait && blockingResources.push(p);else pushTask(`_$HY.init("${id}")`);
|
|
324
333
|
p.then(d => {
|
|
325
334
|
!completed && pushTask(serializeSet(dedupe, id, d));
|
|
326
335
|
}).catch(() => {
|
|
@@ -330,7 +339,7 @@ function renderToStream(code, options = {}) {
|
|
|
330
339
|
registerFragment(key) {
|
|
331
340
|
if (!registry.has(key)) {
|
|
332
341
|
registry.set(key, []);
|
|
333
|
-
pushTask(`_$HY.init("${key}")`);
|
|
342
|
+
firstFlushed && pushTask(`_$HY.init("${key}")`);
|
|
334
343
|
}
|
|
335
344
|
return (value, error) => {
|
|
336
345
|
if (registry.has(key)) {
|
|
@@ -340,7 +349,7 @@ function renderToStream(code, options = {}) {
|
|
|
340
349
|
if ((value !== undefined || error) && !completed) {
|
|
341
350
|
if (!firstFlushed) {
|
|
342
351
|
Promise.resolve().then(() => html = replacePlaceholder(html, key, value !== undefined ? value : ""));
|
|
343
|
-
|
|
352
|
+
error && pushTask(serializeSet(dedupe, key, error, serializeError));
|
|
344
353
|
} else {
|
|
345
354
|
buffer.write(`<div hidden id="${key}">${value !== undefined ? value : " "}</div>`);
|
|
346
355
|
pushTask(`${keys.length ? keys.map(k => `_$HY.unset("${k}")`).join(";") + ";" : ""}$df("${key}"${error ? "," + serializeError(error) : ""})${!scriptFlushed ? ";" + REPLACE_SCRIPT : ""}`);
|
|
@@ -349,16 +358,20 @@ function renderToStream(code, options = {}) {
|
|
|
349
358
|
}
|
|
350
359
|
}
|
|
351
360
|
Promise.resolve().then(checkEnd);
|
|
352
|
-
return
|
|
361
|
+
return firstFlushed;
|
|
353
362
|
};
|
|
354
363
|
}
|
|
355
364
|
};
|
|
356
365
|
let html = resolveSSRNode(escape(code()));
|
|
357
366
|
function doShell() {
|
|
358
|
-
html = injectAssets(
|
|
359
|
-
|
|
367
|
+
html = injectAssets(context.assets, html);
|
|
368
|
+
for (const key in context.resources) {
|
|
369
|
+
if (!("data" in context.resources[key] || context.resources[key].ref[0].error)) pushTask(`_$HY.init("${key}")`);
|
|
370
|
+
}
|
|
371
|
+
for (const key of registry.keys()) pushTask(`_$HY.init("${key}")`);
|
|
372
|
+
if (tasks.length) html = injectScripts(html, tasks, nonce);
|
|
360
373
|
buffer.write(html);
|
|
361
|
-
tasks
|
|
374
|
+
tasks = "";
|
|
362
375
|
scheduled = false;
|
|
363
376
|
onCompleteShell && onCompleteShell({
|
|
364
377
|
write(v) {
|
|
@@ -370,9 +383,7 @@ function renderToStream(code, options = {}) {
|
|
|
370
383
|
then(fn) {
|
|
371
384
|
function complete() {
|
|
372
385
|
doShell();
|
|
373
|
-
|
|
374
|
-
for (let i = 0, len = tmp.length; i < len; i++) mapped += tmp[i];
|
|
375
|
-
fn(mapped);
|
|
386
|
+
fn(tmp);
|
|
376
387
|
}
|
|
377
388
|
if (onCompleteAll) {
|
|
378
389
|
ogComplete = onCompleteAll;
|
|
@@ -387,7 +398,7 @@ function renderToStream(code, options = {}) {
|
|
|
387
398
|
Promise.allSettled(blockingResources).then(() => {
|
|
388
399
|
doShell();
|
|
389
400
|
buffer = writable = w;
|
|
390
|
-
|
|
401
|
+
buffer.write(tmp);
|
|
391
402
|
firstFlushed = true;
|
|
392
403
|
if (completed) writable.end();else setTimeout(checkEnd);
|
|
393
404
|
});
|
|
@@ -408,7 +419,7 @@ function renderToStream(code, options = {}) {
|
|
|
408
419
|
writer.write(encoder.encode(payload));
|
|
409
420
|
}
|
|
410
421
|
};
|
|
411
|
-
|
|
422
|
+
buffer.write(tmp);
|
|
412
423
|
firstFlushed = true;
|
|
413
424
|
if (completed) writable.end();else setTimeout(checkEnd);
|
|
414
425
|
});
|
|
@@ -443,12 +454,12 @@ function NoHydration(props) {
|
|
|
443
454
|
function ssr(t, ...nodes) {
|
|
444
455
|
if (nodes.length) {
|
|
445
456
|
let result = "";
|
|
446
|
-
for (let i = 0; i <
|
|
457
|
+
for (let i = 0; i < nodes.length; i++) {
|
|
447
458
|
result += t[i];
|
|
448
459
|
const node = nodes[i];
|
|
449
460
|
if (node !== undefined) result += resolveSSRNode(node);
|
|
450
461
|
}
|
|
451
|
-
t = result;
|
|
462
|
+
t = result + t[nodes.length];
|
|
452
463
|
}
|
|
453
464
|
return {
|
|
454
465
|
t
|
|
@@ -569,7 +580,7 @@ function resolveSSRNode(node) {
|
|
|
569
580
|
for (let i = 0, len = node.length; i < len; i++) mapped += resolveSSRNode(node[i]);
|
|
570
581
|
return mapped;
|
|
571
582
|
}
|
|
572
|
-
if (t === "object") return
|
|
583
|
+
if (t === "object") return node.t;
|
|
573
584
|
if (t === "function") return resolveSSRNode(node());
|
|
574
585
|
return String(node);
|
|
575
586
|
}
|
|
@@ -621,11 +632,11 @@ function waitForFragments(registry, key) {
|
|
|
621
632
|
}
|
|
622
633
|
return false;
|
|
623
634
|
}
|
|
624
|
-
function serializeSet(registry, key, value) {
|
|
635
|
+
function serializeSet(registry, key, value, serializer = devalue) {
|
|
625
636
|
const exist = registry.get(value);
|
|
626
637
|
if (exist) return `_$HY.set("${key}", _$HY.r["${exist}"][0])`;
|
|
627
638
|
value !== null && typeof value === "object" && registry.set(value, key);
|
|
628
|
-
return `_$HY.set("${key}", ${
|
|
639
|
+
return `_$HY.set("${key}", ${serializer(value)})`;
|
|
629
640
|
}
|
|
630
641
|
function replacePlaceholder(html, key, value) {
|
|
631
642
|
const nextRegex = /(<[/]?span[^>]*>)/g;
|
package/web/types/client.d.ts
CHANGED
package/web/types/core.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { createRoot, createRenderEffect, createComponent, getOwner, sharedConfig } from "solid-js";
|
|
1
|
+
import { createRoot, createRenderEffect, createComponent, getOwner, sharedConfig, untrack } from "solid-js";
|
|
2
2
|
declare function memo<T>(fn: () => T, equals: boolean): import("solid-js").Accessor<T>;
|
|
3
|
-
export { getOwner, createComponent, createRoot as root, createRenderEffect as effect, memo, sharedConfig };
|
|
3
|
+
export { getOwner, createComponent, createRoot as root, createRenderEffect as effect, memo, sharedConfig, untrack };
|
package/web/types/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { hydrate as hydrateCore } from "./client";
|
|
1
|
+
import { hydrate as hydrateCore } from "./client.js";
|
|
2
2
|
import { JSX, Accessor, ComponentProps, ValidComponent } from "solid-js";
|
|
3
|
-
export * from "./client";
|
|
3
|
+
export * from "./client.js";
|
|
4
4
|
export { For, Show, Suspense, SuspenseList, Switch, Match, Index, ErrorBoundary, mergeProps } from "solid-js";
|
|
5
|
-
export * from "./server-mock";
|
|
5
|
+
export * from "./server-mock.js";
|
|
6
6
|
export declare const isServer = false;
|
|
7
7
|
export declare const hydrate: typeof hydrateCore;
|
|
8
8
|
/**
|
package/web/types/jsx.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { JSX } from "
|
|
1
|
+
export type { JSX } from "../../types/jsx.js";
|