Commit Graph

581 Commits

Author SHA1 Message Date
Konstantin Wohlwend
21f5cd7e6a Bugfixes 2025-01-27 14:57:58 -08:00
Konstantin Wohlwend
a6b4398f04 getTokens now refreshes expired tokens 2025-01-27 14:32:33 -08:00
Zai Shi
e62559c52f fixed domain list problem 2025-01-21 10:40:39 -08:00
Konstantin Wohlwend
02fa7f7dfa Fix cache error for static pages 2025-01-07 10:11:13 -08:00
Konsti Wohlwend
cf95bb707f
Raw project query (#382) 2024-12-28 11:47:09 -08:00
Konsti Wohlwend
8ce7c9f079
Raw SQL query for fetching users (#381) 2024-12-27 11:31:12 -08:00
Konstantin Wohlwend
285c51bd34 Better 429 request logging 2024-12-27 11:30:42 -08:00
Konstantin Wohlwend
a183bcca07 Address TODO next-release comments 2024-12-23 20:03:50 -08:00
Konstantin Wohlwend
b46bdc8f04 Fix STACK-BACKEND-5K 2024-12-23 19:16:24 -08:00
Zai Shi
f36f349e8f fixed schema 2024-12-23 16:16:19 -08:00
Zai Shi
15697f5273 added update password button 2024-12-23 15:36:08 -08:00
Konstantin Wohlwend
ef935e24d8 Fix STACK-BACKEND-5Q 2024-12-23 12:36:27 -08:00
CactusBlue
cd35e8cdc4
Dashboard Metrics (#361)
Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>
2024-12-22 12:02:21 -08:00
Zai Shi
534fef5d62
Added custom SMTP email server testing on the dashboard (#376)
Some checks failed
Ensure Prisma migrations are in sync with the schema / check_prisma_migrations (22.x) (push) Has been cancelled
Docker Build and Push / Docker Build and Push Server (push) Has been cancelled
Docker Test / docker (push) Has been cancelled
Runs E2E API Tests / build (20.x) (push) Has been cancelled
Lint & build / lint_and_build (20.x) (push) Has been cancelled
Lint & build / lint_and_build (22.x) (push) Has been cancelled
TOC Generator / TOC Generator (push) Has been cancelled
2024-12-20 19:04:05 +01:00
Zai Shi
c1416ba727
Added sign out lock (#374) 2024-12-20 18:38:04 +01:00
Konstantin Wohlwend
45bfdfb759 Remove unnecessary console.log statements 2024-12-19 15:59:26 -08:00
Konstantin Wohlwend
4e251311b6 Don't fetch users table twice 2024-12-18 22:45:56 -08:00
Konstantin Wohlwend
9f73738d12 Forgiving caches 2024-12-18 22:24:07 -08:00
Konstantin Wohlwend
eae6bc34d8 Improved error capturing
Some checks failed
Ensure Prisma migrations are in sync with the schema / check_prisma_migrations (22.x) (push) Has been cancelled
Docker Build and Push / Docker Build and Push Server (push) Has been cancelled
Runs E2E API Tests / build (20.x) (push) Has been cancelled
Lint & build / lint_and_build (20.x) (push) Has been cancelled
Lint & build / lint_and_build (22.x) (push) Has been cancelled
Mirror main branch to main-mirror-for-wdb / lint_and_build (push) Has been cancelled
Publish Docs / run (push) Has been cancelled
TOC Generator / TOC Generator (push) Has been cancelled
2024-12-14 15:49:15 -08:00
Konstantin Wohlwend
a80a3b241c Don't retry transactions during development 2024-12-12 13:48:18 -08:00
Konstantin Wohlwend
c33ce8ab4f Retry Prisma transactions automatically 2024-12-12 13:34:42 -08:00
Konstantin Wohlwend
ed66dd947b Fix network errors being thrown as Promise 2024-12-12 09:59:34 -08:00
Konstantin Wohlwend
0db15d63b0 Disallow kid audience 2024-12-12 09:41:37 -08:00
Konstantin Wohlwend
46b8777e38 Better specs for Docker GH Action 2024-12-11 19:02:49 -08:00
Konstantin Wohlwend
f145e597c0 Increase Sentry maxValueLength 2024-12-11 18:56:42 -08:00
Konstantin Wohlwend
49445378eb Retry on Svix rate limits 2024-12-11 17:56:07 -08:00
Konstantin Wohlwend
b0db0a5f78 StackAssertion cause is now in extraData 2024-12-11 17:36:43 -08:00
Konstantin Wohlwend
2bbd9b017f Disallow single-letter TLDs in emails 2024-12-11 17:19:47 -08:00
Konstantin Wohlwend
62989f9783 Better email retries 2024-12-11 16:15:58 -08:00
Konstantin Wohlwend
032bc7c63a Browser compat debug info 2024-12-11 15:31:19 -08:00
Konstantin Wohlwend
6bf2c2b33d Fix USER_AUTHENTICATION_REQUIRED error on signout 2024-12-11 14:46:17 -08:00
Jakub Kołodziejczak
ee48d2b7c0
chore: update known errors to correct URL (#356)
Co-authored-by: Konstantin Wohlwend <n2d4xc@gmail.com>
2024-12-10 00:14:21 -08:00
Konsti Wohlwend
0413706c39
Upgrade backend to Next.js 15 (#360) 2024-12-10 00:11:13 -08:00
Konstantin Wohlwend
b8a7e911ea Fix "Domain was somehow not a valid URL" 2024-12-09 23:58:03 -08:00
Konstantin Wohlwend
5cfc65c9ca Fix lint 2024-12-09 23:35:41 -08:00
Konstantin Wohlwend
6eff4c96e4 All auth type schemas are now required 2024-12-09 18:30:43 -08:00
Konsti Wohlwend
22676c563b
Neon project provision (#358) 2024-12-08 11:44:35 -08:00
Konstantin Wohlwend
e4bbb9f596 Improved network errors for non-idempotent requests 2024-12-05 20:30:10 -08:00
Konstantin Wohlwend
27914c15ce Retry on INFINITE_LOOP_DETECTED error 2024-12-05 20:18:30 -08:00
Konstantin Wohlwend
b8b4ab98c1 Neon OAuth "Create new project" flow 2024-12-05 19:54:59 -08:00
Zai Shi
918f205bd9
Self-host docker (#353) 2024-12-01 15:57:51 +01:00
Konstantin Wohlwend
65b88f786d No more cookie force dynamic 2024-12-01 01:47:04 -08:00
Konstantin Wohlwend
496f6e459b Force dynamic 2024-12-01 01:31:22 -08:00
Konstantin Wohlwend
89b00bb352 Update node-http socket 2024-12-01 01:12:26 -08:00
Konsti Wohlwend
cec718f542
Identity Provider/External OAuth (#323)
Co-authored-by: moritz <moritsch@student.ethz.ch>
2024-11-30 23:27:55 -08:00
Zai Shi
da3dbd9e9b added client delete team 2024-11-29 13:37:17 +01:00
Zai Shi
8f73e99389
Endpoints for Neon integration (#351)
/integrations/api-keys
/integrations/oauth-providers
2024-11-27 12:30:20 +01:00
Konstantin Wohlwend
c1b8601341 Advanced team invitations 2024-11-26 17:12:57 +01:00
Konstantin Wohlwend
a48aae1a20 Fix Sentry 2024-11-22 23:26:38 +01:00
Konstantin Wohlwend
3158828155 Fix Sentry 2024-11-22 23:25:23 +01:00
Konstantin Wohlwend
3b40cfc860 isLocalhost no longer throws if URL is invalid 2024-11-22 18:28:36 +01:00
Konstantin Wohlwend
01eddd99a1 Return error when adding auth contact channel in use by another account
Some checks failed
Runs E2E API Tests / build (20.x) (push) Has been cancelled
Runs E2E API Tests / build (22.x) (push) Has been cancelled
Lint & build / lint_and_build (20.x) (push) Has been cancelled
Lint & build / lint_and_build (22.x) (push) Has been cancelled
TOC Generator / TOC Generator (push) Has been cancelled
2024-11-21 23:18:44 +01:00
Konstantin Wohlwend
ac9a85317c Stricter email input validation 2024-11-21 22:41:22 +01:00
Konstantin Wohlwend
26b09b0947 Fix build 2024-11-20 03:41:21 +01:00
Konstantin Wohlwend
1f84ff59aa Create users endpoint can now take a password hash 2024-11-20 03:26:22 +01:00
Konstantin Wohlwend
6a0ca7531c Disallow invalid emails 2024-11-20 00:12:20 +01:00
Konstantin Wohlwend
a03a7f503e Add docs for concatStacktraces 2024-11-19 22:51:37 +01:00
Konstantin Wohlwend
dd89cc501b Remove test error 2024-11-19 04:04:44 +01:00
Konstantin Wohlwend
539e10981e Concat runAsynchronously stacktraces 2024-11-19 03:53:48 +01:00
Konstantin Wohlwend
277216dc70 Update NoSuspenseBoundaryError message 2024-11-19 00:51:36 +01:00
Konstantin Wohlwend
c0808273e7 Update "no internet connection" error message 2024-11-18 22:54:41 +01:00
Konstantin Wohlwend
bc24b41f61 Replace required() of yup schemas with defined() 2024-11-18 20:08:55 +01:00
Konsti Wohlwend
3b18f09ec7
Log geoip information with events (#344) 2024-11-17 18:07:36 +01:00
Zai Shi
b6f0276ac1 improve redirect url error log 2024-11-13 19:42:53 +01:00
Konsti Wohlwend
c2bc80bda5
Support create-next-app@15 with the setup wizard (#340) 2024-11-13 13:58:42 +01:00
Zai Shi
7d4d2c18b6 fixed server side team invitation 2024-11-08 19:47:32 +01:00
Konsti Wohlwend
057dac1a66
Next.js 15 support (#315)
Some checks failed
Runs E2E API Tests / build (20.x) (push) Has been cancelled
Runs E2E API Tests / build (22.x) (push) Has been cancelled
Lint & build / lint_and_build (20.x) (push) Has been cancelled
Lint & build / lint_and_build (22.x) (push) Has been cancelled
TOC Generator / TOC Generator (push) Has been cancelled
Updates `examples/demo` to Next.js 15 and adds Next.js 15 support to `packages/stack`.

The other packages and apps are still running on Next.js 14 to ensure compatibility.
2024-11-08 03:12:31 +01:00
Zai Shi
92c7faa55f fixed user table update 2024-11-07 17:07:58 +01:00
Konstantin Wohlwend
de7ac12dd5 DependenciesMap iterator 2024-11-07 16:55:35 +01:00
Konstantin Wohlwend
b6ecc26b6d Improve MaybeWeakMap docs 2024-11-07 16:11:57 +01:00
Konstantin Wohlwend
1163aa5c0a IterableWeakMap 2024-11-07 16:11:16 +01:00
Zai Shi
35afb5785c
Contact channel docs (#327)
* added docs

* added contact channel sdk docs
2024-11-01 01:32:20 +01:00
Zai Shi
fd8d166e04
Query/filtering with list users endpoint (#314) 2024-10-30 02:16:39 +01:00
Moritz Schneider
93a1fcf7cb
Passkey support (#321)
* passkeys

* add passkey tests

---------

Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>
2024-10-28 16:56:46 -07:00
Zai Shi
7ce2e8ac19
Fixed some hidden fields in docs (#318) 2024-10-23 02:32:29 +02:00
Zai Shi
1bcdcaee59
Added Team SDK docs (#316)
Added SDK docs for
- Team
- TeamProfile
- TeamUser
- TeamPermission
2024-10-23 01:05:51 +02:00
Zai Shi
363bfa9bed
OTP auth on the client SDK and dashboard (#309)
Fixed the bug that user creation doesn't check the otp/password configs correctly
UX improvement: added otp auth to user creation on the dashboard
Improved user creation docs
Added otp auth to user creation SDK
2024-10-22 00:03:56 +02:00
Zai Shi
e6b898126e
Contact channel client (#290)
Added contact channels to stack-app
Added emails, OTP, and password settings to the account settings page
Added /api/v1/auth/password/set
Added otp_auth_enabled to users endpoints
2024-10-20 01:01:25 +02:00
Konstantin Wohlwend
48a5b07a31 Improve wait(...) input validation error message 2024-10-18 11:57:33 -07:00
Konstantin Wohlwend
787d6ecce4 wait(...) no longer requires integers 2024-10-18 11:44:18 -07:00
Zai Shi
ad5efd947a
Fixed custom account setting page routing problems (#305)
Use hash routing for account setting page
2024-10-18 20:28:29 +02:00
Konstantin Wohlwend
9ec4433cf5 Input validation on wait(...) function
setTimeout picks 0 whenever the input doesn't fit in a 32-bit integer, so we reject such values

(see: https://news.ycombinator.com/item?id=41872010 )
2024-10-18 11:21:35 -07:00
Zai Shi
18d75fbf21
Contact channel APIs (#288)
* removed contact channels from otp

* fixed types

* fixed bugs

* fixed bug

* fixed bugs

* updated user contact channel

* updated tests

* updated tests

* added unique key to otp and password auth

* added contact channel api

* added new send-verification-code route

* updated tests

* added contact channel create tests, fixed bug

* added more tests, removed update

* added more tests

* added more tests

* added more tests

* fixed typecheck

* fixed route structure

* fixed bugs, fixed tests

* added more tests

* added more tests

* fixed tests

* fixed tests

* implemented new merge account logic

* moved user create of otp sign in to after the first email verification

* added cc updates

* fixed bugs

* added more tests

* added more flows

* uncomment tests

* added primary updates

* Update apps/e2e/tests/backend/endpoints/api/v1/contact-channels/legacy-send-verification-code.test.ts

Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>

* Update apps/e2e/tests/backend/endpoints/api/v1/auth/otp/sign-in.test.ts

Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>

* updated test names

* Update apps/e2e/tests/backend/endpoints/api/v1/auth-flows.test.ts

Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>

* Update apps/e2e/tests/backend/endpoints/api/v1/auth-flows.test.ts

Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>

* Update apps/backend/src/app/api/v1/auth/oauth/callback/[provider_id]/route.tsx

Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>

* fixed lint

* fixed lint

* fix lint

---------

Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>
2024-10-14 02:12:56 +02:00
Konstantin Wohlwend
9da481b2cd Require newline at the end of each file 2024-10-13 13:06:38 -07:00
Konstantin Wohlwend
cd4c259f0f JWKS endpoint now uses base64url 2024-10-11 17:09:24 -07:00
Zai Shi
a785d47417
Project specific JWKs (#293)
* added per project signing

* added well-known/jwks.json

* fixed bugs

* fixed bugs

* fixed tests

* fixed not found error
2024-10-07 21:27:55 +02:00
Zai Shi
28c3f57f31
New contact channels (#287)
* removed contact channels from otp

* fixed types

* fixed bugs

* fixed bug

* fixed bugs

* updated user contact channel

* updated tests

* updated tests

* added unique key to otp and password auth

* removed contact channel from user object
2024-10-01 06:22:12 +02:00
Zai Shi
d0b3d6e620
Fix team creation on the server not automatically adding the current user (#266)
* add_current_user => creator_user_id

* added more tests

* added error checks

* removed getIdFromUserIdOrMe

---------

Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>
2024-10-01 06:11:00 +02:00
Zai Shi
ce1a931710
Fixed yup union error message (#278) 2024-09-26 03:07:30 +02:00
Konstantin Wohlwend
f1bffee8b9 userIdOrMe support on all yup validations 2024-09-24 19:42:10 -07:00
Zai Shi
70a1e65723 fixed env vars
Some checks failed
Runs E2E API Tests / build (20.x) (push) Has been cancelled
Runs E2E API Tests / build (22.x) (push) Has been cancelled
Lint & build / lint_and_build (20.x) (push) Has been cancelled
Lint & build / lint_and_build (22.x) (push) Has been cancelled
TOC Generator / TOC Generator (push) Has been cancelled
2024-09-24 16:05:46 -07:00
Zai Shi
06fcca6fe6
OTP (#263)
* fixed otp send email template

* added version

* added send response type

* updated email template

* added otp email

* added otp page

* fixed bugs

* fixed bugs, added back button on otp page

* otp works

* added max attempts per nonce code

* fixed error return type

* fixed tests

* fixed bugs

* updated button text

* added tests

* added totp code error handling

* removed console.log

* fixed verification code length

* fixed code length

* moved otp inside magic link sign in component

* changed version back, updated ui wording

* added old version otp email tests

* fixed tests
2024-09-24 20:02:06 +02:00
Zai Shi
8ea8ff383e
Added handling for user canceling the oauth process (#260)
* added oauth cancel handling

* added translation

* fixed tests

* fixed reviews
2024-09-20 22:45:06 +02:00
Konstantin Wohlwend
d8568069bd Fix team invitation docs 2024-09-19 17:12:22 -07:00
Zai Shi
3c20bf609f remove slack oauth, allow no email in oauth 2024-09-19 16:35:17 -07:00
Manoj Kumar
c4ae4fc4ed
feat: Add twitter oauth provider (#206)
* add twitter oauth

* add slack oauth

* add emailVerified field

* twitter -> x

* fixed x user info

* add slack authed user type & fix token set

* fix endpoint

* fix slack button

* fix slack oauth

* Fix merge conflicts

* merge dev

* fix merge conflicts

---------

Co-authored-by: Zai Shi <zaishi00@outlook.com>
2024-09-20 01:28:58 +02:00
Zai Shi
0f9a560bdd removed deprecated code 2024-09-18 12:32:55 -07:00
Zai Shi
36a4edd93a
Added client side account deletion, team ids in user delete webhooks, and updated account setting UI design (#257)
* added user delete team relation webhook

* added delete account setting

* added translations

* updated translation

* added account delete button and functions

* added center to sidebar layout

* added new section layout

* updated sections

* updated styles

* updated setting styles

* improved account settings

* fixed account delete

* added tests

* fixed tests
2024-09-18 06:27:36 +02:00
Zai Shi
f8258af7aa
Apple OAuth (#250)
Some checks failed
Runs E2E API Tests / build (20.x) (push) Has been cancelled
Runs E2E API Tests / build (22.x) (push) Has been cancelled
Lint & build / lint_and_build (20.x) (push) Has been cancelled
Lint & build / lint_and_build (22.x) (push) Has been cancelled
TOC Generator / TOC Generator (push) Has been cancelled
* added apple oauth

* fixed oauth callback

* removed unused

* added apple icon

* fixed bugs

* fixed apple oauth

* added id token, apple login works

* fixed facebook

* removed no pkce for apple

* fixed mock oauth
2024-09-15 02:50:06 +02:00
Zai Shi
5977262329
Added Linkedin OAuth (#249)
Co-authored-by: Manoj Kumar <ms8460149@gmail.com>
2024-09-14 22:49:26 +02:00
Fahad Khan
0c3a3b8bae
Fix/172 by removing selected_team_id from create user CRUD schema. (#248)
* Team invitation (#171)

* team invitation wip

* implemented handler

* team invitation callback wip

* added team invitation frontend

* fixed listCurrentUserTeamPermissions

* added team invitation email template

* fixed bugs

* fixed verification code handler

* added more checks to team invitation verification

* fixed team invitation page

* restructured verification code handler

* fixed frontend

* fixed team invitation tests

* added more team invitation test

* fixed bug

* added migration file

* removed unused code

* Allow Next.js version `latest` in package.json

* Fix typo

* Update error message

* Remove unnecessary console.warn

* Updated "edit this page" button

* Hide unsupported properties from docs

* OAuth token tests

* Fix typo

* added create user button (#173)

* Create SECURITY.md

* Export button in tables

* Export all pages of tables

* Update security policy

* Fix docs typo

* More docs typos

* Improved user creation handlers

* Fix: Improve error handling for Server API (#170)

* Added entity checks to provide better errors in API for 'server' access type

* Removed 'ensureUserTeamPermissionExist', changed permissionId type to string in 'ensureUserHasTeamPermission'

* added different error types for user team permission

---------

Co-authored-by: Fahad Khan <fahad.khan@net-mon.net>
Co-authored-by: Zai Shi <zaishi00@outlook.com>

* Sign up restriction button on dashboard

Fix #66, #74

* Fix type error

* TOTP 2FA endpoints

* TOTP MFA components

* Improved description for disabling sign ups

* Removed 'selected_team_id' from create user schema

---------

Co-authored-by: Zai Shi <zaishi00@outlook.com>
Co-authored-by: Stan Wohlwend <n2d4xc@gmail.com>
Co-authored-by: Fahad Khan <fahad.khan@net-mon.net>
2024-09-14 21:43:05 +02:00
Zai Shi
84e30eead0
Remove shared Facebook (#238)
* removed facebook shared

* updated test

* added migration file

* facebook enabled var

* fixed migration file

* fixed connected account migration file
2024-09-11 02:25:18 +02:00
Konstantin Wohlwend
a9ebbccecd Ignore unhandled Promise rejections 2024-09-10 11:59:48 -07:00
Zai Shi
bb7074a29e
Team membership webhook (#234)
* fixed webhook docs type

* fixed docs

* added team memberships webhook

* changed docs sidebar width

* updated tests
2024-09-08 23:52:10 +02:00
Zai Shi
fe1fdc4c11
Connected account & auth methods DB migration (#204)
Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>
2024-09-07 13:03:31 -07:00
Konstantin Wohlwend
128cfc9cc1 JWKS file 2024-09-06 16:25:26 -07:00
Manoj Kumar
bba2b1884d
add bitbucket oauth (#223)
* add bitbucket oauth

* updated button style

* fixed docs

---------

Co-authored-by: Zai Shi <zaishi00@outlook.com>
2024-09-06 00:20:38 +02:00
Zai Shi
f60508031e
Added Microsoft Tenant ID in OAuth option (#224)
* added ms tenant id

* fixed types
2024-09-05 23:10:31 +02:00
Konstantin Wohlwend
7a75b3fb9a Better error logging for unexpected HTTP status codes 2024-08-31 17:42:40 -07:00
Zai Shi
3d2be1f84c
Supabase docs & examples (#219)
* added supabase example

* removed unused files

* added jwt endpoint

* supabase server action

* removed unused

* updated dependencies

* reverted package changes

* fixed bugs

* added supabase docs

* updated docs

* updated pnpm lock
2024-09-01 02:32:07 +02:00
Zai Shi
b1a59de1ea
Last active (#215)
* added last active at

* fixed team member users

* updated tests
2024-09-01 02:28:43 +02:00
Konstantin Wohlwend
1ac8b3013a Fix network diagnostics in non-browser environments 2024-08-31 16:51:01 -07:00
Varun Guleria
18e5a8fe3b
Profile Image Avatar Editor (#100)
Some checks failed
Runs E2E API Tests / build (20.x) (push) Has been cancelled
Runs E2E API Tests / build (22.6) (push) Has been cancelled
Lint & build / lint_and_build (20.x) (push) Has been cancelled
Lint & build / lint_and_build (22.6) (push) Has been cancelled
TOC Generator / TOC Generator (push) Has been cancelled
* profile_image_uploader

* feat: upload_link_value_change_and_refresh

* Migrate to v2

* avatar editor v2

* added back missing pieces

* fixed dependencies

* fixed tests

* fixed component structure

---------

Co-authored-by: Zai Shi <zaishi00@outlook.com>
2024-08-27 02:13:37 +02:00
Manoj Kumar
165fe4bbc2
Add Gitlab OAuth as standard provider (#201)
* add gitlab oauth

* updated docs format

* updated error message

* Code formatting

---------

Co-authored-by: Zai Shi <zaishi00@outlook.com>
2024-08-24 22:36:52 +02:00
Konstantin Wohlwend
e2a754b3b7 Improve docs 2024-08-22 19:33:48 -07:00
Konstantin Wohlwend
9d1a57134d Individual users 2024-08-22 18:07:18 -07:00
Zai Shi
7b5d0ed793
Team metadata & client read only metadata (#196)
* added team metadata

* added client readonly metadata

* updated tests

* added team client meta data tests

* added user metadata tests

* added client read only metadata to stack-app

* added client read only metadata
2024-08-20 20:39:13 +02:00
Nuno Morais
d6756f6fa2
Implement Discord oauth provider (#187)
* Implement Discord oauth provider

* Add Discord OAuth setup guide and callback URL to the docs

* removed changes in dashboard, only add discord as standard provider

* fixed small problems

* fixed types

---------

Co-authored-by: Zai Shi <zaishi00@outlook.com>
2024-08-17 20:54:42 +02:00
Zai Shi
757dea48c0
Team account settings (#186)
Some checks are pending
Runs E2E API Tests / build (20.x) (push) Waiting to run
Runs E2E API Tests / build (22.x) (push) Waiting to run
Lint & build / lint_and_build (20.x) (push) Waiting to run
Lint & build / lint_and_build (22.x) (push) Waiting to run
TOC Generator / TOC Generator (push) Waiting to run
* added team setting to account setting

* updated account setting

* updating style

* improved update password

* updated style

* added path navigation

* added route to selected team switcher

* removed unused

* added user invitation form

* added team name update
2024-08-14 22:24:20 +02:00
Konstantin Wohlwend
700034ca01 Fix project deletion ISE 2024-08-12 16:56:16 -07:00
Jasveer Singh
ed44d7588b
feat:Add delete project functionality in Project,Project-settings Issue Is:-No option to delete a project #111 (#127)
Some checks are pending
Runs E2E API Tests / build (20.x) (push) Waiting to run
Runs E2E API Tests / build (22.x) (push) Waiting to run
Lint & build / lint_and_build (20.x) (push) Waiting to run
Lint & build / lint_and_build (22.x) (push) Waiting to run
TOC Generator / TOC Generator (push) Waiting to run
* Add delete project functionality in Project,Project-settings

* removed changes to the old dashboard

* added onDelete and backend endpoints

---------

Co-authored-by: Zai Shi <zaishi00@outlook.com>
2024-08-12 03:46:25 +02:00
Zai Shi
e5965cf977
Team frontend components (#178)
* Team invitation (#171)

* team invitation wip

* implemented handler

* team invitation callback wip

* added team invitation frontend

* fixed listCurrentUserTeamPermissions

* added team invitation email template

* fixed bugs

* fixed verification code handler

* added more checks to team invitation verification

* fixed team invitation page

* restructured verification code handler

* fixed frontend

* fixed team invitation tests

* added more team invitation test

* fixed bug

* added migration file

* removed unused code

* Allow Next.js version `latest` in package.json

* Fix typo

* Update error message

* Remove unnecessary console.warn

* Updated "edit this page" button

* Hide unsupported properties from docs

* OAuth token tests

* Fix typo

* added create user button

* added create user button (#173)

* added basic team settings

* Create SECURITY.md

* added editable text

* added more team settings

* Export button in tables

* Export all pages of tables

* Update security policy

* Fix docs typo

* More docs typos

* Improved user creation handlers

* added list users on client

* updated team-settings

* hide team setting component for now

* Fix: Improve error handling for Server API (#170)

* Added entity checks to provide better errors in API for 'server' access type

* Removed 'ensureUserTeamPermissionExist', changed permissionId type to string in 'ensureUserHasTeamPermission'

* added different error types for user team permission

---------

Co-authored-by: Fahad Khan <fahad.khan@net-mon.net>
Co-authored-by: Zai Shi <zaishi00@outlook.com>

* added ensureClientUserAuthenticated

* improved error handling

* removed unused imports

* fixed bug

* added member list

* Sign up restriction button on dashboard

Fix #66, #74

* moved data table to stack-ui

* added remove user modal

* fixed chokidar

* updated ui

* fixed merge

* fixed merge

* fixed merge

* updated settings component

* improved mobile styles

* added user invitation ui

* added team creation page

* added team creation to team component

* added setting icon to team switcher

* added settings sections

* added client_team_creation_enabled

* added frontend team creation enabled checks

* updated demo page

* added member profile update

* fixed profile editing

* added leave team button

* added create/delete team redirect

* fixed column header, updated team setting

* fixed account setting padding

* updated tests

---------

Co-authored-by: Stan Wohlwend <n2d4xc@gmail.com>
Co-authored-by: Fahad Khan <62707456+kfahad5607@users.noreply.github.com>
Co-authored-by: Fahad Khan <fahad.khan@net-mon.net>
2024-08-12 02:11:42 +02:00
Konstantin Wohlwend
c182cebec6 MFA for non-password apps 2024-08-11 13:30:05 -07:00
Konstantin Wohlwend
d01471acfc TOTP MFA components 2024-08-10 09:45:49 -07:00
Konstantin Wohlwend
1b550e7e48 TOTP 2FA endpoints 2024-08-10 09:45:48 -07:00
Konstantin Wohlwend
c64fbf4fcd Sign up restriction button on dashboard
Fix #66, #74
2024-08-10 09:45:48 -07:00
Fahad Khan
4792aa53f8 Fix: Improve error handling for Server API (#170)
* Added entity checks to provide better errors in API for 'server' access type

* Removed 'ensureUserTeamPermissionExist', changed permissionId type to string in 'ensureUserHasTeamPermission'

* added different error types for user team permission

---------

Co-authored-by: Fahad Khan <fahad.khan@net-mon.net>
Co-authored-by: Zai Shi <zaishi00@outlook.com>
2024-08-10 09:45:48 -07:00
Zai Shi
fc9826aaa2 added create user button (#173) 2024-08-10 09:45:48 -07:00
Stan Wohlwend
5072f14891 OAuth token tests 2024-08-10 09:45:47 -07:00
Stan Wohlwend
29c488863f Hide unsupported properties from docs 2024-08-10 09:45:47 -07:00
Stan Wohlwend
df7073c199 Remove unnecessary console.warn 2024-08-10 09:45:47 -07:00
Zai Shi
4bbead0ef9 Team invitation (#171)
* team invitation wip

* implemented handler

* team invitation callback wip

* added team invitation frontend

* fixed listCurrentUserTeamPermissions

* added team invitation email template

* fixed bugs

* fixed verification code handler

* added more checks to team invitation verification

* fixed team invitation page

* restructured verification code handler

* fixed frontend

* fixed team invitation tests

* added more team invitation test

* fixed bug

* added migration file

* removed unused code
2024-08-10 09:45:47 -07:00
Konsti Wohlwend
dfb51b8346
Auth methods and connected accounts (#164) 2024-08-04 11:39:26 -07:00
Konsti Wohlwend
94a3edd77d
Svix concurrency workaround (#167)
Some checks are pending
Runs E2E API Tests / build (20.x) (push) Waiting to run
Runs E2E API Tests / build (22.x) (push) Waiting to run
Lint & build / lint_and_build (20.x) (push) Waiting to run
Lint & build / lint_and_build (22.x) (push) Waiting to run
TOC Generator / TOC Generator (push) Waiting to run
2024-08-03 21:05:24 -07:00
Stan Wohlwend
a86788d924 OAuth callback tests 2024-08-03 18:28:32 -07:00
Zai Shi
0c31d6a9ff fixed list current user team permission bug and permission editing bug
Some checks are pending
Runs E2E API Tests / build (20.x) (push) Waiting to run
Lint & build / lint_and_build (18.x) (push) Waiting to run
Lint & build / lint_and_build (20.x) (push) Waiting to run
TOC Generator / TOC Generator (push) Waiting to run
2024-08-03 15:46:37 -07:00
Stan Wohlwend
e51d839a42 Retry OAuth endpoints 2024-08-03 13:13:23 -07:00
Zai Shi
fb31827dc3
Webhooks (#157)
Some checks are pending
Runs E2E API Tests / build (20.x) (push) Waiting to run
Lint & build / lint_and_build (18.x) (push) Waiting to run
Lint & build / lint_and_build (20.x) (push) Waiting to run
* added svix to docker compose

* connect webhook sending with local svix

* added svix token endpoint

* added svix dashbaord

* added endpoint table

* updated danger items

* added more info on the webhook page

* added create endpoints dialog

* added edit and delete endpoint

* added log history

* added webhook secret

* updated sidebar layout

* fixed flashes

* updated webhook sending function

* removed unused imports

* updated endpoint code structure

* commented event types

* added webhooks docs

* added webhooks doc gen

* updated webhooks docs

* added webhook events

* updated teams docs

* fixed bugs

* fixed docker
2024-08-01 02:44:35 +02:00
Zai Shi
52e37a18ba
Server-side connected account (#159)
Some checks are pending
Runs E2E API Tests / build (20.x) (push) Waiting to run
Lint & build / lint_and_build (18.x) (push) Waiting to run
Lint & build / lint_and_build (20.x) (push) Waiting to run
* added new connected account endpoint

* added server useTeams

* fixed bugs

* updated example

* fixed teams fetch bugs

* hide deprecated route
2024-07-30 06:45:15 +02:00
Stan Wohlwend
f21e17114a Fix password reset 2024-07-28 06:09:56 -07:00
Stan Wohlwend
3bebd3f4d1 Better RetryErrors 2024-07-27 13:24:42 -07:00
Zai Shi
3bfff5215f
Facebook business config id (#155)
* Support moduleResolution: "node"

* Remove deprecated TeamSwitcher, use SelectedTeamSwitcher instead

* Rename CredentialSignInForm -> CredentialSignIn in code

* Improve KnownError messages

* Fix connected accounts (#148)

* fixed endpoint

* fixed account linking

* fixed get access token

* fixed import bug

* Client team API (#149)

* added transactions

* added client team update and delete

* added client side remove member

* allow user remove them selves from team

* fixed bug, fixed tests

* added client update test, fixed bugs

* added tests for team delete

* added more tests, fixed bugs

* fixed server example docs

* fixed broken doc link

* Impersonation

* do not create endpoint automatically

* removed unused property

* Team user profile API (#150)

* added team member endpoints

* fixed circular dependency bug, added team member profiles tests

* added more tests

* added migration file

* Improved error messages

* Redirect user to correct page after sign-in (#151)

* Metadata fields should be set to null when left empty (#145)

* fixed send verification email

* added comments in prisma file

* improved types (#152)

* added better messages for domains

* Added sentry headers to the allow list

* Optional shared keys (#153)

* removed standard providers and shared providers

* added more types

* updated all providers imports

* fixed circular dependency

* updated dashboard for different shared keys

* fixed old dashboard

* added migration file

* added better oauth error message

* added facebookConfigId

* fixed types

* fixed for facebook config to be string bu

---------

Co-authored-by: Stan Wohlwend <n2d4xc@gmail.com>
2024-07-27 01:34:50 +02:00
Zai Shi
650a47c72f added shared spotify 2024-07-26 16:07:00 -07:00
Zai Shi
8d65f9b47b Optional shared keys (#153)
* removed standard providers and shared providers

* added more types

* updated all providers imports

* fixed circular dependency

* updated dashboard for different shared keys

* fixed old dashboard

* added migration file
2024-07-26 16:07:00 -07:00
Zai Shi
71a7fcd6de fixed send verification email 2024-07-26 16:06:59 -07:00
Konsti Wohlwend
088e980c38 Metadata fields should be set to null when left empty (#145) 2024-07-26 16:06:59 -07:00
Konsti Wohlwend
aa654ccdc1 Redirect user to correct page after sign-in (#151) 2024-07-26 16:06:59 -07:00
Stan Wohlwend
009f62bde8 Improved error messages 2024-07-26 16:06:59 -07:00
Zai Shi
15b96049ae Team user profile API (#150)
* added team member endpoints

* fixed circular dependency bug, added team member profiles tests

* added more tests

* added migration file
2024-07-26 16:06:59 -07:00
Stan Wohlwend
8cd0b1609f Impersonation 2024-07-26 16:06:59 -07:00
Zai Shi
6beed942e9 Client team API (#149)
* added transactions

* added client team update and delete

* added client side remove member

* allow user remove them selves from team

* fixed bug, fixed tests

* added client update test, fixed bugs

* added tests for team delete

* added more tests, fixed bugs
2024-07-26 16:06:58 -07:00
Zai Shi
547a29219e Fix connected accounts (#148)
* fixed endpoint

* fixed account linking

* fixed get access token

* fixed import bug
2024-07-26 16:06:58 -07:00
Stan Wohlwend
4386b7c96b Improve KnownError messages 2024-07-26 16:06:58 -07:00
Zai Shi
4ec03d0515
Improved documentation, fixed bugs (#147)
Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>
2024-07-24 11:38:26 -07:00
Stan Wohlwend
edf66ab0d4 Better error alert 2024-07-21 19:09:23 -07:00
Zai Shi
0147213003
Better errors for crud handlers (#143)
* added more errors to team creation

* check teams in client get

* added db checks
2024-07-22 03:45:30 +02:00
Konsti Wohlwend
7cca092c82
Events (#142) 2024-07-21 18:31:42 -07:00
Stan Wohlwend
af1563653a Better params schema validation 2024-07-21 09:53:05 -07:00
Konsti Wohlwend
84960ec9ca
Mock OAuth server (#138) 2024-07-20 17:29:04 -07:00
Zai Shi
d391e332e6 added enabled oauth providers 2024-07-20 12:58:42 -07:00
Zai Shi
54027d58a2
New client (#135)
Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>
2024-07-19 22:07:44 -07:00
Zai Shi
2b26e3cb44
Improve API docs (#133)
* added projects and admin docs

* added docs to team permissions

* renamed url params to snake case

* added team permission definitions to docs

* added more docs

* added more docs

* added more docs to the api
2024-07-15 18:04:52 +02:00
Zai Shi
039cce7a58
Fix backend endpoints (#132)
* More backend endpoint implementations

Co-authored-by: Zai Shi <fomalhautb@users.noreply.github.com>

* Stuff

Co-authored-by: Zai Shi <fomalhautb@users.noreply.github.com>

* fixed env docs and crud imports

* Fix type error

* fixed crud handler dependency issue with proxies

* fixed wrong test

* fixed is_paginated, added list project tests

* Error when request queries or body properties are unused

* Fix semicolon

* added create project tests

* Fix some type errors

* Fix lint config

* fixed project no auth bug

* Fix lint errors

* Make no-restricted-syntax an error

* fixed project create no owner bug

* fixed project domain config update

* added more tests

* Sign up tests

* fixed email config update, added more tests

* added more tests, strip uuid in tests

* added oauth config update, added more tests

* E-mail verification tests

* Strip fewer fields

* added updateProject function for testing

* fixed project creation error, added more tests

* Begin OAuth authorize tests

* added get current project info

* added test for project

* removed description from current-project

* added basic teams endpoint

* improved openapi docs, added object types

* improved docs, fixed docs bug

* added email template endpoint

* crudHandlers.xyzList

* imp

* Default values for Prisma handlers

* CRUD queries

* Fix PEitherWrite

* Queries

* added api keys endpoints

* Authorize tests

* Password sign-in endpoint

* Sessions endpoints

* added more tests for api keys

* Update password endpoint

* Hide x-stack-request-id header

* fixed api key endpoints, added more tests

* updated test messages

* Password reset

* implemented team crud

* check-feature-support endpoint

* added teams tests, updated project endpoint folder structure

* added more tests for team

* added team membership handler

* Fix errors

* Type fixes

* Update comment

* strings comment

* Fix users page

* added more tests to team membership

* Rename team-memberships test file

* removed test code

* added user filter

* added permission grant

* added team permission definitions

* added permission definition tests

* added more tests

* fixed permission definition

* Improve types

* More type fixes

* Fix more type errors

* Fix lint errors

* Fix build error

* updated permission code structure

* fixed types

* added recursive permission

* Always log E2E test GH Actions logs

* Internal server error messages are shown in test environments

* Print Docker Compose logs

* fix

* fix more

* Improve

* fixes

* fixes

* fix stuff

* Wait on more stuff

* more fixes gh actions

* Fix pnpm start:xyz

* pin v

* node env test

* log order

* test envvars

* test

* added default permissions

* Credential sign up form now loads correctly

* added default permission to create team and add user

* Safari passwords match sign up

* Add migration file

* Don't error on authorize if blah

* fix tests

* restructured project with createCrudHandler

* Account settings password repeat

* Update README

* fixed user permission listing

* added sorting for permission definitions

* fixed project default permission update

* restructured project urls

* fixed import error

* removed format changes

* removed format changes

* removed format changes

* removed unused route

---------

Co-authored-by: Stan Wohlwend <n2d4xc@gmail.com>
Co-authored-by: Zai Shi <fomalhautb@users.noreply.github.com>
2024-07-15 01:55:01 +02:00
Stan Wohlwend
eaa0930617 Disallow unused expressions 2024-07-14 10:41:20 -07:00
Stan Wohlwend
580bd73348 Fix trailing space lint errors 2024-07-14 10:37:34 -07:00
Konsti Wohlwend
b0f233a44c
More backend endpoint implementations (#126)
Co-authored-by: Zai Shi <fomalhautb@users.noreply.github.com>
2024-07-13 22:04:53 -07:00
Zai Shi
5b2a851f98 fixed email template not loading bug 2024-07-07 18:58:11 -07:00
Stan Wohlwend
8e8a1b1be1 Set target to ES2021 2024-07-07 17:28:14 -07:00
Zai Shi
06c71d1b9e
added team profile image url (#130)
* added team profile image url

* added migration file

* fixed eslint

* added next image to demo

* fixed build error
2024-07-07 06:58:29 +02:00
Konsti Wohlwend
53450206f5
Create users & auth endpoints in backend (#85) 2024-07-01 22:42:08 -07:00
Stan Wohlwend
fb825e66a5 Prefer getEnvVariable in stack-backend 2024-07-01 19:40:43 -07:00
Stan Wohlwend
ab348af895 Prefix all environment variables with STACK_ 2024-07-01 17:30:35 -07:00
Zai Shi
cbf409ab25
fixed oauth docs and or redirect (#123) 2024-07-02 01:17:11 +02:00
Zai Shi
02568ba36d removed UserNotInTeam error 2024-06-25 15:44:40 +02:00
Kirat
69ff6a292e
Adds server and client side metadata (#87)
* Added server and client side metadata

* revert lint
2024-06-25 13:45:21 +02:00
Zai Shi
af9d811b28
Scope tailwind (#92)
* added scoped tailwind

* added same level scope

* added shadcn

* added watch css

* improved css processing

* fixed dark mode, migrated credential sign in component

* fixed export path

* fixed bugs

* migrated credential sign up

* migrated magic link sign in

* migrated auth page

* migrated forgot password

* migrated oauth group

* migrated oauth button

* improved password field

* fixed maybe full page

* migrated user button

* simplified user button structure

* fixed dark mode css process bug, migrated avatar

* migrated typography

* migrated message cards

* removed joy

* removed component context

* removed component core

* restructured components

* updated demo

* added new ui package

* added tailwind config to stack-ui

* moved stack components to stack-ui

* fixed demo ui components

* fixed demo dark mode

* fixed demo bugs

* updated dependencies

* fixed demo theme flash

* fixed styling bugs, removed breakpoints

* removed unused
2024-06-24 15:33:09 +02:00
Zai Shi
bd96da663b
Fix client side team bugs (#86)
* permission ids -> definition jsons

* fixed default permission update bug

* fixed set team default permission

* fixed handler edit dialog
2024-06-20 15:28:23 +02:00
Stan Wohlwend
e392684a3e Fix snapshot test class names 2024-06-20 00:48:19 +02:00
Stan Wohlwend
77229f4b2e Snapshot tests 2024-06-19 19:44:32 +02:00
Zai Shi
29bb31fdbc
added server user create team (#84) 2024-06-19 15:34:06 +02:00
Zai Shi
1f373846ab
System team permissions (#82)
* added default permissions to prisma

* added system team permission

* fixed permission update

* added system permission UI

* fixed permission update

* added create team client

* added client create team

* added client team create endpoint

* fixed user.createTeam, updated demo

* added default permissions for team creators and members

* added createTeamForUser

* added permission id format check

* updated db schema for default permission, added default perms when project is created

* fixed merge errors
2024-06-18 19:22:23 +02:00
Konsti Wohlwend
6480667a97
Split backend and dashboard (#83) 2024-06-18 15:49:31 +02:00
Stan Wohlwend
2f43d0a329 Fix "A component was suspended by an uncached promise" 2024-06-16 16:43:35 +02:00
Stan Wohlwend
ace8497ca6 Reduce occurence of "A component was suspended by an uncached promise" 2024-06-16 15:55:37 +02:00
Konsti Wohlwend
5cf167b5c7
Move examples to their own folder (#77) 2024-06-16 14:58:10 +02:00
Stan Wohlwend
a6c77899ed Read doc endpoints from filesystem 2024-06-16 03:38:42 +02:00
Zai Shi
019738aa64
Added fern docs (#76)
* adding openapi generation

* added optional responses

* added path params

* added request body

* added full openapi file

* fixed crud bug

* fixed small bugs

* added generate-docs script

* added parameter example

* create docs from handler

* improved parse openapi interface

* removed unused

* added endpoint metadata

* added current user handler

* migrated old docs to fern

* 🌿 api set-up (#75)

Co-authored-by: Catherine Deskur <chdeskur@gmail.com>

* added sdk docs

* updated tabs

* improved styling

* added header links

* added tags to docs

* added focus to docs

* added focus to team docs

* improved docs wording

* added discord link

* updated generate-keys docs

* fixed merge error

* added yaml package

* added github actions

* fixed doc gen bug

* added docs lint check

* added doc watch changes

* updated github actions

* fixed action file

* updated publish docs workflow

* added overview page

* fixed action bug

---------

Co-authored-by: fern <126544928+fern-bot@users.noreply.github.com>
Co-authored-by: Catherine Deskur <chdeskur@gmail.com>
2024-06-15 14:04:00 +02:00
Stan Wohlwend
3adf198275 selectedTeam on user CRUD 2024-06-12 17:04:51 +02:00
Stan Wohlwend
72eda48c55 Unify User and ServerUser
Fix #65
2024-06-12 15:14:47 +02:00
Zai Shi
ca22551db8
Optimized OAuth cookies (#70)
* reduced cookie size, added state to cookie name, remove cookie after finishing oauth

* added migration file

* changed remove cookie code location

* OAuthTimeout -> OuterOAuthTimeout

* fixed types
2024-06-10 11:29:22 +02:00
Stan Wohlwend
ac10cbb5c3 Improved CSR bailout error message 2024-06-09 15:50:19 +02:00
Zai Shi
617ccbed6f
Oauth scope (#67)
* removed openid for oauth providers, switch to pure oauth flow

* restructured files

* added project id to the env keys

* fixed tooltip display bug

* improved docs links

* removed old comments

* improved oauth code structure

* removed MS tenantID

* added linking account

* added access token endpoint

* fixed prisma schema

* added store refresh token

* fixed no refresh token error

* added authorize and link types to authorize endpoint

* added adding scope

* improved oauth provider code structure

* added additional scopes to db

* fixed sessions

* fixed oauth provider select bug

* added scopes to dashboard

* added get account

* added useAccount

* added useAccessToken

* fixed type errors

* fixed bug

* added oauth link failed page

* added error page

* fixed bugs

* updated error page

* added extra scope error

* fixed additional scope

* removed test code, fixed bug

* Throw error when accessing OAuth access token with shared OAuth keys

* removed additional scopes

* added scopes on sign in

* renamed errors

* added redirect URL for the oauth provider setting

* dynamic link

* added connect wrong account error

* added migration file, fixed useConnection bug

* added after callback redirect url

* fixed types

* fixed type error

* updated migration file
2024-06-08 16:26:50 +02:00
Stan Wohlwend
543eb0cefb Expose Session in library 2024-06-08 14:55:05 +02:00
Stan Wohlwend
7938ff6439 Whitespace ESLint rules 2024-06-07 11:55:46 +02:00
Stan Wohlwend
ca7da8dff7 Fix lint errors 2024-06-06 19:23:20 +02:00
Stan Wohlwend
55776dcff4 Fix double-redirect on signout 2024-06-06 17:50:01 +02:00
Stan Wohlwend
b0f1119a31 Fix dev builds 2024-06-06 16:29:30 +02:00
Stan Wohlwend
dafe0dc1fb Fix lint errors 2024-06-06 13:35:29 +02:00
Stan Wohlwend
d95696ee96 Refactor TokenStore into Session 2024-06-06 12:30:17 +02:00
Stan Wohlwend
035ba57d66 Show alert when there's an error in UI components 2024-06-04 19:45:13 +02:00
Zai Shi
53f7b71c8c
Spotify OAuth (#59)
* fixed style

* improved browser frame styling

* added spotify

* added prisma migration
2024-05-29 14:24:15 +02:00
Konsti Wohlwend
4415012f8c
Email template editor (#54)
* added email editor

* added theme

* improved styling

* removed unused

* added toolbar toggle

* fixed layout problems

* removed sample drawer

* added original license

* added template var matching

* renamed files

* added variable panel

* changed boxes to tailwind DIVs

* added save button

* added custom text-block

* removed avatar, change tab switching logic

* removed html component for now

* renamed folder

* moved download import to setting panel

* added prisma schema for email templates

* added mustache

* added cancel button

* added email templates crud

* removed email template id

* updated email template list page

* removed unused imports

* removed createEmailTemplate handler

* added reset button to email template

* added default templates structure

* added template default value

* moved email template location

* added template information

* added email template routes

* fixed types, added error page

* improved styles

* updated sidebar links

* added save and cancel functions

* wrapped router and link for leave confirmation

* changed disabled => needConfirm

* fixed link

* fixed styles

* fixed link

* fixed bugs

* fixed template editing bugs

* added reset confirmation

* fixed save button

* fixed type error, moved email util file

* moved constant, added prefetch to link

* restructured code

* added variable system

* added email verification default

* removed preview

* added templates for all emails, removed unused

* fixed import error

* migrate part of mui to shadcn

* migrated more to shadcn

* migrated more mui

* updated color picker

* migrate more to shadcn

* added shadcn toggle group

* removed editor provider

* updated slider

* migrated toggle group to shadcn

* moved block icons to lucide

* removed radio group

* fixed color picker

* migrated icons to shadcn

* change popup buttons to shadcn

* fixed create block button display bug

* changed import json to shadcn

* migrated block menu

* removed mui dependency

* render merged preview

* refactor: Replace deleteEmailTemplate with resetEmailTemplate for consistency

* chore: renamed delete email template and removed unused imports

* fixed add block button style

* changed button default style

* added subject

* added subject preview

* moved document-core into the repo

* moved all email components into the repo

* removed context in reader block

* restructured files

* moved components to react-email

* removed unused

* fixed magic link template

* fixed templates

* Mustache -> Handlebars, disabled escape

* fixed editor scrolling

* moved delete button location to inside the box

* fixed template rendering error, updated templates

* updated button text in email templates

* generated migration file

* fixed small bugs

* fixed handle bar import path

* removed all the double ;;

* fixed lint

* fixed inert with type extension

---------

Co-authored-by: Zai Shi <zaishi00@outlook.com>
2024-05-28 11:49:59 +02:00
Stan Wohlwend
2a6c4e9f34 Allow 127.X.X.X loopback hostnames 2024-05-25 18:37:07 +02:00
Stan Wohlwend
9653aca0d2 No more result strict mode 2024-05-25 18:14:48 +02:00
Stan Wohlwend
f261e18330 Fix yup JSON schema 2024-05-25 18:01:07 +02:00
Stan Wohlwend
5ca23d3623 Fix current-user-refresh bug 2024-05-25 15:39:37 +02:00
Stan Wohlwend
58db64b491 Skip credentials: "omit" in Cloudflare Workers 2024-05-25 13:25:01 +02:00
Stan Wohlwend
cf16c2f991 Remove unneccessary log statement 2024-05-25 12:09:57 +02:00
Stan Wohlwend
a28e3b381a Admin access token expiration handling 2024-05-25 12:09:18 +02:00
Stan Wohlwend
93d7fa3f44 Add Next.js 15-related comment 2024-05-24 01:09:26 +02:00
Stan Wohlwend
be045218cd Use WebCrypto for UUID generation 2024-05-23 18:04:12 +02:00
Stan Wohlwend
5fb66aa13c Compile-time import scrambling 2024-05-21 15:28:48 +02:00
Stan Wohlwend
237d9d6de5 Replace crypto-browserify with webcrypto 2024-05-21 12:23:51 +02:00
Stan Wohlwend
b3b576f4d7 Use crypto-browserify 2024-05-21 11:04:17 +02:00
Zai Shi
8e0eb8f472
Added selected team to the user object (#42)
* added selected team

* fixed hooks order bug

* fixed bug

* removed test code

* fixed db schema
2024-05-21 08:11:28 +02:00
Zai Shi
c5ec7633e7
Updated docs, added why stack, completed custom sign-in/sign-up examples (#40)
* fixed color theme

* put two setup methods into tabs

* added why stack

* re-ordered files

* updated why stack

* added custom user information section

* updated signup docs

* added example custom pages

* updated sign up docs

* updated custom magic link docs

* added redirect comments

* updated doc links

* fixed lint

* fixed loading indicator types
2024-05-20 09:56:02 +02:00
Zai Shi
040ec072f3
Added dashboard email configuration & user permission edit (#39)
* added form setting card

* removed unused code

* added custom email server page

* added email configuration dialog

* added sender name

* Update email server settings labels for clarity

* added email config update endpoint

* fixed update bugs

* fixed bugs

* fixed type errors

* moved senderName to standard config, check secure setting by port

* fixed duplicate settings

* fixed build errors, added migration

* updated tooltips

* fixed tooltip display bug

* added user permission edit
2024-05-18 19:32:27 +02:00
Zai Shi
92a4a18632 fixed show configuration link 2024-05-17 16:13:15 +02:00
Zai Shi
f337b53293
Migrated user, api key, and team table to Shadcn (#36)
* added data table

* removed tables

* added shadcn tasks table

* fixed command select bug

* added general toolbar

* added test user table

* added actions

* updated action cell

* added toolbar render

* added auth method filter

* removed unused

* improved layout

* improved layout

* added actions

* fixed bugs

* fixed button in button error

* added delete user action

* added verified switch field

* fixed label, added tooltips

* added verified email filter

* added table for domains page

* fixed dialog bugs

* removed button animation

* improved styling

* added api key table

* added status to api key table

* improved styling

* removed unused

* added team table

* new team table

* updated pagination message

* fixed pnpm lock
2024-05-14 23:51:44 +02:00
Konsti Wohlwend
a0dc6f6782
Prisma route handlers (#34) 2024-05-14 15:31:13 +02:00
Stan Wohlwend
25b5e0f5ef Client version in header 2024-05-14 14:16:12 +02:00
Zai Shi
04599b40e5
Moved dialogs to shadcn & Improved auth methods dashboard design (#35)
* added sidebar

* add side-bar layout

* fixed small bugs, adding mobile sidebar

* fixed mobile sidebar

* added mobile breadcrumb

* improved project switcher order

* fixed eslint

* added typography

* added page layout, removed unused data

* new page layout

* removed unused files

* updated urls dialog

* added async switch

* fixed display bug

* speed up animation, reduced card shadow

* AsyncSwitch -> Switch, AsyncButton -> Button

* updated page layout

* updated typography

* fixed bugs

* fixed bugs

* improved user page layout

* added link component

* removed page loading indicators

* moved avatar to top right

* providers->auth-methods

* removed loading indicator

* updated auth methods layout

* updated oauth provider styling

* added new oauth providers setting design

* updated confirmation dialog

* fixed documentation link

* switched zod to yup

* added provider setting dialog

* fixed create project bug

* updated provider settings

* added form dialog

* added form dialog to domains

* improved etam settings page

* updated production mode

* fixed bugs

* reduced transition speed
2024-05-13 17:52:21 +02:00
Stan Wohlwend
dec622ed9e
CRUD schemas (#28) 2024-05-12 20:29:14 +02:00
Zai Shi
507b97f427
Migration to Shadcn UI (#31)
* fixed theme doesn't work when not signed in

* added tailwind

* use stack theme instead of stack joy theme for server

* added shadcn

* added shadcn components

* added new project page

* improved styling

* added footer

* added footer

* added new project page

* added project creation page

* made new project page interactive

* added project settings on create project endpoint

* added async button

* fixed small things

* data-theme -> data-stack-theme

* changed color scheme

* changed joy buttons to shadcn buttons

* fixed lint

* added redirect to create project page
2024-05-10 23:34:42 +02:00
Stan Wohlwend
beccddd38b Better random nonce 2024-05-09 16:12:11 +02:00
Stan Wohlwend
b2275484a7 Disable caching on requests 2024-05-09 16:00:12 +02:00
Stan Wohlwend
89fc11d3a2 Disable fetch caching for client requests 2024-05-09 11:21:14 +02:00
Zai Shi
90ca97339d added team deletion 2024-05-08 16:39:54 +02:00
Stan Wohlwend
9ff2cff5c5
Organizations & RBAC (#22)
* added organizations route

* added orgganizations/[orgId] and orgganizations/[orgId]/users routes

* added more routes

* restructured dashboard pages, added organization page

* fixed redirect bug

* updated sidebar

* added mock orgnizations

* fixed breadcrumbs

* added edit org modal

* added memeber table

* added permission table

* Orgs & perms backend

* Fix build errors

* updated permission ui

* org -> team for frontend

* added enable team UI

* Stack App for teams

* formatted schema

* renamed all orgs to teams

* fixed docusaurus bug

* disabled docusaurus build progress bar

* added member profile and direct permission to profile

* removed dead code, memberProfile -> member

* removed teams attribute from the user object

* added /teams endpoint

* added create team endpoint

* added add-user endpoint

* moved add-user

* added server side get teams

* updated schema formatting

* added team enabled endpoints

* fixed type error

* moved get current teams to current-user/teams

* improved interface

* added create team

* hooked up team to frontend

* added hooked up team name with team member page

* added list team users

* added useUsers to team object

* fixed list team user bug

* added team update

* added list permissions and use permission on app

* added create permission

* list permission

* added permission list

* added inherited permission list

* add edit permission model

* restructured permission graph

* updated style

* added delete permission

* fixed delete permission bug

* added inheritence update

* fixed await bug

* fixed selection bug

* added permission update

* fixed update bug

* fixed team update refresh

* added remove user from team

* restructured permission and permission definition

* updated permission definition structure

* updated list permissions and grant permissions

* fixed list user permissions

* added grant permission

* fixed list permission

* added direct option to list team use permission

* fixed bugs

* fixed bugs

* added revoke permission

* inherited from -> contains

* added client list permission

* restructured stack-app teams and permissions

* fixed server teams and permissions

* fixed bug

* fixed bugs

* added teams pages to demo

* added styled component compiler

* added list teams

* added join and leave teams

* fixed prisma onDelete

* fixed type bugs

* removed on permission change for now

* added member

* fixed user and server user

* fixed imports

* added create team

* added more content to demo

* fixed recursion bug

* fixed recursion stack out of bound bug

* removed teamsEnabled

* added create team on sign-up options

* added create team on signup

* queriable -> queryable, fixed migration file

* fixed migration file

* fixed demo build error

* fixed license accidental change

* fixed tab styling

* added required to create permission id

* added more ui error hints

* fixed seed wrong setting

* default team name

* improved permission list ui

* improved demo display

* Update README.md

---------

Co-authored-by: Zai Shi <zaishi00@outlook.com>
2024-05-08 12:43:56 +02:00
Stan Wohlwend
74f3fe2e49
Middleware support (#29) 2024-05-05 17:33:36 +02:00
Stan Wohlwend
dc6659131c
Auth for smartRouteHandler (#27) 2024-05-05 10:28:31 +02:00
Stan Wohlwend
406ad69ebb
Docker compose dependencies (#20) 2024-05-04 15:42:41 +02:00
Stan Wohlwend
80b743d146
CommonJS support (#25) 2024-05-03 12:37:14 +02:00
Zai Shi
8a0095f0b1
Fixed color mode and flashes (#24)
* fixed button

* removed link variant

* fixed input

* fixed label

* fixed separator

* fixed indicator

* fixed link

* fixed theme toggle

* fixed text

* fixed popover, updated link color

* fixed password field

* fixed avatar and card

* fixed dropdown

* fixed skeleton

* improved password field code

* fixed tabs

* fixed user button

* fixed demo header

* fixed demo select

* fixed theme provider

* fixed demo color mode

* fixed demo theme

* deleted dev app

* removed demo app loading indicator

* added description to demo app

* fixed small things

* updated server

* updated color mode doc

* updated docs

* removed unused dependencies
2024-04-30 14:30:36 +02:00
Stan Wohlwend
02be9268c0 Partial prerendering loading screen 2024-04-28 11:50:17 +02:00
Stan Wohlwend
94320b9435 Get rid of ReactPromiseErrorWrapper 2024-04-28 10:45:47 +02:00
Stan Wohlwend
9e0b3de21a Improve some error messages 2024-04-28 10:16:39 +02:00
Stan Wohlwend
f71f2c74d2
Partial prerendering demo (#21) 2024-04-27 14:23:54 +02:00
Zai Shi
2e6a04270c
Magic link dashboard toggle (#16)
* added magiclink dashboard toggle

* updated names on dashboard

* updated browser tab title
2024-04-23 15:24:42 +02:00
Stan Wohlwend
5e3004c18b Improved error handling 2024-04-23 12:02:18 +02:00
Zai Shi
96c26a7918
Magic link (#13)
* added magic link email, updated email template

* added magic link ui and db schema

* restructured sign in sign up page

* updated example custom button

* added joy tabs

* fixed bugs, added magic link errors, abstracted token creation

* added magic link callback

* fixed token bugs

* added more auth information to user object

* added changeset
2024-04-20 12:33:11 +02:00
Stan Wohlwend
02fe7bee2f StatusError name 2024-04-15 14:10:23 +02:00
Stan Wohlwend
ff3fb4a542 Remove unnecessary console.log 2024-04-14 21:54:44 +02:00
Zai Shi
3a55713b43 fixed access token parsing 2024-04-14 15:33:33 +02:00
Stan Wohlwend
6fe5ca45eb Report all errors to Sentry 2024-04-14 13:32:31 +02:00
Stan Wohlwend
3df1def41e Async onClick for button 2024-04-14 08:28:41 +02:00
Zai Shi
ed90a7efcf fixed error inheritance structure 2024-04-14 08:01:44 +02:00
Stan Wohlwend
23db888c90 Fix: "The provided app JSON does not match the configuration" 2024-04-13 17:52:33 +02:00
Zai Shi
2995d9662a
UserButton component and account setting page (#10)
* fixed sign in title bug

* addec changeset

* added popover

* added dropdown, improved user button

* improved user button

* added avatar, adding account setting

* added send verification email

* added plaintext to emails

* fixed select props

* added name update

* added password update

* added email password update

* only password update for accounts logged in credential

* fixed small errors in endpoints

* improved account setting page

* fixed types

* removed props export

* divider -> separator

* fixed accidently renamed dividers

* added changeset
2024-04-13 16:42:05 +02:00
Stan Wohlwend
673a8fae74 Add useful headers 2024-04-12 17:44:41 +02:00
Stan Wohlwend
244ac7c9e3 Decrease page load latency 2024-04-12 17:04:01 +02:00
Stan Wohlwend
0c24ed5f05 Fix auth error 2024-03-25 20:59:16 -07:00
Stan Wohlwend
33823065b6 Rework known errors 2024-03-25 20:59:16 -07:00
Stan Wohlwend
1774908984
Initiate backend rework (#6) 2024-03-18 01:40:40 -07:00
Zai Shi
c0151a8e5d removed redirectUrl in functions, added newUser attribute to signInWithOAuth, added after sign-in/up/out urls 2024-03-12 17:31:28 +08:00
Stan Wohlwend
df2130d36a Head tags 2024-03-08 06:23:02 +01:00
Stan Wohlwend
f5108bc53d Fix SSR error if Suspense is missing 2024-03-07 14:32:52 +01:00
Zai Shi
96d61ab216 improved type system 2024-03-06 21:38:49 +08:00
Zai Shi
397a4046ba Oauth -> OAuth 2024-03-06 21:17:14 +08:00
Zai Shi
8bbf4d2688 added more production check messages 2024-03-06 17:06:39 +08:00
Stan Wohlwend
db5a2c859e Remove most occurences of useStrictMemo 2024-03-06 05:39:11 +01:00
Zai Shi
3737f68e07 added allow localhost 2024-03-06 10:52:50 +08:00
Stan Wohlwend
939f50f75d AsyncCache cache strategies 2024-03-06 02:55:47 +01:00
Zai Shi
278a18a1ed added enabled to oauth config 2024-03-06 09:02:05 +08:00
Zai Shi
a66e32fef7 Merge branch 'main' of github.com:stackframe-projects/stack 2024-03-06 01:27:49 +08:00
Zai Shi
0eced1936b updated provider frontend 2024-03-06 01:27:45 +08:00
Stan Wohlwend
81760b87cd stack: Redirect to home on "Invalid API key" hack 2024-03-05 17:36:57 +01:00
Zai Shi
8ecba202cf made credential enabled work (both frontend and backend) 2024-03-05 23:08:16 +08:00
Zai Shi
cd152317de added project config update 2024-03-05 22:40:50 +08:00
Stan Wohlwend
f0dcc65b4b stack-shared: Add cacheFunction 2024-03-05 04:29:06 +01:00
Stan Wohlwend
f93858900f Fix "Invalid API key" bug with reload hack 2024-03-04 16:06:53 +01:00
Stan Wohlwend
8b25826652 Several small fixes on the dashboard 2024-03-04 14:29:29 +01:00
Zai Shi
85d6585664 Merge branch 'main' of https://github.com/stackframe-inc/stack 2024-03-04 06:24:44 +08:00
Zai Shi
6c8d5653f3 improved types for catch known error 2024-03-03 18:43:35 +01:00
Zai Shi
9bd2e26af0 fixed login token bug 2024-03-03 17:30:20 +01:00
Stan Wohlwend
489ef8bec3 Don't log SSR suspension error 2024-03-03 14:45:58 +01:00
Zai Shi
3a8b1041ae formatted code 2024-03-03 09:53:47 +01:00
Stan Wohlwend
e334df1a88 Fix use being called conditionally 2024-03-02 15:30:56 +01:00
Zai Shi
53f27b8758 added onboarding apikey dialog (doesn't quite work yet because of the root exit issue) 2024-03-01 13:56:17 +01:00
Zai Shi
f6e974a571 added user count, fixed display bug, renamed db projectUserPasswordResetCode 2024-03-01 11:20:45 +01:00
Stan Wohlwend
ced0be74b3 Move code (initial commit) 2024-02-28 14:35:30 +01:00