Nariman Jelveh
7c8492ba43
Fix the issue of checkmark's wrong color in ctx menu disabled items on hover
2024-05-30 17:09:18 -07:00
Nariman Jelveh
16d5ac6abb
Delay opening the submenu for smoother mouse navigation on the menu
2024-05-30 15:24:50 -07:00
Nariman Jelveh
a8515e0a41
Switch font to Inter 🎉
2024-05-30 15:14:25 -07:00
KernelDeimos
fccabf1bc0
feat(backend): allow services to provide whoami values
2024-05-30 17:11:06 -04:00
Eric Dubé
dd1d129693
Merge pull request #444 from HeyPuter/eric/ui-updates
...
UI Updates
2024-05-30 16:48:28 -04:00
KernelDeimos
124596058a
feat(ui): allow component-based settings tabs
2024-05-30 16:14:32 -04:00
KernelDeimos
be38df32ec
tweak(ui): allow setting render more for JustHTML
2024-05-30 16:14:32 -04:00
KernelDeimos
577bd59b6c
feat(ui): add new components
...
This commit adds the following components:
- ActionCard
- Frame
- NotifCard
2024-05-30 16:14:32 -04:00
KernelDeimos
f8780d032b
fix(ui): improve Component base class
...
The following improvements were made:
- do not require empty object in constructor
- allow components to override render mode based on constructor values
- improve error handling in get()
- allow array of property names in on_ready()->listen()
- allow components to be attached to shadow roots
2024-05-30 16:07:16 -04:00
KernelDeimos
38ba42575c
feat(ui): add new components
...
This commit adds the following components:
- Glyph
2024-05-30 16:04:52 -04:00
Nariman Jelveh
60f0ade3c1
Improve the UX of the menubar and context menu
2024-05-30 13:02:00 -07:00
KernelDeimos
8e083d20d2
tweak(ui): allow size changing on spinner
2024-05-30 15:59:05 -04:00
Eric Dubé
a62a56fd7b
Merge pull request #413 from AtkinsSJ/extract-posix-error
...
refactor: Move PosixError class where it can be accessed outside of Phoenix
2024-05-30 12:43:41 -04:00
Eric Dubé
895358e6e5
Merge pull request #423 from AtkinsSJ/parsely
...
Tidy up "newparser" so it can be used properly
2024-05-30 12:42:03 -04:00
Eric Dubé
d57980c6cb
Merge pull request #421 from AtkinsSJ/exit-status
...
Add exit status codes to `puter.exit()`, and an `exit` builtin to Phoenix
2024-05-30 12:28:36 -04:00
Eric Dubé
0672562c8a
Merge pull request #442 from HeyPuter/eric/extensibility
...
class registry for service scripts
2024-05-28 20:10:03 -04:00
KernelDeimos
d047abf31c
Update eslint
2024-05-28 19:06:00 -04:00
KernelDeimos
e050506a05
Add class registry (second pass)
...
ExportService gets removed and instead a global class registry is added.
The `init.js` file is split into `init_sync.js` and `init_async.js`
so that synchronous code that isn't dependent on imports is guarenteed
to run before initgui.js. The globalThis scope and service-script API
now expose `def`, a function for registering class definitions, and
`use`, a function for obtaining registered classes.
2024-05-28 19:06:00 -04:00
KernelDeimos
cd574c87ef
Fix the previous fix
2024-05-28 16:10:43 -04:00
KernelDeimos
4e3a24e609
fix: check subdomain earlier for /apps
2024-05-28 15:51:22 -04:00
Eric Dubé
c495ccff65
Merge pull request #408 from AtkinsSJ/git-client
...
Add a git client
2024-05-28 12:10:01 -04:00
KernelDeimos
51bac4486f
Add class registry (first pass)
...
In the first pass I add a `register` method and update `defineComponent`
so it calls `register` as well. This made it possible to create a
proof-of-concept for registered classes. Additionally ExportService was
added to expose registered classes to service scripts. This first pass
works, but it would be better if all types of classes (components or
otherwise) were registered via the same method.
2024-05-27 21:16:50 -04:00
Eric Dubé
146ce659e2
Merge pull request #434 from HeyPuter/eric/get-user-service
...
refactor: add GetUserService
2024-05-26 00:44:03 -04:00
KernelDeimos
c0cb1cd2b8
refactor: add GetUserService
2024-05-26 00:31:51 -04:00
Eric Dubé
f4d41891d9
Merge pull request #426 from HeyPuter/eric/service-scripts
...
refactor(gui): add service scripts
2024-05-25 17:35:55 -04:00
KernelDeimos
06f41659f5
Add function to import UIWindow from service scripts
2024-05-25 17:20:22 -04:00
KernelDeimos
cbfad2ef7a
refactor(gui): add service scripts
2024-05-24 19:29:07 -04:00
Eric Dubé
8de94d3f1c
Merge pull request #422 from HeyPuter/eric/gui-loading
...
GUI loading refactor + service-registered gui scripts
2024-05-24 17:42:14 -04:00
Eric Dubé
f20870544d
Update docker-image.yaml
2024-05-24 16:53:13 -04:00
Eric Dubé
4d91ef14f4
Update docker-image.yaml
2024-05-24 16:49:43 -04:00
Eric Dubé
6ed9f0a01d
Update docker-image.yaml
2024-05-24 16:41:20 -04:00
Eric Dubé
94e9f8fd34
Update docker-image.yaml
2024-05-24 16:37:01 -04:00
Eric Dubé
fc51424f86
Merge pull request #332 from HeyPuter/release-please--branches--main--components--puter.com
...
chore(main): release 1.0.0
2024-05-24 16:25:34 -04:00
github-actions[bot]
5146dc4981
chore(main): release 2.3.0
2024-05-24 16:22:55 -04:00
Sam Atkins
03123faa8a
Finish concept JSON parser
...
This now can parse JSON correctly in various configurations.
2024-05-24 16:23:26 +01:00
Sam Atkins
7fccf79591
Make stringOf() take a callback instead of an array of accepted values
...
THe `a.stringOf(' \r\n\t'.split('')),` pattern works fine for small sets
of characters, but is horrible for situations like "any alphanumeric".
Instead, let's make it take a callback function that is run on each
character.
2024-05-24 16:23:26 +01:00
Sam Atkins
d3dff8c20e
Throw errors if parsing fails
...
Not consuming all input is now treated as an error, unless the
`must_consume_all_input` flag is set to false when parsing.
2024-05-24 16:23:26 +01:00
Sam Atkins
0bc4c3fde2
Move StringStream into Parsely
2024-05-24 16:23:26 +01:00
Sam Atkins
873dee7e51
Implement 'trailing' parameter for repeat() parser
2024-05-24 13:30:45 +01:00
Sam Atkins
837ec68371
Reorganize and document Parsely classes
...
- lib.js only holds Parser so rename it parser.js
- Move Symbol and None into terminals.js
- Briefly document all parser classes
2024-05-24 12:26:04 +01:00
Sam Atkins
f8525c6f6c
Rename newparser to Parsely
...
We're going to actually use this so let's give it a more permanent name.
2024-05-24 11:48:34 +01:00
KernelDeimos
a1cfe7aef2
Allow services to register additional js files for gui
2024-05-23 18:41:34 -04:00
KernelDeimos
5042d49935
Simplify debugging runtime config object changes
2024-05-23 18:40:41 -04:00
KernelDeimos
c89b50bf31
Refactor gui loading
2024-05-23 18:13:57 -04:00
Nariman Jelveh
103f9d209d
Update README.md
2024-05-23 14:32:24 -07:00
KernelDeimos
4508bfac73
Fix cookie issue
2024-05-23 13:30:02 -04:00
Sam Atkins
3184d3482c
feat(phoenix): Implement an exit
builtin
2024-05-23 15:27:15 +01:00
Sam Atkins
5de3052026
feat(phoenix): Respond to exit status codes
...
- Detect exit status of Puter apps, now that that's available.
- Store the exit status of each pipeline.
- Display a message when the exit status was non-zero.
That message is temporary, until we have a better way of displaying or
querying it, such as the `$?` shell variable.
2024-05-23 15:26:43 +01:00
Sam Atkins
7674da4cd2
feat: Add exit status code to apps
...
`puter.exit()` now takes a status code, similar to the exit status on
desktop OSes. This is passed to the appClosed event, so that eg a
parent app can know whether its child app ran successfully.
2024-05-23 12:54:06 +01:00
Eric Dubé
b15dc316d3
Merge pull request #406 from AtkinsSJ/fs-upload-data-type-error
...
Explicitly reject invalid types for puter.fs.upload() and .write() payloads
2024-05-22 12:13:24 -04:00