Browse Source

Task/improve storybook setup (#7691)

* Load @angular/localize centrally

* Disable telemetry

* Update changelog
pull/7692/head^2
Thomas Kaul 6 days ago
committed by GitHub
parent
commit
350fc745d9
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 5
      CHANGELOG.md
  2. 3
      libs/ui/.storybook/main.mjs
  3. 1
      libs/ui/.storybook/preview.js
  4. 1
      libs/ui/src/lib/account-selector/account-selector.component.stories.ts
  5. 1
      libs/ui/src/lib/currency-selector/currency-selector.component.stories.ts
  6. 1
      libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.stories.ts
  7. 1
      libs/ui/src/lib/fire-calculator/fire-calculator.component.stories.ts
  8. 1
      libs/ui/src/lib/membership-card/membership-card.component.stories.ts
  9. 1
      libs/ui/src/lib/portfolio-filter-form/portfolio-filter-form.component.stories.ts
  10. 1
      libs/ui/src/lib/portfolio-proportion-chart/portfolio-proportion-chart.component.stories.ts
  11. 1
      libs/ui/src/lib/tags-selector/tags-selector.component.stories.ts
  12. 1
      libs/ui/src/lib/treemap-chart/treemap-chart.component.stories.ts
  13. 1
      libs/ui/src/lib/value/value.component.stories.ts

5
CHANGELOG.md

@ -9,8 +9,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed ### Changed
- Disabled the telemetry in the _Storybook_ setup
- Upgraded the `Node.js` engine from version `>=22.18.0` to `>=22.22.3` (`package.json`) - Upgraded the `Node.js` engine from version `>=22.18.0` to `>=22.22.3` (`package.json`)
### Fixed
- Fixed the _Storybook_ setup by loading the `@angular/localize` polyfill centrally
## 3.57.0 - 2026-08-21 ## 3.57.0 - 2026-08-21
### Added ### Added

3
libs/ui/.storybook/main.mjs

@ -9,6 +9,9 @@ const config = {
getAbsolutePath('@storybook/addon-docs'), getAbsolutePath('@storybook/addon-docs'),
getAbsolutePath('@storybook/addon-themes') getAbsolutePath('@storybook/addon-themes')
], ],
core: {
disableTelemetry: true
},
framework: { framework: {
name: getAbsolutePath('@storybook/angular'), name: getAbsolutePath('@storybook/angular'),
options: {} options: {}

1
libs/ui/.storybook/preview.js

@ -1,3 +1,4 @@
import '@angular/localize/init';
import { withThemeByClassName } from '@storybook/addon-themes'; import { withThemeByClassName } from '@storybook/addon-themes';
const preview = { const preview = {

1
libs/ui/src/lib/account-selector/account-selector.component.stories.ts

@ -3,7 +3,6 @@ import { AccountWithPlatform } from '@ghostfolio/common/types';
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import { ANIMATION_MODULE_TYPE, importProvidersFrom } from '@angular/core'; import { ANIMATION_MODULE_TYPE, importProvidersFrom } from '@angular/core';
import { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms'; import { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';
import '@angular/localize/init';
import { import {
applicationConfig, applicationConfig,
Meta, Meta,

1
libs/ui/src/lib/currency-selector/currency-selector.component.stories.ts

@ -1,6 +1,5 @@
import { ANIMATION_MODULE_TYPE } from '@angular/core'; import { ANIMATION_MODULE_TYPE } from '@angular/core';
import { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms'; import { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';
import '@angular/localize/init';
import { MatFormFieldModule } from '@angular/material/form-field'; import { MatFormFieldModule } from '@angular/material/form-field';
import { Meta, moduleMetadata, StoryObj } from '@storybook/angular'; import { Meta, moduleMetadata, StoryObj } from '@storybook/angular';

1
libs/ui/src/lib/fear-and-greed-index/fear-and-greed-index.component.stories.ts

@ -1,4 +1,3 @@
import '@angular/localize/init';
import { moduleMetadata } from '@storybook/angular'; import { moduleMetadata } from '@storybook/angular';
import type { Meta, StoryObj } from '@storybook/angular'; import type { Meta, StoryObj } from '@storybook/angular';
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader'; import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';

1
libs/ui/src/lib/fire-calculator/fire-calculator.component.stories.ts

@ -3,7 +3,6 @@ import { DEFAULT_LOCALE } from '@ghostfolio/common/config';
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import { ANIMATION_MODULE_TYPE } from '@angular/core'; import { ANIMATION_MODULE_TYPE } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import '@angular/localize/init';
import { MatButtonModule } from '@angular/material/button'; import { MatButtonModule } from '@angular/material/button';
import { provideNativeDateAdapter } from '@angular/material/core'; import { provideNativeDateAdapter } from '@angular/material/core';
import { MatDatepickerModule } from '@angular/material/datepicker'; import { MatDatepickerModule } from '@angular/material/datepicker';

1
libs/ui/src/lib/membership-card/membership-card.component.stories.ts

@ -1,5 +1,4 @@
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import '@angular/localize/init';
import { MatButtonModule } from '@angular/material/button'; import { MatButtonModule } from '@angular/material/button';
import { ActivatedRoute, RouterModule } from '@angular/router'; import { ActivatedRoute, RouterModule } from '@angular/router';
import { IonIcon } from '@ionic/angular/standalone'; import { IonIcon } from '@ionic/angular/standalone';

1
libs/ui/src/lib/portfolio-filter-form/portfolio-filter-form.component.stories.ts

@ -1,6 +1,5 @@
import { AccountWithPlatform } from '@ghostfolio/common/types'; import { AccountWithPlatform } from '@ghostfolio/common/types';
import '@angular/localize/init';
import { Meta, moduleMetadata, StoryObj } from '@storybook/angular'; import { Meta, moduleMetadata, StoryObj } from '@storybook/angular';
import { holdings } from '../mocks/holdings'; import { holdings } from '../mocks/holdings';

1
libs/ui/src/lib/portfolio-proportion-chart/portfolio-proportion-chart.component.stories.ts

@ -1,5 +1,4 @@
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import '@angular/localize/init';
import { moduleMetadata } from '@storybook/angular'; import { moduleMetadata } from '@storybook/angular';
import type { Meta, StoryObj } from '@storybook/angular'; import type { Meta, StoryObj } from '@storybook/angular';
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader'; import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';

1
libs/ui/src/lib/tags-selector/tags-selector.component.stories.ts

@ -1,6 +1,5 @@
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import { ANIMATION_MODULE_TYPE } from '@angular/core'; import { ANIMATION_MODULE_TYPE } from '@angular/core';
import '@angular/localize/init';
import { Meta, moduleMetadata, StoryObj } from '@storybook/angular'; import { Meta, moduleMetadata, StoryObj } from '@storybook/angular';
import { GfTagsSelectorComponent } from './tags-selector.component'; import { GfTagsSelectorComponent } from './tags-selector.component';

1
libs/ui/src/lib/treemap-chart/treemap-chart.component.stories.ts

@ -1,7 +1,6 @@
import { DEFAULT_COLOR_SCHEME } from '@ghostfolio/common/config'; import { DEFAULT_COLOR_SCHEME } from '@ghostfolio/common/config';
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import '@angular/localize/init';
import { moduleMetadata } from '@storybook/angular'; import { moduleMetadata } from '@storybook/angular';
import type { Meta, StoryObj } from '@storybook/angular'; import type { Meta, StoryObj } from '@storybook/angular';
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader'; import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';

1
libs/ui/src/lib/value/value.component.stories.ts

@ -1,5 +1,4 @@
import { ANIMATION_MODULE_TYPE } from '@angular/core'; import { ANIMATION_MODULE_TYPE } from '@angular/core';
import '@angular/localize/init';
import { applicationConfig, moduleMetadata } from '@storybook/angular'; import { applicationConfig, moduleMetadata } from '@storybook/angular';
import type { Meta, StoryObj } from '@storybook/angular'; import type { Meta, StoryObj } from '@storybook/angular';
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader'; import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';

Loading…
Cancel
Save