@wix/auto_sdk_stores_collections 1.0.22 → 1.0.23

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.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/stores-catalog-v1-collection-collections.universal.ts","../../src/stores-catalog-v1-collection-collections.http.ts","../../src/stores-catalog-v1-collection-collections.public.ts","../../src/stores-catalog-v1-collection-collections.context.ts"],"sourcesContent":["import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport { queryBuilder } from '@wix/sdk-runtime/query-builder';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, HttpResponse, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixStoresCatalogV1Collection from './stores-catalog-v1-collection-collections.http.js';\n// @ts-ignore\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\n\nexport interface Collection {\n /**\n * Collection ID (generated automatically by the catalog).\n * @minLength 35\n * @maxLength 36\n * @readonly\n */\n _id?: string | null;\n /**\n * Collection name.\n * @minLength 1\n * @maxLength 50\n */\n name?: string | null;\n /**\n * Media items (images, videos etc) associated with this collection. Read only.\n * @readonly\n */\n media?: Media;\n /**\n * Number of products in the collection. Read only.\n * @readonly\n */\n numberOfProducts?: number;\n /**\n * Collection description.\n * @maxLength 600\n */\n description?: string | null;\n /**\n * Collection slug.\n * @minLength 1\n * @maxLength 100\n */\n slug?: string | null;\n /** Collection visibility. Only impacts dynamic pages, no impact on static pages. Default: `true`. */\n visible?: boolean | null;\n /**\n * Date and time the collection was updated.\n * @internal\n * @readonly\n */\n lastUpdated?: Date | null;\n}\n\nexport interface Media {\n /** Primary media (image, video etc) associated with this product. */\n mainMedia?: MediaItem;\n /** Media (images, videos etc) associated with this product. */\n items?: MediaItem[];\n}\n\nexport interface MediaItem extends MediaItemItemOneOf {\n /** Image data (URL, size). */\n image?: MediaItemUrlAndSize;\n /** Video data (URL, size). */\n video?: MediaItemVideo;\n /** Media item thumbnail details. */\n thumbnail?: MediaItemUrlAndSize;\n /** Media item type (image, video, etc.). */\n mediaType?: MediaItemTypeWithLiterals;\n /** Media item title. */\n title?: string;\n /** Media ID (for example, `\"nsplsh_306d666a123a4a74306459~mv2_d_4517_2992_s_4_2.jpg\"`). */\n _id?: string;\n}\n\n/** @oneof */\nexport interface MediaItemItemOneOf {\n /** Image data (URL, size). */\n image?: MediaItemUrlAndSize;\n /** Video data (URL, size). */\n video?: MediaItemVideo;\n}\n\nexport interface MediaItemUrlAndSize {\n /**\n * Media item URL.\n * @format WEB_URL\n */\n url?: string;\n /** Media item width. */\n width?: number;\n /** Media item height. */\n height?: number;\n /** Media format (mp4, png, etc.). */\n format?: string | null;\n /** Alt text. This text will be shown in case the image is not available. */\n altText?: string | null;\n}\n\nexport enum MediaItemType {\n unspecified_media_item_type = 'unspecified_media_item_type',\n /** Image media type. */\n image = 'image',\n /** Video media type. */\n video = 'video',\n /** Audio media type. */\n audio = 'audio',\n /** Document media type. */\n document = 'document',\n /** Zip media type. */\n zip = 'zip',\n}\n\n/** @enumType */\nexport type MediaItemTypeWithLiterals =\n | MediaItemType\n | 'unspecified_media_item_type'\n | 'image'\n | 'video'\n | 'audio'\n | 'document'\n | 'zip';\n\nexport interface MediaItemVideo {\n /** Data (URL, size) about each resolution for which this video is available. */\n files?: MediaItemUrlAndSize[];\n /** ID of an image taken from the video. Used primarily for Wix Search indexing. For example, `\"nsplsh_306d666a123a4a74306459~mv2_d_4517_2992_s_4_2.jpg\"`. */\n stillFrameMediaId?: string;\n}\n\n/**\n * The SEO schema object contains data about different types of meta tags. It makes sure that the information about your page is presented properly to search engines.\n * The search engines use this information for ranking purposes, or to display snippets in the search results.\n * This data will override other sources of tags (for example patterns) and will be included in the <head> section of the HTML document, while not being displayed on the page itself.\n */\nexport interface SeoSchema {\n /** SEO tag information. */\n tags?: Tag[];\n /** SEO general settings. */\n settings?: Settings;\n}\n\nexport interface Keyword {\n /** Keyword value. */\n term?: string;\n /** Whether the keyword is the main focus keyword. */\n isMain?: boolean;\n /**\n * The source that added the keyword terms to the SEO settings.\n * @maxLength 1000\n */\n origin?: string | null;\n}\n\nexport interface Tag {\n /**\n * SEO tag type.\n *\n *\n * Supported values: `title`, `meta`, `script`, `link`.\n */\n type?: string;\n /**\n * A `{\"key\": \"value\"}` pair object where each SEO tag property (`\"name\"`, `\"content\"`, `\"rel\"`, `\"href\"`) contains a value.\n * For example: `{\"name\": \"description\", \"content\": \"the description itself\"}`.\n */\n props?: Record<string, any> | null;\n /** SEO tag metadata. For example, `{\"height\": 300, \"width\": 240}`. */\n meta?: Record<string, any> | null;\n /** SEO tag inner content. For example, `<title> inner content </title>`. */\n children?: string;\n /** Whether the tag is a [custom tag](https://support.wix.com/en/article/adding-additional-meta-tags-to-your-sites-pages). */\n custom?: boolean;\n /** Whether the tag is disabled. If the tag is disabled, people can't find your page when searching for this phrase in search engines. */\n disabled?: boolean;\n}\n\nexport interface Settings {\n /**\n * Whether the [automatical redirect visits](https://support.wix.com/en/article/customizing-your-pages-seo-settings-in-the-seo-panel) from the old URL to the new one is enabled.\n *\n *\n * Default: `false` (automatical redirect is enabled).\n */\n preventAutoRedirect?: boolean;\n /**\n * User-selected keyword terms for a specific page.\n * @maxSize 5\n */\n keywords?: Keyword[];\n}\n\nexport interface QueryCollectionsRequest {\n query?: PlatformQuery;\n}\n\nexport interface PlatformQuery extends PlatformQueryPagingMethodOneOf {\n /** Pointer to page of results using offset. Cannot be used together with `cursorPaging`. */\n paging?: PlatformPaging;\n /** Cursor pointing to page of results. Cannot be used together with `paging`. `cursorPaging.cursor` can not be used together with `filter` or `sort`. */\n cursorPaging?: CursorPaging;\n /** Filter object. */\n filter?: Record<string, any> | null;\n /** Sorting options. For example, `[{\"fieldName\":\"sortField1\"},{\"fieldName\":\"sortField2\",\"direction\":\"DESC\"}]`. */\n sort?: Sorting[];\n}\n\n/** @oneof */\nexport interface PlatformQueryPagingMethodOneOf {\n /** Pointer to page of results using offset. Cannot be used together with `cursorPaging`. */\n paging?: PlatformPaging;\n /** Cursor pointing to page of results. Cannot be used together with `paging`. `cursorPaging.cursor` can not be used together with `filter` or `sort`. */\n cursorPaging?: CursorPaging;\n}\n\nexport interface Sorting {\n /**\n * Name of the field to sort by.\n * @maxLength 512\n */\n fieldName?: string;\n /** Sort order. */\n order?: SortOrderWithLiterals;\n}\n\nexport enum SortOrder {\n ASC = 'ASC',\n DESC = 'DESC',\n}\n\n/** @enumType */\nexport type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';\n\nexport interface PlatformPaging {\n /**\n * Number of items to load.\n * @max 100\n */\n limit?: number | null;\n /** Number of items to skip in the current sort order. */\n offset?: number | null;\n}\n\nexport interface CursorPaging {\n /**\n * Maximum number of items to return in the results.\n * @max 100\n */\n limit?: number | null;\n /**\n * Pointer to the next or previous page in the list of results.\n *\n * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n * Not relevant for the first request.\n * @maxLength 16000\n */\n cursor?: string | null;\n}\n\nexport interface QueryCollectionsResponse {\n /** @maxSize 100 */\n collections?: Collection[];\n metadata?: PlatformPagingMetadata;\n}\n\nexport interface PlatformPagingMetadata {\n /** The number of items returned in this response. */\n count?: number | null;\n /** The offset which was requested. Returned if offset paging was used. */\n offset?: number | null;\n /** The total number of items that match the query. Returned if offset paging was used. */\n total?: number | null;\n /** Cursors to navigate through result pages. Returned if cursor paging was used. */\n cursors?: Cursors;\n}\n\nexport interface Cursors {\n /**\n * Cursor string pointing to the next page in the list of results.\n * @maxLength 16000\n */\n next?: string | null;\n /**\n * Cursor pointing to the previous page in the list of results.\n * @maxLength 16000\n */\n prev?: string | null;\n}\n\nexport interface GetCollectionRequest {\n /** Requested collection ID. */\n _id: string;\n}\n\nexport interface GetCollectionResponse {\n collection?: Collection;\n}\n\nexport interface GetCollectionBySlugRequest {\n /**\n * Slug of the collection to retrieve.\n * @minLength 1\n * @maxLength 100\n */\n slug: string;\n}\n\nexport interface GetCollectionBySlugResponse {\n /** The requested collection. */\n collection?: Collection;\n}\n\n/**\n * Retrieves a list of up to 100 collections, given the provided paging, sorting and filtering.\n * See [Stores Pagination](https://dev.wix.com/api/rest/wix-stores/pagination) for more information.\n * @public\n * @fqn wix.catalog.api.v2.CollectionReadApi.QueryCollections\n */\nexport function queryCollections(): CollectionsQueryBuilder {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[0] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n return queryBuilder<\n Collection,\n 'OFFSET',\n QueryCollectionsRequest,\n QueryCollectionsResponse\n >({\n func: async (payload: QueryCollectionsRequest) => {\n const reqOpts =\n ambassadorWixStoresCatalogV1Collection.queryCollections(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n return result;\n } catch (err) {\n sideEffects?.onError?.(err);\n throw err;\n }\n },\n requestTransformer: (query: QueryCollectionsRequest['query']) => {\n const args = [query, {}] as [QueryCollectionsRequest['query'], {}];\n return renameKeysFromSDKRequestToRESTRequest({\n ...args?.[1],\n query: args?.[0],\n });\n },\n responseTransformer: ({ data }: HttpResponse<QueryCollectionsResponse>) => {\n const transformedData = renameKeysFromRESTResponseToSDKResponse(\n transformPaths(data, [])\n );\n\n return {\n items: transformedData?.collections,\n pagingMetadata: transformedData?.metadata,\n };\n },\n errorTransformer: (err: unknown) => {\n const transformedError = sdkTransformError(err, {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { query: '$[0]' },\n singleArgumentUnchanged: false,\n });\n\n throw transformedError;\n },\n pagingMethod: 'OFFSET',\n transformationPaths: {},\n });\n}\n\ninterface QueryOffsetResult {\n currentPage: number | undefined;\n totalPages: number | undefined;\n totalCount: number | undefined;\n hasNext: () => boolean;\n hasPrev: () => boolean;\n length: number;\n pageSize: number;\n}\n\nexport interface CollectionsQueryResult extends QueryOffsetResult {\n items: Collection[];\n query: CollectionsQueryBuilder;\n next: () => Promise<CollectionsQueryResult>;\n prev: () => Promise<CollectionsQueryResult>;\n}\n\nexport interface CollectionsQueryBuilder {\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n eq: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n ne: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n ge: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n gt: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n le: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n lt: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `string`.\n * @param string - String to compare against. Case-insensitive.\n */\n startsWith: (\n propertyName: '_id' | 'name',\n value: string\n ) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `values`.\n * @param values - List of values to compare against.\n */\n hasSome: (\n propertyName: '_id' | 'name',\n value: any[]\n ) => CollectionsQueryBuilder;\n in: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n exists: (\n propertyName: '_id' | 'name',\n value: boolean\n ) => CollectionsQueryBuilder;\n /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */\n ascending: (\n ...propertyNames: Array<'_id' | 'name'>\n ) => CollectionsQueryBuilder;\n /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */\n descending: (\n ...propertyNames: Array<'_id' | 'name'>\n ) => CollectionsQueryBuilder;\n /** @param limit - Number of items to return, which is also the `pageSize` of the results object. */\n limit: (limit: number) => CollectionsQueryBuilder;\n /** @param skip - Number of items to skip in the query results before returning the results. */\n skip: (skip: number) => CollectionsQueryBuilder;\n find: () => Promise<CollectionsQueryResult>;\n}\n\n/**\n * Retrieves a collection with the provided ID.\n * @param _id - Requested collection ID.\n * @public\n * @requiredField _id\n * @fqn wix.catalog.api.v2.CollectionReadApi.GetCollection\n */\nexport async function getCollection(\n _id: string\n): Promise<\n NonNullablePaths<\n Collection,\n | `media.mainMedia.image.url`\n | `media.mainMedia.image.width`\n | `media.mainMedia.image.height`\n | `media.mainMedia.video.files`\n | `media.mainMedia.video.stillFrameMediaId`\n | `media.mainMedia.mediaType`\n | `media.mainMedia.title`\n | `media.mainMedia._id`\n | `media.items`\n | `numberOfProducts`,\n 5\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ id: _id });\n\n const reqOpts = ambassadorWixStoresCatalogV1Collection.getCollection(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.collection!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { id: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Retrieves a collection with the provided slug.\n * @param slug - Slug of the collection to retrieve.\n * @public\n * @requiredField slug\n * @fqn wix.catalog.api.v2.CollectionReadApi.GetCollectionBySlug\n */\nexport async function getCollectionBySlug(\n slug: string\n): Promise<\n NonNullablePaths<\n GetCollectionBySlugResponse,\n | `collection.media.mainMedia.image.url`\n | `collection.media.mainMedia.image.width`\n | `collection.media.mainMedia.image.height`\n | `collection.media.mainMedia.video.files`\n | `collection.media.mainMedia.video.stillFrameMediaId`\n | `collection.media.mainMedia.mediaType`\n | `collection.media.mainMedia.title`\n | `collection.media.mainMedia._id`\n | `collection.media.items`\n | `collection.numberOfProducts`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ slug: slug });\n\n const reqOpts =\n ambassadorWixStoresCatalogV1Collection.getCollectionBySlug(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { slug: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['slug']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixCatalogApiV2CollectionReadApiUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'api._api_base_domain_': [\n {\n srcPath: '/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'manage._base_domain_': [\n {\n srcPath: '/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/stores-reader/v2/collections',\n destPath: '/v2/collections',\n },\n {\n srcPath: '/stores-reader/v2/inventoryItems',\n destPath: '/v2/inventoryItems',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n _: [\n {\n srcPath: '/stores-reader/v2/inventoryItems',\n destPath: '/v2/inventoryItems',\n },\n {\n srcPath: '/stores-reader/v2/collections',\n destPath: '/v2/collections',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_stores_collections';\n\n/**\n * Retrieves a list of up to 100 collections, given the provided paging, sorting and filtering.\n * See [Stores Pagination](https://dev.wix.com/api/rest/wix-stores/pagination) for more information.\n */\nexport function queryCollections(payload: object): RequestOptionsFactory<any> {\n function __queryCollections({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.stores.catalog.v1.collection',\n method: 'GET' as any,\n methodFqn: 'wix.catalog.api.v2.CollectionReadApi.QueryCollections',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/query',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload, true),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'collections.lastUpdated' }],\n },\n ]),\n fallback: [\n {\n method: 'POST' as any,\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/query',\n data: payload,\n host,\n }),\n data: payload,\n },\n ],\n };\n\n return metadata;\n }\n\n return __queryCollections;\n}\n\n/** Retrieves a collection with the provided ID. */\nexport function getCollection(payload: object): RequestOptionsFactory<any> {\n function __getCollection({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.stores.catalog.v1.collection',\n method: 'GET' as any,\n methodFqn: 'wix.catalog.api.v2.CollectionReadApi.GetCollection',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/{id}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'collection.lastUpdated' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getCollection;\n}\n\n/** Retrieves a collection with the provided slug. */\nexport function getCollectionBySlug(\n payload: object\n): RequestOptionsFactory<any> {\n function __getCollectionBySlug({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.stores.catalog.v1.collection',\n method: 'GET' as any,\n methodFqn: 'wix.catalog.api.v2.CollectionReadApi.GetCollectionBySlug',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/slug/{slug}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'collection.lastUpdated' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getCollectionBySlug;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n Collection,\n CollectionsQueryBuilder,\n GetCollectionBySlugResponse,\n getCollection as universalGetCollection,\n getCollectionBySlug as universalGetCollectionBySlug,\n queryCollections as universalQueryCollections,\n} from './stores-catalog-v1-collection-collections.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/stores' };\n\nexport function queryCollections(\n httpClient: HttpClient\n): QueryCollectionsSignature {\n return () =>\n universalQueryCollections(\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface QueryCollectionsSignature {\n /**\n * Retrieves a list of up to 100 collections, given the provided paging, sorting and filtering.\n * See [Stores Pagination](https://dev.wix.com/api/rest/wix-stores/pagination) for more information.\n */\n (): CollectionsQueryBuilder;\n}\n\nexport function getCollection(httpClient: HttpClient): GetCollectionSignature {\n return (_id: string) =>\n universalGetCollection(\n _id,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetCollectionSignature {\n /**\n * Retrieves a collection with the provided ID.\n * @param - Requested collection ID.\n */\n (_id: string): Promise<\n NonNullablePaths<\n Collection,\n | `media.mainMedia.image.url`\n | `media.mainMedia.image.width`\n | `media.mainMedia.image.height`\n | `media.mainMedia.video.files`\n | `media.mainMedia.video.stillFrameMediaId`\n | `media.mainMedia.mediaType`\n | `media.mainMedia.title`\n | `media.mainMedia._id`\n | `media.items`\n | `numberOfProducts`,\n 5\n >\n >;\n}\n\nexport function getCollectionBySlug(\n httpClient: HttpClient\n): GetCollectionBySlugSignature {\n return (slug: string) =>\n universalGetCollectionBySlug(\n slug,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetCollectionBySlugSignature {\n /**\n * Retrieves a collection with the provided slug.\n * @param - Slug of the collection to retrieve.\n */\n (slug: string): Promise<\n NonNullablePaths<\n GetCollectionBySlugResponse,\n | `collection.media.mainMedia.image.url`\n | `collection.media.mainMedia.image.width`\n | `collection.media.mainMedia.image.height`\n | `collection.media.mainMedia.video.files`\n | `collection.media.mainMedia.video.stillFrameMediaId`\n | `collection.media.mainMedia.mediaType`\n | `collection.media.mainMedia.title`\n | `collection.media.mainMedia._id`\n | `collection.media.items`\n | `collection.numberOfProducts`,\n 6\n >\n >;\n}\n\nexport {\n Collection,\n CollectionsQueryBuilder,\n CollectionsQueryResult,\n CursorPaging,\n Cursors,\n GetCollectionBySlugRequest,\n GetCollectionBySlugResponse,\n GetCollectionRequest,\n GetCollectionResponse,\n Keyword,\n Media,\n MediaItem,\n MediaItemItemOneOf,\n MediaItemType,\n MediaItemUrlAndSize,\n MediaItemVideo,\n PlatformPaging,\n PlatformPagingMetadata,\n PlatformQuery,\n PlatformQueryPagingMethodOneOf,\n QueryCollectionsRequest,\n QueryCollectionsResponse,\n SeoSchema,\n Settings,\n SortOrder,\n Sorting,\n Tag,\n} from './stores-catalog-v1-collection-collections.universal.js';\n","import {\n queryCollections as publicQueryCollections,\n getCollection as publicGetCollection,\n getCollectionBySlug as publicGetCollectionBySlug,\n} from './stores-catalog-v1-collection-collections.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\nexport const queryCollections: MaybeContext<\n BuildRESTFunction<typeof publicQueryCollections> &\n typeof publicQueryCollections\n> = /*#__PURE__*/ createRESTModule(publicQueryCollections);\nexport const getCollection: MaybeContext<\n BuildRESTFunction<typeof publicGetCollection> & typeof publicGetCollection\n> = /*#__PURE__*/ createRESTModule(publicGetCollection);\nexport const getCollectionBySlug: MaybeContext<\n BuildRESTFunction<typeof publicGetCollectionBySlug> &\n typeof publicGetCollectionBySlug\n> = /*#__PURE__*/ createRESTModule(publicGetCollectionBySlug);\n\nexport {\n MediaItemType,\n SortOrder,\n} from './stores-catalog-v1-collection-collections.universal.js';\nexport {\n Collection,\n Media,\n MediaItem,\n MediaItemItemOneOf,\n MediaItemUrlAndSize,\n MediaItemVideo,\n SeoSchema,\n Keyword,\n Tag,\n Settings,\n QueryCollectionsRequest,\n PlatformQuery,\n PlatformQueryPagingMethodOneOf,\n Sorting,\n PlatformPaging,\n CursorPaging,\n QueryCollectionsResponse,\n PlatformPagingMetadata,\n Cursors,\n GetCollectionRequest,\n GetCollectionResponse,\n GetCollectionBySlugRequest,\n GetCollectionBySlugResponse,\n CollectionsQueryResult,\n CollectionsQueryBuilder,\n} from './stores-catalog-v1-collection-collections.universal.js';\nexport {\n MediaItemTypeWithLiterals,\n SortOrderWithLiterals,\n} from './stores-catalog-v1-collection-collections.universal.js';\n"],"mappings":"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","names":["payload","transformPaths","MediaItemType","SortOrder","queryCollections","getCollection","getCollectionBySlug","queryCollections","getCollection","getCollectionBySlug","queryCollections","getCollection","getCollectionBySlug"]}
1
+ {"version":3,"sources":["../../src/stores-catalog-v1-collection-collections.universal.ts","../../src/stores-catalog-v1-collection-collections.http.ts","../../src/stores-catalog-v1-collection-collections.public.ts","../../src/stores-catalog-v1-collection-collections.context.ts"],"sourcesContent":["import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport { queryBuilder } from '@wix/sdk-runtime/query-builder';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, HttpResponse, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixStoresCatalogV1Collection from './stores-catalog-v1-collection-collections.http.js';\n// @ts-ignore\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\n\nexport interface Collection {\n /**\n * Collection ID (generated automatically by the catalog).\n * @minLength 35\n * @maxLength 36\n * @readonly\n */\n _id?: string | null;\n /**\n * Collection name.\n * @minLength 1\n * @maxLength 50\n */\n name?: string | null;\n /**\n * Media items (images, videos etc) associated with this collection. Read only.\n * @readonly\n */\n media?: Media;\n /**\n * Number of products in the collection. Read only.\n * @readonly\n */\n numberOfProducts?: number;\n /**\n * Collection description.\n * @maxLength 600\n */\n description?: string | null;\n /**\n * Collection slug.\n * @minLength 1\n * @maxLength 100\n */\n slug?: string | null;\n /** Collection visibility. Only impacts dynamic pages, no impact on static pages. Default: `true`. */\n visible?: boolean | null;\n /**\n * Date and time the collection was updated.\n * @internal\n * @readonly\n */\n lastUpdated?: Date | null;\n}\n\nexport interface Media {\n /** Primary media (image, video etc) associated with this product. */\n mainMedia?: MediaItem;\n /** Media (images, videos etc) associated with this product. */\n items?: MediaItem[];\n}\n\nexport interface MediaItem extends MediaItemItemOneOf {\n /** Image data (URL, size). */\n image?: MediaItemUrlAndSize;\n /** Video data (URL, size). */\n video?: MediaItemVideo;\n /** Media item thumbnail details. */\n thumbnail?: MediaItemUrlAndSize;\n /** Media item type (image, video, etc.). */\n mediaType?: MediaItemTypeWithLiterals;\n /** Media item title. */\n title?: string;\n /** Media ID (for example, `\"nsplsh_306d666a123a4a74306459~mv2_d_4517_2992_s_4_2.jpg\"`). */\n _id?: string;\n}\n\n/** @oneof */\nexport interface MediaItemItemOneOf {\n /** Image data (URL, size). */\n image?: MediaItemUrlAndSize;\n /** Video data (URL, size). */\n video?: MediaItemVideo;\n}\n\nexport interface MediaItemUrlAndSize {\n /**\n * Media item URL.\n * @format WEB_URL\n */\n url?: string;\n /** Media item width. */\n width?: number;\n /** Media item height. */\n height?: number;\n /** Media format (mp4, png, etc.). */\n format?: string | null;\n /** Alt text. This text will be shown in case the image is not available. */\n altText?: string | null;\n}\n\nexport enum MediaItemType {\n unspecified_media_item_type = 'unspecified_media_item_type',\n /** Image media type. */\n image = 'image',\n /** Video media type. */\n video = 'video',\n /** Audio media type. */\n audio = 'audio',\n /** Document media type. */\n document = 'document',\n /** Zip media type. */\n zip = 'zip',\n}\n\n/** @enumType */\nexport type MediaItemTypeWithLiterals =\n | MediaItemType\n | 'unspecified_media_item_type'\n | 'image'\n | 'video'\n | 'audio'\n | 'document'\n | 'zip';\n\nexport interface MediaItemVideo {\n /** Data (URL, size) about each resolution for which this video is available. */\n files?: MediaItemUrlAndSize[];\n /** ID of an image taken from the video. Used primarily for Wix Search indexing. For example, `\"nsplsh_306d666a123a4a74306459~mv2_d_4517_2992_s_4_2.jpg\"`. */\n stillFrameMediaId?: string;\n}\n\n/**\n * The SEO schema object contains data about different types of meta tags. It makes sure that the information about your page is presented properly to search engines.\n * The search engines use this information for ranking purposes, or to display snippets in the search results.\n * This data will override other sources of tags (for example patterns) and will be included in the <head> section of the HTML document, while not being displayed on the page itself.\n */\nexport interface SeoSchema {\n /** SEO tag information. */\n tags?: Tag[];\n /** SEO general settings. */\n settings?: Settings;\n}\n\nexport interface Keyword {\n /** Keyword value. */\n term?: string;\n /** Whether the keyword is the main focus keyword. */\n isMain?: boolean;\n /**\n * The source that added the keyword terms to the SEO settings.\n * @maxLength 1000\n */\n origin?: string | null;\n}\n\nexport interface Tag {\n /**\n * SEO tag type.\n *\n *\n * Supported values: `title`, `meta`, `script`, `link`.\n */\n type?: string;\n /**\n * A `{\"key\": \"value\"}` pair object where each SEO tag property (`\"name\"`, `\"content\"`, `\"rel\"`, `\"href\"`) contains a value.\n * For example: `{\"name\": \"description\", \"content\": \"the description itself\"}`.\n */\n props?: Record<string, any> | null;\n /** SEO tag metadata. For example, `{\"height\": 300, \"width\": 240}`. */\n meta?: Record<string, any> | null;\n /** SEO tag inner content. For example, `<title> inner content </title>`. */\n children?: string;\n /** Whether the tag is a [custom tag](https://support.wix.com/en/article/adding-additional-meta-tags-to-your-sites-pages). */\n custom?: boolean;\n /** Whether the tag is disabled. If the tag is disabled, people can't find your page when searching for this phrase in search engines. */\n disabled?: boolean;\n}\n\nexport interface Settings {\n /**\n * Whether the [automatical redirect visits](https://support.wix.com/en/article/customizing-your-pages-seo-settings-in-the-seo-panel) from the old URL to the new one is enabled.\n *\n *\n * Default: `false` (automatical redirect is enabled).\n */\n preventAutoRedirect?: boolean;\n /**\n * User-selected keyword terms for a specific page.\n * @maxSize 5\n */\n keywords?: Keyword[];\n}\n\nexport interface QueryCollectionsRequest {\n query?: PlatformQuery;\n}\n\nexport interface PlatformQuery extends PlatformQueryPagingMethodOneOf {\n /** Pointer to page of results using offset. Cannot be used together with `cursorPaging`. */\n paging?: PlatformPaging;\n /** Cursor pointing to page of results. Cannot be used together with `paging`. `cursorPaging.cursor` can not be used together with `filter` or `sort`. */\n cursorPaging?: CursorPaging;\n /** Filter object. */\n filter?: Record<string, any> | null;\n /** Sorting options. For example, `[{\"fieldName\":\"sortField1\"},{\"fieldName\":\"sortField2\",\"direction\":\"DESC\"}]`. */\n sort?: Sorting[];\n}\n\n/** @oneof */\nexport interface PlatformQueryPagingMethodOneOf {\n /** Pointer to page of results using offset. Cannot be used together with `cursorPaging`. */\n paging?: PlatformPaging;\n /** Cursor pointing to page of results. Cannot be used together with `paging`. `cursorPaging.cursor` can not be used together with `filter` or `sort`. */\n cursorPaging?: CursorPaging;\n}\n\nexport interface Sorting {\n /**\n * Name of the field to sort by.\n * @maxLength 512\n */\n fieldName?: string;\n /** Sort order. */\n order?: SortOrderWithLiterals;\n}\n\nexport enum SortOrder {\n ASC = 'ASC',\n DESC = 'DESC',\n}\n\n/** @enumType */\nexport type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';\n\nexport interface PlatformPaging {\n /**\n * Number of items to load.\n * @max 100\n */\n limit?: number | null;\n /** Number of items to skip in the current sort order. */\n offset?: number | null;\n}\n\nexport interface CursorPaging {\n /**\n * Maximum number of items to return in the results.\n * @max 100\n */\n limit?: number | null;\n /**\n * Pointer to the next or previous page in the list of results.\n *\n * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n * Not relevant for the first request.\n * @maxLength 16000\n */\n cursor?: string | null;\n}\n\nexport interface QueryCollectionsResponse {\n /** @maxSize 100 */\n collections?: Collection[];\n metadata?: PlatformPagingMetadata;\n}\n\nexport interface PlatformPagingMetadata {\n /** The number of items returned in this response. */\n count?: number | null;\n /** The offset which was requested. Returned if offset paging was used. */\n offset?: number | null;\n /** The total number of items that match the query. Returned if offset paging was used. */\n total?: number | null;\n /** Cursors to navigate through result pages. Returned if cursor paging was used. */\n cursors?: Cursors;\n}\n\nexport interface Cursors {\n /**\n * Cursor string pointing to the next page in the list of results.\n * @maxLength 16000\n */\n next?: string | null;\n /**\n * Cursor pointing to the previous page in the list of results.\n * @maxLength 16000\n */\n prev?: string | null;\n}\n\nexport interface GetCollectionRequest {\n /** Requested collection ID. */\n _id: string;\n}\n\nexport interface GetCollectionResponse {\n collection?: Collection;\n}\n\nexport interface GetCollectionBySlugRequest {\n /**\n * Slug of the collection to retrieve.\n * @minLength 1\n * @maxLength 100\n */\n slug: string;\n}\n\nexport interface GetCollectionBySlugResponse {\n /** The requested collection. */\n collection?: Collection;\n}\n\n/**\n * Retrieves a list of up to 100 collections, given the provided paging, sorting and filtering.\n * See [Stores Pagination](https://dev.wix.com/api/rest/wix-stores/pagination) for more information.\n * @public\n * @fqn wix.catalog.api.v2.CollectionReadApi.QueryCollections\n */\nexport function queryCollections(): CollectionsQueryBuilder {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[0] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n return queryBuilder<\n Collection,\n 'OFFSET',\n QueryCollectionsRequest,\n QueryCollectionsResponse\n >({\n func: async (payload: QueryCollectionsRequest) => {\n const reqOpts =\n ambassadorWixStoresCatalogV1Collection.queryCollections(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n return result;\n } catch (err) {\n sideEffects?.onError?.(err);\n throw err;\n }\n },\n requestTransformer: (query: QueryCollectionsRequest['query']) => {\n const args = [query, {}] as [QueryCollectionsRequest['query'], {}];\n return renameKeysFromSDKRequestToRESTRequest({\n ...args?.[1],\n query: args?.[0],\n });\n },\n responseTransformer: ({ data }: HttpResponse<QueryCollectionsResponse>) => {\n const transformedData = renameKeysFromRESTResponseToSDKResponse(\n transformPaths(data, [])\n );\n\n return {\n items: transformedData?.collections,\n pagingMetadata: transformedData?.metadata,\n };\n },\n errorTransformer: (err: unknown) => {\n const transformedError = sdkTransformError(err, {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { query: '$[0]' },\n singleArgumentUnchanged: false,\n });\n\n throw transformedError;\n },\n pagingMethod: 'OFFSET',\n transformationPaths: {},\n });\n}\n\ninterface QueryOffsetResult {\n currentPage: number | undefined;\n totalPages: number | undefined;\n totalCount: number | undefined;\n hasNext: () => boolean;\n hasPrev: () => boolean;\n length: number;\n pageSize: number;\n}\n\nexport interface CollectionsQueryResult extends QueryOffsetResult {\n items: Collection[];\n query: CollectionsQueryBuilder;\n next: () => Promise<CollectionsQueryResult>;\n prev: () => Promise<CollectionsQueryResult>;\n}\n\nexport interface CollectionsQueryBuilder {\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n eq: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n ne: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n ge: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n gt: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n le: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n lt: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `string`.\n * @param string - String to compare against. Case-insensitive.\n */\n startsWith: (\n propertyName: '_id' | 'name',\n value: string\n ) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `values`.\n * @param values - List of values to compare against.\n */\n hasSome: (\n propertyName: '_id' | 'name',\n value: any[]\n ) => CollectionsQueryBuilder;\n in: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n exists: (\n propertyName: '_id' | 'name',\n value: boolean\n ) => CollectionsQueryBuilder;\n /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */\n ascending: (\n ...propertyNames: Array<'_id' | 'name'>\n ) => CollectionsQueryBuilder;\n /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */\n descending: (\n ...propertyNames: Array<'_id' | 'name'>\n ) => CollectionsQueryBuilder;\n /** @param limit - Number of items to return, which is also the `pageSize` of the results object. */\n limit: (limit: number) => CollectionsQueryBuilder;\n /** @param skip - Number of items to skip in the query results before returning the results. */\n skip: (skip: number) => CollectionsQueryBuilder;\n find: () => Promise<CollectionsQueryResult>;\n}\n\n/**\n * @hidden\n * @fqn wix.catalog.api.v2.CollectionReadApi.QueryCollections\n * @requiredField query\n */\nexport async function typedQueryCollections(\n query: PlatformQuery\n): Promise<\n NonNullablePaths<\n QueryCollectionsResponse,\n | `collections`\n | `collections.${number}.media.mainMedia.mediaType`\n | `collections.${number}.media.mainMedia.title`\n | `collections.${number}.media.mainMedia._id`\n | `collections.${number}.numberOfProducts`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ query: query });\n\n const reqOpts =\n ambassadorWixStoresCatalogV1Collection.queryCollections(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { query: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['query']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Retrieves a collection with the provided ID.\n * @param _id - Requested collection ID.\n * @public\n * @requiredField _id\n * @fqn wix.catalog.api.v2.CollectionReadApi.GetCollection\n */\nexport async function getCollection(\n _id: string\n): Promise<\n NonNullablePaths<\n Collection,\n | `media.mainMedia.image.url`\n | `media.mainMedia.image.width`\n | `media.mainMedia.image.height`\n | `media.mainMedia.video.files`\n | `media.mainMedia.video.stillFrameMediaId`\n | `media.mainMedia.mediaType`\n | `media.mainMedia.title`\n | `media.mainMedia._id`\n | `media.items`\n | `numberOfProducts`,\n 5\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ id: _id });\n\n const reqOpts = ambassadorWixStoresCatalogV1Collection.getCollection(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.collection!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { id: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Retrieves a collection with the provided slug.\n * @param slug - Slug of the collection to retrieve.\n * @public\n * @requiredField slug\n * @fqn wix.catalog.api.v2.CollectionReadApi.GetCollectionBySlug\n */\nexport async function getCollectionBySlug(\n slug: string\n): Promise<\n NonNullablePaths<\n GetCollectionBySlugResponse,\n | `collection.media.mainMedia.image.url`\n | `collection.media.mainMedia.image.width`\n | `collection.media.mainMedia.image.height`\n | `collection.media.mainMedia.video.files`\n | `collection.media.mainMedia.video.stillFrameMediaId`\n | `collection.media.mainMedia.mediaType`\n | `collection.media.mainMedia.title`\n | `collection.media.mainMedia._id`\n | `collection.media.items`\n | `collection.numberOfProducts`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ slug: slug });\n\n const reqOpts =\n ambassadorWixStoresCatalogV1Collection.getCollectionBySlug(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { slug: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['slug']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixCatalogApiV2CollectionReadApiUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'api._api_base_domain_': [\n {\n srcPath: '/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'manage._base_domain_': [\n {\n srcPath: '/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/stores-reader/v2/collections',\n destPath: '/v2/collections',\n },\n {\n srcPath: '/stores-reader/v2/inventoryItems',\n destPath: '/v2/inventoryItems',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n _: [\n {\n srcPath: '/stores-reader/v2/inventoryItems',\n destPath: '/v2/inventoryItems',\n },\n {\n srcPath: '/stores-reader/v2/collections',\n destPath: '/v2/collections',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_stores_collections';\n\n/**\n * Retrieves a list of up to 100 collections, given the provided paging, sorting and filtering.\n * See [Stores Pagination](https://dev.wix.com/api/rest/wix-stores/pagination) for more information.\n */\nexport function queryCollections(payload: object): RequestOptionsFactory<any> {\n function __queryCollections({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.stores.catalog.v1.collection',\n method: 'GET' as any,\n methodFqn: 'wix.catalog.api.v2.CollectionReadApi.QueryCollections',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/query',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload, true),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'collections.lastUpdated' }],\n },\n ]),\n fallback: [\n {\n method: 'POST' as any,\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/query',\n data: payload,\n host,\n }),\n data: payload,\n },\n ],\n };\n\n return metadata;\n }\n\n return __queryCollections;\n}\n\n/** Retrieves a collection with the provided ID. */\nexport function getCollection(payload: object): RequestOptionsFactory<any> {\n function __getCollection({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.stores.catalog.v1.collection',\n method: 'GET' as any,\n methodFqn: 'wix.catalog.api.v2.CollectionReadApi.GetCollection',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/{id}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'collection.lastUpdated' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getCollection;\n}\n\n/** Retrieves a collection with the provided slug. */\nexport function getCollectionBySlug(\n payload: object\n): RequestOptionsFactory<any> {\n function __getCollectionBySlug({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.stores.catalog.v1.collection',\n method: 'GET' as any,\n methodFqn: 'wix.catalog.api.v2.CollectionReadApi.GetCollectionBySlug',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/slug/{slug}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'collection.lastUpdated' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getCollectionBySlug;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n Collection,\n CollectionsQueryBuilder,\n GetCollectionBySlugResponse,\n PlatformQuery,\n QueryCollectionsResponse,\n getCollection as universalGetCollection,\n getCollectionBySlug as universalGetCollectionBySlug,\n queryCollections as universalQueryCollections,\n typedQueryCollections as universalTypedQueryCollections,\n} from './stores-catalog-v1-collection-collections.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/stores' };\n\nexport function queryCollections(\n httpClient: HttpClient\n): QueryCollectionsSignature {\n return () =>\n universalQueryCollections(\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface QueryCollectionsSignature {\n /**\n * Retrieves a list of up to 100 collections, given the provided paging, sorting and filtering.\n * See [Stores Pagination](https://dev.wix.com/api/rest/wix-stores/pagination) for more information.\n */\n (): CollectionsQueryBuilder;\n}\n\nexport function typedQueryCollections(\n httpClient: HttpClient\n): TypedQueryCollectionsSignature {\n return (query: PlatformQuery) =>\n universalTypedQueryCollections(\n query,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface TypedQueryCollectionsSignature {\n /** */\n (query: PlatformQuery): Promise<\n NonNullablePaths<\n QueryCollectionsResponse,\n | `collections`\n | `collections.${number}.media.mainMedia.mediaType`\n | `collections.${number}.media.mainMedia.title`\n | `collections.${number}.media.mainMedia._id`\n | `collections.${number}.numberOfProducts`,\n 6\n >\n >;\n}\n\nexport function getCollection(httpClient: HttpClient): GetCollectionSignature {\n return (_id: string) =>\n universalGetCollection(\n _id,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetCollectionSignature {\n /**\n * Retrieves a collection with the provided ID.\n * @param - Requested collection ID.\n */\n (_id: string): Promise<\n NonNullablePaths<\n Collection,\n | `media.mainMedia.image.url`\n | `media.mainMedia.image.width`\n | `media.mainMedia.image.height`\n | `media.mainMedia.video.files`\n | `media.mainMedia.video.stillFrameMediaId`\n | `media.mainMedia.mediaType`\n | `media.mainMedia.title`\n | `media.mainMedia._id`\n | `media.items`\n | `numberOfProducts`,\n 5\n >\n >;\n}\n\nexport function getCollectionBySlug(\n httpClient: HttpClient\n): GetCollectionBySlugSignature {\n return (slug: string) =>\n universalGetCollectionBySlug(\n slug,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetCollectionBySlugSignature {\n /**\n * Retrieves a collection with the provided slug.\n * @param - Slug of the collection to retrieve.\n */\n (slug: string): Promise<\n NonNullablePaths<\n GetCollectionBySlugResponse,\n | `collection.media.mainMedia.image.url`\n | `collection.media.mainMedia.image.width`\n | `collection.media.mainMedia.image.height`\n | `collection.media.mainMedia.video.files`\n | `collection.media.mainMedia.video.stillFrameMediaId`\n | `collection.media.mainMedia.mediaType`\n | `collection.media.mainMedia.title`\n | `collection.media.mainMedia._id`\n | `collection.media.items`\n | `collection.numberOfProducts`,\n 6\n >\n >;\n}\n\nexport {\n Collection,\n CollectionsQueryBuilder,\n CollectionsQueryResult,\n CursorPaging,\n Cursors,\n GetCollectionBySlugRequest,\n GetCollectionBySlugResponse,\n GetCollectionRequest,\n GetCollectionResponse,\n Keyword,\n Media,\n MediaItem,\n MediaItemItemOneOf,\n MediaItemType,\n MediaItemUrlAndSize,\n MediaItemVideo,\n PlatformPaging,\n PlatformPagingMetadata,\n PlatformQuery,\n PlatformQueryPagingMethodOneOf,\n QueryCollectionsRequest,\n QueryCollectionsResponse,\n SeoSchema,\n Settings,\n SortOrder,\n Sorting,\n Tag,\n} from './stores-catalog-v1-collection-collections.universal.js';\n","import {\n queryCollections as publicQueryCollections,\n typedQueryCollections as publicTypedQueryCollections,\n getCollection as publicGetCollection,\n getCollectionBySlug as publicGetCollectionBySlug,\n} from './stores-catalog-v1-collection-collections.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\nimport { HttpClient } from '@wix/sdk-types';\nimport { createQueryOverloadRouter } from '@wix/sdk-runtime/query-method-router';\nimport {\n CollectionsQueryBuilder,\n PlatformQuery,\n typedQueryCollections as universalTypedQueryCollections,\n} from './stores-catalog-v1-collection-collections.universal.js';\n\nfunction customQueryCollections(httpClient: HttpClient) {\n const router = createQueryOverloadRouter({\n builderQueryFunction: () => publicQueryCollections(httpClient)(),\n typedQueryFunction: (query: PlatformQuery) =>\n publicTypedQueryCollections(httpClient)(query),\n hasOptionsParameter: false,\n });\n\n function overloadedQuery(): CollectionsQueryBuilder;\n function overloadedQuery(\n query: PlatformQuery\n ): ReturnType<typeof universalTypedQueryCollections>;\n function overloadedQuery(query?: PlatformQuery): any {\n return router(...arguments);\n }\n\n return overloadedQuery;\n}\n\nexport const getCollection: MaybeContext<\n BuildRESTFunction<typeof publicGetCollection> & typeof publicGetCollection\n> = /*#__PURE__*/ createRESTModule(publicGetCollection);\nexport const getCollectionBySlug: MaybeContext<\n BuildRESTFunction<typeof publicGetCollectionBySlug> &\n typeof publicGetCollectionBySlug\n> = /*#__PURE__*/ createRESTModule(publicGetCollectionBySlug);\nexport const queryCollections: MaybeContext<\n BuildRESTFunction<typeof customQueryCollections> &\n typeof customQueryCollections\n> = /*#__PURE__*/ createRESTModule(customQueryCollections);\n\nexport {\n MediaItemType,\n SortOrder,\n} from './stores-catalog-v1-collection-collections.universal.js';\nexport {\n Collection,\n Media,\n MediaItem,\n MediaItemItemOneOf,\n MediaItemUrlAndSize,\n MediaItemVideo,\n SeoSchema,\n Keyword,\n Tag,\n Settings,\n QueryCollectionsRequest,\n PlatformQuery,\n PlatformQueryPagingMethodOneOf,\n Sorting,\n PlatformPaging,\n CursorPaging,\n QueryCollectionsResponse,\n PlatformPagingMetadata,\n Cursors,\n GetCollectionRequest,\n GetCollectionResponse,\n GetCollectionBySlugRequest,\n GetCollectionBySlugResponse,\n CollectionsQueryResult,\n CollectionsQueryBuilder,\n} from './stores-catalog-v1-collection-collections.universal.js';\nexport {\n MediaItemTypeWithLiterals,\n SortOrderWithLiterals,\n} from './stores-catalog-v1-collection-collections.universal.js';\n"],"mappings":";AAAA,SAAS,kBAAkB,yBAAyB;AACpD,SAAS,oBAAoB;AAC7B;AAAA,EACE;AAAA,EACA;AAAA,OACK;;;ACLP,SAAS,yBAAyB;AAClC,SAAS,4CAA4C;AACrD,SAAS,sBAAsB;AAC/B,SAAS,kBAAkB;AAI3B,SAAS,2CACP,MACA;AACA,QAAM,mBAAmB;AAAA,IACvB,yBAAyB;AAAA,MACvB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,wBAAwB;AAAA,MACtB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,mBAAmB;AAAA,MACjB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,MACA;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,qBAAqB;AAAA,MACnB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,wBAAwB;AAAA,MACtB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,wBAAwB;AAAA,MACtB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,kBAAkB;AAAA,MAChB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,GAAG;AAAA,MACD;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,MACA;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,EACF;AAEA,SAAO,WAAW,OAAO,OAAO,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAC7D;AAEA,IAAM,eAAe;AAMd,SAAS,iBAAiB,SAA6C;AAC5E,WAAS,mBAAmB,EAAE,KAAK,GAAQ;AACzC,UAAM,WAAW;AAAA,MACf,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,WAAW;AAAA,MACX,aAAa;AAAA,MACb,kBAAkB;AAAA,QAChB,wBAAwB;AAAA,MAC1B;AAAA,MACA,KAAK,2CAA2C;AAAA,QAC9C,WAAW;AAAA,QACX,MAAM;AAAA,QACN;AAAA,MACF,CAAC;AAAA,MACD,QAAQ,kBAAkB,SAAS,IAAI;AAAA,MACvC,mBAAmB,CAACA,aAClB,eAAeA,UAAS;AAAA,QACtB;AAAA,UACE,aAAa;AAAA,UACb,OAAO,CAAC,EAAE,MAAM,0BAA0B,CAAC;AAAA,QAC7C;AAAA,MACF,CAAC;AAAA,MACH,UAAU;AAAA,QACR;AAAA,UACE,QAAQ;AAAA,UACR,KAAK,2CAA2C;AAAA,YAC9C,WAAW;AAAA,YACX,MAAM;AAAA,YACN;AAAA,UACF,CAAC;AAAA,UACD,MAAM;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAGO,SAAS,cAAc,SAA6C;AACzE,WAAS,gBAAgB,EAAE,KAAK,GAAQ;AACtC,UAAM,WAAW;AAAA,MACf,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,WAAW;AAAA,MACX,aAAa;AAAA,MACb,kBAAkB;AAAA,QAChB,wBAAwB;AAAA,MAC1B;AAAA,MACA,KAAK,2CAA2C;AAAA,QAC9C,WAAW;AAAA,QACX,MAAM;AAAA,QACN;AAAA,MACF,CAAC;AAAA,MACD,QAAQ,kBAAkB,OAAO;AAAA,MACjC,mBAAmB,CAACA,aAClB,eAAeA,UAAS;AAAA,QACtB;AAAA,UACE,aAAa;AAAA,UACb,OAAO,CAAC,EAAE,MAAM,yBAAyB,CAAC;AAAA,QAC5C;AAAA,MACF,CAAC;AAAA,IACL;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAGO,SAAS,oBACd,SAC4B;AAC5B,WAAS,sBAAsB,EAAE,KAAK,GAAQ;AAC5C,UAAM,WAAW;AAAA,MACf,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,WAAW;AAAA,MACX,aAAa;AAAA,MACb,kBAAkB;AAAA,QAChB,wBAAwB;AAAA,MAC1B;AAAA,MACA,KAAK,2CAA2C;AAAA,QAC9C,WAAW;AAAA,QACX,MAAM;AAAA,QACN;AAAA,MACF,CAAC;AAAA,MACD,QAAQ,kBAAkB,OAAO;AAAA,MACjC,mBAAmB,CAACA,aAClB,eAAeA,UAAS;AAAA,QACtB;AAAA,UACE,aAAa;AAAA,UACb,OAAO,CAAC,EAAE,MAAM,yBAAyB,CAAC;AAAA,QAC5C;AAAA,MACF,CAAC;AAAA,IACL;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;;;AD/KA,SAAS,kBAAAC,uBAAsB;AA6FxB,IAAK,gBAAL,kBAAKC,mBAAL;AACL,EAAAA,eAAA,iCAA8B;AAE9B,EAAAA,eAAA,WAAQ;AAER,EAAAA,eAAA,WAAQ;AAER,EAAAA,eAAA,WAAQ;AAER,EAAAA,eAAA,cAAW;AAEX,EAAAA,eAAA,SAAM;AAXI,SAAAA;AAAA,GAAA;AA8HL,IAAK,YAAL,kBAAKC,eAAL;AACL,EAAAA,WAAA,SAAM;AACN,EAAAA,WAAA,UAAO;AAFG,SAAAA;AAAA,GAAA;AA6FL,SAASC,oBAA4C;AAE1D,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,SAAO,aAKL;AAAA,IACA,MAAM,OAAO,YAAqC;AAChD,YAAM,UACmC,iBAAiB,OAAO;AAEjE,mBAAa,aAAa;AAC1B,UAAI;AACF,cAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,qBAAa,YAAY,MAAM;AAC/B,eAAO;AAAA,MACT,SAAS,KAAK;AACZ,qBAAa,UAAU,GAAG;AAC1B,cAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,oBAAoB,CAAC,UAA4C;AAC/D,YAAM,OAAO,CAAC,OAAO,CAAC,CAAC;AACvB,aAAO,sCAAsC;AAAA,QAC3C,GAAG,OAAO,CAAC;AAAA,QACX,OAAO,OAAO,CAAC;AAAA,MACjB,CAAC;AAAA,IACH;AAAA,IACA,qBAAqB,CAAC,EAAE,KAAK,MAA8C;AACzE,YAAM,kBAAkB;AAAA,QACtBH,gBAAe,MAAM,CAAC,CAAC;AAAA,MACzB;AAEA,aAAO;AAAA,QACL,OAAO,iBAAiB;AAAA,QACxB,gBAAgB,iBAAiB;AAAA,MACnC;AAAA,IACF;AAAA,IACA,kBAAkB,CAAC,QAAiB;AAClC,YAAM,mBAAmB,kBAAkB,KAAK;AAAA,QAC9C,wBAAwB,CAAC;AAAA,QACzB,0BAA0B,EAAE,OAAO,OAAO;AAAA,QAC1C,yBAAyB;AAAA,MAC3B,CAAC;AAED,YAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,IACd,qBAAqB,CAAC;AAAA,EACxB,CAAC;AACH;AAmFA,eAAsB,sBACpB,OAWA;AAEA,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,QAAM,UAAU,sCAAsC,EAAE,MAAa,CAAC;AAEtE,QAAM,UACmC,iBAAiB,OAAO;AAEjE,eAAa,aAAa;AAC1B,MAAI;AACF,UAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,iBAAa,YAAY,MAAM;AAE/B,WAAO,wCAAwC,OAAO,IAAI;AAAA,EAC5D,SAAS,KAAU;AACjB,UAAM,mBAAmB;AAAA,MACvB;AAAA,MACA;AAAA,QACE,wBAAwB,CAAC;AAAA,QACzB,0BAA0B,EAAE,OAAO,OAAO;AAAA,QAC1C,yBAAyB;AAAA,MAC3B;AAAA,MACA,CAAC,OAAO;AAAA,IACV;AACA,iBAAa,UAAU,GAAG;AAE1B,UAAM;AAAA,EACR;AACF;AASA,eAAsBI,eACpB,KAgBA;AAEA,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,QAAM,UAAU,sCAAsC,EAAE,IAAI,IAAI,CAAC;AAEjE,QAAM,UAAiD,cAAc,OAAO;AAE5E,eAAa,aAAa;AAC1B,MAAI;AACF,UAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,iBAAa,YAAY,MAAM;AAE/B,WAAO,wCAAwC,OAAO,IAAI,GAAG;AAAA,EAC/D,SAAS,KAAU;AACjB,UAAM,mBAAmB;AAAA,MACvB;AAAA,MACA;AAAA,QACE,wBAAwB,CAAC;AAAA,QACzB,0BAA0B,EAAE,IAAI,OAAO;AAAA,QACvC,yBAAyB;AAAA,MAC3B;AAAA,MACA,CAAC,KAAK;AAAA,IACR;AACA,iBAAa,UAAU,GAAG;AAE1B,UAAM;AAAA,EACR;AACF;AASA,eAAsBC,qBACpB,MAgBA;AAEA,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,QAAM,UAAU,sCAAsC,EAAE,KAAW,CAAC;AAEpE,QAAM,UACmC,oBAAoB,OAAO;AAEpE,eAAa,aAAa;AAC1B,MAAI;AACF,UAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,iBAAa,YAAY,MAAM;AAE/B,WAAO,wCAAwC,OAAO,IAAI;AAAA,EAC5D,SAAS,KAAU;AACjB,UAAM,mBAAmB;AAAA,MACvB;AAAA,MACA;AAAA,QACE,wBAAwB,CAAC;AAAA,QACzB,0BAA0B,EAAE,MAAM,OAAO;AAAA,QACzC,yBAAyB;AAAA,MAC3B;AAAA,MACA,CAAC,MAAM;AAAA,IACT;AACA,iBAAa,UAAU,GAAG;AAE1B,UAAM;AAAA,EACR;AACF;;;AE5lBO,SAASC,kBACd,YAC2B;AAC3B,SAAO,MACLA;AAAA;AAAA,IAEE,EAAE,WAAW;AAAA,EACf;AACJ;AAUO,SAASC,uBACd,YACgC;AAChC,SAAO,CAAC,UACN;AAAA,IACE;AAAA;AAAA,IAEA,EAAE,WAAW;AAAA,EACf;AACJ;AAiBO,SAASC,eAAc,YAAgD;AAC5E,SAAO,CAAC,QACNA;AAAA,IACE;AAAA;AAAA,IAEA,EAAE,WAAW;AAAA,EACf;AACJ;AAyBO,SAASC,qBACd,YAC8B;AAC9B,SAAO,CAAC,SACNA;AAAA,IACE;AAAA;AAAA,IAEA,EAAE,WAAW;AAAA,EACf;AACJ;;;AC9FA,SAAS,wBAAwB;AAGjC,SAAS,iCAAiC;AAO1C,SAAS,uBAAuB,YAAwB;AACtD,QAAM,SAAS,0BAA0B;AAAA,IACvC,sBAAsB,MAAMC,kBAAuB,UAAU,EAAE;AAAA,IAC/D,oBAAoB,CAAC,UACnBC,uBAA4B,UAAU,EAAE,KAAK;AAAA,IAC/C,qBAAqB;AAAA,EACvB,CAAC;AAMD,WAAS,gBAAgB,OAA4B;AACnD,WAAO,OAAO,GAAG,SAAS;AAAA,EAC5B;AAEA,SAAO;AACT;AAEO,IAAMC,iBAEK,iCAAiBA,cAAmB;AAC/C,IAAMC,uBAGK,iCAAiBA,oBAAyB;AACrD,IAAMH,oBAGK,iCAAiB,sBAAsB;","names":["payload","transformPaths","MediaItemType","SortOrder","queryCollections","getCollection","getCollectionBySlug","queryCollections","typedQueryCollections","getCollection","getCollectionBySlug","queryCollections","typedQueryCollections","getCollection","getCollectionBySlug"]}
@@ -331,6 +331,12 @@ interface CollectionsQueryBuilder {
331
331
  skip: (skip: number) => CollectionsQueryBuilder;
332
332
  find: () => Promise<CollectionsQueryResult>;
333
333
  }
334
+ /**
335
+ * @hidden
336
+ * @fqn wix.catalog.api.v2.CollectionReadApi.QueryCollections
337
+ * @requiredField query
338
+ */
339
+ declare function typedQueryCollections(query: PlatformQuery): Promise<NonNullablePaths<QueryCollectionsResponse, `collections` | `collections.${number}.media.mainMedia.mediaType` | `collections.${number}.media.mainMedia.title` | `collections.${number}.media.mainMedia._id` | `collections.${number}.numberOfProducts`, 6>>;
334
340
  /**
335
341
  * Retrieves a collection with the provided ID.
336
342
  * @param _id - Requested collection ID.
@@ -348,4 +354,4 @@ declare function getCollection(_id: string): Promise<NonNullablePaths<Collection
348
354
  */
349
355
  declare function getCollectionBySlug(slug: string): Promise<NonNullablePaths<GetCollectionBySlugResponse, `collection.media.mainMedia.image.url` | `collection.media.mainMedia.image.width` | `collection.media.mainMedia.image.height` | `collection.media.mainMedia.video.files` | `collection.media.mainMedia.video.stillFrameMediaId` | `collection.media.mainMedia.mediaType` | `collection.media.mainMedia.title` | `collection.media.mainMedia._id` | `collection.media.items` | `collection.numberOfProducts`, 6>>;
350
356
 
351
- export { type Collection, type CollectionsQueryBuilder, type CollectionsQueryResult, type CursorPaging, type Cursors, type GetCollectionBySlugRequest, type GetCollectionBySlugResponse, type GetCollectionRequest, type GetCollectionResponse, type Keyword, type Media, type MediaItem, type MediaItemItemOneOf, MediaItemType, type MediaItemTypeWithLiterals, type MediaItemUrlAndSize, type MediaItemVideo, type PlatformPaging, type PlatformPagingMetadata, type PlatformQuery, type PlatformQueryPagingMethodOneOf, type QueryCollectionsRequest, type QueryCollectionsResponse, type SeoSchema, type Settings, SortOrder, type SortOrderWithLiterals, type Sorting, type Tag, getCollection, getCollectionBySlug, queryCollections };
357
+ export { type Collection, type CollectionsQueryBuilder, type CollectionsQueryResult, type CursorPaging, type Cursors, type GetCollectionBySlugRequest, type GetCollectionBySlugResponse, type GetCollectionRequest, type GetCollectionResponse, type Keyword, type Media, type MediaItem, type MediaItemItemOneOf, MediaItemType, type MediaItemTypeWithLiterals, type MediaItemUrlAndSize, type MediaItemVideo, type PlatformPaging, type PlatformPagingMetadata, type PlatformQuery, type PlatformQueryPagingMethodOneOf, type QueryCollectionsRequest, type QueryCollectionsResponse, type SeoSchema, type Settings, SortOrder, type SortOrderWithLiterals, type Sorting, type Tag, getCollection, getCollectionBySlug, queryCollections, typedQueryCollections };
@@ -225,6 +225,29 @@ function queryCollections2() {
225
225
  transformationPaths: {}
226
226
  });
227
227
  }
228
+ async function typedQueryCollections(query) {
229
+ const { httpClient, sideEffects } = arguments[1];
230
+ const payload = renameKeysFromSDKRequestToRESTRequest({ query });
231
+ const reqOpts = queryCollections(payload);
232
+ sideEffects?.onSiteCall?.();
233
+ try {
234
+ const result = await httpClient.request(reqOpts);
235
+ sideEffects?.onSuccess?.(result);
236
+ return renameKeysFromRESTResponseToSDKResponse(result.data);
237
+ } catch (err) {
238
+ const transformedError = sdkTransformError(
239
+ err,
240
+ {
241
+ spreadPathsToArguments: {},
242
+ explicitPathsToArguments: { query: "$[0]" },
243
+ singleArgumentUnchanged: false
244
+ },
245
+ ["query"]
246
+ );
247
+ sideEffects?.onError?.(err);
248
+ throw transformedError;
249
+ }
250
+ }
228
251
  async function getCollection2(_id) {
229
252
  const { httpClient, sideEffects } = arguments[1];
230
253
  const payload = renameKeysFromSDKRequestToRESTRequest({ id: _id });
@@ -276,6 +299,7 @@ export {
276
299
  SortOrder,
277
300
  getCollection2 as getCollection,
278
301
  getCollectionBySlug2 as getCollectionBySlug,
279
- queryCollections2 as queryCollections
302
+ queryCollections2 as queryCollections,
303
+ typedQueryCollections
280
304
  };
281
305
  //# sourceMappingURL=index.typings.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/stores-catalog-v1-collection-collections.universal.ts","../../src/stores-catalog-v1-collection-collections.http.ts"],"sourcesContent":["import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport { queryBuilder } from '@wix/sdk-runtime/query-builder';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, HttpResponse, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixStoresCatalogV1Collection from './stores-catalog-v1-collection-collections.http.js';\n// @ts-ignore\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\n\nexport interface Collection {\n /**\n * Collection ID (generated automatically by the catalog).\n * @minLength 35\n * @maxLength 36\n * @readonly\n */\n _id?: string | null;\n /**\n * Collection name.\n * @minLength 1\n * @maxLength 50\n */\n name?: string | null;\n /**\n * Media items (images, videos etc) associated with this collection. Read only.\n * @readonly\n */\n media?: Media;\n /**\n * Number of products in the collection. Read only.\n * @readonly\n */\n numberOfProducts?: number;\n /**\n * Collection description.\n * @maxLength 600\n */\n description?: string | null;\n /**\n * Collection slug.\n * @minLength 1\n * @maxLength 100\n */\n slug?: string | null;\n /** Collection visibility. Only impacts dynamic pages, no impact on static pages. Default: `true`. */\n visible?: boolean | null;\n /**\n * Date and time the collection was updated.\n * @internal\n * @readonly\n */\n lastUpdated?: Date | null;\n}\n\nexport interface Media {\n /** Primary media (image, video etc) associated with this product. */\n mainMedia?: MediaItem;\n /** Media (images, videos etc) associated with this product. */\n items?: MediaItem[];\n}\n\nexport interface MediaItem extends MediaItemItemOneOf {\n /** Image data (URL, size). */\n image?: MediaItemUrlAndSize;\n /** Video data (URL, size). */\n video?: MediaItemVideo;\n /** Media item thumbnail details. */\n thumbnail?: MediaItemUrlAndSize;\n /** Media item type (image, video, etc.). */\n mediaType?: MediaItemTypeWithLiterals;\n /** Media item title. */\n title?: string;\n /** Media ID (for example, `\"nsplsh_306d666a123a4a74306459~mv2_d_4517_2992_s_4_2.jpg\"`). */\n _id?: string;\n}\n\n/** @oneof */\nexport interface MediaItemItemOneOf {\n /** Image data (URL, size). */\n image?: MediaItemUrlAndSize;\n /** Video data (URL, size). */\n video?: MediaItemVideo;\n}\n\nexport interface MediaItemUrlAndSize {\n /**\n * Media item URL.\n * @format WEB_URL\n */\n url?: string;\n /** Media item width. */\n width?: number;\n /** Media item height. */\n height?: number;\n /** Media format (mp4, png, etc.). */\n format?: string | null;\n /** Alt text. This text will be shown in case the image is not available. */\n altText?: string | null;\n}\n\nexport enum MediaItemType {\n unspecified_media_item_type = 'unspecified_media_item_type',\n /** Image media type. */\n image = 'image',\n /** Video media type. */\n video = 'video',\n /** Audio media type. */\n audio = 'audio',\n /** Document media type. */\n document = 'document',\n /** Zip media type. */\n zip = 'zip',\n}\n\n/** @enumType */\nexport type MediaItemTypeWithLiterals =\n | MediaItemType\n | 'unspecified_media_item_type'\n | 'image'\n | 'video'\n | 'audio'\n | 'document'\n | 'zip';\n\nexport interface MediaItemVideo {\n /** Data (URL, size) about each resolution for which this video is available. */\n files?: MediaItemUrlAndSize[];\n /** ID of an image taken from the video. Used primarily for Wix Search indexing. For example, `\"nsplsh_306d666a123a4a74306459~mv2_d_4517_2992_s_4_2.jpg\"`. */\n stillFrameMediaId?: string;\n}\n\n/**\n * The SEO schema object contains data about different types of meta tags. It makes sure that the information about your page is presented properly to search engines.\n * The search engines use this information for ranking purposes, or to display snippets in the search results.\n * This data will override other sources of tags (for example patterns) and will be included in the <head> section of the HTML document, while not being displayed on the page itself.\n */\nexport interface SeoSchema {\n /** SEO tag information. */\n tags?: Tag[];\n /** SEO general settings. */\n settings?: Settings;\n}\n\nexport interface Keyword {\n /** Keyword value. */\n term?: string;\n /** Whether the keyword is the main focus keyword. */\n isMain?: boolean;\n /**\n * The source that added the keyword terms to the SEO settings.\n * @maxLength 1000\n */\n origin?: string | null;\n}\n\nexport interface Tag {\n /**\n * SEO tag type.\n *\n *\n * Supported values: `title`, `meta`, `script`, `link`.\n */\n type?: string;\n /**\n * A `{\"key\": \"value\"}` pair object where each SEO tag property (`\"name\"`, `\"content\"`, `\"rel\"`, `\"href\"`) contains a value.\n * For example: `{\"name\": \"description\", \"content\": \"the description itself\"}`.\n */\n props?: Record<string, any> | null;\n /** SEO tag metadata. For example, `{\"height\": 300, \"width\": 240}`. */\n meta?: Record<string, any> | null;\n /** SEO tag inner content. For example, `<title> inner content </title>`. */\n children?: string;\n /** Whether the tag is a [custom tag](https://support.wix.com/en/article/adding-additional-meta-tags-to-your-sites-pages). */\n custom?: boolean;\n /** Whether the tag is disabled. If the tag is disabled, people can't find your page when searching for this phrase in search engines. */\n disabled?: boolean;\n}\n\nexport interface Settings {\n /**\n * Whether the [automatical redirect visits](https://support.wix.com/en/article/customizing-your-pages-seo-settings-in-the-seo-panel) from the old URL to the new one is enabled.\n *\n *\n * Default: `false` (automatical redirect is enabled).\n */\n preventAutoRedirect?: boolean;\n /**\n * User-selected keyword terms for a specific page.\n * @maxSize 5\n */\n keywords?: Keyword[];\n}\n\nexport interface QueryCollectionsRequest {\n query?: PlatformQuery;\n}\n\nexport interface PlatformQuery extends PlatformQueryPagingMethodOneOf {\n /** Pointer to page of results using offset. Cannot be used together with `cursorPaging`. */\n paging?: PlatformPaging;\n /** Cursor pointing to page of results. Cannot be used together with `paging`. `cursorPaging.cursor` can not be used together with `filter` or `sort`. */\n cursorPaging?: CursorPaging;\n /** Filter object. */\n filter?: Record<string, any> | null;\n /** Sorting options. For example, `[{\"fieldName\":\"sortField1\"},{\"fieldName\":\"sortField2\",\"direction\":\"DESC\"}]`. */\n sort?: Sorting[];\n}\n\n/** @oneof */\nexport interface PlatformQueryPagingMethodOneOf {\n /** Pointer to page of results using offset. Cannot be used together with `cursorPaging`. */\n paging?: PlatformPaging;\n /** Cursor pointing to page of results. Cannot be used together with `paging`. `cursorPaging.cursor` can not be used together with `filter` or `sort`. */\n cursorPaging?: CursorPaging;\n}\n\nexport interface Sorting {\n /**\n * Name of the field to sort by.\n * @maxLength 512\n */\n fieldName?: string;\n /** Sort order. */\n order?: SortOrderWithLiterals;\n}\n\nexport enum SortOrder {\n ASC = 'ASC',\n DESC = 'DESC',\n}\n\n/** @enumType */\nexport type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';\n\nexport interface PlatformPaging {\n /**\n * Number of items to load.\n * @max 100\n */\n limit?: number | null;\n /** Number of items to skip in the current sort order. */\n offset?: number | null;\n}\n\nexport interface CursorPaging {\n /**\n * Maximum number of items to return in the results.\n * @max 100\n */\n limit?: number | null;\n /**\n * Pointer to the next or previous page in the list of results.\n *\n * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n * Not relevant for the first request.\n * @maxLength 16000\n */\n cursor?: string | null;\n}\n\nexport interface QueryCollectionsResponse {\n /** @maxSize 100 */\n collections?: Collection[];\n metadata?: PlatformPagingMetadata;\n}\n\nexport interface PlatformPagingMetadata {\n /** The number of items returned in this response. */\n count?: number | null;\n /** The offset which was requested. Returned if offset paging was used. */\n offset?: number | null;\n /** The total number of items that match the query. Returned if offset paging was used. */\n total?: number | null;\n /** Cursors to navigate through result pages. Returned if cursor paging was used. */\n cursors?: Cursors;\n}\n\nexport interface Cursors {\n /**\n * Cursor string pointing to the next page in the list of results.\n * @maxLength 16000\n */\n next?: string | null;\n /**\n * Cursor pointing to the previous page in the list of results.\n * @maxLength 16000\n */\n prev?: string | null;\n}\n\nexport interface GetCollectionRequest {\n /** Requested collection ID. */\n _id: string;\n}\n\nexport interface GetCollectionResponse {\n collection?: Collection;\n}\n\nexport interface GetCollectionBySlugRequest {\n /**\n * Slug of the collection to retrieve.\n * @minLength 1\n * @maxLength 100\n */\n slug: string;\n}\n\nexport interface GetCollectionBySlugResponse {\n /** The requested collection. */\n collection?: Collection;\n}\n\n/**\n * Retrieves a list of up to 100 collections, given the provided paging, sorting and filtering.\n * See [Stores Pagination](https://dev.wix.com/api/rest/wix-stores/pagination) for more information.\n * @public\n * @fqn wix.catalog.api.v2.CollectionReadApi.QueryCollections\n */\nexport function queryCollections(): CollectionsQueryBuilder {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[0] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n return queryBuilder<\n Collection,\n 'OFFSET',\n QueryCollectionsRequest,\n QueryCollectionsResponse\n >({\n func: async (payload: QueryCollectionsRequest) => {\n const reqOpts =\n ambassadorWixStoresCatalogV1Collection.queryCollections(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n return result;\n } catch (err) {\n sideEffects?.onError?.(err);\n throw err;\n }\n },\n requestTransformer: (query: QueryCollectionsRequest['query']) => {\n const args = [query, {}] as [QueryCollectionsRequest['query'], {}];\n return renameKeysFromSDKRequestToRESTRequest({\n ...args?.[1],\n query: args?.[0],\n });\n },\n responseTransformer: ({ data }: HttpResponse<QueryCollectionsResponse>) => {\n const transformedData = renameKeysFromRESTResponseToSDKResponse(\n transformPaths(data, [])\n );\n\n return {\n items: transformedData?.collections,\n pagingMetadata: transformedData?.metadata,\n };\n },\n errorTransformer: (err: unknown) => {\n const transformedError = sdkTransformError(err, {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { query: '$[0]' },\n singleArgumentUnchanged: false,\n });\n\n throw transformedError;\n },\n pagingMethod: 'OFFSET',\n transformationPaths: {},\n });\n}\n\ninterface QueryOffsetResult {\n currentPage: number | undefined;\n totalPages: number | undefined;\n totalCount: number | undefined;\n hasNext: () => boolean;\n hasPrev: () => boolean;\n length: number;\n pageSize: number;\n}\n\nexport interface CollectionsQueryResult extends QueryOffsetResult {\n items: Collection[];\n query: CollectionsQueryBuilder;\n next: () => Promise<CollectionsQueryResult>;\n prev: () => Promise<CollectionsQueryResult>;\n}\n\nexport interface CollectionsQueryBuilder {\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n eq: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n ne: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n ge: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n gt: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n le: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n lt: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `string`.\n * @param string - String to compare against. Case-insensitive.\n */\n startsWith: (\n propertyName: '_id' | 'name',\n value: string\n ) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `values`.\n * @param values - List of values to compare against.\n */\n hasSome: (\n propertyName: '_id' | 'name',\n value: any[]\n ) => CollectionsQueryBuilder;\n in: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n exists: (\n propertyName: '_id' | 'name',\n value: boolean\n ) => CollectionsQueryBuilder;\n /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */\n ascending: (\n ...propertyNames: Array<'_id' | 'name'>\n ) => CollectionsQueryBuilder;\n /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */\n descending: (\n ...propertyNames: Array<'_id' | 'name'>\n ) => CollectionsQueryBuilder;\n /** @param limit - Number of items to return, which is also the `pageSize` of the results object. */\n limit: (limit: number) => CollectionsQueryBuilder;\n /** @param skip - Number of items to skip in the query results before returning the results. */\n skip: (skip: number) => CollectionsQueryBuilder;\n find: () => Promise<CollectionsQueryResult>;\n}\n\n/**\n * Retrieves a collection with the provided ID.\n * @param _id - Requested collection ID.\n * @public\n * @requiredField _id\n * @fqn wix.catalog.api.v2.CollectionReadApi.GetCollection\n */\nexport async function getCollection(\n _id: string\n): Promise<\n NonNullablePaths<\n Collection,\n | `media.mainMedia.image.url`\n | `media.mainMedia.image.width`\n | `media.mainMedia.image.height`\n | `media.mainMedia.video.files`\n | `media.mainMedia.video.stillFrameMediaId`\n | `media.mainMedia.mediaType`\n | `media.mainMedia.title`\n | `media.mainMedia._id`\n | `media.items`\n | `numberOfProducts`,\n 5\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ id: _id });\n\n const reqOpts = ambassadorWixStoresCatalogV1Collection.getCollection(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.collection!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { id: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Retrieves a collection with the provided slug.\n * @param slug - Slug of the collection to retrieve.\n * @public\n * @requiredField slug\n * @fqn wix.catalog.api.v2.CollectionReadApi.GetCollectionBySlug\n */\nexport async function getCollectionBySlug(\n slug: string\n): Promise<\n NonNullablePaths<\n GetCollectionBySlugResponse,\n | `collection.media.mainMedia.image.url`\n | `collection.media.mainMedia.image.width`\n | `collection.media.mainMedia.image.height`\n | `collection.media.mainMedia.video.files`\n | `collection.media.mainMedia.video.stillFrameMediaId`\n | `collection.media.mainMedia.mediaType`\n | `collection.media.mainMedia.title`\n | `collection.media.mainMedia._id`\n | `collection.media.items`\n | `collection.numberOfProducts`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ slug: slug });\n\n const reqOpts =\n ambassadorWixStoresCatalogV1Collection.getCollectionBySlug(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { slug: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['slug']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixCatalogApiV2CollectionReadApiUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'api._api_base_domain_': [\n {\n srcPath: '/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'manage._base_domain_': [\n {\n srcPath: '/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/stores-reader/v2/collections',\n destPath: '/v2/collections',\n },\n {\n srcPath: '/stores-reader/v2/inventoryItems',\n destPath: '/v2/inventoryItems',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n _: [\n {\n srcPath: '/stores-reader/v2/inventoryItems',\n destPath: '/v2/inventoryItems',\n },\n {\n srcPath: '/stores-reader/v2/collections',\n destPath: '/v2/collections',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_stores_collections';\n\n/**\n * Retrieves a list of up to 100 collections, given the provided paging, sorting and filtering.\n * See [Stores Pagination](https://dev.wix.com/api/rest/wix-stores/pagination) for more information.\n */\nexport function queryCollections(payload: object): RequestOptionsFactory<any> {\n function __queryCollections({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.stores.catalog.v1.collection',\n method: 'GET' as any,\n methodFqn: 'wix.catalog.api.v2.CollectionReadApi.QueryCollections',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/query',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload, true),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'collections.lastUpdated' }],\n },\n ]),\n fallback: [\n {\n method: 'POST' as any,\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/query',\n data: payload,\n host,\n }),\n data: payload,\n },\n ],\n };\n\n return metadata;\n }\n\n return __queryCollections;\n}\n\n/** Retrieves a collection with the provided ID. */\nexport function getCollection(payload: object): RequestOptionsFactory<any> {\n function __getCollection({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.stores.catalog.v1.collection',\n method: 'GET' as any,\n methodFqn: 'wix.catalog.api.v2.CollectionReadApi.GetCollection',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/{id}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'collection.lastUpdated' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getCollection;\n}\n\n/** Retrieves a collection with the provided slug. */\nexport function getCollectionBySlug(\n payload: object\n): RequestOptionsFactory<any> {\n function __getCollectionBySlug({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.stores.catalog.v1.collection',\n method: 'GET' as any,\n methodFqn: 'wix.catalog.api.v2.CollectionReadApi.GetCollectionBySlug',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/slug/{slug}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'collection.lastUpdated' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getCollectionBySlug;\n}\n"],"mappings":"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","names":["payload","transformPaths","MediaItemType","SortOrder","queryCollections","getCollection","getCollectionBySlug"]}
1
+ {"version":3,"sources":["../../src/stores-catalog-v1-collection-collections.universal.ts","../../src/stores-catalog-v1-collection-collections.http.ts"],"sourcesContent":["import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport { queryBuilder } from '@wix/sdk-runtime/query-builder';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, HttpResponse, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixStoresCatalogV1Collection from './stores-catalog-v1-collection-collections.http.js';\n// @ts-ignore\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\n\nexport interface Collection {\n /**\n * Collection ID (generated automatically by the catalog).\n * @minLength 35\n * @maxLength 36\n * @readonly\n */\n _id?: string | null;\n /**\n * Collection name.\n * @minLength 1\n * @maxLength 50\n */\n name?: string | null;\n /**\n * Media items (images, videos etc) associated with this collection. Read only.\n * @readonly\n */\n media?: Media;\n /**\n * Number of products in the collection. Read only.\n * @readonly\n */\n numberOfProducts?: number;\n /**\n * Collection description.\n * @maxLength 600\n */\n description?: string | null;\n /**\n * Collection slug.\n * @minLength 1\n * @maxLength 100\n */\n slug?: string | null;\n /** Collection visibility. Only impacts dynamic pages, no impact on static pages. Default: `true`. */\n visible?: boolean | null;\n /**\n * Date and time the collection was updated.\n * @internal\n * @readonly\n */\n lastUpdated?: Date | null;\n}\n\nexport interface Media {\n /** Primary media (image, video etc) associated with this product. */\n mainMedia?: MediaItem;\n /** Media (images, videos etc) associated with this product. */\n items?: MediaItem[];\n}\n\nexport interface MediaItem extends MediaItemItemOneOf {\n /** Image data (URL, size). */\n image?: MediaItemUrlAndSize;\n /** Video data (URL, size). */\n video?: MediaItemVideo;\n /** Media item thumbnail details. */\n thumbnail?: MediaItemUrlAndSize;\n /** Media item type (image, video, etc.). */\n mediaType?: MediaItemTypeWithLiterals;\n /** Media item title. */\n title?: string;\n /** Media ID (for example, `\"nsplsh_306d666a123a4a74306459~mv2_d_4517_2992_s_4_2.jpg\"`). */\n _id?: string;\n}\n\n/** @oneof */\nexport interface MediaItemItemOneOf {\n /** Image data (URL, size). */\n image?: MediaItemUrlAndSize;\n /** Video data (URL, size). */\n video?: MediaItemVideo;\n}\n\nexport interface MediaItemUrlAndSize {\n /**\n * Media item URL.\n * @format WEB_URL\n */\n url?: string;\n /** Media item width. */\n width?: number;\n /** Media item height. */\n height?: number;\n /** Media format (mp4, png, etc.). */\n format?: string | null;\n /** Alt text. This text will be shown in case the image is not available. */\n altText?: string | null;\n}\n\nexport enum MediaItemType {\n unspecified_media_item_type = 'unspecified_media_item_type',\n /** Image media type. */\n image = 'image',\n /** Video media type. */\n video = 'video',\n /** Audio media type. */\n audio = 'audio',\n /** Document media type. */\n document = 'document',\n /** Zip media type. */\n zip = 'zip',\n}\n\n/** @enumType */\nexport type MediaItemTypeWithLiterals =\n | MediaItemType\n | 'unspecified_media_item_type'\n | 'image'\n | 'video'\n | 'audio'\n | 'document'\n | 'zip';\n\nexport interface MediaItemVideo {\n /** Data (URL, size) about each resolution for which this video is available. */\n files?: MediaItemUrlAndSize[];\n /** ID of an image taken from the video. Used primarily for Wix Search indexing. For example, `\"nsplsh_306d666a123a4a74306459~mv2_d_4517_2992_s_4_2.jpg\"`. */\n stillFrameMediaId?: string;\n}\n\n/**\n * The SEO schema object contains data about different types of meta tags. It makes sure that the information about your page is presented properly to search engines.\n * The search engines use this information for ranking purposes, or to display snippets in the search results.\n * This data will override other sources of tags (for example patterns) and will be included in the <head> section of the HTML document, while not being displayed on the page itself.\n */\nexport interface SeoSchema {\n /** SEO tag information. */\n tags?: Tag[];\n /** SEO general settings. */\n settings?: Settings;\n}\n\nexport interface Keyword {\n /** Keyword value. */\n term?: string;\n /** Whether the keyword is the main focus keyword. */\n isMain?: boolean;\n /**\n * The source that added the keyword terms to the SEO settings.\n * @maxLength 1000\n */\n origin?: string | null;\n}\n\nexport interface Tag {\n /**\n * SEO tag type.\n *\n *\n * Supported values: `title`, `meta`, `script`, `link`.\n */\n type?: string;\n /**\n * A `{\"key\": \"value\"}` pair object where each SEO tag property (`\"name\"`, `\"content\"`, `\"rel\"`, `\"href\"`) contains a value.\n * For example: `{\"name\": \"description\", \"content\": \"the description itself\"}`.\n */\n props?: Record<string, any> | null;\n /** SEO tag metadata. For example, `{\"height\": 300, \"width\": 240}`. */\n meta?: Record<string, any> | null;\n /** SEO tag inner content. For example, `<title> inner content </title>`. */\n children?: string;\n /** Whether the tag is a [custom tag](https://support.wix.com/en/article/adding-additional-meta-tags-to-your-sites-pages). */\n custom?: boolean;\n /** Whether the tag is disabled. If the tag is disabled, people can't find your page when searching for this phrase in search engines. */\n disabled?: boolean;\n}\n\nexport interface Settings {\n /**\n * Whether the [automatical redirect visits](https://support.wix.com/en/article/customizing-your-pages-seo-settings-in-the-seo-panel) from the old URL to the new one is enabled.\n *\n *\n * Default: `false` (automatical redirect is enabled).\n */\n preventAutoRedirect?: boolean;\n /**\n * User-selected keyword terms for a specific page.\n * @maxSize 5\n */\n keywords?: Keyword[];\n}\n\nexport interface QueryCollectionsRequest {\n query?: PlatformQuery;\n}\n\nexport interface PlatformQuery extends PlatformQueryPagingMethodOneOf {\n /** Pointer to page of results using offset. Cannot be used together with `cursorPaging`. */\n paging?: PlatformPaging;\n /** Cursor pointing to page of results. Cannot be used together with `paging`. `cursorPaging.cursor` can not be used together with `filter` or `sort`. */\n cursorPaging?: CursorPaging;\n /** Filter object. */\n filter?: Record<string, any> | null;\n /** Sorting options. For example, `[{\"fieldName\":\"sortField1\"},{\"fieldName\":\"sortField2\",\"direction\":\"DESC\"}]`. */\n sort?: Sorting[];\n}\n\n/** @oneof */\nexport interface PlatformQueryPagingMethodOneOf {\n /** Pointer to page of results using offset. Cannot be used together with `cursorPaging`. */\n paging?: PlatformPaging;\n /** Cursor pointing to page of results. Cannot be used together with `paging`. `cursorPaging.cursor` can not be used together with `filter` or `sort`. */\n cursorPaging?: CursorPaging;\n}\n\nexport interface Sorting {\n /**\n * Name of the field to sort by.\n * @maxLength 512\n */\n fieldName?: string;\n /** Sort order. */\n order?: SortOrderWithLiterals;\n}\n\nexport enum SortOrder {\n ASC = 'ASC',\n DESC = 'DESC',\n}\n\n/** @enumType */\nexport type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';\n\nexport interface PlatformPaging {\n /**\n * Number of items to load.\n * @max 100\n */\n limit?: number | null;\n /** Number of items to skip in the current sort order. */\n offset?: number | null;\n}\n\nexport interface CursorPaging {\n /**\n * Maximum number of items to return in the results.\n * @max 100\n */\n limit?: number | null;\n /**\n * Pointer to the next or previous page in the list of results.\n *\n * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.\n * Not relevant for the first request.\n * @maxLength 16000\n */\n cursor?: string | null;\n}\n\nexport interface QueryCollectionsResponse {\n /** @maxSize 100 */\n collections?: Collection[];\n metadata?: PlatformPagingMetadata;\n}\n\nexport interface PlatformPagingMetadata {\n /** The number of items returned in this response. */\n count?: number | null;\n /** The offset which was requested. Returned if offset paging was used. */\n offset?: number | null;\n /** The total number of items that match the query. Returned if offset paging was used. */\n total?: number | null;\n /** Cursors to navigate through result pages. Returned if cursor paging was used. */\n cursors?: Cursors;\n}\n\nexport interface Cursors {\n /**\n * Cursor string pointing to the next page in the list of results.\n * @maxLength 16000\n */\n next?: string | null;\n /**\n * Cursor pointing to the previous page in the list of results.\n * @maxLength 16000\n */\n prev?: string | null;\n}\n\nexport interface GetCollectionRequest {\n /** Requested collection ID. */\n _id: string;\n}\n\nexport interface GetCollectionResponse {\n collection?: Collection;\n}\n\nexport interface GetCollectionBySlugRequest {\n /**\n * Slug of the collection to retrieve.\n * @minLength 1\n * @maxLength 100\n */\n slug: string;\n}\n\nexport interface GetCollectionBySlugResponse {\n /** The requested collection. */\n collection?: Collection;\n}\n\n/**\n * Retrieves a list of up to 100 collections, given the provided paging, sorting and filtering.\n * See [Stores Pagination](https://dev.wix.com/api/rest/wix-stores/pagination) for more information.\n * @public\n * @fqn wix.catalog.api.v2.CollectionReadApi.QueryCollections\n */\nexport function queryCollections(): CollectionsQueryBuilder {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[0] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n return queryBuilder<\n Collection,\n 'OFFSET',\n QueryCollectionsRequest,\n QueryCollectionsResponse\n >({\n func: async (payload: QueryCollectionsRequest) => {\n const reqOpts =\n ambassadorWixStoresCatalogV1Collection.queryCollections(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n return result;\n } catch (err) {\n sideEffects?.onError?.(err);\n throw err;\n }\n },\n requestTransformer: (query: QueryCollectionsRequest['query']) => {\n const args = [query, {}] as [QueryCollectionsRequest['query'], {}];\n return renameKeysFromSDKRequestToRESTRequest({\n ...args?.[1],\n query: args?.[0],\n });\n },\n responseTransformer: ({ data }: HttpResponse<QueryCollectionsResponse>) => {\n const transformedData = renameKeysFromRESTResponseToSDKResponse(\n transformPaths(data, [])\n );\n\n return {\n items: transformedData?.collections,\n pagingMetadata: transformedData?.metadata,\n };\n },\n errorTransformer: (err: unknown) => {\n const transformedError = sdkTransformError(err, {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { query: '$[0]' },\n singleArgumentUnchanged: false,\n });\n\n throw transformedError;\n },\n pagingMethod: 'OFFSET',\n transformationPaths: {},\n });\n}\n\ninterface QueryOffsetResult {\n currentPage: number | undefined;\n totalPages: number | undefined;\n totalCount: number | undefined;\n hasNext: () => boolean;\n hasPrev: () => boolean;\n length: number;\n pageSize: number;\n}\n\nexport interface CollectionsQueryResult extends QueryOffsetResult {\n items: Collection[];\n query: CollectionsQueryBuilder;\n next: () => Promise<CollectionsQueryResult>;\n prev: () => Promise<CollectionsQueryResult>;\n}\n\nexport interface CollectionsQueryBuilder {\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n eq: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n ne: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n ge: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n gt: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n le: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `value`.\n * @param value - Value to compare against.\n */\n lt: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `string`.\n * @param string - String to compare against. Case-insensitive.\n */\n startsWith: (\n propertyName: '_id' | 'name',\n value: string\n ) => CollectionsQueryBuilder;\n /** @param propertyName - Property whose value is compared with `values`.\n * @param values - List of values to compare against.\n */\n hasSome: (\n propertyName: '_id' | 'name',\n value: any[]\n ) => CollectionsQueryBuilder;\n in: (propertyName: '_id' | 'name', value: any) => CollectionsQueryBuilder;\n exists: (\n propertyName: '_id' | 'name',\n value: boolean\n ) => CollectionsQueryBuilder;\n /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */\n ascending: (\n ...propertyNames: Array<'_id' | 'name'>\n ) => CollectionsQueryBuilder;\n /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */\n descending: (\n ...propertyNames: Array<'_id' | 'name'>\n ) => CollectionsQueryBuilder;\n /** @param limit - Number of items to return, which is also the `pageSize` of the results object. */\n limit: (limit: number) => CollectionsQueryBuilder;\n /** @param skip - Number of items to skip in the query results before returning the results. */\n skip: (skip: number) => CollectionsQueryBuilder;\n find: () => Promise<CollectionsQueryResult>;\n}\n\n/**\n * @hidden\n * @fqn wix.catalog.api.v2.CollectionReadApi.QueryCollections\n * @requiredField query\n */\nexport async function typedQueryCollections(\n query: PlatformQuery\n): Promise<\n NonNullablePaths<\n QueryCollectionsResponse,\n | `collections`\n | `collections.${number}.media.mainMedia.mediaType`\n | `collections.${number}.media.mainMedia.title`\n | `collections.${number}.media.mainMedia._id`\n | `collections.${number}.numberOfProducts`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ query: query });\n\n const reqOpts =\n ambassadorWixStoresCatalogV1Collection.queryCollections(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { query: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['query']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Retrieves a collection with the provided ID.\n * @param _id - Requested collection ID.\n * @public\n * @requiredField _id\n * @fqn wix.catalog.api.v2.CollectionReadApi.GetCollection\n */\nexport async function getCollection(\n _id: string\n): Promise<\n NonNullablePaths<\n Collection,\n | `media.mainMedia.image.url`\n | `media.mainMedia.image.width`\n | `media.mainMedia.image.height`\n | `media.mainMedia.video.files`\n | `media.mainMedia.video.stillFrameMediaId`\n | `media.mainMedia.mediaType`\n | `media.mainMedia.title`\n | `media.mainMedia._id`\n | `media.items`\n | `numberOfProducts`,\n 5\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ id: _id });\n\n const reqOpts = ambassadorWixStoresCatalogV1Collection.getCollection(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)?.collection!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { id: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Retrieves a collection with the provided slug.\n * @param slug - Slug of the collection to retrieve.\n * @public\n * @requiredField slug\n * @fqn wix.catalog.api.v2.CollectionReadApi.GetCollectionBySlug\n */\nexport async function getCollectionBySlug(\n slug: string\n): Promise<\n NonNullablePaths<\n GetCollectionBySlugResponse,\n | `collection.media.mainMedia.image.url`\n | `collection.media.mainMedia.image.width`\n | `collection.media.mainMedia.image.height`\n | `collection.media.mainMedia.video.files`\n | `collection.media.mainMedia.video.stillFrameMediaId`\n | `collection.media.mainMedia.mediaType`\n | `collection.media.mainMedia.title`\n | `collection.media.mainMedia._id`\n | `collection.media.items`\n | `collection.numberOfProducts`,\n 6\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({ slug: slug });\n\n const reqOpts =\n ambassadorWixStoresCatalogV1Collection.getCollectionBySlug(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { slug: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['slug']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixCatalogApiV2CollectionReadApiUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'api._api_base_domain_': [\n {\n srcPath: '/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'manage._base_domain_': [\n {\n srcPath: '/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'www.wixapis.com': [\n {\n srcPath: '/stores-reader/v2/collections',\n destPath: '/v2/collections',\n },\n {\n srcPath: '/stores-reader/v2/inventoryItems',\n destPath: '/v2/inventoryItems',\n },\n ],\n 'www._base_domain_': [\n {\n srcPath: '/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/wix-ecommerce-catalog-reader-web',\n destPath: '',\n },\n ],\n _: [\n {\n srcPath: '/stores-reader/v2/inventoryItems',\n destPath: '/v2/inventoryItems',\n },\n {\n srcPath: '/stores-reader/v2/collections',\n destPath: '/v2/collections',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_stores_collections';\n\n/**\n * Retrieves a list of up to 100 collections, given the provided paging, sorting and filtering.\n * See [Stores Pagination](https://dev.wix.com/api/rest/wix-stores/pagination) for more information.\n */\nexport function queryCollections(payload: object): RequestOptionsFactory<any> {\n function __queryCollections({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.stores.catalog.v1.collection',\n method: 'GET' as any,\n methodFqn: 'wix.catalog.api.v2.CollectionReadApi.QueryCollections',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/query',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload, true),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'collections.lastUpdated' }],\n },\n ]),\n fallback: [\n {\n method: 'POST' as any,\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/query',\n data: payload,\n host,\n }),\n data: payload,\n },\n ],\n };\n\n return metadata;\n }\n\n return __queryCollections;\n}\n\n/** Retrieves a collection with the provided ID. */\nexport function getCollection(payload: object): RequestOptionsFactory<any> {\n function __getCollection({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.stores.catalog.v1.collection',\n method: 'GET' as any,\n methodFqn: 'wix.catalog.api.v2.CollectionReadApi.GetCollection',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/{id}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'collection.lastUpdated' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getCollection;\n}\n\n/** Retrieves a collection with the provided slug. */\nexport function getCollectionBySlug(\n payload: object\n): RequestOptionsFactory<any> {\n function __getCollectionBySlug({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.stores.catalog.v1.collection',\n method: 'GET' as any,\n methodFqn: 'wix.catalog.api.v2.CollectionReadApi.GetCollectionBySlug',\n packageName: PACKAGE_NAME,\n migrationOptions: {\n optInTransformResponse: true,\n },\n url: resolveWixCatalogApiV2CollectionReadApiUrl({\n protoPath: '/v2/collections/slug/{slug}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n transformResponse: (payload: any) =>\n transformPaths(payload, [\n {\n transformFn: transformRESTTimestampToSDKTimestamp,\n paths: [{ path: 'collection.lastUpdated' }],\n },\n ]),\n };\n\n return metadata;\n }\n\n return __getCollectionBySlug;\n}\n"],"mappings":"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","names":["payload","transformPaths","MediaItemType","SortOrder","queryCollections","getCollection","getCollectionBySlug"]}
@@ -1,15 +1,7 @@
1
1
  import { HttpClient, NonNullablePaths, MaybeContext, BuildRESTFunction } from '@wix/sdk-types';
2
- import { CollectionsQueryBuilder, Collection, GetCollectionBySlugResponse } from './index.typings.js';
3
- export { CollectionsQueryResult, CursorPaging, Cursors, GetCollectionBySlugRequest, GetCollectionRequest, GetCollectionResponse, Keyword, Media, MediaItem, MediaItemItemOneOf, MediaItemType, MediaItemTypeWithLiterals, MediaItemUrlAndSize, MediaItemVideo, PlatformPaging, PlatformPagingMetadata, PlatformQuery, PlatformQueryPagingMethodOneOf, QueryCollectionsRequest, QueryCollectionsResponse, SeoSchema, Settings, SortOrder, SortOrderWithLiterals, Sorting, Tag } from './index.typings.js';
2
+ import { Collection, GetCollectionBySlugResponse, CollectionsQueryBuilder, PlatformQuery, typedQueryCollections } from './index.typings.js';
3
+ export { CollectionsQueryResult, CursorPaging, Cursors, GetCollectionBySlugRequest, GetCollectionRequest, GetCollectionResponse, Keyword, Media, MediaItem, MediaItemItemOneOf, MediaItemType, MediaItemTypeWithLiterals, MediaItemUrlAndSize, MediaItemVideo, PlatformPaging, PlatformPagingMetadata, PlatformQueryPagingMethodOneOf, QueryCollectionsRequest, QueryCollectionsResponse, SeoSchema, Settings, SortOrder, SortOrderWithLiterals, Sorting, Tag } from './index.typings.js';
4
4
 
5
- declare function queryCollections$1(httpClient: HttpClient): QueryCollectionsSignature;
6
- interface QueryCollectionsSignature {
7
- /**
8
- * Retrieves a list of up to 100 collections, given the provided paging, sorting and filtering.
9
- * See [Stores Pagination](https://dev.wix.com/api/rest/wix-stores/pagination) for more information.
10
- */
11
- (): CollectionsQueryBuilder;
12
- }
13
5
  declare function getCollection$1(httpClient: HttpClient): GetCollectionSignature;
14
6
  interface GetCollectionSignature {
15
7
  /**
@@ -27,8 +19,12 @@ interface GetCollectionBySlugSignature {
27
19
  (slug: string): Promise<NonNullablePaths<GetCollectionBySlugResponse, `collection.media.mainMedia.image.url` | `collection.media.mainMedia.image.width` | `collection.media.mainMedia.image.height` | `collection.media.mainMedia.video.files` | `collection.media.mainMedia.video.stillFrameMediaId` | `collection.media.mainMedia.mediaType` | `collection.media.mainMedia.title` | `collection.media.mainMedia._id` | `collection.media.items` | `collection.numberOfProducts`, 6>>;
28
20
  }
29
21
 
30
- declare const queryCollections: MaybeContext<BuildRESTFunction<typeof queryCollections$1> & typeof queryCollections$1>;
22
+ declare function customQueryCollections(httpClient: HttpClient): {
23
+ (): CollectionsQueryBuilder;
24
+ (query: PlatformQuery): ReturnType<typeof typedQueryCollections>;
25
+ };
31
26
  declare const getCollection: MaybeContext<BuildRESTFunction<typeof getCollection$1> & typeof getCollection$1>;
32
27
  declare const getCollectionBySlug: MaybeContext<BuildRESTFunction<typeof getCollectionBySlug$1> & typeof getCollectionBySlug$1>;
28
+ declare const queryCollections: MaybeContext<BuildRESTFunction<typeof customQueryCollections> & typeof customQueryCollections>;
33
29
 
34
- export { Collection, CollectionsQueryBuilder, GetCollectionBySlugResponse, getCollection, getCollectionBySlug, queryCollections };
30
+ export { Collection, CollectionsQueryBuilder, GetCollectionBySlugResponse, PlatformQuery, getCollection, getCollectionBySlug, queryCollections };
@@ -252,6 +252,29 @@ function queryCollections2() {
252
252
  transformationPaths: {}
253
253
  });
254
254
  }
255
+ async function typedQueryCollections(query) {
256
+ const { httpClient, sideEffects } = arguments[1];
257
+ const payload = (0, import_rename_all_nested_keys.renameKeysFromSDKRequestToRESTRequest)({ query });
258
+ const reqOpts = queryCollections(payload);
259
+ sideEffects?.onSiteCall?.();
260
+ try {
261
+ const result = await httpClient.request(reqOpts);
262
+ sideEffects?.onSuccess?.(result);
263
+ return (0, import_rename_all_nested_keys.renameKeysFromRESTResponseToSDKResponse)(result.data);
264
+ } catch (err) {
265
+ const transformedError = (0, import_transform_error.transformError)(
266
+ err,
267
+ {
268
+ spreadPathsToArguments: {},
269
+ explicitPathsToArguments: { query: "$[0]" },
270
+ singleArgumentUnchanged: false
271
+ },
272
+ ["query"]
273
+ );
274
+ sideEffects?.onError?.(err);
275
+ throw transformedError;
276
+ }
277
+ }
255
278
  async function getCollection2(_id) {
256
279
  const { httpClient, sideEffects } = arguments[1];
257
280
  const payload = (0, import_rename_all_nested_keys.renameKeysFromSDKRequestToRESTRequest)({ id: _id });
@@ -306,6 +329,13 @@ function queryCollections3(httpClient) {
306
329
  { httpClient }
307
330
  );
308
331
  }
332
+ function typedQueryCollections2(httpClient) {
333
+ return (query) => typedQueryCollections(
334
+ query,
335
+ // @ts-ignore
336
+ { httpClient }
337
+ );
338
+ }
309
339
  function getCollection3(httpClient) {
310
340
  return (_id) => getCollection2(
311
341
  _id,
@@ -323,9 +353,21 @@ function getCollectionBySlug3(httpClient) {
323
353
 
324
354
  // src/stores-catalog-v1-collection-collections.context.ts
325
355
  var import_rest_modules3 = require("@wix/sdk-runtime/rest-modules");
326
- var queryCollections4 = /* @__PURE__ */ (0, import_rest_modules3.createRESTModule)(queryCollections3);
356
+ var import_query_method_router = require("@wix/sdk-runtime/query-method-router");
357
+ function customQueryCollections(httpClient) {
358
+ const router = (0, import_query_method_router.createQueryOverloadRouter)({
359
+ builderQueryFunction: () => queryCollections3(httpClient)(),
360
+ typedQueryFunction: (query) => typedQueryCollections2(httpClient)(query),
361
+ hasOptionsParameter: false
362
+ });
363
+ function overloadedQuery(query) {
364
+ return router(...arguments);
365
+ }
366
+ return overloadedQuery;
367
+ }
327
368
  var getCollection4 = /* @__PURE__ */ (0, import_rest_modules3.createRESTModule)(getCollection3);
328
369
  var getCollectionBySlug4 = /* @__PURE__ */ (0, import_rest_modules3.createRESTModule)(getCollectionBySlug3);
370
+ var queryCollections4 = /* @__PURE__ */ (0, import_rest_modules3.createRESTModule)(customQueryCollections);
329
371
  // Annotate the CommonJS export names for ESM import in node:
330
372
  0 && (module.exports = {
331
373
  MediaItemType,