UNPKG

@dnb/eufemia

Version:

DNB Eufemia Design System UI Library

41 lines (40 loc) 2.19 kB
"use strict"; "use client"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireDefault(require("react")); var _classnames = _interopRequireDefault(require("classnames")); var _Element = _interopRequireDefault(require("../Element")); var _HeadingHelpers = require("../../components/heading/HeadingHelpers"); var _shared = require("../../shared"); const _excluded = ["as", "is", "level", "size", "className"]; function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; } function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; } const H = _ref => { let { as = 'h1', is, level, size, className } = _ref, props = _objectWithoutProperties(_ref, _excluded); const numSiz = parseFloat(String(as || is).substring(1)); if (level === 'use') { (0, _HeadingHelpers.setNextLevel)(numSiz); } const theme = (0, _shared.useTheme)(); const targetSize = size === 'auto' && (0, _HeadingHelpers.getHeadingSize)(theme === null || theme === void 0 ? void 0 : theme.name)[numSiz] || size || 'xx-large'; return _react.default.createElement(_Element.default, _extends({ as: as || is, internalClass: (0, _classnames.default)(className, targetSize && `dnb-h--${targetSize}`) }, props)); }; H._isHeadingElement = true; H._supportsSpacingProps = true; var _default = exports.default = H; //# sourceMappingURL=H.js.map