@pkgverse/prismock 2.0.0-beta.9 → 2.0.1-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,8 +1,14 @@
1
1
  # prismock
2
2
 
3
- [![npm](https://img.shields.io/npm/v/prismock)](https://www.npmjs.com/package/prismock)
4
- [![Build](https://circleci.com/gh/morintd/prismock.svg?style=shield)](https://app.circleci.com/pipelines/github/morintd/prismock)
5
- [![npm](https://img.shields.io/npm/dm/prismock)](https://www.npmjs.com/package/prismock)
3
+ [![npm](https://img.shields.io/npm/v/@pkgverse/prismock)](https://www.npmjs.com/package/@pkgverse/prismock)
4
+ [![npm](https://img.shields.io/npm/dm/@pkgverse/prismock)](https://www.npmjs.com/package/prismock)
5
+
6
+ ## NOTE
7
+ Originally forked from https://github.com/morintd/prismock. This library is awesome, and I felt it could use some modernization to work with newer versions of prisma and add support for
8
+ client extensions. My current intention is to try to maintain this and stay up to speed with bug-fixes. The focus is ESM-first, so although both ESM and CJS exports are provided,
9
+ I haven't personally tested the CJS functionality.
10
+
11
+ ---
6
12
 
7
13
  This is a mock for `PrismaClient`. It actually reads your `schema.prisma` and generate models based on it.
8
14
 
@@ -19,43 +25,44 @@ After setting up [Prisma](https://www.prisma.io/docs/getting-started/setup-prism
19
25
  yarn
20
26
 
21
27
  ```sh
22
- $ yarn add -D prismock
28
+ $ yarn add -D @pkgverse/prismock
23
29
  ```
24
30
 
25
31
  npm
26
32
 
27
33
  ```
28
- $ npm add --save-dev prismock
34
+ $ npm add --save-dev @pkgverse/prismock
29
35
  ```
30
36
 
31
37
  # Usage
32
38
 
33
- There are a few options here, depending on your application architecture.
34
-
35
- ## Automatically (recommended)
36
-
37
- You can create a `__mocks__` directory at the root of your project, with a sub-directory named `@prisma`. Inside the `@prisma` directory, create a `client.js` file (or `client.ts` for TypeScript).
38
-
39
- Inside the `client` file, you can re-export the `@prisma/client` module, and replace `PrismaClient` by `PrismockClient`:
40
-
41
39
  ```ts
42
- import { PrismockClient } from 'prismock';
40
+ import { Prisma, PrismaClient } from "${your_prisma_client_directory}"
41
+ import { createPrismockClient } from 'prismock';
42
+
43
+ // Pass in the Prisma namespace, and manually define the type of your prisma client
44
+ let mockedClient = await createPrismockClient<PrismaClient>(Prisma)
43
45
 
44
- export * from '@prisma/client';
45
- export { PrismockClient as PrismaClient };
46
+ // Optionally apply your client extensions to the client
47
+ mockedClient = applyExtensions(mockedClient)
46
48
  ```
47
49
 
48
- That's it, prisma will be mocked in all your tests (tested with Jest & ViTest)
50
+ That's it, prisma will be mocked in all your tests (tested with ViTest)
49
51
 
50
52
  ## PrismaClient
51
53
 
52
- You can mock the PrismaClient directly in your test, or setupTests ([Example](https://github.com/morintd/prismock/blob/master/src/__tests__/example-prismock.test.ts)):
54
+ You can mock the PrismaClient directly in your test, or setupTests ([Example](https://github.com/JQuezada0/prismock/blob/beta/src/__tests__/client/example-prismock.test.ts)):
53
55
 
54
56
  ```ts
55
- jest.mock('@prisma/client', () => {
57
+ import { vi } from "vitest"
58
+
59
+ vi.mock('@prisma/client', async () => {
60
+ const actual = await vi.importActual<typeof import("@prisma/client")>("@prisma/client")
61
+ const actualPrismock = await vi.importActual<typeof import("prismock")>("prismock")
62
+
56
63
  return {
57
- ...jest.requireActual('@prisma/client'),
58
- PrismaClient: jest.requireActual('prismock').PrismockClient,
64
+ ...actual,
65
+ PrismaClient: await actualPrismock.createPrismockClass(actual.Prisma),
59
66
  };
60
67
  });
61
68
  ```
@@ -65,29 +72,21 @@ jest.mock('@prisma/client', () => {
65
72
  You can instantiate a `PrismockClient` directly and use it in your test, or pass it to a test version of your app.
66
73
 
67
74
  ```ts
68
- import { PrismockClient } from 'prismock';
75
+ import { Prisma } from '${your_prisma_client_directory}';
76
+ import { createPrismockClient } from 'prismock';
69
77
 
70
- import { PrismaService } from './prisma.service';
71
-
72
- const prismock = new PrismockClient();
73
- const app = createApp(prismock);
78
+ const client = await createPrismockClient(Prisma);
74
79
  ```
75
80
 
76
81
  Then, you will be able to write your tests as if your app was using an in-memory Prisma client.
77
82
 
78
- ## Using custom client path
79
-
80
- If you are using a custom [client path](https://www.prisma.io/docs/orm/prisma-client/setup-and-configuration/generating-prisma-client#using-a-custom-output-path), you need the [createPrismock](https://github.com/morintd/prismock/blob/master/docs/using-custom-client-path.md) method.
81
-
82
83
  ## Use with decimal.js
83
84
 
84
85
  See [use with decimal.js](https://github.com/morintd/prismock/blob/master/docs/use-with-decimal-js.md).
85
86
 
86
87
  ## Internal data
87
88
 
88
- Two additional functions are returned compared to the PrismaClient, `getData`, and `reset`. In some edge-case, we need to directly access, or reset, the data store management by _prismock_.
89
-
90
- Most of the time, you won't need it in your test, but keep in mind they exist
89
+ Two additional functions are returned compared to the PrismaClient, `getData`, and `reset`.
91
90
 
92
91
  ```ts
93
92
  const prismock = new PrismockClient();
package/dist/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  export { generatePrismock, generatePrismockSync } from './lib/prismock';
2
- export { createPrismock, createPrismockClient, Prismock, type PrismaModule, createPrismockClass } from './lib/client';
2
+ export { createPrismock, createPrismockClient, Prismock, type PrismaModule, createPrismockClass, PrismockClientType } from './lib/client';
package/dist/index.mjs CHANGED
@@ -4875,7 +4875,8 @@ function generateDelegate(model, data, name, properties, delegates, onChange) {
4875
4875
  // src/lib/extensions/model.ts
4876
4876
  function applyModelExtensions(client, extensions) {
4877
4877
  if (typeof extensions === "function") {
4878
- return client;
4878
+ const extendedClient = extensions(client);
4879
+ return extendedClient;
4879
4880
  }
4880
4881
  const model = extensions.model ?? {};
4881
4882
  const extendedModels = Object.keys(model);
@@ -4940,7 +4941,8 @@ function applyModelExtensions(client, extensions) {
4940
4941
  // src/lib/extensions/query.ts
4941
4942
  function applyQueryExtensions(client, extensions) {
4942
4943
  if (typeof extensions === "function") {
4943
- return client;
4944
+ const extendedClient = extensions(client);
4945
+ return extendedClient;
4944
4946
  }
4945
4947
  const queryExtendedModelMap = extensions.query ?? {};
4946
4948
  const extendedModels = Object.keys(queryExtendedModelMap);
@@ -5103,7 +5105,8 @@ function buildResultExtendedModel(client, proxiedModels, modelExtensions, modelN
5103
5105
  }
5104
5106
  function applyResultExtensions(client, extensions) {
5105
5107
  if (typeof extensions === "function") {
5106
- return client;
5108
+ const extendedClient = extensions(client);
5109
+ return extendedClient;
5107
5110
  }
5108
5111
  const resultExtendedModelMap = extensions.result ?? {};
5109
5112
  const extendedModels = Object.keys(resultExtendedModelMap);
@@ -5238,11 +5241,17 @@ function generateClient(delegates, getData, setData) {
5238
5241
  }
5239
5242
  };
5240
5243
  }
5241
- async function createPrismockClass(prismaModule) {
5242
- const { Prisma: Prisma2 } = await import("@prisma/client");
5244
+ async function createPrismockClass(prismaModuleInput) {
5245
+ const prismaModule = await (async () => {
5246
+ if (prismaModuleInput) {
5247
+ return prismaModuleInput;
5248
+ }
5249
+ const { Prisma: Prisma2 } = await import("@prisma/client");
5250
+ return Prisma2;
5251
+ })();
5243
5252
  const c = class PrismockClientDefault extends Prismock {
5244
5253
  constructor() {
5245
- super(Prisma2);
5254
+ super(prismaModule);
5246
5255
  }
5247
5256
  };
5248
5257
  return c;
@@ -33,7 +33,7 @@ export declare function generateClient<T = PrismaClient>(delegates: Record<strin
33
33
  export type PrismaModule<PC = PrismaClient> = {
34
34
  dmmf: runtime.BaseDMMF;
35
35
  };
36
- export declare function createPrismockClass(prismaModule?: PrismaModule): Promise<typeof PrismaClient>;
36
+ export declare function createPrismockClass<PC extends (new (...args: any[]) => any) = typeof PrismaClient>(prismaModuleInput?: PrismaModule): Promise<typeof PrismaClient>;
37
37
  export declare function createPrismock(): Promise<PrismaClient<import(".prisma").Prisma.PrismaClientOptions, never, runtime.DefaultArgs> & PrismockData>;
38
38
  export declare function createPrismockClient<PC = PrismaClient>(prismaModule: PrismaModule<PC>): Promise<PrismockClientType<PC>>;
39
39
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pkgverse/prismock",
3
- "version": "2.0.0-beta.9",
3
+ "version": "2.0.1-beta.0",
4
4
  "description": "A mock for PrismaClient, dedicated to unit testing.",
5
5
  "repository": {
6
6
  "url": "https://github.com/JQuezada0/prismock"
package/CHANGELOG.md DELETED
@@ -1,111 +0,0 @@
1
- # 1.0.0-beta.1 (2025-11-21)
2
-
3
-
4
- ### Bug Fixes
5
-
6
- * 🐛 🐛 add support for nested create with multiple items ([54e8731](https://github.com/JQuezada0/prismock/commit/54e873123bb03849dece0141799e769e23dd9b6e)), closes [#618](https://github.com/JQuezada0/prismock/issues/618)
7
- * 🐛 Add support for nested select/include on create ([0ec8184](https://github.com/JQuezada0/prismock/commit/0ec81844440ffa78af1523097b421113afa0ed6b))
8
- * 🐛 Correct Array.slice() with both skip + take ([40ba3c2](https://github.com/JQuezada0/prismock/commit/40ba3c2fbecd0e0fed9f98d993986b9e951531ca))
9
- * 🐛 correctly manage nested operations with update ([a07ff92](https://github.com/JQuezada0/prismock/commit/a07ff929384fc11fa926b045e5b3dc8507b014cd))
10
- * 🐛 correctly use default value ([0f3b1ca](https://github.com/JQuezada0/prismock/commit/0f3b1ca68fb09e70846f412ea772216f61c520c2)), closes [#560](https://github.com/JQuezada0/prismock/issues/560)
11
- * 🐛 correctly use nested create ([e97fc7d](https://github.com/JQuezada0/prismock/commit/e97fc7dcb75bd90afaee8d2a6cefb9cf4329db70)), closes [#768](https://github.com/JQuezada0/prismock/issues/768)
12
- * 🐛 create with no data ([665fb43](https://github.com/JQuezada0/prismock/commit/665fb4341537e752d1e31cb3bf76300a9c1eec87)), closes [#1096](https://github.com/JQuezada0/prismock/issues/1096)
13
- * 🐛 don't include relations with include false ([ceae6ca](https://github.com/JQuezada0/prismock/commit/ceae6ca11261cee5f6ad7003c53f0abbfe975140)), closes [#953](https://github.com/JQuezada0/prismock/issues/953)
14
- * 🐛 ensure we don't accept null from lt/lte filters ([34add0c](https://github.com/JQuezada0/prismock/commit/34add0cd5d290216294b26c4e14d2718cb8f31b1)), closes [#771](https://github.com/JQuezada0/prismock/issues/771)
15
- * 🐛 find test ([6e9778d](https://github.com/JQuezada0/prismock/commit/6e9778de60ca045546311c5e496f8dad0ac7001c))
16
- * 🐛 ignore undefined values given to update ([f3dbeca](https://github.com/JQuezada0/prismock/commit/f3dbecaef27aaec5c575a1612a0fa4665b0608f5))
17
- * 🐛 make orderBy compatible with mysql & postgre ([2d5c4cd](https://github.com/JQuezada0/prismock/commit/2d5c4cd004403a80051583a45ef4ccd0a9b8ae23))
18
- * 🐛 properly query with child: null ([2e7e30d](https://github.com/JQuezada0/prismock/commit/2e7e30dfc7608f707b46f3e6c57a7e16087a8a01)), closes [#1075](https://github.com/JQuezada0/prismock/issues/1075)
19
- * 🐛 properly use create with many on update ([db17b3f](https://github.com/JQuezada0/prismock/commit/db17b3f974e8150d6f75ed934743950d9ccb14b4)), closes [#1016](https://github.com/JQuezada0/prismock/issues/1016)
20
- * 🐛 remove duplicate include (in select and connect) ([8bac544](https://github.com/JQuezada0/prismock/commit/8bac54482fa7fb3f5d5dbaaaedc62b9f5af64cf0))
21
- * add object id generation ([eeec13b](https://github.com/JQuezada0/prismock/commit/eeec13b99d770e19219899a5a06e2a65cfeb0144))
22
- * allow non-scalar lists to be pushed ([8f8acbc](https://github.com/JQuezada0/prismock/commit/8f8acbc026ac4a5a58a93a8a3a59f269dea817a6))
23
- * avoid using generated types ([eb0d880](https://github.com/JQuezada0/prismock/commit/eb0d880bcd55fc5a0f5404dd70f6dedb188a3dce))
24
- * bug in scalar list push support that would push the push function of arrays onto each array ([4281ac7](https://github.com/JQuezada0/prismock/commit/4281ac753c71dbb479d0700952d3aa00419ec36d))
25
- * createMany with update ([d727559](https://github.com/JQuezada0/prismock/commit/d727559b457cb37220c12477966d70bc947f8ec1))
26
- * datetime querying ([83b9136](https://github.com/JQuezada0/prismock/commit/83b91364b85090080cd5fec639c68b6e3e25953b))
27
- * deploy correctly ([218c1c1](https://github.com/JQuezada0/prismock/commit/218c1c146e86c175dcdff2f5c3de08a2b9d5af35))
28
- * **deps:** update dependency bson to v4.7.1 ([9377451](https://github.com/JQuezada0/prismock/commit/9377451cb25afea299d31aea0b47430d84009d96))
29
- * **deps:** update dependency bson to v4.7.2 ([3148ac2](https://github.com/JQuezada0/prismock/commit/3148ac281fd14f33c953ccabb18c634f40728519))
30
- * **deps:** update dependency bson to v5 ([85da7e6](https://github.com/JQuezada0/prismock/commit/85da7e6a6d603052368bab12d23ed0db254a0d3b))
31
- * **deps:** update dependency bson to v5.0.1 ([5893ea2](https://github.com/JQuezada0/prismock/commit/5893ea2c36df4396fde8a5ff3ed943e51c34bf72))
32
- * **deps:** update dependency bson to v5.1.0 ([5494250](https://github.com/JQuezada0/prismock/commit/5494250b6dbad344f865126c709e5028290795ee))
33
- * **deps:** update dependency bson to v5.2.0 ([b01a762](https://github.com/JQuezada0/prismock/commit/b01a762e787b7c315fe3a39e2f58268a264e5e64))
34
- * **deps:** update dependency bson to v5.3.0 ([9aa563e](https://github.com/JQuezada0/prismock/commit/9aa563e67d208ac523bb85120ec18d3f036416cf))
35
- * **deps:** update dependency bson to v5.4.0 ([0f9e91d](https://github.com/JQuezada0/prismock/commit/0f9e91dee718f91d72edcdaa75aa93c98ba19d53))
36
- * **deps:** update dependency bson to v6 ([5e828b1](https://github.com/JQuezada0/prismock/commit/5e828b1b11bdd197384c9d5fc1b135daa2c2b68b))
37
- * **deps:** update dependency bson to v6.1.0 ([8d3a678](https://github.com/JQuezada0/prismock/commit/8d3a67882b65d8dc62e8e248372e2053667b2736))
38
- * **deps:** update dependency bson to v6.10.0 ([#1169](https://github.com/JQuezada0/prismock/issues/1169)) ([b4dbe16](https://github.com/JQuezada0/prismock/commit/b4dbe16dcd2b386b027120a6289223235e075e46))
39
- * **deps:** update dependency bson to v6.10.0 ([#1169](https://github.com/JQuezada0/prismock/issues/1169)) ([df6fb97](https://github.com/JQuezada0/prismock/commit/df6fb97523cd8c5133b51999c3c4128a30317c0b))
40
- * **deps:** update dependency bson to v6.10.1 ([#1188](https://github.com/JQuezada0/prismock/issues/1188)) ([48a341b](https://github.com/JQuezada0/prismock/commit/48a341ba35fac491b78796f6e346046fac7302bf))
41
- * **deps:** update dependency bson to v6.10.1 ([#1188](https://github.com/JQuezada0/prismock/issues/1188)) ([b65bf33](https://github.com/JQuezada0/prismock/commit/b65bf33c46410377c82c80d6b613103cacb170e9))
42
- * **deps:** update dependency bson to v6.10.2 ([#1233](https://github.com/JQuezada0/prismock/issues/1233)) ([9acea37](https://github.com/JQuezada0/prismock/commit/9acea37d643004415a31ea3e4c65c5400585ce00))
43
- * **deps:** update dependency bson to v6.10.3 ([#1248](https://github.com/JQuezada0/prismock/issues/1248)) ([2739a47](https://github.com/JQuezada0/prismock/commit/2739a478ec9507ecdf275be87b6a5d798a3eff75))
44
- * **deps:** update dependency bson to v6.10.4 ([#1351](https://github.com/JQuezada0/prismock/issues/1351)) ([68eb60e](https://github.com/JQuezada0/prismock/commit/68eb60e9ce3aec9224ac3be50af5e48b5cee4f4b))
45
- * **deps:** update dependency bson to v6.2.0 ([db78832](https://github.com/JQuezada0/prismock/commit/db788323080b7d5b273da2c31d8c46a3590a7127))
46
- * **deps:** update dependency bson to v6.3.0 ([6053c0e](https://github.com/JQuezada0/prismock/commit/6053c0eda0ddad7bc5ced6e9b936608d3485f2e4))
47
- * **deps:** update dependency bson to v6.4.0 ([613f388](https://github.com/JQuezada0/prismock/commit/613f3884e6e7737e1d29f4eb831fc1992bc9cfa4))
48
- * **deps:** update dependency bson to v6.5.0 ([88de544](https://github.com/JQuezada0/prismock/commit/88de544abd4daaa27002cae9f1341c109a238187))
49
- * **deps:** update dependency bson to v6.6.0 ([78df73b](https://github.com/JQuezada0/prismock/commit/78df73b6fcb79bb3286d88331306a1a01393a48a))
50
- * **deps:** update dependency bson to v6.7.0 ([f7aade0](https://github.com/JQuezada0/prismock/commit/f7aade0786514a86c864f4d049c2e8dc73a57ab0))
51
- * **deps:** update dependency bson to v6.7.0 ([6d22abb](https://github.com/JQuezada0/prismock/commit/6d22abb3f53c0a655838b151f18d72c577f82794))
52
- * **deps:** update dependency bson to v6.8.0 ([301e801](https://github.com/JQuezada0/prismock/commit/301e801f949604c8bac51f3285ef2cfa70ec86f8))
53
- * **deps:** update dependency bson to v6.9.0 ([83c0645](https://github.com/JQuezada0/prismock/commit/83c0645079984b006df097a4af3af82af01e61b4))
54
- * **deps:** update dependency bson to v6.9.0 ([9c63be1](https://github.com/JQuezada0/prismock/commit/9c63be1370d4abe5cadfb60daebd030000f6b82f))
55
- * ensure the right data is stored ([9ba689f](https://github.com/JQuezada0/prismock/commit/9ba689fa7b81e2f39ef1860af5728ecdd1e2e1c9))
56
- * **find-unique:** valid/fix all non-regression test ([b1c4a09](https://github.com/JQuezada0/prismock/commit/b1c4a09c2e9cabfdb1d214481e2d073ce0bff5ae))
57
- * findFirst method ([ee42278](https://github.com/JQuezada0/prismock/commit/ee42278322bbcca9f5e5dd15d774e69810f624cf))
58
- * fix issue with compound ids with default names ([ebcd75d](https://github.com/JQuezada0/prismock/commit/ebcd75df28a58b5fc805a5d473b5117753b9bc01))
59
- * handle NOT when non-array ([1eb539f](https://github.com/JQuezada0/prismock/commit/1eb539f5f0b5d47bcca1e204e4c5d0d5175ba330))
60
- * show right example with prismock client ([8473d1e](https://github.com/JQuezada0/prismock/commit/8473d1e37b34796bbd95841c74a04afe4f02631d))
61
-
62
-
63
- ### Features
64
-
65
- * :technologist: delete raises PrismaClientKnownRequestError [#1082](https://github.com/JQuezada0/prismock/issues/1082) ([e1222b2](https://github.com/JQuezada0/prismock/commit/e1222b23938a318f8ffc03b4fedb715ff867d7f5))
66
- * :technologist: findOrThrow raises PrismaClientKnownRequestError [#1082](https://github.com/JQuezada0/prismock/issues/1082) ([e820060](https://github.com/JQuezada0/prismock/commit/e820060faa31441c2d569caad282be224d640e70))
67
- * :technologist: update raises PrismaClientKnownRequestError [#1082](https://github.com/JQuezada0/prismock/issues/1082) ([a911b08](https://github.com/JQuezada0/prismock/commit/a911b08c148c9804976bc3d2cfe73de9c1bddcdc))
68
- * @[@unique](https://github.com/unique) support ([9f7d5fc](https://github.com/JQuezada0/prismock/commit/9f7d5fc5ace06af2b1feaa7c6502d585dcdf0a47))
69
- * 🎸 actually keep references ([f018279](https://github.com/JQuezada0/prismock/commit/f01827952df51d2c226efc590844dfd5588fb3dd))
70
- * 🎸 add aggregate operation ([f63f472](https://github.com/JQuezada0/prismock/commit/f63f4726824ebeffbeeacf5f922a739ff7ffb495))
71
- * 🎸 add orderBy ([8bb30ca](https://github.com/JQuezada0/prismock/commit/8bb30ca5a84e04661f2a7c09d2692f1b3d2374aa))
72
- * 🎸 add reset method ([20c313e](https://github.com/JQuezada0/prismock/commit/20c313ed869f0f4772b46605baea4d66c70216f3))
73
- * 🎸 add support for $extends ([2cffbb1](https://github.com/JQuezada0/prismock/commit/2cffbb1c80c51d5c536eb8eddfe3f0a6c270cc68))
74
- * 🎸 add support for connect under create operation ([56389b0](https://github.com/JQuezada0/prismock/commit/56389b0b52ef6826c95201f35a8fffddb41b8d70))
75
- * 🎸 add support for cuid ([90abb33](https://github.com/JQuezada0/prismock/commit/90abb338801e058f0fd56f0f728fdac2eb3f2fdc))
76
- * 🎸 add support for is ([c0ddd0e](https://github.com/JQuezada0/prismock/commit/c0ddd0ef3c4c99d1c0c3f15a0299510406154093)), closes [#823](https://github.com/JQuezada0/prismock/issues/823)
77
- * 🎸 add support for nested create & createMany ([a6b5693](https://github.com/JQuezada0/prismock/commit/a6b5693de001798038f22ed79e98902778ae90c5)), closes [#431](https://github.com/JQuezada0/prismock/issues/431)
78
- * 🎸 add support for nested filtering ([772f25a](https://github.com/JQuezada0/prismock/commit/772f25ad093780a7ea37ff47769dacd44c5ebb47)), closes [#242](https://github.com/JQuezada0/prismock/issues/242)
79
- * 🎸 add support for nested upsert ([a91f674](https://github.com/JQuezada0/prismock/commit/a91f674fa11ebce7c7c6393073a307c3cdbb510e))
80
- * 🎸 add support with multiple nested create ([37a72b9](https://github.com/JQuezada0/prismock/commit/37a72b9188dfa6023a308fa949babbcde7c89518))
81
- * 🎸 complete client method for sql dbs ([d9c6636](https://github.com/JQuezada0/prismock/commit/d9c663635cc3f29c1e36fcfc9bb400072114cf38))
82
- * 🎸 complete groupBy ([7f47010](https://github.com/JQuezada0/prismock/commit/7f470108f46133ba7c009de9f24e3a334d085057))
83
- * 🎸 complete scalar push implementation ([598e4ac](https://github.com/JQuezada0/prismock/commit/598e4aca1a3fdd395a4aff7b854ac474234cd8ec))
84
- * 🎸 complete support for nested upsert ([068ede6](https://github.com/JQuezada0/prismock/commit/068ede68d73ba4659b58470a1f27881c43128c9d))
85
- * 🎸 complete update with create many ([643c796](https://github.com/JQuezada0/prismock/commit/643c7964ec1178e54aea15780f1ea64a39ea9437))
86
- * 🎸 implement createManyAndReturn ([132eb1b](https://github.com/JQuezada0/prismock/commit/132eb1b8417e87454cced336610ea07327647a28)), closes [#988](https://github.com/JQuezada0/prismock/issues/988)
87
- * 🎸 Keep existing references ([9f600d2](https://github.com/JQuezada0/prismock/commit/9f600d2a2c7502b3874d1fb951a4b7b38d0a814d))
88
- * 🎸 return structuredClone of items for findOne & Many ([9167f15](https://github.com/JQuezada0/prismock/commit/9167f1503912257b086022c4e39cbdccf33d7fb8)), closes [#736](https://github.com/JQuezada0/prismock/issues/736)
89
- * 🎸 sync mongodb config with base ([a087dfe](https://github.com/JQuezada0/prismock/commit/a087dfea054f0d0cbc353396fea16ca714fa9826))
90
- * 🎸 sync with @prisma/internals API & config ([998f423](https://github.com/JQuezada0/prismock/commit/998f4232a9ddb770af59912762e5881e66d4721c)), closes [#806](https://github.com/JQuezada0/prismock/issues/806) [#810](https://github.com/JQuezada0/prismock/issues/810)
91
- * add automated release pipeline ([ce9f453](https://github.com/JQuezada0/prismock/commit/ce9f453bbf8f4eb14f96d35e06d4d00fb38c0430))
92
- * add deployment with npm semantic ([2f506e1](https://github.com/JQuezada0/prismock/commit/2f506e15b19a1ba25408f7daf8a802611c8dfaf0))
93
- * add disconnect ([6a28317](https://github.com/JQuezada0/prismock/commit/6a2831751d66f3c05d5116cd0f1770de6750183f))
94
- * add examples using PrismockClient ([27bacb0](https://github.com/JQuezada0/prismock/commit/27bacb037d4ef607e5fd449b609ad23576a9745d))
95
- * add mongodb support ([098e16a](https://github.com/JQuezada0/prismock/commit/098e16ab33a23994908d2a2c9f4bc44ef8186b57))
96
- * add prismock client ([657f47b](https://github.com/JQuezada0/prismock/commit/657f47bd736a43681b8e2203033c8bbddacfc0dc))
97
- * add support for connectOrCreate ([4d1d12f](https://github.com/JQuezada0/prismock/commit/4d1d12fa1bfdc4fe1ac4e66391a6dbb3d61db789))
98
- * add uuid ([36f3942](https://github.com/JQuezada0/prismock/commit/36f394202aab54bfe8248f74283ff1e59c2d91cf))
99
- * allow custom client ([527e21a](https://github.com/JQuezada0/prismock/commit/527e21a4ac268e3d0269b74a13b507effa8406b3))
100
- * allow custom client on generatePrismock ([db9da12](https://github.com/JQuezada0/prismock/commit/db9da12eb2a733c972c9caf7b82402ccd98526fd))
101
- * **client:** allow creating prismock with a custom client location ([65f8717](https://github.com/JQuezada0/prismock/commit/65f871769ea78235b9b5e7f65280e7fbbe15bd85))
102
- * complete create delegate with nested connect ([fd57329](https://github.com/JQuezada0/prismock/commit/fd573295519f73aca17cc59a74dbb11c63340c9a))
103
- * complete support for connectOrCreate ([9c20dd2](https://github.com/JQuezada0/prismock/commit/9c20dd2f78e66425066bd915e77cd35553a44dd8))
104
- * **delete:** add include and select support to delete methods ([beb57ed](https://github.com/JQuezada0/prismock/commit/beb57ed3be3b18968176563dc5eecfd9092d3e07))
105
- * **groupBy:** implement core groupBy logic ([4b0115e](https://github.com/JQuezada0/prismock/commit/4b0115ec10ca73e4b91483bab91aaa202d6b037e))
106
- * implement push for scalar lists ([d58188e](https://github.com/JQuezada0/prismock/commit/d58188e462ee5ef80e0acc7b37364c2b27a8e488))
107
- * initial ([4da5f8b](https://github.com/JQuezada0/prismock/commit/4da5f8b4973866ac63eb884639c27d34385c29fd))
108
- * **match:** add mode support in filter conditions and operators ([2ba7d34](https://github.com/JQuezada0/prismock/commit/2ba7d34a9be22a3a7a3250e634a267698c25a871))
109
- * **orderBy:** added orderBy date support ([e8d22a5](https://github.com/JQuezada0/prismock/commit/e8d22a5eef5b865a93ff59436a2d941ac93ed4cc))
110
- * support dbgenerated id type ([99c384f](https://github.com/JQuezada0/prismock/commit/99c384fca271a833d3a851167d72e4ccab86e6d9))
111
- * support querying with bigint ([16d3c79](https://github.com/JQuezada0/prismock/commit/16d3c798f84b94db6c5361b64fcccb804b589b2c))