diff --git a/README.md b/README.md index 5271722..903ec45 100644 --- a/README.md +++ b/README.md @@ -92,7 +92,7 @@ type UserState = { }; ``` -### Aggreates +### Aggregates Event aggregates takes a entity stream and reduces it to a wanted state. It works on the same conceptual grounds as the standard reducer but resolved states using an aggregate instead of folding onto a state object. diff --git a/deno.json b/deno.json index 1350dfc..ec118e8 100644 --- a/deno.json +++ b/deno.json @@ -1,6 +1,6 @@ { "name": "@valkyr/event-store", - "version": "2.0.0-beta.6", + "version": "2.0.0", "exports": { ".": "./mod.ts", "./browser": "./adapters/browser/adapter.ts", diff --git a/deno.lock b/deno.lock index 46c3698..fe615f6 100644 --- a/deno.lock +++ b/deno.lock @@ -1,23 +1,24 @@ { "version": "5", "specifiers": { - "npm:@jsr/std__assert@1": "1.0.13", + "npm:@jsr/std__assert@1": "1.0.14", "npm:@jsr/std__async@1": "1.0.14", "npm:@jsr/std__testing@1": "1.0.15", + "npm:@jsr/valkyr__db@2": "2.0.0", "npm:@jsr/valkyr__testcontainers@2": "2.0.2", "npm:@valkyr/db@1.0.1": "1.0.1", - "npm:eslint-plugin-simple-import-sort@12": "12.1.1_eslint@9.33.0", - "npm:eslint@9": "9.33.0", - "npm:fake-indexeddb@6": "6.1.0", - "npm:mongodb@6": "6.18.0", + "npm:eslint-plugin-simple-import-sort@12": "12.1.1_eslint@9.35.0", + "npm:eslint@9": "9.35.0", + "npm:fake-indexeddb@6": "6.2.2", + "npm:mongodb@6": "6.19.0", "npm:postgres@3": "3.4.7", "npm:prettier@3": "3.6.2", - "npm:typescript-eslint@8": "8.39.0_eslint@9.33.0_typescript@5.9.2_@typescript-eslint+parser@8.39.0__eslint@9.33.0__typescript@5.9.2", - "npm:zod@4": "4.0.17" + "npm:typescript-eslint@8": "8.43.0_eslint@9.35.0_typescript@5.9.2_@typescript-eslint+parser@8.43.0__eslint@9.35.0__typescript@5.9.2", + "npm:zod@4": "4.1.5" }, "npm": { - "@eslint-community/eslint-utils@4.7.0_eslint@9.33.0": { - "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", + "@eslint-community/eslint-utils@4.9.0_eslint@9.35.0": { + "integrity": "sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==", "dependencies": [ "eslint", "eslint-visitor-keys@3.4.3" @@ -57,8 +58,8 @@ "strip-json-comments" ] }, - "@eslint/js@9.33.0": { - "integrity": "sha512-5K1/mKhWaMfreBGJTwval43JJmkip0RmM+3+IuqupeSKNC/Th2Kc7ucaq5ovTSra/OOKB9c58CGSz3QMVbWt0A==" + "@eslint/js@9.35.0": { + "integrity": "sha512-30iXE9whjlILfWobBkNerJo+TXYsgVM5ERQwMcMKCHckHflCmf7wXDAHlARoWnh0s1U72WqlbeyE7iAcCzuCPw==" }, "@eslint/object-schema@2.1.6": { "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==" @@ -73,28 +74,25 @@ "@humanfs/core@0.19.1": { "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==" }, - "@humanfs/node@0.16.6": { - "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", + "@humanfs/node@0.16.7": { + "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", "dependencies": [ "@humanfs/core", - "@humanwhocodes/retry@0.3.1" + "@humanwhocodes/retry" ] }, "@humanwhocodes/module-importer@1.0.1": { "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==" }, - "@humanwhocodes/retry@0.3.1": { - "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==" - }, "@humanwhocodes/retry@0.4.3": { "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==" }, - "@jsr/std__assert@1.0.13": { - "integrity": "sha512-rZ44REoi2/p+gqu8OfkcNeaTOSiG1kD6v8gyA0YjkXsOkDsiGw9g8h7JuGC/OD7GgOVgTEY+9Cih49Y18rkrCQ==", + "@jsr/std__assert@1.0.14": { + "integrity": "sha512-BcjBimpxuy7mXjWo7sZ3TtPitx91w3UqssyY92RmJIuoMGYywZRGxaxqK9/oybljbZbZpPOSrkgQI9wKpgZ9vQ==", "dependencies": [ "@jsr/std__internal" ], - "tarball": "https://npm.jsr.io/~/11/@jsr/std__assert/1.0.13.tgz" + "tarball": "https://npm.jsr.io/~/11/@jsr/std__assert/1.0.14.tgz" }, "@jsr/std__async@1.0.14": { "integrity": "sha512-aIG8W3TOmW+lKdAJA5w56qASu9EiUmBXbhW6eAlSEUBid+KVESGqQygFFg+awt/c8K+qobVM6M/u3SbIy0NyUQ==", @@ -119,16 +117,16 @@ "integrity": "sha512-fmD6yKep/sMnB2yPQU/REZG7Z4N9SZwcUBNnceo4QkXk67l3JEfxHoROQ/YHeVSOmq6x55Ra6nuMjz2ib3nj3g==", "tarball": "https://npm.jsr.io/~/11/@jsr/std__internal/1.0.10.tgz" }, - "@jsr/std__net@1.0.4": { - "integrity": "sha512-KJGU8ZpQ70sMW2Zk+wU3wFUkggS9lTLfRFBygnV9VaK8KI+1ggiqtB06rH4a14CNRGM9y46Mn/ZCbQUd4Q45Jg==", - "tarball": "https://npm.jsr.io/~/11/@jsr/std__net/1.0.4.tgz" + "@jsr/std__net@1.0.6": { + "integrity": "sha512-mh27Fw4UMCjGSIMoOhjia5cS5fNP9M9DZYhGB7EYSZNnzf/eguFiarii/W4oDwYMmnxCMouUzhc6Y7jFuwTzcg==", + "tarball": "https://npm.jsr.io/~/11/@jsr/std__net/1.0.6.tgz" }, - "@jsr/std__path@1.1.1": { - "integrity": "sha512-+x5LgcNUSpMzOZIRmFSjqrMTCxHlgXjWzK8ZFr7lwgHfWZxoVXeis3MFQlkR5mN5uQ61Y1P30Li1PU0yx9uluA==", + "@jsr/std__path@1.1.2": { + "integrity": "sha512-5hkOR1s5M7am02Bn9KS+SNMNwUSivz7t7/w2HBhFIfO7Eh8+mWilaZ+1tdanV9aaSHr4c99Zo4Da+cCSuzUOdA==", "dependencies": [ "@jsr/std__internal" ], - "tarball": "https://npm.jsr.io/~/11/@jsr/std__path/1.1.1.tgz" + "tarball": "https://npm.jsr.io/~/11/@jsr/std__path/1.1.2.tgz" }, "@jsr/std__testing@1.0.15": { "integrity": "sha512-NgQuXxTEG4ecbh2fzYbkJWJoBgPXwbv6bdsrAYSOeLpX2d+TROEzpErbWQXHi/yxZy/FNn9IF548ZDAqMZxi/g==", @@ -142,6 +140,16 @@ ], "tarball": "https://npm.jsr.io/~/11/@jsr/std__testing/1.0.15.tgz" }, + "@jsr/valkyr__db@2.0.0": { + "integrity": "sha512-0gIauba+vQW6ssqMACLO1Z/METlhzoX+y4t9Sawh/IafQ986Rgvp6gCI+WArp7vbsO5hpItixrqjkxnnNC+h5g==", + "dependencies": [ + "bson", + "idb@8.0.3", + "mingo", + "rxjs" + ], + "tarball": "https://npm.jsr.io/~/11/@jsr/valkyr__db/2.0.0.tgz" + }, "@jsr/valkyr__testcontainers@2.0.2": { "integrity": "sha512-YnmfraYFr3msoUGrIFeElm03nbQqXOaPu0QUT6JI3w6/mIYpVfzPxghkB7gn2RIc81QgrqjwKJE/AL3dltlR1w==", "dependencies": [ @@ -191,8 +199,8 @@ "@types/webidl-conversions" ] }, - "@typescript-eslint/eslint-plugin@8.39.0_@typescript-eslint+parser@8.39.0__eslint@9.33.0__typescript@5.9.2_eslint@9.33.0_typescript@5.9.2": { - "integrity": "sha512-bhEz6OZeUR+O/6yx9Jk6ohX6H9JSFTaiY0v9/PuKT3oGK0rn0jNplLmyFUGV+a9gfYnVNwGDwS/UkLIuXNb2Rw==", + "@typescript-eslint/eslint-plugin@8.43.0_@typescript-eslint+parser@8.43.0__eslint@9.35.0__typescript@5.9.2_eslint@9.35.0_typescript@5.9.2": { + "integrity": "sha512-8tg+gt7ENL7KewsKMKDHXR1vm8tt9eMxjJBYINf6swonlWgkYn5NwyIgXpbbDxTNU5DgpDFfj95prcTq2clIQQ==", "dependencies": [ "@eslint-community/regexpp", "@typescript-eslint/parser", @@ -208,8 +216,8 @@ "typescript" ] }, - "@typescript-eslint/parser@8.39.0_eslint@9.33.0_typescript@5.9.2": { - "integrity": "sha512-g3WpVQHngx0aLXn6kfIYCZxM6rRJlWzEkVpqEFLT3SgEDsp9cpCbxxgwnE504q4H+ruSDh/VGS6nqZIDynP+vg==", + "@typescript-eslint/parser@8.43.0_eslint@9.35.0_typescript@5.9.2": { + "integrity": "sha512-B7RIQiTsCBBmY+yW4+ILd6mF5h1FUwJsVvpqkrgpszYifetQ2Ke+Z4u6aZh0CblkUGIdR59iYVyXqqZGkZ3aBw==", "dependencies": [ "@typescript-eslint/scope-manager", "@typescript-eslint/types", @@ -220,8 +228,8 @@ "typescript" ] }, - "@typescript-eslint/project-service@8.39.0_typescript@5.9.2": { - "integrity": "sha512-CTzJqaSq30V/Z2Og9jogzZt8lJRR5TKlAdXmWgdu4hgcC9Kww5flQ+xFvMxIBWVNdxJO7OifgdOK4PokMIWPew==", + "@typescript-eslint/project-service@8.43.0_typescript@5.9.2": { + "integrity": "sha512-htB/+D/BIGoNTQYffZw4uM4NzzuolCoaA/BusuSIcC8YjmBYQioew5VUZAYdAETPjeed0hqCaW7EHg+Robq8uw==", "dependencies": [ "@typescript-eslint/tsconfig-utils", "@typescript-eslint/types", @@ -229,21 +237,21 @@ "typescript" ] }, - "@typescript-eslint/scope-manager@8.39.0": { - "integrity": "sha512-8QOzff9UKxOh6npZQ/4FQu4mjdOCGSdO3p44ww0hk8Vu+IGbg0tB/H1LcTARRDzGCC8pDGbh2rissBuuoPgH8A==", + "@typescript-eslint/scope-manager@8.43.0": { + "integrity": "sha512-daSWlQ87ZhsjrbMLvpuuMAt3y4ba57AuvadcR7f3nl8eS3BjRc8L9VLxFLk92RL5xdXOg6IQ+qKjjqNEimGuAg==", "dependencies": [ "@typescript-eslint/types", "@typescript-eslint/visitor-keys" ] }, - "@typescript-eslint/tsconfig-utils@8.39.0_typescript@5.9.2": { - "integrity": "sha512-Fd3/QjmFV2sKmvv3Mrj8r6N8CryYiCS8Wdb/6/rgOXAWGcFuc+VkQuG28uk/4kVNVZBQuuDHEDUpo/pQ32zsIQ==", + "@typescript-eslint/tsconfig-utils@8.43.0_typescript@5.9.2": { + "integrity": "sha512-ALC2prjZcj2YqqL5X/bwWQmHA2em6/94GcbB/KKu5SX3EBDOsqztmmX1kMkvAJHzxk7TazKzJfFiEIagNV3qEA==", "dependencies": [ "typescript" ] }, - "@typescript-eslint/type-utils@8.39.0_eslint@9.33.0_typescript@5.9.2": { - "integrity": "sha512-6B3z0c1DXVT2vYA9+z9axjtc09rqKUPRmijD5m9iv8iQpHBRYRMBcgxSiKTZKm6FwWw1/cI4v6em35OsKCiN5Q==", + "@typescript-eslint/type-utils@8.43.0_eslint@9.35.0_typescript@5.9.2": { + "integrity": "sha512-qaH1uLBpBuBBuRf8c1mLJ6swOfzCXryhKND04Igr4pckzSEW9JX5Aw9AgW00kwfjWJF0kk0ps9ExKTfvXfw4Qg==", "dependencies": [ "@typescript-eslint/types", "@typescript-eslint/typescript-estree", @@ -254,11 +262,11 @@ "typescript" ] }, - "@typescript-eslint/types@8.39.0": { - "integrity": "sha512-ArDdaOllnCj3yn/lzKn9s0pBQYmmyme/v1HbGIGB0GB/knFI3fWMHloC+oYTJW46tVbYnGKTMDK4ah1sC2v0Kg==" + "@typescript-eslint/types@8.43.0": { + "integrity": "sha512-vQ2FZaxJpydjSZJKiSW/LJsabFFvV7KgLC5DiLhkBcykhQj8iK9BOaDmQt74nnKdLvceM5xmhaTF+pLekrxEkw==" }, - "@typescript-eslint/typescript-estree@8.39.0_typescript@5.9.2": { - "integrity": "sha512-ndWdiflRMvfIgQRpckQQLiB5qAKQ7w++V4LlCHwp62eym1HLB/kw7D9f2e8ytONls/jt89TEasgvb+VwnRprsw==", + "@typescript-eslint/typescript-estree@8.43.0_typescript@5.9.2": { + "integrity": "sha512-7Vv6zlAhPb+cvEpP06WXXy/ZByph9iL6BQRBDj4kmBsW98AqEeQHlj/13X+sZOrKSo9/rNKH4Ul4f6EICREFdw==", "dependencies": [ "@typescript-eslint/project-service", "@typescript-eslint/tsconfig-utils", @@ -273,8 +281,8 @@ "typescript" ] }, - "@typescript-eslint/utils@8.39.0_eslint@9.33.0_typescript@5.9.2": { - "integrity": "sha512-4GVSvNA0Vx1Ktwvf4sFE+exxJ3QGUorQG1/A5mRfRNZtkBT2xrA/BCO2H0eALx/PnvCS6/vmYwRdDA41EoffkQ==", + "@typescript-eslint/utils@8.43.0_eslint@9.35.0_typescript@5.9.2": { + "integrity": "sha512-S1/tEmkUeeswxd0GGcnwuVQPFWo8NzZTOMxCvw8BX7OMxnNae+i8Tm7REQen/SwUIPoPqfKn7EaZ+YLpiB3k9g==", "dependencies": [ "@eslint-community/eslint-utils", "@typescript-eslint/scope-manager", @@ -284,8 +292,8 @@ "typescript" ] }, - "@typescript-eslint/visitor-keys@8.39.0": { - "integrity": "sha512-ldgiJ+VAhQCfIjeOgu8Kj5nSxds0ktPOSO9p4+0VDH2R2pLvQraaM5Oen2d7NxzMCm+Sn/vJT+mv2H5u6b/3fA==", + "@typescript-eslint/visitor-keys@8.43.0": { + "integrity": "sha512-T+S1KqRD4sg/bHfLwrpF/K3gQLBM1n7Rp7OjjikjTEssI2YJzQpi5WXoynOaQ93ERIuq3O8RBTOUYDKszUCEHw==", "dependencies": [ "@typescript-eslint/types", "eslint-visitor-keys@4.2.1" @@ -296,7 +304,7 @@ "dependencies": [ "dot-prop", "fast-equals", - "idb", + "idb@7.1.1", "mingo", "nanoid", "rfdc", @@ -404,7 +412,7 @@ "escape-string-regexp@4.0.0": { "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" }, - "eslint-plugin-simple-import-sort@12.1.1_eslint@9.33.0": { + "eslint-plugin-simple-import-sort@12.1.1_eslint@9.35.0": { "integrity": "sha512-6nuzu4xwQtE3332Uz0to+TxDQYRLTKRESSc2hefVT48Zc8JthmN23Gx9lnYhu0FtkRSL1oxny3kJ2aveVhmOVA==", "dependencies": [ "eslint" @@ -423,8 +431,8 @@ "eslint-visitor-keys@4.2.1": { "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==" }, - "eslint@9.33.0": { - "integrity": "sha512-TS9bTNIryDzStCpJN93aC5VRSW3uTx9sClUn4B87pwiCaJh220otoI0X8mJKr+VcPtniMdN8GKjlwgWGUv5ZKA==", + "eslint@9.35.0": { + "integrity": "sha512-QePbBFMJFjgmlE+cXAlbHZbHpdFVS2E/6vzCy7aKlebddvl1vadiC4JFV5u/wqTkNUwEV8WrQi257jf5f06hrg==", "dependencies": [ "@eslint-community/eslint-utils", "@eslint-community/regexpp", @@ -436,7 +444,7 @@ "@eslint/plugin-kit", "@humanfs/node", "@humanwhocodes/module-importer", - "@humanwhocodes/retry@0.4.3", + "@humanwhocodes/retry", "@types/estree", "@types/json-schema", "ajv", @@ -490,8 +498,8 @@ "esutils@2.0.3": { "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" }, - "fake-indexeddb@6.1.0": { - "integrity": "sha512-gOzajWIhEug/CQHUIxigKT9Zilh5/I6WvUBez6/UdUtT/YVEHM9r572Os8wfvhp7TkmgBtRNdqSM7YoCXWMzZg==" + "fake-indexeddb@6.2.2": { + "integrity": "sha512-SGbf7fzjeHz3+12NO1dYigcYn4ivviaeULV5yY5rdGihBvvgwMds4r4UBbNIUMwkze57KTDm32rq3j1Az8mzEw==" }, "fast-deep-equal@3.1.3": { "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" @@ -574,6 +582,9 @@ "idb@7.1.1": { "integrity": "sha512-gchesWBzyvGHRO9W8tzUWFDycow5gwjvFKfyV9FF32Y7F50yZMp7mP+T2mJIWFx49zicqyC4uefHM17o6xKIVQ==" }, + "idb@8.0.3": { + "integrity": "sha512-LtwtVyVYO5BqRvcsKuB2iUMnHwPVByPCXFXOpuU96IZPPoPN6xjOGxZQ74pgSVVLQWtUOYgyeL4GE98BY5D3wg==" + }, "ignore@5.3.2": { "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==" }, @@ -678,8 +689,8 @@ "whatwg-url" ] }, - "mongodb@6.18.0": { - "integrity": "sha512-fO5ttN9VC8P0F5fqtQmclAkgXZxbIkYRTUi1j8JO6IYwvamkhtYDilJr35jOPELR49zqCJgXZWwCtW7B+TM8vQ==", + "mongodb@6.19.0": { + "integrity": "sha512-H3GtYujOJdeKIMLKBT9PwlDhGrQfplABNF1G904w6r5ZXKWyv77aB0X9B+rhmaAwjtllHzaEkvi9mkGVZxs2Bw==", "dependencies": [ "@mongodb-js/saslprep", "bson", @@ -829,8 +840,8 @@ "type-fest@3.13.1": { "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==" }, - "typescript-eslint@8.39.0_eslint@9.33.0_typescript@5.9.2_@typescript-eslint+parser@8.39.0__eslint@9.33.0__typescript@5.9.2": { - "integrity": "sha512-lH8FvtdtzcHJCkMOKnN73LIn6SLTpoojgJqDAxPm1jCR14eWSGPX8ul/gggBdPMk/d5+u9V854vTYQ8T5jF/1Q==", + "typescript-eslint@8.43.0_eslint@9.35.0_typescript@5.9.2_@typescript-eslint+parser@8.43.0__eslint@9.35.0__typescript@5.9.2": { + "integrity": "sha512-FyRGJKUGvcFekRRcBKFBlAhnp4Ng8rhe8tuvvkR9OiU0gfd4vyvTRQHEckO6VDlH57jbeUQem2IpqPq9kLJH+w==", "dependencies": [ "@typescript-eslint/eslint-plugin", "@typescript-eslint/parser", @@ -873,8 +884,8 @@ "yocto-queue@0.1.0": { "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" }, - "zod@4.0.17": { - "integrity": "sha512-1PHjlYRevNxxdy2JZ8JcNAw7rX8V9P1AKkP+x/xZfxB0K5FYfuV+Ug6P/6NVSR2jHQ+FzDDoDHS04nYUsOIyLQ==" + "zod@4.1.5": { + "integrity": "sha512-rcUUZqlLJgBC33IT3PNMgsCq6TzLQEG/Ei/KTCU0PedSWRMAXoOUN+4t/0H+Q8bdnLPdqUYnvboJT0bn/229qg==" } }, "workspace": { @@ -883,6 +894,7 @@ "npm:@jsr/std__assert@1", "npm:@jsr/std__async@1", "npm:@jsr/std__testing@1", + "npm:@jsr/valkyr__db@2", "npm:@jsr/valkyr__testcontainers@2", "npm:@valkyr/db@1.0.1", "npm:eslint-plugin-simple-import-sort@12", diff --git a/package.json b/package.json index 4ac4021..2816ba6 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,7 @@ "@std/async": "npm:@jsr/std__async@1", "@std/assert": "npm:@jsr/std__assert@1", "@std/testing": "npm:@jsr/std__testing@1", + "@valkyr/db": "npm:@jsr/valkyr__db@2", "@valkyr/testcontainers": "npm:@jsr/valkyr__testcontainers@2", "eslint": "9", "eslint-plugin-simple-import-sort": "12",