"use strict";

var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.DeliveryPOBox = DeliveryPOBox;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _classnames = _interopRequireDefault(require("classnames"));
var message = {
  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.',
  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.'
};
function DeliveryPOBox(_ref) {
  var _ref$fieldId = _ref.fieldId,
    fieldId = _ref$fieldId === void 0 ? 'deliveryPOBoxField' : _ref$fieldId,
    _ref$inputId = _ref.inputId,
    inputId = _ref$inputId === void 0 ? 'deliveryPOBox' : _ref$inputId,
    _ref$hasError = _ref.hasError,
    hasError = _ref$hasError === void 0 ? false : _ref$hasError,
    _ref$value = _ref.value,
    value = _ref$value === void 0 ? '' : _ref$value,
    _ref$isDisabled = _ref.isDisabled,
    isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
    _ref$isHidden = _ref.isHidden,
    isHidden = _ref$isHidden === void 0 ? false : _ref$isHidden,
    _ref$maxlength = _ref.maxlength,
    maxlength = _ref$maxlength === void 0 ? 50 : _ref$maxlength,
    _ref$country = _ref.country,
    country = _ref$country === void 0 ? '' : _ref$country;
  var labelClassNames = (0, _classnames["default"])(['o-forms-field', 'ncf__validation-error', {
    ncf__hidden: isHidden
  }]);
  var inputWrapperClassName = (0, _classnames["default"])(['o-forms-input', 'o-forms-input--text', {
    'o-forms-input--invalid': hasError
  }]);
  return /*#__PURE__*/_react["default"].createElement("label", {
    id: fieldId,
    className: labelClassNames,
    "data-validate": "required",
    htmlFor: inputId
  }, /*#__PURE__*/_react["default"].createElement("span", {
    className: "o-forms-title"
  }, /*#__PURE__*/_react["default"].createElement("span", {
    className: "o-forms-title__main"
  }, "P.O. Box"), /*#__PURE__*/_react["default"].createElement("span", {
    className: "o-forms-title__prompt"
  }, message[country])), /*#__PURE__*/_react["default"].createElement("span", {
    className: inputWrapperClassName
  }, /*#__PURE__*/_react["default"].createElement("input", {
    type: "text",
    id: inputId,
    name: inputId,
    "data-trackable": "field-deliveryPOBox",
    placeholder: "e.g. PO Box 1033",
    maxLength: maxlength,
    "aria-required": "true",
    required: true,
    disabled: isDisabled,
    defaultValue: value
  }), /*#__PURE__*/_react["default"].createElement("span", {
    className: "o-forms-input__error"
  }, "Please enter a valid P.O. Box address")));
}
DeliveryPOBox.propTypes = {
  fieldId: _propTypes["default"].string,
  inputId: _propTypes["default"].string,
  value: _propTypes["default"].string,
  hasError: _propTypes["default"].bool,
  isDisabled: _propTypes["default"].bool,
  isHidden: _propTypes["default"].bool,
  maxlength: _propTypes["default"].number,
  country: _propTypes["default"].string
};