Alessandro Magionami
|
272eafe25d
|
chore(workspaces): disable test on ff off
|
2025-03-31 17:59:48 +02:00 |
|
Alessandro Magionami
|
99d9c9a2ad
|
feat(workspaces): seats by type counts in workspace
|
2025-03-31 16:43:00 +02:00 |
|
Alessandro Magionami
|
a38bbd4066
|
feat(workspaces): add viewers count
|
2025-03-26 10:24:14 +01:00 |
|
Alessandro Magionami
|
f433e3016c
|
chore(workspaces): fix build
|
2025-03-26 09:36:42 +01:00 |
|
Alessandro Magionami
|
3102a75d3b
|
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2867-expose-used-and-available-seats
|
2025-03-26 09:21:12 +01:00 |
|
Alessandro Magionami
|
ddae24eedf
|
chore(workspaces): add test and make product selection more robust
|
2025-03-25 17:40:09 +01:00 |
|
Alessandro Magionami
|
ba2152f2d3
|
chore(workspaces): disable test if FF workspaces is off
|
2025-03-25 10:27:08 +01:00 |
|
Alessandro Magionami
|
eaf3b3a479
|
feat(gatekeeper): seats counts
|
2025-03-25 09:47:13 +01:00 |
|
Alessandro Magionami
|
194a1fe607
|
feat(gatekeeper): downscale new plans
|
2025-03-20 16:29:32 +01:00 |
|
Alessandro Magionami
|
1eb7331733
|
chore(gatekeeper): fix test
|
2025-03-07 16:38:36 +01:00 |
|
Alessandro Magionami
|
656614e9bc
|
chore(gatekeeper): fix build
|
2025-03-06 10:28:27 +01:00 |
|
Kristaps Fabians Geikins
|
954b1a9f11
|
feat: plan prices accurately read from Stripe (#4104)
* WIP prices + new caching utils
* cached workspace plan prices
* GQL API done
* integrated in frontend
* fixed missing FF
* CR fixes
* integration tests
* removed non-existant team yearly env var
|
2025-03-05 12:23:38 +02:00 |
|
Alessandro Magionami
|
66f7e98aa7
|
feat(gatekeeper): remove 14 days trial expiration email
|
2024-12-20 19:31:47 +01:00 |
|
Alessandro Magionami
|
1ba905d61d
|
Merge branch 'main' of github.com:specklesystems/speckle-server into gergo/web-2124-set-up-email-notifications-for-trial-expiration
|
2024-12-20 11:08:30 +01:00 |
|
Alessandro Magionami
|
a363f0e81a
|
feat(workspaces): expose graphql field readonly for workspace type (#3659)
* feat(workspaces): add readOnly field to workspace gql type
* feat(workspaces): add readOnly logic for workspace
* refactor(gatekeeper): use exhaustive switch pattern
* chore(billing): fix test
* feat(gatekeeper): fix tests
---------
Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
|
2024-12-18 13:47:27 +00:00 |
|
Gergő Jedlicska
|
c186b23db6
|
feat(gatekeeper): send workspace trial expiry emails
|
2024-12-13 17:30:02 +01:00 |
|
Gergő Jedlicska
|
2a72631e8b
|
feat(gatekeeper): expire trail workspace plans (#3669)
|
2024-12-11 17:22:04 +01:00 |
|
Gergő Jedlicska
|
45c626323f
|
feat(gatekeeper): expire trail workspace plans
|
2024-12-10 19:20:02 +01:00 |
|
Gergő Jedlicska
|
f381dc3d9d
|
gergo/workspaceDefaultPlan (#3561)
* feat(gatekeeper): create workspaces with trial plan by default
* feat(gatekeeper): default to starter trial plan
* fix(eventBus): fix tests
|
2024-11-27 09:51:32 +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 |
|
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 |
|
Gergő Jedlicska
|
8cba7eb6f7
|
gergo/web 1968 add features list (#3332)
* 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
|
2024-10-20 15:40:31 +02:00 |
|