From f7a0ff4538274b7d1525cb223a73985ceb2987f3 Mon Sep 17 00:00:00 2001 From: Wim Brand Date: Tue, 19 Nov 2024 15:31:51 +0100 Subject: [PATCH] Add access controls window --- svelte/rollup.config.js | 2 + svelte/src/file_viewer/Sharebar.svelte | 1 + svelte/src/file_viewer/viewers/Video.svelte | 2 + svelte/src/filesystem/Breadcrumbs.svelte | 2 +- svelte/src/filesystem/DetailsWindow.svelte | 17 ++- svelte/src/filesystem/FSNavigator.ts | 4 +- svelte/src/filesystem/FileStats.svelte | 2 +- svelte/src/filesystem/Filesystem.svelte | 4 +- .../{FilesystemAPI.ts => FilesystemAPI.mts} | 22 ++- svelte/src/filesystem/Sharebar.svelte | 3 +- svelte/src/filesystem/Toolbar.svelte | 5 +- .../edit_window/AccessControl.svelte | 137 ++++++++++++++++++ svelte/src/filesystem/edit_window/Branding.js | 2 +- .../edit_window/BrandingOptions.svelte | 2 +- .../filesystem/edit_window/EditWindow.svelte | 36 ++++- .../filesystem/edit_window/FileOptions.svelte | 16 +- .../edit_window/PermissionButton.svelte | 10 ++ .../filemanager/CreateDirectory.svelte | 4 +- .../filemanager/FileImporter.svelte | 2 +- .../filesystem/filemanager/FileManager.svelte | 5 +- .../filesystem/filemanager/GalleryView.svelte | 2 +- .../filesystem/filemanager/ListView.svelte | 8 +- .../filesystem/filemanager/SearchBar.svelte | 2 +- .../filesystem/upload_widget/UploadFunc.ts | 2 +- svelte/src/filesystem/viewers/Audio.svelte | 2 +- svelte/src/filesystem/viewers/File.svelte | 2 +- .../src/filesystem/viewers/FilePreview.svelte | 2 +- svelte/src/filesystem/viewers/Image.svelte | 2 +- svelte/src/filesystem/viewers/PDF.svelte | 2 +- svelte/src/filesystem/viewers/Text.svelte | 2 +- svelte/src/filesystem/viewers/Torrent.svelte | 2 +- svelte/src/filesystem/viewers/Video.svelte | 4 +- svelte/src/filesystem/viewers/Zip.svelte | 2 +- svelte/src/layout/Button.svelte | 12 +- svelte/src/layout/IconBlock.svelte | 1 + svelte/src/layout/TextBlock.svelte | 1 + svelte/src/layout/ToggleButton.svelte | 30 ++++ .../src/user_home/dashboard/CardFSHome.svelte | 4 +- svelte/tsconfig.json | 6 + webcontroller/filesystem.go | 2 + webcontroller/style.go | 2 +- 41 files changed, 307 insertions(+), 63 deletions(-) rename svelte/src/filesystem/{FilesystemAPI.ts => FilesystemAPI.mts} (92%) create mode 100644 svelte/src/filesystem/edit_window/AccessControl.svelte create mode 100644 svelte/src/filesystem/edit_window/PermissionButton.svelte create mode 100644 svelte/src/layout/ToggleButton.svelte create mode 100644 svelte/tsconfig.json diff --git a/svelte/rollup.config.js b/svelte/rollup.config.js index 73bc23c..6d1a975 100644 --- a/svelte/rollup.config.js +++ b/svelte/rollup.config.js @@ -29,6 +29,8 @@ export default [ file: `${builddir}/${name}.js`, }, plugins: [ + sveltePreprocess(), + svelte({ preprocess: sveltePreprocess(), compilerOptions: { diff --git a/svelte/src/file_viewer/Sharebar.svelte b/svelte/src/file_viewer/Sharebar.svelte index dd93f33..cc13c2f 100644 --- a/svelte/src/file_viewer/Sharebar.svelte +++ b/svelte/src/file_viewer/Sharebar.svelte @@ -66,6 +66,7 @@ const share_tumblr = () => { overflow-y: scroll; overflow-x: hidden; background: var(--shaded_background); + backdrop-filter: blur(4px); border-top-left-radius: 16px; border-bottom-left-radius: 16px; text-align: center; diff --git a/svelte/src/file_viewer/viewers/Video.svelte b/svelte/src/file_viewer/viewers/Video.svelte index 38827df..e1eec1b 100644 --- a/svelte/src/file_viewer/viewers/Video.svelte +++ b/svelte/src/file_viewer/viewers/Video.svelte @@ -240,6 +240,7 @@ h1 { flex-direction: row; overflow: auto; background-color: var(--shaded_background); + backdrop-filter: blur(4px); padding: 0 2px 2px 2px; align-items: center; } @@ -259,6 +260,7 @@ h1 { } .compatibility_warning { background-color: var(--shaded_background); + backdrop-filter: blur(4px); border-bottom: 2px solid #6666FF; padding: 4px; } diff --git a/svelte/src/filesystem/Breadcrumbs.svelte b/svelte/src/filesystem/Breadcrumbs.svelte index db5fdc4..8bd4e40 100644 --- a/svelte/src/filesystem/Breadcrumbs.svelte +++ b/svelte/src/filesystem/Breadcrumbs.svelte @@ -1,5 +1,5 @@ diff --git a/svelte/src/filesystem/DetailsWindow.svelte b/svelte/src/filesystem/DetailsWindow.svelte index 0115d87..b99661e 100644 --- a/svelte/src/filesystem/DetailsWindow.svelte +++ b/svelte/src/filesystem/DetailsWindow.svelte @@ -2,7 +2,7 @@ import Chart from "../util/Chart.svelte"; import { formatDataVolume, formatDate, formatThousands } from "../util/Formatting.svelte"; import Modal from "../util/Modal.svelte"; -import { fs_path_url, fs_timeseries } from "./FilesystemAPI"; +import { fs_path_url, fs_timeseries } from "./FilesystemAPI.mjs"; import { generate_share_path, generate_share_url } from "./Sharebar.svelte"; import { color_by_name } from "../util/Util.svelte"; import { tick } from "svelte"; @@ -121,7 +121,7 @@ let update_chart = async (base, timespan, interval) => { - +
@@ -132,11 +132,15 @@ let update_chart = async (base, timespan, interval) => { - + + + + + - + @@ -216,6 +220,11 @@ let update_chart = async (base, timespan, interval) => { diff --git a/svelte/src/filesystem/edit_window/Branding.js b/svelte/src/filesystem/edit_window/Branding.js index 5f9a037..7df9e43 100644 --- a/svelte/src/filesystem/edit_window/Branding.js +++ b/svelte/src/filesystem/edit_window/Branding.js @@ -68,7 +68,7 @@ const add_styles = (style, properties) => { style.body_color = properties.brand_body_color style.body_background = properties.brand_body_color style.body_text_color = add_contrast(properties.brand_body_color, 75) - style.shaded_background = set_alpha(properties.brand_body_color, 0.8) + style.shaded_background = set_alpha(properties.brand_body_color, 0.75) style.separator = add_contrast(properties.brand_body_color, 8) style.shadow_color = darken(properties.brand_body_color, 0.8) } diff --git a/svelte/src/filesystem/edit_window/BrandingOptions.svelte b/svelte/src/filesystem/edit_window/BrandingOptions.svelte index 9d5323a..4f30370 100644 --- a/svelte/src/filesystem/edit_window/BrandingOptions.svelte +++ b/svelte/src/filesystem/edit_window/BrandingOptions.svelte @@ -1,7 +1,7 @@ + +Read +Write +Delete diff --git a/svelte/src/filesystem/filemanager/CreateDirectory.svelte b/svelte/src/filesystem/filemanager/CreateDirectory.svelte index be3935d..4ff6e60 100644 --- a/svelte/src/filesystem/filemanager/CreateDirectory.svelte +++ b/svelte/src/filesystem/filemanager/CreateDirectory.svelte @@ -1,6 +1,6 @@ diff --git a/svelte/src/filesystem/viewers/Text.svelte b/svelte/src/filesystem/viewers/Text.svelte index fdf06dc..db83bd6 100644 --- a/svelte/src/filesystem/viewers/Text.svelte +++ b/svelte/src/filesystem/viewers/Text.svelte @@ -1,6 +1,6 @@ + + + + diff --git a/svelte/src/user_home/dashboard/CardFSHome.svelte b/svelte/src/user_home/dashboard/CardFSHome.svelte index fbe0ffb..23d04bb 100644 --- a/svelte/src/user_home/dashboard/CardFSHome.svelte +++ b/svelte/src/user_home/dashboard/CardFSHome.svelte @@ -1,7 +1,7 @@
Name{$nav.base.path}
CreatedCreated by user{$nav.base.created_by}
Creation date {formatDate($nav.base.created, true, true, true)}
ModifiedModification date {formatDate($nav.base.modified, true, true, true)}