-
Notifications
You must be signed in to change notification settings - Fork 27
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
routes: rename workflows to workspace #1183
Conversation
import { mapState } from 'vuex' | ||
import { mdiFilter } from '@mdi/js' | ||
import uniq from 'lodash/uniq' | ||
import subscriptionComponentMixin from '@/mixins/subscriptionComponent' | ||
import TaskState from '@/model/TaskState.model' | ||
import SubscriptionQuery from '@/model/SubscriptionQuery.model' | ||
import { WorkflowState } from '@/model/WorkflowState.model' | ||
import Job from '@/components/cylc/Job' | ||
import Tree from '@/components/cylc/tree/Tree' | ||
import WorkflowIcon from '@/components/cylc/gscan/WorkflowIcon' | ||
import { filterHierarchically } from '@/components/cylc/gscan/filters' | ||
import { GSCAN_DELTAS_SUBSCRIPTION } from '@/graphql/queries' |
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 separates the component from the view code as already done for some of the other views.
- The component should be something you can mount by itself.
- Functional dependencies should provided via
props
. - It shouldn't issue subscriptions or go looking in the store, it should work by itself.
- It should be generic-ish and reusable.
- It should be component testable!
- Functional dependencies should provided via
- The "view" should contain the application logic.
- It should start the subscription (via the required mixins).
- It should fetch the relevant items from the store.
- It should be functional testable.
meta: { | ||
layout: 'default', | ||
toolbar: false, | ||
showSidebar: false |
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.
Don't show the sidebar in the workflows view, it would be duplication.
{ | ||
path: '/tree/:workflowName(.*)', | ||
view: 'Tree', | ||
name: 'tree', | ||
meta: { | ||
layout: 'default', | ||
toolbar: true | ||
toolbar: true, | ||
showSidebar: false |
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.
Don't show the sidebar in the other standalone views, these were intended to contain just the view (and the workflow toolbar, but we can add that later, it's a little tricky to do ATM, will raise an issue).
The main use case for the standalone view (besides testing) is for operators who want to be able to display one workflow per screen in a monitoring station.
1c979ef
to
d0a383c
Compare
|
Sorry if already discussed, but what about |
Workflow is a little ambiguous as all of the routes are "workflow" views. We do also intend to use the workspace view to show multiple workflows. What marks the workspace view apart from the others is Lumino. |
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.
Legit.
Happy for you to merge if you're ok to break master, or to wait for the fix to the broken test to go in first.
* Rename the `#/workflows` route to `#/workspace`. * Split the GScan component into a view and component. * Use the `#/workflows` route for GScan. * Remove the sidebar for the standalone views.
d0a383c
to
b445066
Compare
Rebased and applied the |
#/workflows
route to#/workspace
.#/workflows
route for GScan.Ideally get this into 1.4.0 before this gets into peoples browser history.
Requirements check-list
CONTRIBUTING.md
and added my name as a Code Contributor.