17 Commits
Author SHA1 Message Date
Kayori 24f394116a Add sppass/cardless login support
- SppassOpenHandler/LookupHandler/CloseHandler implementing the eAmuse
  sppass.open/lookup/close xrpc methods (request/response schema
  confirmed by tracing the client's psmap-based response parser and by
  live testing against a real cabinet build)
- SppassSessionService backs open/lookup/close with a token-keyed
  session (url + interval for the cabinet to display/poll, later
  card_type/card_id once approved)
- CardlessApi: POST /api/cardless/{token}/approve, letting a signed-in
  player's phone approve the pending token using their account's
  first registered card
- Cardless frontend pages ([token].vue, scan.vue) and useCardlessAuth
  composable driving the approval call
- GetConfig GraphQL query + ConfigQuery resolver so the cardless page
  can show which server it's talking to
- Wire ISppassSessionService and the cardless routes into Program.cs;
  HandlerService now parses model into a GameModel once per request
  instead of re-parsing per handler
2026-09-06 15:13:10 +02:00
Kayori 41ac0a6125 Added support for a plugin to extend the web ui with its own extra frontend for profiles and scores and settings and such 2026-08-17 12:04:46 +02:00
Kayori 2dfa182852 Added Handler for Paseli consumption. nd add missing fields from SDVX into Facility. And fix plugin dispose error 2026-08-11 09:40:52 +02:00
Kayori 54c6974cc2 Reworked plugin loading into per-plugin hot-reloadable containers (PluginRegistry/PluginSlot/PluginLoadContext/PluginWatcher), so plugins get their own mini service provider composed with the host's. Added a GraphQL API (HotChocolate) for card query/mutation. Added OpenAPI docs via Scalar. 2026-08-09 17:54:58 +02:00
Kayori 0fbd8d726e Added missing Pcode to InquireResponse.cs. Made the DoesProfileExist a Delegate with FromService support like minimal api's. Fix ref ids return and data id return. so at auth lvl user is identified by the id of the card in the datase padded left so its 16 2026-08-04 00:17:29 +02:00
Kayori a7d308757f Fix Polaris Chord giving errors on it's own methods. 2026-08-02 22:16:47 +02:00
Kayori c52e7daeaf Added more attribute types. Added GnInquire for charge machine. Added handeling for when plugin still returns XDocument instead of typed response. Fixed 500 error when no encoding specified. Move Handle method after return 2026-01-29 23:24:03 +01:00
Kayori b35bb3b0d0 Working docker finnaly 2026-01-18 23:57:18 +01:00
Kayori e81285faa5 add easy log for when running to see conect url 2026-01-18 22:19:33 +01:00
Kayori 8a4c4af8af Added front end login and beginnen of card mangment page. Also cleaned up the main server endpoints and added docker file 2026-01-18 22:02:20 +01:00
Kayori 24cd5e00f3 Clean up and added force encoding option in plugins 2026-01-17 19:50:00 +01:00
Kayori c7a27b8783 Front end stuff and fixed some encoding stuff. 2025-10-03 09:21:11 +02:00
Kayori 99f27acaba Moved to new way to handle requests. Now with TRequest and TResponse with automatic parsing and serialization handeling 2025-09-25 23:54:06 +02:00
Kayori faeb438279 Working on adding authentication to frontend 2025-07-29 14:45:32 +02:00
Kay Houwertjes 1e7410deb5 Cleanups. Fix creating plugins directory on startup and added xml logger 2025-07-19 00:47:53 +02:00
Kayori 5361484ce9 Added plugin loader 2025-06-23 20:26:33 +02:00
Kayori ab0128af32 Init 2025-06-22 13:01:34 +02:00