this.setState({ open: !this.state.open })}>
{[...Array(indent)].map((_, i) => (
))}
@@ -80,10 +93,10 @@ export class VDirectory extends React.Component
{this.state.open && (
- {nested.map(item =>
+ {nestedModified.map(item =>
"nested" in item
- ?
- :
+ ?
+ :
)}
)}
diff --git a/web/eclipse/src/pages/files/VFile.tsx b/web/eclipse/src/pages/files/VFile.tsx
index db0d965..2257304 100644
--- a/web/eclipse/src/pages/files/VFile.tsx
+++ b/web/eclipse/src/pages/files/VFile.tsx
@@ -6,14 +6,17 @@ export type VFileData = {
name: string;
path: string;
indent: number;
- globalErrorHook?: (error: string) => void
};
type VFileState = {
isLoading: boolean;
}
-type VFileProps = VFileData;
+type VFileProps = {
+ data: VFileData;
+ isLast?: boolean
+ globalErrorHook?: (error: string) => void
+};
export class VFile extends React.PureComponent {
constructor(props: VFileProps) {
@@ -28,7 +31,7 @@ export class VFile extends React.PureComponent {
this.setState({ isLoading: true });
RequestCollection.getSettings.getSettings().then((settings) => {
if (settings.data) {
- window.location.hash = `#/lookup/${settings.data.domain}/${this.props.path}`;
+ window.location.hash = `#/lookup/${settings.data.domain}/${this.props.data.path}`;
} else {
this.props.globalErrorHook?.("Settings not found or domain is empty");
console.log("Expected settings, got:", settings);
@@ -41,10 +44,11 @@ export class VFile extends React.PureComponent {
}
render() {
- const { name, path, indent } = this.props;
+ const { name, path, indent } = this.props.data;
+ const isLast = this.props.isLast ?? false;
return (
-
+
{[...Array(indent)].map((_, i) => (
))}
diff --git a/web/eclipse/src/pages/files/VObj.scss b/web/eclipse/src/pages/files/VObj.scss
index 880968a..1e65a22 100644
--- a/web/eclipse/src/pages/files/VObj.scss
+++ b/web/eclipse/src/pages/files/VObj.scss
@@ -16,6 +16,10 @@
background-color: var(--text-input-color);
align-items: center;
+ &:not(.vobj-last) {
+ border-bottom: 2px dashed var(--secondary-background-color);
+ }
+
// font-variation-settings: 'wght' 300;
& .vobj-indent {