@times-components/ts-components 1.52.4 → 1.54.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/CHANGELOG.md +32 -0
- package/dist/components/newsletter-puff/AutoNewsletterPuff.d.ts +2 -3
- package/dist/components/newsletter-puff/AutoNewsletterPuff.js +3 -3
- package/dist/components/newsletter-puff/InlineNewsletterPuff.d.ts +2 -3
- package/dist/components/newsletter-puff/InlineNewsletterPuff.js +7 -22
- package/dist/components/newsletter-puff/NewsletterPuff.stories.js +5 -5
- package/dist/components/newsletter-puff/__tests__/AutoNewsletterPuff.test.js +2 -4
- package/dist/components/newsletter-puff/__tests__/InlineNewsletterPuff.test.js +12 -94
- package/dist/components/newsletter-puff/loading-overlay/LoadingOverlay.d.ts +1 -0
- package/dist/components/newsletter-puff/loading-overlay/LoadingOverlay.js +10 -0
- package/dist/components/newsletter-puff/loading-overlay/styles.d.ts +3 -0
- package/dist/components/newsletter-puff/loading-overlay/styles.js +50 -0
- package/dist/components/newsletter-puff/newsletter/Newsletter.d.ts +12 -0
- package/dist/components/newsletter-puff/newsletter/Newsletter.js +34 -0
- package/dist/components/newsletter-puff/newsletter/styles.d.ts +8 -0
- package/dist/components/newsletter-puff/newsletter/styles.js +52 -0
- package/dist/components/newsletter-puff/{NewsletterPuffButton.d.ts → newsletter-puff-button/NewsletterPuffButton.d.ts} +2 -1
- package/dist/components/newsletter-puff/newsletter-puff-button/NewsletterPuffButton.js +24 -0
- package/dist/components/newsletter-puff/{__tests__ → newsletter-puff-button/__tests__}/NewsletterPuffButton.test.d.ts +0 -0
- package/dist/components/newsletter-puff/newsletter-puff-button/__tests__/NewsletterPuffButton.test.js +41 -0
- package/dist/components/newsletter-puff/newsletter-puff-button/styles.d.ts +15 -0
- package/dist/components/newsletter-puff/newsletter-puff-button/styles.js +26 -0
- package/dist/components/newsletter-puff/{NewsletterPuffLink.d.ts → newsletter-puff-link/NewsletterPuffLink.d.ts} +0 -0
- package/dist/components/newsletter-puff/newsletter-puff-link/NewsletterPuffLink.js +29 -0
- package/dist/components/newsletter-puff/{__tests__ → newsletter-puff-link/__tests__}/NewsletterPuffLink.test.d.ts +0 -0
- package/dist/components/newsletter-puff/newsletter-puff-link/__tests__/NewsletterPuffLink.test.js +58 -0
- package/dist/components/newsletter-puff/preview-newsletter-puff/PreviewNewsletterPuff.d.ts +7 -0
- package/dist/components/newsletter-puff/preview-newsletter-puff/PreviewNewsletterPuff.js +11 -0
- package/dist/components/newsletter-puff/{__tests__ → preview-newsletter-puff/__tests__}/PreviewNewsletterPuff.test.d.ts +0 -0
- package/dist/components/newsletter-puff/preview-newsletter-puff/__tests__/PreviewNewsletterPuff.test.js +17 -0
- package/dist/components/newsletter-puff/styles.d.ts +6 -29
- package/dist/components/newsletter-puff/styles.js +11 -88
- package/dist/helpers/text-formatting/CapitaliseFirstCharacter.d.ts +1 -0
- package/dist/helpers/text-formatting/CapitaliseFirstCharacter.js +9 -0
- package/dist/helpers/text-formatting/__tests__/CapitaliseFirstCharacter.test.d.ts +1 -0
- package/dist/helpers/text-formatting/__tests__/CapitaliseFirstCharacter.test.js +12 -0
- package/dist/index.d.ts +1 -8
- package/dist/index.js +2 -10
- package/package.json +3 -3
- package/rnw.js +1 -1
- package/src/components/newsletter-puff/AutoNewsletterPuff.tsx +3 -6
- package/src/components/newsletter-puff/InlineNewsletterPuff.tsx +16 -53
- package/src/components/newsletter-puff/NewsletterPuff.stories.tsx +4 -13
- package/src/components/newsletter-puff/__tests__/AutoNewsletterPuff.test.tsx +1 -3
- package/src/components/newsletter-puff/__tests__/InlineNewsletterPuff.test.tsx +13 -119
- package/src/components/newsletter-puff/__tests__/__snapshots__/AutoNewsletterPuff.test.tsx.snap +4 -4
- package/src/components/newsletter-puff/__tests__/__snapshots__/InlineNewsletterPuff.test.tsx.snap +68 -260
- package/src/components/newsletter-puff/loading-overlay/LoadingOverlay.tsx +15 -0
- package/src/components/newsletter-puff/loading-overlay/styles.ts +54 -0
- package/src/components/newsletter-puff/newsletter/Newsletter.tsx +79 -0
- package/src/components/newsletter-puff/newsletter/styles.ts +65 -0
- package/src/components/newsletter-puff/{NewsletterPuffButton.tsx → newsletter-puff-button/NewsletterPuffButton.tsx} +10 -8
- package/src/components/newsletter-puff/{__tests__ → newsletter-puff-button/__tests__}/NewsletterPuffButton.test.tsx +12 -20
- package/src/components/newsletter-puff/newsletter-puff-button/styles.ts +28 -0
- package/src/components/newsletter-puff/{NewsletterPuffLink.tsx → newsletter-puff-link/NewsletterPuffLink.tsx} +5 -14
- package/src/components/newsletter-puff/{__tests__ → newsletter-puff-link/__tests__}/NewsletterPuffLink.test.tsx +5 -19
- package/src/components/newsletter-puff/preview-newsletter-puff/PreviewNewsletterPuff.tsx +32 -0
- package/src/components/newsletter-puff/{__tests__ → preview-newsletter-puff/__tests__}/PreviewNewsletterPuff.test.tsx +2 -5
- package/src/components/newsletter-puff/preview-newsletter-puff/__tests__/__snapshots__/PreviewNewsletterPuff.test.tsx.snap +36 -0
- package/src/components/newsletter-puff/styles.ts +10 -100
- package/src/helpers/text-formatting/CapitaliseFirstCharacter.ts +9 -0
- package/src/helpers/text-formatting/__tests__/CapitaliseFirstCharacter.test.tsx +13 -0
- package/src/index.ts +2 -27
- package/dist/components/newsletter-puff/NewsletterPuffButton.js +0 -24
- package/dist/components/newsletter-puff/NewsletterPuffLink.js +0 -34
- package/dist/components/newsletter-puff/PreviewNewsletterPuff.d.ts +0 -8
- package/dist/components/newsletter-puff/PreviewNewsletterPuff.js +0 -14
- package/dist/components/newsletter-puff/__tests__/NewsletterPuffButton.test.js +0 -47
- package/dist/components/newsletter-puff/__tests__/NewsletterPuffLink.test.js +0 -64
- package/dist/components/newsletter-puff/__tests__/PreviewNewsletterPuff.test.js +0 -18
- package/src/components/newsletter-puff/PreviewNewsletterPuff.tsx +0 -40
- package/src/components/newsletter-puff/__tests__/__snapshots__/NewsletterPuffButton.test.tsx.snap +0 -27
- package/src/components/newsletter-puff/__tests__/__snapshots__/NewsletterPuffLink.test.tsx.snap +0 -40
- package/src/components/newsletter-puff/__tests__/__snapshots__/PreviewNewsletterPuff.test.tsx.snap +0 -83
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,38 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [1.54.0](https://github.com/newsuk/times-components/compare/@times-components/ts-components@1.53.0...@times-components/ts-components@1.54.0) (2022-10-07)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **TDP-2487:** inline image special characters ([d9d2c22](https://github.com/newsuk/times-components/commit/d9d2c2256f86be3b951590135aac27c2b0ae0767))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
* **TDP-1832:** newsletter puff restyling ([bbe05d4](https://github.com/newsuk/times-components/commit/bbe05d4cca2246899da19de0879e1d6d2dab3f43))
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
### Reverts
|
|
20
|
+
|
|
21
|
+
* Revert "fix(TDP-2487): inline image special characters" (#3159) ([7e54d2f](https://github.com/newsuk/times-components/commit/7e54d2fc7003b74b9050915e87eed1e09866ab40)), closes [#3159](https://github.com/newsuk/times-components/issues/3159)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
# [1.53.0](https://github.com/newsuk/times-components/compare/@times-components/ts-components@1.52.4...@times-components/ts-components@1.53.0) (2022-09-07)
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
### Features
|
|
31
|
+
|
|
32
|
+
* **TDP-000:** Remove algolia related articles and various TS imports ([#3147](https://github.com/newsuk/times-components/issues/3147)) ([c5601b4](https://github.com/newsuk/times-components/commit/c5601b41933f35a7a545a6f1c5b9297d76677305))
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
6
38
|
## [1.52.4](https://github.com/newsuk/times-components/compare/@times-components/ts-components@1.52.3...@times-components/ts-components@1.52.4) (2022-09-06)
|
|
7
39
|
|
|
8
40
|
**Note:** Version bump only for package @times-components/ts-components
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
export declare const AutoNewsletterPuff: ({ code, copy, headline,
|
|
1
|
+
export declare const AutoNewsletterPuff: ({ code, copy, headline, section }: AutoNewsletterPuffProps) => JSX.Element;
|
|
2
2
|
declare type AutoNewsletterPuffProps = {
|
|
3
3
|
code: string;
|
|
4
4
|
copy: string;
|
|
5
5
|
headline: string;
|
|
6
|
-
|
|
7
|
-
label?: string;
|
|
6
|
+
section?: string;
|
|
8
7
|
};
|
|
9
8
|
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { ViewCountWrapper } from '../../helpers/view-count-wrapper/ViewCountWrapper';
|
|
3
3
|
import { InlineNewsletterPuff } from './InlineNewsletterPuff';
|
|
4
|
-
export const AutoNewsletterPuff = ({ code, copy, headline,
|
|
5
|
-
React.createElement(InlineNewsletterPuff, { code: code, copy: copy, headline: headline,
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
export const AutoNewsletterPuff = ({ code, copy, headline, section }) => (React.createElement(ViewCountWrapper, { trackingName: `auto-puff-${code}`, displayFunction: count => count !== undefined && [1, 3, 5].includes(count) },
|
|
5
|
+
React.createElement(InlineNewsletterPuff, { code: code, copy: copy, headline: headline, section: section })));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXV0b05ld3NsZXR0ZXJQdWZmLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbmV3c2xldHRlci1wdWZmL0F1dG9OZXdzbGV0dGVyUHVmZi50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTlELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLENBQUMsRUFDakMsSUFBSSxFQUNKLElBQUksRUFDSixRQUFRLEVBQ1IsT0FBTyxFQUNpQixFQUFFLEVBQUUsQ0FBQyxDQUM3QixvQkFBQyxnQkFBZ0IsSUFDZixZQUFZLEVBQUUsYUFBYSxJQUFJLEVBQUUsRUFDakMsZUFBZSxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxLQUFLLFNBQVMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztJQUUxRSxvQkFBQyxvQkFBb0IsSUFDbkIsSUFBSSxFQUFFLElBQUksRUFDVixJQUFJLEVBQUUsSUFBSSxFQUNWLFFBQVEsRUFBRSxRQUFRLEVBQ2xCLE9BQU8sRUFBRSxPQUFPLEdBQ2hCLENBQ2UsQ0FDcEIsQ0FBQyJ9
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
declare type InlineNewsletterPuffProps = {
|
|
2
2
|
copy: string;
|
|
3
3
|
headline: string;
|
|
4
|
-
|
|
5
|
-
label?: string;
|
|
4
|
+
section?: string;
|
|
6
5
|
code: string;
|
|
7
6
|
};
|
|
8
|
-
export declare const InlineNewsletterPuff: ({ code, copy, headline,
|
|
7
|
+
export declare const InlineNewsletterPuff: ({ code, copy, headline, section }: InlineNewsletterPuffProps) => JSX.Element;
|
|
9
8
|
export {};
|
|
@@ -2,12 +2,12 @@ import React, { useState } from 'react';
|
|
|
2
2
|
import { Mutation } from 'react-apollo';
|
|
3
3
|
import { GetNewsletter } from '@times-components/provider';
|
|
4
4
|
import { subscribeNewsletter as subscribeNewsletterMutation } from '@times-components/provider-queries';
|
|
5
|
-
import
|
|
6
|
-
import {
|
|
7
|
-
import { NewsletterPuffLink } from './NewsletterPuffLink';
|
|
5
|
+
import { Placeholder } from '@times-components/image';
|
|
6
|
+
import { Newsletter } from './newsletter/Newsletter';
|
|
8
7
|
import { TrackingContextProvider } from '../../helpers/tracking/TrackingContextProvider';
|
|
9
|
-
import {
|
|
10
|
-
|
|
8
|
+
import { capitaliseFirstCharacter } from '../../helpers/text-formatting/CapitaliseFirstCharacter';
|
|
9
|
+
import { InpContainer } from './styles';
|
|
10
|
+
export const InlineNewsletterPuff = ({ code, copy, headline, section }) => {
|
|
11
11
|
const [justSubscribed, setJustSubscribed] = useState(false);
|
|
12
12
|
return (React.createElement(GetNewsletter, { code: code, ssr: false, debounceTimeMs: 0 }, ({ isLoading, error, newsletter }) => {
|
|
13
13
|
if (error) {
|
|
@@ -35,22 +35,7 @@ export const InlineNewsletterPuff = ({ code, copy, headline, imageUri, label })
|
|
|
35
35
|
event_navigation_browsing_method: 'automated',
|
|
36
36
|
event_navigation_action: 'navigation'
|
|
37
37
|
}
|
|
38
|
-
} }, ({ intersectObserverRef }) => (React.createElement(
|
|
39
|
-
React.createElement(InpImageContainer, null,
|
|
40
|
-
React.createElement(Image, { aspectRatio: 1.42, uri: imageUri })),
|
|
41
|
-
justSubscribed ? (React.createElement(InpSubscribedContainer, null,
|
|
42
|
-
React.createElement(InpSubscribedHeadline, null, `You’ve successfully signed up to ${newsletter.title}`),
|
|
43
|
-
React.createElement(InpPreferencesContainer, null,
|
|
44
|
-
React.createElement(NewsletterPuffLink, null)))) : (React.createElement(InpSignupContainer, null,
|
|
45
|
-
React.createElement(InpSignupLabel, null, label),
|
|
46
|
-
React.createElement(InpSignupHeadline, null, headline),
|
|
47
|
-
React.createElement(InpCopy, null, copy),
|
|
48
|
-
React.createElement(InpSignupCTAContainer, { ref: intersectObserverRef },
|
|
49
|
-
React.createElement(NewsletterPuffButton, { updatingSubscription: updatingSubscription, onPress: () => {
|
|
50
|
-
if (!updatingSubscription) {
|
|
51
|
-
subscribeNewsletter({ variables: { code } });
|
|
52
|
-
}
|
|
53
|
-
} }))))))))));
|
|
38
|
+
} }, ({ intersectObserverRef }) => (React.createElement(Newsletter, { intersectObserverRef: intersectObserverRef, section: capitaliseFirstCharacter(section), justSubscribed: justSubscribed, headline: headline, updatingSubscription: updatingSubscription, copy: copy, code: code, subscribeNewsletter: subscribeNewsletter }))))));
|
|
54
39
|
}));
|
|
55
40
|
};
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5saW5lTmV3c2xldHRlclB1ZmYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9uZXdzbGV0dGVyLXB1ZmYvSW5saW5lTmV3c2xldHRlclB1ZmYudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFeEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzNELE9BQU8sRUFBRSxtQkFBbUIsSUFBSSwyQkFBMkIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFckQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDekYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFFbEcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQVN4QyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLEVBQ25DLElBQUksRUFDSixJQUFJLEVBQ0osUUFBUSxFQUNSLE9BQU8sRUFDbUIsRUFBRSxFQUFFO0lBQzlCLE1BQU0sQ0FBQyxjQUFjLEVBQUUsaUJBQWlCLENBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFNUQsT0FBTyxDQUNMLG9CQUFDLGFBQWEsSUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLENBQUMsSUFDckQsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFPLEVBQUUsRUFBRTtRQUN6QyxJQUFJLEtBQUssRUFBRTtZQUNULE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxJQUFJLFNBQVMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUM1QixPQUFPLENBQ0wsb0JBQUMsWUFBWSxJQUFDLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUU7Z0JBQ2xDLG9CQUFDLFdBQVcsT0FBRyxDQUNGLENBQ2hCLENBQUM7U0FDSDtRQUVELElBQUksVUFBVSxDQUFDLFlBQVksSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUM5QyxPQUFPLElBQUksQ0FBQztTQUNiO1FBRUQsT0FBTyxDQUNMLG9CQUFDLFFBQVEsSUFDUCxRQUFRLEVBQUUsMkJBQTJCLEVBQ3JDLFdBQVcsRUFBRSxDQUFDLEVBQUUsbUJBQW1CLEdBQUcsRUFBRSxFQUFPLEVBQUUsRUFBRTtnQkFDakQsaUJBQWlCLENBQUMsbUJBQW1CLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDdEQsQ0FBQyxJQUVBLENBQ0MsbUJBQXdCLEVBQ3hCLEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFPLEVBQ3RDLEVBQUUsQ0FBQyxDQUNILG9CQUFDLHVCQUF1QixJQUN0QixPQUFPLEVBQUU7Z0JBQ1AsTUFBTSxFQUFFLHNCQUFzQjtnQkFDOUIsS0FBSyxFQUFFO29CQUNMLG1CQUFtQixFQUFFLFVBQVUsQ0FBQyxLQUFLO29CQUNyQyx1QkFBdUIsRUFBRSxZQUFZO2lCQUN0QzthQUNGLEVBQ0QsYUFBYSxFQUFFO2dCQUNiLE1BQU0sRUFBRSxzQkFBc0I7Z0JBQzlCLEtBQUssRUFBRTtvQkFDTCxxQkFBcUIsRUFDbkIseUNBQXlDO29CQUMzQyxnQ0FBZ0MsRUFBRSxXQUFXO29CQUM3Qyx1QkFBdUIsRUFBRSxZQUFZO2lCQUN0QzthQUNGLElBRUEsQ0FBQyxFQUFFLG9CQUFvQixFQUFFLEVBQUUsRUFBRSxDQUFDLENBQzdCLG9CQUFDLFVBQVUsSUFDVCxvQkFBb0IsRUFBRSxvQkFBb0IsRUFDMUMsT0FBTyxFQUFFLHdCQUF3QixDQUFDLE9BQU8sQ0FBQyxFQUMxQyxjQUFjLEVBQUUsY0FBYyxFQUM5QixRQUFRLEVBQUUsUUFBUSxFQUNsQixvQkFBb0IsRUFBRSxvQkFBb0IsRUFDMUMsSUFBSSxFQUFFLElBQUksRUFDVixJQUFJLEVBQUUsSUFBSSxFQUNWLG1CQUFtQixFQUFFLG1CQUFtQixHQUN4QyxDQUNILENBQ3VCLENBQzNCLENBQ1EsQ0FDWixDQUFDO0lBQ0osQ0FBQyxDQUNhLENBQ2pCLENBQUM7QUFDSixDQUFDLENBQUMifQ==
|
|
@@ -5,7 +5,7 @@ import { getNewsletter, subscribeNewsletter } from '@times-components/provider-q
|
|
|
5
5
|
import { AutoNewsletterPuff } from './AutoNewsletterPuff';
|
|
6
6
|
import { InlineNewsletterPuff } from './InlineNewsletterPuff';
|
|
7
7
|
import { TrackingContextProvider } from '../../helpers/tracking/TrackingContextProvider';
|
|
8
|
-
import { PreviewNewsletterPuff } from './PreviewNewsletterPuff';
|
|
8
|
+
import { PreviewNewsletterPuff } from './preview-newsletter-puff/PreviewNewsletterPuff';
|
|
9
9
|
import analyticsStream from '../../fixtures/analytics-actions/analytics-actions';
|
|
10
10
|
const mocks = [
|
|
11
11
|
{
|
|
@@ -53,7 +53,7 @@ const showcase = {
|
|
|
53
53
|
"Current Count = ",
|
|
54
54
|
window.sessionStorage.getItem('view-count'),
|
|
55
55
|
React.createElement(TrackingContextProvider, { analyticsStream: analyticsStream, context: { component: 'ArticleSkeleton' } },
|
|
56
|
-
React.createElement(AutoNewsletterPuff, { code: text('code', 'TNL-101'), headline: text('headline', 'Best of Times'), copy: text('copy', 'We’ll send you our top stories, across all sections, straight to your inbox. Simple as that.'),
|
|
56
|
+
React.createElement(AutoNewsletterPuff, { code: text('code', 'TNL-101'), headline: text('headline', 'Best of Times'), copy: text('copy', 'We’ll send you our top stories, across all sections, straight to your inbox. Simple as that.'), section: "sport" })))),
|
|
57
57
|
name: 'Auto Newsletter Puff',
|
|
58
58
|
platform: 'web',
|
|
59
59
|
type: 'story'
|
|
@@ -62,14 +62,14 @@ const showcase = {
|
|
|
62
62
|
// eslint-disable-next-line react/prop-types
|
|
63
63
|
component: ({ text }) => (React.createElement(MockedProvider, { mocks: mocks },
|
|
64
64
|
React.createElement(TrackingContextProvider, { analyticsStream: analyticsStream, context: { component: 'ArticleSkeleton' } },
|
|
65
|
-
React.createElement(InlineNewsletterPuff, { code: text('code', 'TNL-101'), headline: text('headline', 'Best of Times'), copy: text('copy', 'We’ll send you our top stories, across all sections, straight to your inbox. Simple as that.')
|
|
65
|
+
React.createElement(InlineNewsletterPuff, { section: "news", code: text('code', 'TNL-101'), headline: text('headline', 'Best of Times'), copy: text('copy', 'We’ll send you our top stories, across all sections, straight to your inbox. Simple as that.') })))),
|
|
66
66
|
name: 'Inline Newsletter Puff',
|
|
67
67
|
platform: 'web',
|
|
68
68
|
type: 'story'
|
|
69
69
|
},
|
|
70
70
|
{
|
|
71
71
|
// eslint-disable-next-line react/prop-types
|
|
72
|
-
component: ({ text }) => (React.createElement(PreviewNewsletterPuff, { headline: text('headline', 'Best of Times'), copy: text('copy', 'We’ll send you our top stories, across all sections, straight to your inbox. Simple as that.')
|
|
72
|
+
component: ({ text }) => (React.createElement(PreviewNewsletterPuff, { section: "sport", headline: text('headline', 'Best of Times'), copy: text('copy', 'We’ll send you our top stories, across all sections, straight to your inbox. Simple as that.') })),
|
|
73
73
|
name: 'Preview Newsletter Puff',
|
|
74
74
|
platform: 'web',
|
|
75
75
|
type: 'story'
|
|
@@ -78,4 +78,4 @@ const showcase = {
|
|
|
78
78
|
name: 'Typescript Component/In Article/Newsletter Puffs'
|
|
79
79
|
};
|
|
80
80
|
showcaseConverter(module, showcase);
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmV3c2xldHRlclB1ZmYuc3Rvcmllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL25ld3NsZXR0ZXItcHVmZi9OZXdzbGV0dGVyUHVmZi5zdG9yaWVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVoRSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3ZFLE9BQU8sRUFDTCxhQUFhLEVBQ2IsbUJBQW1CLEVBQ3BCLE1BQU0sb0NBQW9DLENBQUM7QUFFNUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFOUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDekYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFFeEYsT0FBTyxlQUFlLE1BQU0sb0RBQW9ELENBQUM7QUFFakYsTUFBTSxLQUFLLEdBQUc7SUFDWjtRQUNFLE9BQU8sRUFBRTtZQUNQLEtBQUssRUFBRSxhQUFhO1lBQ3BCLFNBQVMsRUFBRTtnQkFDVCxJQUFJLEVBQUUsU0FBUzthQUNoQjtTQUNGO1FBQ0QsTUFBTSxFQUFFO1lBQ04sSUFBSSxFQUFFO2dCQUNKLFVBQVUsRUFBRTtvQkFDVixFQUFFLEVBQUUsb0JBQW9CO29CQUN4QixZQUFZLEVBQUUsS0FBSztvQkFDbkIsS0FBSyxFQUFFLGVBQWU7b0JBQ3RCLFVBQVUsRUFBRSxZQUFZO2lCQUN6QjthQUNGO1NBQ0Y7S0FDRjtJQUNEO1FBQ0UsS0FBSyxFQUFFLElBQUk7UUFDWCxPQUFPLEVBQUU7WUFDUCxLQUFLLEVBQUUsbUJBQW1CO1lBQzFCLFNBQVMsRUFBRTtn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
|
|
@@ -7,9 +7,7 @@ import { getNewsletter, subscribeNewsletter } from '@times-components/provider-q
|
|
|
7
7
|
const defaultProps = {
|
|
8
8
|
code: '123',
|
|
9
9
|
copy: 'abc',
|
|
10
|
-
headline: 'headline'
|
|
11
|
-
imageUri: 'http://jpeg.jpg',
|
|
12
|
-
label: 'news'
|
|
10
|
+
headline: 'headline'
|
|
13
11
|
};
|
|
14
12
|
const mocks = [
|
|
15
13
|
{
|
|
@@ -126,4 +124,4 @@ describe('<AutoNewsletterPuff>', () => {
|
|
|
126
124
|
});
|
|
127
125
|
});
|
|
128
126
|
});
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXV0b05ld3NsZXR0ZXJQdWZmLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9uZXdzbGV0dGVyLXB1ZmYvX190ZXN0c19fL0F1dG9OZXdzbGV0dGVyUHVmZi50ZXN0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFFMUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLHdCQUF3QixNQUFNLDhDQUE4QyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN2RSxPQUFPLEVBQ0wsYUFBYSxFQUNiLG1CQUFtQixFQUNwQixNQUFNLG9DQUFvQyxDQUFDO0FBRTVDLE1BQU0sWUFBWSxHQUFHO0lBQ25CLElBQUksRUFBRSxLQUFLO0lBQ1gsSUFBSSxFQUFFLEtBQUs7SUFDWCxRQUFRLEVBQUUsVUFBVTtDQUNyQixDQUFDO0FBRUYsTUFBTSxLQUFLLEdBQUc7SUFDWjtRQUNFLE9BQU8sRUFBRTtZQUNQLEtBQUssRUFBRSxhQUFhO1lBQ3BCLFNBQVMsRUFBRTtnQkFDVCxJQUFJLEVBQUUsU0FBUzthQUNoQjtTQUNGO1FBQ0QsTUFBTSxFQUFFO1lBQ04sSUFBSSxFQUFFO2dCQUNKLFVBQVUsRUFBRTtvQkFDVixFQUFFLEVBQUUsb0JBQW9CO29CQUN4QixZQUFZLEVBQUUsS0FBSztvQkFDbkIsS0FBSyxFQUFFLGVBQWU7b0JBQ3RCLFVBQVUsRUFBRSxZQUFZO2lCQUN6QjthQUNGO1NBQ0Y7S0FDRjtJQUNEO1FBQ0UsS0FBSyxFQUFFLElBQUk7UUFDWCxPQUFPLEVBQUU7WUFDUCxLQUFLLEVBQUUsbUJBQW1CO1lBQzFCLFNBQVMsRUFBRTtnQkFDVCxJQUFJLEVBQUUsU0FB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
|
|
@@ -50,10 +50,9 @@ const renderComponent = (analyticsStream, mocks = [
|
|
|
50
50
|
React.createElement(TrackingContextProvider, { analyticsStream: analyticsStream, context: { component: 'ArticleSkeleton' } },
|
|
51
51
|
React.createElement(InlineNewsletterPuff, Object.assign({}, {
|
|
52
52
|
code: 'TNL-119',
|
|
53
|
-
|
|
53
|
+
section: 'news',
|
|
54
54
|
headline: 'Politics. Explained.',
|
|
55
|
-
copy: 'Sign up to receive our brilliant Red Box newsletter, Matt Chorley`s poke at politics delivered every weekday morning at 8am.'
|
|
56
|
-
imageUri: 'https://nuk-tnl-deck-prod-static.s3-eu-west-1.amazonaws.com/uploads/2aa9050e6c3d4de682f11a4802ebba96.jpg'
|
|
55
|
+
copy: 'Sign up to receive our brilliant Red Box newsletter, Matt Chorley`s poke at politics delivered every weekday morning at 8am.'
|
|
57
56
|
})))));
|
|
58
57
|
describe('Inline Newsletter Puff', () => {
|
|
59
58
|
beforeEach(() => {
|
|
@@ -70,7 +69,13 @@ describe('Inline Newsletter Puff', () => {
|
|
|
70
69
|
});
|
|
71
70
|
it('renders signup state', async () => {
|
|
72
71
|
const component = renderComponent();
|
|
73
|
-
await component.
|
|
72
|
+
await component.findAllByText('One click sign up');
|
|
73
|
+
expect(component.baseElement).toMatchSnapshot();
|
|
74
|
+
});
|
|
75
|
+
it('renders loading state state', async () => {
|
|
76
|
+
const component = renderComponent();
|
|
77
|
+
const oneClickSignUp = await component.findAllByText('One click sign up');
|
|
78
|
+
fireEvent.click(oneClickSignUp[0]);
|
|
74
79
|
expect(component.baseElement).toMatchSnapshot();
|
|
75
80
|
});
|
|
76
81
|
it('renders null when is already subscribed', async () => {
|
|
@@ -102,72 +107,6 @@ describe('Inline Newsletter Puff', () => {
|
|
|
102
107
|
await delay(0);
|
|
103
108
|
expect(component.baseElement).toMatchSnapshot();
|
|
104
109
|
});
|
|
105
|
-
describe('Clicking Subscribe', () => {
|
|
106
|
-
it("renders 'saving' when the button is clicked", async () => {
|
|
107
|
-
const component = renderComponent(() => true);
|
|
108
|
-
const signupButton = await component.findByText('Sign up now');
|
|
109
|
-
fireEvent.click(signupButton);
|
|
110
|
-
expect(component.baseElement).toMatchSnapshot();
|
|
111
|
-
expect(await component.findByText('Saving…')).toBeTruthy();
|
|
112
|
-
});
|
|
113
|
-
it('triggers analytics when subscribed', async () => {
|
|
114
|
-
const analyticsStream = jest.fn();
|
|
115
|
-
const component = renderComponent(analyticsStream);
|
|
116
|
-
const signupButton = await component.findByText('Sign up now');
|
|
117
|
-
fireEvent.click(signupButton);
|
|
118
|
-
await component.findByText('Saving…');
|
|
119
|
-
expect(analyticsStream).toHaveBeenCalledWith({
|
|
120
|
-
action: 'Clicked',
|
|
121
|
-
component: 'ArticleSkeleton',
|
|
122
|
-
object: 'NewsletterPuffButton',
|
|
123
|
-
attrs: {
|
|
124
|
-
article_parent_name: 'RED BOX',
|
|
125
|
-
eventTime: '2021-05-03T00:00:00.000Z',
|
|
126
|
-
event_navigation_action: 'navigation',
|
|
127
|
-
event_navigation_browsing_method: 'click',
|
|
128
|
-
event_navigation_name: 'widget : puff : sign up now'
|
|
129
|
-
}
|
|
130
|
-
});
|
|
131
|
-
});
|
|
132
|
-
});
|
|
133
|
-
describe('Manage preferences ', () => {
|
|
134
|
-
beforeEach(() => {
|
|
135
|
-
mockDate.set(1620000000000);
|
|
136
|
-
});
|
|
137
|
-
afterEach(() => {
|
|
138
|
-
mockDate.reset();
|
|
139
|
-
jest.clearAllMocks();
|
|
140
|
-
cleanup();
|
|
141
|
-
});
|
|
142
|
-
it('renders the success view after subscribing ', async () => {
|
|
143
|
-
const component = renderComponent(() => true);
|
|
144
|
-
const signupButton = await component.findByText('Sign up now');
|
|
145
|
-
fireEvent.click(signupButton);
|
|
146
|
-
expect(await component.findByText('Manage preferences here')).toBeTruthy();
|
|
147
|
-
expect(component.baseElement).toMatchSnapshot();
|
|
148
|
-
});
|
|
149
|
-
it('triggers analytics event when manage preferences clicked', async () => {
|
|
150
|
-
const analyticsStream = jest.fn();
|
|
151
|
-
const component = renderComponent(analyticsStream);
|
|
152
|
-
const signupButton = await component.findByText('Sign up now');
|
|
153
|
-
fireEvent.click(signupButton);
|
|
154
|
-
const link = await component.findByText('Manage preferences here');
|
|
155
|
-
analyticsStream.mockClear();
|
|
156
|
-
fireEvent.click(link);
|
|
157
|
-
expect(analyticsStream).toHaveBeenCalledWith({
|
|
158
|
-
action: 'Clicked',
|
|
159
|
-
object: 'NewsletterPuffLink',
|
|
160
|
-
component: 'ArticleSkeleton',
|
|
161
|
-
attrs: {
|
|
162
|
-
article_parent_name: 'RED BOX',
|
|
163
|
-
eventTime: '2021-05-03T00:00:00.000Z',
|
|
164
|
-
event_navigation_action: 'navigation',
|
|
165
|
-
event_navigation_browsing_method: 'click',
|
|
166
|
-
event_navigation_name: 'widget : puff : manage preferences here'
|
|
167
|
-
}
|
|
168
|
-
});
|
|
169
|
-
});
|
|
170
|
-
});
|
|
171
110
|
describe('intersectionObserverTests', () => {
|
|
172
111
|
let oldIntersectionObserver;
|
|
173
112
|
beforeEach(() => {
|
|
@@ -178,10 +117,10 @@ describe('Inline Newsletter Puff', () => {
|
|
|
178
117
|
afterEach(() => {
|
|
179
118
|
window.IntersectionObserver = oldIntersectionObserver;
|
|
180
119
|
});
|
|
181
|
-
it('sign up
|
|
120
|
+
it('One click sign up : displayed', async () => {
|
|
182
121
|
const analyticsStream = jest.fn();
|
|
183
122
|
const component = renderComponent(analyticsStream);
|
|
184
|
-
await component.
|
|
123
|
+
await component.findAllByText('One click sign up');
|
|
185
124
|
FakeIntersectionObserver.intersect();
|
|
186
125
|
expect(analyticsStream).toHaveBeenCalledWith({
|
|
187
126
|
action: 'Scrolled',
|
|
@@ -196,27 +135,6 @@ describe('Inline Newsletter Puff', () => {
|
|
|
196
135
|
}
|
|
197
136
|
});
|
|
198
137
|
});
|
|
199
|
-
it('manage preferences here : displayed', async () => {
|
|
200
|
-
const analyticsStream = jest.fn();
|
|
201
|
-
const component = renderComponent(analyticsStream);
|
|
202
|
-
const signupButton = await component.findByText('Sign up now');
|
|
203
|
-
fireEvent.click(signupButton);
|
|
204
|
-
await component.findByText('Manage preferences here');
|
|
205
|
-
analyticsStream.mockClear();
|
|
206
|
-
FakeIntersectionObserver.intersect();
|
|
207
|
-
expect(analyticsStream).toHaveBeenCalledWith({
|
|
208
|
-
action: 'Scrolled',
|
|
209
|
-
component: 'ArticleSkeleton',
|
|
210
|
-
object: 'NewsletterPuffLink',
|
|
211
|
-
attrs: {
|
|
212
|
-
article_parent_name: 'RED BOX',
|
|
213
|
-
eventTime: '2021-05-03T00:00:00.000Z',
|
|
214
|
-
event_navigation_action: 'navigation',
|
|
215
|
-
event_navigation_browsing_method: 'automated',
|
|
216
|
-
event_navigation_name: 'widget : puff : manage preferences here : displayed'
|
|
217
|
-
}
|
|
218
|
-
});
|
|
219
|
-
});
|
|
220
138
|
});
|
|
221
139
|
});
|
|
222
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5saW5lTmV3c2xldHRlclB1ZmYudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL25ld3NsZXR0ZXItcHVmZi9fX3Rlc3RzX18vSW5saW5lTmV3c2xldHRlclB1ZmYudGVzdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBRTFCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRSxPQUFPLDJCQUEyQixDQUFDO0FBRW5DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUV2RSxPQUFPLFFBQVEsTUFBTSxVQUFVLENBQUM7QUFFaEMsT0FBTyxFQUNMLGFBQWEsRUFDYixtQkFBbUIsRUFDcEIsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUU1RixPQUFPLHdCQUF3QixNQUFNLDhDQUE4QyxDQUFDO0FBRXBGLE1BQU0sZUFBZSxHQUFHLENBQ3RCLGVBQTRCLEVBQzVCLFFBQWU7SUFDYjtRQUNFLE9BQU8sRUFBRTtZQUNQLEtBQUssRUFBRSxhQUFhO1lBQ3BCLFNBQVMsRUFBRTtnQkFDVCxJQUFJLEVBQUUsU0FBUzthQUNoQjtTQUNGO1FBQ0QsTUFBTSxFQUFFO1lBQ04sSUFBSSxFQUFFO2dCQUNKLFVBQVUsRUFBRTtvQkFDVixFQUFFLEVBQUUsb0JBQW9CO29CQUN4QixZQUFZLEVBQUUsS0FBSztvQkFDbkIsS0FBSyxFQUFFLFNBQVM7b0JBQ2hCLFVBQVUsRUFBRSxZQUFZO2lCQUN6QjthQUNGO1NBQ0Y7S0FDRjtJQUNEO1FBQ0Us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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const LoadingOverlay: () => JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Overlay, Bubble, Loader } from './styles';
|
|
3
|
+
export const LoadingOverlay = () => {
|
|
4
|
+
return (React.createElement(Overlay, null,
|
|
5
|
+
React.createElement(Loader, null,
|
|
6
|
+
React.createElement(Bubble, null),
|
|
7
|
+
React.createElement(Bubble, null),
|
|
8
|
+
React.createElement(Bubble, null))));
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9hZGluZ092ZXJsYXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9uZXdzbGV0dGVyLXB1ZmYvbG9hZGluZy1vdmVybGF5L0xvYWRpbmdPdmVybGF5LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFFMUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRW5ELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxHQUFHLEVBQUU7SUFDakMsT0FBTyxDQUNMLG9CQUFDLE9BQU87UUFDTixvQkFBQyxNQUFNO1lBQ0wsb0JBQUMsTUFBTSxPQUFHO1lBQ1Ysb0JBQUMsTUFBTSxPQUFHO1lBQ1Ysb0JBQUMsTUFBTSxPQUFHLENBQ0gsQ0FDRCxDQUNYLENBQUM7QUFDSixDQUFDLENBQUMifQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare const Overlay: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
2
|
+
export declare const Bubble: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
|
+
export declare const Loader: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import styled from 'styled-components';
|
|
2
|
+
import { breakpoints } from '@times-components/ts-styleguide';
|
|
3
|
+
import { View } from '../styles';
|
|
4
|
+
export const Overlay = styled(View) `
|
|
5
|
+
position: absolute;
|
|
6
|
+
width: 100%;
|
|
7
|
+
height: 100%;
|
|
8
|
+
top: 0;
|
|
9
|
+
left: 0;
|
|
10
|
+
right: 0;
|
|
11
|
+
bottom: 0;
|
|
12
|
+
background-color: rgba(255, 255, 255, 0.9);
|
|
13
|
+
z-index: 1;
|
|
14
|
+
`;
|
|
15
|
+
export const Bubble = styled.div `
|
|
16
|
+
animation: expand 0.75s ease-in-out infinite;
|
|
17
|
+
border-radius: 20px;
|
|
18
|
+
display: inline-block;
|
|
19
|
+
transform-origin: center center;
|
|
20
|
+
margin: 0 7px;
|
|
21
|
+
width: 16px;
|
|
22
|
+
height: 16px;
|
|
23
|
+
background: #c4c4c4;
|
|
24
|
+
|
|
25
|
+
:nth-child(2) {
|
|
26
|
+
animation-delay: 250ms;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
:nth-child(3) {
|
|
30
|
+
animation-delay: 500ms;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@keyframes expand {
|
|
34
|
+
100% {
|
|
35
|
+
background: #6b6b6b;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
`;
|
|
39
|
+
export const Loader = styled(View) `
|
|
40
|
+
display: flex;
|
|
41
|
+
flex-direction: row;
|
|
42
|
+
left: 40%;
|
|
43
|
+
top: 45%;
|
|
44
|
+
|
|
45
|
+
@media (min-width: ${breakpoints.wide}px) {
|
|
46
|
+
left: 40%;
|
|
47
|
+
top: 28%;
|
|
48
|
+
}
|
|
49
|
+
`;
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbmV3c2xldHRlci1wdWZmL2xvYWRpbmctb3ZlcmxheS9zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sbUJBQW1CLENBQUM7QUFFdkMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTlELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFakMsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQTs7Ozs7Ozs7OztDQVVsQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBdUIvQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQTs7Ozs7O3VCQU1YLFdBQVcsQ0FBQyxJQUFJOzs7O0NBSXRDLENBQUMifQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
declare type NewsletterProps = {
|
|
2
|
+
intersectObserverRef: (ref: HTMLElement | null) => void;
|
|
3
|
+
section?: string;
|
|
4
|
+
justSubscribed: boolean;
|
|
5
|
+
headline: string;
|
|
6
|
+
updatingSubscription: boolean;
|
|
7
|
+
copy: string;
|
|
8
|
+
code: string;
|
|
9
|
+
subscribeNewsletter: ({}: {}) => {};
|
|
10
|
+
};
|
|
11
|
+
export declare const Newsletter: ({ intersectObserverRef, section, justSubscribed, headline, updatingSubscription, copy, code, subscribeNewsletter }: NewsletterProps) => JSX.Element;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { NewsletterPuffButton } from '../newsletter-puff-button/NewsletterPuffButton';
|
|
3
|
+
import { NewsletterPuffLink } from '../newsletter-puff-link/NewsletterPuffLink';
|
|
4
|
+
import { LoadingOverlay } from '../loading-overlay/LoadingOverlay';
|
|
5
|
+
import { InpCopy, InpPreferencesContainer, InpSignupContainer, InpSignupCTAContainer, InpSignupHeadline, InpSubscribedContainer } from './styles';
|
|
6
|
+
import { InpContainer } from '../styles';
|
|
7
|
+
export const Newsletter = ({ intersectObserverRef, section, justSubscribed, headline, updatingSubscription, copy, code, subscribeNewsletter }) => {
|
|
8
|
+
const PuffButton = (style) => (React.createElement(InpSignupCTAContainer, { ref: intersectObserverRef, childStyle: style },
|
|
9
|
+
React.createElement(NewsletterPuffButton, { style: style, updatingSubscription: updatingSubscription, onPress: () => {
|
|
10
|
+
if (!updatingSubscription) {
|
|
11
|
+
subscribeNewsletter({ variables: { code } });
|
|
12
|
+
}
|
|
13
|
+
} })));
|
|
14
|
+
return (React.createElement(React.Fragment, null,
|
|
15
|
+
React.createElement(InpContainer, { section: section },
|
|
16
|
+
updatingSubscription && React.createElement(LoadingOverlay, null),
|
|
17
|
+
justSubscribed ? (React.createElement(InpSubscribedContainer, null,
|
|
18
|
+
React.createElement(InpCopy, null,
|
|
19
|
+
"You've succesfully signed up to",
|
|
20
|
+
' ',
|
|
21
|
+
React.createElement(InpSignupHeadline, null,
|
|
22
|
+
`${headline}.`,
|
|
23
|
+
" "),
|
|
24
|
+
React.createElement(NewsletterPuffLink, null)),
|
|
25
|
+
React.createElement(InpPreferencesContainer, null))) : (React.createElement(InpSignupContainer, null,
|
|
26
|
+
React.createElement(InpCopy, null,
|
|
27
|
+
React.createElement(InpSignupHeadline, null,
|
|
28
|
+
headline,
|
|
29
|
+
": "),
|
|
30
|
+
copy,
|
|
31
|
+
PuffButton('link')),
|
|
32
|
+
PuffButton('button'))))));
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmV3c2xldHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL25ld3NsZXR0ZXItcHVmZi9uZXdzbGV0dGVyL05ld3NsZXR0ZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUUxQixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFbkUsT0FBTyxFQUNMLE9BQU8sRUFDUCx1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQixpQkFBaUIsRUFDakIsc0JBQXNCLEVBQ3ZCLE1BQU0sVUFBVSxDQUFDO0FBRWxCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFhekMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsRUFDekIsb0JBQW9CLEVBQ3BCLE9BQU8sRUFDUCxjQUFjLEVBQ2QsUUFBUSxFQUNSLG9CQUFvQixFQUNwQixJQUFJLEVBQ0osSUFBSSxFQUNKLG1CQUFtQixFQUNILEVBQUUsRUFBRTtJQUNwQixNQUFNLFVBQVUsR0FBRyxDQUFDLEtBQXdCLEVBQUUsRUFBRSxDQUFDLENBQy9DLG9CQUFDLHFCQUFxQixJQUFDLEdBQUcsRUFBRSxvQkFBb0IsRUFBRSxVQUFVLEVBQUUsS0FBSztRQUNqRSxvQkFBQyxvQkFBb0IsSUFDbkIsS0FBSyxFQUFFLEtBQUssRUFDWixvQkFBb0IsRUFBRSxvQkFBb0IsRUFDMUMsT0FBTyxFQUFFLEdBQUcsRUFBRTtnQkFDWixJQUFJLENBQUMsb0JBQW9CLEVBQUU7b0JBQ3pCLG1CQUFtQixDQUFDLEVBQUUsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2lCQUM5QztZQUNILENBQUMsR0FDRCxDQUNvQixDQUN6QixDQUFDO0lBRUYsT0FBTyxDQUNMLG9CQUFDLEtBQUssQ0FBQyxRQUFRO1FBQ2Isb0JBQUMsWUFBWSxJQUFDLE9BQU8sRUFBRSxPQUFPO1lBQzNCLG9CQUFvQixJQUFJLG9CQUFDLGNBQWMsT0FBRztZQUMxQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQ2hCLG9CQUFDLHNCQUFzQjtnQkFDckIsb0JBQUMsT0FBTzs7b0JBQzBCLEdBQUc7b0JBQ25DLG9CQUFDLGlCQUFpQjt3QkFBRSxHQUFHLFFBQVEsR0FBRzs0QkFBc0I7b0JBQ3hELG9CQUFDLGtCQUFrQixPQUFHLENBQ2Q7Z0JBQ1Ysb0JBQUMsdUJBQXVCLE9BQUcsQ0FDSixDQUMxQixDQUFDLENBQUMsQ0FBQyxDQUNGLG9CQUFDLGtCQUFrQjtnQkFDakIsb0JBQUMsT0FBTztvQkFDTixvQkFBQyxpQkFBaUI7d0JBQUUsUUFBUTs2QkFBdUI7b0JBQ2xELElBQUk7b0JBQ0osVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUNYO2dCQUNULFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FDRixDQUN0QixDQUNZLENBQ0EsQ0FDbEIsQ0FBQztBQUNKLENBQUMsQ0FBQyJ9
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const InpSubscribedContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
2
|
+
export declare const InpSignupContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
|
+
export declare const InpSignupHeadline: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
4
|
+
export declare const InpCopy: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
5
|
+
export declare const InpSignupCTAContainer: import("styled-components").StyledComponent<"div", any, {
|
|
6
|
+
childStyle: any;
|
|
7
|
+
}, never>;
|
|
8
|
+
export declare const InpPreferencesContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import styled from 'styled-components';
|
|
2
|
+
import { breakpoints, colours, fonts, spacing } from '@times-components/ts-styleguide';
|
|
3
|
+
import { View, Text } from '../styles';
|
|
4
|
+
export const InpSubscribedContainer = styled(View) `
|
|
5
|
+
justify-content: center;
|
|
6
|
+
padding: 12px 16px;
|
|
7
|
+
@media (min-width: ${breakpoints.small}px) {
|
|
8
|
+
padding-right: 150px;
|
|
9
|
+
flex: 1;
|
|
10
|
+
}
|
|
11
|
+
`;
|
|
12
|
+
export const InpSignupContainer = styled(View) `
|
|
13
|
+
justify-content: center;
|
|
14
|
+
padding: 12px 16px;
|
|
15
|
+
@media (min-width: ${breakpoints.wide}px) {
|
|
16
|
+
padding: 16px 10px;
|
|
17
|
+
flex: 1;
|
|
18
|
+
}
|
|
19
|
+
`;
|
|
20
|
+
export const InpSignupHeadline = styled(Text) `
|
|
21
|
+
color: ${colours.functional.brandColour};
|
|
22
|
+
font-family: ${fonts.headline};
|
|
23
|
+
text-align: center;
|
|
24
|
+
font-size: 18px;
|
|
25
|
+
text-decoration: none;
|
|
26
|
+
margin-bottom: ${spacing(1)};
|
|
27
|
+
`;
|
|
28
|
+
export const InpCopy = styled(Text) `
|
|
29
|
+
font-family: ${fonts.body};
|
|
30
|
+
font-size: 18px;
|
|
31
|
+
text-align: left;
|
|
32
|
+
letter-spacing: -0.5px;
|
|
33
|
+
color: ${colours.functional.primary};
|
|
34
|
+
margin-bottom: ${spacing(6)};
|
|
35
|
+
line-height: 26px;
|
|
36
|
+
`;
|
|
37
|
+
export const InpSignupCTAContainer = styled(View) `
|
|
38
|
+
display: ${({ childStyle }) => (childStyle === 'link' ? 'none' : 'block')};
|
|
39
|
+
@media (min-width: ${breakpoints.medium}px) {
|
|
40
|
+
width: ${({ childStyle }) => childStyle === 'button' && '220px'};
|
|
41
|
+
margin: 0px auto;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
@media (min-width: ${breakpoints.wide}px) {
|
|
45
|
+
display: ${({ childStyle }) => childStyle === 'link' ? 'inline-block' : 'none'};
|
|
46
|
+
}
|
|
47
|
+
`;
|
|
48
|
+
export const InpPreferencesContainer = styled(View) `
|
|
49
|
+
flex-direction: row;
|
|
50
|
+
justify-content: center;
|
|
51
|
+
`;
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbmV3c2xldHRlci1wdWZmL25ld3NsZXR0ZXIvc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sTUFBTSxNQUFNLG1CQUFtQixDQUFDO0FBRXZDLE9BQU8sRUFDTCxXQUFXLEVBQ1gsT0FBTyxFQUNQLEtBQUssRUFDTCxPQUFPLEVBQ1IsTUFBTSxpQ0FBaUMsQ0FBQztBQUV6QyxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUV2QyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUE7Ozt1QkFHM0IsV0FBVyxDQUFDLEtBQUs7Ozs7Q0FJdkMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQTs7O3VCQUd2QixXQUFXLENBQUMsSUFBSTs7OztDQUl0QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFBO1dBQ2xDLE9BQU8sQ0FBQyxVQUFVLENBQUMsV0FBVztpQkFDeEIsS0FBSyxDQUFDLFFBQVE7Ozs7bUJBSVosT0FBTyxDQUFDLENBQUMsQ0FBQztDQUM1QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQTtpQkFDbEIsS0FBSyxDQUFDLElBQUk7Ozs7V0FJaEIsT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPO21CQUNsQixPQUFPLENBQUMsQ0FBQyxDQUFDOztDQUU1QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFxQjthQUN6RCxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsVUFBVSxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7dUJBQ3BELFdBQVcsQ0FBQyxNQUFNO2FBQzVCLENBQUMsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLENBQUMsVUFBVSxLQUFLLFFBQVEsSUFBSSxPQUFPOzs7O3VCQUk1QyxXQUFXLENBQUMsSUFBSTtlQUN4QixDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxDQUM1QixVQUFVLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLE1BQU07O0NBRXBELENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUE7OztDQUdsRCxDQUFDIn0=
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
declare type NewsletterPuffProps = {
|
|
2
2
|
onPress?: () => void;
|
|
3
3
|
updatingSubscription?: boolean;
|
|
4
|
+
style: 'link' | 'button';
|
|
4
5
|
};
|
|
5
|
-
export declare const NewsletterPuffButton: ({ updatingSubscription, onPress }: NewsletterPuffProps) => JSX.Element;
|
|
6
|
+
export declare const NewsletterPuffButton: ({ updatingSubscription, onPress, style }: NewsletterPuffProps) => JSX.Element;
|
|
6
7
|
export {};
|