Show process settings read-only for a finalised case version - #970
Show process settings read-only for a finalised case version#970Klaas-Ritense wants to merge 10 commits into
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughSummary by CodeRabbit
WalkthroughThe changes add read-only state management for process-link configuration. The modal and import configuration hide editing actions and lock controls through a mutation-observing directive. The process-management builder derives viewer mode from process state and edit permissions, disables write operations, and selects the active editor for overlays and validation. New BPMN properties-panel providers remove editing actions and restrict controls. English and Dutch translations and release notes are updated. Merge Risk: 🟡 Moderate · up to Finalized case versions may still allow process settings or process links to be changed and deployed for users with edit permission, undermining the promised read-only experience. The PR is not merge-ready until this access and editability behavior is corrected or explicitly accepted. 🚥 Pre-merge checks | ✅ 2✅ Passed checks (2 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 446fa597-a256-4610-90b2-bcb272425d60
📒 Files selected for processing (21)
documentation/release-notes/13.x.x/13.44.0/README.mdfrontend/projects/valtimo/process-link/src/lib/components/import-plugin-configuration/import-plugin-configuration.component.htmlfrontend/projects/valtimo/process-link/src/lib/components/import-plugin-configuration/import-plugin-configuration.component.tsfrontend/projects/valtimo/process-link/src/lib/components/process-link-modal/process-link-modal.component.htmlfrontend/projects/valtimo/process-link/src/lib/components/process-link-modal/process-link-modal.component.tsfrontend/projects/valtimo/process-link/src/lib/directives/index.tsfrontend/projects/valtimo/process-link/src/lib/directives/read-only-content.directive.spec.tsfrontend/projects/valtimo/process-link/src/lib/directives/read-only-content.directive.tsfrontend/projects/valtimo/process-link/src/lib/process-link.module.tsfrontend/projects/valtimo/process-link/src/lib/services/process-link-state.service.tsfrontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/index.tsfrontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/read-only-properties-panel.spec.tsfrontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/read-only-properties-panel.tsfrontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/valtimo-properties-provider.tsfrontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.htmlfrontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.scssfrontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.tsfrontend/projects/valtimo/process-management/src/lib/services/process-management-editor.service.tsfrontend/projects/valtimo/process-management/src/lib/utils/process-management-builder.utils.tsfrontend/projects/valtimo/shared/assets/core/en.jsonfrontend/projects/valtimo/shared/assets/core/nl.json
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.
…only-process-properties-panel # Conflicts: # documentation/release-notes/13.x.x/13.44.0/README.md
…only-process-properties-panel
|
Will create a test environment. This comment will be updated once it is available. This usually takes a few minutes.
Test environment metadata:
Observability: |
…only-process-properties-panel
- Restore the original control state when read-only mode ends - Keep both BPMN instances in sync for building block process links - Give the stubbed movement services a no-op start - Remove code comments
…only-process-properties-panel # Conflicts: # documentation/release-notes/13.x.x/13.44.0/README.md
…only-process-properties-panel
The read-only process link modal enforced its state by disabling every non-text input, select and button, which Carbon renders greyed out and low contrast. Controls now get the Carbon read-only modifier class of their wrapper, keeping label and value text readable, and the Carbon buttons that change the content are left out instead of greyed out. A capture phase click handler keeps a control that is reached anyway from being changed, which is what disabling used to guarantee.
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.ts (1)
1382-1382: 🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick winKeep finalised process-link settings read-only.
When
isReadOnlyProcess$istrueand the user has edit permission,editingAllowedistrue. Line 1382 then sets the modal to editable. A user can modify a process link for a finalised version.Include the final-process state in this decision.
Proposed fix
- this.processLinkStateService.setReadOnly(!this.processManagementEditorService.editingAllowed); + this.processLinkStateService.setReadOnly( + this.isReadOnlyProcess$.getValue() || !this.processManagementEditorService.editingAllowed + );
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: b9ed65e6-037e-4011-a488-2f26714829fd
📒 Files selected for processing (11)
documentation/release-notes/13.x.x/13.44.0/README.mdfrontend/projects/valtimo/process-link/src/lib/directives/read-only-content.directive.spec.tsfrontend/projects/valtimo/process-link/src/lib/directives/read-only-content.directive.tsfrontend/projects/valtimo/process-link/src/lib/services/process-link-state.service.tsfrontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/read-only-properties-panel.spec.tsfrontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/read-only-properties-panel.tsfrontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/valtimo-properties-provider.tsfrontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.scssfrontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.tsfrontend/projects/valtimo/process-management/src/lib/services/process-management-editor.service.tsfrontend/projects/valtimo/process-management/src/lib/utils/process-management-builder.utils.ts
💤 Files with no reviewable changes (6)
- frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/read-only-properties-panel.ts
- frontend/projects/valtimo/process-management/src/lib/services/process-management-editor.service.ts
- frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.scss
- frontend/projects/valtimo/process-link/src/lib/services/process-link-state.service.ts
- frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/read-only-properties-panel.spec.ts
- frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/valtimo-properties-provider.ts
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.
…only-process-properties-panel


generiekzaakafhandelcomponent/gzac-issues#506
Bug
Opening a process of a case version that has been made final showed an almost empty side
panel: clicking a task gave you the process link and nothing else. The marker toggle showed
nothing either, and the diagram could still be changed even though nothing could be saved.
Fix
The panel now shows the same settings as an editable case version - name, implementation,
listeners, input/output mappings and the rest - all read-only. Markers show again, process
links can be opened to view how they are configured, and nothing on the page can be changed.
Assumed: a process that is read-only on a case version that is not final keeps its editable
process links, since only a final version locks everything.