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
Alessandro Magionami
272eafe25d
chore(workspaces): disable test on ff off
2025-03-31 17:59:48 +02:00
Alessandro Magionami
57c6763953
chore(workspaces): fix imports
2025-03-31 17:39:15 +02:00
Alessandro Magionami
99d9c9a2ad
feat(workspaces): seats by type counts in workspace
2025-03-31 16:43:00 +02: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
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
5d6d0769fd
Merge pull request #4236 from specklesystems/alessandro/web-2803-downscale-workspace-subscription
...
Alessandro/web 2803 downscale workspace subscription
2025-03-26 09:14:41 +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
55648c3125
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2867-expose-used-and-available-seats
2025-03-25 15:26:12 +01:00
Kristaps Fabians Geikins
f76a2c34d3
chore: add no floating promises lint rule ( #4249 )
...
* chore: add no floating promises lint rule
* minor cleanup
* fix test by only running if node 22 or greater
---------
Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com >
2025-03-25 13:36:49 +02: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
800547309a
chore(workspaces): create table helper for subscriptions table
2025-03-24 15:42:54 +01:00
Alessandro Magionami
cd39e18d9b
chore(workspaces): fix linter
2025-03-24 15:31:02 +01:00
Alessandro Magionami
b1c9d8b2d4
feat(gatekeeper): on invoice created trigger downscale
2025-03-21 11:14:34 +01:00
Alessandro Magionami
38fd761fe3
fix(gatekeeper): fix date format in subscription parse
2025-03-20 18:57:52 +01:00
Alessandro Magionami
194a1fe607
feat(gatekeeper): downscale new plans
2025-03-20 16:29:32 +01: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
Alessandro Magionami
ab9ea4406e
chore(gatekeeper): fix tests
2025-03-13 11:00:59 +01:00
Alessandro Magionami
d829cac8b3
chore(gatekeeper): add specific error for unsupported workspace plan
2025-03-13 10:36:28 +01:00
Alessandro Magionami
89519bc6b7
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2741-subscriptions-to-upgrade-for-new-plan-types
2025-03-12 10:01:02 +01:00
Alessandro Magionami
d20d3bf94a
feat(gatekeeper): implement new upgrade plan in resolver
2025-03-11 17:54:54 +01:00
Alessandro Magionami
39d133d46b
chore(gatekeeper): test new upgrade plan flow
2025-03-11 17:54:26 +01:00
Alessandro Magionami
f824cb793a
feat(gatekeeper): create new upgrade plan flow
2025-03-11 17:52:42 +01:00
Alessandro Magionami
c035387eec
chore(gatekeeper): update function to validate upgrade
2025-03-11 17:52:18 +01: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
e4dc3b7834
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2802-missing-workspace-new-pricing-config-from-the-helm-chart
2025-03-10 11:05:58 +01:00
Alessandro Magionami
61736f7ee3
chore(gatekeeper): remove console.log
2025-03-10 10:14:57 +01:00
Alessandro Magionami
dceedf512f
chore(gatekeeper): remove last references to year limit for team plan
2025-03-10 10:11:40 +01:00
Alessandro Magionami
adfa8f4776
chore(gatekeeper): fix lint
2025-03-07 16:50:09 +01:00
Alessandro Magionami
1eb7331733
chore(gatekeeper): fix test
2025-03-07 16:38:36 +01:00
andrewwallacespeckle
d1f040051d
refactor(server): Update system emails ( #4074 )
...
* Update email verification. And workspace invite emails.
* Footer logos
* Workspace requests
* Trial
* Misc emails
* New logo
* Updates to font, spacing and footer
* Remove space
* Update invite emails
* Correct classes
2025-03-07 15:30:03 +00: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
Alessandro Magionami
2e0d2f0dbb
chore(gatekeeper): fix another
2025-03-06 15:00:05 +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
fd99914c8e
chore(gatekeeper): fix another test type
2025-03-06 11:26:41 +01:00
Alessandro Magionami
e10ffac30c
chore(gatekeeper): fix test type
2025-03-06 10:47:24 +01:00
Alessandro Magionami
ca2c43738c
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2774-upgrade-from-free-to-paid-plan
2025-03-06 10:29:49 +01:00
Alessandro Magionami
656614e9bc
chore(gatekeeper): fix build
2025-03-06 10:28:27 +01:00
Iain Sproat
5655b3e758
fix(metrics): pass registry in to modules ( #4113 )
...
- ensure metrics are added to the correct registry
2025-03-06 08:37:05 +00: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
bcdb5ed0b0
feat(gatekeeper): new checkout flow
2025-03-05 17:35:28 +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
andrewwallacespeckle
c384996978
refactor(fe): New workspace actions route to avoid slug conflicts ( #4107 )
...
* Remove blockedSlugs
* Update workspace action routes to use /actions
* Re-add blockedWords
2025-03-04 14:43:07 +00:00