@weaverse/next 0.1.0-alpha.2 → 0.1.0-alpha.20
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 +586 -123
- package/dist/chunk-LH6AAEIK.mjs +326 -0
- package/dist/chunk-LH6AAEIK.mjs.map +1 -0
- package/dist/index.js +784 -60
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +588 -58
- package/dist/index.mjs.map +1 -1
- package/dist/server.js +537 -76
- package/dist/server.js.map +1 -1
- package/dist/server.mjs +363 -27
- package/dist/server.mjs.map +1 -1
- package/dist/types/client.d.ts +16 -0
- package/dist/types/client.d.ts.map +1 -0
- package/dist/types/hooks.d.ts +20 -0
- package/dist/types/hooks.d.ts.map +1 -0
- package/dist/types/index.d.ts +34 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/item.d.ts +60 -0
- package/dist/types/item.d.ts.map +1 -0
- package/dist/types/loader.d.ts +25 -0
- package/dist/types/loader.d.ts.map +1 -0
- package/dist/types/main.d.ts +11 -0
- package/dist/types/main.d.ts.map +1 -0
- package/dist/types/provider.d.ts +82 -0
- package/dist/types/provider.d.ts.map +1 -0
- package/dist/types/registry.d.ts +15 -0
- package/dist/types/registry.d.ts.map +1 -0
- package/dist/types/renderer.d.ts +21 -0
- package/dist/types/renderer.d.ts.map +1 -0
- package/dist/types/request-info.d.ts +19 -0
- package/dist/types/request-info.d.ts.map +1 -0
- package/dist/types/revalidate-item.d.ts +82 -0
- package/dist/types/revalidate-item.d.ts.map +1 -0
- package/dist/types/root-provider.d.ts +62 -0
- package/dist/types/root-provider.d.ts.map +1 -0
- package/dist/types/runtime.d.ts +113 -0
- package/dist/types/runtime.d.ts.map +1 -0
- package/dist/types/seo.d.ts +55 -0
- package/dist/types/seo.d.ts.map +1 -0
- package/dist/types/server/configs.d.ts +27 -0
- package/dist/types/server/configs.d.ts.map +1 -0
- package/dist/types/server/normalize-page-url.d.ts +19 -0
- package/dist/types/server/normalize-page-url.d.ts.map +1 -0
- package/dist/types/server/revalidate-handler.d.ts +55 -0
- package/dist/types/server/revalidate-handler.d.ts.map +1 -0
- package/dist/types/server/server-client.d.ts +21 -0
- package/dist/types/server/server-client.d.ts.map +1 -0
- package/dist/types/server.d.ts +19 -0
- package/dist/types/server.d.ts.map +1 -0
- package/dist/types/studio-bridge.d.ts +16 -0
- package/dist/types/studio-bridge.d.ts.map +1 -0
- package/dist/types/studio-connect.d.ts +27 -0
- package/dist/types/studio-connect.d.ts.map +1 -0
- package/dist/types/studio-router.d.ts +50 -0
- package/dist/types/studio-router.d.ts.map +1 -0
- package/dist/types/studio-script-src.d.ts +12 -0
- package/dist/types/studio-script-src.d.ts.map +1 -0
- package/dist/types/theme-settings-store.d.ts +18 -0
- package/dist/types/theme-settings-store.d.ts.map +1 -0
- package/dist/types/translation-context.d.ts +156 -0
- package/dist/types/translation-context.d.ts.map +1 -0
- package/dist/types/translation-store.d.ts +44 -0
- package/dist/types/translation-store.d.ts.map +1 -0
- package/dist/types/types.d.ts +665 -0
- package/dist/types/types.d.ts.map +1 -0
- package/dist/types/use-weaverse-next-studio.d.ts +34 -0
- package/dist/types/use-weaverse-next-studio.d.ts.map +1 -0
- package/dist/types/utils.d.ts +12 -0
- package/dist/types/utils.d.ts.map +1 -0
- package/package.json +12 -8
- package/src/client.ts +102 -0
- package/src/hooks.ts +50 -0
- package/src/index.ts +153 -0
- package/src/item.ts +167 -0
- package/src/loader.ts +135 -0
- package/src/main.tsx +45 -0
- package/src/provider.tsx +225 -0
- package/src/registry.ts +63 -0
- package/src/renderer.tsx +100 -0
- package/src/request-info.ts +124 -0
- package/src/revalidate-item.ts +211 -0
- package/src/root-provider.tsx +182 -0
- package/src/runtime.ts +555 -0
- package/src/seo.ts +157 -0
- package/src/server/configs.ts +178 -0
- package/src/server/normalize-page-url.ts +73 -0
- package/src/server/revalidate-handler.ts +357 -0
- package/src/server/server-client.ts +728 -0
- package/src/server.ts +67 -0
- package/src/studio-bridge.tsx +82 -0
- package/src/studio-connect.tsx +88 -0
- package/src/studio-router.ts +85 -0
- package/src/studio-script-src.ts +128 -0
- package/src/theme-settings-store.ts +47 -0
- package/src/translation-context.tsx +299 -0
- package/src/translation-store.ts +69 -0
- package/src/types.ts +753 -0
- package/src/use-weaverse-next-studio.tsx +106 -0
- package/src/utils.ts +37 -0
- package/dist/chunk-SS6QUKYY.mjs +0 -149
- package/dist/chunk-SS6QUKYY.mjs.map +0 -1
- package/dist/index.d.mts +0 -250
- package/dist/index.d.ts +0 -250
- package/dist/server.d.mts +0 -60
- package/dist/server.d.ts +0 -60
- package/dist/types-DvEeLX6L.d.mts +0 -321
- package/dist/types-DvEeLX6L.d.ts +0 -321
package/dist/index.d.ts
DELETED
|
@@ -1,250 +0,0 @@
|
|
|
1
|
-
import { Weaverse } from '@weaverse/react';
|
|
2
|
-
export { isBrowser, isIframe, useChildInstances, useItemInstance, useParentInstance, useWeaverse } from '@weaverse/react';
|
|
3
|
-
export { InspectorGroup, PageType, SchemaType, createSchema } from '@weaverse/schema';
|
|
4
|
-
import { d as WeaverseNextClientConfig, c as WeaverseNextClient, e as WeaverseNextCommerceContext, q as WeaverseNextRequestContext, n as WeaverseNextLoaderData, r as WeaverseNextRequestInfo, t as WeaverseNextRuntimeInternal, s as WeaverseNextRuntimeConfig, A as WeaverseNextThemeSettingsStore } from './types-DvEeLX6L.js';
|
|
5
|
-
export { W as WeaverseCollection, f as WeaverseNextComponent, g as WeaverseNextComponentData, h as WeaverseNextComponentLoaderArgs, i as WeaverseNextComponentProps, l as WeaverseNextI18n, m as WeaverseNextLoadPageInput, o as WeaverseNextPageData, x as WeaverseNextStorefront, B as WeaverseProduct } from './types-DvEeLX6L.js';
|
|
6
|
-
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
7
|
-
import * as react from 'react';
|
|
8
|
-
import { ReactNode } from 'react';
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Create a {@link WeaverseNextClient} from explicit config.
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* ```ts
|
|
15
|
-
* let client = createWeaverseNextClient({
|
|
16
|
-
* projectId: process.env.WEAVERSE_PROJECT_ID!,
|
|
17
|
-
* components,
|
|
18
|
-
* commerce: { storefront },
|
|
19
|
-
* fetchPage: async ({ type, handle }) => fetchWeaversePage({ type, handle }),
|
|
20
|
-
* })
|
|
21
|
-
* ```
|
|
22
|
-
*/
|
|
23
|
-
declare function createWeaverseNextClient(config: WeaverseNextClientConfig): WeaverseNextClient;
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Read explicit root/global data passed to the provider. Next-native
|
|
27
|
-
* replacement for `useRouteLoaderData('root')`.
|
|
28
|
-
*/
|
|
29
|
-
declare function useWeaverseRootData<T = unknown>(): T;
|
|
30
|
-
/**
|
|
31
|
-
* Read explicit page/route commerce data passed to the provider. Next-native
|
|
32
|
-
* replacement for section-level `useLoaderData()`.
|
|
33
|
-
*/
|
|
34
|
-
declare function useWeaversePageData<T = unknown>(): T;
|
|
35
|
-
/** Read the app-provided commerce context (storefront/cart/customer). */
|
|
36
|
-
declare function useWeaverseCommerce<T = WeaverseNextCommerceContext>(): T;
|
|
37
|
-
/**
|
|
38
|
-
* Read live Weaverse theme settings. The Studio bridge updates the provider's
|
|
39
|
-
* external store via `updateThemeSettings`, so components re-render during live
|
|
40
|
-
* design-mode edits.
|
|
41
|
-
*/
|
|
42
|
-
declare function useThemeSettings<T = Record<string, unknown>>(): T;
|
|
43
|
-
|
|
44
|
-
interface RunComponentLoadersArgs {
|
|
45
|
-
client: WeaverseNextClient;
|
|
46
|
-
commerce?: WeaverseNextCommerceContext;
|
|
47
|
-
context?: WeaverseNextRequestContext;
|
|
48
|
-
/** Page payload to walk; defaults to `client.data`. */
|
|
49
|
-
data?: WeaverseNextLoaderData | null;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Walk a serialized page tree and run each registered component's `loader`,
|
|
53
|
-
* attaching the result to the item as `loaderData`.
|
|
54
|
-
*
|
|
55
|
-
* Loaders receive explicit `commerce.storefront` (and `weaverse.storefront` as
|
|
56
|
-
* a compatibility alias via the client). Children are walked recursively when
|
|
57
|
-
* they are inline item objects; flat `items` arrays are covered by the
|
|
58
|
-
* top-level walk.
|
|
59
|
-
*
|
|
60
|
-
* @returns a cloned `data` object with `loaderData` attached to cloned items.
|
|
61
|
-
*/
|
|
62
|
-
declare function runWeaverseComponentLoaders(args: RunComponentLoadersArgs): Promise<WeaverseNextLoaderData | null>;
|
|
63
|
-
|
|
64
|
-
interface WeaverseNextProviderProps {
|
|
65
|
-
children: ReactNode;
|
|
66
|
-
client?: WeaverseNextClient;
|
|
67
|
-
/** App-provided commerce context (storefront/cart/customer). */
|
|
68
|
-
commerce?: WeaverseNextCommerceContext;
|
|
69
|
-
/** Explicit page/route commerce data (replaces section-level `useLoaderData`). */
|
|
70
|
-
pageData?: unknown;
|
|
71
|
-
/** Explicit root/global data (replaces `useRouteLoaderData('root')`). */
|
|
72
|
-
rootData?: unknown;
|
|
73
|
-
/** Theme settings override; falls back to `client.themeSettings`. */
|
|
74
|
-
themeSettings?: Record<string, unknown>;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Client boundary that supplies explicit root/page/commerce data to Weaverse
|
|
78
|
-
* sections. Next-native replacement for `withWeaverse` + route loader data —
|
|
79
|
-
* no React Router route matches are emulated.
|
|
80
|
-
*
|
|
81
|
-
* In App Router, create/pass `client` only from a client component wrapper. A
|
|
82
|
-
* `WeaverseNextClient` contains functions and component references, so it is
|
|
83
|
-
* not serializable across a Server Component → Client Component boundary.
|
|
84
|
-
*
|
|
85
|
-
* @example
|
|
86
|
-
* ```tsx
|
|
87
|
-
* 'use client'
|
|
88
|
-
*
|
|
89
|
-
* <WeaverseNextProvider client={client} rootData={rootData} pageData={pageData} commerce={commerce}>
|
|
90
|
-
* <WeaverseNextRenderer />
|
|
91
|
-
* </WeaverseNextProvider>
|
|
92
|
-
* ```
|
|
93
|
-
*/
|
|
94
|
-
declare function WeaverseNextProvider(props: WeaverseNextProviderProps): react_jsx_runtime.JSX.Element;
|
|
95
|
-
|
|
96
|
-
interface WeaverseNextRendererProps {
|
|
97
|
-
/** Client to render from. Defaults to the provider's client. */
|
|
98
|
-
client?: WeaverseNextClient;
|
|
99
|
-
/** Page payload to render. Defaults to `client.data`. */
|
|
100
|
-
data?: WeaverseNextLoaderData | null;
|
|
101
|
-
/** Data-connector context for `{{...}}` template replacement. */
|
|
102
|
-
dataContext?: Record<string, unknown>;
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Render a serialized Weaverse page tree through `@weaverse/react` primitives.
|
|
106
|
-
*
|
|
107
|
-
* Reads the client/page data from {@link WeaverseNextContext} when no props are
|
|
108
|
-
* passed, or accepts an explicit `client` + `data` for standalone use. Builds a
|
|
109
|
-
* framework-neutral `Weaverse` core instance (no React Router hooks) and hands
|
|
110
|
-
* it to the shared `WeaverseRoot`.
|
|
111
|
-
*/
|
|
112
|
-
declare const WeaverseNextRenderer: react.MemoExoticComponent<(props: WeaverseNextRendererProps) => react_jsx_runtime.JSX.Element | null>;
|
|
113
|
-
|
|
114
|
-
/**
|
|
115
|
-
* Build the Hydrogen-like request info shape consumed by the Studio bridge.
|
|
116
|
-
* Duplicate query keys keep the last value, matching `URLSearchParams` iteration
|
|
117
|
-
* assignment and Hydrogen's practical query-object behavior.
|
|
118
|
-
*/
|
|
119
|
-
declare function buildWeaverseNextRequestInfo(context?: WeaverseNextRequestContext): WeaverseNextRequestInfo;
|
|
120
|
-
|
|
121
|
-
declare global {
|
|
122
|
-
interface Window {
|
|
123
|
-
__weaverse?: WeaverseNextRuntime;
|
|
124
|
-
__weaverses?: Record<string, WeaverseNextRuntime>;
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
declare class WeaverseNextRuntime extends Weaverse {
|
|
128
|
-
pageId: string;
|
|
129
|
-
internal: WeaverseNextRuntimeInternal;
|
|
130
|
-
requestInfo: WeaverseNextRequestInfo;
|
|
131
|
-
isPreviewMode: boolean;
|
|
132
|
-
isRevisionPreview: boolean;
|
|
133
|
-
sectionType?: string;
|
|
134
|
-
translationMap: Record<string, unknown>;
|
|
135
|
-
translationLocale: string;
|
|
136
|
-
translationLanguageId: string;
|
|
137
|
-
constructor(config: WeaverseNextRuntimeConfig);
|
|
138
|
-
extractTranslationSidecar: () => undefined;
|
|
139
|
-
setTranslationSidecar: (map?: Record<string, unknown>, locale?: string, languageId?: string) => void;
|
|
140
|
-
updateTranslation: () => undefined;
|
|
141
|
-
getTranslationChanges: () => undefined;
|
|
142
|
-
}
|
|
143
|
-
declare function createWeaverseNextRuntime(config: WeaverseNextRuntimeConfig): WeaverseNextRuntime;
|
|
144
|
-
declare function bindWeaverseNextStudioRuntime(runtime: WeaverseNextRuntime): boolean;
|
|
145
|
-
|
|
146
|
-
interface WeaverseNextStudioBridgeProps {
|
|
147
|
-
navigate?: WeaverseNextRuntimeInternal['navigate'];
|
|
148
|
-
revalidate?: WeaverseNextRuntimeInternal['revalidate'];
|
|
149
|
-
runtime: WeaverseNextRuntime;
|
|
150
|
-
}
|
|
151
|
-
/** Page-level Studio runtime binder. */
|
|
152
|
-
declare function WeaverseNextStudioBridge(props: WeaverseNextStudioBridgeProps): null;
|
|
153
|
-
|
|
154
|
-
interface WeaverseNextStudioConnectProps {
|
|
155
|
-
context?: WeaverseNextRequestContext;
|
|
156
|
-
storefrontHostname?: string;
|
|
157
|
-
}
|
|
158
|
-
/** Root-level Studio script connector for Next client boundaries. */
|
|
159
|
-
declare function WeaverseNextStudioConnect(props: WeaverseNextStudioConnectProps): null;
|
|
160
|
-
|
|
161
|
-
/**
|
|
162
|
-
* Minimal structural shape of the Next App Router returned by `useRouter()`
|
|
163
|
-
* (`next/navigation`) that the Studio bridge needs. Declared locally — rather
|
|
164
|
-
* than importing `AppRouterInstance` from `next` — so the adapter stays a pure
|
|
165
|
-
* function that unit tests can drive with a plain mock and never pulls
|
|
166
|
-
* `next/navigation` into the test graph.
|
|
167
|
-
*/
|
|
168
|
-
interface WeaverseNextRouterLike {
|
|
169
|
-
push: (href: string, options?: {
|
|
170
|
-
scroll?: boolean;
|
|
171
|
-
}) => void;
|
|
172
|
-
refresh: () => void;
|
|
173
|
-
replace: (href: string, options?: {
|
|
174
|
-
scroll?: boolean;
|
|
175
|
-
}) => void;
|
|
176
|
-
}
|
|
177
|
-
/** Resolved Studio navigation/revalidation callbacks for a Next runtime. */
|
|
178
|
-
interface WeaverseNextStudioInternals {
|
|
179
|
-
navigate: NonNullable<WeaverseNextRuntimeInternal['navigate']>;
|
|
180
|
-
revalidate: NonNullable<WeaverseNextRuntimeInternal['revalidate']>;
|
|
181
|
-
}
|
|
182
|
-
interface CreateWeaverseNextStudioInternalsOptions {
|
|
183
|
-
/** Use `router.replace` instead of `router.push` for navigation. */
|
|
184
|
-
replace?: boolean;
|
|
185
|
-
}
|
|
186
|
-
/**
|
|
187
|
-
* Build Studio `navigate` / `revalidate` callbacks from a Next App Router.
|
|
188
|
-
*
|
|
189
|
-
* Maps Hydrogen's React Router semantics onto Next App Router:
|
|
190
|
-
* - `navigate(to, { preventScrollReset })` → `router.push(to, { scroll })`,
|
|
191
|
-
* where `scroll` is the inverse of `preventScrollReset`. Studio passes
|
|
192
|
-
* `preventScrollReset` for in-place edits so the preview viewport is kept,
|
|
193
|
-
* matching React Router's `navigate({ preventScrollReset })`.
|
|
194
|
-
* - `revalidate()` → `router.refresh()`, the App Router's loader-backed refresh
|
|
195
|
-
* and the closest equivalent to React Router's `useRevalidator`.
|
|
196
|
-
*
|
|
197
|
-
* Pure (no React, no `next/navigation`) so it is unit-testable with a mock
|
|
198
|
-
* router; the {@link WeaverseNextRouterLike} contract is the only coupling.
|
|
199
|
-
*/
|
|
200
|
-
declare function createWeaverseNextStudioInternals(router: WeaverseNextRouterLike, options?: CreateWeaverseNextStudioInternalsOptions): WeaverseNextStudioInternals;
|
|
201
|
-
|
|
202
|
-
interface ResolveWeaverseNextStudioScriptSrcOptions {
|
|
203
|
-
framework?: 'hydrogen' | 'next';
|
|
204
|
-
storefrontHostname?: string;
|
|
205
|
-
}
|
|
206
|
-
/**
|
|
207
|
-
* Resolve the Studio script URL from request/search context. v0 intentionally
|
|
208
|
-
* reuses the existing structural Hydrogen bridge script until a concrete Builder
|
|
209
|
-
* incompatibility requires a dedicated Next bundle.
|
|
210
|
-
*/
|
|
211
|
-
declare function resolveWeaverseNextStudioScriptSrc(context?: WeaverseNextRequestContext, options?: ResolveWeaverseNextStudioScriptSrcOptions): string | null;
|
|
212
|
-
|
|
213
|
-
interface CreateWeaverseNextThemeSettingsStoreOptions {
|
|
214
|
-
publicEnv?: Record<string, string | undefined>;
|
|
215
|
-
schema?: unknown;
|
|
216
|
-
settings?: Record<string, unknown>;
|
|
217
|
-
}
|
|
218
|
-
/**
|
|
219
|
-
* Small external store shape compatible with the Studio bridge and React's
|
|
220
|
-
* `useSyncExternalStore` contract. The bridge calls `updateThemeSettings` during
|
|
221
|
-
* live theme edits, so keep that method name stable.
|
|
222
|
-
*/
|
|
223
|
-
declare function createWeaverseNextThemeSettingsStore(options?: CreateWeaverseNextThemeSettingsStoreOptions): WeaverseNextThemeSettingsStore;
|
|
224
|
-
|
|
225
|
-
/**
|
|
226
|
-
* Resolve stable Studio `navigate` / `revalidate` callbacks from the Next App
|
|
227
|
-
* Router. `useRouter()` is stable across renders, but the derived callbacks are
|
|
228
|
-
* cached in a ref keyed on the router instance so the bridge's bind effect
|
|
229
|
-
* (which depends on `navigate` / `revalidate` identity) doesn't re-run — and
|
|
230
|
-
* re-`refreshStudio` — on every render.
|
|
231
|
-
*/
|
|
232
|
-
declare function useWeaverseNextStudioInternals(options?: CreateWeaverseNextStudioInternalsOptions): WeaverseNextStudioInternals;
|
|
233
|
-
interface WeaverseNextStudioProps extends CreateWeaverseNextStudioInternalsOptions {
|
|
234
|
-
runtime: WeaverseNextRuntime;
|
|
235
|
-
}
|
|
236
|
-
/**
|
|
237
|
-
* Page-level Studio binder wired to the Next App Router. Mirrors Hydrogen's
|
|
238
|
-
* `useStudio` (which binds the runtime and feeds it React Router's `navigate` /
|
|
239
|
-
* `revalidate`): it resolves the App Router callbacks via
|
|
240
|
-
* {@link useWeaverseNextStudioInternals} and hands them to
|
|
241
|
-
* {@link WeaverseNextStudioBridge}, so consuming apps get Studio navigation and
|
|
242
|
-
* revalidation without manually wiring `next/navigation`.
|
|
243
|
-
*
|
|
244
|
-
* Client-only — it is the single place `@weaverse/next` touches
|
|
245
|
-
* `next/navigation`, keeping the runtime/renderer and `@weaverse/next/server`
|
|
246
|
-
* free of router imports.
|
|
247
|
-
*/
|
|
248
|
-
declare function WeaverseNextStudio(props: WeaverseNextStudioProps): react_jsx_runtime.JSX.Element;
|
|
249
|
-
|
|
250
|
-
export { type CreateWeaverseNextStudioInternalsOptions, type CreateWeaverseNextThemeSettingsStoreOptions, type ResolveWeaverseNextStudioScriptSrcOptions, type RunComponentLoadersArgs, WeaverseNextClient, WeaverseNextClientConfig, WeaverseNextCommerceContext, WeaverseNextLoaderData, WeaverseNextProvider, type WeaverseNextProviderProps, WeaverseNextRenderer, type WeaverseNextRendererProps, WeaverseNextRequestContext, WeaverseNextRequestInfo, type WeaverseNextRouterLike, WeaverseNextRuntime, WeaverseNextRuntimeConfig, WeaverseNextRuntimeInternal, WeaverseNextStudio, WeaverseNextStudioBridge, type WeaverseNextStudioBridgeProps, WeaverseNextStudioConnect, type WeaverseNextStudioConnectProps, type WeaverseNextStudioInternals, type WeaverseNextStudioProps, WeaverseNextThemeSettingsStore, bindWeaverseNextStudioRuntime, buildWeaverseNextRequestInfo, createWeaverseNextClient, createWeaverseNextRuntime, createWeaverseNextStudioInternals, createWeaverseNextThemeSettingsStore, resolveWeaverseNextStudioScriptSrc, runWeaverseComponentLoaders, useThemeSettings, useWeaverseCommerce, useWeaverseNextStudioInternals, useWeaversePageData, useWeaverseRootData };
|
package/dist/server.d.mts
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { q as WeaverseNextRequestContext, a as WeaverseNextBaseConfigs, v as WeaverseNextServerClientConfig, u as WeaverseNextServerClient } from './types-DvEeLX6L.mjs';
|
|
2
|
-
export { b as WeaverseNextCacheConfig, j as WeaverseNextConfigs, k as WeaverseNextFetchOptions, p as WeaverseNextProjectId, w as WeaverseNextServerLoadPageInput, y as WeaverseNextThemeSettingsOptions, z as WeaverseNextThemeSettingsResponse } from './types-DvEeLX6L.mjs';
|
|
3
|
-
import '@weaverse/react';
|
|
4
|
-
import '@weaverse/schema';
|
|
5
|
-
import 'react';
|
|
6
|
-
|
|
7
|
-
interface ResolveConfigsOptions {
|
|
8
|
-
env?: Record<string, string | undefined>;
|
|
9
|
-
weaverseApiBase?: string;
|
|
10
|
-
weaverseHost?: string;
|
|
11
|
-
weaverseVersion?: string;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Derive Weaverse configs from the request context and env, close to Hydrogen's
|
|
15
|
-
* `getWeaverseConfigs`. Resolves the trusted host, public API base, design /
|
|
16
|
-
* preview / revision flags, and public env — but never resolves the final
|
|
17
|
-
* `projectId` (that priority chain, which may call an async resolver, lives in
|
|
18
|
-
* the server client). Query/env projectId candidates are returned for the
|
|
19
|
-
* client to combine with function/string inputs.
|
|
20
|
-
*/
|
|
21
|
-
declare function getWeaverseNextConfigs(context?: WeaverseNextRequestContext, options?: ResolveConfigsOptions): WeaverseNextBaseConfigs;
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Normalize the storefront URL sent in the Builder page API request body.
|
|
25
|
-
*
|
|
26
|
-
* The Builder reads only the pathname (locale/type/handle fallback) and the
|
|
27
|
-
* Weaverse/Studio control params from this URL, so keep exactly those and drop
|
|
28
|
-
* tracking params. Params are sorted for a stable, cache-friendly string.
|
|
29
|
-
*
|
|
30
|
-
* Ported from `@weaverse/hydrogen`'s `normalizePageUrl`, but tolerant of a
|
|
31
|
-
* relative URL (Next route handlers may only know the pathname).
|
|
32
|
-
*/
|
|
33
|
-
declare function normalizeNextPageUrl(url: string): string;
|
|
34
|
-
/**
|
|
35
|
-
* Build an absolute-ish request URL string from the explicit request context,
|
|
36
|
-
* preferring `url`, then `pathname` + `searchParams`. Used as the input to
|
|
37
|
-
* {@link normalizeNextPageUrl}.
|
|
38
|
-
*/
|
|
39
|
-
declare function resolveRequestUrl(context?: WeaverseNextRequestContext): string;
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* Create a server-side {@link WeaverseNextServerClient} for Next.js App Router
|
|
43
|
-
* routes / server components.
|
|
44
|
-
*
|
|
45
|
-
* @example
|
|
46
|
-
* ```ts
|
|
47
|
-
* let weaverse = createWeaverseNextServerClient({
|
|
48
|
-
* projectId: process.env.WEAVERSE_PROJECT_ID,
|
|
49
|
-
* components,
|
|
50
|
-
* commerce: { storefront },
|
|
51
|
-
* requestContext: { url, headers, searchParams, i18n },
|
|
52
|
-
* cache: { revalidate: 60, tags: ['weaverse'] },
|
|
53
|
-
* })
|
|
54
|
-
* let data = await weaverse.loadPage({ type: 'INDEX' })
|
|
55
|
-
* let theme = await weaverse.loadThemeSettings()
|
|
56
|
-
* ```
|
|
57
|
-
*/
|
|
58
|
-
declare function createWeaverseNextServerClient(config: WeaverseNextServerClientConfig): WeaverseNextServerClient;
|
|
59
|
-
|
|
60
|
-
export { WeaverseNextBaseConfigs, WeaverseNextServerClient, WeaverseNextServerClientConfig, createWeaverseNextServerClient, getWeaverseNextConfigs, normalizeNextPageUrl, resolveRequestUrl };
|
package/dist/server.d.ts
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { q as WeaverseNextRequestContext, a as WeaverseNextBaseConfigs, v as WeaverseNextServerClientConfig, u as WeaverseNextServerClient } from './types-DvEeLX6L.js';
|
|
2
|
-
export { b as WeaverseNextCacheConfig, j as WeaverseNextConfigs, k as WeaverseNextFetchOptions, p as WeaverseNextProjectId, w as WeaverseNextServerLoadPageInput, y as WeaverseNextThemeSettingsOptions, z as WeaverseNextThemeSettingsResponse } from './types-DvEeLX6L.js';
|
|
3
|
-
import '@weaverse/react';
|
|
4
|
-
import '@weaverse/schema';
|
|
5
|
-
import 'react';
|
|
6
|
-
|
|
7
|
-
interface ResolveConfigsOptions {
|
|
8
|
-
env?: Record<string, string | undefined>;
|
|
9
|
-
weaverseApiBase?: string;
|
|
10
|
-
weaverseHost?: string;
|
|
11
|
-
weaverseVersion?: string;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Derive Weaverse configs from the request context and env, close to Hydrogen's
|
|
15
|
-
* `getWeaverseConfigs`. Resolves the trusted host, public API base, design /
|
|
16
|
-
* preview / revision flags, and public env — but never resolves the final
|
|
17
|
-
* `projectId` (that priority chain, which may call an async resolver, lives in
|
|
18
|
-
* the server client). Query/env projectId candidates are returned for the
|
|
19
|
-
* client to combine with function/string inputs.
|
|
20
|
-
*/
|
|
21
|
-
declare function getWeaverseNextConfigs(context?: WeaverseNextRequestContext, options?: ResolveConfigsOptions): WeaverseNextBaseConfigs;
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Normalize the storefront URL sent in the Builder page API request body.
|
|
25
|
-
*
|
|
26
|
-
* The Builder reads only the pathname (locale/type/handle fallback) and the
|
|
27
|
-
* Weaverse/Studio control params from this URL, so keep exactly those and drop
|
|
28
|
-
* tracking params. Params are sorted for a stable, cache-friendly string.
|
|
29
|
-
*
|
|
30
|
-
* Ported from `@weaverse/hydrogen`'s `normalizePageUrl`, but tolerant of a
|
|
31
|
-
* relative URL (Next route handlers may only know the pathname).
|
|
32
|
-
*/
|
|
33
|
-
declare function normalizeNextPageUrl(url: string): string;
|
|
34
|
-
/**
|
|
35
|
-
* Build an absolute-ish request URL string from the explicit request context,
|
|
36
|
-
* preferring `url`, then `pathname` + `searchParams`. Used as the input to
|
|
37
|
-
* {@link normalizeNextPageUrl}.
|
|
38
|
-
*/
|
|
39
|
-
declare function resolveRequestUrl(context?: WeaverseNextRequestContext): string;
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* Create a server-side {@link WeaverseNextServerClient} for Next.js App Router
|
|
43
|
-
* routes / server components.
|
|
44
|
-
*
|
|
45
|
-
* @example
|
|
46
|
-
* ```ts
|
|
47
|
-
* let weaverse = createWeaverseNextServerClient({
|
|
48
|
-
* projectId: process.env.WEAVERSE_PROJECT_ID,
|
|
49
|
-
* components,
|
|
50
|
-
* commerce: { storefront },
|
|
51
|
-
* requestContext: { url, headers, searchParams, i18n },
|
|
52
|
-
* cache: { revalidate: 60, tags: ['weaverse'] },
|
|
53
|
-
* })
|
|
54
|
-
* let data = await weaverse.loadPage({ type: 'INDEX' })
|
|
55
|
-
* let theme = await weaverse.loadThemeSettings()
|
|
56
|
-
* ```
|
|
57
|
-
*/
|
|
58
|
-
declare function createWeaverseNextServerClient(config: WeaverseNextServerClientConfig): WeaverseNextServerClient;
|
|
59
|
-
|
|
60
|
-
export { WeaverseNextBaseConfigs, WeaverseNextServerClient, WeaverseNextServerClientConfig, createWeaverseNextServerClient, getWeaverseNextConfigs, normalizeNextPageUrl, resolveRequestUrl };
|