UNPKG

@financial-times/n-conversion-forms

Version:

Containing jsx components and styles for forms included on Accounts and Acqusition apps (next-signup, next-profile, next-retention, etc).

74 lines (73 loc) 2.94 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.DeliveryAddressType = DeliveryAddressType; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var addressTypes = [{ id: 'home', label: 'Home Address' }, { id: 'company', label: 'Company Address' }, { id: 'pobox', label: 'P.O. Box' }]; function DeliveryAddressType(_ref) { var _ref$value = _ref.value, value = _ref$value === void 0 ? 'home' : _ref$value, _ref$fieldId = _ref.fieldId, fieldId = _ref$fieldId === void 0 ? 'deliveryAddressTypeField' : _ref$fieldId, _ref$inputName = _ref.inputName, inputName = _ref$inputName === void 0 ? 'deliveryAddressType' : _ref$inputName, _ref$options = _ref.options, options = _ref$options === void 0 ? ['home', 'company', 'pobox'] : _ref$options, _ref$editMode = _ref.editMode, editMode = _ref$editMode === void 0 ? false : _ref$editMode, _ref$titlePrompt = _ref.titlePrompt, titlePrompt = _ref$titlePrompt === void 0 ? '' : _ref$titlePrompt; return /*#__PURE__*/_react["default"].createElement("div", { id: fieldId, className: "o-forms-field ncf__delivery-address-type", role: "group", "aria-label": "Delivery Address Type" }, /*#__PURE__*/_react["default"].createElement("span", { className: "o-forms-title" }, /*#__PURE__*/_react["default"].createElement("span", { className: "o-forms-title__main" }, "Address type"), /*#__PURE__*/_react["default"].createElement("span", { className: "o-forms-title__prompt" }, titlePrompt)), /*#__PURE__*/_react["default"].createElement("div", { className: "o-forms-input o-forms-input--inline o-forms-input--radio-round" }, options.map(function (option) { var type = addressTypes.find(function (item) { return item.id === option; }); return !type ? null : /*#__PURE__*/_react["default"].createElement("label", { htmlFor: type.id, "aria-label": type.label, key: type.id }, /*#__PURE__*/_react["default"].createElement("input", { type: "radio", id: type.id, name: inputName, value: type.id, className: "ncf__delivery-address-type__input", disabled: editMode && type.id !== value, defaultChecked: type.id === value }), /*#__PURE__*/_react["default"].createElement("span", { className: "o-forms-input__label o-forms-input__address-type__label", "aria-hidden": "true" }, type.label)); }))); } DeliveryAddressType.propTypes = { fieldId: _propTypes["default"].string, inputName: _propTypes["default"].string, value: _propTypes["default"].oneOf(['home', 'company', 'pobox']), options: _propTypes["default"].arrayOf(_propTypes["default"].oneOf(['home', 'company', 'pobox'])), titlePrompt: _propTypes["default"].string };