solid-js 1.8.20 → 1.8.22
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/README.md +3 -3
- package/dist/dev.cjs +6 -4
- package/dist/dev.js +325 -564
- package/dist/server.js +74 -168
- package/dist/solid.cjs +6 -4
- package/dist/solid.js +283 -491
- package/h/dist/h.cjs +1 -1
- package/h/dist/h.js +9 -38
- package/h/jsx-runtime/dist/jsx.js +1 -1
- package/h/jsx-runtime/types/index.d.ts +8 -11
- package/h/jsx-runtime/types/jsx.d.ts +2 -0
- package/h/types/hyperscript.d.ts +11 -11
- package/html/dist/html.js +94 -216
- package/html/types/lit.d.ts +33 -47
- package/package.json +1 -1
- package/store/dist/dev.js +43 -122
- package/store/dist/server.js +8 -19
- package/store/dist/store.js +40 -113
- package/store/types/index.d.ts +7 -21
- package/store/types/modifiers.d.ts +3 -6
- package/store/types/mutable.d.ts +2 -5
- package/store/types/server.d.ts +4 -12
- package/store/types/store.d.ts +61 -218
- package/types/index.d.ts +10 -75
- package/types/jsx.d.ts +8 -18
- package/types/reactive/array.d.ts +4 -12
- package/types/reactive/observable.d.ts +17 -25
- package/types/reactive/scheduler.d.ts +6 -9
- package/types/reactive/signal.d.ts +142 -233
- package/types/render/Suspense.d.ts +5 -5
- package/types/render/component.d.ts +33 -64
- package/types/render/flow.d.ts +31 -43
- package/types/render/hydration.d.ts +15 -15
- package/types/server/index.d.ts +2 -57
- package/types/server/reactive.d.ts +42 -73
- package/types/server/rendering.d.ts +98 -169
- package/universal/dist/dev.js +12 -28
- package/universal/dist/universal.js +12 -28
- package/universal/types/index.d.ts +1 -3
- package/universal/types/universal.d.ts +1 -0
- package/web/dist/dev.cjs +1 -1
- package/web/dist/dev.js +84 -626
- package/web/dist/server.js +96 -210
- package/web/dist/web.cjs +1 -1
- package/web/dist/web.js +82 -617
- package/web/storage/dist/storage.js +3 -3
- package/web/types/client.d.ts +2 -2
- package/web/types/core.d.ts +1 -10
- package/web/types/index.d.ts +10 -27
- package/web/types/server-mock.d.ts +32 -47
package/README.md
CHANGED
|
@@ -30,7 +30,7 @@ Solid is a declarative JavaScript library for creating user interfaces. Instead
|
|
|
30
30
|
- A growing community and ecosystem with active core team support
|
|
31
31
|
|
|
32
32
|
<details>
|
|
33
|
-
|
|
33
|
+
|
|
34
34
|
<summary>Quick Start</summary>
|
|
35
35
|
|
|
36
36
|
You can get started with a simple app by running the following in your terminal:
|
|
@@ -81,7 +81,7 @@ For TypeScript to work, remember to set your `.tsconfig` to handle Solid's JSX:
|
|
|
81
81
|
|
|
82
82
|
### Performant
|
|
83
83
|
|
|
84
|
-
Meticulously engineered for performance and with half a decade of research behind it, Solid's performance is almost indistinguishable from optimized vanilla JavaScript (See Solid on the [JS Framework Benchmark](https://
|
|
84
|
+
Meticulously engineered for performance and with half a decade of research behind it, Solid's performance is almost indistinguishable from optimized vanilla JavaScript (See Solid on the [JS Framework Benchmark](https://krausest.github.io/js-framework-benchmark/current.html)). Solid is [small](https://bundlephobia.com/package/solid-js@1.3.15) and completely tree-shakable, and [fast](https://levelup.gitconnected.com/how-we-wrote-the-fastest-javascript-ui-framework-again-db097ddd99b6) when rendering on the server, too. Whether you're writing a fully client-rendered SPA or a server-rendered app, your users see it faster than ever. ([Read more about Solid's performance](https://dev.to/ryansolid/thinking-granular-how-is-solidjs-so-performant-4g37) from the library's creator.)
|
|
85
85
|
|
|
86
86
|
### Powerful
|
|
87
87
|
|
|
@@ -93,7 +93,7 @@ Do more with less: use simple, composable primitives without hidden rules and go
|
|
|
93
93
|
|
|
94
94
|
### Productive
|
|
95
95
|
|
|
96
|
-
Solid is built on established tools like JSX and TypeScript and integrates with the Vite ecosystem. Solid's bare-metal, minimal abstractions give you direct access to the DOM, making it easy to use your favorite native JavaScript libraries like D3. And the Solid ecosystem is growing fast, with [custom primitives](https://github.com/solidjs-community/solid-primitives), [component libraries](https://hope-ui
|
|
96
|
+
Solid is built on established tools like JSX and TypeScript and integrates with the Vite ecosystem. Solid's bare-metal, minimal abstractions give you direct access to the DOM, making it easy to use your favorite native JavaScript libraries like D3. And the Solid ecosystem is growing fast, with [custom primitives](https://github.com/solidjs-community/solid-primitives), [component libraries](https://github.com/hope-ui/hope-ui), and build-time utilities that let you [write Solid code in new ways](https://github.com/LXSMNSYC/solid-labels).
|
|
97
97
|
|
|
98
98
|
<details>
|
|
99
99
|
<summary>Show Me!</summary>
|
package/dist/dev.cjs
CHANGED
|
@@ -119,6 +119,7 @@ function workLoop(hasTimeRemaining, initialTime) {
|
|
|
119
119
|
const sharedConfig = {
|
|
120
120
|
context: undefined,
|
|
121
121
|
registry: undefined,
|
|
122
|
+
effects: undefined,
|
|
122
123
|
done: false,
|
|
123
124
|
getContextId() {
|
|
124
125
|
return getContextId(this.context.count);
|
|
@@ -912,13 +913,14 @@ function runUserEffects(queue) {
|
|
|
912
913
|
sharedConfig.effects || (sharedConfig.effects = []);
|
|
913
914
|
sharedConfig.effects.push(...queue.slice(0, userLength));
|
|
914
915
|
return;
|
|
915
|
-
} else if (sharedConfig.effects) {
|
|
916
|
-
queue = [...sharedConfig.effects, ...queue];
|
|
917
|
-
userLength += sharedConfig.effects.length;
|
|
918
|
-
delete sharedConfig.effects;
|
|
919
916
|
}
|
|
920
917
|
setHydrateContext();
|
|
921
918
|
}
|
|
919
|
+
if (sharedConfig.effects && (sharedConfig.done || !sharedConfig.count)) {
|
|
920
|
+
queue = [...sharedConfig.effects, ...queue];
|
|
921
|
+
userLength += sharedConfig.effects.length;
|
|
922
|
+
delete sharedConfig.effects;
|
|
923
|
+
}
|
|
922
924
|
for (i = 0; i < userLength; i++) runTop(queue[i]);
|
|
923
925
|
}
|
|
924
926
|
function lookUpstream(node, ignore) {
|