UNPKG

doly-icons

Version:

React icon component based on Bootstrap Icons

32 lines (31 loc) 1.99 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var react_1 = tslib_1.__importStar(require("react")); var classnames_1 = tslib_1.__importDefault(require("classnames")); var IconContext_1 = tslib_1.__importDefault(require("./IconContext")); var dynamicStyle_1 = require("./dynamicStyle"); var prefixClass = 'doly-icon'; var classes = { spin: "".concat(prefixClass, "-spin"), spinReverse: "".concat(prefixClass, "-spin-reverse") }; var defaultSvgProps = { 'aria-hidden': true, focusable: false }; var IconBase = function (_a) { var _b; var spin = _a.spin, spinReverse = _a.spinReverse, className = _a.className, style = _a.style, svgProps = _a.svgProps, renderChild = _a.renderChild, restProps = tslib_1.__rest(_a, ["spin", "spinReverse", "className", "style", "svgProps", "renderChild"]); var _c = (0, react_1.useContext)(IconContext_1.default), ref = _c.ref, csp = _c.csp, ctxSpin = _c.spin, ctxSpinReverse = _c.spinReverse, ctxClassName = _c.className, ctxStyle = _c.style, ctxSvgProps = _c.svgProps, ctxRestProps = tslib_1.__rest(_c, ["ref", "csp", "spin", "spinReverse", "className", "style", "svgProps"]); var realSpin = typeof spin !== 'undefined' ? spin : ctxSpin; var realSpinReverse = typeof spinReverse !== 'undefined' ? spinReverse : ctxSpinReverse; (0, dynamicStyle_1.useInsertStyle)(csp); var mergeProps = tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, defaultSvgProps), ctxSvgProps), svgProps); return (react_1.default.createElement("span", tslib_1.__assign({ className: (0, classnames_1.default)(prefixClass, (_b = {}, _b[classes.spin] = realSpin, _b[classes.spinReverse] = realSpinReverse, _b), ctxClassName, className), role: "img", style: tslib_1.__assign(tslib_1.__assign({}, ctxStyle), style) }, ctxRestProps, restProps), renderChild(mergeProps))); }; IconBase.displayName = 'IconBase'; exports.default = IconBase;