Commit Graph

57 Commits

Author SHA1 Message Date
Consoli
9e09d92f03 [ENG-1159] Report progress when copying files (#2538)
* Copy ephemeral files by chunks

* Improving buffered writer

* Report progress

* Copy and emit progress as two separated tasks

* Simplify for-if-return with `Iterator::any`

* Docs and use structured tracing

* Simplify code using paths

* wip

* wip

* wip

* wip

* Add report of messages while copying files

* Add info field to job report

* Group paths from OldFileCopierJobStep into a single struct

* Improve progress information

* Remove the need for synchronization

* Error handling for copy

* Clean up frontend

* Make watcher only consider new files

* Fix concurrent renaming of multiple files that have the same name

* Add documentation for file strategist

* Remove editions to ephemeral file copies

* Remove experimental/nightly features from Cargo.toml

* Fix no-case-declarations

* Remove dead comments

* Format code

* Use "Duplicate" instead of "Copy" in the frontend messages

* Remove inline always to make clippy happy

* icons for deleter and copier

* Fix JobManager for copy jobs
 - Fix some types definitions

* Fix Job icon choosing logic
 - Fix Copier job showing two progress bars

* Log which files are not formatted in the Type and style check CI

* fmt

* Forgot an import

* autoformat

---------

Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
2024-08-17 02:00:59 +00:00
Matthew Yung
c68f30b55a [ENG-1238] Improving job manager feedback and usability (#2607)
* calculate jobs eta

* calculate eta for single + group jobs

* fix issue with clearing running job groups

* clear completed with error tasks

* error handling for ETA

* fix typeerrors and minor styling for ETA

* fix clearing all jobs & types

* Update JobGroup.tsx

* Update JobGroup.tsx

---------

Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
2024-07-17 14:41:06 +00:00
ameer2468
c419c7969a [ENG-1808] Fix job manager icons (#2573)
Fix job manager icons
2024-06-27 15:56:07 +00:00
Ericson "Fogo" Soares
c0d736453e [ENG-1775] Scan location using new jobs (#2476)
* First draft on task system usage, still missing job system

* Scan location roughly working, a ton of stuff to fix yet

* Updating some deps due to crashes and bugs

* Exposing non critical errors to frontend

* Getting active job reports from job system

* Using boxed opaque type to avoid a downcast issue with generics

* Task system issues discovered on race conditions

* Enable debug

* Fix job report in the job manager

* Fix race condition on steal tasks

* Fixed race condition on task suspend

* Some fixes on job progress reporting and save

* Fixed many race conditions and a hard deadlock
Also some progress report polishing

* Ignore .ts and .mts video files for now

* Some better logs

* bruh

* Internal deadlocks and excess of communication in the task system
- Also better logs

* Bunch of fixes and optimizations

* WIP at fixing file identifier

* Fixed file identifier job
- still need to work on its progress report frontend

* A bunch of polishing

* Fixed some bugs and did more polishing

* Cleanup

* Bridging old and new job systems

* A ton of fixes

* A bunch of bugs related to shutdown and resume

* Indexer and watcher bugs

* Log normalizing

* Fixing CI

* Change error! to warn! on non critical errors log

* Fix redirect to new location

* Type annotation

* Bogus merge resolution on cargo lock
2024-06-17 21:30:57 +00:00
Artsiom Voitas
a1663426f8 i18n Keys for Size values and partial Job Manager translation (#2480)
* added more translation keys and a little bit refreshed overview card style

* reverted style changes and disabled pluralize func

* minor changes

* added a couple of translation keys for job manager

* deleted unused keys

* updated translations, changed card style in overview section

* forgot about console.log

* more translation and minor fixes in translation

* translation for sync component
2024-05-17 15:44:47 +00:00
Utku
62c6ad97e5 [MOB-35] Explorer sort by (#2387)
* pnpm

* hide search on some screens

* translations

* move shared order stuff to @sd/client

* some ideas

* wip - redesign otw

* Merge remote-tracking branch 'origin' into mob-35-explorer-sort-by

* header adjustments and more

---------

Co-authored-by: Jamie Pine <32987599+jamiepine@users.noreply.github.com>
Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
2024-05-07 22:12:09 +00:00
nikec
407f99248b [ENG-578] Resizable sidebar (#2425)
* v1

* Update pnpm-lock.yaml

* Update store.ts

* Update index.tsx

* fix animation

* toggle_sidebar

* locales
2024-05-01 14:35:09 +00:00
ameer2468
a943fddfea [ENG-1699] Pin Job manager (#2264)
* wip

* minor cleanup

* Update Popover.tsx

* remove prop
2024-03-29 16:48:05 +00:00
Utku
57156a729b Fix all the weird eslint warnings (#2245)
* actually fix the weird lint errors

* Prettier auto-format

---------

Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
2024-03-26 20:46:44 +00:00
Utku
7e5f7c0539 Make eslint happy (#2198)
* eslint maxing

* @sd/ui too
2024-03-12 20:41:41 +00:00
Utku
1e18288c71 [MOB-4] Toast messages (#2132)
* cleanup and add toast package

* fix screen container & use scrollview by default

* more cleanup and toast api

* now it works hmm

* toasts
2024-02-28 09:33:24 +00:00
Utku
badae3c75a [MOB-37, MOB-38, MOB-39] Preview for PDF, Text and Media files (#2098)
* version & microphonePermission text & eslint

* remove polyfill as hermes supports intl now

* why do we have solid on mobile?

* cleanup

* add solid back =_=

* pnpm lock

* we hate relative paths here

* android config

* open file logic

* visual tweaks

---------

Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
2024-02-21 13:26:05 +00:00
Utku
0d5f92667c [ENG-1502] I18n (#1897)
* you know, you could just work on first try

* fix extension

* configure plugin and fix few translation issues

* more

* more keys

* and more

* more keys and sort

* commit msg

* we like keys here

* end my suffering

* jk i just love keys

* key fix

* add turkish

* add german

* Entendido

* Demnächst

* Mettre une étoile sur GitHub

* 成功

* pnpm-lock

* vite plugin

* remove i18next backends

---------

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2024-01-08 20:26:46 +00:00
pr
a77b06aa84 Job text tabular-nums to reduce jumpiness (#1647)
job text tabular-nums to reduce jumpiness
& swap Scanning: and Found: text to also reduce jumpiness
2023-10-20 16:56:34 +00:00
pr
70c965d212 job manager: utils/formatNumber all numbers (#1511) 2023-10-19 03:23:27 +00:00
pr
a55ff48f4b some light mode fixes (#1581) 2023-10-14 07:42:31 +00:00
Oscar Beaumont
52a4a16423 [ENG-1141] Show running jobs first (#1400)
* Fix Rust panics when opening HEIC in `QuickPreview`

* Sort it

* improve sorting
2023-10-03 16:26:59 +00:00
ameer2468
257f364c53 [ENG-1149] Tags unassignment UI update and fixes (#1406)
* Multiple minor fixes and tweaks

* close context menu if no items are selected

* fix

* type

* Update keybindings.tsx

* useMatch and rspc to invalidate

* fix selectable

---------

Co-authored-by: nikec <nikec.job@gmail.com>
2023-09-29 14:48:35 +00:00
Ericson "Fogo" Soares
5f5cd60dd2 [ENG-1116] Distinct job manager for library (#1363)
Done
2023-09-21 11:10:56 +00:00
ameer2468
41493b4655 [ENG-1089] Tooltips visual upgrade and shortcuts (#1351)
* tooltip visual upgrade and shortcuts

This gives tooltips an upgrade, visually + supporting keybinds

* B to V

* Cannot make tooltip do conversion due to dependency cycle

* semantics

* Update style.scss

* useKeyBind to consider upper and lowercase

* Change from strings to array + small visual tweaks

* oops
2023-09-15 13:39:58 +00:00
ameer2468
9fe8fd4723 Fix dropdown styling (#1337)
* Update JobGroup.tsx

* Update JobGroup.tsx
2023-09-12 11:40:17 +00:00
ameer2468
14f2a4300c [ENG-970] Job dropdown with actions (#1329)
* Job dropdown with actions

* Update JobGroup.tsx

* fix hover colors for theme support

* Update Dropdown.tsx

* Update JobGroup.tsx

---------

Co-authored-by: Utku <74243531+utkubakir@users.noreply.github.com>
2023-09-11 15:41:51 +00:00
Utku
04816345b3 [ENG-1067] Update phosphor to new package & update sort imports (#1330)
* ianvs > trivago

* @phosphor-icons/react > phosphor-react
2023-09-11 15:26:44 +00:00
Utku
be71f31d63 Fix mobile by using memo (#1308)
* fix

* fix double library display
2023-09-07 10:03:25 +00:00
Ericson "Fogo" Soares
042b0f40af [ENG-941] Jobs running in another library do not appear in the job manager (#1306)
* Fetching job reports from all libraries
Some clippy warnings
pnpm format

* Reverting expects to unwraps
2023-09-07 04:15:31 +00:00
Utku
116db7a6d0 Fix job image (#1291)
fix job image
2023-09-04 10:17:40 +00:00
Ericson "Fogo" Soares
5bf44c0825 [ENG-1028] Media data for ephemeral locations (#1287)
Introducing new getEphemeralMediaData
Fixing some minor stuff
Running pnpm format

Co-authored-by: jake <77554505+brxken128@users.noreply.github.com>
2023-09-04 08:28:45 +00:00
nikec
0ac8cfb79a [ENG-1064] replace alert dialogs with toasts (#1290)
* replace alert dialogs with toasts

* revert job error to alertDialog
2023-09-02 21:31:53 +00:00
nikec
f9302dfed8 [ENG-1038] toast improvements (#1285)
* toast improvements

* improved toast message

* fix types

---------

Co-authored-by: Utku <74243531+utkubakir@users.noreply.github.com>
2023-09-01 17:14:28 +00:00
ameer2468
8d16652c42 [ENG-809] Enter key submits dialog (#1279)
* enter key submit dialog

* code test

* input focus fix + dialog closes only if form is valid

* Update CreateDialog.tsx
2023-08-31 13:22:24 +00:00
ameer2468
ed2b705cd2 [ENG-775] Jobs clearing improvement (#1278)
Update index.tsx
2023-08-30 15:44:18 +00:00
ameer2468
bbdd46f149 [ENG-1017] Job name tooltip center (#1274)
Update JobContainer.tsx
2023-08-30 10:02:00 +00:00
ameer2468
8893ea9214 [ENG-1016] Job name overflow (#1263)
* Update JobContainer.tsx

* Update JobContainer.tsx

* Update JobContainer.tsx
2023-08-28 15:45:45 +00:00
Utku
9141333b15 [MOB-2] Job Manager (#1114)
* add job manager modal and button

* cleanup directories and add card to debug screen

* expo sdk 49

* update pods

* updated native android files

* updated native ios files

* pods being cringe

* update hermes

* podfile

* big update packages

* fix and upgrade animations to reanimated 3

* nice types moti

* clean imports

* upgrade react-hook-form (fix type)

* move stuff to sd/client and some organization

* camel case

* i liek switch

* Merge iconImg & circleIcon props

* wip

* copy changes to mobile

* move job context and job progress to client and also use it on mobile

* pnpm-lock

* (wip) - make job swipeable + styling

* job progress bar and more style tweaks

* no spring animation on progress bar pls

* new loading animation

* padding and pnpm lock

* indeterminate progress bar

* cleanup & update packages etc

* leave some todos for future

* fix types

* monorepo types :)

---------

Co-authored-by: Oscar Beaumont <oscar@otbeaumont.me>
2023-08-25 21:40:07 +00:00
Brendan Allan
9139ce5aae [ENG-968] Cache job progress events (#1203)
* cache job report events in context

* hoist report state to JobManager

---------

Co-authored-by: Jamie Pine <32987599+jamiepine@users.noreply.github.com>
2023-08-12 07:41:18 +00:00
Jamie Pine
7067dcb35c [ENG-869] Fix identifier missing comma (#1060)
* fix, untested

* formatNumber util

---------

Co-authored-by: Utku <74243531+utkubakir@users.noreply.github.com>
Co-authored-by: jake <77554505+brxken128@users.noreply.github.com>
2023-07-04 15:34:37 +00:00
Ericson "Fogo" Soares
3a46ea4370 Job System and Watcher improvements (#1030)
* Trying to make watcher more resilient between creates and updates

* More checks on create vs update

* Rust fmt

* PCR rev

* Windows CI fix

* Some indexer improvements

* Builder pattern for jobs and reports

* fix list view invalid date

* fix progress bar

* Normalizing job metadata output

* fixed job metadata

* Removing inner report struct from identifier job

---------

Co-authored-by: Jamie Pine <32987599+jamiepine@users.noreply.github.com>
Co-authored-by: Utku <74243531+utkubakir@users.noreply.github.com>
Co-authored-by: Jamie Pine <ijamespine@me.com>
2023-06-28 16:30:19 +00:00
Brendan Allan
411f0335ba [ENG-829] Render QuickPreview in Explorer/View (#1036)
formatting + render QuickPreview in Explorer/View
2023-06-28 02:07:22 +00:00
Oscar Beaumont
de7e4df0b4 [ENG-823] Fix some stuff (#1024)
* SQLite journal bug

* Remove "job.report" indexes thing

* resume button - job not found?

* panic hook with logging

* it did

* large pain

* fix `check_nested_location`

---------

Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
2023-06-27 05:12:04 +00:00
ameer2468
07bc7d17d1 [ENG-804, ENG-802, ENG-800] Minor UI Fixes (#1016)
* Minor UI Fixes

* adjustments

* show file name and extension only if truncated and with tooltip

* name

* oops

* truncate lib name

* cleanup

---------

Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
2023-06-25 16:27:03 +00:00
Ericson "Fogo" Soares
05bbfa7d92 [ENG-670 / ENG-774] Resumable and Pausable jobs / Queued jobs don't show in the job manager (#961)
* Fixing some warnings

* Optimizing job workers

* Removing the delay from getting job reports

* remove some commented out stuff

* Trying to optimize job report route

* fix thread 'tokio-runtime-worker' panicked at 'attempt to subtract with overflow'

* fix progress bar

* Now pause works from the UI

* Fix

* Now the worker set job report to paused

* show errors for job pause/resume

* bunch 'o ui fixes

* order location in the sidebar

* fix some text

* fix clear all jobs

* fix clear jobs & job group ui

* show queued jobs

* object validator job text

* make cancel button work

* better executable logo

* Now cancel button works instantly

* disable resume button

* remove disabled props from pause/resume buttons

* remove large comments

* show paused progress

---------

Co-authored-by: James Pine <ijamespine@me.com>
Co-authored-by: Jamie Pine <32987599+jamiepine@users.noreply.github.com>
2023-06-24 07:23:30 +00:00
Vítor Vasconcellos
4d79855881 Revert some schema changes from #992 (#1003)
- Revert useExplorerSearchParams removal
 - Move schemas to a rout-schemas file
 - Formatting
2023-06-23 05:57:19 +00:00
Ericson "Fogo" Soares
9fd0d9ab90 [ENG-770 / ENG-773] Copy/paste / Explorer context menu duplicate (#992)
* Fixing copy, cut and paste

* Bug on duplicating files without extensions

* Fix paste only ignoring the location origin when validating relative paths
 - Add Error handling to all context menu actions
 - Hide FS actions in Overview and MediaView
 - Remove redundant useExplorerSearchParams
 - Add default schema to the Zod param hooks

* Hide FS actions in all Explorers but location ones
 - Fix react warnings in RenameTextBox
 - Fix ReactTextBox not selecting the whole file name, instead of just up to file extension
 - Fix react warning due to inputing missing onChange

* basic show jobs for cut, copy and delete in job manager

* tweaks

* Fixing some warnings and minor tweaks

* Rust fmt

* Fix cut between locations on Linux

* Change how routes retrieve route params
 - Replace useZodRouteParams with useLoader
 - Define all schemas in the router file instead of in the route Component
 - Parse schema in loader to avoid requiring the route Components having to import the schema from the router file

* Remove default argument from useZodRouteParams

---------

Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
Co-authored-by: Jamie Pine <32987599+jamiepine@users.noreply.github.com>
Co-authored-by: James Pine <ijamespine@me.com>
2023-06-22 23:41:29 +00:00
Jamie Pine
f18dcfcdac [ENG-686, ENG-670, ENG-669] Improved Job Manager (#907)
* refactor job manager ui

* huge improvements to job ui api

* improve indexer errors

* minor improvements

* make icon bigger + improve styling

* Update useJobInfo.tsx

better

* improve job status reporting

* fix job indexer backend for ui responsiveness

* attempt at debugging job.getRunning slow invalidation during indexer's walk phase

* remove progress debounce, invalidate has its own throttle layer

* hotfix ghost jobs

* basic pause/resume

* pause functionality immaculate

* pause resume working for first job in group, testable on indexer phase two

* WIP
- refactored job manager
- added better job api

* fix merge issues

* add throttle to job update events and correct index

* improve front end job data handling

* move subscription to job

* wip active job indicator

* minor tweak

* Isolated subscriptions for job events + cleanup

Co-authored-by: Brendan Allan <Brendonovich@users.noreply.github.com>
Co-authored-by: Oscar Beaumont <oscar@otbeaumont.me>

* mutable ctx

* plz let me build rspc typesafe errors Jamie

* fix merge

* working job reporting

* fix thumbnail text

* faster tick speed

* fix error

---------

Co-authored-by: Brendan Allan <Brendonovich@users.noreply.github.com>
Co-authored-by: Oscar Beaumont <oscar@otbeaumont.me>
2023-06-16 03:49:02 +00:00
Ericson "Fogo" Soares
3a1fe4dfde [ENG-381] Update context menufs actions to support multiple source (#927)
* Generalizing filesystem jobs to accept multiple files at once

* Some small changes and fixing front

* Enable rename route to replicate Finder's behavior

* Assign tag to multiple objects at once

* Remove from recents accepting multiple files

* Fixing some warnings

* Adding multiple files feature to Open and Open With

* Conditional stuff for macos

* Generating commands.ts and other minor warnings

* Rust fmt

* TS typecheck

* Rust format and TS typecheck

* Requested changes

* Requested changes

---------

Co-authored-by: Utku <74243531+utkubakir@users.noreply.github.com>
2023-06-14 23:00:28 +00:00
nikec
e3eeab5513 [ENG 655] Explorer restructure (#858)
* wip

* wip 2

* Grid list single selection

* core & pnpm-lock

* Merge branch 'main'

Conflicts:
	interface/app/$libraryId/Explorer/index.tsx

* missing import from merge

* fix total_orphan_paths bug

* add top bar context

* missing pieces of merge

* missing pieces of merge

* missing divs

* Fill fallback value - was causing null error of page

* spelling fixes

* notice light theme, list view update, other explorer updates

* Update pnpm-lock

* Remove procedure

* fix light menu ink color

* fix list view scrolled state

* Change layout default

* Remove unused imports

* remove keys

* empty notice & context menu overview

* Fix prevent selection while context menu is up

* Fix scroll with keys

* Empty notice icon

* Add light icons

* Context menu and fixed list view scroll

* Fix name column sizing

* top/bottom scroll position

* Tag assign only when objectData

* Fix list view locked state

* fix ci

* shamefully ignore eslint

---------

Co-authored-by: Jamie Pine <ijamespine@me.com>
Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
Co-authored-by: Jamie Pine <32987599+jamiepine@users.noreply.github.com>
Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
2023-06-06 06:55:56 +00:00
Jamie Pine
92500a8948 [ENG-682] Update ink styles (#898)
correct ink
2023-06-01 04:52:16 +00:00
Utku
f8dd07a320 fix icon & run pnpm format and lint fix (#859)
* fix icon & run pnpm format and lint fix

* format
2023-05-25 14:49:54 +00:00
Jamie Pine
3254768f5e [ENG-635] Job time estimation (#842)
* fix extension case sensitivity

* job time estimation wip

* update schema

* use `DateTime` to handle estimated completion time

* use a date with `dayjs`

* remove old migrations

* update migrations

* remove dead code

* Quick tweaks

* unused import

---------

Co-authored-by: brxken128 <77554505+brxken128@users.noreply.github.com>
Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
2023-05-23 22:21:52 +00:00
Brendan Allan
9995db2a32 Use search.objects for recents query (#850)
* separate search + filter + ordering

* typesafe categories

* make ordering great again

* fix ts

* eslint
2023-05-23 12:58:45 +00:00