@lwrjs/types 0.15.0-alpha.2 → 0.15.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/build/config.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { AssetProvider, AssetTransformPlugin, BundleProvider, CacheResponse, LwrService, ModuleProvider, RenderOptions, ResourceProvider, RouteHandlerViewResponse, RuntimeEnvironment, ServerContext, ServerTypes, ServiceCtor, Specifier, UriTransformPlugin, ViewParams, ViewProvider, ViewRequest, ViewResponse, ViewTransformPlugin } from './index.js';
1
+ import type { AssetProvider, AssetTransformPlugin, BundleProvider, CacheResponse, DirectToCoreProxy, LwrService, ModuleProvider, RenderOptions, ResourceProvider, RouteHandlerViewResponse, RuntimeEnvironment, ServerContext, ServerTypes, ServiceCtor, Specifier, UriTransformPlugin, ViewParams, ViewProvider, ViewRequest, ViewResponse, ViewTransformPlugin } from './index.js';
2
2
  export interface View {
3
3
  id: string;
4
4
  rootComponent?: string;
@@ -41,11 +41,14 @@ export interface LwrAppBootstrapConfig {
41
41
  configAsSrc?: boolean;
42
42
  ssr?: boolean;
43
43
  preloadData?: boolean;
44
+ proxyForSSR?: boolean;
45
+ includeCookiesForSSR?: boolean;
44
46
  mixedMode?: boolean;
45
47
  module?: string | undefined;
46
48
  preloadModules?: string[];
47
49
  lwrVersion?: string;
48
50
  lwcVersion?: string;
51
+ preloadResources?: PreloadResources;
49
52
  }
50
53
  export interface NormalizedLwrAppBootstrapConfig extends Required<Omit<LwrAppBootstrapConfig, 'module'>> {
51
54
  services: BootstrapService[];
@@ -111,6 +114,7 @@ export interface LwrGlobalConfig {
111
114
  resourceProviders?: ServiceConfig[];
112
115
  viewProviders?: ServiceConfig[];
113
116
  viewTransformers?: ServiceConfig[];
117
+ caseSensitiveRoutes?: boolean;
114
118
  routes?: LwrRoute[];
115
119
  errorRoutes?: LwrErrorRoute[];
116
120
  routeHandlers?: RouteHandlersConfig;
@@ -120,6 +124,7 @@ export interface LwrGlobalConfig {
120
124
  locker?: LwrLockerConfig;
121
125
  uriTransformers?: ServiceConfig[];
122
126
  i18n?: I18NConfig;
127
+ coreProxy?: DirectToCoreProxy | null;
123
128
  }
124
129
  type RequiredPick<T, K extends keyof T> = {
125
130
  [P in K]-?: T[P];
@@ -312,5 +317,12 @@ export interface I18NConfig {
312
317
  uriPattern?: UriPattern;
313
318
  }
314
319
  export type UriPattern = undefined | 'path-prefix';
320
+ export interface PreloadResources {
321
+ patterns: PreloadResourcePatterns[];
322
+ }
323
+ export interface PreloadResourcePatterns {
324
+ match: string;
325
+ attributes?: Record<string, string>;
326
+ }
315
327
  export {};
316
328
  //# sourceMappingURL=config.d.ts.map
package/build/index.d.ts CHANGED
@@ -7,7 +7,7 @@ import type { EventEmitter } from 'events';
7
7
  import type fs from 'fs';
8
8
  import type { Readable } from 'stream';
9
9
  import type { BundleConfig, EnvironmentConfig, HooksPlugin, LwrLockerConfig, NormalizedLwrErrorRoute, NormalizedLwrGlobalConfig, NormalizedLwrRoute, ResolverModuleRecord, BundleConfigOverrides, RouteHandlers, AssetConfig, I18NConfig, ModuleRegistryConfig } from './config.js';
10
- import type { AssetReference, CompiledView, PublicViewRegistry, ViewProvider, ViewRegistry, ViewTransformPlugin } from './views.js';
10
+ import type { AssetReference, CompiledView, DirectToCoreProxy, PublicViewRegistry, ViewProvider, ViewRegistry, ViewTransformPlugin } from './views.js';
11
11
  export * from './lwr-shim.js';
12
12
  export * from './config.js';
13
13
  export * from './cli.js';
@@ -179,6 +179,7 @@ export interface FeatureFlags extends Record<string, boolean | string | undefine
179
179
  MAX_VIEW_CACHE_TTL?: string;
180
180
  REEVALUATE_MODULES?: boolean;
181
181
  SINGLE_RENDER_MODE?: boolean;
182
+ SSR_LOADER_PER_REQUEST?: boolean;
182
183
  }
183
184
  export interface RuntimeEnvironment extends ServerModeConfig {
184
185
  apiVersion: string;
@@ -191,7 +192,9 @@ export interface RuntimeEnvironment extends ServerModeConfig {
191
192
  export interface SourceMapRuntimeEnvironment extends RuntimeEnvironment {
192
193
  sourceMapUrl?: string;
193
194
  }
194
- export type RuntimeParams = Record<string, string | number | boolean | null | undefined | Record<string, string>>;
195
+ export type RuntimeParams = Record<string, string | number | boolean | null | undefined | Record<string, string> | DirectToCoreProxy> & {
196
+ requestCache?: Record<string, any>;
197
+ };
195
198
  export interface EnvironmentContext {
196
199
  basePath: string;
197
200
  locale: string;
@@ -317,7 +320,7 @@ export interface BundleRecord {
317
320
  includedModules: string[];
318
321
  }
319
322
  export interface BundleDefinition extends ModuleId {
320
- code: string;
323
+ getCode: () => Promise<string>;
321
324
  config: BundleConfig;
322
325
  map?: any;
323
326
  bundleRecord: BundleRecord;
@@ -642,7 +645,7 @@ export interface DecisionTree<Artifact extends SiteArtifact> {
642
645
  /**
643
646
  * Retrieve an artifact from the tree based on a path of decisions
644
647
  */
645
- find(siteArtifactId: string | Partial<AbstractModuleId>, debug?: boolean, localeId?: string): Artifact | undefined;
648
+ find(siteArtifactId: string | Partial<AbstractModuleId>, debug?: boolean, ssr?: boolean, localeId?: string): Artifact | undefined;
646
649
  }
647
650
  export interface SiteMetadata {
648
651
  /**
package/build/server.d.ts CHANGED
@@ -4,7 +4,7 @@ import type { Application as ExpressApp } from 'express';
4
4
  import type { default as Koa, Context } from 'koa';
5
5
  import type http from 'http';
6
6
  import type { Readable } from 'stream';
7
- import type { NormalizedLwrGlobalConfig, RuntimeContext, RuntimeEnvironment } from './index.js';
7
+ import type { DirectToCoreProxy, NormalizedLwrGlobalConfig, RuntimeContext, RuntimeEnvironment } from './index.js';
8
8
  export type ServerTypes = 'koa' | 'express' | 'fs';
9
9
  export type ServerTypeImpl<T extends ServerTypes> = T extends 'koa' ? Koa : T extends 'express' ? ExpressApp : T extends 'fs' ? LwrDispatcher : never;
10
10
  export interface FsContext extends Context {
@@ -37,6 +37,7 @@ export interface InternalAppServer<T extends ServerTypes> {
37
37
  export type InternalAppServerOptions = {
38
38
  app?: ServerTypeImpl<ServerTypes>;
39
39
  basePath?: string;
40
+ caseSensitiveRoutes?: boolean;
40
41
  };
41
42
  export interface InternalAppServerConstructable {
42
43
  new (options: InternalAppServerOptions): InternalAppServer<ServerTypes>;
@@ -89,6 +90,10 @@ export interface MiddlewareRequest {
89
90
  * Use the request parameters to resolve the runtime context(ie. environment and parameters)
90
91
  */
91
92
  getRuntimeContext(defaultRuntimeEnvironment: RuntimeEnvironment): RuntimeContext;
93
+ /**
94
+ * Resolve the Direct-to-Core proxy values for the SSR wrapped fetch endowment
95
+ */
96
+ getCoreProxy(appCoreProxy?: DirectToCoreProxy, proxyForSSR?: boolean): DirectToCoreProxy | undefined;
92
97
  }
93
98
  export interface MiddlewareResponse {
94
99
  hasHeader(name: string): boolean;
@@ -11,6 +11,16 @@ export interface ServerDataCallback {
11
11
  interface RegisterServerDataCallback {
12
12
  (hook: ServerDataCallback): void;
13
13
  }
14
+ export type RequestHookParams = {
15
+ cookies: RequestHookCookies;
16
+ };
17
+ export type RequestHookCookies = Record<string, string> | null;
18
+ export interface RequestHook {
19
+ (params: RequestHookParams): void | null;
20
+ }
21
+ interface RegisterRequestHook {
22
+ (hook: RequestHook): void;
23
+ }
14
24
  export interface ServiceAPI {
15
25
  addLoaderPlugin: NoOp | RegisterLoaderHooks;
16
26
  handleStaleModule: RegisterHandleStaleModuleHook;
@@ -20,6 +30,7 @@ export interface ServiceAPI {
20
30
  export interface ServerServiceAPI {
21
31
  addLoaderPlugin: NoOp | RegisterLoaderHooks;
22
32
  addServerDataCallback: RegisterServerDataCallback;
33
+ addRequestHook: RegisterRequestHook;
23
34
  }
24
35
  export interface NoOp {
25
36
  (): void;
package/build/views.d.ts CHANGED
@@ -18,12 +18,15 @@ export interface CompiledView extends ViewSource {
18
18
  };
19
19
  render: (context: any, runtimeEnvironment: RuntimeEnvironment) => Promise<RenderingResult>;
20
20
  }
21
- export type NormalizedRenderingResult = Required<RenderingResult>;
21
+ export type NormalizedRenderingResult = Required<Pick<RenderingResult, 'renderedView' | 'metadata' | 'options' | 'cache'>> & {
22
+ redirect?: SsrRedirect;
23
+ };
22
24
  export interface RenderingResult {
23
25
  renderedView: string;
24
26
  metadata?: RenderedViewMetadata;
25
27
  options?: RenderOptions;
26
28
  cache?: CacheResponse;
29
+ redirect?: SsrRedirect;
27
30
  }
28
31
  export interface RenderedView extends NormalizedRenderingResult {
29
32
  compiledView: CompiledView;
@@ -86,6 +89,7 @@ export interface LinkedViewDefinition {
86
89
  viewRecord: RenderedViewRecord;
87
90
  immutable: boolean;
88
91
  cache?: CacheResponse;
92
+ redirect?: SsrRedirect;
89
93
  nonce?: string;
90
94
  }
91
95
  export interface ViewRequestQs {
@@ -123,6 +127,9 @@ export interface ViewDefinitionResponse {
123
127
  headers?: Record<string, string>;
124
128
  cookie?: 'wip';
125
129
  locale?: string;
130
+ metadata?: {
131
+ viewDefinition?: LinkedViewDefinition;
132
+ };
126
133
  }
127
134
  export interface ViewProvider {
128
135
  name: string;
@@ -167,6 +174,7 @@ export interface ViewInfo {
167
174
  configAsSrc: boolean;
168
175
  mixedMode: boolean;
169
176
  nonce?: string;
177
+ ssr: boolean;
170
178
  }
171
179
  export interface RenderOptions {
172
180
  skipMetadataCollection?: boolean;
@@ -212,6 +220,7 @@ export interface SsrRequestContext {
212
220
  query: ViewRequestQs;
213
221
  locale: string;
214
222
  basePath: string;
223
+ crossRequestCache: Record<string, any>;
215
224
  }
216
225
  export interface SsrRequestOptions {
217
226
  bundleSpecifier: string;
@@ -247,6 +256,17 @@ export interface SsrDataResponse {
247
256
  }[];
248
257
  };
249
258
  cache?: CacheResponse;
259
+ redirect?: SsrRedirect;
260
+ }
261
+ export interface SsrRedirect {
262
+ status?: 301 | 302;
263
+ location: string;
264
+ }
265
+ export interface DirectToCoreProxy {
266
+ origin: string;
267
+ host: string;
268
+ servername?: string;
269
+ sitePath?: string;
250
270
  }
251
271
  export {};
252
272
  //# sourceMappingURL=views.d.ts.map
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "build": "tsc -b"
9
9
  },
10
10
  "type": "module",
11
- "version": "0.15.0-alpha.2",
11
+ "version": "0.15.0-alpha.20",
12
12
  "homepage": "https://developer.salesforce.com/docs/platform/lwr/overview",
13
13
  "repository": {
14
14
  "type": "git",
@@ -29,5 +29,5 @@
29
29
  "engines": {
30
30
  "node": ">=18.0.0"
31
31
  },
32
- "gitHead": "58fda4341e2aa0f571a63d83f4aa59865e6a54bd"
32
+ "gitHead": "112ed1a3472b68a90c6884422137006a5dcf032c"
33
33
  }