Commit Graph

71 Commits

Author SHA1 Message Date
Chuck Driesler dc3cfb4263 chore(tokens): small cleanup of error message (#5068) 2025-07-14 12:15:32 +01:00
Kristaps Fabians Geikins bde148f286 chore(server): migrating fully to ESM (#5042)
* wip

* some extra fixes

* stuff kinda works?

* need to figure out mocks

* need to figure out mocks

* fix db listener

* gqlgen fix

* minor gqlgen watch adjustment

* lint fixes

* delete old codegen file

* converting migrations to ESM

* getModuleDIrectory

* vitest sort of works

* added back ts-vitest

* resolve gql double load

* fixing test timeout configs

* TSC lint fix

* fix automate tests

* moar debugging

* debugging

* more debugging

* codegen update

* server works

* yargs migrated

* chore(server): getting rid of global mocks for Server ESM (#5046)

* got rid of email mock

* got rid of comment mocks

* got rid of multi region mocks

* got rid of stripe mock

* admin override mock updated

* removed final mock

* fixing import.meta.resolve calls

* another import.meta.resolve fix

* added requested test

* nyc ESM fix

* removed unneeded deps + linting

* yarn lock forgot to commit

* tryna fix flakyness

* email capture util fix

* sendEmail fix

* fix TSX check

* sender transporter fix + CR comments

* merge main fix

* test fixx

* circleci fix

* gqlgen bigint fix

* error formatter fix

* more error formatting improvements

* esmloader added to Dockerfile

* more dockerfile fixes

* bg jobs fix
2025-07-14 10:26:19 +03:00
Iain Sproat a749a96791 fix(server/auth/google): handle error parameter in request query (#5003)
- callback queries with query parameter key of `error` and value of `access_denied` were not being handled and resulting in passportService case for no user, no error, and a failureType of null.
- tokenerror seems not to result in google verify callback being called, so moving the logic to handle it to the passport authentication callback
2025-07-01 07:38:07 +01:00
Iain Sproat 33e480185e fix(passport): google strategy handle invalid grant errors (#4742) 2025-05-28 09:41:26 +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
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
andrewwallacespeckle 2f17b3f8b8 fix(server): Remove mailchimp step and journey ids (#4750)
* fix(server): Remove mailchimp step and journey ids

* Fix pre-commit - add end

* feat(server): use both onboardin and newsletter list audiences

* Fix type

* Remove unused triggerMailchimpCustomerJourney function

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2025-05-15 12:24:50 +02:00
Iain Sproat 91e9e9fcc9 Add tests, fix tests, and revert behaviour 2025-05-13 15:53:03 +01:00
Iain Sproat f913460aea Merge branch 'main' into iain/auth-service-tidy-error-handling 2025-05-13 14:47:58 +01:00
Iain Sproat 7751fee8a1 fix to match test expectations 2025-05-13 14:16:29 +01:00
Iain Sproat b23f21d8ee fix 2025-05-13 12:25:24 +01:00
Iain Sproat adbb53e206 fix(server/auth): handle InviteNotFoundError and simplify handling 2025-05-13 11:58:21 +01:00
Iain Sproat 86ebd8fbf9 more error handling and logging fixes 2025-05-13 10:51:11 +01:00
Iain Sproat 380667cea2 fix(server): mailchimp problems throw a sanitised error 2025-05-12 17:21:40 +01: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
Iain Sproat d0d9d22fe2 chore(server): tidy up maybeLoggerWithContext (#4095) 2025-03-03 09:17:55 +00:00
Iain Sproat ce08e5e02d refactor(server): logging directory renamed to observability (#4077) 2025-02-28 08:43:54 +00:00
andrewwallacespeckle 8c69f22e27 feat: Update user tags in Mailchimp when user completes onboarding questions (#4000)
* Add new updateMailchimpMemberTags function and use it in FE

* Pass tag data from FE

* Plan > Use case

* move onboarding types to shared package

* Check newsletter consent

* Changes from PR

* GQL
2025-02-27 11:29:00 +00:00
Iain Sproat 735a14279e fix(server/auth): callback should not finalize auth if HTTP response already sent (#4044) 2025-02-27 08:37:43 +00:00
Iain Sproat ec98f8d4cb chore(fe1): remove deprecated frontend (#3998)
---------

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2025-02-18 12:36:52 +00:00
Iain Sproat 2454af7237 chore(logging): log messages related to a request should include request ID - PART 2 (#3946)
* chore(logging): mixpanel should use logger with request context

* log with request when onUserCreated event is triggered
2025-02-06 17:51:10 +00:00
Iain Sproat c59e6043bb fix(server/errors): derive errors from BaseError (#3918) 2025-01-30 18:15:56 +01:00
Kristaps Fabians Geikins aee14edc5b chore(server): getting rid of module-scoped event emitters - batch #1 (#3766)
* got rid of models emitter + added tests

* got rid of projects emitter + added tests

* replaced user event bus

* test migrate
2025-01-13 11:39:46 +02:00
Kristaps Fabians Geikins e2c886f27e fix(server): more resilient sign up tracking 2024-10-21 16:20:48 +03:00
Kristaps Fabians Geikins 8abc801bae chore(server): core IoC #71 - createAppTokenFactory 2024-10-16 16:59:54 +03:00
Kristaps Fabians Geikins 1cb27e6fdd chore(server): core IoC #51 - getUser(s)Factory 2024-10-14 17:24:11 +03:00
Kristaps Fabians Geikins 31a4380f82 chore(server): auth IoC 19 - setupStrategiesFactory (#3043) 2024-09-20 11:07:46 +03:00
Kristaps Fabians Geikins f83b307d82 chore(server): auth IoC 12 - refreshAppTokenFactory (#3033)
* chore(server): auth IoC 3 - getAllAppsCreatedByUserFactory

* minor fix

* chore(server): auth IoC 4 - getAllAppsAuthorizedByUserFactory

* chore(server): auth IoC 5 - createAppFactory

* chore(server): auth IoC 6 - updateAppFactory

* chore(server): auth IoC 7 - deleteAppFactory

* chore(server): auth IoC 8 - revokeExistingAppCredentialsForUserFactory

* chore(server): auth IoC 9 - revokeRefreshTokenFactory

* chore(server): auth IoC 10 - createAuthorizationCodeFactory

* chore(server): auth IoC 11 - createAppTokenFromAccessCodeFactory

* chore(server): auth IoC 12 - refreshAppTokenFactory

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-09-19 10:51:00 +02:00
Kristaps Fabians Geikins f5e4e09c9f chore(server): auth IoC 11 - createAppTokenFromAccessCodeFactory (#3032)
* chore(server): auth IoC 3 - getAllAppsCreatedByUserFactory

* minor fix

* chore(server): auth IoC 4 - getAllAppsAuthorizedByUserFactory

* chore(server): auth IoC 5 - createAppFactory

* chore(server): auth IoC 6 - updateAppFactory

* chore(server): auth IoC 7 - deleteAppFactory

* chore(server): auth IoC 8 - revokeExistingAppCredentialsForUserFactory

* chore(server): auth IoC 9 - revokeRefreshTokenFactory

* chore(server): auth IoC 10 - createAuthorizationCodeFactory

* chore(server): auth IoC 11 - createAppTokenFromAccessCodeFactory

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-09-19 09:58:37 +02:00
Kristaps Fabians Geikins 52b2601a54 chore(server): auth IoC 10 - createAuthorizationCodeFactory (#3031)
* chore(server): auth IoC 3 - getAllAppsCreatedByUserFactory

* minor fix

* chore(server): auth IoC 4 - getAllAppsAuthorizedByUserFactory

* chore(server): auth IoC 5 - createAppFactory

* chore(server): auth IoC 6 - updateAppFactory

* chore(server): auth IoC 7 - deleteAppFactory

* chore(server): auth IoC 8 - revokeExistingAppCredentialsForUserFactory

* chore(server): auth IoC 9 - revokeRefreshTokenFactory

* chore(server): auth IoC 10 - createAuthorizationCodeFactory

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-09-19 09:54:22 +02:00
Kristaps Fabians Geikins af37bfb76c chore(server): auth IoC 9 - revokeRefreshTokenFactory (#3029)
* chore(server): auth IoC 3 - getAllAppsCreatedByUserFactory

* minor fix

* chore(server): auth IoC 4 - getAllAppsAuthorizedByUserFactory

* chore(server): auth IoC 5 - createAppFactory

* chore(server): auth IoC 6 - updateAppFactory

* chore(server): auth IoC 7 - deleteAppFactory

* chore(server): auth IoC 8 - revokeExistingAppCredentialsForUserFactory

* chore(server): auth IoC 9 - revokeRefreshTokenFactory

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-09-19 09:52:07 +02:00
Kristaps Fabians Geikins 59cbafdce5 chore(server): auth IoC 8 - revokeExistingAppCredentialsForUserFactory (#3028)
* chore(server): auth IoC 3 - getAllAppsCreatedByUserFactory

* minor fix

* chore(server): auth IoC 4 - getAllAppsAuthorizedByUserFactory

* chore(server): auth IoC 5 - createAppFactory

* chore(server): auth IoC 6 - updateAppFactory

* chore(server): auth IoC 7 - deleteAppFactory

* chore(server): auth IoC 8 - revokeExistingAppCredentialsForUserFactory

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-09-19 09:48:12 +02:00
Kristaps Fabians Geikins 3a424ed4a0 chore(server): auth IoC 7 - deleteAppFactory (#3027)
* chore(server): auth IoC 3 - getAllAppsCreatedByUserFactory

* minor fix

* chore(server): auth IoC 4 - getAllAppsAuthorizedByUserFactory

* chore(server): auth IoC 5 - createAppFactory

* chore(server): auth IoC 6 - updateAppFactory

* chore(server): auth IoC 7 - deleteAppFactory

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-09-19 09:45:47 +02:00
Kristaps Fabians Geikins e58f3f63f1 chore(server): auth IoC 6 - updateAppFactory (#3026)
* chore(server): auth IoC 3 - getAllAppsCreatedByUserFactory

* minor fix

* chore(server): auth IoC 4 - getAllAppsAuthorizedByUserFactory

* chore(server): auth IoC 5 - createAppFactory

* chore(server): auth IoC 6 - updateAppFactory

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-09-19 09:37:23 +02:00
Kristaps Fabians Geikins d56fca924b chore(server): auth IoC 5 - createAppFactory (#3025)
* chore(server): auth IoC 3 - getAllAppsCreatedByUserFactory

* minor fix

* chore(server): auth IoC 4 - getAllAppsAuthorizedByUserFactory

* chore(server): auth IoC 5 - createAppFactory

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-09-19 09:26:27 +02:00
Kristaps Fabians Geikins 860ebed68a chore(server): auth IoC 4 - getAllAppsAuthorizedByUserFactory (#3019)
* chore(server): auth IoC 3 - getAllAppsCreatedByUserFactory

* minor fix

* chore(server): auth IoC 4 - getAllAppsAuthorizedByUserFactory

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-09-19 09:22:12 +02:00
Kristaps Fabians Geikins 40cc8caa6f chore(server): auth IoC 3 - getAllAppsCreatedByUserFactory (#3018)
* chore(server): auth IoC 3 - getAllAppsCreatedByUserFactory

* minor fix
2024-09-19 08:58:13 +02:00
Kristaps Fabians Geikins 1922c0563b chore(server): auth IoC 2 - getAllPublicAppsFactory 2024-09-17 14:23:57 +03:00
Kristaps Fabians Geikins 68376b91c1 auth IoC 1 - initializeDefaultAppsFactory 2024-09-17 14:04:37 +03:00
Iain Sproat 298d8d6e52 fix(server/authcode): guard against null challenges (#2643)
- the database expects challenge to be not null, so we should guard against this early before consuming database resources
2024-08-13 09:12:06 +01:00
Kristaps Fabians Geikins 99edb378ed feat: auth issue troubleshooting related improvements (#2591)
* fix(server): TS passportService + fixed user input error reporting

* feat(fe2): add server req id to error reference
2024-08-07 12:52:26 +03:00
Gergő Jedlicska baeeace9d5 gergo/mailchimpOnboarding (#2098)
* feat: add mailchimp onboarding

* feat: add mailchimp onboarding journey

* feat: add mailchimp helm chart secrets

* refactor: move mailchimp id-s to plain helm values
2024-03-01 15:18:35 +01:00
Gergő Jedlicska b84b24467d feat: make automate app registration optional based on the existence of the url config (#2094)
* feat: make automate app registration optional based on the existence of the url config

* docs: add back automate env var with docs

* feat: app redirect url application side override

* chore: cleanup
2024-02-29 13:32:29 +01:00
Kristaps Fabians Geikins 5cd573355d feat(server): ability for apps to create new app tokens (#1942)
* /graphql endpoint fix

* app token creation seems to be done

* added tests

* more tests

* cleaned up TS annotations

* CR cleanup

* TS type fixes

* test fixes
2024-01-09 11:58:38 +02:00
Kristaps Fabians Geikins c67f6d9c92 feat: clearer email verification flow & related error messages (#1904)
* fix: fe2 auth error page + various minor UI bugs

* clean up & reporting failing email to fe

* new mutation to resend verification as guest

* email text updates

* fixing issues brought up by agi

* more text fixes

* swapping out space-XXX for gap-XXX
2023-12-15 13:09:26 +02:00
andrewwallacespeckle 76cbcef4e6 Feature - FE2 - Developer Settings (#1822)
* WIP Developer Settings

* Access Tokens

* scopes load fix

* mapping to correct struct

* Updates to Application

* Update to apps.js to fix scopes error

* Application table done

* Token confirmation done.

* Application Success

* Fix ts

* Darkmode fixes

* Responsive fix

* Fixes for PR

* Pass size prop to Editable Avatar

* Updates from PR comments

* Section Header - TS Types

* Add Typeguard to Delete Dialog

* Add Description to scopes query

* minor type guard fix

* edit application cache update fix

* Fix Dialog Expansion

* Rename mutations to correct casing

* Remove unneeded import for defineProps

---------

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2023-10-26 12:51:05 +01:00
Kristaps Fabians Geikins d8640bbdc9 feat(ui-components): tags input component (#1810)
* FormSelectBase converted to generic Vue component

* WIP tags w/ custom input box

* a11y works

* proper tags wrapping

* errors/validation/icon styling

* styling fixes

* autocomplete item resolution

* feat: configurable tags input

* various fixes

* moved avatar components to ui-components

* replaced avatar in frontend-2 w/ new ui-components exports

* new icon loader

* added validation support for avatar editor

* updated fe-2 to use new avatar editor api

* disabled support for avatar editor

* more fixes and improvements

* attempted preview-service fix

* attempted preview-service fix

* added story

* linting fix

* more fixes

* server test fix
2023-10-16 14:10:41 +03:00
Dimitrie Stefanescu 802f3c9924 fix(fe2): newsletter changes 2023-06-22 16:35:49 +01:00
Dimitrie Stefanescu 56ea1bc843 feat(server): cleaned up boilerplate & using injected ref for consent tracking in fe register panel. 2023-06-16 15:57:33 +01:00
Dimitrie Stefanescu d5bb3b9923 feat(server): mailchimp plumbing 2023-06-16 13:34:04 +01:00