UNPKG

react-classnaming

Version:

Tools to establish CSS classes as an explicit abstraction layer and to handle it as an interface between React and CSSStyleDeclaration

34 lines (33 loc) 1.53 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.classNaming = void 0; var core_1 = require("./core"); var consts_json_1 = require("./consts.json"); /** Set context * @example * ```typescript * const classes = classNaming({classnames: require("./some.css"), className?}) * const classes = classNaming(this.props) * const classes = classNaming<Props>() * const classes = classNaming<MyClassNames>() * ``` */ function classNaming(context) { if (context === void 0) { context = consts_json_1.EMPTY_OBJECT; } var className = context.className; var host = function (arg0, arg1) { return classes(context, arg0, arg1); }; return core_1.wrapper(host, className); } exports.classNaming = classNaming; /// CONTEXTED. TS-notation not matters function classes(_a, arg0, arg1) { var className = _a.className, classnames = _a.classnames, preStacked = _a.stacked; var source = typeof arg0 === "object" ? arg0 : arg1 //TODO check what will happen with classes() , allowed = source && core_1.resolver(classnames, source /* TS-bug? `source` couldn't be `undefined`*/), stacked = core_1.joinWithLead(preStacked, allowed), result = arg0 === true && className ? core_1.joinWithLead(className, stacked) : stacked, host = function (arg0, arg1) { return classes({ classnames: classnames, className: className, stacked: result }, //@ts-expect-error Due to not accurate `withClassName` arg0, arg1); }; return core_1.wrapper(host, result); }