@weaverse/next 0.1.0-alpha.17 → 0.1.0-alpha.19
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/{chunk-HRNAW6CA.mjs → chunk-LH6AAEIK.mjs} +14 -5
- package/dist/chunk-LH6AAEIK.mjs.map +1 -0
- package/dist/index.js +34 -9
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +25 -9
- package/dist/index.mjs.map +1 -1
- package/dist/server.js +85 -69
- package/dist/server.js.map +1 -1
- package/dist/server.mjs +11 -4
- package/dist/server.mjs.map +1 -1
- package/dist/types/item.d.ts +12 -6
- package/dist/types/item.d.ts.map +1 -1
- package/dist/types/request-info.d.ts +11 -0
- package/dist/types/request-info.d.ts.map +1 -1
- package/dist/types/server/normalize-page-url.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/item.ts +23 -7
- package/src/request-info.ts +31 -2
- package/src/server/normalize-page-url.ts +12 -4
- package/dist/chunk-HRNAW6CA.mjs.map +0 -1
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { buildWeaverseNextRequestInfo, DEFAULT_REVALIDATE_ENDPOINT, revalidateWeaverseNextItem, generateDataFromSchema } from './chunk-
|
|
2
|
-
export { DEFAULT_REVALIDATE_ENDPOINT, buildWeaverseNextRequestInfo, buildWeaverseNextRevalidateRouteContext, formatWeaverseNextSeoMetadata, generateDataFromSchema, getWeaverseNextSeoMetadata, revalidateWeaverseNextItem, runWeaverseComponentLoaders } from './chunk-
|
|
1
|
+
import { buildWeaverseNextRequestInfo, DEFAULT_REVALIDATE_ENDPOINT, revalidateWeaverseNextItem, generateDataFromSchema } from './chunk-LH6AAEIK.mjs';
|
|
2
|
+
export { DEFAULT_REVALIDATE_ENDPOINT, buildWeaverseNextRequestInfo, buildWeaverseNextRevalidateRouteContext, formatWeaverseNextSeoMetadata, generateDataFromSchema, getWeaverseNextSeoMetadata, revalidateWeaverseNextItem, runWeaverseComponentLoaders } from './chunk-LH6AAEIK.mjs';
|
|
3
3
|
import { WeaverseRoot, Weaverse, WeaverseItemStore, useSafeExternalStore } from '@weaverse/react';
|
|
4
4
|
export { isBrowser, isIframe, useChildInstances, useItemInstance, useParentInstance, useWeaverse } from '@weaverse/react';
|
|
5
5
|
import { createSchema } from '@weaverse/schema';
|
|
@@ -44,15 +44,31 @@ var WeaverseNextItem = class extends WeaverseItemStore {
|
|
|
44
44
|
/**
|
|
45
45
|
* Flatten nested `data` on updates exactly like the constructor does. Core's
|
|
46
46
|
* `initProject()` calls `setData(item)` when a new runtime serves a page
|
|
47
|
-
* whose item instances already exist (e.g. locale/client navigation)
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
*
|
|
47
|
+
* whose item instances already exist (e.g. locale/client navigation).
|
|
48
|
+
*
|
|
49
|
+
* A complete serialized item (it carries `id` and `type`; core's
|
|
50
|
+
* `initProject()` always passes one) replaces the store the way the
|
|
51
|
+
* constructor builds it: the schema defaults of the item's own `type` — the
|
|
52
|
+
* Builder can replace a section in place, keeping its id — then the item's
|
|
53
|
+
* settings. A payload omits a setting — or the whole optional `data` — when
|
|
54
|
+
* its value equals the schema default, so merging into the previous store
|
|
55
|
+
* would keep the previous locale's value visible. Partial updates still
|
|
56
|
+
* merge. Either way the `_store` ref changes, which invalidates the memoized
|
|
57
|
+
* snapshot below. The subscriber emit is queued instead of fired when a
|
|
58
|
+
* render-phase deferral is active (see `collectDeferredItemUpdates`).
|
|
53
59
|
*/
|
|
54
60
|
setData = (update) => {
|
|
55
|
-
|
|
61
|
+
if ("id" in update && "type" in update) {
|
|
62
|
+
let { data, type } = update;
|
|
63
|
+
let schema = this.weaverse.elementRegistry.get(type)?.schema;
|
|
64
|
+
this._store = {
|
|
65
|
+
...generateDataFromSchema(schema),
|
|
66
|
+
...data === void 0 ? {} : { data },
|
|
67
|
+
...flattenItemData(update)
|
|
68
|
+
};
|
|
69
|
+
} else {
|
|
70
|
+
this.data = flattenItemData(update);
|
|
71
|
+
}
|
|
56
72
|
if (deferredItemUpdates) {
|
|
57
73
|
deferredItemUpdates.add(this);
|
|
58
74
|
} else {
|