solid-js 1.6.6 → 1.6.7
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 +39 -20
- package/dist/dev.js +39 -20
- package/dist/server.cjs +13 -2
- package/dist/server.js +13 -2
- package/dist/solid.cjs +34 -20
- package/dist/solid.js +34 -20
- package/h/jsx-runtime/types/jsx.d.ts +158 -128
- package/package.json +1 -1
- package/store/dist/dev.cjs +1 -2
- package/store/dist/dev.js +1 -2
- package/store/dist/store.cjs +1 -2
- package/store/dist/store.js +1 -2
- package/store/types/store.d.ts +27 -9
- package/types/index.d.ts +3 -3
- package/types/jsx.d.ts +158 -128
- package/types/reactive/signal.d.ts +4 -3
- package/types/render/component.d.ts +1 -1
- package/types/render/flow.d.ts +6 -6
- package/web/dist/server.cjs +4 -0
- package/web/dist/server.js +3 -1
package/dist/dev.cjs
CHANGED
|
@@ -159,7 +159,12 @@ function createRoot(fn, detachedOwner) {
|
|
|
159
159
|
const listener = Listener,
|
|
160
160
|
owner = Owner,
|
|
161
161
|
unowned = fn.length === 0,
|
|
162
|
-
root = unowned
|
|
162
|
+
root = unowned ? {
|
|
163
|
+
owned: null,
|
|
164
|
+
cleanups: null,
|
|
165
|
+
context: null,
|
|
166
|
+
owner: null
|
|
167
|
+
} : {
|
|
163
168
|
owned: null,
|
|
164
169
|
cleanups: null,
|
|
165
170
|
context: null,
|
|
@@ -468,6 +473,8 @@ function runWithOwner(o, fn) {
|
|
|
468
473
|
Owner = o;
|
|
469
474
|
try {
|
|
470
475
|
return runUpdates(fn, true);
|
|
476
|
+
} catch (err) {
|
|
477
|
+
handleError(err);
|
|
471
478
|
} finally {
|
|
472
479
|
Owner = prev;
|
|
473
480
|
}
|
|
@@ -1005,7 +1012,7 @@ function observable(input) {
|
|
|
1005
1012
|
if (!(observer instanceof Object) || observer == null) {
|
|
1006
1013
|
throw new TypeError("Expected the observer to be an object.");
|
|
1007
1014
|
}
|
|
1008
|
-
const handler = typeof observer ===
|
|
1015
|
+
const handler = typeof observer === "function" ? observer : observer.next && observer.next.bind(observer);
|
|
1009
1016
|
if (!handler) {
|
|
1010
1017
|
return {
|
|
1011
1018
|
unsubscribe() {}
|
|
@@ -1314,14 +1321,40 @@ function mergeProps(...sources) {
|
|
|
1314
1321
|
}
|
|
1315
1322
|
function splitProps(props, ...keys) {
|
|
1316
1323
|
const blocked = new Set(keys.flat());
|
|
1324
|
+
if ($PROXY in props) {
|
|
1325
|
+
const res = keys.map(k => {
|
|
1326
|
+
return new Proxy({
|
|
1327
|
+
get(property) {
|
|
1328
|
+
return k.includes(property) ? props[property] : undefined;
|
|
1329
|
+
},
|
|
1330
|
+
has(property) {
|
|
1331
|
+
return k.includes(property) && property in props;
|
|
1332
|
+
},
|
|
1333
|
+
keys() {
|
|
1334
|
+
return k.filter(property => property in props);
|
|
1335
|
+
}
|
|
1336
|
+
}, propTraps);
|
|
1337
|
+
});
|
|
1338
|
+
res.push(new Proxy({
|
|
1339
|
+
get(property) {
|
|
1340
|
+
return blocked.has(property) ? undefined : props[property];
|
|
1341
|
+
},
|
|
1342
|
+
has(property) {
|
|
1343
|
+
return blocked.has(property) ? false : property in props;
|
|
1344
|
+
},
|
|
1345
|
+
keys() {
|
|
1346
|
+
return Object.keys(props).filter(k => !blocked.has(k));
|
|
1347
|
+
}
|
|
1348
|
+
}, propTraps));
|
|
1349
|
+
return res;
|
|
1350
|
+
}
|
|
1317
1351
|
const descriptors = Object.getOwnPropertyDescriptors(props);
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
const res = keys.map(k => {
|
|
1352
|
+
keys.push(Object.keys(descriptors).filter(k => !blocked.has(k)));
|
|
1353
|
+
return keys.map(k => {
|
|
1321
1354
|
const clone = {};
|
|
1322
1355
|
for (let i = 0; i < k.length; i++) {
|
|
1323
1356
|
const key = k[i];
|
|
1324
|
-
if (!
|
|
1357
|
+
if (!(key in props)) continue;
|
|
1325
1358
|
Object.defineProperty(clone, key, descriptors[key] ? descriptors[key] : {
|
|
1326
1359
|
get() {
|
|
1327
1360
|
return props[key];
|
|
@@ -1334,20 +1367,6 @@ function splitProps(props, ...keys) {
|
|
|
1334
1367
|
}
|
|
1335
1368
|
return clone;
|
|
1336
1369
|
});
|
|
1337
|
-
if (isProxy) {
|
|
1338
|
-
res.push(new Proxy({
|
|
1339
|
-
get(property) {
|
|
1340
|
-
return blocked.has(property) ? undefined : props[property];
|
|
1341
|
-
},
|
|
1342
|
-
has(property) {
|
|
1343
|
-
return blocked.has(property) ? false : property in props;
|
|
1344
|
-
},
|
|
1345
|
-
keys() {
|
|
1346
|
-
return Object.keys(props).filter(k => !blocked.has(k));
|
|
1347
|
-
}
|
|
1348
|
-
}, propTraps));
|
|
1349
|
-
}
|
|
1350
|
-
return res;
|
|
1351
1370
|
}
|
|
1352
1371
|
function lazy(fn) {
|
|
1353
1372
|
let comp;
|
package/dist/dev.js
CHANGED
|
@@ -157,7 +157,12 @@ function createRoot(fn, detachedOwner) {
|
|
|
157
157
|
const listener = Listener,
|
|
158
158
|
owner = Owner,
|
|
159
159
|
unowned = fn.length === 0,
|
|
160
|
-
root = unowned
|
|
160
|
+
root = unowned ? {
|
|
161
|
+
owned: null,
|
|
162
|
+
cleanups: null,
|
|
163
|
+
context: null,
|
|
164
|
+
owner: null
|
|
165
|
+
} : {
|
|
161
166
|
owned: null,
|
|
162
167
|
cleanups: null,
|
|
163
168
|
context: null,
|
|
@@ -466,6 +471,8 @@ function runWithOwner(o, fn) {
|
|
|
466
471
|
Owner = o;
|
|
467
472
|
try {
|
|
468
473
|
return runUpdates(fn, true);
|
|
474
|
+
} catch (err) {
|
|
475
|
+
handleError(err);
|
|
469
476
|
} finally {
|
|
470
477
|
Owner = prev;
|
|
471
478
|
}
|
|
@@ -1003,7 +1010,7 @@ function observable(input) {
|
|
|
1003
1010
|
if (!(observer instanceof Object) || observer == null) {
|
|
1004
1011
|
throw new TypeError("Expected the observer to be an object.");
|
|
1005
1012
|
}
|
|
1006
|
-
const handler = typeof observer ===
|
|
1013
|
+
const handler = typeof observer === "function" ? observer : observer.next && observer.next.bind(observer);
|
|
1007
1014
|
if (!handler) {
|
|
1008
1015
|
return {
|
|
1009
1016
|
unsubscribe() {}
|
|
@@ -1312,14 +1319,40 @@ function mergeProps(...sources) {
|
|
|
1312
1319
|
}
|
|
1313
1320
|
function splitProps(props, ...keys) {
|
|
1314
1321
|
const blocked = new Set(keys.flat());
|
|
1322
|
+
if ($PROXY in props) {
|
|
1323
|
+
const res = keys.map(k => {
|
|
1324
|
+
return new Proxy({
|
|
1325
|
+
get(property) {
|
|
1326
|
+
return k.includes(property) ? props[property] : undefined;
|
|
1327
|
+
},
|
|
1328
|
+
has(property) {
|
|
1329
|
+
return k.includes(property) && property in props;
|
|
1330
|
+
},
|
|
1331
|
+
keys() {
|
|
1332
|
+
return k.filter(property => property in props);
|
|
1333
|
+
}
|
|
1334
|
+
}, propTraps);
|
|
1335
|
+
});
|
|
1336
|
+
res.push(new Proxy({
|
|
1337
|
+
get(property) {
|
|
1338
|
+
return blocked.has(property) ? undefined : props[property];
|
|
1339
|
+
},
|
|
1340
|
+
has(property) {
|
|
1341
|
+
return blocked.has(property) ? false : property in props;
|
|
1342
|
+
},
|
|
1343
|
+
keys() {
|
|
1344
|
+
return Object.keys(props).filter(k => !blocked.has(k));
|
|
1345
|
+
}
|
|
1346
|
+
}, propTraps));
|
|
1347
|
+
return res;
|
|
1348
|
+
}
|
|
1315
1349
|
const descriptors = Object.getOwnPropertyDescriptors(props);
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
const res = keys.map(k => {
|
|
1350
|
+
keys.push(Object.keys(descriptors).filter(k => !blocked.has(k)));
|
|
1351
|
+
return keys.map(k => {
|
|
1319
1352
|
const clone = {};
|
|
1320
1353
|
for (let i = 0; i < k.length; i++) {
|
|
1321
1354
|
const key = k[i];
|
|
1322
|
-
if (!
|
|
1355
|
+
if (!(key in props)) continue;
|
|
1323
1356
|
Object.defineProperty(clone, key, descriptors[key] ? descriptors[key] : {
|
|
1324
1357
|
get() {
|
|
1325
1358
|
return props[key];
|
|
@@ -1332,20 +1365,6 @@ function splitProps(props, ...keys) {
|
|
|
1332
1365
|
}
|
|
1333
1366
|
return clone;
|
|
1334
1367
|
});
|
|
1335
|
-
if (isProxy) {
|
|
1336
|
-
res.push(new Proxy({
|
|
1337
|
-
get(property) {
|
|
1338
|
-
return blocked.has(property) ? undefined : props[property];
|
|
1339
|
-
},
|
|
1340
|
-
has(property) {
|
|
1341
|
-
return blocked.has(property) ? false : property in props;
|
|
1342
|
-
},
|
|
1343
|
-
keys() {
|
|
1344
|
-
return Object.keys(props).filter(k => !blocked.has(k));
|
|
1345
|
-
}
|
|
1346
|
-
}, propTraps));
|
|
1347
|
-
}
|
|
1348
|
-
return res;
|
|
1349
1368
|
}
|
|
1350
1369
|
function lazy(fn) {
|
|
1351
1370
|
let comp;
|
package/dist/server.cjs
CHANGED
|
@@ -496,8 +496,15 @@ function createResource(source, fetcher, options = {}) {
|
|
|
496
496
|
function lazy(fn) {
|
|
497
497
|
let resolved;
|
|
498
498
|
let p;
|
|
499
|
-
let load =
|
|
499
|
+
let load = id => {
|
|
500
500
|
if (!p) {
|
|
501
|
+
if (id) {
|
|
502
|
+
let ref = sharedConfig.context.resources[id] = {
|
|
503
|
+
ref: p = fn()
|
|
504
|
+
};
|
|
505
|
+
p.then(mod => ref.data = resolved = mod.default);
|
|
506
|
+
return p;
|
|
507
|
+
}
|
|
501
508
|
p = fn();
|
|
502
509
|
p.then(mod => resolved = mod.default);
|
|
503
510
|
}
|
|
@@ -505,8 +512,12 @@ function lazy(fn) {
|
|
|
505
512
|
};
|
|
506
513
|
const contexts = new Set();
|
|
507
514
|
const wrap = props => {
|
|
508
|
-
load();
|
|
509
515
|
const id = sharedConfig.context.id.slice(0, -1);
|
|
516
|
+
let ref = sharedConfig.context.resources[id];
|
|
517
|
+
if (ref) {
|
|
518
|
+
p = ref.ref;
|
|
519
|
+
resolved = ref.data;
|
|
520
|
+
} else load(id);
|
|
510
521
|
if (resolved) return resolved(props);
|
|
511
522
|
const ctx = useContext(SuspenseContext);
|
|
512
523
|
const track = {
|
package/dist/server.js
CHANGED
|
@@ -494,8 +494,15 @@ function createResource(source, fetcher, options = {}) {
|
|
|
494
494
|
function lazy(fn) {
|
|
495
495
|
let resolved;
|
|
496
496
|
let p;
|
|
497
|
-
let load =
|
|
497
|
+
let load = id => {
|
|
498
498
|
if (!p) {
|
|
499
|
+
if (id) {
|
|
500
|
+
let ref = sharedConfig.context.resources[id] = {
|
|
501
|
+
ref: p = fn()
|
|
502
|
+
};
|
|
503
|
+
p.then(mod => ref.data = resolved = mod.default);
|
|
504
|
+
return p;
|
|
505
|
+
}
|
|
499
506
|
p = fn();
|
|
500
507
|
p.then(mod => resolved = mod.default);
|
|
501
508
|
}
|
|
@@ -503,8 +510,12 @@ function lazy(fn) {
|
|
|
503
510
|
};
|
|
504
511
|
const contexts = new Set();
|
|
505
512
|
const wrap = props => {
|
|
506
|
-
load();
|
|
507
513
|
const id = sharedConfig.context.id.slice(0, -1);
|
|
514
|
+
let ref = sharedConfig.context.resources[id];
|
|
515
|
+
if (ref) {
|
|
516
|
+
p = ref.ref;
|
|
517
|
+
resolved = ref.data;
|
|
518
|
+
} else load(id);
|
|
508
519
|
if (resolved) return resolved(props);
|
|
509
520
|
const ctx = useContext(SuspenseContext);
|
|
510
521
|
const track = {
|
package/dist/solid.cjs
CHANGED
|
@@ -158,7 +158,7 @@ function createRoot(fn, detachedOwner) {
|
|
|
158
158
|
const listener = Listener,
|
|
159
159
|
owner = Owner,
|
|
160
160
|
unowned = fn.length === 0,
|
|
161
|
-
root = unowned
|
|
161
|
+
root = unowned ? UNOWNED : {
|
|
162
162
|
owned: null,
|
|
163
163
|
cleanups: null,
|
|
164
164
|
context: null,
|
|
@@ -460,6 +460,8 @@ function runWithOwner(o, fn) {
|
|
|
460
460
|
Owner = o;
|
|
461
461
|
try {
|
|
462
462
|
return runUpdates(fn, true);
|
|
463
|
+
} catch (err) {
|
|
464
|
+
handleError(err);
|
|
463
465
|
} finally {
|
|
464
466
|
Owner = prev;
|
|
465
467
|
}
|
|
@@ -917,7 +919,7 @@ function observable(input) {
|
|
|
917
919
|
if (!(observer instanceof Object) || observer == null) {
|
|
918
920
|
throw new TypeError("Expected the observer to be an object.");
|
|
919
921
|
}
|
|
920
|
-
const handler = typeof observer ===
|
|
922
|
+
const handler = typeof observer === "function" ? observer : observer.next && observer.next.bind(observer);
|
|
921
923
|
if (!handler) {
|
|
922
924
|
return {
|
|
923
925
|
unsubscribe() {}
|
|
@@ -1222,14 +1224,40 @@ function mergeProps(...sources) {
|
|
|
1222
1224
|
}
|
|
1223
1225
|
function splitProps(props, ...keys) {
|
|
1224
1226
|
const blocked = new Set(keys.flat());
|
|
1227
|
+
if ($PROXY in props) {
|
|
1228
|
+
const res = keys.map(k => {
|
|
1229
|
+
return new Proxy({
|
|
1230
|
+
get(property) {
|
|
1231
|
+
return k.includes(property) ? props[property] : undefined;
|
|
1232
|
+
},
|
|
1233
|
+
has(property) {
|
|
1234
|
+
return k.includes(property) && property in props;
|
|
1235
|
+
},
|
|
1236
|
+
keys() {
|
|
1237
|
+
return k.filter(property => property in props);
|
|
1238
|
+
}
|
|
1239
|
+
}, propTraps);
|
|
1240
|
+
});
|
|
1241
|
+
res.push(new Proxy({
|
|
1242
|
+
get(property) {
|
|
1243
|
+
return blocked.has(property) ? undefined : props[property];
|
|
1244
|
+
},
|
|
1245
|
+
has(property) {
|
|
1246
|
+
return blocked.has(property) ? false : property in props;
|
|
1247
|
+
},
|
|
1248
|
+
keys() {
|
|
1249
|
+
return Object.keys(props).filter(k => !blocked.has(k));
|
|
1250
|
+
}
|
|
1251
|
+
}, propTraps));
|
|
1252
|
+
return res;
|
|
1253
|
+
}
|
|
1225
1254
|
const descriptors = Object.getOwnPropertyDescriptors(props);
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
const res = keys.map(k => {
|
|
1255
|
+
keys.push(Object.keys(descriptors).filter(k => !blocked.has(k)));
|
|
1256
|
+
return keys.map(k => {
|
|
1229
1257
|
const clone = {};
|
|
1230
1258
|
for (let i = 0; i < k.length; i++) {
|
|
1231
1259
|
const key = k[i];
|
|
1232
|
-
if (!
|
|
1260
|
+
if (!(key in props)) continue;
|
|
1233
1261
|
Object.defineProperty(clone, key, descriptors[key] ? descriptors[key] : {
|
|
1234
1262
|
get() {
|
|
1235
1263
|
return props[key];
|
|
@@ -1242,20 +1270,6 @@ function splitProps(props, ...keys) {
|
|
|
1242
1270
|
}
|
|
1243
1271
|
return clone;
|
|
1244
1272
|
});
|
|
1245
|
-
if (isProxy) {
|
|
1246
|
-
res.push(new Proxy({
|
|
1247
|
-
get(property) {
|
|
1248
|
-
return blocked.has(property) ? undefined : props[property];
|
|
1249
|
-
},
|
|
1250
|
-
has(property) {
|
|
1251
|
-
return blocked.has(property) ? false : property in props;
|
|
1252
|
-
},
|
|
1253
|
-
keys() {
|
|
1254
|
-
return Object.keys(props).filter(k => !blocked.has(k));
|
|
1255
|
-
}
|
|
1256
|
-
}, propTraps));
|
|
1257
|
-
}
|
|
1258
|
-
return res;
|
|
1259
1273
|
}
|
|
1260
1274
|
function lazy(fn) {
|
|
1261
1275
|
let comp;
|
package/dist/solid.js
CHANGED
|
@@ -156,7 +156,7 @@ function createRoot(fn, detachedOwner) {
|
|
|
156
156
|
const listener = Listener,
|
|
157
157
|
owner = Owner,
|
|
158
158
|
unowned = fn.length === 0,
|
|
159
|
-
root = unowned
|
|
159
|
+
root = unowned ? UNOWNED : {
|
|
160
160
|
owned: null,
|
|
161
161
|
cleanups: null,
|
|
162
162
|
context: null,
|
|
@@ -458,6 +458,8 @@ function runWithOwner(o, fn) {
|
|
|
458
458
|
Owner = o;
|
|
459
459
|
try {
|
|
460
460
|
return runUpdates(fn, true);
|
|
461
|
+
} catch (err) {
|
|
462
|
+
handleError(err);
|
|
461
463
|
} finally {
|
|
462
464
|
Owner = prev;
|
|
463
465
|
}
|
|
@@ -915,7 +917,7 @@ function observable(input) {
|
|
|
915
917
|
if (!(observer instanceof Object) || observer == null) {
|
|
916
918
|
throw new TypeError("Expected the observer to be an object.");
|
|
917
919
|
}
|
|
918
|
-
const handler = typeof observer ===
|
|
920
|
+
const handler = typeof observer === "function" ? observer : observer.next && observer.next.bind(observer);
|
|
919
921
|
if (!handler) {
|
|
920
922
|
return {
|
|
921
923
|
unsubscribe() {}
|
|
@@ -1220,14 +1222,40 @@ function mergeProps(...sources) {
|
|
|
1220
1222
|
}
|
|
1221
1223
|
function splitProps(props, ...keys) {
|
|
1222
1224
|
const blocked = new Set(keys.flat());
|
|
1225
|
+
if ($PROXY in props) {
|
|
1226
|
+
const res = keys.map(k => {
|
|
1227
|
+
return new Proxy({
|
|
1228
|
+
get(property) {
|
|
1229
|
+
return k.includes(property) ? props[property] : undefined;
|
|
1230
|
+
},
|
|
1231
|
+
has(property) {
|
|
1232
|
+
return k.includes(property) && property in props;
|
|
1233
|
+
},
|
|
1234
|
+
keys() {
|
|
1235
|
+
return k.filter(property => property in props);
|
|
1236
|
+
}
|
|
1237
|
+
}, propTraps);
|
|
1238
|
+
});
|
|
1239
|
+
res.push(new Proxy({
|
|
1240
|
+
get(property) {
|
|
1241
|
+
return blocked.has(property) ? undefined : props[property];
|
|
1242
|
+
},
|
|
1243
|
+
has(property) {
|
|
1244
|
+
return blocked.has(property) ? false : property in props;
|
|
1245
|
+
},
|
|
1246
|
+
keys() {
|
|
1247
|
+
return Object.keys(props).filter(k => !blocked.has(k));
|
|
1248
|
+
}
|
|
1249
|
+
}, propTraps));
|
|
1250
|
+
return res;
|
|
1251
|
+
}
|
|
1223
1252
|
const descriptors = Object.getOwnPropertyDescriptors(props);
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
const res = keys.map(k => {
|
|
1253
|
+
keys.push(Object.keys(descriptors).filter(k => !blocked.has(k)));
|
|
1254
|
+
return keys.map(k => {
|
|
1227
1255
|
const clone = {};
|
|
1228
1256
|
for (let i = 0; i < k.length; i++) {
|
|
1229
1257
|
const key = k[i];
|
|
1230
|
-
if (!
|
|
1258
|
+
if (!(key in props)) continue;
|
|
1231
1259
|
Object.defineProperty(clone, key, descriptors[key] ? descriptors[key] : {
|
|
1232
1260
|
get() {
|
|
1233
1261
|
return props[key];
|
|
@@ -1240,20 +1268,6 @@ function splitProps(props, ...keys) {
|
|
|
1240
1268
|
}
|
|
1241
1269
|
return clone;
|
|
1242
1270
|
});
|
|
1243
|
-
if (isProxy) {
|
|
1244
|
-
res.push(new Proxy({
|
|
1245
|
-
get(property) {
|
|
1246
|
-
return blocked.has(property) ? undefined : props[property];
|
|
1247
|
-
},
|
|
1248
|
-
has(property) {
|
|
1249
|
-
return blocked.has(property) ? false : property in props;
|
|
1250
|
-
},
|
|
1251
|
-
keys() {
|
|
1252
|
-
return Object.keys(props).filter(k => !blocked.has(k));
|
|
1253
|
-
}
|
|
1254
|
-
}, propTraps));
|
|
1255
|
-
}
|
|
1256
|
-
return res;
|
|
1257
1271
|
}
|
|
1258
1272
|
function lazy(fn) {
|
|
1259
1273
|
let comp;
|