Commit Graph

195 Commits

Author SHA1 Message Date
Kristaps Fabians Geikins 9f6d2d9d3a chore(server): emails IoC 6 - sendVerificationEmailFactory 2024-09-10 14:26:06 +03:00
Kristaps Fabians Geikins f10c30aa3c chore(server): emails IoC 4 - requestNewEmailVerificationFactory 2024-09-10 14:00:13 +03:00
Kristaps Fabians Geikins c92938eff3 chore(server): apollo server v3 -> v4 (#2880)
* main changes seem to be done?

* lint fix

* minor cleanup

* dataloader clear
2024-09-05 12:27:13 +03:00
Iain Sproat afbdeadf2d test(server/graphql): assert error code and fix some tests (#2758) 2024-08-27 10:07:13 +01:00
Alessandro Magionami 0ac36af93e Alessandro/web 1659 workspace limits (#2733)
* chore(workspaces): billing version limit graphql schema

* chore(workspaces): billing member role required

* chore(core): test helper for random string

* chore(core): test helpers

* chore(workspaces): workspaces billing version resolver

* chore(workspaces): rename version to versionsCount
2024-08-26 17:53:34 +02:00
Iain Sproat acd83653a2 feat(graphql/serverinfo): provide maximum object size in bytes (#2734)
* feat(graphql/serverinfo): provide maximum object size in bytes

* Places config values in a ServerConfiguration object
- updates blobstorage to use ServerConfiguration, while retaining backwards compatibility
2024-08-23 13:06:22 +02:00
Kristaps Fabians Geikins e4cc0cbc83 fix(workspaces): add email to existing account workflow bugfix (#2703)
* fix(fe2): properly handling invitedTeam auth error

* fix(fe2): disable invite dialog if not workspace admin

* fix(useremails): fix for default primary:true when creating new emails

* test fix
2024-08-20 15:45:34 +03:00
Iain Sproat 4d82e1f575 fix(/api/diff): fix debug log pollution (#2704) 2024-08-20 12:52:50 +01:00
Kristaps Fabians Geikins 2bb7802fb9 feat: accept & decline workspace invite as a registered member (#2675)
* abstract base invite banner

* WIP banner actions

* WIP modify obj

* minor fix

* invite accept/decline cache mutations

* banner accept/decline basically works

* new block for accepting workspace invite

* WIP wrong account flow

* login/registration block changes

* add email invite related changes

* add new email FE

* add email w/ invite works

* final adjustments

* minor fixes

* addressing cr comments

* no-FF support

* extra workspace ff checks
2024-08-19 13:01:25 +03:00
Iain Sproat 60251e45cb Revert "fix(server): revert 55cad9662a (#2633)" (#2650)
This reverts commit f2c5677b4a.
2024-08-13 11:48:20 +01:00
Alessandro Magionami 595f76f183 fix(useremails): avoid creating same email twice (#2640)
* fix(useremails): avoid creating same email twice

* fix(useremails): avoid any email to be created if already existing
2024-08-12 16:08:59 +02:00
Alessandro Magionami caca536e96 fix(useremails): throw error if trying to set unverified email as primary (#2630) 2024-08-12 15:03:53 +02:00
Iain Sproat f2c5677b4a fix(server): revert 55cad9662a (#2633)
* Revert "refactor(server/upload): convert js to ts (#2618)"

This reverts commit e9f7286f67.

* Revert "feat(logging): pass request logger to core/services/objects (#2599)"

This reverts commit ee3e9af78d.

* Revert "feat(server): configurable maximum objects POST size and improved logging (#2594)"

This reverts commit 55cad9662a.
2024-08-12 10:26:53 +01:00
Iain Sproat ee3e9af78d feat(logging): pass request logger to core/services/objects (#2599)
* chore(logging): include additional detail on object upload logs

* allow max file size to be configurable

* feat(logging): add logger to core/services/objects

* fix log line

* fix tests

* typo

* fix variable name

* convert values to megabytes

* calculating memory was causing the system to freeze

* calculating memory was causing the system to freeze

* DRY the logging metadata

* all required variables should be passed to calculateLogMetadata

* fix many things with the logging
2024-08-09 10:15:37 +02:00
Kristaps Fabians Geikins 0085bab1db fix(server): fixed various email lookups/updates being case sensitive (#2595)
* fix(server): case insensitivity in userEmails repo

* minor fix

* more test improvements + user repo tests

* more tests

* test fixes
2024-08-07 17:48:01 +03:00
Alessandro Magionami c365c0566e Alessandro/web 1169 create app validation to enforce only one primary email per (#2576)
* feat(useremails): userEmails graphql query

* feat(useremails): create user email mutation

* feat(useremails): set primary and delete user email mutations

* chore(useremails): fix update user email type

* chore(useremails): add validation for unique primary email

* chore(useremails): create typed tests for graphql and emails field resolver in user type

* chore(userEmails): group user email mutations in a specific mutation object

* linting fixes

* more lint fixes

* tests fix

* more test fixes

* chore(userEmails): cleanup

* chore(useremails): rely on knex trx for transaction handling

* chore(useremails): rely on knex trx for transaction handling

* chore(useremails): fix checkemail not present

* chore(useremails): add tests

* chore(useremails): create check function

* chore(useremails): use repository function to find primary email

* chore(useremails): fix prettier

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2024-08-06 12:34:48 +02:00
Alessandro Magionami 12685af29a Alessandro/web 1388 mutation create new email (#2561)
* feat(useremails): userEmails graphql query

* feat(useremails): create user email mutation

* feat(useremails): set primary and delete user email mutations

* chore(useremails): fix update user email type

* chore(useremails): create typed tests for graphql and emails field resolver in user type

* chore(userEmails): group user email mutations in a specific mutation object

* linting fixes

* more lint fixes

* tests fix

* more test fixes

* chore(userEmails): cleanup

* chore(useremails): rely on knex trx for transaction handling

* chore(useremails): fix checkemail not present

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2024-08-05 18:39:52 +02:00
Kristaps Fabians Geikins 7383779375 feat(server): registration (w/ and w/o invites) tests (#2567)
* WIP tests

* a couple of tests done

* most server registration tests done

* finalized tests

* lint fix

* added login tests too
2024-08-05 16:21:56 +03:00
Alessandro Magionami fcedff2565 chore(useremails): add failsafe option to scan table 2024-08-01 14:30:25 +02:00
Alessandro Magionami 9ffe6ddc21 chore(useremails): minor cleanup for users repository 2024-07-31 10:50:55 +02:00
Alessandro Magionami 9cde0999a6 Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-1172-change-the-users-repository-to-abstract-the-email-field-in 2024-07-29 16:08:46 +02:00
Kristaps Fabians Geikins ede566eed9 feat(server): serverInvites refactor + workspace invites CRUD & GQL API (#2530)
* prep for new resources algo

* typescriptifying stuff

* minor types fix

* migrate to resources col

* repo & creation updated, WIP processing/retrieval

* WIP invite processing

* finished finalization refactor

* project invite management

* transformed all invites services

* fixed up projects & core serverinvites resolvers

* test fixes

* WIP workspace create GQL & test

* basic invite creation test works

* a buncha working tests

* more tests

* cancelation tests

* minor invite use refactor

* invite retrieval tasks

* invite use() works as expected

* filtering out broken invites

* enabled invite retrieval by token irregardless of who is it for

* minor adjustments

* tests fix

* test config improvements

* test env adjustment

* extra test case

* making resource access limits harder to ignore

* linter fixes

* eventBus type cleanup

* better generic names

* refactored serverinvites resource migration

* fix(server): better error message in project invite edge case
2024-07-29 14:37:54 +03:00
Alessandro Magionami d10fd393df chore(useremails): fix tests 2024-07-25 17:26:29 +02:00
Alessandro Magionami c7bcf5210f chore(useremails): code review changes 2024-07-25 15:20:41 +02:00
Alessandro Magionami dc70f2d160 chore(useremails): create scan table helper 2024-07-25 15:09:41 +02:00
Alessandro Magionami 80484a4328 chore(useremails): fix linter 2024-07-24 16:01:22 +02:00
Alessandro Magionami 7c41ee0047 chore(useremails): fix count users and getusers to use user emails table 2024-07-23 15:56:26 +02:00
Alessandro Magionami 583ca06953 chore(useremails): findOrCreateUser function use useremails 2024-07-22 11:02:09 +02:00
Alessandro Magionami ce35c49de0 Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-1172-change-the-users-repository-to-abstract-the-email-field-in 2024-07-22 10:37:07 +02:00
Alessandro Magionami a205332d90 chore(useremails): create table helper 2024-07-22 10:35:55 +02:00
Alessandro Magionami bca547df8b chore(useremails): listUsers join user emails table 2024-07-18 17:43:53 +02:00
Alessandro Magionami 447b48a6c2 chore(server): remove relative imports 2024-07-18 16:07:16 +02:00
Alessandro Magionami deb9af299f chore(core): fix relative imports 2024-07-18 15:13:42 +02:00
Alessandro Magionami f608d49591 feat(useremails): join user emails in getUsers repo function 2024-07-18 15:12:23 +02:00
Alessandro Magionami 8c7ed4448e chore(core): minor changes to tests 2024-07-16 14:17:40 +02:00
Alessandro Magionami cc74f0f2a8 chore(user-emails): code review changes 2024-07-15 14:13:29 +02:00
Alessandro Magionami 030101208a chore(user-emails): move user emails to core module 2024-07-12 17:24:40 +02:00
Alessandro Magionami 82ab5a53ac chore(user-emails): fix tests 2024-07-10 13:02:07 +02:00
Alessandro Magionami 295b6d0621 Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-1171-change-the-users-repository-to-update-the-verified-field-in 2024-07-10 12:12:00 +02:00
Alessandro Magionami bb964cd457 feat(user-emails): mark user email as verified 2024-07-10 12:11:22 +02:00
Kristaps Fabians Geikins 0b2ca9a515 feat: add missing FE1 fields to the FE2 GQL schema (#2471)
* WIP version create

* commitCreate migrated

* minor cleanup

* commitReceived migrated

* added Project.object

* Project.comment introduced

* moving away old API usages in FE1

* ProjectMutations.batchDelete

* project pending access requests

* WIP project access req tests

* project access req tests done

* ModelByName test

* version mutation tests

* project.object tests

* batch delete tests

* minor improvements to redirect logging
2024-07-10 11:33:53 +02:00
Alessandro Magionami dab5b7b9de chore(user-emails): use test helpers 2024-07-10 09:52:19 +02:00
Alessandro Magionami 01a527eabc feat(core): change user update to also create user-email 2024-07-09 13:54:06 +02:00
Alessandro Magionami 377c7d8c8e feat(core): update user creation to also create user-email 2024-07-09 13:50:55 +02:00
Alessandro Magionami a9e6dc5834 feat(user-emails): create user emails table and type (#2470)
* feat(user-emails): create user emails table and type

* chore(user-emails): add delete cascade

* chore(user-emails): fix tests

* chore(user-emails): add unique constraint for email and userId

* chore(user-emails): use random email in tests

* chore(user-emails): add todo to remove user-email in test

* chore(user-emails): code review changes

* chore(user-emails): use random passwords for tests

* chore(user-emails): fix test and code review changes
2024-07-08 17:27:59 +02:00
Alessandro Magionami ef989d98f5 chore(user-emails): fix test and code review changes 2024-07-08 09:46:17 +02:00
Alessandro Magionami ccc85ca4fe chore(user-emails): use random passwords for tests 2024-07-05 15:33:05 +02:00
Alessandro Magionami d827d407b0 chore(user-emails): code review changes 2024-07-05 15:24:42 +02:00
Alessandro Magionami a137748063 chore(user-emails): add todo to remove user-email in test 2024-07-05 11:47:29 +02:00
Alessandro Magionami 0c5276fd39 chore(user-emails): use random email in tests 2024-07-05 11:26:46 +02:00