From 8e4e36513aa6e3c4f98197adfa75e014920b3572 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karol=20S=C3=B3jko?= Date: Mon, 13 Nov 2023 10:37:42 +0100 Subject: [PATCH] fix: remove unused even-store from code base (#925) * fix: remove unused even-store from code base * fix lock --- .github/dependabot.yml | 7 - .pnp.cjs | 47 - ...mailer-npm-6.4.8-04975b93f9-d5afdd77ef.zip | Bin 38550 -> 0 bytes .../SQS/SQSDomainEventSubscriberFactory.ts | 32 - .../domain-events-infra/src/Infra/index.ts | 1 - .../DomainEventSubscriberFactoryInterface.ts | 5 - packages/domain-events/src/Domain/index.ts | 1 - packages/event-store/.env.sample | 15 - packages/event-store/.eslintignore | 2 - packages/event-store/.eslintrc | 7 - packages/event-store/CHANGELOG.md | 1139 ----------------- packages/event-store/Dockerfile | 17 - packages/event-store/bin/worker.ts | 21 - .../event-store/docker/entrypoint-worker.js | 11 - packages/event-store/docker/entrypoint.sh | 17 - packages/event-store/jest.config.js | 12 - packages/event-store/linter.tsconfig.json | 4 - .../migrations/1639394147420-init_database.ts | 16 - packages/event-store/package.json | 48 - .../event-store/src/Bootstrap/Container.ts | 110 -- .../event-store/src/Bootstrap/DataSource.ts | 51 - packages/event-store/src/Bootstrap/Env.ts | 9 - packages/event-store/src/Bootstrap/Types.ts | 17 - .../event-store/src/Domain/Event/Event.ts | 38 - .../src/Domain/Handler/EventHandler.spec.ts | 76 -- .../src/Domain/Handler/EventHandler.ts | 33 - packages/event-store/test-setup.ts | 0 packages/event-store/tsconfig.json | 13 - tsconfig.json | 3 - yarn.lock | 39 - 30 files changed, 1791 deletions(-) delete mode 100644 .yarn/cache/@types-nodemailer-npm-6.4.8-04975b93f9-d5afdd77ef.zip delete mode 100644 packages/domain-events-infra/src/Infra/SQS/SQSDomainEventSubscriberFactory.ts delete mode 100644 packages/domain-events/src/Domain/Subscriber/DomainEventSubscriberFactoryInterface.ts delete mode 100644 packages/event-store/.env.sample delete mode 100644 packages/event-store/.eslintignore delete mode 100644 packages/event-store/.eslintrc delete mode 100644 packages/event-store/CHANGELOG.md delete mode 100644 packages/event-store/Dockerfile delete mode 100644 packages/event-store/bin/worker.ts delete mode 100644 packages/event-store/docker/entrypoint-worker.js delete mode 100755 packages/event-store/docker/entrypoint.sh delete mode 100644 packages/event-store/jest.config.js delete mode 100644 packages/event-store/linter.tsconfig.json delete mode 100644 packages/event-store/migrations/1639394147420-init_database.ts delete mode 100644 packages/event-store/package.json delete mode 100644 packages/event-store/src/Bootstrap/Container.ts delete mode 100644 packages/event-store/src/Bootstrap/DataSource.ts delete mode 100644 packages/event-store/src/Bootstrap/Env.ts delete mode 100644 packages/event-store/src/Bootstrap/Types.ts delete mode 100644 packages/event-store/src/Domain/Event/Event.ts delete mode 100644 packages/event-store/src/Domain/Handler/EventHandler.spec.ts delete mode 100644 packages/event-store/src/Domain/Handler/EventHandler.ts delete mode 100644 packages/event-store/test-setup.ts delete mode 100644 packages/event-store/tsconfig.json diff --git a/.github/dependabot.yml b/.github/dependabot.yml index aa3a70fcd..03c08725f 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -61,13 +61,6 @@ updates: allow: - dependency-type: "direct" - - package-ecosystem: "npm" - directory: "/packages/event-store" - schedule: - interval: "daily" - allow: - - dependency-type: "direct" - - package-ecosystem: "npm" directory: "/packages/files" schedule: diff --git a/.pnp.cjs b/.pnp.cjs index cd41b5258..59990d80f 100755 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -41,10 +41,6 @@ const RAW_RUNTIME_STATE = "name": "@standardnotes/domain-events-infra",\ "reference": "workspace:packages/domain-events-infra"\ },\ - {\ - "name": "@standardnotes/event-store",\ - "reference": "workspace:packages/event-store"\ - },\ {\ "name": "@standardnotes/files-server",\ "reference": "workspace:packages/files"\ @@ -100,7 +96,6 @@ const RAW_RUNTIME_STATE = ["@standardnotes/domain-core", ["workspace:packages/domain-core"]],\ ["@standardnotes/domain-events", ["workspace:packages/domain-events"]],\ ["@standardnotes/domain-events-infra", ["workspace:packages/domain-events-infra"]],\ - ["@standardnotes/event-store", ["workspace:packages/event-store"]],\ ["@standardnotes/files-server", ["workspace:packages/files"]],\ ["@standardnotes/home-server", ["workspace:packages/home-server"]],\ ["@standardnotes/predicates", ["workspace:packages/predicates"]],\ @@ -6579,38 +6574,6 @@ const RAW_RUNTIME_STATE = "linkType": "SOFT"\ }]\ ]],\ - ["@standardnotes/event-store", [\ - ["workspace:packages/event-store", {\ - "packageLocation": "./packages/event-store/",\ - "packageDependencies": [\ - ["@standardnotes/event-store", "workspace:packages/event-store"],\ - ["@aws-sdk/client-sqs", "npm:3.427.0"],\ - ["@standardnotes/domain-core", "workspace:packages/domain-core"],\ - ["@standardnotes/domain-events", "workspace:packages/domain-events"],\ - ["@standardnotes/domain-events-infra", "workspace:packages/domain-events-infra"],\ - ["@standardnotes/time", "workspace:packages/time"],\ - ["@types/ioredis", "npm:5.0.0"],\ - ["@types/jest", "npm:29.5.2"],\ - ["@types/nodemailer", "npm:6.4.8"],\ - ["@typescript-eslint/eslint-plugin", "virtual:fd909b174d079e30b336c4ce72c38a88c1e447767b1a8dd7655e07719a1e31b97807f0931368724fc78897ff15e6a6d00b83316c0f76d11f85111f342e08bb79#npm:6.5.0"],\ - ["@typescript-eslint/parser", "virtual:fd909b174d079e30b336c4ce72c38a88c1e447767b1a8dd7655e07719a1e31b97807f0931368724fc78897ff15e6a6d00b83316c0f76d11f85111f342e08bb79#npm:6.5.0"],\ - ["dotenv", "npm:16.1.3"],\ - ["eslint", "npm:8.41.0"],\ - ["eslint-plugin-prettier", "virtual:fd909b174d079e30b336c4ce72c38a88c1e447767b1a8dd7655e07719a1e31b97807f0931368724fc78897ff15e6a6d00b83316c0f76d11f85111f342e08bb79#npm:5.0.0"],\ - ["inversify", "npm:6.0.1"],\ - ["ioredis", "npm:5.3.2"],\ - ["jest", "virtual:fd909b174d079e30b336c4ce72c38a88c1e447767b1a8dd7655e07719a1e31b97807f0931368724fc78897ff15e6a6d00b83316c0f76d11f85111f342e08bb79#npm:29.5.0"],\ - ["mysql2", "npm:3.3.3"],\ - ["prettier", "npm:3.0.3"],\ - ["reflect-metadata", "npm:0.1.13"],\ - ["ts-jest", "virtual:fd909b174d079e30b336c4ce72c38a88c1e447767b1a8dd7655e07719a1e31b97807f0931368724fc78897ff15e6a6d00b83316c0f76d11f85111f342e08bb79#npm:29.1.0"],\ - ["typeorm", "virtual:c66bf20e88479ada0172094776519a9f51acc4731d22079b60a295bcec7ea42d5545cbce58a77a50d932bf953298799135e99707486e343da6d99ba1d167bdbd#npm:0.3.17"],\ - ["typescript", "patch:typescript@npm%3A5.0.4#optional!builtin::version=5.0.4&hash=b5f058"],\ - ["winston", "npm:3.9.0"]\ - ],\ - "linkType": "SOFT"\ - }]\ - ]],\ ["@standardnotes/features", [\ ["npm:1.59.7", {\ "packageLocation": "./.yarn/cache/@standardnotes-features-npm-1.59.7-27c3e5296e-421af62d1e.zip/node_modules/@standardnotes/features/",\ @@ -7476,16 +7439,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["@types/nodemailer", [\ - ["npm:6.4.8", {\ - "packageLocation": "./.yarn/cache/@types-nodemailer-npm-6.4.8-04975b93f9-d5afdd77ef.zip/node_modules/@types/nodemailer/",\ - "packageDependencies": [\ - ["@types/nodemailer", "npm:6.4.8"],\ - ["@types/node", "npm:20.2.5"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["@types/normalize-package-data", [\ ["npm:2.4.1", {\ "packageLocation": "./.yarn/cache/@types-normalize-package-data-npm-2.4.1-c31c56ae6a-e87bccbf11.zip/node_modules/@types/normalize-package-data/",\ diff --git a/.yarn/cache/@types-nodemailer-npm-6.4.8-04975b93f9-d5afdd77ef.zip b/.yarn/cache/@types-nodemailer-npm-6.4.8-04975b93f9-d5afdd77ef.zip deleted file mode 100644 index f417eab5f65ab8ba0427f9b65024708383245dd7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38550 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 diff --git a/packages/domain-events-infra/src/Infra/SQS/SQSDomainEventSubscriberFactory.ts b/packages/domain-events-infra/src/Infra/SQS/SQSDomainEventSubscriberFactory.ts deleted file mode 100644 index b8458cdd7..000000000 --- a/packages/domain-events-infra/src/Infra/SQS/SQSDomainEventSubscriberFactory.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { Consumer } from 'sqs-consumer' -import { Message, SQSClient } from '@aws-sdk/client-sqs' -import { - DomainEventMessageHandlerInterface, - DomainEventSubscriberFactoryInterface, - DomainEventSubscriberInterface, -} from '@standardnotes/domain-events' - -export class SQSDomainEventSubscriberFactory implements DomainEventSubscriberFactoryInterface { - constructor( - private sqs: SQSClient, - private queueUrl: string, - private domainEventMessageHandler: DomainEventMessageHandlerInterface, - ) {} - - create(): DomainEventSubscriberInterface { - const sqsConsumer = Consumer.create({ - attributeNames: ['All'], - messageAttributeNames: ['All'], - queueUrl: this.queueUrl, - sqs: this.sqs, - handleMessage: - /* istanbul ignore next */ - async (message: Message) => await this.domainEventMessageHandler.handleMessage(message.Body), - }) - - sqsConsumer.on('error', this.domainEventMessageHandler.handleError.bind(this.domainEventMessageHandler)) - sqsConsumer.on('processing_error', this.domainEventMessageHandler.handleError.bind(this.domainEventMessageHandler)) - - return sqsConsumer - } -} diff --git a/packages/domain-events-infra/src/Infra/index.ts b/packages/domain-events-infra/src/Infra/index.ts index bc21c3266..333fe60bd 100644 --- a/packages/domain-events-infra/src/Infra/index.ts +++ b/packages/domain-events-infra/src/Infra/index.ts @@ -14,6 +14,5 @@ export * from './SNS/SNSOpenTelemetryDomainEventPublisher' export * from './SQS/SQSBounceNotificiationHandler' export * from './SQS/SQSDomainEventSubscriber' -export * from './SQS/SQSDomainEventSubscriberFactory' export * from './SQS/SQSEventMessageHandler' export * from './SQS/SQSOpenTelemetryDomainEventSubscriber' diff --git a/packages/domain-events/src/Domain/Subscriber/DomainEventSubscriberFactoryInterface.ts b/packages/domain-events/src/Domain/Subscriber/DomainEventSubscriberFactoryInterface.ts deleted file mode 100644 index 5ea407a35..000000000 --- a/packages/domain-events/src/Domain/Subscriber/DomainEventSubscriberFactoryInterface.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { DomainEventSubscriberInterface } from './DomainEventSubscriberInterface' - -export interface DomainEventSubscriberFactoryInterface { - create(): DomainEventSubscriberInterface -} diff --git a/packages/domain-events/src/Domain/index.ts b/packages/domain-events/src/Domain/index.ts index 3fabdff6d..260ac16a4 100644 --- a/packages/domain-events/src/Domain/index.ts +++ b/packages/domain-events/src/Domain/index.ts @@ -122,5 +122,4 @@ export * from './Handler/DomainEventMessageHandlerInterface' export * from './Publisher/DomainEventPublisherInterface' -export * from './Subscriber/DomainEventSubscriberFactoryInterface' export * from './Subscriber/DomainEventSubscriberInterface' diff --git a/packages/event-store/.env.sample b/packages/event-store/.env.sample deleted file mode 100644 index 9284fd884..000000000 --- a/packages/event-store/.env.sample +++ /dev/null @@ -1,15 +0,0 @@ -LOG_LEVEL=debug -NODE_ENV=development -VERSION=development - -DB_HOST=127.0.0.1 -DB_REPLICA_HOST=127.0.0.1 -DB_PORT=3306 -DB_USERNAME=store -DB_PASSWORD=changeme123 -DB_DATABASE=store -DB_DEBUG_LEVEL=all # "all" | "query" | "schema" | "error" | "warn" | "info" | "log" | "migration" -DB_MIGRATIONS_PATH=dist/migrations/*.js - -SQS_QUEUE_URL= -SQS_AWS_REGION= diff --git a/packages/event-store/.eslintignore b/packages/event-store/.eslintignore deleted file mode 100644 index c6bf4c599..000000000 --- a/packages/event-store/.eslintignore +++ /dev/null @@ -1,2 +0,0 @@ -dist -test-setup.ts diff --git a/packages/event-store/.eslintrc b/packages/event-store/.eslintrc deleted file mode 100644 index 697bc808d..000000000 --- a/packages/event-store/.eslintrc +++ /dev/null @@ -1,7 +0,0 @@ -{ - "extends": "../../.eslintrc", - "parser": "@typescript-eslint/parser", - "parserOptions": { - "project": "./linter.tsconfig.json" - } -} diff --git a/packages/event-store/CHANGELOG.md b/packages/event-store/CHANGELOG.md deleted file mode 100644 index 0b100f25e..000000000 --- a/packages/event-store/CHANGELOG.md +++ /dev/null @@ -1,1139 +0,0 @@ -# Change Log - -All notable changes to this project will be documented in this file. -See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. - -# [1.14.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.19...@standardnotes/event-store@1.14.0) (2023-11-10) - -### Features - -* add graceful shutdown procedures upon SIGTERM ([#923](https://github.com/standardnotes/server/issues/923)) ([c24353c](https://github.com/standardnotes/server/commit/c24353cc24ebf4b40ff9a2cec8e37cfdef109e37)) - -## [1.13.19](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.18...@standardnotes/event-store@1.13.19) (2023-11-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.18](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.17...@standardnotes/event-store@1.13.18) (2023-11-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.17](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.16...@standardnotes/event-store@1.13.17) (2023-10-26) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.16](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.15...@standardnotes/event-store@1.13.16) (2023-10-26) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.15](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.14...@standardnotes/event-store@1.13.15) (2023-10-19) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.14](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.13...@standardnotes/event-store@1.13.14) (2023-10-18) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.13](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.12...@standardnotes/event-store@1.13.13) (2023-10-17) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.12](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.11...@standardnotes/event-store@1.13.12) (2023-10-13) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.11](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.10...@standardnotes/event-store@1.13.11) (2023-10-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.10](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.9...@standardnotes/event-store@1.13.10) (2023-10-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.9](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.8...@standardnotes/event-store@1.13.9) (2023-10-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.8](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.7...@standardnotes/event-store@1.13.8) (2023-10-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.7](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.6...@standardnotes/event-store@1.13.7) (2023-10-11) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.6](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.5...@standardnotes/event-store@1.13.6) (2023-10-11) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.5](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.4...@standardnotes/event-store@1.13.5) (2023-10-11) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.4](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.3...@standardnotes/event-store@1.13.4) (2023-10-11) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.3](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.2...@standardnotes/event-store@1.13.3) (2023-10-11) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.2](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.1...@standardnotes/event-store@1.13.2) (2023-10-11) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.13.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.13.0...@standardnotes/event-store@1.13.1) (2023-10-11) - -**Note:** Version bump only for package @standardnotes/event-store - -# [1.13.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.18...@standardnotes/event-store@1.13.0) (2023-10-10) - -### Features - -* remove newrelic integration ([#862](https://github.com/standardnotes/server/issues/862)) ([efb341e](https://github.com/standardnotes/server/commit/efb341eb991d37efab7c1efce035ee07ad0a101e)) - -## [1.12.18](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.17...@standardnotes/event-store@1.12.18) (2023-10-10) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.17](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.16...@standardnotes/event-store@1.12.17) (2023-10-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.16](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.15...@standardnotes/event-store@1.12.16) (2023-10-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.15](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.14...@standardnotes/event-store@1.12.15) (2023-10-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.14](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.13...@standardnotes/event-store@1.12.14) (2023-10-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.13](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.12...@standardnotes/event-store@1.12.13) (2023-10-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.12](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.11...@standardnotes/event-store@1.12.12) (2023-10-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.11](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.10...@standardnotes/event-store@1.12.11) (2023-10-06) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.10](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.9...@standardnotes/event-store@1.12.10) (2023-10-05) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.9](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.8...@standardnotes/event-store@1.12.9) (2023-10-05) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.8](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.7...@standardnotes/event-store@1.12.8) (2023-10-04) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.7](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.6...@standardnotes/event-store@1.12.7) (2023-10-04) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.6](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.5...@standardnotes/event-store@1.12.6) (2023-10-04) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.5](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.4...@standardnotes/event-store@1.12.5) (2023-10-04) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.4](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.3...@standardnotes/event-store@1.12.4) (2023-10-03) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.3](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.2...@standardnotes/event-store@1.12.3) (2023-10-03) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.2](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.1...@standardnotes/event-store@1.12.2) (2023-09-28) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.12.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.12.0...@standardnotes/event-store@1.12.1) (2023-09-27) - -**Note:** Version bump only for package @standardnotes/event-store - -# [1.12.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.52...@standardnotes/event-store@1.12.0) (2023-09-26) - -### Features - -* refactor handling revision creation from dump ([#854](https://github.com/standardnotes/server/issues/854)) ([ca6dbc0](https://github.com/standardnotes/server/commit/ca6dbc00537bb20f508f9310b1a838421f53a643)) - -## [1.11.52](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.51...@standardnotes/event-store@1.11.52) (2023-09-25) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.51](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.50...@standardnotes/event-store@1.11.51) (2023-09-25) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.50](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.49...@standardnotes/event-store@1.11.50) (2023-09-25) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.49](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.48...@standardnotes/event-store@1.11.49) (2023-09-25) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.48](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.47...@standardnotes/event-store@1.11.48) (2023-09-21) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.47](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.46...@standardnotes/event-store@1.11.47) (2023-09-20) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.46](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.45...@standardnotes/event-store@1.11.46) (2023-09-20) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.45](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.44...@standardnotes/event-store@1.11.45) (2023-09-19) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.44](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.43...@standardnotes/event-store@1.11.44) (2023-09-18) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.43](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.42...@standardnotes/event-store@1.11.43) (2023-09-18) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.42](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.41...@standardnotes/event-store@1.11.42) (2023-09-15) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.41](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.40...@standardnotes/event-store@1.11.41) (2023-09-15) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.40](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.39...@standardnotes/event-store@1.11.40) (2023-09-13) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.39](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.38...@standardnotes/event-store@1.11.39) (2023-09-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.38](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.37...@standardnotes/event-store@1.11.38) (2023-09-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.37](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.36...@standardnotes/event-store@1.11.37) (2023-09-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.36](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.35...@standardnotes/event-store@1.11.36) (2023-09-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.35](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.34...@standardnotes/event-store@1.11.35) (2023-09-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.34](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.33...@standardnotes/event-store@1.11.34) (2023-09-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.33](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.32...@standardnotes/event-store@1.11.33) (2023-09-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.32](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.31...@standardnotes/event-store@1.11.32) (2023-09-06) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.31](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.30...@standardnotes/event-store@1.11.31) (2023-09-04) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.30](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.29...@standardnotes/event-store@1.11.30) (2023-09-01) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.29](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.28...@standardnotes/event-store@1.11.29) (2023-09-01) - -### Bug Fixes - -* inserting revisions instead of upsert ([#803](https://github.com/standardnotes/server/issues/803)) ([27ff25b](https://github.com/standardnotes/server/commit/27ff25b70e6b65dfe89aa35582422dce682a4105)) - -## [1.11.28](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.27...@standardnotes/event-store@1.11.28) (2023-09-01) - -### Bug Fixes - -* remove the alive and kicking info logs on workers ([1bef127](https://github.com/standardnotes/server/commit/1bef1279e6dbf3cbdfa87e44aa9108ed6dbb3b0f)) - -## [1.11.27](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.26...@standardnotes/event-store@1.11.27) (2023-08-31) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.26](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.25...@standardnotes/event-store@1.11.26) (2023-08-31) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.25](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.24...@standardnotes/event-store@1.11.25) (2023-08-30) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.24](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.23...@standardnotes/event-store@1.11.24) (2023-08-30) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.23](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.22...@standardnotes/event-store@1.11.23) (2023-08-24) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.22](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.21...@standardnotes/event-store@1.11.22) (2023-08-23) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.21](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.20...@standardnotes/event-store@1.11.21) (2023-08-22) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.20](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.19...@standardnotes/event-store@1.11.20) (2023-08-18) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.19](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.18...@standardnotes/event-store@1.11.19) (2023-08-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.18](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.17...@standardnotes/event-store@1.11.18) (2023-08-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.17](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.16...@standardnotes/event-store@1.11.17) (2023-08-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.16](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.15...@standardnotes/event-store@1.11.16) (2023-08-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.15](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.14...@standardnotes/event-store@1.11.15) (2023-08-03) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.14](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.13...@standardnotes/event-store@1.11.14) (2023-08-02) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.13](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.12...@standardnotes/event-store@1.11.13) (2023-07-27) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.12](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.11...@standardnotes/event-store@1.11.12) (2023-07-26) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.11](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.10...@standardnotes/event-store@1.11.11) (2023-07-26) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.10](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.9...@standardnotes/event-store@1.11.10) (2023-07-21) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.9](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.8...@standardnotes/event-store@1.11.9) (2023-07-21) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.8](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.7...@standardnotes/event-store@1.11.8) (2023-07-19) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.7](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.6...@standardnotes/event-store@1.11.7) (2023-07-17) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.6](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.5...@standardnotes/event-store@1.11.6) (2023-07-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.5](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.4...@standardnotes/event-store@1.11.5) (2023-07-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.4](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.3...@standardnotes/event-store@1.11.4) (2023-07-06) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.3](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.2...@standardnotes/event-store@1.11.3) (2023-07-05) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.2](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.1...@standardnotes/event-store@1.11.2) (2023-06-30) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.11.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.11.0...@standardnotes/event-store@1.11.1) (2023-06-30) - -**Note:** Version bump only for package @standardnotes/event-store - -# [1.11.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.10.1...@standardnotes/event-store@1.11.0) (2023-06-30) - -### Features - -* shared vaults functionality in api-gateway,auth,files,common,security,domain-events. ([#629](https://github.com/standardnotes/server/issues/629)) ([fa7fbe2](https://github.com/standardnotes/server/commit/fa7fbe26e7b0707fc21d71e04af76870f5248baf)) - -## [1.10.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.10.0...@standardnotes/event-store@1.10.1) (2023-06-02) - -### Bug Fixes - -* **home-server:** streaming logs ([a8b806a](https://github.com/standardnotes/server/commit/a8b806af084b3e3fe8707ff0cb041a74042ee049)) - -# [1.10.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.9.6...@standardnotes/event-store@1.10.0) (2023-06-02) - -### Features - -* **home-server:** add overriding environment variables in underlying services ([#621](https://github.com/standardnotes/server/issues/621)) ([f0cbec0](https://github.com/standardnotes/server/commit/f0cbec07b87d60dfad92072944553f76e0bea164)) - -## [1.9.6](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.9.5...@standardnotes/event-store@1.9.6) (2023-06-01) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.9.5](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.9.4...@standardnotes/event-store@1.9.5) (2023-06-01) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.9.4](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.9.3...@standardnotes/event-store@1.9.4) (2023-06-01) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.9.3](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.9.2...@standardnotes/event-store@1.9.3) (2023-05-31) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.9.2](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.9.1...@standardnotes/event-store@1.9.2) (2023-05-31) - -### Bug Fixes - -* **home-server:** make the package publishable ([56a312f](https://github.com/standardnotes/server/commit/56a312f21730b32b766c358a5ceb0865722bac46)) - -## [1.9.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.9.0...@standardnotes/event-store@1.9.1) (2023-05-30) - -**Note:** Version bump only for package @standardnotes/event-store - -# [1.9.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.8.3...@standardnotes/event-store@1.9.0) (2023-05-30) - -### Features - -* upgrade to node 20.2.0 ([#616](https://github.com/standardnotes/server/issues/616)) ([a6b062f](https://github.com/standardnotes/server/commit/a6b062f638595537e1ece28bc79bded41d875e18)) - -## [1.8.3](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.8.2...@standardnotes/event-store@1.8.3) (2023-05-17) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.8.2](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.8.1...@standardnotes/event-store@1.8.2) (2023-05-15) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.8.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.8.0...@standardnotes/event-store@1.8.1) (2023-05-09) - -### Bug Fixes - -* node engine version requirement in package.json files ([62a0e89](https://github.com/standardnotes/server/commit/62a0e89748ab306566c4aa10b9dc0385fb0f1684)) - -# [1.8.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.7.11...@standardnotes/event-store@1.8.0) (2023-05-08) - -### Features - -* upgrade to node 20.1.0 ([#590](https://github.com/standardnotes/server/issues/590)) ([8fbb94d](https://github.com/standardnotes/server/commit/8fbb94d15ab664cca775ec71d51db465547c35ee)) - -## [1.7.11](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.7.10...@standardnotes/event-store@1.7.11) (2023-05-05) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.7.10](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.7.9...@standardnotes/event-store@1.7.10) (2023-04-27) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.7.9](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.7.8...@standardnotes/event-store@1.7.9) (2023-04-21) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.7.8](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.7.7...@standardnotes/event-store@1.7.8) (2023-04-21) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.7.7](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.7.6...@standardnotes/event-store@1.7.7) (2023-03-30) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.7.6](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.7.5...@standardnotes/event-store@1.7.6) (2023-03-10) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.7.5](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.7.4...@standardnotes/event-store@1.7.5) (2023-03-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.7.4](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.7.3...@standardnotes/event-store@1.7.4) (2023-02-23) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.7.3](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.7.2...@standardnotes/event-store@1.7.3) (2023-02-23) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.7.2](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.7.1...@standardnotes/event-store@1.7.2) (2023-02-21) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.7.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.7.0...@standardnotes/event-store@1.7.1) (2023-02-20) - -### Bug Fixes - -* **event-store:** add handling of email sent events ([d023a27](https://github.com/standardnotes/server/commit/d023a2737772e01eca8dc2c848ddebe43bb58734)) - -# [1.7.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.68...@standardnotes/event-store@1.7.0) (2023-02-15) - -### Features - -* optimize memory on server utilities ([881a696](https://github.com/standardnotes/server/commit/881a6967aca57d68795af0792114f848ddddf120)) - -## [1.6.68](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.67...@standardnotes/event-store@1.6.68) (2023-01-30) - -### Bug Fixes - -* sqs configuration for aws sdk v3 ([b54c331](https://github.com/standardnotes/server/commit/b54c331bef0d4ad1ba1111700dc9f1bf64c1ea51)) - -## [1.6.67](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.66...@standardnotes/event-store@1.6.67) (2023-01-25) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.66](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.65...@standardnotes/event-store@1.6.66) (2023-01-20) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.65](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.64...@standardnotes/event-store@1.6.65) (2023-01-20) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.64](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.63...@standardnotes/event-store@1.6.64) (2023-01-19) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.63](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.62...@standardnotes/event-store@1.6.63) (2023-01-19) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.62](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.61...@standardnotes/event-store@1.6.62) (2023-01-19) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.61](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.60...@standardnotes/event-store@1.6.61) (2023-01-19) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.60](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.59...@standardnotes/event-store@1.6.60) (2023-01-18) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.59](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.58...@standardnotes/event-store@1.6.59) (2023-01-17) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.58](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.57...@standardnotes/event-store@1.6.58) (2023-01-17) - -### Bug Fixes - -* allow to run typeorm in non-replica mode ([f73129c](https://github.com/standardnotes/server/commit/f73129cd7e7d6a9b8a63e5c80284467597557982)) - -## [1.6.57](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.56...@standardnotes/event-store@1.6.57) (2023-01-13) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.56](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.55...@standardnotes/event-store@1.6.56) (2022-12-20) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.55](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.54...@standardnotes/event-store@1.6.55) (2022-12-19) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.54](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.53...@standardnotes/event-store@1.6.54) (2022-12-19) - -### Bug Fixes - -* **event-store:** event handling cleanup ([79f5b54](https://github.com/standardnotes/server/commit/79f5b54228c9edc099a00919cf7e0b42dcd45b34)) - -## [1.6.53](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.52...@standardnotes/event-store@1.6.53) (2022-12-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.52](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.51...@standardnotes/event-store@1.6.52) (2022-12-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.51](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.50...@standardnotes/event-store@1.6.51) (2022-12-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.50](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.49...@standardnotes/event-store@1.6.50) (2022-12-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.49](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.48...@standardnotes/event-store@1.6.49) (2022-12-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.48](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.47...@standardnotes/event-store@1.6.48) (2022-12-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.47](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.46...@standardnotes/event-store@1.6.47) (2022-12-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.46](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.45...@standardnotes/event-store@1.6.46) (2022-12-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.45](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.44...@standardnotes/event-store@1.6.45) (2022-12-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.44](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.43...@standardnotes/event-store@1.6.44) (2022-12-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.43](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.42...@standardnotes/event-store@1.6.43) (2022-12-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.42](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.41...@standardnotes/event-store@1.6.42) (2022-12-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.41](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.40...@standardnotes/event-store@1.6.41) (2022-12-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.40](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.39...@standardnotes/event-store@1.6.40) (2022-12-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.39](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.38...@standardnotes/event-store@1.6.39) (2022-12-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.38](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.37...@standardnotes/event-store@1.6.38) (2022-12-07) - -### Bug Fixes - -* **event-store:** add email requested subscription ([eff0945](https://github.com/standardnotes/server/commit/eff09454c3a28b0124b74c2850fed19313b9e2b2)) -* **event-store:** reduce handlers ([473feba](https://github.com/standardnotes/server/commit/473feba6a8f008c9d73238be82e1d197082464c0)) - -## [1.6.37](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.36...@standardnotes/event-store@1.6.37) (2022-12-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.36](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.35...@standardnotes/event-store@1.6.36) (2022-12-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.35](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.34...@standardnotes/event-store@1.6.35) (2022-12-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.34](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.33...@standardnotes/event-store@1.6.34) (2022-12-06) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.33](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.32...@standardnotes/event-store@1.6.33) (2022-12-05) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.32](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.31...@standardnotes/event-store@1.6.32) (2022-11-30) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.31](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.30...@standardnotes/event-store@1.6.31) (2022-11-28) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.30](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.29...@standardnotes/event-store@1.6.30) (2022-11-25) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.29](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.28...@standardnotes/event-store@1.6.29) (2022-11-24) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.28](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.27...@standardnotes/event-store@1.6.28) (2022-11-23) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.27](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.26...@standardnotes/event-store@1.6.27) (2022-11-23) - -### Bug Fixes - -* binding of sns and sqs with additional config ([74bc791](https://github.com/standardnotes/server/commit/74bc79116bc50d9a5af1a558db1b7108dcda6d0e)) - -## [1.6.26](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.25...@standardnotes/event-store@1.6.26) (2022-11-22) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.25](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.24...@standardnotes/event-store@1.6.25) (2022-11-21) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.24](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.23...@standardnotes/event-store@1.6.24) (2022-11-18) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.23](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.22...@standardnotes/event-store@1.6.23) (2022-11-16) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.22](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.21...@standardnotes/event-store@1.6.22) (2022-11-14) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.21](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.18...@standardnotes/event-store@1.6.21) (2022-11-14) - -### Bug Fixes - -* versioning issue ([7ca377f](https://github.com/standardnotes/server/commit/7ca377f1b889379e6a43a66c0134bf266763516d)) - -## [1.6.18](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.17...@standardnotes/event-store@1.6.18) (2022-11-14) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.17](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.16...@standardnotes/event-store@1.6.17) (2022-11-11) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.16](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.15...@standardnotes/event-store@1.6.16) (2022-11-11) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.15](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.14...@standardnotes/event-store@1.6.15) (2022-11-10) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.14](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.13...@standardnotes/event-store@1.6.14) (2022-11-10) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.13](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.12...@standardnotes/event-store@1.6.13) (2022-11-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.12](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.11...@standardnotes/event-store@1.6.12) (2022-11-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.11](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.10...@standardnotes/event-store@1.6.11) (2022-11-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.10](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.9...@standardnotes/event-store@1.6.10) (2022-11-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.9](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.8...@standardnotes/event-store@1.6.9) (2022-11-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.8](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.7...@standardnotes/event-store@1.6.8) (2022-11-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.7](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.6...@standardnotes/event-store@1.6.7) (2022-11-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.6](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.5...@standardnotes/event-store@1.6.6) (2022-11-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.5](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.4...@standardnotes/event-store@1.6.5) (2022-11-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.4](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.3...@standardnotes/event-store@1.6.4) (2022-11-04) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.3](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.2...@standardnotes/event-store@1.6.3) (2022-11-04) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.2](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.1...@standardnotes/event-store@1.6.2) (2022-11-04) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.6.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.6.0...@standardnotes/event-store@1.6.1) (2022-11-03) - -**Note:** Version bump only for package @standardnotes/event-store - -# [1.6.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.5.8...@standardnotes/event-store@1.6.0) (2022-11-03) - -### Features - -* **event-store:** add discount events to event store ([eb53c38](https://github.com/standardnotes/server/commit/eb53c3896f8c64747e30901722c0bdc63125128f)) - -## [1.5.8](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.5.7...@standardnotes/event-store@1.5.8) (2022-11-02) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.5.7](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.5.6...@standardnotes/event-store@1.5.7) (2022-11-02) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.5.6](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.5.5...@standardnotes/event-store@1.5.6) (2022-11-01) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.5.5](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.5.4...@standardnotes/event-store@1.5.5) (2022-11-01) - -### Bug Fixes - -* force utf8mb4 charset on typeorm ([5160cc3](https://github.com/standardnotes/server/commit/5160cc36ddc9e30551d5ad40a9e210d87091eec3)) - -## [1.5.4](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.5.3...@standardnotes/event-store@1.5.4) (2022-10-31) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.5.3](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.5.2...@standardnotes/event-store@1.5.3) (2022-10-31) - -### Bug Fixes - -* **event-store:** add subscription reactivate handler ([9589403](https://github.com/standardnotes/server/commit/9589403c9de9304f1183789e111f6e4cf58cb7ff)) - -## [1.5.2](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.5.1...@standardnotes/event-store@1.5.2) (2022-10-31) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.5.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.5.0...@standardnotes/event-store@1.5.1) (2022-10-26) - -**Note:** Version bump only for package @standardnotes/event-store - -# [1.5.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.4.6...@standardnotes/event-store@1.5.0) (2022-10-19) - -### Bug Fixes - -* linter issues ([f1e63de](https://github.com/standardnotes/server/commit/f1e63de661bb1572b5d7210fad7c242b0c38e549)) - -### Features - -* building server applications in ARM64 architecture for Docker ([fd92866](https://github.com/standardnotes/server/commit/fd92866ba1a86b22769b23cc4c8387a83f87979a)) - -## [1.4.6](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.4.5...@standardnotes/event-store@1.4.6) (2022-10-13) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.4.5](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.4.4...@standardnotes/event-store@1.4.5) (2022-10-13) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.4.4](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.4.3...@standardnotes/event-store@1.4.4) (2022-10-11) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.4.3](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.4.2...@standardnotes/event-store@1.4.3) (2022-10-11) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.4.2](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.4.1...@standardnotes/event-store@1.4.2) (2022-10-10) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.4.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.4.0...@standardnotes/event-store@1.4.1) (2022-10-10) - -**Note:** Version bump only for package @standardnotes/event-store - -# [1.4.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.25...@standardnotes/event-store@1.4.0) (2022-10-10) - -### Features - -* add workspace invite created event ([db4c49c](https://github.com/standardnotes/server/commit/db4c49c57b81bfea6b8c6b8774c6a30e0561e154)) - -## [1.3.25](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.24...@standardnotes/event-store@1.3.25) (2022-10-10) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.24](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.23...@standardnotes/event-store@1.3.24) (2022-10-07) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.23](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.22...@standardnotes/event-store@1.3.23) (2022-10-06) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.22](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.21...@standardnotes/event-store@1.3.22) (2022-10-05) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.21](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.20...@standardnotes/event-store@1.3.21) (2022-10-04) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.20](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.19...@standardnotes/event-store@1.3.20) (2022-10-04) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.19](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.18...@standardnotes/event-store@1.3.19) (2022-10-03) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.18](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.17...@standardnotes/event-store@1.3.18) (2022-09-28) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.17](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.16...@standardnotes/event-store@1.3.17) (2022-09-21) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.16](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.15...@standardnotes/event-store@1.3.16) (2022-09-19) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.15](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.14...@standardnotes/event-store@1.3.15) (2022-09-16) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.14](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.13...@standardnotes/event-store@1.3.14) (2022-09-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.13](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.12...@standardnotes/event-store@1.3.13) (2022-09-09) - -### Bug Fixes - -* **event-store:** add missing event subscriptions ([432d071](https://github.com/standardnotes/server/commit/432d071ec88a49f90513be6c55a06005a471b174)) - -## [1.3.12](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.11...@standardnotes/event-store@1.3.12) (2022-09-08) - -### Bug Fixes - -* **event-store:** add listening to refund processed event ([73e1ea7](https://github.com/standardnotes/server/commit/73e1ea7f93b7d7956dd4a82298098e81ff9c85b1)) - -## [1.3.11](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.10...@standardnotes/event-store@1.3.11) (2022-09-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.10](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.9...@standardnotes/event-store@1.3.10) (2022-09-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.9](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.8...@standardnotes/event-store@1.3.9) (2022-09-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.8](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.7...@standardnotes/event-store@1.3.8) (2022-09-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.7](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.6...@standardnotes/event-store@1.3.7) (2022-09-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.6](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.5...@standardnotes/event-store@1.3.6) (2022-09-06) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.5](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.4...@standardnotes/event-store@1.3.5) (2022-09-06) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.4](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.3...@standardnotes/event-store@1.3.4) (2022-09-06) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.3](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.2...@standardnotes/event-store@1.3.3) (2022-09-06) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.2](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.1...@standardnotes/event-store@1.3.2) (2022-09-05) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.3.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.3.0...@standardnotes/event-store@1.3.1) (2022-09-05) - -**Note:** Version bump only for package @standardnotes/event-store - -# [1.3.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.2.3...@standardnotes/event-store@1.3.0) (2022-09-02) - -### Features - -* **event-store:** add listening to subscription reverts ([ef1e2bb](https://github.com/standardnotes/server/commit/ef1e2bb5edb6df191d22a676e365aed3511b3960)) - -## [1.2.3](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.2.2...@standardnotes/event-store@1.2.3) (2022-09-01) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.2.2](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.2.1...@standardnotes/event-store@1.2.2) (2022-09-01) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.2.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.2.0...@standardnotes/event-store@1.2.1) (2022-08-30) - -**Note:** Version bump only for package @standardnotes/event-store - -# [1.2.0](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.33...@standardnotes/event-store@1.2.0) (2022-08-30) - -### Features - -* **event-store:** add account claim events subscription ([dd6bec8](https://github.com/standardnotes/server/commit/dd6bec8a0c957b87ccf4d1fb0636fa3f56a4525e)) - -## [1.1.33](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.32...@standardnotes/event-store@1.1.33) (2022-08-15) - -### Bug Fixes - -* **event-store:** add payment events handling ([3477c81](https://github.com/standardnotes/server/commit/3477c81d37e6cb92e76d59b1128daac702a4a7ae)) - -## [1.1.32](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.31...@standardnotes/event-store@1.1.32) (2022-08-15) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.31](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.30...@standardnotes/event-store@1.1.31) (2022-08-12) - -### Bug Fixes - -* **event-store:** add listening to offline subscription token created events ([1ba5ba5](https://github.com/standardnotes/server/commit/1ba5ba5ff6f7afe5c8e2e929555042a01f2465ac)) - -## [1.1.30](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.29...@standardnotes/event-store@1.1.30) (2022-08-10) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.29](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.28...@standardnotes/event-store@1.1.29) (2022-08-09) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.28](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.27...@standardnotes/event-store@1.1.28) (2022-08-08) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.27](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.26...@standardnotes/event-store@1.1.27) (2022-07-26) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.26](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.25...@standardnotes/event-store@1.1.26) (2022-07-25) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.25](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.24...@standardnotes/event-store@1.1.25) (2022-07-15) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.24](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.23...@standardnotes/event-store@1.1.24) (2022-07-15) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.23](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.22...@standardnotes/event-store@1.1.23) (2022-07-15) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.22](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.21...@standardnotes/event-store@1.1.22) (2022-07-14) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.21](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.20...@standardnotes/event-store@1.1.21) (2022-07-14) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.20](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.19...@standardnotes/event-store@1.1.20) (2022-07-14) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.19](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.18...@standardnotes/event-store@1.1.19) (2022-07-14) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.18](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.17...@standardnotes/event-store@1.1.18) (2022-07-14) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.17](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.16...@standardnotes/event-store@1.1.17) (2022-07-14) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.16](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.15...@standardnotes/event-store@1.1.16) (2022-07-14) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.15](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.14...@standardnotes/event-store@1.1.15) (2022-07-13) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.14](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.13...@standardnotes/event-store@1.1.14) (2022-07-13) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.13](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.12...@standardnotes/event-store@1.1.13) (2022-07-13) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.12](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.11...@standardnotes/event-store@1.1.12) (2022-07-13) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.11](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.10...@standardnotes/event-store@1.1.11) (2022-07-13) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.10](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.9...@standardnotes/event-store@1.1.10) (2022-07-13) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.9](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.8...@standardnotes/event-store@1.1.9) (2022-07-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.8](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.7...@standardnotes/event-store@1.1.8) (2022-07-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.7](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.6...@standardnotes/event-store@1.1.7) (2022-07-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.6](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.5...@standardnotes/event-store@1.1.6) (2022-07-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.5](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.4...@standardnotes/event-store@1.1.5) (2022-07-12) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.4](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.3...@standardnotes/event-store@1.1.4) (2022-07-11) - -### Bug Fixes - -* add email backup tracing events ([239d4ce](https://github.com/standardnotes/server/commit/239d4ce4eca6a0c5dc0e1346829572a7240569cc)) - -## [1.1.3](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.2...@standardnotes/event-store@1.1.3) (2022-07-11) - -### Bug Fixes - -* order of bindings ([88d16d5](https://github.com/standardnotes/server/commit/88d16d53925761abed2cb8dc4c7aa5b4b5009357)) - -## [1.1.2](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.1...@standardnotes/event-store@1.1.2) (2022-07-11) - -**Note:** Version bump only for package @standardnotes/event-store - -## [1.1.1](https://github.com/standardnotes/server/compare/@standardnotes/event-store@1.1.0...@standardnotes/event-store@1.1.1) (2022-07-11) - -### Bug Fixes - -* optional migrations path ([3fc11c5](https://github.com/standardnotes/server/commit/3fc11c538111348723a92f838297ebd821566eb4)) - -# 1.1.0 (2022-07-11) - -### Features - -* add event store package ([84ff915](https://github.com/standardnotes/server/commit/84ff915a565e8e64410c4bf97a30d359649825c7)) diff --git a/packages/event-store/Dockerfile b/packages/event-store/Dockerfile deleted file mode 100644 index 0bf4d4f6d..000000000 --- a/packages/event-store/Dockerfile +++ /dev/null @@ -1,17 +0,0 @@ -FROM node:20.6.1-alpine - -RUN apk add --update \ - curl \ - && rm -rf /var/cache/apk/* - -ENV NODE_ENV production - -RUN corepack enable - -COPY ./ /workspace - -WORKDIR /workspace/packages/event-store - -ENTRYPOINT [ "/workspace/packages/event-store/docker/entrypoint.sh" ] - -CMD [ "start-worker" ] diff --git a/packages/event-store/bin/worker.ts b/packages/event-store/bin/worker.ts deleted file mode 100644 index ac53b23e6..000000000 --- a/packages/event-store/bin/worker.ts +++ /dev/null @@ -1,21 +0,0 @@ -import 'reflect-metadata' - -import { Logger } from 'winston' - -import { ContainerConfigLoader } from '../src/Bootstrap/Container' -import TYPES from '../src/Bootstrap/Types' -import { Env } from '../src/Bootstrap/Env' -import { DomainEventSubscriberFactoryInterface } from '@standardnotes/domain-events' - -const container = new ContainerConfigLoader() -void container.load().then((container) => { - const env: Env = new Env() - env.load() - - const logger: Logger = container.get(TYPES.Logger) - - logger.info('Starting worker...') - - const subscriberFactory: DomainEventSubscriberFactoryInterface = container.get(TYPES.DomainEventSubscriberFactory) - subscriberFactory.create().start() -}) diff --git a/packages/event-store/docker/entrypoint-worker.js b/packages/event-store/docker/entrypoint-worker.js deleted file mode 100644 index daf3cf9da..000000000 --- a/packages/event-store/docker/entrypoint-worker.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict' - -const path = require('path') - -const pnp = require(path.normalize(path.resolve(__dirname, '../../..', '.pnp.cjs'))).setup() - -const index = require(path.normalize(path.resolve(__dirname, '../dist/bin/worker.js'))) - -Object.defineProperty(exports, '__esModule', { value: true }) - -exports.default = index diff --git a/packages/event-store/docker/entrypoint.sh b/packages/event-store/docker/entrypoint.sh deleted file mode 100755 index dfa84c262..000000000 --- a/packages/event-store/docker/entrypoint.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh -set -e - -COMMAND=$1 && shift 1 - -case "$COMMAND" in - 'start-worker' ) - echo "Starting Worker..." - exec node docker/entrypoint-worker.js - ;; - - * ) - echo "Unknown command" - ;; -esac - -exec "$@" diff --git a/packages/event-store/jest.config.js b/packages/event-store/jest.config.js deleted file mode 100644 index c4aac0d8c..000000000 --- a/packages/event-store/jest.config.js +++ /dev/null @@ -1,12 +0,0 @@ -// eslint-disable-next-line @typescript-eslint/no-var-requires -const base = require('../../jest.config') -const { defaults: tsjPreset } = require('ts-jest/presets') - -module.exports = { - ...base, - transform: { - ...tsjPreset.transform, - }, - coveragePathIgnorePatterns: ['/Bootstrap/'], - setupFilesAfterEnv: ['./test-setup.ts'], -} diff --git a/packages/event-store/linter.tsconfig.json b/packages/event-store/linter.tsconfig.json deleted file mode 100644 index 67d92b038..000000000 --- a/packages/event-store/linter.tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "./tsconfig.json", - "exclude": ["dist", "test-setup.ts"] -} diff --git a/packages/event-store/migrations/1639394147420-init_database.ts b/packages/event-store/migrations/1639394147420-init_database.ts deleted file mode 100644 index 14ab95964..000000000 --- a/packages/event-store/migrations/1639394147420-init_database.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { MigrationInterface, QueryRunner } from 'typeorm' - -export class initDatabase1639394147420 implements MigrationInterface { - name = 'initDatabase1639394147420' - - public async up(queryRunner: QueryRunner): Promise { - await queryRunner.query( - 'CREATE TABLE `events` (`uuid` varchar(36) NOT NULL, `user_identifier` varchar(255) NOT NULL, `user_identifier_type` varchar(255) NOT NULL, `event_type` varchar(255) NOT NULL, `event_payload` text NOT NULL, `timestamp` bigint NOT NULL, INDEX `index_events_on_user_identifier` (`user_identifier`), PRIMARY KEY (`uuid`)) ENGINE=InnoDB', - ) - } - - public async down(queryRunner: QueryRunner): Promise { - await queryRunner.query('DROP INDEX `index_events_on_user_identifier` ON `events`') - await queryRunner.query('DROP TABLE `events`') - } -} diff --git a/packages/event-store/package.json b/packages/event-store/package.json deleted file mode 100644 index 70fe68117..000000000 --- a/packages/event-store/package.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "name": "@standardnotes/event-store", - "version": "1.14.0", - "description": "Event Store Service", - "private": true, - "main": "dist/src/index.js", - "typings": "dist/src/index.d.ts", - "engines": { - "node": ">=18.0.0 <21.0.0" - }, - "scripts": { - "clean": "rm -fr dist", - "build": "tsc --build", - "lint": "eslint . --ext .ts", - "pretest": "yarn lint && yarn build", - "test": "jest --coverage --no-cache --config=./jest.config.js --maxWorkers=50%", - "worker": "yarn node dist/bin/worker.js" - }, - "author": "Karol Sójko ", - "license": "AGPL-3.0-or-later", - "devDependencies": { - "@types/ioredis": "^5.0.0", - "@types/jest": "^29.5.1", - "@types/nodemailer": "^6.4.1", - "@typescript-eslint/eslint-plugin": "^6.5.0", - "@typescript-eslint/parser": "^6.5.0", - "eslint": "^8.39.0", - "eslint-plugin-prettier": "^5.0.0", - "jest": "^29.5.0", - "prettier": "^3.0.3", - "ts-jest": "^29.1.0", - "typescript": "^5.0.4" - }, - "dependencies": { - "@aws-sdk/client-sqs": "^3.427.0", - "@standardnotes/domain-core": "workspace:^", - "@standardnotes/domain-events": "workspace:*", - "@standardnotes/domain-events-infra": "workspace:*", - "@standardnotes/time": "workspace:*", - "dotenv": "^16.0.1", - "inversify": "^6.0.1", - "ioredis": "^5.2.4", - "mysql2": "^3.0.1", - "reflect-metadata": "0.1.13", - "typeorm": "^0.3.17", - "winston": "^3.8.1" - } -} diff --git a/packages/event-store/src/Bootstrap/Container.ts b/packages/event-store/src/Bootstrap/Container.ts deleted file mode 100644 index fb12f78e3..000000000 --- a/packages/event-store/src/Bootstrap/Container.ts +++ /dev/null @@ -1,110 +0,0 @@ -import * as winston from 'winston' -import { SQSClient, SQSClientConfig } from '@aws-sdk/client-sqs' -import { Container } from 'inversify' -import { Event } from '../Domain/Event/Event' -import { Env } from './Env' -import TYPES from './Types' -import { - DomainEventHandlerInterface, - DomainEventMessageHandlerInterface, - DomainEventSubscriberFactoryInterface, -} from '@standardnotes/domain-events' -import { SQSDomainEventSubscriberFactory, SQSEventMessageHandler } from '@standardnotes/domain-events-infra' -import { Timer, TimerInterface } from '@standardnotes/time' -import { EventHandler } from '../Domain/Handler/EventHandler' -import { AppDataSource } from './DataSource' -import { Repository } from 'typeorm' - -export class ContainerConfigLoader { - async load(): Promise { - const env: Env = new Env() - env.load() - - const container = new Container() - - await AppDataSource.initialize() - - if (env.get('SQS_QUEUE_URL', true)) { - const sqsConfig: SQSClientConfig = { - region: env.get('SQS_AWS_REGION', true), - } - if (env.get('SQS_ENDPOINT', true)) { - sqsConfig.endpoint = env.get('SQS_ENDPOINT', true) - } - if (env.get('SQS_ACCESS_KEY_ID', true) && env.get('SQS_SECRET_ACCESS_KEY', true)) { - sqsConfig.credentials = { - accessKeyId: env.get('SQS_ACCESS_KEY_ID', true), - secretAccessKey: env.get('SQS_SECRET_ACCESS_KEY', true), - } - } - container.bind(TYPES.SQS).toConstantValue(new SQSClient(sqsConfig)) - } - - const logger = winston.createLogger({ - level: env.get('LOG_LEVEL', true) || 'info', - format: winston.format.combine(winston.format.splat(), winston.format.json()), - transports: [new winston.transports.Console({ level: env.get('LOG_LEVEL', true) || 'info' })], - }) - container.bind(TYPES.Logger).toConstantValue(logger) - - container.bind(TYPES.Timer).toConstantValue(new Timer()) - - // env vars - container.bind(TYPES.SQS_AWS_REGION).toConstantValue(env.get('SQS_AWS_REGION')) - container.bind(TYPES.SQS_QUEUE_URL).toConstantValue(env.get('SQS_QUEUE_URL')) - - // ORM - container.bind>(TYPES.ORMEventRepository).toConstantValue(AppDataSource.getRepository(Event)) - - // Handlers - container.bind(TYPES.EventHandler).to(EventHandler) - - const eventHandlers: Map = new Map([ - ['USER_REGISTERED', container.get(TYPES.EventHandler)], - ['ACCOUNT_DELETION_REQUESTED', container.get(TYPES.EventHandler)], - ['SUBSCRIPTION_PURCHASED', container.get(TYPES.EventHandler)], - ['SUBSCRIPTION_CANCELLED', container.get(TYPES.EventHandler)], - ['SUBSCRIPTION_RENEWED', container.get(TYPES.EventHandler)], - ['SUBSCRIPTION_REFUNDED', container.get(TYPES.EventHandler)], - ['SUBSCRIPTION_SYNC_REQUESTED', container.get(TYPES.EventHandler)], - ['SUBSCRIPTION_EXPIRED', container.get(TYPES.EventHandler)], - ['EXTENSION_KEY_GRANTED', container.get(TYPES.EventHandler)], - ['SUBSCRIPTION_REASSIGNED', container.get(TYPES.EventHandler)], - ['USER_EMAIL_CHANGED', container.get(TYPES.EventHandler)], - ['FILE_UPLOADED', container.get(TYPES.EventHandler)], - ['FILE_REMOVED', container.get(TYPES.EventHandler)], - ['LISTED_ACCOUNT_REQUESTED', container.get(TYPES.EventHandler)], - ['LISTED_ACCOUNT_CREATED', container.get(TYPES.EventHandler)], - ['LISTED_ACCOUNT_DELETED', container.get(TYPES.EventHandler)], - ['EMAIL_REQUESTED', container.get(TYPES.EventHandler)], - ['EMAIL_SENT', container.get(TYPES.EventHandler)], - ['SHARED_SUBSCRIPTION_INVITATION_CREATED', container.get(TYPES.EventHandler)], - ['EMAIL_BACKUP_REQUESTED', container.get(TYPES.EventHandler)], - ['PAYMENT_FAILED', container.get(TYPES.EventHandler)], - ['PAYMENT_SUCCESS', container.get(TYPES.EventHandler)], - ['SUBSCRIPTION_REVERT_REQUESTED', container.get(TYPES.EventHandler)], - ['REFUND_PROCESSED', container.get(TYPES.EventHandler)], - ['DISCOUNT_APPLY_REQUESTED', container.get(TYPES.EventHandler)], - ['DISCOUNT_WITHDRAW_REQUESTED', container.get(TYPES.EventHandler)], - ['SUBSCRIPTION_REACTIVATED', container.get(TYPES.EventHandler)], - ['EXIT_DISCOUNT_APPLY_REQUESTED', container.get(TYPES.EventHandler)], - ['EXIT_DISCOUNT_APPLIED', container.get(TYPES.EventHandler)], - ['EXIT_DISCOUNT_WITHDRAW_REQUESTED', container.get(TYPES.EventHandler)], - ]) - - container - .bind(TYPES.DomainEventMessageHandler) - .toConstantValue(new SQSEventMessageHandler(eventHandlers, container.get(TYPES.Logger))) - container - .bind(TYPES.DomainEventSubscriberFactory) - .toConstantValue( - new SQSDomainEventSubscriberFactory( - container.get(TYPES.SQS), - container.get(TYPES.SQS_QUEUE_URL), - container.get(TYPES.DomainEventMessageHandler), - ), - ) - - return container - } -} diff --git a/packages/event-store/src/Bootstrap/DataSource.ts b/packages/event-store/src/Bootstrap/DataSource.ts deleted file mode 100644 index 122727c9d..000000000 --- a/packages/event-store/src/Bootstrap/DataSource.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { DataSource, LoggerOptions } from 'typeorm' -import { Event } from '../Domain/Event/Event' -import { Env } from './Env' - -const env: Env = new Env() -env.load() - -const maxQueryExecutionTime = env.get('DB_MAX_QUERY_EXECUTION_TIME', true) - ? +env.get('DB_MAX_QUERY_EXECUTION_TIME', true) - : 45_000 - -const inReplicaMode = env.get('DB_REPLICA_HOST', true) ? true : false - -const replicationConfig = { - master: { - host: env.get('DB_HOST'), - port: parseInt(env.get('DB_PORT')), - username: env.get('DB_USERNAME'), - password: env.get('DB_PASSWORD'), - database: env.get('DB_DATABASE'), - }, - slaves: [ - { - host: env.get('DB_REPLICA_HOST', true), - port: parseInt(env.get('DB_PORT')), - username: env.get('DB_USERNAME'), - password: env.get('DB_PASSWORD'), - database: env.get('DB_DATABASE'), - }, - ], - removeNodeErrorCount: 10, - restoreNodeTimeout: 5, -} - -export const AppDataSource = new DataSource({ - type: 'mysql', - charset: 'utf8mb4', - supportBigNumbers: true, - bigNumberStrings: false, - maxQueryExecutionTime, - replication: inReplicaMode ? replicationConfig : undefined, - host: inReplicaMode ? undefined : env.get('DB_HOST'), - port: inReplicaMode ? undefined : parseInt(env.get('DB_PORT')), - username: inReplicaMode ? undefined : env.get('DB_USERNAME'), - password: inReplicaMode ? undefined : env.get('DB_PASSWORD'), - database: inReplicaMode ? undefined : env.get('DB_DATABASE'), - entities: [Event], - migrations: [env.get('DB_MIGRATIONS_PATH', true) ?? 'dist/migrations/*.js'], - migrationsRun: true, - logging: env.get('DB_DEBUG_LEVEL'), -}) diff --git a/packages/event-store/src/Bootstrap/Env.ts b/packages/event-store/src/Bootstrap/Env.ts deleted file mode 100644 index 175ddbff1..000000000 --- a/packages/event-store/src/Bootstrap/Env.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { AbstractEnv } from '@standardnotes/domain-core' -import { config, DotenvParseOutput } from 'dotenv' - -export class Env extends AbstractEnv { - load(): void { - const output = config() - this.env = output.parsed - } -} diff --git a/packages/event-store/src/Bootstrap/Types.ts b/packages/event-store/src/Bootstrap/Types.ts deleted file mode 100644 index 71f42fde0..000000000 --- a/packages/event-store/src/Bootstrap/Types.ts +++ /dev/null @@ -1,17 +0,0 @@ -const TYPES = { - Logger: Symbol.for('Logger'), - SQS: Symbol.for('SQS'), - // env vars - SQS_QUEUE_URL: Symbol.for('SQS_QUEUE_URL'), - SQS_AWS_REGION: Symbol.for('SQS_AWS_REGION'), - // Handlers - DomainEventSubscriberFactory: Symbol.for('DomainEventSubscriberFactory'), - DomainEventMessageHandler: Symbol.for('DomainEventMessageHandler'), - EventHandler: Symbol.for('EventHandler'), - // ORM - ORMEventRepository: Symbol.for('ORMEventRepository'), - // Services - Timer: Symbol.for('Timer'), -} - -export default TYPES diff --git a/packages/event-store/src/Domain/Event/Event.ts b/packages/event-store/src/Domain/Event/Event.ts deleted file mode 100644 index 63014a144..000000000 --- a/packages/event-store/src/Domain/Event/Event.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { Column, Entity, Index, PrimaryGeneratedColumn } from 'typeorm' - -@Entity({ name: 'events' }) -export class Event { - @PrimaryGeneratedColumn('uuid') - declare uuid: string - - @Column({ - name: 'user_identifier', - length: 255, - }) - @Index('index_events_on_user_identifier') - declare userIdentifier: string - - @Column({ - name: 'user_identifier_type', - length: 255, - }) - declare userIdentifierType: string - - @Column({ - name: 'event_type', - length: 255, - }) - declare eventType: string - - @Column({ - name: 'event_payload', - type: 'text', - }) - declare eventPayload: string - - @Column({ - name: 'timestamp', - type: 'bigint', - }) - declare timestamp: number -} diff --git a/packages/event-store/src/Domain/Handler/EventHandler.spec.ts b/packages/event-store/src/Domain/Handler/EventHandler.spec.ts deleted file mode 100644 index e8ac5ace5..000000000 --- a/packages/event-store/src/Domain/Handler/EventHandler.spec.ts +++ /dev/null @@ -1,76 +0,0 @@ -import 'reflect-metadata' - -import { TimerInterface } from '@standardnotes/time' -import { Repository } from 'typeorm' -import { EventHandler } from './EventHandler' -import { Event } from '../Event/Event' -import { Logger } from 'winston' -import { DomainEventInterface } from '@standardnotes/domain-events' - -describe('EventHandler', () => { - let timer: TimerInterface - let repository: Repository - let logger: Logger - - const createHandler = () => new EventHandler(timer, repository, logger) - - beforeEach(() => { - timer = {} as jest.Mocked - timer.convertStringDateToMicroseconds = jest.fn().mockReturnValue(1) - - repository = {} as jest.Mocked> - repository.save = jest.fn() - - logger = {} as jest.Mocked - logger.debug = jest.fn() - logger.error = jest.fn() - }) - - it('should persist as event in the store', async () => { - const event = { - type: 'test', - createdAt: new Date(2), - meta: { - correlation: { - userIdentifier: '1-2-3', - userIdentifierType: 'uuid', - }, - }, - payload: { - foo: 'bar', - }, - } as jest.Mocked - await createHandler().handle(event) - - expect(repository.save).toHaveBeenCalledWith({ - eventType: 'test', - timestamp: 1, - userIdentifier: '1-2-3', - userIdentifierType: 'uuid', - eventPayload: '{"foo":"bar"}', - }) - }) - - it('should inform about failure to saven the event in the store', async () => { - const event = { - type: 'test', - createdAt: new Date(2), - meta: { - correlation: { - userIdentifier: '1-2-3', - userIdentifierType: 'uuid', - }, - }, - payload: { - foo: 'bar', - }, - } as jest.Mocked - repository.save = jest.fn().mockImplementation(() => { - throw new Error('Ooops') - }) - - await createHandler().handle(event) - - expect(logger.error).toHaveBeenCalledWith('Could not store event %O in the event store: %s', event, 'Ooops') - }) -}) diff --git a/packages/event-store/src/Domain/Handler/EventHandler.ts b/packages/event-store/src/Domain/Handler/EventHandler.ts deleted file mode 100644 index e69f145c7..000000000 --- a/packages/event-store/src/Domain/Handler/EventHandler.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { DomainEventHandlerInterface, DomainEventInterface } from '@standardnotes/domain-events' -import { TimerInterface } from '@standardnotes/time' -import { inject, injectable } from 'inversify' -import { Repository } from 'typeorm' -import { Logger } from 'winston' -import TYPES from '../../Bootstrap/Types' -import { Event } from '../Event/Event' - -@injectable() -export class EventHandler implements DomainEventHandlerInterface { - constructor( - @inject(TYPES.Timer) private timer: TimerInterface, - @inject(TYPES.ORMEventRepository) private eventRepository: Repository, - @inject(TYPES.Logger) private logger: Logger, - ) {} - - async handle(event: DomainEventInterface): Promise { - this.logger.debug('Handling event: %O', event) - - try { - const storedEvent = new Event() - storedEvent.eventType = event.type - storedEvent.userIdentifier = event.meta.correlation.userIdentifier - storedEvent.userIdentifierType = event.meta.correlation.userIdentifierType - storedEvent.eventPayload = JSON.stringify(event.payload) - storedEvent.timestamp = this.timer.convertStringDateToMicroseconds(event.createdAt.toString()) - - await this.eventRepository.save(storedEvent) - } catch (error) { - this.logger.error('Could not store event %O in the event store: %s', event, (error as Error).message) - } - } -} diff --git a/packages/event-store/test-setup.ts b/packages/event-store/test-setup.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/packages/event-store/tsconfig.json b/packages/event-store/tsconfig.json deleted file mode 100644 index d87b89eeb..000000000 --- a/packages/event-store/tsconfig.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "extends": "../../tsconfig.json", - "compilerOptions": { - "composite": true, - "outDir": "./dist", - }, - "include": [ - "src/**/*", - "bin/**/*", - "migrations/**/*", - ], - "references": [] -} diff --git a/tsconfig.json b/tsconfig.json index 5aea670ea..cabd6336f 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -44,9 +44,6 @@ { "path": "./packages/domain-events-infra" }, - { - "path": "./packages/event-store" - }, { "path": "./packages/files" }, diff --git a/yarn.lock b/yarn.lock index e9fc7bb64..ff7f96bb4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5442,36 +5442,6 @@ __metadata: languageName: unknown linkType: soft -"@standardnotes/event-store@workspace:packages/event-store": - version: 0.0.0-use.local - resolution: "@standardnotes/event-store@workspace:packages/event-store" - dependencies: - "@aws-sdk/client-sqs": "npm:^3.427.0" - "@standardnotes/domain-core": "workspace:^" - "@standardnotes/domain-events": "workspace:*" - "@standardnotes/domain-events-infra": "workspace:*" - "@standardnotes/time": "workspace:*" - "@types/ioredis": "npm:^5.0.0" - "@types/jest": "npm:^29.5.1" - "@types/nodemailer": "npm:^6.4.1" - "@typescript-eslint/eslint-plugin": "npm:^6.5.0" - "@typescript-eslint/parser": "npm:^6.5.0" - dotenv: "npm:^16.0.1" - eslint: "npm:^8.39.0" - eslint-plugin-prettier: "npm:^5.0.0" - inversify: "npm:^6.0.1" - ioredis: "npm:^5.2.4" - jest: "npm:^29.5.0" - mysql2: "npm:^3.0.1" - prettier: "npm:^3.0.3" - reflect-metadata: "npm:0.1.13" - ts-jest: "npm:^29.1.0" - typeorm: "npm:^0.3.17" - typescript: "npm:^5.0.4" - winston: "npm:^3.8.1" - languageName: unknown - linkType: soft - "@standardnotes/features@npm:1.59.7, @standardnotes/features@npm:^1.59.7": version: 1.59.7 resolution: "@standardnotes/features@npm:1.59.7" @@ -6257,15 +6227,6 @@ __metadata: languageName: node linkType: hard -"@types/nodemailer@npm:^6.4.1": - version: 6.4.8 - resolution: "@types/nodemailer@npm:6.4.8" - dependencies: - "@types/node": "npm:*" - checksum: d5afdd77ef05d207438d124fa0a221ed6c062c4df6c624d3966252ba7da3ab6dd23f1e3423818cc992dc85e129f4a36db601eac46c932b78096b112f61a03814 - languageName: node - linkType: hard - "@types/normalize-package-data@npm:^2.4.0": version: 2.4.1 resolution: "@types/normalize-package-data@npm:2.4.1"