suomifi-ui-components
Version:
Suomi.fi UI component library
105 lines (99 loc) • 4.66 kB
JavaScript
;
var tslib = require('tslib');
var React = require('react');
var styled = require('styled-components');
var SuomifiThemeProvider = require('../../../../theme/SuomifiThemeProvider/SuomifiThemeProvider.js');
require('../../../../theme/SuomifiTheme/SuomifiTheme.js');
require('../../../../theme/SpacingProvider/SpacingProvider.js');
require('../../../../../reset/HtmlA/HtmlA.js');
require('../../../../../reset/HtmlButton/HtmlButton.js');
var HtmlDiv = require('../../../../../reset/HtmlDiv/HtmlDiv.js');
require('../../../../../reset/HtmlFieldSet/HtmlFieldSet.js');
require('../../../../../reset/HtmlH/HtmlH.js');
require('../../../../../reset/HtmlInput/HtmlInput.js');
require('../../../../../reset/HtmlLabel/HtmlLabel.js');
require('../../../../../reset/HtmlLegend/HtmlLegend.js');
var HtmlLi = require('../../../../../reset/HtmlLi/HtmlLi.js');
require('../../../../../reset/HtmlNav/HtmlNav.js');
require('../../../../../reset/HtmlOl/HtmlOl.js');
require('../../../../../reset/HtmlSpan/HtmlSpan.js');
require('../../../../../reset/HtmlTextarea/HtmlTextarea.js');
require('../../../../../reset/HtmlUl/HtmlUl.js');
require('../../../../../reset/HtmlTable/HtmlTable.js');
require('../../../../../reset/HtmlTable/HtmlTableCaption.js');
require('../../../../../reset/HtmlTable/HtmlTableHeader.js');
require('../../../../../reset/HtmlTable/HtmlTableRow.js');
require('../../../../../reset/HtmlTable/HtmlTableBody.js');
require('../../../../../reset/HtmlTable/HtmlTableHeaderCell.js');
require('../../../../../reset/HtmlTable/HtmlTableCell.js');
var SelectItemAddition_baseStyles = require('./SelectItemAddition.baseStyles.js');
var classnames = require('classnames');
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
var React__default = /*#__PURE__*/_interopDefault(React);
var classnames__default = /*#__PURE__*/_interopDefault(classnames);
var baseClassName = 'fi-select-item-addition';
var classNames = {
hint_text: "".concat(baseClassName, "_hint-text"),
item: "".concat(baseClassName, "_item"),
hasKeyboardFocus: "".concat(baseClassName, "_item--hasKeyboardFocus")
};
var BaseSelectItemAddition = function (_super) {
tslib.__extends(BaseSelectItemAddition, _super);
function BaseSelectItemAddition() {
return _super !== null && _super.apply(this, arguments) || this;
}
BaseSelectItemAddition.prototype.render = function () {
var _a;
var _b = this.props,
hintText = _b.hintText,
_onClick = _b.onClick,
hasKeyboardFocus = _b.hasKeyboardFocus,
id = _b.id;
_b.theme;
var children = _b.children,
passProps = tslib.__rest(_b, ["hintText", "onClick", "hasKeyboardFocus", "id", "theme", "children"]);
return /*#__PURE__*/React__default.default.createElement(HtmlDiv.HtmlDiv, tslib.__assign({}, passProps), /*#__PURE__*/React__default.default.createElement(HtmlDiv.HtmlDiv, {
className: classNames.hint_text
}, hintText), /*#__PURE__*/React__default.default.createElement(HtmlLi.HtmlLi, {
className: classnames__default.default(classNames.item, (_a = {}, _a[classNames.hasKeyboardFocus] = hasKeyboardFocus, _a)),
tabIndex: -1,
onMouseDown: function onMouseDown(event) {
event.preventDefault();
},
onClick: function onClick(event) {
if (!!_onClick) {
_onClick(event);
}
},
"aria-label": "".concat(hintText, ". ").concat(children, "."),
role: "option",
id: id
}, children));
};
return BaseSelectItemAddition;
}(React.Component);
var StyledSelectItemAddition = styled.styled(BaseSelectItemAddition).withConfig({
componentId: "sc-m1d1s3-0"
})(templateObject_1 || (templateObject_1 = tslib.__makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), function (_a) {
var theme = _a.theme;
return SelectItemAddition_baseStyles.selectItemAdditionStyles(theme);
});
var SelectItemAddition = function (_super) {
tslib.__extends(SelectItemAddition, _super);
function SelectItemAddition() {
return _super !== null && _super.apply(this, arguments) || this;
}
SelectItemAddition.prototype.render = function () {
var _this = this;
return /*#__PURE__*/React__default.default.createElement(SuomifiThemeProvider.SuomifiThemeConsumer, null, function (_a) {
var suomifiTheme = _a.suomifiTheme;
return /*#__PURE__*/React__default.default.createElement(StyledSelectItemAddition, tslib.__assign({
theme: suomifiTheme
}, _this.props));
});
};
return SelectItemAddition;
}(React.Component);
var templateObject_1;
exports.SelectItemAddition = SelectItemAddition;
//# sourceMappingURL=SelectItemAddition.js.map