Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use cloneDeep() to make diagramOptions immutable #765

Merged
merged 5 commits into from
Dec 18, 2024

Conversation

proand
Copy link
Member

@proand proand commented Nov 28, 2024

This closes #753

Copy link

Azure Static Web Apps: Your stage site is ready! Visit it here: https://nice-bush-002d75103-765.westeurope.2.azurestaticapps.net

Copy link

Azure Static Web Apps: Your stage site is ready! Visit it here: https://nice-bush-002d75103-765.westeurope.2.azurestaticapps.net

@proand proand requested review from VillereV and bittakv November 28, 2024 15:39

@if (diagramOptions.description) {
<p class="mb-4">{{ diagramOptions.description }}</p>
@if (diagramOptionsInternal.description) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@proand A combination of *ngIf and @if in one file is a bit untidy.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Created a new issue to handle this: #768

@@ -1,8 +1,8 @@
<article *ngIf="diagramOptions !== undefined">
<h1 class="h3 mb-3">{{ diagramOptions.title }}</h1>
<article *ngIf="diagramOptionsInternal !== undefined">
Copy link

@VillereV VillereV Dec 10, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@proand The user might send diagramOption as null. Maybe change diagramOptionsInternal !== undefined
@if(diagramOptionsInternal) or
@if(diagramOptionsInternal != null) or
@if(diagramOptionsInternal !== null && diagramOptionsInternal !== undefined)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have a little list (not exhaustive) of values, or missing values, in the diagramOptions that can give errors in current implementation. I'm pondering making a test of the input, and then jsut test for !diagramOptionsValid or something like that... but probably best to create an issue for that, and go for your solution now.

@proand proand requested a review from VillereV December 11, 2024 10:05
Copy link

Azure Static Web Apps: Your stage site is ready! Visit it here: https://nice-bush-002d75103-765.westeurope.2.azurestaticapps.net

Copy link
Contributor

@bittakv bittakv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!
The diagramOptions provided as imput to the component now seem to be untouched by FhiAngularHighchartsComponent :-)

* dev:
  Enhancement/highcharts category axis title (#763)
  Update CHANGELOG
  Fix selected value not visible before ng-select is touched
Copy link

Azure Static Web Apps: Your stage site is ready! Visit it here: https://nice-bush-002d75103-765.westeurope.2.azurestaticapps.net

* dev:
  Update qualitative series in _all.scss (#771)
Copy link

Azure Static Web Apps: Your stage site is ready! Visit it here: https://nice-bush-002d75103-765.westeurope.2.azurestaticapps.net

@proand proand merged commit 34b668c into dev Dec 18, 2024
2 checks passed
proand pushed a commit that referenced this pull request Dec 18, 2024
* dev:
  FhiAngularHighcharts: Use cloneDeep() to make diagramOptions immutable (#765)
  Update qualitative series in _all.scss (#771)
  Enhancement/highcharts category axis title (#763)
  Update CHANGELOG
  Fix selected value not visible before ng-select is touched
@proand proand deleted the enhancement/highcharts-immutable-diagram-options branch December 18, 2024 12:43
proand pushed a commit that referenced this pull request Jan 23, 2025
* dev: (32 commits)
  Release/fhi-angular-highcharts/5.3.0 (#796)
  Release/fhi-angular-components/5.3.0 (#795)
  Bugfix/tree view selection immutable ids (#778)
  Enhancement/mark required inputs (#784)
  Internal/update landing page (#787)
  Enhancement/highcharts diagram menu styling (#781)
  Enhancement/highcharts always show flags (#780)
  Enhancement/highcharts line design (#779)
  Enhancement/ignore unknown diagram types (#776)
  Update highcharts doc (#775)
  Enhancement/highcharts to many zeros in tooltip (#773)
  Enhancement/tree view selection search (#769)
  FhiAngularHighcharts: Use cloneDeep() to make diagramOptions immutable (#765)
  Update qualitative series in _all.scss (#771)
  Enhancement/highcharts category axis title (#763)
  Release/fhi-angular-highcharts/5.2.0 (#764)
  Enhancement/highcharts disable diagramtypes cleanup (#761)
  Update CHANGELOG
  Release/fhi-angular-components/5.2.0 (#757)
  Make FhiMultiselectComponent standalone (#755)
  ...
proand added a commit that referenced this pull request Jan 27, 2025
* Bugfix/tree-view-selection Make sure there is no duplicate IDs on checkboxes (or radios) if more than one instance on the same page (#717)

* Changes from patch @folkehelseinstituttet/angular-highcharts/v/4.4.1 (#704)

* Fix so table don't break if flagged data (#702)

Also rename and improve implementation of the number test in the template.

* Changes from @folkehelseinstituttet/angular-highcharts/v/4.5.0 (#726)

* Changes from @folkehelseinstituttet/angular-highcharts/v/4.6.0 (#729)

* Changes from @folkehelseinstituttet/angular-components/4.5.0 (#731)

* Release/fhi-angular-highcharts/5.1.0 (#732)

* Release/fhi-angular-components/5.1.0 (#733)

* Update Fhi.Frontend.Style to lates version (#734)

* Fix selected value not visible before ng-select is touched

* Make tree view navigation standalone (#747)

Co-authored-by: Bjørn-Vegard Thoresen <[email protected]>

* Enhancement/Make FhiAutosuggestComponent standalone (#751)

* Bugfix/highcharts decimals (#744)

* Fix not zero decimals in tooltip when unit.decimals set to 0

* Fix inconsisten max 9 decimals

* Make FhiMultiselectComponent standalone (#755)

* Release/fhi-angular-components/5.2.0 (#757)

* Update CHANGELOG

* Enhancement/highcharts disable diagramtypes cleanup (#761)

Remove two redundant disable tests, add two new,
and refactor all disable tests.

Remove:

- `noSeriesOrNoData`
- `allDataInOneOrMoreSeriesAreFlagged`

Add:

- `notAllUnitsFoundInSeries`
- `onlyOneSerieAndAllDataAreFlagged`

Refactoring:

- Add enum msgId
- Remove diagram type switch, use if tests instead
  - Test for one or more diagram type pr. test
  - Call one or more test inside the if tests
- Rename, and rewrite all the disable tests

* Release/fhi-angular-highcharts/5.2.0 (#764)

* Enhancement/highcharts category axis title (#763)

* Add xAxis options

* Add interface FhiDiagramCategoryAxis

* Update qualitative series in _all.scss (#771)

* Update qualitative series in _all.scss

* Update CHANGELOG.md

* Update CHANGELOG.md

* FhiAngularHighcharts: Use cloneDeep() to make diagramOptions immutable (#765)

* Enhancement/tree view selection search (#769)

* Make the search work on key down, and start at first character

* Make label for filter optional and update README accordingly

* Update height and max-height on list while searching to reduce "jumping"

* Enhancement/highcharts to many zeros in tooltip (#773)

* Rewrite decimals instead of formatting decimals in table template and tooltip

    Remove tooltip.valueDecimals in options service
    Remove code for setting decimals in table-servie
    Remove number pipe in table template

* Update highcharts doc (#775)

* Remove logs

* Update README

* Enhancement/ignore unknown diagram types (#776)

* Add test for illegal diagram type, and for multiple equal diagram types

* Enhancement/highcharts line design (#779)

* Update css for highcharts-line-series

* Enhancement/highcharts always show flags (#780)

* Remove test for flagged series in canShowFooter()

* Add test for units in canShowFooter()

* Enhancement/highcharts diagram menu styling (#781)

* Internal/update landing page (#787)

* Enhancement/mark required inputs (#784)

* Bugfix/tree view selection immutable ids (#778)

* Add new internal model with a property `internal.id` in order to make FhiTreeViewSelectionItem.id immutable

* Release/fhi-angular-components/5.3.0 (#795)

* Release/fhi-angular-highcharts/5.3.0 (#796)

---------

Co-authored-by: Bernt Andersen <[email protected]>
Co-authored-by: Bjørn-Vegard Thoresen <[email protected]>
Co-authored-by: Bjørn-Vegard Thoresen <[email protected]>
Co-authored-by: Trygve Bernhardt <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

FHI Angular Highcharts: gjør diagramOptions immutable
3 participants