@windstream/react-shared-components 0.1.93 → 0.1.95
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/dist/contentful/index.esm.js +2 -2
- package/dist/contentful/index.esm.js.map +1 -1
- package/dist/contentful/index.js +3 -3
- package/dist/contentful/index.js.map +1 -1
- package/dist/core.d.ts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.esm.js +1 -1
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/utils/index.esm.js +1 -1
- package/dist/utils/index.js +1 -1
- package/package.json +14 -8
- package/src/components/accordion/index.test.tsx +270 -0
- package/src/components/alert-card/index.test.tsx +152 -0
- package/src/components/animation-wrapper/index.test.tsx +424 -0
- package/src/components/brand-button/index.test.tsx +292 -0
- package/src/components/button/index.test.tsx +91 -0
- package/src/components/call-button/index.test.tsx +260 -0
- package/src/components/checkbox/index.test.tsx +252 -0
- package/src/components/checklist/index.test.tsx +231 -0
- package/src/components/checklist/index.tsx +64 -29
- package/src/components/checklist/types.ts +7 -1
- package/src/components/collapse/index.test.tsx +277 -0
- package/src/components/collapse/index.tsx +1 -0
- package/src/components/divider/index.test.tsx +53 -0
- package/src/components/image/index.test.tsx +174 -0
- package/src/components/input/index.test.tsx +348 -0
- package/src/components/link/index.test.tsx +199 -0
- package/src/components/list/index.test.tsx +166 -0
- package/src/components/material-icon/index.test.tsx +130 -0
- package/src/components/modal/index.test.tsx +310 -0
- package/src/components/next-image/index.test.tsx +406 -0
- package/src/components/pagination/index.test.tsx +521 -0
- package/src/components/radio-button/index.test.tsx +151 -0
- package/src/components/see-more/index.test.tsx +96 -0
- package/src/components/select/index.test.tsx +256 -0
- package/src/components/select-plan-button/index.test.tsx +173 -0
- package/src/components/skeleton/index.test.tsx +74 -0
- package/src/components/spinner/index.test.tsx +76 -0
- package/src/components/text/index.test.tsx +65 -0
- package/src/components/tooltip/index.test.tsx +50 -0
- package/src/components/view-cart-button/index.test.tsx +57 -0
- package/src/contentful/blocks/accordion/index.test.tsx +218 -0
- package/src/contentful/blocks/accordion/index.tsx +3 -1
- package/src/contentful/blocks/address-input-banner/index.test.tsx +132 -0
- package/src/contentful/blocks/anchored-bottom-banner/index.test.tsx +287 -0
- package/src/contentful/blocks/blogs-grid/BlogGrid.stories.tsx +5 -4
- package/src/contentful/blocks/blogs-grid/index.test.tsx +355 -0
- package/src/contentful/blocks/blogs-grid-base/index.test.tsx +274 -0
- package/src/contentful/blocks/breadcrumbs/index.test.tsx +281 -0
- package/src/contentful/blocks/button/index.test.tsx +339 -0
- package/src/contentful/blocks/callout/index.test.tsx +539 -0
- package/src/contentful/blocks/cards/blog-card/index.test.tsx +218 -0
- package/src/contentful/blocks/cards/floating-image-card/index.test.tsx +201 -0
- package/src/contentful/blocks/cards/full-image-card/index.test.tsx +216 -0
- package/src/contentful/blocks/cards/index.test.tsx +39 -0
- package/src/contentful/blocks/cards/product-card/index.test.tsx +263 -0
- package/src/contentful/blocks/cards/simple-card/index.test.tsx +364 -0
- package/src/contentful/blocks/cards/simple-card/index.tsx +1 -1
- package/src/contentful/blocks/cards/testimonial-card/index.test.tsx +180 -0
- package/src/contentful/blocks/carousel/helper.test.tsx +539 -0
- package/src/contentful/blocks/carousel/index.test.tsx +308 -0
- package/src/contentful/blocks/carousel/types.test.ts +16 -0
- package/src/contentful/blocks/cart-retention-banner/index.test.tsx +409 -0
- package/src/contentful/blocks/cart-retention-banner/index.tsx +4 -4
- package/src/contentful/blocks/comparison-table/index.test.tsx +114 -0
- package/src/contentful/blocks/cookiebanner/index.test.tsx +277 -0
- package/src/contentful/blocks/cta-callout/index.test.tsx +244 -0
- package/src/contentful/blocks/dynamic-tabs/index.test.tsx +240 -0
- package/src/contentful/blocks/email-input-block/index.test.tsx +213 -0
- package/src/contentful/blocks/email-input-block/index.tsx +40 -35
- package/src/contentful/blocks/find-kinetic/index.test.tsx +269 -0
- package/src/contentful/blocks/floating-banner/index.test.tsx +246 -0
- package/src/contentful/blocks/footer/index.test.tsx +302 -0
- package/src/contentful/blocks/image-promo-bar/helper.test.tsx +61 -0
- package/src/contentful/blocks/image-promo-bar/index.test.tsx +467 -0
- package/src/contentful/blocks/image-promo-bar/index.tsx +248 -246
- package/src/contentful/blocks/image-promo-bar/vimeo-embed.test.tsx +142 -0
- package/src/contentful/blocks/image-promo-bar/youtube-embed.test.tsx +104 -0
- package/src/contentful/blocks/modal/index.test.tsx +209 -0
- package/src/contentful/blocks/navigation/desktop-link-groups.tsx/index.test.tsx +208 -0
- package/src/contentful/blocks/navigation/index.test.tsx +924 -0
- package/src/contentful/blocks/navigation/mobile-link-groups.tsx/index.test.tsx +131 -0
- package/src/contentful/blocks/primary-hero/index.test.tsx +286 -0
- package/src/contentful/blocks/primary-hero/index.tsx +7 -4
- package/src/contentful/blocks/search-block/index.test.tsx +268 -0
- package/src/contentful/blocks/shape-background-wrapper/index.test.tsx +284 -0
- package/src/contentful/blocks/text/index.test.tsx +36 -0
- package/src/contentful/index.test.ts +45 -0
- package/src/global-mocks/contentful/to-document.ts +25 -0
- package/src/global-mocks/cookie.ts +48 -0
- package/src/global-mocks/cx.ts +37 -0
- package/src/global-mocks/index.ts +89 -0
- package/src/global-mocks/speed-card-bg.ts +27 -0
- package/src/global-mocks/utm.ts +49 -0
- package/src/hooks/contentful/use-contentful-rich-text.test.tsx +1758 -0
- package/src/hooks/contentful/use-contentful-rich-text.tsx +1 -1
- package/src/hooks/contentful/use-processed-check-list.test.tsx +277 -0
- package/src/hooks/use-body-scroll-lock.test.ts +134 -0
- package/src/hooks/use-carousel-swipe.test.ts +393 -0
- package/src/hooks/use-outside-click.test.ts +142 -0
- package/src/index.ts +1 -1
- package/src/next/index.test.ts +7 -0
- package/src/setupTests.ts +17 -11
- package/src/utils/contentful/to-document.test.ts +85 -0
- package/src/utils/cookie.test.ts +180 -0
- package/src/utils/cx.test.ts +90 -0
- package/src/utils/index.test.ts +115 -0
- package/src/utils/speed-card-bg.test.ts +46 -0
- package/src/utils/utm.test.ts +359 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/* eslint-env jest */
|
|
2
|
+
/**
|
|
3
|
+
* Mock: utils/cookie.ts
|
|
4
|
+
*
|
|
5
|
+
* Provides mock implementations for all cookie utility functions.
|
|
6
|
+
* Uses `jest.mock` with the `@shared/utils/cookie` path alias.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* import { mockCookieUtils, resetCookieMocks } from "@shared/global-mocks/cookie";
|
|
10
|
+
* mockCookieUtils(); // call at top-level (hoisted by Jest)
|
|
11
|
+
* afterEach(resetCookieMocks);
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
export const mockGetUTMs = jest.fn().mockReturnValue(null);
|
|
15
|
+
export const mockSetUTMs = jest.fn();
|
|
16
|
+
export const mockRemoveUTMs = jest.fn();
|
|
17
|
+
export const mockGetCookie = jest.fn().mockReturnValue(null);
|
|
18
|
+
export const mockGetParsedCookie = jest.fn().mockReturnValue(null);
|
|
19
|
+
export const mockSetCookie = jest.fn();
|
|
20
|
+
|
|
21
|
+
export function mockCookieUtils() {
|
|
22
|
+
jest.mock("@shared/utils/cookie", () => ({
|
|
23
|
+
getUTMs: mockGetUTMs,
|
|
24
|
+
setUTMs: mockSetUTMs,
|
|
25
|
+
removeUTMs: mockRemoveUTMs,
|
|
26
|
+
getCookie: mockGetCookie,
|
|
27
|
+
getParsedCookie: mockGetParsedCookie,
|
|
28
|
+
setCookie: mockSetCookie,
|
|
29
|
+
}));
|
|
30
|
+
|
|
31
|
+
return {
|
|
32
|
+
mockGetUTMs,
|
|
33
|
+
mockSetUTMs,
|
|
34
|
+
mockRemoveUTMs,
|
|
35
|
+
mockGetCookie,
|
|
36
|
+
mockGetParsedCookie,
|
|
37
|
+
mockSetCookie,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export function resetCookieMocks() {
|
|
42
|
+
mockGetUTMs.mockReset().mockReturnValue(null);
|
|
43
|
+
mockSetUTMs.mockReset();
|
|
44
|
+
mockRemoveUTMs.mockReset();
|
|
45
|
+
mockGetCookie.mockReset().mockReturnValue(null);
|
|
46
|
+
mockGetParsedCookie.mockReset().mockReturnValue(null);
|
|
47
|
+
mockSetCookie.mockReset();
|
|
48
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/* eslint-env jest */
|
|
2
|
+
/**
|
|
3
|
+
* Mock: utils/cx.ts
|
|
4
|
+
*
|
|
5
|
+
* Provides a mock `cx` that simply joins truthy arguments with a space.
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* import { mockCxUtil, resetCxMocks } from "@shared/global-mocks/cx";
|
|
9
|
+
* mockCxUtil();
|
|
10
|
+
* afterEach(resetCxMocks);
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
export const mockCx = jest
|
|
14
|
+
.fn()
|
|
15
|
+
.mockImplementation((...args: unknown[]) => args.filter(Boolean).join(" "));
|
|
16
|
+
|
|
17
|
+
export const mockClsx = jest
|
|
18
|
+
.fn()
|
|
19
|
+
.mockImplementation((...args: unknown[]) => args.filter(Boolean).join(" "));
|
|
20
|
+
|
|
21
|
+
export function mockCxUtil() {
|
|
22
|
+
jest.mock("@shared/utils/cx", () => ({
|
|
23
|
+
cx: mockCx,
|
|
24
|
+
clsx: mockClsx,
|
|
25
|
+
}));
|
|
26
|
+
|
|
27
|
+
return { mockCx, mockClsx };
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export function resetCxMocks() {
|
|
31
|
+
mockCx
|
|
32
|
+
.mockReset()
|
|
33
|
+
.mockImplementation((...args: unknown[]) => args.filter(Boolean).join(" "));
|
|
34
|
+
mockClsx
|
|
35
|
+
.mockReset()
|
|
36
|
+
.mockImplementation((...args: unknown[]) => args.filter(Boolean).join(" "));
|
|
37
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
// ── Convenience helpers ────────────────────────────────
|
|
2
|
+
import {
|
|
3
|
+
mockToDocumentUtil,
|
|
4
|
+
resetToDocumentMocks,
|
|
5
|
+
} from "./contentful/to-document";
|
|
6
|
+
import { mockCookieUtils, resetCookieMocks } from "./cookie";
|
|
7
|
+
import { mockCxUtil, resetCxMocks } from "./cx";
|
|
8
|
+
import { resetJsCookieMocks } from "./external/js-cookie";
|
|
9
|
+
import { mockSpeedCardBgUtil, resetSpeedCardBgMocks } from "./speed-card-bg";
|
|
10
|
+
import { mockUtmUtils, resetUtmMocks } from "./utm";
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Global Mocks — Barrel Export
|
|
14
|
+
*
|
|
15
|
+
* Re-exports every mock from the individual modules so consumers
|
|
16
|
+
* can import from a single entry point:
|
|
17
|
+
*
|
|
18
|
+
* import { mockCookieUtils, mockUtmUtils } from "@shared/global-mocks";
|
|
19
|
+
*
|
|
20
|
+
* Or import from a specific module to keep dependencies narrow:
|
|
21
|
+
*
|
|
22
|
+
* import { mockCookieUtils } from "@shared/global-mocks/cookie";
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
// ── Individual modules ─────────────────────────────────
|
|
26
|
+
export {
|
|
27
|
+
mockGetUTMs,
|
|
28
|
+
mockSetUTMs,
|
|
29
|
+
mockRemoveUTMs,
|
|
30
|
+
mockGetCookie,
|
|
31
|
+
mockGetParsedCookie,
|
|
32
|
+
mockSetCookie,
|
|
33
|
+
mockCookieUtils,
|
|
34
|
+
resetCookieMocks,
|
|
35
|
+
} from "./cookie";
|
|
36
|
+
|
|
37
|
+
export { mockCx, mockClsx, mockCxUtil, resetCxMocks } from "./cx";
|
|
38
|
+
|
|
39
|
+
export {
|
|
40
|
+
mockSpeedCardBg,
|
|
41
|
+
mockSpeedCardBgUtil,
|
|
42
|
+
resetSpeedCardBgMocks,
|
|
43
|
+
} from "./speed-card-bg";
|
|
44
|
+
|
|
45
|
+
export {
|
|
46
|
+
mockGetUtmParametersFromURL,
|
|
47
|
+
mockCombineExistingAndNewUTMs,
|
|
48
|
+
mockGetOrganicTrafficUtmParameters,
|
|
49
|
+
mockGetCampaignProperties,
|
|
50
|
+
mockBuildPreservedQueryHref,
|
|
51
|
+
mockUtmUtils,
|
|
52
|
+
resetUtmMocks,
|
|
53
|
+
} from "./utm";
|
|
54
|
+
|
|
55
|
+
export {
|
|
56
|
+
mockToDocument,
|
|
57
|
+
mockToDocumentUtil,
|
|
58
|
+
resetToDocumentMocks,
|
|
59
|
+
} from "./contentful/to-document";
|
|
60
|
+
|
|
61
|
+
// ── External dependencies ──────────────────────────────
|
|
62
|
+
export {
|
|
63
|
+
mockedCookies,
|
|
64
|
+
mockCookiesGet,
|
|
65
|
+
mockCookiesSet,
|
|
66
|
+
mockCookiesRemove,
|
|
67
|
+
resetJsCookieMocks,
|
|
68
|
+
} from "./external/js-cookie";
|
|
69
|
+
|
|
70
|
+
/** Activate mocks for ALL utility modules at once. */
|
|
71
|
+
export function mockAllUtils() {
|
|
72
|
+
const cookie = mockCookieUtils();
|
|
73
|
+
const utm = mockUtmUtils();
|
|
74
|
+
const cx = mockCxUtil();
|
|
75
|
+
const speedCardBg = mockSpeedCardBgUtil();
|
|
76
|
+
const toDoc = mockToDocumentUtil();
|
|
77
|
+
|
|
78
|
+
return { ...cookie, ...utm, ...cx, ...speedCardBg, ...toDoc };
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/** Reset every utility mock to its default state. */
|
|
82
|
+
export function resetAllUtilMocks() {
|
|
83
|
+
resetCookieMocks();
|
|
84
|
+
resetCxMocks();
|
|
85
|
+
resetSpeedCardBgMocks();
|
|
86
|
+
resetUtmMocks();
|
|
87
|
+
resetToDocumentMocks();
|
|
88
|
+
resetJsCookieMocks();
|
|
89
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/* eslint-env jest */
|
|
2
|
+
/**
|
|
3
|
+
* Mock: utils/speed-card-bg.ts
|
|
4
|
+
*
|
|
5
|
+
* Provides a mock `SpeedCardBg` that returns a minimal SVG string.
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* import { mockSpeedCardBgUtil, resetSpeedCardBgMocks } from "@shared/global-mocks/speed-card-bg";
|
|
9
|
+
* mockSpeedCardBgUtil();
|
|
10
|
+
* afterEach(resetSpeedCardBgMocks);
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
export const mockSpeedCardBg = jest.fn().mockReturnValue("<svg></svg>");
|
|
14
|
+
|
|
15
|
+
export function mockSpeedCardBgUtil() {
|
|
16
|
+
jest.mock("@shared/utils/speed-card-bg", () => ({
|
|
17
|
+
__esModule: true,
|
|
18
|
+
SpeedCardBg: mockSpeedCardBg,
|
|
19
|
+
default: mockSpeedCardBg,
|
|
20
|
+
}));
|
|
21
|
+
|
|
22
|
+
return { mockSpeedCardBg };
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export function resetSpeedCardBgMocks() {
|
|
26
|
+
mockSpeedCardBg.mockReset().mockReturnValue("<svg></svg>");
|
|
27
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/* eslint-env jest */
|
|
2
|
+
/**
|
|
3
|
+
* Mock: utils/utm.ts
|
|
4
|
+
*
|
|
5
|
+
* Provides mock implementations for all UTM utility functions.
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* import { mockUtmUtils, resetUtmMocks } from "@shared/global-mocks/utm";
|
|
9
|
+
* mockUtmUtils();
|
|
10
|
+
* afterEach(resetUtmMocks);
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
export const mockGetUtmParametersFromURL = jest.fn().mockReturnValue(null);
|
|
14
|
+
export const mockCombineExistingAndNewUTMs = jest.fn().mockReturnValue({});
|
|
15
|
+
export const mockGetOrganicTrafficUtmParameters = jest
|
|
16
|
+
.fn()
|
|
17
|
+
.mockReturnValue(null);
|
|
18
|
+
export const mockGetCampaignProperties = jest.fn().mockReturnValue(null);
|
|
19
|
+
export const mockBuildPreservedQueryHref = jest
|
|
20
|
+
.fn()
|
|
21
|
+
.mockImplementation((href: string) => href);
|
|
22
|
+
|
|
23
|
+
export function mockUtmUtils() {
|
|
24
|
+
jest.mock("@shared/utils/utm", () => ({
|
|
25
|
+
getUtmParametersFromURL: mockGetUtmParametersFromURL,
|
|
26
|
+
combineExistingAndNewUTMs: mockCombineExistingAndNewUTMs,
|
|
27
|
+
getOrganicTrafficUtmParameters: mockGetOrganicTrafficUtmParameters,
|
|
28
|
+
getCampaignProperties: mockGetCampaignProperties,
|
|
29
|
+
buildPreservedQueryHref: mockBuildPreservedQueryHref,
|
|
30
|
+
}));
|
|
31
|
+
|
|
32
|
+
return {
|
|
33
|
+
mockGetUtmParametersFromURL,
|
|
34
|
+
mockCombineExistingAndNewUTMs,
|
|
35
|
+
mockGetOrganicTrafficUtmParameters,
|
|
36
|
+
mockGetCampaignProperties,
|
|
37
|
+
mockBuildPreservedQueryHref,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export function resetUtmMocks() {
|
|
42
|
+
mockGetUtmParametersFromURL.mockReset().mockReturnValue(null);
|
|
43
|
+
mockCombineExistingAndNewUTMs.mockReset().mockReturnValue({});
|
|
44
|
+
mockGetOrganicTrafficUtmParameters.mockReset().mockReturnValue(null);
|
|
45
|
+
mockGetCampaignProperties.mockReset().mockReturnValue(null);
|
|
46
|
+
mockBuildPreservedQueryHref
|
|
47
|
+
.mockReset()
|
|
48
|
+
.mockImplementation((href: string) => href);
|
|
49
|
+
}
|