Daniel Gak Anagrov
32f1700f37
fix(workspaces): switch property seats and viewers count ( #4934 )
2025-06-12 11:20:57 +02:00
Iain Sproat
5db8d41d13
fix(tests): typo ( #4911 )
2025-06-10 11:58:11 +01:00
Chuck Driesler
85e600aa98
feat(viewer): include selected object application ids in viewer state ( #4802 )
...
* feat(viewer): include selected object application ids in viewer state
* fix(viewer): selected object application ids as map
* fix(viewer): drop legacy key
2025-06-09 17:10:28 +01:00
Iain Sproat
d20cde3a68
feat(fileimport): provide admin dashboard for queue ( #4904 )
...
* feat(fileimport): provide admin dashboard for queue
* mitigate deprecation warning
* fix typo in GitHub Action
2025-06-09 13:36:43 +02:00
Daniel Gak Anagrov
11948b40de
feat(gatekeeper): track seat updates ( #4865 )
2025-06-05 12:41:05 +02:00
Gergő Jedlicska
72ecb9197b
feat(gatekeeper): intoduce the enterprise plan ( #4882 )
...
* feat(gatekeeper): intoduce the enterprise plan
* chore(server): remove more "magic strings"
* test(shared): fix plan tests with enterprise case
* Small change to format plan name
---------
Co-authored-by: Mike Tasset <mike.tasset@gmail.com >
2025-06-05 11:07:59 +02:00
Daniel Gak Anagrov
460245a71b
fix(versions): object history hidden when quering by project ( #4884 )
2025-06-04 10:44:08 +02:00
Iain Sproat
dae238f705
feat(fileimport service): allow dedicated Redis server for queue ( #4858 )
2025-06-03 08:55:54 +01:00
Daniel Gak Anagrov
ae8e4dbd10
feat(workspaces): added cron job to delete stale workspaces ( #4665 )
2025-06-03 09:22:03 +02:00
Daniel Gak Anagrov
23b61769b7
feat(fileupload): added eventBus and mixpanel monitoring
2025-06-02 08:22:20 +02:00
Gergő Jedlicska
8f37710c9e
feat(workspaces): expose the can read memeber email policy ( #4863 )
2025-05-30 17:07:07 +02:00
Chuck Driesler
0eb8d1f352
feat(workspaces): add workspace level default seat property ( #4851 )
...
* feat(workspaces): default workspace seat field
* chore(workspaces): add tests for default seat type
2025-05-30 12:30:20 +01:00
Gergő Jedlicska
c76ed87580
feat(workspaces): allow reading emails of invited users ( #4828 )
...
* feat(workspaces): allow reading emails of invited users
* feat(workspaces): expose workspace member email in workspace team query
to ws admins
* feat(workspaces): add email to join requests view for admins
* chore(workspaces): fix join request type
2025-05-30 11:01:06 +02:00
Daniel Gak Anagrov
def1ce71d3
feat(workspaces): add lastSyncAt to workspaces
2025-05-30 08:31:22 +02:00
Kristaps Fabians Geikins
bfe6688989
chore(server): extra logging to debug Query.project nullability issue ( #4847 )
2025-05-29 16:11:32 +03:00
andrewwallacespeckle
71e732b52e
Throw WorkspacesModuleDisabledError when FF is off
2025-05-29 14:11:45 +02:00
Daniel Gak Anagrov
3e9f87177d
feat(workspaces): Delete, Cancel, CancelSheduled mixpanel BE events
2025-05-29 11:15:06 +02:00
Iain Sproat
1f8e1a522d
fix(automate): better handle trigger definition errors ( #4845 )
2025-05-29 10:08:43 +01:00
Daniel Gak Anagrov
fedcf05497
fix(workspace): create event relationship to user ( #4841 )
2025-05-28 18:47:57 +02:00
Daniel Gak Anagrov
0b04719834
feat: moved workspaces Create and Upgrade mixpanel events to backend ( #4816 )
2025-05-28 13:30:55 +02:00
Iain Sproat
33e480185e
fix(passport): google strategy handle invalid grant errors ( #4742 )
2025-05-28 09:41:26 +01:00
Iain Sproat
1349ea714e
fix(server): ensure object IDs are like MD5 hashes; 32 character hexadecimal ( #4392 )
2025-05-28 08:43:31 +01:00
Iain Sproat
15274d13cf
chore(/auth/token): make thrown error more specific about message ( #4830 )
2025-05-27 17:47:28 +01:00
Chuck Driesler
b4d2c61374
chore(apps): add workspace scopes to BI and Excel ( #4823 )
2025-05-27 10:25:37 +02:00
Daniel Gak Anagrov
06e19fbd50
feat(gatekeeper): add updatedAt field to workspace plans ( #4786 )
...
* feat(gatekeeper): add updatedAt field to workspace plans
* fix: lint error
* fix: added updatedAt test
* fix: shared test
2025-05-26 11:35:53 +02:00
Chuck Driesler
22c596e985
chore(sso): logs related to grant types ( #4806 )
2025-05-23 15:49:27 +01:00
Gergő Jedlicska
2e86a723c6
feat(fileimport-service): add next gen file importer ( #4697 )
...
* feat(fileimport-service): add next gen file importer
* feat(fileimports): integrate server and fileimporter
* chore(dui3): remove leftover artifacts
* fix(server): test typing fixes
* fix(fileimports): test and pr comment fixes
* feat(fileimports: moare test fixes
* fix(fileimports): tests and yarn dedupe
2025-05-23 10:27:00 +02:00
Chuck Driesler
70f07fc725
fix(embed): use correct id ( #4798 )
2025-05-22 15:35:44 +01:00
Chuck Driesler
780d001a1e
feat(embed): expose embed feature access at project level ( #4796 )
...
* feat(embed): expose embed feature access at project level
* fix(embeds): use switch
2025-05-22 12:22:06 +01:00
Chuck Driesler
0f5c22329b
Chuck/web 3465 auto join discoverable workspace setting ( #4791 )
...
* feat(workspaces): enable toggle for auto-join discoverable workspaces
* fix(workspaces): include auto-join flag on LimitedWorkspace
* chore(workspaces): gqlgen
2025-05-22 10:11:05 +01:00
andrewwallacespeckle
a4278e5863
Merge branch 'main' into andrew/specklecon-banner-dismissable
2025-05-21 11:40:40 +02:00
Chuck Driesler
9724a3daef
feat(workspaces): sort discoverable workspaces by member count ( #4779 )
...
* fix(workspaces): order discoverable workspaces by team size
* fix(workspaces): emit workspace admins from LimitedWorkspace
* chore(workspaces): drop some comments
2025-05-21 10:04:44 +01:00
andrewwallacespeckle
6a1d277b16
fix(server): Add user to mailchimp onboarding audience if they are not in it
...
fix(server): Add user to mailchimp onboarding audience if they are not in it
2025-05-20 14:30:10 +02:00
Kristaps Fabians Geikins
9998ed2586
feat: personal project limits ( #4759 )
...
* base limits cleanup
* history limit tests
* canCreatePersonal & tests
* canInvite block
* WIP model check
* fix tests
* shared tests fix
* lodash import fix
* lint fix
* help update
* hopefully fixing test
* CR comment
2025-05-20 14:56:05 +03:00
andrewwallacespeckle
c571d51d27
feat: add speckleConBannerDismissed to activeUser.meta
2025-05-20 13:55:32 +02:00
Kristaps Fabians Geikins
d2f2d95bb5
chore(server): migrate remaining tests to TS ( #4772 )
...
* auth tests migrated
* core tests
* pwdreset
* authz tests
2025-05-20 14:24:48 +03:00
andrewwallacespeckle
38efa75bb8
Merge branch 'main' into andrew/fix-mailchimp-user-not-found-error
2025-05-20 12:46:32 +02:00
Iain Sproat
eabfab2555
chore(feature flags): defaults all to false, and additional commentary on expected permanence, dependencies, & licensing ( #4124 )
2025-05-20 11:45:25 +01:00
andrewwallacespeckle
506176bf8e
fix(server): Add user to onboarding audience if they are not in it
2025-05-20 12:23:48 +02:00
Kristaps Fabians Geikins
814bd2ca40
chore: branch -> model in error msg ( #4768 )
...
* chore: branch -> model in error msg
* tests fix
2025-05-20 12:27:05 +03:00
Daniel Gak Anagrov
d69b835ab9
refactor(workspaces): fixed minor comments ( #4764 )
...
* fixed minor comments
2025-05-20 10:31:23 +02:00
Iain Sproat
ea8c7d02bf
Merge branch 'main' into iain/task-id-to-request-context
2025-05-20 09:00:54 +01:00
Iain Sproat
cda139f53f
chore(server/auth): improve error messages ( #4207 )
...
* chore(server/auth): improve error messages
* fix tests
2025-05-20 09:45:00 +02:00
Iain Sproat
853aa6f1e9
Merge pull request #4626 from specklesystems/iain/web-3198-payment-failed-leads-to-404-on-missing-subscription
...
fix(server/billing): better handle incomplete checkout
2025-05-19 18:07:57 +01:00
Daniel Gak Anagrov
fa5f2eb1f5
feat(workspaces): added GQL fitlering capabilities to activeUser workspaces
...
* added filtering mechanism for getWorkspaces completed or not completed workspaces
* added filtering mechanism to filter workspaces of active user by string hitting on slug or name
2025-05-19 16:30:56 +02:00
Iain Sproat
3098100ca9
Merge branch 'main' into iain/task-id-to-request-context
2025-05-19 14:30:31 +01:00
Iain Sproat
185734d851
Merge pull request #4050 from specklesystems/iain/ratelimiter-should-respect-configuration
...
fix(ratelimiter): do not check rates if rate limiter disabled
2025-05-19 14:27:28 +01:00
Iain Sproat
cb7ff5247d
Merge branch 'main' into iain/task-id-to-request-context
2025-05-19 14:26:26 +01:00
Iain Sproat
1f1fa7de1b
Merge pull request #4602 from specklesystems/iain/minor-logging-fixes
...
chore(server): minor log metadata fix and tidy of .env.example files
2025-05-19 14:23:24 +01:00
Iain Sproat
43b0190720
Merge branch 'main' into iain/ratelimiter-should-respect-configuration
2025-05-19 13:37:26 +01:00