-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add origin restriction to session token #46
Conversation
@@ -28,11 +28,12 @@ export function createContext(params: CreateContextParams): Context { | |||
const { req } = params; | |||
const authorizationHeader = req.get('Authorization'); | |||
const token = authorizationHeader?.replace('Bearer ', ''); | |||
const origin = req.get('Origin'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@valiafetisov don't have prior xp on this one, googling did not yield me a definite answer.
Is relying on the origin header safe? can't it be forged? e.g. in tests i manage to put any origin i want and hence i imagine that this approach is not safe.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The header can not be changed by the JavaScript running in the browser, but can be set in many other environments (like curl). It is sufficient for the issue
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Related question to @DeusAvalon. Is it enough to just req.get('Origin')
on the application level to get the actual origin (not frontend:3000
) or should ingress be additionally configured to pass proper header to the application? Or does it come via something like x-origin
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Im pretty sure req.get('Origin')
on Application level should give the correct Origin (actual Ingress URL) as the Ingress does not strip/replace any headers in our current configuration.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, then what header contains internal frontend:3000
? And what is proxy-add-original-uri-header
for? (related issue discussing the subject)
If possible, I would ask kirill to enable staging deployments on this branch to validate that it indeed works, but as the repo wasn't transferred yet, we would need to test (and potentially fix) it after this PR is merged, via our fork
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm i see, yeah im not 100% sure either i would need to actually deploy a service and check which headers are being parsed to the service.
But the staging deployment could actually be done by me manually deploying it based on this branch. This way we can pre-validate if its actually working. If this would work for you i would organize this tmrw with @KirillDogadin-std together
@@ -28,11 +28,12 @@ export function createContext(params: CreateContextParams): Context { | |||
const { req } = params; | |||
const authorizationHeader = req.get('Authorization'); | |||
const token = authorizationHeader?.replace('Bearer ', ''); | |||
const origin = req.get('Origin'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Related question to @DeusAvalon. Is it enough to just req.get('Origin')
on the application level to get the actual origin (not frontend:3000
) or should ingress be additionally configured to pass proper header to the application? Or does it come via something like x-origin
?
Please address or react to #46 (comment)
Last question: any specific reason why wildcard-match package was used over matcher. They are both wasn't updated for 2 years, but |
wildcard matcher:
i havent seen such |
@KirillDogadin-std
|
Dockerized run yielded:
|
# 1.0.0-dev.1 (2024-06-11) ### Bug Fixes * added document drive table ([57cbc31](57cbc31)) * added drive not found to sentry ignore list ([2ac81d3](2ac81d3)) * added sales proceeds ([ed8a594](ed8a594)) * api build ([8a93ed6](8a93ed6)) * api gql endpoint ([5d52a91](5d52a91)) * **apollo:** document operations ([cbc4666](cbc4666)) * build args ([16b70bc](16b70bc)) * build args ([7e8b4bc](7e8b4bc)) * closed redis connection ([3679cda](3679cda)) * cors issue ([7ec1111](7ec1111)) * database and schema issues ([a2578e4](a2578e4)) * deep links ([7ac2c94](7ac2c94)) * definitions error ([dd0653b](dd0653b)) * docker build and disabled imported modules ([59324eb](59324eb)) * docker build arg ([01b5599](01b5599)) * docker build arg ([4db0336](4db0336)) * document operations type ([da9729b](da9729b)) * documentType not resolved ([38c893b](38c893b)) * drive explorer endpoint ([0e31173](0e31173)) * driveId param ([b27925e](b27925e)) * envvars for nginx ([b283688](b283688)) * frontend docker build ([5fd44eb](5fd44eb)) * frontend graphql endpoint ([f4860c4](f4860c4)) * frontend graphql queries ([167eb83](167eb83)) * graphql endpoint ([609f7e8](609f7e8)) * graphql endpoint ([e61892e](e61892e)) * heroku deployment ([9af4188](9af4188)) * heroku deployment ([447b429](447b429)) * import error ([f97bf52](f97bf52)) * logger module filter ([145fc8b](145fc8b)) * name in assets not found ([e30a177](e30a177)) * nginx deployment ([1c50d20](1c50d20)) * nginx deployment ([795b39e](795b39e)) * prisma schema ([56554d3](56554d3)) * prisma schema ([8b865bf](8b865bf)) * redis queue ([9ab2c5c](9ab2c5c)) * request entity too large ([0782ba9](0782ba9)) * review comments ([75aead7](75aead7)) * rwa portfolio query ([2dba2cf](2dba2cf)) * rwa state name ([afa461b](afa461b)) * rwaPortfolios query ([079e8d7](079e8d7)) * set drive id from context ([d45d452](d45d452)) * set environments in github actions ([94f14e7](94f14e7)) * set environments in github actions ([d1a5204](d1a5204)) * set proper port on wundergraph ([5adebdb](5adebdb)) * set proper rwa type ([625cfd8](625cfd8)) * staging ([#179](#179)) ([76716ad](76716ad)) * updated gen files ([779f395](779f395)) * updated yarn.lock ([4261d1b](4261d1b)) * use redis cache if redis env var is set ([ad539ed](ad539ed)) * wundergraph deployment ([4f31d37](4f31d37)) * wundergraph port ([d3bf08c](d3bf08c)) ### Features * activate queue ([70da227](70da227)) * activate queue ([#178](#178)) ([7b3accf](7b3accf)) * activated cicd for staging ([aa959a6](aa959a6)) * activated cicd for staging ([23c36ba](23c36ba)) * activated prisma storage adapter ([f588ae2](f588ae2)) * activated redis queue manager ([05b7dc2](05b7dc2)) * add basic badges to clearly indicate license and CI status ([f4247c6](f4247c6)) * add basic ci and bare package.json ([7e7c712](7e7c712)) * add editorconfig ([377a2a6](377a2a6)) * add eslint, document it, add it to ci ([b7c741d](b7c741d)) * add gitignore ([9d5d1c4](9d5d1c4)) * Add healthz endpoints to api and frontend ([#34](#34)) ([25baa4e](25baa4e)) * add hello world index.ts, make it runnable, add first types ([951be8b](951be8b)) * add logging ([#21](#21)) ([17fc322](17fc322)) * add nvmrc and some basic documentation for easier starting points ([0799489](0799489)) * Add origin restriction to session token ([#46](#46)) ([100a018](100a018)) * Add prisma, prisma docs, Core Unit database model ([#12](#12)) ([969bbd7](969bbd7)) * add pushUpdates mutation ([340c475](340c475)) * add pushUpdates strands to queue at the same time ([b334196](b334196)) * add some basic recommendations for vscode users to make the start of this project easier ([e1735b6](e1735b6)) * add spv and fixedincometypes to portfolio assets ([1a14939](1a14939)) * Add testing setup, document it, add it to CI ([#13](#13)) ([97e25d4](97e25d4)) * add typescript, typechecking, document it in readme, add it to ci-pipeline ([6bdd1d9](6bdd1d9)) * Add user + auth ([#16](#16)) ([125d8b1](125d8b1)) * Add wundergraph to compose graphql APIs ([#64](#64)) ([5eb82a6](5eb82a6)) * added a child logger for the document drive ([e5f25f3](e5f25f3)) * added account snapshot document ([1c83ad4](1c83ad4)) * added assetProceeds to internal listener ([8f438d2](8f438d2)) * added budget statement document ([4e6695f](4e6695f)) * added cash and fixedincome tx to grouptx entity ([28405fd](28405fd)) * added crud queries and mutations for document drives ([8c12f7c](8c12f7c)) * added db schema for transactions ([9b06e48](9b06e48)) * added delete operations for spvs, service provider and accounts ([ea95229](ea95229)) * added develop environment ([74adb08](74adb08)) * added document and rwa modules and interfaces ([bfaede2](bfaede2)) * added driveId as param to new graphql route ([8bb3255](8bb3255)) * added driveId exists middleware ([71b568b](71b568b)) * added driveid to graphql context ([675994f](675994f)) * added dropdown for graphql explorer ([102ca4a](102ca4a)) * added dynamic internal listener loader ([152c5f4](152c5f4)) * added experimental deps ([4772cb8](4772cb8)) * added experimental deps ([#175](#175)) ([e1eaa1b](e1eaa1b)) * added explorer endpoint with optional driveId param ([9400243](9400243)) * added fees to rwa portfolio ([1fbf4d5](1fbf4d5)) * added frontend and wundergraph deployment ([db73dba](db73dba)) * added github hook ([9ae1cfe](9ae1cfe)) * added graphql endpoints ([9335e8d](9335e8d)) * added healthcheck to dockerfile ([8edd478](8edd478)) * added hook endpoint to nginx router ([f5f0758](f5f0758)) * added internal listener for operational data ([d63987e](d63987e)) * added internal listener manager ([983e5dd](983e5dd)) * added makerdao and updated powerhouse deployments pipeline ([6dfcaa3](6dfcaa3)) * added missing transaction operations ([9427c6f](9427c6f)) * added more operations to rwa surgical update ([d657b68](d657b68)) * added mutations and queries for document drive push and pull transmitter ([1b05ed8](1b05ed8)) * added nginx deployment ([68f3b7c](68f3b7c)) * added operation mutations and drive queries ([eaf4692](eaf4692)) * added query to fetch all documents at once from a drive ([93e35bf](93e35bf)) * added real world assets portfolio query ([34c638f](34c638f)) * added registerListener ([ce7a7ee](ce7a7ee)) * added rwa graphql objects definitions ([687b447](687b447)) * added rwa operational data prisma schema ([f5f210f](f5f210f)) * added rwa portfolio query ([40a8442](40a8442)) * added scalar attachment ([61c55d6](61c55d6)) * added scope framework ([3ec7874](3ec7874)) * added scope of work internal listner ([37cf2c7](37cf2c7)) * added semantic release ([019bb76](019bb76)) * added sentry env ([43fba88](43fba88)) * added sentry node ([9074d21](9074d21)) * added staging ([4891139](4891139)) * added staging ([f218895](f218895)) * added support for building with esbuild ([5c7e2cd](5c7e2cd)) * added support for operation context on graphql api ([847f0a3](847f0a3)) * added versions endpoint ([327609a](327609a)) * basic frontend ([#29](#29)) ([c621f86](c621f86)) * bump document drive ([25938c0](25938c0)) * bump document drive ([88b9395](88b9395)) * bump document drive ([8103716](8103716)) * bump libs ([7d49709](7d49709)) * bump libs ([#180](#180)) ([b52f236](b52f236)) * catch and log error while initializing drive ([6e5462a](6e5462a)) * document drive ([#69](#69)) ([6cbdcc9](6cbdcc9)) * Documentation integration ([#42](#42)) ([52a1e29](52a1e29)) * Documentation page improvements ([#50](#50)) ([0ffdb6c](0ffdb6c)) * documents query ([cd4b308](cd4b308)) * don't store queue job result ([cbc0251](cbc0251)) * dont use pretty-pino on production ([7ee7a6c](7ee7a6c)) * **drive:** use prisma storage adapter ([cdebd25](cdebd25)) * enable operation id prop ([cb693b9](cb693b9)) * error logging ([b6fd264](b6fd264)) * finished rwa portfolio rebuild ([014fb7d](014fb7d)) * fix get strands since ([45aa3a6](45aa3a6)) * fixed dev support ([8ea3e51](8ea3e51)) * fixed import error ([37d634c](37d634c)) * Frontend auth ([#38](#38)) ([09d1940](09d1940)) * Frontend layout ([#32](#32)) ([23668a8](23668a8)) * graphql endpoints, queries and mutations ([#71](#71)) ([efdf27d](efdf27d)) * Graphql server and playground ([#15](#15)) ([38c5a60](38c5a60)) * handle drive strands first when multiple strands are pushed ([d754c1f](d754c1f)) * Implement sessions and revoking possibility ([#28](#28)) ([ca0a7da](ca0a7da)) * Improve documentation integration ([#58](#58)) ([3dffead](3dffead)) * improve heroku setup ([d6fdd6e](d6fdd6e)) * Improve test coverage ([#25](#25)) ([7cedbca](7cedbca)) * improved operational data schema for rwa ([0f93381](0f93381)) * in memory cache for drives and transmitters ([1e1211b](1e1211b)) * increase max body size ([6509c22](6509c22)) * init redis before creating queue manager ([ace01dd](ace01dd)) * log listener operation error ([70e7855](70e7855)) * Make API extensible via npm packages ([#67](#67)) ([fba28b4](fba28b4)) * moved esbuild to dependencies ([c5d7271](c5d7271)) * moved gql-query-builder to dependencies ([f5efd42](f5efd42)) * moved prisma to dependencies ([c0a689a](c0a689a)) * Preserve auth header for playground ([#49](#49)) ([54d2014](54d2014)) * pushUpdates revision fix ([ad717c4](ad717c4)) * readded rwa document ([1295fb6](1295fb6)) * remove yarn lockfile ([227664b](227664b)) * replace landing page ([0f458f9](0f458f9)) * replaced vue frontend with nextjs ([c162d55](c162d55)) * return error message on pushUpdates resolver ([4275428](4275428)) * rwa listener core logic ([62eb5d9](62eb5d9)) * sentry error handler improvements ([a1dbd76](a1dbd76)) * serve switchboard from subdirectories ([#108](#108)) ([fbd6baa](fbd6baa)) * silence transmitter not found errors ([8c86d77](8c86d77)) * update deps ([bed3b3d](bed3b3d)) * update document drive ([bf3aef0](bf3aef0)) * update document drive lib ([a81786e](a81786e)) * update document-drive ([7c8caac](7c8caac)) * update document-drive dep ([e4f222e](e4f222e)) * update document-model and document-drive libs ([2bb6151](2bb6151)) * update document-model and document-drive ver ([5b33aa3](5b33aa3)) * update document-model and document-drive versions ([a7038ee](a7038ee)) * update document-model and document-drive versions ([#138](#138)) ([324fce7](324fce7)) * update document-model and document-model-libs deps ([f475fae](f475fae)) * update document-model dep ([5df23b4](5df23b4)) * updated database model ([1db2b78](1db2b78)) * updated deps and small ts improvements ([23332f0](23332f0)) * updated dockerfile ([f6db1db](f6db1db)) * updated document drive dep ([e80a779](e80a779)) * updated document-drive ([680714f](680714f)) * updated document-drive dep ([#70](#70)) ([2ce57e2](2ce57e2)) * updated document-drive ver ([9f0eed4](9f0eed4)) * updated [email protected] ([a805aab](a805aab)) * updated document-model dep ([39e6166](39e6166)) * updated read model listener for rwa ([b1f9dc0](b1f9dc0)) * use corepack ([6297e12](6297e12)) * use pnpm ([4b96e42](4b96e42)) * use pnpm ([#82](#82)) ([658c590](658c590)) * user mutative instead of immer for reducers ([a9cfd97](a9cfd97)) * Wallet auth ([#55](#55)) ([89d40a1](89d40a1))
# 1.0.0-dev.1 (2024-06-11) ### Bug Fixes * added document drive table ([57cbc31](57cbc31)) * added drive not found to sentry ignore list ([2ac81d3](2ac81d3)) * added sales proceeds ([ed8a594](ed8a594)) * api build ([8a93ed6](8a93ed6)) * api gql endpoint ([5d52a91](5d52a91)) * **apollo:** document operations ([cbc4666](cbc4666)) * build args ([16b70bc](16b70bc)) * build args ([7e8b4bc](7e8b4bc)) * closed redis connection ([3679cda](3679cda)) * cors issue ([7ec1111](7ec1111)) * database and schema issues ([a2578e4](a2578e4)) * deep links ([7ac2c94](7ac2c94)) * definitions error ([dd0653b](dd0653b)) * docker build and disabled imported modules ([59324eb](59324eb)) * docker build arg ([01b5599](01b5599)) * docker build arg ([4db0336](4db0336)) * document operations type ([da9729b](da9729b)) * documentType not resolved ([38c893b](38c893b)) * drive explorer endpoint ([0e31173](0e31173)) * driveId param ([b27925e](b27925e)) * envvars for nginx ([b283688](b283688)) * frontend docker build ([5fd44eb](5fd44eb)) * frontend graphql endpoint ([f4860c4](f4860c4)) * frontend graphql queries ([167eb83](167eb83)) * graphql endpoint ([609f7e8](609f7e8)) * graphql endpoint ([e61892e](e61892e)) * heroku deployment ([9af4188](9af4188)) * heroku deployment ([447b429](447b429)) * import error ([f97bf52](f97bf52)) * logger module filter ([145fc8b](145fc8b)) * name in assets not found ([e30a177](e30a177)) * nginx deployment ([1c50d20](1c50d20)) * nginx deployment ([795b39e](795b39e)) * prisma schema ([56554d3](56554d3)) * prisma schema ([8b865bf](8b865bf)) * redis queue ([9ab2c5c](9ab2c5c)) * request entity too large ([0782ba9](0782ba9)) * review comments ([75aead7](75aead7)) * rwa portfolio query ([2dba2cf](2dba2cf)) * rwa state name ([afa461b](afa461b)) * rwaPortfolios query ([079e8d7](079e8d7)) * set drive id from context ([d45d452](d45d452)) * set environments in github actions ([94f14e7](94f14e7)) * set environments in github actions ([d1a5204](d1a5204)) * set proper port on wundergraph ([5adebdb](5adebdb)) * set proper rwa type ([625cfd8](625cfd8)) * staging ([#179](#179)) ([76716ad](76716ad)) * updated gen files ([779f395](779f395)) * updated yarn.lock ([4261d1b](4261d1b)) * use redis cache if redis env var is set ([ad539ed](ad539ed)) * wundergraph deployment ([4f31d37](4f31d37)) * wundergraph port ([d3bf08c](d3bf08c)) ### Features * activate queue ([70da227](70da227)) * activate queue ([#178](#178)) ([7b3accf](7b3accf)) * activated cicd for staging ([aa959a6](aa959a6)) * activated cicd for staging ([23c36ba](23c36ba)) * activated prisma storage adapter ([f588ae2](f588ae2)) * activated redis queue manager ([05b7dc2](05b7dc2)) * add basic badges to clearly indicate license and CI status ([f4247c6](f4247c6)) * add basic ci and bare package.json ([7e7c712](7e7c712)) * add editorconfig ([377a2a6](377a2a6)) * add eslint, document it, add it to ci ([b7c741d](b7c741d)) * add gitignore ([9d5d1c4](9d5d1c4)) * Add healthz endpoints to api and frontend ([#34](#34)) ([25baa4e](25baa4e)) * add hello world index.ts, make it runnable, add first types ([951be8b](951be8b)) * add logging ([#21](#21)) ([17fc322](17fc322)) * add nvmrc and some basic documentation for easier starting points ([0799489](0799489)) * Add origin restriction to session token ([#46](#46)) ([100a018](100a018)) * Add prisma, prisma docs, Core Unit database model ([#12](#12)) ([969bbd7](969bbd7)) * add pushUpdates mutation ([340c475](340c475)) * add pushUpdates strands to queue at the same time ([b334196](b334196)) * add some basic recommendations for vscode users to make the start of this project easier ([e1735b6](e1735b6)) * add spv and fixedincometypes to portfolio assets ([1a14939](1a14939)) * Add testing setup, document it, add it to CI ([#13](#13)) ([97e25d4](97e25d4)) * add typescript, typechecking, document it in readme, add it to ci-pipeline ([6bdd1d9](6bdd1d9)) * Add user + auth ([#16](#16)) ([125d8b1](125d8b1)) * Add wundergraph to compose graphql APIs ([#64](#64)) ([5eb82a6](5eb82a6)) * added a child logger for the document drive ([e5f25f3](e5f25f3)) * added account snapshot document ([1c83ad4](1c83ad4)) * added assetProceeds to internal listener ([8f438d2](8f438d2)) * added budget statement document ([4e6695f](4e6695f)) * added cash and fixedincome tx to grouptx entity ([28405fd](28405fd)) * added crud queries and mutations for document drives ([8c12f7c](8c12f7c)) * added db schema for transactions ([9b06e48](9b06e48)) * added delete operations for spvs, service provider and accounts ([ea95229](ea95229)) * added develop environment ([74adb08](74adb08)) * added document and rwa modules and interfaces ([bfaede2](bfaede2)) * added driveId as param to new graphql route ([8bb3255](8bb3255)) * added driveId exists middleware ([71b568b](71b568b)) * added driveid to graphql context ([675994f](675994f)) * added dropdown for graphql explorer ([102ca4a](102ca4a)) * added dynamic internal listener loader ([152c5f4](152c5f4)) * added experimental deps ([4772cb8](4772cb8)) * added experimental deps ([#175](#175)) ([e1eaa1b](e1eaa1b)) * added explorer endpoint with optional driveId param ([9400243](9400243)) * added fees to rwa portfolio ([1fbf4d5](1fbf4d5)) * added frontend and wundergraph deployment ([db73dba](db73dba)) * added github hook ([9ae1cfe](9ae1cfe)) * added graphql endpoints ([9335e8d](9335e8d)) * added healthcheck to dockerfile ([8edd478](8edd478)) * added hook endpoint to nginx router ([f5f0758](f5f0758)) * added internal listener for operational data ([d63987e](d63987e)) * added internal listener manager ([983e5dd](983e5dd)) * added makerdao and updated powerhouse deployments pipeline ([6dfcaa3](6dfcaa3)) * added missing transaction operations ([9427c6f](9427c6f)) * added more operations to rwa surgical update ([d657b68](d657b68)) * added mutations and queries for document drive push and pull transmitter ([1b05ed8](1b05ed8)) * added nginx deployment ([68f3b7c](68f3b7c)) * added operation mutations and drive queries ([eaf4692](eaf4692)) * added query to fetch all documents at once from a drive ([93e35bf](93e35bf)) * added real world assets portfolio query ([34c638f](34c638f)) * added registerListener ([ce7a7ee](ce7a7ee)) * added rwa graphql objects definitions ([687b447](687b447)) * added rwa operational data prisma schema ([f5f210f](f5f210f)) * added rwa portfolio query ([40a8442](40a8442)) * added scalar attachment ([61c55d6](61c55d6)) * added scope framework ([3ec7874](3ec7874)) * added scope of work internal listner ([37cf2c7](37cf2c7)) * added semantic release ([019bb76](019bb76)) * added sentry env ([43fba88](43fba88)) * added sentry node ([9074d21](9074d21)) * added staging ([4891139](4891139)) * added staging ([f218895](f218895)) * added support for building with esbuild ([5c7e2cd](5c7e2cd)) * added support for operation context on graphql api ([847f0a3](847f0a3)) * added versions endpoint ([327609a](327609a)) * basic frontend ([#29](#29)) ([c621f86](c621f86)) * bump document drive ([25938c0](25938c0)) * bump document drive ([88b9395](88b9395)) * bump document drive ([8103716](8103716)) * bump libs ([7d49709](7d49709)) * bump libs ([#180](#180)) ([b52f236](b52f236)) * catch and log error while initializing drive ([6e5462a](6e5462a)) * document drive ([#69](#69)) ([6cbdcc9](6cbdcc9)) * Documentation integration ([#42](#42)) ([52a1e29](52a1e29)) * Documentation page improvements ([#50](#50)) ([0ffdb6c](0ffdb6c)) * documents query ([cd4b308](cd4b308)) * don't store queue job result ([cbc0251](cbc0251)) * dont use pretty-pino on production ([7ee7a6c](7ee7a6c)) * **drive:** use prisma storage adapter ([cdebd25](cdebd25)) * enable operation id prop ([cb693b9](cb693b9)) * error logging ([b6fd264](b6fd264)) * finished rwa portfolio rebuild ([014fb7d](014fb7d)) * fix get strands since ([45aa3a6](45aa3a6)) * fixed dev support ([8ea3e51](8ea3e51)) * fixed import error ([37d634c](37d634c)) * Frontend auth ([#38](#38)) ([09d1940](09d1940)) * Frontend layout ([#32](#32)) ([23668a8](23668a8)) * graphql endpoints, queries and mutations ([#71](#71)) ([efdf27d](efdf27d)) * Graphql server and playground ([#15](#15)) ([38c5a60](38c5a60)) * handle drive strands first when multiple strands are pushed ([d754c1f](d754c1f)) * Implement sessions and revoking possibility ([#28](#28)) ([ca0a7da](ca0a7da)) * Improve documentation integration ([#58](#58)) ([3dffead](3dffead)) * improve heroku setup ([d6fdd6e](d6fdd6e)) * Improve test coverage ([#25](#25)) ([7cedbca](7cedbca)) * improved operational data schema for rwa ([0f93381](0f93381)) * in memory cache for drives and transmitters ([1e1211b](1e1211b)) * increase max body size ([6509c22](6509c22)) * init redis before creating queue manager ([ace01dd](ace01dd)) * log listener operation error ([70e7855](70e7855)) * Make API extensible via npm packages ([#67](#67)) ([fba28b4](fba28b4)) * moved esbuild to dependencies ([c5d7271](c5d7271)) * moved gql-query-builder to dependencies ([f5efd42](f5efd42)) * moved prisma to dependencies ([c0a689a](c0a689a)) * Preserve auth header for playground ([#49](#49)) ([54d2014](54d2014)) * pushUpdates revision fix ([ad717c4](ad717c4)) * readded rwa document ([1295fb6](1295fb6)) * remove yarn lockfile ([227664b](227664b)) * replace landing page ([0f458f9](0f458f9)) * replaced vue frontend with nextjs ([c162d55](c162d55)) * return error message on pushUpdates resolver ([4275428](4275428)) * rwa listener core logic ([62eb5d9](62eb5d9)) * sentry error handler improvements ([a1dbd76](a1dbd76)) * serve switchboard from subdirectories ([#108](#108)) ([fbd6baa](fbd6baa)) * silence transmitter not found errors ([8c86d77](8c86d77)) * update deps ([bed3b3d](bed3b3d)) * update document drive ([bf3aef0](bf3aef0)) * update document drive lib ([a81786e](a81786e)) * update document-drive ([7c8caac](7c8caac)) * update document-drive dep ([e4f222e](e4f222e)) * update document-model and document-drive libs ([2bb6151](2bb6151)) * update document-model and document-drive ver ([5b33aa3](5b33aa3)) * update document-model and document-drive versions ([a7038ee](a7038ee)) * update document-model and document-drive versions ([#138](#138)) ([324fce7](324fce7)) * update document-model and document-model-libs deps ([f475fae](f475fae)) * update document-model dep ([5df23b4](5df23b4)) * updated database model ([1db2b78](1db2b78)) * updated deps and small ts improvements ([23332f0](23332f0)) * updated dockerfile ([f6db1db](f6db1db)) * updated document drive dep ([e80a779](e80a779)) * updated document-drive ([680714f](680714f)) * updated document-drive dep ([#70](#70)) ([2ce57e2](2ce57e2)) * updated document-drive ver ([9f0eed4](9f0eed4)) * updated [email protected] ([a805aab](a805aab)) * updated document-model dep ([39e6166](39e6166)) * updated read model listener for rwa ([b1f9dc0](b1f9dc0)) * use corepack ([6297e12](6297e12)) * use pnpm ([4b96e42](4b96e42)) * use pnpm ([#82](#82)) ([658c590](658c590)) * user mutative instead of immer for reducers ([a9cfd97](a9cfd97)) * Wallet auth ([#55](#55)) ([89d40a1](89d40a1))
# 1.0.0-next.1 (2024-06-12) ### Bug Fixes * added document drive table ([57cbc31](57cbc31)) * added drive not found to sentry ignore list ([2ac81d3](2ac81d3)) * added sales proceeds ([ed8a594](ed8a594)) * api build ([8a93ed6](8a93ed6)) * api gql endpoint ([5d52a91](5d52a91)) * **apollo:** document operations ([cbc4666](cbc4666)) * build args ([16b70bc](16b70bc)) * build args ([7e8b4bc](7e8b4bc)) * closed redis connection ([3679cda](3679cda)) * cors issue ([7ec1111](7ec1111)) * database and schema issues ([a2578e4](a2578e4)) * deep links ([7ac2c94](7ac2c94)) * definitions error ([dd0653b](dd0653b)) * docker build and disabled imported modules ([59324eb](59324eb)) * docker build arg ([01b5599](01b5599)) * docker build arg ([4db0336](4db0336)) * document operations type ([da9729b](da9729b)) * documentType not resolved ([38c893b](38c893b)) * drive explorer endpoint ([0e31173](0e31173)) * driveId param ([b27925e](b27925e)) * envvars for nginx ([b283688](b283688)) * frontend docker build ([5fd44eb](5fd44eb)) * frontend graphql endpoint ([f4860c4](f4860c4)) * frontend graphql queries ([167eb83](167eb83)) * graphql endpoint ([609f7e8](609f7e8)) * graphql endpoint ([e61892e](e61892e)) * heroku deployment ([9af4188](9af4188)) * heroku deployment ([447b429](447b429)) * import error ([f97bf52](f97bf52)) * logger module filter ([145fc8b](145fc8b)) * name in assets not found ([e30a177](e30a177)) * nginx deployment ([1c50d20](1c50d20)) * nginx deployment ([795b39e](795b39e)) * prisma schema ([56554d3](56554d3)) * prisma schema ([8b865bf](8b865bf)) * redis queue ([9ab2c5c](9ab2c5c)) * request entity too large ([0782ba9](0782ba9)) * review comments ([75aead7](75aead7)) * rwa portfolio query ([2dba2cf](2dba2cf)) * rwa state name ([afa461b](afa461b)) * rwaPortfolios query ([079e8d7](079e8d7)) * set drive id from context ([d45d452](d45d452)) * set environments in github actions ([94f14e7](94f14e7)) * set environments in github actions ([d1a5204](d1a5204)) * set proper port on wundergraph ([5adebdb](5adebdb)) * set proper rwa type ([625cfd8](625cfd8)) * staging ([#179](#179)) ([76716ad](76716ad)) * updated gen files ([779f395](779f395)) * updated yarn.lock ([4261d1b](4261d1b)) * use redis cache if redis env var is set ([ad539ed](ad539ed)) * wundergraph deployment ([4f31d37](4f31d37)) * wundergraph port ([d3bf08c](d3bf08c)) ### Features * activate queue ([70da227](70da227)) * activate queue ([#178](#178)) ([7b3accf](7b3accf)) * activated cicd for staging ([aa959a6](aa959a6)) * activated cicd for staging ([23c36ba](23c36ba)) * activated prisma storage adapter ([f588ae2](f588ae2)) * activated redis queue manager ([05b7dc2](05b7dc2)) * add basic badges to clearly indicate license and CI status ([f4247c6](f4247c6)) * add basic ci and bare package.json ([7e7c712](7e7c712)) * add editorconfig ([377a2a6](377a2a6)) * add eslint, document it, add it to ci ([b7c741d](b7c741d)) * add gitignore ([9d5d1c4](9d5d1c4)) * Add healthz endpoints to api and frontend ([#34](#34)) ([25baa4e](25baa4e)) * add hello world index.ts, make it runnable, add first types ([951be8b](951be8b)) * add logging ([#21](#21)) ([17fc322](17fc322)) * add nvmrc and some basic documentation for easier starting points ([0799489](0799489)) * Add origin restriction to session token ([#46](#46)) ([100a018](100a018)) * Add prisma, prisma docs, Core Unit database model ([#12](#12)) ([969bbd7](969bbd7)) * add pushUpdates mutation ([340c475](340c475)) * add pushUpdates strands to queue at the same time ([b334196](b334196)) * add some basic recommendations for vscode users to make the start of this project easier ([e1735b6](e1735b6)) * add spv and fixedincometypes to portfolio assets ([1a14939](1a14939)) * Add testing setup, document it, add it to CI ([#13](#13)) ([97e25d4](97e25d4)) * add typescript, typechecking, document it in readme, add it to ci-pipeline ([6bdd1d9](6bdd1d9)) * Add user + auth ([#16](#16)) ([125d8b1](125d8b1)) * Add wundergraph to compose graphql APIs ([#64](#64)) ([5eb82a6](5eb82a6)) * added a child logger for the document drive ([e5f25f3](e5f25f3)) * added account snapshot document ([1c83ad4](1c83ad4)) * added assetProceeds to internal listener ([8f438d2](8f438d2)) * added budget statement document ([4e6695f](4e6695f)) * added cash and fixedincome tx to grouptx entity ([28405fd](28405fd)) * added crud queries and mutations for document drives ([8c12f7c](8c12f7c)) * added db schema for transactions ([9b06e48](9b06e48)) * added delete operations for spvs, service provider and accounts ([ea95229](ea95229)) * added develop environment ([f5e30b9](f5e30b9)) * added develop environment ([74adb08](74adb08)) * added document and rwa modules and interfaces ([bfaede2](bfaede2)) * added driveId as param to new graphql route ([8bb3255](8bb3255)) * added driveId exists middleware ([71b568b](71b568b)) * added driveid to graphql context ([675994f](675994f)) * added dropdown for graphql explorer ([102ca4a](102ca4a)) * added dynamic internal listener loader ([152c5f4](152c5f4)) * added experimental deps ([4772cb8](4772cb8)) * added experimental deps ([#175](#175)) ([e1eaa1b](e1eaa1b)) * added explorer endpoint with optional driveId param ([9400243](9400243)) * added fees to rwa portfolio ([1fbf4d5](1fbf4d5)) * added frontend and wundergraph deployment ([db73dba](db73dba)) * added github hook ([9ae1cfe](9ae1cfe)) * added graphql endpoints ([9335e8d](9335e8d)) * added healthcheck to dockerfile ([8edd478](8edd478)) * added hook endpoint to nginx router ([f5f0758](f5f0758)) * added internal listener for operational data ([d63987e](d63987e)) * added internal listener manager ([983e5dd](983e5dd)) * added makerdao and updated powerhouse deployments pipeline ([6dfcaa3](6dfcaa3)) * added missing transaction operations ([9427c6f](9427c6f)) * added more operations to rwa surgical update ([d657b68](d657b68)) * added mutations and queries for document drive push and pull transmitter ([1b05ed8](1b05ed8)) * added nginx deployment ([68f3b7c](68f3b7c)) * added operation mutations and drive queries ([eaf4692](eaf4692)) * added query to fetch all documents at once from a drive ([93e35bf](93e35bf)) * added real world assets portfolio query ([34c638f](34c638f)) * added registerListener ([ce7a7ee](ce7a7ee)) * added rwa graphql objects definitions ([687b447](687b447)) * added rwa operational data prisma schema ([f5f210f](f5f210f)) * added rwa portfolio query ([40a8442](40a8442)) * added scalar attachment ([61c55d6](61c55d6)) * added scope framework ([3ec7874](3ec7874)) * added scope of work internal listner ([37cf2c7](37cf2c7)) * added semantic release ([95bd92d](95bd92d)) * added semantic release ([019bb76](019bb76)) * added sentry env ([43fba88](43fba88)) * added sentry node ([9074d21](9074d21)) * added staging ([4891139](4891139)) * added staging ([f218895](f218895)) * added support for building with esbuild ([5c7e2cd](5c7e2cd)) * added support for operation context on graphql api ([847f0a3](847f0a3)) * added versions endpoint ([327609a](327609a)) * basic frontend ([#29](#29)) ([c621f86](c621f86)) * bump document drive ([25938c0](25938c0)) * bump document drive ([88b9395](88b9395)) * bump document drive ([8103716](8103716)) * bump libs ([7d49709](7d49709)) * bump libs ([#180](#180)) ([b52f236](b52f236)) * catch and log error while initializing drive ([6e5462a](6e5462a)) * document drive ([#69](#69)) ([6cbdcc9](6cbdcc9)) * Documentation integration ([#42](#42)) ([52a1e29](52a1e29)) * Documentation page improvements ([#50](#50)) ([0ffdb6c](0ffdb6c)) * documents query ([cd4b308](cd4b308)) * don't store queue job result ([cbc0251](cbc0251)) * dont use pretty-pino on production ([7ee7a6c](7ee7a6c)) * **drive:** use prisma storage adapter ([cdebd25](cdebd25)) * enable operation id prop ([cb693b9](cb693b9)) * error logging ([b6fd264](b6fd264)) * finished rwa portfolio rebuild ([014fb7d](014fb7d)) * fix get strands since ([45aa3a6](45aa3a6)) * fixed dev support ([8ea3e51](8ea3e51)) * fixed import error ([37d634c](37d634c)) * Frontend auth ([#38](#38)) ([09d1940](09d1940)) * Frontend layout ([#32](#32)) ([23668a8](23668a8)) * graphql endpoints, queries and mutations ([#71](#71)) ([efdf27d](efdf27d)) * Graphql server and playground ([#15](#15)) ([38c5a60](38c5a60)) * handle drive strands first when multiple strands are pushed ([d754c1f](d754c1f)) * Implement sessions and revoking possibility ([#28](#28)) ([ca0a7da](ca0a7da)) * Improve documentation integration ([#58](#58)) ([3dffead](3dffead)) * improve heroku setup ([d6fdd6e](d6fdd6e)) * Improve test coverage ([#25](#25)) ([7cedbca](7cedbca)) * improved operational data schema for rwa ([0f93381](0f93381)) * in memory cache for drives and transmitters ([1e1211b](1e1211b)) * increase max body size ([6509c22](6509c22)) * init redis before creating queue manager ([ace01dd](ace01dd)) * log listener operation error ([70e7855](70e7855)) * Make API extensible via npm packages ([#67](#67)) ([fba28b4](fba28b4)) * merge branch 'develop' into staging ([c42b2be](c42b2be)) * moved esbuild to dependencies ([c5d7271](c5d7271)) * moved gql-query-builder to dependencies ([f5efd42](f5efd42)) * moved prisma to dependencies ([c0a689a](c0a689a)) * Preserve auth header for playground ([#49](#49)) ([54d2014](54d2014)) * pushUpdates revision fix ([ad717c4](ad717c4)) * queue add and remove listener operations ([5702eb8](5702eb8)) * queue add and remove listener operations ([3cf277f](3cf277f)) * readded rwa document ([1295fb6](1295fb6)) * remove yarn lockfile ([227664b](227664b)) * replace landing page ([0f458f9](0f458f9)) * replaced vue frontend with nextjs ([c162d55](c162d55)) * return error message on pushUpdates resolver ([4275428](4275428)) * rwa listener core logic ([62eb5d9](62eb5d9)) * sentry error handler improvements ([a1dbd76](a1dbd76)) * serve switchboard from subdirectories ([#108](#108)) ([fbd6baa](fbd6baa)) * silence transmitter not found errors ([8c86d77](8c86d77)) * update deps ([bed3b3d](bed3b3d)) * update document drive ([bf3aef0](bf3aef0)) * update document drive lib ([a81786e](a81786e)) * update document-drive ([7c8caac](7c8caac)) * update document-drive dep ([e4f222e](e4f222e)) * update document-model and document-drive libs ([2bb6151](2bb6151)) * update document-model and document-drive ver ([5b33aa3](5b33aa3)) * update document-model and document-drive versions ([a7038ee](a7038ee)) * update document-model and document-drive versions ([#138](#138)) ([324fce7](324fce7)) * update document-model and document-model-libs deps ([f475fae](f475fae)) * update document-model dep ([5df23b4](5df23b4)) * updated database model ([1db2b78](1db2b78)) * updated deps and small ts improvements ([23332f0](23332f0)) * updated dockerfile ([f6db1db](f6db1db)) * updated document drive dep ([e80a779](e80a779)) * updated document-drive ([319152e](319152e)) * updated document-drive ([680714f](680714f)) * updated document-drive dep ([#70](#70)) ([2ce57e2](2ce57e2)) * updated document-drive ver ([9f0eed4](9f0eed4)) * updated [email protected] ([a805aab](a805aab)) * updated document-model dep ([39e6166](39e6166)) * updated read model listener for rwa ([b1f9dc0](b1f9dc0)) * use corepack ([6297e12](6297e12)) * use pnpm ([4b96e42](4b96e42)) * use pnpm ([#82](#82)) ([658c590](658c590)) * user mutative instead of immer for reducers ([a9cfd97](a9cfd97)) * Wallet auth ([#55](#55)) ([89d40a1](89d40a1))
# 1.0.0 (2024-08-19) ### Bug Fixes * 404 status code when transmitter not found ([3fce2b8](3fce2b8)) * added document drive table ([57cbc31](57cbc31)) * added drive not found to sentry ignore list ([2ac81d3](2ac81d3)) * added sales proceeds ([ed8a594](ed8a594)) * api build ([8a93ed6](8a93ed6)) * api gql endpoint ([5d52a91](5d52a91)) * **apollo:** document operations ([cbc4666](cbc4666)) * build args ([16b70bc](16b70bc)) * build args ([7e8b4bc](7e8b4bc)) * closed redis connection ([3679cda](3679cda)) * cors issue ([7ec1111](7ec1111)) * database and schema issues ([a2578e4](a2578e4)) * deep links ([7ac2c94](7ac2c94)) * definitions error ([dd0653b](dd0653b)) * docker build and disabled imported modules ([59324eb](59324eb)) * docker build arg ([01b5599](01b5599)) * docker build arg ([4db0336](4db0336)) * document operations type ([da9729b](da9729b)) * documentType not resolved ([38c893b](38c893b)) * drive explorer endpoint ([0e31173](0e31173)) * driveId param ([b27925e](b27925e)) * envvars for nginx ([b283688](b283688)) * frontend docker build ([5fd44eb](5fd44eb)) * frontend graphql endpoint ([f4860c4](f4860c4)) * frontend graphql queries ([167eb83](167eb83)) * graphql endpoint ([609f7e8](609f7e8)) * graphql endpoint ([e61892e](e61892e)) * heroku deployment ([9af4188](9af4188)) * heroku deployment ([447b429](447b429)) * ignore drive not found error ([5131a1e](5131a1e)) * ignore drive not found error ([b7dcf31](b7dcf31)) * import error ([f97bf52](f97bf52)) * logger module filter ([145fc8b](145fc8b)) * name in assets not found ([e30a177](e30a177)) * nginx deployment ([1c50d20](1c50d20)) * nginx deployment ([795b39e](795b39e)) * prisma schema ([56554d3](56554d3)) * prisma schema ([8b865bf](8b865bf)) * redis queue ([9ab2c5c](9ab2c5c)) * request entity too large ([0782ba9](0782ba9)) * review comments ([75aead7](75aead7)) * rwa portfolio query ([2dba2cf](2dba2cf)) * rwa state name ([afa461b](afa461b)) * rwaPortfolios query ([079e8d7](079e8d7)) * set drive id from context ([d45d452](d45d452)) * set environments in github actions ([94f14e7](94f14e7)) * set environments in github actions ([d1a5204](d1a5204)) * set proper port on wundergraph ([5adebdb](5adebdb)) * set proper rwa type ([625cfd8](625cfd8)) * staging ([powerhouse-inc#179](https://github.com/NewMBrand/switchboard/issues/179)) ([76716ad](76716ad)) * updated gen files ([779f395](779f395)) * updated yarn.lock ([4261d1b](4261d1b)) * use redis cache if redis env var is set ([ad539ed](ad539ed)) * wundergraph deployment ([4f31d37](4f31d37)) * wundergraph port ([d3bf08c](d3bf08c)) ### Features * activate queue ([70da227](70da227)) * activate queue ([powerhouse-inc#178](https://github.com/NewMBrand/switchboard/issues/178)) ([7b3accf](7b3accf)) * activated cicd for staging ([aa959a6](aa959a6)) * activated cicd for staging ([23c36ba](23c36ba)) * activated prisma storage adapter ([f588ae2](f588ae2)) * activated redis queue manager ([05b7dc2](05b7dc2)) * add basic badges to clearly indicate license and CI status ([f4247c6](f4247c6)) * add basic ci and bare package.json ([7e7c712](7e7c712)) * add editorconfig ([377a2a6](377a2a6)) * add eslint, document it, add it to ci ([b7c741d](b7c741d)) * add gitignore ([9d5d1c4](9d5d1c4)) * Add healthz endpoints to api and frontend ([powerhouse-inc#34](https://github.com/NewMBrand/switchboard/issues/34)) ([25baa4e](25baa4e)) * add hello world index.ts, make it runnable, add first types ([951be8b](951be8b)) * add logging ([powerhouse-inc#21](https://github.com/NewMBrand/switchboard/issues/21)) ([17fc322](17fc322)) * add nvmrc and some basic documentation for easier starting points ([0799489](0799489)) * Add origin restriction to session token ([powerhouse-inc#46](https://github.com/NewMBrand/switchboard/issues/46)) ([100a018](100a018)) * Add prisma, prisma docs, Core Unit database model ([powerhouse-inc#12](https://github.com/NewMBrand/switchboard/issues/12)) ([969bbd7](969bbd7)) * add pushUpdates mutation ([340c475](340c475)) * add pushUpdates strands to queue at the same time ([b334196](b334196)) * add some basic recommendations for vscode users to make the start of this project easier ([e1735b6](e1735b6)) * add spv and fixedincometypes to portfolio assets ([1a14939](1a14939)) * Add testing setup, document it, add it to CI ([powerhouse-inc#13](https://github.com/NewMBrand/switchboard/issues/13)) ([97e25d4](97e25d4)) * add typescript, typechecking, document it in readme, add it to ci-pipeline ([6bdd1d9](6bdd1d9)) * Add user + auth ([powerhouse-inc#16](https://github.com/NewMBrand/switchboard/issues/16)) ([125d8b1](125d8b1)) * Add wundergraph to compose graphql APIs ([powerhouse-inc#64](https://github.com/NewMBrand/switchboard/issues/64)) ([5eb82a6](5eb82a6)) * added a child logger for the document drive ([e5f25f3](e5f25f3)) * added account snapshot document ([1c83ad4](1c83ad4)) * added assetProceeds to internal listener ([8f438d2](8f438d2)) * added budget statement document ([4e6695f](4e6695f)) * added cash and fixedincome tx to grouptx entity ([28405fd](28405fd)) * added crud queries and mutations for document drives ([8c12f7c](8c12f7c)) * added db schema for transactions ([9b06e48](9b06e48)) * added delete operations for spvs, service provider and accounts ([ea95229](ea95229)) * added develop environment ([f5e30b9](f5e30b9)) * added develop environment ([74adb08](74adb08)) * added document and rwa modules and interfaces ([bfaede2](bfaede2)) * added driveId as param to new graphql route ([8bb3255](8bb3255)) * added driveId exists middleware ([71b568b](71b568b)) * added driveid to graphql context ([675994f](675994f)) * added dropdown for graphql explorer ([102ca4a](102ca4a)) * added dynamic internal listener loader ([152c5f4](152c5f4)) * added experimental deps ([4772cb8](4772cb8)) * added experimental deps ([powerhouse-inc#175](https://github.com/NewMBrand/switchboard/issues/175)) ([e1eaa1b](e1eaa1b)) * added explorer endpoint with optional driveId param ([9400243](9400243)) * added fees to rwa portfolio ([1fbf4d5](1fbf4d5)) * added frontend and wundergraph deployment ([db73dba](db73dba)) * added github hook ([9ae1cfe](9ae1cfe)) * added graphql endpoints ([9335e8d](9335e8d)) * added healthcheck to dockerfile ([8edd478](8edd478)) * added hook endpoint to nginx router ([f5f0758](f5f0758)) * added internal listener for operational data ([d63987e](d63987e)) * added internal listener manager ([983e5dd](983e5dd)) * added makerdao and updated powerhouse deployments pipeline ([6dfcaa3](6dfcaa3)) * added missing transaction operations ([9427c6f](9427c6f)) * added more operations to rwa surgical update ([d657b68](d657b68)) * added mutations and queries for document drive push and pull transmitter ([1b05ed8](1b05ed8)) * added nginx deployment ([68f3b7c](68f3b7c)) * added operation mutations and drive queries ([eaf4692](eaf4692)) * added query to fetch all documents at once from a drive ([93e35bf](93e35bf)) * added real world assets portfolio query ([34c638f](34c638f)) * added redis to docker-compose ([14ebaad](14ebaad)) * added redis to docker-compose ([4915574](4915574)) * added registerListener ([ce7a7ee](ce7a7ee)) * added rwa graphql objects definitions ([687b447](687b447)) * added rwa operational data prisma schema ([f5f210f](f5f210f)) * added rwa portfolio query ([40a8442](40a8442)) * added scalar attachment ([61c55d6](61c55d6)) * added scope framework ([3ec7874](3ec7874)) * added scope of work internal listner ([37cf2c7](37cf2c7)) * added semantic release ([95bd92d](95bd92d)) * added semantic release ([019bb76](019bb76)) * added sentry env ([43fba88](43fba88)) * added sentry node ([9074d21](9074d21)) * added staging ([4891139](4891139)) * added staging ([f218895](f218895)) * added support for building with esbuild ([5c7e2cd](5c7e2cd)) * added support for operation context on graphql api ([847f0a3](847f0a3)) * added support for operation context on graphql api ([86a2f31](86a2f31)) * added versions endpoint ([327609a](327609a)) * basic frontend ([powerhouse-inc#29](https://github.com/NewMBrand/switchboard/issues/29)) ([c621f86](c621f86)) * bump document drive ([25938c0](25938c0)) * bump document drive ([88b9395](88b9395)) * bump document drive ([8103716](8103716)) * bump libs ([7d49709](7d49709)) * bump libs ([powerhouse-inc#180](https://github.com/NewMBrand/switchboard/issues/180)) ([b52f236](b52f236)) * catch and log error while initializing drive ([6e5462a](6e5462a)) * document drive ([powerhouse-inc#69](https://github.com/NewMBrand/switchboard/issues/69)) ([6cbdcc9](6cbdcc9)) * Documentation integration ([powerhouse-inc#42](https://github.com/NewMBrand/switchboard/issues/42)) ([52a1e29](52a1e29)) * Documentation page improvements ([powerhouse-inc#50](https://github.com/NewMBrand/switchboard/issues/50)) ([0ffdb6c](0ffdb6c)) * documents query ([cd4b308](cd4b308)) * don't store queue job result ([cbc0251](cbc0251)) * dont use pretty-pino on production ([7ee7a6c](7ee7a6c)) * **drive:** use prisma storage adapter ([cdebd25](cdebd25)) * enable operation id prop ([cb693b9](cb693b9)) * error logging ([b6fd264](b6fd264)) * finished rwa portfolio rebuild ([014fb7d](014fb7d)) * fix get strands since ([45aa3a6](45aa3a6)) * fixed dev support ([8ea3e51](8ea3e51)) * fixed import error ([37d634c](37d634c)) * Frontend auth ([powerhouse-inc#38](https://github.com/NewMBrand/switchboard/issues/38)) ([09d1940](09d1940)) * Frontend layout ([powerhouse-inc#32](https://github.com/NewMBrand/switchboard/issues/32)) ([23668a8](23668a8)) * graphql endpoints, queries and mutations ([powerhouse-inc#71](https://github.com/NewMBrand/switchboard/issues/71)) ([efdf27d](efdf27d)) * Graphql server and playground ([powerhouse-inc#15](https://github.com/NewMBrand/switchboard/issues/15)) ([38c5a60](38c5a60)) * handle drive strands first when multiple strands are pushed ([d754c1f](d754c1f)) * Implement sessions and revoking possibility ([powerhouse-inc#28](https://github.com/NewMBrand/switchboard/issues/28)) ([ca0a7da](ca0a7da)) * Improve documentation integration ([powerhouse-inc#58](https://github.com/NewMBrand/switchboard/issues/58)) ([3dffead](3dffead)) * improve heroku setup ([d6fdd6e](d6fdd6e)) * Improve test coverage ([powerhouse-inc#25](https://github.com/NewMBrand/switchboard/issues/25)) ([7cedbca](7cedbca)) * improved operational data schema for rwa ([0f93381](0f93381)) * in memory cache for drives and transmitters ([1e1211b](1e1211b)) * increase max body size ([6509c22](6509c22)) * init redis before creating queue manager ([ace01dd](ace01dd)) * log listener operation error ([70e7855](70e7855)) * Make API extensible via npm packages ([powerhouse-inc#67](https://github.com/NewMBrand/switchboard/issues/67)) ([fba28b4](fba28b4)) * merge branch 'develop' into staging ([c42b2be](c42b2be)) * moved esbuild to dependencies ([c5d7271](c5d7271)) * moved gql-query-builder to dependencies ([f5efd42](f5efd42)) * moved prisma to dependencies ([c0a689a](c0a689a)) * Preserve auth header for playground ([powerhouse-inc#49](https://github.com/NewMBrand/switchboard/issues/49)) ([54d2014](54d2014)) * pushUpdates revision fix ([ad717c4](ad717c4)) * queue add and remove listener operations ([5702eb8](5702eb8)) * queue add and remove listener operations ([3cf277f](3cf277f)) * readded rwa document ([1295fb6](1295fb6)) * remove yarn lockfile ([227664b](227664b)) * replace landing page ([0f458f9](0f458f9)) * replaced vue frontend with nextjs ([c162d55](c162d55)) * return error message on pushUpdates resolver ([4275428](4275428)) * rwa listener core logic ([62eb5d9](62eb5d9)) * sentry error handler improvements ([a1dbd76](a1dbd76)) * serve switchboard from subdirectories ([powerhouse-inc#108](https://github.com/NewMBrand/switchboard/issues/108)) ([fbd6baa](fbd6baa)) * silence transmitter not found errors ([8c86d77](8c86d77)) * update deps ([bed3b3d](bed3b3d)) * update document drive ([bf3aef0](bf3aef0)) * update document drive lib ([a81786e](a81786e)) * update document-drive ([7c8caac](7c8caac)) * update document-drive dep ([1da4f74](1da4f74)) * update document-drive dep ([e4f222e](e4f222e)) * update document-drive dep ([40f98cd](40f98cd)) * update document-model and document-drive libs ([2bb6151](2bb6151)) * update document-model and document-drive ver ([5b33aa3](5b33aa3)) * update document-model and document-drive versions ([a7038ee](a7038ee)) * update document-model and document-drive versions ([powerhouse-inc#138](https://github.com/NewMBrand/switchboard/issues/138)) ([324fce7](324fce7)) * update document-model and document-model-libs deps ([f475fae](f475fae)) * update document-model dep ([5df23b4](5df23b4)) * updated database model ([1db2b78](1db2b78)) * updated deps and small ts improvements ([23332f0](23332f0)) * updated dockerfile ([f6db1db](f6db1db)) * updated document drive dep ([e80a779](e80a779)) * updated document-drive ([319152e](319152e)) * updated document-drive ([680714f](680714f)) * updated document-drive dep ([powerhouse-inc#70](https://github.com/NewMBrand/switchboard/issues/70)) ([2ce57e2](2ce57e2)) * updated document-drive ver ([9f0eed4](9f0eed4)) * updated [email protected] ([a805aab](a805aab)) * updated document-model dep ([39e6166](39e6166)) * updated read model listener for rwa ([b1f9dc0](b1f9dc0)) * use corepack ([6297e12](6297e12)) * use pnpm ([4b96e42](4b96e42)) * use pnpm ([powerhouse-inc#82](https://github.com/NewMBrand/switchboard/issues/82)) ([658c590](658c590)) * user mutative instead of immer for reducers ([a9cfd97](a9cfd97)) * Wallet auth ([powerhouse-inc#55](https://github.com/NewMBrand/switchboard/issues/55)) ([89d40a1](89d40a1))
close #41