@financial-times/n-conversion-forms 30.1.0 → 31.0.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.
Files changed (91) hide show
  1. package/.circleci/config.yml +97 -150
  2. package/.toolkitrc.yml +19 -0
  3. package/.toolkitstate/ci.json +6 -0
  4. package/README.md +2 -2
  5. package/jest.config.js +2 -0
  6. package/package.json +30 -16
  7. package/.circleci/shared-helpers/.github/settings.yml +0 -1
  8. package/.circleci/shared-helpers/CODEOWNERS +0 -3
  9. package/.circleci/shared-helpers/README.md +0 -72
  10. package/.circleci/shared-helpers/helper-check-service-ready +0 -37
  11. package/.circleci/shared-helpers/helper-configure-awscli +0 -20
  12. package/.circleci/shared-helpers/helper-generate-build-state-artifacts +0 -29
  13. package/.circleci/shared-helpers/helper-install-awscli +0 -14
  14. package/.circleci/shared-helpers/helper-install-puppeteer-deps +0 -25
  15. package/.circleci/shared-helpers/helper-npm-install-peer-deps +0 -40
  16. package/.circleci/shared-helpers/helper-npm-store-auth-token +0 -14
  17. package/.circleci/shared-helpers/helper-npm-update +0 -26
  18. package/.circleci/shared-helpers/helper-npm-version-and-publish-public +0 -19
  19. package/.circleci/shared-helpers/helper-publish-github-pages +0 -43
  20. package/.circleci/shared-helpers/helper-setup-heroku-cli +0 -46
  21. package/.circleci/shared-helpers/helper-setup-s3-upload +0 -17
  22. package/.circleci/shared-helpers/helper-upload-assets-to-s3 +0 -69
  23. package/.circleci/shared-helpers/helper.example +0 -13
  24. package/build-state/npm-shrinkwrap.json +0 -58461
  25. package/dist/accept-terms-business.js +0 -74
  26. package/dist/accept-terms-business.spec.js +0 -40
  27. package/dist/accept-terms-privacy-policy.js +0 -71
  28. package/dist/accept-terms-subscription.js +0 -150
  29. package/dist/accept-terms.js +0 -217
  30. package/dist/app-banner.js +0 -51
  31. package/dist/b2c-partnership-confirmation.js +0 -64
  32. package/dist/billing-city.js +0 -58
  33. package/dist/billing-country.js +0 -43
  34. package/dist/billing-postcode.js +0 -76
  35. package/dist/company-name.js +0 -78
  36. package/dist/confirmation.js +0 -117
  37. package/dist/continue-reading.js +0 -45
  38. package/dist/country.js +0 -106
  39. package/dist/customer-care.js +0 -52
  40. package/dist/debug.js +0 -50
  41. package/dist/decision-maker.js +0 -72
  42. package/dist/deferred-billing-terms.js +0 -112
  43. package/dist/delivery-address-map.js +0 -184
  44. package/dist/delivery-address-type.js +0 -74
  45. package/dist/delivery-address.js +0 -123
  46. package/dist/delivery-city.js +0 -70
  47. package/dist/delivery-county.js +0 -48
  48. package/dist/delivery-instructions.js +0 -123
  49. package/dist/delivery-option.js +0 -77
  50. package/dist/delivery-po-box.js +0 -75
  51. package/dist/delivery-postcode.js +0 -116
  52. package/dist/delivery-security-instructions.js +0 -72
  53. package/dist/delivery-start-date.js +0 -77
  54. package/dist/education-job-title.js +0 -67
  55. package/dist/email.js +0 -90
  56. package/dist/error-page.js +0 -45
  57. package/dist/fieldset.js +0 -58
  58. package/dist/first-name.js +0 -73
  59. package/dist/form.js +0 -29
  60. package/dist/google-sign-in.js +0 -24
  61. package/dist/graduation-date.js +0 -112
  62. package/dist/index.js +0 -432
  63. package/dist/industry.js +0 -81
  64. package/dist/job-title.js +0 -65
  65. package/dist/last-name.js +0 -73
  66. package/dist/licence-confirmation.js +0 -67
  67. package/dist/licence-header.js +0 -52
  68. package/dist/licence-sign-in.js +0 -36
  69. package/dist/licence-title.js +0 -46
  70. package/dist/lite-sub-confirmation.js +0 -118
  71. package/dist/loader.js +0 -54
  72. package/dist/message.js +0 -101
  73. package/dist/message.spec.js +0 -96
  74. package/dist/organisation.js +0 -73
  75. package/dist/package-change.js +0 -38
  76. package/dist/password.js +0 -95
  77. package/dist/payment-term.js +0 -328
  78. package/dist/payment-type.js +0 -213
  79. package/dist/personal-title.js +0 -94
  80. package/dist/phone.js +0 -85
  81. package/dist/position.js +0 -86
  82. package/dist/progress-indicator.js +0 -66
  83. package/dist/province.js +0 -80
  84. package/dist/registration-confirmation.js +0 -108
  85. package/dist/responsibility.js +0 -84
  86. package/dist/section.js +0 -20
  87. package/dist/seven-day-pass-experiment-confirmation.js +0 -93
  88. package/dist/state.js +0 -80
  89. package/dist/submit.js +0 -52
  90. package/dist/text-input.js +0 -78
  91. package/dist/trial-banner.js +0 -29
@@ -1,70 +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.DeliveryCity = DeliveryCity;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _classnames = _interopRequireDefault(require("classnames"));
11
- var _supportedCountries = require("../helpers/supportedCountries");
12
- function DeliveryCity(_ref) {
13
- var _ref$hasError = _ref.hasError,
14
- hasError = _ref$hasError === void 0 ? false : _ref$hasError,
15
- _ref$value = _ref.value,
16
- value = _ref$value === void 0 ? '' : _ref$value,
17
- _ref$isDisabled = _ref.isDisabled,
18
- isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
19
- _ref$country = _ref.country,
20
- country = _ref$country === void 0 ? 'GBR' : _ref$country;
21
- var inputWrapperClassName = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--text', {
22
- 'o-forms-input--invalid': hasError
23
- }]);
24
- var inputPlaceholder = {
25
- GBR: 'e.g. Bath',
26
- USA: 'e.g. Los Angeles',
27
- CAN: 'e.g. Montreal',
28
- ARE: 'e.g. Dubai'
29
- };
30
- var FTShippingZone = (0, _supportedCountries.identifyFTShippingZone)(country);
31
- var labelMapping = {
32
- ARE: 'Emirate or City',
33
- APAC: 'City/Prefecture',
34
- DEFAULT: 'City'
35
- };
36
- var inputLabel = labelMapping[FTShippingZone] ? labelMapping[FTShippingZone] : labelMapping['DEFAULT'];
37
- return /*#__PURE__*/_react["default"].createElement("label", {
38
- id: "deliveryCityField",
39
- className: "o-forms-field ncf__validation-error",
40
- "data-validate": "required",
41
- htmlFor: "deliveryCity"
42
- }, /*#__PURE__*/_react["default"].createElement("span", {
43
- className: "o-forms-title"
44
- }, /*#__PURE__*/_react["default"].createElement("span", {
45
- className: "o-forms-title__main"
46
- }, inputLabel)), /*#__PURE__*/_react["default"].createElement("span", {
47
- className: inputWrapperClassName
48
- }, /*#__PURE__*/_react["default"].createElement("input", {
49
- type: "text",
50
- id: "deliveryCity",
51
- name: "deliveryCity",
52
- "data-trackable": "field-deliveryCity",
53
- autoComplete: "address-level2",
54
- placeholder: inputPlaceholder[country] || '',
55
- maxLength: 40,
56
- "aria-required": "true",
57
- required: true,
58
- disabled: isDisabled,
59
- defaultValue: value
60
- }), /*#__PURE__*/_react["default"].createElement("span", {
61
- className: "o-forms-input__error"
62
- }, "Please enter a valid city or town")));
63
- }
64
- DeliveryCity.propTypes = {
65
- hasError: _propTypes["default"].bool,
66
- value: _propTypes["default"].string,
67
- isDisabled: _propTypes["default"].bool,
68
- maxlength: _propTypes["default"].number,
69
- country: _propTypes["default"].oneOf(_supportedCountries.countriesSupportedISO)
70
- };
@@ -1,48 +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.DeliveryCounty = DeliveryCounty;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _classnames = _interopRequireDefault(require("classnames"));
11
- function DeliveryCounty(_ref) {
12
- var _ref$hasError = _ref.hasError,
13
- hasError = _ref$hasError === void 0 ? false : _ref$hasError,
14
- _ref$value = _ref.value,
15
- value = _ref$value === void 0 ? '' : _ref$value,
16
- _ref$isDisabled = _ref.isDisabled,
17
- isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled;
18
- var inputWrapperClassName = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--text', {
19
- 'o-forms-input--invalid': hasError
20
- }]);
21
- return /*#__PURE__*/_react["default"].createElement("label", {
22
- id: "deliveryCountyField",
23
- className: "o-forms-field o-forms-field--optional",
24
- "data-validate": "required",
25
- htmlFor: "deliveryCounty"
26
- }, /*#__PURE__*/_react["default"].createElement("span", {
27
- className: "o-forms-title"
28
- }, /*#__PURE__*/_react["default"].createElement("span", {
29
- className: "o-forms-title__main"
30
- }, "County")), /*#__PURE__*/_react["default"].createElement("span", {
31
- className: inputWrapperClassName
32
- }, /*#__PURE__*/_react["default"].createElement("input", {
33
- type: "text",
34
- id: "deliveryCounty",
35
- name: "deliveryCounty",
36
- "data-trackable": "field-deliveryCounty",
37
- autoComplete: "address-level3",
38
- placeholder: "e.g. Somerset",
39
- maxLength: 40,
40
- disabled: isDisabled,
41
- defaultValue: value
42
- })));
43
- }
44
- DeliveryCounty.propTypes = {
45
- hasError: _propTypes["default"].bool,
46
- value: _propTypes["default"].string,
47
- isDisabled: _propTypes["default"].bool
48
- };
@@ -1,123 +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.DeliveryInstructions = DeliveryInstructions;
8
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
- var _react = _interopRequireDefault(require("react"));
10
- var _propTypes = _interopRequireDefault(require("prop-types"));
11
- var _classnames = _interopRequireDefault(require("classnames"));
12
- var _supportedCountries = require("../helpers/supportedCountries");
13
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
14
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
15
- var spanMessageByCountry = {
16
- GBR: /*#__PURE__*/_react["default"].createElement("span", {
17
- className: "o-forms-title__prompt"
18
- }, "For newspaper delivery, we can only deliver to the ground floor, so if you live in an apartment, we\u2019ll leave the newspaper at reception or by the entrance. We deliver in the early hours of the morning so our drivers won\u2019t be able to contact you or ring your doorbell."),
19
- USA: /*#__PURE__*/_react["default"].createElement("span", {
20
- className: "o-forms-title__prompt"
21
- }, "Please note we cannot guarantee delivery of the newspaper to a specific location on your property, which also includes delivery to a specific floor/suite in a building. US Federal Law prohibits delivery of newspapers into a mailbox, except via a USPS mail carrier. If you prefer delivery to a mailbox, please either select the \"PO Box\" delivery option from the top of this form, or contact \xA0", /*#__PURE__*/_react["default"].createElement("a", {
22
- href: "https://help.ft.com/contact/"
23
- }, "FT Customer Care"), "."),
24
- CAN: /*#__PURE__*/_react["default"].createElement("span", {
25
- className: "o-forms-title__prompt"
26
- }, "Please note we cannot guarantee delivery of the newspaper to a specific location on your property, which also includes delivery to a specific floor/suite in a building. If you prefer delivery by Canada Post, please either select the \"PO Box\" delivery option from the top of this form, or contact \xA0", /*#__PURE__*/_react["default"].createElement("a", {
27
- href: "https://help.ft.com/contact/"
28
- }, "FT Customer Care"), "."),
29
- CEMEA_V1: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("span", {
30
- className: "o-forms-title__prompt"
31
- }, "Newspaper delivery is restricted to ground floor addresses. If you live in an apartment the newspaper will be left at reception or by the entrance. Delivery is made in the early hours making it sometimes difficult to identify the right delivery location or gaining access where letter boxes are inside a building."), /*#__PURE__*/_react["default"].createElement("span", {
32
- className: "o-forms-title__prompt"
33
- }, "Special characters including punctuation cannot be used in the delivery instructions."), /*#__PURE__*/_react["default"].createElement("span", {
34
- className: "o-forms-title__prompt"
35
- }, "If you prefer delivery to a mailbox, please either select the \u201CPO Box\u201D delivery option from the top of this form, or contact\xA0", /*#__PURE__*/_react["default"].createElement("a", {
36
- href: "https://help.ft.com/contact/"
37
- }, "FT Customer Care"), ".")),
38
- CEMEA_V2: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("span", {
39
- className: "o-forms-title__prompt"
40
- }, "Newspaper delivery is restricted to ground floor addresses. If you live in an apartment the newspaper will be left at reception or by the entrance. Delivery is made in the early hours making it sometimes difficult to identify the right delivery location or gaining access where letter boxes are inside a building."), /*#__PURE__*/_react["default"].createElement("span", {
41
- className: "o-forms-title__prompt"
42
- }, "Special characters including punctuation cannot be used in the delivery instructions."), /*#__PURE__*/_react["default"].createElement("span", {
43
- className: "o-forms-title__prompt"
44
- }, "If you prefer delivery to a mailbox, please either select the \u201CPO Box\u201D delivery option from the top of this form, or contact\xA0", /*#__PURE__*/_react["default"].createElement("a", {
45
- href: "https://help.ft.com/contact/"
46
- }, "FT Customer Care"), ".")),
47
- APAC: /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("span", {
48
- className: "o-forms-title__prompt"
49
- }, "Newspaper delivery is restricted to ground floor addresses. If you live in an apartment the newspaper will be left at reception or by the entrance. Delivery is made in the early hours making it sometimes difficult to identify the right delivery location or gaining access where letter boxes are inside a building."), /*#__PURE__*/_react["default"].createElement("span", {
50
- className: "o-forms-title__prompt"
51
- }, "Special characters including punctuation cannot be used in the delivery instructions."), /*#__PURE__*/_react["default"].createElement("span", {
52
- className: "o-forms-title__prompt"
53
- }, "If you prefer delivery to a mailbox, please either select the \u201CPO Box\u201D delivery option from the top of this form, or contact\xA0", /*#__PURE__*/_react["default"].createElement("a", {
54
- href: "https://help.ft.com/contact/"
55
- }, "FT Customer Care"), "."))
56
- };
57
- function DeliveryInstructions(_ref) {
58
- var _ref$fieldId = _ref.fieldId,
59
- fieldId = _ref$fieldId === void 0 ? 'deliveryInstructionsField' : _ref$fieldId,
60
- _ref$hasError = _ref.hasError,
61
- hasError = _ref$hasError === void 0 ? false : _ref$hasError,
62
- _ref$inputId = _ref.inputId,
63
- inputId = _ref$inputId === void 0 ? 'deliveryInstructions' : _ref$inputId,
64
- _ref$maxlength = _ref.maxlength,
65
- maxlength = _ref$maxlength === void 0 ? null : _ref$maxlength,
66
- _ref$rows = _ref.rows,
67
- rows = _ref$rows === void 0 ? null : _ref$rows,
68
- _ref$isDisabled = _ref.isDisabled,
69
- isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
70
- _ref$placeholder = _ref.placeholder,
71
- placeholder = _ref$placeholder === void 0 ? '' : _ref$placeholder,
72
- _ref$value = _ref.value,
73
- value = _ref$value === void 0 ? '' : _ref$value,
74
- country = _ref.country;
75
- var textAreaWrapperClassNames = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--textarea', {
76
- 'o-forms-input--invalid': hasError
77
- }]);
78
- var FTShippingZone = (0, _supportedCountries.identifyFTShippingZone)(country);
79
- var extraInstruction = country === 'GBR' ? '' : "\n- Special handling, e.g. place in plastic bag, 24/7 security on reception";
80
- var defaultPlaceholder = {
81
- CEMEA_V1: "Enter instructions ".concat(maxlength && "(Max. ".concat(maxlength, " characters)"), ":\n- Door colour, letterbox location\n- Door entry codes, etc."),
82
- CEMEA_V2: "Enter instructions ".concat(maxlength && "(Max. ".concat(maxlength, " characters)"), ":\n- Door colour, letterbox location\n- Door entry codes, etc."),
83
- GBR: "Enter instructions ".concat(maxlength && "(Max. ".concat(maxlength, " characters)"), ":\n- Door colour, letterbox location\n- Placement i.e. letterbox delivery").concat(extraInstruction),
84
- USA: "Enter instructions ".concat(maxlength && "(Max. ".concat(maxlength, " characters)"), ":\n- Door colour, driveway signage\n- Cross street").concat(extraInstruction),
85
- CAN: "Enter instructions ".concat(maxlength && "(Max. ".concat(maxlength, " characters)"), ":\n- Door colour, driveway signage\n- Cross street").concat(extraInstruction)
86
- };
87
- var textAreaProps = _objectSpread(_objectSpread(_objectSpread({
88
- id: inputId,
89
- name: inputId
90
- }, maxlength && {
91
- maxLength: maxlength
92
- }), rows && {
93
- rows: rows
94
- }), {}, {
95
- 'data-trackable': 'field-deliveryInstructions',
96
- placeholder: placeholder ? placeholder : defaultPlaceholder[FTShippingZone],
97
- disabled: isDisabled,
98
- defaultValue: value
99
- });
100
- var deliveryInstructionsMessage = /*#__PURE__*/_react["default"].createElement("span", {
101
- className: "o-forms-title__prompt"
102
- }, "Special characters including punctuation cannot be used in the delivery instructions.");
103
- return /*#__PURE__*/_react["default"].createElement("label", {
104
- id: fieldId,
105
- className: "o-forms-field o-forms-field--optional",
106
- "data-validate": "required",
107
- htmlFor: inputId
108
- }, /*#__PURE__*/_react["default"].createElement("span", {
109
- className: "o-forms-title"
110
- }, /*#__PURE__*/_react["default"].createElement("span", {
111
- className: "o-forms-title__main"
112
- }, "Delivery instructions"), spanMessageByCountry[FTShippingZone], country === 'GBR' && deliveryInstructionsMessage), /*#__PURE__*/_react["default"].createElement("span", {
113
- className: textAreaWrapperClassNames
114
- }, /*#__PURE__*/_react["default"].createElement("textarea", textAreaProps)));
115
- }
116
- DeliveryInstructions.propTypes = {
117
- hasError: _propTypes["default"].bool,
118
- maxlength: _propTypes["default"].number,
119
- rows: _propTypes["default"].number,
120
- isDisabled: _propTypes["default"].bool,
121
- value: _propTypes["default"].string,
122
- country: _propTypes["default"].oneOf(['GBR', 'USA', 'CAN']).isRequired
123
- };
@@ -1,77 +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.DeliveryOption = DeliveryOption;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _classnames = _interopRequireDefault(require("classnames"));
11
- var _deliveryOptionMessages = require("../utils/delivery-option-messages");
12
- var _supportedCountries = require("../helpers/supportedCountries");
13
- function DeliveryOption(_ref) {
14
- var _ref$fieldId = _ref.fieldId,
15
- fieldId = _ref$fieldId === void 0 ? 'deliveryOptionField' : _ref$fieldId,
16
- country = _ref.country,
17
- _ref$productCode = _ref.productCode,
18
- productCode = _ref$productCode === void 0 ? undefined : _ref$productCode,
19
- _ref$options = _ref.options,
20
- options = _ref$options === void 0 ? [] : _ref$options,
21
- _ref$isSingle = _ref.isSingle,
22
- isSingle = _ref$isSingle === void 0 ? false : _ref$isSingle;
23
- var divClassName = (0, _classnames["default"])(['o-forms-field', 'ncf__delivery-option', {
24
- 'ncf__delivery-option--single': isSingle
25
- }]);
26
- var FTShippingZone = (0, _supportedCountries.identifyFTShippingZone)(country);
27
- return /*#__PURE__*/_react["default"].createElement("div", {
28
- id: fieldId,
29
- className: divClassName,
30
- role: "group",
31
- "aria-label": "Delivery options"
32
- }, /*#__PURE__*/_react["default"].createElement("span", {
33
- className: "o-forms-input o-forms-input--radio-round"
34
- }, options.map(function (option) {
35
- var value = option.value,
36
- isValidDeliveryOption = option.isValidDeliveryOption,
37
- isSelected = option.isSelected;
38
- var deliveryOptionValue = (0, _deliveryOptionMessages.getDeliveryOption)(productCode, option, FTShippingZone);
39
- if (!isValidDeliveryOption || !deliveryOptionValue) {
40
- return null;
41
- }
42
-
43
- // in case the delivery option has a custom ID
44
- var id = deliveryOptionValue.customId || value;
45
- var inputProps = {
46
- type: 'radio',
47
- id: id,
48
- name: 'deliveryOption',
49
- value: value,
50
- className: 'ncf__delivery-option__input',
51
- defaultChecked: isSelected
52
- };
53
- return /*#__PURE__*/_react["default"].createElement("label", {
54
- key: value,
55
- className: "ncf__delivery-option__item",
56
- htmlFor: id
57
- }, /*#__PURE__*/_react["default"].createElement("input", inputProps), /*#__PURE__*/_react["default"].createElement("span", {
58
- className: "o-forms-input__label ncf__delivery-option__label"
59
- }, /*#__PURE__*/_react["default"].createElement("span", {
60
- className: "ncf__delivery-option__title o-forms-title__main"
61
- }, deliveryOptionValue.title), /*#__PURE__*/_react["default"].createElement("div", {
62
- className: "ncf__delivery-option__description"
63
- }, deliveryOptionValue.description)));
64
- })));
65
- }
66
- DeliveryOption.propTypes = {
67
- country: _propTypes["default"].oneOf(_supportedCountries.countriesSupportedISO).isRequired,
68
- productCode: _propTypes["default"].string,
69
- options: _propTypes["default"].arrayOf(_propTypes["default"].shape({
70
- value: _propTypes["default"].oneOf(['PV', 'HD', 'EV']),
71
- isSelected: _propTypes["default"].bool,
72
- deliveryOnPublicationDate: _propTypes["default"].bool,
73
- flightMarket: _propTypes["default"].bool,
74
- mailDelivery: _propTypes["default"].bool
75
- })),
76
- isSingle: _propTypes["default"].bool
77
- };
@@ -1,75 +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.DeliveryPOBox = DeliveryPOBox;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _classnames = _interopRequireDefault(require("classnames"));
11
- var message = {
12
- USA: 'A P.O. Box address is only deliverable by US Mail, and is subject to a delay of up to 5 business days. For delivery on the publication date, we recommend you enter a residential or business address.',
13
- CAN: 'A P.O. Box address is only deliverable by Canada Post, and is subject to a delay of up to 5 business days. For delivery on the publication day, we recommend you enter a residential or business address.'
14
- };
15
- function DeliveryPOBox(_ref) {
16
- var _ref$fieldId = _ref.fieldId,
17
- fieldId = _ref$fieldId === void 0 ? 'deliveryPOBoxField' : _ref$fieldId,
18
- _ref$inputId = _ref.inputId,
19
- inputId = _ref$inputId === void 0 ? 'deliveryPOBox' : _ref$inputId,
20
- _ref$hasError = _ref.hasError,
21
- hasError = _ref$hasError === void 0 ? false : _ref$hasError,
22
- _ref$value = _ref.value,
23
- value = _ref$value === void 0 ? '' : _ref$value,
24
- _ref$isDisabled = _ref.isDisabled,
25
- isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
26
- _ref$isHidden = _ref.isHidden,
27
- isHidden = _ref$isHidden === void 0 ? false : _ref$isHidden,
28
- _ref$maxlength = _ref.maxlength,
29
- maxlength = _ref$maxlength === void 0 ? 50 : _ref$maxlength,
30
- _ref$country = _ref.country,
31
- country = _ref$country === void 0 ? '' : _ref$country;
32
- var labelClassNames = (0, _classnames["default"])(['o-forms-field', 'ncf__validation-error', {
33
- ncf__hidden: isHidden
34
- }]);
35
- var inputWrapperClassName = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--text', {
36
- 'o-forms-input--invalid': hasError
37
- }]);
38
- return /*#__PURE__*/_react["default"].createElement("label", {
39
- id: fieldId,
40
- className: labelClassNames,
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
- }, "P.O. Box"), /*#__PURE__*/_react["default"].createElement("span", {
48
- className: "o-forms-title__prompt"
49
- }, message[country])), /*#__PURE__*/_react["default"].createElement("span", {
50
- className: inputWrapperClassName
51
- }, /*#__PURE__*/_react["default"].createElement("input", {
52
- type: "text",
53
- id: inputId,
54
- name: inputId,
55
- "data-trackable": "field-deliveryPOBox",
56
- placeholder: "e.g. PO Box 1033",
57
- maxLength: maxlength,
58
- "aria-required": "true",
59
- required: true,
60
- disabled: isDisabled,
61
- defaultValue: value
62
- }), /*#__PURE__*/_react["default"].createElement("span", {
63
- className: "o-forms-input__error"
64
- }, "Please enter a valid P.O. Box address")));
65
- }
66
- DeliveryPOBox.propTypes = {
67
- fieldId: _propTypes["default"].string,
68
- inputId: _propTypes["default"].string,
69
- value: _propTypes["default"].string,
70
- hasError: _propTypes["default"].bool,
71
- isDisabled: _propTypes["default"].bool,
72
- isHidden: _propTypes["default"].bool,
73
- maxlength: _propTypes["default"].number,
74
- country: _propTypes["default"].string
75
- };
@@ -1,116 +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.DeliveryPostcode = DeliveryPostcode;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _classnames = _interopRequireDefault(require("classnames"));
11
- var _supportedCountries = require("../helpers/supportedCountries");
12
- var _supportedPostcodeExamples = require("../helpers/supportedPostcodeExamples");
13
- var postcodeLabel = Object.keys(_supportedCountries.countriesSupported).reduce(function (previous, countryCode) {
14
- if (countryCode === 'USA') {
15
- previous[countryCode] = 'Zip Code';
16
- } else if (countryCode === 'GBR') {
17
- previous[countryCode] = 'Postcode';
18
- } else {
19
- previous[countryCode] = 'Postal Code';
20
- }
21
- return previous;
22
- }, {});
23
- var promptLabel = Object.keys(_supportedCountries.countriesSupported).reduce(function (previous, countryCode) {
24
- if (countryCode === 'USA') {
25
- previous[countryCode] = 'Please enter your 5 digit Zip Code';
26
- } else if (countryCode === 'CAN') {
27
- previous[countryCode] = 'Please enter your 6 digit postal code';
28
- } else if (countryCode !== 'GBR') {
29
- //GBR has no label
30
- previous[countryCode] = 'Please enter your postal code';
31
- }
32
- return previous;
33
- }, {});
34
- var placeholderLabel = Object.keys(_supportedPostcodeExamples.allSupportedPostcodeExamples).reduce(function (previous, countryCode) {
35
- previous[countryCode] = 'e.g. ' + _supportedPostcodeExamples.allSupportedPostcodeExamples[countryCode];
36
- return previous;
37
- }, {});
38
- function DeliveryPostcode(_ref) {
39
- var _ref$value = _ref.value,
40
- value = _ref$value === void 0 ? '' : _ref$value,
41
- _ref$country = _ref.country,
42
- country = _ref$country === void 0 ? '' : _ref$country,
43
- _ref$isDisabled = _ref.isDisabled,
44
- isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
45
- _ref$hasError = _ref.hasError,
46
- hasError = _ref$hasError === void 0 ? false : _ref$hasError,
47
- _ref$isHidden = _ref.isHidden,
48
- isHidden = _ref$isHidden === void 0 ? false : _ref$isHidden,
49
- pattern = _ref.pattern,
50
- additionalFieldInformation = _ref.additionalFieldInformation,
51
- _ref$changePostcodeUr = _ref.changePostcodeUrl,
52
- changePostcodeUrl = _ref$changePostcodeUr === void 0 ? '' : _ref$changePostcodeUr;
53
- var postcodeReference = postcodeLabel[country.toUpperCase()] || 'Postcode';
54
- var promptReference = promptLabel[country.toUpperCase()];
55
- var placeholderReference = placeholderLabel[country.toUpperCase()] || "Enter your ".concat(postcodeReference);
56
- var inputWrapperClassNames = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--text', {
57
- 'o-forms-input--invalid': hasError
58
- }]);
59
- var deliveryPostcodeFieldClassNames = (0, _classnames["default"])(['o-forms-field', {
60
- ncf__hidden: isHidden
61
- }]);
62
- var fieldErrorClassNames = (0, _classnames["default"])(['o-forms-input__error', {
63
- 'additional-field-information__with-field-error': additionalFieldInformation
64
- }]);
65
- return /*#__PURE__*/_react["default"].createElement("label", {
66
- id: "deliveryPostcodeField",
67
- className: deliveryPostcodeFieldClassNames,
68
- "data-validate": "required",
69
- htmlFor: "deliveryPostcode"
70
- }, /*#__PURE__*/_react["default"].createElement("span", {
71
- className: "o-forms-title"
72
- }, /*#__PURE__*/_react["default"].createElement("span", {
73
- className: "o-forms-title__main"
74
- }, /*#__PURE__*/_react["default"].createElement("span", {
75
- "data-reference": "postcode"
76
- }, postcodeReference)), /*#__PURE__*/_react["default"].createElement("span", {
77
- className: "o-forms-title__prompt"
78
- }, promptReference)), /*#__PURE__*/_react["default"].createElement("span", {
79
- className: inputWrapperClassNames
80
- }, /*#__PURE__*/_react["default"].createElement("input", {
81
- type: "text",
82
- id: "deliveryPostcode",
83
- name: "deliveryPostcode",
84
- defaultValue: "".concat(value),
85
- placeholder: placeholderReference,
86
- autoComplete: "postal-code",
87
- "data-trackable": "delivery-postcode",
88
- "aria-required": "true",
89
- required: true,
90
- pattern: pattern,
91
- disabled: isDisabled
92
- }), /*#__PURE__*/_react["default"].createElement("span", {
93
- className: fieldErrorClassNames
94
- }, "Please enter a valid", ' ', /*#__PURE__*/_react["default"].createElement("span", {
95
- "data-reference": "postcode"
96
- }, postcodeReference), "."), additionalFieldInformation ? /*#__PURE__*/_react["default"].createElement("p", {
97
- className: "additional-field-information"
98
- }, additionalFieldInformation) : null, changePostcodeUrl ? /*#__PURE__*/_react["default"].createElement("a", {
99
- href: changePostcodeUrl,
100
- style: {
101
- fontSize: '12px'
102
- },
103
- className: "change-postcode-url",
104
- "data-trackable": "change-progress"
105
- }, "Change ".concat(postcodeReference)) : null));
106
- }
107
- DeliveryPostcode.propTypes = {
108
- country: _propTypes["default"].string,
109
- value: _propTypes["default"].string,
110
- pattern: _propTypes["default"].string,
111
- isDisabled: _propTypes["default"].bool,
112
- hasError: _propTypes["default"].bool,
113
- isHidden: _propTypes["default"].bool,
114
- additionalFieldInformation: _propTypes["default"].node,
115
- changePostcodeUrl: _propTypes["default"].string
116
- };
@@ -1,72 +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.DeliverySecurityInstructions = DeliverySecurityInstructions;
8
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
- var _react = _interopRequireDefault(require("react"));
10
- var _propTypes = _interopRequireDefault(require("prop-types"));
11
- var _classnames = _interopRequireDefault(require("classnames"));
12
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
13
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
14
- function DeliverySecurityInstructions(_ref) {
15
- var _ref$fieldId = _ref.fieldId,
16
- fieldId = _ref$fieldId === void 0 ? 'deliverySecurityInstructionsField' : _ref$fieldId,
17
- _ref$hasError = _ref.hasError,
18
- hasError = _ref$hasError === void 0 ? false : _ref$hasError,
19
- _ref$inputId = _ref.inputId,
20
- inputId = _ref$inputId === void 0 ? 'deliverySecurityInstructions' : _ref$inputId,
21
- _ref$maxlength = _ref.maxlength,
22
- maxlength = _ref$maxlength === void 0 ? null : _ref$maxlength,
23
- _ref$rows = _ref.rows,
24
- rows = _ref$rows === void 0 ? null : _ref$rows,
25
- _ref$isDisabled = _ref.isDisabled,
26
- isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
27
- _ref$placeholder = _ref.placeholder,
28
- placeholder = _ref$placeholder === void 0 ? '' : _ref$placeholder,
29
- _ref$value = _ref.value,
30
- value = _ref$value === void 0 ? '' : _ref$value;
31
- var textAreaWrapperClassNames = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--textarea', {
32
- 'o-forms-input--invalid': hasError
33
- }]);
34
- var defaultPlaceholder = 'Please enter any secure information here, e.g. security gate access codes';
35
- var textAreaProps = _objectSpread(_objectSpread(_objectSpread({
36
- id: inputId,
37
- name: inputId
38
- }, maxlength && {
39
- maxLength: maxlength
40
- }), rows && {
41
- rows: rows
42
- }), {}, {
43
- 'data-trackable': 'field-deliverySecurityInstructions',
44
- placeholder: placeholder ? placeholder : defaultPlaceholder,
45
- disabled: isDisabled,
46
- defaultValue: value
47
- });
48
- return /*#__PURE__*/_react["default"].createElement("label", {
49
- id: fieldId,
50
- className: "o-forms-field o-forms-field--optional",
51
- "data-validate": "required",
52
- htmlFor: inputId
53
- }, /*#__PURE__*/_react["default"].createElement("span", {
54
- className: "o-forms-title"
55
- }, /*#__PURE__*/_react["default"].createElement("span", {
56
- className: "o-forms-title__main"
57
- }, "Security instructions")), /*#__PURE__*/_react["default"].createElement("span", {
58
- className: textAreaWrapperClassNames
59
- }, /*#__PURE__*/_react["default"].createElement("textarea", textAreaProps)), /*#__PURE__*/_react["default"].createElement("span", {
60
- className: "additional-field-information"
61
- }, "NB. Details supplied here will not appear on packaging."));
62
- }
63
- DeliverySecurityInstructions.propTypes = {
64
- fieldId: _propTypes["default"].string,
65
- hasError: _propTypes["default"].bool,
66
- inputId: _propTypes["default"].string,
67
- maxlength: _propTypes["default"].number,
68
- rows: _propTypes["default"].number,
69
- isDisabled: _propTypes["default"].bool,
70
- value: _propTypes["default"].string,
71
- placeholder: _propTypes["default"].string
72
- };