otimus-library 0.0.47 → 0.0.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,17 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../services/oc-toast.service";
5
+ import * as i2 from "@angular/common";
6
+ export class OcToastComponent {
7
+ constructor(toast) {
8
+ this.toast = toast;
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: OcToastComponent, deps: [{ token: i1.OcToastService }], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.5", type: OcToastComponent, isStandalone: true, selector: "oc-toast", ngImport: i0, template: "<div\r\n class=\"toast\"\r\n [ngClass]=\"{\r\n 'close-toast': toast.currentToast.counter === 1,\r\n error: toast.currentToast.status === 'erro',\r\n success: toast.currentToast.status === 'sucesso',\r\n loading: toast.currentToast.status === 'carregando',\r\n animation: toast.currentToast.hasAnimation\r\n }\"\r\n *ngIf=\"toast.currentToast && toast.currentToast.counter > 0\"\r\n>\r\n <header>\r\n <ng-container [ngTemplateOutlet]=\"iconTemplate\"></ng-container>\r\n <h4 class=\"status\">\r\n {{ toast.currentToast.status[0].toUpperCase() + toast.currentToast.status.slice(1) }}\r\n </h4>\r\n <button (click)=\"toast.closeToast(toast.currentToast.id)\">\r\n <span class=\"material-symbols-outlined\">close</span>\r\n </button>\r\n </header>\r\n <p>{{ toast.currentToast.message }}</p>\r\n</div>\r\n\r\n<ng-template #iconTemplate>\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'erro'\"\r\n >error</span\r\n >\r\n\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'sucesso'\"\r\n >check_circle</span\r\n >\r\n\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'informa\u00E7\u00E3o'\"\r\n >info</span\r\n >\r\n\r\n<svg *ngIf=\"toast.currentToast.status === 'carregando'\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><style>rect{fill:#00DDA3}.spinner_zWVm{animation:spinner_5QiW 1.2s linear infinite,spinner_PnZo 1.2s linear infinite}.spinner_gfyD{animation:spinner_5QiW 1.2s linear infinite,spinner_4j7o 1.2s linear infinite;animation-delay:.1s}.spinner_T5JJ{animation:spinner_5QiW 1.2s linear infinite,spinner_fLK4 1.2s linear infinite;animation-delay:.1s}.spinner_E3Wz{animation:spinner_5QiW 1.2s linear infinite,spinner_tDji 1.2s linear infinite;animation-delay:.2s}.spinner_g2vs{animation:spinner_5QiW 1.2s linear infinite,spinner_CMiT 1.2s linear infinite;animation-delay:.2s}.spinner_ctYB{animation:spinner_5QiW 1.2s linear infinite,spinner_cHKR 1.2s linear infinite;animation-delay:.2s}.spinner_BDNj{animation:spinner_5QiW 1.2s linear infinite,spinner_Re6e 1.2s linear infinite;animation-delay:.3s}.spinner_rCw3{animation:spinner_5QiW 1.2s linear infinite,spinner_EJmJ 1.2s linear infinite;animation-delay:.3s}.spinner_Rszm{animation:spinner_5QiW 1.2s linear infinite,spinner_YJOP 1.2s linear infinite;animation-delay:.4s}@keyframes spinner_5QiW{0%,50%{width:7.33px;height:7.33px}25%{width:1.33px;height:1.33px}}@keyframes spinner_PnZo{0%,50%{x:1px;y:1px}25%{x:4px;y:4px}}@keyframes spinner_4j7o{0%,50%{x:8.33px;y:1px}25%{x:11.33px;y:4px}}@keyframes spinner_fLK4{0%,50%{x:1px;y:8.33px}25%{x:4px;y:11.33px}}@keyframes spinner_tDji{0%,50%{x:15.66px;y:1px}25%{x:18.66px;y:4px}}@keyframes spinner_CMiT{0%,50%{x:8.33px;y:8.33px}25%{x:11.33px;y:11.33px}}@keyframes spinner_cHKR{0%,50%{x:1px;y:15.66px}25%{x:4px;y:18.66px}}@keyframes spinner_Re6e{0%,50%{x:15.66px;y:8.33px}25%{x:18.66px;y:11.33px}}@keyframes spinner_EJmJ{0%,50%{x:8.33px;y:15.66px}25%{x:11.33px;y:18.66px}}@keyframes spinner_YJOP{0%,50%{x:15.66px;y:15.66px}25%{x:18.66px;y:18.66px}}</style><rect class=\"spinner_zWVm\" x=\"1\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_gfyD\" x=\"8.33\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_T5JJ\" x=\"1\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_E3Wz\" x=\"15.66\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_g2vs\" x=\"8.33\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_ctYB\" x=\"1\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_BDNj\" x=\"15.66\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_rCw3\" x=\"8.33\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_Rszm\" x=\"15.66\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/></svg>\r\n \r\n\r\n</ng-template>\r\n", styles: [".toast{position:fixed;bottom:30px;right:30px;width:370px!important;min-height:116px!important;display:flex;flex-direction:column;justify-content:space-between;border-radius:17px;padding:1rem 1rem 1.5rem;box-shadow:8px 16px 32px #0000004d;background-color:#fff;z-index:50}.toast p{color:#625270;font-size:13px}.toast>header{color:#5505a2;display:flex;align-items:center;gap:.5rem}.toast>header>button{position:absolute;right:20px;border:none;background-color:transparent;color:#d1d5db;padding:10px 0 10px 10px;cursor:pointer;transition:.3s ease}.toast>header>button:hover{color:#ed3a3a}.toast>header>.icon{border:4px solid #5505a2;border-radius:50%;width:30px;height:30px}.toast>header h4{margin:0;padding:0;font-size:20px}.animation{animation:show-up .5s ease}.error>header{color:#ed3a3a}.error>header h4{color:#ed3a3a}.success>header{color:#4ab858}.success>header h4{color:#4ab858}.loading>header h4{color:#786b84}.loading>header>img,.loading>header svg{transform:rotate(45deg)}.close-toast{animation:close 1.1s ease}@keyframes show-up{0%{opacity:0;transform:translateY(100vw)}to{opacity:1;transform:translate(0)}}@keyframes close{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100vw)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: OcToastComponent, decorators: [{
14
+ type: Component,
15
+ args: [{ selector: 'oc-toast', standalone: true, imports: [CommonModule], template: "<div\r\n class=\"toast\"\r\n [ngClass]=\"{\r\n 'close-toast': toast.currentToast.counter === 1,\r\n error: toast.currentToast.status === 'erro',\r\n success: toast.currentToast.status === 'sucesso',\r\n loading: toast.currentToast.status === 'carregando',\r\n animation: toast.currentToast.hasAnimation\r\n }\"\r\n *ngIf=\"toast.currentToast && toast.currentToast.counter > 0\"\r\n>\r\n <header>\r\n <ng-container [ngTemplateOutlet]=\"iconTemplate\"></ng-container>\r\n <h4 class=\"status\">\r\n {{ toast.currentToast.status[0].toUpperCase() + toast.currentToast.status.slice(1) }}\r\n </h4>\r\n <button (click)=\"toast.closeToast(toast.currentToast.id)\">\r\n <span class=\"material-symbols-outlined\">close</span>\r\n </button>\r\n </header>\r\n <p>{{ toast.currentToast.message }}</p>\r\n</div>\r\n\r\n<ng-template #iconTemplate>\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'erro'\"\r\n >error</span\r\n >\r\n\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'sucesso'\"\r\n >check_circle</span\r\n >\r\n\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'informa\u00E7\u00E3o'\"\r\n >info</span\r\n >\r\n\r\n<svg *ngIf=\"toast.currentToast.status === 'carregando'\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><style>rect{fill:#00DDA3}.spinner_zWVm{animation:spinner_5QiW 1.2s linear infinite,spinner_PnZo 1.2s linear infinite}.spinner_gfyD{animation:spinner_5QiW 1.2s linear infinite,spinner_4j7o 1.2s linear infinite;animation-delay:.1s}.spinner_T5JJ{animation:spinner_5QiW 1.2s linear infinite,spinner_fLK4 1.2s linear infinite;animation-delay:.1s}.spinner_E3Wz{animation:spinner_5QiW 1.2s linear infinite,spinner_tDji 1.2s linear infinite;animation-delay:.2s}.spinner_g2vs{animation:spinner_5QiW 1.2s linear infinite,spinner_CMiT 1.2s linear infinite;animation-delay:.2s}.spinner_ctYB{animation:spinner_5QiW 1.2s linear infinite,spinner_cHKR 1.2s linear infinite;animation-delay:.2s}.spinner_BDNj{animation:spinner_5QiW 1.2s linear infinite,spinner_Re6e 1.2s linear infinite;animation-delay:.3s}.spinner_rCw3{animation:spinner_5QiW 1.2s linear infinite,spinner_EJmJ 1.2s linear infinite;animation-delay:.3s}.spinner_Rszm{animation:spinner_5QiW 1.2s linear infinite,spinner_YJOP 1.2s linear infinite;animation-delay:.4s}@keyframes spinner_5QiW{0%,50%{width:7.33px;height:7.33px}25%{width:1.33px;height:1.33px}}@keyframes spinner_PnZo{0%,50%{x:1px;y:1px}25%{x:4px;y:4px}}@keyframes spinner_4j7o{0%,50%{x:8.33px;y:1px}25%{x:11.33px;y:4px}}@keyframes spinner_fLK4{0%,50%{x:1px;y:8.33px}25%{x:4px;y:11.33px}}@keyframes spinner_tDji{0%,50%{x:15.66px;y:1px}25%{x:18.66px;y:4px}}@keyframes spinner_CMiT{0%,50%{x:8.33px;y:8.33px}25%{x:11.33px;y:11.33px}}@keyframes spinner_cHKR{0%,50%{x:1px;y:15.66px}25%{x:4px;y:18.66px}}@keyframes spinner_Re6e{0%,50%{x:15.66px;y:8.33px}25%{x:18.66px;y:11.33px}}@keyframes spinner_EJmJ{0%,50%{x:8.33px;y:15.66px}25%{x:11.33px;y:18.66px}}@keyframes spinner_YJOP{0%,50%{x:15.66px;y:15.66px}25%{x:18.66px;y:18.66px}}</style><rect class=\"spinner_zWVm\" x=\"1\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_gfyD\" x=\"8.33\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_T5JJ\" x=\"1\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_E3Wz\" x=\"15.66\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_g2vs\" x=\"8.33\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_ctYB\" x=\"1\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_BDNj\" x=\"15.66\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_rCw3\" x=\"8.33\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_Rszm\" x=\"15.66\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/></svg>\r\n \r\n\r\n</ng-template>\r\n", styles: [".toast{position:fixed;bottom:30px;right:30px;width:370px!important;min-height:116px!important;display:flex;flex-direction:column;justify-content:space-between;border-radius:17px;padding:1rem 1rem 1.5rem;box-shadow:8px 16px 32px #0000004d;background-color:#fff;z-index:50}.toast p{color:#625270;font-size:13px}.toast>header{color:#5505a2;display:flex;align-items:center;gap:.5rem}.toast>header>button{position:absolute;right:20px;border:none;background-color:transparent;color:#d1d5db;padding:10px 0 10px 10px;cursor:pointer;transition:.3s ease}.toast>header>button:hover{color:#ed3a3a}.toast>header>.icon{border:4px solid #5505a2;border-radius:50%;width:30px;height:30px}.toast>header h4{margin:0;padding:0;font-size:20px}.animation{animation:show-up .5s ease}.error>header{color:#ed3a3a}.error>header h4{color:#ed3a3a}.success>header{color:#4ab858}.success>header h4{color:#4ab858}.loading>header h4{color:#786b84}.loading>header>img,.loading>header svg{transform:rotate(45deg)}.close-toast{animation:close 1.1s ease}@keyframes show-up{0%{opacity:0;transform:translateY(100vw)}to{opacity:1;transform:translate(0)}}@keyframes close{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100vw)}}\n"] }]
16
+ }], ctorParameters: () => [{ type: i1.OcToastService }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2MtdG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3RpbXVzLWxpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL29jLXRvYXN0L29jLXRvYXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL290aW11cy1saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9vYy10b2FzdC9vYy10b2FzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVUxQyxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLFlBQW9CLEtBQXFCO1FBQXJCLFVBQUssR0FBTCxLQUFLLENBQWdCO0lBQUcsQ0FBQzs4R0FEbEMsZ0JBQWdCO2tHQUFoQixnQkFBZ0Isb0VDWDdCLGk1SEE4Q0Esb3ZDRHZDWSxZQUFZOzsyRkFJWCxnQkFBZ0I7a0JBUDVCLFNBQVM7K0JBQ0UsVUFBVSxjQUNSLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPY1RvYXN0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL29jLXRvYXN0LnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdvYy10b2FzdCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vb2MtdG9hc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9vYy10b2FzdC5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIE9jVG9hc3RDb21wb25lbnQge1xyXG4gIGNvbnN0cnVjdG9yIChwdWJsaWMgdG9hc3Q6IE9jVG9hc3RTZXJ2aWNlKSB7fVxyXG59XHJcbiIsIjxkaXZcclxuICBjbGFzcz1cInRvYXN0XCJcclxuICBbbmdDbGFzc109XCJ7XHJcbiAgICAnY2xvc2UtdG9hc3QnOiB0b2FzdC5jdXJyZW50VG9hc3QuY291bnRlciA9PT0gMSxcclxuICAgIGVycm9yOiB0b2FzdC5jdXJyZW50VG9hc3Quc3RhdHVzID09PSAnZXJybycsXHJcbiAgICBzdWNjZXNzOiB0b2FzdC5jdXJyZW50VG9hc3Quc3RhdHVzID09PSAnc3VjZXNzbycsXHJcbiAgICBsb2FkaW5nOiB0b2FzdC5jdXJyZW50VG9hc3Quc3RhdHVzID09PSAnY2FycmVnYW5kbycsXHJcbiAgICBhbmltYXRpb246IHRvYXN0LmN1cnJlbnRUb2FzdC5oYXNBbmltYXRpb25cclxuICB9XCJcclxuICAqbmdJZj1cInRvYXN0LmN1cnJlbnRUb2FzdCAmJiB0b2FzdC5jdXJyZW50VG9hc3QuY291bnRlciA+IDBcIlxyXG4+XHJcbiAgPGhlYWRlcj5cclxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaWNvblRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICA8aDQgY2xhc3M9XCJzdGF0dXNcIj5cclxuICAgICAge3sgdG9hc3QuY3VycmVudFRvYXN0LnN0YXR1c1swXS50b1VwcGVyQ2FzZSgpICsgdG9hc3QuY3VycmVudFRvYXN0LnN0YXR1cy5zbGljZSgxKSB9fVxyXG4gICAgPC9oND5cclxuICAgIDxidXR0b24gKGNsaWNrKT1cInRvYXN0LmNsb3NlVG9hc3QodG9hc3QuY3VycmVudFRvYXN0LmlkKVwiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWRcIj5jbG9zZTwvc3Bhbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvaGVhZGVyPlxyXG4gIDxwPnt7IHRvYXN0LmN1cnJlbnRUb2FzdC5tZXNzYWdlIH19PC9wPlxyXG48L2Rpdj5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjaWNvblRlbXBsYXRlPlxyXG4gIDxzcGFuXHJcbiAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWRcIlxyXG4gICAgKm5nSWY9XCJ0b2FzdC5jdXJyZW50VG9hc3Quc3RhdHVzID09PSAnZXJybydcIlxyXG4gICAgPmVycm9yPC9zcGFuXHJcbiAgPlxyXG5cclxuICA8c3BhblxyXG4gICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkXCJcclxuICAgICpuZ0lmPVwidG9hc3QuY3VycmVudFRvYXN0LnN0YXR1cyA9PT0gJ3N1Y2Vzc28nXCJcclxuICAgID5jaGVja19jaXJjbGU8L3NwYW5cclxuICA+XHJcblxyXG4gIDxzcGFuXHJcbiAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWRcIlxyXG4gICAgKm5nSWY9XCJ0b2FzdC5jdXJyZW50VG9hc3Quc3RhdHVzID09PSAnaW5mb3JtYcOnw6NvJ1wiXHJcbiAgICA+aW5mbzwvc3BhblxyXG4gID5cclxuXHJcbjxzdmcgKm5nSWY9XCJ0b2FzdC5jdXJyZW50VG9hc3Quc3RhdHVzID09PSAnY2FycmVnYW5kbydcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPjxzdHlsZT5yZWN0e2ZpbGw6IzAwRERBM30uc3Bpbm5lcl96V1Zte2FuaW1hdGlvbjpzcGlubmVyXzVRaVcgMS4ycyBsaW5lYXIgaW5maW5pdGUsc3Bpbm5lcl9QblpvIDEuMnMgbGluZWFyIGluZmluaXRlfS5zcGlubmVyX2dmeUR7YW5pbWF0aW9uOnNwaW5uZXJfNVFpVyAxLjJzIGxpbmVhciBpbmZpbml0ZSxzcGlubmVyXzRqN28gMS4ycyBsaW5lYXIgaW5maW5pdGU7YW5pbWF0aW9uLWRlbGF5Oi4xc30uc3Bpbm5lcl9UNUpKe2FuaW1hdGlvbjpzcGlubmVyXzVRaVcgMS4ycyBsaW5lYXIgaW5maW5pdGUsc3Bpbm5lcl9mTEs0IDEuMnMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbi1kZWxheTouMXN9LnNwaW5uZXJfRTNXenthbmltYXRpb246c3Bpbm5lcl81UWlXIDEuMnMgbGluZWFyIGluZmluaXRlLHNwaW5uZXJfdERqaSAxLjJzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb24tZGVsYXk6LjJzfS5zcGlubmVyX2cydnN7YW5pbWF0aW9uOnNwaW5uZXJfNVFpVyAxLjJzIGxpbmVhciBpbmZpbml0ZSxzcGlubmVyX0NNaVQgMS4ycyBsaW5lYXIgaW5maW5pdGU7YW5pbWF0aW9uLWRlbGF5Oi4yc30uc3Bpbm5lcl9jdFlCe2FuaW1hdGlvbjpzcGlubmVyXzVRaVcgMS4ycyBsaW5lYXIgaW5maW5pdGUsc3Bpbm5lcl9jSEtSIDEuMnMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbi1kZWxheTouMnN9LnNwaW5uZXJfQkROanthbmltYXRpb246c3Bpbm5lcl81UWlXIDEuMnMgbGluZWFyIGluZmluaXRlLHNwaW5uZXJfUmU2ZSAxLjJzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb24tZGVsYXk6LjNzfS5zcGlubmVyX3JDdzN7YW5pbWF0aW9uOnNwaW5uZXJfNVFpVyAxLjJzIGxpbmVhciBpbmZpbml0ZSxzcGlubmVyX0VKbUogMS4ycyBsaW5lYXIgaW5maW5pdGU7YW5pbWF0aW9uLWRlbGF5Oi4zc30uc3Bpbm5lcl9Sc3pte2FuaW1hdGlvbjpzcGlubmVyXzVRaVcgMS4ycyBsaW5lYXIgaW5maW5pdGUsc3Bpbm5lcl9ZSk9QIDEuMnMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbi1kZWxheTouNHN9QGtleWZyYW1lcyBzcGlubmVyXzVRaVd7MCUsNTAle3dpZHRoOjcuMzNweDtoZWlnaHQ6Ny4zM3B4fTI1JXt3aWR0aDoxLjMzcHg7aGVpZ2h0OjEuMzNweH19QGtleWZyYW1lcyBzcGlubmVyX1BuWm97MCUsNTAle3g6MXB4O3k6MXB4fTI1JXt4OjRweDt5OjRweH19QGtleWZyYW1lcyBzcGlubmVyXzRqN297MCUsNTAle3g6OC4zM3B4O3k6MXB4fTI1JXt4OjExLjMzcHg7eTo0cHh9fUBrZXlmcmFtZXMgc3Bpbm5lcl9mTEs0ezAlLDUwJXt4OjFweDt5OjguMzNweH0yNSV7eDo0cHg7eToxMS4zM3B4fX1Aa2V5ZnJhbWVzIHNwaW5uZXJfdERqaXswJSw1MCV7eDoxNS42NnB4O3k6MXB4fTI1JXt4OjE4LjY2cHg7eTo0cHh9fUBrZXlmcmFtZXMgc3Bpbm5lcl9DTWlUezAlLDUwJXt4OjguMzNweDt5OjguMzNweH0yNSV7eDoxMS4zM3B4O3k6MTEuMzNweH19QGtleWZyYW1lcyBzcGlubmVyX2NIS1J7MCUsNTAle3g6MXB4O3k6MTUuNjZweH0yNSV7eDo0cHg7eToxOC42NnB4fX1Aa2V5ZnJhbWVzIHNwaW5uZXJfUmU2ZXswJSw1MCV7eDoxNS42NnB4O3k6OC4zM3B4fTI1JXt4OjE4LjY2cHg7eToxMS4zM3B4fX1Aa2V5ZnJhbWVzIHNwaW5uZXJfRUptSnswJSw1MCV7eDo4LjMzcHg7eToxNS42NnB4fTI1JXt4OjExLjMzcHg7eToxOC42NnB4fX1Aa2V5ZnJhbWVzIHNwaW5uZXJfWUpPUHswJSw1MCV7eDoxNS42NnB4O3k6MTUuNjZweH0yNSV7eDoxOC42NnB4O3k6MTguNjZweH19PC9zdHlsZT48cmVjdCBjbGFzcz1cInNwaW5uZXJfeldWbVwiIHg9XCIxXCIgeT1cIjFcIiB3aWR0aD1cIjcuMzNcIiBoZWlnaHQ9XCI3LjMzXCIvPjxyZWN0IGNsYXNzPVwic3Bpbm5lcl9nZnlEXCIgeD1cIjguMzNcIiB5PVwiMVwiIHdpZHRoPVwiNy4zM1wiIGhlaWdodD1cIjcuMzNcIi8+PHJlY3QgY2xhc3M9XCJzcGlubmVyX1Q1SkpcIiB4PVwiMVwiIHk9XCI4LjMzXCIgd2lkdGg9XCI3LjMzXCIgaGVpZ2h0PVwiNy4zM1wiLz48cmVjdCBjbGFzcz1cInNwaW5uZXJfRTNXelwiIHg9XCIxNS42NlwiIHk9XCIxXCIgd2lkdGg9XCI3LjMzXCIgaGVpZ2h0PVwiNy4zM1wiLz48cmVjdCBjbGFzcz1cInNwaW5uZXJfZzJ2c1wiIHg9XCI4LjMzXCIgeT1cIjguMzNcIiB3aWR0aD1cIjcuMzNcIiBoZWlnaHQ9XCI3LjMzXCIvPjxyZWN0IGNsYXNzPVwic3Bpbm5lcl9jdFlCXCIgeD1cIjFcIiB5PVwiMTUuNjZcIiB3aWR0aD1cIjcuMzNcIiBoZWlnaHQ9XCI3LjMzXCIvPjxyZWN0IGNsYXNzPVwic3Bpbm5lcl9CRE5qXCIgeD1cIjE1LjY2XCIgeT1cIjguMzNcIiB3aWR0aD1cIjcuMzNcIiBoZWlnaHQ9XCI3LjMzXCIvPjxyZWN0IGNsYXNzPVwic3Bpbm5lcl9yQ3czXCIgeD1cIjguMzNcIiB5PVwiMTUuNjZcIiB3aWR0aD1cIjcuMzNcIiBoZWlnaHQ9XCI3LjMzXCIvPjxyZWN0IGNsYXNzPVwic3Bpbm5lcl9Sc3ptXCIgeD1cIjE1LjY2XCIgeT1cIjE1LjY2XCIgd2lkdGg9XCI3LjMzXCIgaGVpZ2h0PVwiNy4zM1wiLz48L3N2Zz5cclxuICBcclxuXHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2MtdG9hc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vdGltdXMtbGlicmFyeS9zcmMvbGliL2ludGVyZmFjZXMvb2MtdG9hc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgVG9hc3RUeXBlIHtcclxuICBpZDogbnVtYmVyXHJcbiAgc3RhdHVzOiBzdHJpbmdcclxuICBtZXNzYWdlOiBzdHJpbmdcclxuICBjb3VudGVyOiBudW1iZXJcclxuICBwcm9taXNlS2V5Pzogc3RyaW5nXHJcbiAgaGFzQW5pbWF0aW9uPzogYm9vbGVhblxyXG59Il19
@@ -0,0 +1,80 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class OcToastService {
4
+ constructor() {
5
+ this.toastList = [];
6
+ this.isRunning = false;
7
+ this.openToast = (toastStatus, toastMessage, toastCounter, promiseKey) => {
8
+ const toast = {
9
+ id: this.toastList.length === 0 ? 1 : this.toastList[this.toastList.length - 1].id + 1,
10
+ counter: toastCounter || 5,
11
+ status: toastStatus,
12
+ message: toastMessage,
13
+ promiseKey,
14
+ hasAnimation: true,
15
+ };
16
+ const toastExists = this.toastList.some((to) => {
17
+ return to.status === toastStatus && to.message === toastMessage;
18
+ });
19
+ if (toastExists)
20
+ return;
21
+ const keyExists = this.toastList.find((to) => to.promiseKey === toast.promiseKey);
22
+ if (keyExists) {
23
+ this.toastList = this.toastList.map((to) => {
24
+ if (to.promiseKey === promiseKey) {
25
+ return { ...toast, hasAnimation: false };
26
+ }
27
+ return to;
28
+ });
29
+ }
30
+ this.toastList.push(toast);
31
+ if (!this.isRunning) {
32
+ this.renderToasts();
33
+ }
34
+ };
35
+ }
36
+ closeToast(id) {
37
+ this.toastList = this.toastList.map((to) => {
38
+ if (to.id === id) {
39
+ return { ...to, counter: 0 };
40
+ }
41
+ return to;
42
+ });
43
+ this.currentToast = this.toastList[0];
44
+ }
45
+ renderToasts() {
46
+ if (this.toastList.length === 0) {
47
+ this.isRunning = false;
48
+ return;
49
+ }
50
+ this.isRunning = true;
51
+ this.currentToast = this.toastList[0];
52
+ const toastInterval = setInterval(() => {
53
+ if (this.toastList.length === 0) {
54
+ clearInterval(toastInterval);
55
+ this.isRunning = false;
56
+ return;
57
+ }
58
+ this.currentToast = this.toastList[0];
59
+ if (this.currentToast.status !== 'carregando') {
60
+ this.currentToast.counter--;
61
+ }
62
+ if (this.currentToast.counter <= 0) {
63
+ this.toastList = this.toastList.filter((to) => {
64
+ return to.status !== this.currentToast.status && to.message !== this.currentToast.message;
65
+ });
66
+ clearInterval(toastInterval);
67
+ this.renderToasts();
68
+ }
69
+ }, 1000);
70
+ }
71
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: OcToastService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
72
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: OcToastService, providedIn: 'root' }); }
73
+ }
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: OcToastService, decorators: [{
75
+ type: Injectable,
76
+ args: [{
77
+ providedIn: 'root'
78
+ }]
79
+ }] });
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2MtdG9hc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL290aW11cy1saWJyYXJ5L3NyYy9saWIvc2VydmljZXMvb2MtdG9hc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU0zQyxNQUFNLE9BQU8sY0FBYztJQUgzQjtRQUlFLGNBQVMsR0FBZ0IsRUFBRSxDQUFBO1FBRTNCLGNBQVMsR0FBWSxLQUFLLENBQUE7UUFlMUIsY0FBUyxHQUFHLENBQ1YsV0FBNkQsRUFDN0QsWUFBb0IsRUFDcEIsWUFBcUIsRUFDckIsVUFBbUIsRUFDbkIsRUFBRTtZQUNGLE1BQU0sS0FBSyxHQUFHO2dCQUNaLEVBQUUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQztnQkFDdEYsT0FBTyxFQUFFLFlBQVksSUFBSSxDQUFDO2dCQUMxQixNQUFNLEVBQUUsV0FBVztnQkFDbkIsT0FBTyxFQUFFLFlBQVk7Z0JBQ3JCLFVBQVU7Z0JBQ1YsWUFBWSxFQUFFLElBQUk7YUFDbkIsQ0FBQTtZQUVELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUU7Z0JBQzdDLE9BQU8sRUFBRSxDQUFDLE1BQU0sS0FBSyxXQUFXLElBQUksRUFBRSxDQUFDLE9BQU8sS0FBSyxZQUFZLENBQUE7WUFDakUsQ0FBQyxDQUFDLENBQUE7WUFFRixJQUFJLFdBQVc7Z0JBQUUsT0FBTTtZQUV2QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFD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cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUb2FzdFR5cGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzL29jLXRvYXN0JztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIE9jVG9hc3RTZXJ2aWNlIHtcclxuICB0b2FzdExpc3Q6IFRvYXN0VHlwZVtdID0gW11cclxuXHJcbiAgaXNSdW5uaW5nOiBib29sZWFuID0gZmFsc2VcclxuXHJcbiAgY3VycmVudFRvYXN0ITogVG9hc3RUeXBlXHJcblxyXG4gIGNsb3NlVG9hc3QoaWQ6IG51bWJlcikge1xyXG4gICAgdGhpcy50b2FzdExpc3QgPSB0aGlzLnRvYXN0TGlzdC5tYXAoKHRvKSA9PiB7XHJcbiAgICAgIGlmICh0by5pZCA9PT0gaWQpIHtcclxuICAgICAgICByZXR1cm4geyAuLi50bywgY291bnRlcjogMCB9XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHRvXHJcbiAgICB9KVxyXG5cclxuICAgIHRoaXMuY3VycmVudFRvYXN0ID0gdGhpcy50b2FzdExpc3RbMF1cclxuICB9XHJcblxyXG4gIG9wZW5Ub2FzdCA9IChcclxuICAgIHRvYXN0U3RhdHVzOiAnZXJybycgfCAnc3VjZXNzbycgfCAnY2FycmVnYW5kbycgfCAnaW5mb3JtYcOnw6NvJyxcclxuICAgIHRvYXN0TWVzc2FnZTogc3RyaW5nLFxyXG4gICAgdG9hc3RDb3VudGVyPzogbnVtYmVyLFxyXG4gICAgcHJvbWlzZUtleT86IHN0cmluZ1xyXG4gICkgPT4ge1xyXG4gICAgY29uc3QgdG9hc3QgPSB7XHJcbiAgICAgIGlkOiB0aGlzLnRvYXN0TGlzdC5sZW5ndGggPT09IDAgPyAxIDogdGhpcy50b2FzdExpc3RbdGhpcy50b2FzdExpc3QubGVuZ3RoIC0gMV0uaWQgKyAxLFxyXG4gICAgICBjb3VudGVyOiB0b2FzdENvdW50ZXIgfHwgNSxcclxuICAgICAgc3RhdHVzOiB0b2FzdFN0YXR1cyxcclxuICAgICAgbWVzc2FnZTogdG9hc3RNZXNzYWdlLFxyXG4gICAgICBwcm9taXNlS2V5LFxyXG4gICAgICBoYXNBbmltYXRpb246IHRydWUsXHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgdG9hc3RFeGlzdHMgPSB0aGlzLnRvYXN0TGlzdC5zb21lKCh0bykgPT4ge1xyXG4gICAgICByZXR1cm4gdG8uc3RhdHVzID09PSB0b2FzdFN0YXR1cyAmJiB0by5tZXNzYWdlID09PSB0b2FzdE1lc3NhZ2VcclxuICAgIH0pXHJcblxyXG4gICAgaWYgKHRvYXN0RXhpc3RzKSByZXR1cm5cclxuXHJcbiAgICBjb25zdCBrZXlFeGlzdHMgPSB0aGlzLnRvYXN0TGlzdC5maW5kKCh0bykgPT4gdG8ucHJvbWlzZUtleSA9PT0gdG9hc3QucHJvbWlzZUtleSlcclxuXHJcbiAgICBpZiAoa2V5RXhpc3RzKSB7XHJcbiAgICAgIHRoaXMudG9hc3RMaXN0ID0gdGhpcy50b2FzdExpc3QubWFwKCh0bykgPT4ge1xyXG4gICAgICAgIGlmICh0by5wcm9taXNlS2V5ID09PSBwcm9taXNlS2V5KSB7XHJcbiAgICAgICAgICByZXR1cm4geyAuLi50b2FzdCwgaGFzQW5pbWF0aW9uOiBmYWxzZSB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0b1xyXG4gICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudG9hc3RMaXN0LnB1c2godG9hc3QpXHJcblxyXG4gICAgaWYgKCF0aGlzLmlzUnVubmluZykge1xyXG4gICAgICB0aGlzLnJlbmRlclRvYXN0cygpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZW5kZXJUb2FzdHMoKSB7XHJcbiAgICBpZiAodGhpcy50b2FzdExpc3QubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHRoaXMuaXNSdW5uaW5nID0gZmFsc2VcclxuICAgICAgcmV0dXJuXHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pc1J1bm5pbmcgPSB0cnVlXHJcbiAgICB0aGlzLmN1cnJlbnRUb2FzdCA9IHRoaXMudG9hc3RMaXN0WzBdXHJcblxyXG4gICAgY29uc3QgdG9hc3RJbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMudG9hc3RMaXN0Lmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgIGNsZWFySW50ZXJ2YWwodG9hc3RJbnRlcnZhbClcclxuICAgICAgICB0aGlzLmlzUnVubmluZyA9IGZhbHNlXHJcbiAgICAgICAgcmV0dXJuXHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuY3VycmVudFRvYXN0ID0gdGhpcy50b2FzdExpc3RbMF1cclxuICAgICAgaWYgKHRoaXMuY3VycmVudFRvYXN0LnN0YXR1cyAhPT0gJ2NhcnJlZ2FuZG8nKSB7XHJcbiAgICAgICAgdGhpcy5jdXJyZW50VG9hc3QuY291bnRlci0tXHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICh0aGlzLmN1cnJlbnRUb2FzdC5jb3VudGVyIDw9IDApIHtcclxuICAgICAgICB0aGlzLnRvYXN0TGlzdCA9IHRoaXMudG9hc3RMaXN0LmZpbHRlcigodG8pID0+IHtcclxuICAgICAgICAgIHJldHVybiB0by5zdGF0dXMgIT09IHRoaXMuY3VycmVudFRvYXN0LnN0YXR1cyAmJiB0by5tZXNzYWdlICE9PSB0aGlzLmN1cnJlbnRUb2FzdC5tZXNzYWdlXHJcbiAgICAgICAgfSlcclxuICAgICAgICBjbGVhckludGVydmFsKHRvYXN0SW50ZXJ2YWwpXHJcbiAgICAgICAgdGhpcy5yZW5kZXJUb2FzdHMoKVxyXG4gICAgICB9XHJcbiAgICB9LCAxMDAwKVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -3,6 +3,7 @@
3
3
  */
4
4
  export * from './lib/otimus-library.service';
5
5
  export * from './lib/otimus-library.component';
6
+ export * from './lib/services/oc-toast.service';
6
7
  export * from './lib/components/oc-table/oc-table.component';
7
8
  export * from './lib/components/oc-badge/oc-badge.component';
8
9
  export * from './lib/components/oc-filter/oc-filter.component';
@@ -18,4 +19,5 @@ export * from './lib/components/oc-log/oc-log.component';
18
19
  export * from './lib/components/oc-pagination/oc-pagination.component';
19
20
  export * from './lib/components/oc-not-found/oc-not-found.component';
20
21
  export * from './lib/components/oc-menu/oc-menu.component';
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL290aW11cy1saWJyYXJ5L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBOztFQUVFO0FBRUYsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLGdDQUFnQyxDQUFBO0FBQzlDLGNBQWMsOENBQThDLENBQUE7QUFDNUQsY0FBYyw4Q0FBOEMsQ0FBQTtBQUM1RCxjQUFjLGdEQUFnRCxDQUFBO0FBQzlELGNBQWMsa0RBQWtELENBQUE7QUFDaEUsY0FBYyw4Q0FBOEMsQ0FBQTtBQUM1RCxjQUFjLDhDQUE4QyxDQUFBO0FBQzVELGNBQWMsc0RBQXNELENBQUE7QUFDcEUsY0FBYyw0Q0FBNEMsQ0FBQTtBQUMxRCxjQUFjLDREQUE0RCxDQUFBO0FBQzFFLGNBQWMsNERBQTRELENBQUE7QUFDMUUsY0FBYyxrREFBa0QsQ0FBQTtBQUNoRSxjQUFjLDBDQUEwQyxDQUFBO0FBQ3hELGNBQWMsd0RBQXdELENBQUE7QUFDdEUsY0FBYyxzREFBc0QsQ0FBQTtBQUNwRSxjQUFjLDRDQUE0QyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbi8qXHJcbiogUHVibGljIEFQSSBTdXJmYWNlIG9mIG90aW11cy1saWJyYXJ5XHJcbiovXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9vdGltdXMtbGlicmFyeS5zZXJ2aWNlJ1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9vdGltdXMtbGlicmFyeS5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb2MtdGFibGUvb2MtdGFibGUuY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29jLWJhZGdlL29jLWJhZGdlLmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vYy1maWx0ZXIvb2MtZmlsdGVyLmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9vYy10b29sdGlwL29jLXRvb2x0aXAuZGlyZWN0aXZlJ1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29jLWlucHV0L29jLWlucHV0LmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vYy1tb2RhbC9vYy1tb2RhbC5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb2Mta2V5LXZhbHVlL29jLWtleS12YWx1ZS5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb2MtY2hpcC9vYy1jaGlwLmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vYy1tb2RhbC1mb290ZXIvb2MtbW9kYWwtZm9vdGVyLmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vYy1hdXRvY29tcGxldGUvb2MtYXV0b2NvbXBsZXRlLmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vYy1wcm9maWxlL29jLXByb2ZpbGUuY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29jLWxvZy9vYy1sb2cuY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29jLXBhZ2luYXRpb24vb2MtcGFnaW5hdGlvbi5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb2Mtbm90LWZvdW5kL29jLW5vdC1mb3VuZC5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb2MtbWVudS9vYy1tZW51LmNvbXBvbmVudCciXX0=
22
+ export * from './lib/components/oc-toast/oc-toast.component';
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL290aW11cy1saWJyYXJ5L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBOztFQUVFO0FBRUYsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLGdDQUFnQyxDQUFBO0FBQzlDLGNBQWMsaUNBQWlDLENBQUE7QUFDL0MsY0FBYyw4Q0FBOEMsQ0FBQTtBQUM1RCxjQUFjLDhDQUE4QyxDQUFBO0FBQzVELGNBQWMsZ0RBQWdELENBQUE7QUFDOUQsY0FBYyxrREFBa0QsQ0FBQTtBQUNoRSxjQUFjLDhDQUE4QyxDQUFBO0FBQzVELGNBQWMsOENBQThDLENBQUE7QUFDNUQsY0FBYyxzREFBc0QsQ0FBQTtBQUNwRSxjQUFjLDRDQUE0QyxDQUFBO0FBQzFELGNBQWMsNERBQTRELENBQUE7QUFDMUUsY0FBYyw0REFBNEQsQ0FBQTtBQUMxRSxjQUFjLGtEQUFrRCxDQUFBO0FBQ2hFLGNBQWMsMENBQTBDLENBQUE7QUFDeEQsY0FBYyx3REFBd0QsQ0FBQTtBQUN0RSxjQUFjLHNEQUFzRCxDQUFBO0FBQ3BFLGNBQWMsNENBQTRDLENBQUE7QUFDMUQsY0FBYyw4Q0FBOEMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4vKlxyXG4qIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBvdGltdXMtbGlicmFyeVxyXG4qL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvb3RpbXVzLWxpYnJhcnkuc2VydmljZSdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvb3RpbXVzLWxpYnJhcnkuY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9vYy10b2FzdC5zZXJ2aWNlJ1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29jLXRhYmxlL29jLXRhYmxlLmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vYy1iYWRnZS9vYy1iYWRnZS5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb2MtZmlsdGVyL29jLWZpbHRlci5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvb2MtdG9vbHRpcC9vYy10b29sdGlwLmRpcmVjdGl2ZSdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vYy1pbnB1dC9vYy1pbnB1dC5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb2MtbW9kYWwvb2MtbW9kYWwuY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29jLWtleS12YWx1ZS9vYy1rZXktdmFsdWUuY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29jLWNoaXAvb2MtY2hpcC5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb2MtbW9kYWwtZm9vdGVyL29jLW1vZGFsLWZvb3Rlci5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb2MtYXV0b2NvbXBsZXRlL29jLWF1dG9jb21wbGV0ZS5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb2MtcHJvZmlsZS9vYy1wcm9maWxlLmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vYy1sb2cvb2MtbG9nLmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9vYy1wYWdpbmF0aW9uL29jLXBhZ2luYXRpb24uY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29jLW5vdC1mb3VuZC9vYy1ub3QtZm91bmQuY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL29jLW1lbnUvb2MtbWVudS5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb2MtdG9hc3Qvb2MtdG9hc3QuY29tcG9uZW50JyJdfQ==
@@ -38,6 +38,84 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImpor
38
38
  ` }]
39
39
  }] });
40
40
 
41
+ class OcToastService {
42
+ constructor() {
43
+ this.toastList = [];
44
+ this.isRunning = false;
45
+ this.openToast = (toastStatus, toastMessage, toastCounter, promiseKey) => {
46
+ const toast = {
47
+ id: this.toastList.length === 0 ? 1 : this.toastList[this.toastList.length - 1].id + 1,
48
+ counter: toastCounter || 5,
49
+ status: toastStatus,
50
+ message: toastMessage,
51
+ promiseKey,
52
+ hasAnimation: true,
53
+ };
54
+ const toastExists = this.toastList.some((to) => {
55
+ return to.status === toastStatus && to.message === toastMessage;
56
+ });
57
+ if (toastExists)
58
+ return;
59
+ const keyExists = this.toastList.find((to) => to.promiseKey === toast.promiseKey);
60
+ if (keyExists) {
61
+ this.toastList = this.toastList.map((to) => {
62
+ if (to.promiseKey === promiseKey) {
63
+ return { ...toast, hasAnimation: false };
64
+ }
65
+ return to;
66
+ });
67
+ }
68
+ this.toastList.push(toast);
69
+ if (!this.isRunning) {
70
+ this.renderToasts();
71
+ }
72
+ };
73
+ }
74
+ closeToast(id) {
75
+ this.toastList = this.toastList.map((to) => {
76
+ if (to.id === id) {
77
+ return { ...to, counter: 0 };
78
+ }
79
+ return to;
80
+ });
81
+ this.currentToast = this.toastList[0];
82
+ }
83
+ renderToasts() {
84
+ if (this.toastList.length === 0) {
85
+ this.isRunning = false;
86
+ return;
87
+ }
88
+ this.isRunning = true;
89
+ this.currentToast = this.toastList[0];
90
+ const toastInterval = setInterval(() => {
91
+ if (this.toastList.length === 0) {
92
+ clearInterval(toastInterval);
93
+ this.isRunning = false;
94
+ return;
95
+ }
96
+ this.currentToast = this.toastList[0];
97
+ if (this.currentToast.status !== 'carregando') {
98
+ this.currentToast.counter--;
99
+ }
100
+ if (this.currentToast.counter <= 0) {
101
+ this.toastList = this.toastList.filter((to) => {
102
+ return to.status !== this.currentToast.status && to.message !== this.currentToast.message;
103
+ });
104
+ clearInterval(toastInterval);
105
+ this.renderToasts();
106
+ }
107
+ }, 1000);
108
+ }
109
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: OcToastService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
110
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: OcToastService, providedIn: 'root' }); }
111
+ }
112
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: OcToastService, decorators: [{
113
+ type: Injectable,
114
+ args: [{
115
+ providedIn: 'root'
116
+ }]
117
+ }] });
118
+
41
119
  class OcTableComponent {
42
120
  constructor() {
43
121
  this.columns = [];
@@ -570,6 +648,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImpor
570
648
  type: Input
571
649
  }] } });
572
650
 
651
+ class OcToastComponent {
652
+ constructor(toast) {
653
+ this.toast = toast;
654
+ }
655
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: OcToastComponent, deps: [{ token: OcToastService }], target: i0.ɵɵFactoryTarget.Component }); }
656
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.5", type: OcToastComponent, isStandalone: true, selector: "oc-toast", ngImport: i0, template: "<div\r\n class=\"toast\"\r\n [ngClass]=\"{\r\n 'close-toast': toast.currentToast.counter === 1,\r\n error: toast.currentToast.status === 'erro',\r\n success: toast.currentToast.status === 'sucesso',\r\n loading: toast.currentToast.status === 'carregando',\r\n animation: toast.currentToast.hasAnimation\r\n }\"\r\n *ngIf=\"toast.currentToast && toast.currentToast.counter > 0\"\r\n>\r\n <header>\r\n <ng-container [ngTemplateOutlet]=\"iconTemplate\"></ng-container>\r\n <h4 class=\"status\">\r\n {{ toast.currentToast.status[0].toUpperCase() + toast.currentToast.status.slice(1) }}\r\n </h4>\r\n <button (click)=\"toast.closeToast(toast.currentToast.id)\">\r\n <span class=\"material-symbols-outlined\">close</span>\r\n </button>\r\n </header>\r\n <p>{{ toast.currentToast.message }}</p>\r\n</div>\r\n\r\n<ng-template #iconTemplate>\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'erro'\"\r\n >error</span\r\n >\r\n\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'sucesso'\"\r\n >check_circle</span\r\n >\r\n\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'informa\u00E7\u00E3o'\"\r\n >info</span\r\n >\r\n\r\n<svg *ngIf=\"toast.currentToast.status === 'carregando'\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><style>rect{fill:#00DDA3}.spinner_zWVm{animation:spinner_5QiW 1.2s linear infinite,spinner_PnZo 1.2s linear infinite}.spinner_gfyD{animation:spinner_5QiW 1.2s linear infinite,spinner_4j7o 1.2s linear infinite;animation-delay:.1s}.spinner_T5JJ{animation:spinner_5QiW 1.2s linear infinite,spinner_fLK4 1.2s linear infinite;animation-delay:.1s}.spinner_E3Wz{animation:spinner_5QiW 1.2s linear infinite,spinner_tDji 1.2s linear infinite;animation-delay:.2s}.spinner_g2vs{animation:spinner_5QiW 1.2s linear infinite,spinner_CMiT 1.2s linear infinite;animation-delay:.2s}.spinner_ctYB{animation:spinner_5QiW 1.2s linear infinite,spinner_cHKR 1.2s linear infinite;animation-delay:.2s}.spinner_BDNj{animation:spinner_5QiW 1.2s linear infinite,spinner_Re6e 1.2s linear infinite;animation-delay:.3s}.spinner_rCw3{animation:spinner_5QiW 1.2s linear infinite,spinner_EJmJ 1.2s linear infinite;animation-delay:.3s}.spinner_Rszm{animation:spinner_5QiW 1.2s linear infinite,spinner_YJOP 1.2s linear infinite;animation-delay:.4s}@keyframes spinner_5QiW{0%,50%{width:7.33px;height:7.33px}25%{width:1.33px;height:1.33px}}@keyframes spinner_PnZo{0%,50%{x:1px;y:1px}25%{x:4px;y:4px}}@keyframes spinner_4j7o{0%,50%{x:8.33px;y:1px}25%{x:11.33px;y:4px}}@keyframes spinner_fLK4{0%,50%{x:1px;y:8.33px}25%{x:4px;y:11.33px}}@keyframes spinner_tDji{0%,50%{x:15.66px;y:1px}25%{x:18.66px;y:4px}}@keyframes spinner_CMiT{0%,50%{x:8.33px;y:8.33px}25%{x:11.33px;y:11.33px}}@keyframes spinner_cHKR{0%,50%{x:1px;y:15.66px}25%{x:4px;y:18.66px}}@keyframes spinner_Re6e{0%,50%{x:15.66px;y:8.33px}25%{x:18.66px;y:11.33px}}@keyframes spinner_EJmJ{0%,50%{x:8.33px;y:15.66px}25%{x:11.33px;y:18.66px}}@keyframes spinner_YJOP{0%,50%{x:15.66px;y:15.66px}25%{x:18.66px;y:18.66px}}</style><rect class=\"spinner_zWVm\" x=\"1\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_gfyD\" x=\"8.33\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_T5JJ\" x=\"1\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_E3Wz\" x=\"15.66\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_g2vs\" x=\"8.33\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_ctYB\" x=\"1\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_BDNj\" x=\"15.66\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_rCw3\" x=\"8.33\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_Rszm\" x=\"15.66\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/></svg>\r\n \r\n\r\n</ng-template>\r\n", styles: [".toast{position:fixed;bottom:30px;right:30px;width:370px!important;min-height:116px!important;display:flex;flex-direction:column;justify-content:space-between;border-radius:17px;padding:1rem 1rem 1.5rem;box-shadow:8px 16px 32px #0000004d;background-color:#fff;z-index:50}.toast p{color:#625270;font-size:13px}.toast>header{color:#5505a2;display:flex;align-items:center;gap:.5rem}.toast>header>button{position:absolute;right:20px;border:none;background-color:transparent;color:#d1d5db;padding:10px 0 10px 10px;cursor:pointer;transition:.3s ease}.toast>header>button:hover{color:#ed3a3a}.toast>header>.icon{border:4px solid #5505a2;border-radius:50%;width:30px;height:30px}.toast>header h4{margin:0;padding:0;font-size:20px}.animation{animation:show-up .5s ease}.error>header{color:#ed3a3a}.error>header h4{color:#ed3a3a}.success>header{color:#4ab858}.success>header h4{color:#4ab858}.loading>header h4{color:#786b84}.loading>header>img,.loading>header svg{transform:rotate(45deg)}.close-toast{animation:close 1.1s ease}@keyframes show-up{0%{opacity:0;transform:translateY(100vw)}to{opacity:1;transform:translate(0)}}@keyframes close{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100vw)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
657
+ }
658
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: OcToastComponent, decorators: [{
659
+ type: Component,
660
+ args: [{ selector: 'oc-toast', standalone: true, imports: [CommonModule], template: "<div\r\n class=\"toast\"\r\n [ngClass]=\"{\r\n 'close-toast': toast.currentToast.counter === 1,\r\n error: toast.currentToast.status === 'erro',\r\n success: toast.currentToast.status === 'sucesso',\r\n loading: toast.currentToast.status === 'carregando',\r\n animation: toast.currentToast.hasAnimation\r\n }\"\r\n *ngIf=\"toast.currentToast && toast.currentToast.counter > 0\"\r\n>\r\n <header>\r\n <ng-container [ngTemplateOutlet]=\"iconTemplate\"></ng-container>\r\n <h4 class=\"status\">\r\n {{ toast.currentToast.status[0].toUpperCase() + toast.currentToast.status.slice(1) }}\r\n </h4>\r\n <button (click)=\"toast.closeToast(toast.currentToast.id)\">\r\n <span class=\"material-symbols-outlined\">close</span>\r\n </button>\r\n </header>\r\n <p>{{ toast.currentToast.message }}</p>\r\n</div>\r\n\r\n<ng-template #iconTemplate>\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'erro'\"\r\n >error</span\r\n >\r\n\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'sucesso'\"\r\n >check_circle</span\r\n >\r\n\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'informa\u00E7\u00E3o'\"\r\n >info</span\r\n >\r\n\r\n<svg *ngIf=\"toast.currentToast.status === 'carregando'\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><style>rect{fill:#00DDA3}.spinner_zWVm{animation:spinner_5QiW 1.2s linear infinite,spinner_PnZo 1.2s linear infinite}.spinner_gfyD{animation:spinner_5QiW 1.2s linear infinite,spinner_4j7o 1.2s linear infinite;animation-delay:.1s}.spinner_T5JJ{animation:spinner_5QiW 1.2s linear infinite,spinner_fLK4 1.2s linear infinite;animation-delay:.1s}.spinner_E3Wz{animation:spinner_5QiW 1.2s linear infinite,spinner_tDji 1.2s linear infinite;animation-delay:.2s}.spinner_g2vs{animation:spinner_5QiW 1.2s linear infinite,spinner_CMiT 1.2s linear infinite;animation-delay:.2s}.spinner_ctYB{animation:spinner_5QiW 1.2s linear infinite,spinner_cHKR 1.2s linear infinite;animation-delay:.2s}.spinner_BDNj{animation:spinner_5QiW 1.2s linear infinite,spinner_Re6e 1.2s linear infinite;animation-delay:.3s}.spinner_rCw3{animation:spinner_5QiW 1.2s linear infinite,spinner_EJmJ 1.2s linear infinite;animation-delay:.3s}.spinner_Rszm{animation:spinner_5QiW 1.2s linear infinite,spinner_YJOP 1.2s linear infinite;animation-delay:.4s}@keyframes spinner_5QiW{0%,50%{width:7.33px;height:7.33px}25%{width:1.33px;height:1.33px}}@keyframes spinner_PnZo{0%,50%{x:1px;y:1px}25%{x:4px;y:4px}}@keyframes spinner_4j7o{0%,50%{x:8.33px;y:1px}25%{x:11.33px;y:4px}}@keyframes spinner_fLK4{0%,50%{x:1px;y:8.33px}25%{x:4px;y:11.33px}}@keyframes spinner_tDji{0%,50%{x:15.66px;y:1px}25%{x:18.66px;y:4px}}@keyframes spinner_CMiT{0%,50%{x:8.33px;y:8.33px}25%{x:11.33px;y:11.33px}}@keyframes spinner_cHKR{0%,50%{x:1px;y:15.66px}25%{x:4px;y:18.66px}}@keyframes spinner_Re6e{0%,50%{x:15.66px;y:8.33px}25%{x:18.66px;y:11.33px}}@keyframes spinner_EJmJ{0%,50%{x:8.33px;y:15.66px}25%{x:11.33px;y:18.66px}}@keyframes spinner_YJOP{0%,50%{x:15.66px;y:15.66px}25%{x:18.66px;y:18.66px}}</style><rect class=\"spinner_zWVm\" x=\"1\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_gfyD\" x=\"8.33\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_T5JJ\" x=\"1\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_E3Wz\" x=\"15.66\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_g2vs\" x=\"8.33\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_ctYB\" x=\"1\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_BDNj\" x=\"15.66\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_rCw3\" x=\"8.33\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_Rszm\" x=\"15.66\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/></svg>\r\n \r\n\r\n</ng-template>\r\n", styles: [".toast{position:fixed;bottom:30px;right:30px;width:370px!important;min-height:116px!important;display:flex;flex-direction:column;justify-content:space-between;border-radius:17px;padding:1rem 1rem 1.5rem;box-shadow:8px 16px 32px #0000004d;background-color:#fff;z-index:50}.toast p{color:#625270;font-size:13px}.toast>header{color:#5505a2;display:flex;align-items:center;gap:.5rem}.toast>header>button{position:absolute;right:20px;border:none;background-color:transparent;color:#d1d5db;padding:10px 0 10px 10px;cursor:pointer;transition:.3s ease}.toast>header>button:hover{color:#ed3a3a}.toast>header>.icon{border:4px solid #5505a2;border-radius:50%;width:30px;height:30px}.toast>header h4{margin:0;padding:0;font-size:20px}.animation{animation:show-up .5s ease}.error>header{color:#ed3a3a}.error>header h4{color:#ed3a3a}.success>header{color:#4ab858}.success>header h4{color:#4ab858}.loading>header h4{color:#786b84}.loading>header>img,.loading>header svg{transform:rotate(45deg)}.close-toast{animation:close 1.1s ease}@keyframes show-up{0%{opacity:0;transform:translateY(100vw)}to{opacity:1;transform:translate(0)}}@keyframes close{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100vw)}}\n"] }]
661
+ }], ctorParameters: () => [{ type: OcToastService }] });
662
+
573
663
  /*
574
664
  * Public API Surface of otimus-library
575
665
  */
@@ -578,5 +668,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImpor
578
668
  * Generated bundle index. Do not edit.
579
669
  */
580
670
 
581
- export { OcAutocompleteComponent, OcBadgeComponent, OcChipComponent, OcFilterComponent, OcInputComponent, OcKeyValueComponent, OcLogComponent, OcMenuComponent, OcModalComponent, OcModalFooterComponent, OcNotFoundComponent, OcPaginationComponent, OcProfileComponent, OcTableComponent, OcTooltipDirective, OtimusLibraryComponent, OtimusLibraryService };
671
+ export { OcAutocompleteComponent, OcBadgeComponent, OcChipComponent, OcFilterComponent, OcInputComponent, OcKeyValueComponent, OcLogComponent, OcMenuComponent, OcModalComponent, OcModalFooterComponent, OcNotFoundComponent, OcPaginationComponent, OcProfileComponent, OcTableComponent, OcToastComponent, OcToastService, OcTooltipDirective, OtimusLibraryComponent, OtimusLibraryService };
582
672
  //# sourceMappingURL=otimus-library.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"otimus-library.mjs","sources":["../../../projects/otimus-library/src/lib/otimus-library.service.ts","../../../projects/otimus-library/src/lib/otimus-library.component.ts","../../../projects/otimus-library/src/lib/components/oc-table/oc-table.component.ts","../../../projects/otimus-library/src/lib/components/oc-table/oc-table.component.html","../../../projects/otimus-library/src/lib/components/oc-badge/oc-badge.component.ts","../../../projects/otimus-library/src/lib/components/oc-badge/oc-badge.component.html","../../../projects/otimus-library/src/lib/components/oc-filter/oc-filter.component.ts","../../../projects/otimus-library/src/lib/components/oc-filter/oc-filter.component.html","../../../projects/otimus-library/src/lib/directives/oc-tooltip/oc-tooltip.directive.ts","../../../projects/otimus-library/src/lib/components/oc-input/oc-input.component.ts","../../../projects/otimus-library/src/lib/components/oc-input/oc-input.component.html","../../../projects/otimus-library/src/lib/components/oc-modal/oc-modal.component.ts","../../../projects/otimus-library/src/lib/components/oc-modal/oc-modal.component.html","../../../projects/otimus-library/src/lib/components/oc-key-value/oc-key-value.component.ts","../../../projects/otimus-library/src/lib/components/oc-key-value/oc-key-value.component.html","../../../projects/otimus-library/src/lib/components/oc-chip/oc-chip.component.ts","../../../projects/otimus-library/src/lib/components/oc-chip/oc-chip.component.html","../../../projects/otimus-library/src/lib/components/oc-modal-footer/oc-modal-footer.component.ts","../../../projects/otimus-library/src/lib/components/oc-modal-footer/oc-modal-footer.component.html","../../../projects/otimus-library/src/lib/components/oc-autocomplete/oc-autocomplete.component.ts","../../../projects/otimus-library/src/lib/components/oc-autocomplete/oc-autocomplete.component.html","../../../projects/otimus-library/src/lib/components/oc-profile/oc-profile.component.ts","../../../projects/otimus-library/src/lib/components/oc-profile/oc-profile.component.html","../../../projects/otimus-library/src/lib/components/oc-log/oc-log.component.ts","../../../projects/otimus-library/src/lib/components/oc-log/oc-log.component.html","../../../projects/otimus-library/src/lib/components/oc-pagination/oc-pagination.component.ts","../../../projects/otimus-library/src/lib/components/oc-pagination/oc-pagination.component.html","../../../projects/otimus-library/src/lib/components/oc-not-found/oc-not-found.component.ts","../../../projects/otimus-library/src/lib/components/oc-not-found/oc-not-found.component.html","../../../projects/otimus-library/src/lib/components/oc-menu/oc-menu.component.ts","../../../projects/otimus-library/src/lib/components/oc-menu/oc-menu.component.html","../../../projects/otimus-library/src/public-api.ts","../../../projects/otimus-library/src/otimus-library.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OtimusLibraryService {\r\n\r\n constructor() { }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-otimus-library',\r\n standalone: true,\r\n imports: [],\r\n template: `\r\n <p>\r\n otimus-library works!\r\n </p>\r\n `,\r\n styles: ``\r\n})\r\nexport class OtimusLibraryComponent {\r\n\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {CdkTableModule} from '@angular/cdk/table'\r\n\r\n\r\n@Component({\r\n selector: 'oc-table',\r\n standalone: true,\r\n imports: [CommonModule, CdkTableModule],\r\n templateUrl: './oc-table.component.html',\r\n styleUrls: ['./oc-table.component.scss']\r\n})\r\nexport class OcTableComponent implements OnInit {\r\n\r\n @Input() columns: string[] = []\r\n @Input() dataSource: any[] = []\r\n keys: string[] = []\r\n\r\n ngOnInit(): void {\r\n if(!this.dataSource.length) return\r\n\r\n this.keys = Object.keys(this.dataSource[0])\r\n }\r\n}\r\n","<table cdk-table [dataSource]=\"dataSource\">\r\n\r\n <ng-container *ngFor=\"let column of columns; let i = index\" [cdkColumnDef]=\"column\">\r\n <th cdk-header-cell *cdkHeaderCellDef> {{column}} </th>\r\n <td cdk-cell *cdkCellDef=\"let row\"> {{row[keys[i]]}} </td>\r\n </ng-container>\r\n\r\n <tr cdk-header-row *cdkHeaderRowDef=\"columns\"></tr>\r\n <tr cdk-row *cdkRowDef=\"let row; columns: columns\"></tr>\r\n</table>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'oc-badge',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './oc-badge.component.html',\r\n styleUrl: './oc-badge.component.scss'\r\n})\r\nexport class OcBadgeComponent implements OnInit {\r\n @Input() ocSize: 'small' | 'medium' | 'large' = 'small'\r\n @Input() ocColor: 'notification' | 'brand-g' | 'brand-p' | 'success' | 'warning' = 'notification'\r\n @Input() ocWaved: boolean = false\r\n\r\n classList: string[] = []\r\n\r\n ngOnInit(): void {\r\n this.classList.push(this.ocSize, this.ocColor)\r\n if(this.ocWaved) this.classList.push('waved')\r\n }\r\n}\r\n","<div>\r\n <div class=\"oc-badge\" [ngClass]=\"classList\">\r\n <ng-content>\r\n \r\n </ng-content>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input } from '@angular/core';\r\nimport { OcBadgeComponent } from '../oc-badge/oc-badge.component';\r\n\r\n@Component({\r\n selector: 'oc-filter',\r\n standalone: true,\r\n imports: [CommonModule, OcBadgeComponent],\r\n templateUrl: './oc-filter.component.html',\r\n styleUrl: './oc-filter.component.scss'\r\n})\r\nexport class OcFilterComponent {\r\n isOpen: boolean = false\r\n @Input() ocText: string = 'Filtros'\r\n @Input() ocActive: number = 0\r\n @Input() ocSide: 'left' | 'right' = 'left'\r\n\r\n toggleOpen() {\r\n this.isOpen = !this.isOpen\r\n }\r\n}\r\n","<div class=\"oc-filter-row\" [ngClass]=\"{\r\n reverse: ocSide === 'right'\r\n}\">\r\n <button class=\"oc-filter-btn\" (click)=\"toggleOpen()\">\r\n <span class=\"material-symbols-outlined\">filter_list</span>\r\n {{ocText}}\r\n <div class=\"badge\">\r\n <oc-badge *ngIf=\"ocActive > 0\" ocSize=\"small\" ocColor=\"success\" [ocWaved]=\"true\">{{ocActive}}</oc-badge>\r\n </div>\r\n </button>\r\n \r\n <div class=\"filter-row-content\">\r\n <ng-content select=\"[row]\"></ng-content>\r\n </div>\r\n \r\n</div>\r\n<div *ngIf=\"isOpen\" class=\"oc-filter-content\">\r\n <ng-content select=\"[body]\">\r\n </ng-content>\r\n</div>\r\n","import { Directive, ElementRef, HostListener, Input, Renderer2 } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[ocTooltip]',\r\n standalone: true\r\n})\r\nexport class OcTooltipDirective {\r\n constructor(private elRef: ElementRef, private renderer: Renderer2) { }\r\n\r\n @Input() content: string = ''\r\n @Input() side: 'bottom' | 'upon' | 'left' | 'right' | 'top' = 'bottom'\r\n\r\n created:boolean = false\r\n\r\n createToolTip() {\r\n if(this.created) return\r\n\r\n const tooltip = this.renderer.createElement('div')\r\n const text = this.renderer.createText(this.content)\r\n\r\n this.renderer.appendChild(tooltip, text)\r\n this.renderer.setStyle(tooltip, 'margin', '0')\r\n this.renderer.addClass(tooltip, 'oc-tooltip')\r\n this.renderer.setStyle(tooltip, 'position', 'absolute')\r\n this.renderer.setStyle(tooltip, 'padding', '0.4rem 0.8rem')\r\n this.renderer.setStyle(tooltip, 'font-size', '0.9rem')\r\n this.renderer.setStyle(tooltip, 'font-weight', '600')\r\n this.renderer.setStyle(tooltip, 'color', '#7E8485')\r\n this.renderer.setStyle(tooltip, 'border', '1px solid #FFFFFF')\r\n this.renderer.setStyle(tooltip, 'background-color', '#F8F9FF')\r\n this.renderer.setStyle(tooltip, 'border-radius','1rem')\r\n this.renderer.setStyle(tooltip, 'box-shadow', '0px 3px 6.5px 0px rgba(0, 0, 0, 0.20)')\r\n this.renderer.setStyle(tooltip, 'transition', '0.1s ease')\r\n this.renderer.setStyle(tooltip, 'max-width', '400px')\r\n\r\n const width = this.elRef.nativeElement.offsetWidth\r\n const height = this.elRef.nativeElement.offsetHeight\r\n\r\n this.renderer.setStyle(tooltip, 'transform', `translateY(${height - 10}px)`)\r\n\r\n if (this.side === 'right') {\r\n this.renderer.setStyle(tooltip, 'transform', `translateX(${width + 20}px) translateY(-50%)`)\r\n } else if (this.side === 'left') {\r\n this.renderer.setStyle(tooltip, 'transform', `translateX(-${width + 20}px) translateY(-50%)`)\r\n } else if (this.side === 'upon' || this.side === 'top') {\r\n this.renderer.setStyle(tooltip, 'transform', `translateY(-${height + 40}px)`)\r\n }\r\n\r\n this.created = true\r\n return tooltip\r\n }\r\n\r\n @HostListener('mouseover')\r\n onMouseOver() {\r\n const tooltip = this.createToolTip()\r\n this.renderer.appendChild(this.elRef.nativeElement, tooltip)\r\n }\r\n\r\n @HostListener('mouseout')\r\n onMouseOut() {\r\n const tooltip = this.elRef.nativeElement.querySelector('.oc-tooltip')\r\n if(tooltip){\r\n this.renderer.removeChild(this.elRef.nativeElement, tooltip)\r\n this.created = false\r\n }\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { AfterViewInit, Component, ElementRef, Input, Renderer2, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'oc-input',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './oc-input.component.html',\r\n styleUrls: ['./oc-input.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class OcInputComponent implements AfterViewInit {\r\n @Input() ocError?: string;\r\n @Input() ocSize?: 'small' | 'medium' | 'large' = 'medium';\r\n @Input() ocPlaceholder: string = '';\r\n @Input() ocWidth?: string\r\n inputId: string = `oc-${Math.random()}`;\r\n\r\n constructor(private el: ElementRef, private renderer: Renderer2) {}\r\n\r\n ngAfterViewInit() {\r\n const inputBox = this.el.nativeElement;\r\n\r\n if (inputBox) {\r\n const inputElement = inputBox.querySelector('input');\r\n\r\n if (inputElement) {\r\n this.renderer.setAttribute(inputElement, 'placeholder', '');\r\n }\r\n }\r\n }\r\n}\r\n","<div class=\"oc-input-box\" [ngClass]=\"{\r\n 'small': ocSize === 'small',\r\n 'large': ocSize === 'large',\r\n error: !!ocError\r\n}\"\r\n [ngStyle]=\"{\r\n width: ocWidth || '100%'\r\n }\"\r\n [id]=\"inputId\">\r\n <ng-content></ng-content>\r\n <label>{{ocPlaceholder}}</label>\r\n <small\r\n *ngIf=\"ocError\"\r\n class=\"error-msg\"\r\n >{{ocError}}</small>\r\n</div>\r\n\r\n","import { CommonModule } from '@angular/common';\nimport { Component, ContentChild, ElementRef, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'oc-modal',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './oc-modal.component.html',\n styleUrl: './oc-modal.component.scss',\n encapsulation: ViewEncapsulation.None\n})\nexport class OcModalComponent {\n @Input() ocTitle: string = ''\n @Input() ocSize: 'small' | 'medium' |'large' = 'medium'\n\n isOpen: boolean = false\n\n closing: boolean = false\n\n open() {\n this.isOpen = true\n }\n close() {\n this.closing = true\n setTimeout(() => {\n this.isOpen = false\n this.closing = false\n },100)\n }\n}\n","<div class=\"oc-modal-bg\" *ngIf=\"isOpen\" [ngClass]=\"{'closing-bg': closing}\">\n <div class=\"oc-modal\" [ngClass]=\"{large: ocSize === 'large', medium: ocSize === 'medium', small: ocSize === 'small', closing: closing}\">\n <header class=\"oc-modal-header\">\n <h3 *ngIf=\"ocTitle.trim().length > 0\">{{ocTitle}}</h3>\n <button (click)=\"close()\" class=\"oc-close-btn\">\n <span class=\"material-symbols-outlined md-18\" title=\"Fechar\">close</span>\n </button>\n </header>\n <div class=\"oc-modal-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>","import { Component, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'oc-key-value',\n standalone: true,\n imports: [],\n templateUrl: './oc-key-value.component.html',\n styleUrl: './oc-key-value.component.scss',\n encapsulation: ViewEncapsulation.None\n})\nexport class OcKeyValueComponent {\n @Input() ocKey: string = ''\n @Input() ocValue: string = ''\n}\n","<div class=\"oc-key-value\">\n <!-- Ícone -->\n <ng-content></ng-content>\n <p>\n @if (ocKey) {\n <span>{{ocKey}}:</span>\n }\n {{ocValue}}\n </p>\n</div>","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'oc-chip',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './oc-chip.component.html',\n styleUrl: './oc-chip.component.scss'\n})\nexport class OcChipComponent {\n @Input() ocSelected: boolean = false\n @Input() ocType: 'select' | 'remove' | 'tag' = 'select'\n @Input() ocBg: 'green' | 'red' = 'green'\n @Input() ocText: string = ''\n @Output() ocClick: EventEmitter<any> = new EventEmitter<any>\n\n ocEvent() {\n this.ocClick.emit()\n }\n}\n","<button\n [ngClass]=\"{\n 'oc-chip': true,\n selected: ocSelected,\n 'not-selectable': ocType !== 'select',\n 'tag': ocType === 'tag',\n 'remove': ocType === 'remove',\n 'green-bg': ocBg === 'green',\n 'red-bg': ocBg === 'red'\n }\"\n type=\"button\"\n [title]=\"ocText\"\n (click)=\"ocType === 'select' ? ocEvent() : null\"\n>\n <ng-content></ng-content>\n @if (ocType === 'remove') {\n <span class=\"material-symbols-outlined\" (click)=\"ocEvent()\">close</span>\n }\n</button>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'oc-modal-footer',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './oc-modal-footer.component.html',\n styleUrl: './oc-modal-footer.component.scss'\n})\nexport class OcModalFooterComponent {\n @Input() ocSide: 'left' | 'right' = 'right'\n}\n","<footer class=\"oc-modal-footer\" [ngClass]=\"{\n 'left': ocSide === 'left',\n 'right': ocSide === 'right'\n}\">\n <ng-content></ng-content>\n</footer>","import { CommonModule } from '@angular/common';\nimport { AfterViewInit, Component, ElementRef, EventEmitter, Input, OnInit, Output, Renderer2, ViewChild } from '@angular/core';\nimport { OcAutoCompleteType } from '../../interfaces/oc-autocomplete';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'oc-autocomplete',\n standalone: true,\n imports: [CommonModule, FormsModule],\n templateUrl: './oc-autocomplete.component.html',\n styleUrl: './oc-autocomplete.component.scss'\n})\nexport class OcAutocompleteComponent implements OnInit, AfterViewInit {\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n \n @ViewChild('input') input!: ElementRef;\n @ViewChild('options') options!: ElementRef;\n\n @Input() ocPlaceholder?: string\n @Input() ocError?: string\n @Input() ocSize: 'small' | 'large' | 'medium' = 'medium'\n @Input() ocData: OcAutoCompleteType[] = []\n @Input() ocValue: string = ''\n @Input() ocClearOnChange: boolean = false \n @Input() ocWidth?: string\n \n @Output() ocChange = new EventEmitter<string>()\n\n isOptionsShown: boolean = false\n filteredData: OcAutoCompleteType[] = []\n selectedValue: OcAutoCompleteType = {\n name: '',\n value: null\n }\n\n ngOnInit() {\n this.filteredData = this.ocData\n this.closeOnClickOut()\n }\n\n ngAfterViewInit() {\n this.filteredData = this.ocData\n const inputBox = this.el.nativeElement;\n\n if (inputBox) {\n const inputElement = inputBox.querySelector('input');\n\n if (inputElement) {\n this.renderer.setAttribute(inputElement, 'placeholder', '');\n }\n }\n }\n\n closeOnClickOut() {\n this.renderer.listen('window', 'click',(e:Event)=>{\n if(this.input && this.options){\n if(e.target !== this.input.nativeElement && e.target!==this.options.nativeElement){\n this.isOptionsShown = false;\n }\n }\n this.findByTyping()\n })\n }\n\n findByTyping() {\n const foundValue = this.ocData.find(data => data.name.toLowerCase() === this.ocValue.toLowerCase())\n if(!foundValue) {\n this.selectedValue = {\n name: '',\n value: null\n }\n this.ocValue = ''\n return\n }\n\n this.selectedValue = foundValue\n }\n\n filterData(name: string) {\n this.isOptionsShown = true\n this.filteredData = this.ocData.filter(data => data.name.toLowerCase().includes(name.toLowerCase()))\n }\n\n toggleOptions() {\n this.isOptionsShown = !this.isOptionsShown\n }\n\n selectValue(index: number) {\n const foundValue = this.ocData.find((data, i)=> i === index)\n \n if(!foundValue) {\n this.selectedValue = {\n name: '',\n value: null\n }\n return\n }\n\n this.selectedValue = foundValue\n if(this.ocClearOnChange){\n this.ocValue = ''\n }else{\n this.ocValue = foundValue.name\n }\n\n this.ocChange.emit(this.selectedValue.value)\n }\n}\n","<div class=\"oc-input-box\" [ngClass]=\"{\n 'small': ocSize === 'small',\n 'large': ocSize === 'large',\n error: !!ocError\n }\"\n [ngStyle]=\"{\n width: ocWidth || '100%'\n }\"\n >\n <input #input (click)=\"toggleOptions()\" type=\"text\" (input)=\"filterData(ocValue)\" [(ngModel)]=\"ocValue\">\n <label>{{ocPlaceholder}}</label>\n @if(isOptionsShown){\n <ul #options class=\"oc-options\">\n @for(data of filteredData; track data.value) {\n <li>\n <button (click)=\"selectValue($index)\">\n {{data.name}}\n </button>\n </li>\n }\n </ul>\n }\n\n</div>","import { Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'oc-profile',\n standalone: true,\n imports: [],\n templateUrl: './oc-profile.component.html',\n styleUrl: './oc-profile.component.scss',\n encapsulation: ViewEncapsulation.None\n})\nexport class OcProfileComponent implements OnInit {\n @Input() ocUserName?: string\n @Input() ocProfilePic?: string\n nameInitials: string = ''\n \n ngOnInit() {\n this.getInitials()\n }\n\n getInitials() {\n if(!this.ocUserName) return\n\n const splittedName = this.ocUserName?.split(' ')\n\n const firstLetter = splittedName[0][0]\n let lastLetter = ''\n \n const lastName = splittedName[splittedName.length - 1]\n\n if(splittedName.length > 1 && lastName){\n lastLetter = lastName[0]\n }\n\n this.nameInitials = (firstLetter + lastLetter).toUpperCase()\n }\n}\n","<div class=\"oc-profile\">\n <div class=\"content\">\n @if(ocProfilePic){\n <img [src]=\"ocProfilePic\" [alt]=\"ocUserName || 'Foto de perfil do usuário'\">\n }@else {\n <span>\n {{nameInitials}}\n </span>\n }\n </div>\n</div>","import { Component, Input } from '@angular/core';\nimport { OcProfileComponent } from '../oc-profile/oc-profile.component';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'oc-log',\n standalone: true,\n imports: [CommonModule, OcProfileComponent],\n templateUrl: './oc-log.component.html',\n styleUrl: './oc-log.component.scss'\n})\nexport class OcLogComponent {\n @Input() ocProfilePic?: string = ''\n @Input() ocUserName?: string = ''\n}\n","<div class=\"oc-log\">\n <div class=\"left-side\" [ngClass]=\"{\n 'has-profile': ocProfilePic || ocUserName\n }\">\n @if(ocProfilePic || ocUserName) {\n <oc-profile [ocProfilePic]=\"ocProfilePic\" [ocUserName]=\"ocUserName\">\n </oc-profile>\n } @else {\n <div class=\"dot\"></div>\n }\n </div>\n\n <div class=\"content\" [ngClass]=\"{\n 'has-profile-content': ocProfilePic || ocUserName\n }\" selector=\"[content]\">\n <ng-content></ng-content>\n </div>\n</div>","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'oc-pagination',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './oc-pagination.component.html',\n styleUrl: './oc-pagination.component.scss'\n})\nexport class OcPaginationComponent implements OnInit{\n @Input() ocPage: number = 1\n @Input() ocMaxPage?: number\n @Output() ocGetPage = new EventEmitter<number>()\n \n ngOnInit(): void {\n if(!this.ocMaxPage) this.ocMaxPage = this.ocPage\n }\n\n firstPage() {\n this.ocPage = 1\n \n this.ocGetPage.emit(this.ocPage)\n }\n\n decrementPage() {\n if(this.ocPage <= 1) return\n this.ocPage--\n \n this.ocGetPage.emit(this.ocPage)\n }\n\n incrementPage() {\n if(!this.ocMaxPage || this.ocPage >= this.ocMaxPage) return\n this.ocPage++\n \n this.ocGetPage.emit(this.ocPage)\n }\n\n lastPage() {\n if(!this.ocMaxPage) return\n this.ocPage = this.ocMaxPage\n \n this.ocGetPage.emit(this.ocPage)\n }\n}\n","<div class=\"oc-pagination\">\n <p class=\"oc-pagination-text\">\n Página\n <span>{{ocPage}}</span> \n de\n <span>{{ocMaxPage}}</span>\n </p>\n <div class=\"oc-pagination-buttons\">\n <button (click)=\"firstPage()\" [ngClass]=\"{\n disabled: ocPage === 1\n }\">\n <span class=\"material-symbols-outlined\">keyboard_double_arrow_left</span>\n </button>\n <button (click)=\"decrementPage()\" [ngClass]=\"{\n disabled: ocPage === 1\n }\">\n <span class=\"material-symbols-outlined\">navigate_before</span>\n </button>\n <button (click)=\"incrementPage()\" [ngClass]=\"{\n disabled: ocPage === ocMaxPage\n }\"> \n <span class=\"material-symbols-outlined\">navigate_next</span>\n </button>\n <button (click)=\"lastPage()\" [ngClass]=\"{\n disabled: ocPage === ocMaxPage\n }\"> \n <span class=\"material-symbols-outlined\">\n keyboard_double_arrow_right\n </span>\n </button>\n </div>\n</div>","import { Component } from '@angular/core';\n\n@Component({\n selector: 'oc-not-found',\n standalone: true,\n imports: [],\n templateUrl: './oc-not-found.component.html',\n styleUrl: './oc-not-found.component.scss'\n})\nexport class OcNotFoundComponent {\n\n}\n","<main class=\"oc-not-found\">\n <div class=\"content\">\n <div class=\"main-title\">\n <h1>404</h1>\n <span class=\"s-1\">?</span>\n <span class=\"s-2\">?</span>\n <span class=\"s-3\">?</span>\n </div>\n <div class=\"not-found-msg\">\n <h2>Página não encontrada</h2>\n <p>Não conseguimos encontrar a página que você está procurando</p>\n </div>\n </div>\n</main>","import { Component,ElementRef,Input, OnInit, Renderer2, ViewChild } from '@angular/core';\r\nimport { CdkMenuModule } from '@angular/cdk/menu';\r\nimport { CommonModule } from '@angular/common';\r\nimport { OcMenuType } from '../../interfaces/oc-menu';\r\n\r\n@Component({\r\n selector: 'oc-menu',\r\n standalone: true,\r\n imports: [CommonModule, CdkMenuModule],\r\n templateUrl: './oc-menu.component.html',\r\n styleUrls: ['./oc-menu.component.scss']\r\n})\r\nexport class OcMenuComponent implements OnInit {\r\n constructor(private renderer: Renderer2) {}\r\n\r\n @ViewChild('ocMenuEl') menu!: ElementRef;\r\n @Input() ocMenu: OcMenuType[] = []\r\n isMenuShown: boolean = false\r\n buttonId?:string\r\n\r\n open() {\r\n this.isMenuShown = !this.isMenuShown\r\n\r\n setTimeout(() => {\r\n if(this.menu){\r\n const parentButton = this.findParentButton(this.menu.nativeElement);\r\n if (parentButton) {\r\n this.buttonId = `oc-${Math.random()}`\r\n this.renderer.setAttribute(parentButton, 'id', this.buttonId);\r\n }\r\n }\r\n }, 100)\r\n }\r\n\r\n ngOnInit() {\r\n this.closeOnClickOut() \r\n }\r\n\r\n findParentButton(element: HTMLElement): HTMLButtonElement | null {\r\n let parent = element.parentElement;\r\n while (parent) {\r\n if (parent.tagName.toLowerCase() === 'button') {\r\n return parent as HTMLButtonElement;\r\n }\r\n parent = parent.parentElement;\r\n }\r\n return null;\r\n }\r\n \r\n closeOnClickOut() {\r\n this.renderer.listen('window', 'click',(e:any)=>{\r\n if(!this.menu) return\r\n if(this.buttonId && e.target.id !== this.buttonId) {\r\n this.isMenuShown = false\r\n return\r\n }\r\n \r\n })\r\n }\r\n}\r\n","<div class=\"oc-menu\" *ngIf=\"isMenuShown\" cdkMenu #ocMenuEl>\r\n <ul>\r\n @for(option of ocMenu; track $index) {\r\n <li>\r\n @if(option.icon) {\r\n <span class=\"material-symbols-outlined\">\r\n {{option.icon}}\r\n </span>\r\n } \r\n @if(option.callback){\r\n <button (click)=\"option.callback()\">{{option.name}}</button>\r\n }\r\n @if(option.url){\r\n <a [href]=\"option.url\" [target]=\"option.targetBlank ? '_blank' : ''\">{{option.name}}</a>\r\n }\r\n @if (!option.callback && !option.url) {\r\n <span>{{option.name}}</span>\r\n }\r\n </li>\r\n }\r\n </ul>\r\n</div>\r\n","\r\n/*\r\n* Public API Surface of otimus-library\r\n*/\r\n\r\nexport * from './lib/otimus-library.service'\r\nexport * from './lib/otimus-library.component'\r\nexport * from './lib/components/oc-table/oc-table.component'\r\nexport * from './lib/components/oc-badge/oc-badge.component'\r\nexport * from './lib/components/oc-filter/oc-filter.component'\r\nexport * from './lib/directives/oc-tooltip/oc-tooltip.directive'\r\nexport * from './lib/components/oc-input/oc-input.component'\r\nexport * from './lib/components/oc-modal/oc-modal.component'\r\nexport * from './lib/components/oc-key-value/oc-key-value.component'\r\nexport * from './lib/components/oc-chip/oc-chip.component'\r\nexport * from './lib/components/oc-modal-footer/oc-modal-footer.component'\r\nexport * from './lib/components/oc-autocomplete/oc-autocomplete.component'\r\nexport * from './lib/components/oc-profile/oc-profile.component'\r\nexport * from './lib/components/oc-log/oc-log.component'\r\nexport * from './lib/components/oc-pagination/oc-pagination.component'\r\nexport * from './lib/components/oc-not-found/oc-not-found.component'\r\nexport * from './lib/components/oc-menu/oc-menu.component'","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2"],"mappings":"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"}
1
+ {"version":3,"file":"otimus-library.mjs","sources":["../../../projects/otimus-library/src/lib/otimus-library.service.ts","../../../projects/otimus-library/src/lib/otimus-library.component.ts","../../../projects/otimus-library/src/lib/services/oc-toast.service.ts","../../../projects/otimus-library/src/lib/components/oc-table/oc-table.component.ts","../../../projects/otimus-library/src/lib/components/oc-table/oc-table.component.html","../../../projects/otimus-library/src/lib/components/oc-badge/oc-badge.component.ts","../../../projects/otimus-library/src/lib/components/oc-badge/oc-badge.component.html","../../../projects/otimus-library/src/lib/components/oc-filter/oc-filter.component.ts","../../../projects/otimus-library/src/lib/components/oc-filter/oc-filter.component.html","../../../projects/otimus-library/src/lib/directives/oc-tooltip/oc-tooltip.directive.ts","../../../projects/otimus-library/src/lib/components/oc-input/oc-input.component.ts","../../../projects/otimus-library/src/lib/components/oc-input/oc-input.component.html","../../../projects/otimus-library/src/lib/components/oc-modal/oc-modal.component.ts","../../../projects/otimus-library/src/lib/components/oc-modal/oc-modal.component.html","../../../projects/otimus-library/src/lib/components/oc-key-value/oc-key-value.component.ts","../../../projects/otimus-library/src/lib/components/oc-key-value/oc-key-value.component.html","../../../projects/otimus-library/src/lib/components/oc-chip/oc-chip.component.ts","../../../projects/otimus-library/src/lib/components/oc-chip/oc-chip.component.html","../../../projects/otimus-library/src/lib/components/oc-modal-footer/oc-modal-footer.component.ts","../../../projects/otimus-library/src/lib/components/oc-modal-footer/oc-modal-footer.component.html","../../../projects/otimus-library/src/lib/components/oc-autocomplete/oc-autocomplete.component.ts","../../../projects/otimus-library/src/lib/components/oc-autocomplete/oc-autocomplete.component.html","../../../projects/otimus-library/src/lib/components/oc-profile/oc-profile.component.ts","../../../projects/otimus-library/src/lib/components/oc-profile/oc-profile.component.html","../../../projects/otimus-library/src/lib/components/oc-log/oc-log.component.ts","../../../projects/otimus-library/src/lib/components/oc-log/oc-log.component.html","../../../projects/otimus-library/src/lib/components/oc-pagination/oc-pagination.component.ts","../../../projects/otimus-library/src/lib/components/oc-pagination/oc-pagination.component.html","../../../projects/otimus-library/src/lib/components/oc-not-found/oc-not-found.component.ts","../../../projects/otimus-library/src/lib/components/oc-not-found/oc-not-found.component.html","../../../projects/otimus-library/src/lib/components/oc-menu/oc-menu.component.ts","../../../projects/otimus-library/src/lib/components/oc-menu/oc-menu.component.html","../../../projects/otimus-library/src/lib/components/oc-toast/oc-toast.component.ts","../../../projects/otimus-library/src/lib/components/oc-toast/oc-toast.component.html","../../../projects/otimus-library/src/public-api.ts","../../../projects/otimus-library/src/otimus-library.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OtimusLibraryService {\r\n\r\n constructor() { }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-otimus-library',\r\n standalone: true,\r\n imports: [],\r\n template: `\r\n <p>\r\n otimus-library works!\r\n </p>\r\n `,\r\n styles: ``\r\n})\r\nexport class OtimusLibraryComponent {\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ToastType } from '../interfaces/oc-toast';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OcToastService {\r\n toastList: ToastType[] = []\r\n\r\n isRunning: boolean = false\r\n\r\n currentToast!: ToastType\r\n\r\n closeToast(id: number) {\r\n this.toastList = this.toastList.map((to) => {\r\n if (to.id === id) {\r\n return { ...to, counter: 0 }\r\n }\r\n return to\r\n })\r\n\r\n this.currentToast = this.toastList[0]\r\n }\r\n\r\n openToast = (\r\n toastStatus: 'erro' | 'sucesso' | 'carregando' | 'informação',\r\n toastMessage: string,\r\n toastCounter?: number,\r\n promiseKey?: string\r\n ) => {\r\n const toast = {\r\n id: this.toastList.length === 0 ? 1 : this.toastList[this.toastList.length - 1].id + 1,\r\n counter: toastCounter || 5,\r\n status: toastStatus,\r\n message: toastMessage,\r\n promiseKey,\r\n hasAnimation: true,\r\n }\r\n\r\n const toastExists = this.toastList.some((to) => {\r\n return to.status === toastStatus && to.message === toastMessage\r\n })\r\n\r\n if (toastExists) return\r\n\r\n const keyExists = this.toastList.find((to) => to.promiseKey === toast.promiseKey)\r\n\r\n if (keyExists) {\r\n this.toastList = this.toastList.map((to) => {\r\n if (to.promiseKey === promiseKey) {\r\n return { ...toast, hasAnimation: false }\r\n }\r\n return to\r\n })\r\n }\r\n\r\n this.toastList.push(toast)\r\n\r\n if (!this.isRunning) {\r\n this.renderToasts()\r\n }\r\n }\r\n\r\n renderToasts() {\r\n if (this.toastList.length === 0) {\r\n this.isRunning = false\r\n return\r\n }\r\n\r\n this.isRunning = true\r\n this.currentToast = this.toastList[0]\r\n\r\n const toastInterval = setInterval(() => {\r\n if (this.toastList.length === 0) {\r\n clearInterval(toastInterval)\r\n this.isRunning = false\r\n return\r\n }\r\n\r\n this.currentToast = this.toastList[0]\r\n if (this.currentToast.status !== 'carregando') {\r\n this.currentToast.counter--\r\n }\r\n\r\n if (this.currentToast.counter <= 0) {\r\n this.toastList = this.toastList.filter((to) => {\r\n return to.status !== this.currentToast.status && to.message !== this.currentToast.message\r\n })\r\n clearInterval(toastInterval)\r\n this.renderToasts()\r\n }\r\n }, 1000)\r\n }\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {CdkTableModule} from '@angular/cdk/table'\r\n\r\n\r\n@Component({\r\n selector: 'oc-table',\r\n standalone: true,\r\n imports: [CommonModule, CdkTableModule],\r\n templateUrl: './oc-table.component.html',\r\n styleUrls: ['./oc-table.component.scss']\r\n})\r\nexport class OcTableComponent implements OnInit {\r\n\r\n @Input() columns: string[] = []\r\n @Input() dataSource: any[] = []\r\n keys: string[] = []\r\n\r\n ngOnInit(): void {\r\n if(!this.dataSource.length) return\r\n\r\n this.keys = Object.keys(this.dataSource[0])\r\n }\r\n}\r\n","<table cdk-table [dataSource]=\"dataSource\">\r\n\r\n <ng-container *ngFor=\"let column of columns; let i = index\" [cdkColumnDef]=\"column\">\r\n <th cdk-header-cell *cdkHeaderCellDef> {{column}} </th>\r\n <td cdk-cell *cdkCellDef=\"let row\"> {{row[keys[i]]}} </td>\r\n </ng-container>\r\n\r\n <tr cdk-header-row *cdkHeaderRowDef=\"columns\"></tr>\r\n <tr cdk-row *cdkRowDef=\"let row; columns: columns\"></tr>\r\n</table>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'oc-badge',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './oc-badge.component.html',\r\n styleUrl: './oc-badge.component.scss'\r\n})\r\nexport class OcBadgeComponent implements OnInit {\r\n @Input() ocSize: 'small' | 'medium' | 'large' = 'small'\r\n @Input() ocColor: 'notification' | 'brand-g' | 'brand-p' | 'success' | 'warning' = 'notification'\r\n @Input() ocWaved: boolean = false\r\n\r\n classList: string[] = []\r\n\r\n ngOnInit(): void {\r\n this.classList.push(this.ocSize, this.ocColor)\r\n if(this.ocWaved) this.classList.push('waved')\r\n }\r\n}\r\n","<div>\r\n <div class=\"oc-badge\" [ngClass]=\"classList\">\r\n <ng-content>\r\n \r\n </ng-content>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input } from '@angular/core';\r\nimport { OcBadgeComponent } from '../oc-badge/oc-badge.component';\r\n\r\n@Component({\r\n selector: 'oc-filter',\r\n standalone: true,\r\n imports: [CommonModule, OcBadgeComponent],\r\n templateUrl: './oc-filter.component.html',\r\n styleUrl: './oc-filter.component.scss'\r\n})\r\nexport class OcFilterComponent {\r\n isOpen: boolean = false\r\n @Input() ocText: string = 'Filtros'\r\n @Input() ocActive: number = 0\r\n @Input() ocSide: 'left' | 'right' = 'left'\r\n\r\n toggleOpen() {\r\n this.isOpen = !this.isOpen\r\n }\r\n}\r\n","<div class=\"oc-filter-row\" [ngClass]=\"{\r\n reverse: ocSide === 'right'\r\n}\">\r\n <button class=\"oc-filter-btn\" (click)=\"toggleOpen()\">\r\n <span class=\"material-symbols-outlined\">filter_list</span>\r\n {{ocText}}\r\n <div class=\"badge\">\r\n <oc-badge *ngIf=\"ocActive > 0\" ocSize=\"small\" ocColor=\"success\" [ocWaved]=\"true\">{{ocActive}}</oc-badge>\r\n </div>\r\n </button>\r\n \r\n <div class=\"filter-row-content\">\r\n <ng-content select=\"[row]\"></ng-content>\r\n </div>\r\n \r\n</div>\r\n<div *ngIf=\"isOpen\" class=\"oc-filter-content\">\r\n <ng-content select=\"[body]\">\r\n </ng-content>\r\n</div>\r\n","import { Directive, ElementRef, HostListener, Input, Renderer2 } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[ocTooltip]',\r\n standalone: true\r\n})\r\nexport class OcTooltipDirective {\r\n constructor(private elRef: ElementRef, private renderer: Renderer2) { }\r\n\r\n @Input() content: string = ''\r\n @Input() side: 'bottom' | 'upon' | 'left' | 'right' | 'top' = 'bottom'\r\n\r\n created:boolean = false\r\n\r\n createToolTip() {\r\n if(this.created) return\r\n\r\n const tooltip = this.renderer.createElement('div')\r\n const text = this.renderer.createText(this.content)\r\n\r\n this.renderer.appendChild(tooltip, text)\r\n this.renderer.setStyle(tooltip, 'margin', '0')\r\n this.renderer.addClass(tooltip, 'oc-tooltip')\r\n this.renderer.setStyle(tooltip, 'position', 'absolute')\r\n this.renderer.setStyle(tooltip, 'padding', '0.4rem 0.8rem')\r\n this.renderer.setStyle(tooltip, 'font-size', '0.9rem')\r\n this.renderer.setStyle(tooltip, 'font-weight', '600')\r\n this.renderer.setStyle(tooltip, 'color', '#7E8485')\r\n this.renderer.setStyle(tooltip, 'border', '1px solid #FFFFFF')\r\n this.renderer.setStyle(tooltip, 'background-color', '#F8F9FF')\r\n this.renderer.setStyle(tooltip, 'border-radius','1rem')\r\n this.renderer.setStyle(tooltip, 'box-shadow', '0px 3px 6.5px 0px rgba(0, 0, 0, 0.20)')\r\n this.renderer.setStyle(tooltip, 'transition', '0.1s ease')\r\n this.renderer.setStyle(tooltip, 'max-width', '400px')\r\n\r\n const width = this.elRef.nativeElement.offsetWidth\r\n const height = this.elRef.nativeElement.offsetHeight\r\n\r\n this.renderer.setStyle(tooltip, 'transform', `translateY(${height - 10}px)`)\r\n\r\n if (this.side === 'right') {\r\n this.renderer.setStyle(tooltip, 'transform', `translateX(${width + 20}px) translateY(-50%)`)\r\n } else if (this.side === 'left') {\r\n this.renderer.setStyle(tooltip, 'transform', `translateX(-${width + 20}px) translateY(-50%)`)\r\n } else if (this.side === 'upon' || this.side === 'top') {\r\n this.renderer.setStyle(tooltip, 'transform', `translateY(-${height + 40}px)`)\r\n }\r\n\r\n this.created = true\r\n return tooltip\r\n }\r\n\r\n @HostListener('mouseover')\r\n onMouseOver() {\r\n const tooltip = this.createToolTip()\r\n this.renderer.appendChild(this.elRef.nativeElement, tooltip)\r\n }\r\n\r\n @HostListener('mouseout')\r\n onMouseOut() {\r\n const tooltip = this.elRef.nativeElement.querySelector('.oc-tooltip')\r\n if(tooltip){\r\n this.renderer.removeChild(this.elRef.nativeElement, tooltip)\r\n this.created = false\r\n }\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { AfterViewInit, Component, ElementRef, Input, Renderer2, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'oc-input',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './oc-input.component.html',\r\n styleUrls: ['./oc-input.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class OcInputComponent implements AfterViewInit {\r\n @Input() ocError?: string;\r\n @Input() ocSize?: 'small' | 'medium' | 'large' = 'medium';\r\n @Input() ocPlaceholder: string = '';\r\n @Input() ocWidth?: string\r\n inputId: string = `oc-${Math.random()}`;\r\n\r\n constructor(private el: ElementRef, private renderer: Renderer2) {}\r\n\r\n ngAfterViewInit() {\r\n const inputBox = this.el.nativeElement;\r\n\r\n if (inputBox) {\r\n const inputElement = inputBox.querySelector('input');\r\n\r\n if (inputElement) {\r\n this.renderer.setAttribute(inputElement, 'placeholder', '');\r\n }\r\n }\r\n }\r\n}\r\n","<div class=\"oc-input-box\" [ngClass]=\"{\r\n 'small': ocSize === 'small',\r\n 'large': ocSize === 'large',\r\n error: !!ocError\r\n}\"\r\n [ngStyle]=\"{\r\n width: ocWidth || '100%'\r\n }\"\r\n [id]=\"inputId\">\r\n <ng-content></ng-content>\r\n <label>{{ocPlaceholder}}</label>\r\n <small\r\n *ngIf=\"ocError\"\r\n class=\"error-msg\"\r\n >{{ocError}}</small>\r\n</div>\r\n\r\n","import { CommonModule } from '@angular/common';\nimport { Component, ContentChild, ElementRef, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'oc-modal',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './oc-modal.component.html',\n styleUrl: './oc-modal.component.scss',\n encapsulation: ViewEncapsulation.None\n})\nexport class OcModalComponent {\n @Input() ocTitle: string = ''\n @Input() ocSize: 'small' | 'medium' |'large' = 'medium'\n\n isOpen: boolean = false\n\n closing: boolean = false\n\n open() {\n this.isOpen = true\n }\n close() {\n this.closing = true\n setTimeout(() => {\n this.isOpen = false\n this.closing = false\n },100)\n }\n}\n","<div class=\"oc-modal-bg\" *ngIf=\"isOpen\" [ngClass]=\"{'closing-bg': closing}\">\n <div class=\"oc-modal\" [ngClass]=\"{large: ocSize === 'large', medium: ocSize === 'medium', small: ocSize === 'small', closing: closing}\">\n <header class=\"oc-modal-header\">\n <h3 *ngIf=\"ocTitle.trim().length > 0\">{{ocTitle}}</h3>\n <button (click)=\"close()\" class=\"oc-close-btn\">\n <span class=\"material-symbols-outlined md-18\" title=\"Fechar\">close</span>\n </button>\n </header>\n <div class=\"oc-modal-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>","import { Component, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'oc-key-value',\n standalone: true,\n imports: [],\n templateUrl: './oc-key-value.component.html',\n styleUrl: './oc-key-value.component.scss',\n encapsulation: ViewEncapsulation.None\n})\nexport class OcKeyValueComponent {\n @Input() ocKey: string = ''\n @Input() ocValue: string = ''\n}\n","<div class=\"oc-key-value\">\n <!-- Ícone -->\n <ng-content></ng-content>\n <p>\n @if (ocKey) {\n <span>{{ocKey}}:</span>\n }\n {{ocValue}}\n </p>\n</div>","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'oc-chip',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './oc-chip.component.html',\n styleUrl: './oc-chip.component.scss'\n})\nexport class OcChipComponent {\n @Input() ocSelected: boolean = false\n @Input() ocType: 'select' | 'remove' | 'tag' = 'select'\n @Input() ocBg: 'green' | 'red' = 'green'\n @Input() ocText: string = ''\n @Output() ocClick: EventEmitter<any> = new EventEmitter<any>\n\n ocEvent() {\n this.ocClick.emit()\n }\n}\n","<button\n [ngClass]=\"{\n 'oc-chip': true,\n selected: ocSelected,\n 'not-selectable': ocType !== 'select',\n 'tag': ocType === 'tag',\n 'remove': ocType === 'remove',\n 'green-bg': ocBg === 'green',\n 'red-bg': ocBg === 'red'\n }\"\n type=\"button\"\n [title]=\"ocText\"\n (click)=\"ocType === 'select' ? ocEvent() : null\"\n>\n <ng-content></ng-content>\n @if (ocType === 'remove') {\n <span class=\"material-symbols-outlined\" (click)=\"ocEvent()\">close</span>\n }\n</button>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'oc-modal-footer',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './oc-modal-footer.component.html',\n styleUrl: './oc-modal-footer.component.scss'\n})\nexport class OcModalFooterComponent {\n @Input() ocSide: 'left' | 'right' = 'right'\n}\n","<footer class=\"oc-modal-footer\" [ngClass]=\"{\n 'left': ocSide === 'left',\n 'right': ocSide === 'right'\n}\">\n <ng-content></ng-content>\n</footer>","import { CommonModule } from '@angular/common';\nimport { AfterViewInit, Component, ElementRef, EventEmitter, Input, OnInit, Output, Renderer2, ViewChild } from '@angular/core';\nimport { OcAutoCompleteType } from '../../interfaces/oc-autocomplete';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'oc-autocomplete',\n standalone: true,\n imports: [CommonModule, FormsModule],\n templateUrl: './oc-autocomplete.component.html',\n styleUrl: './oc-autocomplete.component.scss'\n})\nexport class OcAutocompleteComponent implements OnInit, AfterViewInit {\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n \n @ViewChild('input') input!: ElementRef;\n @ViewChild('options') options!: ElementRef;\n\n @Input() ocPlaceholder?: string\n @Input() ocError?: string\n @Input() ocSize: 'small' | 'large' | 'medium' = 'medium'\n @Input() ocData: OcAutoCompleteType[] = []\n @Input() ocValue: string = ''\n @Input() ocClearOnChange: boolean = false \n @Input() ocWidth?: string\n \n @Output() ocChange = new EventEmitter<string>()\n\n isOptionsShown: boolean = false\n filteredData: OcAutoCompleteType[] = []\n selectedValue: OcAutoCompleteType = {\n name: '',\n value: null\n }\n\n ngOnInit() {\n this.filteredData = this.ocData\n this.closeOnClickOut()\n }\n\n ngAfterViewInit() {\n this.filteredData = this.ocData\n const inputBox = this.el.nativeElement;\n\n if (inputBox) {\n const inputElement = inputBox.querySelector('input');\n\n if (inputElement) {\n this.renderer.setAttribute(inputElement, 'placeholder', '');\n }\n }\n }\n\n closeOnClickOut() {\n this.renderer.listen('window', 'click',(e:Event)=>{\n if(this.input && this.options){\n if(e.target !== this.input.nativeElement && e.target!==this.options.nativeElement){\n this.isOptionsShown = false;\n }\n }\n this.findByTyping()\n })\n }\n\n findByTyping() {\n const foundValue = this.ocData.find(data => data.name.toLowerCase() === this.ocValue.toLowerCase())\n if(!foundValue) {\n this.selectedValue = {\n name: '',\n value: null\n }\n this.ocValue = ''\n return\n }\n\n this.selectedValue = foundValue\n }\n\n filterData(name: string) {\n this.isOptionsShown = true\n this.filteredData = this.ocData.filter(data => data.name.toLowerCase().includes(name.toLowerCase()))\n }\n\n toggleOptions() {\n this.isOptionsShown = !this.isOptionsShown\n }\n\n selectValue(index: number) {\n const foundValue = this.ocData.find((data, i)=> i === index)\n \n if(!foundValue) {\n this.selectedValue = {\n name: '',\n value: null\n }\n return\n }\n\n this.selectedValue = foundValue\n if(this.ocClearOnChange){\n this.ocValue = ''\n }else{\n this.ocValue = foundValue.name\n }\n\n this.ocChange.emit(this.selectedValue.value)\n }\n}\n","<div class=\"oc-input-box\" [ngClass]=\"{\n 'small': ocSize === 'small',\n 'large': ocSize === 'large',\n error: !!ocError\n }\"\n [ngStyle]=\"{\n width: ocWidth || '100%'\n }\"\n >\n <input #input (click)=\"toggleOptions()\" type=\"text\" (input)=\"filterData(ocValue)\" [(ngModel)]=\"ocValue\">\n <label>{{ocPlaceholder}}</label>\n @if(isOptionsShown){\n <ul #options class=\"oc-options\">\n @for(data of filteredData; track data.value) {\n <li>\n <button (click)=\"selectValue($index)\">\n {{data.name}}\n </button>\n </li>\n }\n </ul>\n }\n\n</div>","import { Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'oc-profile',\n standalone: true,\n imports: [],\n templateUrl: './oc-profile.component.html',\n styleUrl: './oc-profile.component.scss',\n encapsulation: ViewEncapsulation.None\n})\nexport class OcProfileComponent implements OnInit {\n @Input() ocUserName?: string\n @Input() ocProfilePic?: string\n nameInitials: string = ''\n \n ngOnInit() {\n this.getInitials()\n }\n\n getInitials() {\n if(!this.ocUserName) return\n\n const splittedName = this.ocUserName?.split(' ')\n\n const firstLetter = splittedName[0][0]\n let lastLetter = ''\n \n const lastName = splittedName[splittedName.length - 1]\n\n if(splittedName.length > 1 && lastName){\n lastLetter = lastName[0]\n }\n\n this.nameInitials = (firstLetter + lastLetter).toUpperCase()\n }\n}\n","<div class=\"oc-profile\">\n <div class=\"content\">\n @if(ocProfilePic){\n <img [src]=\"ocProfilePic\" [alt]=\"ocUserName || 'Foto de perfil do usuário'\">\n }@else {\n <span>\n {{nameInitials}}\n </span>\n }\n </div>\n</div>","import { Component, Input } from '@angular/core';\nimport { OcProfileComponent } from '../oc-profile/oc-profile.component';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'oc-log',\n standalone: true,\n imports: [CommonModule, OcProfileComponent],\n templateUrl: './oc-log.component.html',\n styleUrl: './oc-log.component.scss'\n})\nexport class OcLogComponent {\n @Input() ocProfilePic?: string = ''\n @Input() ocUserName?: string = ''\n}\n","<div class=\"oc-log\">\n <div class=\"left-side\" [ngClass]=\"{\n 'has-profile': ocProfilePic || ocUserName\n }\">\n @if(ocProfilePic || ocUserName) {\n <oc-profile [ocProfilePic]=\"ocProfilePic\" [ocUserName]=\"ocUserName\">\n </oc-profile>\n } @else {\n <div class=\"dot\"></div>\n }\n </div>\n\n <div class=\"content\" [ngClass]=\"{\n 'has-profile-content': ocProfilePic || ocUserName\n }\" selector=\"[content]\">\n <ng-content></ng-content>\n </div>\n</div>","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'oc-pagination',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './oc-pagination.component.html',\n styleUrl: './oc-pagination.component.scss'\n})\nexport class OcPaginationComponent implements OnInit{\n @Input() ocPage: number = 1\n @Input() ocMaxPage?: number\n @Output() ocGetPage = new EventEmitter<number>()\n \n ngOnInit(): void {\n if(!this.ocMaxPage) this.ocMaxPage = this.ocPage\n }\n\n firstPage() {\n this.ocPage = 1\n \n this.ocGetPage.emit(this.ocPage)\n }\n\n decrementPage() {\n if(this.ocPage <= 1) return\n this.ocPage--\n \n this.ocGetPage.emit(this.ocPage)\n }\n\n incrementPage() {\n if(!this.ocMaxPage || this.ocPage >= this.ocMaxPage) return\n this.ocPage++\n \n this.ocGetPage.emit(this.ocPage)\n }\n\n lastPage() {\n if(!this.ocMaxPage) return\n this.ocPage = this.ocMaxPage\n \n this.ocGetPage.emit(this.ocPage)\n }\n}\n","<div class=\"oc-pagination\">\n <p class=\"oc-pagination-text\">\n Página\n <span>{{ocPage}}</span> \n de\n <span>{{ocMaxPage}}</span>\n </p>\n <div class=\"oc-pagination-buttons\">\n <button (click)=\"firstPage()\" [ngClass]=\"{\n disabled: ocPage === 1\n }\">\n <span class=\"material-symbols-outlined\">keyboard_double_arrow_left</span>\n </button>\n <button (click)=\"decrementPage()\" [ngClass]=\"{\n disabled: ocPage === 1\n }\">\n <span class=\"material-symbols-outlined\">navigate_before</span>\n </button>\n <button (click)=\"incrementPage()\" [ngClass]=\"{\n disabled: ocPage === ocMaxPage\n }\"> \n <span class=\"material-symbols-outlined\">navigate_next</span>\n </button>\n <button (click)=\"lastPage()\" [ngClass]=\"{\n disabled: ocPage === ocMaxPage\n }\"> \n <span class=\"material-symbols-outlined\">\n keyboard_double_arrow_right\n </span>\n </button>\n </div>\n</div>","import { Component } from '@angular/core';\n\n@Component({\n selector: 'oc-not-found',\n standalone: true,\n imports: [],\n templateUrl: './oc-not-found.component.html',\n styleUrl: './oc-not-found.component.scss'\n})\nexport class OcNotFoundComponent {\n\n}\n","<main class=\"oc-not-found\">\n <div class=\"content\">\n <div class=\"main-title\">\n <h1>404</h1>\n <span class=\"s-1\">?</span>\n <span class=\"s-2\">?</span>\n <span class=\"s-3\">?</span>\n </div>\n <div class=\"not-found-msg\">\n <h2>Página não encontrada</h2>\n <p>Não conseguimos encontrar a página que você está procurando</p>\n </div>\n </div>\n</main>","import { Component,ElementRef,Input, OnInit, Renderer2, ViewChild } from '@angular/core';\r\nimport { CdkMenuModule } from '@angular/cdk/menu';\r\nimport { CommonModule } from '@angular/common';\r\nimport { OcMenuType } from '../../interfaces/oc-menu';\r\n\r\n@Component({\r\n selector: 'oc-menu',\r\n standalone: true,\r\n imports: [CommonModule, CdkMenuModule],\r\n templateUrl: './oc-menu.component.html',\r\n styleUrls: ['./oc-menu.component.scss']\r\n})\r\nexport class OcMenuComponent implements OnInit {\r\n constructor(private renderer: Renderer2) {}\r\n\r\n @ViewChild('ocMenuEl') menu!: ElementRef;\r\n @Input() ocMenu: OcMenuType[] = []\r\n isMenuShown: boolean = false\r\n buttonId?:string\r\n\r\n open() {\r\n this.isMenuShown = !this.isMenuShown\r\n\r\n setTimeout(() => {\r\n if(this.menu){\r\n const parentButton = this.findParentButton(this.menu.nativeElement);\r\n if (parentButton) {\r\n this.buttonId = `oc-${Math.random()}`\r\n this.renderer.setAttribute(parentButton, 'id', this.buttonId);\r\n }\r\n }\r\n }, 100)\r\n }\r\n\r\n ngOnInit() {\r\n this.closeOnClickOut() \r\n }\r\n\r\n findParentButton(element: HTMLElement): HTMLButtonElement | null {\r\n let parent = element.parentElement;\r\n while (parent) {\r\n if (parent.tagName.toLowerCase() === 'button') {\r\n return parent as HTMLButtonElement;\r\n }\r\n parent = parent.parentElement;\r\n }\r\n return null;\r\n }\r\n \r\n closeOnClickOut() {\r\n this.renderer.listen('window', 'click',(e:any)=>{\r\n if(!this.menu) return\r\n if(this.buttonId && e.target.id !== this.buttonId) {\r\n this.isMenuShown = false\r\n return\r\n }\r\n \r\n })\r\n }\r\n}\r\n","<div class=\"oc-menu\" *ngIf=\"isMenuShown\" cdkMenu #ocMenuEl>\r\n <ul>\r\n @for(option of ocMenu; track $index) {\r\n <li>\r\n @if(option.icon) {\r\n <span class=\"material-symbols-outlined\">\r\n {{option.icon}}\r\n </span>\r\n } \r\n @if(option.callback){\r\n <button (click)=\"option.callback()\">{{option.name}}</button>\r\n }\r\n @if(option.url){\r\n <a [href]=\"option.url\" [target]=\"option.targetBlank ? '_blank' : ''\">{{option.name}}</a>\r\n }\r\n @if (!option.callback && !option.url) {\r\n <span>{{option.name}}</span>\r\n }\r\n </li>\r\n }\r\n </ul>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component } from '@angular/core';\r\nimport { OcToastService } from '../../services/oc-toast.service';\r\n\r\n@Component({\r\n selector: 'oc-toast',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './oc-toast.component.html',\r\n styleUrl: './oc-toast.component.scss'\r\n})\r\nexport class OcToastComponent {\r\n constructor (public toast: OcToastService) {}\r\n}\r\n","<div\r\n class=\"toast\"\r\n [ngClass]=\"{\r\n 'close-toast': toast.currentToast.counter === 1,\r\n error: toast.currentToast.status === 'erro',\r\n success: toast.currentToast.status === 'sucesso',\r\n loading: toast.currentToast.status === 'carregando',\r\n animation: toast.currentToast.hasAnimation\r\n }\"\r\n *ngIf=\"toast.currentToast && toast.currentToast.counter > 0\"\r\n>\r\n <header>\r\n <ng-container [ngTemplateOutlet]=\"iconTemplate\"></ng-container>\r\n <h4 class=\"status\">\r\n {{ toast.currentToast.status[0].toUpperCase() + toast.currentToast.status.slice(1) }}\r\n </h4>\r\n <button (click)=\"toast.closeToast(toast.currentToast.id)\">\r\n <span class=\"material-symbols-outlined\">close</span>\r\n </button>\r\n </header>\r\n <p>{{ toast.currentToast.message }}</p>\r\n</div>\r\n\r\n<ng-template #iconTemplate>\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'erro'\"\r\n >error</span\r\n >\r\n\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'sucesso'\"\r\n >check_circle</span\r\n >\r\n\r\n <span\r\n class=\"material-symbols-outlined\"\r\n *ngIf=\"toast.currentToast.status === 'informação'\"\r\n >info</span\r\n >\r\n\r\n<svg *ngIf=\"toast.currentToast.status === 'carregando'\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><style>rect{fill:#00DDA3}.spinner_zWVm{animation:spinner_5QiW 1.2s linear infinite,spinner_PnZo 1.2s linear infinite}.spinner_gfyD{animation:spinner_5QiW 1.2s linear infinite,spinner_4j7o 1.2s linear infinite;animation-delay:.1s}.spinner_T5JJ{animation:spinner_5QiW 1.2s linear infinite,spinner_fLK4 1.2s linear infinite;animation-delay:.1s}.spinner_E3Wz{animation:spinner_5QiW 1.2s linear infinite,spinner_tDji 1.2s linear infinite;animation-delay:.2s}.spinner_g2vs{animation:spinner_5QiW 1.2s linear infinite,spinner_CMiT 1.2s linear infinite;animation-delay:.2s}.spinner_ctYB{animation:spinner_5QiW 1.2s linear infinite,spinner_cHKR 1.2s linear infinite;animation-delay:.2s}.spinner_BDNj{animation:spinner_5QiW 1.2s linear infinite,spinner_Re6e 1.2s linear infinite;animation-delay:.3s}.spinner_rCw3{animation:spinner_5QiW 1.2s linear infinite,spinner_EJmJ 1.2s linear infinite;animation-delay:.3s}.spinner_Rszm{animation:spinner_5QiW 1.2s linear infinite,spinner_YJOP 1.2s linear infinite;animation-delay:.4s}@keyframes spinner_5QiW{0%,50%{width:7.33px;height:7.33px}25%{width:1.33px;height:1.33px}}@keyframes spinner_PnZo{0%,50%{x:1px;y:1px}25%{x:4px;y:4px}}@keyframes spinner_4j7o{0%,50%{x:8.33px;y:1px}25%{x:11.33px;y:4px}}@keyframes spinner_fLK4{0%,50%{x:1px;y:8.33px}25%{x:4px;y:11.33px}}@keyframes spinner_tDji{0%,50%{x:15.66px;y:1px}25%{x:18.66px;y:4px}}@keyframes spinner_CMiT{0%,50%{x:8.33px;y:8.33px}25%{x:11.33px;y:11.33px}}@keyframes spinner_cHKR{0%,50%{x:1px;y:15.66px}25%{x:4px;y:18.66px}}@keyframes spinner_Re6e{0%,50%{x:15.66px;y:8.33px}25%{x:18.66px;y:11.33px}}@keyframes spinner_EJmJ{0%,50%{x:8.33px;y:15.66px}25%{x:11.33px;y:18.66px}}@keyframes spinner_YJOP{0%,50%{x:15.66px;y:15.66px}25%{x:18.66px;y:18.66px}}</style><rect class=\"spinner_zWVm\" x=\"1\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_gfyD\" x=\"8.33\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_T5JJ\" x=\"1\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_E3Wz\" x=\"15.66\" y=\"1\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_g2vs\" x=\"8.33\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_ctYB\" x=\"1\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_BDNj\" x=\"15.66\" y=\"8.33\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_rCw3\" x=\"8.33\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/><rect class=\"spinner_Rszm\" x=\"15.66\" y=\"15.66\" width=\"7.33\" height=\"7.33\"/></svg>\r\n \r\n\r\n</ng-template>\r\n","\r\n/*\r\n* Public API Surface of otimus-library\r\n*/\r\n\r\nexport * from './lib/otimus-library.service'\r\nexport * from './lib/otimus-library.component'\r\nexport * from './lib/services/oc-toast.service'\r\nexport * from './lib/components/oc-table/oc-table.component'\r\nexport * from './lib/components/oc-badge/oc-badge.component'\r\nexport * from './lib/components/oc-filter/oc-filter.component'\r\nexport * from './lib/directives/oc-tooltip/oc-tooltip.directive'\r\nexport * from './lib/components/oc-input/oc-input.component'\r\nexport * from './lib/components/oc-modal/oc-modal.component'\r\nexport * from './lib/components/oc-key-value/oc-key-value.component'\r\nexport * from './lib/components/oc-chip/oc-chip.component'\r\nexport * from './lib/components/oc-modal-footer/oc-modal-footer.component'\r\nexport * from './lib/components/oc-autocomplete/oc-autocomplete.component'\r\nexport * from './lib/components/oc-profile/oc-profile.component'\r\nexport * from './lib/components/oc-log/oc-log.component'\r\nexport * from './lib/components/oc-pagination/oc-pagination.component'\r\nexport * from './lib/components/oc-not-found/oc-not-found.component'\r\nexport * from './lib/components/oc-menu/oc-menu.component'\r\nexport * from './lib/components/oc-toast/oc-toast.component'","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i1.OcToastService"],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { OcToastService } from '../../services/oc-toast.service';
2
+ import * as i0 from "@angular/core";
3
+ export declare class OcToastComponent {
4
+ toast: OcToastService;
5
+ constructor(toast: OcToastService);
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<OcToastComponent, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<OcToastComponent, "oc-toast", never, {}, {}, never, never, true, never>;
8
+ }
@@ -0,0 +1,8 @@
1
+ export interface ToastType {
2
+ id: number;
3
+ status: string;
4
+ message: string;
5
+ counter: number;
6
+ promiseKey?: string;
7
+ hasAnimation?: boolean;
8
+ }
@@ -0,0 +1,12 @@
1
+ import { ToastType } from '../interfaces/oc-toast';
2
+ import * as i0 from "@angular/core";
3
+ export declare class OcToastService {
4
+ toastList: ToastType[];
5
+ isRunning: boolean;
6
+ currentToast: ToastType;
7
+ closeToast(id: number): void;
8
+ openToast: (toastStatus: 'erro' | 'sucesso' | 'carregando' | 'informação', toastMessage: string, toastCounter?: number, promiseKey?: string) => void;
9
+ renderToasts(): void;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<OcToastService, never>;
11
+ static ɵprov: i0.ɵɵInjectableDeclaration<OcToastService>;
12
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "otimus-library",
3
- "version": "0.0.47",
3
+ "version": "0.0.49",
4
4
  "license": "MIT",
5
5
  "peerDependencies": {
6
6
  "@angular/cdk": "^17.0.2",
package/public-api.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from './lib/otimus-library.service';
2
2
  export * from './lib/otimus-library.component';
3
+ export * from './lib/services/oc-toast.service';
3
4
  export * from './lib/components/oc-table/oc-table.component';
4
5
  export * from './lib/components/oc-badge/oc-badge.component';
5
6
  export * from './lib/components/oc-filter/oc-filter.component';
@@ -15,3 +16,4 @@ export * from './lib/components/oc-log/oc-log.component';
15
16
  export * from './lib/components/oc-pagination/oc-pagination.component';
16
17
  export * from './lib/components/oc-not-found/oc-not-found.component';
17
18
  export * from './lib/components/oc-menu/oc-menu.component';
19
+ export * from './lib/components/oc-toast/oc-toast.component';