ts-ag 1.2.7 → 1.3.0
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/dist/browser.d.ts +24 -10
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +7 -6
- package/dist/browser.js.map +1 -1
- package/dist/index.d.mts +24 -10
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +7 -6
- package/dist/index.mjs.map +1 -1
- package/dist/worker.d.mts +24 -10
- package/dist/worker.d.mts.map +1 -1
- package/dist/worker.mjs +7 -6
- package/dist/worker.mjs.map +1 -1
- package/package.json +1 -1
package/dist/browser.d.ts
CHANGED
|
@@ -115,11 +115,11 @@ type ApiErrorBody<E extends ApiEndpoints, P extends E['path'], M extends E['meth
|
|
|
115
115
|
*/
|
|
116
116
|
type ConvertToFetch<T> = T extends {
|
|
117
117
|
statusCode: number;
|
|
118
|
-
body
|
|
119
|
-
headers
|
|
118
|
+
body?: infer Body;
|
|
119
|
+
headers?: object;
|
|
120
120
|
} ? {
|
|
121
121
|
ok: T['statusCode'] extends SuccessCode ? true : false;
|
|
122
|
-
json: () => Promise<
|
|
122
|
+
json: () => Promise<Body>;
|
|
123
123
|
status: T['statusCode'];
|
|
124
124
|
} : T;
|
|
125
125
|
type CleanResponse = Omit<Response, 'status' | 'ok' | 'json'>;
|
|
@@ -129,8 +129,8 @@ type HTTPMethod = (typeof HTTPMethods)[number];
|
|
|
129
129
|
type ApiEndpoints = {
|
|
130
130
|
path: string;
|
|
131
131
|
method: HTTPMethod;
|
|
132
|
-
requestInput:
|
|
133
|
-
requestOutput:
|
|
132
|
+
requestInput: any;
|
|
133
|
+
requestOutput: any;
|
|
134
134
|
response: FetchResponse<() => Promise<{
|
|
135
135
|
headers: object;
|
|
136
136
|
statusCode: SuccessCode;
|
|
@@ -143,17 +143,31 @@ type ApiEndpoints = {
|
|
|
143
143
|
};
|
|
144
144
|
//#endregion
|
|
145
145
|
//#region src/lambda/client.d.ts
|
|
146
|
-
declare const HTTPMethods$1: readonly ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS', 'HEAD'];
|
|
147
|
-
type HTTPMethod$1 = (typeof HTTPMethods$1)[number];
|
|
148
146
|
type ApiRequestFunction<API extends ApiEndpoints> = <Path extends API['path'], Method extends Extract<API, {
|
|
149
147
|
path: Path;
|
|
150
|
-
}>['method']>(
|
|
148
|
+
}>['method']>(endpoint: ApiEndpointContract<API, Path, Method>, input: ApiInput<API, Path, Method>, headers?: HeadersInit) => Promise<ApiResponse<API, Path, Method>>;
|
|
151
149
|
type ApiSchema = GenericSchema | GenericSchemaAsync;
|
|
150
|
+
type ApiEndpointContract<API extends ApiEndpoints, Path extends API['path'], Method extends Extract<API, {
|
|
151
|
+
path: Path;
|
|
152
|
+
}>['method']> = {
|
|
153
|
+
path: Path;
|
|
154
|
+
method: Method;
|
|
155
|
+
schema: ApiSchema;
|
|
156
|
+
};
|
|
157
|
+
type AnyApiEndpointContract<API extends ApiEndpoints> = { [Path in API['path']]: { [Method in Extract<API, {
|
|
158
|
+
path: Path;
|
|
159
|
+
}>['method']]: ApiEndpointContract<API, Path, Method> }[Extract<API, {
|
|
160
|
+
path: Path;
|
|
161
|
+
}>['method']] }[API['path']];
|
|
162
|
+
declare function endpointKey(endpoint: {
|
|
163
|
+
path: string;
|
|
164
|
+
method: string;
|
|
165
|
+
}): string;
|
|
152
166
|
/**
|
|
153
167
|
* @returns A function that can be used to make API requests with type safety
|
|
154
168
|
* @example const clientApiRequest = createApiRequest<ApiEndpoints>();
|
|
155
169
|
*/
|
|
156
|
-
declare function createApiRequest<API extends ApiEndpoints>(
|
|
170
|
+
declare function createApiRequest<API extends ApiEndpoints>(apiUrl: string, env: string): ApiRequestFunction<API>;
|
|
157
171
|
//#endregion
|
|
158
172
|
//#region node_modules/.pnpm/@types+unist@3.0.3/node_modules/@types/unist/index.d.ts
|
|
159
173
|
// ## Interfaces
|
|
@@ -578,5 +592,5 @@ declare const deepDiff: <A extends object, B extends object>(a: A, b: B) => Deep
|
|
|
578
592
|
*/
|
|
579
593
|
declare function pruneToShape<S, Sh>(source: S, shape: Sh): Sh;
|
|
580
594
|
//#endregion
|
|
581
|
-
export { APIGatewayHandler, ApiEndpoints, ApiErrorBody, ApiInput, ApiOutput, ApiRequestFunction, ApiResponse, ApiSchema, ApiSuccessBody, CleanResponse, DeepOverride, DeepPartial, DeepReadonly, DeepRequired, ErrorBody, ErrorCode, ErrorRawProxyResultV2, FetchResponse, GetSchemaByPathOptions, HTTPMethod, HTTPMethods, OkRawProxyResultV2, RawApiGatewayHandler, RawProxyResultV2, SafeOmit, SuccessCode, Toc, TocEntry, createApiRequest, deepDiff, extractToc, getByPath, getSchemaByPath, isSchema, parseRaw, pruneToShape, setByPath, unwrap, wrapHandler };
|
|
595
|
+
export { APIGatewayHandler, AnyApiEndpointContract, ApiEndpointContract, ApiEndpoints, ApiErrorBody, ApiInput, ApiOutput, ApiRequestFunction, ApiResponse, ApiSchema, ApiSuccessBody, CleanResponse, DeepOverride, DeepPartial, DeepReadonly, DeepRequired, ErrorBody, ErrorCode, ErrorRawProxyResultV2, FetchResponse, GetSchemaByPathOptions, HTTPMethod, HTTPMethods, OkRawProxyResultV2, RawApiGatewayHandler, RawProxyResultV2, SafeOmit, SuccessCode, Toc, TocEntry, createApiRequest, deepDiff, endpointKey, extractToc, getByPath, getSchemaByPath, isSchema, parseRaw, pruneToShape, setByPath, unwrap, wrapHandler };
|
|
582
596
|
//# sourceMappingURL=browser.d.ts.map
|
package/dist/browser.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.d.ts","names":["line","column","offset","start","Point","end","Node","value","type","data","Data","position","Position","children","UnistData","PropertyName","Array","ElementContentMap","comment","Comment","element","Element","text","Text","RootContentMap","doctype","Doctype","RootContent","Extract","Nodes","UnistLiteral","Root","UnistParent","UnistNode","data","Data","Node","value","children","Literal","type","CommentData","DoctypeData","Parent","tagName","properties","Properties","ElementContent","content","ElementData","RootData","TextData"],"sources":["../src/lambda/handlerUtils.ts","../src/lambda/client-types.ts","../src/lambda/client.ts","../node_modules/.pnpm/@types+unist@3.0.3/node_modules/@types/unist/index.d.ts","../node_modules/.pnpm/@types+hast@3.0.4/node_modules/@types/hast/index.d.ts","../src/rehype/flat-toc.ts","../src/types/deep.ts","../src/types/safe.ts","../src/utils/valibot.ts","../src/utils/object.ts"],"x_google_ignoreList":[3,4],"mappings":";;;;;KAGY,WAAA;AAAA,KACA,SAAA;AAAA,KAEA,SAAA;EAAc,OAAA;EAAiB,KAAA;IAAU,IAAA;IAAc,KAAA;EAAA;AAAA;AAFnE;;;AAAA,KAOY,qBAAA;EACV,UAAA,EAAY,SAAA;EACZ,OAAA;IAAA,CAAa,MAAA;EAAA;EACb,IAAA,GAAO,SAAS;EAChB,eAAA;EACA,OAAA;AAAA;AAAA,KAGU,kBAAA;EACV,UAAA,EAAY,WAAW;EACvB,OAAA;IAAA,CAAa,MAAA;EAAA;EACb,IAAA;EACA,eAAA;EACA,OAAA;AAAA;;;;KAKU,gBAAA,GAAmB,qBAAA,GAAwB,kBAAkB;AAAA,KAG7D,iBAAA,OAAwB,KAAA,EAAO,CAAA,EAAG,OAAA,EAAS,OAAA,KAAY,OAAA,CAAQ,uBAAA;AAAA,KAG/D,oBAAA,WAA+B,0CAAA,UACzC,KAAA,EAAO,CAAA,EACP,OAAA,EAAS,OAAA,KACN,OAAA,CAAQ,gBAAA;;AAtBJ;AAGT;;;;;;;;;;;;iBAmCgB,WAAA,WAAsB,0CAAA,OACpC,OAAA,EAAS,oBAAA,CAAqB,CAAA,IAC7B,iBAAA,CAAkB,CAAA;;;;;;;AArDrB;;KCQY,QAAA,WAAmB,YAAA,YAAwB,CAAA,oBAAqB,CAAA,cAAe,OAAA,CACzF,CAAA;EACE,IAAA,EAAM,CAAA;EAAG,MAAA,EAAQ,CAAA;AAAA;;;;ADTA;AAErB;;KCgBY,SAAA,WAAoB,YAAA,YAAwB,CAAA,oBAAqB,CAAA,cAAe,OAAA,CAC1F,CAAA;EACE,IAAA,EAAM,CAAA;EAAG,MAAA,EAAQ,CAAA;AAAA;;;;ADlBmD;AAKxE;;KCsBY,WAAA,WAAsB,YAAA,YAAwB,CAAA,oBAAqB,CAAA,cAAe,OAAA,CAC5F,CAAA;EACE,IAAA,EAAM,CAAA;EAAG,MAAA,EAAQ,CAAA;AAAA;;;;;;;KAST,cAAA,WAAyB,YAAA,YAAwB,CAAA,oBAAqB,CAAA,cAAe,OAAA,CAC/F,OAAA,CAAQ,CAAA;EAAK,IAAA,EAAM,CAAA;EAAG,MAAA,EAAQ,CAAA;AAAA;EAC5B,MAAA,EAAQ,WAAA;AAAA,0BACY,OAAA,aACpB,CAAA;;;;;;;KASQ,YAAA,WAAuB,YAAA,YAAwB,CAAA,oBAAqB,CAAA,cAAe,OAAA,CAC7F,OAAA,CAAQ,CAAA;EAAK,IAAA,EAAM,CAAA;EAAG,MAAA,EAAQ,CAAA;AAAA;EAC5B,MAAA,EAAQ,SAAA;AAAA,0BACY,OAAA,aACpB,CAAA;;ADhCqE;AAGzE;KCmCK,cAAA,MAAoB,CAAA;EAAY,UAAA;EAAoB,IAAA;
|
|
1
|
+
{"version":3,"file":"browser.d.ts","names":["line","column","offset","start","Point","end","Node","value","type","data","Data","position","Position","children","UnistData","PropertyName","Array","ElementContentMap","comment","Comment","element","Element","text","Text","RootContentMap","doctype","Doctype","RootContent","Extract","Nodes","UnistLiteral","Root","UnistParent","UnistNode","data","Data","Node","value","children","Literal","type","CommentData","DoctypeData","Parent","tagName","properties","Properties","ElementContent","content","ElementData","RootData","TextData"],"sources":["../src/lambda/handlerUtils.ts","../src/lambda/client-types.ts","../src/lambda/client.ts","../node_modules/.pnpm/@types+unist@3.0.3/node_modules/@types/unist/index.d.ts","../node_modules/.pnpm/@types+hast@3.0.4/node_modules/@types/hast/index.d.ts","../src/rehype/flat-toc.ts","../src/types/deep.ts","../src/types/safe.ts","../src/utils/valibot.ts","../src/utils/object.ts"],"x_google_ignoreList":[3,4],"mappings":"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"}
|
package/dist/browser.js
CHANGED
|
@@ -51,15 +51,16 @@ async function _apiRequest(path, method, input, schema, environment, apiUrl, hea
|
|
|
51
51
|
};
|
|
52
52
|
return response;
|
|
53
53
|
}
|
|
54
|
+
function endpointKey(endpoint) {
|
|
55
|
+
return `${endpoint.method} ${endpoint.path}`;
|
|
56
|
+
}
|
|
54
57
|
/**
|
|
55
58
|
* @returns A function that can be used to make API requests with type safety
|
|
56
59
|
* @example const clientApiRequest = createApiRequest<ApiEndpoints>();
|
|
57
60
|
*/
|
|
58
|
-
function createApiRequest(
|
|
59
|
-
return async function apiRequest(
|
|
60
|
-
|
|
61
|
-
if (schema === void 0) throw new Error("Schema is undefined in api request");
|
|
62
|
-
return _apiRequest(path, method, input, schema, env, apiUrl, headers);
|
|
61
|
+
function createApiRequest(apiUrl, env) {
|
|
62
|
+
return async function apiRequest(endpoint, input, headers) {
|
|
63
|
+
return _apiRequest(endpoint.path, endpoint.method, input, endpoint.schema, env, apiUrl, headers);
|
|
63
64
|
};
|
|
64
65
|
}
|
|
65
66
|
//#endregion
|
|
@@ -358,6 +359,6 @@ function pruneToShape(source, shape) {
|
|
|
358
359
|
}
|
|
359
360
|
}
|
|
360
361
|
//#endregion
|
|
361
|
-
export { HTTPMethods, createApiRequest, deepDiff, extractToc, getByPath, getSchemaByPath, isSchema, parseRaw, pruneToShape, setByPath, unwrap, wrapHandler };
|
|
362
|
+
export { HTTPMethods, createApiRequest, deepDiff, endpointKey, extractToc, getByPath, getSchemaByPath, isSchema, parseRaw, pruneToShape, setByPath, unwrap, wrapHandler };
|
|
362
363
|
|
|
363
364
|
//# sourceMappingURL=browser.js.map
|
package/dist/browser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.js","names":[],"sources":["../src/lambda/client-types.ts","../src/lambda/client.ts","../src/lambda/handlerUtils.ts","../src/rehype/flat-toc.ts","../src/utils/valibot.ts","../src/utils/object.ts"],"sourcesContent":["import type { ErrorBody, SuccessCode, ErrorCode } from './handlerUtils.js';\n\n// ----------------- Helpers ----------------------\n// Used to easily extract types from ApiEndpoints types\n\n/**\n * Extracts the requestInput type from an API endpoint definition\n * @template E - Union type of all API endpoints\n * @template P - Path string literal type (e.g. 'payments/account')\n * @template M - HTTP method string literal type (e.g. 'GET', 'POST')\n */\nexport type ApiInput<E extends ApiEndpoints, P extends E['path'], M extends E['method']> = Extract<\n E,\n { path: P; method: M }\n>['requestInput'];\n\n/**\n * Extracts the requestOutput type from an API endpoint definition\n * @template E - Union type of all API endpoints\n * @template P - Path string literal type (e.g. 'payments/account')\n * @template M - HTTP method string literal type (e.g. 'GET', 'POST')\n */\nexport type ApiOutput<E extends ApiEndpoints, P extends E['path'], M extends E['method']> = Extract<\n E,\n { path: P; method: M }\n>['requestOutput'];\n\n/**\n * Extracts the response type from an API endpoint definition\n * @template E - Union type of all API endpoints\n * @template P - Path string literal type (e.g. 'payments/account')\n * @template M - HTTP method string literal type (e.g. 'GET', 'POST')\n */\nexport type ApiResponse<E extends ApiEndpoints, P extends E['path'], M extends E['method']> = Extract<\n E,\n { path: P; method: M }\n>['response'];\n\n/**\n * Extracts the sucessful body type from an API endpoint definition\n * @template E - Union type of all API endpoints\n * @template P - Path string literal type (e.g. 'payments/account')\n * @template M - HTTP method string literal type (e.g. 'GET', 'POST')\n */\nexport type ApiSuccessBody<E extends ApiEndpoints, P extends E['path'], M extends E['method']> = Extract<\n Extract<E, { path: P; method: M }>['response'],\n { status: SuccessCode }\n>['json'] extends () => Promise<infer R>\n ? R\n : unknown;\n\n/**\n * Extracts the sucessful body type from an API endpoint definition\n * @template E - Union type of all API endpoints\n * @template P - Path string literal type (e.g. 'payments/account')\n * @template M - HTTP method string literal type (e.g. 'GET', 'POST')\n */\nexport type ApiErrorBody<E extends ApiEndpoints, P extends E['path'], M extends E['method']> = Extract<\n Extract<E, { path: P; method: M }>['response'],\n { status: ErrorCode }\n>['json'] extends () => Promise<infer R>\n ? R\n : unknown;\n\n/**\n * Converts a RawApiGatewayHandler response type to a fetch like response type.\n */\ntype ConvertToFetch<T> = T extends { statusCode: number; body: object; headers: object }\n ? { ok: T['statusCode'] extends SuccessCode ? true : false; json: () => Promise<T['body']>; status: T['statusCode'] }\n : T;\n\nexport type CleanResponse = Omit<Response, 'status' | 'ok' | 'json'>;\nexport type FetchResponse<T extends (...args: any) => any> = ConvertToFetch<Awaited<ReturnType<T>>> & CleanResponse;\n\n// ------------------------ Proper types ------------------\n// This is used by createApiRequest and createFormFunction\n\nexport const HTTPMethods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS', 'HEAD'] as const;\nexport type HTTPMethod = (typeof HTTPMethods)[number];\n\nexport type ApiEndpoints = {\n path: string;\n method: HTTPMethod;\n requestInput: Record<string, any> | null;\n requestOutput: object | null;\n response: FetchResponse<\n // This means we get better types\n () => Promise<\n | { headers: object; statusCode: SuccessCode; body: any }\n | { headers: object; statusCode: ErrorCode; body: ErrorBody }\n >\n >;\n};\n","// import { deserialize } from './deserializer.js';\nimport { parse } from 'devalue';\nimport { parse as vParse, parseAsync, type GenericSchema, type GenericSchemaAsync } from 'valibot';\n\nimport type { ApiEndpoints, ApiInput, ApiResponse } from './client-types.js';\n\nconst bodyMethods = ['POST', 'PUT', 'PATCH'] as const;\nconst queryMethods = ['GET', 'DELETE'] as const;\n\nasync function _apiRequest<T = Response>(\n path: string,\n method: 'GET' | 'POST' | 'DELETE',\n input: object | null,\n schema: ApiSchema,\n // This was here because of the deserializer being different in prod\n environment: string | 'production',\n apiUrl: string,\n headers?: HeadersInit\n): Promise<T> {\n if (schema) {\n if (schema.async === true) await parseAsync(schema, input);\n else vParse(schema, input);\n }\n\n let url = `${apiUrl}${apiUrl.endsWith('/') ? '' : '/'}${path}`;\n\n if (queryMethods.includes(method as any)) {\n const params = new URLSearchParams();\n\n for (const [key, value] of Object.entries(input ?? {})) {\n if (Array.isArray(value)) {\n value.forEach((item) => params.append(key, String(item)));\n } else {\n params.append(key, String(value));\n }\n }\n\n const queryString = params.toString();\n if (queryString) url += `?${queryString}`;\n }\n\n headers = { 'Content-Type': 'application/json', ...headers };\n const response = await fetch(url, {\n method,\n headers,\n // oxlint-disable-next-line\n body: bodyMethods.includes(method as any) ? JSON.stringify(input) : undefined,\n credentials: 'include'\n });\n const contentType = response.headers.get('content-type') ?? '';\n\n let retrieved: Promise<string> | false = false;\n response.json = async () => {\n if (retrieved === false) {\n retrieved = response.text();\n }\n\n if (contentType === 'application/devalue') {\n return await parse(await retrieved);\n } else {\n return JSON.parse(await retrieved);\n }\n };\n return response as unknown as T;\n}\n\nconst HTTPMethods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS', 'HEAD'] as const;\ntype HTTPMethod = (typeof HTTPMethods)[number];\n\nexport type ApiRequestFunction<API extends ApiEndpoints> = <\n Path extends API['path'],\n Method extends Extract<API, { path: Path }>['method']\n>(\n path: Path,\n method: Method,\n input: ApiInput<API, Path, Method>,\n headers?: HeadersInit\n) => Promise<ApiResponse<API, Path, Method>>;\n\nexport type ApiSchema = GenericSchema | GenericSchemaAsync;\n\n/**\n * @returns A function that can be used to make API requests with type safety\n * @example const clientApiRequest = createApiRequest<ApiEndpoints>();\n */\nexport function createApiRequest<API extends ApiEndpoints>(\n schemas: Partial<Record<API['path'], Partial<Record<HTTPMethod, ApiSchema>>>>,\n apiUrl: string,\n env: string\n): ApiRequestFunction<API> {\n return async function apiRequest(path, method, input, headers) {\n const schema = schemas[path]?.[method];\n if (schema === undefined) throw new Error('Schema is undefined in api request');\n\n // if (typeof schema === 'function') {\n // schema = schema();\n // }\n\n return _apiRequest<ApiResponse<API, typeof path, typeof method>>(\n path as string,\n method as 'GET' | 'POST',\n input,\n schema,\n env,\n apiUrl,\n headers\n );\n };\n}\n","import type { APIGatewayProxyResultV2, Context, APIGatewayProxyEventV2WithLambdaAuthorizer } from 'aws-lambda';\nimport { stringify } from 'devalue';\n\nexport type SuccessCode = 200 | 201 | 204;\nexport type ErrorCode = 400 | 401 | 403 | 404 | 409 | 500;\n\nexport type ErrorBody = { message: string; field?: { name: string; value: string } };\n\n/**\n * The error response for the lambda functions to return\n */\nexport type ErrorRawProxyResultV2 = {\n statusCode: ErrorCode;\n headers?: { [header: string]: string } | undefined;\n body?: ErrorBody;\n isBase64Encoded?: boolean | undefined;\n cookies?: string[] | undefined;\n};\n\nexport type OkRawProxyResultV2 = {\n statusCode: SuccessCode;\n headers?: { [header: string]: string } | undefined;\n body?: object | undefined;\n isBase64Encoded?: boolean | undefined;\n cookies?: string[] | undefined;\n};\n/**\n * A type for the raw proxy result - just using an object not a stirng for the body\n */\nexport type RawProxyResultV2 = ErrorRawProxyResultV2 | OkRawProxyResultV2;\n\n// The type of the handler returned from wrapHandler\nexport type APIGatewayHandler<E> = (event: E, context: Context) => Promise<APIGatewayProxyResultV2>;\n\n// The type of the handler passed into wrapHandler\nexport type RawApiGatewayHandler<E extends APIGatewayProxyEventV2WithLambdaAuthorizer<any>> = (\n event: E,\n context: Context\n) => Promise<RawProxyResultV2>;\n\n/**\n * Wraps a handler that returns the body as an object rather than a string.\n *\n * This means you can achieve proper type inference on your handler and have standardised serialisation\n *\n * @example\n```ts\nexport type AuthorizerContext = {\n details: JWTPayload;\n} | null;\n\nexport const wrapHandler = baseWrapHandler<APIGatewayProxyEventV2WithLambdaAuthorizer<AuthorizerContext>>\n\n*/\nexport function wrapHandler<E extends APIGatewayProxyEventV2WithLambdaAuthorizer<any>>(\n handler: RawApiGatewayHandler<E>\n): APIGatewayHandler<E> {\n return async (event: E, context: Context): Promise<APIGatewayProxyResultV2> => {\n const result = await handler(event, context);\n\n if (result.body) {\n const headers = new Headers(result.headers);\n headers.set('Content-Type', 'application/devalue');\n\n return { ...result, headers: Object.fromEntries(headers), body: stringify(result.body) };\n } else {\n return { ...result, body: undefined };\n }\n };\n}\n","import type { Root, RootContent, Element } from 'hast';\nimport rehypeParse from 'rehype-parse';\nimport type { Plugin } from 'unified';\nimport { unified } from 'unified';\nimport type { VFile } from 'vfile';\n\n/**\n * This rehype plugin extracts the headings from the markdown elements but also the raw elements.\n * So we get html headings in the TOC as well\n *\n * It sets the file.data.fm.toc to a flat map of the toc\n */\nexport const extractToc: Plugin<[], Root> = () => {\n return (tree: Root, file: VFile) => {\n const details = tree.children.flatMap(extractDetails);\n if (file.data.fm === undefined) file.data.fm = {};\n // @ts-expect-error its untyped but for svmdex it is there\n file.data.fm.toc = details;\n };\n};\nexport type Toc = TocEntry[];\nexport type TocEntry = { level: number; id: string; value: string };\n\nfunction extractDetails(content: RootContent | { type: 'raw'; value: string }): TocEntry[] {\n if (content.type === 'element' && content.tagName.startsWith('h') && 'id' in content.properties) {\n const value =\n content.children.length === 1 && content.children[0].type === 'text'\n ? content.children[0].value\n : (content.properties.id as string);\n\n return [{ level: parseInt(content.tagName.slice(1)), id: content.properties.id as string, value }];\n } else if (content.type === 'raw') {\n const parsed = parseRaw(content.value);\n return parsed.flatMap(extractDetails);\n }\n return [];\n}\n\n/**\n * Parses raw HTML and returns a flat array of all heading (h1-h6) elements as HAST nodes.\n */\nexport function parseRaw(raw: string): Element[] {\n // Parse the HTML string into a HAST Root node\n const tree = unified()\n .use(rehypeParse, { fragment: true }) // allow parsing HTML fragments\n .parse(raw) as Root;\n\n // Helper function to recursively find heading elements\n function collectHeadings(node: RootContent): Element[] {\n if (node.type === 'element' && /^h[1-6]$/.test(node.tagName)) {\n return [node];\n }\n // Check children recursively\n if ('children' in node && Array.isArray(node.children)) {\n return node.children.flatMap(collectHeadings);\n }\n return [];\n }\n\n // Flatten all headings found in the tree\n return tree.children.flatMap(collectHeadings);\n}\n","import type { GenericSchema, GenericSchemaAsync } from 'valibot';\n\nexport function isSchema(x: unknown): x is GenericSchema {\n return !!x && typeof x === 'object' && 'kind' in x && x['kind'] === 'schema';\n}\n\nexport function unwrap(schema: GenericSchema): GenericSchema {\n // Unwrap common wrappers that simply contain another schema under `wrapped`\n // optional | exactOptional | undefinedable | nullable | nullish | nonNullable | nonNullish | readonly | brand | description | metadata | title | flavor\n // Most of these share `{ type: string; wrapped: GenericSchema }`\n // Guarded unwrap to avoid infinite loops.\n let curr: any = schema as any;\n const seen = new Set<any>();\n while (curr && typeof curr === 'object' && !seen.has(curr) && 'wrapped' in curr && isSchema((curr as any).wrapped)) {\n seen.add(curr);\n curr = (curr as any).wrapped;\n }\n return curr as GenericSchema;\n}\n\nfunction isIntegerKey(s: string): boolean {\n // allow \"0\", \"01\" etc. to index tuples/arrays consistently\n return /^-?\\d+$/.test(s);\n}\n\nexport type GetSchemaByPathOptions = {\n /**\n * When a union/variant cannot be narrowed by the path segment,\n * choose index `preferOption` (default 0). Set to -1 to return undefined instead.\n */\n preferOption?: number;\n};\n\nexport function getSchemaByPath(\n root: GenericSchema | GenericSchemaAsync,\n path: string,\n opts: GetSchemaByPathOptions = {}\n): GenericSchema | undefined {\n if (!isSchema(root)) return undefined;\n if (!path) return root;\n\n const keys = path.split('.');\n let curr: GenericSchema | undefined = root;\n\n for (let i = 0; i < keys.length; i++) {\n if (!curr) return undefined;\n curr = unwrap(curr);\n const seg = keys[i];\n\n // Narrow by schema \"type\"\n const type = (curr as any).type as string | undefined;\n\n switch (type) {\n case 'object': {\n // ObjectSchema has `.entries`\n const entries = (curr as any).entries as Record<string, GenericSchema> | undefined;\n if (!entries) return undefined;\n curr = entries[seg];\n break;\n }\n\n case 'record': {\n // RecordSchema has `.value` for any key\n const value = (curr as any).value as GenericSchema | undefined;\n curr = value;\n break;\n }\n\n case 'array': {\n // ArraySchema has `.item`\n if (!isIntegerKey(seg)) return undefined;\n const item = (curr as any).item as GenericSchema | undefined;\n curr = item;\n break;\n }\n\n case 'tuple': {\n // TupleSchema has `.items` and possibly `.rest`\n if (!isIntegerKey(seg)) return undefined;\n const idx = Number(seg);\n const items = (curr as any).items as GenericSchema[] | undefined;\n const rest = (curr as any).rest as GenericSchema | undefined;\n if (!items) return undefined;\n curr = idx < items.length ? items[idx] : rest;\n break;\n }\n\n case 'union': {\n // UnionSchema has `.options` (array of schemas)\n const options = (curr as any).options as GenericSchema[] | undefined;\n if (!options?.length) return undefined;\n\n // Try to narrow by segment:\n // - if numeric seg: prefer array/tuple options\n // - if string seg: prefer object/record options that contain seg\n const numeric = isIntegerKey(seg);\n\n let next: GenericSchema | undefined;\n\n if (numeric) {\n next =\n options.find((o) => {\n const u = unwrap(o) as any;\n return u?.type === 'array' || u?.type === 'tuple';\n }) ?? options[opts.preferOption ?? 0];\n } else {\n // Prefer object/record with matching key\n next =\n options.find((o) => {\n const u = unwrap(o) as any;\n if (u?.type === 'object') {\n const ent = u.entries as Record<string, GenericSchema> | undefined;\n return !!ent && seg in ent;\n }\n return u?.type === 'record';\n }) ?? options[opts.preferOption ?? 0];\n }\n\n curr = next;\n // Loop continues to use seg against selected option\n i--; // reprocess this segment against the chosen branch\n break;\n }\n\n case 'variant': {\n // Variant (discriminated union) has `.options` too\n const options = (curr as any).options as GenericSchema[] | undefined;\n if (!options?.length) return undefined;\n // Same narrowing as union\n const numeric = isIntegerKey(seg);\n let next: GenericSchema | undefined;\n if (numeric) {\n next =\n options.find((o) => {\n const u = unwrap(o) as any;\n return u?.type === 'array' || u?.type === 'tuple';\n }) ?? options[opts.preferOption ?? 0];\n } else {\n next =\n options.find((o) => {\n const u = unwrap(o) as any;\n if (u?.type === 'object') {\n const ent = u.entries as Record<string, GenericSchema> | undefined;\n return !!ent && seg in ent;\n }\n return u?.type === 'record';\n }) ?? options[opts.preferOption ?? 0];\n }\n curr = next;\n i--;\n break;\n }\n\n default: {\n // If it’s a pipeline schema (`pipe`) or similar wrapper, many expose `.wrapped` and are handled by unwrap.\n // If we end up at a primitive or unknown structure while keys remain, fail.\n return undefined;\n }\n }\n }\n\n return curr ? unwrap(curr) : undefined;\n}\n","import { isEqual, isObject } from 'radash';\n\nimport type { DeepPartial } from '../types/deep.js';\n\n/**\n * Sets the value for an object by its dot path\n * @param obj - any object\n * @param path - the dot path eg. key1.0.1.key2\n * @param value - any value\n * @returns - the modified object\n */\nexport function setByPath<T extends object>(obj: T, path: string, value: any): T {\n const keys = path.split('.');\n let curr: any = obj;\n\n for (let i = 0; i < keys.length - 1; i++) {\n const k = keys[i];\n const next = keys[i + 1];\n // handle array indices like '0'\n if (Number.isInteger(Number(next))) {\n curr[k] ??= [];\n } else {\n curr[k] ??= {};\n }\n curr = curr[k];\n }\n\n curr[keys[keys.length - 1]] = value;\n return obj;\n}\n\n/**\n * Gets the value from an object by its dot path\n * @param obj - any object\n * @param path - the dot path eg. key1.0.1.key2\n * @returns - the value at the given path or undefined\n */\nexport function getByPath<T extends object>(obj: T, path: string): any {\n if (!obj || typeof obj !== 'object') return undefined;\n const keys = path.split('.');\n let curr: any = obj;\n\n for (const k of keys) {\n if (curr == null) return undefined;\n curr = curr[k];\n }\n\n return curr;\n}\n\nconst isPlainRecord = (v: unknown): v is Record<string, unknown> => isObject(v) && !Array.isArray(v);\n\n/**\n * Returns a deep \"patch\" object containing only the fields from `b`\n * that are different from `a`.\n *\n * Behavior:\n * - Only keys from `b` can appear in the result.\n * - New keys in `b` are included.\n * - Changed primitive/array values are included as the value from `b`.\n * - For nested plain objects, it recurses and returns only the differing nested fields.\n * - Arrays are treated as atomic (if different, the whole array from `b` is returned).\n *\n * Typing:\n * - Output is `DeepPartial<B>` because only a subset of `b`'s shape is returned.\n *\n * @template A\n * @template B\n * @param {A} a - Base/original object (can be a different shape than `b`).\n * @param {B} b - Updated object; output keys come from this object.\n * @returns {DeepPartial<B>} Deep partial of `b` containing only differences vs `a`.\n */\nexport const deepDiff = <A extends object, B extends object>(a: A, b: B): DeepPartial<B> => {\n const out: Record<string, unknown> = {};\n\n for (const key of Object.keys(b) as Array<keyof B>) {\n const aVal = (a as any)?.[key];\n const bVal = (b as any)[key];\n\n if (!((key as any) in (a as any))) {\n out[key as any] = bVal;\n continue;\n }\n\n if (isPlainRecord(aVal) && isPlainRecord(bVal)) {\n const nested = deepDiff(aVal, bVal);\n if (Object.keys(nested as any).length) out[key as any] = nested;\n continue;\n }\n\n if (!isEqual(aVal, bVal)) out[key as any] = bVal;\n }\n\n return out as DeepPartial<B>;\n};\n\n/**\n * Deeply prunes `source` to match the *shape* of `shape`.\n *\n * Rules:\n * - Only keys that exist on `shape` are kept.\n * - Pruning is deep for nested plain objects.\n * - Arrays are supported by using the first element of `shape` as the element-shape.\n * - If `shape` is `[]`, returns `[]` (drops all elements).\n * - Primitive values are kept as-is (no type coercion) if the key exists in `shape`.\n * - If `shape` expects an object/array but `source` is not compatible, returns an empty object/array of that shape.\n *\n * @typeParam S - Source object type.\n * @typeParam Sh - Shape object type.\n * @param source - The object to prune.\n * @param shape - The object whose keys/structure are the allowlist.\n * @returns A new value derived from `source`, containing only fields present in `shape`, pruned deeply.\n *\n * @example\n * const source = { a: 1, b: { c: 2, d: 3 }, e: [ { x: 1, y: 2 }, { x: 3, y: 4 } ], z: 9 };\n * const shape = { a: 0, b: { c: 0 }, e: [ { x: 0 } ] };\n * // => { a: 1, b: { c: 2 }, e: [ { x: 1 }, { x: 3 } ] }\n * const out = pruneToShape(source, shape);\n */\nexport function pruneToShape<S, Sh>(source: S, shape: Sh): Sh {\n return pruneAny(source as unknown, shape as unknown) as Sh;\n\n function pruneAny(src: unknown, sh: unknown): unknown {\n // Arrays: use first element as the \"element shape\"\n if (Array.isArray(sh)) {\n if (!Array.isArray(src)) return [];\n if (sh.length === 0) return [];\n const elemShape = sh[0];\n return src.map((v) => pruneAny(v, elemShape));\n }\n\n // Plain objects: keep only keys present on shape, recursively.\n if (isPlainObject(sh)) {\n const out: Record<string, unknown> = {};\n const srcObj = isPlainObject(src) ? (src as Record<string, unknown>) : undefined;\n\n for (const key of Object.keys(sh as Record<string, unknown>)) {\n const shVal = (sh as Record<string, unknown>)[key];\n const srcVal = srcObj ? srcObj[key] : undefined;\n\n if (Array.isArray(shVal) || isPlainObject(shVal)) {\n out[key] = pruneAny(srcVal, shVal);\n } else {\n // Primitive (or function/date/etc in shape): key exists => keep source value as-is\n out[key] = srcVal;\n }\n }\n return out;\n }\n\n // Non-object shape => allowed leaf; just return source leaf as-is.\n return src;\n }\n\n function isPlainObject(v: unknown): v is Record<string, unknown> {\n if (v === null || typeof v !== 'object') return false;\n const proto = Object.getPrototypeOf(v);\n return proto === Object.prototype || proto === null;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"browser.js","names":[],"sources":["../src/lambda/client-types.ts","../src/lambda/client.ts","../src/lambda/handlerUtils.ts","../src/rehype/flat-toc.ts","../src/utils/valibot.ts","../src/utils/object.ts"],"sourcesContent":["import type { ErrorBody, SuccessCode, ErrorCode } from './handlerUtils.js';\n\n// ----------------- Helpers ----------------------\n// Used to easily extract types from ApiEndpoints types\n\n/**\n * Extracts the requestInput type from an API endpoint definition\n * @template E - Union type of all API endpoints\n * @template P - Path string literal type (e.g. 'payments/account')\n * @template M - HTTP method string literal type (e.g. 'GET', 'POST')\n */\nexport type ApiInput<E extends ApiEndpoints, P extends E['path'], M extends E['method']> = Extract<\n E,\n { path: P; method: M }\n>['requestInput'];\n\n/**\n * Extracts the requestOutput type from an API endpoint definition\n * @template E - Union type of all API endpoints\n * @template P - Path string literal type (e.g. 'payments/account')\n * @template M - HTTP method string literal type (e.g. 'GET', 'POST')\n */\nexport type ApiOutput<E extends ApiEndpoints, P extends E['path'], M extends E['method']> = Extract<\n E,\n { path: P; method: M }\n>['requestOutput'];\n\n/**\n * Extracts the response type from an API endpoint definition\n * @template E - Union type of all API endpoints\n * @template P - Path string literal type (e.g. 'payments/account')\n * @template M - HTTP method string literal type (e.g. 'GET', 'POST')\n */\nexport type ApiResponse<E extends ApiEndpoints, P extends E['path'], M extends E['method']> = Extract<\n E,\n { path: P; method: M }\n>['response'];\n\n/**\n * Extracts the sucessful body type from an API endpoint definition\n * @template E - Union type of all API endpoints\n * @template P - Path string literal type (e.g. 'payments/account')\n * @template M - HTTP method string literal type (e.g. 'GET', 'POST')\n */\nexport type ApiSuccessBody<E extends ApiEndpoints, P extends E['path'], M extends E['method']> = Extract<\n Extract<E, { path: P; method: M }>['response'],\n { status: SuccessCode }\n>['json'] extends () => Promise<infer R>\n ? R\n : unknown;\n\n/**\n * Extracts the sucessful body type from an API endpoint definition\n * @template E - Union type of all API endpoints\n * @template P - Path string literal type (e.g. 'payments/account')\n * @template M - HTTP method string literal type (e.g. 'GET', 'POST')\n */\nexport type ApiErrorBody<E extends ApiEndpoints, P extends E['path'], M extends E['method']> = Extract<\n Extract<E, { path: P; method: M }>['response'],\n { status: ErrorCode }\n>['json'] extends () => Promise<infer R>\n ? R\n : unknown;\n\n/**\n * Converts a RawApiGatewayHandler response type to a fetch like response type.\n */\ntype ConvertToFetch<T> = T extends { statusCode: number; body?: infer Body; headers?: object }\n ? { ok: T['statusCode'] extends SuccessCode ? true : false; json: () => Promise<Body>; status: T['statusCode'] }\n : T;\n\nexport type CleanResponse = Omit<Response, 'status' | 'ok' | 'json'>;\nexport type FetchResponse<T extends (...args: any) => any> = ConvertToFetch<Awaited<ReturnType<T>>> & CleanResponse;\n\n// ------------------------ Proper types ------------------\n// This is used by createApiRequest and createFormFunction\n\nexport const HTTPMethods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS', 'HEAD'] as const;\nexport type HTTPMethod = (typeof HTTPMethods)[number];\n\nexport type ApiEndpoints = {\n path: string;\n method: HTTPMethod;\n requestInput: any;\n requestOutput: any;\n response: FetchResponse<\n // This means we get better types\n () => Promise<\n | { headers: object; statusCode: SuccessCode; body: any }\n | { headers: object; statusCode: ErrorCode; body: ErrorBody }\n >\n >;\n};\n","// import { deserialize } from './deserializer.js';\nimport { parse } from 'devalue';\nimport { parse as vParse, parseAsync, type GenericSchema, type GenericSchemaAsync } from 'valibot';\n\nimport type { ApiEndpoints, ApiInput, ApiResponse } from './client-types.js';\n\nconst bodyMethods = ['POST', 'PUT', 'PATCH'] as const;\nconst queryMethods = ['GET', 'DELETE'] as const;\n\nasync function _apiRequest<T = Response>(\n path: string,\n method: HTTPMethod,\n input: object | null,\n schema: ApiSchema,\n // This was here because of the deserializer being different in prod\n environment: string | 'production',\n apiUrl: string,\n headers?: HeadersInit\n): Promise<T> {\n if (schema) {\n if (schema.async === true) await parseAsync(schema, input);\n else vParse(schema, input);\n }\n\n let url = `${apiUrl}${apiUrl.endsWith('/') ? '' : '/'}${path}`;\n\n if (queryMethods.includes(method as any)) {\n const params = new URLSearchParams();\n\n for (const [key, value] of Object.entries(input ?? {})) {\n if (Array.isArray(value)) {\n value.forEach((item) => params.append(key, String(item)));\n } else {\n params.append(key, String(value));\n }\n }\n\n const queryString = params.toString();\n if (queryString) url += `?${queryString}`;\n }\n\n headers = { 'Content-Type': 'application/json', ...headers };\n const response = await fetch(url, {\n method,\n headers,\n // oxlint-disable-next-line\n body: bodyMethods.includes(method as any) ? JSON.stringify(input) : undefined,\n credentials: 'include'\n });\n const contentType = response.headers.get('content-type') ?? '';\n\n let retrieved: Promise<string> | false = false;\n response.json = async () => {\n if (retrieved === false) {\n retrieved = response.text();\n }\n\n if (contentType === 'application/devalue') {\n return await parse(await retrieved);\n } else {\n return JSON.parse(await retrieved);\n }\n };\n return response as unknown as T;\n}\n\nconst HTTPMethods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS', 'HEAD'] as const;\ntype HTTPMethod = (typeof HTTPMethods)[number];\n\nexport type ApiRequestFunction<API extends ApiEndpoints> = <\n Path extends API['path'],\n Method extends Extract<API, { path: Path }>['method']\n>(\n endpoint: ApiEndpointContract<API, Path, Method>,\n input: ApiInput<API, Path, Method>,\n headers?: HeadersInit\n) => Promise<ApiResponse<API, Path, Method>>;\n\nexport type ApiSchema = GenericSchema | GenericSchemaAsync;\n\nexport type ApiEndpointContract<\n API extends ApiEndpoints,\n Path extends API['path'],\n Method extends Extract<API, { path: Path }>['method']\n> = { path: Path; method: Method; schema: ApiSchema };\n\nexport type AnyApiEndpointContract<API extends ApiEndpoints> = {\n [Path in API['path']]: {\n [Method in Extract<API, { path: Path }>['method']]: ApiEndpointContract<API, Path, Method>;\n }[Extract<API, { path: Path }>['method']];\n}[API['path']];\n\nexport function endpointKey(endpoint: { path: string; method: string }) {\n return `${endpoint.method} ${endpoint.path}`;\n}\n\n/**\n * @returns A function that can be used to make API requests with type safety\n * @example const clientApiRequest = createApiRequest<ApiEndpoints>();\n */\nexport function createApiRequest<API extends ApiEndpoints>(apiUrl: string, env: string): ApiRequestFunction<API> {\n return async function apiRequest(endpoint, input, headers) {\n return _apiRequest<ApiResponse<API, typeof endpoint.path, typeof endpoint.method>>(\n endpoint.path,\n endpoint.method,\n input,\n endpoint.schema,\n env,\n apiUrl,\n headers\n );\n };\n}\n","import type { APIGatewayProxyResultV2, Context, APIGatewayProxyEventV2WithLambdaAuthorizer } from 'aws-lambda';\nimport { stringify } from 'devalue';\n\nexport type SuccessCode = 200 | 201 | 204;\nexport type ErrorCode = 400 | 401 | 403 | 404 | 409 | 500;\n\nexport type ErrorBody = { message: string; field?: { name: string; value: string } };\n\n/**\n * The error response for the lambda functions to return\n */\nexport type ErrorRawProxyResultV2 = {\n statusCode: ErrorCode;\n headers?: { [header: string]: string } | undefined;\n body?: ErrorBody;\n isBase64Encoded?: boolean | undefined;\n cookies?: string[] | undefined;\n};\n\nexport type OkRawProxyResultV2 = {\n statusCode: SuccessCode;\n headers?: { [header: string]: string } | undefined;\n body?: object | undefined;\n isBase64Encoded?: boolean | undefined;\n cookies?: string[] | undefined;\n};\n/**\n * A type for the raw proxy result - just using an object not a stirng for the body\n */\nexport type RawProxyResultV2 = ErrorRawProxyResultV2 | OkRawProxyResultV2;\n\n// The type of the handler returned from wrapHandler\nexport type APIGatewayHandler<E> = (event: E, context: Context) => Promise<APIGatewayProxyResultV2>;\n\n// The type of the handler passed into wrapHandler\nexport type RawApiGatewayHandler<E extends APIGatewayProxyEventV2WithLambdaAuthorizer<any>> = (\n event: E,\n context: Context\n) => Promise<RawProxyResultV2>;\n\n/**\n * Wraps a handler that returns the body as an object rather than a string.\n *\n * This means you can achieve proper type inference on your handler and have standardised serialisation\n *\n * @example\n```ts\nexport type AuthorizerContext = {\n details: JWTPayload;\n} | null;\n\nexport const wrapHandler = baseWrapHandler<APIGatewayProxyEventV2WithLambdaAuthorizer<AuthorizerContext>>\n\n*/\nexport function wrapHandler<E extends APIGatewayProxyEventV2WithLambdaAuthorizer<any>>(\n handler: RawApiGatewayHandler<E>\n): APIGatewayHandler<E> {\n return async (event: E, context: Context): Promise<APIGatewayProxyResultV2> => {\n const result = await handler(event, context);\n\n if (result.body) {\n const headers = new Headers(result.headers);\n headers.set('Content-Type', 'application/devalue');\n\n return { ...result, headers: Object.fromEntries(headers), body: stringify(result.body) };\n } else {\n return { ...result, body: undefined };\n }\n };\n}\n","import type { Root, RootContent, Element } from 'hast';\nimport rehypeParse from 'rehype-parse';\nimport type { Plugin } from 'unified';\nimport { unified } from 'unified';\nimport type { VFile } from 'vfile';\n\n/**\n * This rehype plugin extracts the headings from the markdown elements but also the raw elements.\n * So we get html headings in the TOC as well\n *\n * It sets the file.data.fm.toc to a flat map of the toc\n */\nexport const extractToc: Plugin<[], Root> = () => {\n return (tree: Root, file: VFile) => {\n const details = tree.children.flatMap(extractDetails);\n if (file.data.fm === undefined) file.data.fm = {};\n // @ts-expect-error its untyped but for svmdex it is there\n file.data.fm.toc = details;\n };\n};\nexport type Toc = TocEntry[];\nexport type TocEntry = { level: number; id: string; value: string };\n\nfunction extractDetails(content: RootContent | { type: 'raw'; value: string }): TocEntry[] {\n if (content.type === 'element' && content.tagName.startsWith('h') && 'id' in content.properties) {\n const value =\n content.children.length === 1 && content.children[0].type === 'text'\n ? content.children[0].value\n : (content.properties.id as string);\n\n return [{ level: parseInt(content.tagName.slice(1)), id: content.properties.id as string, value }];\n } else if (content.type === 'raw') {\n const parsed = parseRaw(content.value);\n return parsed.flatMap(extractDetails);\n }\n return [];\n}\n\n/**\n * Parses raw HTML and returns a flat array of all heading (h1-h6) elements as HAST nodes.\n */\nexport function parseRaw(raw: string): Element[] {\n // Parse the HTML string into a HAST Root node\n const tree = unified()\n .use(rehypeParse, { fragment: true }) // allow parsing HTML fragments\n .parse(raw) as Root;\n\n // Helper function to recursively find heading elements\n function collectHeadings(node: RootContent): Element[] {\n if (node.type === 'element' && /^h[1-6]$/.test(node.tagName)) {\n return [node];\n }\n // Check children recursively\n if ('children' in node && Array.isArray(node.children)) {\n return node.children.flatMap(collectHeadings);\n }\n return [];\n }\n\n // Flatten all headings found in the tree\n return tree.children.flatMap(collectHeadings);\n}\n","import type { GenericSchema, GenericSchemaAsync } from 'valibot';\n\nexport function isSchema(x: unknown): x is GenericSchema {\n return !!x && typeof x === 'object' && 'kind' in x && x['kind'] === 'schema';\n}\n\nexport function unwrap(schema: GenericSchema): GenericSchema {\n // Unwrap common wrappers that simply contain another schema under `wrapped`\n // optional | exactOptional | undefinedable | nullable | nullish | nonNullable | nonNullish | readonly | brand | description | metadata | title | flavor\n // Most of these share `{ type: string; wrapped: GenericSchema }`\n // Guarded unwrap to avoid infinite loops.\n let curr: any = schema as any;\n const seen = new Set<any>();\n while (curr && typeof curr === 'object' && !seen.has(curr) && 'wrapped' in curr && isSchema((curr as any).wrapped)) {\n seen.add(curr);\n curr = (curr as any).wrapped;\n }\n return curr as GenericSchema;\n}\n\nfunction isIntegerKey(s: string): boolean {\n // allow \"0\", \"01\" etc. to index tuples/arrays consistently\n return /^-?\\d+$/.test(s);\n}\n\nexport type GetSchemaByPathOptions = {\n /**\n * When a union/variant cannot be narrowed by the path segment,\n * choose index `preferOption` (default 0). Set to -1 to return undefined instead.\n */\n preferOption?: number;\n};\n\nexport function getSchemaByPath(\n root: GenericSchema | GenericSchemaAsync,\n path: string,\n opts: GetSchemaByPathOptions = {}\n): GenericSchema | undefined {\n if (!isSchema(root)) return undefined;\n if (!path) return root;\n\n const keys = path.split('.');\n let curr: GenericSchema | undefined = root;\n\n for (let i = 0; i < keys.length; i++) {\n if (!curr) return undefined;\n curr = unwrap(curr);\n const seg = keys[i];\n\n // Narrow by schema \"type\"\n const type = (curr as any).type as string | undefined;\n\n switch (type) {\n case 'object': {\n // ObjectSchema has `.entries`\n const entries = (curr as any).entries as Record<string, GenericSchema> | undefined;\n if (!entries) return undefined;\n curr = entries[seg];\n break;\n }\n\n case 'record': {\n // RecordSchema has `.value` for any key\n const value = (curr as any).value as GenericSchema | undefined;\n curr = value;\n break;\n }\n\n case 'array': {\n // ArraySchema has `.item`\n if (!isIntegerKey(seg)) return undefined;\n const item = (curr as any).item as GenericSchema | undefined;\n curr = item;\n break;\n }\n\n case 'tuple': {\n // TupleSchema has `.items` and possibly `.rest`\n if (!isIntegerKey(seg)) return undefined;\n const idx = Number(seg);\n const items = (curr as any).items as GenericSchema[] | undefined;\n const rest = (curr as any).rest as GenericSchema | undefined;\n if (!items) return undefined;\n curr = idx < items.length ? items[idx] : rest;\n break;\n }\n\n case 'union': {\n // UnionSchema has `.options` (array of schemas)\n const options = (curr as any).options as GenericSchema[] | undefined;\n if (!options?.length) return undefined;\n\n // Try to narrow by segment:\n // - if numeric seg: prefer array/tuple options\n // - if string seg: prefer object/record options that contain seg\n const numeric = isIntegerKey(seg);\n\n let next: GenericSchema | undefined;\n\n if (numeric) {\n next =\n options.find((o) => {\n const u = unwrap(o) as any;\n return u?.type === 'array' || u?.type === 'tuple';\n }) ?? options[opts.preferOption ?? 0];\n } else {\n // Prefer object/record with matching key\n next =\n options.find((o) => {\n const u = unwrap(o) as any;\n if (u?.type === 'object') {\n const ent = u.entries as Record<string, GenericSchema> | undefined;\n return !!ent && seg in ent;\n }\n return u?.type === 'record';\n }) ?? options[opts.preferOption ?? 0];\n }\n\n curr = next;\n // Loop continues to use seg against selected option\n i--; // reprocess this segment against the chosen branch\n break;\n }\n\n case 'variant': {\n // Variant (discriminated union) has `.options` too\n const options = (curr as any).options as GenericSchema[] | undefined;\n if (!options?.length) return undefined;\n // Same narrowing as union\n const numeric = isIntegerKey(seg);\n let next: GenericSchema | undefined;\n if (numeric) {\n next =\n options.find((o) => {\n const u = unwrap(o) as any;\n return u?.type === 'array' || u?.type === 'tuple';\n }) ?? options[opts.preferOption ?? 0];\n } else {\n next =\n options.find((o) => {\n const u = unwrap(o) as any;\n if (u?.type === 'object') {\n const ent = u.entries as Record<string, GenericSchema> | undefined;\n return !!ent && seg in ent;\n }\n return u?.type === 'record';\n }) ?? options[opts.preferOption ?? 0];\n }\n curr = next;\n i--;\n break;\n }\n\n default: {\n // If it’s a pipeline schema (`pipe`) or similar wrapper, many expose `.wrapped` and are handled by unwrap.\n // If we end up at a primitive or unknown structure while keys remain, fail.\n return undefined;\n }\n }\n }\n\n return curr ? unwrap(curr) : undefined;\n}\n","import { isEqual, isObject } from 'radash';\n\nimport type { DeepPartial } from '../types/deep.js';\n\n/**\n * Sets the value for an object by its dot path\n * @param obj - any object\n * @param path - the dot path eg. key1.0.1.key2\n * @param value - any value\n * @returns - the modified object\n */\nexport function setByPath<T extends object>(obj: T, path: string, value: any): T {\n const keys = path.split('.');\n let curr: any = obj;\n\n for (let i = 0; i < keys.length - 1; i++) {\n const k = keys[i];\n const next = keys[i + 1];\n // handle array indices like '0'\n if (Number.isInteger(Number(next))) {\n curr[k] ??= [];\n } else {\n curr[k] ??= {};\n }\n curr = curr[k];\n }\n\n curr[keys[keys.length - 1]] = value;\n return obj;\n}\n\n/**\n * Gets the value from an object by its dot path\n * @param obj - any object\n * @param path - the dot path eg. key1.0.1.key2\n * @returns - the value at the given path or undefined\n */\nexport function getByPath<T extends object>(obj: T, path: string): any {\n if (!obj || typeof obj !== 'object') return undefined;\n const keys = path.split('.');\n let curr: any = obj;\n\n for (const k of keys) {\n if (curr == null) return undefined;\n curr = curr[k];\n }\n\n return curr;\n}\n\nconst isPlainRecord = (v: unknown): v is Record<string, unknown> => isObject(v) && !Array.isArray(v);\n\n/**\n * Returns a deep \"patch\" object containing only the fields from `b`\n * that are different from `a`.\n *\n * Behavior:\n * - Only keys from `b` can appear in the result.\n * - New keys in `b` are included.\n * - Changed primitive/array values are included as the value from `b`.\n * - For nested plain objects, it recurses and returns only the differing nested fields.\n * - Arrays are treated as atomic (if different, the whole array from `b` is returned).\n *\n * Typing:\n * - Output is `DeepPartial<B>` because only a subset of `b`'s shape is returned.\n *\n * @template A\n * @template B\n * @param {A} a - Base/original object (can be a different shape than `b`).\n * @param {B} b - Updated object; output keys come from this object.\n * @returns {DeepPartial<B>} Deep partial of `b` containing only differences vs `a`.\n */\nexport const deepDiff = <A extends object, B extends object>(a: A, b: B): DeepPartial<B> => {\n const out: Record<string, unknown> = {};\n\n for (const key of Object.keys(b) as Array<keyof B>) {\n const aVal = (a as any)?.[key];\n const bVal = (b as any)[key];\n\n if (!((key as any) in (a as any))) {\n out[key as any] = bVal;\n continue;\n }\n\n if (isPlainRecord(aVal) && isPlainRecord(bVal)) {\n const nested = deepDiff(aVal, bVal);\n if (Object.keys(nested as any).length) out[key as any] = nested;\n continue;\n }\n\n if (!isEqual(aVal, bVal)) out[key as any] = bVal;\n }\n\n return out as DeepPartial<B>;\n};\n\n/**\n * Deeply prunes `source` to match the *shape* of `shape`.\n *\n * Rules:\n * - Only keys that exist on `shape` are kept.\n * - Pruning is deep for nested plain objects.\n * - Arrays are supported by using the first element of `shape` as the element-shape.\n * - If `shape` is `[]`, returns `[]` (drops all elements).\n * - Primitive values are kept as-is (no type coercion) if the key exists in `shape`.\n * - If `shape` expects an object/array but `source` is not compatible, returns an empty object/array of that shape.\n *\n * @typeParam S - Source object type.\n * @typeParam Sh - Shape object type.\n * @param source - The object to prune.\n * @param shape - The object whose keys/structure are the allowlist.\n * @returns A new value derived from `source`, containing only fields present in `shape`, pruned deeply.\n *\n * @example\n * const source = { a: 1, b: { c: 2, d: 3 }, e: [ { x: 1, y: 2 }, { x: 3, y: 4 } ], z: 9 };\n * const shape = { a: 0, b: { c: 0 }, e: [ { x: 0 } ] };\n * // => { a: 1, b: { c: 2 }, e: [ { x: 1 }, { x: 3 } ] }\n * const out = pruneToShape(source, shape);\n */\nexport function pruneToShape<S, Sh>(source: S, shape: Sh): Sh {\n return pruneAny(source as unknown, shape as unknown) as Sh;\n\n function pruneAny(src: unknown, sh: unknown): unknown {\n // Arrays: use first element as the \"element shape\"\n if (Array.isArray(sh)) {\n if (!Array.isArray(src)) return [];\n if (sh.length === 0) return [];\n const elemShape = sh[0];\n return src.map((v) => pruneAny(v, elemShape));\n }\n\n // Plain objects: keep only keys present on shape, recursively.\n if (isPlainObject(sh)) {\n const out: Record<string, unknown> = {};\n const srcObj = isPlainObject(src) ? (src as Record<string, unknown>) : undefined;\n\n for (const key of Object.keys(sh as Record<string, unknown>)) {\n const shVal = (sh as Record<string, unknown>)[key];\n const srcVal = srcObj ? srcObj[key] : undefined;\n\n if (Array.isArray(shVal) || isPlainObject(shVal)) {\n out[key] = pruneAny(srcVal, shVal);\n } else {\n // Primitive (or function/date/etc in shape): key exists => keep source value as-is\n out[key] = srcVal;\n }\n }\n return out;\n }\n\n // Non-object shape => allowed leaf; just return source leaf as-is.\n return src;\n }\n\n function isPlainObject(v: unknown): v is Record<string, unknown> {\n if (v === null || typeof v !== 'object') return false;\n const proto = Object.getPrototypeOf(v);\n return proto === Object.prototype || proto === null;\n }\n}\n"],"mappings":";;;;;;AA6EA,MAAa,cAAc;CAAC;CAAO;CAAQ;CAAO;CAAU;CAAS;CAAW;AAAM;;;ACvEtF,MAAM,cAAc;CAAC;CAAQ;CAAO;AAAO;AAC3C,MAAM,eAAe,CAAC,OAAO,QAAQ;AAErC,eAAe,YACb,MACA,QACA,OACA,QAEA,aACA,QACA,SACY;CACZ,IAAI,QACF,IAAI,OAAO,UAAU,MAAM,MAAM,WAAW,QAAQ,KAAK;MACpD,QAAO,QAAQ,KAAK;CAG3B,IAAI,MAAM,GAAG,SAAS,OAAO,SAAS,GAAG,IAAI,KAAK,MAAM;CAExD,IAAI,aAAa,SAAS,MAAa,GAAG;EACxC,MAAM,SAAS,IAAI,gBAAgB;EAEnC,KAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,SAAS,CAAC,CAAC,GACnD,IAAI,MAAM,QAAQ,KAAK,GACrB,MAAM,SAAS,SAAS,OAAO,OAAO,KAAK,OAAO,IAAI,CAAC,CAAC;OAExD,OAAO,OAAO,KAAK,OAAO,KAAK,CAAC;EAIpC,MAAM,cAAc,OAAO,SAAS;EACpC,IAAI,aAAa,OAAO,IAAI;CAC9B;CAEA,UAAU;EAAE,gBAAgB;EAAoB,GAAG;CAAQ;CAC3D,MAAM,WAAW,MAAM,MAAM,KAAK;EAChC;EACA;EAEA,MAAM,YAAY,SAAS,MAAa,IAAI,KAAK,UAAU,KAAK,IAAI,KAAA;EACpE,aAAa;CACf,CAAC;CACD,MAAM,cAAc,SAAS,QAAQ,IAAI,cAAc,KAAK;CAE5D,IAAI,YAAqC;CACzC,SAAS,OAAO,YAAY;EAC1B,IAAI,cAAc,OAChB,YAAY,SAAS,KAAK;EAG5B,IAAI,gBAAgB,uBAClB,OAAO,MAAM,MAAM,MAAM,SAAS;OAElC,OAAO,KAAK,MAAM,MAAM,SAAS;CAErC;CACA,OAAO;AACT;AA4BA,SAAgB,YAAY,UAA4C;CACtE,OAAO,GAAG,SAAS,OAAO,GAAG,SAAS;AACxC;;;;;AAMA,SAAgB,iBAA2C,QAAgB,KAAsC;CAC/G,OAAO,eAAe,WAAW,UAAU,OAAO,SAAS;EACzD,OAAO,YACL,SAAS,MACT,SAAS,QACT,OACA,SAAS,QACT,KACA,QACA,OACF;CACF;AACF;;;;;;;;;;;;;;;;;AC1DA,SAAgB,YACd,SACsB;CACtB,OAAO,OAAO,OAAU,YAAuD;EAC7E,MAAM,SAAS,MAAM,QAAQ,OAAO,OAAO;EAE3C,IAAI,OAAO,MAAM;GACf,MAAM,UAAU,IAAI,QAAQ,OAAO,OAAO;GAC1C,QAAQ,IAAI,gBAAgB,qBAAqB;GAEjD,OAAO;IAAE,GAAG;IAAQ,SAAS,OAAO,YAAY,OAAO;IAAG,MAAM,UAAU,OAAO,IAAI;GAAE;EACzF,OACE,OAAO;GAAE,GAAG;GAAQ,MAAM,KAAA;EAAU;CAExC;AACF;;;;;;;;;ACzDA,MAAa,mBAAqC;CAChD,QAAQ,MAAY,SAAgB;EAClC,MAAM,UAAU,KAAK,SAAS,QAAQ,cAAc;EACpD,IAAI,KAAK,KAAK,OAAO,KAAA,GAAW,KAAK,KAAK,KAAK,CAAC;EAEhD,KAAK,KAAK,GAAG,MAAM;CACrB;AACF;AAIA,SAAS,eAAe,SAAmE;CACzF,IAAI,QAAQ,SAAS,aAAa,QAAQ,QAAQ,WAAW,GAAG,KAAK,QAAQ,QAAQ,YAAY;EAC/F,MAAM,QACJ,QAAQ,SAAS,WAAW,KAAK,QAAQ,SAAS,EAAE,CAAC,SAAS,SAC1D,QAAQ,SAAS,EAAE,CAAC,QACnB,QAAQ,WAAW;EAE1B,OAAO,CAAC;GAAE,OAAO,SAAS,QAAQ,QAAQ,MAAM,CAAC,CAAC;GAAG,IAAI,QAAQ,WAAW;GAAc;EAAM,CAAC;CACnG,OAAO,IAAI,QAAQ,SAAS,OAE1B,OADe,SAAS,QAAQ,KACpB,CAAC,CAAC,QAAQ,cAAc;CAEtC,OAAO,CAAC;AACV;;;;AAKA,SAAgB,SAAS,KAAwB;CAE/C,MAAM,OAAO,QAAQ,CAAC,CACnB,IAAI,aAAa,EAAE,UAAU,KAAK,CAAC,CAAC,CACpC,MAAM,GAAG;CAGZ,SAAS,gBAAgB,MAA8B;EACrD,IAAI,KAAK,SAAS,aAAa,WAAW,KAAK,KAAK,OAAO,GACzD,OAAO,CAAC,IAAI;EAGd,IAAI,cAAc,QAAQ,MAAM,QAAQ,KAAK,QAAQ,GACnD,OAAO,KAAK,SAAS,QAAQ,eAAe;EAE9C,OAAO,CAAC;CACV;CAGA,OAAO,KAAK,SAAS,QAAQ,eAAe;AAC9C;;;AC3DA,SAAgB,SAAS,GAAgC;CACvD,OAAO,CAAC,CAAC,KAAK,OAAO,MAAM,YAAY,UAAU,KAAK,EAAE,YAAY;AACtE;AAEA,SAAgB,OAAO,QAAsC;CAK3D,IAAI,OAAY;CAChB,MAAM,uBAAO,IAAI,IAAS;CAC1B,OAAO,QAAQ,OAAO,SAAS,YAAY,CAAC,KAAK,IAAI,IAAI,KAAK,aAAa,QAAQ,SAAU,KAAa,OAAO,GAAG;EAClH,KAAK,IAAI,IAAI;EACb,OAAQ,KAAa;CACvB;CACA,OAAO;AACT;AAEA,SAAS,aAAa,GAAoB;CAExC,OAAO,UAAU,KAAK,CAAC;AACzB;AAUA,SAAgB,gBACd,MACA,MACA,OAA+B,CAAC,GACL;CAC3B,IAAI,CAAC,SAAS,IAAI,GAAG,OAAO,KAAA;CAC5B,IAAI,CAAC,MAAM,OAAO;CAElB,MAAM,OAAO,KAAK,MAAM,GAAG;CAC3B,IAAI,OAAkC;CAEtC,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;EACpC,IAAI,CAAC,MAAM,OAAO,KAAA;EAClB,OAAO,OAAO,IAAI;EAClB,MAAM,MAAM,KAAK;EAKjB,QAFc,KAAa,MAE3B;GACE,KAAK,UAAU;IAEb,MAAM,UAAW,KAAa;IAC9B,IAAI,CAAC,SAAS,OAAO,KAAA;IACrB,OAAO,QAAQ;IACf;GACF;GAEA,KAAK;IAGH,OADe,KAAa;IAE5B;GAGF,KAAK;IAEH,IAAI,CAAC,aAAa,GAAG,GAAG,OAAO,KAAA;IAE/B,OADc,KAAa;IAE3B;GAGF,KAAK,SAAS;IAEZ,IAAI,CAAC,aAAa,GAAG,GAAG,OAAO,KAAA;IAC/B,MAAM,MAAM,OAAO,GAAG;IACtB,MAAM,QAAS,KAAa;IAC5B,MAAM,OAAQ,KAAa;IAC3B,IAAI,CAAC,OAAO,OAAO,KAAA;IACnB,OAAO,MAAM,MAAM,SAAS,MAAM,OAAO;IACzC;GACF;GAEA,KAAK,SAAS;IAEZ,MAAM,UAAW,KAAa;IAC9B,IAAI,CAAC,SAAS,QAAQ,OAAO,KAAA;IAK7B,MAAM,UAAU,aAAa,GAAG;IAEhC,IAAI;IAEJ,IAAI,SACF,OACE,QAAQ,MAAM,MAAM;KAClB,MAAM,IAAI,OAAO,CAAC;KAClB,OAAO,GAAG,SAAS,WAAW,GAAG,SAAS;IAC5C,CAAC,KAAK,QAAQ,KAAK,gBAAgB;SAGrC,OACE,QAAQ,MAAM,MAAM;KAClB,MAAM,IAAI,OAAO,CAAC;KAClB,IAAI,GAAG,SAAS,UAAU;MACxB,MAAM,MAAM,EAAE;MACd,OAAO,CAAC,CAAC,OAAO,OAAO;KACzB;KACA,OAAO,GAAG,SAAS;IACrB,CAAC,KAAK,QAAQ,KAAK,gBAAgB;IAGvC,OAAO;IAEP;IACA;GACF;GAEA,KAAK,WAAW;IAEd,MAAM,UAAW,KAAa;IAC9B,IAAI,CAAC,SAAS,QAAQ,OAAO,KAAA;IAE7B,MAAM,UAAU,aAAa,GAAG;IAChC,IAAI;IACJ,IAAI,SACF,OACE,QAAQ,MAAM,MAAM;KAClB,MAAM,IAAI,OAAO,CAAC;KAClB,OAAO,GAAG,SAAS,WAAW,GAAG,SAAS;IAC5C,CAAC,KAAK,QAAQ,KAAK,gBAAgB;SAErC,OACE,QAAQ,MAAM,MAAM;KAClB,MAAM,IAAI,OAAO,CAAC;KAClB,IAAI,GAAG,SAAS,UAAU;MACxB,MAAM,MAAM,EAAE;MACd,OAAO,CAAC,CAAC,OAAO,OAAO;KACzB;KACA,OAAO,GAAG,SAAS;IACrB,CAAC,KAAK,QAAQ,KAAK,gBAAgB;IAEvC,OAAO;IACP;IACA;GACF;GAEA,SAGE;EAEJ;CACF;CAEA,OAAO,OAAO,OAAO,IAAI,IAAI,KAAA;AAC/B;;;;;;;;;;ACvJA,SAAgB,UAA4B,KAAQ,MAAc,OAAe;CAC/E,MAAM,OAAO,KAAK,MAAM,GAAG;CAC3B,IAAI,OAAY;CAEhB,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,SAAS,GAAG,KAAK;EACxC,MAAM,IAAI,KAAK;EACf,MAAM,OAAO,KAAK,IAAI;EAEtB,IAAI,OAAO,UAAU,OAAO,IAAI,CAAC,GAC/B,KAAK,OAAO,CAAC;OAEb,KAAK,OAAO,CAAC;EAEf,OAAO,KAAK;CACd;CAEA,KAAK,KAAK,KAAK,SAAS,MAAM;CAC9B,OAAO;AACT;;;;;;;AAQA,SAAgB,UAA4B,KAAQ,MAAmB;CACrE,IAAI,CAAC,OAAO,OAAO,QAAQ,UAAU,OAAO,KAAA;CAC5C,MAAM,OAAO,KAAK,MAAM,GAAG;CAC3B,IAAI,OAAY;CAEhB,KAAK,MAAM,KAAK,MAAM;EACpB,IAAI,QAAQ,MAAM,OAAO,KAAA;EACzB,OAAO,KAAK;CACd;CAEA,OAAO;AACT;AAEA,MAAM,iBAAiB,MAA6C,SAAS,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;AAsBnG,MAAa,YAAgD,GAAM,MAAyB;CAC1F,MAAM,MAA+B,CAAC;CAEtC,KAAK,MAAM,OAAO,OAAO,KAAK,CAAC,GAAqB;EAClD,MAAM,OAAQ,IAAY;EAC1B,MAAM,OAAQ,EAAU;EAExB,IAAI,EAAG,OAAgB,IAAY;GACjC,IAAI,OAAc;GAClB;EACF;EAEA,IAAI,cAAc,IAAI,KAAK,cAAc,IAAI,GAAG;GAC9C,MAAM,SAAS,SAAS,MAAM,IAAI;GAClC,IAAI,OAAO,KAAK,MAAa,CAAC,CAAC,QAAQ,IAAI,OAAc;GACzD;EACF;EAEA,IAAI,CAAC,QAAQ,MAAM,IAAI,GAAG,IAAI,OAAc;CAC9C;CAEA,OAAO;AACT;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,SAAgB,aAAoB,QAAW,OAAe;CAC5D,OAAO,SAAS,QAAmB,KAAgB;CAEnD,SAAS,SAAS,KAAc,IAAsB;EAEpD,IAAI,MAAM,QAAQ,EAAE,GAAG;GACrB,IAAI,CAAC,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC;GACjC,IAAI,GAAG,WAAW,GAAG,OAAO,CAAC;GAC7B,MAAM,YAAY,GAAG;GACrB,OAAO,IAAI,KAAK,MAAM,SAAS,GAAG,SAAS,CAAC;EAC9C;EAGA,IAAI,cAAc,EAAE,GAAG;GACrB,MAAM,MAA+B,CAAC;GACtC,MAAM,SAAS,cAAc,GAAG,IAAK,MAAkC,KAAA;GAEvE,KAAK,MAAM,OAAO,OAAO,KAAK,EAA6B,GAAG;IAC5D,MAAM,QAAS,GAA+B;IAC9C,MAAM,SAAS,SAAS,OAAO,OAAO,KAAA;IAEtC,IAAI,MAAM,QAAQ,KAAK,KAAK,cAAc,KAAK,GAC7C,IAAI,OAAO,SAAS,QAAQ,KAAK;SAGjC,IAAI,OAAO;GAEf;GACA,OAAO;EACT;EAGA,OAAO;CACT;CAEA,SAAS,cAAc,GAA0C;EAC/D,IAAI,MAAM,QAAQ,OAAO,MAAM,UAAU,OAAO;EAChD,MAAM,QAAQ,OAAO,eAAe,CAAC;EACrC,OAAO,UAAU,OAAO,aAAa,UAAU;CACjD;AACF"}
|
package/dist/index.d.mts
CHANGED
|
@@ -121,11 +121,11 @@ type ApiErrorBody<E extends ApiEndpoints, P extends E['path'], M extends E['meth
|
|
|
121
121
|
*/
|
|
122
122
|
type ConvertToFetch<T> = T extends {
|
|
123
123
|
statusCode: number;
|
|
124
|
-
body
|
|
125
|
-
headers
|
|
124
|
+
body?: infer Body;
|
|
125
|
+
headers?: object;
|
|
126
126
|
} ? {
|
|
127
127
|
ok: T['statusCode'] extends SuccessCode ? true : false;
|
|
128
|
-
json: () => Promise<
|
|
128
|
+
json: () => Promise<Body>;
|
|
129
129
|
status: T['statusCode'];
|
|
130
130
|
} : T;
|
|
131
131
|
type CleanResponse = Omit<Response, 'status' | 'ok' | 'json'>;
|
|
@@ -135,8 +135,8 @@ type HTTPMethod = (typeof HTTPMethods)[number];
|
|
|
135
135
|
type ApiEndpoints = {
|
|
136
136
|
path: string;
|
|
137
137
|
method: HTTPMethod;
|
|
138
|
-
requestInput:
|
|
139
|
-
requestOutput:
|
|
138
|
+
requestInput: any;
|
|
139
|
+
requestOutput: any;
|
|
140
140
|
response: FetchResponse<() => Promise<{
|
|
141
141
|
headers: object;
|
|
142
142
|
statusCode: SuccessCode;
|
|
@@ -149,17 +149,31 @@ type ApiEndpoints = {
|
|
|
149
149
|
};
|
|
150
150
|
//#endregion
|
|
151
151
|
//#region src/lambda/client.d.ts
|
|
152
|
-
declare const HTTPMethods$1: readonly ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS', 'HEAD'];
|
|
153
|
-
type HTTPMethod$1 = (typeof HTTPMethods$1)[number];
|
|
154
152
|
type ApiRequestFunction<API extends ApiEndpoints> = <Path extends API['path'], Method extends Extract<API, {
|
|
155
153
|
path: Path;
|
|
156
|
-
}>['method']>(
|
|
154
|
+
}>['method']>(endpoint: ApiEndpointContract<API, Path, Method>, input: ApiInput<API, Path, Method>, headers?: HeadersInit) => Promise<ApiResponse<API, Path, Method>>;
|
|
157
155
|
type ApiSchema = GenericSchema | GenericSchemaAsync;
|
|
156
|
+
type ApiEndpointContract<API extends ApiEndpoints, Path extends API['path'], Method extends Extract<API, {
|
|
157
|
+
path: Path;
|
|
158
|
+
}>['method']> = {
|
|
159
|
+
path: Path;
|
|
160
|
+
method: Method;
|
|
161
|
+
schema: ApiSchema;
|
|
162
|
+
};
|
|
163
|
+
type AnyApiEndpointContract<API extends ApiEndpoints> = { [Path in API['path']]: { [Method in Extract<API, {
|
|
164
|
+
path: Path;
|
|
165
|
+
}>['method']]: ApiEndpointContract<API, Path, Method> }[Extract<API, {
|
|
166
|
+
path: Path;
|
|
167
|
+
}>['method']] }[API['path']];
|
|
168
|
+
declare function endpointKey(endpoint: {
|
|
169
|
+
path: string;
|
|
170
|
+
method: string;
|
|
171
|
+
}): string;
|
|
158
172
|
/**
|
|
159
173
|
* @returns A function that can be used to make API requests with type safety
|
|
160
174
|
* @example const clientApiRequest = createApiRequest<ApiEndpoints>();
|
|
161
175
|
*/
|
|
162
|
-
declare function createApiRequest<API extends ApiEndpoints>(
|
|
176
|
+
declare function createApiRequest<API extends ApiEndpoints>(apiUrl: string, env: string): ApiRequestFunction<API>;
|
|
163
177
|
//#endregion
|
|
164
178
|
//#region src/lambda/errors.d.ts
|
|
165
179
|
/**
|
|
@@ -1077,5 +1091,5 @@ declare function getErrorName(error: unknown): string | undefined;
|
|
|
1077
1091
|
//#region src/types/safe.d.ts
|
|
1078
1092
|
type SafeOmit<T, K extends keyof any> = T extends any ? Omit<T, K> : never;
|
|
1079
1093
|
//#endregion
|
|
1080
|
-
export { APIGatewayHandler, ApiEndpoints, ApiErrorBody, ApiInput, ApiOutput, ApiRequestFunction, ApiResponse, ApiSchema, ApiSuccessBody, CleanResponse, DeepOverride, DeepPartial, DeepReadonly, DeepRequired, ErrorBody, ErrorCode, ErrorRawProxyResultV2, FetchResponse, GetSchemaByPathOptions, HTTPMethod, HTTPMethods, LambdaErrorResponse, OkRawProxyResultV2, RawApiGatewayHandler, RawProxyResultV2, SafeOmit, SuccessCode, Toc, TocEntry, changePassword, colorText, computeSecretHash, confirmForgotPassword, confirmSignup, createApiRequest, deepDiff, ensureDotRelative, error_cognito, error_dynamo, error_lambda_badRequest, error_lambda_conflict, error_lambda_forbidden, error_lambda_fromCognito, error_lambda_fromDynamo, error_lambda_fromS3, error_lambda_fromSes, error_lambda_internal, error_lambda_notFound, error_lambda_unauthorized, error_s3, error_ses, exists, extractAttributes, extractToc, forgotPassword, getByPath, getCognitoClient, getCookies, getErrorName, getObject, getObjectString, getS3, getSchemaByPath, getSignedUrl, getUserDetails, getUserGroups, isRecord, isSchema, is_s3_notFound, login, logout, objectExists, parseRaw, pruneToShape, readPackageJson, refreshOAuthToken, refreshTokens, refreshTokensAuth, resetPassword, response_error, response_ok, response_valibotError, setByPath, signUp, type_error_cognito, type_error_dynamo, type_error_lambda, type_error_lambda_badRequest, type_error_lambda_conflict, type_error_lambda_forbidden, type_error_lambda_fromCognito_options, type_error_lambda_fromCognito_reason, type_error_lambda_fromDynamo_options, type_error_lambda_fromDynamo_reason, type_error_lambda_fromS3_options, type_error_lambda_fromS3_reason, type_error_lambda_fromSes_options, type_error_lambda_fromSes_reason, type_error_lambda_internal, type_error_lambda_notFound, type_error_lambda_unauthorized, type_error_response, type_error_s3, type_error_ses, type_userResponse, unwrap, verifyOAuthToken, wrapHandler, writeIfDifferent };
|
|
1094
|
+
export { APIGatewayHandler, AnyApiEndpointContract, ApiEndpointContract, ApiEndpoints, ApiErrorBody, ApiInput, ApiOutput, ApiRequestFunction, ApiResponse, ApiSchema, ApiSuccessBody, CleanResponse, DeepOverride, DeepPartial, DeepReadonly, DeepRequired, ErrorBody, ErrorCode, ErrorRawProxyResultV2, FetchResponse, GetSchemaByPathOptions, HTTPMethod, HTTPMethods, LambdaErrorResponse, OkRawProxyResultV2, RawApiGatewayHandler, RawProxyResultV2, SafeOmit, SuccessCode, Toc, TocEntry, changePassword, colorText, computeSecretHash, confirmForgotPassword, confirmSignup, createApiRequest, deepDiff, endpointKey, ensureDotRelative, error_cognito, error_dynamo, error_lambda_badRequest, error_lambda_conflict, error_lambda_forbidden, error_lambda_fromCognito, error_lambda_fromDynamo, error_lambda_fromS3, error_lambda_fromSes, error_lambda_internal, error_lambda_notFound, error_lambda_unauthorized, error_s3, error_ses, exists, extractAttributes, extractToc, forgotPassword, getByPath, getCognitoClient, getCookies, getErrorName, getObject, getObjectString, getS3, getSchemaByPath, getSignedUrl, getUserDetails, getUserGroups, isRecord, isSchema, is_s3_notFound, login, logout, objectExists, parseRaw, pruneToShape, readPackageJson, refreshOAuthToken, refreshTokens, refreshTokensAuth, resetPassword, response_error, response_ok, response_valibotError, setByPath, signUp, type_error_cognito, type_error_dynamo, type_error_lambda, type_error_lambda_badRequest, type_error_lambda_conflict, type_error_lambda_forbidden, type_error_lambda_fromCognito_options, type_error_lambda_fromCognito_reason, type_error_lambda_fromDynamo_options, type_error_lambda_fromDynamo_reason, type_error_lambda_fromS3_options, type_error_lambda_fromS3_reason, type_error_lambda_fromSes_options, type_error_lambda_fromSes_reason, type_error_lambda_internal, type_error_lambda_notFound, type_error_lambda_unauthorized, type_error_response, type_error_s3, type_error_ses, type_userResponse, unwrap, verifyOAuthToken, wrapHandler, writeIfDifferent };
|
|
1081
1095
|
//# sourceMappingURL=index.d.mts.map
|
package/dist/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":["line","column","offset","start","Point","end","Node","value","type","data","Data","position","Position","children","UnistData","PropertyName","Array","ElementContentMap","comment","Comment","element","Element","text","Text","RootContentMap","doctype","Doctype","RootContent","Extract","Nodes","UnistLiteral","Root","UnistParent","UnistNode","data","Data","Node","value","children","Literal","type","CommentData","DoctypeData","Parent","tagName","properties","Properties","ElementContent","content","ElementData","RootData","TextData"],"sources":["../src/lambda/handlerUtils.ts","../src/lambda/client-types.ts","../src/lambda/client.ts","../src/lambda/errors.ts","../src/lambda/response.ts","../src/lambda/server/authentication.ts","../src/cognito/client.ts","../src/cognito/errors.ts","../src/cognito/user.ts","../src/cognito/password.ts","../src/s3/client.ts","../src/s3/errors.ts","../src/s3/signedUrl.ts","../src/s3/object.ts","../src/dynamo/errors.ts","../src/ses/errors.ts","../node_modules/.pnpm/@types+unist@3.0.3/node_modules/@types/unist/index.d.ts","../node_modules/.pnpm/@types+hast@3.0.4/node_modules/@types/hast/index.d.ts","../src/rehype/flat-toc.ts","../src/utils/valibot.ts","../src/types/deep.ts","../src/utils/object.ts","../src/utils/fs.ts","../src/utils/cli.ts","../src/utils/errors.ts","../src/types/safe.ts"],"x_google_ignoreList":[16,17],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":["line","column","offset","start","Point","end","Node","value","type","data","Data","position","Position","children","UnistData","PropertyName","Array","ElementContentMap","comment","Comment","element","Element","text","Text","RootContentMap","doctype","Doctype","RootContent","Extract","Nodes","UnistLiteral","Root","UnistParent","UnistNode","data","Data","Node","value","children","Literal","type","CommentData","DoctypeData","Parent","tagName","properties","Properties","ElementContent","content","ElementData","RootData","TextData"],"sources":["../src/lambda/handlerUtils.ts","../src/lambda/client-types.ts","../src/lambda/client.ts","../src/lambda/errors.ts","../src/lambda/response.ts","../src/lambda/server/authentication.ts","../src/cognito/client.ts","../src/cognito/errors.ts","../src/cognito/user.ts","../src/cognito/password.ts","../src/s3/client.ts","../src/s3/errors.ts","../src/s3/signedUrl.ts","../src/s3/object.ts","../src/dynamo/errors.ts","../src/ses/errors.ts","../node_modules/.pnpm/@types+unist@3.0.3/node_modules/@types/unist/index.d.ts","../node_modules/.pnpm/@types+hast@3.0.4/node_modules/@types/hast/index.d.ts","../src/rehype/flat-toc.ts","../src/utils/valibot.ts","../src/types/deep.ts","../src/utils/object.ts","../src/utils/fs.ts","../src/utils/cli.ts","../src/utils/errors.ts","../src/types/safe.ts"],"x_google_ignoreList":[16,17],"mappings":";;;;;;;;;;;KAGY,WAAA;AAAA,KACA,SAAA;AAAA,KAEA,SAAA;EAAc,OAAA;EAAiB,KAAA;IAAU,IAAA;IAAc,KAAA;EAAA;AAAA;;AAHnE;;KAQY,qBAAA;EACV,UAAA,EAAY,SAAA;EACZ,OAAA;IAAA,CAAa,MAAA;EAAA;EACb,IAAA,GAAO,SAAS;EAChB,eAAA;EACA,OAAA;AAAA;AAAA,KAGU,kBAAA;EACV,UAAA,EAAY,WAAW;EACvB,OAAA;IAAA,CAAa,MAAA;EAAA;EACb,IAAA;EACA,eAAA;EACA,OAAA;AAAA;AAbF;;;AAAA,KAkBY,gBAAA,GAAmB,qBAAA,GAAwB,kBAAkB;AAAA,KAG7D,iBAAA,OAAwB,KAAA,EAAO,CAAA,EAAG,OAAA,EAAS,OAAA,KAAY,OAAA,CAAQ,uBAAA;AAAA,KAG/D,oBAAA,WAA+B,0CAAA,UACzC,KAAA,EAAO,CAAA,EACP,OAAA,EAAS,OAAA,KACN,OAAA,CAAQ,gBAAA;;;;;;;;AAtBJ;AAGT;;;;;;iBAmCgB,WAAA,WAAsB,0CAAA,OACpC,OAAA,EAAS,oBAAA,CAAqB,CAAA,IAC7B,iBAAA,CAAkB,CAAA;;;;;;;;;KC7CT,QAAA,WAAmB,YAAA,YAAwB,CAAA,oBAAqB,CAAA,cAAe,OAAA,CACzF,CAAA;EACE,IAAA,EAAM,CAAA;EAAG,MAAA,EAAQ,CAAA;AAAA;ADVrB;;;;AAAuB;AACvB;AADA,KCmBY,SAAA,WAAoB,YAAA,YAAwB,CAAA,oBAAqB,CAAA,cAAe,OAAA,CAC1F,CAAA;EACE,IAAA,EAAM,CAAA;EAAG,MAAA,EAAQ,CAAA;AAAA;ADlBrB;;;;;;AAAA,KC2BY,WAAA,WAAsB,YAAA,YAAwB,CAAA,oBAAqB,CAAA,cAAe,OAAA,CAC5F,CAAA;EACE,IAAA,EAAM,CAAA;EAAG,MAAA,EAAQ,CAAA;AAAA;ADxBrB;;;;;;AAAA,KCiCY,cAAA,WAAyB,YAAA,YAAwB,CAAA,oBAAqB,CAAA,cAAe,OAAA,CAC/F,OAAA,CAAQ,CAAA;EAAK,IAAA,EAAM,CAAA;EAAG,MAAA,EAAQ,CAAA;AAAA;EAC5B,MAAA,EAAQ,WAAA;AAAA,0BACY,OAAA,aACpB,CAAA;;ADhCK;AAGT;;;;KCsCY,YAAA,WAAuB,YAAA,YAAwB,CAAA,oBAAqB,CAAA,cAAe,OAAA,CAC7F,OAAA,CAAQ,CAAA;EAAK,IAAA,EAAM,CAAA;EAAG,MAAA,EAAQ,CAAA;AAAA;EAC5B,MAAA,EAAQ,SAAA;AAAA,0BACY,OAAA,aACpB,CAAA;;;ADrCK;KC2CJ,cAAA,MAAoB,CAAA;EAAY,UAAA;EAAoB,IAAA;EAAmB,OAAA;AAAA;EACtE,EAAA,EAAI,CAAA,uBAAwB,WAAA;EAA4B,IAAA,QAAY,OAAA,CAAQ,IAAA;EAAO,MAAA,EAAQ,CAAA;AAAA,IAC7F,CAAA;AAAA,KAEQ,aAAA,GAAgB,IAAI,CAAC,QAAA;AAAA,KACrB,aAAA,eAA4B,IAAA,iBAAqB,cAAA,CAAe,OAAA,CAAQ,UAAA,CAAW,CAAA,MAAO,aAAA;AAAA,cAKzF,WAAA;AAAA,KACD,UAAA,WAAqB,WAAW;AAAA,KAEhC,YAAA;EACV,IAAA;EACA,MAAA,EAAQ,UAAA;EACR,YAAA;EACA,aAAA;EACA,QAAA,EAAU,aAAA,OAEF,OAAA;IACA,OAAA;IAAiB,UAAA,EAAY,WAAA;IAAa,IAAA;EAAA;IAC1C,OAAA;IAAiB,UAAA,EAAY,SAAA;IAAW,IAAA,EAAM,SAAA;EAAA;AAAA;;;KCpB5C,kBAAA,aAA+B,YAAA,kBAC5B,GAAA,yBACE,OAAA,CAAQ,GAAA;EAAO,IAAA,EAAM,IAAA;AAAA,cAEpC,QAAA,EAAU,mBAAA,CAAoB,GAAA,EAAK,IAAA,EAAM,MAAA,GACzC,KAAA,EAAO,QAAA,CAAS,GAAA,EAAK,IAAA,EAAM,MAAA,GAC3B,OAAA,GAAU,WAAA,KACP,OAAA,CAAQ,WAAA,CAAY,GAAA,EAAK,IAAA,EAAM,MAAA;AAAA,KAExB,SAAA,GAAY,aAAA,GAAgB,kBAAkB;AAAA,KAE9C,mBAAA,aACE,YAAA,eACC,GAAA,yBACE,OAAA,CAAQ,GAAA;EAAO,IAAA,EAAM,IAAA;AAAA;EAChC,IAAA,EAAM,IAAA;EAAM,MAAA,EAAQ,MAAA;EAAQ,MAAA,EAAQ,SAAA;AAAA;AAAA,KAE9B,sBAAA,aAAmC,YAAA,eACpC,GAAA,wBACI,OAAA,CAAQ,GAAA;EAAO,IAAA,EAAM,IAAA;AAAA,eAAoB,mBAAA,CAAoB,GAAA,EAAK,IAAA,EAAM,MAAA,IACnF,OAAA,CAAQ,GAAA;EAAO,IAAA,EAAM,IAAA;AAAA,gBACvB,GAAA;AAAA,iBAEc,WAAA,CAAY,QAAA;EAAY,IAAA;EAAc,MAAA;AAAA;;;;;iBAQtC,gBAAA,aAA6B,YAAA,EAAc,MAAA,UAAgB,GAAA,WAAc,kBAAA,CAAmB,GAAA;;;;;;;;;;;iBC3F5F,uBAAA,CACd,OAAA,UACA,SAAA,WACA,UAAA,YACC,4BAA4B;AAAA,iBAIf,yBAAA,CAA0B,OAAA,WAAkB,8BAA8B;AAAA,iBAI1E,sBAAA,CAAuB,OAAA,WAAkB,2BAA2B;AAAA,iBAIpE,qBAAA,CACd,OAAA,UACA,SAAA,WACA,UAAA,YACC,0BAA0B;AAAA,iBAIb,qBAAA,CACd,OAAA,UACA,SAAA,WACA,UAAA,YACC,0BAA0B;AAAA,iBAIb,qBAAA,CAAsB,OAAA,WAAkB,0BAA0B;AAAA,KAMtE,4BAAA;EACV,IAAA;EACA,OAAA;EACA,SAAA;EACA,UAAA;AAAA;AAAA,KAEU,8BAAA;EAAmC,IAAA;EAAsB,OAAO;AAAA;AAAA,KAChE,2BAAA;EAAgC,IAAA;EAAmB,OAAO;AAAA;AAAA,KAC1D,0BAAA;EAA+B,IAAA;EAAkB,OAAA;EAAiB,SAAA;EAAoB,UAAA;AAAA;AAAA,KACtF,0BAAA;EAA+B,IAAA;EAAkB,OAAA;EAAiB,SAAA;EAAoB,UAAA;AAAA;AAAA,KACtF,0BAAA;EAA+B,IAAA;EAAkB,OAAO;AAAA;AAAA,KAExD,iBAAA,GACR,4BAAA,GACA,8BAAA,GACA,2BAAA,GACA,0BAAA,GACA,0BAAA,GACA,0BAAA;;;iBC5DK,KAAA,CAAM,GAAA;EAAO,SAAA;EAAoB,UAAA;AAAA;;;;IAGzB,IAAA;IAAqB,KAAA;EAAA;AAAA;AAAA,KAG1B,mBAAA,GAAsB,IAAA,CAAK,qBAAA;EACrC,OAAA,EAAS,WAAA,CAAY,qBAAA;EACrB,IAAA,EAAM,WAAA,CAAY,qBAAA;AAAA;AAAA,KAGR,mBAAA;EAEN,OAAA,EAAS,MAAA;EACT,UAAA;EACA,IAAA;IAAQ,OAAA;IAAiB,IAAA,EAAM,IAAA;EAAA,IAAS,UAAA,QAAkB,KAAA,IAAS,MAAA;AAAA;EAEnE,OAAA,EAAS,MAAA;EAAwB,UAAA;EAAiB,IAAA;IAAQ,OAAA;IAAiB,IAAA,EAAM,IAAA;EAAA,IAAS,MAAA;AAAA;EAC1F,OAAA,EAAS,MAAA;EAAwB,UAAA;EAAiB,IAAA;IAAQ,OAAA;IAAiB,IAAA,EAAM,IAAA;EAAA,IAAS,MAAA;AAAA;EAE1F,OAAA,EAAS,MAAA;EACT,UAAA;EACA,IAAA;IAAQ,OAAA;IAAiB,IAAA,EAAM,IAAA;EAAA,IAAS,UAAA,QAAkB,KAAA,IAAS,MAAA;AAAA;EAGnE,OAAA,EAAS,MAAA;EACT,UAAA;EACA,IAAA;IAAQ,OAAA;IAAiB,IAAA,EAAM,IAAA;EAAA,IAAS,UAAA,QAAkB,KAAA,IAAS,MAAA;AAAA;EAEnE,OAAA,EAAS,MAAA;EAAwB,UAAA;EAAiB,IAAA;IAAQ,OAAA;IAAiB,IAAA,EAAM,IAAA;EAAA,IAAS,MAAA;AAAA;;AJLvB;AAGzE;;;;;;iBIYgB,cAAA,uDACd,CAAA,EAAG,iBAAA,EACH,OAAA,EAAS,MAAA,kBACT,IAAA,GAAM,IAAA,EACN,MAAA,GAAQ,MAAA,GACP,mBAAA,CAAoB,IAAA,EAAM,MAAA;;;;;;iBA2Bb,qBAAA,CAAsB,GAAA,EAAK,OAAA,CAAQ,eAAA;EAAwB,OAAA;AAAA,IAAmB,OAAA,QAAY,mBAAA;AAAA,iBAU1F,WAAA;EAA2B,OAAA;AAAA,GACzC,IAAA,EAAM,IAAA,EACN,OAAA,OACA,OAAA;;;;QAFM,IAAA;AAAA;;;;;;iBCvDQ,UAAA,CACd,KAAA,EAAO,0CAAA,QAAkD,kCAAA,GAAkC,MAAA,qBAAA,OAAA,EAAA,8BAAA;;;;;;iBC5B7E,gBAAA,IAAgB,6BAAA;;;;KCMpB,kBAAA;EAAuB,IAAA;EAAiB,KAAK;AAAA;;KAG7C,oCAAA;;KAkBP,sCAAA;EAA2C,OAAA;AAAA,IAAqB,OAAO,CAAC,iBAAA;;KAGjE,qCAAA,GAAwC,OAAA,CAClD,MAAA,CAAO,oCAAA,EAAsC,sCAAA;;iBAsB/B,aAAA,CAAc,KAAA,YAAiB,kBAAkB;APtDjE;AAAA,iBO2DgB,wBAAA,CACd,CAAA,EAAG,kBAAA,EACH,OAAA,GAAS,qCAAA,GACR,iBAAA;;;KC3DS,iBAAA,GAAoB,IAAA,CAAK,yBAAA;EACnC,cAAA,EAAgB,MAAA;AAAA;;;;iBA+BF,cAAA,CAAe,CAAA;EAAK,QAAA;EAAkB,UAAA;AAAA,IAAoB,WAAA,CAAA,iBAAA,EAAA,kBAAA;;;;iBAO1D,iBAAA,CAAkB,KAAA,EAAO,aAAA,iBAA2B,MAAA;AR1CpE;;;AAAA,iBQyDgB,aAAA,CAAc,CAAA;EAAK,QAAA;EAAkB,UAAA;AAAA,IAAoB,WAAA,qDAAA,mCAAA,EAA5C,kBAAA;;;;;;;;;;;;cC8GhB,aAAA,GAAa,CAAA;;;;;;uBAOD,MAAA;AAAA,2GAAM,kBAAA;;;AT9KV;AAErB;;;;iBSwSgB,iBAAA,CAAkB,QAAA,UAAkB,QAAA,UAAkB,YAAA;;;;;ATxSE;AAKxE;;iBSmTgB,cAAA,CAAe,WAAA,UAAqB,WAAA,UAAqB,WAAA,WAAmB,WAAA,qDAAA,2BAAA,EAA9D,kBAAA;;;;;;;;;;iBAed,qBAAA,CAAsB,CAAA;EACpC,QAAA;EACA,gBAAA;EACA,WAAA;EACA,QAAA;EACA,YAAA;AAAA,IACD,WAAA,qDAAA,kCAAA,EANoC,kBAAA;;;;;;;;ATrT5B;iBSyUO,aAAA,CAAc,CAAA;EAC5B,QAAA;EACA,gBAAA;EACA,QAAA;EACA,YAAA;AAAA,IACD,WAAA,qDAAA,0BAAA,EAL4B,kBAAA;;;;;;;;iBAkBb,cAAA,CAAe,CAAA;EAAK,QAAA;EAAkB,QAAA;EAAkB,YAAA;AAAA,IAAsB,WAAA,qDAAA,2BAAA,EAAhE,kBAAA;;;;;ATnVoE;AAGlG;;;;iBS+VgB,KAAA,CAAM,CAAA;EACpB,QAAA;EACA,QAAA;EACA,QAAA;EACA,YAAA;EACA,UAAA;AAAA,IACD,WAAA,qDAAA,8BAAA,EANoB,kBAAA;;;;iBAeL,aAAA,CAAc,CAAA;EAC5B,YAAA;EACA,QAAA;EACA,YAAA;EACA,SAAA;EACA,cAAA,GAAiB,MAAA;AAAA,IAClB,WAAA,qDAAA,sCAAA,EADwB,kBAAA;;;;;;;;;;iBAcT,iBAAA,CAAkB,CAAA;EAChC,QAAA;EACA,YAAA;EACA,QAAA;EACA,YAAA;EACA,UAAA;AAAA,IACD,WAAA,qDAAA,8BAAA,EANgC,kBAAA;;AT5WX;;;;iBS4XN,MAAA,CAAO,WAAA,WAAmB,WAAA,qDAAA,0BAAA,EAApB,kBAAA;;;;;;;;;;iBAcN,MAAA,CACd,CAAA;EAAK,QAAA;EAAkB,QAAA;EAAkB,QAAA;EAAkB,YAAA;AAAA,IAAyB,MAAA,oBAAuB,WAAA,qDAAA,mBAAA,EAAjB,kBAAA;;;;;;;;;;ARtbtE;AAStB;iBQ8bgB,gBAAA,CAAiB,CAAA;EAC/B,IAAA;EACA,WAAA;EACA,QAAA;EACA,YAAA;EACA,aAAA;AAAA,IACD,WAAA;;;;;;GAN+B,kBAAA;;;;;;;;;;;iBAoBhB,iBAAA,CAAkB,CAAA;EAChC,QAAA;EACA,YAAA;EACA,aAAA;EACA,YAAA;AAAA,IACD,WAAA;;;;;;GALgC,kBAAA;;;;;;iBCnejB,KAAA,CAAM,IAAA,GAAO,cAAA,GAAc,QAAA;;;;KCQ/B,aAAA;EAAkB,IAAA;EAAY,KAAK;AAAA;;KAGnC,+BAAA;;KAUP,iCAAA;EAAsC,OAAA;AAAA,IAAqB,OAAO,CAAC,iBAAA;;KAG5D,gCAAA,GAAmC,OAAA,CAC7C,MAAA,CAAO,+BAAA,EAAiC,iCAAA;;iBAc1B,QAAA,CAAS,KAAA,YAAiB,aAAa;AXxCvD;AAAA,iBW6CgB,mBAAA,CACd,CAAA,EAAG,aAAA,EACH,OAAA,GAAS,gCAAA,GACR,iBAAA;;iBAwBa,cAAA,CAAe,KAAc;;;cCvEhC,YAAA,qDAAY,eAAA,6CAAA,cAAA,2BAAA,cAAA,EAAA,MAAA,sDAAA,QAAA,MAAA,eAAA,0BAAA,cAAA,QAAA,OAAA,sDAAA,QAAA,CAAA,SAAA,EAAA,UAAA,OAAA,eAAA,0BAAA,cAAA,GAAA,OAAA,2BAAA,0BAAA,iBAAA,WAAA,SAAA,aAAA;;;;;;;;;cCYZ,SAAA,GAAS,KAAA,EAAA,qBAAA,EAAA,IAAA,GAAA,cAAA,iBAAA,WAAA,CAAA,MAAA,CAAA,eAAA,GAAA,aAAA;;;AbdtB;;;;cakCa,eAAA,GAAe,KAAA,EAAA,qBAAA,EAAA,IAAA,GAAA,cAAA,iBAAA,WAAA,SAAA,aAAA;AbjC5B;;;;AAAqB;AAErB;;AAFA,iBawEgB,YAAA,CAAa,UAAA,UAAoB,GAAA,WAAW,WAAA,UAAhC,aAAA;;;;KC9DhB,iBAAA;EAAsB,IAAA;EAAgB,KAAA,EAAO,oBAAoB;AAAA;;KAGjE,mCAAA;;KAUP,qCAAA;EAA0C,OAAA;AAAA,IAAqB,OAAO,CAAC,iBAAA;;KAGhE,oCAAA,GAAuC,OAAA,CACjD,MAAA,CAAO,mCAAA,EAAqC,qCAAA;Ed5BvB;AACvB;;;EciCE,kBAAA;AAAA;Ad/BF;AAAA,iBc6CgB,YAAA,CAAa,KAAA,YAAiB,iBAAiB;;iBAK/C,uBAAA,CACd,CAAA,EAAG,iBAAA,EACH,OAAA,GAAS,oCAAA,GACR,iBAAA;;;;KChDS,cAAA;EAAmB,IAAA;EAAa,KAAK;AAAA;;KAGrC,gCAAA;;KAYP,kCAAA;EAAuC,OAAA;AAAA,IAAqB,OAAO,CAAC,iBAAA;;KAG7D,iCAAA,GAAoC,OAAA,CAC9C,MAAA,CAAO,gCAAA,EAAkC,kCAAA;;iBAgB3B,SAAA,CAAU,KAAA,YAAiB,cAAc;Af1CzD;AAAA,iBe+CgB,oBAAA,CACd,CAAA,EAAG,cAAA,EACH,OAAA,GAAS,iCAAA,GACR,iBAAA;;;;;;;;;;;;;AfnDH;;;;AAAuB;AACvB;;;;AAAqB;UgBiBJ,MAAA;;;;UAKA,KAAA;EhBpBoC;;;EgBwBjDA,IAAAA;EhBnB6B;;;EgBwB7BC,MAAAA;EhBvBU;;;EgB2BVC,MAAAA;AAAAA;;;AhBvBK;AAGT;;UgB4BiB,QAAA;EhB3BQ;;;EgB+BrBC,KAAAA,EAAO,KAAA;EhB7BT;;;EgBkCEE,GAAAA,EAAK,KAAK;AAAA;;;;;;AhBxBoF;AAGlG;;;;UgBkDiB,MAAA;EhBhDN;;;EgBoDPG,IAAAA;EhBtD6B;;;EgB2D7BC,IAAAA,GAAO,MAAA;EhBzDT;;;;AAC2B;AAgB7B;EgBgDIE,QAAAA,GAAW,QAAQ;AAAA;;;;;;;;;;;AhBnGvB;;;;AAAuB;AACvB;;;;AAAqB;AAErB;UiBgBiB,IAAA,SAAa,MAAS;;;;UAKtB,UAAA;EAAA,CACZI,YAAAA,0DAAsE,KAAK;AAAA;AAAA;;;;;;;KAWpE,cAAA,GAAiB,iBAAA,OAAwB,iBAAiB;;;;AjBvB7D;AAGT;UiB2BiB,iBAAA;EACbG,OAAAA,EAAS,OAAA;EACTE,OAAAA,EAAS,OAAA;EACTE,IAAAA,EAAM,IAAA;AAAA;;;;;;AjBzBD;KiBkCG,WAAA,GAAc,cAAA,OAAqB,cAAc;;;AjB7BY;AAGzE;;;;;UiBoCiB,cAAA;EACbJ,OAAAA,EAAS,OAAA;EACTO,OAAAA,EAAS,OAAA;EACTL,OAAAA,EAAS,OAAA;EACTE,IAAAA,EAAM,IAAA;AAAA;AAAA;;;;;;;AjBhBY;;;;AC7CtB;;;UgBmHiB,IAAA,SAAa,MAAS;EhBnHgB;;;EgBuHnDY,IAAAA,GAAO,IAAA;AAAA;;;;;;;;UAUM,OAAA,SAAgB,IAAI;EhBjIsD;;;EgBqIvFG,KAAK;AAAA;;AhBnIa;AAStB;;;;;UgBoIiB,MAAA,SAAe,IAAI;EhBnIlC;;;EgBuIEC,QAAAA,EAAU,WAAA;AAAA;AAAA;;;;UAQG,OAAA,SAAgB,OAAO;EhBhJoD;;;EgBoJxFE,IAAAA;EhBlJS;;;EgBsJTN,IAAAA,GAAO,WAAA;AAAA;;;;UAMM,WAAA,SAAoB,IAAI;;;;UAKxB,OAAA,SAAgB,MAAS;EhBxJ2D;;;EgB4JjGM,IAAAA;EhB5JsD;;;EgBgKtDN,IAAAA,GAAO,WAAA;AAAA;;;;UAMM,WAAA,SAAoB,IAAI;AhB3JzC;;;AAAA,UgBgKiB,OAAA,SAAgB,MAAA;EhBhK4B;;;EgBoKzDM,IAAAA;EhBnK4B;;;EgBuK5BI,OAAAA;EhBrKoB;;;EgByKpBC,UAAAA,EAAY,UAAA;EhB5KqB;;;EgBgLjCP,QAAAA,EAAU,cAAA;EhBhLoE;;;;EgBqL9EU,OAAAA,GAAU,IAAA;EhBpLO;;;EgBwLjBd,IAAAA,GAAO,WAAA;AAAA;;;;UAMM,WAAA,SAAoB,IAAI;;;;;;;;UASxB,IAAA,SAAa,MAAA;EhB1L5B;;;EgB8LEM,IAAAA;EhB5L2B;;;EgBgM3BF,QAAAA,EAAU,WAAA;EhBnMmC;;;EgBuM7CJ,IAAAA,GAAO,QAAA;AAAA;;;;UAMM,QAAA,SAAiB,IAAI;;;;UAKrB,IAAA,SAAa,OAAO;EhB9MjC;;AAAC;EgBkNDM,IAAAA;EhB5Me;;;EgBgNfN,IAAAA,GAAO,QAAA;AAAA;;;;UAMM,QAAA,SAAiB,IAAI;;;;;;;;;cC7QzB,UAAA,EAAY,MAAM,KAAK,IAAA;AAAA,KAQxB,GAAA,GAAM,QAAQ;AAAA,KACd,QAAA;EAAa,KAAA;EAAe,EAAA;EAAY,KAAA;AAAA;AlBlB7B;AACvB;;AADuB,iBkBsCP,QAAA,CAAS,GAAA,WAAc,OAAO;;;iBCvC9B,QAAA,CAAS,CAAA,YAAa,CAAA,IAAK,aAAa;AAAA,iBAIxC,MAAA,CAAO,MAAA,EAAQ,aAAA,GAAgB,aAAa;AAAA,KAmBhD,sBAAA;;;;;EAKV,YAAY;AAAA;AAAA,iBAGE,eAAA,CACd,IAAA,EAAM,aAAA,GAAgB,kBAAA,EACtB,IAAA,UACA,IAAA,GAAM,sBAAA,GACL,aAAA;;;;;;;;;;;;;;KC1BS,YAAA,uBACE,CAAA,GAAI,CAAA,eAAgB,CAAA,GAC5B,CAAA,CAAE,CAAA,qBACA,EAAA,SAAW,MAAA,gBACT,CAAA,CAAE,CAAA,UAAW,MAAA,gBACX,YAAA,CAAa,CAAA,CAAE,CAAA,GAAI,EAAA,IACnB,EAAA,GACF,EAAA,SAAW,KAAA,aACT,CAAA,CAAE,CAAA,UAAW,KAAA,aACX,KAAA,CAAM,YAAA,CAAa,EAAA,EAAI,EAAA,KACvB,EAAA,GACF,EAAA,WAEN,CAAA,CAAE,CAAA;AAAA,KAIH,SAAA,oEAA6E,IAAA,GAAO,MAAA,GAAS,QAAA;AAAA,KAEtF,WAAA,MAAiB,CAAA,SAAU,SAAA,GACnC,CAAA,GACA,CAAA,yCACW,CAAA,KACT,CAAA,gCACgB,CAAA,IAAK,WAAA,CAAY,CAAA,CAAE,CAAA,OACjC,CAAA;AAAA,KAEI,YAAA,oBAEE,CAAA,KAAM,WAAA,CAAY,CAAA,CAAE,CAAA,oBAAqB,CAAA,CAAE,CAAA,UAAW,QAAA,GAAW,CAAA,CAAE,CAAA,IAAK,YAAA,CAAa,CAAA,CAAE,CAAA,MAAO,CAAA,CAAE,CAAA;ApBlC9G;;;AAAA,KoBwCY,YAAA,MAAkB,CAAA,cAAc,IAAA,iBACxC,CAAA,GACA,CAAA,yCACyB,CAAA,GAAI,YAAA,CAAa,CAAA,CAAE,CAAA,OAC1C,CAAA;;;;;;;;;;iBCvCU,SAAA,mBAA4B,GAAA,EAAK,CAAA,EAAG,IAAA,UAAc,KAAA,QAAa,CAAC;;;ArBRhF;;;;iBqBkCgB,SAAA,mBAA4B,GAAA,EAAK,CAAC,EAAE,IAAA;ArBjCpD;;;;AAAqB;AAErB;;;;;;;;;AAAwE;AAKxE;;;;;AAPA,cqBoEa,QAAA,uCAA8C,CAAA,EAAK,CAAA,EAAC,CAAA,EAAK,CAAA,KAAI,WAAA,CAAY,CAAA;;;;;;;;ArBxD7E;AAGT;;;;;;;;;;;;AAKS;AAKT;;iBqB0FgB,YAAA,QAAoB,MAAA,EAAQ,CAAA,EAAG,KAAA,EAAO,EAAA,GAAK,EAAA;;;;;;iBC9GrC,MAAA,CAAO,QAAA,WAAmB,OAAO;;;;;iBAajC,gBAAA,CAAiB,QAAA,UAAkB,OAAA,WAAkB,OAAO;;AtBnBlF;;iBsB+CsB,eAAA,CAAgB,QAAA,WAAmB,OAAO,CAAC,WAAA;;;cChDpD,SAAA,GAAS,MAAA,EAAY,UAAU,QAAQ,SAAA,MAAa,IAAA;AAAA,iBAGjD,iBAAA,CAAkB,QAAgB;;;iBCLlC,QAAA,CAAS,KAAA,YAAiB,KAAA,IAAS,MAAM;AAAA,iBAGzC,YAAA,CAAa,KAAc;;;KCH/B,QAAA,2BAAmC,CAAA,eAAgB,IAAA,CAAK,CAAA,EAAG,CAAA"}
|
package/dist/index.mjs
CHANGED
|
@@ -62,15 +62,16 @@ async function _apiRequest(path, method, input, schema, environment, apiUrl, hea
|
|
|
62
62
|
};
|
|
63
63
|
return response;
|
|
64
64
|
}
|
|
65
|
+
function endpointKey(endpoint) {
|
|
66
|
+
return `${endpoint.method} ${endpoint.path}`;
|
|
67
|
+
}
|
|
65
68
|
/**
|
|
66
69
|
* @returns A function that can be used to make API requests with type safety
|
|
67
70
|
* @example const clientApiRequest = createApiRequest<ApiEndpoints>();
|
|
68
71
|
*/
|
|
69
|
-
function createApiRequest(
|
|
70
|
-
return async function apiRequest(
|
|
71
|
-
|
|
72
|
-
if (schema === void 0) throw new Error("Schema is undefined in api request");
|
|
73
|
-
return _apiRequest(path, method, input, schema, env, apiUrl, headers);
|
|
72
|
+
function createApiRequest(apiUrl, env) {
|
|
73
|
+
return async function apiRequest(endpoint, input, headers) {
|
|
74
|
+
return _apiRequest(endpoint.path, endpoint.method, input, endpoint.schema, env, apiUrl, headers);
|
|
74
75
|
};
|
|
75
76
|
}
|
|
76
77
|
//#endregion
|
|
@@ -1672,6 +1673,6 @@ function ensureDotRelative(filePath) {
|
|
|
1672
1673
|
return `./${filePath}`;
|
|
1673
1674
|
}
|
|
1674
1675
|
//#endregion
|
|
1675
|
-
export { HTTPMethods, changePassword, colorText, computeSecretHash, confirmForgotPassword, confirmSignup, createApiRequest, deepDiff, ensureDotRelative, error_cognito, error_dynamo, error_lambda_badRequest, error_lambda_conflict, error_lambda_forbidden, error_lambda_fromCognito, error_lambda_fromDynamo, error_lambda_fromS3, error_lambda_fromSes, error_lambda_internal, error_lambda_notFound, error_lambda_unauthorized, error_s3, error_ses, exists, extractAttributes, extractToc, forgotPassword, getByPath, getCognitoClient, getCookies, getErrorName, getObject, getObjectString, getS3, getSchemaByPath, getSignedUrl, getUserDetails, getUserGroups, isRecord, isSchema, is_s3_notFound, login, logout, objectExists, parseRaw, pruneToShape, readPackageJson, refreshOAuthToken, refreshTokens, refreshTokensAuth, resetPassword, response_error, response_ok, response_valibotError, setByPath, signUp, unwrap, verifyOAuthToken, wrapHandler, writeIfDifferent };
|
|
1676
|
+
export { HTTPMethods, changePassword, colorText, computeSecretHash, confirmForgotPassword, confirmSignup, createApiRequest, deepDiff, endpointKey, ensureDotRelative, error_cognito, error_dynamo, error_lambda_badRequest, error_lambda_conflict, error_lambda_forbidden, error_lambda_fromCognito, error_lambda_fromDynamo, error_lambda_fromS3, error_lambda_fromSes, error_lambda_internal, error_lambda_notFound, error_lambda_unauthorized, error_s3, error_ses, exists, extractAttributes, extractToc, forgotPassword, getByPath, getCognitoClient, getCookies, getErrorName, getObject, getObjectString, getS3, getSchemaByPath, getSignedUrl, getUserDetails, getUserGroups, isRecord, isSchema, is_s3_notFound, login, logout, objectExists, parseRaw, pruneToShape, readPackageJson, refreshOAuthToken, refreshTokens, refreshTokensAuth, resetPassword, response_error, response_ok, response_valibotError, setByPath, signUp, unwrap, verifyOAuthToken, wrapHandler, writeIfDifferent };
|
|
1676
1677
|
|
|
1677
1678
|
//# sourceMappingURL=index.mjs.map
|