@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.
Files changed (94) hide show
  1. package/.circleci/config.yml +97 -150
  2. package/.github/workflows/gh-pages-deploy.yml +3 -3
  3. package/.toolkitrc.yml +19 -0
  4. package/.toolkitstate/ci.json +6 -0
  5. package/CONTRIBUTING.md +1 -1
  6. package/README.md +2 -2
  7. package/components/accept-terms-subscription.jsx +7 -5
  8. package/jest.config.js +2 -0
  9. package/package.json +30 -16
  10. package/.circleci/shared-helpers/.github/settings.yml +0 -1
  11. package/.circleci/shared-helpers/CODEOWNERS +0 -3
  12. package/.circleci/shared-helpers/README.md +0 -72
  13. package/.circleci/shared-helpers/helper-check-service-ready +0 -37
  14. package/.circleci/shared-helpers/helper-configure-awscli +0 -20
  15. package/.circleci/shared-helpers/helper-generate-build-state-artifacts +0 -29
  16. package/.circleci/shared-helpers/helper-install-awscli +0 -14
  17. package/.circleci/shared-helpers/helper-install-puppeteer-deps +0 -25
  18. package/.circleci/shared-helpers/helper-npm-install-peer-deps +0 -40
  19. package/.circleci/shared-helpers/helper-npm-store-auth-token +0 -14
  20. package/.circleci/shared-helpers/helper-npm-update +0 -26
  21. package/.circleci/shared-helpers/helper-npm-version-and-publish-public +0 -19
  22. package/.circleci/shared-helpers/helper-publish-github-pages +0 -43
  23. package/.circleci/shared-helpers/helper-setup-heroku-cli +0 -46
  24. package/.circleci/shared-helpers/helper-setup-s3-upload +0 -17
  25. package/.circleci/shared-helpers/helper-upload-assets-to-s3 +0 -69
  26. package/.circleci/shared-helpers/helper.example +0 -13
  27. package/build-state/npm-shrinkwrap.json +0 -58461
  28. package/dist/accept-terms-business.js +0 -74
  29. package/dist/accept-terms-business.spec.js +0 -40
  30. package/dist/accept-terms-privacy-policy.js +0 -71
  31. package/dist/accept-terms-subscription.js +0 -150
  32. package/dist/accept-terms.js +0 -217
  33. package/dist/app-banner.js +0 -51
  34. package/dist/b2c-partnership-confirmation.js +0 -64
  35. package/dist/billing-city.js +0 -58
  36. package/dist/billing-country.js +0 -43
  37. package/dist/billing-postcode.js +0 -76
  38. package/dist/company-name.js +0 -78
  39. package/dist/confirmation.js +0 -117
  40. package/dist/continue-reading.js +0 -45
  41. package/dist/country.js +0 -106
  42. package/dist/customer-care.js +0 -52
  43. package/dist/debug.js +0 -50
  44. package/dist/decision-maker.js +0 -72
  45. package/dist/deferred-billing-terms.js +0 -112
  46. package/dist/delivery-address-map.js +0 -184
  47. package/dist/delivery-address-type.js +0 -74
  48. package/dist/delivery-address.js +0 -123
  49. package/dist/delivery-city.js +0 -70
  50. package/dist/delivery-county.js +0 -48
  51. package/dist/delivery-instructions.js +0 -123
  52. package/dist/delivery-option.js +0 -77
  53. package/dist/delivery-po-box.js +0 -75
  54. package/dist/delivery-postcode.js +0 -116
  55. package/dist/delivery-security-instructions.js +0 -72
  56. package/dist/delivery-start-date.js +0 -77
  57. package/dist/education-job-title.js +0 -67
  58. package/dist/email.js +0 -90
  59. package/dist/error-page.js +0 -45
  60. package/dist/fieldset.js +0 -58
  61. package/dist/first-name.js +0 -73
  62. package/dist/form.js +0 -29
  63. package/dist/google-sign-in.js +0 -24
  64. package/dist/graduation-date.js +0 -112
  65. package/dist/index.js +0 -432
  66. package/dist/industry.js +0 -81
  67. package/dist/job-title.js +0 -65
  68. package/dist/last-name.js +0 -73
  69. package/dist/licence-confirmation.js +0 -67
  70. package/dist/licence-header.js +0 -52
  71. package/dist/licence-sign-in.js +0 -36
  72. package/dist/licence-title.js +0 -46
  73. package/dist/lite-sub-confirmation.js +0 -118
  74. package/dist/loader.js +0 -54
  75. package/dist/message.js +0 -101
  76. package/dist/message.spec.js +0 -96
  77. package/dist/organisation.js +0 -73
  78. package/dist/package-change.js +0 -38
  79. package/dist/password.js +0 -95
  80. package/dist/payment-term.js +0 -328
  81. package/dist/payment-type.js +0 -213
  82. package/dist/personal-title.js +0 -94
  83. package/dist/phone.js +0 -85
  84. package/dist/position.js +0 -86
  85. package/dist/progress-indicator.js +0 -66
  86. package/dist/province.js +0 -80
  87. package/dist/registration-confirmation.js +0 -108
  88. package/dist/responsibility.js +0 -84
  89. package/dist/section.js +0 -20
  90. package/dist/seven-day-pass-experiment-confirmation.js +0 -93
  91. package/dist/state.js +0 -80
  92. package/dist/submit.js +0 -52
  93. package/dist/text-input.js +0 -78
  94. package/dist/trial-banner.js +0 -29
@@ -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.DeliveryStartDate = DeliveryStartDate;
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 DeliveryStartDate(_ref) {
15
- var _ref$hasError = _ref.hasError,
16
- hasError = _ref$hasError === void 0 ? false : _ref$hasError,
17
- _ref$date = _ref.date,
18
- date = _ref$date === void 0 ? '' : _ref$date,
19
- _ref$value = _ref.value,
20
- value = _ref$value === void 0 ? '' : _ref$value,
21
- _ref$min = _ref.min,
22
- min = _ref$min === void 0 ? null : _ref$min,
23
- _ref$max = _ref.max,
24
- max = _ref$max === void 0 ? null : _ref$max,
25
- _ref$isDisabled = _ref.isDisabled,
26
- isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
27
- _ref$isAddressUpdate = _ref.isAddressUpdate,
28
- isAddressUpdate = _ref$isAddressUpdate === void 0 ? false : _ref$isAddressUpdate;
29
- var inputWrapperClassNames = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--text', {
30
- 'o-forms-input--invalid': hasError
31
- }]);
32
- var inputProps = _objectSpread(_objectSpread(_objectSpread({
33
- type: 'date',
34
- id: 'deliveryStartDate',
35
- name: 'deliveryStartDate'
36
- }, min && {
37
- min: min
38
- }), max && {
39
- max: max
40
- }), {}, {
41
- 'data-trackable': 'field-deliveryStartDate',
42
- 'aria-required': 'true',
43
- required: true,
44
- disabled: isDisabled,
45
- defaultValue: value
46
- });
47
- var startMessage = isAddressUpdate ? 'We’ll start delivering to this address from:' : 'Your print subscription will start from:';
48
- return /*#__PURE__*/_react["default"].createElement("label", {
49
- id: "deliveryStartDateField",
50
- className: "o-forms-field ncf__validation-error",
51
- "data-validate": "required",
52
- htmlFor: inputProps.id
53
- }, /*#__PURE__*/_react["default"].createElement("span", {
54
- className: "o-forms-title"
55
- }, /*#__PURE__*/_react["default"].createElement("span", {
56
- className: "o-forms-title__main",
57
- id: "start-date-picker-title-span"
58
- }, "Delivery start date"), /*#__PURE__*/_react["default"].createElement("span", {
59
- className: "o-forms-title__prompt"
60
- }, "Earliest available delivery date: ", date)), /*#__PURE__*/_react["default"].createElement("span", {
61
- className: inputWrapperClassNames
62
- }, /*#__PURE__*/_react["default"].createElement("input", inputProps), /*#__PURE__*/_react["default"].createElement("span", {
63
- className: "o-forms-input__error"
64
- }, "Please select a valid start date")), /*#__PURE__*/_react["default"].createElement("p", null, startMessage, " ", /*#__PURE__*/_react["default"].createElement("strong", {
65
- className: "js-start-date-text"
66
- }, date)));
67
- }
68
- DeliveryStartDate.propTypes = {
69
- hasError: _propTypes["default"].bool,
70
- date: _propTypes["default"].node,
71
- // could be a string or a component that formats the string
72
- value: _propTypes["default"].string,
73
- min: _propTypes["default"].string,
74
- max: _propTypes["default"].string,
75
- isDisabled: _propTypes["default"].bool,
76
- isAddressUpdate: _propTypes["default"].bool
77
- };
@@ -1,67 +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.EducationJobTitle = EducationJobTitle;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _classnames = _interopRequireDefault(require("classnames"));
11
- function EducationJobTitle(_ref) {
12
- var _ref$value = _ref.value,
13
- value = _ref$value === void 0 ? '' : _ref$value,
14
- _ref$isDisabled = _ref.isDisabled,
15
- isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
16
- _ref$hasError = _ref.hasError,
17
- hasError = _ref$hasError === void 0 ? false : _ref$hasError,
18
- _ref$fieldId = _ref.fieldId,
19
- fieldId = _ref$fieldId === void 0 ? 'jobTitleField' : _ref$fieldId,
20
- _ref$inputId = _ref.inputId,
21
- inputId = _ref$inputId === void 0 ? 'jobTitle' : _ref$inputId,
22
- _ref$inputName = _ref.inputName,
23
- inputName = _ref$inputName === void 0 ? 'jobTitle' : _ref$inputName,
24
- _ref$isUSContract = _ref.isUSContract,
25
- isUSContract = _ref$isUSContract === void 0 ? false : _ref$isUSContract;
26
- var inputWrapperClassName = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--select', {
27
- 'o-forms-input--invalid': hasError
28
- }]);
29
- var availableJobTitles = ['Faculty/Other'].concat(isUSContract ? ['Graduate Student', 'Undergraduate Student'] : ['Student']);
30
- return /*#__PURE__*/_react["default"].createElement("label", {
31
- id: fieldId,
32
- className: "o-forms-field",
33
- "data-validate": "required",
34
- htmlFor: inputId
35
- }, /*#__PURE__*/_react["default"].createElement("span", {
36
- className: "o-forms-title"
37
- }, /*#__PURE__*/_react["default"].createElement("span", {
38
- className: "o-forms-title__main"
39
- }, "Occupation")), /*#__PURE__*/_react["default"].createElement("span", {
40
- className: inputWrapperClassName
41
- }, /*#__PURE__*/_react["default"].createElement("select", {
42
- id: inputId,
43
- name: inputName,
44
- "data-trackable": "job-title",
45
- "aria-required": "true",
46
- required: true,
47
- disabled: isDisabled,
48
- defaultValue: value
49
- }, /*#__PURE__*/_react["default"].createElement("option", {
50
- value: ""
51
- }, "Select your occupation"), availableJobTitles.map(function (jobTitle, index) {
52
- return /*#__PURE__*/_react["default"].createElement("option", {
53
- key: index
54
- }, jobTitle);
55
- })), /*#__PURE__*/_react["default"].createElement("span", {
56
- className: "o-forms-input__error"
57
- }, "Please enter your occupation.")));
58
- }
59
- EducationJobTitle.propTypes = {
60
- value: _propTypes["default"].string,
61
- isDisabled: _propTypes["default"].bool,
62
- hasError: _propTypes["default"].bool,
63
- fieldId: _propTypes["default"].string,
64
- inputId: _propTypes["default"].string,
65
- inputName: _propTypes["default"].string,
66
- isUSContract: _propTypes["default"].bool
67
- };
package/dist/email.js DELETED
@@ -1,90 +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.Email = Email;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _classnames = _interopRequireDefault(require("classnames"));
11
- function Email(_ref) {
12
- var _ref$dataTrackable = _ref.dataTrackable,
13
- dataTrackable = _ref$dataTrackable === void 0 ? 'field-email' : _ref$dataTrackable,
14
- _ref$description = _ref.description,
15
- description = _ref$description === void 0 ? 'Please enter an email address' : _ref$description,
16
- _ref$errorText = _ref.errorText,
17
- errorText = _ref$errorText === void 0 ? 'This email address is not valid' : _ref$errorText,
18
- _ref$fieldId = _ref.fieldId,
19
- fieldId = _ref$fieldId === void 0 ? 'emailField' : _ref$fieldId,
20
- _ref$hasError = _ref.hasError,
21
- hasError = _ref$hasError === void 0 ? false : _ref$hasError,
22
- _ref$inputId = _ref.inputId,
23
- inputId = _ref$inputId === void 0 ? 'email' : _ref$inputId,
24
- _ref$isB2b = _ref.isB2b,
25
- isB2b = _ref$isB2b === void 0 ? false : _ref$isB2b,
26
- _ref$isDisabled = _ref.isDisabled,
27
- isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
28
- _ref$label = _ref.label,
29
- label = _ref$label === void 0 ? '' : _ref$label,
30
- _ref$placeHolder = _ref.placeHolder,
31
- placeHolder = _ref$placeHolder === void 0 ? 'Enter your email address' : _ref$placeHolder,
32
- _ref$value = _ref.value,
33
- value = _ref$value === void 0 ? '' : _ref$value,
34
- _ref$isEducationalLic = _ref.isEducationalLicence,
35
- isEducationalLicence = _ref$isEducationalLic === void 0 ? false : _ref$isEducationalLic,
36
- _ref$isB2cPartnership = _ref.isB2cPartnershipLicence,
37
- isB2cPartnershipLicence = _ref$isB2cPartnership === void 0 ? false : _ref$isB2cPartnership,
38
- _ref$showTitle = _ref.showTitle,
39
- showTitle = _ref$showTitle === void 0 ? true : _ref$showTitle;
40
- var labelText = label || (isB2b && !(isEducationalLicence || isB2cPartnershipLicence) ? 'Work email address' : 'Email address');
41
- var inputWrapperClassNames = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--text', {
42
- 'o-forms-input--invalid': hasError
43
- }]);
44
- var emailTitleClassNames = (0, _classnames["default"])(['o-forms-title', {
45
- ncf__hidden: !showTitle
46
- }]);
47
- return /*#__PURE__*/_react["default"].createElement("label", {
48
- id: fieldId,
49
- className: "o-forms-field ncf__validation-error",
50
- "data-validate": "required,email",
51
- htmlFor: inputId
52
- }, /*#__PURE__*/_react["default"].createElement("span", {
53
- className: emailTitleClassNames
54
- }, /*#__PURE__*/_react["default"].createElement("span", {
55
- className: "o-forms-title__main"
56
- }, labelText), description && /*#__PURE__*/_react["default"].createElement("span", {
57
- className: "o-forms-title__prompt"
58
- }, description)), /*#__PURE__*/_react["default"].createElement("span", {
59
- className: inputWrapperClassNames
60
- }, /*#__PURE__*/_react["default"].createElement("input", {
61
- type: "email",
62
- id: inputId,
63
- name: inputId,
64
- placeholder: placeHolder,
65
- autoComplete: "email",
66
- "data-trackable": dataTrackable,
67
- "aria-required": "true",
68
- required: true,
69
- disabled: isDisabled,
70
- defaultValue: value
71
- }), /*#__PURE__*/_react["default"].createElement("span", {
72
- className: "o-forms-input__error"
73
- }, errorText)));
74
- }
75
- Email.propTypes = {
76
- dataTrackable: _propTypes["default"].string,
77
- description: _propTypes["default"].string,
78
- errorText: _propTypes["default"].string,
79
- fieldId: _propTypes["default"].string,
80
- hasError: _propTypes["default"].bool,
81
- inputId: _propTypes["default"].string,
82
- isB2b: _propTypes["default"].bool,
83
- isDisabled: _propTypes["default"].bool,
84
- label: _propTypes["default"].string,
85
- placeHolder: _propTypes["default"].string,
86
- value: _propTypes["default"].string,
87
- isEducationalLicence: _propTypes["default"].bool,
88
- isB2cPartnershipLicence: _propTypes["default"].bool,
89
- showTitle: _propTypes["default"].bool
90
- };
@@ -1,45 +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.ErrorPage = ErrorPage;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- function ErrorPage(_ref) {
11
- var children = _ref.children,
12
- _ref$header = _ref.header,
13
- header = _ref$header === void 0 ? 'Sorry, something went wrong' : _ref$header,
14
- _ref$message = _ref.message,
15
- message = _ref$message === void 0 ? 'Speak to our Customer Care team now so we can help.' : _ref$message;
16
- return /*#__PURE__*/_react["default"].createElement("div", {
17
- className: "ncf__wrapper ncf__center ncf__error-page"
18
- }, /*#__PURE__*/_react["default"].createElement("div", {
19
- className: "ncf__icon ncf__icon--error ncf__icon--large"
20
- }), /*#__PURE__*/_react["default"].createElement("div", {
21
- className: "ncf__paragraph"
22
- }, /*#__PURE__*/_react["default"].createElement("h1", {
23
- className: "ncf__header"
24
- }, header), /*#__PURE__*/_react["default"].createElement("p", {
25
- id: "error-message"
26
- }, message)), /*#__PURE__*/_react["default"].createElement("div", {
27
- className: "ncf__error-page__content"
28
- }, children), /*#__PURE__*/_react["default"].createElement("div", {
29
- className: "ncf__paragraph"
30
- }, /*#__PURE__*/_react["default"].createElement("p", null, "International Toll Free Number"), /*#__PURE__*/_react["default"].createElement("a", {
31
- id: "error-international-number",
32
- className: "ncf__header ncf__link",
33
- href: "tel:+80007056477"
34
- }, "+ 800 0705 6477")), /*#__PURE__*/_react["default"].createElement("div", {
35
- className: "ncf__paragraph"
36
- }, /*#__PURE__*/_react["default"].createElement("a", {
37
- className: "ncf__link",
38
- href: "https://help.ft.com/help/contact-us/"
39
- }, "Find a local phone number")));
40
- }
41
- ErrorPage.propTypes = {
42
- children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]),
43
- header: _propTypes["default"].string,
44
- message: _propTypes["default"].string
45
- };
package/dist/fieldset.js DELETED
@@ -1,58 +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.Fieldset = Fieldset;
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 Fieldset(_ref) {
15
- var _ref$children = _ref.children,
16
- children = _ref$children === void 0 ? null : _ref$children,
17
- _ref$name = _ref.name,
18
- name = _ref$name === void 0 ? null : _ref$name,
19
- _ref$legend = _ref.legend,
20
- legend = _ref$legend === void 0 ? null : _ref$legend,
21
- _ref$hideLegend = _ref.hideLegend,
22
- hideLegend = _ref$hideLegend === void 0 ? false : _ref$hideLegend,
23
- _ref$headingLevel = _ref.headingLevel,
24
- HeadingLevel = _ref$headingLevel === void 0 ? null : _ref$headingLevel,
25
- _ref$header = _ref.header,
26
- header = _ref$header === void 0 ? null : _ref$header,
27
- _ref$descriptor = _ref.descriptor,
28
- descriptor = _ref$descriptor === void 0 ? null : _ref$descriptor;
29
- var fieldsetProps = _objectSpread(_objectSpread({}, name && {
30
- name: name
31
- }), {}, {
32
- className: 'ncf__fieldset'
33
- });
34
- var legendClassName = (0, _classnames["default"])(['ncf__legend', {
35
- 'o-normalise-visually-hidden': hideLegend
36
- }]);
37
- var legendElement = legend ? /*#__PURE__*/_react["default"].createElement("legend", {
38
- className: legendClassName
39
- }, legend) : null;
40
- var headingLevelElement = HeadingLevel ? /*#__PURE__*/_react["default"].createElement(HeadingLevel, {
41
- className: "ncf__header"
42
- }, header) : null;
43
- var descriptorElement = descriptor ? /*#__PURE__*/_react["default"].createElement("p", {
44
- className: "ncf__fieldset-descriptor"
45
- }, descriptor) : null;
46
- return /*#__PURE__*/_react["default"].createElement("fieldset", fieldsetProps, legendElement, headingLevelElement, descriptorElement, /*#__PURE__*/_react["default"].createElement("div", {
47
- className: "ncf__fields"
48
- }, children));
49
- }
50
- Fieldset.propTypes = {
51
- children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]),
52
- name: _propTypes["default"].string,
53
- legend: _propTypes["default"].string,
54
- hideLegend: _propTypes["default"].bool,
55
- headingLevel: _propTypes["default"].string,
56
- header: _propTypes["default"].node,
57
- descriptor: _propTypes["default"].node
58
- };
@@ -1,73 +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.FirstName = FirstName;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- var _classnames = _interopRequireDefault(require("classnames"));
11
- function FirstName(_ref) {
12
- var _ref$dataTrackable = _ref.dataTrackable,
13
- dataTrackable = _ref$dataTrackable === void 0 ? 'field-name' : _ref$dataTrackable,
14
- _ref$errorText = _ref.errorText,
15
- errorText = _ref$errorText === void 0 ? 'Please enter your first name' : _ref$errorText,
16
- _ref$fieldId = _ref.fieldId,
17
- fieldId = _ref$fieldId === void 0 ? 'firstNameField' : _ref$fieldId,
18
- _ref$hasError = _ref.hasError,
19
- hasError = _ref$hasError === void 0 ? false : _ref$hasError,
20
- _ref$inputId = _ref.inputId,
21
- inputId = _ref$inputId === void 0 ? 'firstName' : _ref$inputId,
22
- inputName = _ref.inputName,
23
- _ref$isDisabled = _ref.isDisabled,
24
- isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
25
- _ref$label = _ref.label,
26
- label = _ref$label === void 0 ? 'First name' : _ref$label,
27
- _ref$placeHolder = _ref.placeHolder,
28
- placeHolder = _ref$placeHolder === void 0 ? 'Enter your first name' : _ref$placeHolder,
29
- _ref$value = _ref.value,
30
- value = _ref$value === void 0 ? '' : _ref$value;
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
- return /*#__PURE__*/_react["default"].createElement("label", {
37
- id: fieldId,
38
- className: "o-forms-field ncf__validation-error",
39
- "data-validate": "required",
40
- htmlFor: inputId
41
- }, /*#__PURE__*/_react["default"].createElement("span", {
42
- className: "o-forms-title"
43
- }, /*#__PURE__*/_react["default"].createElement("span", {
44
- className: "o-forms-title__main"
45
- }, label)), /*#__PURE__*/_react["default"].createElement("span", {
46
- className: inputWrapperClassNames
47
- }, /*#__PURE__*/_react["default"].createElement("input", {
48
- type: "text",
49
- id: inputId,
50
- name: inputName,
51
- placeholder: placeHolder,
52
- autoComplete: "given-name",
53
- "data-trackable": dataTrackable,
54
- "aria-required": "true",
55
- required: true,
56
- disabled: isDisabled,
57
- defaultValue: value
58
- }), /*#__PURE__*/_react["default"].createElement("span", {
59
- className: "o-forms-input__error"
60
- }, errorText)));
61
- }
62
- FirstName.propTypes = {
63
- dataTrackable: _propTypes["default"].string,
64
- errorText: _propTypes["default"].string,
65
- fieldId: _propTypes["default"].string,
66
- hasError: _propTypes["default"].bool,
67
- inputId: _propTypes["default"].string,
68
- inputName: _propTypes["default"].string,
69
- isDisabled: _propTypes["default"].bool,
70
- label: _propTypes["default"].string,
71
- placeHolder: _propTypes["default"].string,
72
- value: _propTypes["default"].string
73
- };
package/dist/form.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.Form = Form;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- function Form(_ref) {
11
- var children = _ref.children,
12
- _ref$action = _ref.action,
13
- action = _ref$action === void 0 ? '' : _ref$action,
14
- _ref$method = _ref.method,
15
- method = _ref$method === void 0 ? 'POST' : _ref$method;
16
- return /*#__PURE__*/_react["default"].createElement("div", {
17
- className: "ncf__wrapper"
18
- }, /*#__PURE__*/_react["default"].createElement("form", {
19
- className: "ncf",
20
- action: action,
21
- method: method,
22
- noValidate: true
23
- }, children));
24
- }
25
- Form.propTypes = {
26
- children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]),
27
- action: _propTypes["default"].string,
28
- method: _propTypes["default"].string
29
- };
@@ -1,24 +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.GoogleSignIn = GoogleSignIn;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
- function GoogleSignIn(_ref) {
11
- var signInRedirectUrl = _ref.signInRedirectUrl;
12
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("link", {
13
- href: "https://fonts.googleapis.com/css?family=Roboto",
14
- rel: "stylesheet"
15
- }), /*#__PURE__*/_react["default"].createElement("base", {
16
- target: "_parent"
17
- }), /*#__PURE__*/_react["default"].createElement("a", {
18
- className: "google_button",
19
- href: signInRedirectUrl
20
- }, "Sign in with Google"));
21
- }
22
- GoogleSignIn.propTypes = {
23
- signInRedirectUrl: _propTypes["default"].string.isRequired
24
- };
@@ -1,112 +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.Compliance = void 0;
8
- exports.GraduationDate = GraduationDate;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
- var _react = _interopRequireDefault(require("react"));
11
- var _propTypes = _interopRequireDefault(require("prop-types"));
12
- var _classnames = _interopRequireDefault(require("classnames"));
13
- var getMonthNameByIndex = function getMonthNameByIndex(index) {
14
- return new Date(null, index, null).toLocaleDateString('en', {
15
- month: 'long'
16
- });
17
- };
18
- var Compliance = function Compliance() {
19
- return /*#__PURE__*/_react["default"].createElement("div", {
20
- id: "graduationDateCompliance",
21
- className: "ncf__field ncf__gd-compliance"
22
- }, /*#__PURE__*/_react["default"].createElement("p", null, "We use the information you provide, and may share it with your institution, for the purposes of administering your institution's licence for", ' ', /*#__PURE__*/_react["default"].createElement("a", {
23
- className: "ncf__link--external",
24
- href: "https://ft.com/",
25
- title: "Financial Times",
26
- target: "_blank",
27
- rel: "noopener noreferrer"
28
- }, "FT.com.", ' ')), /*#__PURE__*/_react["default"].createElement("p", null, "We may also use it to ensure our communications to you are more relevant. If you do not wish us to do so, you can amend your preferences at any time", ' ', /*#__PURE__*/_react["default"].createElement("a", {
29
- className: "ncf__link--external",
30
- href: "http://www.ft.com/myft/alerts/",
31
- title: "Financial Times",
32
- target: "_blank",
33
- rel: "noopener noreferrer"
34
- }, "here")));
35
- };
36
- exports.Compliance = Compliance;
37
- function GraduationDate(_ref) {
38
- var value = _ref.value,
39
- _ref$isDisabled = _ref.isDisabled,
40
- isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
41
- _ref$isRequired = _ref.isRequired,
42
- isRequired = _ref$isRequired === void 0 ? false : _ref$isRequired,
43
- _ref$hasError = _ref.hasError,
44
- hasError = _ref$hasError === void 0 ? false : _ref$hasError;
45
- var currentYear = new Date().getUTCFullYear();
46
- var earliestSelectableYear = currentYear - 4;
47
- var defaultValues = value && value.trim().match(/^([0-9]{4})-(0[0-9]|1[012])-[0-9]{2}$/);
48
- var _ref2 = defaultValues || [],
49
- _ref3 = (0, _slicedToArray2["default"])(_ref2, 3),
50
- defaultYear = _ref3[1],
51
- defaultMonth = _ref3[2];
52
- var inputWrapperClassNames = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--select', {
53
- 'o-forms-input--invalid': hasError
54
- }]);
55
- return /*#__PURE__*/_react["default"].createElement("div", {
56
- id: "graduationDateField",
57
- className: "o-forms-field ncf__validation-error ncf__graduation-date",
58
- "data-validate": "required"
59
- }, /*#__PURE__*/_react["default"].createElement("span", {
60
- className: "o-forms-title",
61
- role: "group",
62
- "aria-labelledby": "graduationTitleMain"
63
- }, /*#__PURE__*/_react["default"].createElement("span", {
64
- className: "o-forms-title__main",
65
- id: "graduationTitleMain"
66
- }, "Expected graduation date")), /*#__PURE__*/_react["default"].createElement("div", {
67
- className: inputWrapperClassNames
68
- }, /*#__PURE__*/_react["default"].createElement("div", {
69
- className: "ncf__graduation-date__select-wrapper"
70
- }, /*#__PURE__*/_react["default"].createElement("span", null, /*#__PURE__*/_react["default"].createElement("label", {
71
- htmlFor: "graduationDateMonth"
72
- }, "Month"), /*#__PURE__*/_react["default"].createElement("select", {
73
- id: "graduationDateMonth",
74
- name: "graduationDateMonth",
75
- required: isRequired,
76
- "aria-required": isRequired,
77
- disabled: isDisabled,
78
- defaultValue: defaultMonth
79
- }, Array.from({
80
- length: 12
81
- }, function (_, index) {
82
- return /*#__PURE__*/_react["default"].createElement("option", {
83
- key: index,
84
- value: (index + 1).toString(10).padStart(2, '0')
85
- }, getMonthNameByIndex(index + 1));
86
- }))), /*#__PURE__*/_react["default"].createElement("span", null, /*#__PURE__*/_react["default"].createElement("label", {
87
- htmlFor: "graduationDateYear"
88
- }, "Year"), /*#__PURE__*/_react["default"].createElement("select", {
89
- id: "graduationDateYear",
90
- name: "graduationDateYear",
91
- required: isRequired,
92
- "aria-required": isRequired,
93
- disabled: isDisabled,
94
- defaultValue: defaultYear
95
- }, Array.from({
96
- length: 9
97
- }, function (_, index) {
98
- var value = earliestSelectableYear + index;
99
- return /*#__PURE__*/_react["default"].createElement("option", {
100
- key: index,
101
- value: value
102
- }, value);
103
- })))), /*#__PURE__*/_react["default"].createElement("span", {
104
- className: "o-forms-input__error"
105
- }, "Please select a valid graduation date")), /*#__PURE__*/_react["default"].createElement(Compliance, null));
106
- }
107
- GraduationDate.propTypes = {
108
- value: _propTypes["default"].string,
109
- isDisabled: _propTypes["default"].bool,
110
- isRequired: _propTypes["default"].bool,
111
- hasError: _propTypes["default"].bool
112
- };