kwikid-components-react
Version:
KwikID's Component Library in React
291 lines (279 loc) • 10.8 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.KwikUIStyleLoadingAnimation = exports.KwikUIStyleButtonChildren = exports.KwikUIStyleButton = void 0;
var _styledComponents = _interopRequireWildcard(require("styled-components"));
var _Button = require("./Button.definition");
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
const KwikUIStyleButton = exports.KwikUIStyleButton = _styledComponents.default.button`
align-content: center;
align-items: center;
cursor: ${_ref => {
let {
disabled
} = _ref;
return disabled ? "not-allowed" : "pointer";
}};
display: flex;
flex-direction: row;
justify-content: center;
transition: transform 0.3s;
border-width: 2px;
border-style: solid;
border-color: transparent;
box-shadow: none;
background-color: transparent;
& > *:not(:last-child) {
margin-right: 0.5rem;
}
${_ref2 => {
let {
appearance,
disabled,
disableHover
} = _ref2;
switch (appearance) {
case _Button.IKwikUIButtonAppearance.PRIMARY:
return (0, _styledComponents.css)`
background-color: ${disabled ? "var(--kwikui-color-disabled)" : "var(--kwikui-color-primary)"};
border-color: ${disabled ? "var(--kwikui-color-disabled)" : "var(--kwikui-color-primary)"};
color: ${disabled ? "var(--kwikui-color-disabled-text)" : "var(--kwikui-color-primary-text)"};
${!disabled && !disableHover && (0, _styledComponents.css)`
&:hover {
background-color: var(--kwikui-color-primary-hover);
border-color: var(--kwikui-color-primary-hover);
}
&:active {
background-color: var(--kwikui-color-primary-active);
border-color: var(--kwikui-color-primary-active);
}
`}
`;
case _Button.IKwikUIButtonAppearance.SECONDARY:
return (0, _styledComponents.css)`
background-color: ${disabled ? "var(--kwikui-color-disabled)" : "var(--kwikui-color-secondary)"};
border-color: ${disabled ? "var(--kwikui-color-disabled)" : "var(--kwikui-color-secondary)"};
color: ${disabled ? "var(--kwikui-color-disabled-text)" : "var(--kwikui-color-secondary-text)"};
${!disabled && !disableHover && (0, _styledComponents.css)`
&:hover {
background-color: var(--kwikui-color-secondary-hover);
border-color: var(--kwikui-color-secondary-hover);
}
&:active {
background-color: var(--kwikui-color-secondary-active);
border-color: var(--kwikui-color-secondary-active);
}
`}
`;
case _Button.IKwikUIButtonAppearance.OUTLINED:
return (0, _styledComponents.css)`
border-color: ${disabled ? "var(--kwikui-color-disabled)" : "var(--kwikui-color-primary)"};
color: ${disabled ? "var(--kwikui-color-disabled)" : "var(--kwikui-color-primary)"};
${!disabled && !disableHover && (0, _styledComponents.css)`
&:hover {
border-color: var(--kwikui-color-primary-hover);
}
&:active {
border-color: var(--kwikui-color-primary-active);
}
`}
`;
case _Button.IKwikUIButtonAppearance.LINK:
return (0, _styledComponents.css)`
color: ${disabled ? "var(--kwikui-color-disabled)" : "var(--kwikui-color-primary)"};
${!disabled && !disableHover && (0, _styledComponents.css)`
&:hover {
border-color: var(--kwikui-color-primary-hover);
}
&:active {
border-color: var(--kwikui-color-primary-active);
}
`}
`;
}
}}
${_ref3 => {
let {
size
} = _ref3;
switch (size) {
case _Button.IKwikUIButtonSize.XS:
return (0, _styledComponents.css)`
padding: var(--kwikui-space-xxs) var(--kwikui-space-xs);
font-size: var(--kwikui-font-size-xs);
line-height: var(--kwikui-font-size-xs);
`;
case _Button.IKwikUIButtonSize.S:
return (0, _styledComponents.css)`
padding: var(--kwikui-space-xs) var(--kwikui-space-s);
font-size: var(--kwikui-font-size-s);
line-height: var(--kwikui-font-size-s);
`;
case _Button.IKwikUIButtonSize.M:
return (0, _styledComponents.css)`
padding: var(--kwikui-space-s) var(--kwikui-space-m);
font-size: var(--kwikui-font-size-m);
line-height: var(--kwikui-font-size-m);
`;
case _Button.IKwikUIButtonSize.L:
return (0, _styledComponents.css)`
padding: var(--kwikui-space-m) var(--kwikui-space-l);
font-size: var(--kwikui-font-size-l);
line-height: var(--kwikui-font-size-l);
`;
case _Button.IKwikUIButtonSize.XL:
return (0, _styledComponents.css)`
padding: var(--kwikui-space-l) var(--kwikui-space-xl);
font-size: var(--kwikui-font-size-xl);
line-height: var(--kwikui-font-size-xl);
`;
}
}}
${_ref4 => {
let {
shape
} = _ref4;
switch (shape) {
case _Button.IKwikUIButtonShape.ROUNDED:
return (0, _styledComponents.css)`
border-radius: 2rem;
`;
case _Button.IKwikUIButtonShape.CURVED:
return (0, _styledComponents.css)`
border-radius: 0.5rem;
`;
case _Button.IKwikUIButtonShape.RECTANGLE:
return (0, _styledComponents.css)`
border-radius: 0rem;
`;
}
}}
`;
const KwikUIStyleButtonChildren = exports.KwikUIStyleButtonChildren = _styledComponents.default.div`
display: flex;
align-items: center;
flex-direction: row;
${_ref5 => {
let {
size
} = _ref5;
switch (size) {
case _Button.IKwikUIButtonSize.XS:
return (0, _styledComponents.css)`
font-size: var(--kwikui-font-size-xs);
line-height: var(--kwikui-font-size-xs);
height: calc(1.5 * var(--kwikui-font-size-xs));
`;
case _Button.IKwikUIButtonSize.S:
return (0, _styledComponents.css)`
font-size: var(--kwikui-font-size-s);
line-height: var(--kwikui-font-size-s);
height: calc(1.5 * var(--kwikui-font-size-s));
`;
case _Button.IKwikUIButtonSize.M:
return (0, _styledComponents.css)`
font-size: var(--kwikui-font-size-m);
line-height: var(--kwikui-font-size-m);
height: calc(1.5 * var(--kwikui-font-size-m));
`;
case _Button.IKwikUIButtonSize.L:
return (0, _styledComponents.css)`
font-size: var(--kwikui-font-size-l);
line-height: var(--kwikui-font-size-l);
height: calc(1.5 * var(--kwikui-font-size-l));
`;
case _Button.IKwikUIButtonSize.XL:
return (0, _styledComponents.css)`
font-size: var(--kwikui-font-size-xl);
line-height: var(--kwikui-font-size-xl);
height: calc(1.5 * var(--kwikui-font-size-xl));
`;
}
}}
`;
const spinAnimation = (0, _styledComponents.keyframes)`
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
`;
const KwikUIStyleLoadingAnimation = exports.KwikUIStyleLoadingAnimation = _styledComponents.default.div`
border-radius: 100%;
animation: ${spinAnimation} 1s linear infinite;
${_ref6 => {
let {
appearance
} = _ref6;
switch (appearance) {
case _Button.IKwikUIButtonAppearance.PRIMARY:
return (0, _styledComponents.css)`
border-bottom: 2px solid var(--kwikui-color-disabled-text);
border-left: 2px solid transparent;
border-right: 2px solid transparent;
border-top: 2px solid transparent;
`;
case _Button.IKwikUIButtonAppearance.SECONDARY:
return (0, _styledComponents.css)`
border-bottom: 2px solid var(--kwikui-color-disabled-text);
border-left: 2px solid transparent;
border-right: 2px solid transparent;
border-top: 2px solid transparent;
`;
case _Button.IKwikUIButtonAppearance.OUTLINED:
return (0, _styledComponents.css)`
border-bottom: 2px solid var(--kwikui-color-disabled);
border-left: 2px solid transparent;
border-right: 2px solid transparent;
border-top: 2px solid transparent;
`;
case _Button.IKwikUIButtonAppearance.LINK:
return (0, _styledComponents.css)`
border-bottom: 2px solid var(--kwikui-color-disabled);
border-left: 2px solid transparent;
border-right: 2px solid transparent;
border-top: 2px solid transparent;
`;
}
}}
${_ref7 => {
let {
size
} = _ref7;
switch (size) {
case _Button.IKwikUIButtonSize.XS:
return (0, _styledComponents.css)`
width: calc(1.5 * var(--kwikui-font-size-xs));
height: calc(1.5 * var(--kwikui-font-size-xs));
line-height: calc(1.5 * var(--kwikui-font-size-xs));
`;
case _Button.IKwikUIButtonSize.S:
return (0, _styledComponents.css)`
width: calc(1.5 * var(--kwikui-font-size-s));
height: calc(1.5 * var(--kwikui-font-size-s));
line-height: calc(1.5 * var(--kwikui-font-size-s));
`;
case _Button.IKwikUIButtonSize.M:
return (0, _styledComponents.css)`
width: calc(1.5 * var(--kwikui-font-size-m));
height: calc(1.5 * var(--kwikui-font-size-m));
line-height: calc(1.5 * var(--kwikui-font-size-m));
`;
case _Button.IKwikUIButtonSize.L:
return (0, _styledComponents.css)`
width: calc(1.5 * var(--kwikui-font-size-l));
height: calc(1.5 * var(--kwikui-font-size-l));
line-height: calc(1.5 * var(--kwikui-font-size-l));
`;
case _Button.IKwikUIButtonSize.XL:
return (0, _styledComponents.css)`
width: calc(1.5 * var(--kwikui-font-size-xl));
height: calc(1.5 * var(--kwikui-font-size-xl));
line-height: calc(1.5 * var(--kwikui-font-size-xl));
`;
}
}}
`;