@vistagenic/vista 0.3.0 → 0.3.3

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 (101) hide show
  1. package/bin/vista.js +79 -109
  2. package/dist/ai/embeddings.d.ts +11 -11
  3. package/dist/ai/embeddings.js +71 -71
  4. package/dist/ai/index.d.ts +10 -10
  5. package/dist/ai/index.js +26 -26
  6. package/dist/ai/providers/base.js +85 -85
  7. package/dist/ai/react/react-server.d.ts +1 -1
  8. package/dist/ai/react/react-server.js +17 -17
  9. package/dist/ai/react/use-agent.js +138 -138
  10. package/dist/auth/core.d.ts +140 -140
  11. package/dist/auth/core.js +165 -165
  12. package/dist/auth/index.d.ts +20 -20
  13. package/dist/auth/index.js +369 -369
  14. package/dist/auth/react-server.d.ts +1 -1
  15. package/dist/auth/react-server.js +10 -10
  16. package/dist/auth/react.d.ts +18 -18
  17. package/dist/auth/react.js +71 -71
  18. package/dist/bin/build-rsc-flashpack.js +6 -0
  19. package/dist/bin/build-rsc.js +537 -492
  20. package/dist/bin/build.js +355 -353
  21. package/dist/bin/dev-error-overlay-snippet.js +379 -153
  22. package/dist/bin/generate.js +513 -510
  23. package/dist/bin/webpack.config.js +4 -3
  24. package/dist/build/manifest.d.ts +169 -169
  25. package/dist/build/manifest.js +423 -423
  26. package/dist/build/rsc/client-manifest.d.ts +62 -62
  27. package/dist/build/rsc/client-manifest.js +295 -295
  28. package/dist/build/rsc/compiler.js +5 -4
  29. package/dist/build/rsc/native-scanner.d.ts +135 -135
  30. package/dist/build/rsc/native-scanner.js +203 -203
  31. package/dist/build/rsc/react-client-reference-manifest.d.ts +28 -28
  32. package/dist/build/rsc/react-client-reference-manifest.js +240 -240
  33. package/dist/build/standalone.js +260 -254
  34. package/dist/client/dynamic.react-server.d.ts +2 -2
  35. package/dist/client/dynamic.react-server.js +23 -23
  36. package/dist/client/link.react-server.d.ts +2 -2
  37. package/dist/client/link.react-server.js +11 -11
  38. package/dist/client/navigation.react-server.d.ts +1 -1
  39. package/dist/client/navigation.react-server.js +17 -17
  40. package/dist/client/router.react-server.d.ts +1 -1
  41. package/dist/client/router.react-server.js +17 -17
  42. package/dist/client/rsc-router.react-server.d.ts +1 -1
  43. package/dist/client/rsc-router.react-server.js +17 -17
  44. package/dist/client/script.react-server.d.ts +2 -2
  45. package/dist/client/script.react-server.js +23 -23
  46. package/dist/config.d.ts +1 -1
  47. package/dist/config.js +1 -7
  48. package/dist/deploy/adapters/cloudflare.js +43 -19
  49. package/dist/deploy/adapters/docker.d.ts +1 -0
  50. package/dist/deploy/adapters/docker.js +5 -4
  51. package/dist/deploy/adapters/netlify.js +62 -17
  52. package/dist/deploy/adapters/vercel.js +80 -50
  53. package/dist/deploy/preflight.js +4 -3
  54. package/dist/deploy/runtime-pack.d.ts +11 -0
  55. package/dist/deploy/runtime-pack.js +300 -0
  56. package/dist/deploy/utils.d.ts +1 -1
  57. package/dist/deploy/utils.js +31 -2
  58. package/dist/dev-error.d.ts +14 -0
  59. package/dist/dev-error.js +1394 -336
  60. package/dist/flashpack/command.js +1 -0
  61. package/dist/flashpack/runtime.js +2 -1
  62. package/dist/index.d.ts +23 -23
  63. package/dist/index.js +61 -61
  64. package/dist/server/app-dir.d.ts +22 -0
  65. package/dist/server/app-dir.js +77 -0
  66. package/dist/server/cookie-parse.d.ts +4 -4
  67. package/dist/server/cookie-parse.js +14 -14
  68. package/dist/server/engine.js +6 -12
  69. package/dist/server/image-optimizer.js +2 -1
  70. package/dist/server/index.d.ts +109 -109
  71. package/dist/server/index.js +315 -315
  72. package/dist/server/middleware-runner.d.ts +125 -125
  73. package/dist/server/middleware-runner.js +607 -615
  74. package/dist/server/middleware-security.d.ts +36 -36
  75. package/dist/server/middleware-security.js +183 -183
  76. package/dist/server/module-compile-hook.js +695 -695
  77. package/dist/server/root-resolver.js +6 -5
  78. package/dist/server/rsc-engine-flashpack.d.ts +3 -1
  79. package/dist/server/rsc-engine-flashpack.js +12 -1
  80. package/dist/server/rsc-engine.d.ts +6 -1
  81. package/dist/server/rsc-engine.js +203 -229
  82. package/dist/server/rsc-upstream.js +893 -892
  83. package/dist/server/static-generator.js +4 -3
  84. package/dist/server/structure-validator.js +2 -1
  85. package/dist/server/structure-watch.js +2 -0
  86. package/dist/server/typed-api-runtime.js +639 -635
  87. package/dist/server/vista-import-map.js +134 -134
  88. package/dist/stack/index.d.ts +34 -34
  89. package/dist/stack/index.js +49 -49
  90. package/dist/stack/server/caller.d.ts +13 -13
  91. package/dist/stack/server/caller.js +42 -42
  92. package/dist/stack/server/executor.d.ts +40 -40
  93. package/dist/stack/server/executor.js +222 -222
  94. package/dist/stack/server/index.d.ts +11 -11
  95. package/dist/stack/server/index.js +24 -24
  96. package/dist/stack/server/procedure.d.ts +20 -20
  97. package/dist/stack/server/procedure.js +66 -66
  98. package/dist/stack/server/types.d.ts +113 -113
  99. package/dist/theme/react-server.d.ts +10 -10
  100. package/dist/theme/react-server.js +16 -16
  101. package/package.json +178 -178
@@ -1,125 +1,125 @@
1
- /**
2
- * Vista Middleware Runner
3
- *
4
- * Built-in middleware system for Vista.js.
5
- * Supports:
6
- * 1. Global middleware (top-level middleware.ts / middleware.js at cwd or src/)
7
- * 2. Route-specific middleware (co-located in app/ directory segments, e.g. app/api/auth/middleware.ts)
8
- * 3. Exported middleware from route files (e.g. export const middleware = ... in page.tsx or route.ts)
9
- * 4. Middleware signature: middleware({ request, next }) matching Issue #7 Part 5
10
- * 5. Middleware chaining and clearly defined execution order:
11
- * Global -> Segment middlewares (shallowest to deepest) -> Route-level middleware -> Handler
12
- * 6. Request modification (headers, URL rewrites) and Response modification / short-circuiting
13
- */
14
- import type { Request, Response as ExpressResponse } from 'express';
15
- export interface MiddlewareResult {
16
- /** 'redirect' — send Location header and status; 'short-circuit' — send custom status/body; 'rewrite' — rewrite URL; 'next' — continue; 'skip' — no middleware matched */
17
- kind: 'redirect' | 'rewrite' | 'next' | 'short-circuit' | 'skip';
18
- /** HTTP status (e.g. 307 for redirect, 401/403 for short-circuit) */
19
- status?: number;
20
- /** Redirect target URL or rewrite path */
21
- location?: string;
22
- /** Extra response headers the middleware set (forwarded to client) */
23
- responseHeaders?: Map<string, string>;
24
- /** Extra request headers modified by middleware (forwarded to downstream handlers) */
25
- requestHeaders?: Map<string, string>;
26
- /** Response body when short-circuiting */
27
- body?: string | Buffer | null;
28
- }
29
- /** The Request-like object handed to middleware. */
30
- export interface VistaMiddlewareRequest {
31
- url: string;
32
- method: string;
33
- path: string;
34
- headers: Headers;
35
- nextUrl: {
36
- pathname: string;
37
- searchParams: URLSearchParams;
38
- href: string;
39
- origin: string;
40
- };
41
- cookies: {
42
- get: (name: string) => {
43
- name: string;
44
- value: string;
45
- } | undefined;
46
- getAll: () => Array<{
47
- name: string;
48
- value: any;
49
- }>;
50
- has: (name: string) => boolean;
51
- };
52
- [key: string]: any;
53
- }
54
- export type NextFunction = (options?: {
55
- request?: {
56
- headers?: Headers | Record<string, string>;
57
- };
58
- }) => Promise<Response>;
59
- export interface VistaMiddlewareContext {
60
- request: VistaMiddlewareRequest;
61
- next: NextFunction;
62
- url?: string;
63
- method?: string;
64
- headers?: Headers;
65
- nextUrl?: VistaMiddlewareRequest['nextUrl'];
66
- cookies?: VistaMiddlewareRequest['cookies'];
67
- [key: string]: any;
68
- }
69
- export type MiddlewareFunction = (contextOrRequest: VistaMiddlewareContext | VistaMiddlewareRequest, nextFn?: NextFunction) => Promise<Response | MiddlewareResult | void> | Response | MiddlewareResult | void;
70
- export type MiddlewareMatcher = string | {
71
- source: string;
72
- missing?: Array<{
73
- type: 'header' | 'cookie' | 'query';
74
- key: string;
75
- value?: string;
76
- }>;
77
- has?: Array<{
78
- type: 'header' | 'cookie' | 'query';
79
- key: string;
80
- value?: string;
81
- }>;
82
- };
83
- export interface MiddlewareConfig {
84
- matcher?: MiddlewareMatcher | MiddlewareMatcher[];
85
- allowedRedirectHosts?: string[];
86
- }
87
- export interface MiddlewareModule {
88
- default?: MiddlewareFunction;
89
- middleware?: MiddlewareFunction;
90
- config?: MiddlewareConfig;
91
- [key: string]: any;
92
- }
93
- export declare function clearMiddlewareCaches(): void;
94
- /**
95
- * Discover top-level global middleware.
96
- * Checks `<cwd>/middleware.*` then `<cwd>/src/middleware.*`.
97
- */
98
- export declare function discoverGlobalMiddleware(cwd: string, bustCache: boolean): string | null;
99
- /**
100
- * Discover route-specific middleware files along the path hierarchy.
101
- * Returns file paths from shallowest segment to deepest segment.
102
- */
103
- export declare function discoverRouteMiddlewares(cwd: string, pathname: string, bustCache: boolean): string[];
104
- export declare function patternToRegExp(pattern: string): RegExp;
105
- export declare function shouldRunMiddleware(middlewareModule: MiddlewareModule, pathname: string, request?: VistaMiddlewareRequest): boolean;
106
- export declare function buildNextRequest(req: Request): VistaMiddlewareRequest;
107
- /**
108
- * Run user-defined middleware chain (global + route-specific) for the given request.
109
- *
110
- * Execution Order:
111
- * 1. Global middleware (cwd/middleware.ts or cwd/src/middleware.ts)
112
- * 2. Route segment middlewares (from shallowest to deepest in app/)
113
- * 3. Route file middleware (exported `middleware` from page.tsx/route.ts)
114
- * 4. Downstream handler (Page component or API route handler)
115
- *
116
- * Returns a `MiddlewareResult` indicating whether the request was redirected,
117
- * short-circuited with a response, rewritten, or continued to the next handler.
118
- */
119
- export declare function runMiddleware(req: Request, cwd: string, isDev?: boolean): Promise<MiddlewareResult>;
120
- /**
121
- * Apply a MiddlewareResult to the Express request/response.
122
- * Returns `true` if the response was finalized (caller should `return`),
123
- * `false` if the request should continue to the next handler.
124
- */
125
- export declare function applyMiddlewareResult(result: MiddlewareResult, req: Request, res: ExpressResponse): boolean;
1
+ /**
2
+ * Vista Middleware Runner
3
+ *
4
+ * Built-in middleware system for Vista.js.
5
+ * Supports:
6
+ * 1. Global middleware (top-level middleware.ts / middleware.js at cwd or src/)
7
+ * 2. Route-specific middleware (co-located in app/ directory segments, e.g. app/api/auth/middleware.ts)
8
+ * 3. Exported middleware from route files (e.g. export const middleware = ... in page.tsx or route.ts)
9
+ * 4. Middleware signature: middleware({ request, next }) matching Issue #7 Part 5
10
+ * 5. Middleware chaining and clearly defined execution order:
11
+ * Global -> Segment middlewares (shallowest to deepest) -> Route-level middleware -> Handler
12
+ * 6. Request modification (headers, URL rewrites) and Response modification / short-circuiting
13
+ */
14
+ import type { Request, Response as ExpressResponse } from 'express';
15
+ export interface MiddlewareResult {
16
+ /** 'redirect' — send Location header and status; 'short-circuit' — send custom status/body; 'rewrite' — rewrite URL; 'next' — continue; 'skip' — no middleware matched */
17
+ kind: 'redirect' | 'rewrite' | 'next' | 'short-circuit' | 'skip';
18
+ /** HTTP status (e.g. 307 for redirect, 401/403 for short-circuit) */
19
+ status?: number;
20
+ /** Redirect target URL or rewrite path */
21
+ location?: string;
22
+ /** Extra response headers the middleware set (forwarded to client) */
23
+ responseHeaders?: Map<string, string>;
24
+ /** Extra request headers modified by middleware (forwarded to downstream handlers) */
25
+ requestHeaders?: Map<string, string>;
26
+ /** Response body when short-circuiting */
27
+ body?: string | Buffer | null;
28
+ }
29
+ /** The Request-like object handed to middleware. */
30
+ export interface VistaMiddlewareRequest {
31
+ url: string;
32
+ method: string;
33
+ path: string;
34
+ headers: Headers;
35
+ nextUrl: {
36
+ pathname: string;
37
+ searchParams: URLSearchParams;
38
+ href: string;
39
+ origin: string;
40
+ };
41
+ cookies: {
42
+ get: (name: string) => {
43
+ name: string;
44
+ value: string;
45
+ } | undefined;
46
+ getAll: () => Array<{
47
+ name: string;
48
+ value: any;
49
+ }>;
50
+ has: (name: string) => boolean;
51
+ };
52
+ [key: string]: any;
53
+ }
54
+ export type NextFunction = (options?: {
55
+ request?: {
56
+ headers?: Headers | Record<string, string>;
57
+ };
58
+ }) => Promise<Response>;
59
+ export interface VistaMiddlewareContext {
60
+ request: VistaMiddlewareRequest;
61
+ next: NextFunction;
62
+ url?: string;
63
+ method?: string;
64
+ headers?: Headers;
65
+ nextUrl?: VistaMiddlewareRequest['nextUrl'];
66
+ cookies?: VistaMiddlewareRequest['cookies'];
67
+ [key: string]: any;
68
+ }
69
+ export type MiddlewareFunction = (contextOrRequest: VistaMiddlewareContext | VistaMiddlewareRequest, nextFn?: NextFunction) => Promise<Response | MiddlewareResult | void> | Response | MiddlewareResult | void;
70
+ export type MiddlewareMatcher = string | {
71
+ source: string;
72
+ missing?: Array<{
73
+ type: 'header' | 'cookie' | 'query';
74
+ key: string;
75
+ value?: string;
76
+ }>;
77
+ has?: Array<{
78
+ type: 'header' | 'cookie' | 'query';
79
+ key: string;
80
+ value?: string;
81
+ }>;
82
+ };
83
+ export interface MiddlewareConfig {
84
+ matcher?: MiddlewareMatcher | MiddlewareMatcher[];
85
+ allowedRedirectHosts?: string[];
86
+ }
87
+ export interface MiddlewareModule {
88
+ default?: MiddlewareFunction;
89
+ middleware?: MiddlewareFunction;
90
+ config?: MiddlewareConfig;
91
+ [key: string]: any;
92
+ }
93
+ export declare function clearMiddlewareCaches(): void;
94
+ /**
95
+ * Discover top-level global middleware.
96
+ * Checks `<cwd>/middleware.*` then `<cwd>/src/middleware.*`.
97
+ */
98
+ export declare function discoverGlobalMiddleware(cwd: string, bustCache: boolean): string | null;
99
+ /**
100
+ * Discover route-specific middleware files along the path hierarchy.
101
+ * Returns file paths from shallowest segment to deepest segment.
102
+ */
103
+ export declare function discoverRouteMiddlewares(cwd: string, pathname: string, bustCache: boolean): string[];
104
+ export declare function patternToRegExp(pattern: string): RegExp;
105
+ export declare function shouldRunMiddleware(middlewareModule: MiddlewareModule, pathname: string, request?: VistaMiddlewareRequest): boolean;
106
+ export declare function buildNextRequest(req: Request): VistaMiddlewareRequest;
107
+ /**
108
+ * Run user-defined middleware chain (global + route-specific) for the given request.
109
+ *
110
+ * Execution Order:
111
+ * 1. Global middleware (cwd/middleware.ts or cwd/src/middleware.ts)
112
+ * 2. Route segment middlewares (from shallowest to deepest in app/)
113
+ * 3. Route file middleware (exported `middleware` from page.tsx/route.ts)
114
+ * 4. Downstream handler (Page component or API route handler)
115
+ *
116
+ * Returns a `MiddlewareResult` indicating whether the request was redirected,
117
+ * short-circuited with a response, rewritten, or continued to the next handler.
118
+ */
119
+ export declare function runMiddleware(req: Request, cwd: string, isDev?: boolean): Promise<MiddlewareResult>;
120
+ /**
121
+ * Apply a MiddlewareResult to the Express request/response.
122
+ * Returns `true` if the response was finalized (caller should `return`),
123
+ * `false` if the request should continue to the next handler.
124
+ */
125
+ export declare function applyMiddlewareResult(result: MiddlewareResult, req: Request, res: ExpressResponse): boolean;