* When client selects an appointment that does not need to be confirmed, send out an email. Also prepared the appointment confirmation call to send out an email.
* Removed old client table. Fixed tests.
* MIgration for removed table
* Adding book appointment workflow -wip
* Load channels
* Added channel and agent selection
* Provide optional filter criteria for agents and channels in schedule endpoint.
Return agent info for free schedule slots.
* Select slot
* Added personal data form
* Added login and register step
* Empty PIN input when crypto fails
* Added summary and complete steps
* Format errors in otp component
* Format error in otp component
* Store staff keypairs for appointment encryption
* storeStaffKeyPair during passkey setup
* Fix lint
* Allow access to tenants for tenant admins
* Removed centralised route-based authorization.
* Use setupState from back-end
* First tenant admin is ACCESS_GRANTED.
* load local argon2 directly in central html file
* Make sure cookie is deleted on logout
* Allow WASM execution
* Staff key is base64 encoded, not hex encoded
* Fix proceeding to summary
* Fix TunnelId. Fix Appointment Date. Fix missing AgentId for Tunnel Creation call.
* Fix book appoint flow for new users
* Fix design issues
* Show only slots that have not passed
* Reimplemented ShamirsSecretSharing with Laplacian Interpolation
* Check for existing users before creating new client tunnels. Corrected base64 decoding of challenge.
* Properly deal with existing client errors (422)
* Use new shamir implementation for shard construction and key reconstruction.
* Fix lint and check
* Fix csp header test
* Fixed tests
---------
Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
Co-authored-by: Hendrik Belitz <hendrik@innovation-through-understanding.de>
* Added basic staff functions -wip
* Fix: Use proper route for staff member creation
* Fixed errors in confirm, invite and register routes.
* Also return invited staff members when getting staff members
* Updated error handling
* Allow global admin to add other global admins
* Sort staff members by name
* Added dummy implementation of granting access to staff members
* Render tenant logo, if set
* Fix delete
* Make invited but not confirmed user entries deletable.
* Added staff onboarding with passkey -wip
* Fix delete route
* Fix passkey setup flow for staff
* Fix lint
* Fix lint
* Fix some unit tests
* Updated docs
* Refactored staff-service, fixed tests
* Setup state db migrations
---------
Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
Co-authored-by: Hendrik Belitz <hendrik@innovation-through-understanding.de>
* Validate the setup state in all relevant actions. Update it according to the tenant's current state.
* Update src/lib/server/db/central-schema.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Fixed schema, fixed tests, incorporated review advice
* Unused variable error fixed.
* Refactored deletion methods. Fixed partial deletion test.
* Try to delete user first before deleting key shares (to make sure the transaction fails if we cannot delete the user)
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Added public tenant api
* Moved public channels to their own endpoint and creator public api path
---------
Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
* Web workers for crypto functions. Crypto key storage in db.
* First prototype appointment service and api
* Basic flows für clients.
* Staff crypto
* Browser crypto functions
* Get appointments from a date range
* API docs
* Schedule API, fixed schedule errors
* Tests and bugfixes
* Formatting
* enhanced and unified Browser-Crypto-Utilities
trying to create a new tunnel when tenant has no users now results in an error.
user creation now has a confirmation state.
* Staff API, getting and updating tunnel data.
* Tests for staff endpoints
Fixed for confirmationState
Fixed tests
* Moved logic to staff service
* Moved logic to appoointment service
* calendar route for staff members. schedule route for clients.
* Fix client access to certain routes
* Update src/routes/api/tenants/[id]/staff/__tests__/staff-api.test.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update src/routes/api/tenants/[id]/staff/[staffId]/public-key/__tests__/public-key.test.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update src/routes/api/tenants/[id]/appointments/tunnels/add-staff-key-shares/+server.ts
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Security fixes for staff-crypto key retrieval.
* LInting errors
* DB Migrations
* Removed isEncrypted property
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Make descriptions multilingual
* Format and test fixes
* Update src/lib/server/db/tenant-schema.ts
* Fix tenant-switcher to update instantly
* Fix sql migrations for description
* Add languages to tenant table
* Fix tenant schema
* Use objects for translated fields
* Fix format
* Fix lint
* Allow longer descriptions for channels
* Field Localizations are based on tenant locales not supportedLocales
* Fix agent image list preview
* Improve language tab keyboard navigation
* Fix falsy redirect after store init
---------
Co-authored-by: Karl Ludwig Weise <office@ludwigweise.de>
Co-authored-by: Karl Ludwig Weise <ludwig@ludwigweise.de>
* Update new access token in session table after switching tenants.
* Fixed session might be undefined
* Image should be nullable when creating or updating an agent or uploading tenant logos.