milligrami
Version:
Milligram React wrapper
41 lines • 2.17 kB
JavaScript
;
/**
*
* TODO: HOC , possibly taking ButtonProps|LinkButtonProps|InputButtonProps
* return Button|Link|Input?
* not returning always the same thing smells
*/
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)
t[p[i]] = s[p[i]];
return t;
};
Object.defineProperty(exports, "__esModule", { value: true });
const React = require("react");
const util_1 = require("./util");
exports.Button = (xProps) => {
const { outline, clear, className } = xProps, props = __rest(xProps, ["outline", "clear", "className"]);
const cn = (className ? `${className} ` : "") + "button" +
(util_1.isDefined(outline) && outline !== false ? " button-outline" : "") +
(util_1.isDefined(clear) && clear !== false ? " button-clear" : "");
return (React.createElement("button", Object.assign({}, Object.assign({ className: cn }, props))));
};
exports.LinkButton = (xProps) => {
const { outline, clear, className } = xProps, props = __rest(xProps, ["outline", "clear", "className"]);
const cn = (className ? `${className} ` : "") + "button" +
(util_1.isDefined(outline) && outline !== false ? " button-outline" : "") +
(util_1.isDefined(clear) && clear !== false ? " button-clear" : "");
return (React.createElement("a", Object.assign({}, Object.assign({ className: cn }, props))));
};
exports.InputButton = (xProps) => {
const { outline, clear, className } = xProps, props = __rest(xProps, ["outline", "clear", "className"]);
const cn = (className ? `${className} ` : "") + "button" +
(util_1.isDefined(outline) && outline !== false ? " button-outline" : "") +
(util_1.isDefined(clear) && clear !== false ? " button-clear" : "");
return (React.createElement("input", Object.assign({}, Object.assign({ className: cn }, props))));
};
//# sourceMappingURL=button.js.map