UNPKG

@commercelayer/sdk

Version:
1 lines 8.15 kB
{"version":3,"sources":["../src/resources/cleanups.ts"],"names":["ApiResource"],"mappings":"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","file":"chunk-UEQ3CRVM.cjs","sourcesContent":["import { ApiResource } from '../resource'\nimport type { Resource, ResourceCreate, ResourceUpdate, ResourceId, ResourcesConfig, ResourceRel, ListResponse, ResourceSort, /* ResourceFilter */ } from '../resource'\nimport type { QueryParamsRetrieve, QueryParamsList } from '../query'\n\nimport type { Event } from './events'\nimport type { Version } from './versions'\nimport type { EventStore } from './event_stores'\n\n\ntype CleanupType = 'cleanups'\ntype CleanupRel = ResourceRel & { type: CleanupType }\n\n\nexport type CleanupSort = Pick<Cleanup, 'id' | 'resource_type' | 'status' | 'started_at' | 'completed_at' | 'interrupted_at' | 'records_count' | 'errors_count' | 'processed_count'> & ResourceSort\n// export type CleanupFilter = Pick<Cleanup, 'id' | 'resource_type' | 'status' | 'started_at' | 'completed_at' | 'interrupted_at' | 'records_count' | 'errors_count' | 'processed_count' | 'errors_log'> & ResourceFilter\n\n\ninterface Cleanup extends Resource {\n\t\n\treadonly type: CleanupType\n\n\t/** \n\t * The type of resource being cleaned.\n\t * @example ```\"skus\"```\n\t */\n\tresource_type: string\n\t/** \n\t * The cleanup job status. One of 'pending' (default), 'in_progress', 'interrupted', or 'completed'.\n\t * @example ```\"in_progress\"```\n\t */\n\tstatus: 'pending' | 'in_progress' | 'interrupted' | 'completed'\n\t/** \n\t * Time at which the cleanup was started.\n\t * @example ```\"2018-01-01T12:00:00.000Z\"```\n\t */\n\tstarted_at?: string | null\n\t/** \n\t * Time at which the cleanup was completed.\n\t * @example ```\"2018-01-01T12:00:00.000Z\"```\n\t */\n\tcompleted_at?: string | null\n\t/** \n\t * Time at which the cleanup was interrupted.\n\t * @example ```\"2018-01-01T12:00:00.000Z\"```\n\t */\n\tinterrupted_at?: string | null\n\t/** \n\t * The filters used to select the records to be cleaned.\n\t * @example ```{\"code_eq\":\"AAA\"}```\n\t */\n\tfilters?: Record<string, any> | null\n\t/** \n\t * Indicates the number of records to be cleaned.\n\t * @example ```300```\n\t */\n\trecords_count?: number | null\n\t/** \n\t * Indicates the number of cleanup errors, if any.\n\t * @example ```30```\n\t */\n\terrors_count?: number | null\n\t/** \n\t * Indicates the number of records that have been cleaned.\n\t * @example ```270```\n\t */\n\tprocessed_count?: number | null\n\t/** \n\t * Contains the cleanup errors, if any.\n\t * @example ```{\"ABC\":{\"name\":[\"has already been taken\"]}}```\n\t */\n\terrors_log?: Record<string, any> | null\n\n\tevents?: Event[] | null\n\tversions?: Version[] | null\n\tevent_stores?: EventStore[] | null\n\n}\n\n\ninterface CleanupCreate extends ResourceCreate {\n\t\n\t/** \n\t * The type of resource being cleaned.\n\t * @example ```\"skus\"```\n\t */\n\tresource_type: string\n\t/** \n\t * The filters used to select the records to be cleaned.\n\t * @example ```{\"code_eq\":\"AAA\"}```\n\t */\n\tfilters?: Record<string, any> | null\n\t\n}\n\n\ninterface CleanupUpdate extends ResourceUpdate {\n\t\n\t/** \n\t * Send this attribute if you want to mark status as 'interrupted'.\n\t * @example ```true```\n\t */\n\t_interrupt?: boolean | null\n\t\n}\n\n\nclass Cleanups extends ApiResource<Cleanup> {\n\n\tstatic readonly TYPE: CleanupType = 'cleanups' as const\n\n\tasync create(resource: CleanupCreate, params?: QueryParamsRetrieve<Cleanup>, options?: ResourcesConfig): Promise<Cleanup> {\n\t\treturn this.resources.create<CleanupCreate, Cleanup>({ ...resource, type: Cleanups.TYPE }, params, options)\n\t}\n\n\tasync update(resource: CleanupUpdate, params?: QueryParamsRetrieve<Cleanup>, options?: ResourcesConfig): Promise<Cleanup> {\n\t\treturn this.resources.update<CleanupUpdate, Cleanup>({ ...resource, type: Cleanups.TYPE }, params, options)\n\t}\n\n\tasync delete(id: string | ResourceId, options?: ResourcesConfig): Promise<void> {\n\t\tawait this.resources.delete((typeof id === 'string')? { id, type: Cleanups.TYPE } : id, options)\n\t}\n\n\tasync events(cleanupId: string | Cleanup, params?: QueryParamsList<Event>, options?: ResourcesConfig): Promise<ListResponse<Event>> {\n\t\tconst _cleanupId = (cleanupId as Cleanup).id || cleanupId as string\n\t\treturn this.resources.fetch<Event>({ type: 'events' }, `cleanups/${_cleanupId}/events`, params, options) as unknown as ListResponse<Event>\n\t}\n\n\tasync versions(cleanupId: string | Cleanup, params?: QueryParamsList<Version>, options?: ResourcesConfig): Promise<ListResponse<Version>> {\n\t\tconst _cleanupId = (cleanupId as Cleanup).id || cleanupId as string\n\t\treturn this.resources.fetch<Version>({ type: 'versions' }, `cleanups/${_cleanupId}/versions`, params, options) as unknown as ListResponse<Version>\n\t}\n\n\tasync event_stores(cleanupId: string | Cleanup, params?: QueryParamsList<EventStore>, options?: ResourcesConfig): Promise<ListResponse<EventStore>> {\n\t\tconst _cleanupId = (cleanupId as Cleanup).id || cleanupId as string\n\t\treturn this.resources.fetch<EventStore>({ type: 'event_stores' }, `cleanups/${_cleanupId}/event_stores`, params, options) as unknown as ListResponse<EventStore>\n\t}\n\n\tasync _interrupt(id: string | Cleanup, params?: QueryParamsRetrieve<Cleanup>, options?: ResourcesConfig): Promise<Cleanup> {\n\t\treturn this.resources.update<CleanupUpdate, Cleanup>({ id: (typeof id === 'string')? id: id.id, type: Cleanups.TYPE, _interrupt: true }, params, options)\n\t}\n\n\n\tisCleanup(resource: any): resource is Cleanup {\n\t\treturn resource.type && (resource.type === Cleanups.TYPE)\n\t}\n\n\n\trelationship(id: string | ResourceId | null): CleanupRel {\n\t\treturn super.relationshipOneToOne<CleanupRel>(id)\n\t}\n\n\trelationshipToMany(...ids: string[]): CleanupRel[] {\n\t\treturn super.relationshipOneToMany<CleanupRel>(...ids)\n\t}\n\n\n\ttype(): CleanupType {\n\t\treturn Cleanups.TYPE\n\t}\n\n}\n\n\nconst instance = new Cleanups()\nexport default instance\n\nexport type { Cleanups, Cleanup, CleanupCreate, CleanupUpdate, CleanupType }\n"]}