Commit Graph

168 Commits

Author SHA1 Message Date
brianmcgee
3239d4b614 Merge pull request 'UI: new Loader component; Button and Icon v2' (#3908) from ui/button into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3908
2025-06-12 15:52:17 +00:00
Qubasa
e6025493c4 clan-lib: Add LogManager class 2025-06-12 16:24:40 +02:00
Qubasa
42ac12b34e clan-app: Fix api test page 2025-06-12 16:23:33 +02:00
Brian McGee
8f93015d80 feat(ui): new loader component; button and icon v2 2025-06-12 11:29:41 +01:00
Johannes Kirschbauer
0b6bc81efe Refactor(api/list_machines): rename from list_inv_machines 2025-06-09 13:33:25 +02:00
Johannes Kirschbauer
ebf3964197 Refactor(api/update_machine): rename to set_machine; use name, flake 2025-06-09 13:33:19 +02:00
Qubasa
77ea3409b0 clan-app: Catch method not found error in api 2025-06-04 18:16:58 +02:00
Johannes Kirschbauer
82af09443a Chore(ui/taglist): snapshot test 2025-06-03 19:09:43 +02:00
hsjobeki
ea8865e22b Reaply: #3777: fix/machine-detail-view 2025-06-03 18:42:47 +02:00
Brian McGee
8997f61ef8 feat(ui): Typography V2 2025-05-30 14:58:50 +01:00
Brian McGee
7f436d1a8b feat(ui): update border and background colors
To match latest design.
2025-05-30 13:46:57 +01:00
Brian McGee
8e155dd164 feat(ui): update primary colors
To match latest design.
2025-05-30 13:46:56 +01:00
Brian McGee
bbe14dbb3b chore(ui): setup base for Typography V2
Also removes Button stories for V1 component.
2025-05-30 13:46:55 +01:00
Brian McGee
543cfd4fc6 fix(ui): disable storybook devshell and package on Darwin 2025-05-30 11:06:14 +01:00
Brian McGee
807b9fd61f feat(ui): enable storybook snapshot tests
- adds a process-compose namespace for running `storybook` and `luakit` together to replicate the `webkit`-based rendering that happens inside of `webview`
- adds some helper scripts for running storybook tests and updating snapshots, with documentation in the README.
- adds a `clan-app-ui-storybook` package which builds and tests the storybook, checking for rendering changes

Currently, we’re only doing markup-based snapshot tests. We’re also using headless chromium for the tests by default as I couldn't get webkit to work in the nix build.

As we’re only markup-based for the time being, this should be ok. But eventually I'd like to get it working with webkit.
2025-05-30 11:06:14 +01:00
Brian McGee
bf993af56f feat(ui): introduces storybook
- adds the necessary dependencies and configuration for Storybook.
- refactors the `Button` component and adds some stories for it.
2025-05-26 12:56:51 +01:00
Brian McGee
aa1bbd1180 feat(ui): add a clan context provider
- introduces a new consolidated store with `localStorage` support
- introduces a top-level `ClanProvider` providing access to `activeClanURI` and `clanURIs`
- redirects to `/welcome` if `activeClanURI` is `undefined`
- consolidates clan meta querying
- centralises the logic for removal of clan uri's which no longer exist
- fixed some miscellaneous missing `await` calls
2025-05-22 13:24:27 +00:00
Qubasa
9b714aa048 clan-cli: Fix ctrl+c cancelling tasks 2025-05-22 15:01:58 +02:00
Brian McGee
768b94fc75 fix(ui): hot-reload of clan-cli 2025-05-22 11:47:35 +01:00
DavHau
c45c94e045 GUI: add credentials page (vars)
add it to machine details
2025-05-21 11:47:04 +00:00
hsjobeki
5b80204107 Merge pull request 'Update UI to Node 22 and update dependencies' (#3729) from feat/update-ui-dependencies into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3729
2025-05-21 09:03:27 +00:00
Brian McGee
d50eac6525 feat(ui): upgrade to nodejs_22 and update dependencies 2025-05-20 15:45:17 +01:00
lassulus
ec19ef1ec5 clan-cli: clan_cli.custom_logger -> clan_lib.custom_logger 2025-05-20 15:08:02 +02:00
lassulus
00a439999b clan-cli: clan_cli.async_run -> clan_lib.async_run 2025-05-20 15:05:11 +02:00
hsjobeki
16112e259c Merge pull request 'Classgen: export field type definitions' (#3715) from hsjobeki/clan-core:inventory-services-1 into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3715
2025-05-20 12:20:07 +00:00
Johannes Kirschbauer
463eaff47c UI: remove unused inventory.ts file 2025-05-20 13:32:13 +02:00
Brian McGee
55d1a94947 fix(ui): Exectuting typo in toast message 2025-05-20 11:52:34 +01:00
Jörg Thalheim
ccf8e99a98 fix logger no longer applying to clan_lib
with moving code to clan_lib we are missing logging for some output. To
fix this we remove the module scoping from the logger and just set one
global logger.
2025-05-20 10:09:20 +02:00
DavHau
a22180f980 GUI/vars: refactor vars step 2025-05-20 11:32:32 +07:00
lassulus
b10682c7f7 clan-cli: move clan_cli.nix to clan_lib.nix 2025-05-19 18:40:36 +02:00
DavHau
dc2abb1352 UI: add vars step to installation flow 2025-05-19 19:11:19 +07:00
DavHau
93b23a38dd clan-app/devshell: add script to launch qemu VMs for testing 2025-05-19 18:37:09 +07:00
Johannes Kirschbauer
29811cd0dc Refactor(cli): name set_inv_machine back to set_machine
We don't want to leak information about our internals
Such as 'inv' meaning 'inventory' this is not important from the outside
2025-05-16 18:05:07 +02:00
Johannes Kirschbauer
e4a6cbc7e3 Refactor: rename api set_inv_machine parameter to 'machines,update' 2025-05-16 17:57:40 +02:00
Qubasa
d765f1078b clan-cli: Unify list_machines and use flake caching 2025-05-16 10:47:49 +02:00
Jörg Thalheim
7f63920933 clan-app/devshell: remove duplicate python3
we already get python3 from the frontend.
2025-05-15 15:03:35 +02:00
Jörg Thalheim
a484f2a7fc fix references in reload-python-api script 2025-05-15 15:03:05 +02:00
Jörg Thalheim
ed3f8f85c8 remove generated files from git. 2025-05-15 14:56:04 +02:00
Jörg Thalheim
9e8dc584eb clan-app/README: more robust process-compose command
I had port conflicts with tcp, so let's use unix socket by default.
Also added --keep-project to make trouble-shouting easier in case
something is wrong.
2025-05-15 14:56:04 +02:00
Jörg Thalheim
146f183256 clan-app/ui: remove unused .envrc
this has been merged into clan-app's envrc
2025-05-15 14:56:04 +02:00
Jörg Thalheim
cc20e0bf35 clan-ui: remove intermediate app directory 2025-05-15 14:56:04 +02:00
Jörg Thalheim
876027ea02 clan-app: filter out unrelated files from build
this should help for faster ci builds.
2025-05-15 14:43:51 +02:00
Jörg Thalheim
34349ab4c1 process-compose: simplify environment
we already are in the right devshell for clan-app, so we no longer need
direnv exec. Instead of depending on implicit enviroment variables we
can run change the directory based on the git root as this is easier to
read and follow.
2025-05-15 14:43:51 +02:00
Jörg Thalheim
a2bc237d79 devshells.clan-app: require less environment variables
also sort shellHook by component
2025-05-15 14:43:51 +02:00
Jörg Thalheim
3b5f1f2c5c rename devshells.ui to clan-app 2025-05-15 14:15:59 +02:00
Jörg Thalheim
2561e3e4d1 rename ui to clan-app and move clan-app one layer up 2025-05-15 14:15:59 +02:00
Brian McGee
c26cc9503c feat: group ui related packages under a ui directory 2025-05-15 12:00:24 +01:00
Mic92
c50cf54e33 Merge pull request 'clan-app: set title and icon' (#3658) from clan-app-title into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3658
2025-05-15 10:42:06 +00:00
Jörg Thalheim
3eb8af34fc clan-app: prepare icon support on linux
For some reason the icon is not shown when using the gtk backend but at
least the API calls look correct.
2025-05-15 12:36:30 +02:00
Jörg Thalheim
172d571804 clan-app: set title 2025-05-15 12:36:24 +02:00