Skip to main content

Class: RegionService

Provides layer to manipulate regions.

Hierarchy

  • TransactionBaseServiceCopy to Clipboard

    RegionServiceCopy to Clipboard

Constructors

constructor

new RegionService(__namedParametersCopy to Clipboard)

Parameters

NameType
__namedParametersCopy to ClipboardInjectedDependenciesCopy to Clipboard

Overrides

TransactionBaseService.constructor

Defined in

packages/medusa/src/services/region.ts:67

Properties

__configModule__

ProtectedCopy to Clipboard OptionalCopy to Clipboard ReadonlyCopy to Clipboard __configModule__: RecordCopy to Clipboard<stringCopy to Clipboard, unknownCopy to Clipboard>

Inherited from

TransactionBaseService.__configModule__

Defined in

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


__container__

ProtectedCopy to Clipboard ReadonlyCopy to Clipboard __container__: anyCopy to Clipboard

Inherited from

TransactionBaseService.__container__

Defined in

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


__moduleDeclaration__

ProtectedCopy to Clipboard OptionalCopy to Clipboard ReadonlyCopy to Clipboard __moduleDeclaration__: RecordCopy to Clipboard<stringCopy to Clipboard, unknownCopy to Clipboard>

Inherited from

TransactionBaseService.__moduleDeclaration__

Defined in

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


countryRepository_

ProtectedCopy to Clipboard ReadonlyCopy to Clipboard countryRepository_: typeof CountryRepositoryCopy to Clipboard

Defined in

packages/medusa/src/services/region.ts:59


currencyRepository_

ProtectedCopy to Clipboard ReadonlyCopy to Clipboard currencyRepository_: typeof CurrencyRepositoryCopy to Clipboard

Defined in

packages/medusa/src/services/region.ts:60


eventBus_

ProtectedCopy to Clipboard ReadonlyCopy to Clipboard eventBus_: EventBusServiceCopy to Clipboard

Defined in

packages/medusa/src/services/region.ts:54


featureFlagRouter_

ProtectedCopy to Clipboard featureFlagRouter_: FlagRouterCopy to Clipboard

Defined in

packages/medusa/src/services/region.ts:52


fulfillmentProviderRepository_

ProtectedCopy to Clipboard ReadonlyCopy to Clipboard fulfillmentProviderRepository_: typeof FulfillmentProviderRepositoryCopy to Clipboard

Defined in

packages/medusa/src/services/region.ts:64


fulfillmentProviderService_

ProtectedCopy to Clipboard ReadonlyCopy to Clipboard fulfillmentProviderService_: FulfillmentProviderServiceCopy to Clipboard

Defined in

packages/medusa/src/services/region.ts:57


manager_

ProtectedCopy to Clipboard manager_: EntityManagerCopy to Clipboard

Overrides

TransactionBaseService.manager_

Defined in

packages/medusa/src/services/region.ts:50


paymentProviderRepository_

ProtectedCopy to Clipboard ReadonlyCopy to Clipboard paymentProviderRepository_: typeof PaymentProviderRepositoryCopy to Clipboard

Defined in

packages/medusa/src/services/region.ts:62


paymentProviderService_

ProtectedCopy to Clipboard ReadonlyCopy to Clipboard paymentProviderService_: PaymentProviderServiceCopy to Clipboard

Defined in

packages/medusa/src/services/region.ts:56


regionRepository_

ProtectedCopy to Clipboard ReadonlyCopy to Clipboard regionRepository_: typeof RegionRepositoryCopy to Clipboard

Defined in

packages/medusa/src/services/region.ts:58


storeService_

ProtectedCopy to Clipboard ReadonlyCopy to Clipboard storeService_: StoreServiceCopy to Clipboard

Defined in

packages/medusa/src/services/region.ts:55


taxProviderRepository_

ProtectedCopy to Clipboard ReadonlyCopy to Clipboard taxProviderRepository_: typeof TaxProviderRepositoryCopy to Clipboard

Defined in

packages/medusa/src/services/region.ts:65


transactionManager_

ProtectedCopy to Clipboard transactionManager_: undefinedCopy to Clipboard | EntityManagerCopy to Clipboard

Overrides

TransactionBaseService.transactionManager_

Defined in

packages/medusa/src/services/region.ts:51


Events

StaticCopy to Clipboard Events: ObjectCopy to Clipboard

Type declaration

NameType
CREATEDCopy to ClipboardstringCopy to Clipboard
DELETEDCopy to ClipboardstringCopy to Clipboard
UPDATEDCopy to ClipboardstringCopy to Clipboard

Defined in

packages/medusa/src/services/region.ts:44

Methods

addCountry

addCountry(regionIdCopy to Clipboard, codeCopy to Clipboard): PromiseCopy to Clipboard<RegionCopy to Clipboard>

Adds a country to the region.

Parameters

NameTypeDescription
regionIdCopy to ClipboardstringCopy to Clipboardthe region to add a country to
codeCopy to ClipboardstringCopy to Clipboarda 2 digit alphanumeric ISO country code.

Returns

PromiseCopy to Clipboard<RegionCopy to Clipboard>

the updated Region

Defined in

packages/medusa/src/services/region.ts:580


addFulfillmentProvider

addFulfillmentProvider(regionIdCopy to Clipboard, providerIdCopy to Clipboard): PromiseCopy to Clipboard<RegionCopy to Clipboard>

Adds a fulfillment provider that is available in the region. Fails if the provider doesn't exist.

Parameters

NameTypeDescription
regionIdCopy to ClipboardstringCopy to Clipboardthe region to add the provider to
providerIdCopy to ClipboardstringCopy to Clipboardthe provider to add to the region

Returns

PromiseCopy to Clipboard<RegionCopy to Clipboard>

the updated Region

Defined in

packages/medusa/src/services/region.ts:710


addPaymentProvider

addPaymentProvider(regionIdCopy to Clipboard, providerIdCopy to Clipboard): PromiseCopy to Clipboard<RegionCopy to Clipboard>

Adds a payment provider that is available in the region. Fails if the provider doesn't exist.

Parameters

NameTypeDescription
regionIdCopy to ClipboardstringCopy to Clipboardthe region to add the provider to
providerIdCopy to ClipboardstringCopy to Clipboardthe provider to add to the region

Returns

PromiseCopy to Clipboard<RegionCopy to Clipboard>

the updated Region

Defined in

packages/medusa/src/services/region.ts:659


atomicPhase_

ProtectedCopy to Clipboard atomicPhase_<TResultCopy to Clipboard, TErrorCopy to Clipboard>(workCopy to Clipboard, isolationOrErrorHandler?Copy to Clipboard, maybeErrorHandlerOrDontFail?Copy to Clipboard): PromiseCopy to Clipboard<TResultCopy to Clipboard>

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
TResultCopy to Clipboard
TErrorCopy to Clipboard

Parameters

NameTypeDescription
workCopy to Clipboard(transactionManagerCopy to Clipboard: EntityManagerCopy to Clipboard) => PromiseCopy to Clipboard<TResultCopy to Clipboard>the transactional work to be done
isolationOrErrorHandler?Copy to ClipboardIsolationLevelCopy to Clipboard | (errorCopy to Clipboard: TErrorCopy to Clipboard) => PromiseCopy to Clipboard<voidCopy to Clipboard | TResultCopy to Clipboard>the isolation level to be used for the work.
maybeErrorHandlerOrDontFail?Copy to Clipboard(errorCopy to Clipboard: TErrorCopy to Clipboard) => PromiseCopy to Clipboard<voidCopy to Clipboard | TResultCopy to Clipboard>Potential error handler

Returns

PromiseCopy to Clipboard<TResultCopy to Clipboard>

the result of the transactional work

Inherited from

TransactionBaseService.atomicPhase_

Defined in

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


create

create(dataCopy to Clipboard): PromiseCopy to Clipboard<RegionCopy to Clipboard>

Creates a region.

Parameters

NameTypeDescription
dataCopy to ClipboardCreateRegionInputCopy to Clipboardthe unvalidated region

Returns

PromiseCopy to Clipboard<RegionCopy to Clipboard>

the newly created region

Defined in

packages/medusa/src/services/region.ts:117


delete

delete(regionIdCopy to Clipboard): PromiseCopy to Clipboard<voidCopy to Clipboard>

Deletes a region.

Parameters

NameTypeDescription
regionIdCopy to ClipboardstringCopy to Clipboardthe region to delete

Returns

PromiseCopy to Clipboard<voidCopy to Clipboard>

the result of the delete operation

Defined in

packages/medusa/src/services/region.ts:549


list

list(selector?Copy to Clipboard, config?Copy to Clipboard): PromiseCopy to Clipboard<RegionCopy to Clipboard[]>

Lists all regions based on a query

Parameters

NameTypeDescription
selectorCopy to ClipboardSelectorCopy to Clipboard<RegionCopy to Clipboard>query object for find
configCopy to ClipboardFindConfigCopy to Clipboard<RegionCopy to Clipboard>configuration settings

Returns

PromiseCopy to Clipboard<RegionCopy to Clipboard[]>

result of the find operation

Defined in

packages/medusa/src/services/region.ts:529


removeCountry

removeCountry(regionIdCopy to Clipboard, codeCopy to Clipboard): PromiseCopy to Clipboard<RegionCopy to Clipboard>

Removes a country from a Region.

Parameters

NameTypeDescription
regionIdCopy to ClipboardstringCopy to Clipboardthe region to remove from
codeCopy to ClipboardstringCopy to Clipboarda 2 digit alphanumeric ISO country code to remove

Returns

PromiseCopy to Clipboard<RegionCopy to Clipboard>

the updated Region

Defined in

packages/medusa/src/services/region.ts:618


removeFulfillmentProvider

removeFulfillmentProvider(regionIdCopy to Clipboard, providerIdCopy to Clipboard): PromiseCopy to Clipboard<RegionCopy to Clipboard>

Removes a fulfillment provider from a region. Is idempotent.

Parameters

NameTypeDescription
regionIdCopy to ClipboardstringCopy to Clipboardthe region to remove the provider from
providerIdCopy to ClipboardstringCopy to Clipboardthe provider to remove from the region

Returns

PromiseCopy to Clipboard<RegionCopy to Clipboard>

the updated Region

Defined in

packages/medusa/src/services/region.ts:798


removePaymentProvider

removePaymentProvider(regionIdCopy to Clipboard, providerIdCopy to Clipboard): PromiseCopy to Clipboard<RegionCopy to Clipboard>

Removes a payment provider from a region. Is idempotent.

Parameters

NameTypeDescription
regionIdCopy to ClipboardstringCopy to Clipboardthe region to remove the provider from
providerIdCopy to ClipboardstringCopy to Clipboardthe provider to remove from the region

Returns

PromiseCopy to Clipboard<RegionCopy to Clipboard>

the updated Region

Defined in

packages/medusa/src/services/region.ts:759


retrieve

retrieve(regionIdCopy to Clipboard, config?Copy to Clipboard): PromiseCopy to Clipboard<RegionCopy to Clipboard>

Retrieves a region by its id.

Parameters

NameTypeDescription
regionIdCopy to ClipboardstringCopy to Clipboardthe id of the region to retrieve
configCopy to ClipboardFindConfigCopy to Clipboard<RegionCopy to Clipboard>configuration settings

Returns

PromiseCopy to Clipboard<RegionCopy to Clipboard>

the region

Defined in

packages/medusa/src/services/region.ts:494


retrieveByCountryCode

retrieveByCountryCode(codeCopy to Clipboard, config?Copy to Clipboard): PromiseCopy to Clipboard<RegionCopy to Clipboard>

Retrieve a region by country code.

Parameters

NameTypeDescription
codeCopy to ClipboardstringCopy to Clipboarda 2 digit alphanumeric ISO country code
configCopy to ClipboardFindConfigCopy to Clipboard<RegionCopy to Clipboard>region find config

Returns

PromiseCopy to Clipboard<RegionCopy to Clipboard>

a Region with country code

Defined in

packages/medusa/src/services/region.ts:437


retrieveByName

retrieveByName(nameCopy to Clipboard): PromiseCopy to Clipboard<RegionCopy to Clipboard>

Retrieves a region by name.

Parameters

NameTypeDescription
nameCopy to ClipboardstringCopy to Clipboardthe name of the region to retrieve

Returns

PromiseCopy to Clipboard<RegionCopy to Clipboard>

region with the matching name

Defined in

packages/medusa/src/services/region.ts:474


shouldRetryTransaction_

ProtectedCopy to Clipboard shouldRetryTransaction_(errCopy to Clipboard): booleanCopy to Clipboard

Parameters

NameType
errCopy to ClipboardRecordCopy to Clipboard<stringCopy to Clipboard, unknownCopy to Clipboard> | { codeCopy to Clipboard: stringCopy to Clipboard }

Returns

booleanCopy to Clipboard

Inherited from

TransactionBaseService.shouldRetryTransaction_

Defined in

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


update

update(regionIdCopy to Clipboard, updateCopy to Clipboard): PromiseCopy to Clipboard<RegionCopy to Clipboard>

Updates a region

Parameters

NameTypeDescription
regionIdCopy to ClipboardstringCopy to Clipboardthe region to update
updateCopy to ClipboardUpdateRegionInputCopy to Clipboardthe data to update the region with

Returns

PromiseCopy to Clipboard<RegionCopy to Clipboard>

the result of the update operation

Defined in

packages/medusa/src/services/region.ts:190


validateCountry

ProtectedCopy to Clipboard validateCountry(codeCopy to Clipboard, regionIdCopy to Clipboard): PromiseCopy to Clipboard<CountryCopy to Clipboard>

Validates a country code. Will normalize the code before checking for existence.

Parameters

NameTypeDescription
codeCopy to ClipboardstringCopy to Clipboarda 2 digit alphanumeric ISO country code
regionIdCopy to ClipboardstringCopy to Clipboardthe id of the current region to check against

Returns

PromiseCopy to Clipboard<CountryCopy to Clipboard>

the validated Country

Defined in

packages/medusa/src/services/region.ts:388


validateCurrency

ProtectedCopy to Clipboard validateCurrency(currencyCodeCopy to Clipboard): PromiseCopy to Clipboard<voidCopy to Clipboard>

Validates a currency code. Will throw if the currency code doesn't exist.

ThrowsCopy to Clipboard

if the provided currency code is invalid

Parameters

NameTypeDescription
currencyCodeCopy to ClipboardstringCopy to Clipboardan ISO currency code

Returns

PromiseCopy to Clipboard<voidCopy to Clipboard>

void

Defined in

packages/medusa/src/services/region.ts:363


validateFields

ProtectedCopy to Clipboard validateFields<TCopy to Clipboard>(regionDataCopy to Clipboard, id?Copy to Clipboard): PromiseCopy to Clipboard<{ automatic_taxes?Copy to Clipboard: booleanCopy to Clipboard ; countries?Copy to Clipboard: (undefinedCopy to Clipboard | { id?: number | undefined; iso_2?: string | undefined; iso_3?: string | undefined; num_code?: number | undefined; name?: string | undefined; display_name?: string | undefined; region_id?: string | ... 1 more ... | undefined; region?: { ...; } | undefined; })[] ; created_at?Copy to Clipboard: { toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; } ; currency?Copy to Clipboard: { code?: string | undefined; symbol?: string | undefined; symbol_native?: string | undefined; name?: string | undefined; includes_tax?: boolean | undefined; } ; currency_code?Copy to Clipboard: stringCopy to Clipboard ; deleted_at?Copy to Clipboard: nullCopy to Clipboard | { toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; } ; fulfillment_providers?Copy to Clipboard: (undefinedCopy to Clipboard | { id?: string | undefined; is_installed?: boolean | undefined; })[] ; gift_cards_taxable?Copy to Clipboard: booleanCopy to Clipboard ; id?Copy to Clipboard: stringCopy to Clipboard ; includes_tax?Copy to Clipboard: booleanCopy to Clipboard ; metadata?Copy to Clipboard: { [x: string]: unknown; } ; name?Copy to Clipboard: stringCopy to Clipboard ; payment_providers?Copy to Clipboard: (undefinedCopy to Clipboard | { id?: string | undefined; is_installed?: boolean | undefined; })[] ; tax_code?Copy to Clipboard: stringCopy to Clipboard ; tax_provider?Copy to Clipboard: { id?: string | undefined; is_installed?: boolean | undefined; } ; tax_provider_id?Copy to Clipboard: nullCopy to Clipboard | stringCopy to Clipboard ; tax_rate?Copy to Clipboard: numberCopy to Clipboard ; tax_rates?Copy to Clipboard: nullCopy to Clipboard | (undefinedCopy to Clipboard | { rate?: number | null | undefined; code?: string | null | undefined; name?: string | undefined; region_id?: string | undefined; region?: { name?: string | undefined; currency_code?: string | undefined; ... 16 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 9 more ...; updated_at?: { ...; } | undefin...)[] ; updated_at?Copy to Clipboard: { toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; } }>

Validates fields for creation and updates. If the region already exists the id can be passed to check that country updates are allowed.

Type parameters

NameType
TCopy to Clipboardextends UpdateRegionInputCopy to Clipboard | CreateRegionInputCopy to Clipboard

Parameters

NameTypeDescription
regionDataCopy to ClipboardOmitCopy to Clipboard<TCopy to Clipboard, "metadata"Copy to Clipboard | "currency_code"Copy to Clipboard>the region data to validate
id?Copy to ClipboardTCopy to Clipboard extends UpdateRegionInputCopy to Clipboard ? stringCopy to Clipboard : undefinedCopy to Clipboardoptional id of the region to check against

Returns

PromiseCopy to Clipboard<{ automatic_taxes?Copy to Clipboard: booleanCopy to Clipboard ; countries?Copy to Clipboard: (undefinedCopy to Clipboard | { id?: number | undefined; iso_2?: string | undefined; iso_3?: string | undefined; num_code?: number | undefined; name?: string | undefined; display_name?: string | undefined; region_id?: string | ... 1 more ... | undefined; region?: { ...; } | undefined; })[] ; created_at?Copy to Clipboard: { toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; } ; currency?Copy to Clipboard: { code?: string | undefined; symbol?: string | undefined; symbol_native?: string | undefined; name?: string | undefined; includes_tax?: boolean | undefined; } ; currency_code?Copy to Clipboard: stringCopy to Clipboard ; deleted_at?Copy to Clipboard: nullCopy to Clipboard | { toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; } ; fulfillment_providers?Copy to Clipboard: (undefinedCopy to Clipboard | { id?: string | undefined; is_installed?: boolean | undefined; })[] ; gift_cards_taxable?Copy to Clipboard: booleanCopy to Clipboard ; id?Copy to Clipboard: stringCopy to Clipboard ; includes_tax?Copy to Clipboard: booleanCopy to Clipboard ; metadata?Copy to Clipboard: { [x: string]: unknown; } ; name?Copy to Clipboard: stringCopy to Clipboard ; payment_providers?Copy to Clipboard: (undefinedCopy to Clipboard | { id?: string | undefined; is_installed?: boolean | undefined; })[] ; tax_code?Copy to Clipboard: stringCopy to Clipboard ; tax_provider?Copy to Clipboard: { id?: string | undefined; is_installed?: boolean | undefined; } ; tax_provider_id?Copy to Clipboard: nullCopy to Clipboard | stringCopy to Clipboard ; tax_rate?Copy to Clipboard: numberCopy to Clipboard ; tax_rates?Copy to Clipboard: nullCopy to Clipboard | (undefinedCopy to Clipboard | { rate?: number | null | undefined; code?: string | null | undefined; name?: string | undefined; region_id?: string | undefined; region?: { name?: string | undefined; currency_code?: string | undefined; ... 16 more ...; updated_at?: { ...; } | undefined; } | undefined; ... 9 more ...; updated_at?: { ...; } | undefin...)[] ; updated_at?Copy to Clipboard: { toString?: {} | undefined; toDateString?: {} | undefined; toTimeString?: {} | undefined; toLocaleString?: {} | undefined; toLocaleDateString?: {} | undefined; toLocaleTimeString?: {} | undefined; ... 37 more ...; [Symbol.toPrimitive]?: {} | undefined; } }>

the validated region data

Defined in

packages/medusa/src/services/region.ts:261


validateTaxRate

ProtectedCopy to Clipboard validateTaxRate(taxRateCopy to Clipboard): voidCopy to Clipboard

Validates a tax rate. Will throw if the tax rate is not between 0 and 1.

ThrowsCopy to Clipboard

if the tax rate isn't number between 0-100

Parameters

NameTypeDescription
taxRateCopy to ClipboardnumberCopy to Clipboarda number representing the tax rate of the region

Returns

voidCopy to Clipboard

void

Defined in

packages/medusa/src/services/region.ts:347


withTransaction

withTransaction(transactionManager?Copy to Clipboard): RegionServiceCopy to Clipboard

Parameters

NameType
transactionManager?Copy to ClipboardEntityManagerCopy to Clipboard

Returns

RegionServiceCopy to Clipboard

Inherited from

TransactionBaseService.withTransaction

Defined in

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