Commit graph

823 commits

Author SHA1 Message Date
Utku 97c6c7d8ea
Mobile design changes (#1886)
* bump sdk version

* move drawer

* black & blur is the way

* bottom tab height

* fix tests and cache
2023-12-12 22:14:59 +00:00
Oscar Beaumont 801f819cdf
Upgrade tracing (#1870)
* Upgrade tracing
Thank the lord it's finally here

* Fix excessive logs from mdns_sd & prisma

* fix excessive logs again
2023-12-07 10:22:26 +00:00
Brendan Allan 569a54eab3
Unify sidebar styling (#1874)
* consisten top of sidebar padding

* only show navigation buttons in tauri

* ignore non-idle router events on web
2023-12-07 09:58:25 +00:00
Brendan Allan cd32f530d6
Only handle idle history events (#1872)
only handle idle history events
2023-12-07 09:10:21 +00:00
Brendan Allan 1db2a4eccc
[ENG-1493] Fix navigation buttons with @remix-run/router patch (#1871)
* patch @remix-run/router

* add replace to a bunch of redirects

* updates + lockfile
2023-12-07 08:10:38 +00:00
Lemming e4d21b001c
fix(landing):Fixed the style of the mobile navigation bar menu bar (#1869) 2023-12-07 04:38:03 +00:00
Julian Braha edbff8b398
Resolve warnings instead of suppressing them (#1848)
* Eliminate 'unused mut' warning and suppression

* Eliminate 'unreachable code' warning and suppression

* Fix formatting
2023-12-06 06:16:14 +00:00
Brendan Allan 3d3e211ffe
move cache provider (#1857) 2023-12-05 21:25:23 +00:00
Oscar Beaumont 89a7f735e5
[ENG-1400] Normalised caching (#1734)
* prototype

* `.normalise` helper + only `String` keys

* implement it for 'search.paths'

* redux devtools

* fix

* refactor backend

* wip: upgrade to rspc fork

* mega cursed

* Upgrade Specta-related stuff

* Upgrade Typescript

* Cache debug page

* bruh

* Fix optimistic library setting

* Cache clearing

* better timeout

* Fix tags page

* bit of cleanup

---------

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2023-12-05 13:16:03 +00:00
Utku c0a5f789e8
Fix landing icon sizes (#1854)
fix icon sizes
2023-12-04 15:58:20 +00:00
jake c79c190c78
[ENG-1426] Apply clippy --fix with moderate lints (#1779)
* chore(clippy): fix

* chore: formatting

* fix: add cfg back to macos crate

* remove cfg to see if clippy works

* Restore macOS crate level conditional compilation

* More warns fixing

---------

Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
Co-authored-by: Ericson Fogo Soares <ericson.ds999@gmail.com>
2023-11-28 17:50:11 +00:00
Vítor Vasconcellos 2e17b6fe84
Small improvements to sd-server (#1822)
* Fix web spacedrive
 - Replace useOperatingSystem from App.tsx to directly using the 'browser' value, as we can't access usePlatform yet and the frontend crashes due to it.
 - Remove libav* deps from server docker, they are not needed anymore
 - Replace debian with distroless for the runtime base image in server docker

* Fix wrong distroless base image

* Copy missing shared lib

* Add comment explaining why use the debug tag for distroless

* Add missing SpacedriveInterfaceRoot in web/App.tsx
2023-11-25 01:23:10 +00:00
Utku a0b203afff
Bump versions (#1823)
release
2023-11-25 01:12:00 +00:00
Brendan Allan 41072baf32
Send release message in channel (#1824)
send release message in channel
2023-11-25 00:59:18 +00:00
Brendan Allan 908a13130c
[ENG-1435] Saved Searches (#1810)
* saved search CRUD (not perfect)

* saved search settings page

* minor improvements

* fix search filter text apply

* serach in setting

* reduce new tab flicker

* fix tab delete index

* temporarily remove hover effect from applied filters

* fix types

* fix progress

* fix double-add for inOrNotIn

* no more saved searches settings page

* redirect on saved search delete

* cleaner

* fix filter checkbox double fire

* types

---------

Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
2023-11-25 00:16:26 +00:00
Utku 3b12e4ea19
[ENG-1414] Docker Server Installation Dialog (#1774)
* docker dialog

* move tooltip inner

* types

* rename "production" tag to latest

* fix dialog with and url

* pnpm-lock
2023-11-24 19:30:19 +00:00
jake e3c2c9022b
Release: Alpha 0.1.3 (#1813)
release: 0.1.3
2023-11-23 21:24:14 +00:00
ameer2468 a7fed83556
[ENG-1413] Full disk access perms (#1791)
* fda wip

* clippy

* add tauri invoke fns for FDA

* fda wip

* clippy

* add tauri invoke fns for FDA

* wip

* fda wip

* clippy

* add tauri invoke fns for FDA

* wip

* wip

* wip fda

* remove imports

* hopefully improve FDA

* execute only on macos

* ts

* ts

* Update Platform.tsx

* Update AddLocationButton.tsx

* remove console log

* fix: fda and add unit tests

* temp commit for Jake

* add fda state and keybind handling (so the frontend is kept up to date)

* update FDA

* update imports

* testing purposes

* Jakes work

* fix fda checks

* work in progress (but not working)

* remove dead files

* attempt #2

* !!!temporarily enable devtools in prod

* remove alert

* show FDA screen but don't require it

* add an FDA button to general client settings

* Update AddLocationButton.tsx

* remove dead code

* unused dep

* old errors

* remove import

* dead code

* dead code + typesafety

* eslint

* remove fda dialog references

* remove mp4 vid

* hopefully fix onboarding for non-macos OSes

* shorter nav

---------

Co-authored-by: jake <77554505+brxken128@users.noreply.github.com>
2023-11-23 20:54:45 +00:00
Ericson "Fogo" Soares f662bf7594
[ENG-1398] Make thumbnailer parallelism configurable (#1780)
* Removing migrator

* Adding serde_repr dep

* Generalizing version manager

* Updating library config to use version manager

* Updating node config to use version manager

* Updating stuff to use new configs

* More async

* Library manager errors

* Node and thumbnailer preferences

* Small warning on prep

* Upgrading batch construction for thumbnailer

* Updating thumb version file to new version manager

* Configurable parallelism for thumbnailer

* Integration with frontend and refresh batch

Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>

---------

Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>
2023-11-23 11:23:32 +00:00
Utku 43b6453706
Mobile changes (#1784)
* privacy link

* remove spacedrop screens, add browse

* icon

* changes and network screen

* bump react native
2023-11-22 00:49:52 +00:00
ameer2468 3de321e23e
[ENG-1448] Better meta image (#1803)
Update opengraph-image.png
2023-11-21 11:28:24 +00:00
Utku bbc01294f6
[ENG-1447] Add meta image (#1799)
* meta image

* woops
2023-11-19 18:49:59 +00:00
Vítor Vasconcellos 2e6e00bc6d
[ENG-1184, ENG-1286, ENG-1330] Rework native dependencies (+ deb fixes) (#1685)
* Almost working

* Downgrade libplacebo
 - FFMpeg 6.0 uses some now removed deprecated functions

* Use -Oz for zimg

* Fix CI script to run the new ffmpeg build script

* Fix heif step name + Ignore docker cache while building in CI

* Fix Opencl build on linux

* Fix adding incorrect -target argument to linker
 - Update zig for windows target

* Disable opengl for ffmpeg, it only uses it as an outdev, not for processing
 - Disable opengl and directx for libplacebo, ffmpeg only supports vulkan when using it
 - Add WIN32_LEAN_AND_MEAN to global cflags to optimize windows api usage
 - Fix 99-heif.sh incorrect bsdtar flag

* Remove WIN32_LEAN_AND_MEAN from global CFLAGS as that was breaking OpenCL build
 - Fix Dockerfile step for cleaning up the out dir
 - Improve licensing handling

* x86_64 windows and linux builds are working

* Fix aarch64 build for windows and linux

* Fix symbol visibility in linux builds
 - Fix soxr failing to download due to sourcefourge
 - Only patch zimg on windows targets
 - Tell cmake to hide libheif symbols

* Fix Linux .so rpath
 - Add lzo dependency
 - Publish source for the built libs
 - Add warning for missing nasm in tauri.mjs
 - Remove ffmpeg install from setup.sh
 - Add download logic for our linux ffmpeg bundle in preprep.mjs

* Remove jobs, docker doesn't support this

* Fix typing

* Change ffmpeg references to native deps
 - Rename FFMpeg.framework to Spacedrive.framework
 - Centralize the macOS native deps build with the windows and linux one
 - Change the preprep script to only download our native deps
 - Remove old macOS ffmpeg build scripts

* Compress native deps before creating github artifact
 - The zip implementation for github artifact does not mantain symlinks and permissions
 - Remove conditional protoc, it is now always included

* Don't strip dylibs, it was breaking them
 - Only download macOS Framework for darwin targets
 - Fix preprep script
 - Improve README.md for native-deps
 - Fix not finding native-deps src

* Attempt to fix macOS dylib

* Fix macOS dylibs
 - Replace lld.ld64 with apple's own linker
 - Add stages for building apple's compiler tools to use instead of LLVM ones

* Ensure sourced file exists

* All targets should build now
 - Fix environment sourcing in build.sh
 - Some minor improvements to cc.sh
 - Fix incorrect flag in zlib.sh
 - Improve how -f[...] flags are passed to compiler and linker
 - Add more stack hardening flags

* We now can support macOS 11.0 on arm64

* Improve macOS Framework generation
 - Remove installed unused deps
 - Improve cleanup and organization logic in Dockerfile last step
 - Move libav* .dll.a to .lib to fix missing files in windows target
 - Remove apple tools from /srv folder after installation to prevent their files from being copied by other stage steps
 - Create all the necessary symlinks for the macOS targets while building
 - Remove symlink logic for macOS target from preprep.mjs

* Remove native-deps from spacedrive repo
 - It now resides in https://github.com/spacedriveapp/native-deps
 - Modify preprep script to dowload native-deps from new location
 - Remove Github API code from scripts (not needed anymore)
 - Add flock.mjs to allow running tauri.mjs cleanup as soon as cargo finishes building in linux

* Handle flock not present in system
 - Allow macOS to try using flock

* Fix preprep on macOS

* Add script that patch deb to fix errors and warnings raised by lintian

* Fix ctrl+c/ctrl+v typo

* Remove gstreamer1.0-gtk3 from deb dependencies

* eval is evil

* Handle tauri build release with an explicit target in fix-deb.sh

* Preserve environment variables when re-executing fix-deb with sudo

* Only execute fix-deb.sh when building a deb bundle

* Improvements fix-deb.sh

* Improve setup.sh (Add experiemental alpine support)
2023-11-17 19:20:14 +00:00
Jamie Pine 27f077ea0b
[ENG-1269] Search options (#1561)
* search options start

* small progress

* more

* bunch of stuff

* semi functioning filters

* cleanup setup api

* progress

* remove filters

* hooked up to query epic moment

* fix

* move db stuff to specific modules

* in/notIn for some fields

* generate ts

* big gains

* working filter options for locations, tags and kind

* working search query

* perfect fixed filters

* saved searches lol

* merge error

* saved searches via api

* better routing

* [ENG-1338] Fix fresh Spacedrive install failing to start due to attempting to query a nonexistent Library (#1649)

Fix Spacedrive failing to start due to attempting to query a nonexistent Library
 - Rename useShoudRedirect to useRedirectToNewLocations
 - Improve behaviour for the immedite redirection after adding a new location

* Show hidden files false by default (#1652)

bool

* fix remove filter in list

* tweaks

* fix nav buttons

* unify MediaData search handling

* cleanup saved search writing

* Add left top bar portals for tags and search + fixed media view on tags

* added search to filter dropdown

* render cycle improvements

* hotfix

* wip

* Refactor with Brendan, but this is a WIP and the search query no longer works

Co-authored-by: Brendan Allan <Brendonovich@users.noreply.github.com>

* progress

* fix location/$id page

* fix tags too

Co-authored-by: Brendan Allan <Brendonovich@users.noreply.github.com>

* 3rd refactor lol

epic style

* half-done with enum-ification of SearchFilterArgs

* broken fixed filters but working inNotIn filters

* search name + extension kinda working

* hidden filter

* fixed filters working??

* deferred search value

* extensions works

* filtered search items mostly working

* tweaks

* stacked approach working for non-search filters

* move to Explorer/Search

* actually use filterArgs in queries

things actually work properly now

* added new icons from Mint

* goof

* cleanup types, filters and mutation logic

* actually use search value

* remove overview from sidebar

* don't shrink LibrariesDropdown ga

* remove overview from sidebar and default to /network

---------

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
Co-authored-by: Brendan Allan <Brendonovich@users.noreply.github.com>
2023-11-17 06:58:44 +00:00
Brendan Allan 0ef65fce2d
[ENG-1423] Multiple tabs (#1777)
* tabs w/ multiple router instances

* fix router switching

* keybinds

* manual history tracking

* eslint

* remove scroll restoration

* fix tab removal

* route title + tab create delay

* typescript

* put tab list up top

* Remove import + show close button only if tabs length more than 1

* lint

* unify blur across whole top bar

* add to keybindings page, tauri drag region, and tooltip

* fix blur

* more drag regions

* merge moment

---------

Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
2023-11-16 15:14:47 +00:00
jake 8e8e355b76
[ENG-1026] Full Disk Access (#1778)
* basic FDA start

* FDA checks and prompt

* lockfile

* misc clippy

* Some small warnings

---------

Co-authored-by: Ericson Fogo Soares <ericson.ds999@gmail.com>
2023-11-15 19:59:50 +00:00
Carter 36cd5bf365
Fix Clippy Warnings (#1776)
Fix Warnings
2023-11-14 20:48:17 +00:00
Vítor Vasconcellos c673882ea2
Work-around broken webgl (#1645)
* Check if we can instantiate WebGLRenderer in `hasWebGLContext`
 - Work-around broken webgl support

* Instantiate WebGLRenderer manually, in Space background, so we can check if it fails
 - Try WebGL1Renderer if WebGLRenderer fails
 - Fallback to Bubbles background if no WebGL Renderer works
 - Update threejs, @react-three/drei, @react-three/fiber

* Remove superfluous WebGLRenderer intantiation check
2023-11-13 17:51:44 +00:00
Ericson "Fogo" Soares 88859026b1
[ENG-1360] Not always unlink objects from file_paths on update (#1751)
* Small warnings

* Introducing file and line number into tracing logs

* Update walker to account for existing object_ids

* Only unlinking at indexer for file_path with
object referencing more than one file_path

* Better filtering orphans file_paths

* Foreground thumbs generation for shallow media
processor

* Watcher tweaks to preserve existing object
Also fixing a media_data extraction/update bug
2023-11-09 13:47:38 +00:00
Utku cda07b5f63
[ENG-1412] Fix blog/docs image sizes (#1758)
* fix

* Add image placeholder to NextImage component
2023-11-09 07:33:47 +00:00
Utku 4d139e3229
[ENG-1406] Fix search bar take 2 (#1750)
oh man
2023-11-06 20:07:56 +00:00
Utku 8a4281edd2
Fix search bar (#1749)
layout messing scss order somehow
2023-11-06 16:30:35 +00:00
ameer2468 f4e89da4d7
[ENG-1190] New shortcuts system (#1718)
* wip new shortcuts system

* Shortcuts system and cleanup

add duplicate short, fix delete object windows context menu symbol, shortcuts system

Add cut to Edit menu

if quickPreview is open do not open the folder/doubleClick()

Update index.tsx

Update RenameTextBox.tsx

* add listObjectsNav for list view

* refactored

* Update useShortcut.ts

* Update useShortcut.ts

* remove imports

* fix copy pasting and conflicts
2023-11-06 10:37:24 +00:00
Utku 02545589ae
No placeholder buttons (#1744)
Add Android permission, organize imports, add toast for tag assign button
2023-11-05 21:59:52 +00:00
Utku b9707db139
[ENG-303] Search on Docs (#1735)
* implement search

* fix pnpm lock

* indexer action and added some alerts

* test action

* oops

* styles pls

* disable input ring
2023-11-05 20:15:24 +00:00
Oscar Beaumont 6941912891
[ENG-1399] Upgrade Rust workspace + IPv6 mDNS (#1729)
Upgrade Rust workspace + IPv6 mDNS
2023-11-04 10:20:22 +00:00
Julian Braha bf543f45d0
Remove unused dependencies in src-tauri and p2p (#1726)
* Remove unused dependency: window-shadows

* Remove unused dependencies: rmp-serde and arc-swap

* Update Cargo.lock

* remove all unused dependencies

---------

Co-authored-by: Oscar Beaumont <oscar@otbeaumont.me>
2023-11-04 04:56:53 +00:00
Ericson "Fogo" Soares 614ca0d811
Remove < 21 node restriction (#1728) 2023-11-04 03:44:07 +00:00
Ericson "Fogo" Soares f23e0b13c6
[ENG-1181] File System actions for Ephemeral Files (#1677)
* Backend side

* Rust fmt

* Removing uneeded duplicate files rspc route

* Create folder for ephemeral files

* Ephemeral delete files

* First draft on copy, cut and delete, still buggy

* Fixing copy function and updating async-channel dep

* Rename and some fixes
2023-11-03 17:06:34 +00:00
Brendan Allan b7354a4580
Urgent landing page fixes (#1724)
* don't trigger rebuild if release is draft

* be more strict about drafts

* fix
2023-11-03 10:15:29 +00:00
jake 23e9cf0553
fix: traffic light placement when non-fullscreen (#1680)
* fix macos traffic lights (round 2)

* fix typo
2023-11-03 08:43:38 +00:00
Utku 7dd164f68d
cleanup (#1723) 2023-11-03 02:08:11 +00:00
Arnab Chakraborty 576464573a
Fix adding locations to mobile application (#1681)
* Fix for android location adding fails

Added a fix for the file path error when creating locations on Android.

* Check for read-only folders

Well, it's a hacky way, and I'm sure rust may have a better solution, but for now, this checks if the app can make a file called "text.txt". If it works, it's deleted and marked as readable.

* UI Fixes for Navigation

On Android, the back button would not render for some reason. Had to go around and add to the navigation options for each screen the left arrow to go back.

Also, built the about page from the desktop builds of Spacedrive in `about.tsx`.

* Tailwind + Navigation refactor

Navigation has been fixed to not use useEffect, but now exists in the `<Stack.Screen />` code.

Also, refactored `about.tsx` to now use Tailwind instead of pure styles.

* Update AppearanceSettings.tsx

* Update AppearanceSettings.tsx

* Clean up of unused import calls

* Quick Fixes

About now has build info showing up.

Had to remove the read-only check because it was breaking adding new folders.

* Update ImportModal.tsx

Delete unused code.

* Update Settings.tsx

Remove unused imports.
2023-11-01 14:28:23 +00:00
Oscar Beaumont ff23eb369c
[ENG-1379] Library showing up twice in switcher after onboarding (#1700)
optimistic UI bug
2023-10-30 00:42:21 +00:00
Oscar Beaumont 3c0f418579
[ENG-1341] Landing download links shouldn't open new page (#1699)
do the thing betterer
2023-10-29 22:31:02 +00:00
Julian Braha 49ab0afcba
Remove unused dependencies from server (#1694)
* Remove unused dependencies from Cargo.lock

* Remove unused dependencies from Cargo.toml
2023-10-29 05:59:16 +00:00
jake c1de3c3cf9
Landing page metadata update (#1690)
* move any transparent images away from crawlers, update `robots` and add a `sitemap`

* dynamically-updated app manifest

* requested changes
2023-10-28 19:09:49 +00:00
ameer2468 a75093405c
[ENG-1361] MacOS fix copy, paste, undo, redo, select all functionality (#1684)
* Update menu.rs

* ts gaurd and correct plural for Locations title
2023-10-27 15:22:26 +00:00
Utku bf93d97874
Fix mobile onboarding (#1670)
* attempts

* expo stop using spaces pls

* attempt

* you used to work without this sir

* fixed

* use serde instead of specta

* remove `serde(default`) and update bindings

* fix mobile

* fix types

---------

Co-authored-by: jake <77554505+brxken128@users.noreply.github.com>
2023-10-26 17:38:15 +00:00
Utku ed6c76fe90
add space between os and arch (#1676) 2023-10-25 21:31:23 +00:00