Commit Graph

535 Commits

Author SHA1 Message Date
KernelDeimos
1da3a769c4 Use localstorage instead of cookie for list-sessions 2024-04-12 00:19:07 -04:00
KernelDeimos
356a3284fa Fix mysql incompatibility 2024-04-12 00:10:56 -04:00
KernelDeimos
0eedcf567e Apply some fixes 2024-04-11 23:48:17 -04:00
KernelDeimos
f4f58dbfb9 Fix destructuring 2024-04-11 23:28:40 -04:00
Eric Dubé
8135e076c2
Merge pull request #266 from HeyPuter/eric/session-updates
session management
2024-04-11 22:04:07 -04:00
Eric Dubé
22b3415866
Merge pull request #265 from HeyPuter/eric/puter-dot-js
puter.js
2024-04-11 21:59:46 -04:00
KernelDeimos
5effca4bbc Add missing i18n key 2024-04-11 21:57:26 -04:00
KernelDeimos
aa14541e50 Update package-lock.json for npm ci 2024-04-11 21:54:50 -04:00
KernelDeimos
13525c85a0 -dot- 2024-04-11 21:46:43 -04:00
KernelDeimos
2f6f7e39bb Add timestamp 2024-04-11 21:41:19 -04:00
KernelDeimos
2d76025c9c Send cookie on token upgrade 2024-04-11 21:40:10 -04:00
KernelDeimos
bb9edc4f65 Add automatic token migration 2024-04-11 21:33:44 -04:00
KernelDeimos
afcd821f50 Update README.md 2024-04-11 19:40:50 -04:00
KernelDeimos
b8e66cada9 Add puter.js 2024-04-11 19:07:00 -04:00
KernelDeimos
fc5025a2a8 Simplify PuterVersionService 2024-04-11 14:37:34 -04:00
KernelDeimos
e3d238f897 Do not use git to get version number 2024-04-11 13:57:40 -04:00
Nariman Jelveh
9ab3e3ccd8
Merge pull request #244 from HeyPuter/eric/host-storage
Display storage use of host/puter separately
2024-04-11 10:14:45 -07:00
Nariman Jelveh
7abf5faa3c fix missing translations 2024-04-11 10:13:52 -07:00
Nariman Jelveh
4052c7995c
Merge pull request #260 from AtkinsSJ/fix-silly-mistakes
Fix permission check for closeApp message
2024-04-11 09:48:02 -07:00
Sam Atkins
776b6831f3 Fix permission check for closeApp message
Firstly, I was missing an `async` here, which somehow still worked for
me then, but produced errors for me when I tried it today.

Then, actually await the promise.

Finally, actually check the target's parent is us, and not just that it
has the attribute!

I don't know what was going on in my head that day. 🤦‍♂️
2024-04-11 17:21:23 +01:00
Nariman Jelveh
a2d231dc23
Merge pull request #259 from PeterDaveHelloKitchen/zhtw
Add a simple Traditional Chinese translation
2024-04-11 09:02:20 -07:00
Peter Dave Hello
1aeedd8696 Add a simple Traditional Chinese translation 2024-04-11 20:03:13 +08:00
KernelDeimos
09bf422686 Add session manager ui 2024-04-11 00:29:39 -04:00
KernelDeimos
18b3e06fe8 Add session listing and revocation 2024-04-10 23:00:37 -04:00
KernelDeimos
e436693d3e Improve session mgmt (part 1) 2024-04-10 21:54:16 -04:00
KernelDeimos
eb66848aee Update database version when creating a new one 2024-04-10 12:25:44 -04:00
KernelDeimos
0eded34c8c Add indented logs and fix a bug 2024-04-10 12:22:21 -04:00
KernelDeimos
367c18bfc5 Add endpoint to list permissions 2024-04-10 12:16:08 -04:00
Eric Dubé
92dc0a7671
Merge pull request #255 from AtkinsSJ/appconnection-close
Notify apps when a child app closes, and let them close their children manually
2024-04-09 21:31:48 -04:00
Eric Dubé
8e553b4ee0
Merge pull request #252 from AtkinsSJ/broadcasts
Add a message broadcasting system
2024-04-09 21:29:46 -04:00
Sam Atkins
21c64e827b Add closeApp message
Sending a 'closeApp' message allows an app to close a target app, if it
has permission to do so. Currently, permission is granted if the
requesting app is the parent of the target app, or has godmode set.
2024-04-09 16:09:12 +01:00
Sam Atkins
c69a0abfa9 Extract a window_for_app_instance() helper function 2024-04-09 15:55:14 +01:00
Sam Atkins
cce6531d45 Notify parents/children when an app closes
Send an appClosed message with the instance ID of the app that was
closed. This will be picked up by Puter.js's AppConnection and reported
as a 'close' event.

To make this work, a `data-parent_instance_id` attribute is set on child
app windows. This is very similar to the `data-parent_uuid` attribute,
which tracks parent windows instead of parent app instances. (Dialogs
have a parent window, but are not apps, so don't have a parent app
instance.) The difference is subtle, and we may want to combine these in
the future, but currently closing an app will close any child windows,
which is not behaviour we want for child apps.
2024-04-09 15:55:14 +01:00
Sam Atkins
84a31b3520 Broadcast when the language changes
This is left open to future additions, by naming it 'locale', and having
the language just be an object field.

Side note, maybe we should have a LocaleService for this?
2024-04-09 10:44:51 +01:00
Sam Atkins
59cdb6e8c6 Broadcast when theme changes 2024-04-09 10:44:51 +01:00
Sam Atkins
068e620249 Add a message broadcasting service
A broadcast is a message sent to every running app that uses Puter.js.
Broadcasts have a name and a data payload, and are sent as a 'broadcast'
message.

Send a broadcast using:
`globalThis.services.get('broadcast').sendBroadcast(...)`

When doing so, you have the option to keep the broadcast message around,
so that it can be sent to any newly-launched apps. Sending another
broadcast with the same name will overwrite the previous one, so you
don't have to worry about flooding a new app with duplicates.
2024-04-09 10:44:51 +01:00
Aya Moosa
80aa87023e working white text, not perfect with all colors 2024-04-08 22:01:00 -07:00
Aya Moosa
626d63c91d working white text, not perfect with all colors 2024-04-08 22:00:12 -07:00
Aya Moosa
5bf0411015 got white text working, restets when other silders are used 2024-04-08 21:24:24 -07:00
Aya Moosa
b2fcb8d104 started light text for color 2024-04-08 15:59:12 -07:00
KernelDeimos
79f98795c7 Fix version checker using later javascript features 2024-04-08 17:05:47 -04:00
Eric Dubé
24ad365047
Merge pull request #253 from AtkinsSJ/bad-config-login-error
Add an error message when login fails because of domain misconfiguration
2024-04-08 12:23:31 -04:00
Eric Dubé
72286fd642
Merge pull request #249 from AtkinsSJ/service-copyrights
Add some missing copyright notices
2024-04-08 12:22:15 -04:00
Mohamed Elashri
a0f46c326a
Add build stage and remove linux/arm/v7 2024-04-08 17:12:26 +02:00
Sam Atkins
b1f2750cdb Add an error message when login fails because of domain misconfiguration
Previously, we just output whatever err.responseText was. However, that
has some downsides:

- If there's no responseText (as for when we can't find the domain) then
  the user gets a blank message.
- If it's a 404 error, the responseText includes the full HTML for
  Puter's 404 page, which we don't want to dump in the error box! This
  is unlikely to happen in practice, but was easy enough to cater for.

So, add a nicer message in those cases.

The misconfiguration message is taken from here:
https://github.com/HeyPuter/puter/issues/185#issuecomment-2037977592

Resolves #235.
2024-04-08 15:49:00 +01:00
Sam Atkins
8aee3f8174 Add some missing copyright notices 2024-04-08 11:10:39 +01:00
Nariman Jelveh
ea61799b3d
Merge pull request #240 from HeyPuter/eric/gui-personalization
Puter Theme Color Setting
2024-04-07 14:35:24 -07:00
KernelDeimos
b1e6e0c25a Fix i18n 2024-04-07 17:27:09 -04:00
KernelDeimos
f7916cfa74 Add option to reset colors 2024-04-07 17:19:47 -04:00
KernelDeimos
3f37ef2fad Fix i18n 2024-04-07 16:18:59 -04:00