@rxap/config
Version:
Provides a configuration service for Angular applications, allowing you to load and manage application settings from various sources such as static files, URLs, local storage, and URL parameters. It supports schema validation and provides utilities for ac
359 lines (182 loc) • 7.55 kB
Markdown
[**@rxap/config v19.3.0-dev.2**](../README.md)
***
[@rxap/config](../globals.md) / ConfigService
# Class: ConfigService\<Config\>
Defined in: [config.service.ts:73](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L73)
## Type Parameters
• **Config** *extends* `Record`\<`string`, `any`\> = `Record`\<`string`, `any`\>
## Constructors
### new ConfigService()
> **new ConfigService**\<`Config`\>(`config`): [`ConfigService`](ConfigService.md)\<`Config`\>
Defined in: [config.service.ts:104](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L104)
#### Parameters
##### config
`any` = `null`
#### Returns
[`ConfigService`](ConfigService.md)\<`Config`\>
## Properties
### config
> `readonly` **config**: `Config`
Defined in: [config.service.ts:102](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L102)
***
### Config
> `static` **Config**: `any` = `null`
Defined in: [config.service.ts:81](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L81)
***
### Defaults
> `static` **Defaults**: `any` = `{}`
Defined in: [config.service.ts:88](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L88)
Static default values for the config object.
Will be overwritten by an dynamic config file specified in
the Urls array.
***
### LocalStorageKey
> `static` **LocalStorageKey**: `string` = `'rxap/config/local-config'`
Defined in: [config.service.ts:96](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L96)
***
### onError
> `static` **onError**: `ReplaySubject`\<`unknown`\>
Defined in: [config.service.ts:75](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L75)
***
### onErrorFnc
> `static` **onErrorFnc**: (`error`) => `void`[] = `[]`
Defined in: [config.service.ts:78](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L78)
#### Parameters
##### error
`any`
#### Returns
`void`
***
### onRequestError
> `static` **onRequestError**: `ReplaySubject`\<`Response`\>
Defined in: [config.service.ts:76](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L76)
***
### onRequestErrorFnc
> `static` **onRequestErrorFnc**: (`response`) => `void`[] = `[]`
Defined in: [config.service.ts:79](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L79)
#### Parameters
##### response
`Response`
#### Returns
`void`
***
### Overwrites
> `static` **Overwrites**: `any` = `{}`
Defined in: [config.service.ts:94](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L94)
Any value definition in the Overwrites object will overwrite any
value form the Defaults values or dynamic config files
***
### ~~Urls~~
> `static` **Urls**: `never`[] = `[]`
Defined in: [config.service.ts:101](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L101)
#### Deprecated
instead use the url property of the ConfigLoadOptions
## Methods
### clearLocalConfig()
> **clearLocalConfig**(): `void`
Defined in: [config.service.ts:556](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L556)
#### Returns
`void`
***
### get()
#### Call Signature
> **get**\<`T`\>(`propertyPath`): `undefined` \| `T`
Defined in: [config.service.ts:560](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L560)
##### Type Parameters
• **T** = `any`
##### Parameters
###### propertyPath
`string`
##### Returns
`undefined` \| `T`
#### Call Signature
> **get**\<`T`\>(`propertyPath`, `defaultValue`): `T`
Defined in: [config.service.ts:561](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L561)
##### Type Parameters
• **T** = `any`
##### Parameters
###### propertyPath
`string`
###### defaultValue
[`NoInferType`](../type-aliases/NoInferType.md)\<`T`\>
##### Returns
`T`
***
### getOrThrow()
#### Call Signature
> **getOrThrow**\<`T`\>(`propertyPath`): `T`
Defined in: [config.service.ts:566](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L566)
##### Type Parameters
• **T** = `any`
##### Parameters
###### propertyPath
`string`
##### Returns
`T`
#### Call Signature
> **getOrThrow**\<`T`\>(`propertyPath`, `defaultValue`): `T`
Defined in: [config.service.ts:567](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L567)
##### Type Parameters
• **T** = `any`
##### Parameters
###### propertyPath
`string`
###### defaultValue
[`NoInferType`](../type-aliases/NoInferType.md)\<`T`\>
##### Returns
`T`
***
### setLocalConfig()
> **setLocalConfig**(`config`): `void`
Defined in: [config.service.ts:552](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L552)
#### Parameters
##### config
`Config`
#### Returns
`void`
***
### Get()
> `static` **Get**\<`T`, `K`\>(`path`, `defaultValue`, `config`): `T`
Defined in: [config.service.ts:494](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L494)
#### Type Parameters
• **T** = `any`
• **K** *extends* `Record`\<`string`, `any`\> = `Record`\<`string`, `any`\>
#### Parameters
##### path
`string`
##### defaultValue
`undefined` | `T`
##### config
`Record`\<`string`, `any`\>
#### Returns
`T`
***
### Load()
> `static` **Load**(`options`?, `environment`?): `Promise`\<`void`\>
Defined in: [config.service.ts:122](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L122)
Used to load the app config from a remote resource.
Promise.all([ ConfigService.Load() ])
.then(() => platformBrowserDynamic().bootstrapModule(AppModule))
.catch(err => console.error(err))
#### Parameters
##### options?
[`ConfigLoadOptions`](../interfaces/ConfigLoadOptions.md)
##### environment?
`Environment`
#### Returns
`Promise`\<`void`\>
***
### SideLoad()
> `static` **SideLoad**(`url`, `propertyPath`, `required`?, `schema`?): `Promise`\<`void`\>
Defined in: [config.service.ts:475](https://gitlab.com/rxap/packages/-/blob/ad2fedf899842d718c345d791ac885f1247525a3/packages/angular/config/src/lib/config.service.ts#L475)
#### Parameters
##### url
`string`
##### propertyPath
`string`
##### required?
`boolean`
##### schema?
[`AnySchema`](../type-aliases/AnySchema.md)
#### Returns
`Promise`\<`void`\>