Commit graph

865 commits

Author SHA1 Message Date
Manav Rathi
eecb8b70f4
[web][photos] Fix infinite loop on half-logins
Fix an infinite loop of navigation under the following conditions: key is valid
but token is not present.

Fix is to match the condition used in both gallery

    if (!key || !token) {

and the root page.

They seemed to have diverged in commit c3304571a9.

Was able to reproduce this when launching the desktop app such that the key was
picked up (possibly from a prior installation) from the secure keychain, but the
token was not found. I feel this is also a fix for a similar navigation loop
recently reported by QA but unreproducible so far.
2024-03-25 16:48:08 +05:30
Manav Rathi
f8a36852a6
Prepare for test 2024-03-25 15:39:29 +05:30
Manav Rathi
892bf852a5
Convert remaining upload functions 2024-03-25 15:29:39 +05:30
Manav Rathi
4261624da5
Handle rest of watch related functions 2024-03-25 14:03:20 +05:30
Manav Rathi
f21dc84840
Switch to async fs.exists
We cannot expose the sync version over the context bridge - the node:fs module
is not available to the preload script under context isolation.
2024-03-23 19:59:47 +05:30
Manav Rathi
b1d0909675
EXtract common queueProcessor 2024-03-23 18:49:22 +05:30
Manav Rathi
7704b902c4
Extract shared function 2024-03-23 18:46:20 +05:30
Manav Rathi
bdb2a22863
Extract shared function 2024-03-23 18:44:30 +05:30
Manav Rathi
47a7042d55
Remove dead code from cast 2024-03-23 18:38:31 +05:30
Manav Rathi
7a3209ebf6
Fix preload.ts - Part x/x 2024-03-23 16:13:16 +05:30
Crowdin Bot
e953c1c16b New Crowdin translations by GitHub Action 2024-03-23 10:40:49 +00:00
Manav Rathi
53c53cebbc
[web] Update the "source" translation
https://github.com/ente-io/ente/pull/1185 updated the file but in the accounts
app. That's not the file that's used as the source - this PR updates the one we
use as the source for Crowdin.
2024-03-23 15:01:44 +05:30
vishnukvmd
0fd4b2936d ente -> Ente 2024-03-23 12:22:16 +05:30
vishnukvmd
a96cb58f87 Fix case for strings 2024-03-23 12:20:15 +05:30
Manav Rathi
d297465ea6
Dedup 2024-03-22 20:48:57 +05:30
Manav Rathi
0a7991bc0e
Remove unused code 2024-03-22 19:52:08 +05:30
Manav Rathi
03bad54bce
Remove from the web side 2024-03-22 17:41:32 +05:30
Manav Rathi
8391e7edfc
Start migrating from promise-fs 2024-03-22 15:13:37 +05:30
Crowdin Bot
c9e008895c New Crowdin translations by GitHub Action 2024-03-22 01:36:33 +00:00
Manav Rathi
1157919496
Update the support email 2024-03-21 12:14:23 +05:30
Manav Rathi
eeaa5165ab
Remove custom cache directory
From discussions, it seems that it was pre-emptively added but not specifically
requested by a customer. We can bring this back later if needed, or at least
offer better options to clean it, but for now I'm pruning the IPC surface to
reduce the amount of work needed for handling contextIsolation and sandboxing.
2024-03-19 19:18:04 +05:30
Crowdin Bot
9e44f5cc20 New Crowdin translations by GitHub Action 2024-03-19 01:37:04 +00:00
Manav Rathi
4ff378cd06
[web] Update translations for the non-photos apps 2024-03-18 20:01:37 +05:30
Crowdin Bot
6bbd296c25 New Crowdin translations by GitHub Action 2024-03-18 03:38:20 +00:00
Manav Rathi
9012a96a58
[web] Add passkeys related translations
Obtained these strings from 33faadf83e/apps/accounts/public/locales/en/translation.json (L632)

I didn't have a way of exhaustively ensuring that all strings are covered, but
I've tried to manually verify.

Once this is merged and translation files synced with Crowdin, I'll do another
PR to update the `local/**/translation.json` files within apps/accounts.
2024-03-17 11:55:57 +05:30
Manav Rathi
f85f220c1d
Web Passkey Recovery (#1047)
## Description

* Adds passkey recovery feature parity from #1013

## Tests
2024-03-17 11:44:13 +05:30
Crowdin Bot
123fc8a883 New Crowdin translations by GitHub Action 2024-03-15 01:37:14 +00:00
Manav Rathi
56b750c1ac
[web] Exit fullscreen if needed when pressing the info button
Fixes: Info button is not working when videos are playing in full screen mode.

**Tested by**

Wasn't working before, but it works now. Still doesn't work with the keybinding,
have left a note about that in the code.
2024-03-14 15:39:03 +05:30
Manav Rathi
f1e68e9eef
Show select-all-for-day checkmark only when there is a selection 2024-03-14 14:42:27 +05:30
Crowdin Bot
419f562aed New Crowdin translations by GitHub Action 2024-03-14 04:22:53 +00:00
Manav Rathi
2faef37f4b
Fix the upload tests
The current approach wasn't working. Not sure what caused it to stop working,
but anyway that was an hacky import, as evidenced by the ungainly warning
webpack would print on `yarn dev`. So instead of taking the path, we just take
the JSON contents directly, sidestepping all that.

**Tested by**

Rerunning the upload tests
2024-03-13 14:25:07 +05:30
httpjamesm
d9b1081849
Merge branch 'main' into feature/web-passkey-recovery 2024-03-12 13:57:57 -04:00
httpjamesm
609e4d1207
feat: open accounts portal in a new tab 2024-03-12 13:56:59 -04:00
httpjamesm
d4d2c68299
feat: use encryption key for more entropy in reset secret 2024-03-12 13:56:34 -04:00
Crowdin Bot
ee7d90e55b New Crowdin translations by GitHub Action 2024-03-12 08:38:32 +00:00
Manav Rathi
206ad46950
Remove CRASH_REPORTING key 2024-03-12 13:59:45 +05:30
Manav Rathi
70cddfdf0b
[web] Remove Sentry
Sentry has a measurable impact on page load, a metric that I'm keen to
improve. Apparently by default it loses us 8-9 page speed points, though that
can be reduced to 3-4
(https://github.com/getsentry/sentry-javascript/issues/9179).

All of this is doable, but there are bigger tasks to deal with. This is not to
say that Sentry won't be useful again at some point, when we have time to deal
with it better. But right now, we discussed that it's just better to remove
Sentry instead of piling on to the sunk cost.
2024-03-12 13:24:33 +05:30
Manav Rathi
8a7f64b889
[web] New translations (#1049)
New translations from
[Crowdin](https://crowdin.com/project/ente-photos-web)
2024-03-12 11:28:39 +05:30
Neeraj Gupta
51f19cf2fd [web] Fix lint error 2024-03-12 09:33:14 +05:30
Neeraj Gupta
dbc50760af [web][passkey] Whitelist *.ente.sh redirect urls 2024-03-12 09:33:14 +05:30
Neeraj Gupta
638de0a769 [authw] Handle passkey finish redirect 2024-03-12 09:33:14 +05:30
Neeraj Gupta
cb8738287a [photosw] Enable passkey for internal users 2024-03-12 09:33:14 +05:30
Crowdin Bot
cfa4077b5c New Crowdin translations by GitHub Action 2024-03-12 01:36:05 +00:00
httpjamesm
60a8ca3e2e
feat: link to recovery page 2024-03-11 13:54:22 -04:00
httpjamesm
d0a73d729d
feat: passkey recover page 2024-03-11 13:53:49 -04:00
httpjamesm
44568dc142
feat: text recovery two factor button on passkey error 2024-03-11 13:48:05 -04:00
httpjamesm
27a1d420db
feat: configure passkey recovery on passkeys click 2024-03-11 13:24:25 -04:00
Crowdin Bot
2a33707db2 New Crowdin translations by GitHub Action 2024-03-11 10:29:16 +00:00
Manav Rathi
e3826695c5 Remove the unnecessary console warning 2024-03-11 15:31:46 +05:30
Manav Rathi
8fab6b5e48 [web] Fix shared albums
This flow probably got broken when the select-all-for-a-day functionality got
added in https://github.com/ente-io/ente/pull/674 (haven't dug into this, I'm
just guessing since that's where this all got touched).

Thank you to @Bramas on our Discord for pointing this out, and also providing the fix:
https://github.com/ente-io/ente/compare/main...Bramas:ente:fix-error-on-shared-album

Tested by
---------

Run normal web app on one terminal

    NEXT_PUBLIC_ENTE_ENDPOINT=http://localhost:8080 NEXT_PUBLIC_ENTE_ALBUMS_ENDPOINT=http://localhost:3002 yarn dev

Run the albums listener on another port (need to do this since we're running on
localhost, and need to bind to a different origin):

    NEXT_PUBLIC_ENTE_ENDPOINT=http://localhost:8080 NEXT_PUBLIC_ENTE_ALBUMS_ENDPOINT=http://localhost:3002 yarn dev:albums

Create a shared album, copy its public link, and verify that

- Before the fix we were getting an error (trying to access properties of `galleryContext.selectedFile`)
- After the fix the shared album is visible
2024-03-11 12:00:26 +05:30