gentera-rdnd 0.2.2 → 0.2.3
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.
- package/fesm2022/gentera-rdnd.mjs +794 -0
- package/fesm2022/gentera-rdnd.mjs.map +1 -0
- package/index.d.ts +552 -0
- package/package.json +17 -9
- package/ng-package.json +0 -7
- package/src/lib/components/button/button.component.html +0 -21
- package/src/lib/components/button/button.component.scss +0 -41
- package/src/lib/components/button/button.component.ts +0 -82
- package/src/lib/components/input/Readme.md +0 -33
- package/src/lib/components/input/input.component.html +0 -50
- package/src/lib/components/input/input.component.scss +0 -86
- package/src/lib/components/input/input.component.ts +0 -133
- package/src/lib/components/modal/modal.component.html +0 -51
- package/src/lib/components/modal/modal.component.scss +0 -50
- package/src/lib/components/modal/modal.component.ts +0 -41
- package/src/lib/components/rdnd-active-indicator/rdnd-active-indicator.component.css +0 -24
- package/src/lib/components/rdnd-active-indicator/rdnd-active-indicator.component.html +0 -12
- package/src/lib/components/rdnd-active-indicator/rdnd-active-indicator.component.ts +0 -18
- package/src/lib/components/rdnd-loader/rdnd-loader.component.html +0 -129
- package/src/lib/components/rdnd-loader/rdnd-loader.component.scss +0 -33
- package/src/lib/components/rdnd-loader/rdnd-loader.component.ts +0 -27
- package/src/lib/components/rdnd-navbar/rdnd-navbar.component.html +0 -19
- package/src/lib/components/rdnd-navbar/rdnd-navbar.component.scss +0 -40
- package/src/lib/components/rdnd-navbar/rdnd-navbar.component.ts +0 -59
- package/src/lib/components/rdnd-sidebar/rdnd-sidebar.component.html +0 -144
- package/src/lib/components/rdnd-sidebar/rdnd-sidebar.component.scss +0 -221
- package/src/lib/components/rdnd-sidebar/rdnd-sidebar.component.ts +0 -65
- package/src/lib/components/screen-title/screen-title.component.html +0 -5
- package/src/lib/components/screen-title/screen-title.component.scss +0 -15
- package/src/lib/components/screen-title/screen-title.component.ts +0 -20
- package/src/lib/config/rdnd-config.token.ts +0 -6
- package/src/lib/gentera-rdnd.component.ts +0 -16
- package/src/lib/gentera-rdnd.service.ts +0 -9
- package/src/lib/hooks/button.service.ts +0 -31
- package/src/lib/hooks/input.service.ts +0 -73
- package/src/lib/hooks/modal.service.ts +0 -112
- package/src/lib/services/storage.service.ts +0 -31
- package/src/lib/styles/colors.scss +0 -63
- package/src/lib/styles/colors.ts +0 -55
- package/src/lib/styles/fonts.scss +0 -93
- package/src/lib/styles/sizes.scss +0 -10
- package/src/lib/styles/themes.ts +0 -114
- package/src/lib/styles/z_indexes.scss +0 -3
- package/src/lib/types/Loader-config.types.ts +0 -8
- package/src/lib/types/Sidebar.types.ts +0 -6
- package/src/public-api.ts +0 -31
- package/tsconfig.lib.json +0 -25
- package/tsconfig.lib.prod.json +0 -11
- package/tsconfig.spec.json +0 -15
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gentera-rdnd.mjs","sources":["../../../projects/gentera-rdnd/src/lib/styles/colors.ts","../../../projects/gentera-rdnd/src/lib/components/screen-title/screen-title.component.ts","../../../projects/gentera-rdnd/src/lib/components/screen-title/screen-title.component.html","../../../projects/gentera-rdnd/src/lib/components/rdnd-navbar/rdnd-navbar.component.ts","../../../projects/gentera-rdnd/src/lib/components/rdnd-navbar/rdnd-navbar.component.html","../../../projects/gentera-rdnd/src/lib/components/rdnd-sidebar/rdnd-sidebar.component.ts","../../../projects/gentera-rdnd/src/lib/components/rdnd-sidebar/rdnd-sidebar.component.html","../../../projects/gentera-rdnd/src/lib/config/rdnd-config.token.ts","../../../projects/gentera-rdnd/src/lib/components/rdnd-loader/rdnd-loader.component.ts","../../../projects/gentera-rdnd/src/lib/components/rdnd-loader/rdnd-loader.component.html","../../../projects/gentera-rdnd/src/lib/components/rdnd-active-indicator/rdnd-active-indicator.component.ts","../../../projects/gentera-rdnd/src/lib/components/rdnd-active-indicator/rdnd-active-indicator.component.html","../../../projects/gentera-rdnd/src/lib/styles/themes.ts","../../../projects/gentera-rdnd/src/lib/hooks/button.service.ts","../../../projects/gentera-rdnd/src/lib/components/button/button.component.ts","../../../projects/gentera-rdnd/src/lib/components/button/button.component.html","../../../projects/gentera-rdnd/src/lib/hooks/input.service.ts","../../../projects/gentera-rdnd/src/lib/components/input/input.component.ts","../../../projects/gentera-rdnd/src/lib/components/input/input.component.html","../../../projects/gentera-rdnd/src/lib/components/modal/modal.component.ts","../../../projects/gentera-rdnd/src/lib/components/modal/modal.component.html","../../../projects/gentera-rdnd/src/lib/hooks/modal.service.ts","../../../projects/gentera-rdnd/src/lib/services/storage.service.ts","../../../projects/gentera-rdnd/src/public-api.ts","../../../projects/gentera-rdnd/src/gentera-rdnd.ts"],"sourcesContent":["export const colors = {\n black: '#171717',\n 'black-light': '#343434',\n 'black-dark': '#000000',\n 'black-navy': '#191a21',\n\n 'xs-dark-gray': '#5A5A5A',\n 'dark-gray': '#9E9E9E',\n 'medium-gray': '#AFAFAF',\n gray: '#C4C4C4',\n 'light-gray': '#C6C6C6',\n 'xs-light-gray': '#DFDFDF',\n 'xxs-light-gray': '#F2F2F2',\n 'soft-white': '#EEEEEE',\n\n green: '#28a746',\n 'green-medium': '#208B6A',\n 'green-dark': '#156a29',\n 'green-xs-dark': 'rgb(33, 97, 90)',\n 'green-1': '#009F74',\n 'green-2': '#00B987',\n 'green-3': '#19C496',\n 'green-light': '#84ce94',\n 'green-4': '#50D8B3',\n 'green-5': '#83E6B8',\n\n \"blue-info\": '#7390EC',\n blue: '#3360fa',\n 'blue-dark': '#1a389e',\n 'blue-light': '#3390fa',\n 'blue-gray-soft': '#E5EAEDFF',\n 'blue-gray-light': 'rgb(244,247,250)',\n\n orange: '#F77C00',\n 'orange-light': '#F7B500',\n\n yellow: '#F09D00',\n \"yellow-normal\": '#FFBC57',\n 'yellow-light': '#FFC400',\n\n purple: '#6459be',\n 'purple-light': 'rgb(149, 138, 242)',\n\n red: '#E60018',\n 'red-light': '#e74364',\n 'red-medium': '#c51628',\n\n \"white\": \"#FFFFFF\",\n \"magentaStart\": \"#C2185B\",\n \"magentaEnd\": \"#7E0083\",\n 'magenta-normal': '#B41364',\n\n disabled: '#C6C6C6',\n \"disabledText\": \"#9E9E9E\",\n};\n","import {Component, Input} from '@angular/core';\nimport {NgClass, NgStyle} from \"@angular/common\";\nimport {colors} from \"../../styles/colors\";\n\n@Component({\n selector: 'rdnd-screen-title',\n standalone: true,\n imports: [\n NgClass,\n NgStyle\n ],\n templateUrl: './screen-title.component.html',\n styleUrl: './screen-title.component.scss'\n})\nexport class RdndScreenTitle {\n @Input() title!: string;\n @Input() align: 'LEFT' | 'CENTER' = 'CENTER';\n @Input() color = colors[\"magentaEnd\"];\n\n}\n","<h1 [class]=\" 'align-' + align \" [ngStyle]=\"{\n color: color\n}\">\n {{ title }}\n</h1>\n","import {Component, Input, output} from '@angular/core';\n\n// Icons\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\nimport {\n faBarsStaggered,\n faCircle,\n faSignOut,\n faTimes\n} from \"@fortawesome/free-solid-svg-icons\";\nimport {NgStyle} from \"@angular/common\";\nimport {RouterLink} from \"@angular/router\";\n\n@Component({\n selector: 'rdnd-navbar',\n standalone: true,\n imports: [\n FaIconComponent,\n NgStyle,\n RouterLink\n ],\n templateUrl: './rdnd-navbar.component.html',\n styleUrl: './rdnd-navbar.component.scss'\n})\nexport class RdndNavbar {\n\n // Icons\n protected readonly faBarsStaggered = faBarsStaggered;\n protected readonly faSignOut = faSignOut;\n protected readonly faTimes = faTimes;\n\n // States\n showLoader = false;\n\n // Inputs & Outputs\n @Input() userName: string = \"\";\n @Input() imageUrl: string = \"\";\n @Input() backgroundStart: string = \"#C2185B\";\n @Input() backgroundEnd: string = \"#7E0083\";\n @Input() showSidebar = false;\n onSignOut = output();\n onToggleSidebar = output();\n\n // Functions\n toggleMenu = () => {\n this.showSidebar = !this.showSidebar;\n this.onToggleSidebar.emit();\n }\n\n closeMenu = () => {\n this.showSidebar = false;\n }\n\n handleSignOut = () => {\n this.onSignOut.emit();\n }\n\n\n}\n","<nav [ngStyle]=\"{'background': 'linear-gradient(to right, ' + backgroundStart + ', ' + backgroundEnd + ')'}\">\n\n <div class=\"rdnd-nav-container\">\n <button (click)=\"toggleMenu()\" >\n <fa-icon [icon]=\"showSidebar ? faTimes : faBarsStaggered\"></fa-icon>\n </button>\n\n @if (imageUrl) {\n <a [routerLink]=\"['/']\">\n <img src=\"{{imageUrl}}\" alt=\"\">\n </a>\n }\n\n <button (click)=\"handleSignOut()\">\n <fa-icon [icon]=\"faSignOut\"></fa-icon>\n </button>\n </div>\n\n</nav>\n","import {Component, Input, output} from '@angular/core';\nimport {NgClass, NgStyle} from '@angular/common';\nimport {RouterLink} from '@angular/router';\n// Icons\nimport {FaIconComponent} from '@fortawesome/angular-fontawesome';\nimport {\n faArrowRight,\n faChevronDown,\n faChevronUp,\n faCircle\n} from '@fortawesome/free-solid-svg-icons';\n// Components\nimport {RdndSidebarItem} from \"../../types/Sidebar.types\";\n\n@Component({\n selector: 'rdnd-sidebar',\n standalone: true,\n imports: [\n NgClass,\n NgStyle,\n RouterLink,\n FaIconComponent,\n ],\n templateUrl: './rdnd-sidebar.component.html',\n styleUrl: './rdnd-sidebar.component.scss',\n})\nexport class RdndSidebar {\n // Inputs\n @Input() show: boolean = false;\n @Input() user?: { name: string; email: string; photo?: string };\n @Input() entries: RdndSidebarItem[] = [];\n @Input() backgroundStart: string = '#C2185B';\n @Input() backgroundEnd: string = '#7E0083';\n @Input() activeRoute?: string = '/';\n\n // Outputs\n onClickEntry = output();\n\n protected readonly faArrowRight = faArrowRight;\n protected readonly faChevronDown = faChevronDown;\n protected readonly faChevronUp = faChevronUp;\n protected readonly faCircle = faCircle;\n\n openSections = new Set<string>();\n\n handleClick = () => {\n this.onClickEntry.emit();\n };\n\n toggleSection(name: string) {\n this.openSections.has(name)\n ? this.openSections.delete(name)\n : this.openSections.add(name);\n }\n\n isSectionOpen(section: RdndSidebarItem): boolean {\n const hasActiveChild = section.entries?.some(entry => this.activeRoute === `/${section.url}${entry.url}`);\n return hasActiveChild || this.openSections.has(section.name);\n }\n\n isActiveRoute(itemRoute: string): boolean {\n return this.activeRoute === itemRoute;\n }\n\n}\n","@if (show) {\n <div\n class=\"background-overlay\"\n (click)=\"handleClick()\"\n [ngClass]=\"show ? 'open' : 'closed'\">\n </div>\n}\n\n<aside\n id=\"sidebar\"\n class=\"sidebar\"\n [ngClass]=\"show ? 'open' : 'closed'\"\n [ngStyle]=\"{\n 'background': 'linear-gradient(to bottom, ' + backgroundStart + ', ' + backgroundEnd + ')'\n }\"\n>\n\n @if (user) {\n\n <div class=\"user-details\">\n @if (user.photo) {\n <img src=\"{{user.photo}}\" alt='{{user.name}}' class=\"user-image\">\n } @else {\n <div class=\"user-image\">\n <svg version=\"1.1\" id=\"Capa_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n x=\"0px\" y=\"0px\"\n viewBox=\"0 0 554 481\" style=\"enable-background:new 0 0 554 481;\" xml:space=\"preserve\">\n<style type=\"text/css\">\n\t.st0 {\n fill: none;\n }\n\n .st1 {\n fill: #E85E16;\n }\n\n .st2 {\n fill: #9D0046;\n }\n\n .st3 {\n fill: #592275;\n }\n\n .st4 {\n fill: #CD0058;\n }\n\n .st5 {\n fill: #00587F;\n }\n\n .st6 {\n fill: #229B7D;\n }\n</style>\n <rect class=\"st0\" width=\"554\" height=\"481\"/>\n <g>\n\t<path id=\"naranja\" class=\"st1\" d=\"M277.4,128.4c74.7-40.1,146.4-40,154.5-40c8.1,48,13.7,67-7.9,121.3\n\t\tc-24.2,43.8-169.9,71.1-169.9,71.1l0,0c2.7-5.3-3.7-67.7-3.7-67.7S248.6,141.8,277.4,128.4\"/>\n <path id=\"roja\" class=\"st2\" d=\"M449.8,205.7c-2.6,16-11.6,58-43.6,101.2s-99.9,85.5-138,96s-35.3,8-51.6,8\n\t\tc-10-28.6-11.3-33.9-4.9-81.3s22.9-61.8,56.5-80c24.4-10.7,48.7-17.3,73.1-25.3C379.4,213.7,417.4,208.3,449.8,205.7\"/>\n <path id=\"morada\" class=\"st3\" d=\"M236.8,95.1c18.8-8.3,43.1-16.7,70-25.2c-7.8,18.8-10.1,42.8-15.2,66.9\n\t\tc-6.6,43.2-12.8,104.4-40.2,136.6C217.9,313,127.3,348.2,127,347.6l-2.5,0c-14.4-50.4-20.6-93-15.7-125\n\t\tC116,166.4,150.6,131.2,236.8,95.1L236.8,95.1\"/>\n <path id=\"fushia\" class=\"st4\" d=\"M425.5,246h13.6c-13.5,37.3-31.4,76.2-72,105.6c-69,48.9-98.8,50.7-98.8,50.7S341.4,254,425.5,246\n\t\t\"/>\n <path id=\"azul\" class=\"st5\" d=\"M122.5,344.1L122.5,344.1c13.6,45.3,48.8,69.3,100.3,66.6c24.4-48,44-108.8,52.1-164.7\n\t\tC218,272.7,165.9,312.1,122.5,344.1\"/>\n <path id=\"verde\" class=\"st6\" d=\"M277,232.3c5.4-37.3,10.8-72,16.2-103.9C206.5,171,144.2,251,122.5,344.3\n\t\tc43.4-32,95.2-70.3,152.1-97\"/>\n</g>\n</svg>\n </div>\n }\n\n <div class=\"data\">\n <span>\n <fa-icon [icon]=\"faCircle\" class=\"icon\"></fa-icon>\n {{ user.name }}\n </span>\n <span class=\"email\">\n {{ user.email }}\n </span>\n </div>\n\n </div>\n\n }\n\n <ul class=\"entries\">\n @for (item of entries; track item.name) {\n\n @if (item.type === 'ENTRY') {\n <li>\n <a\n [routerLink]=\"[item.url]\"\n class=\"entry\"\n (click)=\"handleClick()\"\n [ngClass]=\"{\n activeRoute: activeRoute === item.url\n }\"\n >\n <fa-icon [icon]=\"faArrowRight\"/>\n {{ item.name }}\n </a>\n </li>\n } @else if (item.type === 'SECTION') {\n <li class=\"section\">\n\n <div class=\"section-title\" (click)=\"toggleSection(item.name)\">\n <fa-icon\n [icon]=\"isSectionOpen(item) ? faChevronUp : faChevronDown\"\n class=\"chevron\"\n />\n <span>{{ item.name }}</span>\n </div>\n\n @if (isSectionOpen(item)) {\n <ul class=\"section-entries\">\n @for (entry of item.entries; track entry.name) {\n <li>\n <a\n [routerLink]=\"[item.url + entry.url]\"\n (click)=\"handleClick()\"\n class=\"entry\"\n [ngClass]=\"{\n activeRoute: isActiveRoute('/' + item.url + entry.url)\n }\"\n >\n <fa-icon [icon]=\"faArrowRight\" class=\"icon\"/>\n {{ entry.name }}\n </a>\n </li>\n }\n <hr/>\n </ul>\n }\n </li>\n }\n }\n\n </ul>\n</aside>\n","// src/lib/config/rdnd-config.token.ts\nimport { InjectionToken } from '@angular/core';\n// @ts-ignore\nimport { LoaderConfig } from '../types/loader-config';\n\nexport const RDND_CONFIG = new InjectionToken<LoaderConfig>('RDND_CONFIG');\n","import {Component, Inject, Input, Optional} from '@angular/core';\nimport { RDND_CONFIG } from '../../config/rdnd-config.token';\nimport {LoaderConfig, LoaderType} from \"../../types/Loader-config.types\";\n\n@Component({\n selector: 'rdnd-loader',\n standalone: true,\n imports: [],\n templateUrl: './rdnd-loader.component.html',\n styleUrl: './rdnd-loader.component.scss'\n})\nexport class RdndLoaderComponent {\n\n @Input() show: boolean = false;\n\n loaderType: LoaderType = 'gentera';\n\n constructor(@Optional() @Inject(RDND_CONFIG) config: LoaderConfig | null) {\n const type = config?.loader?.loaderType;\n if (type === 'gentera' || type === 'compartamos') {\n this.loaderType = type;\n }\n }\n\n\n\n}\n","@if (show) {\n <div class=\"loader\">\n @if (loaderType === 'compartamos') {\n <div class=\"svg-wrapper\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" xmlns:cc=\"http://creativecommons.org/ns#\"\n xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:inkscape=\"http://www.inkscape.org/namespaces/inkscape\"\n xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n xmlns:sodipodi=\"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd\" xmlns:svg=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 1629.3 720\">\n <defs>\n <style>\n .cls-1 {\n fill: #fff;\n }\n\n .cls-2 {\n fill: #8d104b;\n }\n\n .cls-3 {\n fill: #f7961c;\n }\n </style>\n </defs>\n <!-- Generator: Adobe Illustrator 28.7.1, SVG Export Plug-In . SVG Version: 1.2.0 Build 142) -->\n <g>\n <g id=\"Capa_1\">\n <path id=\"path16\" class=\"cls-3\"\n d=\"M664.5,84.3c-7,1.3-43.6-10.4-43.6-10.4,0,0,26.2,19.3,28.4,22.7,2.2,3.5-7.9,33-7.9,33,0,0,19.3-22.3,26.6-29,4.4-4,14.6-2.1,19.5-.9,4.9,1.2,53.4,14.5,101.8-14.4,31.6-18.9,31.5-23,31.5-23,0,0-26.5-21.5-69.6-16.6-43.2,5-79.8,37.1-86.8,38.4\"/>\n <path id=\"path18\" class=\"cls-2\"\n d=\"M507.7,668.9c-8.4,2.3-52.7,1.7-52.7,1.7,0,0,31,14,33.5,17,2.4,2.9-10.4,32.4-10.4,32.4,0,0,20.7-21.3,29.6-28.8,5.4-4.5,17.1-5.9,26.7-6.7,5.9-.5,63.8,5.2,122.8-29.6,38.5-22.7,38.5-26.6,38.5-26.6,0,0-37.8-20.3-89.8-8.8-51.9,11.5-89.7,47.1-98.1,49.5\"/>\n <path id=\"path20\" class=\"cls-3\"\n d=\"M1368.2,125.5c-11.8,2.3-72.1-3.5-72.1-3.5,0,0,40.7,22.6,43.8,26.9,3,4.2-17.9,43.1-17.9,43.1,0,0,30.6-26.8,43.7-35.9,7.9-5.6,24.1-6.1,37.1-6.1s86.5,14.3,171-26.6c55.2-26.8,55.5-32.1,55.5-32.1,0,0-49.3-32-121.6-22.2-72.2,9.9-127.7,54.2-139.5,56.5\"/>\n <path id=\"path22\" class=\"cls-3\"\n d=\"M77.2,575.8c-12.3,2.6-77.2-17-77.2-17,0,0,46.9,33.2,50.8,39.3,3.8,6.1-13,58.5-13,58.5,0,0,33.4-39.9,46.1-51.8,7.7-7.3,25.8-4.1,34.4-2.1,8.7,1.9,94.7,24,179.3-28.3,55.2-34.1,54.9-41.4,54.9-41.4,0,0-47.3-37.2-123.3-27.2-76,10-139.7,67.8-152.1,70.3\"/>\n <path id=\"path24\" class=\"cls-2\"\n d=\"M1194.7,50.2c-7.7,1.5-45.8-10.6-45.8-10.6,0,0,27.1,19.3,28.4,23,1.5,4.1-10.4,31.9-10.4,31.9,0,0,22.4-22,30.8-28.6,5.1-4,16.2-2.5,21.5-1.5,5.4,1,59.2,12.3,113.8-17.2,32.8-17.7,34.9-22.9,34.9-22.9,0,0-27.9-19.8-75.7-13.6-47.7,6.1-89.7,38.1-97.5,39.6\"/>\n <path id=\"path26\" class=\"cls-1\"\n d=\"M1062.8,620.1c0,38.8-36.7,62.4-79.1,62.4s-31.5-2.1-50.6-2.1l31.5-198.2c20.9,0,26.7-2.6,46.7-2.6,37.1,0,54.7,19.4,54.7,43.5s-19.4,43.2-44.7,49.1c23,5,41.5,26.1,41.5,47.9M1040.8,620.7c0-19.1-13.8-38.3-56.4-38.3s-11.2.3-17.7.9l-11.8,74.1c-.9,5.6,7.4,8,29.7,8s56.2-17.1,56.2-44.8M1044.6,525.4c0-16.8-12.1-29.5-36.8-29.5s-26.2,2.4-27.3,8.2c-4.4,22.1-8.8,48.3-11.2,62.1h11.2c46.7-1.2,64.1-18,64.1-40.9\"/>\n <path id=\"path28\" class=\"cls-1\"\n d=\"M1171.1,680.4c-2.3-9.4-2.3-17.7-1.5-27.3-9.7,14.1-25,30.2-47.4,30.2s-38.5-20.8-38.5-45.8c0-41.5,32.6-95.6,79.1-95.6s20,4.7,39.4,4.7c-10.3,49.7-16.8,97.6-16.8,118.5s.5,12.4,1.2,15.3h-15.6.1ZM1162,557.4c-31.8,0-58.5,39.7-58.5,78.2s8,31.3,22,31.3c25.3,0,44.1-32.1,49.5-63.3l5.9-34.1c.9-6.7-3.2-12-18.8-12\"/>\n <path id=\"path30\" class=\"cls-1\"\n d=\"M1247.1,574.5l-16.8,105.8h-17.6l20.9-131.1c25.9,0,32.4-7.4,52.7-7.4s40.5,9.1,40.5,34.4-.3,7-.9,10.9l-14.6,93.2h-17.7l14.1-88.8c.6-3.5.9-6.8.9-9.7,0-17.1-7.3-24.4-26.7-24.4s-33.5,9.4-34.7,17.1\"/>\n <path id=\"path32\" class=\"cls-1\"\n d=\"M1418.6,557.7c-33.2,0-56.2,28.2-56.2,72.7s15,38.5,37.4,38.5,17-.8,24.1-2.6l-2.3,15.6c-7.6,1.7-15,2.6-21.7,2.6-35,0-57.2-17.9-57.2-53.8s32.1-88.8,78.9-88.8,14.7.5,21.7,1.8l-2.6,17.3c-7.3-2.3-15-3.2-22-3.2\"/>\n <path id=\"path34\" class=\"cls-1\"\n d=\"M1560.5,593.9c0,46.8-27.1,90.6-68.9,90.6s-45-18.8-45-52.1c0-47.1,27.6-90.6,68.8-90.6s45.1,19.1,45.1,52M1465.7,631.2c0,26.1,9.5,37.9,28.2,37.9s47.3-32.6,47.3-73.5-8.5-38.2-27.6-38.2c-27.1,0-48,33-48,73.8\"/>\n <path id=\"path36\" class=\"cls-1\"\n d=\"M179.3,400.2c-12.4,5.9-27.1,8.9-41.2,8.9-54.4,0-101.3-28.8-101.3-102.7s48.3-104.9,102.8-104.9,28,1.8,39.8,5.3v34.5c-12-5-25.4-8-40-8-38.3,0-65.7,19.4-65.7,72.2s29.7,71.6,65.9,71.6,27.4-2.4,39.8-7.7v30.9\"/>\n <path id=\"path38\" class=\"cls-1\"\n d=\"M228.5,335.5c0,29.7,12.9,44.4,29.1,44.4s28-13.5,28-44.4-13-44.2-29.5-44.2-27.6,13.2-27.6,44.2M320.3,335.5c0,43.2-25,73.3-63.6,73.3s-63.3-30.1-63.3-73.3,25.3-72.7,63.3-72.7,63.6,28.8,63.6,72.7\"/>\n <path id=\"path40\" class=\"cls-1\"\n d=\"M522.5,404.6h-32.5v-88c0-18.2-7-25-21.7-25s-21.2,3.5-21.2,10.2c.3,3.2.9,7.4.9,11.8v91h-32.4v-88c0-18.5-7.4-25-20-25s-21.8,2.9-21.8,12.9v100.1h-32.4v-134.9c28.6,0,37.7-6.5,58.9-6.5s26.8,4.4,33.8,10.6c10.6-6.8,24.1-10.6,41.5-10.6,28,0,46.9,12.7,46.9,48.9v92.5\"/>\n <path id=\"path42\" class=\"cls-1\"\n d=\"M597.2,290.4c-10.8,0-17.8,4.7-17.8,9.5v70.6c0,5,7.8,9.4,17.8,9.4,20.5,0,32.3-13.5,32.3-44.2s-11.8-45.3-32.3-45.3M546.3,477.9c.6-30.9,1.2-61.5,1.2-100.1v-110.4c20,0,32.7-4.7,52.3-4.7,35.7,0,65.4,25.6,65.4,73.6s-31.8,71.5-61.2,71.5-20-3-24.5-6.2v76.2h-33.2\"/>\n <path id=\"path44\" class=\"cls-1\"\n d=\"M753,337.8c-26.8.8-40.6,9.1-40.6,24.7s8.3,18,20.9,18,17.4-3.2,18.6-7.4c.9-4.4,1.1-17.6,1.1-35.3M753,313.7v-5.3c0-11.2-7.6-17.9-21.4-17.9s-28.3,2.7-43,9.4v-30.3c15.3-4.4,29.1-6.7,45.6-6.7,31.8,0,51.5,12.9,51.5,45.3s-.9,42.4-.9,64.2.6,24.2,1.5,31.5c-23.6,0-36.2,3.8-56.2,3.8-34.1,0-51.2-15.8-51.2-42.6s22.4-49.8,74.1-51.2\"/>\n <path id=\"path46\" class=\"cls-1\"\n d=\"M810.8,404.6v-137.8h30.6v13c8.2-13,22.1-17.4,35.6-17.4s10.5.6,15,1.2v34.1c-5.6-2.6-14.5-3.8-22.7-3.8-13.2,0-25,5.3-25.7,16.8-.6,23.2-.6,58.8-.6,93.9h-32.4\"/>\n <path id=\"path48\" class=\"cls-1\"\n d=\"M937.9,266.8h39.7v28.3h-39.7c0,29.1-.3,49.2-.3,70.7s6.2,14.4,17.1,14.4,15.9-1.5,22.9-5.3v28.5c-9.7,3.6-19.7,5.3-31.5,5.3-23.5,0-40.9-10.9-40.9-36.5v-130.4l32.7-19.4v44.4\"/>\n <path id=\"path50\" class=\"cls-1\"\n d=\"M1068.6,337.8c-26.8.8-40.6,9.1-40.6,24.7s8.2,18,20.9,18,17.3-3.2,18.5-7.4c.9-4.4,1.2-17.6,1.2-35.3M1068.6,313.7v-5.3c0-11.2-7.7-17.9-21.5-17.9s-28.3,2.7-43,9.4v-30.3c15.3-4.4,29-6.7,45.6-6.7,31.8,0,51.5,12.9,51.5,45.3s-.9,42.4-.9,64.2.6,24.2,1.5,31.5c-23.5,0-36.2,3.8-56.3,3.8-34.1,0-51.2-15.8-51.2-42.6s22.4-49.8,74.2-51.2\"/>\n <path id=\"path52\" class=\"cls-1\"\n d=\"M1307.8,404.6h-32.4v-88c0-18.2-7.1-25-21.8-25s-21.2,3.5-21.2,10.2c.2,3.2.9,7.4.9,11.8v91h-32.4v-88c0-18.5-7.4-25-20-25s-21.8,2.9-21.8,12.9v100.1h-32.3v-134.9c28.5,0,37.7-6.5,58.8-6.5s26.8,4.4,33.9,10.6c10.6-6.8,24.1-10.6,41.5-10.6,28,0,46.8,12.7,46.8,48.9v92.5\"/>\n <path id=\"path54\" class=\"cls-1\"\n d=\"M1363,335.5c0,29.7,13,44.4,29.2,44.4s27.9-13.5,27.9-44.4-12.9-44.2-29.4-44.2-27.8,13.2-27.8,44.2M1454.9,335.5c0,43.2-25,73.3-63.6,73.3s-63.3-30.1-63.3-73.3,25.4-72.7,63.3-72.7,63.6,28.8,63.6,72.7\"/>\n <path id=\"path56\" class=\"cls-1\"\n d=\"M1522.2,262.7c10.9,0,20,.8,31.8,4.1v30.7c-13.8-5.6-23.6-7.1-33-7.1s-18.2,4.7-18.2,11.8c0,21.2,57.6,19.1,57.6,61.5s-16.5,45-54.7,45-24.4-1.2-35.9-4.7v-28.8c11.2,3.8,24.4,5.6,33.8,5.6,15.6,0,23.5-5.9,23.5-15,0-23.3-58-19.7-58-60.1s20.1-43,53-43\"/>\n </g>\n </g>\n </svg>\n </div>\n } @else {\n <div class=\"svg-wrapper\">\n <svg version=\"1.1\" id=\"Capa_1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n x=\"0px\" y=\"0px\"\n viewBox=\"0 0 554 481\" style=\"enable-background:new 0 0 554 481;\" xml:space=\"preserve\">\n<style type=\"text/css\">\n\t.st0 {\n fill: none;\n }\n\n .st1 {\n fill: #E85E16;\n }\n\n .st2 {\n fill: #9D0046;\n }\n\n .st3 {\n fill: #592275;\n }\n\n .st4 {\n fill: #CD0058;\n }\n\n .st5 {\n fill: #00587F;\n }\n\n .st6 {\n fill: #229B7D;\n }\n</style>\n <rect class=\"st0\" width=\"554\" height=\"481\"/>\n <g>\n\t<path id=\"naranja\" class=\"st1\" d=\"M277.4,128.4c74.7-40.1,146.4-40,154.5-40c8.1,48,13.7,67-7.9,121.3\n\t\tc-24.2,43.8-169.9,71.1-169.9,71.1l0,0c2.7-5.3-3.7-67.7-3.7-67.7S248.6,141.8,277.4,128.4\"/>\n <path id=\"roja\" class=\"st2\" d=\"M449.8,205.7c-2.6,16-11.6,58-43.6,101.2s-99.9,85.5-138,96s-35.3,8-51.6,8\n\t\tc-10-28.6-11.3-33.9-4.9-81.3s22.9-61.8,56.5-80c24.4-10.7,48.7-17.3,73.1-25.3C379.4,213.7,417.4,208.3,449.8,205.7\"/>\n <path id=\"morada\" class=\"st3\" d=\"M236.8,95.1c18.8-8.3,43.1-16.7,70-25.2c-7.8,18.8-10.1,42.8-15.2,66.9\n\t\tc-6.6,43.2-12.8,104.4-40.2,136.6C217.9,313,127.3,348.2,127,347.6l-2.5,0c-14.4-50.4-20.6-93-15.7-125\n\t\tC116,166.4,150.6,131.2,236.8,95.1L236.8,95.1\"/>\n <path id=\"fushia\" class=\"st4\" d=\"M425.5,246h13.6c-13.5,37.3-31.4,76.2-72,105.6c-69,48.9-98.8,50.7-98.8,50.7S341.4,254,425.5,246\n\t\t\"/>\n <path id=\"azul\" class=\"st5\" d=\"M122.5,344.1L122.5,344.1c13.6,45.3,48.8,69.3,100.3,66.6c24.4-48,44-108.8,52.1-164.7\n\t\tC218,272.7,165.9,312.1,122.5,344.1\"/>\n <path id=\"verde\" class=\"st6\" d=\"M277,232.3c5.4-37.3,10.8-72,16.2-103.9C206.5,171,144.2,251,122.5,344.3\n\t\tc43.4-32,95.2-70.3,152.1-97\"/>\n</g>\n</svg>\n\n </div>\n }\n </div>\n}\n","import {Component, Input} from '@angular/core';\nimport {NgClass} from \"@angular/common\";\n\n@Component({\n selector: 'rdnd-active-indicator',\n standalone: true,\n imports: [\n NgClass\n ],\n templateUrl: './rdnd-active-indicator.component.html',\n styleUrl: './rdnd-active-indicator.component.css'\n})\nexport class RdndActiveIndicator {\n @Input() isActive: boolean = false;\n @Input() activeDisplay?: string = \"Activo\";\n @Input() inactiveDisplay?: string = \"Inactivo\";\n\n}\n","<div class=\"rdnd-active-indicator-wrapper\" [ngClass]=\"{\n active: isActive,\n inactive: !isActive\n}\">\n <span>\n @if (isActive) {\n {{ activeDisplay }}\n } @else {\n {{ inactiveDisplay }}\n }\n </span>\n</div>\n","import {colors} from './colors';\n\nexport const themes = {\n disabled: {\n default: colors.disabled,\n hover: colors.disabled,\n border: 'transparent',\n active: colors.disabled,\n fontColor: colors.disabledText,\n },\n magenta: {\n default: `linear-gradient(to right, ${colors.magentaStart}, ${colors.magentaEnd})`,\n hover: `linear-gradient(to right, ${colors.magentaEnd}, ${colors.magentaStart})`,\n //default: `${colors.magentaStart}`,\n border: 'transparent',\n active: colors.magentaStart, // Color al hacer clic\n fontColor: colors.white, // Texto en blanco\n },\n magentaSolid: {\n default: `${colors.magentaStart}`,\n hover: `${colors.magentaEnd}`,\n border: 'transparent',\n active: colors.magentaStart, // Color al hacer clic\n fontColor: colors.white, // Texto en blanco\n },\n magentaNormal: {\n default: `${colors[\"magenta-normal\"]}`,\n hover: `${colors.magentaEnd}`,\n border: 'transparent',\n active: colors[\"magenta-normal\"], // Color al hacer clic\n fontColor: colors.white, // Texto en blanco\n },\n gray: {\n default: `${colors[\"light-gray\"]}`,\n hover: `linear-gradient(to right, ${colors.magentaEnd}, ${colors.magentaStart})`,\n //default: `${colors.magentaStart}`,\n border: 'transparent',\n active: colors.magentaStart, // Color al hacer clic\n fontColor: colors.white, // Texto en blanco\n },\n green: {\n default: `${colors[\"green-medium\"]}`,\n hover: colors.green,\n border: 'transparent',\n active: colors[\"green-xs-dark\"],\n fontColor: colors.white,\n },\n red: {\n default: `${colors[\"red-medium\"]}`,\n hover: colors.red,\n border: 'transparent',\n active: colors[\"red\"],\n fontColor: colors.white,\n },\n purple: {\n default: `${colors['blue-info']}`,\n hover: colors[\"purple-light\"],\n border: 'transparent',\n active: colors.purple,\n fontColor: colors.white,\n },\n yellow: {\n default: `${colors['yellow-normal']}`,\n hover: colors[\"yellow\"],\n border: 'transparent',\n active: colors[\"yellow-light\"],\n fontColor: colors.white,\n },\n blue: {\n default: `${colors[\"blue\"]}`,\n hover: colors[\"blue-light\"],\n border: 'transparent',\n active: colors[\"blue-dark\"],\n fontColor: colors.white,\n },\n\n borderedMagenta: {\n default: 'transparent',\n hover: 'transparent',\n border: colors.magentaStart,\n active: 'transparent',\n fontColor: colors.magentaStart\n },\n borderedBlack: {\n default: 'white',\n hover: 'white',\n border: colors.black,\n active: 'white',\n fontColor: colors.black\n },\n\n transparentMagenta: {\n default: 'transparent',\n hover: 'transparent',\n border: 'transparent',\n active: 'transparent',\n fontColor: colors.magentaStart\n },\n transparentBlack: {\n default: 'transparent',\n hover: 'transparent',\n border: 'transparent',\n active: 'transparent',\n fontColor: colors.black\n },\n transparentGreen: {\n default: 'transparent',\n hover: 'transparent',\n border: 'transparent',\n active: 'transparent',\n fontColor: colors[\"green-medium\"]\n },\n\n};\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\n\nexport interface ButtonServiceType {\n enable: () => void;\n disable: () => void;\n disabled$: Observable<boolean>\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ButtonService {\n private buttonsState: { [id: string]: BehaviorSubject<boolean> } = {};\n\n private ensureButtonExists(id: string): void {\n if (!this.buttonsState[id]) {\n this.buttonsState[id] = new BehaviorSubject<boolean>(false);\n }\n }\n\n useButton(id: string): ButtonServiceType {\n this.ensureButtonExists(id);\n\n return {\n disabled$: this.buttonsState[id].asObservable(),\n enable: () => this.buttonsState[id].next(false),\n disable: () => this.buttonsState[id].next(true),\n };\n }\n}\n","import { Component, Input, Output, EventEmitter, OnInit, OnDestroy } from '@angular/core';\nimport { IconDefinition } from '@fortawesome/fontawesome-svg-core';\nimport {Observable, Subscription} from 'rxjs';\nimport {FaIconComponent} from \"@fortawesome/angular-fontawesome\";\nimport {NgClass, NgIf} from \"@angular/common\";\n// @ts-ignore\nimport {themes} from \"../../styles/themes\";\nimport {ButtonService, ButtonServiceType} from \"../../hooks/button.service\";\n// @ts-ignore\n\n\n\n@Component({\n selector: 'rdnd-button',\n templateUrl: './button.component.html',\n standalone: true,\n imports: [\n FaIconComponent,\n NgIf,\n NgClass\n ],\n styleUrls: ['./button.component.scss']\n})\nexport class RdndButton implements OnInit, OnDestroy {\n @Input() id!: string;\n @Input() icon?: IconDefinition;\n @Input() text: string = 'Enviar';\n @Input() theme: any = themes.magenta;\n @Input() size: 'contained' | 'full' = 'full';\n @Input() type: 'button' | 'submit' | 'reset' = 'submit';\n @Input() borders: boolean = true;\n @Input() disabled: boolean = false;\n\n @Output() callback: EventEmitter<void> = new EventEmitter<void>();\n\n protected readonly themes = themes;\n private subscription!: Subscription;\n hoverBackgroundColor: string = this.theme.default;\n\n buttonControl!: ButtonServiceType ;\n\n constructor(private buttonService: ButtonService) {\n }\n\n ngOnInit(): void {\n this.buttonControl = this.buttonService.useButton(this.id);\n\n this.subscription = new Subscription( () =>\n this.buttonControl.disabled$.subscribe((isDisabled: boolean) => {\n this.disabled = isDisabled;\n })\n )\n\n }\n\n ngOnDestroy(): void {\n if(this.subscription){\n this.subscription.unsubscribe();\n }\n }\n\n handleClick(event: MouseEvent): void {\n event.stopPropagation();\n if (!this.disabled && this.type !== 'submit') {\n this.callback.emit();\n }\n }\n\n onMouseEnter() {\n if (!this.disabled) {\n this.hoverBackgroundColor = this.theme.hover;\n }\n }\n\n onMouseLeave() {\n if (!this.disabled) {\n this.hoverBackgroundColor = this.theme.default;\n }\n }\n\n protected readonly event = event;\n}\n","<button\n [ngClass]=\"{\n 'full': size === 'full',\n 'contained': size === 'contained',\n 'bordered': borders,\n 'disabled': disabled\n }\"\n [style.background]=\"disabled ? themes.disabled.default : theme.default\"\n [style.color]=\"theme.fontColor\"\n [style.border]=\"borders ? '1px solid ' + theme.border : 'none'\"\n [style.cursor]=\"disabled ? 'not-allowed' : 'pointer'\"\n [attr.type]=\"type\"\n [disabled]=\"disabled\"\n\n (mouseleave)=\"onMouseLeave()\"\n (click)=\"handleClick($event)\"\n (mouseenter)=\"onMouseEnter()\"\n>\n <fa-icon *ngIf=\"icon\" [icon]=\"icon\" class=\"icon\"></fa-icon>\n {{ text }}\n</button>\n","import { Injectable } from '@angular/core';\nimport {BehaviorSubject, Observable} from 'rxjs';\nimport { FormControl, ValidationErrors } from '@angular/forms';\n\nexport type InputStateType = {\n isValid: BehaviorSubject<boolean>;\n valid: Observable<boolean>;\n errorMessage: Observable<string | null>;\n setValid: (isValid: boolean) => void;\n setErrorMessage: (message: string | null) => void;\n};\n\n@Injectable({\n providedIn: 'root',\n})\nexport class InputService {\n\n private inputState: {\n [id: string]: {\n valid$: BehaviorSubject<boolean>;\n errorMessage$: BehaviorSubject<string | null>;\n };\n } = {};\n\n private ensureInputExists(id: string): void {\n if (!this.inputState[id]) {\n this.inputState[id] = {\n valid$: new BehaviorSubject<boolean>(false),\n errorMessage$: new BehaviorSubject<string | null>(null),\n };\n }\n }\n\n useInput(id: string): InputStateType {\n this.ensureInputExists(id);\n\n return {\n isValid: this.inputState[id].valid$,\n valid: this.inputState[id].valid$.asObservable(),\n errorMessage: this.inputState[id].errorMessage$.asObservable(),\n setValid: (isValid: boolean) => this.inputState[id].valid$.next(isValid),\n setErrorMessage: (message: string | null) =>\n this.inputState[id].errorMessage$.next(message),\n };\n }\n\n updateInputState(control: FormControl, id: string): void {\n this.ensureInputExists(id);\n\n const errors: ValidationErrors | null = control.errors;\n\n if (control.valid) {\n this.inputState[id].valid$.next(true);\n this.inputState[id].errorMessage$.next(null);\n } else {\n this.inputState[id].valid$.next(false);\n this.inputState[id].errorMessage$.next(this.getErrorMessage(errors));\n }\n }\n\n private getErrorMessage(errors: ValidationErrors | null): string | null {\n if (!errors) return null;\n\n if (errors['required']) return 'Este campo es obligatorio';\n if (errors['minlength'])\n return `Mínimo ${errors['minlength'].requiredLength} caracteres requeridos`;\n if (errors['maxlength'])\n return `Máximo ${errors['maxlength'].requiredLength} caracteres permitidos`;\n if (errors['email']) return 'Formato de correo inválido';\n\n return null;\n }\n}\n","import {Component, Input, Output, EventEmitter, OnInit, OnChanges, SimpleChanges} from '@angular/core';\nimport {FormControl, ReactiveFormsModule, ValidationErrors, ValidatorFn, Validators} from '@angular/forms';\nimport {faEyeSlash} from '@fortawesome/free-solid-svg-icons';\nimport {NgClass, NgIf} from '@angular/common';\nimport {FontAwesomeModule} from '@fortawesome/angular-fontawesome';\nimport {InputService} from \"../../hooks/input.service\";\n\n\n@Component({\n selector: 'rdnd-input',\n templateUrl: './input.component.html',\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n FontAwesomeModule,\n ReactiveFormsModule\n ],\n styleUrls: ['./input.component.scss']\n})\nexport class RdndInput implements OnInit, OnChanges {\n @Input() id!: string;\n @Input() name!: string;\n @Input() type: 'text' | 'password' | 'number' = 'text';\n @Input() placeholder: string = '';\n @Input() showLabel: boolean = false;\n @Input() control?: FormControl;\n @Input() value: string = '';\n @Input() validators: ValidatorFn[] = [];\n @Input() disabled: boolean = false;\n\n @Output() valueChange = new EventEmitter<string>();\n @Output() onKeyDown = new EventEmitter<KeyboardEvent>();\n @Output() onPaste = new EventEmitter<ClipboardEvent>();\n @Output() onFocus = new EventEmitter<FocusEvent>();\n @Output() onBlur = new EventEmitter<FocusEvent>();\n\n faEyeSlash = faEyeSlash;\n showPassword: boolean = false;\n showError: boolean = false;\n\n constructor(private inputService: InputService) {\n }\n\n\n ngOnInit() {\n if (this.control) {\n this.control.addValidators(this.validators);\n this.control.valueChanges.subscribe((value) => {\n this.valueChange.emit(value);\n this.inputService.updateInputState(this.control!, this.id);\n });\n } else {\n this.control = new FormControl(this.value, this.validators);\n this.control.valueChanges.subscribe((value) => {\n this.valueChange.emit(value);\n this.inputService.updateInputState(this.control!, this.id);\n });\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (this.control) {\n this.control.addValidators(this.validators);\n this.control.valueChanges.subscribe((value) => {\n this.valueChange.emit(value);\n this.inputService.updateInputState(this.control!, this.id);\n });\n } else {\n this.control = new FormControl(this.value, this.validators);\n this.control.valueChanges.subscribe((value) => {\n this.valueChange.emit(value);\n this.inputService.updateInputState(this.control!, this.id);\n });\n }\n }\n\n\n\n getErrorMessage(): string | null {\n if (this.control && this.control.errors) {\n const errorKeys = Object.keys(this.control.errors);\n if (errorKeys.length > 0) {\n const firstErrorKey = errorKeys[0];\n return (this.control.errors as ValidationErrors)[firstErrorKey];\n }\n }\n return null;\n }\n\n toggleErrorDisplay() {\n this.showError = !this.showError;\n }\n\n hasError(): boolean {\n return !!this.control && this.control.invalid && (this.control.dirty || this.control.touched);\n }\n\n handleTogglePassword(): void {\n this.showPassword = !this.showPassword;\n }\n\n handleChange(event: Event) {\n const e = event.target as HTMLInputElement\n this.valueChange.emit(e.value);\n }\n\n handleKeyDown(event: KeyboardEvent): void {\n const allowRegex = /^[a-zA-Z!@#$%^&*()_+\\-=\\[\\]{};':\"\\\\|,.<>\\/?]*$/\n\n if (\n this.type === 'number' && !(\n ['Backspace', 'Shift', 'ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown'].includes(event.key)\n ) && !(event.altKey || event.ctrlKey || event.metaKey || event.shiftKey)\n ) {\n event.key.match(allowRegex) ? event.preventDefault() : this.onKeyDown.emit(event);\n } else {\n this.onKeyDown.emit(event);\n }\n }\n\n handlePaste(event: ClipboardEvent): void {\n this.onPaste.emit(event);\n }\n\n handleFocus(event: FocusEvent): void {\n this.onFocus.emit(event);\n }\n\n handleBlur(event: FocusEvent): void {\n this.onBlur.emit(event);\n }\n}\n","<div [ngClass]=\"{ 'disabled': disabled }\" class=\"input-container\">\n <!-- Ícono de error que aparece por encima del campo si hay error -->\n <span *ngIf=\"hasError()\" class=\"error-icon\" (click)=\"toggleErrorDisplay()\">ⓘ</span>\n\n <!-- Botón de mostrar/ocultar contraseña centrado verticalmente -->\n <button *ngIf=\"type === 'password'\" type=\"button\" (click)=\"handleTogglePassword()\" class=\"toggle-button\">\n <fa-icon [icon]=\"faEyeSlash\" class=\"icon\" [class.active]=\"showPassword\"></fa-icon>\n </button>\n\n @if (showLabel) {\n <label class=\"text-small dark-gray\">{{ placeholder }}</label>\n }\n\n\n <!-- Input compatible con FormControl o signals -->\n <input\n *ngIf=\"control; else signalInput\"\n [type]=\"type === 'password' && showPassword ? 'text' : type\"\n [formControl]=\"control\"\n [placeholder]=\"showLabel ? '' : placeholder\"\n [disabled]=\"disabled\"\n (keydown)=\"handleKeyDown($event)\"\n (paste)=\"handlePaste($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\"\n [ngClass]=\"{ 'error-border': hasError() }\"\n />\n\n <!-- Input para signals -->\n <ng-template #signalInput>\n <input\n [type]=\"type === 'password' && showPassword ? 'text' : type\"\n [value]=\"value\"\n [placeholder]=\"showLabel ? '' : placeholder\"\n [disabled]=\"disabled\"\n (input)=\"handleChange($event)\"\n (keydown)=\"handleKeyDown($event)\"\n (paste)=\"handlePaste($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\"\n [ngClass]=\"{ 'error-border': false }\"\n />\n </ng-template>\n\n\n <!-- Mensaje de error que aparece solo cuando se clickea en el ícono de error -->\n <div *ngIf=\"control?.invalid && control?.dirty && showError\" class=\"error-message\">\n {{ getErrorMessage() }}\n </div>\n</div>\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {IconDefinition} from '@fortawesome/free-solid-svg-icons';\nimport {themes} from \"../../styles/themes\";\nimport {FontAwesomeModule} from '@fortawesome/angular-fontawesome';\nimport {RdndButton} from \"../button/button.component\";\nimport {RdndScreenTitle} from \"../screen-title/screen-title.component\";\n\n@Component({\n selector: 'rdnd-modal',\n standalone: true,\n imports: [\n CommonModule,\n FontAwesomeModule,\n RdndButton,\n RdndScreenTitle,\n ],\n templateUrl: './modal.component.html',\n styleUrl: './modal.component.scss'\n})\nexport class RdndModal {\n @Input() title: string = '';\n @Input() type: 'success' | 'error' | 'question' | 'warning' | 'info' = 'success';\n @Input() theme: any = themes.magenta;\n @Input() confirmText: string = '';\n @Input() cancelText: string = '';\n @Output() close = new EventEmitter<boolean>();\n\n protected readonly themes = themes;\n\n icon?: IconDefinition;\n content: string = '';\n\n closeModal(result: boolean) {\n this.close.emit(result);\n }\n\n constructor() {\n }\n\n}\n","<div class=\"modal-wrapper\">\n\n <div class=\"container\" (click)=\"$event.stopPropagation()\">\n\n <div class=\"content\">\n\n @if (icon != undefined) {\n <fa-icon [icon]=\"icon\" class=\"icon\" [style.color]=\"theme.default\"\n />\n }\n\n <span class=\"subtitle align-center\">{{ title }}</span>\n\n <div class=\"text align-center\" [innerHTML]=\"content\">\n </div>\n\n\n @if (type !== 'question') {\n <rdnd-button\n [id]=\"'btn-modal'\"\n [type]=\"'button'\"\n (callback)=\"closeModal(true)\"\n [text]=\"'Aceptar'\"\n [theme]=\"theme\"\n [size]=\"'full'\"\n />\n } @else {\n <rdnd-button\n [id]=\"'btn-modal-accept'\"\n [type]=\"'button'\"\n (callback)=\"closeModal(true)\"\n [text]=\"confirmText\"\n [theme]=\"theme\"\n [size]=\"'full'\"\n />\n <rdnd-button\n [id]=\"'btn-modal-cancel'\"\n [type]=\"'button'\"\n (callback)=\"closeModal(false)\"\n [text]=\"cancelText\"\n [theme]=\"themes.borderedMagenta\"\n [size]=\"'full'\"\n />\n }\n\n </div>\n\n\n </div>\n</div>\n\n","import {\n Injectable,\n ComponentRef,\n ApplicationRef,\n Injector,\n ViewContainerRef\n} from '@angular/core';\nimport {RdndModal} from \"../components/modal/modal.component\";\nimport {\n faCircleCheck,\n faCircleInfo,\n faCircleQuestion,\n faCircleXmark,\n IconDefinition\n} from '@fortawesome/free-solid-svg-icons';\nimport {faTriangleExclamation} from \"@fortawesome/free-solid-svg-icons/faTriangleExclamation\";\nimport {rdndThemes} from \"../../public-api\";\nimport {faQuestion} from \"@fortawesome/free-solid-svg-icons/faQuestion\";\nimport {faTable} from \"@fortawesome/free-solid-svg-icons/faTable\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ModalService {\n\n private modalRef: ComponentRef<RdndModal> | null = null;\n private viewContainerRef!: ViewContainerRef\n\n constructor(\n private appRef: ApplicationRef,\n private injector: Injector\n ) { }\n\n\n setViewContainerRef(vcr: ViewContainerRef) {\n this.viewContainerRef = vcr;\n }\n\n\n openModal(\n title: string,\n content: string,\n type: 'success' | 'error' | 'question' | 'warning' | 'info' = 'success',\n confirmText = 'Continuar',\n cancelText = 'Cancelar'\n ): Promise<boolean> {\n if (this.modalRef || !this.viewContainerRef) return Promise.resolve(false);\n\n this.modalRef = this.viewContainerRef.createComponent(RdndModal);\n\n this.modalRef.instance.title = title;\n this.modalRef.instance.type = type;\n this.modalRef.instance.theme = this.getStyleTheme(type);\n this.modalRef.instance.content = content;\n this.modalRef.instance.icon = this.getIcon(type);\n this.modalRef.instance.confirmText = confirmText;\n this.modalRef.instance.cancelText = cancelText;\n\n const result = new Promise<boolean>((resolve) => {\n this.modalRef!.instance.close.subscribe((res: boolean) => {\n this.closeModal();\n resolve(res);\n });\n });\n\n this.appRef.attachView(this.modalRef.hostView);\n const domElem = (this.modalRef.hostView as any).rootNodes[0] as HTMLElement;\n document.body.appendChild(domElem);\n\n return result;\n }\n\n getStyleTheme = (theme: 'success' | 'error' | 'question' | 'warning' | 'info') => {\n switch (theme) {\n case \"success\":\n return rdndThemes.green;\n case 'error':\n return rdndThemes.magentaNormal;\n case 'question':\n return rdndThemes.purple\n case 'warning':\n return rdndThemes.yellow\n case 'info':\n return rdndThemes.purple\n }\n }\n\n closeModal(): void {\n if (this.modalRef) {\n this.appRef.detachView(this.modalRef.hostView);\n this.modalRef.destroy();\n this.modalRef = null;\n }\n }\n\n getIcon(theme: 'success' | 'error' | 'question' | 'warning' | 'info'): IconDefinition {\n switch (theme) {\n case 'error':\n return faTriangleExclamation;\n case 'question':\n return faCircleQuestion\n case \"success\":\n return faCircleCheck\n case \"warning\":\n return faTriangleExclamation;\n case \"info\":\n return faCircleInfo;\n }\n\n }\n\n}\n","import {Injectable} from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class StorageService {\n\n constructor() {\n }\n\n public save(key: string, value: any) {\n sessionStorage.setItem(key, JSON.stringify(value));\n };\n\n public get(key: string): JSON | null {\n const data = sessionStorage.getItem(key);\n if (data !== null) {\n return JSON.parse(data);\n } else {\n return null;\n }\n }\n\n public delete(key: string): void {\n sessionStorage.removeItem(key);\n }\n public wipe(): void {\n sessionStorage.clear();\n }\n\n}\n","/*\n * Public API Surface of gentera-rdnd\n */\n\nexport * from './lib/components/screen-title/screen-title.component';\nexport * from \"./lib/components/rdnd-navbar/rdnd-navbar.component\";\nexport * from \"./lib/components/rdnd-sidebar/rdnd-sidebar.component\";\nexport * from \"./lib/components/rdnd-loader/rdnd-loader.component\";\nexport * from \"./lib/components/rdnd-active-indicator/rdnd-active-indicator.component\";\n\n// Components with its corresponding service handlers\nexport * from './lib/components/button/button.component';\nexport * from './lib/hooks/button.service';\n\nexport * from './lib/components/input/input.component';\nexport * from './lib/hooks/input.service';\n\nexport * from './lib/components/modal/modal.component';\nexport * from './lib/hooks/modal.service';\n\n// Export services\nexport * from './lib/services/storage.service';\n\n// Export utils\nexport {themes as rdndThemes} from './lib/styles/themes';\nexport {RDND_CONFIG} from \"./lib/config/rdnd-config.token\";\n\n\n// Export types\nexport {RdndSidebarItem} from \"./lib/types/Sidebar.types\";\nexport {LoaderConfig} from \"./lib/types/Loader-config.types\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.ButtonService","i1.InputService","rdndThemes"],"mappings":"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"}
|