@storyblok/management-api-client 1.0.0-alpha.3 → 1.0.0-alpha.5
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 +6 -0
- package/dist/client.cjs.map +1 -1
- package/dist/client.d.cts +134 -11
- package/dist/client.d.mts +134 -11
- package/dist/client.mjs +6 -0
- package/dist/client.mjs.map +1 -1
- package/dist/generated/mapi/types-aliased.gen.d.cts +2 -2
- package/dist/generated/mapi/types-aliased.gen.d.mts +2 -2
- package/dist/generated/mapi/types.gen.d.cts +2 -2
- package/dist/generated/mapi/types.gen.d.mts +2 -2
- package/dist/generated/types/block.d.cts +6 -0
- package/dist/generated/types/block.d.mts +6 -0
- package/dist/generated/types/field.d.cts +53 -18
- package/dist/generated/types/field.d.mts +53 -18
- package/dist/generated/types/mapi-story.d.cts +6 -6
- package/dist/generated/types/mapi-story.d.mts +6 -6
- package/dist/index.d.cts +4 -1
- package/dist/index.d.mts +4 -1
- package/dist/resources/assets.cjs +1 -0
- package/dist/resources/assets.cjs.map +1 -1
- package/dist/resources/assets.mjs +1 -1
- package/dist/resources/assets.mjs.map +1 -1
- package/dist/resources/datasource-entries.cjs +2 -1
- package/dist/resources/datasource-entries.cjs.map +1 -1
- package/dist/resources/datasource-entries.mjs +2 -1
- package/dist/resources/datasource-entries.mjs.map +1 -1
- package/dist/resources/shared-asset-folders.cjs +81 -0
- package/dist/resources/shared-asset-folders.cjs.map +1 -0
- package/dist/resources/shared-asset-folders.d.cts +41 -0
- package/dist/resources/shared-asset-folders.d.mts +41 -0
- package/dist/resources/shared-asset-folders.mjs +81 -0
- package/dist/resources/shared-asset-folders.mjs.map +1 -0
- package/dist/resources/shared-assets.cjs +197 -0
- package/dist/resources/shared-assets.cjs.map +1 -0
- package/dist/resources/shared-assets.d.cts +29 -0
- package/dist/resources/shared-assets.d.mts +28 -0
- package/dist/resources/shared-assets.mjs +197 -0
- package/dist/resources/shared-assets.mjs.map +1 -0
- package/dist/resources/shared-internal-tags.cjs +73 -0
- package/dist/resources/shared-internal-tags.cjs.map +1 -0
- package/dist/resources/shared-internal-tags.d.cts +32 -0
- package/dist/resources/shared-internal-tags.d.mts +32 -0
- package/dist/resources/shared-internal-tags.mjs +73 -0
- package/dist/resources/shared-internal-tags.mjs.map +1 -0
- package/dist/resources/stories.cjs.map +1 -1
- package/dist/resources/stories.d.cts +26 -26
- package/dist/resources/stories.d.mts +26 -26
- package/dist/resources/stories.mjs.map +1 -1
- package/package.json +3 -3
- package/playground/integration-tests/test/types/stories.test-d.ts +39 -2
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { resolveSpaceId } from "./shared.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/resources/shared-internal-tags.ts
|
|
4
|
+
/**
|
|
5
|
+
* Shared (organization-level) internal tags, scoped to a library. Every method
|
|
6
|
+
* carries `asset_folder_id` = library root (query param on list/delete, body
|
|
7
|
+
* field on create/update). Not part of the generated SDK — raw `client.*`.
|
|
8
|
+
*/
|
|
9
|
+
function createSharedInternalTagsResource(deps) {
|
|
10
|
+
const { client, spaceId, wrapRequest } = deps;
|
|
11
|
+
const getSpaceId = (path) => resolveSpaceId(spaceId, path);
|
|
12
|
+
const kyOpts = (fetchOptions) => fetchOptions ? { kyOptions: {
|
|
13
|
+
...client.getConfig().kyOptions,
|
|
14
|
+
...fetchOptions
|
|
15
|
+
} } : {};
|
|
16
|
+
const maybeThrow = (throwOnError) => throwOnError === void 0 ? {} : { throwOnError };
|
|
17
|
+
return {
|
|
18
|
+
list(options) {
|
|
19
|
+
const { query, signal, path, throwOnError, fetchOptions } = options;
|
|
20
|
+
return wrapRequest(() => client.get({
|
|
21
|
+
url: "/v1/spaces/{space_id}/shared_internal_tags",
|
|
22
|
+
path: { space_id: getSpaceId(path) },
|
|
23
|
+
query: { ...query },
|
|
24
|
+
signal,
|
|
25
|
+
...maybeThrow(throwOnError),
|
|
26
|
+
...kyOpts(fetchOptions)
|
|
27
|
+
}), throwOnError);
|
|
28
|
+
},
|
|
29
|
+
create(options) {
|
|
30
|
+
const { body, signal, path, throwOnError, fetchOptions } = options;
|
|
31
|
+
return wrapRequest(() => client.post({
|
|
32
|
+
url: "/v1/spaces/{space_id}/shared_internal_tags",
|
|
33
|
+
path: { space_id: getSpaceId(path) },
|
|
34
|
+
body,
|
|
35
|
+
signal,
|
|
36
|
+
...maybeThrow(throwOnError),
|
|
37
|
+
...kyOpts(fetchOptions)
|
|
38
|
+
}), throwOnError);
|
|
39
|
+
},
|
|
40
|
+
update(tagId, options) {
|
|
41
|
+
const { body, signal, path, throwOnError, fetchOptions } = options;
|
|
42
|
+
return wrapRequest(() => client.patch({
|
|
43
|
+
url: "/v1/spaces/{space_id}/shared_internal_tags/{internal_tag_id}",
|
|
44
|
+
path: {
|
|
45
|
+
space_id: getSpaceId(path),
|
|
46
|
+
internal_tag_id: tagId
|
|
47
|
+
},
|
|
48
|
+
body,
|
|
49
|
+
signal,
|
|
50
|
+
...maybeThrow(throwOnError),
|
|
51
|
+
...kyOpts(fetchOptions)
|
|
52
|
+
}), throwOnError);
|
|
53
|
+
},
|
|
54
|
+
delete(tagId, options) {
|
|
55
|
+
const { query, signal, path, throwOnError, fetchOptions } = options;
|
|
56
|
+
return wrapRequest(() => client.delete({
|
|
57
|
+
url: "/v1/spaces/{space_id}/shared_internal_tags/{internal_tag_id}",
|
|
58
|
+
path: {
|
|
59
|
+
space_id: getSpaceId(path),
|
|
60
|
+
internal_tag_id: tagId
|
|
61
|
+
},
|
|
62
|
+
query,
|
|
63
|
+
signal,
|
|
64
|
+
...maybeThrow(throwOnError),
|
|
65
|
+
...kyOpts(fetchOptions)
|
|
66
|
+
}), throwOnError);
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
//#endregion
|
|
72
|
+
export { createSharedInternalTagsResource };
|
|
73
|
+
//# sourceMappingURL=shared-internal-tags.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared-internal-tags.mjs","names":[],"sources":["../../src/resources/shared-internal-tags.ts"],"sourcesContent":["import type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport type SharedInternalTagObjectType = 'asset' | 'component' | 'idea';\n\nexport interface SharedInternalTag {\n id: number;\n name: string;\n object_type: SharedInternalTagObjectType;\n assets_count?: number;\n}\n\nexport interface SharedInternalTagCreate {\n name: string;\n object_type: SharedInternalTagObjectType;\n /** The library root folder the tag is scoped to. Required on every call. */\n asset_folder_id: number;\n}\n\nexport interface SharedInternalTagListQuery {\n /** The library root folder. Required. */\n asset_folder_id: number;\n search?: string;\n by_object_type?: string;\n by_ids?: string;\n page?: number;\n per_page?: number;\n}\n\nexport interface SharedInternalTagListResponse {\n internal_tags: SharedInternalTag[];\n}\n\nexport interface SharedInternalTagMutateResponse {\n internal_tag: SharedInternalTag;\n}\n\n/**\n * Shared (organization-level) internal tags, scoped to a library. Every method\n * carries `asset_folder_id` = library root (query param on list/delete, body\n * field on create/update). Not part of the generated SDK — raw `client.*`.\n */\nexport function createSharedInternalTagsResource<DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>) {\n const { client, spaceId, wrapRequest } = deps;\n const getSpaceId = (path?: SpaceIdPathOverride['path']) => resolveSpaceId(spaceId, path);\n const kyOpts = (fetchOptions?: FetchOptions) =>\n fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {};\n const maybeThrow = (throwOnError?: boolean) => (throwOnError === undefined ? {} : { throwOnError });\n\n return {\n list<ThrowOnError extends boolean = false>(options: { query: SharedInternalTagListQuery; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<SharedInternalTagListResponse, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n return wrapRequest<SharedInternalTagListResponse, ThrowOnError>(() =>\n client.get({ url: '/v1/spaces/{space_id}/shared_internal_tags', path: { space_id: getSpaceId(path) }, query: { ...query }, signal, ...maybeThrow(throwOnError), ...kyOpts(fetchOptions) }), throwOnError);\n },\n create<ThrowOnError extends boolean = false>(options: { body: { shared_internal_tag: SharedInternalTagCreate }; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<SharedInternalTagMutateResponse, ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n return wrapRequest<SharedInternalTagMutateResponse, ThrowOnError>(() =>\n client.post({ url: '/v1/spaces/{space_id}/shared_internal_tags', path: { space_id: getSpaceId(path) }, body, signal, ...maybeThrow(throwOnError), ...kyOpts(fetchOptions) }), throwOnError);\n },\n update<ThrowOnError extends boolean = false>(tagId: number, options: { body: { shared_internal_tag: SharedInternalTagCreate }; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<SharedInternalTagMutateResponse, ThrowOnError>> {\n const { body, signal, path, throwOnError, fetchOptions } = options;\n return wrapRequest<SharedInternalTagMutateResponse, ThrowOnError>(() =>\n client.patch({ url: '/v1/spaces/{space_id}/shared_internal_tags/{internal_tag_id}', path: { space_id: getSpaceId(path), internal_tag_id: tagId }, body, signal, ...maybeThrow(throwOnError), ...kyOpts(fetchOptions) }), throwOnError);\n },\n delete<ThrowOnError extends boolean = false>(tagId: number, options: { query: { asset_folder_id: number }; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<void, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n return wrapRequest<void, ThrowOnError>(() =>\n client.delete({ url: '/v1/spaces/{space_id}/shared_internal_tags/{internal_tag_id}', path: { space_id: getSpaceId(path), internal_tag_id: tagId }, query, signal, ...maybeThrow(throwOnError), ...kyOpts(fetchOptions) }), throwOnError);\n },\n };\n}\n"],"mappings":";;;;;;;;AA0CA,SAAgB,iCAA8E,MAA6C;CACzI,MAAM,EAAE,QAAQ,SAAS,gBAAgB;CACzC,MAAM,cAAc,SAAuC,eAAe,SAAS,KAAK;CACxF,MAAM,UAAU,iBACd,eAAe,EAAE,WAAW;EAAE,GAAG,OAAO,WAAW,CAAC;EAAW,GAAG;EAAc,EAAE,GAAG,EAAE;CACzF,MAAM,cAAc,iBAA4B,iBAAiB,SAAY,EAAE,GAAG,EAAE,cAAc;AAElG,QAAO;EACL,KAA2C,SAAyN;GAClQ,MAAM,EAAE,OAAO,QAAQ,MAAM,cAAc,iBAAiB;AAC5D,UAAO,kBACL,OAAO,IAAI;IAAE,KAAK;IAA8C,MAAM,EAAE,UAAU,WAAW,KAAK,EAAE;IAAE,OAAO,EAAE,GAAG,OAAO;IAAE;IAAQ,GAAG,WAAW,aAAa;IAAE,GAAG,OAAO,aAAa;IAAE,CAAC,EAAE,aAAa;;EAE7M,OAA6C,SAAgP;GAC3R,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;AAC3D,UAAO,kBACL,OAAO,KAAK;IAAE,KAAK;IAA8C,MAAM,EAAE,UAAU,WAAW,KAAK,EAAE;IAAE;IAAM;IAAQ,GAAG,WAAW,aAAa;IAAE,GAAG,OAAO,aAAa;IAAE,CAAC,EAAE,aAAa;;EAE/L,OAA6C,OAAe,SAAgP;GAC1S,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;AAC3D,UAAO,kBACL,OAAO,MAAM;IAAE,KAAK;IAAgE,MAAM;KAAE,UAAU,WAAW,KAAK;KAAE,iBAAiB;KAAO;IAAE;IAAM;IAAQ,GAAG,WAAW,aAAa;IAAE,GAAG,OAAO,aAAa;IAAE,CAAC,EAAE,aAAa;;EAE1O,OAA6C,OAAe,SAAiM;GAC3P,MAAM,EAAE,OAAO,QAAQ,MAAM,cAAc,iBAAiB;AAC5D,UAAO,kBACL,OAAO,OAAO;IAAE,KAAK;IAAgE,MAAM;KAAE,UAAU,WAAW,KAAK;KAAE,iBAAiB;KAAO;IAAE;IAAO;IAAQ,GAAG,WAAW,aAAa;IAAE,GAAG,OAAO,aAAa;IAAE,CAAC,EAAE,aAAa;;EAE7O"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stories.cjs","names":["resolveSpaceId"],"sources":["../../src/resources/stories.ts"],"sourcesContent":["import * as mapi from '../generated/mapi/sdk.gen';\nimport type {\n CreateStoryData,\n CreateStoryResponses,\n DeleteStoryResponses,\n DuplicateStoryData,\n DuplicateStoryResponses,\n GetStoryByIdData,\n GetStoryByIdResponses,\n ListStoriesData,\n ListStoriesResponses,\n ListVersionsData,\n ListVersionsResponses,\n PublishStoryData,\n PublishStoryResponses,\n UpdateStoryData,\n UpdateStoryRequest,\n UpdateStoryResponses,\n} from '../generated/mapi/types.gen';\nimport type { Block as Component } from '../generated/types/block';\nimport type { MapiStory, StoryCreate, StoryUpdate } from '../generated/types/mapi-story';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport type StoryListQuery = NonNullable<ListStoriesData['query']>;\n\n/**\n * Resolves to a component-narrowed story type when `TComponents` is a specific\n * Component union, or falls back to the generated `MapiStory` when no components\n * are provided (i.e. `TComponents` is the default base `Component` type).\n */\ntype StoryResult<TComponents extends Component> =\n Component extends TComponents\n ? MapiStory\n : MapiStory<TComponents>;\n\ntype GetResponse<TComponents extends Component> =\n Omit<GetStoryByIdResponses[200], 'story'> & { story?: StoryResult<TComponents> };\n\ntype ListResponse<TComponents extends Component> =\n Omit<ListStoriesResponses[200], 'stories'> & { stories?: Array<StoryResult<TComponents>> };\n\ntype CreateResponse<TComponents extends Component> =\n Omit<CreateStoryResponses[201], 'story'> & { story?: StoryResult<TComponents> };\n\ntype UpdateResponse<TComponents extends Component> =\n Omit<UpdateStoryResponses[200], 'story'> & { story?: StoryResult<TComponents> };\n\ntype DuplicateResponse<TComponents extends Component> =\n Omit<DuplicateStoryResponses[200], 'story'> & { story?: StoryResult<TComponents> };\n\ntype PublishResponse<TComponents extends Component> =\n Omit<PublishStoryResponses[200], 'story'> & { story?: StoryResult<TComponents> };\n\ntype CreateBody<TComponents extends Component> =\n Component extends TComponents\n ? CreateStoryData['body']\n : Omit<UpdateStoryRequest, 'story'> & {\n story: StoryCreate<TComponents>;\n };\n\ntype UpdateBody<TComponents extends Component> =\n Component extends TComponents\n ? UpdateStoryData['body']\n : Omit<UpdateStoryRequest, 'story'> & {\n story: StoryUpdate<TComponents>;\n };\n\nexport function createStoriesResource<\n TComponents extends Component = Component,\n DefaultThrowOnError extends boolean = false,\n>(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?: ListStoriesData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponse<TComponents>, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponse<TComponents>, ThrowOnError>(() =>\n mapi.listStories({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n get<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options: { query?: GetStoryByIdData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponse<TComponents>, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponse<TComponents>, ThrowOnError>(() =>\n mapi.getStoryById({ client, path: { space_id: resolvedSpaceId, id: storyId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n create<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: CreateBody<TComponents>; query?: CreateStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<CreateResponse<TComponents>, ThrowOnError>> {\n const { body, query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<CreateResponse<TComponents>, ThrowOnError>(() =>\n mapi.createStory({ client, path: { space_id: resolvedSpaceId }, body: body as CreateStoryData['body'], query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n update<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { body: UpdateBody<TComponents>; query?: UpdateStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<UpdateResponse<TComponents>, ThrowOnError>> {\n const { body, query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<UpdateResponse<TComponents>, ThrowOnError>(() =>\n mapi.updateStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, body: body as UpdateStoryData['body'], query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n delete<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<DeleteStoryResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteStoryResponses[200], ThrowOnError>(() =>\n mapi.deleteStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n duplicate<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { body: DuplicateStoryData['body']; query?: DuplicateStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<DuplicateResponse<TComponents>, ThrowOnError>> {\n const { body, query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DuplicateResponse<TComponents>, ThrowOnError>(() =>\n mapi.duplicateStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, body, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n publish<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { query?: PublishStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<PublishResponse<TComponents>, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<PublishResponse<TComponents>, ThrowOnError>(() =>\n mapi.publishStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n versions<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { query?: Omit<ListVersionsData['query'], 'model' | 'model_id'>; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<ListVersionsResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListVersionsResponses[200], ThrowOnError>(() =>\n mapi.listVersions({ client, path: { space_id: resolvedSpaceId }, query: { ...query, model: 'stories', model_id: storyId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"stories.cjs","names":["resolveSpaceId"],"sources":["../../src/resources/stories.ts"],"sourcesContent":["import * as mapi from '../generated/mapi/sdk.gen';\nimport type {\n CreateStoryData,\n CreateStoryResponses,\n DeleteStoryResponses,\n DuplicateStoryData,\n DuplicateStoryResponses,\n GetStoryByIdData,\n GetStoryByIdResponses,\n ListStoriesData,\n ListStoriesResponses,\n ListVersionsData,\n ListVersionsResponses,\n PublishStoryData,\n PublishStoryResponses,\n UpdateStoryData,\n UpdateStoryRequest,\n UpdateStoryResponses,\n} from '../generated/mapi/types.gen';\nimport type { Block as Component } from '../generated/types/block';\nimport type { MapiStory, StoryCreate, StoryUpdate } from '../generated/types/mapi-story';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport type StoryListQuery = NonNullable<ListStoriesData['query']>;\n\n/**\n * Resolves to a component-narrowed story type when `TComponents` is a specific\n * Component union, or falls back to the generated `MapiStory` when no components\n * are provided (i.e. `TComponents` is the default base `Component` type).\n */\ntype StoryResult<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Component extends TComponents\n ? MapiStory\n : MapiStory<TComponents, TFieldPlugins>;\n\ntype GetResponse<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Omit<GetStoryByIdResponses[200], 'story'> & { story?: StoryResult<TComponents, TFieldPlugins> };\n\ntype ListResponse<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Omit<ListStoriesResponses[200], 'stories'> & { stories?: Array<StoryResult<TComponents, TFieldPlugins>> };\n\ntype CreateResponse<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Omit<CreateStoryResponses[201], 'story'> & { story?: StoryResult<TComponents, TFieldPlugins> };\n\ntype UpdateResponse<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Omit<UpdateStoryResponses[200], 'story'> & { story?: StoryResult<TComponents, TFieldPlugins> };\n\ntype DuplicateResponse<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Omit<DuplicateStoryResponses[200], 'story'> & { story?: StoryResult<TComponents, TFieldPlugins> };\n\ntype PublishResponse<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Omit<PublishStoryResponses[200], 'story'> & { story?: StoryResult<TComponents, TFieldPlugins> };\n\ntype CreateBody<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Component extends TComponents\n ? CreateStoryData['body']\n : Omit<UpdateStoryRequest, 'story'> & {\n story: StoryCreate<TComponents, TFieldPlugins>;\n };\n\ntype UpdateBody<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Component extends TComponents\n ? UpdateStoryData['body']\n : Omit<UpdateStoryRequest, 'story'> & {\n story: StoryUpdate<TComponents, TFieldPlugins>;\n };\n\nexport function createStoriesResource<\n TComponents extends Component = Component,\n TFieldPlugins = Record<never, never>,\n DefaultThrowOnError extends boolean = false,\n>(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?: ListStoriesData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponse<TComponents, TFieldPlugins>, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponse<TComponents, TFieldPlugins>, ThrowOnError>(() =>\n mapi.listStories({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n get<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options: { query?: GetStoryByIdData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponse<TComponents, TFieldPlugins>, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponse<TComponents, TFieldPlugins>, ThrowOnError>(() =>\n mapi.getStoryById({ client, path: { space_id: resolvedSpaceId, id: storyId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n create<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: CreateBody<TComponents, TFieldPlugins>; query?: CreateStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<CreateResponse<TComponents, TFieldPlugins>, ThrowOnError>> {\n const { body, query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<CreateResponse<TComponents, TFieldPlugins>, ThrowOnError>(() =>\n mapi.createStory({ client, path: { space_id: resolvedSpaceId }, body: body as CreateStoryData['body'], query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n update<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { body: UpdateBody<TComponents, TFieldPlugins>; query?: UpdateStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<UpdateResponse<TComponents, TFieldPlugins>, ThrowOnError>> {\n const { body, query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<UpdateResponse<TComponents, TFieldPlugins>, ThrowOnError>(() =>\n mapi.updateStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, body: body as UpdateStoryData['body'], query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n delete<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<DeleteStoryResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteStoryResponses[200], ThrowOnError>(() =>\n mapi.deleteStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n duplicate<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { body: DuplicateStoryData['body']; query?: DuplicateStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<DuplicateResponse<TComponents, TFieldPlugins>, ThrowOnError>> {\n const { body, query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DuplicateResponse<TComponents, TFieldPlugins>, ThrowOnError>(() =>\n mapi.duplicateStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, body, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n publish<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { query?: PublishStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<PublishResponse<TComponents, TFieldPlugins>, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<PublishResponse<TComponents, TFieldPlugins>, ThrowOnError>(() =>\n mapi.publishStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n versions<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { query?: Omit<ListVersionsData['query'], 'model' | 'model_id'>; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<ListVersionsResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListVersionsResponses[200], ThrowOnError>(() =>\n mapi.listVersions({ client, path: { space_id: resolvedSpaceId }, query: { ...query, model: 'stories', model_id: storyId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":"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"}
|
|
@@ -11,58 +11,58 @@ type StoryListQuery = NonNullable<ListStoriesData['query']>;
|
|
|
11
11
|
* Component union, or falls back to the generated `MapiStory` when no components
|
|
12
12
|
* are provided (i.e. `TComponents` is the default base `Component` type).
|
|
13
13
|
*/
|
|
14
|
-
type StoryResult<TComponents extends Block
|
|
15
|
-
type GetResponse<TComponents extends Block
|
|
16
|
-
story?: StoryResult<TComponents>;
|
|
14
|
+
type StoryResult<TComponents extends Block, TFieldPlugins = Record<never, never>> = Block extends TComponents ? MapiStory : MapiStory<TComponents, TFieldPlugins>;
|
|
15
|
+
type GetResponse<TComponents extends Block, TFieldPlugins = Record<never, never>> = Omit<GetStoryByIdResponses[200], 'story'> & {
|
|
16
|
+
story?: StoryResult<TComponents, TFieldPlugins>;
|
|
17
17
|
};
|
|
18
|
-
type ListResponse<TComponents extends Block
|
|
19
|
-
stories?: Array<StoryResult<TComponents>>;
|
|
18
|
+
type ListResponse<TComponents extends Block, TFieldPlugins = Record<never, never>> = Omit<ListStoriesResponses[200], 'stories'> & {
|
|
19
|
+
stories?: Array<StoryResult<TComponents, TFieldPlugins>>;
|
|
20
20
|
};
|
|
21
|
-
type CreateResponse<TComponents extends Block
|
|
22
|
-
story?: StoryResult<TComponents>;
|
|
21
|
+
type CreateResponse<TComponents extends Block, TFieldPlugins = Record<never, never>> = Omit<CreateStoryResponses[201], 'story'> & {
|
|
22
|
+
story?: StoryResult<TComponents, TFieldPlugins>;
|
|
23
23
|
};
|
|
24
|
-
type UpdateResponse<TComponents extends Block
|
|
25
|
-
story?: StoryResult<TComponents>;
|
|
24
|
+
type UpdateResponse<TComponents extends Block, TFieldPlugins = Record<never, never>> = Omit<UpdateStoryResponses[200], 'story'> & {
|
|
25
|
+
story?: StoryResult<TComponents, TFieldPlugins>;
|
|
26
26
|
};
|
|
27
|
-
type DuplicateResponse<TComponents extends Block
|
|
28
|
-
story?: StoryResult<TComponents>;
|
|
27
|
+
type DuplicateResponse<TComponents extends Block, TFieldPlugins = Record<never, never>> = Omit<DuplicateStoryResponses[200], 'story'> & {
|
|
28
|
+
story?: StoryResult<TComponents, TFieldPlugins>;
|
|
29
29
|
};
|
|
30
|
-
type PublishResponse<TComponents extends Block
|
|
31
|
-
story?: StoryResult<TComponents>;
|
|
30
|
+
type PublishResponse<TComponents extends Block, TFieldPlugins = Record<never, never>> = Omit<PublishStoryResponses[200], 'story'> & {
|
|
31
|
+
story?: StoryResult<TComponents, TFieldPlugins>;
|
|
32
32
|
};
|
|
33
|
-
type CreateBody<TComponents extends Block
|
|
34
|
-
story: StoryCreate<TComponents>;
|
|
33
|
+
type CreateBody<TComponents extends Block, TFieldPlugins = Record<never, never>> = Block extends TComponents ? CreateStoryData['body'] : Omit<UpdateStoryRequest, 'story'> & {
|
|
34
|
+
story: StoryCreate<TComponents, TFieldPlugins>;
|
|
35
35
|
};
|
|
36
|
-
type UpdateBody<TComponents extends Block
|
|
37
|
-
story: StoryUpdate<TComponents>;
|
|
36
|
+
type UpdateBody<TComponents extends Block, TFieldPlugins = Record<never, never>> = Block extends TComponents ? UpdateStoryData['body'] : Omit<UpdateStoryRequest, 'story'> & {
|
|
37
|
+
story: StoryUpdate<TComponents, TFieldPlugins>;
|
|
38
38
|
};
|
|
39
|
-
declare function createStoriesResource<TComponents extends Block = Block, DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>): {
|
|
39
|
+
declare function createStoriesResource<TComponents extends Block = Block, TFieldPlugins = Record<never, never>, DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>): {
|
|
40
40
|
list<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
41
41
|
query?: ListStoriesData["query"];
|
|
42
42
|
signal?: AbortSignal;
|
|
43
43
|
throwOnError?: ThrowOnError;
|
|
44
44
|
fetchOptions?: FetchOptions;
|
|
45
|
-
} & SpaceIdPathOverride): Promise<ApiResponse<ListResponse<TComponents>, ThrowOnError>>;
|
|
45
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<ListResponse<TComponents, TFieldPlugins>, ThrowOnError>>;
|
|
46
46
|
get<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options?: {
|
|
47
47
|
query?: GetStoryByIdData["query"];
|
|
48
48
|
signal?: AbortSignal;
|
|
49
49
|
throwOnError?: ThrowOnError;
|
|
50
50
|
fetchOptions?: FetchOptions;
|
|
51
|
-
} & SpaceIdPathOverride): Promise<ApiResponse<GetResponse<TComponents>, ThrowOnError>>;
|
|
51
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<GetResponse<TComponents, TFieldPlugins>, ThrowOnError>>;
|
|
52
52
|
create<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
53
|
-
body: CreateBody<TComponents>;
|
|
53
|
+
body: CreateBody<TComponents, TFieldPlugins>;
|
|
54
54
|
query?: CreateStoryData["query"];
|
|
55
55
|
signal?: AbortSignal;
|
|
56
56
|
throwOnError?: ThrowOnError;
|
|
57
57
|
fetchOptions?: FetchOptions;
|
|
58
|
-
} & SpaceIdPathOverride): Promise<ApiResponse<CreateResponse<TComponents>, ThrowOnError>>;
|
|
58
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<CreateResponse<TComponents, TFieldPlugins>, ThrowOnError>>;
|
|
59
59
|
update<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options: {
|
|
60
|
-
body: UpdateBody<TComponents>;
|
|
60
|
+
body: UpdateBody<TComponents, TFieldPlugins>;
|
|
61
61
|
query?: UpdateStoryData["query"];
|
|
62
62
|
signal?: AbortSignal;
|
|
63
63
|
throwOnError?: ThrowOnError;
|
|
64
64
|
fetchOptions?: FetchOptions;
|
|
65
|
-
} & SpaceIdPathOverride): Promise<ApiResponse<UpdateResponse<TComponents>, ThrowOnError>>;
|
|
65
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<UpdateResponse<TComponents, TFieldPlugins>, ThrowOnError>>;
|
|
66
66
|
delete<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options?: {
|
|
67
67
|
signal?: AbortSignal;
|
|
68
68
|
throwOnError?: ThrowOnError;
|
|
@@ -74,13 +74,13 @@ declare function createStoriesResource<TComponents extends Block = Block, Defaul
|
|
|
74
74
|
signal?: AbortSignal;
|
|
75
75
|
throwOnError?: ThrowOnError;
|
|
76
76
|
fetchOptions?: FetchOptions;
|
|
77
|
-
} & SpaceIdPathOverride): Promise<ApiResponse<DuplicateResponse<TComponents>, ThrowOnError>>;
|
|
77
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<DuplicateResponse<TComponents, TFieldPlugins>, ThrowOnError>>;
|
|
78
78
|
publish<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options?: {
|
|
79
79
|
query?: PublishStoryData["query"];
|
|
80
80
|
signal?: AbortSignal;
|
|
81
81
|
throwOnError?: ThrowOnError;
|
|
82
82
|
fetchOptions?: FetchOptions;
|
|
83
|
-
} & SpaceIdPathOverride): Promise<ApiResponse<PublishResponse<TComponents>, ThrowOnError>>;
|
|
83
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<PublishResponse<TComponents, TFieldPlugins>, ThrowOnError>>;
|
|
84
84
|
versions<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options?: {
|
|
85
85
|
query?: Omit<ListVersionsData["query"], "model" | "model_id">;
|
|
86
86
|
signal?: AbortSignal;
|
|
@@ -11,58 +11,58 @@ type StoryListQuery = NonNullable<ListStoriesData['query']>;
|
|
|
11
11
|
* Component union, or falls back to the generated `MapiStory` when no components
|
|
12
12
|
* are provided (i.e. `TComponents` is the default base `Component` type).
|
|
13
13
|
*/
|
|
14
|
-
type StoryResult<TComponents extends Block
|
|
15
|
-
type GetResponse<TComponents extends Block
|
|
16
|
-
story?: StoryResult<TComponents>;
|
|
14
|
+
type StoryResult<TComponents extends Block, TFieldPlugins = Record<never, never>> = Block extends TComponents ? MapiStory : MapiStory<TComponents, TFieldPlugins>;
|
|
15
|
+
type GetResponse<TComponents extends Block, TFieldPlugins = Record<never, never>> = Omit<GetStoryByIdResponses[200], 'story'> & {
|
|
16
|
+
story?: StoryResult<TComponents, TFieldPlugins>;
|
|
17
17
|
};
|
|
18
|
-
type ListResponse<TComponents extends Block
|
|
19
|
-
stories?: Array<StoryResult<TComponents>>;
|
|
18
|
+
type ListResponse<TComponents extends Block, TFieldPlugins = Record<never, never>> = Omit<ListStoriesResponses[200], 'stories'> & {
|
|
19
|
+
stories?: Array<StoryResult<TComponents, TFieldPlugins>>;
|
|
20
20
|
};
|
|
21
|
-
type CreateResponse<TComponents extends Block
|
|
22
|
-
story?: StoryResult<TComponents>;
|
|
21
|
+
type CreateResponse<TComponents extends Block, TFieldPlugins = Record<never, never>> = Omit<CreateStoryResponses[201], 'story'> & {
|
|
22
|
+
story?: StoryResult<TComponents, TFieldPlugins>;
|
|
23
23
|
};
|
|
24
|
-
type UpdateResponse<TComponents extends Block
|
|
25
|
-
story?: StoryResult<TComponents>;
|
|
24
|
+
type UpdateResponse<TComponents extends Block, TFieldPlugins = Record<never, never>> = Omit<UpdateStoryResponses[200], 'story'> & {
|
|
25
|
+
story?: StoryResult<TComponents, TFieldPlugins>;
|
|
26
26
|
};
|
|
27
|
-
type DuplicateResponse<TComponents extends Block
|
|
28
|
-
story?: StoryResult<TComponents>;
|
|
27
|
+
type DuplicateResponse<TComponents extends Block, TFieldPlugins = Record<never, never>> = Omit<DuplicateStoryResponses[200], 'story'> & {
|
|
28
|
+
story?: StoryResult<TComponents, TFieldPlugins>;
|
|
29
29
|
};
|
|
30
|
-
type PublishResponse<TComponents extends Block
|
|
31
|
-
story?: StoryResult<TComponents>;
|
|
30
|
+
type PublishResponse<TComponents extends Block, TFieldPlugins = Record<never, never>> = Omit<PublishStoryResponses[200], 'story'> & {
|
|
31
|
+
story?: StoryResult<TComponents, TFieldPlugins>;
|
|
32
32
|
};
|
|
33
|
-
type CreateBody<TComponents extends Block
|
|
34
|
-
story: StoryCreate<TComponents>;
|
|
33
|
+
type CreateBody<TComponents extends Block, TFieldPlugins = Record<never, never>> = Block extends TComponents ? CreateStoryData['body'] : Omit<UpdateStoryRequest, 'story'> & {
|
|
34
|
+
story: StoryCreate<TComponents, TFieldPlugins>;
|
|
35
35
|
};
|
|
36
|
-
type UpdateBody<TComponents extends Block
|
|
37
|
-
story: StoryUpdate<TComponents>;
|
|
36
|
+
type UpdateBody<TComponents extends Block, TFieldPlugins = Record<never, never>> = Block extends TComponents ? UpdateStoryData['body'] : Omit<UpdateStoryRequest, 'story'> & {
|
|
37
|
+
story: StoryUpdate<TComponents, TFieldPlugins>;
|
|
38
38
|
};
|
|
39
|
-
declare function createStoriesResource<TComponents extends Block = Block, DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>): {
|
|
39
|
+
declare function createStoriesResource<TComponents extends Block = Block, TFieldPlugins = Record<never, never>, DefaultThrowOnError extends boolean = false>(deps: MapiResourceDeps<DefaultThrowOnError>): {
|
|
40
40
|
list<ThrowOnError extends boolean = DefaultThrowOnError>(options?: {
|
|
41
41
|
query?: ListStoriesData["query"];
|
|
42
42
|
signal?: AbortSignal;
|
|
43
43
|
throwOnError?: ThrowOnError;
|
|
44
44
|
fetchOptions?: FetchOptions;
|
|
45
|
-
} & SpaceIdPathOverride): Promise<ApiResponse<ListResponse<TComponents>, ThrowOnError>>;
|
|
45
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<ListResponse<TComponents, TFieldPlugins>, ThrowOnError>>;
|
|
46
46
|
get<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options?: {
|
|
47
47
|
query?: GetStoryByIdData["query"];
|
|
48
48
|
signal?: AbortSignal;
|
|
49
49
|
throwOnError?: ThrowOnError;
|
|
50
50
|
fetchOptions?: FetchOptions;
|
|
51
|
-
} & SpaceIdPathOverride): Promise<ApiResponse<GetResponse<TComponents>, ThrowOnError>>;
|
|
51
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<GetResponse<TComponents, TFieldPlugins>, ThrowOnError>>;
|
|
52
52
|
create<ThrowOnError extends boolean = DefaultThrowOnError>(options: {
|
|
53
|
-
body: CreateBody<TComponents>;
|
|
53
|
+
body: CreateBody<TComponents, TFieldPlugins>;
|
|
54
54
|
query?: CreateStoryData["query"];
|
|
55
55
|
signal?: AbortSignal;
|
|
56
56
|
throwOnError?: ThrowOnError;
|
|
57
57
|
fetchOptions?: FetchOptions;
|
|
58
|
-
} & SpaceIdPathOverride): Promise<ApiResponse<CreateResponse<TComponents>, ThrowOnError>>;
|
|
58
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<CreateResponse<TComponents, TFieldPlugins>, ThrowOnError>>;
|
|
59
59
|
update<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options: {
|
|
60
|
-
body: UpdateBody<TComponents>;
|
|
60
|
+
body: UpdateBody<TComponents, TFieldPlugins>;
|
|
61
61
|
query?: UpdateStoryData["query"];
|
|
62
62
|
signal?: AbortSignal;
|
|
63
63
|
throwOnError?: ThrowOnError;
|
|
64
64
|
fetchOptions?: FetchOptions;
|
|
65
|
-
} & SpaceIdPathOverride): Promise<ApiResponse<UpdateResponse<TComponents>, ThrowOnError>>;
|
|
65
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<UpdateResponse<TComponents, TFieldPlugins>, ThrowOnError>>;
|
|
66
66
|
delete<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options?: {
|
|
67
67
|
signal?: AbortSignal;
|
|
68
68
|
throwOnError?: ThrowOnError;
|
|
@@ -74,13 +74,13 @@ declare function createStoriesResource<TComponents extends Block = Block, Defaul
|
|
|
74
74
|
signal?: AbortSignal;
|
|
75
75
|
throwOnError?: ThrowOnError;
|
|
76
76
|
fetchOptions?: FetchOptions;
|
|
77
|
-
} & SpaceIdPathOverride): Promise<ApiResponse<DuplicateResponse<TComponents>, ThrowOnError>>;
|
|
77
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<DuplicateResponse<TComponents, TFieldPlugins>, ThrowOnError>>;
|
|
78
78
|
publish<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options?: {
|
|
79
79
|
query?: PublishStoryData["query"];
|
|
80
80
|
signal?: AbortSignal;
|
|
81
81
|
throwOnError?: ThrowOnError;
|
|
82
82
|
fetchOptions?: FetchOptions;
|
|
83
|
-
} & SpaceIdPathOverride): Promise<ApiResponse<PublishResponse<TComponents>, ThrowOnError>>;
|
|
83
|
+
} & SpaceIdPathOverride): Promise<ApiResponse<PublishResponse<TComponents, TFieldPlugins>, ThrowOnError>>;
|
|
84
84
|
versions<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options?: {
|
|
85
85
|
query?: Omit<ListVersionsData["query"], "model" | "model_id">;
|
|
86
86
|
signal?: AbortSignal;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stories.mjs","names":["mapi.listStories","mapi.getStoryById","mapi.createStory","mapi.updateStory","mapi.deleteStory","mapi.duplicateStory","mapi.publishStory","mapi.listVersions"],"sources":["../../src/resources/stories.ts"],"sourcesContent":["import * as mapi from '../generated/mapi/sdk.gen';\nimport type {\n CreateStoryData,\n CreateStoryResponses,\n DeleteStoryResponses,\n DuplicateStoryData,\n DuplicateStoryResponses,\n GetStoryByIdData,\n GetStoryByIdResponses,\n ListStoriesData,\n ListStoriesResponses,\n ListVersionsData,\n ListVersionsResponses,\n PublishStoryData,\n PublishStoryResponses,\n UpdateStoryData,\n UpdateStoryRequest,\n UpdateStoryResponses,\n} from '../generated/mapi/types.gen';\nimport type { Block as Component } from '../generated/types/block';\nimport type { MapiStory, StoryCreate, StoryUpdate } from '../generated/types/mapi-story';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport type StoryListQuery = NonNullable<ListStoriesData['query']>;\n\n/**\n * Resolves to a component-narrowed story type when `TComponents` is a specific\n * Component union, or falls back to the generated `MapiStory` when no components\n * are provided (i.e. `TComponents` is the default base `Component` type).\n */\ntype StoryResult<TComponents extends Component> =\n Component extends TComponents\n ? MapiStory\n : MapiStory<TComponents>;\n\ntype GetResponse<TComponents extends Component> =\n Omit<GetStoryByIdResponses[200], 'story'> & { story?: StoryResult<TComponents> };\n\ntype ListResponse<TComponents extends Component> =\n Omit<ListStoriesResponses[200], 'stories'> & { stories?: Array<StoryResult<TComponents>> };\n\ntype CreateResponse<TComponents extends Component> =\n Omit<CreateStoryResponses[201], 'story'> & { story?: StoryResult<TComponents> };\n\ntype UpdateResponse<TComponents extends Component> =\n Omit<UpdateStoryResponses[200], 'story'> & { story?: StoryResult<TComponents> };\n\ntype DuplicateResponse<TComponents extends Component> =\n Omit<DuplicateStoryResponses[200], 'story'> & { story?: StoryResult<TComponents> };\n\ntype PublishResponse<TComponents extends Component> =\n Omit<PublishStoryResponses[200], 'story'> & { story?: StoryResult<TComponents> };\n\ntype CreateBody<TComponents extends Component> =\n Component extends TComponents\n ? CreateStoryData['body']\n : Omit<UpdateStoryRequest, 'story'> & {\n story: StoryCreate<TComponents>;\n };\n\ntype UpdateBody<TComponents extends Component> =\n Component extends TComponents\n ? UpdateStoryData['body']\n : Omit<UpdateStoryRequest, 'story'> & {\n story: StoryUpdate<TComponents>;\n };\n\nexport function createStoriesResource<\n TComponents extends Component = Component,\n DefaultThrowOnError extends boolean = false,\n>(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?: ListStoriesData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponse<TComponents>, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponse<TComponents>, ThrowOnError>(() =>\n mapi.listStories({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n get<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options: { query?: GetStoryByIdData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponse<TComponents>, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponse<TComponents>, ThrowOnError>(() =>\n mapi.getStoryById({ client, path: { space_id: resolvedSpaceId, id: storyId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n create<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: CreateBody<TComponents>; query?: CreateStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<CreateResponse<TComponents>, ThrowOnError>> {\n const { body, query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<CreateResponse<TComponents>, ThrowOnError>(() =>\n mapi.createStory({ client, path: { space_id: resolvedSpaceId }, body: body as CreateStoryData['body'], query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n update<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { body: UpdateBody<TComponents>; query?: UpdateStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<UpdateResponse<TComponents>, ThrowOnError>> {\n const { body, query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<UpdateResponse<TComponents>, ThrowOnError>(() =>\n mapi.updateStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, body: body as UpdateStoryData['body'], query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n delete<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<DeleteStoryResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteStoryResponses[200], ThrowOnError>(() =>\n mapi.deleteStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n duplicate<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { body: DuplicateStoryData['body']; query?: DuplicateStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<DuplicateResponse<TComponents>, ThrowOnError>> {\n const { body, query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DuplicateResponse<TComponents>, ThrowOnError>(() =>\n mapi.duplicateStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, body, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n publish<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { query?: PublishStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<PublishResponse<TComponents>, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<PublishResponse<TComponents>, ThrowOnError>(() =>\n mapi.publishStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n versions<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { query?: Omit<ListVersionsData['query'], 'model' | 'model_id'>; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<ListVersionsResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListVersionsResponses[200], ThrowOnError>(() =>\n mapi.listVersions({ client, path: { space_id: resolvedSpaceId }, query: { ...query, model: 'stories', model_id: storyId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"stories.mjs","names":["mapi.listStories","mapi.getStoryById","mapi.createStory","mapi.updateStory","mapi.deleteStory","mapi.duplicateStory","mapi.publishStory","mapi.listVersions"],"sources":["../../src/resources/stories.ts"],"sourcesContent":["import * as mapi from '../generated/mapi/sdk.gen';\nimport type {\n CreateStoryData,\n CreateStoryResponses,\n DeleteStoryResponses,\n DuplicateStoryData,\n DuplicateStoryResponses,\n GetStoryByIdData,\n GetStoryByIdResponses,\n ListStoriesData,\n ListStoriesResponses,\n ListVersionsData,\n ListVersionsResponses,\n PublishStoryData,\n PublishStoryResponses,\n UpdateStoryData,\n UpdateStoryRequest,\n UpdateStoryResponses,\n} from '../generated/mapi/types.gen';\nimport type { Block as Component } from '../generated/types/block';\nimport type { MapiStory, StoryCreate, StoryUpdate } from '../generated/types/mapi-story';\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from '../client';\nimport { resolveSpaceId, type SpaceIdPathOverride } from './shared';\n\nexport type StoryListQuery = NonNullable<ListStoriesData['query']>;\n\n/**\n * Resolves to a component-narrowed story type when `TComponents` is a specific\n * Component union, or falls back to the generated `MapiStory` when no components\n * are provided (i.e. `TComponents` is the default base `Component` type).\n */\ntype StoryResult<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Component extends TComponents\n ? MapiStory\n : MapiStory<TComponents, TFieldPlugins>;\n\ntype GetResponse<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Omit<GetStoryByIdResponses[200], 'story'> & { story?: StoryResult<TComponents, TFieldPlugins> };\n\ntype ListResponse<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Omit<ListStoriesResponses[200], 'stories'> & { stories?: Array<StoryResult<TComponents, TFieldPlugins>> };\n\ntype CreateResponse<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Omit<CreateStoryResponses[201], 'story'> & { story?: StoryResult<TComponents, TFieldPlugins> };\n\ntype UpdateResponse<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Omit<UpdateStoryResponses[200], 'story'> & { story?: StoryResult<TComponents, TFieldPlugins> };\n\ntype DuplicateResponse<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Omit<DuplicateStoryResponses[200], 'story'> & { story?: StoryResult<TComponents, TFieldPlugins> };\n\ntype PublishResponse<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Omit<PublishStoryResponses[200], 'story'> & { story?: StoryResult<TComponents, TFieldPlugins> };\n\ntype CreateBody<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Component extends TComponents\n ? CreateStoryData['body']\n : Omit<UpdateStoryRequest, 'story'> & {\n story: StoryCreate<TComponents, TFieldPlugins>;\n };\n\ntype UpdateBody<TComponents extends Component, TFieldPlugins = Record<never, never>> =\n Component extends TComponents\n ? UpdateStoryData['body']\n : Omit<UpdateStoryRequest, 'story'> & {\n story: StoryUpdate<TComponents, TFieldPlugins>;\n };\n\nexport function createStoriesResource<\n TComponents extends Component = Component,\n TFieldPlugins = Record<never, never>,\n DefaultThrowOnError extends boolean = false,\n>(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?: ListStoriesData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<ListResponse<TComponents, TFieldPlugins>, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListResponse<TComponents, TFieldPlugins>, ThrowOnError>(() =>\n mapi.listStories({ client, path: { space_id: resolvedSpaceId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n get<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options: { query?: GetStoryByIdData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<GetResponse<TComponents, TFieldPlugins>, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<GetResponse<TComponents, TFieldPlugins>, ThrowOnError>(() =>\n mapi.getStoryById({ client, path: { space_id: resolvedSpaceId, id: storyId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n create<ThrowOnError extends boolean = DefaultThrowOnError>(options: { body: CreateBody<TComponents, TFieldPlugins>; query?: CreateStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride): Promise<ApiResponse<CreateResponse<TComponents, TFieldPlugins>, ThrowOnError>> {\n const { body, query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<CreateResponse<TComponents, TFieldPlugins>, ThrowOnError>(() =>\n mapi.createStory({ client, path: { space_id: resolvedSpaceId }, body: body as CreateStoryData['body'], query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n update<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { body: UpdateBody<TComponents, TFieldPlugins>; query?: UpdateStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<UpdateResponse<TComponents, TFieldPlugins>, ThrowOnError>> {\n const { body, query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<UpdateResponse<TComponents, TFieldPlugins>, ThrowOnError>(() =>\n mapi.updateStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, body: body as UpdateStoryData['body'], query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n delete<ThrowOnError extends boolean = DefaultThrowOnError>(storyId: number, options: { signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {}): Promise<ApiResponse<DeleteStoryResponses[200], ThrowOnError>> {\n const { signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DeleteStoryResponses[200], ThrowOnError>(() =>\n mapi.deleteStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n duplicate<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { body: DuplicateStoryData['body']; query?: DuplicateStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride,\n ): Promise<ApiResponse<DuplicateResponse<TComponents, TFieldPlugins>, ThrowOnError>> {\n const { body, query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<DuplicateResponse<TComponents, TFieldPlugins>, ThrowOnError>(() =>\n mapi.duplicateStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, body, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n publish<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { query?: PublishStoryData['query']; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<PublishResponse<TComponents, TFieldPlugins>, ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<PublishResponse<TComponents, TFieldPlugins>, ThrowOnError>(() =>\n mapi.publishStory({ client, path: { space_id: resolvedSpaceId, id: storyId }, query, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n versions<ThrowOnError extends boolean = DefaultThrowOnError>(\n storyId: number,\n options: { query?: Omit<ListVersionsData['query'], 'model' | 'model_id'>; signal?: AbortSignal; throwOnError?: ThrowOnError; fetchOptions?: FetchOptions } & SpaceIdPathOverride = {},\n ): Promise<ApiResponse<ListVersionsResponses[200], ThrowOnError>> {\n const { query, signal, path, throwOnError, fetchOptions } = options;\n const resolvedSpaceId = getSpaceId(path);\n return wrapRequest<ListVersionsResponses[200], ThrowOnError>(() =>\n mapi.listVersions({ client, path: { space_id: resolvedSpaceId }, query: { ...query, model: 'stories', model_id: storyId }, signal, ...(throwOnError === undefined ? {} : { throwOnError }), ...(fetchOptions ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } } : {}) }), throwOnError);\n },\n };\n}\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@storyblok/management-api-client",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "1.0.0-alpha.
|
|
4
|
+
"version": "1.0.0-alpha.5",
|
|
5
5
|
"private": false,
|
|
6
6
|
"description": "Storyblok Management API Client",
|
|
7
7
|
"author": "",
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"dependencies": {
|
|
33
33
|
"async-sema": "^3.1.1",
|
|
34
34
|
"ky": "^1.14.3",
|
|
35
|
-
"@storyblok/region-helper": "1.
|
|
35
|
+
"@storyblok/region-helper": "1.5.0"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
38
|
"@types/node": "^24.1.0",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"tsdown": "^0.20.3",
|
|
43
43
|
"tsx": "^4.20.3",
|
|
44
44
|
"vitest": "^4.1.3",
|
|
45
|
-
"@storyblok/eslint-config": "0.
|
|
45
|
+
"@storyblok/eslint-config": "0.6.0",
|
|
46
46
|
"@storyblok/openapi-codegen": "0.0.1"
|
|
47
47
|
},
|
|
48
48
|
"nx": {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { defineBlock, defineField } from '@storyblok/schema';
|
|
2
|
-
import {
|
|
1
|
+
import { defineBlock, defineField, defineSchema, type Schema as InferSchema } from '@storyblok/schema';
|
|
2
|
+
import { storyblokColorField } from '@storyblok/schema/field-plugins';
|
|
3
|
+
import { createManagementApiClient, type PluginFieldValue, type Story as StoryMapi } from '@storyblok/management-api-client';
|
|
3
4
|
import { describe, expectTypeOf, it } from 'vitest';
|
|
4
5
|
|
|
5
6
|
// Nestable block — not a root story type
|
|
@@ -271,3 +272,39 @@ describe('withTypes() write-body narrowing', () => {
|
|
|
271
272
|
}
|
|
272
273
|
});
|
|
273
274
|
});
|
|
275
|
+
|
|
276
|
+
describe('createManagementApiClient with .withTypes() — field plugins', () => {
|
|
277
|
+
const _themedComponent = defineBlock({
|
|
278
|
+
name: 'themed',
|
|
279
|
+
is_root: true,
|
|
280
|
+
fields: [
|
|
281
|
+
defineField('bg', { type: 'custom', field_type: 'storyblok-colorpicker' }),
|
|
282
|
+
defineField('legacy', { type: 'custom', field_type: 'unregistered-plugin' }),
|
|
283
|
+
],
|
|
284
|
+
});
|
|
285
|
+
const _schema = defineSchema({
|
|
286
|
+
blocks: { themedComponent: _themedComponent },
|
|
287
|
+
fieldPlugins: { storyblokColorField },
|
|
288
|
+
});
|
|
289
|
+
type Schema = InferSchema<typeof _schema>;
|
|
290
|
+
|
|
291
|
+
it('resolves a registered custom field to the validator output merged with the plugin envelope', async () => {
|
|
292
|
+
const client = createManagementApiClient(CLIENT_CONFIG).withTypes<Schema>();
|
|
293
|
+
const result = await client.stories.get(123);
|
|
294
|
+
if (result.data?.story && result.data.story.content.component === 'themed') {
|
|
295
|
+
expectTypeOf<NonNullable<typeof result.data.story.content.bg>>().toEqualTypeOf<{
|
|
296
|
+
color: string;
|
|
297
|
+
plugin: string;
|
|
298
|
+
_uid?: string;
|
|
299
|
+
}>();
|
|
300
|
+
}
|
|
301
|
+
});
|
|
302
|
+
|
|
303
|
+
it('leaves an unregistered custom field as PluginFieldValue', async () => {
|
|
304
|
+
const client = createManagementApiClient(CLIENT_CONFIG).withTypes<Schema>();
|
|
305
|
+
const result = await client.stories.get(123);
|
|
306
|
+
if (result.data?.story && result.data.story.content.component === 'themed') {
|
|
307
|
+
expectTypeOf<NonNullable<typeof result.data.story.content.legacy>>().toEqualTypeOf<PluginFieldValue>();
|
|
308
|
+
}
|
|
309
|
+
});
|
|
310
|
+
});
|