@financial-times/n-conversion-forms 30.1.0 → 31.0.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/.circleci/config.yml +97 -150
- package/.github/workflows/gh-pages-deploy.yml +3 -3
- package/.toolkitrc.yml +19 -0
- package/.toolkitstate/ci.json +6 -0
- package/CONTRIBUTING.md +1 -1
- package/README.md +2 -2
- package/components/accept-terms-subscription.jsx +7 -5
- package/jest.config.js +2 -0
- package/package.json +30 -16
- package/.circleci/shared-helpers/.github/settings.yml +0 -1
- package/.circleci/shared-helpers/CODEOWNERS +0 -3
- package/.circleci/shared-helpers/README.md +0 -72
- package/.circleci/shared-helpers/helper-check-service-ready +0 -37
- package/.circleci/shared-helpers/helper-configure-awscli +0 -20
- package/.circleci/shared-helpers/helper-generate-build-state-artifacts +0 -29
- package/.circleci/shared-helpers/helper-install-awscli +0 -14
- package/.circleci/shared-helpers/helper-install-puppeteer-deps +0 -25
- package/.circleci/shared-helpers/helper-npm-install-peer-deps +0 -40
- package/.circleci/shared-helpers/helper-npm-store-auth-token +0 -14
- package/.circleci/shared-helpers/helper-npm-update +0 -26
- package/.circleci/shared-helpers/helper-npm-version-and-publish-public +0 -19
- package/.circleci/shared-helpers/helper-publish-github-pages +0 -43
- package/.circleci/shared-helpers/helper-setup-heroku-cli +0 -46
- package/.circleci/shared-helpers/helper-setup-s3-upload +0 -17
- package/.circleci/shared-helpers/helper-upload-assets-to-s3 +0 -69
- package/.circleci/shared-helpers/helper.example +0 -13
- package/build-state/npm-shrinkwrap.json +0 -58461
- package/dist/accept-terms-business.js +0 -74
- package/dist/accept-terms-business.spec.js +0 -40
- package/dist/accept-terms-privacy-policy.js +0 -71
- package/dist/accept-terms-subscription.js +0 -150
- package/dist/accept-terms.js +0 -217
- package/dist/app-banner.js +0 -51
- package/dist/b2c-partnership-confirmation.js +0 -64
- package/dist/billing-city.js +0 -58
- package/dist/billing-country.js +0 -43
- package/dist/billing-postcode.js +0 -76
- package/dist/company-name.js +0 -78
- package/dist/confirmation.js +0 -117
- package/dist/continue-reading.js +0 -45
- package/dist/country.js +0 -106
- package/dist/customer-care.js +0 -52
- package/dist/debug.js +0 -50
- package/dist/decision-maker.js +0 -72
- package/dist/deferred-billing-terms.js +0 -112
- package/dist/delivery-address-map.js +0 -184
- package/dist/delivery-address-type.js +0 -74
- package/dist/delivery-address.js +0 -123
- package/dist/delivery-city.js +0 -70
- package/dist/delivery-county.js +0 -48
- package/dist/delivery-instructions.js +0 -123
- package/dist/delivery-option.js +0 -77
- package/dist/delivery-po-box.js +0 -75
- package/dist/delivery-postcode.js +0 -116
- package/dist/delivery-security-instructions.js +0 -72
- package/dist/delivery-start-date.js +0 -77
- package/dist/education-job-title.js +0 -67
- package/dist/email.js +0 -90
- package/dist/error-page.js +0 -45
- package/dist/fieldset.js +0 -58
- package/dist/first-name.js +0 -73
- package/dist/form.js +0 -29
- package/dist/google-sign-in.js +0 -24
- package/dist/graduation-date.js +0 -112
- package/dist/index.js +0 -432
- package/dist/industry.js +0 -81
- package/dist/job-title.js +0 -65
- package/dist/last-name.js +0 -73
- package/dist/licence-confirmation.js +0 -67
- package/dist/licence-header.js +0 -52
- package/dist/licence-sign-in.js +0 -36
- package/dist/licence-title.js +0 -46
- package/dist/lite-sub-confirmation.js +0 -118
- package/dist/loader.js +0 -54
- package/dist/message.js +0 -101
- package/dist/message.spec.js +0 -96
- package/dist/organisation.js +0 -73
- package/dist/package-change.js +0 -38
- package/dist/password.js +0 -95
- package/dist/payment-term.js +0 -328
- package/dist/payment-type.js +0 -213
- package/dist/personal-title.js +0 -94
- package/dist/phone.js +0 -85
- package/dist/position.js +0 -86
- package/dist/progress-indicator.js +0 -66
- package/dist/province.js +0 -80
- package/dist/registration-confirmation.js +0 -108
- package/dist/responsibility.js +0 -84
- package/dist/section.js +0 -20
- package/dist/seven-day-pass-experiment-confirmation.js +0 -93
- package/dist/state.js +0 -80
- package/dist/submit.js +0 -52
- package/dist/text-input.js +0 -78
- package/dist/trial-banner.js +0 -29
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.RegistrationConfirmation = RegistrationConfirmation;
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
-
var EMAIL_DEFAULT_TEXT = 'your email';
|
|
11
|
-
var SOCIALS = [{
|
|
12
|
-
name: 'instagram',
|
|
13
|
-
link: 'https://www.instagram.com/financialtimes'
|
|
14
|
-
}, {
|
|
15
|
-
name: 'linkedin',
|
|
16
|
-
link: 'https://www.linkedin.com/company/financial-times'
|
|
17
|
-
}, {
|
|
18
|
-
name: 'twitter',
|
|
19
|
-
link: 'https://twitter.com/FT'
|
|
20
|
-
}, {
|
|
21
|
-
name: 'facebook',
|
|
22
|
-
link: 'https://www.facebook.com/financialtimes'
|
|
23
|
-
}];
|
|
24
|
-
var STORES = [{
|
|
25
|
-
name: 'apple',
|
|
26
|
-
link: 'https://apps.apple.com/app/apple-store/id1200842933'
|
|
27
|
-
}, {
|
|
28
|
-
name: 'android',
|
|
29
|
-
link: 'https://play.google.com/store/apps/details?id=com.ft.news'
|
|
30
|
-
}];
|
|
31
|
-
function RegistrationConfirmation(_ref) {
|
|
32
|
-
var _ref$email = _ref.email,
|
|
33
|
-
email = _ref$email === void 0 ? EMAIL_DEFAULT_TEXT : _ref$email,
|
|
34
|
-
_ref$returnUrl = _ref.returnUrl,
|
|
35
|
-
returnUrl = _ref$returnUrl === void 0 ? '/' : _ref$returnUrl;
|
|
36
|
-
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
37
|
-
className: "ncf"
|
|
38
|
-
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
39
|
-
className: "ncf__center ncf__margin"
|
|
40
|
-
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
41
|
-
className: "ncf__icon ncf__icon--tick ncf__icon--large"
|
|
42
|
-
}), /*#__PURE__*/_react["default"].createElement("h1", {
|
|
43
|
-
className: "ncf__header ncf__header--confirmation"
|
|
44
|
-
}, "Success"), /*#__PURE__*/_react["default"].createElement("p", {
|
|
45
|
-
className: "ncf__confirmation--message"
|
|
46
|
-
}, "We\u2019ve sent confirmation to ", email, ".")), /*#__PURE__*/_react["default"].createElement("div", {
|
|
47
|
-
className: "ncf__divider-horizontal"
|
|
48
|
-
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
49
|
-
className: "ncf__confirmation--links ncf__margin"
|
|
50
|
-
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
51
|
-
className: "ncf__confirmation--socials"
|
|
52
|
-
}, /*#__PURE__*/_react["default"].createElement("b", null, "Breaking news alerts, direct to your lock screen"), /*#__PURE__*/_react["default"].createElement("p", {
|
|
53
|
-
className: "ncf__confirmation--mobile"
|
|
54
|
-
}, "Download our apps or follow us on our socials"), /*#__PURE__*/_react["default"].createElement("p", {
|
|
55
|
-
className: "ncf__confirmation--desktop"
|
|
56
|
-
}, "Find us in the app and google play stores or follow us on our socials"), /*#__PURE__*/_react["default"].createElement("div", {
|
|
57
|
-
className: "ncf__confirmation--badges"
|
|
58
|
-
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
59
|
-
className: "o-social-follow",
|
|
60
|
-
"aria-label": "Follow on social media"
|
|
61
|
-
}, SOCIALS.map(function (_ref2) {
|
|
62
|
-
var name = _ref2.name,
|
|
63
|
-
link = _ref2.link;
|
|
64
|
-
return /*#__PURE__*/_react["default"].createElement("a", {
|
|
65
|
-
key: name,
|
|
66
|
-
href: link,
|
|
67
|
-
className: "o-social-follow-icon o-social-follow-icon--".concat(name),
|
|
68
|
-
target: "_blank",
|
|
69
|
-
rel: "noopener noreferrer",
|
|
70
|
-
"data-trackable": "register-social-".concat(name)
|
|
71
|
-
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
72
|
-
className: "o-social-follow-icon__label"
|
|
73
|
-
}, "on ", name));
|
|
74
|
-
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
75
|
-
className: "ncf__confirmation--mobile ncf__confirmation--app-badges",
|
|
76
|
-
"aria-label": "Download the app"
|
|
77
|
-
}, STORES.map(function (_ref3) {
|
|
78
|
-
var name = _ref3.name,
|
|
79
|
-
link = _ref3.link;
|
|
80
|
-
return /*#__PURE__*/_react["default"].createElement("a", {
|
|
81
|
-
key: name,
|
|
82
|
-
href: link,
|
|
83
|
-
className: "ncf-icon ncf-icon--".concat(name),
|
|
84
|
-
target: "_blank",
|
|
85
|
-
rel: "noopener noreferrer",
|
|
86
|
-
"data-trackable": "register-app-".concat(name)
|
|
87
|
-
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
88
|
-
className: "o-social-follow-icon__label"
|
|
89
|
-
}, "on ", name));
|
|
90
|
-
})))), /*#__PURE__*/_react["default"].createElement("div", {
|
|
91
|
-
className: "ncf__confirmation--alerts"
|
|
92
|
-
}, /*#__PURE__*/_react["default"].createElement("b", null, "Set up email alerts in", /*#__PURE__*/_react["default"].createElement("span", {
|
|
93
|
-
"aria-label": "myFT",
|
|
94
|
-
className: "ncf-icon ncf-icon--myft"
|
|
95
|
-
})), /*#__PURE__*/_react["default"].createElement("p", null, "Choose the content you want to follow by personalising your alerts for the most important topics and additional newsletters"), /*#__PURE__*/_react["default"].createElement("a", {
|
|
96
|
-
href: "/myft",
|
|
97
|
-
className: "margin-top-x4 ncf__button ncf__button--secondary",
|
|
98
|
-
"data-trackable": "register-personalise-my-alerts"
|
|
99
|
-
}, "Personalise my alerts"))), /*#__PURE__*/_react["default"].createElement("a", {
|
|
100
|
-
href: returnUrl,
|
|
101
|
-
target: "_parent",
|
|
102
|
-
className: "ncf__confirmation--finish ncf__button ncf__button--submit",
|
|
103
|
-
"data-trackable": "register-finish"
|
|
104
|
-
}, "Start reading"));
|
|
105
|
-
}
|
|
106
|
-
RegistrationConfirmation.propTypes = {
|
|
107
|
-
email: _propTypes["default"].string
|
|
108
|
-
};
|
package/dist/responsibility.js
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.Responsibility = Responsibility;
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
-
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
-
var _nCommonStaticData = require("n-common-static-data");
|
|
12
|
-
var B2CResponsibilities = _nCommonStaticData.demographics.responsibilities.responsibilities;
|
|
13
|
-
var B2BResponsibilities = _nCommonStaticData.b2b.demographics.responsibilities.responsibilities;
|
|
14
|
-
function Responsibility(_ref) {
|
|
15
|
-
var value = _ref.value,
|
|
16
|
-
_ref$isDisabled = _ref.isDisabled,
|
|
17
|
-
isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
|
|
18
|
-
_ref$isRequired = _ref.isRequired,
|
|
19
|
-
isRequired = _ref$isRequired === void 0 ? true : _ref$isRequired,
|
|
20
|
-
_ref$hasError = _ref.hasError,
|
|
21
|
-
hasError = _ref$hasError === void 0 ? false : _ref$hasError,
|
|
22
|
-
_ref$fieldId = _ref.fieldId,
|
|
23
|
-
fieldId = _ref$fieldId === void 0 ? 'responsibilityField' : _ref$fieldId,
|
|
24
|
-
_ref$selectId = _ref.selectId,
|
|
25
|
-
selectId = _ref$selectId === void 0 ? 'responsibility' : _ref$selectId,
|
|
26
|
-
_ref$selectName = _ref.selectName,
|
|
27
|
-
selectName = _ref$selectName === void 0 ? 'responsibility' : _ref$selectName,
|
|
28
|
-
_ref$isB2B = _ref.isB2B,
|
|
29
|
-
isB2B = _ref$isB2B === void 0 ? false : _ref$isB2B,
|
|
30
|
-
_ref$options = _ref.options,
|
|
31
|
-
options = _ref$options === void 0 ? isB2B ? B2BResponsibilities : B2CResponsibilities : _ref$options,
|
|
32
|
-
_ref$fieldLabel = _ref.fieldLabel,
|
|
33
|
-
fieldLabel = _ref$fieldLabel === void 0 ? 'Which best describes your job responsibility?' : _ref$fieldLabel;
|
|
34
|
-
var inputWrapperClassName = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--select', {
|
|
35
|
-
'o-forms-input--invalid': hasError
|
|
36
|
-
}]);
|
|
37
|
-
var fieldTitleClassName = (0, _classnames["default"])(['o-forms-title', {
|
|
38
|
-
'o-forms-field--optional': !isRequired
|
|
39
|
-
}]);
|
|
40
|
-
return /*#__PURE__*/_react["default"].createElement("label", {
|
|
41
|
-
id: fieldId,
|
|
42
|
-
className: "o-forms-field ncf__validation-error",
|
|
43
|
-
"data-validate": "required",
|
|
44
|
-
htmlFor: selectId
|
|
45
|
-
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
46
|
-
className: fieldTitleClassName
|
|
47
|
-
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
48
|
-
className: "o-forms-title__main"
|
|
49
|
-
}, fieldLabel)), /*#__PURE__*/_react["default"].createElement("span", {
|
|
50
|
-
className: inputWrapperClassName
|
|
51
|
-
}, /*#__PURE__*/_react["default"].createElement("select", {
|
|
52
|
-
id: selectId,
|
|
53
|
-
name: selectName,
|
|
54
|
-
"data-trackable": "responsibility",
|
|
55
|
-
"aria-required": isRequired,
|
|
56
|
-
required: isRequired,
|
|
57
|
-
disabled: isDisabled,
|
|
58
|
-
defaultValue: value
|
|
59
|
-
}, /*#__PURE__*/_react["default"].createElement("option", {
|
|
60
|
-
value: ""
|
|
61
|
-
}, "Please select a job responsibility"), options.map(function (_ref2) {
|
|
62
|
-
var code = _ref2.code,
|
|
63
|
-
description = _ref2.description;
|
|
64
|
-
return /*#__PURE__*/_react["default"].createElement("option", {
|
|
65
|
-
key: code,
|
|
66
|
-
value: code
|
|
67
|
-
}, description);
|
|
68
|
-
})), /*#__PURE__*/_react["default"].createElement("span", {
|
|
69
|
-
className: "o-forms-input__error"
|
|
70
|
-
}, "Please select your responsibility")));
|
|
71
|
-
}
|
|
72
|
-
Responsibility.propTypes = {
|
|
73
|
-
value: _propTypes["default"].string,
|
|
74
|
-
isDisabled: _propTypes["default"].bool,
|
|
75
|
-
hasError: _propTypes["default"].bool,
|
|
76
|
-
fieldId: _propTypes["default"].string,
|
|
77
|
-
selectId: _propTypes["default"].string,
|
|
78
|
-
selectName: _propTypes["default"].string,
|
|
79
|
-
isB2B: _propTypes["default"].bool,
|
|
80
|
-
options: _propTypes["default"].arrayOf(_propTypes["default"].shape({
|
|
81
|
-
code: _propTypes["default"].string,
|
|
82
|
-
description: _propTypes["default"].string
|
|
83
|
-
}))
|
|
84
|
-
};
|
package/dist/section.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.Section = Section;
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
-
function Section(_ref) {
|
|
11
|
-
var children = _ref.children;
|
|
12
|
-
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
13
|
-
className: "o-forms-section o-forms-section--wide"
|
|
14
|
-
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
15
|
-
className: "o-forms-section__message"
|
|
16
|
-
}, children));
|
|
17
|
-
}
|
|
18
|
-
Section.propTypes = {
|
|
19
|
-
children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]).isRequired
|
|
20
|
-
};
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.SevenDayPassExperimentConfirmation = SevenDayPassExperimentConfirmation;
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
-
var DetailsMobileView = function DetailsMobileView(_ref) {
|
|
11
|
-
var details = _ref.details;
|
|
12
|
-
return /*#__PURE__*/_react["default"].createElement("dl", {
|
|
13
|
-
className: "ncf__list ncf__lite-sub__details ncf__lite-sub-confirmation--hidden-md ncf__lite-sub-confirmation--hidden-lg"
|
|
14
|
-
}, details.map(function (detail, index) {
|
|
15
|
-
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, {
|
|
16
|
-
key: index
|
|
17
|
-
}, /*#__PURE__*/_react["default"].createElement("dt", {
|
|
18
|
-
className: "ncf__list-title"
|
|
19
|
-
}, detail.title), /*#__PURE__*/_react["default"].createElement("dd", {
|
|
20
|
-
className: "ncf__list-data"
|
|
21
|
-
}, detail.data));
|
|
22
|
-
}));
|
|
23
|
-
};
|
|
24
|
-
function SevenDayPassExperimentConfirmation(_ref2) {
|
|
25
|
-
var _ref2$offerName = _ref2.offerName,
|
|
26
|
-
offerName = _ref2$offerName === void 0 ? '' : _ref2$offerName,
|
|
27
|
-
_ref2$details = _ref2.details,
|
|
28
|
-
details = _ref2$details === void 0 ? [] : _ref2$details;
|
|
29
|
-
var detailElements = details && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("h2", {
|
|
30
|
-
className: "ncf__header2--afterline"
|
|
31
|
-
}, "Your billing details"), /*#__PURE__*/_react["default"].createElement("dl", {
|
|
32
|
-
className: "ncf__list ncf__lite-sub-confirmation--hidden-sm"
|
|
33
|
-
}, details.map(function (detail, index) {
|
|
34
|
-
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, {
|
|
35
|
-
key: index
|
|
36
|
-
}, /*#__PURE__*/_react["default"].createElement("dt", {
|
|
37
|
-
className: "ncf__list-title"
|
|
38
|
-
}, detail.title), /*#__PURE__*/_react["default"].createElement("dd", {
|
|
39
|
-
className: "ncf__list-data"
|
|
40
|
-
}, detail.data));
|
|
41
|
-
})), /*#__PURE__*/_react["default"].createElement(DetailsMobileView, {
|
|
42
|
-
details: details
|
|
43
|
-
}));
|
|
44
|
-
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
45
|
-
className: "ncf ncf__wrapper"
|
|
46
|
-
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
47
|
-
className: "ncf__center"
|
|
48
|
-
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
49
|
-
className: "ncf__icon ncf__icon--tick ncf__icon--large"
|
|
50
|
-
}), /*#__PURE__*/_react["default"].createElement("p", {
|
|
51
|
-
className: "ncf__paragraph--reduced-padding ncf__paragraph--subscription-confirmation"
|
|
52
|
-
}, "You are now subscribed to:"), /*#__PURE__*/_react["default"].createElement("h1", {
|
|
53
|
-
className: "ncf__header ncf__header--confirmation"
|
|
54
|
-
}, 'Premium Digital')), /*#__PURE__*/_react["default"].createElement("p", {
|
|
55
|
-
className: "ncf__paragraph"
|
|
56
|
-
}, "Exciting news! You are one of the first to try a", ' ', /*#__PURE__*/_react["default"].createElement("strong", null, offerName), ". As a thank you, we are pleased to extend your subscription to one month at no additional cost."), /*#__PURE__*/_react["default"].createElement("p", {
|
|
57
|
-
className: "ncf__center"
|
|
58
|
-
}, /*#__PURE__*/_react["default"].createElement("a", {
|
|
59
|
-
href: "/",
|
|
60
|
-
className: "ncf__button ncf__button--submit ncf__button--margin ncf__lite-sub-confirmation--lite-sub-cta"
|
|
61
|
-
}, "Go to FT.com")), /*#__PURE__*/_react["default"].createElement("p", {
|
|
62
|
-
className: "ncf__paragraph"
|
|
63
|
-
}, "Please save or print this page for your records as your purchase confirmation."), /*#__PURE__*/_react["default"].createElement("p", {
|
|
64
|
-
className: "ncf__paragraph"
|
|
65
|
-
}, "Here's a summary of your Premium Digital subscription:"), detailElements, /*#__PURE__*/_react["default"].createElement("div", {
|
|
66
|
-
className: "ncf__headed-paragraph"
|
|
67
|
-
}, /*#__PURE__*/_react["default"].createElement("h3", {
|
|
68
|
-
className: "ncf__header"
|
|
69
|
-
}, "Something not right?"), /*#__PURE__*/_react["default"].createElement("p", {
|
|
70
|
-
className: "ncf__paragraph"
|
|
71
|
-
}, "Go to your", ' ', /*#__PURE__*/_react["default"].createElement("a", {
|
|
72
|
-
className: "ncf__link ncf__link--external",
|
|
73
|
-
href: "https://www.ft.com/myaccount/personal-details",
|
|
74
|
-
target: "_blank",
|
|
75
|
-
rel: "noopener noreferrer",
|
|
76
|
-
"data-trackable": "yourAccount"
|
|
77
|
-
}, "account settings"), ' ', "to view or edit your account. If you need to get in touch call us on", ' ', /*#__PURE__*/_react["default"].createElement("a", {
|
|
78
|
-
href: "tel:+442077556248",
|
|
79
|
-
className: "ncf__link ncf__link--external"
|
|
80
|
-
}, "+44 20 7755 6248"), ". Or", ' ', /*#__PURE__*/_react["default"].createElement("a", {
|
|
81
|
-
className: "ncf__link ncf__link--external",
|
|
82
|
-
href: "https://help.ft.com/contact/",
|
|
83
|
-
target: "_blank",
|
|
84
|
-
rel: "noopener noreferrer"
|
|
85
|
-
}, "contact us"), ' ', "for additional support.")));
|
|
86
|
-
}
|
|
87
|
-
SevenDayPassExperimentConfirmation.propTypes = {
|
|
88
|
-
offerName: _propTypes["default"].string.isRequired,
|
|
89
|
-
details: _propTypes["default"].arrayOf(_propTypes["default"].shape({
|
|
90
|
-
title: _propTypes["default"].string.isRequired,
|
|
91
|
-
data: _propTypes["default"].string.isRequired
|
|
92
|
-
}))
|
|
93
|
-
};
|
package/dist/state.js
DELETED
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.State = State;
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
-
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
-
var _nCommonStaticData = require("n-common-static-data");
|
|
12
|
-
var defaultStates = _nCommonStaticData.americanStates.states;
|
|
13
|
-
function State(_ref) {
|
|
14
|
-
var value = _ref.value,
|
|
15
|
-
_ref$fieldId = _ref.fieldId,
|
|
16
|
-
fieldId = _ref$fieldId === void 0 ? 'stateField' : _ref$fieldId,
|
|
17
|
-
_ref$selectId = _ref.selectId,
|
|
18
|
-
selectId = _ref$selectId === void 0 ? 'state' : _ref$selectId,
|
|
19
|
-
_ref$hasError = _ref.hasError,
|
|
20
|
-
hasError = _ref$hasError === void 0 ? false : _ref$hasError,
|
|
21
|
-
_ref$isHidden = _ref.isHidden,
|
|
22
|
-
isHidden = _ref$isHidden === void 0 ? false : _ref$isHidden,
|
|
23
|
-
_ref$isBillingState = _ref.isBillingState,
|
|
24
|
-
isBillingState = _ref$isBillingState === void 0 ? false : _ref$isBillingState,
|
|
25
|
-
_ref$isDisabled = _ref.isDisabled,
|
|
26
|
-
isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
|
|
27
|
-
_ref$states = _ref.states,
|
|
28
|
-
states = _ref$states === void 0 ? defaultStates : _ref$states;
|
|
29
|
-
var fieldClassNames = (0, _classnames["default"])(['o-forms-field', {
|
|
30
|
-
ncf__hidden: isHidden
|
|
31
|
-
}]);
|
|
32
|
-
var inputWrapperClassNames = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--select', {
|
|
33
|
-
'o-forms-input--invalid': hasError
|
|
34
|
-
}]);
|
|
35
|
-
return /*#__PURE__*/_react["default"].createElement("label", {
|
|
36
|
-
id: fieldId,
|
|
37
|
-
className: fieldClassNames,
|
|
38
|
-
"data-validate": "required",
|
|
39
|
-
htmlFor: selectId
|
|
40
|
-
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
41
|
-
className: "o-forms-title"
|
|
42
|
-
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
43
|
-
className: "o-forms-title__main"
|
|
44
|
-
}, isBillingState ? 'Billing ' : '', "State")), /*#__PURE__*/_react["default"].createElement("span", {
|
|
45
|
-
className: inputWrapperClassNames
|
|
46
|
-
}, /*#__PURE__*/_react["default"].createElement("select", {
|
|
47
|
-
id: selectId,
|
|
48
|
-
"aria-required": "true",
|
|
49
|
-
required: true,
|
|
50
|
-
name: isBillingState ? 'billingState' : 'state',
|
|
51
|
-
"data-trackable": "field-state",
|
|
52
|
-
disabled: isDisabled,
|
|
53
|
-
defaultValue: value
|
|
54
|
-
}, /*#__PURE__*/_react["default"].createElement("option", {
|
|
55
|
-
disabled: true,
|
|
56
|
-
value: ""
|
|
57
|
-
}, "Please select a state"), states.map(function (_ref2) {
|
|
58
|
-
var code = _ref2.code,
|
|
59
|
-
name = _ref2.name;
|
|
60
|
-
return /*#__PURE__*/_react["default"].createElement("option", {
|
|
61
|
-
key: code,
|
|
62
|
-
value: code
|
|
63
|
-
}, name);
|
|
64
|
-
})), /*#__PURE__*/_react["default"].createElement("span", {
|
|
65
|
-
className: "o-forms-input__error"
|
|
66
|
-
}, "Please select your state")));
|
|
67
|
-
}
|
|
68
|
-
State.propTypes = {
|
|
69
|
-
value: _propTypes["default"].string,
|
|
70
|
-
fieldId: _propTypes["default"].string,
|
|
71
|
-
selectId: _propTypes["default"].string,
|
|
72
|
-
hasError: _propTypes["default"].bool,
|
|
73
|
-
isHidden: _propTypes["default"].bool,
|
|
74
|
-
isBillingState: _propTypes["default"].bool,
|
|
75
|
-
isDisabled: _propTypes["default"].bool,
|
|
76
|
-
states: _propTypes["default"].arrayOf(_propTypes["default"].shape({
|
|
77
|
-
code: _propTypes["default"].string,
|
|
78
|
-
name: _propTypes["default"].string
|
|
79
|
-
}))
|
|
80
|
-
};
|
package/dist/submit.js
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.Submit = Submit;
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
-
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
-
function Submit(_ref) {
|
|
12
|
-
var _ref$id = _ref.id,
|
|
13
|
-
id = _ref$id === void 0 ? 'submitButton' : _ref$id,
|
|
14
|
-
_ref$isCentered = _ref.isCentered,
|
|
15
|
-
isCentered = _ref$isCentered === void 0 ? false : _ref$isCentered,
|
|
16
|
-
_ref$isDisabled = _ref.isDisabled,
|
|
17
|
-
isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
|
|
18
|
-
_ref$backButtonUrl = _ref.backButtonUrl,
|
|
19
|
-
backButtonUrl = _ref$backButtonUrl === void 0 ? null : _ref$backButtonUrl,
|
|
20
|
-
_ref$label = _ref.label,
|
|
21
|
-
label = _ref$label === void 0 ? 'Continue' : _ref$label;
|
|
22
|
-
var divClassName = (0, _classnames["default"])([
|
|
23
|
-
// The space at the beginning is so that we match what the handlebars
|
|
24
|
-
// template does. Not great I know. :/
|
|
25
|
-
{
|
|
26
|
-
' ncf__field--center': isCentered
|
|
27
|
-
}, {
|
|
28
|
-
' ncf__field--flex': backButtonUrl
|
|
29
|
-
}]);
|
|
30
|
-
var backButton = backButtonUrl ? /*#__PURE__*/_react["default"].createElement("a", {
|
|
31
|
-
className: "ncf__button",
|
|
32
|
-
href: backButtonUrl,
|
|
33
|
-
target: "_parent",
|
|
34
|
-
"data-trackable": "link"
|
|
35
|
-
}, "Back") : null;
|
|
36
|
-
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
37
|
-
className: divClassName
|
|
38
|
-
}, backButton, /*#__PURE__*/_react["default"].createElement("button", {
|
|
39
|
-
id: id,
|
|
40
|
-
className: "ncf__button ncf__button--submit",
|
|
41
|
-
"data-trackable": "submit",
|
|
42
|
-
type: "submit",
|
|
43
|
-
disabled: isDisabled
|
|
44
|
-
}, label));
|
|
45
|
-
}
|
|
46
|
-
Submit.propTypes = {
|
|
47
|
-
id: _propTypes["default"].string,
|
|
48
|
-
isCentered: _propTypes["default"].bool,
|
|
49
|
-
isDisabled: _propTypes["default"].bool,
|
|
50
|
-
backButtonUrl: _propTypes["default"].string,
|
|
51
|
-
label: _propTypes["default"].string
|
|
52
|
-
};
|
package/dist/text-input.js
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.TextInput = TextInput;
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
-
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
-
function TextInput(_ref) {
|
|
12
|
-
var dataTrackable = _ref.dataTrackable,
|
|
13
|
-
_ref$errorText = _ref.errorText,
|
|
14
|
-
errorText = _ref$errorText === void 0 ? 'Please enter a value' : _ref$errorText,
|
|
15
|
-
fieldId = _ref.fieldId,
|
|
16
|
-
_ref$hasError = _ref.hasError,
|
|
17
|
-
hasError = _ref$hasError === void 0 ? false : _ref$hasError,
|
|
18
|
-
inputId = _ref.inputId,
|
|
19
|
-
inputName = _ref.inputName,
|
|
20
|
-
_ref$isDisabled = _ref.isDisabled,
|
|
21
|
-
isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
|
|
22
|
-
_ref$isRequired = _ref.isRequired,
|
|
23
|
-
isRequired = _ref$isRequired === void 0 ? false : _ref$isRequired,
|
|
24
|
-
_ref$label = _ref.label,
|
|
25
|
-
label = _ref$label === void 0 ? '' : _ref$label,
|
|
26
|
-
_ref$placeHolder = _ref.placeHolder,
|
|
27
|
-
placeHolder = _ref$placeHolder === void 0 ? '' : _ref$placeHolder,
|
|
28
|
-
_ref$value = _ref.value,
|
|
29
|
-
value = _ref$value === void 0 ? '' : _ref$value,
|
|
30
|
-
description = _ref.description;
|
|
31
|
-
// Use inputId if inputName is not explicitly passed.
|
|
32
|
-
inputName = inputName || inputId;
|
|
33
|
-
var inputWrapperClassNames = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--text', {
|
|
34
|
-
'o-forms-input--invalid': hasError
|
|
35
|
-
}, {
|
|
36
|
-
'o-forms-field--optional': !isRequired
|
|
37
|
-
}]);
|
|
38
|
-
return /*#__PURE__*/_react["default"].createElement("label", {
|
|
39
|
-
id: fieldId,
|
|
40
|
-
className: "o-forms-field ncf__validation-error",
|
|
41
|
-
"data-validate": "required",
|
|
42
|
-
htmlFor: inputId
|
|
43
|
-
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
44
|
-
className: "o-forms-title"
|
|
45
|
-
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
46
|
-
className: "o-forms-title__main"
|
|
47
|
-
}, label), description ? /*#__PURE__*/_react["default"].createElement("span", {
|
|
48
|
-
className: "o-forms-title__prompt"
|
|
49
|
-
}, description) : null), /*#__PURE__*/_react["default"].createElement("span", {
|
|
50
|
-
className: inputWrapperClassNames
|
|
51
|
-
}, /*#__PURE__*/_react["default"].createElement("input", {
|
|
52
|
-
type: "text",
|
|
53
|
-
id: inputId,
|
|
54
|
-
name: inputName,
|
|
55
|
-
placeholder: placeHolder,
|
|
56
|
-
"data-trackable": dataTrackable,
|
|
57
|
-
"aria-required": isRequired,
|
|
58
|
-
required: isRequired,
|
|
59
|
-
disabled: isDisabled,
|
|
60
|
-
defaultValue: value
|
|
61
|
-
}), /*#__PURE__*/_react["default"].createElement("span", {
|
|
62
|
-
className: "o-forms-input__error"
|
|
63
|
-
}, errorText)));
|
|
64
|
-
}
|
|
65
|
-
TextInput.propTypes = {
|
|
66
|
-
dataTrackable: _propTypes["default"].string,
|
|
67
|
-
errorText: _propTypes["default"].string,
|
|
68
|
-
fieldId: _propTypes["default"].string,
|
|
69
|
-
hasError: _propTypes["default"].bool,
|
|
70
|
-
inputId: _propTypes["default"].string,
|
|
71
|
-
inputName: _propTypes["default"].string,
|
|
72
|
-
isDisabled: _propTypes["default"].bool,
|
|
73
|
-
isRequired: _propTypes["default"].bool,
|
|
74
|
-
label: _propTypes["default"].string,
|
|
75
|
-
placeHolder: _propTypes["default"].string,
|
|
76
|
-
value: _propTypes["default"].string,
|
|
77
|
-
description: _propTypes["default"].string
|
|
78
|
-
};
|
package/dist/trial-banner.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.TrialBanner = TrialBanner;
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
-
function TrialBanner(_ref) {
|
|
11
|
-
var _ref$trialDuration = _ref.trialDuration,
|
|
12
|
-
trialDuration = _ref$trialDuration === void 0 ? '' : _ref$trialDuration;
|
|
13
|
-
var durationMessage = trialDuration ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("span", {
|
|
14
|
-
className: "ncf__strong"
|
|
15
|
-
}, trialDuration), ' ') : '';
|
|
16
|
-
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
17
|
-
id: "trialBanner",
|
|
18
|
-
className: "ncf__trial-banner"
|
|
19
|
-
}, /*#__PURE__*/_react["default"].createElement("p", {
|
|
20
|
-
className: "ncf__trial-banner-content"
|
|
21
|
-
}, "Your free ", durationMessage, "FT.com trial", /*#__PURE__*/_react["default"].createElement("img", {
|
|
22
|
-
src: "https://www.ft.com/__origami/service/image/v2/images/raw/https%3A%2F%2Fwww.ft.com%2F__assets%2Fcreatives%2Fb2b%2Fmacron-desktop-banner.png?source=conversion&height=40",
|
|
23
|
-
alt: "Emmanuel Macron",
|
|
24
|
-
className: "ncf__trial-banner-img"
|
|
25
|
-
})));
|
|
26
|
-
}
|
|
27
|
-
TrialBanner.propTypes = {
|
|
28
|
-
trialDuration: _propTypes["default"].string
|
|
29
|
-
};
|