@amerged/ohmyhost-runtime 0.1.26 → 0.1.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @amerged/ohmyhost-runtime
2
2
 
3
- ohmyho.st runtime client, version 0.1.26.
3
+ ohmyho.st runtime client, version 0.1.28.
4
4
 
5
5
  ```sh
6
6
  npm install @amerged/ohmyhost-runtime
@@ -0,0 +1,20 @@
1
+ import type { CustomerDatabaseClient } from "./database.js";
2
+ import type { createTransactionalMailClient } from "./mail.js";
3
+ import type { createPrivateStorageClient } from "./storage.js";
4
+ export type ScheduledStorageClient = ReturnType<typeof createPrivateStorageClient>;
5
+ export type ScheduledMailClient = ReturnType<typeof createTransactionalMailClient>;
6
+ export interface ScheduledFunctionContext {
7
+ readonly projectId: string;
8
+ readonly environmentId: string;
9
+ readonly deploymentId: string;
10
+ readonly functionId: string;
11
+ readonly scheduledAt: string;
12
+ readonly idempotencyKey: string;
13
+ readonly signal: AbortSignal;
14
+ readonly database: CustomerDatabaseClient;
15
+ readonly storage: ScheduledStorageClient;
16
+ readonly mail: ScheduledMailClient;
17
+ }
18
+ export type ScheduledFunctionHandler = (context: ScheduledFunctionContext) => Promise<void>;
19
+ export declare function createScheduledFunctionContext(input: ScheduledFunctionContext): ScheduledFunctionContext;
20
+ //# sourceMappingURL=scheduled.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduled.d.ts","sourceRoot":"","sources":["../src/scheduled.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;AACnF,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEnF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;CACpC;AAED,MAAM,MAAM,wBAAwB,GAAG,CAAC,OAAO,EAAE,wBAAwB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAE5F,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,wBAAwB,GAC9B,wBAAwB,CA6C1B"}
@@ -0,0 +1,67 @@
1
+ import { CustomerRuntimeError } from "./errors.js";
2
+ export function createScheduledFunctionContext(input) {
3
+ if (typeof input !== "object" ||
4
+ input === null ||
5
+ !validUlid(input.projectId) ||
6
+ !validUlid(input.environmentId) ||
7
+ !validUlid(input.deploymentId) ||
8
+ !/^[a-z][a-z0-9-]{0,62}$/u.test(input.functionId) ||
9
+ !validCanonicalTimestamp(input.scheduledAt) ||
10
+ !/^[A-Za-z0-9._:-]{1,128}$/u.test(input.idempotencyKey) ||
11
+ !(input.signal instanceof AbortSignal) ||
12
+ !hasFunctions(input.database, ["query", "transaction"]) ||
13
+ !hasFunctions(input.storage, [
14
+ "reserveUpload",
15
+ "completeUpload",
16
+ "createSignedRead",
17
+ "deleteObject",
18
+ "upload",
19
+ ]) ||
20
+ !hasFunctions(input.mail, ["send"])) {
21
+ throw new CustomerRuntimeError("scheduled_context_invalid", false);
22
+ }
23
+ const database = bindClient(input.database, ["query", "transaction"]);
24
+ const storage = bindClient(input.storage, [
25
+ "reserveUpload",
26
+ "completeUpload",
27
+ "createSignedRead",
28
+ "deleteObject",
29
+ "upload",
30
+ ]);
31
+ const mail = bindClient(input.mail, ["send"]);
32
+ return Object.freeze({
33
+ projectId: input.projectId,
34
+ environmentId: input.environmentId,
35
+ deploymentId: input.deploymentId,
36
+ functionId: input.functionId,
37
+ scheduledAt: input.scheduledAt,
38
+ idempotencyKey: input.idempotencyKey,
39
+ signal: input.signal,
40
+ database: database,
41
+ storage: storage,
42
+ mail: mail,
43
+ });
44
+ }
45
+ function hasFunctions(value, names) {
46
+ return (typeof value === "object" &&
47
+ value !== null &&
48
+ !Array.isArray(value) &&
49
+ names.every((name) => typeof value[name] === "function"));
50
+ }
51
+ function bindClient(value, names) {
52
+ return Object.freeze(Object.fromEntries(names.map((name) => {
53
+ const method = value[name];
54
+ if (typeof method !== "function") {
55
+ throw new CustomerRuntimeError("scheduled_context_invalid", false);
56
+ }
57
+ return [name, method.bind(value)];
58
+ })));
59
+ }
60
+ function validUlid(value) {
61
+ return /^[0-9A-HJKMNP-TV-Z]{26}$/u.test(value);
62
+ }
63
+ function validCanonicalTimestamp(value) {
64
+ const timestamp = Date.parse(value);
65
+ return Number.isFinite(timestamp) && new Date(timestamp).toISOString() === value;
66
+ }
67
+ //# sourceMappingURL=scheduled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduled.js","sourceRoot":"","sources":["../src/scheduled.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"storage-batch-stream.d.ts","sourceRoot":"","sources":["../src/storage-batch-stream.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,iBAAiB,GACzB,QAAQ,CAAC;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,GACnD,QAAQ,CAAC;IACP,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;CAClC,CAAC,CAAC;AACP,MAAM,MAAM,mBAAmB,GAC3B,QAAQ,CAAC;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,GACvE,QAAQ,CAAC;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GAClE,QAAQ,CAAC;IACP,KAAK,EAAE,QAAQ,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,kBAAkB,GAAG,6BAA6B,CAAC;IACzD,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC,CAAC;AACP,eAAO,MAAM,0BAA0B,8CAA8C,CAAC;AAyCtF,4FAA4F;AAC5F,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,mBAAmB,EAAE,MAAM,GAC1B,aAAa,CAAC,iBAAiB,CAAC,CAyMlC;AAED,kFAAkF;AAClF,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,QAAQ,EAClB,mBAAmB,EAAE,MAAM,EAC3B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,OAAO,CAAC,CAyClB"}
1
+ {"version":3,"file":"storage-batch-stream.d.ts","sourceRoot":"","sources":["../src/storage-batch-stream.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,iBAAiB,GACzB,QAAQ,CAAC;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,GACnD,QAAQ,CAAC;IACP,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;CAClC,CAAC,CAAC;AACP,MAAM,MAAM,mBAAmB,GAC3B,QAAQ,CAAC;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,GACvE,QAAQ,CAAC;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GAClE,QAAQ,CAAC;IACP,KAAK,EAAE,QAAQ,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,kBAAkB,GAAG,6BAA6B,CAAC;IACzD,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC,CAAC;AACP,eAAO,MAAM,0BAA0B,8CAA8C,CAAC;AAyCtF,4FAA4F;AAC5F,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,mBAAmB,EAAE,MAAM,GAC1B,aAAa,CAAC,iBAAiB,CAAC,CA8NlC;AAED,kFAAkF;AAClF,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,QAAQ,EAClB,mBAAmB,EAAE,MAAM,EAC3B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,OAAO,CAAC,CAyClB"}
@@ -48,6 +48,7 @@ export function decodeStorageBatch(response, keys, timeoutMilliseconds) {
48
48
  invalidResponse();
49
49
  }
50
50
  const source = response.body.getReader();
51
+ const decoder = new TextDecoder("utf-8", { fatal: true });
51
52
  let buffer = new Uint8Array();
52
53
  let offset = 0;
53
54
  let controlBytes = 0;
@@ -100,8 +101,26 @@ export function decodeStorageBatch(response, keys, timeoutMilliseconds) {
100
101
  if (length < 1 || length > MAX_HEADER_BYTES || controlBytes > MAX_CONTROL_BYTES)
101
102
  invalidResponse();
102
103
  const bytes = await exactBytes(length);
104
+ return parseHeader(bytes);
105
+ }
106
+ function bufferedHeader() {
107
+ if (cancelled)
108
+ throw cancellationError();
109
+ if (buffer.byteLength - offset < 4)
110
+ return undefined;
111
+ const length = new DataView(buffer.buffer, buffer.byteOffset + offset, 4).getUint32(0);
112
+ if (length < 1 || length > MAX_HEADER_BYTES || controlBytes + 4 + length > MAX_CONTROL_BYTES)
113
+ invalidResponse();
114
+ if (buffer.byteLength - offset < 4 + length)
115
+ return undefined;
116
+ controlBytes += 4 + length;
117
+ const bytes = buffer.subarray(offset + 4, offset + 4 + length);
118
+ offset += 4 + length;
119
+ return parseHeader(bytes);
120
+ }
121
+ function parseHeader(bytes) {
103
122
  try {
104
- return JSON.parse(new TextDecoder("utf-8", { fatal: true }).decode(bytes));
123
+ return JSON.parse(decoder.decode(bytes));
105
124
  }
106
125
  catch {
107
126
  return invalidResponse();
@@ -138,7 +157,8 @@ export function decodeStorageBatch(response, keys, timeoutMilliseconds) {
138
157
  throw new CustomerRuntimeGatewayError("gateway_request_invalid", null, false, "consume or cancel each object's body before reading the next object");
139
158
  if (bodyFailure !== undefined)
140
159
  throw bodyFailure;
141
- const value = await header();
160
+ const buffered = bufferedHeader();
161
+ const value = buffered === undefined ? await header() : buffered;
142
162
  const candidate = value;
143
163
  const record = exactRecord(value, candidate?.["state"] === "found"
144
164
  ? ["index", "objectKey", "state", "contentType", "contentLength", "etag"]
@@ -214,7 +234,11 @@ export function decodeStorageBatch(response, keys, timeoutMilliseconds) {
214
234
  throw new CustomerRuntimeGatewayError("gateway_request_invalid", null, false, "consume or cancel the last object's body before completing the read");
215
235
  if (bodyFailure !== undefined)
216
236
  throw bodyFailure;
217
- const terminal = exactRecord(await header(), ["state", "count"]);
237
+ const buffered = bufferedHeader();
238
+ const terminal = exactRecord(buffered === undefined ? await header() : buffered, [
239
+ "state",
240
+ "count",
241
+ ]);
218
242
  if (terminal["state"] !== "completed" ||
219
243
  terminal["count"] !== keys.length ||
220
244
  offset !== buffer.byteLength)
@@ -1 +1 @@
1
- {"version":3,"file":"storage-batch-stream.js","sourceRoot":"","sources":["../src/storage-batch-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage-batch-stream.js","sourceRoot":"","sources":["../src/storage-batch-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAqBzD,MAAM,CAAC,MAAM,0BAA0B,GAAG,2CAA2C,CAAC;AACtF,MAAM,iBAAiB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAC1C,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAE9B,oEAAoE;AACpE,KAAK,UAAU,SAAS,CACtB,MAA+C,EAC/C,mBAA2B,EAC3B,MAAoB;IAEpB,IAAI,KAAgD,CAAC;IACrD,IAAI,aAAuC,CAAC;IAC5C,IAAI,CAAC;QACH,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC5C,MAAM,IAAI,2BAA2B,CAAC,iBAAiB,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC;YACxB,MAAM,CAAC,IAAI,EAAE;YACb,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;gBACtC,MAAM,KAAK,GAAG,GAAG,EAAE;oBACjB,MAAM,CAAC,IAAI,2BAA2B,CAAC,iBAAiB,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;oBACvE,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;gBAC9C,CAAC,CAAC;gBACF,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;gBAC/C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,aAAa,GAAG,KAAK,CAAC;oBACtB,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,2BAA2B;YAAE,MAAM,KAAK,CAAC;QAC9D,IAAI,MAAM,EAAE,OAAO;YAAE,MAAM,IAAI,2BAA2B,CAAC,iBAAiB,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1F,MAAM,IAAI,2BAA2B,CAAC,qBAAqB,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,IAAI,aAAa,KAAK,SAAS;YAAE,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IACvF,CAAC;AACH,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,kBAAkB,CAChC,QAAkB,EAClB,IAAuB,EACvB,mBAA2B;IAE3B,IACE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,0BAA0B;QACnE,QAAQ,CAAC,IAAI,KAAK,IAAI,EACtB,CAAC;QACD,KAAK,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACpD,eAAe,EAAE,CAAC;IACpB,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,IAAI,MAAM,GAAe,IAAI,UAAU,EAAE,CAAC;IAC1C,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,UAAmE,CAAC;IACxE,SAAS,iBAAiB;QACxB,OAAO,IAAI,2BAA2B,CACpC,yBAAyB,EACzB,IAAI,EACJ,KAAK,EACL,gFAAgF,CACjF,CAAC;IACJ,CAAC;IACD,SAAS,WAAW;QAClB,IAAI,QAAQ;YAAE,OAAO;QACrB,QAAQ,GAAG,IAAI,CAAC;QAChB,IAAI,CAAC,QAAQ;YAAE,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC3D,MAAM,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IACD,KAAK,UAAU,KAAK,CAAC,OAAe;QAClC,IAAI,SAAS;YAAE,MAAM,iBAAiB,EAAE,CAAC;QACzC,OAAO,MAAM,KAAK,MAAM,CAAC,UAAU,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;YAC1D,IAAI,SAAS;gBAAE,MAAM,iBAAiB,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,YAAY,UAAU,CAAC;gBAAE,eAAe,EAAE,CAAC;YACxE,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;YACpB,MAAM,GAAG,CAAC,CAAC;QACb,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,CAAC;QAC7D,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;QACvD,MAAM,IAAI,MAAM,CAAC;QACjB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,KAAK,UAAU,UAAU,CAAC,MAAc;QACtC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,OAAO,OAAO,GAAG,MAAM,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC;YAC3C,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACzB,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC;QAC7B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,KAAK,UAAU,MAAM;QACnB,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,CAAC,MAAM,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACvE,YAAY,IAAI,CAAC,GAAG,MAAM,CAAC;QAC3B,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,gBAAgB,IAAI,YAAY,GAAG,iBAAiB;YAC7E,eAAe,EAAE,CAAC;QACpB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;QACvC,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IACD,SAAS,cAAc;QACrB,IAAI,SAAS;YAAE,MAAM,iBAAiB,EAAE,CAAC;QACzC,IAAI,MAAM,CAAC,UAAU,GAAG,MAAM,GAAG,CAAC;YAAE,OAAO,SAAS,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACvF,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,gBAAgB,IAAI,YAAY,GAAG,CAAC,GAAG,MAAM,GAAG,iBAAiB;YAC1F,eAAe,EAAE,CAAC;QACpB,IAAI,MAAM,CAAC,UAAU,GAAG,MAAM,GAAG,CAAC,GAAG,MAAM;YAAE,OAAO,SAAS,CAAC;QAC9D,YAAY,IAAI,CAAC,GAAG,MAAM,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;QAC/D,MAAM,IAAI,CAAC,GAAG,MAAM,CAAC;QACrB,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IACD,SAAS,WAAW,CAAC,KAAiB;QACpC,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAY,CAAC;QACtD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,eAAe,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC;IAC3B,kEAAkE;IAClE,OAAO;QACL,CAAC,MAAM,CAAC,aAAa,CAAC;YACpB,OAAO;gBACL,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAC/E,KAAK,CAAC,MAAM;oBACV,SAAS,GAAG,IAAI,CAAC;oBACjB,UAAU,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC;oBACvC,UAAU,GAAG,SAAS,CAAC;oBACvB,WAAW,EAAE,CAAC;oBACd,IAAI,CAAC,OAAO;wBAAE,OAAO,EAAE,IAAI,EAAE,IAAa,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;oBAC/D,OAAO,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBACpC,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC;IACF,KAAK,SAAS,CAAC,CAAC,OAAO;QACrB,OAAO,GAAG,IAAI,CAAC;QACf,IAAI,eAAe,GAAG,IAAI,CAAC;QAC3B,IAAI,WAAoB,CAAC;QACzB,IAAI,CAAC;YACH,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;gBACjD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC9B,IAAI,SAAS,KAAK,SAAS;oBAAE,eAAe,EAAE,CAAC;gBAC/C,IAAI,CAAC,eAAe;oBAClB,MAAM,IAAI,2BAA2B,CACnC,yBAAyB,EACzB,IAAI,EACJ,KAAK,EACL,qEAAqE,CACtE,CAAC;gBACJ,IAAI,WAAW,KAAK,SAAS;oBAAE,MAAM,WAAW,CAAC;gBACjD,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAC;gBAClC,MAAM,KAAK,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACjE,MAAM,SAAS,GAAG,KAAgC,CAAC;gBACnD,MAAM,MAAM,GAAG,WAAW,CACxB,KAAK,EACL,SAAS,EAAE,CAAC,OAAO,CAAC,KAAK,OAAO;oBAC9B,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,CAAC;oBACzE,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,CACpC,CAAC;gBACF,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,MAAM,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC;oBAAE,eAAe,EAAE,CAAC;gBACxF,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,WAAW,EAAE,CAAC;oBACpC,MAAM,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;oBACvD,SAAS;gBACX,CAAC;gBACD,IACE,MAAM,CAAC,OAAO,CAAC,KAAK,OAAO;oBAC3B,OAAO,MAAM,CAAC,aAAa,CAAC,KAAK,QAAQ;oBACzC,CAAC,qEAAqE,CAAC,IAAI,CACzE,MAAM,CAAC,aAAa,CAAC,CACtB;oBACD,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;oBAC9C,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC;oBACnC,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,aAAa;oBAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,QAAQ;oBAClC,CAAC,sCAAsC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAE5D,eAAe,EAAE,CAAC;gBACpB,IAAI,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;gBAChD,eAAe,GAAG,SAAS,KAAK,CAAC,CAAC;gBAClC,MAAM,IAAI,GAAG,IAAI,cAAc,CAC7B;oBACE,KAAK,CAAC,UAAU;wBACd,IAAI,SAAS,KAAK,CAAC;4BAAE,UAAU,CAAC,KAAK,EAAE,CAAC;;4BACnC,UAAU,GAAG,UAAU,CAAC;oBAC/B,CAAC;oBACD,KAAK,CAAC,IAAI,CAAC,UAAU;wBACnB,IAAI,CAAC;4BACH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;4BACrC,SAAS,IAAI,KAAK,CAAC,UAAU,CAAC;4BAC9B,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;4BAC1B,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;gCACpB,eAAe,GAAG,IAAI,CAAC;gCACvB,UAAU,GAAG,SAAS,CAAC;gCACvB,UAAU,CAAC,KAAK,EAAE,CAAC;4BACrB,CAAC;wBACH,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,WAAW,GAAG,KAAK,CAAC;4BACpB,eAAe,GAAG,IAAI,CAAC;4BACvB,UAAU,GAAG,SAAS,CAAC;4BACvB,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;4BACxB,WAAW,EAAE,CAAC;wBAChB,CAAC;oBACH,CAAC;oBACD,KAAK,CAAC,MAAM;wBACV,UAAU,GAAG,SAAS,CAAC;wBACvB,IAAI,CAAC;4BACH,OAAO,SAAS,GAAG,CAAC;gCAAE,SAAS,IAAI,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;4BACvE,eAAe,GAAG,IAAI,CAAC;wBACzB,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,WAAW,GAAG,KAAK,CAAC;4BACpB,eAAe,GAAG,IAAI,CAAC;4BACvB,WAAW,EAAE,CAAC;4BACd,MAAM,KAAK,CAAC;wBACd,CAAC;oBACH,CAAC;iBACF,EACD,EAAE,aAAa,EAAE,CAAC,EAAE,CACrB,CAAC;gBACF,MAAM,MAAM,CAAC,MAAM,CAAC;oBAClB,KAAK,EAAE,OAAO;oBACd,SAAS;oBACT,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC;oBAClC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;oBAC9C,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;oBACpB,IAAI;iBACL,CAAC,CAAC;YACL,CAAC;YACD,IAAI,CAAC,eAAe;gBAClB,MAAM,IAAI,2BAA2B,CACnC,yBAAyB,EACzB,IAAI,EACJ,KAAK,EACL,qEAAqE,CACtE,CAAC;YACJ,IAAI,WAAW,KAAK,SAAS;gBAAE,MAAM,WAAW,CAAC;YACjD,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;gBAC/E,OAAO;gBACP,OAAO;aACR,CAAC,CAAC;YACH,IACE,QAAQ,CAAC,OAAO,CAAC,KAAK,WAAW;gBACjC,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,MAAM;gBACjC,MAAM,KAAK,MAAM,CAAC,UAAU;gBAE5B,eAAe,EAAE,CAAC;YACpB,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;YACzD,IAAI,CAAC,GAAG,CAAC,IAAI;gBAAE,eAAe,EAAE,CAAC;YACjC,IAAI,SAAS;gBAAE,MAAM,iBAAiB,EAAE,CAAC;YACzC,QAAQ,GAAG,IAAI,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,UAAU,EAAE,KAAK,CAAC,WAAW,IAAI,iBAAiB,EAAE,CAAC,CAAC;YACtD,UAAU,GAAG,SAAS,CAAC;YACvB,WAAW,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;AACH,CAAC;AAED,kFAAkF;AAClF,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAAkB,EAClB,mBAA2B,EAC3B,MAAoB;IAEpB,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACxD,IACE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,kBAAkB;QACrF,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,iBAAiB,CAAC,CAAC;QACzF,QAAQ,CAAC,IAAI,KAAK,IAAI,EACtB,CAAC;QACD,KAAK,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACpD,eAAe,EAAE,CAAC;IACpB,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;IACzC,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,CAAC;QACH,SAAS,CAAC;YACR,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;YAClE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,QAAQ,GAAG,IAAI,CAAC;gBAChB,MAAM;YACR,CAAC;YACD,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,YAAY,UAAU,CAAC;gBAAE,eAAe,EAAE,CAAC;YAC3D,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;YAChC,IAAI,MAAM,GAAG,iBAAiB;gBAAE,eAAe,EAAE,CAAC;YAClD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,QAAQ;YAAE,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC3D,MAAM,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IACrC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC;IAC7B,CAAC;IACD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAY,CAAC;IACxF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,eAAe,EAAE,CAAC;IAC3B,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amerged/ohmyhost-runtime",
3
- "version": "0.1.26",
3
+ "version": "0.1.28",
4
4
  "type": "module",
5
5
  "engines": {
6
6
  "node": ">=22"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ohmyhost/customer-runtime",
3
- "version": "0.1.26",
3
+ "version": "0.1.28",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -75,6 +75,7 @@ export function decodeStorageBatch(
75
75
  invalidResponse();
76
76
  }
77
77
  const source = response.body.getReader();
78
+ const decoder = new TextDecoder("utf-8", { fatal: true });
78
79
  let buffer: Uint8Array = new Uint8Array();
79
80
  let offset = 0;
80
81
  let controlBytes = 0;
@@ -127,8 +128,23 @@ export function decodeStorageBatch(
127
128
  if (length < 1 || length > MAX_HEADER_BYTES || controlBytes > MAX_CONTROL_BYTES)
128
129
  invalidResponse();
129
130
  const bytes = await exactBytes(length);
131
+ return parseHeader(bytes);
132
+ }
133
+ function bufferedHeader(): unknown {
134
+ if (cancelled) throw cancellationError();
135
+ if (buffer.byteLength - offset < 4) return undefined;
136
+ const length = new DataView(buffer.buffer, buffer.byteOffset + offset, 4).getUint32(0);
137
+ if (length < 1 || length > MAX_HEADER_BYTES || controlBytes + 4 + length > MAX_CONTROL_BYTES)
138
+ invalidResponse();
139
+ if (buffer.byteLength - offset < 4 + length) return undefined;
140
+ controlBytes += 4 + length;
141
+ const bytes = buffer.subarray(offset + 4, offset + 4 + length);
142
+ offset += 4 + length;
143
+ return parseHeader(bytes);
144
+ }
145
+ function parseHeader(bytes: Uint8Array): unknown {
130
146
  try {
131
- return JSON.parse(new TextDecoder("utf-8", { fatal: true }).decode(bytes)) as unknown;
147
+ return JSON.parse(decoder.decode(bytes)) as unknown;
132
148
  } catch {
133
149
  return invalidResponse();
134
150
  }
@@ -166,7 +182,8 @@ export function decodeStorageBatch(
166
182
  "consume or cancel each object's body before reading the next object",
167
183
  );
168
184
  if (bodyFailure !== undefined) throw bodyFailure;
169
- const value = await header();
185
+ const buffered = bufferedHeader();
186
+ const value = buffered === undefined ? await header() : buffered;
170
187
  const candidate = value as Record<string, unknown>;
171
188
  const record = exactRecord(
172
189
  value,
@@ -250,7 +267,11 @@ export function decodeStorageBatch(
250
267
  "consume or cancel the last object's body before completing the read",
251
268
  );
252
269
  if (bodyFailure !== undefined) throw bodyFailure;
253
- const terminal = exactRecord(await header(), ["state", "count"]);
270
+ const buffered = bufferedHeader();
271
+ const terminal = exactRecord(buffered === undefined ? await header() : buffered, [
272
+ "state",
273
+ "count",
274
+ ]);
254
275
  if (
255
276
  terminal["state"] !== "completed" ||
256
277
  terminal["count"] !== keys.length ||