aboutsummaryrefslogtreecommitdiff
path: root/src/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/api')
-rw-r--r--src/api/schema.d.ts183
-rw-r--r--src/api/schema.js757
-rw-r--r--src/api/schema.peechy132
-rw-r--r--src/api/schema.zig3487
4 files changed, 3084 insertions, 1475 deletions
diff --git a/src/api/schema.d.ts b/src/api/schema.d.ts
index fc03c82b0..d7e66820e 100644
--- a/src/api/schema.d.ts
+++ b/src/api/schema.d.ts
@@ -37,6 +37,69 @@ type uint32 = number;
7: "json",
json: "json"
}
+ export enum FrameworkEntryPointType {
+ client = 1,
+ server = 2,
+ fallback = 3
+ }
+ export const FrameworkEntryPointTypeKeys = {
+ 1: "client",
+ client: "client",
+ 2: "server",
+ server: "server",
+ 3: "fallback",
+ fallback: "fallback"
+ }
+ export enum StackFrameScope {
+ Eval = 1,
+ Module = 2,
+ Function = 3,
+ Global = 4,
+ Wasm = 5,
+ Constructor = 6
+ }
+ export const StackFrameScopeKeys = {
+ 1: "Eval",
+ Eval: "Eval",
+ 2: "Module",
+ Module: "Module",
+ 3: "Function",
+ Function: "Function",
+ 4: "Global",
+ Global: "Global",
+ 5: "Wasm",
+ Wasm: "Wasm",
+ 6: "Constructor",
+ Constructor: "Constructor"
+ }
+ export enum FallbackStep {
+ ssr_disabled = 1,
+ create_vm = 2,
+ configure_router = 3,
+ configure_defines = 4,
+ resolve_entry_point = 5,
+ load_entry_point = 6,
+ eval_entry_point = 7,
+ fetch_event_handler = 8
+ }
+ export const FallbackStepKeys = {
+ 1: "ssr_disabled",
+ ssr_disabled: "ssr_disabled",
+ 2: "create_vm",
+ create_vm: "create_vm",
+ 3: "configure_router",
+ configure_router: "configure_router",
+ 4: "configure_defines",
+ configure_defines: "configure_defines",
+ 5: "resolve_entry_point",
+ resolve_entry_point: "resolve_entry_point",
+ 6: "load_entry_point",
+ load_entry_point: "load_entry_point",
+ 7: "eval_entry_point",
+ eval_entry_point: "eval_entry_point",
+ 8: "fetch_event_handler",
+ fetch_event_handler: "fetch_event_handler"
+ }
export enum ResolveMode {
disable = 1,
lazy = 2,
@@ -132,13 +195,13 @@ type uint32 = number;
2: "fail",
fail: "fail"
}
- export enum MessageKind {
+ export enum MessageLevel {
err = 1,
warn = 2,
note = 3,
debug = 4
}
- export const MessageKindKeys = {
+ export const MessageLevelKeys = {
1: "err",
err: "err",
2: "warn",
@@ -193,6 +256,62 @@ type uint32 = number;
2: "manifest",
manifest: "manifest"
}
+ export interface StackFrame {
+ function_name: string;
+ file: string;
+ position: StackFramePosition;
+ scope: StackFrameScope;
+ }
+
+ export interface StackFramePosition {
+ source_offset: int32;
+ line: int32;
+ line_start: int32;
+ line_stop: int32;
+ column_start: int32;
+ column_stop: int32;
+ expression_start: int32;
+ expression_stop: int32;
+ }
+
+ export interface SourceLine {
+ line: int32;
+ text: string;
+ }
+
+ export interface StackTrace {
+ source_lines: SourceLine[];
+ frames: StackFrame[];
+ }
+
+ export interface JSException {
+ name?: string;
+ message?: string;
+ runtime_type?: uint16;
+ code?: uint8;
+ stack?: StackTrace;
+ }
+
+ export interface Problems {
+ code: uint16;
+ name: string;
+ exceptions: JSException[];
+ build: Log;
+ }
+
+ export interface Router {
+ routes: string[];
+ route: int32;
+ params: StringMap;
+ }
+
+ export interface FallbackMessageContainer {
+ message?: string;
+ router?: Router;
+ reason?: FallbackStep;
+ problems?: Problems;
+ }
+
export interface JSX {
factory: string;
runtime: JSXRuntime;
@@ -275,20 +394,34 @@ type uint32 = number;
export interface FrameworkConfig {
package?: string;
- client?: string;
- server?: string;
+ client?: FrameworkEntryPointMessage;
+ server?: FrameworkEntryPointMessage;
+ fallback?: FrameworkEntryPointMessage;
development?: boolean;
- client_env?: EnvConfig;
- server_env?: EnvConfig;
client_css_in_js?: CSSInJSBehavior;
}
+ export interface FrameworkEntryPoint {
+ kind: FrameworkEntryPointType;
+ path: string;
+ env: LoadedEnvConfig;
+ }
+
+ export interface FrameworkEntryPointMap {
+ client?: FrameworkEntryPoint;
+ server?: FrameworkEntryPoint;
+ fallback?: FrameworkEntryPoint;
+ }
+
+ export interface FrameworkEntryPointMessage {
+ path?: string;
+ env?: EnvConfig;
+ }
+
export interface LoadedFramework {
- entry_point: string;
package: string;
development: boolean;
- client: boolean;
- env: LoadedEnvConfig;
+ entry_points: FrameworkEntryPointMap;
client_css_in_js: CSSInJSBehavior;
}
@@ -372,10 +505,16 @@ type uint32 = number;
location?: Location;
}
+ export interface MessageMeta {
+ resolve?: string;
+ build?: boolean;
+ }
+
export interface Message {
- kind: MessageKind;
+ level: MessageLevel;
data: MessageData;
notes: MessageData[];
+ on: MessageMeta;
}
export interface Log {
@@ -461,6 +600,22 @@ type uint32 = number;
log: Log;
}
+ export declare function encodeStackFrame(message: StackFrame, bb: ByteBuffer): void;
+ export declare function decodeStackFrame(buffer: ByteBuffer): StackFrame;
+ export declare function encodeStackFramePosition(message: StackFramePosition, bb: ByteBuffer): void;
+ export declare function decodeStackFramePosition(buffer: ByteBuffer): StackFramePosition;
+ export declare function encodeSourceLine(message: SourceLine, bb: ByteBuffer): void;
+ export declare function decodeSourceLine(buffer: ByteBuffer): SourceLine;
+ export declare function encodeStackTrace(message: StackTrace, bb: ByteBuffer): void;
+ export declare function decodeStackTrace(buffer: ByteBuffer): StackTrace;
+ export declare function encodeJSException(message: JSException, bb: ByteBuffer): void;
+ export declare function decodeJSException(buffer: ByteBuffer): JSException;
+ export declare function encodeProblems(message: Problems, bb: ByteBuffer): void;
+ export declare function decodeProblems(buffer: ByteBuffer): Problems;
+ export declare function encodeRouter(message: Router, bb: ByteBuffer): void;
+ export declare function decodeRouter(buffer: ByteBuffer): Router;
+ export declare function encodeFallbackMessageContainer(message: FallbackMessageContainer, bb: ByteBuffer): void;
+ export declare function decodeFallbackMessageContainer(buffer: ByteBuffer): FallbackMessageContainer;
export declare function encodeJSX(message: JSX, bb: ByteBuffer): void;
export declare function decodeJSX(buffer: ByteBuffer): JSX;
export declare function encodeStringPointer(message: StringPointer, bb: ByteBuffer): void;
@@ -487,6 +642,12 @@ type uint32 = number;
export declare function decodeLoadedEnvConfig(buffer: ByteBuffer): LoadedEnvConfig;
export declare function encodeFrameworkConfig(message: FrameworkConfig, bb: ByteBuffer): void;
export declare function decodeFrameworkConfig(buffer: ByteBuffer): FrameworkConfig;
+ export declare function encodeFrameworkEntryPoint(message: FrameworkEntryPoint, bb: ByteBuffer): void;
+ export declare function decodeFrameworkEntryPoint(buffer: ByteBuffer): FrameworkEntryPoint;
+ export declare function encodeFrameworkEntryPointMap(message: FrameworkEntryPointMap, bb: ByteBuffer): void;
+ export declare function decodeFrameworkEntryPointMap(buffer: ByteBuffer): FrameworkEntryPointMap;
+ export declare function encodeFrameworkEntryPointMessage(message: FrameworkEntryPointMessage, bb: ByteBuffer): void;
+ export declare function decodeFrameworkEntryPointMessage(buffer: ByteBuffer): FrameworkEntryPointMessage;
export declare function encodeLoadedFramework(message: LoadedFramework, bb: ByteBuffer): void;
export declare function decodeLoadedFramework(buffer: ByteBuffer): LoadedFramework;
export declare function encodeLoadedRouteConfig(message: LoadedRouteConfig, bb: ByteBuffer): void;
@@ -507,6 +668,8 @@ type uint32 = number;
export declare function decodeLocation(buffer: ByteBuffer): Location;
export declare function encodeMessageData(message: MessageData, bb: ByteBuffer): void;
export declare function decodeMessageData(buffer: ByteBuffer): MessageData;
+ export declare function encodeMessageMeta(message: MessageMeta, bb: ByteBuffer): void;
+ export declare function decodeMessageMeta(buffer: ByteBuffer): MessageMeta;
export declare function encodeMessage(message: Message, bb: ByteBuffer): void;
export declare function decodeMessage(buffer: ByteBuffer): Message;
export declare function encodeLog(message: Log, bb: ByteBuffer): void;
diff --git a/src/api/schema.js b/src/api/schema.js
index 0ae493e20..73e7e20c7 100644
--- a/src/api/schema.js
+++ b/src/api/schema.js
@@ -30,6 +30,490 @@ const LoaderKeys = {
"file": "file",
"json": "json"
};
+const FrameworkEntryPointType = {
+ "1": 1,
+ "2": 2,
+ "3": 3,
+ "client": 1,
+ "server": 2,
+ "fallback": 3
+};
+const FrameworkEntryPointTypeKeys = {
+ "1": "client",
+ "2": "server",
+ "3": "fallback",
+ "client": "client",
+ "server": "server",
+ "fallback": "fallback"
+};
+const StackFrameScope = {
+ "1": 1,
+ "2": 2,
+ "3": 3,
+ "4": 4,
+ "5": 5,
+ "6": 6,
+ "Eval": 1,
+ "Module": 2,
+ "Function": 3,
+ "Global": 4,
+ "Wasm": 5,
+ "Constructor": 6
+};
+const StackFrameScopeKeys = {
+ "1": "Eval",
+ "2": "Module",
+ "3": "Function",
+ "4": "Global",
+ "5": "Wasm",
+ "6": "Constructor",
+ "Eval": "Eval",
+ "Module": "Module",
+ "Function": "Function",
+ "Global": "Global",
+ "Wasm": "Wasm",
+ "Constructor": "Constructor"
+};
+
+function decodeStackFrame(bb) {
+ var result = {};
+
+ result["function_name"] = bb.readString();
+ result["file"] = bb.readString();
+ result["position"] = decodeStackFramePosition(bb);
+ result["scope"] = StackFrameScope[bb.readByte()];
+ return result;
+}
+
+function encodeStackFrame(message, bb) {
+
+ var value = message["function_name"];
+ if (value != null) {
+ bb.writeString(value);
+ } else {
+ throw new Error("Missing required field \"function_name\"");
+ }
+
+ var value = message["file"];
+ if (value != null) {
+ bb.writeString(value);
+ } else {
+ throw new Error("Missing required field \"file\"");
+ }
+
+ var value = message["position"];
+ if (value != null) {
+ encodeStackFramePosition(value, bb);
+ } else {
+ throw new Error("Missing required field \"position\"");
+ }
+
+ var value = message["scope"];
+ if (value != null) {
+ var encoded = StackFrameScope[value];
+if (encoded === void 0) throw new Error("Invalid value " + JSON.stringify(value) + " for enum \"StackFrameScope\"");
+bb.writeByte(encoded);
+ } else {
+ throw new Error("Missing required field \"scope\"");
+ }
+
+}
+
+function decodeStackFramePosition(bb) {
+ var result = {};
+
+ result["source_offset"] = bb.readInt32();
+ result["line"] = bb.readInt32();
+ result["line_start"] = bb.readInt32();
+ result["line_stop"] = bb.readInt32();
+ result["column_start"] = bb.readInt32();
+ result["column_stop"] = bb.readInt32();
+ result["expression_start"] = bb.readInt32();
+ result["expression_stop"] = bb.readInt32();
+ return result;
+}
+
+function encodeStackFramePosition(message, bb) {
+
+ var value = message["source_offset"];
+ if (value != null) {
+ bb.writeInt32(value);
+ } else {
+ throw new Error("Missing required field \"source_offset\"");
+ }
+
+ var value = message["line"];
+ if (value != null) {
+ bb.writeInt32(value);
+ } else {
+ throw new Error("Missing required field \"line\"");
+ }
+
+ var value = message["line_start"];
+ if (value != null) {
+ bb.writeInt32(value);
+ } else {
+ throw new Error("Missing required field \"line_start\"");
+ }
+
+ var value = message["line_stop"];
+ if (value != null) {
+ bb.writeInt32(value);
+ } else {
+ throw new Error("Missing required field \"line_stop\"");
+ }
+
+ var value = message["column_start"];
+ if (value != null) {
+ bb.writeInt32(value);
+ } else {
+ throw new Error("Missing required field \"column_start\"");
+ }
+
+ var value = message["column_stop"];
+ if (value != null) {
+ bb.writeInt32(value);
+ } else {
+ throw new Error("Missing required field \"column_stop\"");
+ }
+
+ var value = message["expression_start"];
+ if (value != null) {
+ bb.writeInt32(value);
+ } else {
+ throw new Error("Missing required field \"expression_start\"");
+ }
+
+ var value = message["expression_stop"];
+ if (value != null) {
+ bb.writeInt32(value);
+ } else {
+ throw new Error("Missing required field \"expression_stop\"");
+ }
+
+}
+
+function decodeSourceLine(bb) {
+ var result = {};
+
+ result["line"] = bb.readInt32();
+ result["text"] = bb.readString();
+ return result;
+}
+
+function encodeSourceLine(message, bb) {
+
+ var value = message["line"];
+ if (value != null) {
+ bb.writeInt32(value);
+ } else {
+ throw new Error("Missing required field \"line\"");
+ }
+
+ var value = message["text"];
+ if (value != null) {
+ bb.writeString(value);
+ } else {
+ throw new Error("Missing required field \"text\"");
+ }
+
+}
+
+function decodeStackTrace(bb) {
+ var result = {};
+
+ var length = bb.readVarUint();
+ var values = result["source_lines"] = Array(length);
+ for (var i = 0; i < length; i++) values[i] = decodeSourceLine(bb);
+ var length = bb.readVarUint();
+ var values = result["frames"] = Array(length);
+ for (var i = 0; i < length; i++) values[i] = decodeStackFrame(bb);
+ return result;
+}
+
+function encodeStackTrace(message, bb) {
+
+ var value = message["source_lines"];
+ if (value != null) {
+ var values = value, n = values.length;
+ bb.writeVarUint(n);
+ for (var i = 0; i < n; i++) {
+ value = values[i];
+ encodeSourceLine(value, bb);
+ }
+ } else {
+ throw new Error("Missing required field \"source_lines\"");
+ }
+
+ var value = message["frames"];
+ if (value != null) {
+ var values = value, n = values.length;
+ bb.writeVarUint(n);
+ for (var i = 0; i < n; i++) {
+ value = values[i];
+ encodeStackFrame(value, bb);
+ }
+ } else {
+ throw new Error("Missing required field \"frames\"");
+ }
+
+}
+
+function decodeJSException(bb) {
+ var result = {};
+
+ while (true) {
+ switch (bb.readByte()) {
+ case 0:
+ return result;
+
+ case 1:
+ result["name"] = bb.readString();
+ break;
+
+ case 2:
+ result["message"] = bb.readString();
+ break;
+
+ case 3:
+ result["runtime_type"] = bb.readUint16();
+ break;
+
+ case 4:
+ result["code"] = bb.readByte();
+ break;
+
+ case 5:
+ result["stack"] = decodeStackTrace(bb);
+ break;
+
+ default:
+ throw new Error("Attempted to parse invalid message");
+ }
+ }
+}
+
+function encodeJSException(message, bb) {
+
+ var value = message["name"];
+ if (value != null) {
+ bb.writeByte(1);
+ bb.writeString(value);
+ }
+
+ var value = message["message"];
+ if (value != null) {
+ bb.writeByte(2);
+ bb.writeString(value);
+ }
+
+ var value = message["runtime_type"];
+ if (value != null) {
+ bb.writeByte(3);
+ bb.writeUint16(value);
+ }
+
+ var value = message["code"];
+ if (value != null) {
+ bb.writeByte(4);
+ bb.writeByte(value);
+ }
+
+ var value = message["stack"];
+ if (value != null) {
+ bb.writeByte(5);
+ encodeStackTrace(value, bb);
+ }
+ bb.writeByte(0);
+
+}
+const FallbackStep = {
+ "1": 1,
+ "2": 2,
+ "3": 3,
+ "4": 4,
+ "5": 5,
+ "6": 6,
+ "7": 7,
+ "8": 8,
+ "ssr_disabled": 1,
+ "create_vm": 2,
+ "configure_router": 3,
+ "configure_defines": 4,
+ "resolve_entry_point": 5,
+ "load_entry_point": 6,
+ "eval_entry_point": 7,
+ "fetch_event_handler": 8
+};
+const FallbackStepKeys = {
+ "1": "ssr_disabled",
+ "2": "create_vm",
+ "3": "configure_router",
+ "4": "configure_defines",
+ "5": "resolve_entry_point",
+ "6": "load_entry_point",
+ "7": "eval_entry_point",
+ "8": "fetch_event_handler",
+ "ssr_disabled": "ssr_disabled",
+ "create_vm": "create_vm",
+ "configure_router": "configure_router",
+ "configure_defines": "configure_defines",
+ "resolve_entry_point": "resolve_entry_point",
+ "load_entry_point": "load_entry_point",
+ "eval_entry_point": "eval_entry_point",
+ "fetch_event_handler": "fetch_event_handler"
+};
+
+function decodeProblems(bb) {
+ var result = {};
+
+ result["code"] = bb.readUint16();
+ result["name"] = bb.readString();
+ var length = bb.readVarUint();
+ var values = result["exceptions"] = Array(length);
+ for (var i = 0; i < length; i++) values[i] = decodeJSException(bb);
+ result["build"] = decodeLog(bb);
+ return result;
+}
+
+function encodeProblems(message, bb) {
+
+ var value = message["code"];
+ if (value != null) {
+ bb.writeUint16(value);
+ } else {
+ throw new Error("Missing required field \"code\"");
+ }
+
+ var value = message["name"];
+ if (value != null) {
+ bb.writeString(value);
+ } else {
+ throw new Error("Missing required field \"name\"");
+ }
+
+ var value = message["exceptions"];
+ if (value != null) {
+ var values = value, n = values.length;
+ bb.writeVarUint(n);
+ for (var i = 0; i < n; i++) {
+ value = values[i];
+ encodeJSException(value, bb);
+ }
+ } else {
+ throw new Error("Missing required field \"exceptions\"");
+ }
+
+ var value = message["build"];
+ if (value != null) {
+ encodeLog(value, bb);
+ } else {
+ throw new Error("Missing required field \"build\"");
+ }
+
+}
+
+function decodeRouter(bb) {
+ var result = {};
+
+ var length = bb.readVarUint();
+ var values = result["routes"] = Array(length);
+ for (var i = 0; i < length; i++) values[i] = bb.readString();
+ result["route"] = bb.readInt32();
+ result["params"] = decodeStringMap(bb);
+ return result;
+}
+
+function encodeRouter(message, bb) {
+
+ var value = message["routes"];
+ if (value != null) {
+ var values = value, n = values.length;
+ bb.writeVarUint(n);
+ for (var i = 0; i < n; i++) {
+ value = values[i];
+ bb.writeString(value);
+ }
+ } else {
+ throw new Error("Missing required field \"routes\"");
+ }
+
+ var value = message["route"];
+ if (value != null) {
+ bb.writeInt32(value);
+ } else {
+ throw new Error("Missing required field \"route\"");
+ }
+
+ var value = message["params"];
+ if (value != null) {
+ encodeStringMap(value, bb);
+ } else {
+ throw new Error("Missing required field \"params\"");
+ }
+
+}
+
+function decodeFallbackMessageContainer(bb) {
+ var result = {};
+
+ while (true) {
+ switch (bb.readByte()) {
+ case 0:
+ return result;
+
+ case 1:
+ result["message"] = bb.readString();
+ break;
+
+ case 2:
+ result["router"] = decodeRouter(bb);
+ break;
+
+ case 3:
+ result["reason"] = FallbackStep[bb.readByte()];
+ break;
+
+ case 4:
+ result["problems"] = decodeProblems(bb);
+ break;
+
+ default:
+ throw new Error("Attempted to parse invalid message");
+ }
+ }
+}
+
+function encodeFallbackMessageContainer(message, bb) {
+
+ var value = message["message"];
+ if (value != null) {
+ bb.writeByte(1);
+ bb.writeString(value);
+ }
+
+ var value = message["router"];
+ if (value != null) {
+ bb.writeByte(2);
+ encodeRouter(value, bb);
+ }
+
+ var value = message["reason"];
+ if (value != null) {
+ bb.writeByte(3);
+ var encoded = FallbackStep[value];
+if (encoded === void 0) throw new Error("Invalid value " + JSON.stringify(value) + " for enum \"FallbackStep\"");
+bb.writeByte(encoded);
+ }
+
+ var value = message["problems"];
+ if (value != null) {
+ bb.writeByte(4);
+ encodeProblems(value, bb);
+ }
+ bb.writeByte(0);
+
+}
const ResolveMode = {
"1": 1,
"2": 2,
@@ -709,26 +1193,22 @@ function decodeFrameworkConfig(bb) {
break;
case 2:
- result["client"] = bb.readString();
+ result["client"] = decodeFrameworkEntryPointMessage(bb);
break;
case 3:
- result["server"] = bb.readString();
+ result["server"] = decodeFrameworkEntryPointMessage(bb);
break;
case 4:
- result["development"] = !!bb.readByte();
+ result["fallback"] = decodeFrameworkEntryPointMessage(bb);
break;
case 5:
- result["client_env"] = decodeEnvConfig(bb);
+ result["development"] = !!bb.readByte();
break;
case 6:
- result["server_env"] = decodeEnvConfig(bb);
- break;
-
- case 7:
result["client_css_in_js"] = CSSInJSBehavior[bb.readByte()];
break;
@@ -749,36 +1229,30 @@ function encodeFrameworkConfig(message, bb) {
var value = message["client"];
if (value != null) {
bb.writeByte(2);
- bb.writeString(value);
+ encodeFrameworkEntryPointMessage(value, bb);
}
var value = message["server"];
if (value != null) {
bb.writeByte(3);
- bb.writeString(value);
+ encodeFrameworkEntryPointMessage(value, bb);
}
- var value = message["development"];
+ var value = message["fallback"];
if (value != null) {
bb.writeByte(4);
- bb.writeByte(value);
+ encodeFrameworkEntryPointMessage(value, bb);
}
- var value = message["client_env"];
+ var value = message["development"];
if (value != null) {
bb.writeByte(5);
- encodeEnvConfig(value, bb);
- }
-
- var value = message["server_env"];
- if (value != null) {
- bb.writeByte(6);
- encodeEnvConfig(value, bb);
+ bb.writeByte(value);
}
var value = message["client_css_in_js"];
if (value != null) {
- bb.writeByte(7);
+ bb.writeByte(6);
var encoded = CSSInJSBehavior[value];
if (encoded === void 0) throw new Error("Invalid value " + JSON.stringify(value) + " for enum \"CSSInJSBehavior\"");
bb.writeByte(encoded);
@@ -787,53 +1261,161 @@ bb.writeByte(encoded);
}
-function decodeLoadedFramework(bb) {
+function decodeFrameworkEntryPoint(bb) {
var result = {};
- result["entry_point"] = bb.readString();
- result["package"] = bb.readString();
- result["development"] = !!bb.readByte();
- result["client"] = !!bb.readByte();
+ result["kind"] = FrameworkEntryPointType[bb.readByte()];
+ result["path"] = bb.readString();
result["env"] = decodeLoadedEnvConfig(bb);
- result["client_css_in_js"] = CSSInJSBehavior[bb.readByte()];
return result;
}
-function encodeLoadedFramework(message, bb) {
+function encodeFrameworkEntryPoint(message, bb) {
- var value = message["entry_point"];
+ var value = message["kind"];
if (value != null) {
- bb.writeString(value);
+ var encoded = FrameworkEntryPointType[value];
+if (encoded === void 0) throw new Error("Invalid value " + JSON.stringify(value) + " for enum \"FrameworkEntryPointType\"");
+bb.writeByte(encoded);
} else {
- throw new Error("Missing required field \"entry_point\"");
+ throw new Error("Missing required field \"kind\"");
}
- var value = message["package"];
+ var value = message["path"];
if (value != null) {
bb.writeString(value);
} else {
- throw new Error("Missing required field \"package\"");
+ throw new Error("Missing required field \"path\"");
}
- var value = message["development"];
+ var value = message["env"];
if (value != null) {
- bb.writeByte(value);
+ encodeLoadedEnvConfig(value, bb);
} else {
- throw new Error("Missing required field \"development\"");
+ throw new Error("Missing required field \"env\"");
+ }
+
+}
+
+function decodeFrameworkEntryPointMap(bb) {
+ var result = {};
+
+ while (true) {
+ switch (bb.readByte()) {
+ case 0:
+ return result;
+
+ case 1:
+ result["client"] = decodeFrameworkEntryPoint(bb);
+ break;
+
+ case 2:
+ result["server"] = decodeFrameworkEntryPoint(bb);
+ break;
+
+ case 3:
+ result["fallback"] = decodeFrameworkEntryPoint(bb);
+ break;
+
+ default:
+ throw new Error("Attempted to parse invalid message");
+ }
}
+}
+
+function encodeFrameworkEntryPointMap(message, bb) {
var value = message["client"];
if (value != null) {
+ bb.writeByte(1);
+ encodeFrameworkEntryPoint(value, bb);
+ }
+
+ var value = message["server"];
+ if (value != null) {
+ bb.writeByte(2);
+ encodeFrameworkEntryPoint(value, bb);
+ }
+
+ var value = message["fallback"];
+ if (value != null) {
+ bb.writeByte(3);
+ encodeFrameworkEntryPoint(value, bb);
+ }
+ bb.writeByte(0);
+
+}
+
+function decodeFrameworkEntryPointMessage(bb) {
+ var result = {};
+
+ while (true) {
+ switch (bb.readByte()) {
+ case 0:
+ return result;
+
+ case 1:
+ result["path"] = bb.readString();
+ break;
+
+ case 2:
+ result["env"] = decodeEnvConfig(bb);
+ break;
+
+ default:
+ throw new Error("Attempted to parse invalid message");
+ }
+ }
+}
+
+function encodeFrameworkEntryPointMessage(message, bb) {
+
+ var value = message["path"];
+ if (value != null) {
+ bb.writeByte(1);
+ bb.writeString(value);
+ }
+
+ var value = message["env"];
+ if (value != null) {
+ bb.writeByte(2);
+ encodeEnvConfig(value, bb);
+ }
+ bb.writeByte(0);
+
+}
+
+function decodeLoadedFramework(bb) {
+ var result = {};
+
+ result["package"] = bb.readString();
+ result["development"] = !!bb.readByte();
+ result["entry_points"] = decodeFrameworkEntryPointMap(bb);
+ result["client_css_in_js"] = CSSInJSBehavior[bb.readByte()];
+ return result;
+}
+
+function encodeLoadedFramework(message, bb) {
+
+ var value = message["package"];
+ if (value != null) {
+ bb.writeString(value);
+ } else {
+ throw new Error("Missing required field \"package\"");
+ }
+
+ var value = message["development"];
+ if (value != null) {
bb.writeByte(value);
} else {
- throw new Error("Missing required field \"client\"");
+ throw new Error("Missing required field \"development\"");
}
- var value = message["env"];
+ var value = message["entry_points"];
if (value != null) {
- encodeLoadedEnvConfig(value, bb);
+ encodeFrameworkEntryPointMap(value, bb);
} else {
- throw new Error("Missing required field \"env\"");
+ throw new Error("Missing required field \"entry_points\"");
}
var value = message["client_css_in_js"];
@@ -1449,7 +2031,7 @@ bb.writeVarUint(encoded);
}
}
-const MessageKind = {
+const MessageLevel = {
"1": 1,
"2": 2,
"3": 3,
@@ -1459,7 +2041,7 @@ const MessageKind = {
"note": 3,
"debug": 4
};
-const MessageKindKeys = {
+const MessageLevelKeys = {
"1": "err",
"2": "warn",
"3": "note",
@@ -1575,26 +2157,66 @@ function encodeMessageData(message, bb) {
}
+function decodeMessageMeta(bb) {
+ var result = {};
+
+ while (true) {
+ switch (bb.readByte()) {
+ case 0:
+ return result;
+
+ case 1:
+ result["resolve"] = bb.readString();
+ break;
+
+ case 2:
+ result["build"] = !!bb.readByte();
+ break;
+
+ default:
+ throw new Error("Attempted to parse invalid message");
+ }
+ }
+}
+
+function encodeMessageMeta(message, bb) {
+
+ var value = message["resolve"];
+ if (value != null) {
+ bb.writeByte(1);
+ bb.writeString(value);
+ }
+
+ var value = message["build"];
+ if (value != null) {
+ bb.writeByte(2);
+ bb.writeByte(value);
+ }
+ bb.writeByte(0);
+
+}
+
function decodeMessage(bb) {
var result = {};
- result["kind"] = MessageKind[bb.readVarUint()];
+ result["level"] = MessageLevel[bb.readVarUint()];
result["data"] = decodeMessageData(bb);
var length = bb.readVarUint();
var values = result["notes"] = Array(length);
for (var i = 0; i < length; i++) values[i] = decodeMessageData(bb);
+ result["on"] = decodeMessageMeta(bb);
return result;
}
function encodeMessage(message, bb) {
- var value = message["kind"];
+ var value = message["level"];
if (value != null) {
- var encoded = MessageKind[value];
-if (encoded === void 0) throw new Error("Invalid value " + JSON.stringify(value) + " for enum \"MessageKind\"");
+ var encoded = MessageLevel[value];
+if (encoded === void 0) throw new Error("Invalid value " + JSON.stringify(value) + " for enum \"MessageLevel\"");
bb.writeVarUint(encoded);
} else {
- throw new Error("Missing required field \"kind\"");
+ throw new Error("Missing required field \"level\"");
}
var value = message["data"];
@@ -1616,6 +2238,13 @@ bb.writeVarUint(encoded);
throw new Error("Missing required field \"notes\"");
}
+ var value = message["on"];
+ if (value != null) {
+ encodeMessageMeta(value, bb);
+ } else {
+ throw new Error("Missing required field \"on\"");
+ }
+
}
function decodeLog(bb) {
@@ -2167,6 +2796,28 @@ bb.writeByte(encoded);
export { Loader }
export { LoaderKeys }
+export { FrameworkEntryPointType }
+export { FrameworkEntryPointTypeKeys }
+export { StackFrameScope }
+export { StackFrameScopeKeys }
+export { decodeStackFrame }
+export { encodeStackFrame }
+export { decodeStackFramePosition }
+export { encodeStackFramePosition }
+export { decodeSourceLine }
+export { encodeSourceLine }
+export { decodeStackTrace }
+export { encodeStackTrace }
+export { decodeJSException }
+export { encodeJSException }
+export { FallbackStep }
+export { FallbackStepKeys }
+export { decodeProblems }
+export { encodeProblems }
+export { decodeRouter }
+export { encodeRouter }
+export { decodeFallbackMessageContainer }
+export { encodeFallbackMessageContainer }
export { ResolveMode }
export { ResolveModeKeys }
export { Platform }
@@ -2207,6 +2858,12 @@ export { decodeLoadedEnvConfig }
export { encodeLoadedEnvConfig }
export { decodeFrameworkConfig }
export { encodeFrameworkConfig }
+export { decodeFrameworkEntryPoint }
+export { encodeFrameworkEntryPoint }
+export { decodeFrameworkEntryPointMap }
+export { encodeFrameworkEntryPointMap }
+export { decodeFrameworkEntryPointMessage }
+export { encodeFrameworkEntryPointMessage }
export { decodeLoadedFramework }
export { encodeLoadedFramework }
export { decodeLoadedRouteConfig }
@@ -2225,12 +2882,14 @@ export { decodeOutputFile }
export { encodeOutputFile }
export { decodeTransformResponse }
export { encodeTransformResponse }
-export { MessageKind }
-export { MessageKindKeys }
+export { MessageLevel }
+export { MessageLevelKeys }
export { decodeLocation }
export { encodeLocation }
export { decodeMessageData }
export { encodeMessageData }
+export { decodeMessageMeta }
+export { encodeMessageMeta }
export { decodeMessage }
export { encodeMessage }
export { decodeLog }
diff --git a/src/api/schema.peechy b/src/api/schema.peechy
index fd0b81fd2..3b7b2669e 100644
--- a/src/api/schema.peechy
+++ b/src/api/schema.peechy
@@ -10,6 +10,93 @@ smol Loader {
json = 7;
}
+smol FrameworkEntryPointType {
+ client = 1;
+ server = 2;
+ fallback = 3;
+}
+
+smol StackFrameScope {
+ Eval = 1;
+ Module = 2;
+ Function = 3;
+ Global = 4;
+ Wasm = 5;
+ Constructor = 6;
+}
+
+struct StackFrame {
+ string function_name;
+ string file;
+ StackFramePosition position;
+ StackFrameScope scope;
+}
+
+struct StackFramePosition {
+ int32 source_offset;
+ int32 line;
+ int32 line_start;
+ int32 line_stop;
+ int32 column_start;
+ int32 column_stop;
+ int32 expression_start;
+ int32 expression_stop;
+}
+
+struct SourceLine {
+ int32 line;
+ string text;
+}
+
+struct StackTrace {
+ SourceLine[] source_lines;
+ StackFrame[] frames;
+}
+
+
+message JSException {
+ string name = 1;
+ string message = 2;
+
+ uint16 runtime_type = 3;
+ uint8 code = 4;
+
+ StackTrace stack = 5;
+}
+
+smol FallbackStep {
+ ssr_disabled = 1;
+ create_vm = 2;
+ configure_router = 3;
+ configure_defines = 4;
+ resolve_entry_point = 5;
+ load_entry_point = 6;
+ eval_entry_point = 7;
+ fetch_event_handler = 8;
+}
+
+struct Problems {
+ uint16 code;
+ string name;
+
+ JSException[] exceptions;
+ Log build;
+}
+
+struct Router {
+ string[] routes;
+ int32 route;
+ StringMap params;
+}
+
+message FallbackMessageContainer {
+ string message = 1;
+ Router router = 2;
+ FallbackStep reason = 3;
+ Problems problems = 4;
+}
+
+
smol ResolveMode {
disable = 1;
lazy = 2;
@@ -161,22 +248,35 @@ struct LoadedEnvConfig {
message FrameworkConfig {
string package = 1;
- string client = 2;
- string server = 3;
- bool development = 4;
- EnvConfig client_env = 5;
- EnvConfig server_env = 6;
+ FrameworkEntryPointMessage client = 2;
+ FrameworkEntryPointMessage server = 3;
+ FrameworkEntryPointMessage fallback = 4;
+ bool development = 5;
+
+ CSSInJSBehavior client_css_in_js = 6;
+}
- CSSInJSBehavior client_css_in_js = 7;
+struct FrameworkEntryPoint {
+ FrameworkEntryPointType kind;
+ string path;
+ LoadedEnvConfig env;
+}
+
+message FrameworkEntryPointMap {
+ FrameworkEntryPoint client = 1;
+ FrameworkEntryPoint server = 2;
+ FrameworkEntryPoint fallback = 3;
+}
+
+message FrameworkEntryPointMessage {
+ string path = 1;
+ EnvConfig env = 2;
}
struct LoadedFramework {
- string entry_point;
string package;
bool development;
- bool client;
- LoadedEnvConfig env;
-
+ FrameworkEntryPointMap entry_points;
CSSInJSBehavior client_css_in_js;
}
@@ -264,7 +364,7 @@ struct TransformResponse {
Message[] errors;
}
-enum MessageKind {
+enum MessageLevel {
err = 1;
warn =2;
note = 3;
@@ -286,10 +386,18 @@ message MessageData {
Location location = 2;
}
+
+
+message MessageMeta {
+ string resolve = 1;
+ bool build = 2;
+}
+
struct Message {
- MessageKind kind;
+ MessageLevel level;
MessageData data;
MessageData[] notes;
+ MessageMeta on;
}
struct Log {
diff --git a/src/api/schema.zig b/src/api/schema.zig
index 639eeae98..bd0873540 100644
--- a/src/api/schema.zig
+++ b/src/api/schema.zig
@@ -1,3 +1,4 @@
+
const std = @import("std");
pub const Reader = struct {
@@ -281,1762 +282,2440 @@ pub fn Writer(comptime WritableStream: type) type {
pub const ByteWriter = Writer(*std.io.FixedBufferStream([]u8));
pub const FileWriter = Writer(std.fs.File);
-pub const Api = struct {
- pub const Loader = enum(u8) {
- _none,
- /// jsx
- jsx,
- /// js
- js,
- /// ts
- ts,
- /// tsx
- tsx,
+pub const Api = struct {
- /// css
- css,
+pub const Loader = enum(u8) {
- /// file
- file,
+_none,
+ /// jsx
+ jsx,
- /// json
- json,
+ /// js
+ js,
- _,
+ /// ts
+ ts,
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+ /// tsx
+ tsx,
- pub const ResolveMode = enum(u8) {
- _none,
- /// disable
- disable,
+ /// css
+ css,
- /// lazy
- lazy,
+ /// file
+ file,
- /// dev
- dev,
+ /// json
+ json,
- /// bundle
- bundle,
+_,
- _,
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
+ }
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+
+};
- pub const Platform = enum(u8) {
- _none,
- /// browser
- browser,
+pub const FrameworkEntryPointType = enum(u8) {
- /// node
- node,
+_none,
+ /// client
+ client,
- /// bun
- bun,
+ /// server
+ server,
- _,
+ /// fallback
+ fallback,
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+_,
- pub const CssInJsBehavior = enum(u8) {
- _none,
- /// facade
- facade,
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
+ }
- /// facade_onimportcss
- facade_onimportcss,
+
+};
- /// auto_onimportcss
- auto_onimportcss,
+pub const StackFrameScope = enum(u8) {
- _,
+_none,
+ /// Eval
+ eval,
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+ /// Module
+ module,
- pub const JsxRuntime = enum(u8) {
- _none,
- /// automatic
- automatic,
+ /// Function
+ function,
- /// classic
- classic,
+ /// Global
+ global,
- _,
+ /// Wasm
+ wasm,
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+ /// Constructor
+ constructor,
- pub const Jsx = struct {
- /// factory
- factory: []const u8,
+_,
- /// runtime
- runtime: JsxRuntime,
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
+ }
- /// fragment
- fragment: []const u8,
+
+};
- /// development
- development: bool = false,
+pub const StackFrame = struct {
+/// function_name
+function_name: []const u8,
- /// import_source
- import_source: []const u8,
+/// file
+file: []const u8,
- /// react_fast_refresh
- react_fast_refresh: bool = false,
+/// position
+position: StackFramePosition,
- pub fn decode(reader: anytype) anyerror!Jsx {
- var this = std.mem.zeroes(Jsx);
+/// scope
+scope: StackFrameScope,
- this.factory = try reader.readValue([]const u8);
- this.runtime = try reader.readValue(JsxRuntime);
- this.fragment = try reader.readValue([]const u8);
- this.development = try reader.readValue(bool);
- this.import_source = try reader.readValue([]const u8);
- this.react_fast_refresh = try reader.readValue(bool);
- return this;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeValue(this.factory);
- try writer.writeEnum(this.runtime);
- try writer.writeValue(this.fragment);
- try writer.writeInt(@intCast(u8, @boolToInt(this.development)));
- try writer.writeValue(this.import_source);
- try writer.writeInt(@intCast(u8, @boolToInt(this.react_fast_refresh)));
- }
- };
+pub fn decode(reader: anytype) anyerror!StackFrame {
+ var this = std.mem.zeroes(StackFrame);
- pub const StringPointer = packed struct {
- /// offset
- offset: u32 = 0,
+ this.function_name = try reader.readValue([]const u8);
+ this.file = try reader.readValue([]const u8);
+ this.position = try reader.readValue(StackFramePosition);
+ this.scope = try reader.readValue(StackFrameScope);
+ return this;
+}
- /// length
- length: u32 = 0,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeValue(this.function_name);
+ try writer.writeValue(this.file);
+ try writer.writeValue(this.position);
+ try writer.writeEnum(this.scope);
+}
- pub fn decode(reader: anytype) anyerror!StringPointer {
- var this = std.mem.zeroes(StringPointer);
+};
- this.offset = try reader.readValue(u32);
- this.length = try reader.readValue(u32);
- return this;
- }
+pub const StackFramePosition = packed struct {
+/// source_offset
+source_offset: i32 = 0,
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeInt(this.offset);
- try writer.writeInt(this.length);
- }
- };
+/// line
+line: i32 = 0,
- pub const JavascriptBundledModule = struct {
- /// path
- path: StringPointer,
+/// line_start
+line_start: i32 = 0,
- /// code
- code: StringPointer,
+/// line_stop
+line_stop: i32 = 0,
- /// package_id
- package_id: u32 = 0,
+/// column_start
+column_start: i32 = 0,
- /// id
- id: u32 = 0,
+/// column_stop
+column_stop: i32 = 0,
- /// path_extname_length
- path_extname_length: u8 = 0,
+/// expression_start
+expression_start: i32 = 0,
- pub fn decode(reader: anytype) anyerror!JavascriptBundledModule {
- var this = std.mem.zeroes(JavascriptBundledModule);
+/// expression_stop
+expression_stop: i32 = 0,
- this.path = try reader.readValue(StringPointer);
- this.code = try reader.readValue(StringPointer);
- this.package_id = try reader.readValue(u32);
- this.id = try reader.readValue(u32);
- this.path_extname_length = try reader.readValue(u8);
- return this;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeValue(this.path);
- try writer.writeValue(this.code);
- try writer.writeInt(this.package_id);
- try writer.writeInt(this.id);
- try writer.writeInt(this.path_extname_length);
- }
- };
+pub fn decode(reader: anytype) anyerror!StackFramePosition {
+ var this = std.mem.zeroes(StackFramePosition);
- pub const JavascriptBundledPackage = struct {
- /// name
- name: StringPointer,
+ this.source_offset = try reader.readValue(i32);
+ this.line = try reader.readValue(i32);
+ this.line_start = try reader.readValue(i32);
+ this.line_stop = try reader.readValue(i32);
+ this.column_start = try reader.readValue(i32);
+ this.column_stop = try reader.readValue(i32);
+ this.expression_start = try reader.readValue(i32);
+ this.expression_stop = try reader.readValue(i32);
+ return this;
+}
- /// version
- version: StringPointer,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.source_offset);
+ try writer.writeInt(this.line);
+ try writer.writeInt(this.line_start);
+ try writer.writeInt(this.line_stop);
+ try writer.writeInt(this.column_start);
+ try writer.writeInt(this.column_stop);
+ try writer.writeInt(this.expression_start);
+ try writer.writeInt(this.expression_stop);
+}
- /// hash
- hash: u32 = 0,
+};
- /// modules_offset
- modules_offset: u32 = 0,
+pub const SourceLine = struct {
+/// line
+line: i32 = 0,
- /// modules_length
- modules_length: u32 = 0,
+/// text
+text: []const u8,
- pub fn decode(reader: anytype) anyerror!JavascriptBundledPackage {
- var this = std.mem.zeroes(JavascriptBundledPackage);
- this.name = try reader.readValue(StringPointer);
- this.version = try reader.readValue(StringPointer);
- this.hash = try reader.readValue(u32);
- this.modules_offset = try reader.readValue(u32);
- this.modules_length = try reader.readValue(u32);
- return this;
- }
+pub fn decode(reader: anytype) anyerror!SourceLine {
+ var this = std.mem.zeroes(SourceLine);
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeValue(this.name);
- try writer.writeValue(this.version);
- try writer.writeInt(this.hash);
- try writer.writeInt(this.modules_offset);
- try writer.writeInt(this.modules_length);
- }
- };
+ this.line = try reader.readValue(i32);
+ this.text = try reader.readValue([]const u8);
+ return this;
+}
- pub const JavascriptBundle = struct {
- /// modules
- modules: []const JavascriptBundledModule,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.line);
+ try writer.writeValue(this.text);
+}
- /// packages
- packages: []const JavascriptBundledPackage,
+};
- /// etag
- etag: []const u8,
+pub const StackTrace = struct {
+/// source_lines
+source_lines: []const SourceLine,
- /// generated_at
- generated_at: u32 = 0,
+/// frames
+frames: []const StackFrame,
- /// app_package_json_dependencies_hash
- app_package_json_dependencies_hash: []const u8,
- /// import_from_name
- import_from_name: []const u8,
+pub fn decode(reader: anytype) anyerror!StackTrace {
+ var this = std.mem.zeroes(StackTrace);
- /// manifest_string
- manifest_string: []const u8,
+ this.source_lines = try reader.readArray(SourceLine);
+ this.frames = try reader.readArray(StackFrame);
+ return this;
+}
- pub fn decode(reader: anytype) anyerror!JavascriptBundle {
- var this = std.mem.zeroes(JavascriptBundle);
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeArray(SourceLine, this.source_lines);
+ try writer.writeArray(StackFrame, this.frames);
+}
- this.modules = try reader.readArray(JavascriptBundledModule);
- this.packages = try reader.readArray(JavascriptBundledPackage);
- this.etag = try reader.readArray(u8);
- this.generated_at = try reader.readValue(u32);
- this.app_package_json_dependencies_hash = try reader.readArray(u8);
- this.import_from_name = try reader.readArray(u8);
- this.manifest_string = try reader.readArray(u8);
- return this;
- }
+};
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeArray(JavascriptBundledModule, this.modules);
- try writer.writeArray(JavascriptBundledPackage, this.packages);
- try writer.writeArray(u8, this.etag);
- try writer.writeInt(this.generated_at);
- try writer.writeArray(u8, this.app_package_json_dependencies_hash);
- try writer.writeArray(u8, this.import_from_name);
- try writer.writeArray(u8, this.manifest_string);
- }
- };
+pub const JsException = struct {
+/// name
+name: ?[]const u8 = null,
+
+/// message
+message: ?[]const u8 = null,
+
+/// runtime_type
+runtime_type: ?u16 = null,
+
+/// code
+code: ?u8 = null,
+
+/// stack
+stack: ?StackTrace = null,
+
+
+pub fn decode(reader: anytype) anyerror!JsException {
+ var this = std.mem.zeroes(JsException);
+
+ while(true) {
+ switch (try reader.readByte()) {
+ 0 => { return this; },
+
+ 1 => {
+ this.name = try reader.readValue([]const u8);
+},
+ 2 => {
+ this.message = try reader.readValue([]const u8);
+},
+ 3 => {
+ this.runtime_type = try reader.readValue(u16);
+},
+ 4 => {
+ this.code = try reader.readValue(u8);
+},
+ 5 => {
+ this.stack = try reader.readValue(StackTrace);
+},
+ else => {
+ return error.InvalidMessage;
+ },
+ }
+ }
+unreachable;
+}
- pub const JavascriptBundleContainer = struct {
- /// bundle_format_version
- bundle_format_version: ?u32 = null,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+if (this.name) |name| {
+ try writer.writeFieldID(1);
+ try writer.writeValue(name);
+}
+if (this.message) |message| {
+ try writer.writeFieldID(2);
+ try writer.writeValue(message);
+}
+if (this.runtime_type) |runtime_type| {
+ try writer.writeFieldID(3);
+ try writer.writeInt(runtime_type);
+}
+if (this.code) |code| {
+ try writer.writeFieldID(4);
+ try writer.writeInt(code);
+}
+if (this.stack) |stack| {
+ try writer.writeFieldID(5);
+ try writer.writeValue(stack);
+}
+try writer.endMessage();
+}
- /// routes
- routes: ?LoadedRouteConfig = null,
+};
- /// framework
- framework: ?LoadedFramework = null,
+pub const FallbackStep = enum(u8) {
- /// bundle
- bundle: ?JavascriptBundle = null,
+_none,
+ /// ssr_disabled
+ ssr_disabled,
- /// code_length
- code_length: ?u32 = null,
+ /// create_vm
+ create_vm,
- pub fn decode(reader: anytype) anyerror!JavascriptBundleContainer {
- var this = std.mem.zeroes(JavascriptBundleContainer);
+ /// configure_router
+ configure_router,
- while (true) {
- switch (try reader.readByte()) {
- 0 => {
- return this;
- },
+ /// configure_defines
+ configure_defines,
- 1 => {
- this.bundle_format_version = try reader.readValue(u32);
- },
- 2 => {
- this.routes = try reader.readValue(LoadedRouteConfig);
- },
- 3 => {
- this.framework = try reader.readValue(LoadedFramework);
- },
- 4 => {
- this.bundle = try reader.readValue(JavascriptBundle);
- },
- 5 => {
- this.code_length = try reader.readValue(u32);
- },
- else => {
- return error.InvalidMessage;
- },
+ /// resolve_entry_point
+ resolve_entry_point,
+
+ /// load_entry_point
+ load_entry_point,
+
+ /// eval_entry_point
+ eval_entry_point,
+
+ /// fetch_event_handler
+ fetch_event_handler,
+
+_,
+
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
}
- }
- unreachable;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- if (this.bundle_format_version) |bundle_format_version| {
- try writer.writeFieldID(1);
- try writer.writeInt(bundle_format_version);
- }
- if (this.routes) |routes| {
- try writer.writeFieldID(2);
- try writer.writeValue(routes);
- }
- if (this.framework) |framework| {
- try writer.writeFieldID(3);
- try writer.writeValue(framework);
- }
- if (this.bundle) |bundle| {
- try writer.writeFieldID(4);
- try writer.writeValue(bundle);
- }
- if (this.code_length) |code_length| {
- try writer.writeFieldID(5);
- try writer.writeInt(code_length);
- }
- try writer.endMessage();
- }
- };
+
+};
- pub const ScanDependencyMode = enum(u8) {
- _none,
- /// app
- app,
+pub const Problems = struct {
+/// code
+code: u16 = 0,
- /// all
- all,
+/// name
+name: []const u8,
- _,
+/// exceptions
+exceptions: []const JsException,
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+/// build
+build: Log,
- pub const ModuleImportType = enum(u8) {
- _none,
- /// import
- import,
- /// require
- require,
+pub fn decode(reader: anytype) anyerror!Problems {
+ var this = std.mem.zeroes(Problems);
- _,
+ this.code = try reader.readValue(u16);
+ this.name = try reader.readValue([]const u8);
+ this.exceptions = try reader.readArray(JsException);
+ this.build = try reader.readValue(Log);
+ return this;
+}
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.code);
+ try writer.writeValue(this.name);
+ try writer.writeArray(JsException, this.exceptions);
+ try writer.writeValue(this.build);
+}
- pub const ModuleImportRecord = struct {
- /// kind
- kind: ModuleImportType,
+};
- /// path
- path: []const u8,
+pub const Router = struct {
+/// routes
+routes: []const []const u8,
- /// dynamic
- dynamic: bool = false,
+/// route
+route: i32 = 0,
- pub fn decode(reader: anytype) anyerror!ModuleImportRecord {
- var this = std.mem.zeroes(ModuleImportRecord);
+/// params
+params: StringMap,
- this.kind = try reader.readValue(ModuleImportType);
- this.path = try reader.readValue([]const u8);
- this.dynamic = try reader.readValue(bool);
- return this;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeEnum(this.kind);
- try writer.writeValue(this.path);
- try writer.writeInt(@intCast(u8, @boolToInt(this.dynamic)));
- }
- };
+pub fn decode(reader: anytype) anyerror!Router {
+ var this = std.mem.zeroes(Router);
- pub const Module = struct {
- /// path
- path: []const u8,
+ this.routes = try reader.readArray([]const u8);
+ this.route = try reader.readValue(i32);
+ this.params = try reader.readValue(StringMap);
+ return this;
+}
- /// imports
- imports: []const ModuleImportRecord,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeArray([]const u8, this.routes);
+ try writer.writeInt(this.route);
+ try writer.writeValue(this.params);
+}
- pub fn decode(reader: anytype) anyerror!Module {
- var this = std.mem.zeroes(Module);
+};
- this.path = try reader.readValue([]const u8);
- this.imports = try reader.readArray(ModuleImportRecord);
- return this;
- }
+pub const FallbackMessageContainer = struct {
+/// message
+message: ?[]const u8 = null,
+
+/// router
+router: ?Router = null,
+
+/// reason
+reason: ?FallbackStep = null,
+
+/// problems
+problems: ?Problems = null,
+
+
+pub fn decode(reader: anytype) anyerror!FallbackMessageContainer {
+ var this = std.mem.zeroes(FallbackMessageContainer);
+
+ while(true) {
+ switch (try reader.readByte()) {
+ 0 => { return this; },
+
+ 1 => {
+ this.message = try reader.readValue([]const u8);
+},
+ 2 => {
+ this.router = try reader.readValue(Router);
+},
+ 3 => {
+ this.reason = try reader.readValue(FallbackStep);
+},
+ 4 => {
+ this.problems = try reader.readValue(Problems);
+},
+ else => {
+ return error.InvalidMessage;
+ },
+ }
+ }
+unreachable;
+}
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeValue(this.path);
- try writer.writeArray(ModuleImportRecord, this.imports);
- }
- };
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+if (this.message) |message| {
+ try writer.writeFieldID(1);
+ try writer.writeValue(message);
+}
+if (this.router) |router| {
+ try writer.writeFieldID(2);
+ try writer.writeValue(router);
+}
+if (this.reason) |reason| {
+ try writer.writeFieldID(3);
+ try writer.writeEnum(reason);
+}
+if (this.problems) |problems| {
+ try writer.writeFieldID(4);
+ try writer.writeValue(problems);
+}
+try writer.endMessage();
+}
- pub const StringMap = struct {
- /// keys
- keys: []const []const u8,
+};
- /// values
- values: []const []const u8,
+pub const ResolveMode = enum(u8) {
- pub fn decode(reader: anytype) anyerror!StringMap {
- var this = std.mem.zeroes(StringMap);
+_none,
+ /// disable
+ disable,
- this.keys = try reader.readArray([]const u8);
- this.values = try reader.readArray([]const u8);
- return this;
- }
+ /// lazy
+ lazy,
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeArray([]const u8, this.keys);
- try writer.writeArray([]const u8, this.values);
- }
- };
+ /// dev
+ dev,
- pub const LoaderMap = struct {
- /// extensions
- extensions: []const []const u8,
+ /// bundle
+ bundle,
- /// loaders
- loaders: []const Loader,
+_,
- pub fn decode(reader: anytype) anyerror!LoaderMap {
- var this = std.mem.zeroes(LoaderMap);
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
+ }
- this.extensions = try reader.readArray([]const u8);
- this.loaders = try reader.readArray(Loader);
- return this;
- }
+
+};
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeArray([]const u8, this.extensions);
- try writer.writeArray(Loader, this.loaders);
- }
- };
+pub const Platform = enum(u8) {
- pub const DotEnvBehavior = enum(u32) {
- _none,
- /// disable
- disable,
+_none,
+ /// browser
+ browser,
- /// prefix
- prefix,
+ /// node
+ node,
- /// load_all
- load_all,
+ /// bun
+ bun,
- _,
+_,
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
+ }
- pub const EnvConfig = struct {
- /// prefix
- prefix: ?[]const u8 = null,
+
+};
- /// defaults
- defaults: ?StringMap = null,
+pub const CssInJsBehavior = enum(u8) {
- pub fn decode(reader: anytype) anyerror!EnvConfig {
- var this = std.mem.zeroes(EnvConfig);
+_none,
+ /// facade
+ facade,
- while (true) {
- switch (try reader.readByte()) {
- 0 => {
- return this;
- },
+ /// facade_onimportcss
+ facade_onimportcss,
- 1 => {
- this.prefix = try reader.readValue([]const u8);
- },
- 2 => {
- this.defaults = try reader.readValue(StringMap);
- },
- else => {
- return error.InvalidMessage;
- },
+ /// auto_onimportcss
+ auto_onimportcss,
+
+_,
+
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
}
- }
- unreachable;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- if (this.prefix) |prefix| {
- try writer.writeFieldID(1);
- try writer.writeValue(prefix);
- }
- if (this.defaults) |defaults| {
- try writer.writeFieldID(2);
- try writer.writeValue(defaults);
- }
- try writer.endMessage();
- }
- };
+
+};
- pub const LoadedEnvConfig = struct {
- /// dotenv
- dotenv: DotEnvBehavior,
+pub const JsxRuntime = enum(u8) {
- /// defaults
- defaults: StringMap,
+_none,
+ /// automatic
+ automatic,
- /// prefix
- prefix: []const u8,
+ /// classic
+ classic,
- pub fn decode(reader: anytype) anyerror!LoadedEnvConfig {
- var this = std.mem.zeroes(LoadedEnvConfig);
+_,
- this.dotenv = try reader.readValue(DotEnvBehavior);
- this.defaults = try reader.readValue(StringMap);
- this.prefix = try reader.readValue([]const u8);
- return this;
- }
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
+ }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeEnum(this.dotenv);
- try writer.writeValue(this.defaults);
- try writer.writeValue(this.prefix);
- }
- };
+
+};
- pub const FrameworkConfig = struct {
- /// package
- package: ?[]const u8 = null,
+pub const Jsx = struct {
+/// factory
+factory: []const u8,
- /// client
- client: ?[]const u8 = null,
+/// runtime
+runtime: JsxRuntime,
- /// server
- server: ?[]const u8 = null,
+/// fragment
+fragment: []const u8,
- /// development
- development: ?bool = null,
+/// development
+development: bool = false,
- /// client_env
- client_env: ?EnvConfig = null,
+/// import_source
+import_source: []const u8,
- /// server_env
- server_env: ?EnvConfig = null,
+/// react_fast_refresh
+react_fast_refresh: bool = false,
- /// client_css_in_js
- client_css_in_js: ?CssInJsBehavior = null,
- pub fn decode(reader: anytype) anyerror!FrameworkConfig {
- var this = std.mem.zeroes(FrameworkConfig);
+pub fn decode(reader: anytype) anyerror!Jsx {
+ var this = std.mem.zeroes(Jsx);
- while (true) {
- switch (try reader.readByte()) {
- 0 => {
- return this;
- },
+ this.factory = try reader.readValue([]const u8);
+ this.runtime = try reader.readValue(JsxRuntime);
+ this.fragment = try reader.readValue([]const u8);
+ this.development = try reader.readValue(bool);
+ this.import_source = try reader.readValue([]const u8);
+ this.react_fast_refresh = try reader.readValue(bool);
+ return this;
+}
- 1 => {
- this.package = try reader.readValue([]const u8);
- },
- 2 => {
- this.client = try reader.readValue([]const u8);
- },
- 3 => {
- this.server = try reader.readValue([]const u8);
- },
- 4 => {
- this.development = try reader.readValue(bool);
- },
- 5 => {
- this.client_env = try reader.readValue(EnvConfig);
- },
- 6 => {
- this.server_env = try reader.readValue(EnvConfig);
- },
- 7 => {
- this.client_css_in_js = try reader.readValue(CssInJsBehavior);
- },
- else => {
- return error.InvalidMessage;
- },
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeValue(this.factory);
+ try writer.writeEnum(this.runtime);
+ try writer.writeValue(this.fragment);
+ try writer.writeInt(@intCast(u8, @boolToInt(this.development)));
+ try writer.writeValue(this.import_source);
+ try writer.writeInt(@intCast(u8, @boolToInt(this.react_fast_refresh)));
+}
+
+};
+
+pub const StringPointer = packed struct {
+/// offset
+offset: u32 = 0,
+
+/// length
+length: u32 = 0,
+
+
+pub fn decode(reader: anytype) anyerror!StringPointer {
+ var this = std.mem.zeroes(StringPointer);
+
+ this.offset = try reader.readValue(u32);
+ this.length = try reader.readValue(u32);
+ return this;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.offset);
+ try writer.writeInt(this.length);
+}
+
+};
+
+pub const JavascriptBundledModule = struct {
+/// path
+path: StringPointer,
+
+/// code
+code: StringPointer,
+
+/// package_id
+package_id: u32 = 0,
+
+/// id
+id: u32 = 0,
+
+/// path_extname_length
+path_extname_length: u8 = 0,
+
+
+pub fn decode(reader: anytype) anyerror!JavascriptBundledModule {
+ var this = std.mem.zeroes(JavascriptBundledModule);
+
+ this.path = try reader.readValue(StringPointer);
+ this.code = try reader.readValue(StringPointer);
+ this.package_id = try reader.readValue(u32);
+ this.id = try reader.readValue(u32);
+ this.path_extname_length = try reader.readValue(u8);
+ return this;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeValue(this.path);
+ try writer.writeValue(this.code);
+ try writer.writeInt(this.package_id);
+ try writer.writeInt(this.id);
+ try writer.writeInt(this.path_extname_length);
+}
+
+};
+
+pub const JavascriptBundledPackage = struct {
+/// name
+name: StringPointer,
+
+/// version
+version: StringPointer,
+
+/// hash
+hash: u32 = 0,
+
+/// modules_offset
+modules_offset: u32 = 0,
+
+/// modules_length
+modules_length: u32 = 0,
+
+
+pub fn decode(reader: anytype) anyerror!JavascriptBundledPackage {
+ var this = std.mem.zeroes(JavascriptBundledPackage);
+
+ this.name = try reader.readValue(StringPointer);
+ this.version = try reader.readValue(StringPointer);
+ this.hash = try reader.readValue(u32);
+ this.modules_offset = try reader.readValue(u32);
+ this.modules_length = try reader.readValue(u32);
+ return this;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeValue(this.name);
+ try writer.writeValue(this.version);
+ try writer.writeInt(this.hash);
+ try writer.writeInt(this.modules_offset);
+ try writer.writeInt(this.modules_length);
+}
+
+};
+
+pub const JavascriptBundle = struct {
+/// modules
+modules: []const JavascriptBundledModule,
+
+/// packages
+packages: []const JavascriptBundledPackage,
+
+/// etag
+etag: []const u8,
+
+/// generated_at
+generated_at: u32 = 0,
+
+/// app_package_json_dependencies_hash
+app_package_json_dependencies_hash: []const u8,
+
+/// import_from_name
+import_from_name: []const u8,
+
+/// manifest_string
+manifest_string: []const u8,
+
+
+pub fn decode(reader: anytype) anyerror!JavascriptBundle {
+ var this = std.mem.zeroes(JavascriptBundle);
+
+ this.modules = try reader.readArray(JavascriptBundledModule);
+ this.packages = try reader.readArray(JavascriptBundledPackage);
+ this.etag = try reader.readArray(u8);
+ this.generated_at = try reader.readValue(u32);
+ this.app_package_json_dependencies_hash = try reader.readArray(u8);
+ this.import_from_name = try reader.readArray(u8);
+ this.manifest_string = try reader.readArray(u8);
+ return this;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeArray(JavascriptBundledModule, this.modules);
+ try writer.writeArray(JavascriptBundledPackage, this.packages);
+ try writer.writeArray(u8, this.etag);
+ try writer.writeInt(this.generated_at);
+ try writer.writeArray(u8, this.app_package_json_dependencies_hash);
+ try writer.writeArray(u8, this.import_from_name);
+ try writer.writeArray(u8, this.manifest_string);
+}
+
+};
+
+pub const JavascriptBundleContainer = struct {
+/// bundle_format_version
+bundle_format_version: ?u32 = null,
+
+/// routes
+routes: ?LoadedRouteConfig = null,
+
+/// framework
+framework: ?LoadedFramework = null,
+
+/// bundle
+bundle: ?JavascriptBundle = null,
+
+/// code_length
+code_length: ?u32 = null,
+
+
+pub fn decode(reader: anytype) anyerror!JavascriptBundleContainer {
+ var this = std.mem.zeroes(JavascriptBundleContainer);
+
+ while(true) {
+ switch (try reader.readByte()) {
+ 0 => { return this; },
+
+ 1 => {
+ this.bundle_format_version = try reader.readValue(u32);
+},
+ 2 => {
+ this.routes = try reader.readValue(LoadedRouteConfig);
+},
+ 3 => {
+ this.framework = try reader.readValue(LoadedFramework);
+},
+ 4 => {
+ this.bundle = try reader.readValue(JavascriptBundle);
+},
+ 5 => {
+ this.code_length = try reader.readValue(u32);
+},
+ else => {
+ return error.InvalidMessage;
+ },
+ }
+ }
+unreachable;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+if (this.bundle_format_version) |bundle_format_version| {
+ try writer.writeFieldID(1);
+ try writer.writeInt(bundle_format_version);
+}
+if (this.routes) |routes| {
+ try writer.writeFieldID(2);
+ try writer.writeValue(routes);
+}
+if (this.framework) |framework| {
+ try writer.writeFieldID(3);
+ try writer.writeValue(framework);
+}
+if (this.bundle) |bundle| {
+ try writer.writeFieldID(4);
+ try writer.writeValue(bundle);
+}
+if (this.code_length) |code_length| {
+ try writer.writeFieldID(5);
+ try writer.writeInt(code_length);
+}
+try writer.endMessage();
+}
+
+};
+
+pub const ScanDependencyMode = enum(u8) {
+
+_none,
+ /// app
+ app,
+
+ /// all
+ all,
+
+_,
+
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
}
- }
- unreachable;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- if (this.package) |package| {
- try writer.writeFieldID(1);
- try writer.writeValue(package);
- }
- if (this.client) |client| {
- try writer.writeFieldID(2);
- try writer.writeValue(client);
- }
- if (this.server) |server| {
- try writer.writeFieldID(3);
- try writer.writeValue(server);
- }
- if (this.development) |development| {
- try writer.writeFieldID(4);
- try writer.writeInt(@intCast(u8, @boolToInt(development)));
- }
- if (this.client_env) |client_env| {
- try writer.writeFieldID(5);
- try writer.writeValue(client_env);
- }
- if (this.server_env) |server_env| {
- try writer.writeFieldID(6);
- try writer.writeValue(server_env);
- }
- if (this.client_css_in_js) |client_css_in_js| {
- try writer.writeFieldID(7);
- try writer.writeEnum(client_css_in_js);
- }
- try writer.endMessage();
- }
- };
+
+};
- pub const LoadedFramework = struct {
- /// entry_point
- entry_point: []const u8,
+pub const ModuleImportType = enum(u8) {
- /// package
- package: []const u8,
+_none,
+ /// import
+ import,
- /// development
- development: bool = false,
+ /// require
+ require,
- /// client
- client: bool = false,
+_,
- /// env
- env: LoadedEnvConfig,
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
+ }
- /// client_css_in_js
- client_css_in_js: CssInJsBehavior,
+
+};
- pub fn decode(reader: anytype) anyerror!LoadedFramework {
- var this = std.mem.zeroes(LoadedFramework);
+pub const ModuleImportRecord = struct {
+/// kind
+kind: ModuleImportType,
- this.entry_point = try reader.readValue([]const u8);
- this.package = try reader.readValue([]const u8);
- this.development = try reader.readValue(bool);
- this.client = try reader.readValue(bool);
- this.env = try reader.readValue(LoadedEnvConfig);
- this.client_css_in_js = try reader.readValue(CssInJsBehavior);
- return this;
- }
+/// path
+path: []const u8,
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeValue(this.entry_point);
- try writer.writeValue(this.package);
- try writer.writeInt(@intCast(u8, @boolToInt(this.development)));
- try writer.writeInt(@intCast(u8, @boolToInt(this.client)));
- try writer.writeValue(this.env);
- try writer.writeEnum(this.client_css_in_js);
- }
- };
+/// dynamic
+dynamic: bool = false,
- pub const LoadedRouteConfig = struct {
- /// dir
- dir: []const u8,
- /// extensions
- extensions: []const []const u8,
+pub fn decode(reader: anytype) anyerror!ModuleImportRecord {
+ var this = std.mem.zeroes(ModuleImportRecord);
- /// static_dir
- static_dir: []const u8,
+ this.kind = try reader.readValue(ModuleImportType);
+ this.path = try reader.readValue([]const u8);
+ this.dynamic = try reader.readValue(bool);
+ return this;
+}
- /// asset_prefix
- asset_prefix: []const u8,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeEnum(this.kind);
+ try writer.writeValue(this.path);
+ try writer.writeInt(@intCast(u8, @boolToInt(this.dynamic)));
+}
- pub fn decode(reader: anytype) anyerror!LoadedRouteConfig {
- var this = std.mem.zeroes(LoadedRouteConfig);
+};
- this.dir = try reader.readValue([]const u8);
- this.extensions = try reader.readArray([]const u8);
- this.static_dir = try reader.readValue([]const u8);
- this.asset_prefix = try reader.readValue([]const u8);
- return this;
- }
+pub const Module = struct {
+/// path
+path: []const u8,
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeValue(this.dir);
- try writer.writeArray([]const u8, this.extensions);
- try writer.writeValue(this.static_dir);
- try writer.writeValue(this.asset_prefix);
- }
- };
+/// imports
+imports: []const ModuleImportRecord,
- pub const RouteConfig = struct {
- /// dir
- dir: []const []const u8,
- /// extensions
- extensions: []const []const u8,
+pub fn decode(reader: anytype) anyerror!Module {
+ var this = std.mem.zeroes(Module);
- /// static_dir
- static_dir: ?[]const u8 = null,
+ this.path = try reader.readValue([]const u8);
+ this.imports = try reader.readArray(ModuleImportRecord);
+ return this;
+}
- /// asset_prefix
- asset_prefix: ?[]const u8 = null,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeValue(this.path);
+ try writer.writeArray(ModuleImportRecord, this.imports);
+}
- pub fn decode(reader: anytype) anyerror!RouteConfig {
- var this = std.mem.zeroes(RouteConfig);
+};
- while (true) {
- switch (try reader.readByte()) {
- 0 => {
- return this;
- },
+pub const StringMap = struct {
+/// keys
+keys: []const []const u8,
- 1 => {
- this.dir = try reader.readArray([]const u8);
- },
- 2 => {
- this.extensions = try reader.readArray([]const u8);
- },
- 3 => {
- this.static_dir = try reader.readValue([]const u8);
- },
- 4 => {
- this.asset_prefix = try reader.readValue([]const u8);
- },
- else => {
- return error.InvalidMessage;
- },
+/// values
+values: []const []const u8,
+
+
+pub fn decode(reader: anytype) anyerror!StringMap {
+ var this = std.mem.zeroes(StringMap);
+
+ this.keys = try reader.readArray([]const u8);
+ this.values = try reader.readArray([]const u8);
+ return this;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeArray([]const u8, this.keys);
+ try writer.writeArray([]const u8, this.values);
+}
+
+};
+
+pub const LoaderMap = struct {
+/// extensions
+extensions: []const []const u8,
+
+/// loaders
+loaders: []const Loader,
+
+
+pub fn decode(reader: anytype) anyerror!LoaderMap {
+ var this = std.mem.zeroes(LoaderMap);
+
+ this.extensions = try reader.readArray([]const u8);
+ this.loaders = try reader.readArray(Loader);
+ return this;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeArray([]const u8, this.extensions);
+ try writer.writeArray(Loader, this.loaders);
+}
+
+};
+
+pub const DotEnvBehavior = enum(u32) {
+
+_none,
+ /// disable
+ disable,
+
+ /// prefix
+ prefix,
+
+ /// load_all
+ load_all,
+
+_,
+
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
}
- }
- unreachable;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- if (this.dir) |dir| {
- try writer.writeFieldID(1);
- try writer.writeArray([]const u8, dir);
- }
- if (this.extensions) |extensions| {
- try writer.writeFieldID(2);
- try writer.writeArray([]const u8, extensions);
- }
- if (this.static_dir) |static_dir| {
- try writer.writeFieldID(3);
- try writer.writeValue(static_dir);
- }
- if (this.asset_prefix) |asset_prefix| {
- try writer.writeFieldID(4);
- try writer.writeValue(asset_prefix);
- }
- try writer.endMessage();
- }
- };
+
+};
- pub const TransformOptions = struct {
- /// jsx
- jsx: ?Jsx = null,
+pub const EnvConfig = struct {
+/// prefix
+prefix: ?[]const u8 = null,
+
+/// defaults
+defaults: ?StringMap = null,
+
+
+pub fn decode(reader: anytype) anyerror!EnvConfig {
+ var this = std.mem.zeroes(EnvConfig);
+
+ while(true) {
+ switch (try reader.readByte()) {
+ 0 => { return this; },
+
+ 1 => {
+ this.prefix = try reader.readValue([]const u8);
+},
+ 2 => {
+ this.defaults = try reader.readValue(StringMap);
+},
+ else => {
+ return error.InvalidMessage;
+ },
+ }
+ }
+unreachable;
+}
- /// tsconfig_override
- tsconfig_override: ?[]const u8 = null,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+if (this.prefix) |prefix| {
+ try writer.writeFieldID(1);
+ try writer.writeValue(prefix);
+}
+if (this.defaults) |defaults| {
+ try writer.writeFieldID(2);
+ try writer.writeValue(defaults);
+}
+try writer.endMessage();
+}
- /// resolve
- resolve: ?ResolveMode = null,
+};
- /// origin
- origin: ?[]const u8 = null,
+pub const LoadedEnvConfig = struct {
+/// dotenv
+dotenv: DotEnvBehavior,
- /// absolute_working_dir
- absolute_working_dir: ?[]const u8 = null,
+/// defaults
+defaults: StringMap,
- /// define
- define: ?StringMap = null,
+/// prefix
+prefix: []const u8,
- /// preserve_symlinks
- preserve_symlinks: ?bool = null,
- /// entry_points
- entry_points: []const []const u8,
+pub fn decode(reader: anytype) anyerror!LoadedEnvConfig {
+ var this = std.mem.zeroes(LoadedEnvConfig);
- /// write
- write: ?bool = null,
+ this.dotenv = try reader.readValue(DotEnvBehavior);
+ this.defaults = try reader.readValue(StringMap);
+ this.prefix = try reader.readValue([]const u8);
+ return this;
+}
- /// inject
- inject: []const []const u8,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeEnum(this.dotenv);
+ try writer.writeValue(this.defaults);
+ try writer.writeValue(this.prefix);
+}
- /// output_dir
- output_dir: ?[]const u8 = null,
+};
- /// external
- external: []const []const u8,
+pub const FrameworkConfig = struct {
+/// package
+package: ?[]const u8 = null,
+
+/// client
+client: ?FrameworkEntryPointMessage = null,
+
+/// server
+server: ?FrameworkEntryPointMessage = null,
+
+/// fallback
+fallback: ?FrameworkEntryPointMessage = null,
+
+/// development
+development: ?bool = null,
+
+/// client_css_in_js
+client_css_in_js: ?CssInJsBehavior = null,
+
+
+pub fn decode(reader: anytype) anyerror!FrameworkConfig {
+ var this = std.mem.zeroes(FrameworkConfig);
+
+ while(true) {
+ switch (try reader.readByte()) {
+ 0 => { return this; },
+
+ 1 => {
+ this.package = try reader.readValue([]const u8);
+},
+ 2 => {
+ this.client = try reader.readValue(FrameworkEntryPointMessage);
+},
+ 3 => {
+ this.server = try reader.readValue(FrameworkEntryPointMessage);
+},
+ 4 => {
+ this.fallback = try reader.readValue(FrameworkEntryPointMessage);
+},
+ 5 => {
+ this.development = try reader.readValue(bool);
+},
+ 6 => {
+ this.client_css_in_js = try reader.readValue(CssInJsBehavior);
+},
+ else => {
+ return error.InvalidMessage;
+ },
+ }
+ }
+unreachable;
+}
- /// loaders
- loaders: ?LoaderMap = null,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+if (this.package) |package| {
+ try writer.writeFieldID(1);
+ try writer.writeValue(package);
+}
+if (this.client) |client| {
+ try writer.writeFieldID(2);
+ try writer.writeValue(client);
+}
+if (this.server) |server| {
+ try writer.writeFieldID(3);
+ try writer.writeValue(server);
+}
+if (this.fallback) |fallback| {
+ try writer.writeFieldID(4);
+ try writer.writeValue(fallback);
+}
+if (this.development) |development| {
+ try writer.writeFieldID(5);
+ try writer.writeInt(@intCast(u8, @boolToInt(development)));
+}
+if (this.client_css_in_js) |client_css_in_js| {
+ try writer.writeFieldID(6);
+ try writer.writeEnum(client_css_in_js);
+}
+try writer.endMessage();
+}
- /// main_fields
- main_fields: []const []const u8,
+};
- /// platform
- platform: ?Platform = null,
+pub const FrameworkEntryPoint = struct {
+/// kind
+kind: FrameworkEntryPointType,
- /// serve
- serve: ?bool = null,
+/// path
+path: []const u8,
- /// extension_order
- extension_order: []const []const u8,
+/// env
+env: LoadedEnvConfig,
- /// generate_node_module_bundle
- generate_node_module_bundle: ?bool = null,
- /// node_modules_bundle_path
- node_modules_bundle_path: ?[]const u8 = null,
+pub fn decode(reader: anytype) anyerror!FrameworkEntryPoint {
+ var this = std.mem.zeroes(FrameworkEntryPoint);
- /// node_modules_bundle_path_server
- node_modules_bundle_path_server: ?[]const u8 = null,
+ this.kind = try reader.readValue(FrameworkEntryPointType);
+ this.path = try reader.readValue([]const u8);
+ this.env = try reader.readValue(LoadedEnvConfig);
+ return this;
+}
- /// framework
- framework: ?FrameworkConfig = null,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeEnum(this.kind);
+ try writer.writeValue(this.path);
+ try writer.writeValue(this.env);
+}
- /// router
- router: ?RouteConfig = null,
+};
- /// no_summary
- no_summary: ?bool = null,
+pub const FrameworkEntryPointMap = struct {
+/// client
+client: ?FrameworkEntryPoint = null,
+
+/// server
+server: ?FrameworkEntryPoint = null,
+
+/// fallback
+fallback: ?FrameworkEntryPoint = null,
+
+
+pub fn decode(reader: anytype) anyerror!FrameworkEntryPointMap {
+ var this = std.mem.zeroes(FrameworkEntryPointMap);
+
+ while(true) {
+ switch (try reader.readByte()) {
+ 0 => { return this; },
+
+ 1 => {
+ this.client = try reader.readValue(FrameworkEntryPoint);
+},
+ 2 => {
+ this.server = try reader.readValue(FrameworkEntryPoint);
+},
+ 3 => {
+ this.fallback = try reader.readValue(FrameworkEntryPoint);
+},
+ else => {
+ return error.InvalidMessage;
+ },
+ }
+ }
+unreachable;
+}
- pub fn decode(reader: anytype) anyerror!TransformOptions {
- var this = std.mem.zeroes(TransformOptions);
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+if (this.client) |client| {
+ try writer.writeFieldID(1);
+ try writer.writeValue(client);
+}
+if (this.server) |server| {
+ try writer.writeFieldID(2);
+ try writer.writeValue(server);
+}
+if (this.fallback) |fallback| {
+ try writer.writeFieldID(3);
+ try writer.writeValue(fallback);
+}
+try writer.endMessage();
+}
- while (true) {
- switch (try reader.readByte()) {
- 0 => {
- return this;
- },
+};
- 1 => {
- this.jsx = try reader.readValue(Jsx);
- },
- 2 => {
- this.tsconfig_override = try reader.readValue([]const u8);
- },
- 3 => {
- this.resolve = try reader.readValue(ResolveMode);
- },
- 4 => {
- this.origin = try reader.readValue([]const u8);
- },
- 5 => {
- this.absolute_working_dir = try reader.readValue([]const u8);
- },
- 6 => {
- this.define = try reader.readValue(StringMap);
- },
- 7 => {
- this.preserve_symlinks = try reader.readValue(bool);
- },
- 8 => {
- this.entry_points = try reader.readArray([]const u8);
- },
- 9 => {
- this.write = try reader.readValue(bool);
- },
- 10 => {
- this.inject = try reader.readArray([]const u8);
- },
- 11 => {
- this.output_dir = try reader.readValue([]const u8);
- },
- 12 => {
- this.external = try reader.readArray([]const u8);
- },
- 13 => {
- this.loaders = try reader.readValue(LoaderMap);
- },
- 14 => {
- this.main_fields = try reader.readArray([]const u8);
- },
- 15 => {
- this.platform = try reader.readValue(Platform);
- },
- 16 => {
- this.serve = try reader.readValue(bool);
- },
- 17 => {
- this.extension_order = try reader.readArray([]const u8);
- },
- 18 => {
- this.generate_node_module_bundle = try reader.readValue(bool);
- },
- 19 => {
- this.node_modules_bundle_path = try reader.readValue([]const u8);
- },
- 20 => {
- this.node_modules_bundle_path_server = try reader.readValue([]const u8);
- },
- 21 => {
- this.framework = try reader.readValue(FrameworkConfig);
- },
- 22 => {
- this.router = try reader.readValue(RouteConfig);
- },
- 23 => {
- this.no_summary = try reader.readValue(bool);
- },
- else => {
- return error.InvalidMessage;
- },
+pub const FrameworkEntryPointMessage = struct {
+/// path
+path: ?[]const u8 = null,
+
+/// env
+env: ?EnvConfig = null,
+
+
+pub fn decode(reader: anytype) anyerror!FrameworkEntryPointMessage {
+ var this = std.mem.zeroes(FrameworkEntryPointMessage);
+
+ while(true) {
+ switch (try reader.readByte()) {
+ 0 => { return this; },
+
+ 1 => {
+ this.path = try reader.readValue([]const u8);
+},
+ 2 => {
+ this.env = try reader.readValue(EnvConfig);
+},
+ else => {
+ return error.InvalidMessage;
+ },
+ }
+ }
+unreachable;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+if (this.path) |path| {
+ try writer.writeFieldID(1);
+ try writer.writeValue(path);
+}
+if (this.env) |env| {
+ try writer.writeFieldID(2);
+ try writer.writeValue(env);
+}
+try writer.endMessage();
+}
+
+};
+
+pub const LoadedFramework = struct {
+/// package
+package: []const u8,
+
+/// development
+development: bool = false,
+
+/// entry_points
+entry_points: FrameworkEntryPointMap,
+
+/// client_css_in_js
+client_css_in_js: CssInJsBehavior,
+
+
+pub fn decode(reader: anytype) anyerror!LoadedFramework {
+ var this = std.mem.zeroes(LoadedFramework);
+
+ this.package = try reader.readValue([]const u8);
+ this.development = try reader.readValue(bool);
+ this.entry_points = try reader.readValue(FrameworkEntryPointMap);
+ this.client_css_in_js = try reader.readValue(CssInJsBehavior);
+ return this;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeValue(this.package);
+ try writer.writeInt(@intCast(u8, @boolToInt(this.development)));
+ try writer.writeValue(this.entry_points);
+ try writer.writeEnum(this.client_css_in_js);
+}
+
+};
+
+pub const LoadedRouteConfig = struct {
+/// dir
+dir: []const u8,
+
+/// extensions
+extensions: []const []const u8,
+
+/// static_dir
+static_dir: []const u8,
+
+/// asset_prefix
+asset_prefix: []const u8,
+
+
+pub fn decode(reader: anytype) anyerror!LoadedRouteConfig {
+ var this = std.mem.zeroes(LoadedRouteConfig);
+
+ this.dir = try reader.readValue([]const u8);
+ this.extensions = try reader.readArray([]const u8);
+ this.static_dir = try reader.readValue([]const u8);
+ this.asset_prefix = try reader.readValue([]const u8);
+ return this;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeValue(this.dir);
+ try writer.writeArray([]const u8, this.extensions);
+ try writer.writeValue(this.static_dir);
+ try writer.writeValue(this.asset_prefix);
+}
+
+};
+
+pub const RouteConfig = struct {
+/// dir
+dir: []const []const u8,
+
+/// extensions
+extensions: []const []const u8,
+
+/// static_dir
+static_dir: ?[]const u8 = null,
+
+/// asset_prefix
+asset_prefix: ?[]const u8 = null,
+
+
+pub fn decode(reader: anytype) anyerror!RouteConfig {
+ var this = std.mem.zeroes(RouteConfig);
+
+ while(true) {
+ switch (try reader.readByte()) {
+ 0 => { return this; },
+
+ 1 => {
+ this.dir = try reader.readArray([]const u8);
+},
+ 2 => {
+ this.extensions = try reader.readArray([]const u8);
+},
+ 3 => {
+ this.static_dir = try reader.readValue([]const u8);
+},
+ 4 => {
+ this.asset_prefix = try reader.readValue([]const u8);
+},
+ else => {
+ return error.InvalidMessage;
+ },
+ }
+ }
+unreachable;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+if (this.dir) |dir| {
+ try writer.writeFieldID(1);
+ try writer.writeArray([]const u8, dir);
+}
+if (this.extensions) |extensions| {
+ try writer.writeFieldID(2);
+ try writer.writeArray([]const u8, extensions);
+}
+if (this.static_dir) |static_dir| {
+ try writer.writeFieldID(3);
+ try writer.writeValue(static_dir);
+}
+if (this.asset_prefix) |asset_prefix| {
+ try writer.writeFieldID(4);
+ try writer.writeValue(asset_prefix);
+}
+try writer.endMessage();
+}
+
+};
+
+pub const TransformOptions = struct {
+/// jsx
+jsx: ?Jsx = null,
+
+/// tsconfig_override
+tsconfig_override: ?[]const u8 = null,
+
+/// resolve
+resolve: ?ResolveMode = null,
+
+/// origin
+origin: ?[]const u8 = null,
+
+/// absolute_working_dir
+absolute_working_dir: ?[]const u8 = null,
+
+/// define
+define: ?StringMap = null,
+
+/// preserve_symlinks
+preserve_symlinks: ?bool = null,
+
+/// entry_points
+entry_points: []const []const u8,
+
+/// write
+write: ?bool = null,
+
+/// inject
+inject: []const []const u8,
+
+/// output_dir
+output_dir: ?[]const u8 = null,
+
+/// external
+external: []const []const u8,
+
+/// loaders
+loaders: ?LoaderMap = null,
+
+/// main_fields
+main_fields: []const []const u8,
+
+/// platform
+platform: ?Platform = null,
+
+/// serve
+serve: ?bool = null,
+
+/// extension_order
+extension_order: []const []const u8,
+
+/// generate_node_module_bundle
+generate_node_module_bundle: ?bool = null,
+
+/// node_modules_bundle_path
+node_modules_bundle_path: ?[]const u8 = null,
+
+/// node_modules_bundle_path_server
+node_modules_bundle_path_server: ?[]const u8 = null,
+
+/// framework
+framework: ?FrameworkConfig = null,
+
+/// router
+router: ?RouteConfig = null,
+
+/// no_summary
+no_summary: ?bool = null,
+
+
+pub fn decode(reader: anytype) anyerror!TransformOptions {
+ var this = std.mem.zeroes(TransformOptions);
+
+ while(true) {
+ switch (try reader.readByte()) {
+ 0 => { return this; },
+
+ 1 => {
+ this.jsx = try reader.readValue(Jsx);
+},
+ 2 => {
+ this.tsconfig_override = try reader.readValue([]const u8);
+},
+ 3 => {
+ this.resolve = try reader.readValue(ResolveMode);
+},
+ 4 => {
+ this.origin = try reader.readValue([]const u8);
+},
+ 5 => {
+ this.absolute_working_dir = try reader.readValue([]const u8);
+},
+ 6 => {
+ this.define = try reader.readValue(StringMap);
+},
+ 7 => {
+ this.preserve_symlinks = try reader.readValue(bool);
+},
+ 8 => {
+ this.entry_points = try reader.readArray([]const u8);
+},
+ 9 => {
+ this.write = try reader.readValue(bool);
+},
+ 10 => {
+ this.inject = try reader.readArray([]const u8);
+},
+ 11 => {
+ this.output_dir = try reader.readValue([]const u8);
+},
+ 12 => {
+ this.external = try reader.readArray([]const u8);
+},
+ 13 => {
+ this.loaders = try reader.readValue(LoaderMap);
+},
+ 14 => {
+ this.main_fields = try reader.readArray([]const u8);
+},
+ 15 => {
+ this.platform = try reader.readValue(Platform);
+},
+ 16 => {
+ this.serve = try reader.readValue(bool);
+},
+ 17 => {
+ this.extension_order = try reader.readArray([]const u8);
+},
+ 18 => {
+ this.generate_node_module_bundle = try reader.readValue(bool);
+},
+ 19 => {
+ this.node_modules_bundle_path = try reader.readValue([]const u8);
+},
+ 20 => {
+ this.node_modules_bundle_path_server = try reader.readValue([]const u8);
+},
+ 21 => {
+ this.framework = try reader.readValue(FrameworkConfig);
+},
+ 22 => {
+ this.router = try reader.readValue(RouteConfig);
+},
+ 23 => {
+ this.no_summary = try reader.readValue(bool);
+},
+ else => {
+ return error.InvalidMessage;
+ },
+ }
+ }
+unreachable;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+if (this.jsx) |jsx| {
+ try writer.writeFieldID(1);
+ try writer.writeValue(jsx);
+}
+if (this.tsconfig_override) |tsconfig_override| {
+ try writer.writeFieldID(2);
+ try writer.writeValue(tsconfig_override);
+}
+if (this.resolve) |resolve| {
+ try writer.writeFieldID(3);
+ try writer.writeEnum(resolve);
+}
+if (this.origin) |origin| {
+ try writer.writeFieldID(4);
+ try writer.writeValue(origin);
+}
+if (this.absolute_working_dir) |absolute_working_dir| {
+ try writer.writeFieldID(5);
+ try writer.writeValue(absolute_working_dir);
+}
+if (this.define) |define| {
+ try writer.writeFieldID(6);
+ try writer.writeValue(define);
+}
+if (this.preserve_symlinks) |preserve_symlinks| {
+ try writer.writeFieldID(7);
+ try writer.writeInt(@intCast(u8, @boolToInt(preserve_symlinks)));
+}
+if (this.entry_points) |entry_points| {
+ try writer.writeFieldID(8);
+ try writer.writeArray([]const u8, entry_points);
+}
+if (this.write) |write| {
+ try writer.writeFieldID(9);
+ try writer.writeInt(@intCast(u8, @boolToInt(write)));
+}
+if (this.inject) |inject| {
+ try writer.writeFieldID(10);
+ try writer.writeArray([]const u8, inject);
+}
+if (this.output_dir) |output_dir| {
+ try writer.writeFieldID(11);
+ try writer.writeValue(output_dir);
+}
+if (this.external) |external| {
+ try writer.writeFieldID(12);
+ try writer.writeArray([]const u8, external);
+}
+if (this.loaders) |loaders| {
+ try writer.writeFieldID(13);
+ try writer.writeValue(loaders);
+}
+if (this.main_fields) |main_fields| {
+ try writer.writeFieldID(14);
+ try writer.writeArray([]const u8, main_fields);
+}
+if (this.platform) |platform| {
+ try writer.writeFieldID(15);
+ try writer.writeEnum(platform);
+}
+if (this.serve) |serve| {
+ try writer.writeFieldID(16);
+ try writer.writeInt(@intCast(u8, @boolToInt(serve)));
+}
+if (this.extension_order) |extension_order| {
+ try writer.writeFieldID(17);
+ try writer.writeArray([]const u8, extension_order);
+}
+if (this.generate_node_module_bundle) |generate_node_module_bundle| {
+ try writer.writeFieldID(18);
+ try writer.writeInt(@intCast(u8, @boolToInt(generate_node_module_bundle)));
+}
+if (this.node_modules_bundle_path) |node_modules_bundle_path| {
+ try writer.writeFieldID(19);
+ try writer.writeValue(node_modules_bundle_path);
+}
+if (this.node_modules_bundle_path_server) |node_modules_bundle_path_server| {
+ try writer.writeFieldID(20);
+ try writer.writeValue(node_modules_bundle_path_server);
+}
+if (this.framework) |framework| {
+ try writer.writeFieldID(21);
+ try writer.writeValue(framework);
+}
+if (this.router) |router| {
+ try writer.writeFieldID(22);
+ try writer.writeValue(router);
+}
+if (this.no_summary) |no_summary| {
+ try writer.writeFieldID(23);
+ try writer.writeInt(@intCast(u8, @boolToInt(no_summary)));
+}
+try writer.endMessage();
+}
+
+};
+
+pub const FileHandle = struct {
+/// path
+path: []const u8,
+
+/// size
+size: u32 = 0,
+
+/// fd
+fd: u32 = 0,
+
+
+pub fn decode(reader: anytype) anyerror!FileHandle {
+ var this = std.mem.zeroes(FileHandle);
+
+ this.path = try reader.readValue([]const u8);
+ this.size = try reader.readValue(u32);
+ this.fd = try reader.readValue(u32);
+ return this;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeValue(this.path);
+ try writer.writeInt(this.size);
+ try writer.writeInt(this.fd);
+}
+
+};
+
+pub const Transform = struct {
+/// handle
+handle: ?FileHandle = null,
+
+/// path
+path: ?[]const u8 = null,
+
+/// contents
+contents: []const u8,
+
+/// loader
+loader: ?Loader = null,
+
+/// options
+options: ?TransformOptions = null,
+
+
+pub fn decode(reader: anytype) anyerror!Transform {
+ var this = std.mem.zeroes(Transform);
+
+ while(true) {
+ switch (try reader.readByte()) {
+ 0 => { return this; },
+
+ 1 => {
+ this.handle = try reader.readValue(FileHandle);
+},
+ 2 => {
+ this.path = try reader.readValue([]const u8);
+},
+ 3 => {
+ this.contents = try reader.readArray(u8);
+},
+ 4 => {
+ this.loader = try reader.readValue(Loader);
+},
+ 5 => {
+ this.options = try reader.readValue(TransformOptions);
+},
+ else => {
+ return error.InvalidMessage;
+ },
+ }
+ }
+unreachable;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+if (this.handle) |handle| {
+ try writer.writeFieldID(1);
+ try writer.writeValue(handle);
+}
+if (this.path) |path| {
+ try writer.writeFieldID(2);
+ try writer.writeValue(path);
+}
+if (this.contents) |contents| {
+ try writer.writeFieldID(3);
+ try writer.writeArray(u8, contents);
+}
+if (this.loader) |loader| {
+ try writer.writeFieldID(4);
+ try writer.writeEnum(loader);
+}
+if (this.options) |options| {
+ try writer.writeFieldID(5);
+ try writer.writeValue(options);
+}
+try writer.endMessage();
+}
+
+};
+
+pub const TransformResponseStatus = enum(u32) {
+
+_none,
+ /// success
+ success,
+
+ /// fail
+ fail,
+
+_,
+
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
}
- }
- unreachable;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- if (this.jsx) |jsx| {
- try writer.writeFieldID(1);
- try writer.writeValue(jsx);
- }
- if (this.tsconfig_override) |tsconfig_override| {
- try writer.writeFieldID(2);
- try writer.writeValue(tsconfig_override);
- }
- if (this.resolve) |resolve| {
- try writer.writeFieldID(3);
- try writer.writeEnum(resolve);
- }
- if (this.origin) |origin| {
- try writer.writeFieldID(4);
- try writer.writeValue(origin);
- }
- if (this.absolute_working_dir) |absolute_working_dir| {
- try writer.writeFieldID(5);
- try writer.writeValue(absolute_working_dir);
- }
- if (this.define) |define| {
- try writer.writeFieldID(6);
- try writer.writeValue(define);
- }
- if (this.preserve_symlinks) |preserve_symlinks| {
- try writer.writeFieldID(7);
- try writer.writeInt(@intCast(u8, @boolToInt(preserve_symlinks)));
- }
- if (this.entry_points) |entry_points| {
- try writer.writeFieldID(8);
- try writer.writeArray([]const u8, entry_points);
- }
- if (this.write) |write| {
- try writer.writeFieldID(9);
- try writer.writeInt(@intCast(u8, @boolToInt(write)));
- }
- if (this.inject) |inject| {
- try writer.writeFieldID(10);
- try writer.writeArray([]const u8, inject);
- }
- if (this.output_dir) |output_dir| {
- try writer.writeFieldID(11);
- try writer.writeValue(output_dir);
- }
- if (this.external) |external| {
- try writer.writeFieldID(12);
- try writer.writeArray([]const u8, external);
- }
- if (this.loaders) |loaders| {
- try writer.writeFieldID(13);
- try writer.writeValue(loaders);
- }
- if (this.main_fields) |main_fields| {
- try writer.writeFieldID(14);
- try writer.writeArray([]const u8, main_fields);
- }
- if (this.platform) |platform| {
- try writer.writeFieldID(15);
- try writer.writeEnum(platform);
- }
- if (this.serve) |serve| {
- try writer.writeFieldID(16);
- try writer.writeInt(@intCast(u8, @boolToInt(serve)));
- }
- if (this.extension_order) |extension_order| {
- try writer.writeFieldID(17);
- try writer.writeArray([]const u8, extension_order);
- }
- if (this.generate_node_module_bundle) |generate_node_module_bundle| {
- try writer.writeFieldID(18);
- try writer.writeInt(@intCast(u8, @boolToInt(generate_node_module_bundle)));
- }
- if (this.node_modules_bundle_path) |node_modules_bundle_path| {
- try writer.writeFieldID(19);
- try writer.writeValue(node_modules_bundle_path);
- }
- if (this.node_modules_bundle_path_server) |node_modules_bundle_path_server| {
- try writer.writeFieldID(20);
- try writer.writeValue(node_modules_bundle_path_server);
- }
- if (this.framework) |framework| {
- try writer.writeFieldID(21);
- try writer.writeValue(framework);
- }
- if (this.router) |router| {
- try writer.writeFieldID(22);
- try writer.writeValue(router);
- }
- if (this.no_summary) |no_summary| {
- try writer.writeFieldID(23);
- try writer.writeInt(@intCast(u8, @boolToInt(no_summary)));
- }
- try writer.endMessage();
- }
- };
+
+};
- pub const FileHandle = struct {
- /// path
- path: []const u8,
+pub const OutputFile = struct {
+/// data
+data: []const u8,
- /// size
- size: u32 = 0,
+/// path
+path: []const u8,
- /// fd
- fd: u32 = 0,
- pub fn decode(reader: anytype) anyerror!FileHandle {
- var this = std.mem.zeroes(FileHandle);
+pub fn decode(reader: anytype) anyerror!OutputFile {
+ var this = std.mem.zeroes(OutputFile);
- this.path = try reader.readValue([]const u8);
- this.size = try reader.readValue(u32);
- this.fd = try reader.readValue(u32);
- return this;
- }
+ this.data = try reader.readArray(u8);
+ this.path = try reader.readValue([]const u8);
+ return this;
+}
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeValue(this.path);
- try writer.writeInt(this.size);
- try writer.writeInt(this.fd);
- }
- };
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeArray(u8, this.data);
+ try writer.writeValue(this.path);
+}
- pub const Transform = struct {
- /// handle
- handle: ?FileHandle = null,
+};
- /// path
- path: ?[]const u8 = null,
+pub const TransformResponse = struct {
+/// status
+status: TransformResponseStatus,
- /// contents
- contents: []const u8,
+/// files
+files: []const OutputFile,
- /// loader
- loader: ?Loader = null,
+/// errors
+errors: []const Message,
- /// options
- options: ?TransformOptions = null,
- pub fn decode(reader: anytype) anyerror!Transform {
- var this = std.mem.zeroes(Transform);
+pub fn decode(reader: anytype) anyerror!TransformResponse {
+ var this = std.mem.zeroes(TransformResponse);
- while (true) {
- switch (try reader.readByte()) {
- 0 => {
- return this;
- },
+ this.status = try reader.readValue(TransformResponseStatus);
+ this.files = try reader.readArray(OutputFile);
+ this.errors = try reader.readArray(Message);
+ return this;
+}
- 1 => {
- this.handle = try reader.readValue(FileHandle);
- },
- 2 => {
- this.path = try reader.readValue([]const u8);
- },
- 3 => {
- this.contents = try reader.readArray(u8);
- },
- 4 => {
- this.loader = try reader.readValue(Loader);
- },
- 5 => {
- this.options = try reader.readValue(TransformOptions);
- },
- else => {
- return error.InvalidMessage;
- },
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeEnum(this.status);
+ try writer.writeArray(OutputFile, this.files);
+ try writer.writeArray(Message, this.errors);
+}
+
+};
+
+pub const MessageLevel = enum(u32) {
+
+_none,
+ /// err
+ err,
+
+ /// warn
+ warn,
+
+ /// note
+ note,
+
+ /// debug
+ debug,
+
+_,
+
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
}
- }
- unreachable;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- if (this.handle) |handle| {
- try writer.writeFieldID(1);
- try writer.writeValue(handle);
- }
- if (this.path) |path| {
- try writer.writeFieldID(2);
- try writer.writeValue(path);
- }
- if (this.contents) |contents| {
- try writer.writeFieldID(3);
- try writer.writeArray(u8, contents);
- }
- if (this.loader) |loader| {
- try writer.writeFieldID(4);
- try writer.writeEnum(loader);
- }
- if (this.options) |options| {
- try writer.writeFieldID(5);
- try writer.writeValue(options);
- }
- try writer.endMessage();
- }
- };
+
+};
- pub const TransformResponseStatus = enum(u32) {
- _none,
- /// success
- success,
+pub const Location = struct {
+/// file
+file: []const u8,
- /// fail
- fail,
+/// namespace
+namespace: []const u8,
- _,
+/// line
+line: i32 = 0,
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+/// column
+column: i32 = 0,
- pub const OutputFile = struct {
- /// data
- data: []const u8,
+/// line_text
+line_text: []const u8,
- /// path
- path: []const u8,
+/// suggestion
+suggestion: []const u8,
- pub fn decode(reader: anytype) anyerror!OutputFile {
- var this = std.mem.zeroes(OutputFile);
+/// offset
+offset: u32 = 0,
- this.data = try reader.readArray(u8);
- this.path = try reader.readValue([]const u8);
- return this;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeArray(u8, this.data);
- try writer.writeValue(this.path);
- }
- };
+pub fn decode(reader: anytype) anyerror!Location {
+ var this = std.mem.zeroes(Location);
- pub const TransformResponse = struct {
- /// status
- status: TransformResponseStatus,
+ this.file = try reader.readValue([]const u8);
+ this.namespace = try reader.readValue([]const u8);
+ this.line = try reader.readValue(i32);
+ this.column = try reader.readValue(i32);
+ this.line_text = try reader.readValue([]const u8);
+ this.suggestion = try reader.readValue([]const u8);
+ this.offset = try reader.readValue(u32);
+ return this;
+}
- /// files
- files: []const OutputFile,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeValue(this.file);
+ try writer.writeValue(this.namespace);
+ try writer.writeInt(this.line);
+ try writer.writeInt(this.column);
+ try writer.writeValue(this.line_text);
+ try writer.writeValue(this.suggestion);
+ try writer.writeInt(this.offset);
+}
- /// errors
- errors: []const Message,
+};
- pub fn decode(reader: anytype) anyerror!TransformResponse {
- var this = std.mem.zeroes(TransformResponse);
+pub const MessageData = struct {
+/// text
+text: ?[]const u8 = null,
+
+/// location
+location: ?Location = null,
+
+
+pub fn decode(reader: anytype) anyerror!MessageData {
+ var this = std.mem.zeroes(MessageData);
+
+ while(true) {
+ switch (try reader.readByte()) {
+ 0 => { return this; },
+
+ 1 => {
+ this.text = try reader.readValue([]const u8);
+},
+ 2 => {
+ this.location = try reader.readValue(Location);
+},
+ else => {
+ return error.InvalidMessage;
+ },
+ }
+ }
+unreachable;
+}
- this.status = try reader.readValue(TransformResponseStatus);
- this.files = try reader.readArray(OutputFile);
- this.errors = try reader.readArray(Message);
- return this;
- }
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+if (this.text) |text| {
+ try writer.writeFieldID(1);
+ try writer.writeValue(text);
+}
+if (this.location) |location| {
+ try writer.writeFieldID(2);
+ try writer.writeValue(location);
+}
+try writer.endMessage();
+}
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeEnum(this.status);
- try writer.writeArray(OutputFile, this.files);
- try writer.writeArray(Message, this.errors);
- }
- };
+};
- pub const MessageKind = enum(u32) {
- _none,
- /// err
- err,
+pub const MessageMeta = struct {
+/// resolve
+resolve: ?[]const u8 = null,
+
+/// build
+build: ?bool = null,
+
+
+pub fn decode(reader: anytype) anyerror!MessageMeta {
+ var this = std.mem.zeroes(MessageMeta);
+
+ while(true) {
+ switch (try reader.readByte()) {
+ 0 => { return this; },
+
+ 1 => {
+ this.resolve = try reader.readValue([]const u8);
+},
+ 2 => {
+ this.build = try reader.readValue(bool);
+},
+ else => {
+ return error.InvalidMessage;
+ },
+ }
+ }
+unreachable;
+}
- /// warn
- warn,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+if (this.resolve) |resolve| {
+ try writer.writeFieldID(1);
+ try writer.writeValue(resolve);
+}
+if (this.build) |build| {
+ try writer.writeFieldID(2);
+ try writer.writeInt(@intCast(u8, @boolToInt(build)));
+}
+try writer.endMessage();
+}
- /// note
- note,
+};
- /// debug
- debug,
+pub const Message = struct {
+/// level
+level: MessageLevel,
- _,
+/// data
+data: MessageData,
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+/// notes
+notes: []const MessageData,
- pub const Location = struct {
- /// file
- file: []const u8,
+/// on
+on: MessageMeta,
- /// namespace
- namespace: []const u8,
- /// line
- line: i32 = 0,
+pub fn decode(reader: anytype) anyerror!Message {
+ var this = std.mem.zeroes(Message);
- /// column
- column: i32 = 0,
+ this.level = try reader.readValue(MessageLevel);
+ this.data = try reader.readValue(MessageData);
+ this.notes = try reader.readArray(MessageData);
+ this.on = try reader.readValue(MessageMeta);
+ return this;
+}
- /// line_text
- line_text: []const u8,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeEnum(this.level);
+ try writer.writeValue(this.data);
+ try writer.writeArray(MessageData, this.notes);
+ try writer.writeValue(this.on);
+}
- /// suggestion
- suggestion: []const u8,
+};
- /// offset
- offset: u32 = 0,
+pub const Log = struct {
+/// warnings
+warnings: u32 = 0,
- pub fn decode(reader: anytype) anyerror!Location {
- var this = std.mem.zeroes(Location);
+/// errors
+errors: u32 = 0,
- this.file = try reader.readValue([]const u8);
- this.namespace = try reader.readValue([]const u8);
- this.line = try reader.readValue(i32);
- this.column = try reader.readValue(i32);
- this.line_text = try reader.readValue([]const u8);
- this.suggestion = try reader.readValue([]const u8);
- this.offset = try reader.readValue(u32);
- return this;
- }
+/// msgs
+msgs: []const Message,
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeValue(this.file);
- try writer.writeValue(this.namespace);
- try writer.writeInt(this.line);
- try writer.writeInt(this.column);
- try writer.writeValue(this.line_text);
- try writer.writeValue(this.suggestion);
- try writer.writeInt(this.offset);
- }
- };
- pub const MessageData = struct {
- /// text
- text: ?[]const u8 = null,
+pub fn decode(reader: anytype) anyerror!Log {
+ var this = std.mem.zeroes(Log);
- /// location
- location: ?Location = null,
+ this.warnings = try reader.readValue(u32);
+ this.errors = try reader.readValue(u32);
+ this.msgs = try reader.readArray(Message);
+ return this;
+}
- pub fn decode(reader: anytype) anyerror!MessageData {
- var this = std.mem.zeroes(MessageData);
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.warnings);
+ try writer.writeInt(this.errors);
+ try writer.writeArray(Message, this.msgs);
+}
- while (true) {
- switch (try reader.readByte()) {
- 0 => {
- return this;
- },
+};
- 1 => {
- this.text = try reader.readValue([]const u8);
- },
- 2 => {
- this.location = try reader.readValue(Location);
- },
- else => {
- return error.InvalidMessage;
- },
+pub const Reloader = enum(u8) {
+
+_none,
+ /// disable
+ disable,
+
+ /// live
+ live,
+
+ /// fast_refresh
+ fast_refresh,
+
+_,
+
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
}
- }
- unreachable;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- if (this.text) |text| {
- try writer.writeFieldID(1);
- try writer.writeValue(text);
- }
- if (this.location) |location| {
- try writer.writeFieldID(2);
- try writer.writeValue(location);
- }
- try writer.endMessage();
- }
- };
+
+};
- pub const Message = struct {
- /// kind
- kind: MessageKind,
+pub const WebsocketMessageKind = enum(u8) {
- /// data
- data: MessageData,
+_none,
+ /// welcome
+ welcome,
- /// notes
- notes: []const MessageData,
+ /// file_change_notification
+ file_change_notification,
- pub fn decode(reader: anytype) anyerror!Message {
- var this = std.mem.zeroes(Message);
+ /// build_success
+ build_success,
- this.kind = try reader.readValue(MessageKind);
- this.data = try reader.readValue(MessageData);
- this.notes = try reader.readArray(MessageData);
- return this;
- }
+ /// build_fail
+ build_fail,
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeEnum(this.kind);
- try writer.writeValue(this.data);
- try writer.writeArray(MessageData, this.notes);
- }
- };
+ /// manifest_success
+ manifest_success,
- pub const Log = struct {
- /// warnings
- warnings: u32 = 0,
+ /// manifest_fail
+ manifest_fail,
- /// errors
- errors: u32 = 0,
+_,
- /// msgs
- msgs: []const Message,
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
+ }
- pub fn decode(reader: anytype) anyerror!Log {
- var this = std.mem.zeroes(Log);
+
+};
- this.warnings = try reader.readValue(u32);
- this.errors = try reader.readValue(u32);
- this.msgs = try reader.readArray(Message);
- return this;
- }
+pub const WebsocketCommandKind = enum(u8) {
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeInt(this.warnings);
- try writer.writeInt(this.errors);
- try writer.writeArray(Message, this.msgs);
- }
- };
+_none,
+ /// build
+ build,
- pub const Reloader = enum(u8) {
- _none,
- /// disable
- disable,
+ /// manifest
+ manifest,
- /// live
- live,
+_,
- /// fast_refresh
- fast_refresh,
+ pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
+ return try std.json.stringify(@tagName(self), opts, o);
+ }
- _,
+
+};
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+pub const WebsocketMessage = struct {
+/// timestamp
+timestamp: u32 = 0,
- pub const WebsocketMessageKind = enum(u8) {
- _none,
- /// welcome
- welcome,
+/// kind
+kind: WebsocketMessageKind,
- /// file_change_notification
- file_change_notification,
- /// build_success
- build_success,
+pub fn decode(reader: anytype) anyerror!WebsocketMessage {
+ var this = std.mem.zeroes(WebsocketMessage);
- /// build_fail
- build_fail,
+ this.timestamp = try reader.readValue(u32);
+ this.kind = try reader.readValue(WebsocketMessageKind);
+ return this;
+}
- /// manifest_success
- manifest_success,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.timestamp);
+ try writer.writeEnum(this.kind);
+}
- /// manifest_fail
- manifest_fail,
+};
- _,
+pub const WebsocketMessageWelcome = struct {
+/// epoch
+epoch: u32 = 0,
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+/// javascriptReloader
+javascript_reloader: Reloader,
- pub const WebsocketCommandKind = enum(u8) {
- _none,
- /// build
- build,
- /// manifest
- manifest,
+pub fn decode(reader: anytype) anyerror!WebsocketMessageWelcome {
+ var this = std.mem.zeroes(WebsocketMessageWelcome);
- _,
+ this.epoch = try reader.readValue(u32);
+ this.javascript_reloader = try reader.readValue(Reloader);
+ return this;
+}
- pub fn jsonStringify(self: *const @This(), opts: anytype, o: anytype) !void {
- return try std.json.stringify(@tagName(self), opts, o);
- }
- };
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.epoch);
+ try writer.writeEnum(this.javascript_reloader);
+}
- pub const WebsocketMessage = struct {
- /// timestamp
- timestamp: u32 = 0,
+};
- /// kind
- kind: WebsocketMessageKind,
+pub const WebsocketMessageFileChangeNotification = struct {
+/// id
+id: u32 = 0,
- pub fn decode(reader: anytype) anyerror!WebsocketMessage {
- var this = std.mem.zeroes(WebsocketMessage);
+/// loader
+loader: Loader,
- this.timestamp = try reader.readValue(u32);
- this.kind = try reader.readValue(WebsocketMessageKind);
- return this;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeInt(this.timestamp);
- try writer.writeEnum(this.kind);
- }
- };
+pub fn decode(reader: anytype) anyerror!WebsocketMessageFileChangeNotification {
+ var this = std.mem.zeroes(WebsocketMessageFileChangeNotification);
- pub const WebsocketMessageWelcome = struct {
- /// epoch
- epoch: u32 = 0,
+ this.id = try reader.readValue(u32);
+ this.loader = try reader.readValue(Loader);
+ return this;
+}
- /// javascriptReloader
- javascript_reloader: Reloader,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.id);
+ try writer.writeEnum(this.loader);
+}
- pub fn decode(reader: anytype) anyerror!WebsocketMessageWelcome {
- var this = std.mem.zeroes(WebsocketMessageWelcome);
+};
- this.epoch = try reader.readValue(u32);
- this.javascript_reloader = try reader.readValue(Reloader);
- return this;
- }
+pub const WebsocketCommand = struct {
+/// kind
+kind: WebsocketCommandKind,
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeInt(this.epoch);
- try writer.writeEnum(this.javascript_reloader);
- }
- };
+/// timestamp
+timestamp: u32 = 0,
- pub const WebsocketMessageFileChangeNotification = struct {
- /// id
- id: u32 = 0,
- /// loader
- loader: Loader,
+pub fn decode(reader: anytype) anyerror!WebsocketCommand {
+ var this = std.mem.zeroes(WebsocketCommand);
- pub fn decode(reader: anytype) anyerror!WebsocketMessageFileChangeNotification {
- var this = std.mem.zeroes(WebsocketMessageFileChangeNotification);
+ this.kind = try reader.readValue(WebsocketCommandKind);
+ this.timestamp = try reader.readValue(u32);
+ return this;
+}
- this.id = try reader.readValue(u32);
- this.loader = try reader.readValue(Loader);
- return this;
- }
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeEnum(this.kind);
+ try writer.writeInt(this.timestamp);
+}
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeInt(this.id);
- try writer.writeEnum(this.loader);
- }
- };
+};
- pub const WebsocketCommand = struct {
- /// kind
- kind: WebsocketCommandKind,
+pub const WebsocketCommandBuild = packed struct {
+/// id
+id: u32 = 0,
- /// timestamp
- timestamp: u32 = 0,
- pub fn decode(reader: anytype) anyerror!WebsocketCommand {
- var this = std.mem.zeroes(WebsocketCommand);
+pub fn decode(reader: anytype) anyerror!WebsocketCommandBuild {
+ var this = std.mem.zeroes(WebsocketCommandBuild);
- this.kind = try reader.readValue(WebsocketCommandKind);
- this.timestamp = try reader.readValue(u32);
- return this;
- }
+ this.id = try reader.readValue(u32);
+ return this;
+}
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeEnum(this.kind);
- try writer.writeInt(this.timestamp);
- }
- };
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.id);
+}
- pub const WebsocketCommandBuild = packed struct {
- /// id
- id: u32 = 0,
+};
- pub fn decode(reader: anytype) anyerror!WebsocketCommandBuild {
- var this = std.mem.zeroes(WebsocketCommandBuild);
+pub const WebsocketCommandManifest = packed struct {
+/// id
+id: u32 = 0,
- this.id = try reader.readValue(u32);
- return this;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeInt(this.id);
- }
- };
+pub fn decode(reader: anytype) anyerror!WebsocketCommandManifest {
+ var this = std.mem.zeroes(WebsocketCommandManifest);
- pub const WebsocketCommandManifest = packed struct {
- /// id
- id: u32 = 0,
+ this.id = try reader.readValue(u32);
+ return this;
+}
- pub fn decode(reader: anytype) anyerror!WebsocketCommandManifest {
- var this = std.mem.zeroes(WebsocketCommandManifest);
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.id);
+}
- this.id = try reader.readValue(u32);
- return this;
- }
+};
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeInt(this.id);
- }
- };
+pub const WebsocketMessageBuildSuccess = struct {
+/// id
+id: u32 = 0,
- pub const WebsocketMessageBuildSuccess = struct {
- /// id
- id: u32 = 0,
+/// from_timestamp
+from_timestamp: u32 = 0,
- /// from_timestamp
- from_timestamp: u32 = 0,
+/// loader
+loader: Loader,
- /// loader
- loader: Loader,
+/// module_path
+module_path: []const u8,
- /// module_path
- module_path: []const u8,
+/// blob_length
+blob_length: u32 = 0,
- /// blob_length
- blob_length: u32 = 0,
- pub fn decode(reader: anytype) anyerror!WebsocketMessageBuildSuccess {
- var this = std.mem.zeroes(WebsocketMessageBuildSuccess);
+pub fn decode(reader: anytype) anyerror!WebsocketMessageBuildSuccess {
+ var this = std.mem.zeroes(WebsocketMessageBuildSuccess);
- this.id = try reader.readValue(u32);
- this.from_timestamp = try reader.readValue(u32);
- this.loader = try reader.readValue(Loader);
- this.module_path = try reader.readValue([]const u8);
- this.blob_length = try reader.readValue(u32);
- return this;
- }
+ this.id = try reader.readValue(u32);
+ this.from_timestamp = try reader.readValue(u32);
+ this.loader = try reader.readValue(Loader);
+ this.module_path = try reader.readValue([]const u8);
+ this.blob_length = try reader.readValue(u32);
+ return this;
+}
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeInt(this.id);
- try writer.writeInt(this.from_timestamp);
- try writer.writeEnum(this.loader);
- try writer.writeValue(this.module_path);
- try writer.writeInt(this.blob_length);
- }
- };
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.id);
+ try writer.writeInt(this.from_timestamp);
+ try writer.writeEnum(this.loader);
+ try writer.writeValue(this.module_path);
+ try writer.writeInt(this.blob_length);
+}
- pub const WebsocketMessageBuildFailure = struct {
- /// id
- id: u32 = 0,
+};
- /// from_timestamp
- from_timestamp: u32 = 0,
+pub const WebsocketMessageBuildFailure = struct {
+/// id
+id: u32 = 0,
- /// loader
- loader: Loader,
+/// from_timestamp
+from_timestamp: u32 = 0,
- /// module_path
- module_path: []const u8,
+/// loader
+loader: Loader,
- /// log
- log: Log,
+/// module_path
+module_path: []const u8,
- pub fn decode(reader: anytype) anyerror!WebsocketMessageBuildFailure {
- var this = std.mem.zeroes(WebsocketMessageBuildFailure);
+/// log
+log: Log,
- this.id = try reader.readValue(u32);
- this.from_timestamp = try reader.readValue(u32);
- this.loader = try reader.readValue(Loader);
- this.module_path = try reader.readValue([]const u8);
- this.log = try reader.readValue(Log);
- return this;
- }
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeInt(this.id);
- try writer.writeInt(this.from_timestamp);
- try writer.writeEnum(this.loader);
- try writer.writeValue(this.module_path);
- try writer.writeValue(this.log);
- }
- };
+pub fn decode(reader: anytype) anyerror!WebsocketMessageBuildFailure {
+ var this = std.mem.zeroes(WebsocketMessageBuildFailure);
- pub const DependencyManifest = struct {
- /// ids
- ids: []const u32,
+ this.id = try reader.readValue(u32);
+ this.from_timestamp = try reader.readValue(u32);
+ this.loader = try reader.readValue(Loader);
+ this.module_path = try reader.readValue([]const u8);
+ this.log = try reader.readValue(Log);
+ return this;
+}
- pub fn decode(reader: anytype) anyerror!DependencyManifest {
- var this = std.mem.zeroes(DependencyManifest);
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.id);
+ try writer.writeInt(this.from_timestamp);
+ try writer.writeEnum(this.loader);
+ try writer.writeValue(this.module_path);
+ try writer.writeValue(this.log);
+}
- this.ids = try reader.readArray(u32);
- return this;
- }
+};
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeArray(u32, this.ids);
- }
- };
+pub const DependencyManifest = struct {
+/// ids
+ids: []const u32,
- pub const FileList = struct {
- /// ptrs
- ptrs: []const StringPointer,
- /// files
- files: []const u8,
+pub fn decode(reader: anytype) anyerror!DependencyManifest {
+ var this = std.mem.zeroes(DependencyManifest);
- pub fn decode(reader: anytype) anyerror!FileList {
- var this = std.mem.zeroes(FileList);
+ this.ids = try reader.readArray(u32);
+ return this;
+}
- this.ptrs = try reader.readArray(StringPointer);
- this.files = try reader.readValue([]const u8);
- return this;
- }
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeArray(u32, this.ids);
+}
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeArray(StringPointer, this.ptrs);
- try writer.writeValue(this.files);
- }
- };
+};
- pub const WebsocketMessageResolveIDs = struct {
- /// id
- id: []const u32,
+pub const FileList = struct {
+/// ptrs
+ptrs: []const StringPointer,
- /// list
- list: FileList,
+/// files
+files: []const u8,
- pub fn decode(reader: anytype) anyerror!WebsocketMessageResolveIDs {
- var this = std.mem.zeroes(WebsocketMessageResolveIDs);
- this.id = try reader.readArray(u32);
- this.list = try reader.readValue(FileList);
- return this;
- }
+pub fn decode(reader: anytype) anyerror!FileList {
+ var this = std.mem.zeroes(FileList);
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeArray(u32, this.id);
- try writer.writeValue(this.list);
- }
- };
+ this.ptrs = try reader.readArray(StringPointer);
+ this.files = try reader.readValue([]const u8);
+ return this;
+}
- pub const WebsocketCommandResolveIDs = struct {
- /// ptrs
- ptrs: []const StringPointer,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeArray(StringPointer, this.ptrs);
+ try writer.writeValue(this.files);
+}
- /// files
- files: []const u8,
+};
- pub fn decode(reader: anytype) anyerror!WebsocketCommandResolveIDs {
- var this = std.mem.zeroes(WebsocketCommandResolveIDs);
+pub const WebsocketMessageResolveIDs = struct {
+/// id
+id: []const u32,
- this.ptrs = try reader.readArray(StringPointer);
- this.files = try reader.readValue([]const u8);
- return this;
- }
+/// list
+list: FileList,
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeArray(StringPointer, this.ptrs);
- try writer.writeValue(this.files);
- }
- };
- pub const WebsocketMessageManifestSuccess = struct {
- /// id
- id: u32 = 0,
+pub fn decode(reader: anytype) anyerror!WebsocketMessageResolveIDs {
+ var this = std.mem.zeroes(WebsocketMessageResolveIDs);
- /// module_path
- module_path: []const u8,
+ this.id = try reader.readArray(u32);
+ this.list = try reader.readValue(FileList);
+ return this;
+}
- /// loader
- loader: Loader,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeArray(u32, this.id);
+ try writer.writeValue(this.list);
+}
- /// manifest
- manifest: DependencyManifest,
+};
- pub fn decode(reader: anytype) anyerror!WebsocketMessageManifestSuccess {
- var this = std.mem.zeroes(WebsocketMessageManifestSuccess);
+pub const WebsocketCommandResolveIDs = struct {
+/// ptrs
+ptrs: []const StringPointer,
- this.id = try reader.readValue(u32);
- this.module_path = try reader.readValue([]const u8);
- this.loader = try reader.readValue(Loader);
- this.manifest = try reader.readValue(DependencyManifest);
- return this;
- }
+/// files
+files: []const u8,
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeInt(this.id);
- try writer.writeValue(this.module_path);
- try writer.writeEnum(this.loader);
- try writer.writeValue(this.manifest);
- }
- };
- pub const WebsocketMessageManifestFailure = struct {
- /// id
- id: u32 = 0,
+pub fn decode(reader: anytype) anyerror!WebsocketCommandResolveIDs {
+ var this = std.mem.zeroes(WebsocketCommandResolveIDs);
- /// from_timestamp
- from_timestamp: u32 = 0,
+ this.ptrs = try reader.readArray(StringPointer);
+ this.files = try reader.readValue([]const u8);
+ return this;
+}
- /// loader
- loader: Loader,
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeArray(StringPointer, this.ptrs);
+ try writer.writeValue(this.files);
+}
- /// log
- log: Log,
+};
- pub fn decode(reader: anytype) anyerror!WebsocketMessageManifestFailure {
- var this = std.mem.zeroes(WebsocketMessageManifestFailure);
+pub const WebsocketMessageManifestSuccess = struct {
+/// id
+id: u32 = 0,
- this.id = try reader.readValue(u32);
- this.from_timestamp = try reader.readValue(u32);
- this.loader = try reader.readValue(Loader);
- this.log = try reader.readValue(Log);
- return this;
- }
+/// module_path
+module_path: []const u8,
+
+/// loader
+loader: Loader,
+
+/// manifest
+manifest: DependencyManifest,
+
+
+pub fn decode(reader: anytype) anyerror!WebsocketMessageManifestSuccess {
+ var this = std.mem.zeroes(WebsocketMessageManifestSuccess);
+
+ this.id = try reader.readValue(u32);
+ this.module_path = try reader.readValue([]const u8);
+ this.loader = try reader.readValue(Loader);
+ this.manifest = try reader.readValue(DependencyManifest);
+ return this;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.id);
+ try writer.writeValue(this.module_path);
+ try writer.writeEnum(this.loader);
+ try writer.writeValue(this.manifest);
+}
+
+};
+
+pub const WebsocketMessageManifestFailure = struct {
+/// id
+id: u32 = 0,
+
+/// from_timestamp
+from_timestamp: u32 = 0,
+
+/// loader
+loader: Loader,
+
+/// log
+log: Log,
+
+
+pub fn decode(reader: anytype) anyerror!WebsocketMessageManifestFailure {
+ var this = std.mem.zeroes(WebsocketMessageManifestFailure);
+
+ this.id = try reader.readValue(u32);
+ this.from_timestamp = try reader.readValue(u32);
+ this.loader = try reader.readValue(Loader);
+ this.log = try reader.readValue(Log);
+ return this;
+}
+
+pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
+ try writer.writeInt(this.id);
+ try writer.writeInt(this.from_timestamp);
+ try writer.writeEnum(this.loader);
+ try writer.writeValue(this.log);
+}
- pub fn encode(this: *const @This(), writer: anytype) anyerror!void {
- try writer.writeInt(this.id);
- try writer.writeInt(this.from_timestamp);
- try writer.writeEnum(this.loader);
- try writer.writeValue(this.log);
- }
- };
};
+
+};
+
+
const ExamplePackedStruct = packed struct {
len: u32 = 0,
offset: u32 = 0,