-
Notifications
You must be signed in to change notification settings - Fork 5
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
feat(coscrad-frontend): refactor category tree presenters with UI context #462
base: integration
Are you sure you want to change the base?
feat(coscrad-frontend): refactor category tree presenters with UI context #462
Conversation
* WIP: building audio panel for index views * WIP: make changes from PR * WIP finish playlist detail presenter and index-to-detail flow * WIP: converted audio-panel to explicit return * fix issues after rebase * fix: type error * test(api): update stale snapshots --------- Co-authored-by: Aaron Plahn <[email protected]>
* WIP Introduce domain-dump CLI command * feat(cli): introduce first CLI command: domain-dump * fix a couple Sonar cloud issues * Add error handling to CLI bootstrap call * fix issue with test output data path * refactor basedon PR (#360) * use hard-wired test datafile name * tweak test file output name
* move builds to DigitalOcean cloud * add logging to troubleshoot missing deps * add additional logging * use nodejs plugin * add cli build
Co-authored-by: yaanahuu2 <[email protected]>
* feat(cli): introduce restore cli command * test(api): remove obsolete snapshots * refactor based on PR (#365)
* WIP remove coscrad main content container * WIP fixed tests and lint --------- Co-authored-by: yaanahuu2 <[email protected]>
* WIP: add theme properties to configurable content * WIP: theme overrides * WIP: update resource preview icons from theme * WIP: destructure theme override * test(coscrad-frontend): add test coverage for use of theme in header * test(coscrad-frontend): fix stale snapshot --------- Co-authored-by: Aaron Plahn <[email protected]>
* WIP Ensure that every domain model can build a name * fix typecheck errors * fix failing tests and update stale snapshots * make bilingual name builder logic more robust * fix front-end tests * support name property in terms flow
…ata (#346) * feat(api): add support for straight-to-database endpoint for legacy data * remove unused decorator
* test(api): discover command payload schemas dynamically * test(api): remove obsolete snapshots * refactor based on PR (#371)
…e theme (#372) * test(coscrad-frontend) added tests for components that use theme overrides * WIP: fixed tests * test(coscrad-frontend): test components that leverage the configurable theme --------- Co-authored-by: Aaron Plahn <[email protected]>
#376) * fix(coscrad-frontend): use custom label for resource index in nav menu * update stale snapshot
* style(coscrad-frontend): layout paddingTop fix * style(coscrad-frontend): make navbar siteTitle responsive (#374) * style(coscrad-frontend): make navbar siteTitle responsive * style(coscrad-frontend): responsive text size for siteTitle * style(coscrad-frontend): remove duplicate link component on nav header * style(coscrad-frontend): add changes from PR * style(coscrad-frontend): adjust nav header font color * style(coscrad-frontend): change siteTitle color to contrast the navbar
* test(api): write happy path test * test(api): created test for when ID is not generated by our system * add failing test for missing name case * WIP: flow multilingual text invariant validation through to playlist * fix stale snapshot * Remove multilingual text property from payload in favor of text and language code for name --------- Co-authored-by: Aaron Plahn <[email protected]>
* refactor(api): remove base digital asset URL from config * fix failing tests and updat snapshots * fix front-end to accommodate renamed imageUrl * WIP implement up method for base digital asset url migration * make remove base digital asset url migration reversible * WIP Create list-migrations cli command * feat(coscrad-cli): introduce **list-migrations** command * fix branch state * inject a custom logger into cli commands * implement **run-migrations** command * Ensure that null keys are removed via migrations * append default file extensions * Add safeguard that prevents running multiple migrations at once for now * refactor(api): optimize migrations via updateMany method * WIP: improve test coverage for **run-migrations** * test(coscrad-cli): improve test coverage for **run-migrations**
WIP: changes from PR WIP: refactors from PR WIP: break out presenters for individual text items WIP: combine all items into a single accordion WIP: present labels, not languageCodes to users WIP: add tooltip for language label and role WIP: create tooltip for default language label
…il (#379) * style(coscrad-frontend): add ResourceDetailFullViewPresenter in vocabulary list detail and update styling * style(coscrad-frontend): remove defaultExpanded from accordion * fix(coscrad-frontend): render language tooltip conditionally for primary language --------- Co-authored-by: Aaron Plahn <[email protected]> WIP: remove comments/notes on multilingual text presenter
* infra(api): introduce data dumps and migration records (#381) persist a migration record post-migration infra(api): persist a database migration record infra(api): dump snapshots pre- and post-migration infra(api): dump full db snapshot pre- and post-migration update broken import Refactor based on PR (#380) * Fix build
* infra(api): introduce **revert-latest-migration** * Refactor based on PR (#385)
* infra(api): introduce **validate-invariants** * fix unawaited promises * Add post-migration invariant validation check * Improve test coverage and respond to PR (#386)
* fix(api): fix logging issues with migration cli commands * Fix issues with migration cli commands * introduce env var based flag to ensure data imports are intentional * refactor test suite to share common setup between test cases
…#389) * WIP add experimental function to Jenkinsfile * WIP refactor the branch condition * WIP break out function to copy env dependent content config * update sample content config with more realistic text * comment out ci stage for troubleshooting purposes * force deployment stage to run for this PR * WIP Introduce separate Haida staging front-end build * WIP refactor Jenkinsfile * WIP configure auth for the staging environment * remove project-specific labels for staging data from front-end * force staging build to use production config * WIP troubleshoot build * Use actual test data term for word-of-the-day in sample content config * troubleshoot build * troubleshoot build * nuke node modules * troubleshoot nx issues * revert Jenkinsfile * fix front-end tests * break out build steps in Jenkinsfile * break out function to copy the staging content config * refactor Jenkinsfile to use multiple stages for deployment * break out dependency install into separate stage * break the front-end build out into a separate stage * break out back-end and cli builds into separate stages * parametrize the front-end build * break out entire front-end build block * opt back in to the front-end deployment * tweak front-end artifacts pattern * troubleshoot front-end deployment * troubleshoot deployment... * update front-end artifacts path in publisher * tweak deployment * reinstate full front-end deployment * move front-end deployment logic into reuseable function * revert to working state * tweak deployment * archive the front-end only * break out front-end deployment into reuseable function * Add Haida front-end deployment * reformat publish step for readability * wrap publish over ssh in simpler API * revert previous * wrap artifact publication block in simpler API * pass through additional params * flow through remaining parameters * refactor front-end deployment block * run backend deployment * use multi-line strings and function calls for readability * deploy cli * fix Groovy lint * revert prevoius change * fix placement of cli deploy post block * copy cli to different directory * deploy node_modules with back-end build * skip nx cache for front-end build * restore proper stage conditionals * restore another conditional stage
* feat(coscrad-frontend): create audio player component * WIP: make changes based on feedback from PR * WIP: add mime types for audio * update stale snapshots
* test(coscrad-frontend-e2e): seed fresh state for term to video connection test * seed fresh state for connected resources panel test * infra(coscrad-frontend-e2e): add shell script to run cypress * refactor based on PR (#455)
* WIP: add TRANSLATE_SONG_TITLE * fuzz test for translate song title * update stale snapshot
* WIP complete basic e2e test for TRANSLATE_SONG_TITLE * finalize e2e test for TRANSLATE_SONG_TITLE * test(api): fix stale snapshots
* WIP: create vocabulay list * refactor based on PR (#460) * validate uniqueness of new vocabulary list ID --------- Co-authored-by: Aaron Plahn <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for taking this on. There's still some cleanup work to do, but great start!
describe('Categories Tree (Tree of Knowledge) flow', () => { | ||
const pageLabel = 'Tree of Knowledge'; | ||
|
||
const dummyCompositeIdPrefix = 'category/9b1deb4d-3b7d-4bad-9bdd-2b0d7b11000'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is tooling for generating dummy composite IDs. Please use buildDummyAggregateCompositeIdentifier
along with a custom format function.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is temporary, I think I tried dummy generation and got an extra 1
apps/coscrad-frontend-e2e/src/e2e/categories/category-tree.query-flow.e2e.cy.ts
Outdated
Show resolved
Hide resolved
apps/coscrad-frontend-e2e/src/e2e/categories/category-tree.query-flow.e2e.cy.ts
Outdated
Show resolved
Hide resolved
apps/coscrad-frontend-e2e/src/e2e/categories/category-tree.query-flow.e2e.cy.ts
Outdated
Show resolved
Hide resolved
apps/coscrad-frontend-e2e/src/e2e/categories/category-tree.query-flow.e2e.cy.ts
Outdated
Show resolved
Hide resolved
apps/coscrad-frontend/src/components/tree-of-knowledge/category-tree-node.tsx
Outdated
Show resolved
Hide resolved
label: string; | ||
members: ICompositeIdentifier<CategorizableType>[]; | ||
children: ICategoryTreeViewModel<CategorizableType>[]; | ||
wrapTree: ({ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was this always passed in as a callback? This is a bit funky, but might have been done for good reasons.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, this is new
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be great to address passing wrapTree
as a property in the future, but if it can be merged in for now as is, the functionality works and the cypress test passes.
apps/coscrad-frontend/src/components/tree-of-knowledge/category-tree-ui-context.tsx
Outdated
Show resolved
Hide resolved
); | ||
}: ICategoryTreeViewModel<CategorizableType>): JSX.Element => { | ||
return ( | ||
<CategoryTreeNode id={id} label={label} members={members} wrapTree={wrapTree}> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I find passing wrapTree as a prop a bit hard to reason about. Is there a better pattern we can use?
apps/coscrad-frontend/src/components/tree-of-knowledge/types/category-tree-ui-context-type.ts
Outdated
Show resolved
Hide resolved
* WIP introduce TRANSLATE_TRANSCRIPT_LINE_ITEM * add some of the invalid test cases * Add additional invalid test cases * update test cases to iterate over all allowed resource types * tighten up all post-command checks * make command available * update stale snapshot * refactor based on PR (#459)
e4eb6a2
to
37fefee
Compare
… flow (#463) * WIP add e2e test for TRANSLATE_LINE_ITEM * test(coscrad-frontend-e2e): test TRANSLATE_LINE_ITEM in video command flow * breakout steps utility
…464) * WIP add happy path e2e test * test(coscrad-frontend-e2e): add e2e test for CREATE_VOCABULARY_LIST * Use literal command type and update stale snapshot * add context to comment
37fefee
to
ed9e2ba
Compare
Kudos, SonarCloud Quality Gate passed! 0 Bugs No Coverage information |
4b79469
to
ac52327
Compare
45ef73a
to
9411033
Compare
05c3b03
to
82386bc
Compare
0d138d6
to
a22c1f4
Compare
0507112
to
bc02871
Compare
No description provided.