UNPKG

@commercelayer/sdk

Version:
1 lines 8.77 kB
{"version":3,"sources":["../src/resources/imports.ts"],"names":["ApiResource"],"mappings":";;;;;AA2IA,IAAM,OAAA,GAAN,MAAM,QAAA,SAAgBA,6BAAA,CAAoB;AAAA,EAEzC,OAAgB,IAAA,GAAmB,SAAA;AAAA,EAEnC,MAAM,MAAA,CAAO,QAAA,EAAwB,MAAA,EAAsC,OAAA,EAA4C;AACtH,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,MAAA,CAA6B,EAAE,GAAG,QAAA,EAAU,IAAA,EAAM,QAAA,CAAQ,IAAA,EAAK,EAAG,MAAA,EAAQ,OAAO,CAAA;AAAA,EACxG;AAAA,EAEA,MAAM,MAAA,CAAO,QAAA,EAAwB,MAAA,EAAsC,OAAA,EAA4C;AACtH,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,MAAA,CAA6B,EAAE,GAAG,QAAA,EAAU,IAAA,EAAM,QAAA,CAAQ,IAAA,EAAK,EAAG,MAAA,EAAQ,OAAO,CAAA;AAAA,EACxG;AAAA,EAEA,MAAM,MAAA,CAAO,EAAA,EAAyB,OAAA,EAA0C;AAC/E,IAAA,MAAM,IAAA,CAAK,SAAA,CAAU,MAAA,CAAQ,OAAO,EAAA,KAAO,QAAA,GAAW,EAAE,EAAA,EAAI,IAAA,EAAM,QAAA,CAAQ,IAAA,EAAK,GAAI,IAAI,OAAO,CAAA;AAAA,EAC/F;AAAA,EAEA,MAAM,MAAA,CAAO,QAAA,EAA2B,MAAA,EAAiC,OAAA,EAAyD;AACjI,IAAA,MAAM,SAAA,GAAa,SAAoB,EAAA,IAAM,QAAA;AAC7C,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAa,EAAE,IAAA,EAAM,QAAA,EAAS,EAAG,CAAA,QAAA,EAAW,SAAS,CAAA,OAAA,CAAA,EAAW,MAAA,EAAQ,OAAO,CAAA;AAAA,EACtG;AAAA,EAEA,MAAM,YAAA,CAAa,QAAA,EAA2B,MAAA,EAAsC,OAAA,EAA8D;AACjJ,IAAA,MAAM,SAAA,GAAa,SAAoB,EAAA,IAAM,QAAA;AAC7C,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAkB,EAAE,IAAA,EAAM,cAAA,EAAe,EAAG,CAAA,QAAA,EAAW,SAAS,CAAA,aAAA,CAAA,EAAiB,MAAA,EAAQ,OAAO,CAAA;AAAA,EACvH;AAAA,EAEA,MAAM,UAAA,CAAW,EAAA,EAAqB,MAAA,EAAsC,OAAA,EAA4C;AACvH,IAAA,OAAO,KAAK,SAAA,CAAU,MAAA,CAA6B,EAAE,EAAA,EAAK,OAAO,OAAO,QAAA,GAAW,EAAA,GAAI,EAAA,CAAG,EAAA,EAAI,MAAM,QAAA,CAAQ,IAAA,EAAM,YAAY,IAAA,EAAK,EAAG,QAAQ,OAAO,CAAA;AAAA,EACtJ;AAAA,EAGA,SAAS,QAAA,EAAmC;AAC3C,IAAA,OAAO,QAAA,CAAS,IAAA,IAAS,QAAA,CAAS,IAAA,KAAS,QAAA,CAAQ,IAAA;AAAA,EACpD;AAAA,EAGA,aAAa,EAAA,EAA2C;AACvD,IAAA,OAAO,KAAA,CAAM,qBAAgC,EAAE,CAAA;AAAA,EAChD;AAAA,EAEA,sBAAsB,GAAA,EAA4B;AACjD,IAAA,OAAO,KAAA,CAAM,qBAAA,CAAiC,GAAG,GAAG,CAAA;AAAA,EACrD;AAAA,EAGA,IAAA,GAAmB;AAClB,IAAA,OAAO,QAAA,CAAQ,IAAA;AAAA,EAChB;AAED,CAAA;AAGA,IAAM,QAAA,GAAW,IAAI,OAAA,EAAQ;AAC7B,IAAO,eAAA,GAAQ","file":"chunk-ZW4CB7J7.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 { EventStore } from './event_stores'\n\n\ntype ImportType = 'imports'\ntype ImportRel = ResourceRel & { type: ImportType }\n\n\nexport type ImportSort = Pick<Import, 'id' | 'resource_type' | 'format' | 'parent_resource_id' | 'status' | 'started_at' | 'completed_at' | 'interrupted_at' | 'inputs_size' | 'errors_count' | 'warnings_count' | 'processed_count' | 'attachment_url'> & ResourceSort\n// export type ImportFilter = Pick<Import, 'id' | 'resource_type' | 'format' | 'parent_resource_id' | 'status' | 'started_at' | 'completed_at' | 'interrupted_at' | 'inputs_size' | 'errors_count' | 'warnings_count' | 'processed_count' | 'errors_log' | 'warnings_log' | 'attachment_url'> & ResourceFilter\n\n\ninterface Import extends Resource {\n\t\n\treadonly type: ImportType\n\n\t/** \n\t * The type of resource being imported.\n\t * @example ```\"skus\"```\n\t */\n\tresource_type: string\n\t/** \n\t * The format of the import inputs one of 'json' (default) or 'csv'.\n\t * @example ```\"json\"```\n\t */\n\tformat?: string | null\n\t/** \n\t * The ID of the parent resource to be associated with imported data.\n\t * @example ```\"1234\"```\n\t */\n\tparent_resource_id?: string | null\n\t/** \n\t * The import 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 import 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 import 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 import was interrupted.\n\t * @example ```\"2018-01-01T12:00:00.000Z\"```\n\t */\n\tinterrupted_at?: string | null\n\t/** \n\t * Array of objects representing the resources that are being imported.\n\t * @example ```[{\"code\":\"ABC\",\"name\":\"Foo\"},{\"code\":\"DEF\",\"name\":\"Bar\"}]```\n\t */\n\tinputs: Array<Record<string, any>>\n\t/** \n\t * Indicates the size of the objects to be imported.\n\t * @example ```300```\n\t */\n\tinputs_size?: number | null\n\t/** \n\t * Indicates the number of import errors, if any.\n\t * @example ```30```\n\t */\n\terrors_count?: number | null\n\t/** \n\t * Indicates the number of import warnings, if any.\n\t * @example ```1```\n\t */\n\twarnings_count?: number | null\n\t/** \n\t * Indicates the number of records that have been processed (created or updated).\n\t * @example ```270```\n\t */\n\tprocessed_count?: number | null\n\t/** \n\t * Contains the import errors, if any.\n\t * @example ```{\"ABC\":{\"name\":[\"has already been taken\"]}}```\n\t */\n\terrors_log?: Record<string, any> | null\n\t/** \n\t * Contains the import warnings, if any.\n\t * @example ```{\"ABC\":[\"could not be deleted\"]}```\n\t */\n\twarnings_log?: Record<string, any> | null\n\t/** \n\t * The URL the the raw inputs file, which will be generated at import start.\n\t * @example ```\"http://cl_imports.s3.amazonaws.com/\"```\n\t */\n\tattachment_url?: string | null\n\n\tevents?: Event[] | null\n\tevent_stores?: EventStore[] | null\n\n}\n\n\ninterface ImportCreate extends ResourceCreate {\n\t\n\t/** \n\t * The type of resource being imported.\n\t * @example ```\"skus\"```\n\t */\n\tresource_type: string\n\t/** \n\t * The format of the import inputs one of 'json' (default) or 'csv'.\n\t * @example ```\"json\"```\n\t */\n\tformat?: string | null\n\t/** \n\t * The ID of the parent resource to be associated with imported data.\n\t * @example ```\"1234\"```\n\t */\n\tparent_resource_id?: string | null\n\t/** \n\t * Array of objects representing the resources that are being imported.\n\t * @example ```[{\"code\":\"ABC\",\"name\":\"Foo\"},{\"code\":\"DEF\",\"name\":\"Bar\"}]```\n\t */\n\tinputs: Array<Record<string, any>>\n\t\n}\n\n\ninterface ImportUpdate 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 Imports extends ApiResource<Import> {\n\n\tstatic readonly TYPE: ImportType = 'imports' as const\n\n\tasync create(resource: ImportCreate, params?: QueryParamsRetrieve<Import>, options?: ResourcesConfig): Promise<Import> {\n\t\treturn this.resources.create<ImportCreate, Import>({ ...resource, type: Imports.TYPE }, params, options)\n\t}\n\n\tasync update(resource: ImportUpdate, params?: QueryParamsRetrieve<Import>, options?: ResourcesConfig): Promise<Import> {\n\t\treturn this.resources.update<ImportUpdate, Import>({ ...resource, type: Imports.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: Imports.TYPE } : id, options)\n\t}\n\n\tasync events(importId: string | Import, params?: QueryParamsList<Event>, options?: ResourcesConfig): Promise<ListResponse<Event>> {\n\t\tconst _importId = (importId as Import).id || importId as string\n\t\treturn this.resources.fetch<Event>({ type: 'events' }, `imports/${_importId}/events`, params, options) as unknown as ListResponse<Event>\n\t}\n\n\tasync event_stores(importId: string | Import, params?: QueryParamsList<EventStore>, options?: ResourcesConfig): Promise<ListResponse<EventStore>> {\n\t\tconst _importId = (importId as Import).id || importId as string\n\t\treturn this.resources.fetch<EventStore>({ type: 'event_stores' }, `imports/${_importId}/event_stores`, params, options) as unknown as ListResponse<EventStore>\n\t}\n\n\tasync _interrupt(id: string | Import, params?: QueryParamsRetrieve<Import>, options?: ResourcesConfig): Promise<Import> {\n\t\treturn this.resources.update<ImportUpdate, Import>({ id: (typeof id === 'string')? id: id.id, type: Imports.TYPE, _interrupt: true }, params, options)\n\t}\n\n\n\tisImport(resource: any): resource is Import {\n\t\treturn resource.type && (resource.type === Imports.TYPE)\n\t}\n\n\n\trelationship(id: string | ResourceId | null): ImportRel {\n\t\treturn super.relationshipOneToOne<ImportRel>(id)\n\t}\n\n\trelationshipToMany(...ids: string[]): ImportRel[] {\n\t\treturn super.relationshipOneToMany<ImportRel>(...ids)\n\t}\n\n\n\ttype(): ImportType {\n\t\treturn Imports.TYPE\n\t}\n\n}\n\n\nconst instance = new Imports()\nexport default instance\n\nexport type { Imports, Import, ImportCreate, ImportUpdate, ImportType }\n"]}