@vibes.diy/vibe-runtime 3.0.0 → 3.0.1
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/index.js.map +1 -1
- package/mount-vibes.js +12 -11
- package/mount-vibes.js.map +1 -1
- package/package.json +3 -3
- package/render-vibes.d.ts +2 -0
- package/render-vibes.js +12 -0
- package/render-vibes.js.map +1 -0
- package/vibe-tree.d.ts +3 -0
- package/vibe-tree.js +10 -0
- package/vibe-tree.js.map +1 -0
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../jsr/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../jsr/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AAIjC,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAuB,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAE,SAAS,EAAwB,MAAM,iBAAiB,CAAC;AAClE,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,eAAe,EACf,eAAe,IAAI,QAAQ,GAO5B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,aAAa,EACb,SAAS,EACT,aAAa,GAOd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAuD,MAAM,eAAe,CAAC;AAC7F,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,2BAA2B,GAE5B,MAAM,kBAAkB,CAAC"}
|
package/mount-vibes.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { createRoot } from "react-dom/client";
|
|
1
|
+
import { createRoot, hydrateRoot } from "react-dom/client";
|
|
3
2
|
import { type } from "arktype";
|
|
4
3
|
import { vibeMountParams } from "./vibe.js";
|
|
5
|
-
import {
|
|
4
|
+
import { buildVibeTree } from "./vibe-tree.js";
|
|
6
5
|
let activeRoot;
|
|
7
6
|
let activeProps;
|
|
8
7
|
export function unmountVibe() {
|
|
9
8
|
if (activeRoot) {
|
|
10
|
-
activeRoot
|
|
9
|
+
const root = activeRoot;
|
|
11
10
|
activeRoot = undefined;
|
|
11
|
+
root.unmount();
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
export function getActiveProps() {
|
|
@@ -23,15 +23,16 @@ export function mountVibe(comps, iprops) {
|
|
|
23
23
|
if (!element || element.length !== 1) {
|
|
24
24
|
throw new Error(`Can't find the dom element root`);
|
|
25
25
|
}
|
|
26
|
+
activeProps = iprops;
|
|
27
|
+
const providerElement = buildVibeTree(comps, props);
|
|
26
28
|
if (activeRoot === undefined) {
|
|
27
|
-
|
|
29
|
+
const container = element[0];
|
|
30
|
+
if (container.hasChildNodes()) {
|
|
31
|
+
activeRoot = hydrateRoot(container, providerElement);
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
activeRoot = createRoot(container);
|
|
28
35
|
}
|
|
29
|
-
activeProps = iprops;
|
|
30
|
-
const vibeElement = React.createElement(Fragment, null, ...comps.map((Comp, index) => React.createElement(Comp, { key: index })));
|
|
31
|
-
const providerElement = React.createElement(VibeContextProvider, {
|
|
32
|
-
mountParams: { ...props },
|
|
33
|
-
children: vibeElement,
|
|
34
|
-
});
|
|
35
36
|
activeRoot.render(providerElement);
|
|
36
37
|
}
|
|
37
38
|
//# sourceMappingURL=mount-vibes.js.map
|
package/mount-vibes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mount-vibes.js","sourceRoot":"","sources":["../jsr/mount-vibes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mount-vibes.js","sourceRoot":"","sources":["../jsr/mount-vibes.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,UAAU,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,IAAI,UAA4B,CAAC;AACjC,IAAI,WAAoB,CAAC;AAEzB,MAAM,UAAU,WAAW;IACzB,IAAI,UAAU,EAAE,CAAC;QAKf,MAAM,IAAI,GAAG,UAAU,CAAC;QACxB,UAAU,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO,WAAW,CAAC;AACrB,CAAC;AAGD,MAAM,UAAU,SAAS,CACvB,KAA0B,EAC1B,MAAe;IAEf,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,KAAK,YAAY,IAAI,CAAC,MAAM,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,OAAO,GAAG,QAAQ,CAAC,sBAAsB,CAAC,oBAAoB,CAAC,CAAC;IACtE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,CAAC;IACD,WAAW,GAAG,MAAM,CAAC;IAIrB,MAAM,eAAe,GAAG,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAEpD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAM7B,IAAI,SAAS,CAAC,aAAa,EAAE,EAAE,CAAC;YAC9B,UAAU,GAAG,WAAW,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QACD,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IAMD,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;AACrC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vibes.diy/vibe-runtime",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
},
|
|
9
9
|
"dependencies": {
|
|
10
10
|
"@adviser/cement": "~0.5.34",
|
|
11
|
-
"@vibes.diy/base": "3.0.
|
|
12
|
-
"@vibes.diy/vibe-types": "3.0.
|
|
11
|
+
"@vibes.diy/base": "3.0.1",
|
|
12
|
+
"@vibes.diy/vibe-types": "3.0.1",
|
|
13
13
|
"arktype": "~2.2.1",
|
|
14
14
|
"charwise": "~3.0.1",
|
|
15
15
|
"react": "~19.2.7",
|
package/render-vibes.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type } from "arktype";
|
|
2
|
+
import { renderToString } from "react-dom/server";
|
|
3
|
+
import { vibeMountParams } from "./vibe.js";
|
|
4
|
+
import { buildVibeTree } from "./vibe-tree.js";
|
|
5
|
+
export function renderVibeToString(comps, iprops) {
|
|
6
|
+
const props = vibeMountParams(iprops);
|
|
7
|
+
if (props instanceof type.errors) {
|
|
8
|
+
throw new Error(`Invalid mount params: ${props.summary}`);
|
|
9
|
+
}
|
|
10
|
+
return renderToString(buildVibeTree(comps, props));
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=render-vibes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-vibes.js","sourceRoot":"","sources":["../jsr/render-vibes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAmB/C,MAAM,UAAU,kBAAkB,CAAC,KAA0B,EAAE,MAAe;IAC5E,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,KAAK,YAAY,IAAI,CAAC,MAAM,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,cAAc,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AACrD,CAAC"}
|
package/vibe-tree.d.ts
ADDED
package/vibe-tree.js
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React, { Fragment } from "react";
|
|
2
|
+
import { VibeContextProvider } from "./VibeContext.js";
|
|
3
|
+
export function buildVibeTree(comps, props) {
|
|
4
|
+
const vibeElement = React.createElement(Fragment, null, ...comps.map((Comp, index) => React.createElement(Comp, { key: index })));
|
|
5
|
+
return React.createElement(VibeContextProvider, {
|
|
6
|
+
mountParams: { ...props },
|
|
7
|
+
children: vibeElement,
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=vibe-tree.js.map
|
package/vibe-tree.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vibe-tree.js","sourceRoot":"","sources":["../jsr/vibe-tree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAA6C,MAAM,OAAO,CAAC;AAEnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAgBvD,MAAM,UAAU,aAAa,CAAC,KAA0B,EAAE,KAAsB;IAC9E,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAClI,OAAO,KAAK,CAAC,aAAa,CAAC,mBAAmB,EAAE;QAC9C,WAAW,EAAE,EAAE,GAAG,KAAK,EAAE;QACzB,QAAQ,EAAE,WAAW;KACtB,CAAC,CAAC;AACL,CAAC"}
|