@storyblok/management-api-client 0.2.4 → 1.0.0-alpha.1
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/client.cjs +190 -0
- package/dist/client.cjs.map +1 -0
- package/dist/client.d.cts +624 -0
- package/dist/client.d.mts +624 -0
- package/dist/client.mjs +189 -0
- package/dist/client.mjs.map +1 -0
- package/dist/error.cjs.map +1 -1
- package/dist/error.d.cts +12 -2
- package/dist/error.d.mts +12 -2
- package/dist/error.mjs.map +1 -1
- package/dist/generated/asset_folders/types.gen.d.cts +5 -31
- package/dist/generated/asset_folders/types.gen.d.mts +5 -31
- package/dist/generated/assets/types.gen.d.cts +1 -73
- package/dist/generated/assets/types.gen.d.mts +1 -73
- package/dist/generated/component_folders/types.gen.d.cts +29 -45
- package/dist/generated/component_folders/types.gen.d.mts +29 -45
- package/dist/generated/components/types.gen.d.cts +636 -465
- package/dist/generated/components/types.gen.d.mts +636 -465
- package/dist/generated/datasource_entries/types.gen.d.cts +6 -32
- package/dist/generated/datasource_entries/types.gen.d.mts +6 -32
- package/dist/generated/datasources/types.gen.d.cts +18 -39
- package/dist/generated/datasources/types.gen.d.mts +18 -39
- package/dist/generated/internal_tags/types.gen.d.cts +28 -32
- package/dist/generated/internal_tags/types.gen.d.mts +28 -32
- package/dist/generated/presets/types.gen.d.cts +53 -58
- package/dist/generated/presets/types.gen.d.mts +53 -58
- package/dist/generated/spaces/types.gen.d.cts +1 -41
- package/dist/generated/spaces/types.gen.d.mts +1 -41
- package/dist/generated/stories/types.gen.d.cts +206 -198
- package/dist/generated/stories/types.gen.d.mts +206 -198
- package/dist/generated/users/types.gen.d.cts +13 -112
- package/dist/generated/users/types.gen.d.mts +13 -112
- package/dist/index.cjs +3 -178
- package/dist/index.d.cts +8 -425
- package/dist/index.d.mts +8 -425
- package/dist/index.mjs +2 -176
- package/dist/resources/asset-folders.cjs.map +1 -1
- package/dist/resources/asset-folders.mjs.map +1 -1
- package/dist/resources/assets.cjs +11 -2
- package/dist/resources/assets.cjs.map +1 -1
- package/dist/resources/assets.d.cts +3 -2
- package/dist/resources/assets.d.mts +3 -2
- package/dist/resources/assets.mjs +11 -2
- package/dist/resources/assets.mjs.map +1 -1
- package/dist/resources/component-folders.cjs.map +1 -1
- package/dist/resources/component-folders.mjs.map +1 -1
- package/dist/resources/components.cjs.map +1 -1
- package/dist/resources/components.mjs.map +1 -1
- package/dist/resources/datasource-entries.cjs.map +1 -1
- package/dist/resources/datasource-entries.mjs.map +1 -1
- package/dist/resources/datasources.cjs.map +1 -1
- package/dist/resources/datasources.mjs.map +1 -1
- package/dist/resources/internal-tags.cjs.map +1 -1
- package/dist/resources/internal-tags.mjs.map +1 -1
- package/dist/resources/presets.cjs.map +1 -1
- package/dist/resources/presets.mjs.map +1 -1
- package/dist/resources/spaces.cjs.map +1 -1
- package/dist/resources/spaces.mjs.map +1 -1
- package/dist/resources/stories.cjs.map +1 -1
- package/dist/resources/stories.d.cts +105 -0
- package/dist/resources/stories.d.mts +105 -0
- package/dist/resources/stories.mjs.map +1 -1
- package/dist/resources/users.cjs.map +1 -1
- package/dist/resources/users.mjs.map +1 -1
- package/package.json +13 -10
- package/test/GUIDE.md +59 -0
- package/test/setup.e2e.ts +11 -0
- package/test/specs/mapi-round-trip.spec.e2e.ts +520 -0
- package/vitest.config.e2e.ts +26 -0
- package/vitest.config.ts +3 -0
- package/dist/index.cjs.map +0 -1
- package/dist/index.mjs.map +0 -1
- package/dist/types.d.cts +0 -130
- package/dist/types.d.mts +0 -130
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset-folders.mjs","names":["assetFoldersApi.list","assetFoldersApi.get","assetFoldersApi.create","assetFoldersApi.update","assetFoldersApi.delete_"],"sources":["../../src/resources/asset-folders.ts"],"sourcesContent":["import * as assetFoldersApi from '../generated/asset_folders/sdk.gen';\nimport type {\n CreateData,\n CreateResponses,\n DeleteData,\n GetResponses,\n ListData,\n ListResponses,\n UpdateData,\n} from '../generated/asset_folders/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../
|
|
1
|
+
{"version":3,"file":"asset-folders.mjs","names":["assetFoldersApi.list","assetFoldersApi.get","assetFoldersApi.create","assetFoldersApi.update","assetFoldersApi.delete_"],"sources":["../../src/resources/asset-folders.ts"],"sourcesContent":["import * as assetFoldersApi from '../generated/asset_folders/sdk.gen';\nimport type {\n CreateData,\n CreateResponses,\n DeleteData,\n GetResponses,\n ListData,\n ListResponses,\n UpdateData,\n} from '../generated/asset_folders/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport function createAssetFoldersResource<DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n\n return {\n list<ThrowOnError extends boolean = DefaultThrowOnError>(options: { query?: ListData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponses[200], ThrowOnError>(() =>\n assetFoldersApi.list({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n get<ThrowOnError extends boolean = DefaultThrowOnError>(assetFolderId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponses[200], ThrowOnError>(() =>\n assetFoldersApi.get({ client, path: { space_id: resolvedSpaceId, asset_folder_id: assetFolderId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n create<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: CreateData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<CreateResponses[201], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<CreateResponses[201], ThrowOnError>(() =>\n assetFoldersApi.create({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n update<ThrowOnError extends boolean = DefaultThrowOnError>(\n assetFolderId: number | string,\n options: { body: UpdateData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<void, ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<void, ThrowOnError>(() =>\n assetFoldersApi.update({ client, path: { space_id: resolvedSpaceId, asset_folder_id: assetFolderId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n delete<ThrowOnError extends boolean = DefaultThrowOnError>(\n assetFolderId: number | string,\n options: { query?: DeleteData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<void, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<void, ThrowOnError>(() =>\n assetFoldersApi.delete_({ client, path: { space_id: resolvedSpaceId, asset_folder_id: assetFolderId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":";;;;AAaA,SAAgB,2BAAwE,MAA6C;CACnI,MAAM,EAAE,QAAQ,SAAS,gBAAgB;CACzC,MAAM,cAAc,SAAuC,eAAe,SAAS,KAAK;AAExF,QAAO;EACL,KAAyD,UAA+I,EAAE,EAA0D;GAClQ,MAAM,EAAE,OAAO,QAAQ,MAAM,cAAc,iBAAiB;GAC5D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,kBACLA,KAAqB;IAAE;IAAQ,MAAM,EAAE,UAAU,iBAAiB;IAAE;IAAO;IAAQ,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IAAG,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAAG,CAAC,EAAE,aAAa;;EAE9P,IAAwD,eAAgC,UAAoH,EAAE,EAAyD;GACrQ,MAAM,EAAE,QAAQ,MAAM,cAAc,iBAAiB;GACrD,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,kBACLC,IAAoB;IAAE;IAAQ,MAAM;KAAE,UAAU;KAAiB,iBAAiB;KAAe;IAAE;IAAQ,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IAAG,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAAG,CAAC,EAAE,aAAa;;EAEtR,OAA2D,SAAuM;GAChQ,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,kBACLC,OAAuB;IAAE;IAAQ,MAAM,EAAE,UAAU,iBAAiB;IAAE;IAAM;IAAQ,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IAAG,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAAG,CAAC,EAAE,aAAa;;EAE/P,OACE,eACA,SAC0C;GAC1C,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,kBACLC,OAAuB;IAAE;IAAQ,MAAM;KAAE,UAAU;KAAiB,iBAAiB;KAAe;IAAE;IAAM;IAAQ,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IAAG,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAAG,CAAC,EAAE,aAAa;;EAE/R,OACE,eACA,UAAiJ,EAAE,EACzG;GAC1C,MAAM,EAAE,OAAO,QAAQ,MAAM,cAAc,iBAAiB;GAC5D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,kBACLC,QAAwB;IAAE;IAAQ,MAAM;KAAE,UAAU;KAAiB,iBAAiB;KAAe;IAAE;IAAO;IAAQ,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IAAG,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAAG,CAAC,EAAE,aAAa;;EAElS"}
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
+
const require_error = require('../error.cjs');
|
|
1
2
|
const require_shared = require('./shared.cjs');
|
|
2
3
|
const require_sdk_gen = require('../generated/assets/sdk.gen.cjs');
|
|
3
4
|
|
|
4
5
|
//#region src/resources/assets.ts
|
|
5
6
|
/** Uploads the file to S3 using the signed fields from step 1. */
|
|
6
7
|
async function uploadToS3(signedResponse, file, filename) {
|
|
7
|
-
if (!signedResponse.post_url || !signedResponse.fields) throw new
|
|
8
|
+
if (!signedResponse.post_url || !signedResponse.fields) throw new require_error.ClientError("Invalid signed response: missing post_url or fields", {
|
|
9
|
+
status: 0,
|
|
10
|
+
statusText: "Invalid signed response",
|
|
11
|
+
data: signedResponse
|
|
12
|
+
});
|
|
8
13
|
const formData = new FormData();
|
|
9
14
|
for (const [key, value] of Object.entries(signedResponse.fields)) formData.append(key, value);
|
|
10
15
|
const contentType = signedResponse.fields["Content-Type"] ?? "application/octet-stream";
|
|
@@ -14,7 +19,11 @@ async function uploadToS3(signedResponse, file, filename) {
|
|
|
14
19
|
method: "POST",
|
|
15
20
|
body: formData
|
|
16
21
|
});
|
|
17
|
-
if (!response.ok) throw new
|
|
22
|
+
if (!response.ok) throw new require_error.ClientError(`Failed to upload asset to S3: ${response.statusText}`, {
|
|
23
|
+
status: response.status,
|
|
24
|
+
statusText: response.statusText,
|
|
25
|
+
data: void 0
|
|
26
|
+
});
|
|
18
27
|
}
|
|
19
28
|
function createAssetsResource(deps) {
|
|
20
29
|
const { client, spaceId, wrapRequest } = deps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assets.cjs","names":["resolveSpaceId"],"sources":["../../src/resources/assets.ts"],"sourcesContent":["import * as assetsApi from '../generated/assets/sdk.gen';\nimport type {\n Asset,\n AssetSignRequest,\n AssetUpdate,\n BulkMoveData,\n BulkMoveResponses,\n BulkRestoreData,\n BulkRestoreResponses,\n DeleteManyData,\n DeleteManyResponses,\n DeleteResponses,\n FinalizeResponses,\n GetResponses,\n ListData,\n ListResponses,\n SignResponseObjectData,\n SignResponseObjectResponses,\n UpdateData,\n UpdateResponses,\n} from '../generated/assets/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../index';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\n/**\n * Fields for initiating an asset upload. Pass this to `upload()`, `create()`,\n * or `update()` alongside a file buffer.\n *\n * Uses `short_filename` (e.g. `\"hero.png\"`) to clearly distinguish it from\n * `Asset.filename`, which is the full CDN URL assigned by Storyblok after upload.\n *\n * If you need to call the raw sign endpoint directly, use\n * `signResponseObject()` with `AssetSignRequest` instead.\n */\nexport interface AssetUploadRequest {\n /** The desired filename for the asset (e.g. `\"hero.png\"`). Corresponds to `Asset.short_filename`. */\n short_filename: string;\n /** When set, the upload replaces the file of an existing asset with this ID. */\n id?: AssetSignRequest['id'];\n /** Place the asset in this folder. */\n asset_folder_id?: AssetSignRequest['asset_folder_id'];\n /** Mark the asset as private (inaccessible without a signed URL). */\n is_private?: AssetSignRequest['is_private'];\n /** Image dimensions in `\"<width>x<height>\"` format (e.g. `\"400x500\"`). */\n size?: AssetSignRequest['size'];\n /** Set to `1` to enable server-side upload validation. */\n validate_upload?: AssetSignRequest['validate_upload'];\n}\n\n/**\n * Input for `create()`. Combines upload fields (`short_filename`,\n * `asset_folder_id`, etc.) with writable metadata (`alt`, `title`,\n * `copyright`, etc.). The file buffer is passed separately.\n */\nexport type AssetCreate = AssetUpdate & AssetUploadRequest;\n\n/** Uploads the file to S3 using the signed fields from step 1. */\nasync function uploadToS3(\n signedResponse: SignResponseObjectResponses[200],\n file: Blob | ArrayBuffer,\n filename: string,\n): Promise<void> {\n if (!signedResponse.post_url || !signedResponse.fields) {\n throw new Error('Invalid signed response: missing post_url or fields');\n }\n const formData = new FormData();\n for (const [key, value] of Object.entries(signedResponse.fields)) {\n formData.append(key, value as string);\n }\n const contentType = (signedResponse.fields['Content-Type'] as string | undefined) ?? 'application/octet-stream';\n const blob = file instanceof Blob ? file : new Blob([file], { type: contentType });\n formData.append('file', new File([blob], filename, { type: contentType }));\n const response = await fetch(signedResponse.post_url, { method: 'POST', body: formData });\n if (!response.ok) {\n throw new Error(`Failed to upload asset to S3: ${response.statusText}`);\n }\n}\n\nexport function createAssetsResource(deps: MapiResourceDeps) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n\n return {\n list<ThrowOnError extends boolean = false>(options: { query?: ListData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponses[200], ThrowOnError>(() =>\n assetsApi.list({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n /**\n * Requests a signed response object (step 1 of the upload flow).\n * Returns the S3 `post_url` and form `fields` needed for the actual upload.\n *\n * In most cases, prefer `upload()` or `create()` which handle all three\n * steps automatically.\n */\n signResponseObject<ThrowOnError extends boolean = false>(options: { body: SignResponseObjectData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<SignResponseObjectResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<SignResponseObjectResponses[200], ThrowOnError>(() =>\n assetsApi.signResponseObject({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n /**\n * Uploads a file to Storyblok (sign → S3 upload → finalize) and returns\n * the resulting `Asset`.\n *\n * To also set metadata (alt, title, etc.) in one call, use `create()`.\n */\n async upload(options: { body: AssetUploadRequest; file: Blob | ArrayBuffer; signal?: AbortSignal; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<Asset> {\n const { body, file, signal, path, fetchOptions } = options;\n const { short_filename, ...rest } = body;\n const signBody: AssetSignRequest = { filename: short_filename, ...rest };\n const resolvedSpaceId = getSpaceId(path);\n const kyOpts = fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n\n const signResult = await wrapRequest<SignResponseObjectResponses[200], true>(() =>\n assetsApi.signResponseObject({ client, path: { space_id: resolvedSpaceId }, body: signBody, signal, throwOnError: true, ...kyOpts }), true);\n\n if (!signResult.data.id) {\n throw new Error('Invalid signed response: missing id');\n }\n\n await uploadToS3(signResult.data, file, short_filename);\n\n await wrapRequest<FinalizeResponses[200], true>(() =>\n assetsApi.finalize({\n client,\n path: { space_id: resolvedSpaceId, signed_response_object_id: String(signResult.data.id) },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n\n const getResult = await wrapRequest<GetResponses[200], true>(() =>\n assetsApi.get({ client, path: { space_id: resolvedSpaceId, asset_id: Number(signResult.data.id) }, signal, throwOnError: true, ...kyOpts }), true);\n\n return getResult.data;\n },\n /**\n * Creates a new asset with metadata. Performs the full upload flow, then\n * applies any provided metadata (alt, title, copyright, etc.) in a\n * follow-up update call. Returns the resulting `Asset`.\n */\n async create(options: { body: AssetCreate; file: Blob | ArrayBuffer; signal?: AbortSignal; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<Asset> {\n const { body, file, signal, path, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n const kyOpts = fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n\n const asset = await this.upload({\n body: {\n short_filename: body.short_filename,\n asset_folder_id: body.asset_folder_id,\n is_private: body.is_private,\n },\n file,\n signal,\n path: { space_id: resolvedSpaceId },\n fetchOptions,\n });\n\n const { short_filename, asset_folder_id, is_private, size, validate_upload, ...metadata } = body;\n const hasMetadata = Object.values(metadata).some(v => v !== undefined && v !== null);\n if (hasMetadata) {\n await wrapRequest<UpdateResponses[204], true>(() =>\n assetsApi.update({\n client,\n path: { space_id: resolvedSpaceId, asset_id: asset.id },\n body: { asset: metadata },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n const updatedResult = await wrapRequest<GetResponses[200], true>(() =>\n assetsApi.get({ client, path: { space_id: resolvedSpaceId, asset_id: asset.id }, signal, throwOnError: true, ...kyOpts }), true);\n return updatedResult.data;\n }\n\n return asset;\n },\n get<ThrowOnError extends boolean = false>(assetId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponses[200], ThrowOnError>(() =>\n assetsApi.get({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n /**\n * Updates an asset's metadata. When `file` and `short_filename` are\n * provided, the file is replaced first (sign → S3 → finalize), then\n * metadata is updated.\n */\n async update(\n assetId: number | string,\n options: (\n | { body: UpdateData['body']; file?: undefined }\n | { body: UpdateData['body'] & { short_filename: string }; file: Blob | ArrayBuffer }\n ) & { signal?: AbortSignal; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<void> {\n const { body, file, signal, path, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n const kyOpts = fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n\n if (file !== undefined) {\n const { short_filename, ...assetBody } = body;\n const signResult = await wrapRequest<SignResponseObjectResponses[200], true>(() =>\n assetsApi.signResponseObject({\n client,\n path: { space_id: resolvedSpaceId },\n body: { filename: short_filename, id: Number(assetId) },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n\n if (!signResult.data.id) {\n throw new Error('Invalid signed response: missing id');\n }\n\n await uploadToS3(signResult.data, file, short_filename);\n\n await wrapRequest<FinalizeResponses[200], true>(() =>\n assetsApi.finalize({\n client,\n path: { space_id: resolvedSpaceId, signed_response_object_id: String(signResult.data.id) },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n\n if (assetBody.asset && Object.keys(assetBody.asset).length > 0) {\n await wrapRequest<UpdateResponses[204], true>(() =>\n assetsApi.update({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, body: assetBody, signal, throwOnError: true, ...kyOpts }), true);\n }\n }\n else {\n await wrapRequest<UpdateResponses[204], true>(() =>\n assetsApi.update({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, body, signal, throwOnError: true, ...kyOpts }), true);\n }\n },\n delete<ThrowOnError extends boolean = false>(assetId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<DeleteResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteResponses[200], ThrowOnError>(() =>\n assetsApi.delete_({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n finalize<ThrowOnError extends boolean = false>(signedResponseObjectId: string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<FinalizeResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<FinalizeResponses[200], ThrowOnError>(() =>\n assetsApi.finalize({\n client,\n path: { space_id: resolvedSpaceId, signed_response_object_id: signedResponseObjectId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n deleteMany<ThrowOnError extends boolean = false>(options: { body: DeleteManyData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<DeleteManyResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteManyResponses[200], ThrowOnError>(() =>\n assetsApi.deleteMany({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n bulkMove<ThrowOnError extends boolean = false>(options: { body: BulkMoveData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<BulkMoveResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<BulkMoveResponses[200], ThrowOnError>(() =>\n assetsApi.bulkMove({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n bulkRestore<ThrowOnError extends boolean = false>(options: { body: BulkRestoreData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<BulkRestoreResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<BulkRestoreResponses[200], ThrowOnError>(() =>\n assetsApi.bulkRestore({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"assets.cjs","names":["ClientError","resolveSpaceId"],"sources":["../../src/resources/assets.ts"],"sourcesContent":["import * as assetsApi from '../generated/assets/sdk.gen';\nimport type {\n Asset,\n AssetSignRequest,\n AssetUpdate,\n BulkMoveData,\n BulkMoveResponses,\n BulkRestoreData,\n BulkRestoreResponses,\n DeleteManyData,\n DeleteManyResponses,\n DeleteResponses,\n FinalizeResponses,\n GetResponses,\n ListData,\n ListResponses,\n SignResponseObjectData,\n SignResponseObjectResponses,\n UpdateData,\n UpdateResponses,\n} from '../generated/assets/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { ClientError } from '../error';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport type AssetListQuery = NonNullable<ListData['query']>;\n\n/**\n * Fields for initiating an asset upload. Pass this to `upload()`, `create()`,\n * or `update()` alongside a file buffer.\n *\n * Uses `short_filename` (e.g. `\"hero.png\"`) to clearly distinguish it from\n * `Asset.filename`, which is the full CDN URL assigned by Storyblok after upload.\n *\n * If you need to call the raw sign endpoint directly, use\n * `signResponseObject()` with `AssetSignRequest` instead.\n */\nexport interface AssetUploadRequest {\n /** The desired filename for the asset (e.g. `\"hero.png\"`). Corresponds to `Asset.short_filename`. */\n short_filename: string;\n /** When set, the upload replaces the file of an existing asset with this ID. */\n id?: AssetSignRequest['id'];\n /** Place the asset in this folder. */\n asset_folder_id?: AssetSignRequest['asset_folder_id'];\n /** Mark the asset as private (inaccessible without a signed URL). */\n is_private?: AssetSignRequest['is_private'];\n /** Image dimensions in `\"<width>x<height>\"` format (e.g. `\"400x500\"`). */\n size?: AssetSignRequest['size'];\n /** Set to `1` to enable server-side upload validation. */\n validate_upload?: AssetSignRequest['validate_upload'];\n}\n\n/**\n * Input for `create()`. Combines upload fields (`short_filename`,\n * `asset_folder_id`, etc.) with writable metadata (`alt`, `title`,\n * `copyright`, etc.). The file buffer is passed separately.\n */\nexport type AssetCreate = AssetUpdate & AssetUploadRequest;\n\n/** Uploads the file to S3 using the signed fields from step 1. */\nasync function uploadToS3(\n signedResponse: SignResponseObjectResponses[200],\n file: Blob | ArrayBuffer,\n filename: string,\n): Promise<void> {\n if (!signedResponse.post_url || !signedResponse.fields) {\n throw new ClientError('Invalid signed response: missing post_url or fields', {\n status: 0,\n statusText: 'Invalid signed response',\n data: signedResponse,\n });\n }\n const formData = new FormData();\n for (const [key, value] of Object.entries(signedResponse.fields)) {\n formData.append(key, value as string);\n }\n const contentType = (signedResponse.fields['Content-Type'] as string | undefined) ?? 'application/octet-stream';\n const blob = file instanceof Blob ? file : new Blob([file], { type: contentType });\n formData.append('file', new File([blob], filename, { type: contentType }));\n const response = await fetch(signedResponse.post_url, { method: 'POST', body: formData });\n if (!response.ok) {\n throw new ClientError(`Failed to upload asset to S3: ${response.statusText}`, {\n status: response.status,\n statusText: response.statusText,\n data: undefined,\n });\n }\n}\n\nexport function createAssetsResource<DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n\n return {\n list<ThrowOnError extends boolean = DefaultThrowOnError>(options: { query?: ListData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponses[200], ThrowOnError>(() =>\n assetsApi.list({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n /**\n * Requests a signed response object (step 1 of the upload flow).\n * Returns the S3 `post_url` and form `fields` needed for the actual upload.\n *\n * In most cases, prefer `upload()` or `create()` which handle all three\n * steps automatically.\n */\n signResponseObject<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: SignResponseObjectData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<SignResponseObjectResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<SignResponseObjectResponses[200], ThrowOnError>(() =>\n assetsApi.signResponseObject({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n /**\n * Uploads a file to Storyblok (sign → S3 upload → finalize) and returns\n * the resulting `Asset`.\n *\n * To also set metadata (alt, title, etc.) in one call, use `create()`.\n */\n async upload(options: { body: AssetUploadRequest; file: Blob | ArrayBuffer; signal?: AbortSignal; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<Asset> {\n const { body, file, signal, path, fetchOptions } = options;\n const { short_filename, ...rest } = body;\n const signBody: AssetSignRequest = { filename: short_filename, ...rest };\n const resolvedSpaceId = getSpaceId(path);\n const kyOpts = fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n\n const signResult = await wrapRequest<SignResponseObjectResponses[200], true>(() =>\n assetsApi.signResponseObject({ client, path: { space_id: resolvedSpaceId }, body: signBody, signal, throwOnError: true, ...kyOpts }), true);\n\n if (!signResult.data.id) {\n throw new Error('Invalid signed response: missing id');\n }\n\n await uploadToS3(signResult.data, file, short_filename);\n\n await wrapRequest<FinalizeResponses[200], true>(() =>\n assetsApi.finalize({\n client,\n path: { space_id: resolvedSpaceId, signed_response_object_id: String(signResult.data.id) },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n\n const getResult = await wrapRequest<GetResponses[200], true>(() =>\n assetsApi.get({ client, path: { space_id: resolvedSpaceId, asset_id: Number(signResult.data.id) }, signal, throwOnError: true, ...kyOpts }), true);\n\n return getResult.data;\n },\n /**\n * Creates a new asset with metadata. Performs the full upload flow, then\n * applies any provided metadata (alt, title, copyright, etc.) in a\n * follow-up update call. Returns the resulting `Asset`.\n */\n async create(options: { body: AssetCreate; file: Blob | ArrayBuffer; signal?: AbortSignal; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<Asset> {\n const { body, file, signal, path, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n const kyOpts = fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n\n const asset = await this.upload({\n body: {\n short_filename: body.short_filename,\n asset_folder_id: body.asset_folder_id,\n is_private: body.is_private,\n },\n file,\n signal,\n path: { space_id: resolvedSpaceId },\n fetchOptions,\n });\n\n const { short_filename, asset_folder_id, is_private, size, validate_upload, ...metadata } = body;\n const hasMetadata = Object.values(metadata).some(v => v !== undefined && v !== null);\n if (hasMetadata) {\n await wrapRequest<UpdateResponses[204], true>(() =>\n assetsApi.update({\n client,\n path: { space_id: resolvedSpaceId, asset_id: asset.id },\n body: { asset: metadata },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n const updatedResult = await wrapRequest<GetResponses[200], true>(() =>\n assetsApi.get({ client, path: { space_id: resolvedSpaceId, asset_id: asset.id }, signal, throwOnError: true, ...kyOpts }), true);\n return updatedResult.data;\n }\n\n return asset;\n },\n get<ThrowOnError extends boolean = DefaultThrowOnError>(assetId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponses[200], ThrowOnError>(() =>\n assetsApi.get({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n /**\n * Updates an asset's metadata. When `file` and `short_filename` are\n * provided, the file is replaced first (sign → S3 → finalize), then\n * metadata is updated.\n */\n async update(\n assetId: number | string,\n options: (\n | { body: UpdateData['body']; file?: undefined }\n | { body: UpdateData['body'] & { short_filename: string }; file: Blob | ArrayBuffer }\n ) & { signal?: AbortSignal; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<void> {\n const { body, file, signal, path, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n const kyOpts = fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n\n if (file !== undefined) {\n const { short_filename, ...assetBody } = body;\n const signResult = await wrapRequest<SignResponseObjectResponses[200], true>(() =>\n assetsApi.signResponseObject({\n client,\n path: { space_id: resolvedSpaceId },\n body: { filename: short_filename, id: Number(assetId) },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n\n if (!signResult.data.id) {\n throw new Error('Invalid signed response: missing id');\n }\n\n await uploadToS3(signResult.data, file, short_filename);\n\n await wrapRequest<FinalizeResponses[200], true>(() =>\n assetsApi.finalize({\n client,\n path: { space_id: resolvedSpaceId, signed_response_object_id: String(signResult.data.id) },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n\n if (assetBody.asset && Object.keys(assetBody.asset).length > 0) {\n await wrapRequest<UpdateResponses[204], true>(() =>\n assetsApi.update({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, body: assetBody, signal, throwOnError: true, ...kyOpts }), true);\n }\n }\n else {\n await wrapRequest<UpdateResponses[204], true>(() =>\n assetsApi.update({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, body, signal, throwOnError: true, ...kyOpts }), true);\n }\n },\n delete<ThrowOnError extends boolean = DefaultThrowOnError>(assetId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<DeleteResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteResponses[200], ThrowOnError>(() =>\n assetsApi.delete_({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n finalize<ThrowOnError extends boolean = DefaultThrowOnError>(signedResponseObjectId: string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<FinalizeResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<FinalizeResponses[200], ThrowOnError>(() =>\n assetsApi.finalize({\n client,\n path: { space_id: resolvedSpaceId, signed_response_object_id: signedResponseObjectId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n deleteMany<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: DeleteManyData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<DeleteManyResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteManyResponses[200], ThrowOnError>(() =>\n assetsApi.deleteMany({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n bulkMove<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: BulkMoveData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<BulkMoveResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<BulkMoveResponses[200], ThrowOnError>(() =>\n assetsApi.bulkMove({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n bulkRestore<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: BulkRestoreData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<BulkRestoreResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<BulkRestoreResponses[200], ThrowOnError>(() =>\n assetsApi.bulkRestore({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { AssetSignRequest, AssetUpdate } from "../generated/assets/types.gen.cjs";
|
|
1
|
+
import { AssetSignRequest, AssetUpdate, ListData } from "../generated/assets/types.gen.cjs";
|
|
2
2
|
|
|
3
3
|
//#region src/resources/assets.d.ts
|
|
4
|
+
type AssetListQuery = NonNullable<ListData['query']>;
|
|
4
5
|
/**
|
|
5
6
|
* Fields for initiating an asset upload. Pass this to `upload()`, `create()`,
|
|
6
7
|
* or `update()` alongside a file buffer.
|
|
@@ -32,5 +33,5 @@ interface AssetUploadRequest {
|
|
|
32
33
|
*/
|
|
33
34
|
type AssetCreate = AssetUpdate & AssetUploadRequest;
|
|
34
35
|
//#endregion
|
|
35
|
-
export { AssetCreate, AssetUploadRequest };
|
|
36
|
+
export { AssetCreate, AssetListQuery, AssetUploadRequest };
|
|
36
37
|
//# sourceMappingURL=assets.d.cts.map
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { AssetSignRequest, AssetUpdate } from "../generated/assets/types.gen.mjs";
|
|
1
|
+
import { AssetSignRequest, AssetUpdate, ListData } from "../generated/assets/types.gen.mjs";
|
|
2
2
|
//#region src/resources/assets.d.ts
|
|
3
|
+
type AssetListQuery = NonNullable<ListData['query']>;
|
|
3
4
|
/**
|
|
4
5
|
* Fields for initiating an asset upload. Pass this to `upload()`, `create()`,
|
|
5
6
|
* or `update()` alongside a file buffer.
|
|
@@ -31,5 +32,5 @@ interface AssetUploadRequest {
|
|
|
31
32
|
*/
|
|
32
33
|
type AssetCreate = AssetUpdate & AssetUploadRequest;
|
|
33
34
|
//#endregion
|
|
34
|
-
export { AssetCreate, AssetUploadRequest };
|
|
35
|
+
export { AssetCreate, AssetListQuery, AssetUploadRequest };
|
|
35
36
|
//# sourceMappingURL=assets.d.mts.map
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
+
import { ClientError } from "../error.mjs";
|
|
1
2
|
import { resolveSpaceId } from "./shared.mjs";
|
|
2
3
|
import { bulkMove, bulkRestore, deleteMany, delete_, finalize, get, list, signResponseObject, update } from "../generated/assets/sdk.gen.mjs";
|
|
3
4
|
|
|
4
5
|
//#region src/resources/assets.ts
|
|
5
6
|
/** Uploads the file to S3 using the signed fields from step 1. */
|
|
6
7
|
async function uploadToS3(signedResponse, file, filename) {
|
|
7
|
-
if (!signedResponse.post_url || !signedResponse.fields) throw new
|
|
8
|
+
if (!signedResponse.post_url || !signedResponse.fields) throw new ClientError("Invalid signed response: missing post_url or fields", {
|
|
9
|
+
status: 0,
|
|
10
|
+
statusText: "Invalid signed response",
|
|
11
|
+
data: signedResponse
|
|
12
|
+
});
|
|
8
13
|
const formData = new FormData();
|
|
9
14
|
for (const [key, value] of Object.entries(signedResponse.fields)) formData.append(key, value);
|
|
10
15
|
const contentType = signedResponse.fields["Content-Type"] ?? "application/octet-stream";
|
|
@@ -14,7 +19,11 @@ async function uploadToS3(signedResponse, file, filename) {
|
|
|
14
19
|
method: "POST",
|
|
15
20
|
body: formData
|
|
16
21
|
});
|
|
17
|
-
if (!response.ok) throw new
|
|
22
|
+
if (!response.ok) throw new ClientError(`Failed to upload asset to S3: ${response.statusText}`, {
|
|
23
|
+
status: response.status,
|
|
24
|
+
statusText: response.statusText,
|
|
25
|
+
data: void 0
|
|
26
|
+
});
|
|
18
27
|
}
|
|
19
28
|
function createAssetsResource(deps) {
|
|
20
29
|
const { client, spaceId, wrapRequest } = deps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assets.mjs","names":["assetsApi.list","assetsApi.signResponseObject","assetsApi.finalize","assetsApi.get","assetsApi.update","assetsApi.delete_","assetsApi.deleteMany","assetsApi.bulkMove","assetsApi.bulkRestore"],"sources":["../../src/resources/assets.ts"],"sourcesContent":["import * as assetsApi from '../generated/assets/sdk.gen';\nimport type {\n Asset,\n AssetSignRequest,\n AssetUpdate,\n BulkMoveData,\n BulkMoveResponses,\n BulkRestoreData,\n BulkRestoreResponses,\n DeleteManyData,\n DeleteManyResponses,\n DeleteResponses,\n FinalizeResponses,\n GetResponses,\n ListData,\n ListResponses,\n SignResponseObjectData,\n SignResponseObjectResponses,\n UpdateData,\n UpdateResponses,\n} from '../generated/assets/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../index';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\n/**\n * Fields for initiating an asset upload. Pass this to `upload()`, `create()`,\n * or `update()` alongside a file buffer.\n *\n * Uses `short_filename` (e.g. `\"hero.png\"`) to clearly distinguish it from\n * `Asset.filename`, which is the full CDN URL assigned by Storyblok after upload.\n *\n * If you need to call the raw sign endpoint directly, use\n * `signResponseObject()` with `AssetSignRequest` instead.\n */\nexport interface AssetUploadRequest {\n /** The desired filename for the asset (e.g. `\"hero.png\"`). Corresponds to `Asset.short_filename`. */\n short_filename: string;\n /** When set, the upload replaces the file of an existing asset with this ID. */\n id?: AssetSignRequest['id'];\n /** Place the asset in this folder. */\n asset_folder_id?: AssetSignRequest['asset_folder_id'];\n /** Mark the asset as private (inaccessible without a signed URL). */\n is_private?: AssetSignRequest['is_private'];\n /** Image dimensions in `\"<width>x<height>\"` format (e.g. `\"400x500\"`). */\n size?: AssetSignRequest['size'];\n /** Set to `1` to enable server-side upload validation. */\n validate_upload?: AssetSignRequest['validate_upload'];\n}\n\n/**\n * Input for `create()`. Combines upload fields (`short_filename`,\n * `asset_folder_id`, etc.) with writable metadata (`alt`, `title`,\n * `copyright`, etc.). The file buffer is passed separately.\n */\nexport type AssetCreate = AssetUpdate & AssetUploadRequest;\n\n/** Uploads the file to S3 using the signed fields from step 1. */\nasync function uploadToS3(\n signedResponse: SignResponseObjectResponses[200],\n file: Blob | ArrayBuffer,\n filename: string,\n): Promise<void> {\n if (!signedResponse.post_url || !signedResponse.fields) {\n throw new Error('Invalid signed response: missing post_url or fields');\n }\n const formData = new FormData();\n for (const [key, value] of Object.entries(signedResponse.fields)) {\n formData.append(key, value as string);\n }\n const contentType = (signedResponse.fields['Content-Type'] as string | undefined) ?? 'application/octet-stream';\n const blob = file instanceof Blob ? file : new Blob([file], { type: contentType });\n formData.append('file', new File([blob], filename, { type: contentType }));\n const response = await fetch(signedResponse.post_url, { method: 'POST', body: formData });\n if (!response.ok) {\n throw new Error(`Failed to upload asset to S3: ${response.statusText}`);\n }\n}\n\nexport function createAssetsResource(deps: MapiResourceDeps) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n\n return {\n list<ThrowOnError extends boolean = false>(options: { query?: ListData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponses[200], ThrowOnError>(() =>\n assetsApi.list({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n /**\n * Requests a signed response object (step 1 of the upload flow).\n * Returns the S3 `post_url` and form `fields` needed for the actual upload.\n *\n * In most cases, prefer `upload()` or `create()` which handle all three\n * steps automatically.\n */\n signResponseObject<ThrowOnError extends boolean = false>(options: { body: SignResponseObjectData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<SignResponseObjectResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<SignResponseObjectResponses[200], ThrowOnError>(() =>\n assetsApi.signResponseObject({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n /**\n * Uploads a file to Storyblok (sign → S3 upload → finalize) and returns\n * the resulting `Asset`.\n *\n * To also set metadata (alt, title, etc.) in one call, use `create()`.\n */\n async upload(options: { body: AssetUploadRequest; file: Blob | ArrayBuffer; signal?: AbortSignal; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<Asset> {\n const { body, file, signal, path, fetchOptions } = options;\n const { short_filename, ...rest } = body;\n const signBody: AssetSignRequest = { filename: short_filename, ...rest };\n const resolvedSpaceId = getSpaceId(path);\n const kyOpts = fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n\n const signResult = await wrapRequest<SignResponseObjectResponses[200], true>(() =>\n assetsApi.signResponseObject({ client, path: { space_id: resolvedSpaceId }, body: signBody, signal, throwOnError: true, ...kyOpts }), true);\n\n if (!signResult.data.id) {\n throw new Error('Invalid signed response: missing id');\n }\n\n await uploadToS3(signResult.data, file, short_filename);\n\n await wrapRequest<FinalizeResponses[200], true>(() =>\n assetsApi.finalize({\n client,\n path: { space_id: resolvedSpaceId, signed_response_object_id: String(signResult.data.id) },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n\n const getResult = await wrapRequest<GetResponses[200], true>(() =>\n assetsApi.get({ client, path: { space_id: resolvedSpaceId, asset_id: Number(signResult.data.id) }, signal, throwOnError: true, ...kyOpts }), true);\n\n return getResult.data;\n },\n /**\n * Creates a new asset with metadata. Performs the full upload flow, then\n * applies any provided metadata (alt, title, copyright, etc.) in a\n * follow-up update call. Returns the resulting `Asset`.\n */\n async create(options: { body: AssetCreate; file: Blob | ArrayBuffer; signal?: AbortSignal; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<Asset> {\n const { body, file, signal, path, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n const kyOpts = fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n\n const asset = await this.upload({\n body: {\n short_filename: body.short_filename,\n asset_folder_id: body.asset_folder_id,\n is_private: body.is_private,\n },\n file,\n signal,\n path: { space_id: resolvedSpaceId },\n fetchOptions,\n });\n\n const { short_filename, asset_folder_id, is_private, size, validate_upload, ...metadata } = body;\n const hasMetadata = Object.values(metadata).some(v => v !== undefined && v !== null);\n if (hasMetadata) {\n await wrapRequest<UpdateResponses[204], true>(() =>\n assetsApi.update({\n client,\n path: { space_id: resolvedSpaceId, asset_id: asset.id },\n body: { asset: metadata },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n const updatedResult = await wrapRequest<GetResponses[200], true>(() =>\n assetsApi.get({ client, path: { space_id: resolvedSpaceId, asset_id: asset.id }, signal, throwOnError: true, ...kyOpts }), true);\n return updatedResult.data;\n }\n\n return asset;\n },\n get<ThrowOnError extends boolean = false>(assetId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponses[200], ThrowOnError>(() =>\n assetsApi.get({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n /**\n * Updates an asset's metadata. When `file` and `short_filename` are\n * provided, the file is replaced first (sign → S3 → finalize), then\n * metadata is updated.\n */\n async update(\n assetId: number | string,\n options: (\n | { body: UpdateData['body']; file?: undefined }\n | { body: UpdateData['body'] & { short_filename: string }; file: Blob | ArrayBuffer }\n ) & { signal?: AbortSignal; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<void> {\n const { body, file, signal, path, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n const kyOpts = fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n\n if (file !== undefined) {\n const { short_filename, ...assetBody } = body;\n const signResult = await wrapRequest<SignResponseObjectResponses[200], true>(() =>\n assetsApi.signResponseObject({\n client,\n path: { space_id: resolvedSpaceId },\n body: { filename: short_filename, id: Number(assetId) },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n\n if (!signResult.data.id) {\n throw new Error('Invalid signed response: missing id');\n }\n\n await uploadToS3(signResult.data, file, short_filename);\n\n await wrapRequest<FinalizeResponses[200], true>(() =>\n assetsApi.finalize({\n client,\n path: { space_id: resolvedSpaceId, signed_response_object_id: String(signResult.data.id) },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n\n if (assetBody.asset && Object.keys(assetBody.asset).length > 0) {\n await wrapRequest<UpdateResponses[204], true>(() =>\n assetsApi.update({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, body: assetBody, signal, throwOnError: true, ...kyOpts }), true);\n }\n }\n else {\n await wrapRequest<UpdateResponses[204], true>(() =>\n assetsApi.update({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, body, signal, throwOnError: true, ...kyOpts }), true);\n }\n },\n delete<ThrowOnError extends boolean = false>(assetId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<DeleteResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteResponses[200], ThrowOnError>(() =>\n assetsApi.delete_({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n finalize<ThrowOnError extends boolean = false>(signedResponseObjectId: string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<FinalizeResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<FinalizeResponses[200], ThrowOnError>(() =>\n assetsApi.finalize({\n client,\n path: { space_id: resolvedSpaceId, signed_response_object_id: signedResponseObjectId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n deleteMany<ThrowOnError extends boolean = false>(options: { body: DeleteManyData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<DeleteManyResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteManyResponses[200], ThrowOnError>(() =>\n assetsApi.deleteMany({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n bulkMove<ThrowOnError extends boolean = false>(options: { body: BulkMoveData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<BulkMoveResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<BulkMoveResponses[200], ThrowOnError>(() =>\n assetsApi.bulkMove({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n bulkRestore<ThrowOnError extends boolean = false>(options: { body: BulkRestoreData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<BulkRestoreResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<BulkRestoreResponses[200], ThrowOnError>(() =>\n assetsApi.bulkRestore({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"assets.mjs","names":["assetsApi.list","assetsApi.signResponseObject","assetsApi.finalize","assetsApi.get","assetsApi.update","assetsApi.delete_","assetsApi.deleteMany","assetsApi.bulkMove","assetsApi.bulkRestore"],"sources":["../../src/resources/assets.ts"],"sourcesContent":["import * as assetsApi from '../generated/assets/sdk.gen';\nimport type {\n Asset,\n AssetSignRequest,\n AssetUpdate,\n BulkMoveData,\n BulkMoveResponses,\n BulkRestoreData,\n BulkRestoreResponses,\n DeleteManyData,\n DeleteManyResponses,\n DeleteResponses,\n FinalizeResponses,\n GetResponses,\n ListData,\n ListResponses,\n SignResponseObjectData,\n SignResponseObjectResponses,\n UpdateData,\n UpdateResponses,\n} from '../generated/assets/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { ClientError } from '../error';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport type AssetListQuery = NonNullable<ListData['query']>;\n\n/**\n * Fields for initiating an asset upload. Pass this to `upload()`, `create()`,\n * or `update()` alongside a file buffer.\n *\n * Uses `short_filename` (e.g. `\"hero.png\"`) to clearly distinguish it from\n * `Asset.filename`, which is the full CDN URL assigned by Storyblok after upload.\n *\n * If you need to call the raw sign endpoint directly, use\n * `signResponseObject()` with `AssetSignRequest` instead.\n */\nexport interface AssetUploadRequest {\n /** The desired filename for the asset (e.g. `\"hero.png\"`). Corresponds to `Asset.short_filename`. */\n short_filename: string;\n /** When set, the upload replaces the file of an existing asset with this ID. */\n id?: AssetSignRequest['id'];\n /** Place the asset in this folder. */\n asset_folder_id?: AssetSignRequest['asset_folder_id'];\n /** Mark the asset as private (inaccessible without a signed URL). */\n is_private?: AssetSignRequest['is_private'];\n /** Image dimensions in `\"<width>x<height>\"` format (e.g. `\"400x500\"`). */\n size?: AssetSignRequest['size'];\n /** Set to `1` to enable server-side upload validation. */\n validate_upload?: AssetSignRequest['validate_upload'];\n}\n\n/**\n * Input for `create()`. Combines upload fields (`short_filename`,\n * `asset_folder_id`, etc.) with writable metadata (`alt`, `title`,\n * `copyright`, etc.). The file buffer is passed separately.\n */\nexport type AssetCreate = AssetUpdate & AssetUploadRequest;\n\n/** Uploads the file to S3 using the signed fields from step 1. */\nasync function uploadToS3(\n signedResponse: SignResponseObjectResponses[200],\n file: Blob | ArrayBuffer,\n filename: string,\n): Promise<void> {\n if (!signedResponse.post_url || !signedResponse.fields) {\n throw new ClientError('Invalid signed response: missing post_url or fields', {\n status: 0,\n statusText: 'Invalid signed response',\n data: signedResponse,\n });\n }\n const formData = new FormData();\n for (const [key, value] of Object.entries(signedResponse.fields)) {\n formData.append(key, value as string);\n }\n const contentType = (signedResponse.fields['Content-Type'] as string | undefined) ?? 'application/octet-stream';\n const blob = file instanceof Blob ? file : new Blob([file], { type: contentType });\n formData.append('file', new File([blob], filename, { type: contentType }));\n const response = await fetch(signedResponse.post_url, { method: 'POST', body: formData });\n if (!response.ok) {\n throw new ClientError(`Failed to upload asset to S3: ${response.statusText}`, {\n status: response.status,\n statusText: response.statusText,\n data: undefined,\n });\n }\n}\n\nexport function createAssetsResource<DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n\n return {\n list<ThrowOnError extends boolean = DefaultThrowOnError>(options: { query?: ListData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponses[200], ThrowOnError>(() =>\n assetsApi.list({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n /**\n * Requests a signed response object (step 1 of the upload flow).\n * Returns the S3 `post_url` and form `fields` needed for the actual upload.\n *\n * In most cases, prefer `upload()` or `create()` which handle all three\n * steps automatically.\n */\n signResponseObject<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: SignResponseObjectData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<SignResponseObjectResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<SignResponseObjectResponses[200], ThrowOnError>(() =>\n assetsApi.signResponseObject({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n /**\n * Uploads a file to Storyblok (sign → S3 upload → finalize) and returns\n * the resulting `Asset`.\n *\n * To also set metadata (alt, title, etc.) in one call, use `create()`.\n */\n async upload(options: { body: AssetUploadRequest; file: Blob | ArrayBuffer; signal?: AbortSignal; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<Asset> {\n const { body, file, signal, path, fetchOptions } = options;\n const { short_filename, ...rest } = body;\n const signBody: AssetSignRequest = { filename: short_filename, ...rest };\n const resolvedSpaceId = getSpaceId(path);\n const kyOpts = fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n\n const signResult = await wrapRequest<SignResponseObjectResponses[200], true>(() =>\n assetsApi.signResponseObject({ client, path: { space_id: resolvedSpaceId }, body: signBody, signal, throwOnError: true, ...kyOpts }), true);\n\n if (!signResult.data.id) {\n throw new Error('Invalid signed response: missing id');\n }\n\n await uploadToS3(signResult.data, file, short_filename);\n\n await wrapRequest<FinalizeResponses[200], true>(() =>\n assetsApi.finalize({\n client,\n path: { space_id: resolvedSpaceId, signed_response_object_id: String(signResult.data.id) },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n\n const getResult = await wrapRequest<GetResponses[200], true>(() =>\n assetsApi.get({ client, path: { space_id: resolvedSpaceId, asset_id: Number(signResult.data.id) }, signal, throwOnError: true, ...kyOpts }), true);\n\n return getResult.data;\n },\n /**\n * Creates a new asset with metadata. Performs the full upload flow, then\n * applies any provided metadata (alt, title, copyright, etc.) in a\n * follow-up update call. Returns the resulting `Asset`.\n */\n async create(options: { body: AssetCreate; file: Blob | ArrayBuffer; signal?: AbortSignal; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<Asset> {\n const { body, file, signal, path, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n const kyOpts = fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n\n const asset = await this.upload({\n body: {\n short_filename: body.short_filename,\n asset_folder_id: body.asset_folder_id,\n is_private: body.is_private,\n },\n file,\n signal,\n path: { space_id: resolvedSpaceId },\n fetchOptions,\n });\n\n const { short_filename, asset_folder_id, is_private, size, validate_upload, ...metadata } = body;\n const hasMetadata = Object.values(metadata).some(v => v !== undefined && v !== null);\n if (hasMetadata) {\n await wrapRequest<UpdateResponses[204], true>(() =>\n assetsApi.update({\n client,\n path: { space_id: resolvedSpaceId, asset_id: asset.id },\n body: { asset: metadata },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n const updatedResult = await wrapRequest<GetResponses[200], true>(() =>\n assetsApi.get({ client, path: { space_id: resolvedSpaceId, asset_id: asset.id }, signal, throwOnError: true, ...kyOpts }), true);\n return updatedResult.data;\n }\n\n return asset;\n },\n get<ThrowOnError extends boolean = DefaultThrowOnError>(assetId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponses[200], ThrowOnError>(() =>\n assetsApi.get({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n /**\n * Updates an asset's metadata. When `file` and `short_filename` are\n * provided, the file is replaced first (sign → S3 → finalize), then\n * metadata is updated.\n */\n async update(\n assetId: number | string,\n options: (\n | { body: UpdateData['body']; file?: undefined }\n | { body: UpdateData['body'] & { short_filename: string }; file: Blob | ArrayBuffer }\n ) & { signal?: AbortSignal; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<void> {\n const { body, file, signal, path, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n const kyOpts = fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n\n if (file !== undefined) {\n const { short_filename, ...assetBody } = body;\n const signResult = await wrapRequest<SignResponseObjectResponses[200], true>(() =>\n assetsApi.signResponseObject({\n client,\n path: { space_id: resolvedSpaceId },\n body: { filename: short_filename, id: Number(assetId) },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n\n if (!signResult.data.id) {\n throw new Error('Invalid signed response: missing id');\n }\n\n await uploadToS3(signResult.data, file, short_filename);\n\n await wrapRequest<FinalizeResponses[200], true>(() =>\n assetsApi.finalize({\n client,\n path: { space_id: resolvedSpaceId, signed_response_object_id: String(signResult.data.id) },\n signal,\n throwOnError: true,\n ...kyOpts,\n }), true);\n\n if (assetBody.asset && Object.keys(assetBody.asset).length > 0) {\n await wrapRequest<UpdateResponses[204], true>(() =>\n assetsApi.update({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, body: assetBody, signal, throwOnError: true, ...kyOpts }), true);\n }\n }\n else {\n await wrapRequest<UpdateResponses[204], true>(() =>\n assetsApi.update({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, body, signal, throwOnError: true, ...kyOpts }), true);\n }\n },\n delete<ThrowOnError extends boolean = DefaultThrowOnError>(assetId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<DeleteResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteResponses[200], ThrowOnError>(() =>\n assetsApi.delete_({ client, path: { space_id: resolvedSpaceId, asset_id: assetId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n finalize<ThrowOnError extends boolean = DefaultThrowOnError>(signedResponseObjectId: string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<FinalizeResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<FinalizeResponses[200], ThrowOnError>(() =>\n assetsApi.finalize({\n client,\n path: { space_id: resolvedSpaceId, signed_response_object_id: signedResponseObjectId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n deleteMany<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: DeleteManyData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<DeleteManyResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteManyResponses[200], ThrowOnError>(() =>\n assetsApi.deleteMany({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n bulkMove<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: BulkMoveData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<BulkMoveResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<BulkMoveResponses[200], ThrowOnError>(() =>\n assetsApi.bulkMove({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n bulkRestore<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: BulkRestoreData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<BulkRestoreResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<BulkRestoreResponses[200], ThrowOnError>(() =>\n assetsApi.bulkRestore({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-folders.cjs","names":["resolveSpaceId"],"sources":["../../src/resources/component-folders.ts"],"sourcesContent":["import * as componentFoldersApi from '../generated/component_folders/sdk.gen';\nimport type {\n CreateData,\n CreateResponses,\n GetResponses,\n ListData,\n ListResponses,\n UpdateData,\n UpdateResponses,\n} from '../generated/component_folders/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../
|
|
1
|
+
{"version":3,"file":"component-folders.cjs","names":["resolveSpaceId"],"sources":["../../src/resources/component-folders.ts"],"sourcesContent":["import * as componentFoldersApi from '../generated/component_folders/sdk.gen';\nimport type {\n CreateData,\n CreateResponses,\n GetResponses,\n ListData,\n ListResponses,\n UpdateData,\n UpdateResponses,\n} from '../generated/component_folders/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport function createComponentFoldersResource<DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n\n return {\n list<ThrowOnError extends boolean = DefaultThrowOnError>(options: { query?: ListData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponses[200], ThrowOnError>(() =>\n componentFoldersApi.list({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n get<ThrowOnError extends boolean = DefaultThrowOnError>(componentGroupId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponses[200], ThrowOnError>(() =>\n componentFoldersApi.get({\n client,\n path: { space_id: resolvedSpaceId, component_group_id: componentGroupId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n create<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: CreateData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<CreateResponses[201], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<CreateResponses[201], ThrowOnError>(() =>\n componentFoldersApi.create({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n update<ThrowOnError extends boolean = DefaultThrowOnError>(\n componentGroupId: number | string,\n options: { body: UpdateData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<UpdateResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<UpdateResponses[200], ThrowOnError>(() =>\n componentFoldersApi.update({\n client,\n path: { space_id: resolvedSpaceId, component_group_id: componentGroupId },\n body,\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n delete<ThrowOnError extends boolean = DefaultThrowOnError>(componentGroupId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<void, ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<void, ThrowOnError>(() =>\n componentFoldersApi.delete_({\n client,\n path: { space_id: resolvedSpaceId, component_group_id: componentGroupId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n };\n}\n"],"mappings":";;;;AAaA,SAAgB,+BAA4E,MAA6C;CACvI,MAAM,EAAE,QAAQ,SAAS,gBAAgB;CACzC,MAAM,cAAc,SAAuCA,8BAAe,SAAS,KAAK;AAExF,QAAO;EACL,KAAyD,UAA+I,EAAE,EAA0D;GAClQ,MAAM,EAAE,OAAO,QAAQ,MAAM,cAAc,iBAAiB;GAC5D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,uCACoB;IAAE;IAAQ,MAAM,EAAE,UAAU,iBAAiB;IAAE;IAAO;IAAQ,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IAAG,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAAG,CAAC,EAAE,aAAa;;EAElQ,IAAwD,kBAAmC,UAAoH,EAAE,EAAyD;GACxQ,MAAM,EAAE,QAAQ,MAAM,cAAc,iBAAiB;GACrD,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,sCACmB;IACtB;IACA,MAAM;KAAE,UAAU;KAAiB,oBAAoB;KAAkB;IACzE;IACA,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IACtD,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAC5F,CAAC,EAAE,aAAa;;EAErB,OAA2D,SAAuM;GAChQ,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,yCACsB;IAAE;IAAQ,MAAM,EAAE,UAAU,iBAAiB;IAAE;IAAM;IAAQ,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IAAG,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAAG,CAAC,EAAE,aAAa;;EAEnQ,OACE,kBACA,SAC0D;GAC1D,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,yCACsB;IACzB;IACA,MAAM;KAAE,UAAU;KAAiB,oBAAoB;KAAkB;IACzE;IACA;IACA,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IACtD,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAC5F,CAAC,EAAE,aAAa;;EAErB,OAA2D,kBAAmC,UAAoH,EAAE,EAA4C;GAC9P,MAAM,EAAE,QAAQ,MAAM,cAAc,iBAAiB;GACrD,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,0CACuB;IAC1B;IACA,MAAM;KAAE,UAAU;KAAiB,oBAAoB;KAAkB;IACzE;IACA,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IACtD,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAC5F,CAAC,EAAE,aAAa;;EAEtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-folders.mjs","names":["componentFoldersApi.list","componentFoldersApi.get","componentFoldersApi.create","componentFoldersApi.update","componentFoldersApi.delete_"],"sources":["../../src/resources/component-folders.ts"],"sourcesContent":["import * as componentFoldersApi from '../generated/component_folders/sdk.gen';\nimport type {\n CreateData,\n CreateResponses,\n GetResponses,\n ListData,\n ListResponses,\n UpdateData,\n UpdateResponses,\n} from '../generated/component_folders/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../
|
|
1
|
+
{"version":3,"file":"component-folders.mjs","names":["componentFoldersApi.list","componentFoldersApi.get","componentFoldersApi.create","componentFoldersApi.update","componentFoldersApi.delete_"],"sources":["../../src/resources/component-folders.ts"],"sourcesContent":["import * as componentFoldersApi from '../generated/component_folders/sdk.gen';\nimport type {\n CreateData,\n CreateResponses,\n GetResponses,\n ListData,\n ListResponses,\n UpdateData,\n UpdateResponses,\n} from '../generated/component_folders/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport function createComponentFoldersResource<DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n\n return {\n list<ThrowOnError extends boolean = DefaultThrowOnError>(options: { query?: ListData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponses[200], ThrowOnError>(() =>\n componentFoldersApi.list({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n get<ThrowOnError extends boolean = DefaultThrowOnError>(componentGroupId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponses[200], ThrowOnError>(() =>\n componentFoldersApi.get({\n client,\n path: { space_id: resolvedSpaceId, component_group_id: componentGroupId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n create<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: CreateData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<CreateResponses[201], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<CreateResponses[201], ThrowOnError>(() =>\n componentFoldersApi.create({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n update<ThrowOnError extends boolean = DefaultThrowOnError>(\n componentGroupId: number | string,\n options: { body: UpdateData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<UpdateResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<UpdateResponses[200], ThrowOnError>(() =>\n componentFoldersApi.update({\n client,\n path: { space_id: resolvedSpaceId, component_group_id: componentGroupId },\n body,\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n delete<ThrowOnError extends boolean = DefaultThrowOnError>(componentGroupId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<void, ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<void, ThrowOnError>(() =>\n componentFoldersApi.delete_({\n client,\n path: { space_id: resolvedSpaceId, component_group_id: componentGroupId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n };\n}\n"],"mappings":";;;;AAaA,SAAgB,+BAA4E,MAA6C;CACvI,MAAM,EAAE,QAAQ,SAAS,gBAAgB;CACzC,MAAM,cAAc,SAAuC,eAAe,SAAS,KAAK;AAExF,QAAO;EACL,KAAyD,UAA+I,EAAE,EAA0D;GAClQ,MAAM,EAAE,OAAO,QAAQ,MAAM,cAAc,iBAAiB;GAC5D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,kBACLA,KAAyB;IAAE;IAAQ,MAAM,EAAE,UAAU,iBAAiB;IAAE;IAAO;IAAQ,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IAAG,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAAG,CAAC,EAAE,aAAa;;EAElQ,IAAwD,kBAAmC,UAAoH,EAAE,EAAyD;GACxQ,MAAM,EAAE,QAAQ,MAAM,cAAc,iBAAiB;GACrD,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,kBACLC,IAAwB;IACtB;IACA,MAAM;KAAE,UAAU;KAAiB,oBAAoB;KAAkB;IACzE;IACA,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IACtD,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAC5F,CAAC,EAAE,aAAa;;EAErB,OAA2D,SAAuM;GAChQ,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,kBACLC,OAA2B;IAAE;IAAQ,MAAM,EAAE,UAAU,iBAAiB;IAAE;IAAM;IAAQ,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IAAG,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAAG,CAAC,EAAE,aAAa;;EAEnQ,OACE,kBACA,SAC0D;GAC1D,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,kBACLC,OAA2B;IACzB;IACA,MAAM;KAAE,UAAU;KAAiB,oBAAoB;KAAkB;IACzE;IACA;IACA,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IACtD,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAC5F,CAAC,EAAE,aAAa;;EAErB,OAA2D,kBAAmC,UAAoH,EAAE,EAA4C;GAC9P,MAAM,EAAE,QAAQ,MAAM,cAAc,iBAAiB;GACrD,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,kBACLC,QAA4B;IAC1B;IACA,MAAM;KAAE,UAAU;KAAiB,oBAAoB;KAAkB;IACzE;IACA,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IACtD,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAC5F,CAAC,EAAE,aAAa;;EAEtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.cjs","names":["resolveSpaceId"],"sources":["../../src/resources/components.ts"],"sourcesContent":["import * as componentsApi from '../generated/components/sdk.gen';\nimport type {\n CreateData,\n CreateResponses,\n DeleteResponses,\n GetResponses,\n ListData,\n ListResponses,\n RestoreResponses,\n RestoreVersionData,\n RestoreVersionResponses,\n UpdateData,\n UpdateResponses,\n VersionData,\n VersionResponses,\n VersionsData,\n VersionsResponses,\n} from '../generated/components/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../index';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport function createComponentsResource(deps: MapiResourceDeps) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n\n return {\n list<ThrowOnError extends boolean = false>(options: { query?: ListData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponses[200], ThrowOnError>(() =>\n componentsApi.list({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n get<ThrowOnError extends boolean = false>(componentId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponses[200], ThrowOnError>(() =>\n componentsApi.get({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n create<ThrowOnError extends boolean = false>(options: { body: CreateData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<CreateResponses[201], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<CreateResponses[201], ThrowOnError>(() =>\n componentsApi.create({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n update<ThrowOnError extends boolean = false>(\n componentId: number | string,\n options: { body: UpdateData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<UpdateResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<UpdateResponses[200], ThrowOnError>(() =>\n componentsApi.update({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n delete<ThrowOnError extends boolean = false>(componentId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<DeleteResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteResponses[200], ThrowOnError>(() =>\n componentsApi.delete_({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n restore<ThrowOnError extends boolean = false>(componentId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<RestoreResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<RestoreResponses[200], ThrowOnError>(() =>\n componentsApi.restore({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n versions<ThrowOnError extends boolean = false>(options: { query?: VersionsData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<VersionsResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<VersionsResponses[200], ThrowOnError>(() =>\n componentsApi.versions({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n version<ThrowOnError extends boolean = false>(\n componentId: number | string,\n versionId: VersionData['path']['version_id'],\n options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<VersionResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<VersionResponses[200], ThrowOnError>(() =>\n componentsApi.version({\n client,\n path: { space_id: resolvedSpaceId, component_id: componentId, version_id: versionId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n restoreVersion<ThrowOnError extends boolean = false>(\n versionId: RestoreVersionData['path']['version_id'],\n options: { body: RestoreVersionData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<RestoreVersionResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<RestoreVersionResponses[200], ThrowOnError>(() =>\n componentsApi.restoreVersion({ client, path: { space_id: resolvedSpaceId, version_id: versionId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components.cjs","names":["resolveSpaceId"],"sources":["../../src/resources/components.ts"],"sourcesContent":["import * as componentsApi from '../generated/components/sdk.gen';\nimport type {\n CreateData,\n CreateResponses,\n DeleteResponses,\n GetResponses,\n ListData,\n ListResponses,\n RestoreResponses,\n RestoreVersionData,\n RestoreVersionResponses,\n UpdateData,\n UpdateResponses,\n VersionData,\n VersionResponses,\n VersionsData,\n VersionsResponses,\n} from '../generated/components/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\nimport type { ComponentCreate as SchemaComponentCreate, ComponentUpdate as SchemaComponentUpdate } from '@storyblok/schema';\n\n/**\n * Body type for component creation that accepts schema types.\n *\n * The `@storyblok/schema` package generates `ComponentCreate` with a\n * differently-shaped `ComponentSchemaField` union than the mapi-client's own\n * generated type. This bridge type uses the schema type so that output from\n * `defineComponentCreate()` is directly assignable.\n */\ntype ComponentCreateBody = Omit<CreateData['body'], 'component'> & { component?: SchemaComponentCreate };\n\n/**\n * Body type for component updates that accepts schema types.\n * See {@link ComponentCreateBody} for rationale.\n */\ntype ComponentUpdateBody = Omit<UpdateData['body'], 'component'> & { component?: SchemaComponentUpdate };\n\nexport function createComponentsResource<DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n\n return {\n list<ThrowOnError extends boolean = DefaultThrowOnError>(options: { query?: ListData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponses[200], ThrowOnError>(() =>\n componentsApi.list({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n get<ThrowOnError extends boolean = DefaultThrowOnError>(componentId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponses[200], ThrowOnError>(() =>\n componentsApi.get({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n create<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: ComponentCreateBody; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<CreateResponses[201], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<CreateResponses[201], ThrowOnError>(() =>\n componentsApi.create({ client, path: { space_id: resolvedSpaceId }, body: body as CreateData['body'], signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n update<ThrowOnError extends boolean = DefaultThrowOnError>(\n componentId: number | string,\n options: { body: ComponentUpdateBody; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<UpdateResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<UpdateResponses[200], ThrowOnError>(() =>\n componentsApi.update({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, body: body as UpdateData['body'], signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n delete<ThrowOnError extends boolean = DefaultThrowOnError>(componentId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<DeleteResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteResponses[200], ThrowOnError>(() =>\n componentsApi.delete_({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n restore<ThrowOnError extends boolean = DefaultThrowOnError>(componentId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<RestoreResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<RestoreResponses[200], ThrowOnError>(() =>\n componentsApi.restore({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n versions<ThrowOnError extends boolean = DefaultThrowOnError>(options: { query?: VersionsData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<VersionsResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<VersionsResponses[200], ThrowOnError>(() =>\n componentsApi.versions({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n version<ThrowOnError extends boolean = DefaultThrowOnError>(\n componentId: number | string,\n versionId: VersionData['path']['version_id'],\n options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<VersionResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<VersionResponses[200], ThrowOnError>(() =>\n componentsApi.version({\n client,\n path: { space_id: resolvedSpaceId, component_id: componentId, version_id: versionId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n restoreVersion<ThrowOnError extends boolean = DefaultThrowOnError>(\n versionId: RestoreVersionData['path']['version_id'],\n options: { body: RestoreVersionData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<RestoreVersionResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<RestoreVersionResponses[200], ThrowOnError>(() =>\n componentsApi.restoreVersion({ client, path: { space_id: resolvedSpaceId, version_id: versionId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.mjs","names":["componentsApi.list","componentsApi.get","componentsApi.create","componentsApi.update","componentsApi.delete_","componentsApi.restore","componentsApi.versions","componentsApi.version","componentsApi.restoreVersion"],"sources":["../../src/resources/components.ts"],"sourcesContent":["import * as componentsApi from '../generated/components/sdk.gen';\nimport type {\n CreateData,\n CreateResponses,\n DeleteResponses,\n GetResponses,\n ListData,\n ListResponses,\n RestoreResponses,\n RestoreVersionData,\n RestoreVersionResponses,\n UpdateData,\n UpdateResponses,\n VersionData,\n VersionResponses,\n VersionsData,\n VersionsResponses,\n} from '../generated/components/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../index';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport function createComponentsResource(deps: MapiResourceDeps) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n\n return {\n list<ThrowOnError extends boolean = false>(options: { query?: ListData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponses[200], ThrowOnError>(() =>\n componentsApi.list({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n get<ThrowOnError extends boolean = false>(componentId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponses[200], ThrowOnError>(() =>\n componentsApi.get({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n create<ThrowOnError extends boolean = false>(options: { body: CreateData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<CreateResponses[201], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<CreateResponses[201], ThrowOnError>(() =>\n componentsApi.create({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n update<ThrowOnError extends boolean = false>(\n componentId: number | string,\n options: { body: UpdateData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<UpdateResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<UpdateResponses[200], ThrowOnError>(() =>\n componentsApi.update({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n delete<ThrowOnError extends boolean = false>(componentId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<DeleteResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteResponses[200], ThrowOnError>(() =>\n componentsApi.delete_({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n restore<ThrowOnError extends boolean = false>(componentId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<RestoreResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<RestoreResponses[200], ThrowOnError>(() =>\n componentsApi.restore({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n versions<ThrowOnError extends boolean = false>(options: { query?: VersionsData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<VersionsResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<VersionsResponses[200], ThrowOnError>(() =>\n componentsApi.versions({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n version<ThrowOnError extends boolean = false>(\n componentId: number | string,\n versionId: VersionData['path']['version_id'],\n options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<VersionResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<VersionResponses[200], ThrowOnError>(() =>\n componentsApi.version({\n client,\n path: { space_id: resolvedSpaceId, component_id: componentId, version_id: versionId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n restoreVersion<ThrowOnError extends boolean = false>(\n versionId: RestoreVersionData['path']['version_id'],\n options: { body: RestoreVersionData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<RestoreVersionResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<RestoreVersionResponses[200], ThrowOnError>(() =>\n componentsApi.restoreVersion({ client, path: { space_id: resolvedSpaceId, version_id: versionId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components.mjs","names":["componentsApi.list","componentsApi.get","componentsApi.create","componentsApi.update","componentsApi.delete_","componentsApi.restore","componentsApi.versions","componentsApi.version","componentsApi.restoreVersion"],"sources":["../../src/resources/components.ts"],"sourcesContent":["import * as componentsApi from '../generated/components/sdk.gen';\nimport type {\n CreateData,\n CreateResponses,\n DeleteResponses,\n GetResponses,\n ListData,\n ListResponses,\n RestoreResponses,\n RestoreVersionData,\n RestoreVersionResponses,\n UpdateData,\n UpdateResponses,\n VersionData,\n VersionResponses,\n VersionsData,\n VersionsResponses,\n} from '../generated/components/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\nimport type { ComponentCreate as SchemaComponentCreate, ComponentUpdate as SchemaComponentUpdate } from '@storyblok/schema';\n\n/**\n * Body type for component creation that accepts schema types.\n *\n * The `@storyblok/schema` package generates `ComponentCreate` with a\n * differently-shaped `ComponentSchemaField` union than the mapi-client's own\n * generated type. This bridge type uses the schema type so that output from\n * `defineComponentCreate()` is directly assignable.\n */\ntype ComponentCreateBody = Omit<CreateData['body'], 'component'> & { component?: SchemaComponentCreate };\n\n/**\n * Body type for component updates that accepts schema types.\n * See {@link ComponentCreateBody} for rationale.\n */\ntype ComponentUpdateBody = Omit<UpdateData['body'], 'component'> & { component?: SchemaComponentUpdate };\n\nexport function createComponentsResource<DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n\n return {\n list<ThrowOnError extends boolean = DefaultThrowOnError>(options: { query?: ListData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponses[200], ThrowOnError>(() =>\n componentsApi.list({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n get<ThrowOnError extends boolean = DefaultThrowOnError>(componentId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponses[200], ThrowOnError>(() =>\n componentsApi.get({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n create<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: ComponentCreateBody; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<CreateResponses[201], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<CreateResponses[201], ThrowOnError>(() =>\n componentsApi.create({ client, path: { space_id: resolvedSpaceId }, body: body as CreateData['body'], signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n update<ThrowOnError extends boolean = DefaultThrowOnError>(\n componentId: number | string,\n options: { body: ComponentUpdateBody; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<UpdateResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<UpdateResponses[200], ThrowOnError>(() =>\n componentsApi.update({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, body: body as UpdateData['body'], signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n delete<ThrowOnError extends boolean = DefaultThrowOnError>(componentId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<DeleteResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteResponses[200], ThrowOnError>(() =>\n componentsApi.delete_({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n restore<ThrowOnError extends boolean = DefaultThrowOnError>(componentId: number | string, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<RestoreResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<RestoreResponses[200], ThrowOnError>(() =>\n componentsApi.restore({ client, path: { space_id: resolvedSpaceId, component_id: componentId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n versions<ThrowOnError extends boolean = DefaultThrowOnError>(options: { query?: VersionsData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<VersionsResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<VersionsResponses[200], ThrowOnError>(() =>\n componentsApi.versions({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n version<ThrowOnError extends boolean = DefaultThrowOnError>(\n componentId: number | string,\n versionId: VersionData['path']['version_id'],\n options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<VersionResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<VersionResponses[200], ThrowOnError>(() =>\n componentsApi.version({\n client,\n path: { space_id: resolvedSpaceId, component_id: componentId, version_id: versionId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n restoreVersion<ThrowOnError extends boolean = DefaultThrowOnError>(\n versionId: RestoreVersionData['path']['version_id'],\n options: { body: RestoreVersionData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<RestoreVersionResponses[200], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<RestoreVersionResponses[200], ThrowOnError>(() =>\n componentsApi.restoreVersion({ client, path: { space_id: resolvedSpaceId, version_id: versionId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datasource-entries.cjs","names":["resolveSpaceId"],"sources":["../../src/resources/datasource-entries.ts"],"sourcesContent":["import * as datasourceEntriesApi from '../generated/datasource_entries/sdk.gen';\nimport type {\n CreateData,\n CreateResponses,\n GetResponses,\n ListData,\n ListResponses,\n UpdateData,\n} from '../generated/datasource_entries/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../
|
|
1
|
+
{"version":3,"file":"datasource-entries.cjs","names":["resolveSpaceId"],"sources":["../../src/resources/datasource-entries.ts"],"sourcesContent":["import * as datasourceEntriesApi from '../generated/datasource_entries/sdk.gen';\nimport type {\n CreateData,\n CreateResponses,\n GetResponses,\n ListData,\n ListResponses,\n UpdateData,\n} from '../generated/datasource_entries/types.gen';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport function createDatasourceEntriesResource<DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n\n return {\n list<ThrowOnError extends boolean = DefaultThrowOnError>(options: { query?: ListData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponses[200], ThrowOnError>(() =>\n datasourceEntriesApi.list({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n\n get<ThrowOnError extends boolean = DefaultThrowOnError>(datasourceEntryId: number, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponses[200], ThrowOnError>(() =>\n datasourceEntriesApi.get({\n client,\n path: { space_id: resolvedSpaceId, datasource_entry_id: datasourceEntryId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n\n create<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: CreateData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<CreateResponses[201], ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<CreateResponses[201], ThrowOnError>(() =>\n datasourceEntriesApi.create({ client, path: { space_id: resolvedSpaceId }, body, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n\n update<ThrowOnError extends boolean = DefaultThrowOnError>(\n datasourceEntryId: number,\n options: { body: UpdateData['body']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<void, ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<void, ThrowOnError>(() =>\n datasourceEntriesApi.update({\n client,\n path: { space_id: resolvedSpaceId, datasource_entry_id: datasourceEntryId },\n body,\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n delete<ThrowOnError extends boolean = DefaultThrowOnError>(datasourceEntryId: number, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<void, ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<void, ThrowOnError>(() =>\n datasourceEntriesApi.delete_({\n client,\n path: { space_id: resolvedSpaceId, datasource_entry_id: datasourceEntryId },\n signal,\n ...(throwOnError === undefined ? {} : { throwOnError }),\n ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}),\n }), throwOnError);\n },\n };\n}\n"],"mappings":";;;;AAYA,SAAgB,gCAA6E,MAA6C;CACxI,MAAM,EAAE,QAAQ,SAAS,gBAAgB;CACzC,MAAM,cAAc,SAAuCA,8BAAe,SAAS,KAAK;AAExF,QAAO;EACL,KAAyD,UAA+I,EAAE,EAA0D;GAClQ,MAAM,EAAE,OAAO,QAAQ,MAAM,cAAc,iBAAiB;GAC5D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,uCACqB;IAAE;IAAQ,MAAM,EAAE,UAAU,iBAAiB;IAAE;IAAO;IAAQ,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IAAG,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAAG,CAAC,EAAE,aAAa;;EAGnQ,IAAwD,mBAA2B,UAAoH,EAAE,EAAyD;GAChQ,MAAM,EAAE,QAAQ,MAAM,cAAc,iBAAiB;GACrD,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,sCACoB;IACvB;IACA,MAAM;KAAE,UAAU;KAAiB,qBAAqB;KAAmB;IAC3E;IACA,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IACtD,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAC5F,CAAC,EAAE,aAAa;;EAGrB,OAA2D,SAAuM;GAChQ,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,yCACuB;IAAE;IAAQ,MAAM,EAAE,UAAU,iBAAiB;IAAE;IAAM;IAAQ,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IAAG,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAAG,CAAC,EAAE,aAAa;;EAGpQ,OACE,mBACA,SAC0C;GAC1C,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,yCACuB;IAC1B;IACA,MAAM;KAAE,UAAU;KAAiB,qBAAqB;KAAmB;IAC3E;IACA;IACA,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IACtD,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAC5F,CAAC,EAAE,aAAa;;EAErB,OAA2D,mBAA2B,UAAoH,EAAE,EAA4C;GACtP,MAAM,EAAE,QAAQ,MAAM,cAAc,iBAAiB;GACrD,MAAM,kBAAkB,WAAW,KAAK;AACxC,UAAO,0CACwB;IAC3B;IACA,MAAM;KAAE,UAAU;KAAiB,qBAAqB;KAAmB;IAC3E;IACA,GAAI,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;IACtD,GAAI,eAAe,EAAE,WAAW;KAAE,GAAG,OAAO,WAAW,CAAC;KAAW,GAAG;KAAc,EAAE,GAAG,EAAE;IAC5F,CAAC,EAAE,aAAa;;EAEtB"}
|