@rxap/ngx-theme
Version:
This package provides an Angular theme service that allows you to manage and customize the look and feel of your application. It includes features such as dark mode support, theme density control, typography settings, and color palette management. The ser
408 lines (204 loc) • 8.83 kB
Markdown
[@rxap/ngx-theme](../wiki/globals) / ThemeService
# Class: ThemeService
Defined in: [theme.service.ts:47](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L47)
## Constructors
### new ThemeService()
> **new ThemeService**(`mediaMatcher`): [`ThemeService`](../wiki/Class.ThemeService)
Defined in: [theme.service.ts:61](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L61)
#### Parameters
##### mediaMatcher
`MediaMatcher`
#### Returns
[`ThemeService`](../wiki/Class.ThemeService)
## Properties
### config
> `readonly` **config**: `ConfigService`\<`any`\>
Defined in: [theme.service.ts:49](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L49)
***
### darkMode
> `readonly` **darkMode**: `Signal`\<`boolean`\>
Defined in: [theme.service.ts:54](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L54)
***
### density
> `readonly` **density**: `WritableSignal`\<`ThemeDensity`\>
Defined in: [theme.service.ts:56](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L56)
***
### pubSub
> `readonly` **pubSub**: `PubSubService`
Defined in: [theme.service.ts:50](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L50)
***
### syncSubscription?
> `protected` `optional` **syncSubscription**: `Subscription`
Defined in: [theme.service.ts:59](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L59)
***
### themeModeService
> `readonly` **themeModeService**: [`ThemeModeService`](../wiki/Class.ThemeModeService)
Defined in: [theme.service.ts:52](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L52)
***
### themeName
> `readonly` **themeName**: `WritableSignal`\<`string`\>
Defined in: [theme.service.ts:55](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L55)
***
### typography
> `readonly` **typography**: `WritableSignal`\<`string`\>
Defined in: [theme.service.ts:57](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L57)
## Methods
### applyDensity()
> **applyDensity**(`density`): `void`
Defined in: [theme.service.ts:209](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L209)
#### Parameters
##### density
`ThemeDensity`
#### Returns
`void`
***
### applyTheme()
> **applyTheme**(`themeName`): `void`
Defined in: [theme.service.ts:220](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L220)
#### Parameters
##### themeName
`string`
#### Returns
`void`
***
### applyTypography()
> **applyTypography**(`typography`): `void`
Defined in: [theme.service.ts:216](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L216)
#### Parameters
##### typography
`string`
#### Returns
`void`
***
### getAvailableColorPalettes()
> **getAvailableColorPalettes**(): `null` \| `string`[]
Defined in: [theme.service.ts:283](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L283)
#### Returns
`null` \| `string`[]
***
### getAvailableThemes()
> **getAvailableThemes**(): `null` \| `string`[]
Defined in: [theme.service.ts:293](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L293)
#### Returns
`null` \| `string`[]
***
### getAvailableTypographies()
> **getAvailableTypographies**(): `null` \| `string`[]
Defined in: [theme.service.ts:303](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L303)
#### Returns
`null` \| `string`[]
***
### getColorPalette()
> **getColorPalette**(`colorPaletteName`): `Partial`\<[`ColorPalette`](../wiki/Interface.ColorPalette)\>
Defined in: [theme.service.ts:322](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L322)
#### Parameters
##### colorPaletteName
`string`
#### Returns
`Partial`\<[`ColorPalette`](../wiki/Interface.ColorPalette)\>
***
### getDensity()
> **getDensity**(): `ThemeDensity`
Defined in: [theme.service.ts:255](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L255)
#### Returns
`ThemeDensity`
***
### getTheme()
> **getTheme**(): `string`
Defined in: [theme.service.ts:275](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L275)
#### Returns
`string`
***
### getTypography()
> **getTypography**(): `string`
Defined in: [theme.service.ts:266](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L266)
#### Returns
`string`
***
### restore()
> **restore**(): `void`
Defined in: [theme.service.ts:67](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L67)
#### Returns
`void`
***
### restoreDensity()
> **restoreDensity**(): `null` \| `ThemeDensity`
Defined in: [theme.service.ts:140](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L140)
#### Returns
`null` \| `ThemeDensity`
***
### restoreFromPubSub()
> `protected` **restoreFromPubSub**(): `void`
Defined in: [theme.service.ts:79](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L79)
#### Returns
`void`
***
### restoreThemeName()
> **restoreThemeName**(): `null` \| `string`
Defined in: [theme.service.ts:124](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L124)
#### Returns
`null` \| `string`
***
### restoreTypography()
> **restoreTypography**(): `null` \| `string`
Defined in: [theme.service.ts:132](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L132)
#### Returns
`null` \| `string`
***
### setDarkTheme()
> **setDarkTheme**(`darkMode`, `silent`, `publish`): `void`
Defined in: [theme.service.ts:160](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L160)
#### Parameters
##### darkMode
`boolean`
##### silent
`boolean` = `false`
##### publish
`boolean` = `true`
#### Returns
`void`
***
### setDensity()
> **setDensity**(`density`, `silent`, `publish`): `void`
Defined in: [theme.service.ts:164](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L164)
#### Parameters
##### density
`ThemeDensity`
##### silent
`boolean` = `false`
##### publish
`boolean` = `true`
#### Returns
`void`
***
### setTheme()
> **setTheme**(`themeName`, `silent`, `publish`): `void`
Defined in: [theme.service.ts:190](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L190)
#### Parameters
##### themeName
`string`
##### silent
`boolean` = `false`
##### publish
`boolean` = `true`
#### Returns
`void`
***
### setTypography()
> **setTypography**(`typography`, `silent`, `publish`): `void`
Defined in: [theme.service.ts:177](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L177)
#### Parameters
##### typography
`string`
##### silent
`boolean` = `false`
##### publish
`boolean` = `true`
#### Returns
`void`
***
### toggleDarkTheme()
> **toggleDarkTheme**(): `void`
Defined in: [theme.service.ts:154](https://gitlab.com/rxap/packages/-/blob/36b0e9732b24717840935712e316593ff6aba795/packages/angular/theme/src/lib/theme.service.ts#L154)
#### Returns
`void`