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

add applicationLayout settings to ApplicationLayoutDto #129

Open
vferraro-scottlogic opened this issue Dec 5, 2023 · 2 comments · May be fixed by #135
Open

add applicationLayout settings to ApplicationLayoutDto #129

vferraro-scottlogic opened this issue Dec 5, 2023 · 2 comments · May be fixed by #135
Assignees

Comments

@vferraro-scottlogic
Copy link

vferraro-scottlogic commented Dec 5, 2023

Background

The LayoutPersistenceManager interface has changed so that we are expecting GET/POST ApplicationLayout to return/take an ApplicationJSON object (it is actually wrapped in an object like such: { definition: ApplicationJSON } but we can remove this and just return an ApplicationJSON object). We need to change the ApplicationLayoutDto to reflect this change.

Work Required

  • server
    • add settings to ApplicationLayoutDto
    • remove username from ApplicationLayoutDto
    • add settings to ApplicationLayout model
    • store applicationLayoutSettings in DB
  • client
    • replace GetApplicationResponseDto with ApplicationJSON

Notes

  • on the client side AppliationJSON is defined as follows:
interface ApplicationJSON {
  layout: LayoutJSON;
  settings?: ApplicationSettings;
}

interface ApplicationSettings {
  leftNav?: {
    activeTabIndex: number;
    expanded: boolean;
  };
}
@pling-scottlogic
Copy link

API contract to be modelled as two blobs of JSON for layout and settings. Tests to be written for contract.

@cfisher-scottlogic
Copy link

cfisher-scottlogic commented Jan 5, 2024

WIP on branch SLVUU-129-settings-in-dto

  • TODOs in the code to fix failing tests
  • add settings to ApplicationLayoutDto (not needed, keep it generic as one big JSON blob?)
  • add settings to ApplicationLayout model (or not if generic)
  • remove username from ApplicationLayoutDto
  • replace GetApplicationResponseDto with ApplicationJSON
  • make the cypress tests use the explicit types as defined in RemoteLayoutPersistenceManager
  • server tests

Remember there's a new component ticket to take this from 'api tests' to 'tests for the remote layout persistence manager'

@pling-scottlogic pling-scottlogic linked a pull request Jan 9, 2024 that will close this issue
@pling-scottlogic pling-scottlogic self-assigned this Jan 10, 2024
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 a pull request may close this issue.

3 participants