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 | TextendsLineItem[] ?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 | Textendsstring?LineItem:TextendsLineItem?LineItem:LineItem[] | 
Parameters
| Name | Type | 
|---|---|
| variantIdOrData | T | 
| regionIdOrContext | Textendsstring?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 | Textendsstring?LineItem:TextendsLineItem?LineItem:LineItem[] | 
Parameters
| Name | Type | 
|---|---|
| variantIdOrData | string|T | 
| regionIdOrContext | Textendsstring?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
Inherited from
TransactionBaseService.withTransaction
Defined in
packages/medusa/src/interfaces/transaction-base-service.ts:14