@lluc_llull/ui-lib 0.1.1 → 0.1.2

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.
Files changed (38) hide show
  1. package/esm2022/lib/Enum/link-type.enum.mjs +9 -0
  2. package/esm2022/lib/components/core/hero-section/hero-section.component.mjs +21 -0
  3. package/esm2022/lib/components/core/hero-section/hero-section.interface.mjs +2 -0
  4. package/esm2022/lib/components/core/hero-section/index.mjs +3 -0
  5. package/esm2022/lib/components/core/index.mjs +2 -2
  6. package/esm2022/lib/directives/link-type.directive.mjs +106 -0
  7. package/esm2022/lib/interfaces/index.mjs +3 -1
  8. package/esm2022/lib/interfaces/ui-lib-button.interface.mjs +2 -0
  9. package/esm2022/lib/interfaces/ui-lib-image.interface.mjs +2 -0
  10. package/esm2022/lib/services/mapper/component-mappers/hero-section.mapper.mjs +8 -0
  11. package/esm2022/lib/services/mapper/component-mappers/index.mjs +3 -4
  12. package/esm2022/lib/utils/index.mjs +2 -0
  13. package/esm2022/lib/utils/utils.mjs +38 -0
  14. package/esm2022/public-api.mjs +2 -2
  15. package/fesm2022/lluc_llull-ui-lib.mjs +171 -15
  16. package/fesm2022/lluc_llull-ui-lib.mjs.map +1 -1
  17. package/lib/Enum/link-type.enum.d.ts +7 -0
  18. package/lib/components/core/hero-section/hero-section.component.d.ts +10 -0
  19. package/lib/components/core/hero-section/hero-section.interface.d.ts +7 -0
  20. package/lib/components/core/hero-section/index.d.ts +2 -0
  21. package/lib/components/core/index.d.ts +1 -1
  22. package/lib/directives/link-type.directive.d.ts +23 -0
  23. package/lib/interfaces/index.d.ts +2 -0
  24. package/lib/interfaces/ui-lib-button.interface.d.ts +7 -0
  25. package/lib/interfaces/ui-lib-image.interface.d.ts +7 -0
  26. package/lib/services/mapper/component-mappers/hero-section.mapper.d.ts +2 -0
  27. package/lib/utils/index.d.ts +1 -0
  28. package/lib/utils/utils.d.ts +5 -0
  29. package/package.json +1 -1
  30. package/public-api.d.ts +1 -0
  31. package/esm2022/lib/components/core/top-slider/index.mjs +0 -3
  32. package/esm2022/lib/components/core/top-slider/top-slider.component.mjs +0 -12
  33. package/esm2022/lib/components/core/top-slider/top-slider.interface.mjs +0 -2
  34. package/esm2022/lib/services/mapper/component-mappers/top-slider.mapper.mjs +0 -4
  35. package/lib/components/core/top-slider/index.d.ts +0 -2
  36. package/lib/components/core/top-slider/top-slider.component.d.ts +0 -5
  37. package/lib/components/core/top-slider/top-slider.interface.d.ts +0 -2
  38. package/lib/services/mapper/component-mappers/top-slider.mapper.d.ts +0 -2
@@ -0,0 +1,9 @@
1
+ export var LinkType;
2
+ (function (LinkType) {
3
+ LinkType["Internal"] = "internal";
4
+ LinkType["External"] = "external";
5
+ LinkType["Anchor"] = "anchor";
6
+ LinkType["Pdf"] = "pdf";
7
+ LinkType["NoLink"] = "nolink";
8
+ })(LinkType || (LinkType = {}));
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay10eXBlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9FbnVtL2xpbmstdHlwZS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFFBTVg7QUFORCxXQUFZLFFBQVE7SUFDbEIsaUNBQXFCLENBQUE7SUFDckIsaUNBQXFCLENBQUE7SUFDckIsNkJBQWlCLENBQUE7SUFDakIsdUJBQVcsQ0FBQTtJQUNYLDZCQUFpQixDQUFBO0FBQ25CLENBQUMsRUFOVyxRQUFRLEtBQVIsUUFBUSxRQU1uQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIExpbmtUeXBlIHtcbiAgSW50ZXJuYWwgPSAnaW50ZXJuYWwnLFxuICBFeHRlcm5hbCA9ICdleHRlcm5hbCcsXG4gIEFuY2hvciA9ICdhbmNob3InLFxuICBQZGYgPSAncGRmJyxcbiAgTm9MaW5rID0gJ25vbGluaycsXG59XG4iXX0=
@@ -0,0 +1,21 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
3
+ import { LinkTypeDirective } from '../../../directives/link-type.directive';
4
+ import * as i0 from "@angular/core";
5
+ export class HeroSectionComponent {
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HeroSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: HeroSectionComponent, isStandalone: true, selector: "lib-hero-section", inputs: { title: "title", subtitle: "subtitle", text: "text", buttons: "buttons" }, ngImport: i0, template: "<div class=\"hero-section\">\n @if (title) {\n <h1>{{ title }}</h1>\n }\n @if (text) {\n <p>{{ text }}</p>\n }\n @if (buttons && buttons.length > 0) {\n <div class=\"buttons\">\n @for (button of buttons; track $index) {\n <ng-container>\n <a class=\"btn\" [href]=\"button.url\" [linkType]=\"button.linkType\">\n {{ button.label }}\n </a>\n </ng-container>\n }\n </div>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: LinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href"], outputs: ["anchorClicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8
+ }
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HeroSectionComponent, decorators: [{
10
+ type: Component,
11
+ args: [{ selector: 'lib-hero-section', standalone: true, imports: [CommonModule, LinkTypeDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"hero-section\">\n @if (title) {\n <h1>{{ title }}</h1>\n }\n @if (text) {\n <p>{{ text }}</p>\n }\n @if (buttons && buttons.length > 0) {\n <div class=\"buttons\">\n @for (button of buttons; track $index) {\n <ng-container>\n <a class=\"btn\" [href]=\"button.url\" [linkType]=\"button.linkType\">\n {{ button.label }}\n </a>\n </ng-container>\n }\n </div>\n }\n</div>\n" }]
12
+ }], propDecorators: { title: [{
13
+ type: Input
14
+ }], subtitle: [{
15
+ type: Input
16
+ }], text: [{
17
+ type: Input
18
+ }], buttons: [{
19
+ type: Input
20
+ }] } });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVyby1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9oZXJvLXNlY3Rpb24vaGVyby1zZWN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9oZXJvLXNlY3Rpb24vaGVyby1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7QUFVNUUsTUFBTSxPQUFPLG9CQUFvQjsrR0FBcEIsb0JBQW9CO21HQUFwQixvQkFBb0IsZ0tDYmpDLHVjQW1CQSx5RERYYyxZQUFZLCtCQUFFLGlCQUFpQjs7NEZBS2hDLG9CQUFvQjtrQkFSaEMsU0FBUzsrQkFDSSxrQkFBa0IsY0FDaEIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGlCQUFpQixDQUFDLG1CQUd6Qix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVaUxpYkJ1dHRvbkkgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IExpbmtUeXBlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlcy9saW5rLXR5cGUuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsaWItaGVyby1zZWN0aW9uJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIExpbmtUeXBlRGlyZWN0aXZlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaGVyby1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vaGVyby1zZWN0aW9uLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgSGVyb1NlY3Rpb25Db21wb25lbnQge1xuICAgIEBJbnB1dCgpIHRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHN1YnRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHRleHQ/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgYnV0dG9ucz86IFVpTGliQnV0dG9uSVtdO1xufVxuIiwiPGRpdiBjbGFzcz1cImhlcm8tc2VjdGlvblwiPlxuICBAaWYgKHRpdGxlKSB7XG4gICAgPGgxPnt7IHRpdGxlIH19PC9oMT5cbiAgfVxuICBAaWYgKHRleHQpIHtcbiAgICA8cD57eyB0ZXh0IH19PC9wPlxuICB9XG4gIEBpZiAoYnV0dG9ucyAmJiBidXR0b25zLmxlbmd0aCA+IDApIHtcbiAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uc1wiPlxuICAgICAgQGZvciAoYnV0dG9uIG9mIGJ1dHRvbnM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICA8bmctY29udGFpbmVyPlxuICAgICAgICAgIDxhIGNsYXNzPVwiYnRuXCIgW2hyZWZdPVwiYnV0dG9uLnVybFwiIFtsaW5rVHlwZV09XCJidXR0b24ubGlua1R5cGVcIj5cbiAgICAgICAgICAgIHt7IGJ1dHRvbi5sYWJlbCB9fVxuICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIH1cbjwvZGl2PlxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVyby1zZWN0aW9uLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvY29yZS9oZXJvLXNlY3Rpb24vaGVyby1zZWN0aW9uLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVWlMaWJCdXR0b25JIH0gZnJvbSBcIi4uLy4uLy4uL2ludGVyZmFjZXMvdWktbGliLWJ1dHRvbi5pbnRlcmZhY2VcIjtcblxuZXhwb3J0IGludGVyZmFjZSBIZXJvU2VjdGlvbkkge1xuICAgIHRpdGxlPzogc3RyaW5nO1xuICAgIHN1YnRpdGxlPzogc3RyaW5nO1xuICAgIHRleHQ/OiBzdHJpbmc7XG4gICAgYnV0dG9ucz86IFVpTGliQnV0dG9uSVtdO1xufVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './hero-section.component';
2
+ export * from './hero-section.interface';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvaGVyby1zZWN0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaGVyby1zZWN0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2hlcm8tc2VjdGlvbi5pbnRlcmZhY2UnO1xuXG4iXX0=
@@ -1,2 +1,2 @@
1
- export * from './top-slider';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3RvcC1zbGlkZXInO1xuIl19
1
+ export * from './hero-section';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaGVyby1zZWN0aW9uJztcbiJdfQ==
@@ -0,0 +1,106 @@
1
+ import { isPlatformBrowser } from '@angular/common';
2
+ import { Directive, EventEmitter, HostListener, inject, Input, Output, PLATFORM_ID } from '@angular/core';
3
+ import { LinkType } from '../Enum/link-type.enum';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/router";
6
+ export class LinkTypeDirective {
7
+ constructor(router, elRef) {
8
+ this.router = router;
9
+ this.elRef = elRef;
10
+ this.anchorClicked = new EventEmitter();
11
+ this.platformId = inject(PLATFORM_ID);
12
+ }
13
+ ngOnInit() {
14
+ this.setupLinkAttributes();
15
+ }
16
+ onClick(event) {
17
+ if (!this.linkType || !this.href) {
18
+ this.disableLink();
19
+ return;
20
+ }
21
+ event.preventDefault();
22
+ switch (this.linkType) {
23
+ case 'internal':
24
+ this.navigateInternal(this.href);
25
+ break;
26
+ case 'external':
27
+ case 'pdf':
28
+ this.openExternal(this.href);
29
+ break;
30
+ case 'anchor':
31
+ this.scrollToAnchor(this.href);
32
+ break;
33
+ case 'nolink':
34
+ this.disableLink();
35
+ break;
36
+ default:
37
+ console.warn(`Unsupported linkType: ${this.linkType}`);
38
+ }
39
+ }
40
+ setupLinkAttributes() {
41
+ if (!this.linkType || !this.href) {
42
+ this.disableLink();
43
+ return;
44
+ }
45
+ this.elRef.nativeElement.setAttribute('href', this.href);
46
+ if (this.linkType === 'external') {
47
+ this.elRef.nativeElement.setAttribute('rel', 'nofollow');
48
+ }
49
+ }
50
+ navigateInternal(url) {
51
+ const cleanedUrl = url.trim().replace(/\/+$/, '');
52
+ this.anchorClicked.emit();
53
+ this.router.navigateByUrl('/' + cleanedUrl);
54
+ }
55
+ openExternal(url) {
56
+ if (isPlatformBrowser(this.platformId)) {
57
+ window.open(url, '_blank');
58
+ }
59
+ }
60
+ scrollToAnchor(id) {
61
+ if (isPlatformBrowser(this.platformId)) {
62
+ const el = document.getElementById(id);
63
+ if (el) {
64
+ const yOffset = -160;
65
+ const y = el.getBoundingClientRect().top + window.scrollY + yOffset;
66
+ window.scrollTo({ top: y, behavior: 'smooth' });
67
+ this.anchorClicked.emit();
68
+ }
69
+ else {
70
+ console.warn(`Anchor "${id}" not found`);
71
+ }
72
+ }
73
+ }
74
+ disableLink() {
75
+ const element = this.elRef.nativeElement;
76
+ const parentLi = element.closest('li');
77
+ const isInMenu = parentLi?.classList.contains('menu-item-has-children');
78
+ if (!isInMenu) {
79
+ element.removeAttribute('href');
80
+ element.setAttribute('aria-disabled', 'true');
81
+ element.setAttribute('tabindex', '-1');
82
+ element.style.cursor = 'default';
83
+ element.style.pointerEvents = 'none';
84
+ }
85
+ }
86
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LinkTypeDirective, deps: [{ token: i1.Router }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
87
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: LinkTypeDirective, isStandalone: true, selector: "[linkType]", inputs: { linkType: "linkType", href: "href" }, outputs: { anchorClicked: "anchorClicked" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 }); }
88
+ }
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LinkTypeDirective, decorators: [{
90
+ type: Directive,
91
+ args: [{
92
+ selector: '[linkType]',
93
+ standalone: true,
94
+ }]
95
+ }], ctorParameters: () => [{ type: i1.Router }, { type: i0.ElementRef }], propDecorators: { linkType: [{
96
+ type: Input
97
+ }], href: [{
98
+ type: Input
99
+ }], anchorClicked: [{
100
+ type: Output
101
+ }], onClick: [{
102
+ type: HostListener,
103
+ args: ['click', ['$event']]
104
+ }] } });
105
+ export { LinkType };
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay10eXBlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWxpYi9zcmMvbGliL2RpcmVjdGl2ZXMvbGluay10eXBlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTlILE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBTWxELE1BQU0sT0FBTyxpQkFBaUI7SUFPNUIsWUFBNkIsTUFBYyxFQUFtQixLQUFpQjtRQUFsRCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQW1CLFVBQUssR0FBTCxLQUFLLENBQVk7UUFKckUsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRWxDLGVBQVUsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFZ0MsQ0FBQztJQUVuRixRQUFRO1FBQ04sSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUdELE9BQU8sQ0FBQyxLQUFZO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixPQUFPO1FBQ1QsQ0FBQztRQUVELEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUV2QixRQUFRLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN0QixLQUFLLFVBQVU7Z0JBQ2IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDakMsTUFBTTtZQUNSLEtB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LENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUM5QyxPQUFPLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN2QyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7WUFDakMsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDOytHQTVGVSxpQkFBaUI7bUdBQWpCLGlCQUFpQjs7NEZBQWpCLGlCQUFpQjtrQkFKN0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO29HQUVVLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNJLGFBQWE7c0JBQXRCLE1BQU07Z0JBV1AsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQzs7QUFpRm5DLE9BQU8sRUFBRSxRQUFRLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIGluamVjdCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IExpbmtUeXBlIH0gZnJvbSAnLi4vRW51bS9saW5rLXR5cGUuZW51bSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tsaW5rVHlwZV0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBMaW5rVHlwZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGxpbmtUeXBlPzogTGlua1R5cGU7XG4gIEBJbnB1dCgpIGhyZWY/OiBzdHJpbmc7XG4gIEBPdXRwdXQoKSBhbmNob3JDbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSByZWFkb25seSBlbFJlZjogRWxlbWVudFJlZikge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldHVwTGlua0F0dHJpYnV0ZXMoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgb25DbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubGlua1R5cGUgfHwgIXRoaXMuaHJlZikge1xuICAgICAgdGhpcy5kaXNhYmxlTGluaygpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICBzd2l0Y2ggKHRoaXMubGlua1R5cGUpIHtcbiAgICAgIGNhc2UgJ2ludGVybmFsJzpcbiAgICAgICAgdGhpcy5uYXZpZ2F0ZUludGVybmFsKHRoaXMuaHJlZik7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZXh0ZXJuYWwnOlxuICAgICAgY2FzZSAncGRmJzpcbiAgICAgICAgdGhpcy5vcGVuRXh0ZXJuYWwodGhpcy5ocmVmKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdhbmNob3InOlxuICAgICAgICB0aGlzLnNjcm9sbFRvQW5jaG9yKHRoaXMuaHJlZik7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnbm9saW5rJzpcbiAgICAgICAgdGhpcy5kaXNhYmxlTGluaygpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGNvbnNvbGUud2FybihgVW5zdXBwb3J0ZWQgbGlua1R5cGU6ICR7dGhpcy5saW5rVHlwZX1gKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldHVwTGlua0F0dHJpYnV0ZXMoKSB7XG4gICAgaWYgKCF0aGlzLmxpbmtUeXBlIHx8ICF0aGlzLmhyZWYpIHtcbiAgICAgIHRoaXMuZGlzYWJsZUxpbmsoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCdocmVmJywgdGhpcy5ocmVmKTtcblxuICAgIGlmICh0aGlzLmxpbmtUeXBlID09PSAnZXh0ZXJuYWwnKSB7XG4gICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCdyZWwnLCAnbm9mb2xsb3cnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG5hdmlnYXRlSW50ZXJuYWwodXJsOiBzdHJpbmcpIHtcbiAgICBjb25zdCBjbGVhbmVkVXJsID0gdXJsLnRyaW0oKS5yZXBsYWNlKC9cXC8rJC8sICcnKTtcbiAgICB0aGlzLmFuY2hvckNsaWNrZWQuZW1pdCgpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy8nICsgY2xlYW5lZFVybCk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5FeHRlcm5hbCh1cmw6IHN0cmluZykge1xuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICB3aW5kb3cub3Blbih1cmwsICdfYmxhbmsnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNjcm9sbFRvQW5jaG9yKGlkOiBzdHJpbmcpIHtcbiAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgY29uc3QgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7XG4gICAgICBpZiAoZWwpIHtcbiAgICAgICAgY29uc3QgeU9mZnNldCA9IC0xNjA7XG4gICAgICAgIGNvbnN0IHkgPSBlbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AgKyB3aW5kb3cuc2Nyb2xsWSArIHlPZmZzZXQ7XG4gICAgICAgIHdpbmRvdy5zY3JvbGxUbyh7IHRvcDogeSwgYmVoYXZpb3I6ICdzbW9vdGgnIH0pO1xuICAgICAgICB0aGlzLmFuY2hvckNsaWNrZWQuZW1pdCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS53YXJuKGBBbmNob3IgXCIke2lkfVwiIG5vdCBmb3VuZGApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZGlzYWJsZUxpbmsoKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBwYXJlbnRMaSA9IGVsZW1lbnQuY2xvc2VzdCgnbGknKTtcbiAgICBjb25zdCBpc0luTWVudSA9IHBhcmVudExpPy5jbGFzc0xpc3QuY29udGFpbnMoJ21lbnUtaXRlbS1oYXMtY2hpbGRyZW4nKTtcblxuICAgIGlmICghaXNJbk1lbnUpIHtcbiAgICAgIGVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdocmVmJyk7XG4gICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgnYXJpYS1kaXNhYmxlZCcsICd0cnVlJyk7XG4gICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnLTEnKTtcbiAgICAgIGVsZW1lbnQuc3R5bGUuY3Vyc29yID0gJ2RlZmF1bHQnO1xuICAgICAgZWxlbWVudC5zdHlsZS5wb2ludGVyRXZlbnRzID0gJ25vbmUnO1xuICAgIH1cbiAgfVxufVxuZXhwb3J0IHsgTGlua1R5cGUgfTtcblxuIl19
@@ -1,3 +1,5 @@
1
1
  export * from './page-config.interface';
2
2
  export * from './site-config.interface';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9pbnRlcmZhY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcGFnZS1jb25maWcuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2l0ZS1jb25maWcuaW50ZXJmYWNlJztcbiJdfQ==
3
+ export * from './ui-lib-button.interface';
4
+ export * from './ui-lib-image.interface';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9pbnRlcmZhY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BhZ2UtY29uZmlnLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3NpdGUtY29uZmlnLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3VpLWxpYi1idXR0b24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vdWktbGliLWltYWdlLmludGVyZmFjZSc7XG5cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbGliLWJ1dHRvbi5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9pbnRlcmZhY2VzL3VpLWxpYi1idXR0b24uaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMaW5rVHlwZSB9IGZyb20gXCIuLi9FbnVtL2xpbmstdHlwZS5lbnVtXCI7XG5leHBvcnQgaW50ZXJmYWNlIFVpTGliQnV0dG9uSSB7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICB1cmw6IHN0cmluZztcbiAgICBsaW5rVHlwZTogTGlua1R5cGU7XG4gICAgaWNvbj86IHN0cmluZztcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktbGliLWltYWdlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWxpYi9zcmMvbGliL2ludGVyZmFjZXMvdWktbGliLWltYWdlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBVaUxpYkltYWdlSSB7XG4gICAgdXJsOiBzdHJpbmc7XG4gICAgYWx0OiBzdHJpbmc7XG4gICAgd2lkdGg/OiBudW1iZXI7XG4gICAgaGVpZ2h0PzogbnVtYmVyO1xuICAgIGZvcm1hdD86IHN0cmluZztcbn1cbiJdfQ==
@@ -0,0 +1,8 @@
1
+ import { mapButtons } from '../../../utils/utils';
2
+ export const mapHeroSection = (props) => ({
3
+ title: props?.texts?.title,
4
+ subtitle: props?.texts?.subtitle,
5
+ text: props?.texts?.text,
6
+ buttons: mapButtons(props?.buttons),
7
+ });
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVyby1zZWN0aW9uLm1hcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWxpYi9zcmMvbGliL3NlcnZpY2VzL21hcHBlci9jb21wb25lbnQtbWFwcGVycy9oZXJvLXNlY3Rpb24ubWFwcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUdsRCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQXNCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUs7SUFDMUIsUUFBUSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUTtJQUNoQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJO0lBQ3hCLE9BQU8sRUFBRSxVQUFVLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQztDQUN0QyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtYXBCdXR0b25zIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvdXRpbHMnO1xuaW1wb3J0IHsgQ29tcG9uZW50TWFwcGVyRm4gfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IG1hcEhlcm9TZWN0aW9uOiBDb21wb25lbnRNYXBwZXJGbiA9IChwcm9wcykgPT4gKHtcbiAgICB0aXRsZTogcHJvcHM/LnRleHRzPy50aXRsZSxcbiAgICBzdWJ0aXRsZTogcHJvcHM/LnRleHRzPy5zdWJ0aXRsZSxcbiAgICB0ZXh0OiBwcm9wcz8udGV4dHM/LnRleHQsXG4gICAgYnV0dG9uczogbWFwQnV0dG9ucyhwcm9wcz8uYnV0dG9ucyksXG59KTtcbiJdfQ==
@@ -1,7 +1,6 @@
1
- import { mapTopSlider } from './top-slider.mapper';
1
+ import { mapHeroSection } from './hero-section.mapper';
2
2
  // importa más mappers aquí...
3
3
  export const componentMappers = {
4
- 'top-slider': mapTopSlider,
5
- // añade los demás
4
+ 'hero-section': mapHeroSection,
6
5
  };
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9tYXBwZXIvY29tcG9uZW50LW1hcHBlcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELDhCQUE4QjtBQUU5QixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBd0M7SUFDakUsWUFBWSxFQUFFLFlBQVk7SUFDMUIsa0JBQWtCO0NBQ3JCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtYXBUb3BTbGlkZXIgfSBmcm9tICcuL3RvcC1zbGlkZXIubWFwcGVyJztcbi8vIGltcG9ydGEgbcOhcyBtYXBwZXJzIGFxdcOtLi4uXG5cbmV4cG9ydCBjb25zdCBjb21wb25lbnRNYXBwZXJzOiBSZWNvcmQ8c3RyaW5nLCAocHJvcHM6IGFueSkgPT4gYW55PiA9IHtcbiAgICAndG9wLXNsaWRlcic6IG1hcFRvcFNsaWRlcixcbiAgICAvLyBhw7FhZGUgbG9zIGRlbcOhc1xufTtcbiJdfQ==
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9tYXBwZXIvY29tcG9uZW50LW1hcHBlcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELDhCQUE4QjtBQUU5QixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBd0M7SUFDakUsY0FBYyxFQUFFLGNBQWM7Q0FDakMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcEhlcm9TZWN0aW9uIH0gZnJvbSAnLi9oZXJvLXNlY3Rpb24ubWFwcGVyJztcbi8vIGltcG9ydGEgbcOhcyBtYXBwZXJzIGFxdcOtLi4uXG5cbmV4cG9ydCBjb25zdCBjb21wb25lbnRNYXBwZXJzOiBSZWNvcmQ8c3RyaW5nLCAocHJvcHM6IGFueSkgPT4gYW55PiA9IHtcbiAgICAnaGVyby1zZWN0aW9uJzogbWFwSGVyb1NlY3Rpb24sXG59O1xuIl19
@@ -0,0 +1,2 @@
1
+ export * from './utils';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuIl19
@@ -0,0 +1,38 @@
1
+ export function mapButtons(data) {
2
+ if (!Array.isArray(data))
3
+ return [];
4
+ return data
5
+ .filter((item) => item && typeof item === 'object')
6
+ .map((item) => ({
7
+ label: item.label ?? '',
8
+ url: item.url ?? '#',
9
+ linkType: item.link_type ?? 'none',
10
+ icon: item.icon,
11
+ }));
12
+ }
13
+ export function mapImage(data) {
14
+ if (!data || typeof data !== 'object')
15
+ return null;
16
+ return {
17
+ url: data.url ?? '',
18
+ alt: data.alt ?? '',
19
+ width: data.width,
20
+ height: data.height,
21
+ format: data.format,
22
+ };
23
+ }
24
+ export function mapImageOrGallery(data) {
25
+ if (!data)
26
+ return [];
27
+ // Si es array → galería
28
+ if (Array.isArray(data)) {
29
+ return data
30
+ .filter((img) => img && typeof img === 'object')
31
+ .map((img) => mapImage(img))
32
+ .filter(Boolean);
33
+ }
34
+ // Si es objeto → imagen única
35
+ const single = mapImage(data);
36
+ return single ? [single] : [];
37
+ }
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi91dGlscy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLFVBQVUsVUFBVSxDQUFDLElBQVM7SUFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFFcEMsT0FBTyxJQUFJO1NBQ04sTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxDQUFDO1NBQ2xELEdBQUcsQ0FDQSxDQUFDLElBQUksRUFBZ0IsRUFBRSxDQUFDLENBQUM7UUFDckIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRTtRQUN2QixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsSUFBSSxHQUFHO1FBQ3BCLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxJQUFJLE1BQU07UUFDbEMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO0tBQ2xCLENBQUMsQ0FDTCxDQUFDO0FBQ1YsQ0FBQztBQUVELE1BQU0sVUFBVSxRQUFRLENBQUMsSUFBUztJQUM5QixJQUFJLENBQUMsSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVE7UUFBRSxPQUFPLElBQUksQ0FBQztJQUVuRCxPQUFPO1FBQ0gsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLElBQUksRUFBRTtRQUNuQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsSUFBSSxFQUFFO1FBQ25CLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztRQUNqQixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07UUFDbkIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO0tBQ3RCLENBQUM7QUFDTixDQUFDO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUFDLElBQVM7SUFDdkMsSUFBSSxDQUFDLElBQUk7UUFBRSxPQUFPLEVBQUUsQ0FBQztJQUVyQix3QkFBd0I7SUFDeEIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDdEIsT0FBTyxJQUFJO2FBQ04sTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxDQUFDO2FBQy9DLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBRSxDQUFDO2FBQzVCLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsOEJBQThCO0lBQzlCLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QixPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0FBQ2xDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVaUxpYkJ1dHRvbkkgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3VpLWxpYi1idXR0b24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFVpTGliSW1hZ2VJIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy91aS1saWItaW1hZ2UuaW50ZXJmYWNlJztcblxuZXhwb3J0IGZ1bmN0aW9uIG1hcEJ1dHRvbnMoZGF0YTogYW55KTogVWlMaWJCdXR0b25JW10ge1xuICAgIGlmICghQXJyYXkuaXNBcnJheShkYXRhKSkgcmV0dXJuIFtdO1xuXG4gICAgcmV0dXJuIGRhdGFcbiAgICAgICAgLmZpbHRlcigoaXRlbSkgPT4gaXRlbSAmJiB0eXBlb2YgaXRlbSA9PT0gJ29iamVjdCcpXG4gICAgICAgIC5tYXAoXG4gICAgICAgICAgICAoaXRlbSk6IFVpTGliQnV0dG9uSSA9PiAoe1xuICAgICAgICAgICAgICAgIGxhYmVsOiBpdGVtLmxhYmVsID8/ICcnLFxuICAgICAgICAgICAgICAgIHVybDogaXRlbS51cmwgPz8gJyMnLFxuICAgICAgICAgICAgICAgIGxpbmtUeXBlOiBpdGVtLmxpbmtfdHlwZSA/PyAnbm9uZScsXG4gICAgICAgICAgICAgICAgaWNvbjogaXRlbS5pY29uLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1hcEltYWdlKGRhdGE6IGFueSk6IFVpTGliSW1hZ2VJIHwgbnVsbCB7XG4gICAgaWYgKCFkYXRhIHx8IHR5cGVvZiBkYXRhICE9PSAnb2JqZWN0JykgcmV0dXJuIG51bGw7XG5cbiAgICByZXR1cm4ge1xuICAgICAgICB1cmw6IGRhdGEudXJsID8/ICcnLFxuICAgICAgICBhbHQ6IGRhdGEuYWx0ID8/ICcnLFxuICAgICAgICB3aWR0aDogZGF0YS53aWR0aCxcbiAgICAgICAgaGVpZ2h0OiBkYXRhLmhlaWdodCxcbiAgICAgICAgZm9ybWF0OiBkYXRhLmZvcm1hdCxcbiAgICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWFwSW1hZ2VPckdhbGxlcnkoZGF0YTogYW55KTogVWlMaWJJbWFnZUlbXSB7XG4gICAgaWYgKCFkYXRhKSByZXR1cm4gW107XG5cbiAgICAvLyBTaSBlcyBhcnJheSDihpIgZ2FsZXLDrWFcbiAgICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgICAgICByZXR1cm4gZGF0YVxuICAgICAgICAgICAgLmZpbHRlcigoaW1nKSA9PiBpbWcgJiYgdHlwZW9mIGltZyA9PT0gJ29iamVjdCcpXG4gICAgICAgICAgICAubWFwKChpbWcpID0+IG1hcEltYWdlKGltZykhKVxuICAgICAgICAgICAgLmZpbHRlcihCb29sZWFuKTtcbiAgICB9XG5cbiAgICAvLyBTaSBlcyBvYmpldG8g4oaSIGltYWdlbiDDum5pY2FcbiAgICBjb25zdCBzaW5nbGUgPSBtYXBJbWFnZShkYXRhKTtcbiAgICByZXR1cm4gc2luZ2xlID8gW3NpbmdsZV0gOiBbXTtcbn1cbiJdfQ==
@@ -9,8 +9,8 @@ export * from './lib/services';
9
9
  // /* INTERFACES */
10
10
  export * from './lib/interfaces/index';
11
11
  // /* UTILS */
12
- // export * from './lib/utils';
12
+ export * from './lib/utils';
13
13
  // /* ENUMS */
14
14
  // export * from './lib/Enum';
15
15
  // export * from './lib/ui-lib.component';
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3VpLWxpYi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGlCQUFpQjtBQUNqQixjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGlEQUFpRDtBQUVqRCxxQkFBcUI7QUFDckIsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQix1QkFBdUI7QUFDdkIsY0FBYyx3QkFBd0IsQ0FBQztBQUV2QyxrQkFBa0I7QUFDbEIsK0JBQStCO0FBRS9CLGtCQUFrQjtBQUNsQiw4QkFBOEI7QUFFOUIsMENBQTBDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB1aS1saWJcbiAqL1xuXG4vKiBDT01QT05FTlRTICAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jb3JlL2luZGV4Jztcbi8vIGV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2hhcmVkL2luZGV4JztcblxuLy8gLyogICBTRVJWSUNFUyAgICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7XG5cbi8vIC8qICAgSU5URVJGQUNFUyAgICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnRlcmZhY2VzL2luZGV4JztcblxuLy8gLyogICBVVElMUyAgICovXG4vLyBleHBvcnQgKiBmcm9tICcuL2xpYi91dGlscyc7XG5cbi8vIC8qICAgRU5VTVMgICAqL1xuLy8gZXhwb3J0ICogZnJvbSAnLi9saWIvRW51bSc7XG5cbi8vIGV4cG9ydCAqIGZyb20gJy4vbGliL3VpLWxpYi5jb21wb25lbnQnO1xuIl19
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3VpLWxpYi9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGlCQUFpQjtBQUNqQixjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGlEQUFpRDtBQUVqRCxxQkFBcUI7QUFDckIsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQix1QkFBdUI7QUFDdkIsY0FBYyx3QkFBd0IsQ0FBQztBQUV2QyxrQkFBa0I7QUFDbEIsY0FBYyxhQUFhLENBQUM7QUFFNUIsa0JBQWtCO0FBQ2xCLDhCQUE4QjtBQUU5QiwwQ0FBMEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHVpLWxpYlxuICovXG5cbi8qIENPTVBPTkVOVFMgICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvcmUvaW5kZXgnO1xuLy8gZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9zaGFyZWQvaW5kZXgnO1xuXG4vLyAvKiAgIFNFUlZJQ0VTICAgKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcblxuLy8gLyogICBJTlRFUkZBQ0VTICAgKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2ludGVyZmFjZXMvaW5kZXgnO1xuXG4vLyAvKiAgIFVUSUxTICAgKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL3V0aWxzJztcblxuLy8gLyogICBFTlVNUyAgICovXG4vLyBleHBvcnQgKiBmcm9tICcuL2xpYi9FbnVtJztcblxuLy8gZXhwb3J0ICogZnJvbSAnLi9saWIvdWktbGliLmNvbXBvbmVudCc7XG4iXX0=
@@ -1,24 +1,182 @@
1
- import { CommonModule } from '@angular/common';
1
+ import { isPlatformBrowser, CommonModule } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
- import { Component, inject, PLATFORM_ID, Injectable } from '@angular/core';
3
+ import { EventEmitter, inject, PLATFORM_ID, HostListener, Output, Input, Directive, ChangeDetectionStrategy, Component, Injectable } from '@angular/core';
4
+ import * as i1 from '@angular/router';
4
5
 
5
- class TopSliderComponent {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopSliderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TopSliderComponent, isStandalone: true, selector: "lib-top-slider", ngImport: i0, template: "<p>top-slider works!</p>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
6
+ var LinkType;
7
+ (function (LinkType) {
8
+ LinkType["Internal"] = "internal";
9
+ LinkType["External"] = "external";
10
+ LinkType["Anchor"] = "anchor";
11
+ LinkType["Pdf"] = "pdf";
12
+ LinkType["NoLink"] = "nolink";
13
+ })(LinkType || (LinkType = {}));
14
+
15
+ class LinkTypeDirective {
16
+ constructor(router, elRef) {
17
+ this.router = router;
18
+ this.elRef = elRef;
19
+ this.anchorClicked = new EventEmitter();
20
+ this.platformId = inject(PLATFORM_ID);
21
+ }
22
+ ngOnInit() {
23
+ this.setupLinkAttributes();
24
+ }
25
+ onClick(event) {
26
+ if (!this.linkType || !this.href) {
27
+ this.disableLink();
28
+ return;
29
+ }
30
+ event.preventDefault();
31
+ switch (this.linkType) {
32
+ case 'internal':
33
+ this.navigateInternal(this.href);
34
+ break;
35
+ case 'external':
36
+ case 'pdf':
37
+ this.openExternal(this.href);
38
+ break;
39
+ case 'anchor':
40
+ this.scrollToAnchor(this.href);
41
+ break;
42
+ case 'nolink':
43
+ this.disableLink();
44
+ break;
45
+ default:
46
+ console.warn(`Unsupported linkType: ${this.linkType}`);
47
+ }
48
+ }
49
+ setupLinkAttributes() {
50
+ if (!this.linkType || !this.href) {
51
+ this.disableLink();
52
+ return;
53
+ }
54
+ this.elRef.nativeElement.setAttribute('href', this.href);
55
+ if (this.linkType === 'external') {
56
+ this.elRef.nativeElement.setAttribute('rel', 'nofollow');
57
+ }
58
+ }
59
+ navigateInternal(url) {
60
+ const cleanedUrl = url.trim().replace(/\/+$/, '');
61
+ this.anchorClicked.emit();
62
+ this.router.navigateByUrl('/' + cleanedUrl);
63
+ }
64
+ openExternal(url) {
65
+ if (isPlatformBrowser(this.platformId)) {
66
+ window.open(url, '_blank');
67
+ }
68
+ }
69
+ scrollToAnchor(id) {
70
+ if (isPlatformBrowser(this.platformId)) {
71
+ const el = document.getElementById(id);
72
+ if (el) {
73
+ const yOffset = -160;
74
+ const y = el.getBoundingClientRect().top + window.scrollY + yOffset;
75
+ window.scrollTo({ top: y, behavior: 'smooth' });
76
+ this.anchorClicked.emit();
77
+ }
78
+ else {
79
+ console.warn(`Anchor "${id}" not found`);
80
+ }
81
+ }
82
+ }
83
+ disableLink() {
84
+ const element = this.elRef.nativeElement;
85
+ const parentLi = element.closest('li');
86
+ const isInMenu = parentLi?.classList.contains('menu-item-has-children');
87
+ if (!isInMenu) {
88
+ element.removeAttribute('href');
89
+ element.setAttribute('aria-disabled', 'true');
90
+ element.setAttribute('tabindex', '-1');
91
+ element.style.cursor = 'default';
92
+ element.style.pointerEvents = 'none';
93
+ }
94
+ }
95
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LinkTypeDirective, deps: [{ token: i1.Router }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
96
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: LinkTypeDirective, isStandalone: true, selector: "[linkType]", inputs: { linkType: "linkType", href: "href" }, outputs: { anchorClicked: "anchorClicked" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 }); }
8
97
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopSliderComponent, decorators: [{
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LinkTypeDirective, decorators: [{
99
+ type: Directive,
100
+ args: [{
101
+ selector: '[linkType]',
102
+ standalone: true,
103
+ }]
104
+ }], ctorParameters: () => [{ type: i1.Router }, { type: i0.ElementRef }], propDecorators: { linkType: [{
105
+ type: Input
106
+ }], href: [{
107
+ type: Input
108
+ }], anchorClicked: [{
109
+ type: Output
110
+ }], onClick: [{
111
+ type: HostListener,
112
+ args: ['click', ['$event']]
113
+ }] } });
114
+
115
+ class HeroSectionComponent {
116
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HeroSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
117
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: HeroSectionComponent, isStandalone: true, selector: "lib-hero-section", inputs: { title: "title", subtitle: "subtitle", text: "text", buttons: "buttons" }, ngImport: i0, template: "<div class=\"hero-section\">\n @if (title) {\n <h1>{{ title }}</h1>\n }\n @if (text) {\n <p>{{ text }}</p>\n }\n @if (buttons && buttons.length > 0) {\n <div class=\"buttons\">\n @for (button of buttons; track $index) {\n <ng-container>\n <a class=\"btn\" [href]=\"button.url\" [linkType]=\"button.linkType\">\n {{ button.label }}\n </a>\n </ng-container>\n }\n </div>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: LinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href"], outputs: ["anchorClicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
118
+ }
119
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: HeroSectionComponent, decorators: [{
10
120
  type: Component,
11
- args: [{ selector: 'lib-top-slider', standalone: true, imports: [CommonModule], template: "<p>top-slider works!</p>\n" }]
12
- }] });
121
+ args: [{ selector: 'lib-hero-section', standalone: true, imports: [CommonModule, LinkTypeDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"hero-section\">\n @if (title) {\n <h1>{{ title }}</h1>\n }\n @if (text) {\n <p>{{ text }}</p>\n }\n @if (buttons && buttons.length > 0) {\n <div class=\"buttons\">\n @for (button of buttons; track $index) {\n <ng-container>\n <a class=\"btn\" [href]=\"button.url\" [linkType]=\"button.linkType\">\n {{ button.label }}\n </a>\n </ng-container>\n }\n </div>\n }\n</div>\n" }]
122
+ }], propDecorators: { title: [{
123
+ type: Input
124
+ }], subtitle: [{
125
+ type: Input
126
+ }], text: [{
127
+ type: Input
128
+ }], buttons: [{
129
+ type: Input
130
+ }] } });
131
+
132
+ function mapButtons(data) {
133
+ if (!Array.isArray(data))
134
+ return [];
135
+ return data
136
+ .filter((item) => item && typeof item === 'object')
137
+ .map((item) => ({
138
+ label: item.label ?? '',
139
+ url: item.url ?? '#',
140
+ linkType: item.link_type ?? 'none',
141
+ icon: item.icon,
142
+ }));
143
+ }
144
+ function mapImage(data) {
145
+ if (!data || typeof data !== 'object')
146
+ return null;
147
+ return {
148
+ url: data.url ?? '',
149
+ alt: data.alt ?? '',
150
+ width: data.width,
151
+ height: data.height,
152
+ format: data.format,
153
+ };
154
+ }
155
+ function mapImageOrGallery(data) {
156
+ if (!data)
157
+ return [];
158
+ // Si es array → galería
159
+ if (Array.isArray(data)) {
160
+ return data
161
+ .filter((img) => img && typeof img === 'object')
162
+ .map((img) => mapImage(img))
163
+ .filter(Boolean);
164
+ }
165
+ // Si es objeto → imagen única
166
+ const single = mapImage(data);
167
+ return single ? [single] : [];
168
+ }
13
169
 
14
- const mapTopSlider = (props) => ({
15
- // slides: props.slides ?? [],
170
+ const mapHeroSection = (props) => ({
171
+ title: props?.texts?.title,
172
+ subtitle: props?.texts?.subtitle,
173
+ text: props?.texts?.text,
174
+ buttons: mapButtons(props?.buttons),
16
175
  });
17
176
 
18
177
  // importa más mappers aquí...
19
178
  const componentMappers = {
20
- 'top-slider': mapTopSlider,
21
- // añade los demás
179
+ 'hero-section': mapHeroSection,
22
180
  };
23
181
 
24
182
  class MapperService {
@@ -67,8 +225,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
67
225
  * Public API Surface of ui-lib
68
226
  */
69
227
  /* COMPONENTS */
70
- // /* UTILS */
71
- // export * from './lib/utils';
72
228
  // /* ENUMS */
73
229
  // export * from './lib/Enum';
74
230
  // export * from './lib/ui-lib.component';
@@ -77,5 +233,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
77
233
  * Generated bundle index. Do not edit.
78
234
  */
79
235
 
80
- export { MapperService, TopSliderComponent, componentMappers };
236
+ export { HeroSectionComponent, MapperService, componentMappers, mapButtons, mapImage, mapImageOrGallery };
81
237
  //# sourceMappingURL=lluc_llull-ui-lib.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"lluc_llull-ui-lib.mjs","sources":["../../../projects/ui-lib/src/lib/components/core/top-slider/top-slider.component.ts","../../../projects/ui-lib/src/lib/components/core/top-slider/top-slider.component.html","../../../projects/ui-lib/src/lib/services/mapper/component-mappers/top-slider.mapper.ts","../../../projects/ui-lib/src/lib/services/mapper/component-mappers/index.ts","../../../projects/ui-lib/src/lib/services/mapper/mapper.service.ts","../../../projects/ui-lib/src/public-api.ts","../../../projects/ui-lib/src/lluc_llull-ui-lib.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\n\n@Component({\n selector: 'lib-top-slider',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './top-slider.component.html',\n styleUrl: './top-slider.component.scss'\n})\nexport class TopSliderComponent {\n\n}\n","<p>top-slider works!</p>\n","import { ComponentMapperFn } from './types';\n\nexport const mapTopSlider: ComponentMapperFn = (props) => ({\n // slides: props.slides ?? [],\n});\n","import { mapTopSlider } from './top-slider.mapper';\n// importa más mappers aquí...\n\nexport const componentMappers: Record<string, (props: any) => any> = {\n 'top-slider': mapTopSlider,\n // añade los demás\n};\n","import { inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { BodyComponent } from '../../interfaces/page-config.interface';\nimport { componentMappers } from './component-mappers';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MapperService {\n private platformId = inject(PLATFORM_ID);\n\n mapComponents<T>(body: any[]): BodyComponent<T>[] {\n if (!body || body.length === 0) {\n return [];\n }\n\n return body\n .filter(\n (component) => component && component.name && component.props\n )\n .map((component) => {\n const name = component.name.toLowerCase();\n const mapper = componentMappers[name];\n\n const mapped: BodyComponent<T> = {\n name,\n order: component.order,\n props: {} as T,\n };\n\n if (mapper) {\n try {\n mapped.props = mapper(component.props) as T;\n } catch (e) {\n console.error(\n `Error mapping props for component \"${name}\"`,\n e\n );\n }\n } else {\n console.warn(`No mapper found for component \"${name}\"`);\n }\n\n return mapped;\n });\n }\n}\n","/*\n * Public API Surface of ui-lib\n */\n\n/* COMPONENTS */\nexport * from './lib/components/core/index';\n// export * from './lib/components/shared/index';\n\n// /* SERVICES */\nexport * from './lib/services';\n\n// /* INTERFACES */\nexport * from './lib/interfaces/index';\n\n// /* UTILS */\n// export * from './lib/utils';\n\n// /* ENUMS */\n// export * from './lib/Enum';\n\n// export * from './lib/ui-lib.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;MAUa,kBAAkB,CAAA;+GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECV/B,4BACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDKY,YAAY,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAIX,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAP9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gBAAgB,EAAA,UAAA,EACd,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,4BAAA,EAAA;;;AEJlB,MAAM,YAAY,GAAsB,CAAC,KAAK,MAAM;AACvD;AACH,CAAA,CAAC;;ACHF;AAEO,MAAM,gBAAgB,GAAwC;AACjE,IAAA,YAAY,EAAE,YAAY;;;;MCGjB,aAAa,CAAA;AAH1B,IAAA,WAAA,GAAA;AAIY,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;AAqC3C,IAAA;AAnCG,IAAA,aAAa,CAAI,IAAW,EAAA;QACxB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AAC5B,YAAA,OAAO,EAAE;QACb;AAEA,QAAA,OAAO;AACF,aAAA,MAAM,CACH,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,KAAK;AAEhE,aAAA,GAAG,CAAC,CAAC,SAAS,KAAI;YACf,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE;AACzC,YAAA,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC;AAErC,YAAA,MAAM,MAAM,GAAqB;gBAC7B,IAAI;gBACJ,KAAK,EAAE,SAAS,CAAC,KAAK;AACtB,gBAAA,KAAK,EAAE,EAAO;aACjB;YAED,IAAI,MAAM,EAAE;AACR,gBAAA,IAAI;oBACA,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAM;gBAC/C;gBAAE,OAAO,CAAC,EAAE;oBACR,OAAO,CAAC,KAAK,CACT,CAAA,mCAAA,EAAsC,IAAI,CAAA,CAAA,CAAG,EAC7C,CAAC,CACJ;gBACL;YACJ;iBAAO;AACH,gBAAA,OAAO,CAAC,IAAI,CAAC,kCAAkC,IAAI,CAAA,CAAA,CAAG,CAAC;YAC3D;AAEA,YAAA,OAAO,MAAM;AACjB,QAAA,CAAC,CAAC;IACV;+GArCS,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,cAFV,MAAM,EAAA,CAAA,CAAA;;4FAET,aAAa,EAAA,UAAA,EAAA,CAAA;kBAHzB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA;;;ACND;;AAEG;AAEH;AAUA;AACA;AAEA;AACA;AAEA;;ACpBA;;AAEG;;;;"}
1
+ {"version":3,"file":"lluc_llull-ui-lib.mjs","sources":["../../../projects/ui-lib/src/lib/Enum/link-type.enum.ts","../../../projects/ui-lib/src/lib/directives/link-type.directive.ts","../../../projects/ui-lib/src/lib/components/core/hero-section/hero-section.component.ts","../../../projects/ui-lib/src/lib/components/core/hero-section/hero-section.component.html","../../../projects/ui-lib/src/lib/utils/utils.ts","../../../projects/ui-lib/src/lib/services/mapper/component-mappers/hero-section.mapper.ts","../../../projects/ui-lib/src/lib/services/mapper/component-mappers/index.ts","../../../projects/ui-lib/src/lib/services/mapper/mapper.service.ts","../../../projects/ui-lib/src/public-api.ts","../../../projects/ui-lib/src/lluc_llull-ui-lib.ts"],"sourcesContent":["export enum LinkType {\n Internal = 'internal',\n External = 'external',\n Anchor = 'anchor',\n Pdf = 'pdf',\n NoLink = 'nolink',\n}\n","import { isPlatformBrowser } from '@angular/common';\nimport { Directive, ElementRef, EventEmitter, HostListener, inject, Input, OnInit, Output, PLATFORM_ID } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { LinkType } from '../Enum/link-type.enum';\n\n@Directive({\n selector: '[linkType]',\n standalone: true,\n})\nexport class LinkTypeDirective implements OnInit {\n @Input() linkType?: LinkType;\n @Input() href?: string;\n @Output() anchorClicked = new EventEmitter<void>();\n\n private readonly platformId = inject(PLATFORM_ID);\n\n constructor(private readonly router: Router, private readonly elRef: ElementRef) {}\n\n ngOnInit(): void {\n this.setupLinkAttributes();\n }\n\n @HostListener('click', ['$event'])\n onClick(event: Event): void {\n if (!this.linkType || !this.href) {\n this.disableLink();\n return;\n }\n\n event.preventDefault();\n\n switch (this.linkType) {\n case 'internal':\n this.navigateInternal(this.href);\n break;\n case 'external':\n case 'pdf':\n this.openExternal(this.href);\n break;\n case 'anchor':\n this.scrollToAnchor(this.href);\n break;\n case 'nolink':\n this.disableLink();\n break;\n default:\n console.warn(`Unsupported linkType: ${this.linkType}`);\n }\n }\n\n private setupLinkAttributes() {\n if (!this.linkType || !this.href) {\n this.disableLink();\n return;\n }\n\n this.elRef.nativeElement.setAttribute('href', this.href);\n\n if (this.linkType === 'external') {\n this.elRef.nativeElement.setAttribute('rel', 'nofollow');\n }\n }\n\n private navigateInternal(url: string) {\n const cleanedUrl = url.trim().replace(/\\/+$/, '');\n this.anchorClicked.emit();\n this.router.navigateByUrl('/' + cleanedUrl);\n }\n\n private openExternal(url: string) {\n if (isPlatformBrowser(this.platformId)) {\n window.open(url, '_blank');\n }\n }\n\n private scrollToAnchor(id: string) {\n if (isPlatformBrowser(this.platformId)) {\n const el = document.getElementById(id);\n if (el) {\n const yOffset = -160;\n const y = el.getBoundingClientRect().top + window.scrollY + yOffset;\n window.scrollTo({ top: y, behavior: 'smooth' });\n this.anchorClicked.emit();\n } else {\n console.warn(`Anchor \"${id}\" not found`);\n }\n }\n }\n\n private disableLink() {\n const element = this.elRef.nativeElement;\n const parentLi = element.closest('li');\n const isInMenu = parentLi?.classList.contains('menu-item-has-children');\n\n if (!isInMenu) {\n element.removeAttribute('href');\n element.setAttribute('aria-disabled', 'true');\n element.setAttribute('tabindex', '-1');\n element.style.cursor = 'default';\n element.style.pointerEvents = 'none';\n }\n }\n}\nexport { LinkType };\n\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { UiLibButtonI } from '../../../interfaces';\nimport { LinkTypeDirective } from '../../../directives/link-type.directive';\n\n@Component({\n selector: 'lib-hero-section',\n standalone: true,\n imports: [CommonModule, LinkTypeDirective],\n templateUrl: './hero-section.component.html',\n styleUrl: './hero-section.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class HeroSectionComponent {\n @Input() title?: string;\n @Input() subtitle?: string;\n @Input() text?: string;\n @Input() buttons?: UiLibButtonI[];\n}\n","<div class=\"hero-section\">\n @if (title) {\n <h1>{{ title }}</h1>\n }\n @if (text) {\n <p>{{ text }}</p>\n }\n @if (buttons && buttons.length > 0) {\n <div class=\"buttons\">\n @for (button of buttons; track $index) {\n <ng-container>\n <a class=\"btn\" [href]=\"button.url\" [linkType]=\"button.linkType\">\n {{ button.label }}\n </a>\n </ng-container>\n }\n </div>\n }\n</div>\n","import { UiLibButtonI } from '../interfaces/ui-lib-button.interface';\nimport { UiLibImageI } from '../interfaces/ui-lib-image.interface';\n\nexport function mapButtons(data: any): UiLibButtonI[] {\n if (!Array.isArray(data)) return [];\n\n return data\n .filter((item) => item && typeof item === 'object')\n .map(\n (item): UiLibButtonI => ({\n label: item.label ?? '',\n url: item.url ?? '#',\n linkType: item.link_type ?? 'none',\n icon: item.icon,\n })\n );\n}\n\nexport function mapImage(data: any): UiLibImageI | null {\n if (!data || typeof data !== 'object') return null;\n\n return {\n url: data.url ?? '',\n alt: data.alt ?? '',\n width: data.width,\n height: data.height,\n format: data.format,\n };\n}\n\nexport function mapImageOrGallery(data: any): UiLibImageI[] {\n if (!data) return [];\n\n // Si es array → galería\n if (Array.isArray(data)) {\n return data\n .filter((img) => img && typeof img === 'object')\n .map((img) => mapImage(img)!)\n .filter(Boolean);\n }\n\n // Si es objeto → imagen única\n const single = mapImage(data);\n return single ? [single] : [];\n}\n","import { mapButtons } from '../../../utils/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapHeroSection: ComponentMapperFn = (props) => ({\n title: props?.texts?.title,\n subtitle: props?.texts?.subtitle,\n text: props?.texts?.text,\n buttons: mapButtons(props?.buttons),\n});\n","import { mapHeroSection } from './hero-section.mapper';\n// importa más mappers aquí...\n\nexport const componentMappers: Record<string, (props: any) => any> = {\n 'hero-section': mapHeroSection,\n};\n","import { inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { BodyComponent } from '../../interfaces/page-config.interface';\nimport { componentMappers } from './component-mappers';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MapperService {\n private platformId = inject(PLATFORM_ID);\n\n mapComponents<T>(body: any[]): BodyComponent<T>[] {\n if (!body || body.length === 0) {\n return [];\n }\n\n return body\n .filter(\n (component) => component && component.name && component.props\n )\n .map((component) => {\n const name = component.name.toLowerCase();\n const mapper = componentMappers[name];\n\n const mapped: BodyComponent<T> = {\n name,\n order: component.order,\n props: {} as T,\n };\n\n if (mapper) {\n try {\n mapped.props = mapper(component.props) as T;\n } catch (e) {\n console.error(\n `Error mapping props for component \"${name}\"`,\n e\n );\n }\n } else {\n console.warn(`No mapper found for component \"${name}\"`);\n }\n\n return mapped;\n });\n }\n}\n","/*\n * Public API Surface of ui-lib\n */\n\n/* COMPONENTS */\nexport * from './lib/components/core/index';\n// export * from './lib/components/shared/index';\n\n// /* SERVICES */\nexport * from './lib/services';\n\n// /* INTERFACES */\nexport * from './lib/interfaces/index';\n\n// /* UTILS */\nexport * from './lib/utils';\n\n// /* ENUMS */\n// export * from './lib/Enum';\n\n// export * from './lib/ui-lib.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare enum LinkType {
2
+ Internal = "internal",
3
+ External = "external",
4
+ Anchor = "anchor",
5
+ Pdf = "pdf",
6
+ NoLink = "nolink"
7
+ }
@@ -0,0 +1,10 @@
1
+ import { UiLibButtonI } from '../../../interfaces';
2
+ import * as i0 from "@angular/core";
3
+ export declare class HeroSectionComponent {
4
+ title?: string;
5
+ subtitle?: string;
6
+ text?: string;
7
+ buttons?: UiLibButtonI[];
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<HeroSectionComponent, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<HeroSectionComponent, "lib-hero-section", never, { "title": { "alias": "title"; "required": false; }; "subtitle": { "alias": "subtitle"; "required": false; }; "text": { "alias": "text"; "required": false; }; "buttons": { "alias": "buttons"; "required": false; }; }, {}, never, never, true, never>;
10
+ }
@@ -0,0 +1,7 @@
1
+ import { UiLibButtonI } from "../../../interfaces/ui-lib-button.interface";
2
+ export interface HeroSectionI {
3
+ title?: string;
4
+ subtitle?: string;
5
+ text?: string;
6
+ buttons?: UiLibButtonI[];
7
+ }
@@ -0,0 +1,2 @@
1
+ export * from './hero-section.component';
2
+ export * from './hero-section.interface';
@@ -1 +1 @@
1
- export * from './top-slider';
1
+ export * from './hero-section';
@@ -0,0 +1,23 @@
1
+ import { ElementRef, EventEmitter, OnInit } from '@angular/core';
2
+ import { Router } from '@angular/router';
3
+ import { LinkType } from '../Enum/link-type.enum';
4
+ import * as i0 from "@angular/core";
5
+ export declare class LinkTypeDirective implements OnInit {
6
+ private readonly router;
7
+ private readonly elRef;
8
+ linkType?: LinkType;
9
+ href?: string;
10
+ anchorClicked: EventEmitter<void>;
11
+ private readonly platformId;
12
+ constructor(router: Router, elRef: ElementRef);
13
+ ngOnInit(): void;
14
+ onClick(event: Event): void;
15
+ private setupLinkAttributes;
16
+ private navigateInternal;
17
+ private openExternal;
18
+ private scrollToAnchor;
19
+ private disableLink;
20
+ static ɵfac: i0.ɵɵFactoryDeclaration<LinkTypeDirective, never>;
21
+ static ɵdir: i0.ɵɵDirectiveDeclaration<LinkTypeDirective, "[linkType]", never, { "linkType": { "alias": "linkType"; "required": false; }; "href": { "alias": "href"; "required": false; }; }, { "anchorClicked": "anchorClicked"; }, never, never, true, never>;
22
+ }
23
+ export { LinkType };
@@ -1,2 +1,4 @@
1
1
  export * from './page-config.interface';
2
2
  export * from './site-config.interface';
3
+ export * from './ui-lib-button.interface';
4
+ export * from './ui-lib-image.interface';
@@ -0,0 +1,7 @@
1
+ import { LinkType } from "../Enum/link-type.enum";
2
+ export interface UiLibButtonI {
3
+ label: string;
4
+ url: string;
5
+ linkType: LinkType;
6
+ icon?: string;
7
+ }
@@ -0,0 +1,7 @@
1
+ export interface UiLibImageI {
2
+ url: string;
3
+ alt: string;
4
+ width?: number;
5
+ height?: number;
6
+ format?: string;
7
+ }
@@ -0,0 +1,2 @@
1
+ import { ComponentMapperFn } from './types';
2
+ export declare const mapHeroSection: ComponentMapperFn;
@@ -0,0 +1 @@
1
+ export * from './utils';
@@ -0,0 +1,5 @@
1
+ import { UiLibButtonI } from '../interfaces/ui-lib-button.interface';
2
+ import { UiLibImageI } from '../interfaces/ui-lib-image.interface';
3
+ export declare function mapButtons(data: any): UiLibButtonI[];
4
+ export declare function mapImage(data: any): UiLibImageI | null;
5
+ export declare function mapImageOrGallery(data: any): UiLibImageI[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lluc_llull/ui-lib",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^17.3.0",
6
6
  "@angular/core": "^17.3.0"
package/public-api.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export * from './lib/components/core/index';
2
2
  export * from './lib/services';
3
3
  export * from './lib/interfaces/index';
4
+ export * from './lib/utils';
@@ -1,3 +0,0 @@
1
- export * from './top-slider.interface';
2
- export * from './top-slider.component';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvdG9wLXNsaWRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3RvcC1zbGlkZXIuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vdG9wLXNsaWRlci5jb21wb25lbnQnO1xuXG4iXX0=
@@ -1,12 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { Component } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- export class TopSliderComponent {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopSliderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TopSliderComponent, isStandalone: true, selector: "lib-top-slider", ngImport: i0, template: "<p>top-slider works!</p>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
7
- }
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TopSliderComponent, decorators: [{
9
- type: Component,
10
- args: [{ selector: 'lib-top-slider', standalone: true, imports: [CommonModule], template: "<p>top-slider works!</p>\n" }]
11
- }] });
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wLXNsaWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvdG9wLXNsaWRlci90b3Atc2xpZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvY29yZS90b3Atc2xpZGVyL3RvcC1zbGlkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUzFDLE1BQU0sT0FBTyxrQkFBa0I7K0dBQWxCLGtCQUFrQjttR0FBbEIsa0JBQWtCLDBFQ1YvQiw0QkFDQSx5RERLWSxZQUFZOzs0RkFJWCxrQkFBa0I7a0JBUDlCLFNBQVM7K0JBQ0UsZ0JBQWdCLGNBQ2QsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItdG9wLXNsaWRlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9wLXNsaWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi90b3Atc2xpZGVyLmNvbXBvbmVudC5zY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBUb3BTbGlkZXJDb21wb25lbnQge1xuXG59XG4iLCI8cD50b3Atc2xpZGVyIHdvcmtzITwvcD5cbiJdfQ==
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wLXNsaWRlci5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9jb21wb25lbnRzL2NvcmUvdG9wLXNsaWRlci90b3Atc2xpZGVyLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBUb3BTbGlkZXJJIHtcblxufVxuIl19
@@ -1,4 +0,0 @@
1
- export const mapTopSlider = (props) => ({
2
- // slides: props.slides ?? [],
3
- });
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wLXNsaWRlci5tYXBwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9tYXBwZXIvY29tcG9uZW50LW1hcHBlcnMvdG9wLXNsaWRlci5tYXBwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFzQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztBQUN2RCw4QkFBOEI7Q0FDakMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50TWFwcGVyRm4gfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IG1hcFRvcFNsaWRlcjogQ29tcG9uZW50TWFwcGVyRm4gPSAocHJvcHMpID0+ICh7XG4gICAgLy8gc2xpZGVzOiBwcm9wcy5zbGlkZXMgPz8gW10sXG59KTtcbiJdfQ==
@@ -1,2 +0,0 @@
1
- export * from './top-slider.interface';
2
- export * from './top-slider.component';
@@ -1,5 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- export declare class TopSliderComponent {
3
- static ɵfac: i0.ɵɵFactoryDeclaration<TopSliderComponent, never>;
4
- static ɵcmp: i0.ɵɵComponentDeclaration<TopSliderComponent, "lib-top-slider", never, {}, {}, never, never, true, never>;
5
- }
@@ -1,2 +0,0 @@
1
- export interface TopSliderI {
2
- }
@@ -1,2 +0,0 @@
1
- import { ComponentMapperFn } from './types';
2
- export declare const mapTopSlider: ComponentMapperFn;