Commit dda01e4
feat: published data refactor (#1896)
## Description
This PR aims to refactor the published data following the new workflow
shown in the picture bellow.
## Motivation
The old published data workflow was outdated and wasn't using all the
metadata fields that can be provided to DataCite
## Fixes:
Please provide a list of the fixes implemented in this PR
* Items added
## Changes:
Please provide a list of the changes implemented by this PR
* Changes are mostly in the way we create and edit the published data.
The published data now has configuration that is fetched from the
backend and the metadata form is generated based on that.
## Tests included
- [x] Included for each change/fix?
- [x] Passing? (Merge will not be approved unless this is checked)
## Documentation
- [ ] swagger documentation updated \[required\]
- [ ] official documentation updated \[nice-to-have\]
### official documentation info
If you have updated the official documentation, please provide PR # and
URL of the pages where the updates are included
## Backend version
- [ ] Does it require a specific version of the backend
- which version of the backend is required:
## Summary by Sourcery
Refactor the published data workflow to support dynamic metadata
configuration, full CRUD operations, and improved user experience.
New Features:
- Fetch published data configuration from backend and generate metadata
forms dynamically via JSONForms
- Add create, save, amend, publish, update, and delete actions and
effects for published data with localStorage persistence
- Implement unsaved changes guard and “Save and continue” workflow with
canDeactivate support
- Enable editing of dataset lists in batch view with navigation and
localStorage integration
Enhancements:
- Overhaul NgRx state, actions, effects, reducers, and selectors for
metadata-driven publication workflows
- Update publish and edit components to use Angular Material expansion
panels and JSONForms for metadata input
- Enhance published data details view to display metadata fields and
conditional action buttons with confirmation dialogs
- Improve dataset table selection mode based on user presence and add
status column to dashboard
Build:
- Add @jsonforms/core, @jsonforms/angular, and
@jsonforms/angular-material dependencies
Tests:
- Update unit tests for actions, effects, reducers, and selectors to
reflect new metadata structure and action names
- Adjust Cypress tests for new save and continue button IDs
Chores:
- Remove deprecated static form fields and related HTML code
- Apply styles for expansion panels and button spacing
- Add canDeactivate guard to publishing and edit routes
<img width="1172" height="1434" alt="published_data_workflow_1"
src="https://github.com/user-attachments/assets/a50e04e2-9183-457b-8d61-cb56a7be0032"
/>
---------
Co-authored-by: Martin Trajanovski <martin.trajanovski@sigmatechnology.com>
Co-authored-by: Max Novelli <Max.Novelli@ess.eu>
Co-authored-by: junjiequan <a331998513@gmail.com>1 parent 3d36143 commit dda01e4
File tree
57 files changed
+4025
-685
lines changed- .github/workflows
- CI/e2e
- cypress/e2e
- datasets
- published-data
- src
- app
- app-routing/lazy
- datasets-routing
- publisheddata-routing
- datasets
- batch-card
- batch-view
- dashboard
- dataset-table
- publish
- publisheddata
- publisheddata-dashboard
- publisheddata-details
- publisheddata-edit
- state-management
- actions
- effects
- reducers
- selectors
- state
- assets
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
57 files changed
+4025
-685
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
116 | 116 | | |
117 | 117 | | |
118 | 118 | | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
119 | 122 | | |
120 | 123 | | |
121 | 124 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
24 | | - | |
| 24 | + | |
| 25 | + | |
25 | 26 | | |
26 | 27 | | |
27 | 28 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
34 | 38 | | |
35 | 39 | | |
36 | 40 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| |||
0 commit comments