UNPKG

@commercelayer/sdk

Version:
1 lines 10.4 kB
{"version":3,"sources":["../src/resources/stock_items.ts"],"names":["ApiResource"],"mappings":"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","file":"chunk-TLOIOTYF.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 { StockLocation, StockLocationType } from './stock_locations'\nimport type { Sku, SkuType } from './skus'\nimport type { ReservedStock } from './reserved_stocks'\nimport type { StockReservation } from './stock_reservations'\nimport type { Attachment } from './attachments'\nimport type { Version } from './versions'\nimport type { EventStore } from './event_stores'\n\n\ntype StockItemType = 'stock_items'\ntype StockItemRel = ResourceRel & { type: StockItemType }\ntype StockLocationRel = ResourceRel & { type: StockLocationType }\ntype SkuRel = ResourceRel & { type: SkuType }\n\n\nexport type StockItemSort = Pick<StockItem, 'id' | 'quantity'> & ResourceSort\n// export type StockItemFilter = Pick<StockItem, 'id' | 'quantity'> & ResourceFilter\n\n\ninterface StockItem extends Resource {\n\t\n\treadonly type: StockItemType\n\n\t/** \n\t * The code of the associated SKU.\n\t * @example ```\"TSHIRTMM000000FFFFFFXLXX\"```\n\t */\n\tsku_code?: string | null\n\t/** \n\t * The stock item quantity.\n\t * @example ```100```\n\t */\n\tquantity: number\n\n\tstock_location?: StockLocation | null\n\tsku?: Sku | null\n\treserved_stock?: ReservedStock | null\n\tstock_reservations?: StockReservation[] | null\n\tattachments?: Attachment[] | null\n\tversions?: Version[] | null\n\tevent_stores?: EventStore[] | null\n\n}\n\n\ninterface StockItemCreate extends ResourceCreate {\n\t\n\t/** \n\t * The code of the associated SKU.\n\t * @example ```\"TSHIRTMM000000FFFFFFXLXX\"```\n\t */\n\tsku_code?: string | null\n\t/** \n\t * The stock item quantity.\n\t * @example ```100```\n\t */\n\tquantity: number\n\n\tstock_location: StockLocationRel\n\tsku?: SkuRel | null\n\n}\n\n\ninterface StockItemUpdate extends ResourceUpdate {\n\t\n\t/** \n\t * The code of the associated SKU.\n\t * @example ```\"TSHIRTMM000000FFFFFFXLXX\"```\n\t */\n\tsku_code?: string | null\n\t/** \n\t * The stock item quantity.\n\t * @example ```100```\n\t */\n\tquantity?: number | null\n\t/** \n\t * Send this attribute if you want to validate the stock item quantity against the existing reserved stock one, returns an error in case the former is smaller. Cannot be passed by sales channels.\n\t * @example ```true```\n\t */\n\t_validate?: boolean | null\n\n\tstock_location?: StockLocationRel | null\n\tsku?: SkuRel | null\n\n}\n\n\nclass StockItems extends ApiResource<StockItem> {\n\n\tstatic readonly TYPE: StockItemType = 'stock_items' as const\n\n\tasync create(resource: StockItemCreate, params?: QueryParamsRetrieve<StockItem>, options?: ResourcesConfig): Promise<StockItem> {\n\t\treturn this.resources.create<StockItemCreate, StockItem>({ ...resource, type: StockItems.TYPE }, params, options)\n\t}\n\n\tasync update(resource: StockItemUpdate, params?: QueryParamsRetrieve<StockItem>, options?: ResourcesConfig): Promise<StockItem> {\n\t\treturn this.resources.update<StockItemUpdate, StockItem>({ ...resource, type: StockItems.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: StockItems.TYPE } : id, options)\n\t}\n\n\tasync stock_location(stockItemId: string | StockItem, params?: QueryParamsRetrieve<StockLocation>, options?: ResourcesConfig): Promise<StockLocation> {\n\t\tconst _stockItemId = (stockItemId as StockItem).id || stockItemId as string\n\t\treturn this.resources.fetch<StockLocation>({ type: 'stock_locations' }, `stock_items/${_stockItemId}/stock_location`, params, options) as unknown as StockLocation\n\t}\n\n\tasync sku(stockItemId: string | StockItem, params?: QueryParamsRetrieve<Sku>, options?: ResourcesConfig): Promise<Sku> {\n\t\tconst _stockItemId = (stockItemId as StockItem).id || stockItemId as string\n\t\treturn this.resources.fetch<Sku>({ type: 'skus' }, `stock_items/${_stockItemId}/sku`, params, options) as unknown as Sku\n\t}\n\n\tasync reserved_stock(stockItemId: string | StockItem, params?: QueryParamsRetrieve<ReservedStock>, options?: ResourcesConfig): Promise<ReservedStock> {\n\t\tconst _stockItemId = (stockItemId as StockItem).id || stockItemId as string\n\t\treturn this.resources.fetch<ReservedStock>({ type: 'reserved_stocks' }, `stock_items/${_stockItemId}/reserved_stock`, params, options) as unknown as ReservedStock\n\t}\n\n\tasync stock_reservations(stockItemId: string | StockItem, params?: QueryParamsList<StockReservation>, options?: ResourcesConfig): Promise<ListResponse<StockReservation>> {\n\t\tconst _stockItemId = (stockItemId as StockItem).id || stockItemId as string\n\t\treturn this.resources.fetch<StockReservation>({ type: 'stock_reservations' }, `stock_items/${_stockItemId}/stock_reservations`, params, options) as unknown as ListResponse<StockReservation>\n\t}\n\n\tasync attachments(stockItemId: string | StockItem, params?: QueryParamsList<Attachment>, options?: ResourcesConfig): Promise<ListResponse<Attachment>> {\n\t\tconst _stockItemId = (stockItemId as StockItem).id || stockItemId as string\n\t\treturn this.resources.fetch<Attachment>({ type: 'attachments' }, `stock_items/${_stockItemId}/attachments`, params, options) as unknown as ListResponse<Attachment>\n\t}\n\n\tasync versions(stockItemId: string | StockItem, params?: QueryParamsList<Version>, options?: ResourcesConfig): Promise<ListResponse<Version>> {\n\t\tconst _stockItemId = (stockItemId as StockItem).id || stockItemId as string\n\t\treturn this.resources.fetch<Version>({ type: 'versions' }, `stock_items/${_stockItemId}/versions`, params, options) as unknown as ListResponse<Version>\n\t}\n\n\tasync event_stores(stockItemId: string | StockItem, params?: QueryParamsList<EventStore>, options?: ResourcesConfig): Promise<ListResponse<EventStore>> {\n\t\tconst _stockItemId = (stockItemId as StockItem).id || stockItemId as string\n\t\treturn this.resources.fetch<EventStore>({ type: 'event_stores' }, `stock_items/${_stockItemId}/event_stores`, params, options) as unknown as ListResponse<EventStore>\n\t}\n\n\tasync _validate(id: string | StockItem, params?: QueryParamsRetrieve<StockItem>, options?: ResourcesConfig): Promise<StockItem> {\n\t\treturn this.resources.update<StockItemUpdate, StockItem>({ id: (typeof id === 'string')? id: id.id, type: StockItems.TYPE, _validate: true }, params, options)\n\t}\n\n\n\tisStockItem(resource: any): resource is StockItem {\n\t\treturn resource.type && (resource.type === StockItems.TYPE)\n\t}\n\n\n\trelationship(id: string | ResourceId | null): StockItemRel {\n\t\treturn super.relationshipOneToOne<StockItemRel>(id)\n\t}\n\n\trelationshipToMany(...ids: string[]): StockItemRel[] {\n\t\treturn super.relationshipOneToMany<StockItemRel>(...ids)\n\t}\n\n\n\ttype(): StockItemType {\n\t\treturn StockItems.TYPE\n\t}\n\n}\n\n\nconst instance = new StockItems()\nexport default instance\n\nexport type { StockItems, StockItem, StockItemCreate, StockItemUpdate, StockItemType }\n"]}