diff --git a/src/ui/src/builder/panels/BuilderCodePanel.vue b/src/ui/src/builder/panels/BuilderCodePanel.vue
index 67d798c4..9203fb8d 100644
--- a/src/ui/src/builder/panels/BuilderCodePanel.vue
+++ b/src/ui/src/builder/panels/BuilderCodePanel.vue
@@ -8,22 +8,26 @@
keyboard-shortcut-key="J"
class="BuilderCodePanel"
>
-
{{ status.message }}
@@ -39,6 +43,7 @@ import BuilderAsyncLoader from "../BuilderAsyncLoader.vue";
import injectionKeys from "@/injectionKeys";
import ShareSourceFilesTree from "@/components/shared/SharedSourceFilesTree/ShareSourceFilesTree.vue";
import { useSourceFiles } from "@/core/useSourceFiles";
+import ShareHorizontalResize from "@/components/shared/ShareHorizontalResize.vue";
defineProps<{
contentsTeleportEl: HTMLElement;
@@ -118,15 +123,12 @@ async function save() {
diff --git a/src/ui/src/components/shared/SharedSourceFilesTree/ShareSourceFilesTreeNode.vue b/src/ui/src/components/shared/SharedSourceFilesTree/ShareSourceFilesTreeNode.vue
index 6fb625bb..f00769a5 100644
--- a/src/ui/src/components/shared/SharedSourceFilesTree/ShareSourceFilesTreeNode.vue
+++ b/src/ui/src/components/shared/SharedSourceFilesTree/ShareSourceFilesTreeNode.vue
@@ -50,7 +50,6 @@ const isDirectory = computed(() => typeof props.content !== "string");
:class="{
'SharedSourceFilesTreeNode__file--active': isPathActive,
}"
- :data-writer-tooltip="currentPathString"
@click="$emit('select', [...path, root])"
>
description
diff --git a/src/ui/src/writerTypes.ts b/src/ui/src/writerTypes.ts
index 7f5e6dc7..6c086c47 100644
--- a/src/ui/src/writerTypes.ts
+++ b/src/ui/src/writerTypes.ts
@@ -165,6 +165,23 @@ export type AbstractTemplate = {
export type TemplateMap = Record;
+/**
+ * Represent a file tree as an object with:
+ *
+ * - the key representing the filename
+ * - the content as a string for a readable text file, or as a recursive `SourceFiles` if it's a directory
+ *
+ * @example
+ * ```json
+ * {
+ * "README.md": "# Hello\n...",
+ * "main.py": "...",
+ * "static": {
+ * "style.css": "..."
+ * }
+ * }
+ * ```
+ */
export type SourceFiles = {
[key: string]: string | SourceFiles;
};
diff --git a/src/writer/app_runner.py b/src/writer/app_runner.py
index 301028e9..cd2836a8 100644
--- a/src/writer/app_runner.py
+++ b/src/writer/app_runner.py
@@ -105,7 +105,7 @@ def __init__(self,
self.app_path = app_path
self.mode = mode
self.run_code = run_code
- self.source_files = []
+ self.source_files = {}
self.bmc_components = bmc_components
self.is_app_process_server_ready = is_app_process_server_ready
self.is_app_process_server_failed = is_app_process_server_failed
@@ -680,7 +680,7 @@ def _build_file_tree(self) -> Dict:
Example:
- >>> {"dir": {"dir": {"file": "content of the file", "dir": {}}}}
+ >>> { "README.md": "...", "main.py": "...", "static": { "style.css": "..." } }
"""
files = glob.glob(os.path.join(self.app_path, '**', "*"), recursive=True)
file_tree = {}