diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 00000000..e69de29b diff --git a/zt_frontend/src/App.vue b/zt_frontend/src/App.vue index b84d6621..ecc3f57e 100644 --- a/zt_frontend/src/App.vue +++ b/zt_frontend/src/App.vue @@ -338,21 +338,21 @@ import { NotebookNameRequest } from "./types/notebook_name_request"; import { Notebook, CodeCell, Layout, ZTComponent } from "./types/notebook"; import { Dependencies } from "./types/notebook_response"; import { DependencyOutput } from "./static-types/dependency_ouput"; -import CodeComponent from "@/components/CodeComponent.vue"; -import MarkdownComponent from "@/components/MarkdownComponent.vue"; -import EditorComponent from "@/components/EditorComponent.vue"; -import SQLComponent from "@/components/SQLComponent.vue"; -import PackageComponent from "@/components/PackageComponent.vue"; +import CodeComponent from "@/components/cells/code/CodeComponent.vue"; +import MarkdownComponent from "@/components/cells/markdown/MarkdownComponent.vue"; +import EditorComponent from "@/components/cells/text/EditorComponent.vue"; +import SQLComponent from "@/components/cells/sql/SQLComponent.vue"; +import PackageComponent from "@/components/plugins/PackageComponent.vue"; import Comments from "@/components/comments/Comments.vue"; -import CodeCellManager from "./components/CodeCellManager.vue"; -import CopilotComponent from "./components/CopilotComponent.vue"; -import ShareComponent from "./components/ShareComponent.vue"; +import CodeCellManager from "@/components/cells/base/CodeCellManager.vue"; +import CopilotComponent from "@/components/plugins/CopilotComponent.vue"; +import ShareComponent from "@/components/plugins/ShareComponent.vue"; import type { VTextField } from "vuetify/lib/components/index.mjs"; import { ztAliases } from "@/iconsets/ztIcon"; import { Timer } from "@/timer"; import { globalState } from "@/global_vars"; import { DependencyRequest } from "./types/dependency_request"; -import SidebarComponent from "@/components/FileExplorer.vue"; +import SidebarComponent from "@/components/file-system/FileExplorer.vue"; import { WebSocketManager } from "@/websocket_manager"; import { useCommentsStore } from "@/stores/comments"; diff --git a/zt_frontend/src/components/Cell.vue b/zt_frontend/src/components/Cell.vue deleted file mode 100644 index 143dc630..00000000 --- a/zt_frontend/src/components/Cell.vue +++ /dev/null @@ -1,583 +0,0 @@ - - - - diff --git a/zt_frontend/src/components/AddCell.vue b/zt_frontend/src/components/cells/base/AddCell.vue similarity index 100% rename from zt_frontend/src/components/AddCell.vue rename to zt_frontend/src/components/cells/base/AddCell.vue diff --git a/zt_frontend/src/components/cells/base/Cell.vue b/zt_frontend/src/components/cells/base/Cell.vue new file mode 100644 index 00000000..c05bdb21 --- /dev/null +++ b/zt_frontend/src/components/cells/base/Cell.vue @@ -0,0 +1,165 @@ + + + + \ No newline at end of file diff --git a/zt_frontend/src/components/cells/base/CellActionButtons.vue b/zt_frontend/src/components/cells/base/CellActionButtons.vue new file mode 100644 index 00000000..cfeed03b --- /dev/null +++ b/zt_frontend/src/components/cells/base/CellActionButtons.vue @@ -0,0 +1,79 @@ + + + + + \ No newline at end of file diff --git a/zt_frontend/src/components/cells/base/CellHeader.vue b/zt_frontend/src/components/cells/base/CellHeader.vue new file mode 100644 index 00000000..67fb5209 --- /dev/null +++ b/zt_frontend/src/components/cells/base/CellHeader.vue @@ -0,0 +1,119 @@ + + + + + \ No newline at end of file diff --git a/zt_frontend/src/components/cells/base/CellMenu.vue b/zt_frontend/src/components/cells/base/CellMenu.vue new file mode 100644 index 00000000..f6363dda --- /dev/null +++ b/zt_frontend/src/components/cells/base/CellMenu.vue @@ -0,0 +1,119 @@ + + + + \ No newline at end of file diff --git a/zt_frontend/src/components/cells/base/CellNameEditor.vue b/zt_frontend/src/components/cells/base/CellNameEditor.vue new file mode 100644 index 00000000..3dc0cd2b --- /dev/null +++ b/zt_frontend/src/components/cells/base/CellNameEditor.vue @@ -0,0 +1,89 @@ + + + + + \ No newline at end of file diff --git a/zt_frontend/src/components/CodeCellManager.vue b/zt_frontend/src/components/cells/base/CodeCellManager.vue similarity index 94% rename from zt_frontend/src/components/CodeCellManager.vue rename to zt_frontend/src/components/cells/base/CodeCellManager.vue index 28e3ce65..b22e6c53 100644 --- a/zt_frontend/src/components/CodeCellManager.vue +++ b/zt_frontend/src/components/cells/base/CodeCellManager.vue @@ -50,12 +50,12 @@ \ No newline at end of file diff --git a/zt_frontend/src/components/cells/code/HeaderTitleComponent.vue b/zt_frontend/src/components/cells/code/HeaderTitleComponent.vue new file mode 100644 index 00000000..62c58de2 --- /dev/null +++ b/zt_frontend/src/components/cells/code/HeaderTitleComponent.vue @@ -0,0 +1,51 @@ + + + \ No newline at end of file diff --git a/zt_frontend/src/components/cells/code/OutcomeComponent.vue b/zt_frontend/src/components/cells/code/OutcomeComponent.vue new file mode 100644 index 00000000..e8cc9ea0 --- /dev/null +++ b/zt_frontend/src/components/cells/code/OutcomeComponent.vue @@ -0,0 +1,72 @@ + + + diff --git a/zt_frontend/src/components/MarkdownComponent.vue b/zt_frontend/src/components/cells/markdown/MarkdownComponent.vue similarity index 98% rename from zt_frontend/src/components/MarkdownComponent.vue rename to zt_frontend/src/components/cells/markdown/MarkdownComponent.vue index 8348d00e..36b8fad7 100644 --- a/zt_frontend/src/components/MarkdownComponent.vue +++ b/zt_frontend/src/components/cells/markdown/MarkdownComponent.vue @@ -41,9 +41,9 @@ import { markdown } from '@codemirror/lang-markdown' import { oneDark } from '@codemirror/theme-one-dark' import { autocompletion } from '@codemirror/autocomplete' import { CodeCell } from "@/types/notebook"; -import AddCell from '@/components/AddCell.vue' +import AddCell from '@/components/cells/base/AddCell.vue' import { useRoute } from 'vue-router' -import Cell from '@/components/Cell.vue' +import Cell from '@/components/cells/base/Cell.vue' import {EditorView, keymap} from "@codemirror/view"; import {Prec} from "@codemirror/state"; diff --git a/zt_frontend/src/components/SQLComponent.vue b/zt_frontend/src/components/cells/sql/SQLComponent.vue similarity index 99% rename from zt_frontend/src/components/SQLComponent.vue rename to zt_frontend/src/components/cells/sql/SQLComponent.vue index 701f8c0c..c76066de 100644 --- a/zt_frontend/src/components/SQLComponent.vue +++ b/zt_frontend/src/components/cells/sql/SQLComponent.vue @@ -102,7 +102,7 @@ import { } from "@codemirror/autocomplete"; import { CodeCell } from "@/types/notebook"; import { useRoute } from "vue-router"; -import Cell from '@/components/Cell.vue' +import Cell from '@/components/cells/base/Cell.vue' export default { components: { diff --git a/zt_frontend/src/components/EditorComponent.vue b/zt_frontend/src/components/cells/text/EditorComponent.vue similarity index 99% rename from zt_frontend/src/components/EditorComponent.vue rename to zt_frontend/src/components/cells/text/EditorComponent.vue index d3184fb9..4f7d72b1 100644 --- a/zt_frontend/src/components/EditorComponent.vue +++ b/zt_frontend/src/components/cells/text/EditorComponent.vue @@ -43,7 +43,7 @@ import "tinymce/plugins/image"; import Editor from "@tinymce/tinymce-vue"; import { CodeCell } from "@/types/notebook"; import { useRoute } from "vue-router"; -import Cell from "@/components/Cell.vue"; +import Cell from "@/components/cells/base/Cell.vue"; export default { components: { diff --git a/zt_frontend/src/components/FileExplorer.vue b/zt_frontend/src/components/file-system/FileExplorer.vue similarity index 92% rename from zt_frontend/src/components/FileExplorer.vue rename to zt_frontend/src/components/file-system/FileExplorer.vue index 66383019..2a890828 100644 --- a/zt_frontend/src/components/FileExplorer.vue +++ b/zt_frontend/src/components/file-system/FileExplorer.vue @@ -77,13 +77,13 @@