--- displayed_sidebar: servicesSidebar --- import ParameterTypes from "@site/src/components/ParameterTypes" # LineItemService ## Constructors ### constructor **new LineItemService**(`«destructured»`) #### Parameters ## Properties ", "description": "", "optional": true, "defaultValue": "", "expandable": false, "children": [] }, { "name": "__container__", "type": "`any`", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "__moduleDeclaration__", "type": "Record<`string`, `unknown`\\>", "description": "", "optional": true, "defaultValue": "", "expandable": false, "children": [] }, { "name": "cartRepository_", "type": "`Repository`<[`Cart`](Cart.mdx)\\> & { `findOneWithRelations`: Method findOneWithRelations ; `findWithRelations`: Method findWithRelations }", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "featureFlagRouter_", "type": "[`FlagRouter`](FlagRouter.mdx)", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "itemTaxLineRepo_", "type": "`Repository`<[`LineItemTaxLine`](LineItemTaxLine.mdx)\\> & { `deleteForCart`: Method deleteForCart ; `upsertLines`: Method upsertLines }", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "lineItemAdjustmentService_", "type": "[`LineItemAdjustmentService`](LineItemAdjustmentService.mdx)", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "lineItemRepository_", "type": "`Repository`<[`LineItem`](LineItem.mdx)\\> & { `findByReturn`: Method findByReturn }", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "manager_", "type": "`EntityManager`", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "pricingService_", "type": "[`PricingService`](PricingService.mdx)", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "productService_", "type": "[`ProductService`](ProductService.mdx)", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "productVariantService_", "type": "[`ProductVariantService`](ProductVariantService.mdx)", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "regionService_", "type": "[`RegionService`](RegionService.mdx)", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "taxProviderService_", "type": "[`TaxProviderService`](TaxProviderService.mdx)", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "transactionManager_", "type": "`undefined` \\| `EntityManager`", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] } ]} /> ## Accessors ### activeManager\_ `Protected` `get` **activeManager_**(): `EntityManager` #### Returns `EntityManager` ## 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. #### Parameters `Promise`<`TResult`\\>", "description": "the transactional work to be done", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "isolationOrErrorHandler", "type": "`IsolationLevel` \\| (`error`: `TError`) => `Promise`<`void` \\| `TResult`\\>", "description": "the isolation level to be used for the work.", "optional": true, "defaultValue": "", "expandable": false, "children": [] }, { "name": "maybeErrorHandlerOrDontFail", "type": "(`error`: `TError`) => `Promise`<`void` \\| `TResult`\\>", "description": "Potential error handler", "optional": true, "defaultValue": "", "expandable": false, "children": [] } ]} /> #### Returns `Promise`<`TResult`\> ", "optional": false, "defaultValue": "", "description": "the result of the transactional work", "expandable": false, "children": [] } ]} /> ___ ### cloneTo **cloneTo**(`ids`, `data?`, `options?`): `Promise`<[`LineItem`](LineItem.mdx)[]\> #### Parameters ", "description": "", "optional": false, "defaultValue": "{}", "expandable": false, "children": [] }, { "name": "options", "type": "`object`", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "options.setOriginalLineItemId", "type": "`boolean`", "description": "", "optional": true, "defaultValue": "", "expandable": false, "children": [] } ]} /> #### Returns `Promise`<[`LineItem`](LineItem.mdx)[]\> ", "optional": false, "defaultValue": "", "description": "", "expandable": false, "children": [] } ]} /> ___ ### create **create**<`T`, `TResult`\>(`data`): `Promise`<`TResult`\> Create a line item #### Parameters #### Returns `Promise`<`TResult`\> ", "optional": false, "defaultValue": "", "description": "the created line item", "expandable": false, "children": [] } ]} /> ___ ### createReturnLines **createReturnLines**(`returnId`, `cartId`): `Promise`<[`LineItem`](LineItem.mdx)[]\> Creates return line items for a given cart based on the return items in a return. #### Parameters #### Returns `Promise`<[`LineItem`](LineItem.mdx)[]\> ", "optional": false, "defaultValue": "", "description": "the created line items", "expandable": false, "children": [] } ]} /> ___ ### createTaxLine **createTaxLine**(`args`): [`LineItemTaxLine`](LineItemTaxLine.mdx) Create a line item tax line. #### Parameters ", "description": "tax line partial passed to the repo create method", "optional": false, "defaultValue": "", "expandable": false, "children": [] } ]} /> #### Returns [`LineItemTaxLine`](LineItemTaxLine.mdx) ___ ### delete **delete**(`id`): `Promise`<`undefined` \| ``null`` \| [`LineItem`](LineItem.mdx)\> Deletes a line item. #### Parameters #### Returns `Promise`<`undefined` \| ``null`` \| [`LineItem`](LineItem.mdx)\> ", "optional": false, "defaultValue": "", "description": "the result of the delete operation", "expandable": false, "children": [] } ]} /> ___ ### deleteWithTaxLines **deleteWithTaxLines**(`id`): `Promise`<`undefined` \| ``null`` \| [`LineItem`](LineItem.mdx)\> #### Parameters #### Returns `Promise`<`undefined` \| ``null`` \| [`LineItem`](LineItem.mdx)\> ", "optional": false, "defaultValue": "", "description": "the result of the delete operation", "expandable": false, "children": [] } ]} /> #### Deprecated no the cascade on the entity takes care of it Deletes a line item with the tax lines. ___ ### generate **generate**<`T`, `TResult`\>(`variantIdOrData`, `regionIdOrContext`, `quantity?`, `context?`): `Promise`<`TResult`\> Generate a single or multiple line item without persisting the data into the db #### Parameters #### Returns `Promise`<`TResult`\> ", "optional": false, "defaultValue": "", "description": "", "expandable": false, "children": [] } ]} /> ___ ### generateLineItem `Protected` **generateLineItem**(`variant`, `quantity`, `context`): `Promise`<[`LineItem`](LineItem.mdx)\> #### Parameters #### Returns `Promise`<[`LineItem`](LineItem.mdx)\> ", "optional": false, "defaultValue": "", "description": "", "expandable": false, "children": [] } ]} /> ___ ### list **list**(`selector`, `config?`): `Promise`<[`LineItem`](LineItem.mdx)[]\> #### Parameters ", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "config", "type": "[`FindConfig`](../interfaces/FindConfig.mdx)<[`LineItem`](LineItem.mdx)\\>", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] } ]} /> #### Returns `Promise`<[`LineItem`](LineItem.mdx)[]\> ", "optional": false, "defaultValue": "", "description": "", "expandable": false, "children": [] } ]} /> ___ ### retrieve **retrieve**(`id`, `config?`): `Promise`<[`LineItem`](LineItem.mdx)\> Retrieves a line item by its id. #### Parameters #### Returns `Promise`<[`LineItem`](LineItem.mdx)\> ", "optional": false, "defaultValue": "", "description": "the line item", "expandable": false, "children": [] } ]} /> ___ ### shouldRetryTransaction\_ `Protected` **shouldRetryTransaction_**(`err`): `boolean` #### Parameters \\| { `code`: `string` }", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] } ]} /> #### Returns `boolean` ___ ### update **update**(`idOrSelector`, `data`): `Promise`<[`LineItem`](LineItem.mdx)[]\> Updates a line item #### Parameters ", "description": "the id or selector of the line item(s) to update", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "data", "type": "[`Partial`](../types/Partial.mdx)<[`LineItem`](LineItem.mdx)\\>", "description": "the properties to update the line item(s)", "optional": false, "defaultValue": "", "expandable": false, "children": [] } ]} /> #### Returns `Promise`<[`LineItem`](LineItem.mdx)[]\> ", "optional": false, "defaultValue": "", "description": "the updated line item(s)", "expandable": false, "children": [] } ]} /> ___ ### validateGenerateArguments `Protected` **validateGenerateArguments**<`T`, `TResult`\>(`variantIdOrData`, `regionIdOrContext`, `quantity?`): `void` #### Parameters #### Returns `void` ___ ### withTransaction **withTransaction**(`transactionManager?`): [`LineItemService`](LineItemService.mdx) #### Parameters #### Returns [`LineItemService`](LineItemService.mdx)