@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).
54 lines (53 loc) • 2.65 kB
JSX
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Loader = Loader;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _classnames = _interopRequireDefault(require("classnames"));
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function Loader(_ref) {
var children = _ref.children,
showLoader = _ref.showLoader,
title = _ref.title,
inElement = _ref.inElement;
var label = title ? /*#__PURE__*/_react["default"].createElement("div", {
className: "ncf__loader__content__title",
id: "loader-aria-label"
}, title) : /*#__PURE__*/_react["default"].createElement("div", {
className: "ncf__hidden",
id: "loader-aria-label"
}, "Loading");
var className = (0, _classnames["default"])(['ncf__loader', {
'is-visible': showLoader
}, {
ncf__hidden: !showLoader
}, {
'ncf__loader--element': inElement
}]);
var props = _objectSpread({
className: className,
role: 'dialog',
'aria-labelledby': 'loader-aria-label',
'aria-describedby': 'loader-aria-description',
'aria-modal': true
}, showLoader && {
tabIndex: 1
});
return /*#__PURE__*/_react["default"].createElement("div", props, /*#__PURE__*/_react["default"].createElement("div", {
className: "ncf__loader__content"
}, label, /*#__PURE__*/_react["default"].createElement("div", {
className: "ncf__loader__content__main",
id: "loader-aria-description"
}, children)));
}
Loader.propTypes = {
children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]),
showLoader: _propTypes["default"].bool,
title: _propTypes["default"].string,
inElement: _propTypes["default"].bool
};