@leaflink/dom-testing-utils 1.0.1 → 1.1.1

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
@@ -15,7 +15,7 @@ $ npm install @leaflink/dom-testing-utils
15
15
  Add the following line to your `vite.config.js`
16
16
 
17
17
  ```js
18
- globalSetup: 'node_modules/@leaflink/dom-testing-utils/global-setup.ts',
18
+ globalSetup: 'node_modules/@leaflink/dom-testing-utils/dist/global-setup.js',
19
19
  ```
20
20
 
21
21
  ### File setup
@@ -23,7 +23,7 @@ globalSetup: 'node_modules/@leaflink/dom-testing-utils/global-setup.ts',
23
23
  Add the following line to your `vite.config.js`
24
24
 
25
25
  ```js
26
- setupFiles: ['node_modules/@leaflink/dom-testing-utils/setup-env.ts'],
26
+ setupFiles: ['node_modules/@leaflink/dom-testing-utils/dist/setup-env.js'],
27
27
  ```
28
28
 
29
29
  ### Utils
@@ -37,3 +37,37 @@ it('', () => {
37
37
  cleanupNoty();
38
38
  });
39
39
  ```
40
+
41
+ ### Mocking Endpoints
42
+ In order to mock API endpoints that your tests interact with, you can get a set of mocking functions from `createMockApiUtils`.
43
+
44
+ ```ts
45
+ import { createMockApiUtils } from '@leaflink/dom-testing-utils';
46
+ import yourServer from './server.ts';
47
+
48
+ const {
49
+ mockGetData,
50
+ mockGetEndpoint,
51
+ mockPatchData,
52
+ // etc.
53
+ } = createMockApiUtils(yourServer);
54
+ ```
55
+
56
+ There are two flavors of mocking utility functions:
57
+ 1. mock{VERB}Data - mocks response with a singular data object
58
+ 2. mock{VERB}Endpoint - mocks a response endpoint with a function like msw's [Response Resolver](https://mswjs.io/docs/getting-started/mocks/rest-api#response-resolver)
59
+
60
+ To mock an endpoint with simple return data
61
+ ```ts
62
+ mockGetData('/relative-url', myMockObj);
63
+ ```
64
+ or you can customize the response
65
+ ```ts
66
+ mockGetEndpoint('/relative-url', (req, res, ctx) => {
67
+ if (someConditional()) {
68
+ res(ctx.json(true));
69
+ } else {
70
+ res(ctx.json(false));
71
+ }
72
+ });
73
+ ```
@@ -0,0 +1 @@
1
+ export * from './mockEndpoints';
@@ -0,0 +1,2 @@
1
+ export * from './mockEndpoints';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"src/","sources":["api/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { DefaultRequestBody, RequestParams, ResponseResolver, rest, RestContext, RestRequest } from 'msw';
2
+ import { SetupServerApi } from 'msw/node';
3
+ export type RestMethod = keyof typeof rest;
4
+ export declare const createMockApiUtils: (server: SetupServerApi) => {
5
+ mockEndpointData: <ResponseBody extends DefaultRequestBody = any>(relativeUrl: string, responseData: ResponseBody, method: RestMethod) => void;
6
+ mockEndpoint: <RequestBodyType extends DefaultRequestBody = DefaultRequestBody, ResponseBody_1 extends DefaultRequestBody = any, Params extends RequestParams = RequestParams>(relativeUrl: string, responseCallback: ResponseResolver<RestRequest<RequestBodyType, Params>, RestContext, ResponseBody_1>, method: RestMethod) => void;
7
+ mockGetData: <ResponseBody_2 extends DefaultRequestBody = any>(relativeUrl: string, responseData: ResponseBody_2) => void;
8
+ mockPostData: <ResponseBody_2 extends DefaultRequestBody = any>(relativeUrl: string, responseData: ResponseBody_2) => void;
9
+ mockPutData: <ResponseBody_2 extends DefaultRequestBody = any>(relativeUrl: string, responseData: ResponseBody_2) => void;
10
+ mockDeleteData: <ResponseBody_2 extends DefaultRequestBody = any>(relativeUrl: string, responseData: ResponseBody_2) => void;
11
+ mockPatchData: <ResponseBody_2 extends DefaultRequestBody = any>(relativeUrl: string, responseData: ResponseBody_2) => void;
12
+ mockGetEndpoint: <RequestBodyType_1 extends DefaultRequestBody = DefaultRequestBody, ResponseBody_3 extends DefaultRequestBody = any, Params_1 extends RequestParams = RequestParams>(relativeUrl: string, responseCallback: ResponseResolver<RestRequest<RequestBodyType_1, Params_1>, RestContext, ResponseBody_3>) => void;
13
+ mockPostEndpoint: <RequestBodyType_1 extends DefaultRequestBody = DefaultRequestBody, ResponseBody_3 extends DefaultRequestBody = any, Params_1 extends RequestParams = RequestParams>(relativeUrl: string, responseCallback: ResponseResolver<RestRequest<RequestBodyType_1, Params_1>, RestContext, ResponseBody_3>) => void;
14
+ mockPutEndpoint: <RequestBodyType_1 extends DefaultRequestBody = DefaultRequestBody, ResponseBody_3 extends DefaultRequestBody = any, Params_1 extends RequestParams = RequestParams>(relativeUrl: string, responseCallback: ResponseResolver<RestRequest<RequestBodyType_1, Params_1>, RestContext, ResponseBody_3>) => void;
15
+ mockDeleteEndpoint: <RequestBodyType_1 extends DefaultRequestBody = DefaultRequestBody, ResponseBody_3 extends DefaultRequestBody = any, Params_1 extends RequestParams = RequestParams>(relativeUrl: string, responseCallback: ResponseResolver<RestRequest<RequestBodyType_1, Params_1>, RestContext, ResponseBody_3>) => void;
16
+ mockPatchEndpoint: <RequestBodyType_1 extends DefaultRequestBody = DefaultRequestBody, ResponseBody_3 extends DefaultRequestBody = any, Params_1 extends RequestParams = RequestParams>(relativeUrl: string, responseCallback: ResponseResolver<RestRequest<RequestBodyType_1, Params_1>, RestContext, ResponseBody_3>) => void;
17
+ };
@@ -0,0 +1,58 @@
1
+ import { rest, } from 'msw';
2
+ export const createMockApiUtils = (server) => {
3
+ /**
4
+ * Mock endpoint with data
5
+ */
6
+ const mockEndpointData = (relativeUrl, responseData, method) => {
7
+ server.use(rest[method](relativeUrl, (_req, res, ctx) => {
8
+ return res(ctx.json(responseData));
9
+ }));
10
+ };
11
+ /**
12
+ * Mock endpoint with a callback function
13
+ */
14
+ const mockEndpoint = (relativeUrl, responseCallback, method) => {
15
+ server.use(rest[method](relativeUrl, responseCallback));
16
+ };
17
+ /**
18
+ * Creates a function to mock an endpoint with data for a particular HTTP verb
19
+ * @param method - the verb to target this endpoint for
20
+ */
21
+ const createDataHelper = (method) => (relativeUrl, responseData) => {
22
+ return mockEndpointData(relativeUrl, responseData, method);
23
+ };
24
+ /**
25
+ * Creates a function to mock an endpoint with a callback function for a particular HTTP verb
26
+ * @param method - the verb to target this endpoint for
27
+ */
28
+ const createEndpointHelper = (method) => (relativeUrl, responseCallback) => {
29
+ return mockEndpoint(relativeUrl, responseCallback, method);
30
+ };
31
+ // #region Shortcut Functions
32
+ const mockGetData = createDataHelper('get');
33
+ const mockPostData = createDataHelper('post');
34
+ const mockPutData = createDataHelper('put');
35
+ const mockDeleteData = createDataHelper('delete');
36
+ const mockPatchData = createDataHelper('patch');
37
+ const mockGetEndpoint = createEndpointHelper('get');
38
+ const mockPostEndpoint = createEndpointHelper('post');
39
+ const mockPutEndpoint = createEndpointHelper('put');
40
+ const mockDeleteEndpoint = createEndpointHelper('delete');
41
+ const mockPatchEndpoint = createEndpointHelper('patch');
42
+ // #endregion
43
+ return {
44
+ mockEndpointData,
45
+ mockEndpoint,
46
+ mockGetData,
47
+ mockPostData,
48
+ mockPutData,
49
+ mockDeleteData,
50
+ mockPatchData,
51
+ mockGetEndpoint,
52
+ mockPostEndpoint,
53
+ mockPutEndpoint,
54
+ mockDeleteEndpoint,
55
+ mockPatchEndpoint,
56
+ };
57
+ };
58
+ //# sourceMappingURL=mockEndpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockEndpoints.js","sourceRoot":"src/","sources":["api/mockEndpoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,IAAI,GAGL,MAAM,KAAK,CAAC;AAKb,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAsB,EAAE,EAAE;IAC3D;;OAEG;IACH,MAAM,gBAAgB,GAAG,CACvB,WAAmB,EACnB,YAA0B,EAC1B,MAAkB,EAClB,EAAE;QACF,MAAM,CAAC,GAAG,CACR,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YAC3C,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACrC,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF;;OAEG;IACH,MAAM,YAAY,GAAG,CAKnB,WAAmB,EACnB,gBAIC,EACD,MAAkB,EAClB,EAAE;QACF,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC;IAEF;;;OAGG;IACH,MAAM,gBAAgB,GACpB,CAAC,MAAkB,EAAE,EAAE,CACvB,CACE,WAAmB,EACnB,YAA0B,EAC1B,EAAE;QACF,OAAO,gBAAgB,CAAC,WAAW,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;IAC7D,CAAC,CAAC;IAEJ;;;OAGG;IACH,MAAM,oBAAoB,GACxB,CAAC,MAAkB,EAAE,EAAE,CACvB,CAKE,WAAmB,EACnB,gBAIC,EACD,EAAE;QACF,OAAO,YAAY,CAAC,WAAW,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAC7D,CAAC,CAAC;IAEJ,6BAA6B;IAC7B,MAAM,WAAW,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,YAAY,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,cAAc,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAEhD,MAAM,eAAe,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAC1D,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACxD,aAAa;IAEb,OAAO;QACL,gBAAgB;QAChB,YAAY;QACZ,WAAW;QACX,YAAY;QACZ,WAAW;QACX,cAAc;QACd,aAAa;QACb,eAAe;QACf,gBAAgB;QAChB,eAAe;QACf,kBAAkB;QAClB,iBAAiB;KAClB,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export default function (): void;
@@ -1,5 +1,4 @@
1
- "use strict";
2
- module.exports = async () => {
1
+ export default function () {
3
2
  process.env.TZ = 'UTC';
4
- };
3
+ }
5
4
  //# sourceMappingURL=global-setup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"global-setup.js","sourceRoot":"src/","sources":["global-setup.ts"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,GAAG,KAAK,IAAI,EAAE;IAC1B,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC;AACzB,CAAC,CAAC"}
1
+ {"version":3,"file":"global-setup.js","sourceRoot":"src/","sources":["global-setup.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO;IACZ,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC;AACzB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -2,3 +2,4 @@ export declare function waitForLoadingToFinish(textMatch?: RegExp): Promise<void
2
2
  export declare function cleanupNoty(): void;
3
3
  export declare function cleanupDropdowns(): void;
4
4
  export declare function assertAndDismissNoty(text: string): Promise<void>;
5
+ export * from './api';
package/dist/index.js CHANGED
@@ -18,4 +18,5 @@ export async function assertAndDismissNoty(text) {
18
18
  expect(noty).toBeInTheDocument();
19
19
  await userEvent.click(noty);
20
20
  }
21
+ export * from './api';
21
22
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"src/","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAEnE,MAAM,UAAU,sBAAsB,CACpC,SAAS,GAAG,8BAA8B;IAE1C,OAAO,yBAAyB,CAC9B,GAAG,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,EAC7C,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,QAAQ;SACL,gBAAgB,CAAC,WAAW,CAAC;SAC7B,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,QAAQ;SACL,gBAAgB,CAAC,wBAAwB,CAAC;SAC1C,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,IAAY;IACrD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,CAAC,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAEjC,MAAM,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"src/","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAEnE,MAAM,UAAU,sBAAsB,CACpC,SAAS,GAAG,8BAA8B;IAE1C,OAAO,yBAAyB,CAC9B,GAAG,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,EAC7C,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,QAAQ;SACL,gBAAgB,CAAC,WAAW,CAAC;SAC7B,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,QAAQ;SACL,gBAAgB,CAAC,wBAAwB,CAAC;SAC1C,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,IAAY;IACrD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,CAAC,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAEjC,MAAM,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED,cAAc,OAAO,CAAC"}
package/dist/setup-env.js CHANGED
@@ -1,7 +1,6 @@
1
1
  import { vi } from 'vitest';
2
2
  import { config } from '@vue/test-utils';
3
3
  import '@testing-library/jest-dom';
4
- import { cleanupDropdowns, cleanupNoty } from './index';
5
4
  config.global.mocks['$t'] = (msg) => msg;
6
5
  const oldWindowLocation = global.window.location;
7
6
  beforeAll(() => {
@@ -27,10 +26,6 @@ beforeAll(() => {
27
26
  return { default: vi.fn((fn) => fn) };
28
27
  });
29
28
  });
30
- afterEach(() => {
31
- cleanupNoty();
32
- cleanupDropdowns();
33
- });
34
29
  afterAll(() => {
35
30
  global.window.location = oldWindowLocation;
36
31
  });
@@ -1 +1 @@
1
- {"version":3,"file":"setup-env.js","sourceRoot":"src/","sources":["setup-env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,2BAA2B,CAAC;AAEnC,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAExD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC;AAEzC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;AAEjD,SAAS,CAAC,GAAG,EAAE;IACb,mBAAmB;IACnB,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;IAE9B,mBAAmB;IACnB,MAAM,CAAC,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAC9C,EAAE,EACF;QACE,GAAG,MAAM,CAAC,yBAAyB,CAAC,iBAAiB,CAAC;QACtD,MAAM,EAAE;YACN,YAAY,EAAE,IAAI;YAClB,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;SACf;QACD,IAAI,EAAE;YACJ,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE;gBACL,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;aACjB;SACF;KACF,CACF,CAAC;IAEF,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAEtB,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE;QACjC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,SAAS,CAAC,GAAG,EAAE;IACb,WAAW,EAAE,CAAC;IACd,gBAAgB,EAAE,CAAC;AACrB,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,GAAG,EAAE;IACZ,MAAM,CAAC,MAAM,CAAC,QAAQ,GAAG,iBAAiB,CAAC;AAC7C,CAAC,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5C,IAAI,IAAI;QACN,OAAO;IACT,CAAC;IACD,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE;IACnB,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;IAChB,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE;IACpB,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;CACnB,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,UAAU,CAAC,sBAAsB,EAAE,wBAAwB,CAAC,CAAC;AAEhE,EAAE,CAAC,UAAU,CACX,OAAO,EACP,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,CAAC,CACnE,CAAC"}
1
+ {"version":3,"file":"setup-env.js","sourceRoot":"src/","sources":["setup-env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,2BAA2B,CAAC;AAEnC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC;AAEzC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;AAEjD,SAAS,CAAC,GAAG,EAAE;IACb,mBAAmB;IACnB,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;IAE9B,mBAAmB;IACnB,MAAM,CAAC,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAC9C,EAAE,EACF;QACE,GAAG,MAAM,CAAC,yBAAyB,CAAC,iBAAiB,CAAC;QACtD,MAAM,EAAE;YACN,YAAY,EAAE,IAAI;YAClB,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;SACf;QACD,IAAI,EAAE;YACJ,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE;gBACL,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;aACjB;SACF;KACF,CACF,CAAC;IAEF,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAEtB,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE;QACjC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,GAAG,EAAE;IACZ,MAAM,CAAC,MAAM,CAAC,QAAQ,GAAG,iBAAiB,CAAC;AAC7C,CAAC,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5C,IAAI,IAAI;QACN,OAAO;IACT,CAAC;IACD,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE;IACnB,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;IAChB,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE;IACpB,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;CACnB,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,UAAU,CAAC,sBAAsB,EAAE,wBAAwB,CAAC,CAAC;AAEhE,EAAE,CAAC,UAAU,CACX,OAAO,EACP,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,CAAC,CACnE,CAAC"}
package/package.json CHANGED
@@ -1,17 +1,16 @@
1
1
  {
2
2
  "name": "@leaflink/dom-testing-utils",
3
- "version": "1.0.1",
3
+ "version": "1.1.1",
4
4
  "description": "Frontend DOM testing utilities",
5
5
  "engines": {
6
6
  "node": ">=16",
7
7
  "npm": ">=8"
8
8
  },
9
9
  "exports": {
10
- ".": "./dist/index.js",
11
- "./setup-env.js": "./dist/setup-env.js",
12
- "./global-setup.js": "./dist/global-setup.js"
10
+ ".": "./dist/index.js"
13
11
  },
14
12
  "type": "module",
13
+ "types": "./dist/index.d.ts",
15
14
  "publishConfig": {
16
15
  "access": "public"
17
16
  },
@@ -52,6 +51,7 @@
52
51
  "@testing-library/user-event": "^14.4.3",
53
52
  "@testing-library/vue": "^7.0.0",
54
53
  "@types/segment-analytics": "^0.0.34",
55
- "eslint-plugin-testing-library": "^5.10.2"
54
+ "eslint-plugin-testing-library": "^5.10.2",
55
+ "msw": "^0.27.2"
56
56
  }
57
57
  }