Commit Graph

43 Commits

Author SHA1 Message Date
Daniel Gak Anagrov ba3d9ade22 feat(activity): moved project roles to activity (#5019)
* feat: moved project roles to activity
* fix: added previous project role filed on activity
* fix: remvoke does not get logged as an actvity for every project in a workspace when removed from workspace
* fix: on delete user account, emit also seat and project event

Co-authored-by: Charles Driesler <chuck@speckle.systems>
2025-07-10 11:44:54 +02:00
Iain Sproat 4738b97091 feat(server/fileuploads): use a presigned url to upload large files (#4901) 2025-06-17 17:38:47 +01:00
Kristaps Fabians Geikins 4db1531064 feat: "workspace" project visibility (#4704)
* WIP new visi

* test fixes

* visibility seems to work

* authz policies & authorizeResolver updated

* various test fixes

* users tests

* frontend changes

* minor adjustments

* shared test fix

* test fixes

* force rerun CI
2025-05-14 15:20:26 +03:00
Kristaps Fabians Geikins 5df39ce4ce feat(server): allow activeUser.query to retrieve implicitly accessible projects (#4593) 2025-04-25 09:13:13 +03:00
Alessandro Magionami 3afe6a917b Merge pull request #4545 from specklesystems/alessandro/web-3127-sort-projects-in-the-project-selection-step
Alessandro/web 3127 sort projects in the project selection step
2025-04-23 14:54:54 +02:00
Kristaps Fabians Geikins f1ae0916c6 feat(server): improved user/server profile mp tracking (#4540)
* user tracking

* server profile tracking

* style
2025-04-23 15:19:24 +03:00
Alessandro Magionami 73d83e543c chore(core): add comment on type 2025-04-23 10:46:02 +02:00
Alessandro Magionami 908fd9ed74 feat(core): filter projects by role 2025-04-22 18:16:12 +02:00
Kristaps Fabians Geikins 820a1e2ebf feat(server): workspace roles taken into account in project queries (#4319)
* Workspace.projects fixed

* Query.project tested & fixed

* personalOnly flag added

* withProjectRoleOnly flag

* authorizeResolver implicit workspace roles

* minor cleanup

* reorg + support for throwing auth errors

* global error mapping

* undo special borkage

* CR fixes

* more CR fixes

* shared tests fix

* minor adjustment

* tests fix

* see if removing cached roles fixes it?

* more fixes

* clean up debugging garbage
2025-04-07 12:52:07 +03:00
Chuck Driesler c6e0714bc4 chore(authz): hoist authorizeresolver (#4253)
* chore(authz): hoist deleteStreamAndNotify

* chore(authz): hoist updateStreamAndNotify

* chore(authz): comment
2025-03-24 16:51:19 +00: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 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
Kristaps Fabians Geikins 4b7740eb17 Merge branch 'main' into fabians/web-2415-6 2025-02-17 15:15:52 +02:00
Iain Sproat 0ce23be6f3 chore(logging): log messages related to a request should include request ID (#3945)
- this requires passing the request logger through to the method invoking the logger
2025-02-06 16:04:51 +00:00
Kristaps Fabians Geikins 9b46747815 chore(server): refactor activityStream invocations - batch #6 - project invites 2025-01-24 18:35:21 +02:00
Kristaps Fabians Geikins 2e8863eb64 fix(server): dataloader batching being broken (#3838)
* fix(server): dataloader batching being broken

* feat(server): optimized stream collaborator retrieval

* test fix
2025-01-17 12:41:58 +02:00
Alessandro Magionami da49ec6625 feat(core): user projects filterable by workspace 2024-12-17 12:25:23 +01:00
Kristaps Fabians Geikins 4b6e7af19d feat(fe2): scope comment mentions to parent project collaborators (#3635)
* backend done

* get rid of email mention

* project scoped mentions work

* lint fix

* better user sanitization safety

* tests fix
2024-12-05 13:33:05 +02:00
Gergő Jedlicska c68090a041 feat(projects): filter projects, that are not available under sso (#3585)
* feat(projects): filter projects, that are not available under sso

* feat(fe2): add SSO authentication warning banner

* Use specific fragment types

* fix(streams): stream load behavior should match old implementation

* Add user id to ProjectsHiddenProjectWarning_User fragment

* GQL gen

* Copy update

* fix(streams): admin override logic

* chore: gqlcodegen

* Update fragment name

---------

Co-authored-by: andrewwallacespeckle <andrew@speckle.systems>
2024-12-03 11:51:27 +01:00
Gergő Jedlicska 73cc7e67d3 gergo/webhookRegions (#3459)
* feat(webhooks): multi region webhook resolver

* feat(webhooks): multi region webhook cleanup

* fix(webhooks): DI fixes

* feat(activitystream): region aware save activity

* feat(accessrequests): multi region

* feat(cli): allow multi region project and commit download

* feat(postgres): make docker postgres 0 day multi region ready

* feat(cli): allow multi region project and commit download properly

* fix(cross-server-sync): di fix

* feat(activitystream): non region aware activities, they are not project data

* fix(webhooks): triggers need to be included

* feat(stream/projectCreate): activity save is not needed any more, its all event based

* feat(multiRegion): get all registered db clients

* fix(regions): test equal in any order

* fix(projectDownload): need to await
2024-11-08 10:45:39 +01:00
Gergő Jedlicska f210d9b749 gergo/web 2109 project region based db connection selector (#3434)
* feat(projects): add project regions, default to null

* feat(multiregion): add projectRegion Db client lookup logic

* feat(multiregion): add project region repositories and caching

* feat(multiRegion): db initialization and get project db client

* feat(docker-compose): add second db for regions testing

* feat(multiRegion): initialize region with pubs and subs working

* fix(multiRegion): get region client even if it was registered in another pod

* feat(workspaces): create workspace resolver split

* feat: update server region metadata

* feat(projects): rewrite project creation

* feat(multiRegion): getRegionDb

* fix(workspaces): get projects now can retur null

* feat(multiRegion): make local multi region DB-s work

* feat: set d efault workspace region

* CR changes

* tests

* feat(multiRegion): bind region properly

* fe update

* test fixes

* feat(multiRegion): automatically create aiven extras plugin

* ci(postgres): use published postgres with aiven extras

* fix(multiRegion): roll back the aiven extras migration, there is a better way

* tests fix

* fix(billing): we do not need to add a seat, if the workspace is on a plan, but has no sub

---------

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2024-11-06 17:29:08 +01: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 766a189465 chore(server): core IoC #62 - deleteUserFactory 2024-10-15 14:22:06 +03:00
Kristaps Fabians Geikins d2e5385ee4 chore(server): core IoC #49 - markOnboardingBaseStreamFactory 2024-10-14 16:18:13 +03:00
Kristaps Fabians Geikins 30331c6f8e chore(server): core IoC #48 - markCommitStreamUpdatedFactory 2024-10-14 16:01:53 +03:00
Kristaps Fabians Geikins f976a929a9 chore(server): core IoC #47 - markBranchStreamUpdatedFactory 2024-10-14 15:55:37 +03:00
Kristaps Fabians Geikins 212d05d222 chore(server): core IoC #46 - getUserStreamsPageFactory 2024-10-14 15:45:42 +03:00
Kristaps Fabians Geikins 9d9813ae84 chore(server): core IoC #44 - remaining streams dataloaders 2024-10-14 15:34:51 +03:00
Kristaps Fabians Geikins cd5cb3d4cf chore(server): core IoC #41 - legacyGetStreamUsersFactory 2024-10-14 11:38:05 +03:00
Kristaps Fabians Geikins 2b0fbee43e chore(server): core IoC #40 - favoriteStreamFactory 2024-10-14 10:59:49 +03:00
Kristaps Fabians Geikins 7fa3b22366 chore(server): core IoC 39 - getFavoriteStreamsCollectionFactory (#3220) 2024-10-10 10:27:20 +02:00
Kristaps Fabians Geikins cd45fa7cde chore(server): core IoC 37 - legacyGetStreamsFactory 2024-10-10 11:01:50 +03:00
Kristaps Fabians Geikins 82162963ee chore(server): core IoC 37 - getDiscoverableStreamsFactory 2024-10-10 10:59:37 +03:00
Kristaps Fabians Geikins 491f837ff1 chore(server): IoC 36 - createOnboardingStreamFactory 2024-10-10 10:58:51 +03:00
Kristaps Fabians Geikins 6cb5022ac4 chore(server): IoC 35 - updateStreamRoleAndNotify 2024-10-09 16:31:20 +03:00
Kristaps Fabians Geikins a3252f88f3 chore(server): IoC 34 - updateStreamAndNotifyFactory 2024-10-09 12:54:10 +03:00
Kristaps Fabians Geikins ad9cb3aafd chore(server): IoC 33 - deleteStreamAndNotifyFactory 2024-10-09 12:37:57 +03:00
Kristaps Fabians Geikins aa4f319277 chore(server): IoC 32 - createStreamFactory (#3204) 2024-10-09 11:10:20 +03:00
Kristaps Fabians Geikins 380fe049e6 chore(server): IoC 31 - getStreamCollaboratorsFactory 2024-10-09 10:39:29 +03:00
Kristaps Fabians Geikins 04b03cc341 chore(server): IoC 30 - getCommitStream(s)Factory 2024-10-09 10:39:16 +03:00
Kristaps Fabians Geikins 5b5dd201e2 chore(server): IoC 29 - getStream(s)Factory 2024-10-09 10:39:00 +03:00