-
Notifications
You must be signed in to change notification settings - Fork 28
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
Use dynamic async components for workspace view tabs + 1.6.x -> master (SimpleTree view) #1318
Conversation
* A new bare-bones live tree view not available in production mode. * Indended to serve as documentation and a guide for future view development.
Resolved Conflicts: src/store/workflows.module.js src/views/Workspace.vue
simple tree: bare-bones tree view for documentation purposes
Merging 968affd
Also fixes SimpleTree view post-vue3
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.
Looks grand to me! 🙇 👏
import LogView from '@/views/Log.vue' | ||
import AnalysisView from '@/views/Analysis.vue' | ||
|
||
// Use dynamic async components for lazy loading: |
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.
👌
class="h-100" | ||
/> | ||
</Teleport> | ||
</template> |
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.
👏 👏 👏
const allViews = [ | ||
{ name: 'Tree', component: TreeView, icon: mdiFileTree }, | ||
{ name: 'Table', component: TableView, icon: mdiTable }, | ||
{ name: 'Graph', component: GraphView, icon: mdiGraph }, | ||
{ name: 'Log', component: LogView, icon: mdiFileDocumentMultipleOutline }, | ||
{ name: 'Analysis', component: AnalysisView, icon: mdiChartLine }, | ||
] |
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.
For the long term we should think about how to make views more "plugable". It would be helpful for this information to remain tethered with the view, perhaps in some kind of metadata / sidecar file that could be imported separately. Would be worth taking a look at how Jupyter Lab make their "views" plugable as they face a similar (but more advanced) problem here.
No need for changes, this is great for now, but something to store in the back of the mind for later work...
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.
Added a "pending" issue to preserve this, #1319
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.
👍
In order to incorporate the dynamically imported SimpleTree view it seemed necessary to make all the views dynamically imported in Vue 3. Closes #1221.
I also took this opportunity to use
<Teleport>
instead of the hacky solution for displaying these views in the Lumino tabs. (Hat tip to @kinow for the suggestion, it is rather nice!). Closes #1273.Sync:
Check List
CONTRIBUTING.md
and added my name as a Code Contributor.