LineItemService
Constructors
constructor
**new LineItemService**(«destructured»)
Parameters
Properties
__configModule__Record<string, unknown>__container__anyRequired__moduleDeclaration__Record<string, unknown>cartRepository_Repository<Cart> & { findOneWithRelations: Method findOneWithRelations ; findWithRelations: Method findWithRelations }RequireditemTaxLineRepo_Repository<LineItemTaxLine> & { deleteForCart: Method deleteForCart ; upsertLines: Method upsertLines }Requiredmanager_EntityManagerRequiredtransactionManager_undefined | EntityManagerRequiredAccessors
activeManager_
Protected get**activeManager_**(): EntityManager
Returns
EntityManager
EntityManagerEntityManagerRequiredMethods
atomicPhase_
Protected **atomicPhase_**<TypeParameter TResult, TypeParameter 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.
TResultobjectRequiredTErrorobjectRequiredParameters
work(transactionManager: EntityManager) => Promise<TResult>RequiredisolationOrErrorHandlerIsolationLevel | (error: TError) => Promise<void | TResult>maybeErrorHandlerOrDontFail(error: TError) => Promise<void | TResult>Returns
Promise<TResult>
PromisePromise<TResult>RequiredcloneTo
**cloneTo**(ids, data?, options?): Promise<[LineItem](/references/services/classes/LineItem)[]>
Parameters
idsstring | string[]RequiredDefault: {}
optionsobjectRequiredoptions.setOriginalLineItemIdbooleanReturns
Promise<LineItem[]>
create
**create**<TypeParameter T, TypeParameter TResult>(data): Promise<TResult>
Create a line item
TobjectRequiredTResultobjectRequiredParameters
dataTRequiredReturns
Promise<TResult>
PromisePromise<TResult>RequiredcreateReturnLines
**createReturnLines**(returnId, cartId): Promise<[LineItem](/references/services/classes/LineItem)[]>
Creates return line items for a given cart based on the return items in a return.
Parameters
returnIdstringRequiredcartIdstringRequiredReturns
Promise<LineItem[]>
createTaxLine
**createTaxLine**(args): [LineItemTaxLine](/references/services/classes/LineItemTaxLine)
Create a line item tax line.
Parameters
Returns
delete
**delete**(id): Promise<undefined \| null \| [LineItem](/references/services/classes/LineItem)>
Deletes a line item.
Parameters
idstringRequiredReturns
Promise<undefined | null | LineItem>
deleteWithTaxLines
**deleteWithTaxLines**(id): Promise<undefined \| null \| [LineItem](/references/services/classes/LineItem)>
Parameters
idstringRequiredReturns
Promise<undefined | null | LineItem>
Deprecated
no the cascade on the entity takes care of it Deletes a line item with the tax lines.
generate
**generate**<TypeParameter T, TypeParameter TResult>(variantIdOrData, regionIdOrContext, quantity?, context?): Promise<TResult>
Generate a single or multiple line item without persisting the data into the db
TobjectRequiredTResultobjectRequiredParameters
variantIdOrDataTRequiredquantitynumberDefault: {}
Returns
Promise<TResult>
PromisePromise<TResult>RequiredgenerateLineItem
Protected **generateLineItem**(variant, quantity, context): Promise<[LineItem](/references/services/classes/LineItem)>
Parameters
variantobjectRequiredvariant.idstringRequiredvariant.productobjectRequiredvariant.product.discountablebooleanRequiredvariant.product.is_giftcardbooleanRequiredvariant.product.thumbnailnull | stringRequiredvariant.product.titlestringRequiredvariant.product_idstringRequiredvariant.titlestringRequiredquantitynumberRequiredcontextGenerateLineItemContext & { variantPricing: [ProductVariantPricing](/references/services/types/ProductVariantPricing) }RequiredReturns
Promise<LineItem>
list
**list**(selector, config?): Promise<[LineItem](/references/services/classes/LineItem)[]>
Parameters
Returns
Promise<LineItem[]>
retrieve
**retrieve**(id, config?): Promise<[LineItem](/references/services/classes/LineItem)>
Retrieves a line item by its id.
Parameters
idstringRequiredconfigobjectRequiredDefault: {}
Returns
Promise<LineItem>
shouldRetryTransaction_
Protected **shouldRetryTransaction_**(err): boolean
Parameters
errRecord<string, unknown> | { code: string }RequiredReturns
boolean
booleanbooleanupdate
**update**(idOrSelector, data): Promise<[LineItem](/references/services/classes/LineItem)[]>
Updates a line item
Parameters
Returns
Promise<LineItem[]>
validateGenerateArguments
Protected **validateGenerateArguments**<TypeParameter T, TypeParameter TResult>(variantIdOrData, regionIdOrContext, quantity?): void
TobjectRequiredTResultobjectRequiredParameters
variantIdOrDatastring | TRequiredquantitynumberReturns
void
voidvoidwithTransaction
**withTransaction**(transactionManager?): [LineItemService](/references/services/classes/LineItemService)
Parameters
transactionManagerEntityManager