@lluc_llull/ui-lib 0.19.3 → 0.20.0
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/content/contact-minimal/contact-minimal.component.d.ts +11 -0
- package/content/contact-minimal/contact-minimal.interface.d.ts +8 -0
- package/content/contact-minimal/index.d.ts +2 -0
- package/content/index.d.ts +1 -0
- package/fesm2022/lluc_llull-ui-lib-content.mjs +25 -1
- package/fesm2022/lluc_llull-ui-lib-content.mjs.map +1 -1
- package/fesm2022/lluc_llull-ui-lib-mapper.mjs +30 -21
- package/fesm2022/lluc_llull-ui-lib-mapper.mjs.map +1 -1
- package/mapper/component-mappers/contact-minimal.mapper.d.ts +2 -0
- package/mapper/component-mappers/index.d.ts +4 -3
- package/package.json +1 -1
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { UiLibButtonI, UiLibImageI } from '@lluc_llull/ui-lib/interfaces';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class ContactMinimalComponent {
|
|
4
|
+
contactsTitle?: string;
|
|
5
|
+
socialsTitle?: string;
|
|
6
|
+
contacts?: UiLibButtonI[];
|
|
7
|
+
socials?: UiLibButtonI[];
|
|
8
|
+
img?: UiLibImageI;
|
|
9
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ContactMinimalComponent, never>;
|
|
10
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ContactMinimalComponent, "lib-contact-minimal", never, { "contactsTitle": { "alias": "contactsTitle"; "required": false; }; "socialsTitle": { "alias": "socialsTitle"; "required": false; }; "contacts": { "alias": "contacts"; "required": false; }; "socials": { "alias": "socials"; "required": false; }; "img": { "alias": "img"; "required": false; }; }, {}, never, never, true, never>;
|
|
11
|
+
}
|
package/content/index.d.ts
CHANGED
|
@@ -122,9 +122,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImpo
|
|
|
122
122
|
type: Input
|
|
123
123
|
}] } });
|
|
124
124
|
|
|
125
|
+
class ContactMinimalComponent {
|
|
126
|
+
contactsTitle;
|
|
127
|
+
socialsTitle;
|
|
128
|
+
contacts;
|
|
129
|
+
socials;
|
|
130
|
+
img;
|
|
131
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ContactMinimalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
132
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.19", type: ContactMinimalComponent, isStandalone: true, selector: "lib-contact-minimal", inputs: { contactsTitle: "contactsTitle", socialsTitle: "socialsTitle", contacts: "contacts", socials: "socials", img: "img" }, ngImport: i0, template: "<div class=\"contact-minimal layout-padding\">\n <div class=\"contact-minimal__content\">\n <div class=\"contact-minimal__content--left\">\n @if (contactsTitle) {\n <h2 class=\"subtitle\" [highlight]=\"'#FFFFFF'\">{{ contactsTitle }}</h2>\n }\n @if (contacts && contacts.length > 0) {\n <div class=\"btn-group\">\n @for (contact of contacts; track $index) {\n <a [href]=\"contact?.url\" [linkType]=\"contact?.linkType\" class=\"btn btn-link\">\n {{ contact?.label }}\n </a>\n }\n </div>\n }\n </div>\n <div class=\"contact-minimal__content--right\">\n @if (socialsTitle) {\n <h2 class=\"subtitle\" [highlight]=\"'#FFFFFF'\">{{ socialsTitle }}</h2>\n }\n @if (socials && socials.length > 0) {\n <div class=\"btn-group\">\n @for (social of socials; track $index) {\n <a [href]=\"social?.url\" [linkType]=\"social?.linkType\" class=\"btn btn-link\">\n {{ social?.label }}\n </a>\n }\n </div>\n }\n </div>\n @if (img) {\n <div class=\"contact-minimal__content--media\">\n <img [src]=\"img.url\" [alt]=\"img.alt\" />\n </div>\n }\n </div>\n</div>\n", styles: [".contact-minimal__content{display:grid;grid-auto-flow:column;justify-content:space-between}.contact-minimal__content--media{width:10rem;height:auto;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (max-width: 768px){.contact-minimal__content--media{width:8rem;top:70%}}.contact-minimal .btn-group{display:flex;flex-direction:column;margin-top:0;gap:0}.contact-minimal .btn{justify-content:start}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: HighlightDirective, selector: "[highlight]", inputs: ["highlight", "highlightThickness"] }, { kind: "directive", type: LinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href"], outputs: ["anchorClicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
133
|
+
}
|
|
134
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: ContactMinimalComponent, decorators: [{
|
|
135
|
+
type: Component,
|
|
136
|
+
args: [{ selector: 'lib-contact-minimal', imports: [CommonModule, HighlightDirective, LinkTypeDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"contact-minimal layout-padding\">\n <div class=\"contact-minimal__content\">\n <div class=\"contact-minimal__content--left\">\n @if (contactsTitle) {\n <h2 class=\"subtitle\" [highlight]=\"'#FFFFFF'\">{{ contactsTitle }}</h2>\n }\n @if (contacts && contacts.length > 0) {\n <div class=\"btn-group\">\n @for (contact of contacts; track $index) {\n <a [href]=\"contact?.url\" [linkType]=\"contact?.linkType\" class=\"btn btn-link\">\n {{ contact?.label }}\n </a>\n }\n </div>\n }\n </div>\n <div class=\"contact-minimal__content--right\">\n @if (socialsTitle) {\n <h2 class=\"subtitle\" [highlight]=\"'#FFFFFF'\">{{ socialsTitle }}</h2>\n }\n @if (socials && socials.length > 0) {\n <div class=\"btn-group\">\n @for (social of socials; track $index) {\n <a [href]=\"social?.url\" [linkType]=\"social?.linkType\" class=\"btn btn-link\">\n {{ social?.label }}\n </a>\n }\n </div>\n }\n </div>\n @if (img) {\n <div class=\"contact-minimal__content--media\">\n <img [src]=\"img.url\" [alt]=\"img.alt\" />\n </div>\n }\n </div>\n</div>\n", styles: [".contact-minimal__content{display:grid;grid-auto-flow:column;justify-content:space-between}.contact-minimal__content--media{width:10rem;height:auto;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (max-width: 768px){.contact-minimal__content--media{width:8rem;top:70%}}.contact-minimal .btn-group{display:flex;flex-direction:column;margin-top:0;gap:0}.contact-minimal .btn{justify-content:start}\n"] }]
|
|
137
|
+
}], propDecorators: { contactsTitle: [{
|
|
138
|
+
type: Input
|
|
139
|
+
}], socialsTitle: [{
|
|
140
|
+
type: Input
|
|
141
|
+
}], contacts: [{
|
|
142
|
+
type: Input
|
|
143
|
+
}], socials: [{
|
|
144
|
+
type: Input
|
|
145
|
+
}], img: [{
|
|
146
|
+
type: Input
|
|
147
|
+
}] } });
|
|
148
|
+
|
|
125
149
|
/**
|
|
126
150
|
* Generated bundle index. Do not edit.
|
|
127
151
|
*/
|
|
128
152
|
|
|
129
|
-
export { CategoryProgressComponent, Default, HeroSectionComponent, SectionIntroComponent, SplitPreviewerComponent };
|
|
153
|
+
export { CategoryProgressComponent, ContactMinimalComponent, Default, HeroSectionComponent, SectionIntroComponent, SplitPreviewerComponent };
|
|
130
154
|
//# sourceMappingURL=lluc_llull-ui-lib-content.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lluc_llull-ui-lib-content.mjs","sources":["../../../projects/ui-lib/content/category-progress/category-progress.component.ts","../../../projects/ui-lib/content/category-progress/category-progress.component.html","../../../projects/ui-lib/content/hero-section/hero-section.component.ts","../../../projects/ui-lib/content/hero-section/hero-section.component.html","../../../projects/ui-lib/content/hero-section/hero-section.stories.ts","../../../projects/ui-lib/content/section-intro/section-intro.component.ts","../../../projects/ui-lib/content/section-intro/section-intro.component.html","../../../projects/ui-lib/content/split-previewer/split-previewer.component.ts","../../../projects/ui-lib/content/split-previewer/split-previewer.component.html","../../../projects/ui-lib/content/lluc_llull-ui-lib-content.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { HighlightDirective } from '@lluc_llull/ui-lib/directives';\n\n@Component({\n selector: 'lib-category-progress',\n standalone: true,\n imports: [CommonModule, HighlightDirective],\n templateUrl: './category-progress.component.html',\n styleUrl: './category-progress.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CategoryProgressComponent {\n @Input() pretitle?: string;\n @Input() title?: string;\n @Input() categories?: ProgressCategoryI[];\n}\n\nexport interface ProgressItemI {\n label: string;\n value: number;\n}\n\nexport interface ProgressCategoryI {\n title: string;\n items: ProgressItemI[];\n}\n","<div class=\"category-progress layout-padding\">\n @if (pretitle) {\n <h3 class=\"pretitle\">{{ pretitle }}</h3>\n }\n @if (title) {\n <h2 class=\"title\">{{ title }}</h2>\n }\n <div class=\"progress-grid\">\n @for (category of categories; track $index) {\n <div class=\"category\">\n <h3 class=\"subtitle\" [highlight]=\"'#FFFFFF'\">{{ category.title }}</h3>\n\n @for (item of category.items; track $index) {\n <div class=\"item\">\n <div class=\"item-info\">\n <span class=\"label\">{{ item.label }}</span>\n <span class=\"value\">{{ item.value }}%</span>\n </div>\n\n <div class=\"bar\">\n <div class=\"fill\" [style.width.%]=\"item.value\"></div>\n </div>\n </div>\n }\n </div>\n }\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { LinkTypeDirective } from '@lluc_llull/ui-lib/directives';\nimport { UiLibButtonI } from '@lluc_llull/ui-lib/interfaces';\nimport { UiIconComponent } from '@lluc_llull/ui-lib/shared';\n\n@Component({\n selector: 'lib-hero-section',\n standalone: true,\n imports: [CommonModule, LinkTypeDirective, UiIconComponent],\n templateUrl: './hero-section.component.html',\n styleUrl: './hero-section.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class HeroSectionComponent {\n @Input() pretitle?: string;\n @Input() title?: string;\n @Input() subtitle?: string;\n @Input() text?: string;\n @Input() buttons?: UiLibButtonI[];\n @Input() highlight?: string;\n}\n","<div class=\"hero-section\">\n @if (pretitle) {\n <h2 class=\"pretitle\">{{ pretitle }}</h2>\n }\n @if (title) {\n <h1 class=\"title\">\n @if (highlight && title.includes(highlight)) {\n {{ title.replace(highlight, '') }}\n <span class=\"highlight-text\">\n {{ highlight }}\n <div class=\"wave-wrapper\">\n <div class=\"wave\"></div>\n </div>\n </span>\n } @else {\n {{ title }}\n }\n </h1>\n }\n @if (subtitle) {\n <h2 class=\"subtitle\">{{ subtitle }}</h2>\n }\n @if (text) {\n <p class=\"text\">{{ text }}</p>\n }\n @if (buttons && buttons.length > 0) {\n <div class=\"btn-group--center\">\n @for (button of buttons; track $index) {\n <a class=\"btn btn-link\" [href]=\"button.url\" [linkType]=\"button.linkType\">\n <ui-icon [name]=\"button.icon!\" [size]=\"17\" [color]=\"'var(--color-primary)'\"></ui-icon>\n {{ button.label }}\n </a>\n }\n </div>\n }\n</div>\n","import { Meta, StoryObj } from '@storybook/angular';\nimport { LinkType } from \"@lluc_llull/ui-lib/enums\";\nimport { HeroSectionComponent } from './hero-section.component';\n\nexport default {\n title: 'Core/Content/HeroSection',\n component: HeroSectionComponent,\n tags: ['autodocs'],\n argTypes: {\n title: { control: 'text' },\n subtitle: { control: 'text' },\n text: { control: 'text' },\n buttons: { control: 'object' },\n },\n} as Meta<HeroSectionComponent>;\n\ntype Story = StoryObj<HeroSectionComponent>;\n\nexport const Default: Story = {\n args: {\n title: 'Título de ejemplo',\n subtitle: 'Subtítulo de ejemplo',\n text: 'Texto descriptivo de ejemplo para el Hero Section.',\n buttons: [\n { label: 'Botón 1', url: 'https://www.google.com', linkType: LinkType.External },\n { label: 'Botón 2', url: 'https://www.google.com', linkType: LinkType.External },\n ],\n },\n};\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { LinkTypeDirective } from '@lluc_llull/ui-lib/directives';\nimport { UiLibButtonI } from '@lluc_llull/ui-lib/interfaces';\nimport { UiIconComponent } from '@lluc_llull/ui-lib/shared';\n\n@Component({\n selector: 'lib-section-intro',\n standalone: true,\n imports: [CommonModule, LinkTypeDirective, UiIconComponent],\n templateUrl: './section-intro.component.html',\n styleUrl: './section-intro.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SectionIntroComponent {\n @Input() pretitle?: string;\n @Input() title?: string;\n @Input() subtitle?: string;\n @Input() text?: string;\n @Input() button?: UiLibButtonI;\n}\n","<div class=\"section-intro layout-padding\">\n @if (pretitle) {\n <h2 class=\"pretitle\">{{ pretitle }}</h2>\n }\n @if (title) {\n <h1 class=\"title\">{{ title }}</h1>\n }\n @if (subtitle) {\n <h2 class=\"subtitle\">{{ subtitle }}</h2>\n }\n @if (text) {\n <p class=\"text\">{{ text }}</p>\n }\n @if (button) {\n <div class=\"btn-group\">\n <a [href]=\"button.url\" [linkType]=\"button.linkType\" class=\"btn btn-link\">\n <ui-icon [name]=\"button.icon!\" [size]=\"17\" [color]=\"'var(--color-primary)'\"></ui-icon>\n {{ button.label }}\n </a>\n </div>\n }\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input, signal } from '@angular/core';\nimport { HighlightDirective, LinkTypeDirective } from '@lluc_llull/ui-lib/directives';\nimport { UiLibButtonI, UiLibImageI } from '@lluc_llull/ui-lib/interfaces';\n\n@Component({\n selector: 'lib-split-previewer',\n imports: [CommonModule, LinkTypeDirective, HighlightDirective],\n templateUrl: './split-previewer.component.html',\n styleUrl: './split-previewer.component.scss',\n})\nexport class SplitPreviewerComponent {\n @Input() title?: string;\n @Input() items?: SplitPreviewerItemI[];\n @Input() imageDefault?: UiLibImageI;\n @Input() direction: 'left' | 'right' = 'right';\n\n activeImage = signal<string | undefined>(undefined);\n\n get count(): number {\n return this.items?.length || 0;\n }\n}\n\nexport interface SplitPreviewerItemI {\n title?: string;\n type?: string;\n description?: string;\n tags?: string[];\n link?: UiLibButtonI;\n image?: UiLibImageI;\n}\n","<div class=\"split-previewer layout-padding\" [class]=\"'split-previewer--' + direction\">\n <div class=\"split-previewer__text-column\">\n <div class=\"split-previewer__header\">\n @if (title) {\n <h1 class=\"title\">{{ title }}</h1>\n }\n @if (count) {\n <span class=\"count\">{{ count }}</span>\n }\n </div>\n\n <div class=\"split-previewer__items\" (mouseleave)=\"activeImage.set(undefined)\">\n @for (item of items; track item.title) {\n <a\n [href]=\"item.link?.url\"\n (mouseenter)=\"activeImage.set(item.image?.url)\"\n class=\"split-previewer__item-link\"\n >\n <div class=\"split-previewer__item\">\n <h2 class=\"split-previewer__item-title\" [highlight]=\"'#FFFFFF'\">{{ item.title }}</h2>\n <p class=\"split-previewer__item-text\">{{ item.description }}</p>\n @if (item.tags?.length) {\n <div class=\"split-previewer__item-tags\">\n @for (tag of item.tags; track tag) {\n <span class=\"split-previewer__item-tag\">{{ tag }}</span>\n }\n </div>\n }\n </div>\n </a>\n }\n </div>\n </div>\n\n <div class=\"split-previewer__media\">\n <img [src]=\"activeImage() || imageDefault?.url\" alt=\"Preview\" class=\"preview-img\" />\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lluc_llull-ui-lib-content.mjs","sources":["../../../projects/ui-lib/content/category-progress/category-progress.component.ts","../../../projects/ui-lib/content/category-progress/category-progress.component.html","../../../projects/ui-lib/content/hero-section/hero-section.component.ts","../../../projects/ui-lib/content/hero-section/hero-section.component.html","../../../projects/ui-lib/content/hero-section/hero-section.stories.ts","../../../projects/ui-lib/content/section-intro/section-intro.component.ts","../../../projects/ui-lib/content/section-intro/section-intro.component.html","../../../projects/ui-lib/content/split-previewer/split-previewer.component.ts","../../../projects/ui-lib/content/split-previewer/split-previewer.component.html","../../../projects/ui-lib/content/contact-minimal/contact-minimal.component.ts","../../../projects/ui-lib/content/contact-minimal/contact-minimal.component.html","../../../projects/ui-lib/content/lluc_llull-ui-lib-content.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { HighlightDirective } from '@lluc_llull/ui-lib/directives';\n\n@Component({\n selector: 'lib-category-progress',\n standalone: true,\n imports: [CommonModule, HighlightDirective],\n templateUrl: './category-progress.component.html',\n styleUrl: './category-progress.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CategoryProgressComponent {\n @Input() pretitle?: string;\n @Input() title?: string;\n @Input() categories?: ProgressCategoryI[];\n}\n\nexport interface ProgressItemI {\n label: string;\n value: number;\n}\n\nexport interface ProgressCategoryI {\n title: string;\n items: ProgressItemI[];\n}\n","<div class=\"category-progress layout-padding\">\n @if (pretitle) {\n <h3 class=\"pretitle\">{{ pretitle }}</h3>\n }\n @if (title) {\n <h2 class=\"title\">{{ title }}</h2>\n }\n <div class=\"progress-grid\">\n @for (category of categories; track $index) {\n <div class=\"category\">\n <h3 class=\"subtitle\" [highlight]=\"'#FFFFFF'\">{{ category.title }}</h3>\n\n @for (item of category.items; track $index) {\n <div class=\"item\">\n <div class=\"item-info\">\n <span class=\"label\">{{ item.label }}</span>\n <span class=\"value\">{{ item.value }}%</span>\n </div>\n\n <div class=\"bar\">\n <div class=\"fill\" [style.width.%]=\"item.value\"></div>\n </div>\n </div>\n }\n </div>\n }\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { LinkTypeDirective } from '@lluc_llull/ui-lib/directives';\nimport { UiLibButtonI } from '@lluc_llull/ui-lib/interfaces';\nimport { UiIconComponent } from '@lluc_llull/ui-lib/shared';\n\n@Component({\n selector: 'lib-hero-section',\n standalone: true,\n imports: [CommonModule, LinkTypeDirective, UiIconComponent],\n templateUrl: './hero-section.component.html',\n styleUrl: './hero-section.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class HeroSectionComponent {\n @Input() pretitle?: string;\n @Input() title?: string;\n @Input() subtitle?: string;\n @Input() text?: string;\n @Input() buttons?: UiLibButtonI[];\n @Input() highlight?: string;\n}\n","<div class=\"hero-section\">\n @if (pretitle) {\n <h2 class=\"pretitle\">{{ pretitle }}</h2>\n }\n @if (title) {\n <h1 class=\"title\">\n @if (highlight && title.includes(highlight)) {\n {{ title.replace(highlight, '') }}\n <span class=\"highlight-text\">\n {{ highlight }}\n <div class=\"wave-wrapper\">\n <div class=\"wave\"></div>\n </div>\n </span>\n } @else {\n {{ title }}\n }\n </h1>\n }\n @if (subtitle) {\n <h2 class=\"subtitle\">{{ subtitle }}</h2>\n }\n @if (text) {\n <p class=\"text\">{{ text }}</p>\n }\n @if (buttons && buttons.length > 0) {\n <div class=\"btn-group--center\">\n @for (button of buttons; track $index) {\n <a class=\"btn btn-link\" [href]=\"button.url\" [linkType]=\"button.linkType\">\n <ui-icon [name]=\"button.icon!\" [size]=\"17\" [color]=\"'var(--color-primary)'\"></ui-icon>\n {{ button.label }}\n </a>\n }\n </div>\n }\n</div>\n","import { Meta, StoryObj } from '@storybook/angular';\nimport { LinkType } from \"@lluc_llull/ui-lib/enums\";\nimport { HeroSectionComponent } from './hero-section.component';\n\nexport default {\n title: 'Core/Content/HeroSection',\n component: HeroSectionComponent,\n tags: ['autodocs'],\n argTypes: {\n title: { control: 'text' },\n subtitle: { control: 'text' },\n text: { control: 'text' },\n buttons: { control: 'object' },\n },\n} as Meta<HeroSectionComponent>;\n\ntype Story = StoryObj<HeroSectionComponent>;\n\nexport const Default: Story = {\n args: {\n title: 'Título de ejemplo',\n subtitle: 'Subtítulo de ejemplo',\n text: 'Texto descriptivo de ejemplo para el Hero Section.',\n buttons: [\n { label: 'Botón 1', url: 'https://www.google.com', linkType: LinkType.External },\n { label: 'Botón 2', url: 'https://www.google.com', linkType: LinkType.External },\n ],\n },\n};\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { LinkTypeDirective } from '@lluc_llull/ui-lib/directives';\nimport { UiLibButtonI } from '@lluc_llull/ui-lib/interfaces';\nimport { UiIconComponent } from '@lluc_llull/ui-lib/shared';\n\n@Component({\n selector: 'lib-section-intro',\n standalone: true,\n imports: [CommonModule, LinkTypeDirective, UiIconComponent],\n templateUrl: './section-intro.component.html',\n styleUrl: './section-intro.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SectionIntroComponent {\n @Input() pretitle?: string;\n @Input() title?: string;\n @Input() subtitle?: string;\n @Input() text?: string;\n @Input() button?: UiLibButtonI;\n}\n","<div class=\"section-intro layout-padding\">\n @if (pretitle) {\n <h2 class=\"pretitle\">{{ pretitle }}</h2>\n }\n @if (title) {\n <h1 class=\"title\">{{ title }}</h1>\n }\n @if (subtitle) {\n <h2 class=\"subtitle\">{{ subtitle }}</h2>\n }\n @if (text) {\n <p class=\"text\">{{ text }}</p>\n }\n @if (button) {\n <div class=\"btn-group\">\n <a [href]=\"button.url\" [linkType]=\"button.linkType\" class=\"btn btn-link\">\n <ui-icon [name]=\"button.icon!\" [size]=\"17\" [color]=\"'var(--color-primary)'\"></ui-icon>\n {{ button.label }}\n </a>\n </div>\n }\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input, signal } from '@angular/core';\nimport { HighlightDirective, LinkTypeDirective } from '@lluc_llull/ui-lib/directives';\nimport { UiLibButtonI, UiLibImageI } from '@lluc_llull/ui-lib/interfaces';\n\n@Component({\n selector: 'lib-split-previewer',\n imports: [CommonModule, LinkTypeDirective, HighlightDirective],\n templateUrl: './split-previewer.component.html',\n styleUrl: './split-previewer.component.scss',\n})\nexport class SplitPreviewerComponent {\n @Input() title?: string;\n @Input() items?: SplitPreviewerItemI[];\n @Input() imageDefault?: UiLibImageI;\n @Input() direction: 'left' | 'right' = 'right';\n\n activeImage = signal<string | undefined>(undefined);\n\n get count(): number {\n return this.items?.length || 0;\n }\n}\n\nexport interface SplitPreviewerItemI {\n title?: string;\n type?: string;\n description?: string;\n tags?: string[];\n link?: UiLibButtonI;\n image?: UiLibImageI;\n}\n","<div class=\"split-previewer layout-padding\" [class]=\"'split-previewer--' + direction\">\n <div class=\"split-previewer__text-column\">\n <div class=\"split-previewer__header\">\n @if (title) {\n <h1 class=\"title\">{{ title }}</h1>\n }\n @if (count) {\n <span class=\"count\">{{ count }}</span>\n }\n </div>\n\n <div class=\"split-previewer__items\" (mouseleave)=\"activeImage.set(undefined)\">\n @for (item of items; track item.title) {\n <a\n [href]=\"item.link?.url\"\n (mouseenter)=\"activeImage.set(item.image?.url)\"\n class=\"split-previewer__item-link\"\n >\n <div class=\"split-previewer__item\">\n <h2 class=\"split-previewer__item-title\" [highlight]=\"'#FFFFFF'\">{{ item.title }}</h2>\n <p class=\"split-previewer__item-text\">{{ item.description }}</p>\n @if (item.tags?.length) {\n <div class=\"split-previewer__item-tags\">\n @for (tag of item.tags; track tag) {\n <span class=\"split-previewer__item-tag\">{{ tag }}</span>\n }\n </div>\n }\n </div>\n </a>\n }\n </div>\n </div>\n\n <div class=\"split-previewer__media\">\n <img [src]=\"activeImage() || imageDefault?.url\" alt=\"Preview\" class=\"preview-img\" />\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { UiLibButtonI, UiLibImageI } from '@lluc_llull/ui-lib/interfaces';\nimport { HighlightDirective, LinkTypeDirective } from '@lluc_llull/ui-lib/directives';\n\n@Component({\n selector: 'lib-contact-minimal',\n imports: [CommonModule, HighlightDirective, LinkTypeDirective],\n templateUrl: './contact-minimal.component.html',\n styleUrl: './contact-minimal.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ContactMinimalComponent {\n @Input() contactsTitle?: string;\n @Input() socialsTitle?: string;\n @Input() contacts?: UiLibButtonI[];\n @Input() socials?: UiLibButtonI[];\n @Input() img?: UiLibImageI;\n}\n\n","<div class=\"contact-minimal layout-padding\">\n <div class=\"contact-minimal__content\">\n <div class=\"contact-minimal__content--left\">\n @if (contactsTitle) {\n <h2 class=\"subtitle\" [highlight]=\"'#FFFFFF'\">{{ contactsTitle }}</h2>\n }\n @if (contacts && contacts.length > 0) {\n <div class=\"btn-group\">\n @for (contact of contacts; track $index) {\n <a [href]=\"contact?.url\" [linkType]=\"contact?.linkType\" class=\"btn btn-link\">\n {{ contact?.label }}\n </a>\n }\n </div>\n }\n </div>\n <div class=\"contact-minimal__content--right\">\n @if (socialsTitle) {\n <h2 class=\"subtitle\" [highlight]=\"'#FFFFFF'\">{{ socialsTitle }}</h2>\n }\n @if (socials && socials.length > 0) {\n <div class=\"btn-group\">\n @for (social of socials; track $index) {\n <a [href]=\"social?.url\" [linkType]=\"social?.linkType\" class=\"btn btn-link\">\n {{ social?.label }}\n </a>\n }\n </div>\n }\n </div>\n @if (img) {\n <div class=\"contact-minimal__content--media\">\n <img [src]=\"img.url\" [alt]=\"img.alt\" />\n </div>\n }\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,13 @@ import { mapButtons, mapImage } from '@lluc_llull/ui-lib/utils';
|
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
3
|
import { InjectionToken, PLATFORM_ID, Inject, Injectable } from '@angular/core';
|
|
4
4
|
|
|
5
|
+
const map404 = (props) => ({
|
|
6
|
+
title: props?.texts?.title,
|
|
7
|
+
subtitle: props?.texts?.subtitle,
|
|
8
|
+
highlight: props?.texts?.highlight,
|
|
9
|
+
button: mapButtons(props?.buttons)[0],
|
|
10
|
+
});
|
|
11
|
+
|
|
5
12
|
const mapCategoryProgress = (props) => ({
|
|
6
13
|
pretitle: props?.texts?.pretitle,
|
|
7
14
|
title: props?.texts?.title,
|
|
@@ -14,6 +21,14 @@ const mapCategoryProgress = (props) => ({
|
|
|
14
21
|
})),
|
|
15
22
|
});
|
|
16
23
|
|
|
24
|
+
const mapContactMinimal = (props, cdn) => ({
|
|
25
|
+
contactsTitle: props?.texts?.contactsTitle,
|
|
26
|
+
socialsTitle: props?.texts?.socialsTitle,
|
|
27
|
+
contacts: mapButtons(props?.items?.[0]?.buttons),
|
|
28
|
+
socials: mapButtons(props?.items?.[1]?.buttons),
|
|
29
|
+
img: mapImage(props?.multimedia?.image, cdn),
|
|
30
|
+
});
|
|
31
|
+
|
|
17
32
|
const mapNavModal = (navigation, lang) => {
|
|
18
33
|
if (!navigation?.items || !Array.isArray(navigation.items))
|
|
19
34
|
return [];
|
|
@@ -87,13 +102,6 @@ const mapLinksFooter = (props) => ({
|
|
|
87
102
|
links: mapButtons(props?.footer_links),
|
|
88
103
|
});
|
|
89
104
|
|
|
90
|
-
const map404 = (props) => ({
|
|
91
|
-
title: props?.texts?.title,
|
|
92
|
-
subtitle: props?.texts?.subtitle,
|
|
93
|
-
highlight: props?.texts?.highlight,
|
|
94
|
-
button: mapButtons(props?.buttons)[0],
|
|
95
|
-
});
|
|
96
|
-
|
|
97
105
|
const mapSectionIntro = (props) => ({
|
|
98
106
|
pretitle: props?.texts?.pretitle,
|
|
99
107
|
title: props?.texts?.title,
|
|
@@ -108,6 +116,19 @@ const mapSocialFooter = (props) => ({
|
|
|
108
116
|
hashtag: props?.texts?.hashtag,
|
|
109
117
|
});
|
|
110
118
|
|
|
119
|
+
const mapSplitPreviewer = (props, cdn) => ({
|
|
120
|
+
title: props?.texts?.title,
|
|
121
|
+
items: props?.items?.map((item) => ({
|
|
122
|
+
title: item.title,
|
|
123
|
+
description: item.description,
|
|
124
|
+
tags: item.tags,
|
|
125
|
+
link: mapButtons(item?.buttons)[0],
|
|
126
|
+
image: mapImage(item?.multimedia?.image, cdn),
|
|
127
|
+
})),
|
|
128
|
+
imageDefault: mapImage(props?.multimedia?.image, cdn),
|
|
129
|
+
direction: props?.direction || 'right',
|
|
130
|
+
});
|
|
131
|
+
|
|
111
132
|
const mapVisualFooter = (props) => ({
|
|
112
133
|
contactTitle: props?.texts?.contactTitle,
|
|
113
134
|
contactPhone: mapButtons(props?.contactPhone),
|
|
@@ -125,19 +146,6 @@ const mapVisualFooter = (props) => ({
|
|
|
125
146
|
image: mapImage(props?.multimedia),
|
|
126
147
|
});
|
|
127
148
|
|
|
128
|
-
const mapSplitPreviewer = (props, cdn) => ({
|
|
129
|
-
title: props?.texts?.title,
|
|
130
|
-
items: props?.items?.map((item) => ({
|
|
131
|
-
title: item.title,
|
|
132
|
-
description: item.description,
|
|
133
|
-
tags: item.tags,
|
|
134
|
-
link: mapButtons(item?.buttons)[0],
|
|
135
|
-
image: mapImage(item?.multimedia?.image, cdn),
|
|
136
|
-
})),
|
|
137
|
-
imageDefault: mapImage(props?.multimedia?.image, cdn),
|
|
138
|
-
direction: props?.direction || 'right',
|
|
139
|
-
});
|
|
140
|
-
|
|
141
149
|
const componentMappers = {
|
|
142
150
|
'hero-section': mapHeroSection,
|
|
143
151
|
'header-clear': mapHeaderClear,
|
|
@@ -150,6 +158,7 @@ const componentMappers = {
|
|
|
150
158
|
'visual-footer': mapVisualFooter,
|
|
151
159
|
'not-found': map404,
|
|
152
160
|
'split-previewer': mapSplitPreviewer,
|
|
161
|
+
'contact-minimal': mapContactMinimal,
|
|
153
162
|
};
|
|
154
163
|
|
|
155
164
|
const CDN_BASE_URL = new InjectionToken('CDN_BASE_URL');
|
|
@@ -209,5 +218,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImpo
|
|
|
209
218
|
* Generated bundle index. Do not edit.
|
|
210
219
|
*/
|
|
211
220
|
|
|
212
|
-
export { CDN_BASE_URL, MapperService, componentMappers, map404, mapCategoryProgress, mapHeaderClear, mapHeroSection, mapLangModal, mapLegalFooter, mapLinksFooter, mapNavModal, mapSectionIntro, mapSocialFooter, mapSocialLinks, mapSplitPreviewer, mapVisualFooter };
|
|
221
|
+
export { CDN_BASE_URL, MapperService, componentMappers, map404, mapCategoryProgress, mapContactMinimal, mapHeaderClear, mapHeroSection, mapLangModal, mapLegalFooter, mapLinksFooter, mapNavModal, mapSectionIntro, mapSocialFooter, mapSocialLinks, mapSplitPreviewer, mapVisualFooter };
|
|
213
222
|
//# sourceMappingURL=lluc_llull-ui-lib-mapper.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lluc_llull-ui-lib-mapper.mjs","sources":["../../../projects/ui-lib/mapper/component-mappers/category-progress.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/nav-modal.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/header-clear.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/hero-section.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/lang-modal.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/legal-footer.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/links-footer.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/404.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/section-intro.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/social-footer.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/visual-footer.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/split-previewer.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/index.ts","../../../projects/ui-lib/mapper/cdn.token.ts","../../../projects/ui-lib/mapper/mapper.service.ts","../../../projects/ui-lib/mapper/lluc_llull-ui-lib-mapper.ts"],"sourcesContent":["import { ComponentMapperFn } from './types';\n\nexport const mapCategoryProgress: ComponentMapperFn = (props) => ({\n pretitle: props?.texts?.pretitle,\n title: props?.texts?.title,\n categories: props?.items?.map((item: any) => ({\n title: item.title,\n items: item.items?.map((subItem: any) => ({\n label: subItem.name,\n value: subItem.progress,\n })),\n })),\n});\n","import { UiLibNavItemsI, UiLibSocialItemsI } from '@lluc_llull/ui-lib/interfaces';\n\nexport const mapNavModal = (navigation: any, lang: string): UiLibNavItemsI[] => {\n if (!navigation?.items || !Array.isArray(navigation.items)) return [];\n\n return navigation.items.map((item: any) => {\n const slug = item.slug;\n\n const url = slug === 'home' || slug === '' ? `/${lang}` : `/${lang}/${slug}`;\n\n return {\n label: item.label?.[lang] ?? item.label?.['es'] ?? slug,\n url,\n linkType: 'internal',\n name: slug,\n active: true,\n children: [],\n };\n });\n};\n\nexport const mapSocialLinks = (navigation: any): UiLibSocialItemsI[] => {\n if (!navigation?.social || !Array.isArray(navigation.social)) return [];\n\n return navigation.social.map((item: any, index: number) => ({\n label: item.label ?? '',\n url: item.url ?? '',\n linkType: item.linkType ?? 'external',\n icon: item.icon ?? '',\n order: item.order ?? index,\n }));\n};\n","import { mapImage, mapButtons } from '@lluc_llull/ui-lib/utils';\nimport { mapSocialLinks } from './nav-modal.mapper';\nimport { ComponentMapperFn } from './types';\n\nexport const mapHeaderClear: ComponentMapperFn = (props, cdn) => {\n return {\n logo: mapImage(props?.logo, cdn),\n logoDark: mapImage(props?.logoDark, cdn),\n lang: props?.lang || 'es',\n navigation: props?.navigation,\n socialItems: mapSocialLinks(props?.navigation),\n homeLink: mapButtons(props?.buttons)[0],\n };\n};\n","import { mapButtons } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapHeroSection: ComponentMapperFn = (props) => ({\n pretitle: props?.texts?.pretitle,\n title: props?.texts?.title,\n subtitle: props?.texts?.subtitle,\n text: props?.texts?.text,\n buttons: mapButtons(props?.buttons),\n highlight: props?.texts?.highlight,\n});\n","import { UiLibLangItemI } from '@lluc_llull/ui-lib/interfaces';\n\nexport const mapLangModal = (langs: any[], currentLang: string = 'es'): UiLibLangItemI[] => {\n if (!Array.isArray(langs)) return [];\n\n return langs.map((lang, index) => {\n const label = lang.labels?.[currentLang] || lang.labels?.[lang.code] || lang.code;\n\n return {\n id: lang.id ?? index,\n code: lang.code,\n label,\n };\n });\n};\n","import { mapButtons } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapLegalFooter: ComponentMapperFn = (props) => ({\n year: props?.texts?.year,\n brand: props?.texts?.brand,\n credits: props?.texts?.credits,\n links: mapButtons(props?.footer_links),\n //variant\n});\n","import { mapButtons } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapLinksFooter: ComponentMapperFn = (props) => ({\n links: mapButtons(props?.footer_links),\n});\n","import { mapButtons } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const map404: ComponentMapperFn = (props) => ({\n title: props?.texts?.title,\n subtitle: props?.texts?.subtitle,\n highlight: props?.texts?.highlight,\n button: mapButtons(props?.buttons)[0],\n});\n","import { mapButtons } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapSectionIntro: ComponentMapperFn = (props) => ({\n pretitle: props?.texts?.pretitle,\n title: props?.texts?.title,\n subtitle: props?.texts?.subtitle,\n text: props?.texts?.text,\n button: mapButtons(props?.buttons)[0],\n});\n","import { mapButtons, mapImage } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapSocialFooter: ComponentMapperFn = (props) => ({\n images: mapImage(props?.multimedia),\n socials: mapButtons(props?.social_links),\n hashtag: props?.texts?.hashtag,\n});\n","import { UiLibAddressI } from '@lluc_llull/ui-lib/interfaces';\nimport { mapButtons, mapImage } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapVisualFooter: ComponentMapperFn = (props) => ({\n contactTitle: props?.texts?.contactTitle,\n contactPhone: mapButtons(props?.contactPhone),\n contactEmail: mapButtons(props?.contactEmail),\n addressTitle: props?.texts?.addressTitle,\n address: {\n address: props?.address?.address,\n city: props?.address?.city,\n country: props?.address?.country,\n cp: props?.address?.cp,\n province: props?.address?.province,\n } as UiLibAddressI,\n socialsTitle: props?.texts?.socialsTitle,\n socials: mapButtons(props?.social_links),\n image: mapImage(props?.multimedia),\n});\n","import { mapButtons, mapImage } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapSplitPreviewer: ComponentMapperFn = (props, cdn) => ({\n title: props?.texts?.title,\n items: props?.items?.map((item: any) => ({\n title: item.title,\n description: item.description,\n tags: item.tags,\n link: mapButtons(item?.buttons)[0],\n image: mapImage(item?.multimedia?.image, cdn),\n })),\n imageDefault: mapImage(props?.multimedia?.image, cdn),\n direction: props?.direction || 'right',\n});\n","\nexport * from './category-progress.mapper';\nexport * from './header-clear.mapper';\nexport * from './hero-section.mapper';\nexport * from './lang-modal.mapper';\nexport * from './legal-footer.mapper';\nexport * from './links-footer.mapper';\nexport * from './404.mapper';\nexport * from './section-intro.mapper';\nexport * from './social-footer.mapper';\nexport * from './visual-footer.mapper';\nexport * from './nav-modal.mapper';\nexport * from './split-previewer.mapper';\n\nimport { mapCategoryProgress } from './category-progress.mapper';\nimport { mapHeaderClear } from './header-clear.mapper';\nimport { mapHeroSection } from './hero-section.mapper';\nimport { mapLangModal } from './lang-modal.mapper';\nimport { mapLegalFooter } from './legal-footer.mapper';\nimport { mapLinksFooter } from './links-footer.mapper';\nimport { map404 } from './404.mapper';\nimport { mapSectionIntro } from './section-intro.mapper';\nimport { mapSocialFooter } from './social-footer.mapper';\nimport { mapVisualFooter } from './visual-footer.mapper';\nimport { mapSplitPreviewer } from './split-previewer.mapper';\n\nexport const componentMappers: Record<string, (props: any, cdn?: string) => any> = {\n 'hero-section': mapHeroSection,\n 'header-clear': mapHeaderClear,\n 'lang-modal': mapLangModal,\n 'section-intro': mapSectionIntro,\n 'category-progress': mapCategoryProgress,\n 'links-footer': mapLinksFooter,\n 'legal-footer': mapLegalFooter,\n 'social-footer': mapSocialFooter,\n 'visual-footer': mapVisualFooter,\n 'not-found': map404,\n 'split-previewer': mapSplitPreviewer,\n};\n","import { InjectionToken } from '@angular/core';\n\nexport const CDN_BASE_URL = new InjectionToken<string>('CDN_BASE_URL');","import { Inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { BodyComponent } from '@lluc_llull/ui-lib/interfaces';\nimport { CDN_BASE_URL } from './cdn.token';\nimport { componentMappers } from './component-mappers';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MapperService {\n\n constructor(@Inject(PLATFORM_ID) private readonly platformId: Object, @Inject(CDN_BASE_URL) private readonly cdn: string) {}\n\n mapComponents<T>(body: any[]): BodyComponent<T>[] {\n if (!body || body.length === 0) {\n return [];\n }\n\n return body\n .filter((component) => component && component.name && component.props)\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, this.cdn) as T;\n } catch (e) {\n console.error(`Error mapping props for component \"${name}\"`, e);\n }\n } else {\n console.warn(`No mapper found for component \"${name}\"`);\n }\n\n return mapped;\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lluc_llull-ui-lib-mapper.mjs","sources":["../../../projects/ui-lib/mapper/component-mappers/404.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/category-progress.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/contact-minimal.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/nav-modal.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/header-clear.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/hero-section.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/lang-modal.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/legal-footer.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/links-footer.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/section-intro.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/social-footer.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/split-previewer.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/visual-footer.mapper.ts","../../../projects/ui-lib/mapper/component-mappers/index.ts","../../../projects/ui-lib/mapper/cdn.token.ts","../../../projects/ui-lib/mapper/mapper.service.ts","../../../projects/ui-lib/mapper/lluc_llull-ui-lib-mapper.ts"],"sourcesContent":["import { mapButtons } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const map404: ComponentMapperFn = (props) => ({\n title: props?.texts?.title,\n subtitle: props?.texts?.subtitle,\n highlight: props?.texts?.highlight,\n button: mapButtons(props?.buttons)[0],\n});\n","import { ComponentMapperFn } from './types';\n\nexport const mapCategoryProgress: ComponentMapperFn = (props) => ({\n pretitle: props?.texts?.pretitle,\n title: props?.texts?.title,\n categories: props?.items?.map((item: any) => ({\n title: item.title,\n items: item.items?.map((subItem: any) => ({\n label: subItem.name,\n value: subItem.progress,\n })),\n })),\n});\n","import { mapButtons, mapImage } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapContactMinimal: ComponentMapperFn = (props, cdn) => ({\n contactsTitle: props?.texts?.contactsTitle,\n socialsTitle: props?.texts?.socialsTitle,\n contacts: mapButtons(props?.items?.[0]?.buttons),\n socials: mapButtons(props?.items?.[1]?.buttons),\n img: mapImage(props?.multimedia?.image, cdn),\n});\n","import { UiLibNavItemsI, UiLibSocialItemsI } from '@lluc_llull/ui-lib/interfaces';\n\nexport const mapNavModal = (navigation: any, lang: string): UiLibNavItemsI[] => {\n if (!navigation?.items || !Array.isArray(navigation.items)) return [];\n\n return navigation.items.map((item: any) => {\n const slug = item.slug;\n\n const url = slug === 'home' || slug === '' ? `/${lang}` : `/${lang}/${slug}`;\n\n return {\n label: item.label?.[lang] ?? item.label?.['es'] ?? slug,\n url,\n linkType: 'internal',\n name: slug,\n active: true,\n children: [],\n };\n });\n};\n\nexport const mapSocialLinks = (navigation: any): UiLibSocialItemsI[] => {\n if (!navigation?.social || !Array.isArray(navigation.social)) return [];\n\n return navigation.social.map((item: any, index: number) => ({\n label: item.label ?? '',\n url: item.url ?? '',\n linkType: item.linkType ?? 'external',\n icon: item.icon ?? '',\n order: item.order ?? index,\n }));\n};\n","import { mapImage, mapButtons } from '@lluc_llull/ui-lib/utils';\nimport { mapSocialLinks } from './nav-modal.mapper';\nimport { ComponentMapperFn } from './types';\n\nexport const mapHeaderClear: ComponentMapperFn = (props, cdn) => {\n return {\n logo: mapImage(props?.logo, cdn),\n logoDark: mapImage(props?.logoDark, cdn),\n lang: props?.lang || 'es',\n navigation: props?.navigation,\n socialItems: mapSocialLinks(props?.navigation),\n homeLink: mapButtons(props?.buttons)[0],\n };\n};\n","import { mapButtons } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapHeroSection: ComponentMapperFn = (props) => ({\n pretitle: props?.texts?.pretitle,\n title: props?.texts?.title,\n subtitle: props?.texts?.subtitle,\n text: props?.texts?.text,\n buttons: mapButtons(props?.buttons),\n highlight: props?.texts?.highlight,\n});\n","import { UiLibLangItemI } from '@lluc_llull/ui-lib/interfaces';\n\nexport const mapLangModal = (langs: any[], currentLang: string = 'es'): UiLibLangItemI[] => {\n if (!Array.isArray(langs)) return [];\n\n return langs.map((lang, index) => {\n const label = lang.labels?.[currentLang] || lang.labels?.[lang.code] || lang.code;\n\n return {\n id: lang.id ?? index,\n code: lang.code,\n label,\n };\n });\n};\n","import { mapButtons } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapLegalFooter: ComponentMapperFn = (props) => ({\n year: props?.texts?.year,\n brand: props?.texts?.brand,\n credits: props?.texts?.credits,\n links: mapButtons(props?.footer_links),\n //variant\n});\n","import { mapButtons } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapLinksFooter: ComponentMapperFn = (props) => ({\n links: mapButtons(props?.footer_links),\n});\n","import { mapButtons } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapSectionIntro: ComponentMapperFn = (props) => ({\n pretitle: props?.texts?.pretitle,\n title: props?.texts?.title,\n subtitle: props?.texts?.subtitle,\n text: props?.texts?.text,\n button: mapButtons(props?.buttons)[0],\n});\n","import { mapButtons, mapImage } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapSocialFooter: ComponentMapperFn = (props) => ({\n images: mapImage(props?.multimedia),\n socials: mapButtons(props?.social_links),\n hashtag: props?.texts?.hashtag,\n});\n","import { mapButtons, mapImage } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapSplitPreviewer: ComponentMapperFn = (props, cdn) => ({\n title: props?.texts?.title,\n items: props?.items?.map((item: any) => ({\n title: item.title,\n description: item.description,\n tags: item.tags,\n link: mapButtons(item?.buttons)[0],\n image: mapImage(item?.multimedia?.image, cdn),\n })),\n imageDefault: mapImage(props?.multimedia?.image, cdn),\n direction: props?.direction || 'right',\n});\n","import { UiLibAddressI } from '@lluc_llull/ui-lib/interfaces';\nimport { mapButtons, mapImage } from '@lluc_llull/ui-lib/utils';\nimport { ComponentMapperFn } from './types';\n\nexport const mapVisualFooter: ComponentMapperFn = (props) => ({\n contactTitle: props?.texts?.contactTitle,\n contactPhone: mapButtons(props?.contactPhone),\n contactEmail: mapButtons(props?.contactEmail),\n addressTitle: props?.texts?.addressTitle,\n address: {\n address: props?.address?.address,\n city: props?.address?.city,\n country: props?.address?.country,\n cp: props?.address?.cp,\n province: props?.address?.province,\n } as UiLibAddressI,\n socialsTitle: props?.texts?.socialsTitle,\n socials: mapButtons(props?.social_links),\n image: mapImage(props?.multimedia),\n});\n","export * from './404.mapper';\nexport * from './category-progress.mapper';\nexport * from './contact-minimal.mapper';\nexport * from './header-clear.mapper';\nexport * from './hero-section.mapper';\nexport * from './lang-modal.mapper';\nexport * from './legal-footer.mapper';\nexport * from './links-footer.mapper';\nexport * from './nav-modal.mapper';\nexport * from './section-intro.mapper';\nexport * from './social-footer.mapper';\nexport * from './split-previewer.mapper';\nexport * from './visual-footer.mapper';\n\nimport { map404 } from './404.mapper';\nimport { mapCategoryProgress } from './category-progress.mapper';\nimport { mapContactMinimal } from './contact-minimal.mapper';\nimport { mapHeaderClear } from './header-clear.mapper';\nimport { mapHeroSection } from './hero-section.mapper';\nimport { mapLangModal } from './lang-modal.mapper';\nimport { mapLegalFooter } from './legal-footer.mapper';\nimport { mapLinksFooter } from './links-footer.mapper';\nimport { mapSectionIntro } from './section-intro.mapper';\nimport { mapSocialFooter } from './social-footer.mapper';\nimport { mapSplitPreviewer } from './split-previewer.mapper';\nimport { mapVisualFooter } from './visual-footer.mapper';\n\nexport const componentMappers: Record<string, (props: any, cdn?: string) => any> = {\n 'hero-section': mapHeroSection,\n 'header-clear': mapHeaderClear,\n 'lang-modal': mapLangModal,\n 'section-intro': mapSectionIntro,\n 'category-progress': mapCategoryProgress,\n 'links-footer': mapLinksFooter,\n 'legal-footer': mapLegalFooter,\n 'social-footer': mapSocialFooter,\n 'visual-footer': mapVisualFooter,\n 'not-found': map404,\n 'split-previewer': mapSplitPreviewer,\n 'contact-minimal': mapContactMinimal,\n};\n","import { InjectionToken } from '@angular/core';\n\nexport const CDN_BASE_URL = new InjectionToken<string>('CDN_BASE_URL');","import { Inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { BodyComponent } from '@lluc_llull/ui-lib/interfaces';\nimport { CDN_BASE_URL } from './cdn.token';\nimport { componentMappers } from './component-mappers';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MapperService {\n\n constructor(@Inject(PLATFORM_ID) private readonly platformId: Object, @Inject(CDN_BASE_URL) private readonly cdn: string) {}\n\n mapComponents<T>(body: any[]): BodyComponent<T>[] {\n if (!body || body.length === 0) {\n return [];\n }\n\n return body\n .filter((component) => component && component.name && component.props)\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, this.cdn) as T;\n } catch (e) {\n console.error(`Error mapping props for component \"${name}\"`, e);\n }\n } else {\n console.warn(`No mapper found for component \"${name}\"`);\n }\n\n return mapped;\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
+
export * from './404.mapper';
|
|
1
2
|
export * from './category-progress.mapper';
|
|
3
|
+
export * from './contact-minimal.mapper';
|
|
2
4
|
export * from './header-clear.mapper';
|
|
3
5
|
export * from './hero-section.mapper';
|
|
4
6
|
export * from './lang-modal.mapper';
|
|
5
7
|
export * from './legal-footer.mapper';
|
|
6
8
|
export * from './links-footer.mapper';
|
|
7
|
-
export * from './
|
|
9
|
+
export * from './nav-modal.mapper';
|
|
8
10
|
export * from './section-intro.mapper';
|
|
9
11
|
export * from './social-footer.mapper';
|
|
10
|
-
export * from './visual-footer.mapper';
|
|
11
|
-
export * from './nav-modal.mapper';
|
|
12
12
|
export * from './split-previewer.mapper';
|
|
13
|
+
export * from './visual-footer.mapper';
|
|
13
14
|
export declare const componentMappers: Record<string, (props: any, cdn?: string) => any>;
|