Chuck Driesler
e6e65a2f7d
feat(sso): list sso associations by user email ( #3420 )
...
* feat(workspaces): add workspace sso feature flag
* feat(workspaceSso): wip validate sso
* feat(workspaces): validate and add sso provider to the workspace with user sso sessions
* feat(workspaces): validate and add sso provider to the workspace with user sso sessions
* WIP
* fix(sso): restructure to handle all branches at end of flow
* fix(sso): add and validate emails used for sso
* fix(sso): park progress
* chore(workspaces): review sso login/valdate
* fix(sso): adjust validate url
* chore(sso): auth header puzzle
* fix(sso): happy-path config
* chore(gql): gqlgen
* fix(sso): almost almost
* fix(sso): auth endpoint
* a lil more terse
* fix(sso): light at the end of the tunnel
* fix(sso): improve catch block error messages
* fix(sso): session lifespan => validUntil
* fix(sso): I think we've got it
* feat(sso): limited workspace values for public sso login
* fix(sso): use factory functions
* fix(sso): til decrypt is single-use
* fix(sso): correct usage of access codes
* fix(sso): use finalize middleware in all routes
* chore(sso): cheeky tweak
* fix(sso): move some types around
* fix(sso): stencil final shape I'm sleepy
* fix(sso): more factories more factories
* fix(sso): on to final boss of factories
* fix(sso): needs a haircut but she works
* fix(sso): init rest w function, not side-effects
* fix(sso): /authn => /sso
* chore(sso): errors
* chore(sso): test test test
* chore(sso): test all the corners
* feat(sso): list workspace sso memberships
* chore(sso): tests, expose in rest
* fix(sso): expose search via gql
---------
Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com >
Co-authored-by: Mike Tasset <mike.tasset@gmail.com >
2024-11-01 11:27:12 +01:00
Gergő Jedlicska
9e7c90d6ce
feat(projects): add project regions, default to null ( #3429 )
2024-11-01 10:54:51 +01:00
Kristaps Fabians Geikins
5df716bf1c
feat: add & list server regions ( #3423 )
...
* WIP create modal
* babababa
* create dialog looks ok
* FE largely there
* workss
* cleanup
* fixed up test plumbing to avoid deadlocks and simplify GQL calls
* test fix
* added all tests
* CI fix
2024-10-31 16:08:50 +01:00
Gergő Jedlicska
ee514dc7b9
test: fix flaky tests ( #3422 )
2024-10-31 09:04:49 +01:00
Gergő Jedlicska
da7f0dda0e
gergo/web 2047 user joins the workspace event ( #3412 )
...
* feat(gatekeeper): add gatekeeper module feature flag
* feat(gatekeeper): add workspace pricing table domain
* feat(gatekeeper): add checkout session creation
* feat(gatekeeper): verify stripe signature
* wip(gatekeeper): checkout callbacks
* feat(gatekeeper): add unlimited and academia plan types
* refactor(envHelper): getStringFromEnv helper
* chore(gatekeeper): add future todos
* feat(gatekeeper): add productId to the subscription domain
* feat(gatekeeper): add in memory repositories
* feat(gatekeeper): add more errors
* feat(gatekeeper): complete checkout session service
* feat(gatekeeper): add stripe client implementation
* feat(gatekeeper): add checkout session completion webhook callback path
* feat(gendo): fix not needing env vars if gendo module is not enabled
* feat(gatekeeper): require a license for billing
* chore(gatekeeper): cleanup before testing
* feat(gatekeeper): subscriptionData parsing model
* ci: add billing integration and gatekeeper modules to test config
* test(gatekeeper): add checkout service tests
* feat(gatekeeper): make completeCheckout callback idempotent properly
* feat(gatekeeper): move to knex based repositories
* test(gatekeeper): billing repository tests
* feat(gatekeeper): add yearly billing cycle toggle
* feat(ci): add stripe integration context to test job
* feat(billingPage): conditionally render the checkout CTAs
* fix(gatekeeper): remove flaky test condition
* feat(helm): add billing integration feature flag
* WIP billing gql api
* feat(gatekeeper): cancel checkout session api
* feat(gatekeeper): handle existing checkout sessions, when trying to create a new one
* feat(gatekeeper): add workspace plans gql api
* feat(gatekeeper): handle cancelation and subscription updates
* fix(gatekeeper): scope initialization
* fix(gatekeeper): eliminate stripe client import sideeffect
* fix(gatekeeper): eliminate stripe client import sideeffect 2
* feat(gatekeeper): upsize subscription on workspace role change
* feat(shared): add command pattern implementation
* refactor(eventBus): remove return capabilities from the event bus
* refactor(workspaces): use new commandFactory in workspace resolver
* feat(core): facelift taskLock
* feat(gatekeeper): shedule subscription downscale
* feat(gatekeeper): manage subscription downscale
* feat(gatekeeper): get workspace subscriptions, that are about to expire
* feat(gatekeeper): manage subscription downscale
* fix(gatekeeper): do not update subscription to canceled subs
* ci: bump postgres and max connections
* feat(workspaces): fix command factory event bugs
2024-10-30 15:51:40 +01:00
Kristaps Fabians Geikins
55d0d10103
Merge pull request #3406 from specklesystems/fabians/multi-region-base
...
feat(server): multi region module base w/ a test (mocked) mutation
2024-10-30 10:25:04 +00:00
Kristaps Fabians Geikins
31f56001f8
Merge pull request #3400 from specklesystems/fabians/quick-js-to-ts-5
...
chore(server): quick js to ts #5 - remaining stragglers
2024-10-30 08:19:31 +00:00
Kristaps Fabians Geikins
610808fc15
feat(server): multi region module base w/ a test (mocked) mutation
2024-10-29 14:07:35 +02:00
Gergő Jedlicska
3184855aa7
gergo/checkoutGqlResolver ( #3405 )
...
* feat(gatekeeper): add all plan statuses
* chore(gatekeeper): gqlgen
2024-10-28 18:10:31 +01:00
Alessandro Magionami
c9ef276343
Merge pull request #3399 from specklesystems/fabians/quick-js-to-ts-4
...
chore(server): quick js to ts #4 - remaining commits resolvers (thats it!)
2024-10-28 15:18:16 +01:00
Alessandro Magionami
11c13796c2
Merge pull request #3393 from specklesystems/fabians/gendo-ioc-5
...
chore(server): gendo IoC #5 - getVersionRenderRequestFactory
2024-10-28 15:17:56 +01:00
Kristaps Fabians Geikins
11fec3222a
cjs doesnt like knex default export
2024-10-28 11:35:20 +02:00
Kristaps Fabians Geikins
9783537ea9
Merge branch 'main' into fabians/quick-js-to-ts-4
2024-10-25 15:19:29 +03:00
Kristaps Fabians Geikins
6cf31becad
commitDeleted
2024-10-25 15:16:31 +03:00
Kristaps Fabians Geikins
cbbf9b6ad4
commitUpdated
2024-10-25 15:03:15 +03:00
Kristaps Fabians Geikins
a3604331c4
commitCreated
2024-10-25 14:21:58 +03:00
Kristaps Fabians Geikins
f690f1016a
branchDeleted
2024-10-25 13:57:58 +03:00
Kristaps Fabians Geikins
64d2888506
branchUpdated sub
2024-10-25 13:55:26 +03:00
Kristaps Fabians Geikins
cedc1beb6c
branchCreated sub
2024-10-25 13:50:01 +03:00
Gergő Jedlicska
af3857a209
gergo/web 2038 billing graphql api ( #3379 )
...
* feat(gatekeeper): add gatekeeper module feature flag
* feat(gatekeeper): add workspace pricing table domain
* feat(gatekeeper): add checkout session creation
* feat(gatekeeper): verify stripe signature
* wip(gatekeeper): checkout callbacks
* feat(gatekeeper): add unlimited and academia plan types
* refactor(envHelper): getStringFromEnv helper
* chore(gatekeeper): add future todos
* feat(gatekeeper): add productId to the subscription domain
* feat(gatekeeper): add in memory repositories
* feat(gatekeeper): add more errors
* feat(gatekeeper): complete checkout session service
* feat(gatekeeper): add stripe client implementation
* feat(gatekeeper): add checkout session completion webhook callback path
* feat(gendo): fix not needing env vars if gendo module is not enabled
* feat(gatekeeper): require a license for billing
* chore(gatekeeper): cleanup before testing
* feat(gatekeeper): subscriptionData parsing model
* ci: add billing integration and gatekeeper modules to test config
* test(gatekeeper): add checkout service tests
* feat(gatekeeper): make completeCheckout callback idempotent properly
* feat(gatekeeper): move to knex based repositories
* test(gatekeeper): billing repository tests
* feat(gatekeeper): add yearly billing cycle toggle
* feat(ci): add stripe integration context to test job
* feat(billingPage): conditionally render the checkout CTAs
* fix(gatekeeper): remove flaky test condition
* feat(helm): add billing integration feature flag
* WIP billing gql api
* feat(gatekeeper): cancel checkout session api
* feat(gatekeeper): handle existing checkout sessions, when trying to create a new one
* feat(gatekeeper): add workspace plans gql api
* feat(gatekeeper): handle cancelation and subscription updates
* fix(gatekeeper): scope initialization
* fix(gatekeeper): eliminate stripe client import sideeffect
* fix(gatekeeper): eliminate stripe client import sideeffect 2
* fix(mainConstants): fitler gatekeeper scopes with feature flag
2024-10-25 10:46:09 +02:00
Kristaps Fabians Geikins
4a29e5f650
chore(server): gendo IoC #5 - getVersionRenderRequestFactory
2024-10-24 17:01:09 +03:00
Kristaps Fabians Geikins
6d53308fd8
chore(server): gendo IoC #1 - prep/cleanup before getting started
2024-10-24 15:39:41 +03:00
Kristaps Fabians Geikins
5c30d4a5ab
Merge pull request #3351 from specklesystems/fabians/sign-up-event-improvements
...
fix(server): more resilient sign up tracking
2024-10-23 10:16:26 +01:00
Chuck Driesler
dc9519f141
fix(workspaces): emit slug with discoverable workspaces ( #3361 )
...
* fix(workspaces): emit slug with discoverable workspaces
* chore(workspaces): gql lint
2024-10-23 09:50:08 +01:00
Alessandro Magionami
bed0fd60c6
Merge pull request #3373 from specklesystems/fabians/core-ioc-105
...
chore(server): core IoC #105 - remaining js rest to ts
2024-10-23 10:03:50 +02:00
Alessandro Magionami
f6a87a4898
Merge pull request #3372 from specklesystems/fabians/core-ioc-104
...
chore(server): core IoC #104 - validatePermissionsWriteStreamFactory
2024-10-23 09:58:42 +02:00
Alessandro Magionami
9b5d935ccc
Merge pull request #3371 from specklesystems/fabians/core-ioc-103
...
chore(server): core IoC #103 - validatePermissionsReadStream
2024-10-23 09:58:14 +02:00
Alessandro Magionami
f073faf7b0
Merge pull request #3370 from specklesystems/fabians/core-ioc-102
...
chore(server): core IoC #102 - adminProjectListFactory
2024-10-23 09:34:31 +02:00
Alessandro Magionami
2cf9bee7e4
Merge pull request #3366 from specklesystems/alessandro/web-943-add-branch-deleted-activity
...
Activitystream IoC 4 addBranchDeletedActivity
2024-10-23 09:33:30 +02:00
Kristaps Fabians Geikins
913696cb0c
chore(server): core IoC #105 - remaining js rest to ts
2024-10-22 12:52:14 +03:00
Kristaps Fabians Geikins
284d94f8ca
chore(server): core IoC #104 - validatePermissionsWriteStreamFactory
2024-10-22 12:22:36 +03:00
Kristaps Fabians Geikins
b128d13dbe
chore(server): core IoC #103 - validatePermissionsReadStream
2024-10-22 12:16:04 +03:00
Kristaps Fabians Geikins
30371332d3
chore(server): core IoC #102 - adminProjectListFactory
2024-10-22 12:04:35 +03:00
Kristaps Fabians Geikins
049205e0cd
chore(server): core IoC #101 - adminInviteListFactory
2024-10-22 11:57:36 +03:00
Kristaps Fabians Geikins
39f83d3e23
chore(server): core IoC #100 - legacyGetPaginatedStreamCommitsFactory rename
2024-10-22 11:41:42 +03:00
Kristaps Fabians Geikins
f5213a12b7
chore(server): core IoC #99 - batchDeleteCommitsFactory
2024-10-22 11:39:09 +03:00
Kristaps Fabians Geikins
c90521f8d0
Merge pull request #3365 from specklesystems/alessandro/web-943-add-branch-updated-activity
...
Activitystream IoC 3 addBranchUpdatedActivity
2024-10-22 09:09:56 +01:00
Kristaps Fabians Geikins
88c714392c
Merge pull request #3364 from specklesystems/alessandro/web-943-add-branch-created-activity
...
Activitystream IoC 2 addBranchCreatedActivity
2024-10-22 09:09:30 +01:00
Alessandro Magionami
b701a3361c
chore(activitystream): addBranchDeletedActivity refactor multiregion
2024-10-22 10:07:24 +02:00
Alessandro Magionami
282af83bd8
chore(activitystream): addBranchUpdatedActivity refactor multiregion
2024-10-22 09:53:36 +02:00
Alessandro Magionami
a2e9693a6a
chore(activitystream): addBranchCreatedActivity refactor multiregion
2024-10-22 09:52:47 +02:00
Kristaps Fabians Geikins
9d90451d1c
chore(server): core IoC #98 - hasObjectsFactory
2024-10-21 17:49:31 +03:00
Kristaps Fabians Geikins
b373e446b3
chore(server): core IoC #97 - getObjectsStreamFactory
2024-10-21 17:49:14 +03:00
Kristaps Fabians Geikins
960fe33f69
chore(server): core IoC #96 - delete getObjects
2024-10-21 17:49:02 +03:00
Kristaps Fabians Geikins
086e67b871
lintfix?
2024-10-21 17:48:24 +03:00
Kristaps Fabians Geikins
dee1479a7c
chore(server): core IoC #95 - getObjectChildrenQueryFactory
2024-10-21 17:21:49 +03:00
Kristaps Fabians Geikins
e2c886f27e
fix(server): more resilient sign up tracking
2024-10-21 16:20:48 +03:00
Alessandro Magionami
73decee881
Merge pull request #3341 from specklesystems/fabians/core-ioc-94
...
chore(server): core IoC #94 - getObjectChildrenFactory
2024-10-21 10:45:45 +02:00
Alessandro Magionami
17ec3b21cd
Merge pull request #3339 from specklesystems/fabians/core-ioc-93
...
chore(server): core IoC #93 - getObjectChildrenStreamFactory
2024-10-21 10:43:46 +02:00
Alessandro Magionami
acd6563156
Merge pull request #3337 from specklesystems/fabians/core-ioc-92
...
chore(server): core IoC #92 - getFormattedObjectFactory
2024-10-21 10:43:20 +02:00