UNPKG

@commercelayer/sdk

Version:
1 lines 13.4 kB
{"version":3,"sources":["../src/resources/line_item_options.ts"],"names":["ApiResource"],"mappings":"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","file":"chunk-TZAGUXNS.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 { LineItem, LineItemType } from './line_items'\nimport type { SkuOption, SkuOptionType } from './sku_options'\nimport type { Event } from './events'\nimport type { Tag, TagType } from './tags'\nimport type { EventStore } from './event_stores'\n\n\ntype LineItemOptionType = 'line_item_options'\ntype LineItemOptionRel = ResourceRel & { type: LineItemOptionType }\ntype LineItemRel = ResourceRel & { type: LineItemType }\ntype SkuOptionRel = ResourceRel & { type: SkuOptionType }\ntype TagRel = ResourceRel & { type: TagType }\n\n\nexport type LineItemOptionSort = Pick<LineItemOption, 'id' | 'name' | 'quantity' | 'currency_code' | 'unit_amount_cents' | 'delay_hours'> & ResourceSort\n// export type LineItemOptionFilter = Pick<LineItemOption, 'id' | 'name' | 'quantity' | 'currency_code' | 'unit_amount_cents' | 'delay_hours' | 'delay_days'> & ResourceFilter\n\n\ninterface LineItemOption extends Resource {\n\t\n\treadonly type: LineItemOptionType\n\n\t/** \n\t * The name of the line item option. When blank, it gets populated with the name of the associated SKU option.\n\t * @example ```\"Embossing\"```\n\t */\n\tname?: string | null\n\t/** \n\t * The line item option's quantity.\n\t * @example ```2```\n\t */\n\tquantity: number\n\t/** \n\t * The international 3-letter currency code as defined by the ISO 4217 standard, automatically inherited from the order's market.\n\t * @example ```\"EUR\"```\n\t */\n\tcurrency_code?: string | null\n\t/** \n\t * The unit amount of the line item option, in cents. When you add a line item option to an order, this is automatically populated from associated SKU option's price. Cannot be passed by sales channels.\n\t * @example ```990```\n\t */\n\tunit_amount_cents?: number | null\n\t/** \n\t * The unit amount of the line item option, float. This can be useful to track the purchase on thrid party systems, e.g Google Analyitcs Enhanced Ecommerce.\n\t * @example ```9.9```\n\t */\n\tunit_amount_float?: number | null\n\t/** \n\t * The unit amount of the line item option, formatted. This can be useful to display the amount with currency in you views.\n\t * @example ```\"€9,90\"```\n\t */\n\tformatted_unit_amount?: string | null\n\t/** \n\t * The unit amount x quantity, in cents.\n\t * @example ```1880```\n\t */\n\ttotal_amount_cents?: number | null\n\t/** \n\t * The unit amount x quantity, float. This can be useful to track the purchase on thrid party systems, e.g Google Analyitcs Enhanced Ecommerce.\n\t * @example ```18.8```\n\t */\n\ttotal_amount_float: number\n\t/** \n\t * The unit amount x quantity, formatted. This can be useful to display the amount with currency in you views.\n\t * @example ```\"€18,80\"```\n\t */\n\tformatted_total_amount?: string | null\n\t/** \n\t * The shipping delay that the customer can expect when adding this option (hours). Inherited from the associated SKU option.\n\t * @example ```48```\n\t */\n\tdelay_hours?: number | null\n\t/** \n\t * The shipping delay that the customer can expect when adding this option (days, rounded).\n\t * @example ```2```\n\t */\n\tdelay_days?: number | null\n\t/** \n\t * Set of key-value pairs that represent the selected options.\n\t * @example ```{\"embossing_text\":\"Happy Birthday!\"}```\n\t */\n\toptions: Record<string, any>\n\n\tline_item?: LineItem | null\n\tsku_option?: SkuOption | null\n\tevents?: Event[] | null\n\ttags?: Tag[] | null\n\tevent_stores?: EventStore[] | null\n\n}\n\n\ninterface LineItemOptionCreate extends ResourceCreate {\n\t\n\t/** \n\t * The name of the line item option. When blank, it gets populated with the name of the associated SKU option.\n\t * @example ```\"Embossing\"```\n\t */\n\tname?: string | null\n\t/** \n\t * The line item option's quantity.\n\t * @example ```2```\n\t */\n\tquantity: number\n\t/** \n\t * The unit amount of the line item option, in cents. When you add a line item option to an order, this is automatically populated from associated SKU option's price. Cannot be passed by sales channels.\n\t * @example ```990```\n\t */\n\tunit_amount_cents?: number | null\n\t/** \n\t * Set of key-value pairs that represent the selected options.\n\t * @example ```{\"embossing_text\":\"Happy Birthday!\"}```\n\t */\n\toptions: Record<string, any>\n\n\tline_item: LineItemRel\n\tsku_option: SkuOptionRel\n\ttags?: TagRel[] | null\n\n}\n\n\ninterface LineItemOptionUpdate extends ResourceUpdate {\n\t\n\t/** \n\t * The name of the line item option. When blank, it gets populated with the name of the associated SKU option.\n\t * @example ```\"Embossing\"```\n\t */\n\tname?: string | null\n\t/** \n\t * The line item option's quantity.\n\t * @example ```2```\n\t */\n\tquantity?: number | null\n\t/** \n\t * The unit amount of the line item option, in cents. When you add a line item option to an order, this is automatically populated from associated SKU option's price. Cannot be passed by sales channels.\n\t * @example ```990```\n\t */\n\tunit_amount_cents?: number | null\n\t/** \n\t * Set of key-value pairs that represent the selected options.\n\t * @example ```{\"embossing_text\":\"Happy Birthday!\"}```\n\t */\n\toptions?: Record<string, any> | null\n\t/** \n\t * Comma separated list of tags to be added. Duplicates, invalid and non existing ones are discarded. Cannot be passed by sales channels.\n\t */\n\t_add_tags?: string | null\n\t/** \n\t * Comma separated list of tags to be removed. Duplicates, invalid and non existing ones are discarded. Cannot be passed by sales channels.\n\t */\n\t_remove_tags?: string | null\n\n\tsku_option?: SkuOptionRel | null\n\ttags?: TagRel[] | null\n\n}\n\n\nclass LineItemOptions extends ApiResource<LineItemOption> {\n\n\tstatic readonly TYPE: LineItemOptionType = 'line_item_options' as const\n\n\tasync create(resource: LineItemOptionCreate, params?: QueryParamsRetrieve<LineItemOption>, options?: ResourcesConfig): Promise<LineItemOption> {\n\t\treturn this.resources.create<LineItemOptionCreate, LineItemOption>({ ...resource, type: LineItemOptions.TYPE }, params, options)\n\t}\n\n\tasync update(resource: LineItemOptionUpdate, params?: QueryParamsRetrieve<LineItemOption>, options?: ResourcesConfig): Promise<LineItemOption> {\n\t\treturn this.resources.update<LineItemOptionUpdate, LineItemOption>({ ...resource, type: LineItemOptions.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: LineItemOptions.TYPE } : id, options)\n\t}\n\n\tasync line_item(lineItemOptionId: string | LineItemOption, params?: QueryParamsRetrieve<LineItem>, options?: ResourcesConfig): Promise<LineItem> {\n\t\tconst _lineItemOptionId = (lineItemOptionId as LineItemOption).id || lineItemOptionId as string\n\t\treturn this.resources.fetch<LineItem>({ type: 'line_items' }, `line_item_options/${_lineItemOptionId}/line_item`, params, options) as unknown as LineItem\n\t}\n\n\tasync sku_option(lineItemOptionId: string | LineItemOption, params?: QueryParamsRetrieve<SkuOption>, options?: ResourcesConfig): Promise<SkuOption> {\n\t\tconst _lineItemOptionId = (lineItemOptionId as LineItemOption).id || lineItemOptionId as string\n\t\treturn this.resources.fetch<SkuOption>({ type: 'sku_options' }, `line_item_options/${_lineItemOptionId}/sku_option`, params, options) as unknown as SkuOption\n\t}\n\n\tasync events(lineItemOptionId: string | LineItemOption, params?: QueryParamsList<Event>, options?: ResourcesConfig): Promise<ListResponse<Event>> {\n\t\tconst _lineItemOptionId = (lineItemOptionId as LineItemOption).id || lineItemOptionId as string\n\t\treturn this.resources.fetch<Event>({ type: 'events' }, `line_item_options/${_lineItemOptionId}/events`, params, options) as unknown as ListResponse<Event>\n\t}\n\n\tasync tags(lineItemOptionId: string | LineItemOption, params?: QueryParamsList<Tag>, options?: ResourcesConfig): Promise<ListResponse<Tag>> {\n\t\tconst _lineItemOptionId = (lineItemOptionId as LineItemOption).id || lineItemOptionId as string\n\t\treturn this.resources.fetch<Tag>({ type: 'tags' }, `line_item_options/${_lineItemOptionId}/tags`, params, options) as unknown as ListResponse<Tag>\n\t}\n\n\tasync event_stores(lineItemOptionId: string | LineItemOption, params?: QueryParamsList<EventStore>, options?: ResourcesConfig): Promise<ListResponse<EventStore>> {\n\t\tconst _lineItemOptionId = (lineItemOptionId as LineItemOption).id || lineItemOptionId as string\n\t\treturn this.resources.fetch<EventStore>({ type: 'event_stores' }, `line_item_options/${_lineItemOptionId}/event_stores`, params, options) as unknown as ListResponse<EventStore>\n\t}\n\n\tasync _add_tags(id: string | LineItemOption, triggerValue: string, params?: QueryParamsRetrieve<LineItemOption>, options?: ResourcesConfig): Promise<LineItemOption> {\n\t\treturn this.resources.update<LineItemOptionUpdate, LineItemOption>({ id: (typeof id === 'string')? id: id.id, type: LineItemOptions.TYPE, _add_tags: triggerValue }, params, options)\n\t}\n\n\tasync _remove_tags(id: string | LineItemOption, triggerValue: string, params?: QueryParamsRetrieve<LineItemOption>, options?: ResourcesConfig): Promise<LineItemOption> {\n\t\treturn this.resources.update<LineItemOptionUpdate, LineItemOption>({ id: (typeof id === 'string')? id: id.id, type: LineItemOptions.TYPE, _remove_tags: triggerValue }, params, options)\n\t}\n\n\n\tisLineItemOption(resource: any): resource is LineItemOption {\n\t\treturn resource.type && (resource.type === LineItemOptions.TYPE)\n\t}\n\n\n\trelationship(id: string | ResourceId | null): LineItemOptionRel {\n\t\treturn super.relationshipOneToOne<LineItemOptionRel>(id)\n\t}\n\n\trelationshipToMany(...ids: string[]): LineItemOptionRel[] {\n\t\treturn super.relationshipOneToMany<LineItemOptionRel>(...ids)\n\t}\n\n\n\ttype(): LineItemOptionType {\n\t\treturn LineItemOptions.TYPE\n\t}\n\n}\n\n\nconst instance = new LineItemOptions()\nexport default instance\n\nexport type { LineItemOptions, LineItemOption, LineItemOptionCreate, LineItemOptionUpdate, LineItemOptionType }\n"]}