Files
medusa-store/docs/content/references/services/classes/LineItemService.md
2023-02-22 14:44:52 +02:00

20 KiB

Class: LineItemService

Hierarchy

  • TransactionBaseService

    LineItemService

Constructors

constructor

new LineItemService(__namedParameters)

Parameters

Name Type
__namedParameters InjectedDependencies

Overrides

TransactionBaseService.constructor

Defined in

packages/medusa/src/services/line-item.ts:59

Properties

__configModule__

Protected Optional Readonly __configModule__: Record<string, unknown>

Inherited from

TransactionBaseService.__configModule__

Defined in

packages/medusa/src/interfaces/transaction-base-service.ts:10


__container__

Protected Readonly __container__: any

Inherited from

TransactionBaseService.__container__

Defined in

packages/medusa/src/interfaces/transaction-base-service.ts:9


__moduleDeclaration__

Protected Optional Readonly __moduleDeclaration__: Record<string, unknown>

Inherited from

TransactionBaseService.__moduleDeclaration__

Defined in

packages/medusa/src/interfaces/transaction-base-service.ts:11


cartRepository_

Protected Readonly cartRepository_: typeof CartRepository

Defined in

packages/medusa/src/services/line-item.ts:50


featureFlagRouter_

Protected Readonly featureFlagRouter_: FlagRouter

Defined in

packages/medusa/src/services/line-item.ts:55


itemTaxLineRepo_

Protected Readonly itemTaxLineRepo_: typeof LineItemTaxLineRepository

Defined in

packages/medusa/src/services/line-item.ts:49


lineItemAdjustmentService_

Protected Readonly lineItemAdjustmentService_: LineItemAdjustmentService

Defined in

packages/medusa/src/services/line-item.ts:56


lineItemRepository_

Protected Readonly lineItemRepository_: typeof LineItemRepository

Defined in

packages/medusa/src/services/line-item.ts:48


manager_

Protected manager_: EntityManager

Overrides

TransactionBaseService.manager_

Defined in

packages/medusa/src/services/line-item.ts:45


pricingService_

Protected Readonly pricingService_: PricingService

Defined in

packages/medusa/src/services/line-item.ts:53


productService_

Protected Readonly productService_: ProductService

Defined in

packages/medusa/src/services/line-item.ts:52


productVariantService_

Protected Readonly productVariantService_: ProductVariantService

Defined in

packages/medusa/src/services/line-item.ts:51


regionService_

Protected Readonly regionService_: RegionService

Defined in

packages/medusa/src/services/line-item.ts:54


taxProviderService_

Protected Readonly taxProviderService_: TaxProviderService

Defined in

packages/medusa/src/services/line-item.ts:57


transactionManager_

Protected transactionManager_: undefined | EntityManager

Overrides

TransactionBaseService.transactionManager_

Defined in

packages/medusa/src/services/line-item.ts:46

Methods

atomicPhase_

Protected atomicPhase_<TResult, TError>(work, isolationOrErrorHandler?, maybeErrorHandlerOrDontFail?): Promise<TResult>

Wraps some work within a transactional block. If the service already has a transaction manager attached this will be reused, otherwise a new transaction manager is created.

Type parameters

Name
TResult
TError

Parameters

Name Type Description
work (transactionManager: EntityManager) => Promise<TResult> the transactional work to be done
isolationOrErrorHandler? IsolationLevel | (error: TError) => Promise<void | TResult> the isolation level to be used for the work.
maybeErrorHandlerOrDontFail? (error: TError) => Promise<void | TResult> Potential error handler

Returns

Promise<TResult>

the result of the transactional work

Inherited from

TransactionBaseService.atomicPhase_

Defined in

packages/medusa/src/interfaces/transaction-base-service.ts:50


cloneTo

cloneTo(ids, data?, options?): Promise<LineItem[]>

Parameters

Name Type
ids string | string[]
data Object
data.adjustments? (undefined | { id?: string | undefined; item_id?: string | undefined; item?: { cart_id?: string | undefined; cart?: { readonly object?: "cart" | undefined; email?: string | undefined; billing_address_id?: string | undefined; ... 37 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 38 more ...; updated_at?: { ...; }...)[]
data.allow_discounts? boolean
data.cart? { readonly object?: "cart" | undefined; email?: string | undefined; billing_address_id?: string | undefined; billing_address?: { customer_id?: string | null | undefined; customer?: { ...; } | ... 1 more ... | undefined; ... 15 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 36 more ...; updated_at?: ...
data.cart_id? string
data.claim_order? { payment_status?: ClaimPaymentStatus | undefined; fulfillment_status?: ClaimFulfillmentStatus | undefined; claim_items?: ({ images?: ({ ...; } | undefined)[] | undefined; ... 14 more ...; updated_at?: { ...; } | undefined; } | undefined)[] | undefined; ... 17 more ...; id?: string | undefined; }
data.claim_order_id? string
data.created_at? { toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; }
data.description? null | string
data.discount_total? null | number
data.fulfilled_quantity? null | number
data.gift_card_total? null | number
data.has_shipping? null | boolean
data.id? string
data.includes_tax? boolean
data.is_giftcard? boolean
data.is_return? boolean
data.metadata? { [x: string]: unknown; }
data.order? { readonly object?: "order" | undefined; status?: OrderStatus | undefined; fulfillment_status?: FulfillmentStatus | undefined; payment_status?: PaymentStatus | undefined; ... 49 more ...; updated_at?: { ...; } | undefined; }
data.order_edit? null | { order_id?: string | undefined; order?: { readonly object?: "order" | undefined; status?: OrderStatus | undefined; fulfillment_status?: FulfillmentStatus | undefined; ... 50 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 27 more ...; updated_at?: { ...; } | undefined; }
data.order_edit_id? null | string
data.order_id? null | string
data.original_item_id? null | string
data.original_tax_total? null | number
data.original_total? null | number
data.quantity? number
data.refundable? null | number
data.returned_quantity? null | number
data.shipped_quantity? null | number
data.should_merge? boolean
data.subtotal? null | number
data.swap? { fulfillment_status?: SwapFulfillmentStatus | undefined; payment_status?: SwapPaymentStatus | undefined; order_id?: string | undefined; ... 20 more ...; updated_at?: { ...; } | undefined; }
data.swap_id? string
data.tax_lines? (undefined | { item_id?: string | undefined; item?: { cart_id?: string | undefined; cart?: { readonly object?: "cart" | undefined; email?: string | undefined; billing_address_id?: string | undefined; ... 37 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 38 more ...; updated_at?: { ...; } | undefined; } | undefin...)[]
data.tax_total? null | number
data.thumbnail? null | string
data.title? string
data.total? null | number
data.unit_price? number
data.updated_at? { toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; }
data.variant? { title?: string | undefined; product_id?: string | undefined; product?: { title?: string | undefined; subtitle?: string | null | undefined; description?: string | null | undefined; ... 30 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 23 more ...; updated_at?: { ...; } | undefined; }
data.variant_id? null | string
options Object
options.setOriginalLineItemId? boolean

Returns

Promise<LineItem[]>

Defined in

packages/medusa/src/services/line-item.ts:487


create

create<T, TResult>(data): Promise<TResult>

Create a line item

Type parameters

Name Type
T LineItem | LineItem[]
TResult T extends LineItem[] ? LineItem[] : LineItem

Parameters

Name Type Description
data T the line item object to create

Returns

Promise<TResult>

the created line item

Defined in

packages/medusa/src/services/line-item.ts:368


createReturnLines

createReturnLines(returnId, cartId): Promise<LineItem[]>

Creates return line items for a given cart based on the return items in a return.

Parameters

Name Type Description
returnId string the id to generate return items from.
cartId string the cart to assign the return line items to.

Returns

Promise<LineItem[]>

the created line items

Defined in

packages/medusa/src/services/line-item.ts:135


createTaxLine

createTaxLine(args): LineItemTaxLine

Create a line item tax line.

Parameters

Name Type Description
args Object tax line partial passed to the repo create method
args.code? null | string -
args.created_at? { toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; } -
args.id? string -
args.item? { cart_id?: string | undefined; cart?: { readonly object?: "cart" | undefined; email?: string | undefined; billing_address_id?: string | undefined; billing_address?: { customer_id?: string | ... 1 more ... | undefined; ... 16 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 36 more ...; updated_at?: {... -
args.item_id? string -
args.metadata? { [x: string]: unknown; } -
args.name? string -
args.rate? number -
args.updated_at? { toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; } -

Returns

LineItemTaxLine

a new line item tax line

Defined in

packages/medusa/src/services/line-item.ts:479


delete

delete(id): Promise<undefined | LineItem>

Deletes a line item.

Parameters

Name Type Description
id string the id of the line item to delete

Returns

Promise<undefined | LineItem>

the result of the delete operation

Defined in

packages/medusa/src/services/line-item.ts:439


deleteWithTaxLines

deleteWithTaxLines(id): Promise<undefined | LineItem>

Deletes a line item with the tax lines.

Parameters

Name Type Description
id string the id of the line item to delete

Returns

Promise<undefined | LineItem>

the result of the delete operation

Defined in

packages/medusa/src/services/line-item.ts:458


generate

generate<T, TResult>(variantIdOrData, regionIdOrContext, quantity?, context?): Promise<TResult>

Generate a single or multiple line item without persisting the data into the db

Type parameters

Name Type
T string | GenerateInputData | GenerateInputData[]
TResult T extends string ? LineItem : T extends LineItem ? LineItem : LineItem[]

Parameters

Name Type
variantIdOrData T
regionIdOrContext T extends string ? string : GenerateLineItemContext
quantity? number
context GenerateLineItemContext

Returns

Promise<TResult>

Defined in

packages/medusa/src/services/line-item.ts:196


generateLineItem

Protected generateLineItem(variant, quantity, context): Promise<LineItem>

Parameters

Name Type
variant Object
variant.id string
variant.product Object
variant.product.discountable boolean
variant.product.is_giftcard boolean
variant.product.thumbnail null | string
variant.product.title string
variant.product_id string
variant.title string
quantity number
context GenerateLineItemContext & { variantPricing: ProductVariantPricing }

Returns

Promise<LineItem>

Defined in

packages/medusa/src/services/line-item.ts:299


list

list(selector, config?): Promise<LineItem[]>

Parameters

Name Type
selector Selector<LineItem>
config FindConfig<LineItem>

Returns

Promise<LineItem[]>

Defined in

packages/medusa/src/services/line-item.ts:88


retrieve

retrieve(id, config?): Promise<LineItem>

Retrieves a line item by its id.

Parameters

Name Type Description
id string the id of the line item to retrieve
config Object the config to be used at query building

Returns

Promise<LineItem>

the line item

Defined in

packages/medusa/src/services/line-item.ts:108


shouldRetryTransaction_

Protected shouldRetryTransaction_(err): boolean

Parameters

Name Type
err Record<string, unknown> | { code: string }

Returns

boolean

Inherited from

TransactionBaseService.shouldRetryTransaction_

Defined in

packages/medusa/src/interfaces/transaction-base-service.ts:31


update

update(idOrSelector, data): Promise<LineItem[]>

Updates a line item

Parameters

Name Type Description
idOrSelector string | Selector<LineItem> the id or selector of the line item(s) to update
data Partial<LineItem> the properties to update the line item(s)

Returns

Promise<LineItem[]>

the updated line item(s)

Defined in

packages/medusa/src/services/line-item.ts:396


validateGenerateArguments

Protected validateGenerateArguments<T, TResult>(variantIdOrData, regionIdOrContext, quantity?): void

Type parameters

Name Type
T string | GenerateInputData | GenerateInputData[]
TResult T extends string ? LineItem : T extends LineItem ? LineItem : LineItem[]

Parameters

Name Type
variantIdOrData string | T
regionIdOrContext T extends string ? string : GenerateLineItemContext
quantity? number

Returns

void

Defined in

packages/medusa/src/services/line-item.ts:558


withTransaction

withTransaction(transactionManager?): LineItemService

Parameters

Name Type
transactionManager? EntityManager

Returns

LineItemService

Inherited from

TransactionBaseService.withTransaction

Defined in

packages/medusa/src/interfaces/transaction-base-service.ts:14