@quilted/quilt 0.6.11 → 0.6.13

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.
Files changed (58) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/build/esm/react.mjs +1 -2
  3. package/build/esm/server/ServerContext.mjs +18 -2
  4. package/build/esm/server/request-router.mjs +25 -57
  5. package/build/esm/server.mjs +1 -2
  6. package/build/esnext/react.esnext +1 -2
  7. package/build/esnext/server/ServerContext.esnext +6 -14
  8. package/build/esnext/server/request-router.esnext +28 -37
  9. package/build/esnext/server.esnext +1 -2
  10. package/build/tsconfig.tsbuildinfo +1 -1
  11. package/build/typescript/react.d.ts +1 -2
  12. package/build/typescript/react.d.ts.map +1 -1
  13. package/build/typescript/request-router.d.ts +2 -0
  14. package/build/typescript/request-router.d.ts.map +1 -0
  15. package/build/typescript/server/ServerContext.d.ts +1 -1
  16. package/build/typescript/server/ServerContext.d.ts.map +1 -1
  17. package/build/typescript/server/request-router.d.ts +10 -6
  18. package/build/typescript/server/request-router.d.ts.map +1 -1
  19. package/build/typescript/server.d.ts +1 -2
  20. package/build/typescript/server.d.ts.map +1 -1
  21. package/package.json +9 -19
  22. package/source/react.ts +1 -4
  23. package/source/server/ServerContext.tsx +30 -14
  24. package/source/server/request-router.tsx +41 -53
  25. package/source/server.ts +1 -8
  26. package/tsconfig.json +0 -1
  27. package/build/esm/react/tools.mjs +0 -2
  28. package/build/esm/server/preload.mjs +0 -35
  29. package/build/esm/utilities/react.mjs +0 -10
  30. package/build/esnext/react/tools.esnext +0 -2
  31. package/build/esnext/server/preload.esnext +0 -34
  32. package/build/esnext/utilities/react.esnext +0 -7
  33. package/build/typescript/react/jsx-runtime.d.ts +0 -2
  34. package/build/typescript/react/jsx-runtime.d.ts.map +0 -1
  35. package/build/typescript/react/tools.d.ts +0 -3
  36. package/build/typescript/react/tools.d.ts.map +0 -1
  37. package/build/typescript/react-dom/server.d.ts +0 -2
  38. package/build/typescript/react-dom/server.d.ts.map +0 -1
  39. package/build/typescript/react-dom/test-utils.d.ts +0 -2
  40. package/build/typescript/react-dom/test-utils.d.ts.map +0 -1
  41. package/build/typescript/react-dom.d.ts +0 -3
  42. package/build/typescript/react-dom.d.ts.map +0 -1
  43. package/build/typescript/request-router/index.d.ts +0 -2
  44. package/build/typescript/request-router/index.d.ts.map +0 -1
  45. package/build/typescript/server/preload.d.ts +0 -8
  46. package/build/typescript/server/preload.d.ts.map +0 -1
  47. package/build/typescript/utilities/react.d.ts +0 -3
  48. package/build/typescript/utilities/react.d.ts.map +0 -1
  49. package/source/react/jsx-runtime.ts +0 -2
  50. package/source/react/tools.ts +0 -2
  51. package/source/react-dom/server.ts +0 -2
  52. package/source/react-dom/test-utils.ts +0 -2
  53. package/source/react-dom.ts +0 -4
  54. package/source/server/preload.ts +0 -69
  55. package/source/utilities/react.tsx +0 -13
  56. /package/build/esm/{request-router/index.mjs → request-router.mjs} +0 -0
  57. /package/build/esnext/{request-router/index.esnext → request-router.esnext} +0 -0
  58. /package/source/{request-router/index.ts → request-router.ts} +0 -0
@@ -1,69 +0,0 @@
1
- import type {
2
- AssetsCacheKey,
3
- BrowserAssets,
4
- BrowserAssetsEntry,
5
- } from '@quilted/assets';
6
- import {
7
- JSONResponse,
8
- type EnhancedRequest,
9
- type RequestHandler,
10
- type RequestContext,
11
- } from '@quilted/request-router';
12
-
13
- export interface AssetPreloadOptions<
14
- Context = RequestContext,
15
- CacheKey = AssetsCacheKey,
16
- > {
17
- readonly assets: BrowserAssets<CacheKey>;
18
- cacheKey?(
19
- request: EnhancedRequest,
20
- context: Context,
21
- ): CacheKey | Promise<CacheKey>;
22
- }
23
-
24
- export function createAssetPreloader<
25
- Context = RequestContext,
26
- CacheKey = AssetsCacheKey,
27
- >(options: AssetPreloadOptions<Context, CacheKey>): RequestHandler<Context> {
28
- return async function handler(request, requestContext) {
29
- const manifest = await assetsForRequest<Context, CacheKey>(request, {
30
- ...options,
31
- context: requestContext,
32
- });
33
-
34
- return new JSONResponse(manifest);
35
- };
36
- }
37
-
38
- async function assetsForRequest<
39
- Context = RequestContext,
40
- CacheKey = AssetsCacheKey,
41
- >(
42
- request: EnhancedRequest,
43
- {
44
- assets,
45
- context,
46
- cacheKey: getCacheKey,
47
- }: AssetPreloadOptions<Context, CacheKey> & {context: Context},
48
- ) {
49
- const url = new URL(request.url);
50
- const modules = url.searchParams.get('modules')?.split(',') ?? [];
51
- const includeStyles = url.searchParams.get('styles') !== 'false';
52
- const includeScripts = url.searchParams.get('scripts') !== 'false';
53
-
54
- const cacheKey =
55
- (await getCacheKey?.(request, context)) ??
56
- ((await assets.cacheKey?.(request)) as CacheKey);
57
-
58
- const {styles, scripts} = await assets.entry({
59
- modules,
60
- cacheKey,
61
- });
62
-
63
- const result: Partial<BrowserAssetsEntry> = {};
64
-
65
- if (includeStyles) (result as any).styles = styles;
66
- if (includeScripts) (result as any).scripts = scripts;
67
-
68
- return result as Partial<BrowserAssetsEntry>;
69
- }
@@ -1,13 +0,0 @@
1
- import type {Context as ReactContext, ReactNode, ReactElement} from 'react';
2
-
3
- export function maybeWrapContext<T>(
4
- Context: ReactContext<T>,
5
- value: T | null | undefined,
6
- children: ReactNode,
7
- ): ReactElement {
8
- return value ? (
9
- <Context.Provider value={value}>{children}</Context.Provider>
10
- ) : (
11
- (children as any)
12
- );
13
- }