Gergő Jedlicska
f501cc4ad5
gergo/web 2888 workspace project cancreate ( #4294 )
...
* WIP can create project
* WIP can create project more work
* complete body, stencil tests
* feat(shared): move workspace plan types into shared
* test progress wip
* feat(shared): add more logic to canCreateWorkspaceProject
* a few more tests, as a treat
* chore(authz): round out tests
* fixed loaders, new GQL checks, dataLoaders in auth loaders
* fix(authz): get workspace limits loader
* chore(authz): update loaders
* frontend fixed up to snuff
* fix(authz): fix workspace plans for tests
* fix(authz): classic
* fix(authz): 0 counts
---------
Co-authored-by: Chuck Driesler <chuck@speckle.systems >
Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com >
2025-04-01 16:38:20 +01:00
Kristaps Fabians Geikins
a83bae8d84
feat: Workspace/ProjectCollaborator/WorkspaceCollaborator seatType ( #4284 )
...
* Workspace & ProjectCollaborator seat type
* minor adjustment to FE
* minor adjustment to FE
2025-03-31 13:07:35 +03:00
Alessandro Magionami
7e944b182e
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2803-downscale-workspace-subscription
2025-03-20 10:32:21 +01:00
Kristaps Fabians Geikins
b55e197d00
chore(server): refactor seat updated to be its own event ( #4214 )
...
* chore(server): refactor seat updated to be its own event
* minor cleanup
* test fix
2025-03-19 12:17:27 +02:00
Alessandro Magionami
96bfedefe8
chore(gatekeeper): take end billing cycle date from stripe
2025-03-18 13:05:19 +01:00
Kristaps Fabians Geikins
d903e8ffc4
feat(server): support editor -> viewer seat downgrades ( #4181 )
...
* new seat based project role checks implemented
* everything done
* minor bugfix
2025-03-14 14:21:25 +02:00
Kristaps Fabians Geikins
28b49107b7
feat(server): upgrade workspace seat type ( #4158 )
...
* feat(server): upgrade workspace seat type
* test/lint fixes
2025-03-11 12:41:18 +02:00
Alessandro Magionami
1eb7331733
chore(gatekeeper): fix test
2025-03-07 16:38:36 +01:00
Alessandro Magionami
bfc48f21a0
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2774-upgrade-from-free-to-paid-plan
2025-03-06 15:26:34 +01:00
Kristaps Fabians Geikins
fb6dc448ca
feat(server): prevent viewer seat from becoming project contributor/owner + extra fixes ( #4117 )
...
* unrelated fixes that i noticed
* tests for fix
* tests & working restrictions
* test fix
* test fixx
2025-03-06 13:26:16 +02:00
Alessandro Magionami
656614e9bc
chore(gatekeeper): fix build
2025-03-06 10:28:27 +01:00
Alessandro Magionami
66ddb1eb34
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2774-upgrade-from-free-to-paid-plan
2025-03-05 19:29:44 +01:00
Alessandro Magionami
f5a8ab7cbc
feat(gatekeeper): add new create checkout session function
2025-03-05 17:33:36 +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
b6f269b8ea
feat(workspaces): code review changes
2025-02-28 11:14:28 +01:00
Alessandro Magionami
b6faa09bfc
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2765-ensure-seat-is-assigned-to-users-on-workspace-role-change
2025-02-28 10:44:29 +01:00
Alessandro Magionami
9322cfdd25
Merge pull request #4062 from specklesystems/alessandro/web-2729-viewer-and-editor-seat-types
...
chore(gatekeeper): add workspace_seats table and types
2025-02-28 10:23:33 +01:00
Alessandro Magionami
99d4aba767
feat(workspaces): create workspace seat function
2025-02-27 11:06:31 +01:00
Kristaps Fabians Geikins
ec092fb042
chore: move common workspace plan/feature config to @speckle/shared ( #4064 )
...
fix: gqlgen regenerated
2025-02-27 11:18:30 +02:00
Alessandro Magionami
ca6f2da63f
chore(gatekeeper): add workspace_seats table and types
2025-02-25 10:22:08 +01:00
Kristaps Fabians Geikins
eb050bb649
feat(server): new plans + disabled checkout/upgrade/sidegrade ( #4057 )
...
* feat(server): new plans + disabled checkout/upgrade/sidegrade
* pushed in CR fixes
2025-02-25 09:46:46 +01:00
Gergő Jedlicska
5b0bb3b65d
gergo/web 2635 set up new plans in the backend ( #4031 )
...
* feat(gatekeeper): add new free plan option as an unpaid workspace plan
* feat(workspaces): add feature flag for new plans
* feat(gatekeeper): add free plan option to workspace plans
* Added button in FE
* Make button more beautifuller
* feat(gatekeeper): enable creating workspaces on a free plan
* Fix
* Fix FE linting
---------
Co-authored-by: Mike Tasset <mike.tasset@gmail.com >
2025-02-21 14:49:04 +01:00
Kristaps Fabians Geikins
1d2a594f0a
chore: upgrade TS 5.2 -> 5.7.3 & ESLint to 9.20.1 ( #4032 )
...
* chore: upgrade TS 5.2 -> 5.7.3
* vite dts fix
* lint fix
* resolutions fix
* ui comp build fix
* precommit fix?
* latest eslint version
* autoloader fix
* undo unnecessary viewer change
* eslint fixes fe2 + trying disabled type linting
* lint fixes
2025-02-20 14:18:18 +02:00
Gergő Jedlicska
bf80347abf
gergo/web 2664 workspace backend powered metrics ( #3985 )
...
* feat(workspaces): delete workspace emit event
* feat(workspaces): move workspace group metrics to the backend
* Removed FE mixpanel group update
* Remove fragment
* test(gatekeeper): add unittest to new gatekeeper service
---------
Co-authored-by: Mike Tasset <mike.tasset@gmail.com >
2025-02-17 09:50:16 +01:00
Gergő Jedlicska
35bc6918cb
gergo/web 2428 academia should be free business ( #3831 )
...
* feat(server): workspace shoul equal unpaid business
* feat(server): add free workspace plans
* feat(gatekeeper): rename plans to invoiced
2025-01-16 10:21:59 +01:00
Alessandro Magionami
fa4022ad14
Merge branch 'main' of github.com:specklesystems/speckle-server into gergo/web-2124-set-up-email-notifications-for-trial-expiration
2024-12-23 10:29:12 +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
Alessandro Magionami
11beefeada
feat(gatekeeper): readOnly validation logic
2024-12-16 10:17:16 +01:00
Gergő Jedlicska
c186b23db6
feat(gatekeeper): send workspace trial expiry emails
2024-12-13 17:30:02 +01:00
Alessandro Magionami
fd2d6381f8
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2304-expose-graphql-field-readonly-for-workspace-type
2024-12-12 09:41:03 +01:00
Gergő Jedlicska
68938bab94
feat(gatekeeper): show subscription seats ( #3679 )
...
* feat(gatekeeper): show subscription seats
* Enabled summary on billing page
* Made interval dynamic
---------
Co-authored-by: Mike Tasset <mike.tasset@gmail.com >
2024-12-11 22:19:22 +01:00
Gergő Jedlicska
229a19c981
gergo/workspaceAdmin ( #3677 )
...
* feat(workspaces): add unified paginated items service
* feat(workspaces): admin update workspace plan
2024-12-11 18:54:24 +01:00
Gergő Jedlicska
2a72631e8b
feat(gatekeeper): expire trail workspace plans ( #3669 )
2024-12-11 17:22:04 +01:00
Gergő Jedlicska
fb7a7684e7
refactor(gatekeeper): use exhaustive switch pattern
2024-12-11 16:07:49 +01:00
Alessandro Magionami
b08f25dffa
feat(workspaces): add readOnly logic for workspace
2024-12-09 14:31:59 +01:00
Mike
8f4593e606
Feat: Workspace creation wizard ( #3625 )
2024-12-04 14:19:52 +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
be7be141e8
fix(gatekeeper): migrate plan rename ( #3552 )
...
* fix(gatekeeper): migrate plan rename
* fix(cli): fix yargs
2024-11-26 12:41:56 +01:00
Gergő Jedlicska
83a991bfac
feat(gatekeeper): rename workspace plans ( #3533 )
...
* feat(gatekeeper): rename workspace plans
* Updated plans in FE
* feat(gatekeeper): stripe redirect to workspace dashboard
* test(gatekeeper): fix tests
---------
Co-authored-by: Mike Tasset <mike.tasset@gmail.com >
2024-11-22 05:50:16 +01:00
Gergő Jedlicska
e30b8c83b9
gergo/workspacesMultiRegion ( #3477 )
...
* feat(webhook-service): learn to speak multi region
* feat(fileimport-service): talk multi region to me
* feat(fileuploads, blobs): multi region
* feat(workspaces): update delet workspace with billing and regions
* fix typo
* feat(workspaces): remove old billing resolvers
* test(workspaces): fix tests
* fix(workspaces): remove unused schema
2024-11-19 15:45:03 +01:00
Kristaps Fabians Geikins
f961a6da81
chore(server): various useful multiregion changes from comments pr ( #3499 )
...
* chore(server): various useful multiregion changes from comments pr
* hopefully fixing CI?
* test fix
* more test fixes??
* more test fixes..
* plz work ;((((
* revert multiregion on by default
2024-11-15 15:49:34 +02:00
Mike
5260111f8c
Feat: Add billing summary ( #3456 )
...
* Feat: Add billing summary
* Update linting
* Fix workspacePricingPlanInformation include info object
* Fix typing
* Cleanup
* Update seat prices
* Fix casing
* Remove old billing logic
2024-11-08 11:28:23 +01:00
Gergő Jedlicska
8e239ec744
feat(gatekeeper): feature access functions
2024-10-30 09:00:00 +01:00
Gergő Jedlicska
d6dad6609a
feat(gatekeeper): shedule subscription downscale
2024-10-28 18:58:13 +01:00
Gergő Jedlicska
81b923cf67
feat(gatekeeper): upsize subscription on workspace role change
2024-10-24 10:03:08 +02:00
Gergő Jedlicska
50fff10acd
feat(gatekeeper): handle cancelation and subscription updates
2024-10-22 23:17:22 +02:00
Gergő Jedlicska
b9682577d7
feat(gatekeeper): add workspace plans gql api
2024-10-22 10:31:56 +02:00
Gergő Jedlicska
cf5cf4b9c0
feat(gatekeeper): move to knex based repositories
2024-10-19 14:58:02 +02:00
Gergő Jedlicska
9118f1aa33
feat(gatekeeper): subscriptionData parsing model
2024-10-17 14:35:19 +02:00