@seniorsistemas/tecnologia-webcomponents
Version:
A webcomponents library for Senior Sistemas - Suite BPM products.
36 lines (31 loc) • 5.27 kB
JavaScript
import { r as registerInstance, h, e as Host } from './index-4b6bf994.js';
import { d as defaultTheme } from './defaultTheme-cf9ab925.js';
var ButtonPosition;
(function (ButtonPosition) {
ButtonPosition["right"] = "right";
ButtonPosition["left"] = "left";
})(ButtonPosition || (ButtonPosition = {}));
const bottomBarCss = "@import url(https://fonts.googleapis.com/css2?family=Almarai:wght@300;400;700;800&family=Inter:wght@300;400;500;600;700;800&family=Roboto:wght@300;400;500;700;900&display=swap);@import url(https://fonts.googleapis.com/css2?family=Libre+Baskerville:wght@400;700&family=Volkhov:wght@400;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Fira+Mono:wght@400;500;700&family=Oxygen+Mono&family=Roboto+Mono:wght@300;400;500;600;700&display=swap);.bg-default{background:#f6f8fa}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2x1{font-size:1.5rem;line-height:2rem}.text-3x1{font-size:1.875rem;line-height:2.25rem}.text-4x1{font-size:2.25rem;line-height:2.5rem}.text-5x1{font-size:3rem;line-height:3rem}.text-6x1{font-size:3.75rem;line-height:3.75rem}.text-7x1{font-size:4.5rem;line-height:4.5rem}.text-8x1{font-size:6rem;line-height:6rem}.text-9x1{font-size:8rem;line-height:8rem}.text-sans{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Roboto,Almarai,Inter,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-serif{font-family:ui-serif,Volkhov,Libre Baskerville,Georgia,serif,serif}.text-mono{font-family:ui-monospace,Fira Mono,Roboto Mono,Oxygen Mono,Consolas,monospace,monospace}.text-title{font-family:Inter,sans-serif}@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@500;700&family=Open+Sans:wght@400;600&display=swap\"); *{-webkit-box-sizing:border-box;box-sizing:border-box}:host([hidden]){display:none}:host([theme=light]){--tecnologia-color-primary:#3c9bec;--tecnologia-color-secondary:#cbd0d8;--tecnologia-color-danger:#ec3c43;--tecnologia-color-success:#00c99a;--tecnologia-color-warning:#ff9800}:host([theme=light]) .bg-primary{background-color:#3c9bec}:host([theme=light]) .bg-secondary{background-color:#cbd0d8}:host([theme=light]) .bg-danger{background-color:#ec3c43}:host([theme=light]) .bg-success{background-color:#00c99a}:host([theme=light]) .bg-warning{background-color:#ff9800}:host([theme=dark]){--tecnologia-color-primary:#7dbcf2;--tecnologia-color-secondary:#cbd0d8;--tecnologia-color-danger:#ec3c43;--tecnologia-color-success:#00c99a;--tecnologia-color-warning:#ff9800}:host([theme=dark]) .bg-primary{background-color:#7dbcf2}:host([theme=dark]) .bg-secondary{background-color:#cbd0d8}:host([theme=dark]) .bg-danger{background-color:#ec3c43}:host([theme=dark]) .bg-success{background-color:#00c99a}:host([theme=dark]) .bg-warning{background-color:#ff9800}:host{height:70px}:host([theme=dark]) .container{background:#e2e8f0;color:#434548}:host([theme=light]) .container{background:#434548;color:#fff}.container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-webkit-box-shadow:0 -1px 6px #00000046;box-shadow:0 -1px 6px #00000046;position:-webkit-sticky;position:sticky;position:fixed;z-index:99;padding:7px 60px;-webkit-box-sizing:border-box;box-sizing:border-box;height:70px;bottom:0;left:0;right:0}.container .wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;width:992px;height:100%}.container .text{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.container .text span{text-overflow:ellipsis;overflow:hidden}.flex-align-center{-ms-flex-pack:center !important;justify-content:center !important}.use-animation{-webkit-animation:openBar 700ms forwards;animation:openBar 700ms forwards}@media only screen and (max-width: 992px){.wrapper{width:100% !important}.container{padding:8px 20px}}@-webkit-keyframes openBar{from{bottom:-70px}to{top:inherit}}@keyframes openBar{from{bottom:-70px}to{top:inherit}}";
const BottomBar = class {
constructor(hostRef) {
registerInstance(this, hostRef);
this.theme = defaultTheme;
this.buttonPosition = ButtonPosition.left;
this.useAnimation = true;
}
handleButtonPositionStyle(position) {
const isLeft = position === ButtonPosition.left;
return {
flexDirection: isLeft ? 'row-reverse' : 'row',
};
}
render() {
return (h(Host, null, h("div", { class: `container ${this.useAnimation && 'use-animation'}` }, h("div", { style: this.handleButtonPositionStyle(this.buttonPosition), class: `wrapper ${!this.text && 'flex-align-center'}` }, this.text && (h("div", { class: "text", style: {
margin: this.buttonPosition === ButtonPosition.left
? '0 0 0 20px'
: '0 20px 0 0',
} }, h("span", { class: "text-sans text-base" }, this.text))), h("div", { class: "button" }, h("slot", { name: "button" }))))));
}
};
BottomBar.style = bottomBarCss;
export { BottomBar as tec_bottom_bar };