ctt-puro 0.65.3 → 0.66.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/esm2022/lib/components/puro-careers-form/puro-careers-form.component.mjs +5 -3
- package/esm2022/lib/components/puro-contact-form/puro-contact-form.component.mjs +5 -3
- package/esm2022/lib/components/puro-events-form/puro-events-form.component.mjs +5 -3
- package/esm2022/lib/components/puro-prefix-select/index.mjs +3 -0
- package/esm2022/lib/components/puro-prefix-select/puro-prefix-select.component.mjs +83 -0
- package/esm2022/lib/components/puro-prefix-select/puro-prefix-select.interface.mjs +2 -0
- package/esm2022/lib/components/puro-projects-form/puro-projects-form.component.mjs +5 -3
- package/fesm2022/ctt-puro.mjs +91 -8
- package/fesm2022/ctt-puro.mjs.map +1 -1
- package/lib/components/puro-prefix-select/index.d.ts +2 -0
- package/lib/components/puro-prefix-select/puro-prefix-select.component.d.ts +26 -0
- package/lib/components/puro-prefix-select/puro-prefix-select.interface.d.ts +2 -0
- package/package.json +1 -1
package/fesm2022/ctt-puro.mjs
CHANGED
|
@@ -1853,6 +1853,85 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1853
1853
|
type: Input
|
|
1854
1854
|
}] } });
|
|
1855
1855
|
|
|
1856
|
+
class PuroPrefixSelectComponent {
|
|
1857
|
+
constructor() {
|
|
1858
|
+
this.placeholder = 'Prefijo';
|
|
1859
|
+
this.open = false;
|
|
1860
|
+
this.filtered = [];
|
|
1861
|
+
/** Valor que se muestra en el input */
|
|
1862
|
+
this.displayValue = '';
|
|
1863
|
+
/** Valor real del form (code) */
|
|
1864
|
+
this.value = null;
|
|
1865
|
+
this.onChange = (_) => { };
|
|
1866
|
+
this.onTouched = () => { };
|
|
1867
|
+
}
|
|
1868
|
+
ngOnInit() {
|
|
1869
|
+
if (this.options) {
|
|
1870
|
+
this.filtered = [...this.options];
|
|
1871
|
+
}
|
|
1872
|
+
}
|
|
1873
|
+
/* =======================
|
|
1874
|
+
* ControlValueAccessor
|
|
1875
|
+
* ======================= */
|
|
1876
|
+
writeValue(value) {
|
|
1877
|
+
this.value = value;
|
|
1878
|
+
if (this.options) {
|
|
1879
|
+
const selected = this.options.find((o) => o.code === value);
|
|
1880
|
+
if (selected) {
|
|
1881
|
+
this.displayValue = selected.name;
|
|
1882
|
+
}
|
|
1883
|
+
else {
|
|
1884
|
+
this.displayValue = '';
|
|
1885
|
+
}
|
|
1886
|
+
}
|
|
1887
|
+
}
|
|
1888
|
+
registerOnChange(fn) {
|
|
1889
|
+
this.onChange = fn;
|
|
1890
|
+
}
|
|
1891
|
+
registerOnTouched(fn) {
|
|
1892
|
+
this.onTouched = fn;
|
|
1893
|
+
}
|
|
1894
|
+
/* =======================
|
|
1895
|
+
* UI logic
|
|
1896
|
+
* ======================= */
|
|
1897
|
+
onInput(ev) {
|
|
1898
|
+
const value = ev.target.value;
|
|
1899
|
+
this.displayValue = value;
|
|
1900
|
+
this.open = true;
|
|
1901
|
+
const v = value.toLowerCase();
|
|
1902
|
+
if (this.options) {
|
|
1903
|
+
this.filtered = this.options.filter((item) => item?.name?.toLowerCase().includes(v) ||
|
|
1904
|
+
String(item.code).includes(v));
|
|
1905
|
+
}
|
|
1906
|
+
}
|
|
1907
|
+
onFocus() {
|
|
1908
|
+
this.open = true;
|
|
1909
|
+
if (this.options) {
|
|
1910
|
+
this.filtered = [...this.options];
|
|
1911
|
+
}
|
|
1912
|
+
}
|
|
1913
|
+
select(item) {
|
|
1914
|
+
this.value = item.code;
|
|
1915
|
+
this.displayValue = item.name;
|
|
1916
|
+
this.onChange(item.code);
|
|
1917
|
+
this.onTouched();
|
|
1918
|
+
this.open = false;
|
|
1919
|
+
}
|
|
1920
|
+
close() {
|
|
1921
|
+
this.open = false;
|
|
1922
|
+
}
|
|
1923
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroPrefixSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1924
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroPrefixSelectComponent, isStandalone: true, selector: "lib-puro-prefix-select", inputs: { options: "options", placeholder: "placeholder" }, ngImport: i0, template: "<div class=\"puro-prefix\" style=\"position: relative\">\n <input\n type=\"text\"\n class=\"form__control puro-prefix-input\"\n autocomplete=\"off\"\n [placeholder]=\"placeholder\"\n [value]=\"displayValue\"\n (focus)=\"onFocus()\"\n (input)=\"onInput($event)\"\n />\n\n <span class=\"icon-right\">\n <svg aria-hidden=\"true\" focusable=\"false\" width=\"15\" height=\"8\">\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n\n <ul class=\"puro-prefix-dropdown\" *ngIf=\"open\">\n @for (item of filtered; track $index) {\n <li class=\"puro-prefix-option\" (click)=\"select(item)\">\n {{ item.name }}\n </li>\n }\n </ul>\n</div>\n", styles: [".puro-prefix-dropdown{position:absolute;width:100%;max-height:20rem;overflow-y:auto;background:#fff;border:1px solid #ddd;border-radius:.4rem;z-index:9999;padding:0;margin:0;list-style:none;box-shadow:0 4px 12px #0000001a;top:155%}@media (max-width: 767px){.puro-prefix-dropdown{top:130%}}.puro-prefix-option{padding:1rem 1.4rem;font-size:1.4rem;cursor:pointer;border-bottom:1px solid #f2f2f2}.puro-prefix-option:last-child{border-bottom:none}.puro-prefix-option:hover{background:#f5f5f5}.puro-prefix-input{cursor:text}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
1925
|
+
}
|
|
1926
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroPrefixSelectComponent, decorators: [{
|
|
1927
|
+
type: Component,
|
|
1928
|
+
args: [{ selector: 'lib-puro-prefix-select', standalone: true, imports: [CommonModule], template: "<div class=\"puro-prefix\" style=\"position: relative\">\n <input\n type=\"text\"\n class=\"form__control puro-prefix-input\"\n autocomplete=\"off\"\n [placeholder]=\"placeholder\"\n [value]=\"displayValue\"\n (focus)=\"onFocus()\"\n (input)=\"onInput($event)\"\n />\n\n <span class=\"icon-right\">\n <svg aria-hidden=\"true\" focusable=\"false\" width=\"15\" height=\"8\">\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n\n <ul class=\"puro-prefix-dropdown\" *ngIf=\"open\">\n @for (item of filtered; track $index) {\n <li class=\"puro-prefix-option\" (click)=\"select(item)\">\n {{ item.name }}\n </li>\n }\n </ul>\n</div>\n", styles: [".puro-prefix-dropdown{position:absolute;width:100%;max-height:20rem;overflow-y:auto;background:#fff;border:1px solid #ddd;border-radius:.4rem;z-index:9999;padding:0;margin:0;list-style:none;box-shadow:0 4px 12px #0000001a;top:155%}@media (max-width: 767px){.puro-prefix-dropdown{top:130%}}.puro-prefix-option{padding:1rem 1.4rem;font-size:1.4rem;cursor:pointer;border-bottom:1px solid #f2f2f2}.puro-prefix-option:last-child{border-bottom:none}.puro-prefix-option:hover{background:#f5f5f5}.puro-prefix-input{cursor:text}\n"] }]
|
|
1929
|
+
}], propDecorators: { options: [{
|
|
1930
|
+
type: Input
|
|
1931
|
+
}], placeholder: [{
|
|
1932
|
+
type: Input
|
|
1933
|
+
}] } });
|
|
1934
|
+
|
|
1856
1935
|
class PuroCareersFormComponent {
|
|
1857
1936
|
constructor(fb, cdr) {
|
|
1858
1937
|
this.fb = fb;
|
|
@@ -2021,7 +2100,7 @@ class PuroCareersFormComponent {
|
|
|
2021
2100
|
}
|
|
2022
2101
|
}
|
|
2023
2102
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroCareersFormComponent, deps: [{ token: i1$3.FormBuilder }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2024
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroCareersFormComponent, isStandalone: true, selector: "lib-puro-careers-form", inputs: { title: "title", description: "description", ydTitle: "ydTitle", wlDropdown: "wlDropdown", wpDropdown: "wpDropdown", aoDropdown: "aoDropdown", wlangDropdown: "wlangDropdown", hdDropdown: "hdDropdown", wwTextarea: "wwTextarea", odTitle: "odTitle", nameInput: "nameInput", surnameInput: "surnameInput", prefix: "prefix", phoneInput: "phoneInput", emailInput: "emailInput", confirmEmailInput: "confirmEmailInput", filesInput: "filesInput", cvInput: "cvInput", others: "others", requiredLabel: "requiredLabel", img: "img", conditionsLink: "conditionsLink", applyButton: "applyButton", seeAllButton: "seeAllButton", tags: "tags", textColors: "textColors" }, outputs: { submitFormValue: "submitFormValue" }, ngImport: i0, template: "<section class=\"careersForm generalMargin\">\n <div class=\"careersForm__inner\">\n <!-- @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"careersForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n } -->\n @if (title) {\n <span class=\"careersForm__title\">{{ title }}</span>\n }\n <div class=\"careersForm__graphic\">\n <div class=\"careersForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"careersForm__graphicInner--img\"\n priority\n />\n }\n </div>\n </div>\n <div class=\"careersForm__content\">\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"careersForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (description) {\n <div class=\"careersForm__paragraph\">\n {{ description }}\n </div>\n }\n @if (formReady$()) {\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\">\n <div class=\"careersForm__section\">\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (wlDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"wlDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ wlDropdown.placeholder }}\n </option>\n @for (\n option of wlDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (wpDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"wpDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ wpDropdown.placeholder }}\n </option>\n @for (\n option of wpDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (aoDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"aoDropdown\"\n >\n @if (aoDropdown.placeholder) {\n <option\n value=\"\"\n disabled\n selected\n >\n {{ aoDropdown.placeholder }}\n </option>\n }\n @for (\n option of aoDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n </div>\n\n <div class=\"careersForm__section\">\n <div class=\"form__group\">\n @if (ydTitle) {\n <span\n class=\"careersForm__section--title form__group __subHeading\"\n >\n {{ ydTitle }}\n </span>\n }\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"name\"\n id=\"Name\"\n [placeholder]=\"\n nameInput.placeholder\n \"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"\n inputChange($event, nameInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{\n nameInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"careersForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"surname\"\n id=\"surname\"\n [placeholder]=\"\n surnameInput.placeholder\n \"\n [formControlName]=\"\n surnameInput.name!\n \"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"\n inputChange(\n $event,\n surnameInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{\n surnameInput.error\n }}</span>\n }\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n name=\"prefix\"\n formControlName=\"prefix\"\n >\n @if (prefix.placeholder) {\n <option\n value=\"\"\n disabled\n selected\n >\n {{ prefix.placeholder }}\n </option>\n }\n @for (\n item of prefix.options || [];\n track $index\n ) {\n <option [value]=\"item.code\">\n {{ item.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n <div class=\"careersForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"phone\"\n id=\"phone\"\n [placeholder]=\"\n phoneInput.placeholder\n \"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"\n inputChange($event, phoneInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#phone\"></use>\n </svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{\n phoneInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"email\"\n [placeholder]=\"\n emailInput.placeholder\n \"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"\n inputChange($event, emailInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{\n emailInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"careersForm__col\">\n @if (confirmEmailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"confirmEmail\"\n [placeholder]=\"\n confirmEmailInput.placeholder\n \"\n (blur)=\"\n validateInput(confirmEmailInput)\n \"\n (input)=\"\n inputChange(\n $event,\n confirmEmailInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (\n confirmEmailInput &&\n !confirmEmailInput.valid()\n ) {\n <span class=\"form-error\">{{\n confirmEmailInput.error\n }}</span>\n }\n }\n </div>\n </div>\n @if (\n confirmEmailInput &&\n form.hasError('emailsDontMatch') &&\n form.get(confirmEmailInput.name!)?.touched\n ) {\n <span class=\"form-error\"\n >Los emails no coinciden.</span\n >\n }\n </div>\n\n <div class=\"careersForm__section\">\n <div class=\"form__group\">\n @if (odTitle) {\n <span\n class=\"careersForm__section--title form__group __subHeading\"\n >\n {{ odTitle }}\n </span>\n }\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (wlangDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"wlangDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ wlangDropdown.placeholder }}\n </option>\n @for (\n option of wlangDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (hdDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"hdDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ hdDropdown.placeholder }}\n </option>\n @for (\n option of hdDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n <div class=\"careersForm__file-group\">\n @if (cvInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"file\"\n class=\"form__control\"\n name=\"cvinput\"\n id=\"cvinput\"\n [placeholder]=\"cvInput.label\"\n (input)=\"\n inputChange($event, cvInput)\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-98\"></i>\n </div>\n </span>\n </div>\n @if (!cvInput.valid()) {\n <span class=\"form-error\">{{\n cvInput.error\n }}</span>\n }\n }\n @if (\n cvInputNames && cvInputNames.length > 0\n ) {\n <div>\n @for (\n name of cvInputNames;\n track $index\n ) {\n <span class=\"file-name\">{{\n name\n }}</span>\n }\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__col\">\n <div class=\"careersForm__file-group\">\n @if (filesInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"file\"\n class=\"form__control\"\n name=\"filesinput\"\n id=\"filesinput\"\n multiple\n [placeholder]=\"filesInput.label\"\n (input)=\"\n inputChange(\n $event,\n filesInput\n )\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-98\"></i>\n </div>\n </span>\n </div>\n @if (!filesInput.valid()) {\n <span class=\"form-error\">{{\n filesInput.error\n }}</span>\n }\n }\n @if (filesInputNames) {\n <div>\n @for (\n name of filesInputNames;\n track $index\n ) {\n <span class=\"file-name\">{{\n name\n }}</span>\n }\n </div>\n }\n </div>\n </div>\n </div>\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (wwTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n wwTextarea.placeholder\n \"\n [formControlName]=\"wwTextarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n <div class=\"block-checkbox\">\n @if (requiredLabel) {\n <span class=\"required-label\">{{\n requiredLabel\n }}</span>\n }\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n checked\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span [innerHTML]=\"conditionsLink\">\n </span>\n </label>\n }\n @if (others) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"others\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span>{{ others }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n\n <div class=\"btn__group\">\n @if (applyButton) {\n <button\n type=\"submit\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"applyButton.label\"\n [disabled]=\"!form.valid\"\n (click)=\"submitForm()\"\n >\n <span>{{ applyButton.label }}</span>\n </button>\n }\n <!-- @if (seeAllButton) {\n <a\n class=\"btn btn__primary--outline js-active-modal\"\n [attr.aria-label]=\"seeAllButton.label\"\n [attr.href]=\"seeAllButton.url\"\n >\n <span>{{ seeAllButton.label }}</span>\n </a>\n } -->\n </div>\n </div>\n </form>\n }\n </div>\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2103
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroCareersFormComponent, isStandalone: true, selector: "lib-puro-careers-form", inputs: { title: "title", description: "description", ydTitle: "ydTitle", wlDropdown: "wlDropdown", wpDropdown: "wpDropdown", aoDropdown: "aoDropdown", wlangDropdown: "wlangDropdown", hdDropdown: "hdDropdown", wwTextarea: "wwTextarea", odTitle: "odTitle", nameInput: "nameInput", surnameInput: "surnameInput", prefix: "prefix", phoneInput: "phoneInput", emailInput: "emailInput", confirmEmailInput: "confirmEmailInput", filesInput: "filesInput", cvInput: "cvInput", others: "others", requiredLabel: "requiredLabel", img: "img", conditionsLink: "conditionsLink", applyButton: "applyButton", seeAllButton: "seeAllButton", tags: "tags", textColors: "textColors" }, outputs: { submitFormValue: "submitFormValue" }, ngImport: i0, template: "<section class=\"careersForm generalMargin\">\n <div class=\"careersForm__inner\">\n <!-- @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"careersForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n } -->\n @if (title) {\n <span class=\"careersForm__title\">{{ title }}</span>\n }\n <div class=\"careersForm__graphic\">\n <div class=\"careersForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"careersForm__graphicInner--img\"\n priority\n />\n }\n </div>\n </div>\n <div class=\"careersForm__content\">\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"careersForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (description) {\n <div class=\"careersForm__paragraph\">\n {{ description }}\n </div>\n }\n @if (formReady$()) {\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\">\n <div class=\"careersForm__section\">\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (wlDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"wlDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ wlDropdown.placeholder }}\n </option>\n @for (\n option of wlDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (wpDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"wpDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ wpDropdown.placeholder }}\n </option>\n @for (\n option of wpDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (aoDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"aoDropdown\"\n >\n @if (aoDropdown.placeholder) {\n <option\n value=\"\"\n disabled\n selected\n >\n {{ aoDropdown.placeholder }}\n </option>\n }\n @for (\n option of aoDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n </div>\n\n <div class=\"careersForm__section\">\n <div class=\"form__group\">\n @if (ydTitle) {\n <span\n class=\"careersForm__section--title form__group __subHeading\"\n >\n {{ ydTitle }}\n </span>\n }\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"name\"\n id=\"Name\"\n [placeholder]=\"\n nameInput.placeholder\n \"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"\n inputChange($event, nameInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{\n nameInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"careersForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"surname\"\n id=\"surname\"\n [placeholder]=\"\n surnameInput.placeholder\n \"\n [formControlName]=\"\n surnameInput.name!\n \"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"\n inputChange(\n $event,\n surnameInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{\n surnameInput.error\n }}</span>\n }\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <lib-puro-prefix-select\n formControlName=\"prefix\"\n [options]=\"prefix.options\"\n [placeholder]=\"prefix.placeholder\">\n </lib-puro-prefix-select>\n </div>\n }\n </div>\n <div class=\"careersForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"phone\"\n id=\"phone\"\n [placeholder]=\"\n phoneInput.placeholder\n \"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"\n inputChange($event, phoneInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#phone\"></use>\n </svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{\n phoneInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"email\"\n [placeholder]=\"\n emailInput.placeholder\n \"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"\n inputChange($event, emailInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{\n emailInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"careersForm__col\">\n @if (confirmEmailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"confirmEmail\"\n [placeholder]=\"\n confirmEmailInput.placeholder\n \"\n (blur)=\"\n validateInput(confirmEmailInput)\n \"\n (input)=\"\n inputChange(\n $event,\n confirmEmailInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (\n confirmEmailInput &&\n !confirmEmailInput.valid()\n ) {\n <span class=\"form-error\">{{\n confirmEmailInput.error\n }}</span>\n }\n }\n </div>\n </div>\n @if (\n confirmEmailInput &&\n form.hasError('emailsDontMatch') &&\n form.get(confirmEmailInput.name!)?.touched\n ) {\n <span class=\"form-error\"\n >Los emails no coinciden.</span\n >\n }\n </div>\n\n <div class=\"careersForm__section\">\n <div class=\"form__group\">\n @if (odTitle) {\n <span\n class=\"careersForm__section--title form__group __subHeading\"\n >\n {{ odTitle }}\n </span>\n }\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (wlangDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"wlangDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ wlangDropdown.placeholder }}\n </option>\n @for (\n option of wlangDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (hdDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"hdDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ hdDropdown.placeholder }}\n </option>\n @for (\n option of hdDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n <div class=\"careersForm__file-group\">\n @if (cvInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"file\"\n class=\"form__control\"\n name=\"cvinput\"\n id=\"cvinput\"\n [placeholder]=\"cvInput.label\"\n (input)=\"\n inputChange($event, cvInput)\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-98\"></i>\n </div>\n </span>\n </div>\n @if (!cvInput.valid()) {\n <span class=\"form-error\">{{\n cvInput.error\n }}</span>\n }\n }\n @if (\n cvInputNames && cvInputNames.length > 0\n ) {\n <div>\n @for (\n name of cvInputNames;\n track $index\n ) {\n <span class=\"file-name\">{{\n name\n }}</span>\n }\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__col\">\n <div class=\"careersForm__file-group\">\n @if (filesInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"file\"\n class=\"form__control\"\n name=\"filesinput\"\n id=\"filesinput\"\n multiple\n [placeholder]=\"filesInput.label\"\n (input)=\"\n inputChange(\n $event,\n filesInput\n )\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-98\"></i>\n </div>\n </span>\n </div>\n @if (!filesInput.valid()) {\n <span class=\"form-error\">{{\n filesInput.error\n }}</span>\n }\n }\n @if (filesInputNames) {\n <div>\n @for (\n name of filesInputNames;\n track $index\n ) {\n <span class=\"file-name\">{{\n name\n }}</span>\n }\n </div>\n }\n </div>\n </div>\n </div>\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (wwTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n wwTextarea.placeholder\n \"\n [formControlName]=\"wwTextarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n <div class=\"block-checkbox\">\n @if (requiredLabel) {\n <span class=\"required-label\">{{\n requiredLabel\n }}</span>\n }\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n checked\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span [innerHTML]=\"conditionsLink\">\n </span>\n </label>\n }\n @if (others) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"others\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span>{{ others }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n\n <div class=\"btn__group\">\n @if (applyButton) {\n <button\n type=\"submit\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"applyButton.label\"\n [disabled]=\"!form.valid\"\n (click)=\"submitForm()\"\n >\n <span>{{ applyButton.label }}</span>\n </button>\n }\n <!-- @if (seeAllButton) {\n <a\n class=\"btn btn__primary--outline js-active-modal\"\n [attr.aria-label]=\"seeAllButton.label\"\n [attr.href]=\"seeAllButton.url\"\n >\n <span>{{ seeAllButton.label }}</span>\n </a>\n } -->\n </div>\n </div>\n </form>\n }\n </div>\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }, { kind: "component", type: PuroPrefixSelectComponent, selector: "lib-puro-prefix-select", inputs: ["options", "placeholder"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2025
2104
|
}
|
|
2026
2105
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroCareersFormComponent, decorators: [{
|
|
2027
2106
|
type: Component,
|
|
@@ -2032,7 +2111,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2032
2111
|
PuroDynamicHeadingComponent,
|
|
2033
2112
|
NgOptimizedImage,
|
|
2034
2113
|
AutoImageZoomWrapperDirective,
|
|
2035
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"careersForm generalMargin\">\n <div class=\"careersForm__inner\">\n <!-- @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"careersForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n } -->\n @if (title) {\n <span class=\"careersForm__title\">{{ title }}</span>\n }\n <div class=\"careersForm__graphic\">\n <div class=\"careersForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"careersForm__graphicInner--img\"\n priority\n />\n }\n </div>\n </div>\n <div class=\"careersForm__content\">\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"careersForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (description) {\n <div class=\"careersForm__paragraph\">\n {{ description }}\n </div>\n }\n @if (formReady$()) {\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\">\n <div class=\"careersForm__section\">\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (wlDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"wlDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ wlDropdown.placeholder }}\n </option>\n @for (\n option of wlDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (wpDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"wpDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ wpDropdown.placeholder }}\n </option>\n @for (\n option of wpDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (aoDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"aoDropdown\"\n >\n @if (aoDropdown.placeholder) {\n <option\n value=\"\"\n disabled\n selected\n >\n {{ aoDropdown.placeholder }}\n </option>\n }\n @for (\n option of aoDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n </div>\n\n <div class=\"careersForm__section\">\n <div class=\"form__group\">\n @if (ydTitle) {\n <span\n class=\"careersForm__section--title form__group __subHeading\"\n >\n {{ ydTitle }}\n </span>\n }\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"name\"\n id=\"Name\"\n [placeholder]=\"\n nameInput.placeholder\n \"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"\n inputChange($event, nameInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{\n nameInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"careersForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"surname\"\n id=\"surname\"\n [placeholder]=\"\n surnameInput.placeholder\n \"\n [formControlName]=\"\n surnameInput.name!\n \"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"\n inputChange(\n $event,\n surnameInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{\n surnameInput.error\n }}</span>\n }\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n name=\"prefix\"\n formControlName=\"prefix\"\n >\n @if (prefix.placeholder) {\n <option\n value=\"\"\n disabled\n selected\n >\n {{ prefix.placeholder }}\n </option>\n }\n @for (\n item of prefix.options || [];\n track $index\n ) {\n <option [value]=\"item.code\">\n {{ item.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n <div class=\"careersForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"phone\"\n id=\"phone\"\n [placeholder]=\"\n phoneInput.placeholder\n \"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"\n inputChange($event, phoneInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#phone\"></use>\n </svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{\n phoneInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"email\"\n [placeholder]=\"\n emailInput.placeholder\n \"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"\n inputChange($event, emailInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{\n emailInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"careersForm__col\">\n @if (confirmEmailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"confirmEmail\"\n [placeholder]=\"\n confirmEmailInput.placeholder\n \"\n (blur)=\"\n validateInput(confirmEmailInput)\n \"\n (input)=\"\n inputChange(\n $event,\n confirmEmailInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (\n confirmEmailInput &&\n !confirmEmailInput.valid()\n ) {\n <span class=\"form-error\">{{\n confirmEmailInput.error\n }}</span>\n }\n }\n </div>\n </div>\n @if (\n confirmEmailInput &&\n form.hasError('emailsDontMatch') &&\n form.get(confirmEmailInput.name!)?.touched\n ) {\n <span class=\"form-error\"\n >Los emails no coinciden.</span\n >\n }\n </div>\n\n <div class=\"careersForm__section\">\n <div class=\"form__group\">\n @if (odTitle) {\n <span\n class=\"careersForm__section--title form__group __subHeading\"\n >\n {{ odTitle }}\n </span>\n }\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (wlangDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"wlangDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ wlangDropdown.placeholder }}\n </option>\n @for (\n option of wlangDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (hdDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"hdDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ hdDropdown.placeholder }}\n </option>\n @for (\n option of hdDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n <div class=\"careersForm__file-group\">\n @if (cvInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"file\"\n class=\"form__control\"\n name=\"cvinput\"\n id=\"cvinput\"\n [placeholder]=\"cvInput.label\"\n (input)=\"\n inputChange($event, cvInput)\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-98\"></i>\n </div>\n </span>\n </div>\n @if (!cvInput.valid()) {\n <span class=\"form-error\">{{\n cvInput.error\n }}</span>\n }\n }\n @if (\n cvInputNames && cvInputNames.length > 0\n ) {\n <div>\n @for (\n name of cvInputNames;\n track $index\n ) {\n <span class=\"file-name\">{{\n name\n }}</span>\n }\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__col\">\n <div class=\"careersForm__file-group\">\n @if (filesInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"file\"\n class=\"form__control\"\n name=\"filesinput\"\n id=\"filesinput\"\n multiple\n [placeholder]=\"filesInput.label\"\n (input)=\"\n inputChange(\n $event,\n filesInput\n )\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-98\"></i>\n </div>\n </span>\n </div>\n @if (!filesInput.valid()) {\n <span class=\"form-error\">{{\n filesInput.error\n }}</span>\n }\n }\n @if (filesInputNames) {\n <div>\n @for (\n name of filesInputNames;\n track $index\n ) {\n <span class=\"file-name\">{{\n name\n }}</span>\n }\n </div>\n }\n </div>\n </div>\n </div>\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (wwTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n wwTextarea.placeholder\n \"\n [formControlName]=\"wwTextarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n <div class=\"block-checkbox\">\n @if (requiredLabel) {\n <span class=\"required-label\">{{\n requiredLabel\n }}</span>\n }\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n checked\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span [innerHTML]=\"conditionsLink\">\n </span>\n </label>\n }\n @if (others) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"others\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span>{{ others }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n\n <div class=\"btn__group\">\n @if (applyButton) {\n <button\n type=\"submit\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"applyButton.label\"\n [disabled]=\"!form.valid\"\n (click)=\"submitForm()\"\n >\n <span>{{ applyButton.label }}</span>\n </button>\n }\n <!-- @if (seeAllButton) {\n <a\n class=\"btn btn__primary--outline js-active-modal\"\n [attr.aria-label]=\"seeAllButton.label\"\n [attr.href]=\"seeAllButton.url\"\n >\n <span>{{ seeAllButton.label }}</span>\n </a>\n } -->\n </div>\n </div>\n </form>\n }\n </div>\n </div>\n</section>\n" }]
|
|
2114
|
+
PuroPrefixSelectComponent
|
|
2115
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"careersForm generalMargin\">\n <div class=\"careersForm__inner\">\n <!-- @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"careersForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n } -->\n @if (title) {\n <span class=\"careersForm__title\">{{ title }}</span>\n }\n <div class=\"careersForm__graphic\">\n <div class=\"careersForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"careersForm__graphicInner--img\"\n priority\n />\n }\n </div>\n </div>\n <div class=\"careersForm__content\">\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"careersForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (description) {\n <div class=\"careersForm__paragraph\">\n {{ description }}\n </div>\n }\n @if (formReady$()) {\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\">\n <div class=\"careersForm__section\">\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (wlDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"wlDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ wlDropdown.placeholder }}\n </option>\n @for (\n option of wlDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (wpDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"wpDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ wpDropdown.placeholder }}\n </option>\n @for (\n option of wpDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (aoDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"aoDropdown\"\n >\n @if (aoDropdown.placeholder) {\n <option\n value=\"\"\n disabled\n selected\n >\n {{ aoDropdown.placeholder }}\n </option>\n }\n @for (\n option of aoDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n </div>\n\n <div class=\"careersForm__section\">\n <div class=\"form__group\">\n @if (ydTitle) {\n <span\n class=\"careersForm__section--title form__group __subHeading\"\n >\n {{ ydTitle }}\n </span>\n }\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"name\"\n id=\"Name\"\n [placeholder]=\"\n nameInput.placeholder\n \"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"\n inputChange($event, nameInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{\n nameInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"careersForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"surname\"\n id=\"surname\"\n [placeholder]=\"\n surnameInput.placeholder\n \"\n [formControlName]=\"\n surnameInput.name!\n \"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"\n inputChange(\n $event,\n surnameInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{\n surnameInput.error\n }}</span>\n }\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <lib-puro-prefix-select\n formControlName=\"prefix\"\n [options]=\"prefix.options\"\n [placeholder]=\"prefix.placeholder\">\n </lib-puro-prefix-select>\n </div>\n }\n </div>\n <div class=\"careersForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"phone\"\n id=\"phone\"\n [placeholder]=\"\n phoneInput.placeholder\n \"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"\n inputChange($event, phoneInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#phone\"></use>\n </svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{\n phoneInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"email\"\n [placeholder]=\"\n emailInput.placeholder\n \"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"\n inputChange($event, emailInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{\n emailInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"careersForm__col\">\n @if (confirmEmailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"confirmEmail\"\n [placeholder]=\"\n confirmEmailInput.placeholder\n \"\n (blur)=\"\n validateInput(confirmEmailInput)\n \"\n (input)=\"\n inputChange(\n $event,\n confirmEmailInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (\n confirmEmailInput &&\n !confirmEmailInput.valid()\n ) {\n <span class=\"form-error\">{{\n confirmEmailInput.error\n }}</span>\n }\n }\n </div>\n </div>\n @if (\n confirmEmailInput &&\n form.hasError('emailsDontMatch') &&\n form.get(confirmEmailInput.name!)?.touched\n ) {\n <span class=\"form-error\"\n >Los emails no coinciden.</span\n >\n }\n </div>\n\n <div class=\"careersForm__section\">\n <div class=\"form__group\">\n @if (odTitle) {\n <span\n class=\"careersForm__section--title form__group __subHeading\"\n >\n {{ odTitle }}\n </span>\n }\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (wlangDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"wlangDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ wlangDropdown.placeholder }}\n </option>\n @for (\n option of wlangDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n @if (hdDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"hdDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ hdDropdown.placeholder }}\n </option>\n @for (\n option of hdDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n <div class=\"careersForm__file-group\">\n @if (cvInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"file\"\n class=\"form__control\"\n name=\"cvinput\"\n id=\"cvinput\"\n [placeholder]=\"cvInput.label\"\n (input)=\"\n inputChange($event, cvInput)\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-98\"></i>\n </div>\n </span>\n </div>\n @if (!cvInput.valid()) {\n <span class=\"form-error\">{{\n cvInput.error\n }}</span>\n }\n }\n @if (\n cvInputNames && cvInputNames.length > 0\n ) {\n <div>\n @for (\n name of cvInputNames;\n track $index\n ) {\n <span class=\"file-name\">{{\n name\n }}</span>\n }\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__col\">\n <div class=\"careersForm__file-group\">\n @if (filesInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"file\"\n class=\"form__control\"\n name=\"filesinput\"\n id=\"filesinput\"\n multiple\n [placeholder]=\"filesInput.label\"\n (input)=\"\n inputChange(\n $event,\n filesInput\n )\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-98\"></i>\n </div>\n </span>\n </div>\n @if (!filesInput.valid()) {\n <span class=\"form-error\">{{\n filesInput.error\n }}</span>\n }\n }\n @if (filesInputNames) {\n <div>\n @for (\n name of filesInputNames;\n track $index\n ) {\n <span class=\"file-name\">{{\n name\n }}</span>\n }\n </div>\n }\n </div>\n </div>\n </div>\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (wwTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n wwTextarea.placeholder\n \"\n [formControlName]=\"wwTextarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n <div class=\"careersForm__row\">\n <div class=\"careersForm__col\">\n <div class=\"block-checkbox\">\n @if (requiredLabel) {\n <span class=\"required-label\">{{\n requiredLabel\n }}</span>\n }\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n checked\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span [innerHTML]=\"conditionsLink\">\n </span>\n </label>\n }\n @if (others) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"others\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span>{{ others }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n\n <div class=\"btn__group\">\n @if (applyButton) {\n <button\n type=\"submit\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"applyButton.label\"\n [disabled]=\"!form.valid\"\n (click)=\"submitForm()\"\n >\n <span>{{ applyButton.label }}</span>\n </button>\n }\n <!-- @if (seeAllButton) {\n <a\n class=\"btn btn__primary--outline js-active-modal\"\n [attr.aria-label]=\"seeAllButton.label\"\n [attr.href]=\"seeAllButton.url\"\n >\n <span>{{ seeAllButton.label }}</span>\n </a>\n } -->\n </div>\n </div>\n </form>\n }\n </div>\n </div>\n</section>\n" }]
|
|
2036
2116
|
}], ctorParameters: () => [{ type: i1$3.FormBuilder }, { type: i0.ChangeDetectorRef }], propDecorators: { title: [{
|
|
2037
2117
|
type: Input
|
|
2038
2118
|
}], description: [{
|
|
@@ -2340,7 +2420,7 @@ class PuroContactFormComponent {
|
|
|
2340
2420
|
};
|
|
2341
2421
|
}
|
|
2342
2422
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroContactFormComponent, deps: [{ token: i1$3.FormBuilder }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2343
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroContactFormComponent, isStandalone: true, selector: "lib-puro-contact-form", inputs: { title: "title", subtitle: "subtitle", promotions: "promotions", requiredLabel: "requiredLabel", img: "img", conditionsLink: "conditionsLink", prefix: "prefix", dropdown: "dropdown", ndDropdown: "ndDropdown", textarea: "textarea", button: "button", emailInput: "emailInput", nameInput: "nameInput", surnameInput: "surnameInput", phoneInput: "phoneInput", tags: "tags", textColors: "textColors", isHotels: "isHotels", hotelID: "hotelID" }, outputs: { submitFormValue: "submitFormValue" }, ngImport: i0, template: "<section class=\"contactForm generalMargin\">\n <!-- @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"contactForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n } -->\n\n <div class=\"contactForm__inner\">\n <div class=\"contactForm__graphic\">\n <div class=\"contactForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"contactForm__graphicInner--img\"\n decoding=\"async\"\n />\n }\n </div>\n </div>\n\n <div class=\"contactForm__content\">\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"contactForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (subtitle) {\n <div\n class=\"contactForm__paragraph\"\n [innerHtml]=\"subtitle\"\n ></div>\n }\n\n @if (formReady$()) {\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\">\n <!-- Dropdown 1 -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (dropdown && !isHotels) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"dropdown\"\n >\n <option value=\"\">\n {{ dropdown.placeholder }}\n </option>\n @for (\n option of dropdown.options;\n track $index\n ) {\n @if (option) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <!-- Dropdown 2 + Email -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (ndDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"ndDropdown\"\n >\n <option value=\"\">\n {{ ndDropdown.title }}\n </option>\n @for (\n option of ndDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n [placeholder]=\"emailInput.placeholder\"\n [formControlName]=\"emailInput.name!\"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"\n inputChange($event, emailInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"19\"\n height=\"15\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{\n emailInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Nombre y Apellidos -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"nameInput.placeholder\"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"inputChange($event, nameInput)\"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{\n nameInput.error\n }}</span>\n }\n }\n </div>\n\n <div class=\"contactForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"surnameInput.placeholder\"\n [formControlName]=\"surnameInput.name!\"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"\n inputChange($event, surnameInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{\n surnameInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Prefijo y Tel\u00E9fono -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"prefix\"\n >\n @if (prefix.placeholder) {\n <option value=\"\">\n {{ prefix.placeholder }}\n </option>\n }\n @for (\n item of prefix.options || [];\n track $index\n ) {\n <option [value]=\"item.code\">\n {{ item.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n\n <div class=\"contactForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"tel\"\n class=\"form__control\"\n [placeholder]=\"phoneInput.placeholder\"\n [formControlName]=\"phoneInput.name!\"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"\n inputChange($event, phoneInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#phone\"></use>\n </svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{\n phoneInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Mensaje -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (textarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"textarea.placeholder\"\n [formControlName]=\"textarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n\n <!-- Checkboxes -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n <div class=\"block-checkbox\">\n @if (requiredLabel) {\n <span class=\"required-label\">{{\n requiredLabel\n }}</span>\n }\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span\n [innerHTML]=\"conditionsLink\"\n ></span>\n </label>\n }\n @if (promotions) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"promotions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span>{{ promotions }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n\n <!-- Bot\u00F3n -->\n <div class=\"btn__group\">\n @if (button) {\n @if (button.url) {\n <a [href]=\"button.url\" [linkType]=\"button.linkType\">\n <button\n class=\"btn btn__primary--outline\"\n type=\"submit\"\n [attr.aria-label]=\"button.label\"\n [disabled]=\"form.invalid\"\n (click)=\"submitForm($event)\"\n >\n <span>{{ button.label }}</span>\n </button>\n </a>\n }\n @else {\n <button\n class=\"btn btn__primary--outline\"\n type=\"submit\"\n [attr.aria-label]=\"button.label\"\n [disabled]=\"form.invalid\"\n (click)=\"submitForm($event)\"\n >\n <span>{{ button.label }}</span>\n </button>\n }\n }\n </div>\n </form>\n }\n </div>\n </div>\n</section>\n", styles: [".form-error{position:relative;color:var(--grey);z-index:1;bottom:20px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2423
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroContactFormComponent, isStandalone: true, selector: "lib-puro-contact-form", inputs: { title: "title", subtitle: "subtitle", promotions: "promotions", requiredLabel: "requiredLabel", img: "img", conditionsLink: "conditionsLink", prefix: "prefix", dropdown: "dropdown", ndDropdown: "ndDropdown", textarea: "textarea", button: "button", emailInput: "emailInput", nameInput: "nameInput", surnameInput: "surnameInput", phoneInput: "phoneInput", tags: "tags", textColors: "textColors", isHotels: "isHotels", hotelID: "hotelID" }, outputs: { submitFormValue: "submitFormValue" }, ngImport: i0, template: "<section class=\"contactForm generalMargin\">\n <!-- @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"contactForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n } -->\n\n <div class=\"contactForm__inner\">\n <div class=\"contactForm__graphic\">\n <div class=\"contactForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"contactForm__graphicInner--img\"\n decoding=\"async\"\n />\n }\n </div>\n </div>\n\n <div class=\"contactForm__content\">\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"contactForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (subtitle) {\n <div\n class=\"contactForm__paragraph\"\n [innerHtml]=\"subtitle\"\n ></div>\n }\n\n @if (formReady$()) {\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\">\n <!-- Dropdown 1 -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (dropdown && !isHotels) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"dropdown\"\n >\n <option value=\"\">\n {{ dropdown.placeholder }}\n </option>\n @for (\n option of dropdown.options;\n track $index\n ) {\n @if (option) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <!-- Dropdown 2 + Email -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (ndDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"ndDropdown\"\n >\n <option value=\"\">\n {{ ndDropdown.title }}\n </option>\n @for (\n option of ndDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n [placeholder]=\"emailInput.placeholder\"\n [formControlName]=\"emailInput.name!\"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"\n inputChange($event, emailInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"19\"\n height=\"15\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{\n emailInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Nombre y Apellidos -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"nameInput.placeholder\"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"inputChange($event, nameInput)\"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{\n nameInput.error\n }}</span>\n }\n }\n </div>\n\n <div class=\"contactForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"surnameInput.placeholder\"\n [formControlName]=\"surnameInput.name!\"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"\n inputChange($event, surnameInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{\n surnameInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Prefijo y Tel\u00E9fono -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\" style=\"position: relative\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <lib-puro-prefix-select\n formControlName=\"prefix\"\n [options]=\"prefix.options\"\n [placeholder]=\"prefix.placeholder\">\n </lib-puro-prefix-select>\n </div>\n }\n </div>\n\n <div class=\"contactForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"tel\"\n class=\"form__control\"\n [placeholder]=\"phoneInput.placeholder\"\n [formControlName]=\"phoneInput.name!\"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"\n inputChange($event, phoneInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#phone\"></use>\n </svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{\n phoneInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Mensaje -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (textarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"textarea.placeholder\"\n [formControlName]=\"textarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n\n <!-- Checkboxes -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n <div class=\"block-checkbox\">\n @if (requiredLabel) {\n <span class=\"required-label\">{{\n requiredLabel\n }}</span>\n }\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span\n [innerHTML]=\"conditionsLink\"\n ></span>\n </label>\n }\n @if (promotions) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"promotions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span>{{ promotions }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n\n <!-- Bot\u00F3n -->\n <div class=\"btn__group\">\n @if (button) {\n @if (button.url) {\n <a [href]=\"button.url\" [linkType]=\"button.linkType\">\n <button\n class=\"btn btn__primary--outline\"\n type=\"submit\"\n [attr.aria-label]=\"button.label\"\n [disabled]=\"form.invalid\"\n (click)=\"submitForm($event)\"\n >\n <span>{{ button.label }}</span>\n </button>\n </a>\n }\n @else {\n <button\n class=\"btn btn__primary--outline\"\n type=\"submit\"\n [attr.aria-label]=\"button.label\"\n [disabled]=\"form.invalid\"\n (click)=\"submitForm($event)\"\n >\n <span>{{ button.label }}</span>\n </button>\n }\n }\n </div>\n </form>\n }\n </div>\n </div>\n</section>\n", styles: [".form-error{position:relative;color:var(--grey);z-index:1;bottom:20px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "component", type: PuroPrefixSelectComponent, selector: "lib-puro-prefix-select", inputs: ["options", "placeholder"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2344
2424
|
}
|
|
2345
2425
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroContactFormComponent, decorators: [{
|
|
2346
2426
|
type: Component,
|
|
@@ -2351,7 +2431,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2351
2431
|
PuroLinkTypeDirective,
|
|
2352
2432
|
PuroDynamicHeadingComponent,
|
|
2353
2433
|
NgOptimizedImage,
|
|
2354
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"contactForm generalMargin\">\n <!-- @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"contactForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n } -->\n\n <div class=\"contactForm__inner\">\n <div class=\"contactForm__graphic\">\n <div class=\"contactForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"contactForm__graphicInner--img\"\n decoding=\"async\"\n />\n }\n </div>\n </div>\n\n <div class=\"contactForm__content\">\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"contactForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (subtitle) {\n <div\n class=\"contactForm__paragraph\"\n [innerHtml]=\"subtitle\"\n ></div>\n }\n\n @if (formReady$()) {\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\">\n <!-- Dropdown 1 -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (dropdown && !isHotels) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"dropdown\"\n >\n <option value=\"\">\n {{ dropdown.placeholder }}\n </option>\n @for (\n option of dropdown.options;\n track $index\n ) {\n @if (option) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <!-- Dropdown 2 + Email -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (ndDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"ndDropdown\"\n >\n <option value=\"\">\n {{ ndDropdown.title }}\n </option>\n @for (\n option of ndDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n [placeholder]=\"emailInput.placeholder\"\n [formControlName]=\"emailInput.name!\"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"\n inputChange($event, emailInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"19\"\n height=\"15\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{\n emailInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Nombre y Apellidos -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"nameInput.placeholder\"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"inputChange($event, nameInput)\"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{\n nameInput.error\n }}</span>\n }\n }\n </div>\n\n <div class=\"contactForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"surnameInput.placeholder\"\n [formControlName]=\"surnameInput.name!\"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"\n inputChange($event, surnameInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{\n surnameInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Prefijo y Tel\u00E9fono -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"prefix\"\n >\n @if (prefix.placeholder) {\n <option value=\"\">\n {{ prefix.placeholder }}\n </option>\n }\n @for (\n item of prefix.options || [];\n track $index\n ) {\n <option [value]=\"item.code\">\n {{ item.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n\n <div class=\"contactForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"tel\"\n class=\"form__control\"\n [placeholder]=\"phoneInput.placeholder\"\n [formControlName]=\"phoneInput.name!\"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"\n inputChange($event, phoneInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#phone\"></use>\n </svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{\n phoneInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Mensaje -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (textarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"textarea.placeholder\"\n [formControlName]=\"textarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n\n <!-- Checkboxes -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n <div class=\"block-checkbox\">\n @if (requiredLabel) {\n <span class=\"required-label\">{{\n requiredLabel\n }}</span>\n }\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span\n [innerHTML]=\"conditionsLink\"\n ></span>\n </label>\n }\n @if (promotions) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"promotions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span>{{ promotions }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n\n <!-- Bot\u00F3n -->\n <div class=\"btn__group\">\n @if (button) {\n @if (button.url) {\n <a [href]=\"button.url\" [linkType]=\"button.linkType\">\n <button\n class=\"btn btn__primary--outline\"\n type=\"submit\"\n [attr.aria-label]=\"button.label\"\n [disabled]=\"form.invalid\"\n (click)=\"submitForm($event)\"\n >\n <span>{{ button.label }}</span>\n </button>\n </a>\n }\n @else {\n <button\n class=\"btn btn__primary--outline\"\n type=\"submit\"\n [attr.aria-label]=\"button.label\"\n [disabled]=\"form.invalid\"\n (click)=\"submitForm($event)\"\n >\n <span>{{ button.label }}</span>\n </button>\n }\n }\n </div>\n </form>\n }\n </div>\n </div>\n</section>\n", styles: [".form-error{position:relative;color:var(--grey);z-index:1;bottom:20px}\n"] }]
|
|
2434
|
+
PuroPrefixSelectComponent
|
|
2435
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"contactForm generalMargin\">\n <!-- @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"contactForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n } -->\n\n <div class=\"contactForm__inner\">\n <div class=\"contactForm__graphic\">\n <div class=\"contactForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"contactForm__graphicInner--img\"\n decoding=\"async\"\n />\n }\n </div>\n </div>\n\n <div class=\"contactForm__content\">\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"contactForm__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (subtitle) {\n <div\n class=\"contactForm__paragraph\"\n [innerHtml]=\"subtitle\"\n ></div>\n }\n\n @if (formReady$()) {\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\">\n <!-- Dropdown 1 -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (dropdown && !isHotels) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"dropdown\"\n >\n <option value=\"\">\n {{ dropdown.placeholder }}\n </option>\n @for (\n option of dropdown.options;\n track $index\n ) {\n @if (option) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <!-- Dropdown 2 + Email -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (ndDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"ndDropdown\"\n >\n <option value=\"\">\n {{ ndDropdown.title }}\n </option>\n @for (\n option of ndDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n [placeholder]=\"emailInput.placeholder\"\n [formControlName]=\"emailInput.name!\"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"\n inputChange($event, emailInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"19\"\n height=\"15\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{\n emailInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Nombre y Apellidos -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"nameInput.placeholder\"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"inputChange($event, nameInput)\"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{\n nameInput.error\n }}</span>\n }\n }\n </div>\n\n <div class=\"contactForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"surnameInput.placeholder\"\n [formControlName]=\"surnameInput.name!\"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"\n inputChange($event, surnameInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{\n surnameInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Prefijo y Tel\u00E9fono -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\" style=\"position: relative\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <lib-puro-prefix-select\n formControlName=\"prefix\"\n [options]=\"prefix.options\"\n [placeholder]=\"prefix.placeholder\">\n </lib-puro-prefix-select>\n </div>\n }\n </div>\n\n <div class=\"contactForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"tel\"\n class=\"form__control\"\n [placeholder]=\"phoneInput.placeholder\"\n [formControlName]=\"phoneInput.name!\"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"\n inputChange($event, phoneInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#phone\"></use>\n </svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{\n phoneInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Mensaje -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n @if (textarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"textarea.placeholder\"\n [formControlName]=\"textarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n\n <!-- Checkboxes -->\n <div class=\"contactForm__row\">\n <div class=\"contactForm__col\">\n <div class=\"block-checkbox\">\n @if (requiredLabel) {\n <span class=\"required-label\">{{\n requiredLabel\n }}</span>\n }\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span\n [innerHTML]=\"conditionsLink\"\n ></span>\n </label>\n }\n @if (promotions) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"promotions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span>{{ promotions }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n\n <!-- Bot\u00F3n -->\n <div class=\"btn__group\">\n @if (button) {\n @if (button.url) {\n <a [href]=\"button.url\" [linkType]=\"button.linkType\">\n <button\n class=\"btn btn__primary--outline\"\n type=\"submit\"\n [attr.aria-label]=\"button.label\"\n [disabled]=\"form.invalid\"\n (click)=\"submitForm($event)\"\n >\n <span>{{ button.label }}</span>\n </button>\n </a>\n }\n @else {\n <button\n class=\"btn btn__primary--outline\"\n type=\"submit\"\n [attr.aria-label]=\"button.label\"\n [disabled]=\"form.invalid\"\n (click)=\"submitForm($event)\"\n >\n <span>{{ button.label }}</span>\n </button>\n }\n }\n </div>\n </form>\n }\n </div>\n </div>\n</section>\n", styles: [".form-error{position:relative;color:var(--grey);z-index:1;bottom:20px}\n"] }]
|
|
2355
2436
|
}], ctorParameters: () => [{ type: i1$3.FormBuilder }, { type: i0.ChangeDetectorRef }], propDecorators: { title: [{
|
|
2356
2437
|
type: Input
|
|
2357
2438
|
}], subtitle: [{
|
|
@@ -3498,7 +3579,7 @@ class PuroEventsFormComponent {
|
|
|
3498
3579
|
};
|
|
3499
3580
|
}
|
|
3500
3581
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroEventsFormComponent, deps: [{ token: i1$3.FormBuilder }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3501
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroEventsFormComponent, isStandalone: true, selector: "lib-puro-events-form", inputs: { identifier: "identifier", title: "title", description: "description", ciTitle: "ciTitle", dTitle: "dTitle", howTitle: "howTitle", typeEventInput: "typeEventInput", othersDropdown: "othersDropdown", nameInput: "nameInput", surnameInput: "surnameInput", prefix: "prefix", phoneInput: "phoneInput", emailInput: "emailInput", companyNameInput: "companyNameInput", howTextarea: "howTextarea", infoTextarea: "infoTextarea", npInput: "npInput", dateInput: "dateInput", sHourInput: "sHourInput", fHourInput: "fHourInput", others: "others", requiredLabel: "requiredLabel", img: "img", conditionsLink: "conditionsLink", applyButton: "applyButton", tags: "tags", textColors: "textColors" }, outputs: { submitFormValue: "submitFormValue" }, ngImport: i0, template: "<section class=\"eventsForm generalMargin\" [id]=\"identifier ?? 'EventsForm'\">\n <div class=\"eventsForm__inner\">\n\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"eventsForm__title corp-color\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n\n <!-- Imagen -->\n <div class=\"eventsForm__graphic\">\n <div class=\"eventsForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"eventsForm__graphicInner--img\"\n decoding=\"async\"\n />\n }\n </div>\n </div>\n\n <div class=\"eventsForm__content\">\n\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"eventsForm__title corp-color\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n\n @if (description) {\n <div class=\"eventsForm__paragraph\" [innerHTML]=\"description\"></div>\n }\n\n @if (formReady$()) {\n\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\" >\n\n <!-- SECTION 1 -->\n <div class=\"eventsForm__section\">\n @if (ciTitle) {\n <span class=\"eventsForm__section--title\">{{ ciTitle }}</span>\n }\n\n <!-- Nombre + Apellidos -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"nameInput.placeholder\"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"inputChange($event, nameInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"18\" height=\"20\"><use href=\"#user\"></use></svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{ nameInput.error }}</span>\n }\n }\n </div>\n\n <div class=\"eventsForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"surnameInput.placeholder\"\n [formControlName]=\"surnameInput.name!\"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"inputChange($event, surnameInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"18\" height=\"20\"><use href=\"#user\"></use></svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{ surnameInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Prefijo + Tel\u00E9fono -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <select class=\"form__control\" formControlName=\"prefix\">\n @if (prefix.placeholder) {\n <option value=\"\">\n {{ prefix.placeholder }}\n </option>\n }\n @for (item of prefix.options || []; track $index) {\n <option [value]=\"item.code\">{{ item.name }}</option>\n }\n </select>\n <span class=\"icon-right corp-color\">\n <svg width=\"15\" height=\"8\"><use href=\"#select-arrow\"></use></svg>\n </span>\n </div>\n }\n </div>\n\n <div class=\"eventsForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input type=\"tel\"\n class=\"form__control\"\n [placeholder]=\"phoneInput.placeholder\"\n formControlName=\"phone\"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"inputChange($event, phoneInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"17\" height=\"17\"><use href=\"#phone\"></use></svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{ phoneInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Email -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input type=\"email\"\n class=\"form__control\"\n [placeholder]=\"emailInput.placeholder\"\n formControlName=\"email\"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"inputChange($event, emailInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"17\" height=\"17\"><use href=\"#email\"></use></svg>\n </span>\n </div>\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{ emailInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Empresa -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (companyNameInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"companyNameInput.placeholder\"\n [formControlName]=\"companyNameInput.name!\"\n (blur)=\"validateInput(companyNameInput)\"\n (input)=\"inputChange($event, companyNameInput)\"\n />\n <span class=\"icon-right corp-color\">\n <i class=\"icon-99\"></i>\n </span>\n </div>\n @if (!companyNameInput.valid()) {\n <span class=\"form-error\">{{ companyNameInput.error }}</span>\n }\n }\n </div>\n </div>\n\n </div>\n\n <!-- SECTION 2 -->\n <div class=\"eventsForm__section\">\n @if (dTitle) {\n <span class=\"eventsForm__section--title\">{{ dTitle }}</span>\n }\n\n <!-- Dropdown N\u00BA personas -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n <!-- @if (neDropdown) {\n <div class=\"form__group withIcon\">\n <select class=\"form__control\" formControlName=\"neDropdown\">\n <option value=\"\">{{ neDropdown.placeholder }}</option>\n @for (option of neDropdown.options; track $index) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right corp-color\">\n <svg width=\"15\" height=\"8\"><use href=\"#select-arrow\"></use></svg>\n </span>\n </div>\n } -->\n @if (typeEventInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"typeEventInput.placeholder\"\n [formControlName]=\"typeEventInput.name!\"\n (blur)=\"validateInput(typeEventInput)\"\n (input)=\"inputChange($event, typeEventInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"22\" height=\"22\"><use href=\"#events-type\"></use></svg>\n </span>\n </div>\n <!-- @if (!typeEventInput.valid()) {\n <span class=\"form-error\">{{ typeEventInput.error }}</span>\n } -->\n }\n </div>\n </div>\n\n <!-- N\u00BA personas + Fecha -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (npInput) {\n <div class=\"form__group withIcon\">\n <input type=\"number\"\n class=\"form__control\"\n [placeholder]=\"npInput.placeholder\"\n [formControlName]=\"npInput.name!\"\n (blur)=\"validateInput(npInput)\"\n (input)=\"inputChange($event, npInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"18\" height=\"20\"><use href=\"#user\"></use></svg>\n </span>\n </div>\n @if (!npInput.valid()) {\n <span class=\"form-error\">{{ npInput.error }}</span>\n }\n }\n </div>\n\n <div class=\"eventsForm__col\">\n @if (dateInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"dateInput.placeholder\"\n [formControlName]=\"dateInput.name!\"\n puroDatepicker\n />\n <span class=\"icon-right corp-color\">\n <i class=\"icon-89\"></i>\n </span>\n </div>\n @if (!dateInput.valid()) {\n <span class=\"form-error\">{{ dateInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Horas -->\n <div class=\"eventsForm__row\">\n\n <!-- Start Hour -->\n <div class=\"eventsForm__col\" style=\"position: relative\">\n @if (sHourInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control timepicker-trigger\"\n readonly\n autocomplete=\"off\"\n [placeholder]=\"sHourInput.placeholder\"\n [formControlName]=\"sHourInput.name!\"\n (click)=\"openTimepicker('sHourInput', $event)\"\n />\n <span class=\"icon-right corp-color timepicker-trigger\"\n (click)=\"openTimepicker('sHourInput', $event)\">\n <i class=\"icon-100\"></i>\n </span>\n </div>\n\n @if (!sHourInput.valid()) {\n <span class=\"form-error\">{{ sHourInput.error }}</span>\n }\n\n <ul class=\"puro-timepicker\"\n *ngIf=\"activeTimepicker === 'sHourInput'\">\n <li *ngFor=\"let h of hours\"\n (click)=\"selectHour('sHourInput', h)\">\n {{ h }}\n </li>\n </ul>\n }\n </div>\n\n <!-- End Hour -->\n <div class=\"eventsForm__col\" style=\"position: relative\">\n @if (fHourInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control timepicker-trigger\"\n readonly\n autocomplete=\"off\"\n [placeholder]=\"fHourInput.placeholder\"\n [formControlName]=\"fHourInput.name!\"\n (click)=\"openTimepicker('fHourInput', $event)\"\n />\n <span class=\"icon-right corp-color timepicker-trigger\"\n (click)=\"openTimepicker('fHourInput', $event)\">\n <i class=\"icon-100\"></i>\n </span>\n </div>\n\n @if (!fHourInput.valid()) {\n <span class=\"form-error\">{{ fHourInput.error }}</span>\n }\n\n <ul class=\"puro-timepicker\"\n *ngIf=\"activeTimepicker === 'fHourInput'\">\n <li *ngFor=\"let h of hours\"\n (click)=\"selectHour('fHourInput', h)\">\n {{ h }}\n </li>\n </ul>\n }\n </div>\n </div>\n\n <!-- Mensaje info -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (infoTextarea) {\n <div class=\"form__group no-dot\">\n <textarea class=\"form__control\"\n [placeholder]=\"infoTextarea.placeholder\"\n [formControlName]=\"infoTextarea.name!\">\n </textarea>\n </div>\n }\n </div>\n </div>\n\n </div>\n\n <!-- SECTION 3 -->\n <div class=\"eventsForm__section\">\n @if (howTitle) {\n <span class=\"eventsForm__section--title\">{{ howTitle }}</span>\n }\n\n <!-- Dropdown -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (othersDropdown) {\n <div class=\"form__group withIcon\">\n <select class=\"form__control\"\n formControlName=\"othersDropdown\">\n <option value=\"\">\n {{ othersDropdown.placeholder }}\n </option>\n @for (option of othersDropdown.options; track $index) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right corp-color\">\n <svg width=\"15\" height=\"8\"><use href=\"#select-arrow\"></use></svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <!-- Textarea -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (howTextarea) {\n <div class=\"form__group no-dot\">\n <textarea class=\"form__control\"\n [placeholder]=\"howTextarea.placeholder\"\n [formControlName]=\"howTextarea.name!\">\n </textarea>\n </div>\n }\n </div>\n </div>\n\n <!-- Checkboxes -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n <div class=\"block-checkbox\">\n\n @if (requiredLabel) {\n <span class=\"required-label\">{{ requiredLabel }}</span>\n }\n\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg width=\"9\" height=\"7\"><use href=\"#checkbox-tick\"></use></svg>\n </span>\n <span [innerHTML]=\"conditionsLink\"></span>\n </label>\n }\n\n @if (others) {\n <label class=\"form__checkbox\">\n <input type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"others\"\n />\n <span class=\"box\">\n <svg width=\"9\" height=\"7\"><use href=\"#checkbox-tick\"></use></svg>\n </span>\n <span>{{ others }}</span>\n </label>\n }\n\n </div>\n </div>\n </div>\n\n <!-- Bot\u00F3n -->\n <div class=\"btn__group\">\n @if (applyButton) {\n <button\n type=\"submit\"\n class=\"btn btn__primary--outline btn__events-form\"\n [attr.aria-label]=\"applyButton.label\"\n [disabled]=\"form.invalid\"\n (click)=\"submitForm()\"\n >\n <span>{{ applyButton.label }}</span>\n </button>\n }\n </div>\n\n </div>\n </form>\n\n }\n </div>\n\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }, { kind: "directive", type: PuroDatepickerDirective, selector: "[puroDatepicker]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
3582
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroEventsFormComponent, isStandalone: true, selector: "lib-puro-events-form", inputs: { identifier: "identifier", title: "title", description: "description", ciTitle: "ciTitle", dTitle: "dTitle", howTitle: "howTitle", typeEventInput: "typeEventInput", othersDropdown: "othersDropdown", nameInput: "nameInput", surnameInput: "surnameInput", prefix: "prefix", phoneInput: "phoneInput", emailInput: "emailInput", companyNameInput: "companyNameInput", howTextarea: "howTextarea", infoTextarea: "infoTextarea", npInput: "npInput", dateInput: "dateInput", sHourInput: "sHourInput", fHourInput: "fHourInput", others: "others", requiredLabel: "requiredLabel", img: "img", conditionsLink: "conditionsLink", applyButton: "applyButton", tags: "tags", textColors: "textColors" }, outputs: { submitFormValue: "submitFormValue" }, ngImport: i0, template: "<section class=\"eventsForm generalMargin\" [id]=\"identifier ?? 'EventsForm'\">\n <div class=\"eventsForm__inner\">\n\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"eventsForm__title corp-color\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n\n <!-- Imagen -->\n <div class=\"eventsForm__graphic\">\n <div class=\"eventsForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"eventsForm__graphicInner--img\"\n decoding=\"async\"\n />\n }\n </div>\n </div>\n\n <div class=\"eventsForm__content\">\n\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"eventsForm__title corp-color\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n\n @if (description) {\n <div class=\"eventsForm__paragraph\" [innerHTML]=\"description\"></div>\n }\n\n @if (formReady$()) {\n\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\" >\n\n <!-- SECTION 1 -->\n <div class=\"eventsForm__section\">\n @if (ciTitle) {\n <span class=\"eventsForm__section--title\">{{ ciTitle }}</span>\n }\n\n <!-- Nombre + Apellidos -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"nameInput.placeholder\"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"inputChange($event, nameInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"18\" height=\"20\"><use href=\"#user\"></use></svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{ nameInput.error }}</span>\n }\n }\n </div>\n\n <div class=\"eventsForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"surnameInput.placeholder\"\n [formControlName]=\"surnameInput.name!\"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"inputChange($event, surnameInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"18\" height=\"20\"><use href=\"#user\"></use></svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{ surnameInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Prefijo + Tel\u00E9fono -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <lib-puro-prefix-select\n formControlName=\"prefix\"\n [options]=\"prefix.options\"\n [placeholder]=\"prefix.placeholder\">\n </lib-puro-prefix-select>\n </div>\n }\n </div>\n\n <div class=\"eventsForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input type=\"tel\"\n class=\"form__control\"\n [placeholder]=\"phoneInput.placeholder\"\n formControlName=\"phone\"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"inputChange($event, phoneInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"17\" height=\"17\"><use href=\"#phone\"></use></svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{ phoneInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Email -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input type=\"email\"\n class=\"form__control\"\n [placeholder]=\"emailInput.placeholder\"\n formControlName=\"email\"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"inputChange($event, emailInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"17\" height=\"17\"><use href=\"#email\"></use></svg>\n </span>\n </div>\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{ emailInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Empresa -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (companyNameInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"companyNameInput.placeholder\"\n [formControlName]=\"companyNameInput.name!\"\n (blur)=\"validateInput(companyNameInput)\"\n (input)=\"inputChange($event, companyNameInput)\"\n />\n <span class=\"icon-right corp-color\">\n <i class=\"icon-99\"></i>\n </span>\n </div>\n @if (!companyNameInput.valid()) {\n <span class=\"form-error\">{{ companyNameInput.error }}</span>\n }\n }\n </div>\n </div>\n\n </div>\n\n <!-- SECTION 2 -->\n <div class=\"eventsForm__section\">\n @if (dTitle) {\n <span class=\"eventsForm__section--title\">{{ dTitle }}</span>\n }\n\n <!-- Dropdown N\u00BA personas -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n <!-- @if (neDropdown) {\n <div class=\"form__group withIcon\">\n <select class=\"form__control\" formControlName=\"neDropdown\">\n <option value=\"\">{{ neDropdown.placeholder }}</option>\n @for (option of neDropdown.options; track $index) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right corp-color\">\n <svg width=\"15\" height=\"8\"><use href=\"#select-arrow\"></use></svg>\n </span>\n </div>\n } -->\n @if (typeEventInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"typeEventInput.placeholder\"\n [formControlName]=\"typeEventInput.name!\"\n (blur)=\"validateInput(typeEventInput)\"\n (input)=\"inputChange($event, typeEventInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"22\" height=\"22\"><use href=\"#events-type\"></use></svg>\n </span>\n </div>\n <!-- @if (!typeEventInput.valid()) {\n <span class=\"form-error\">{{ typeEventInput.error }}</span>\n } -->\n }\n </div>\n </div>\n\n <!-- N\u00BA personas + Fecha -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (npInput) {\n <div class=\"form__group withIcon\">\n <input type=\"number\"\n class=\"form__control\"\n [placeholder]=\"npInput.placeholder\"\n [formControlName]=\"npInput.name!\"\n (blur)=\"validateInput(npInput)\"\n (input)=\"inputChange($event, npInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"18\" height=\"20\"><use href=\"#user\"></use></svg>\n </span>\n </div>\n @if (!npInput.valid()) {\n <span class=\"form-error\">{{ npInput.error }}</span>\n }\n }\n </div>\n\n <div class=\"eventsForm__col\">\n @if (dateInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"dateInput.placeholder\"\n [formControlName]=\"dateInput.name!\"\n puroDatepicker\n />\n <span class=\"icon-right corp-color\">\n <i class=\"icon-89\"></i>\n </span>\n </div>\n @if (!dateInput.valid()) {\n <span class=\"form-error\">{{ dateInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Horas -->\n <div class=\"eventsForm__row\">\n\n <!-- Start Hour -->\n <div class=\"eventsForm__col\" style=\"position: relative\">\n @if (sHourInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control timepicker-trigger\"\n readonly\n autocomplete=\"off\"\n [placeholder]=\"sHourInput.placeholder\"\n [formControlName]=\"sHourInput.name!\"\n (click)=\"openTimepicker('sHourInput', $event)\"\n />\n <span class=\"icon-right corp-color timepicker-trigger\"\n (click)=\"openTimepicker('sHourInput', $event)\">\n <i class=\"icon-100\"></i>\n </span>\n </div>\n\n @if (!sHourInput.valid()) {\n <span class=\"form-error\">{{ sHourInput.error }}</span>\n }\n\n <ul class=\"puro-timepicker\"\n *ngIf=\"activeTimepicker === 'sHourInput'\">\n <li *ngFor=\"let h of hours\"\n (click)=\"selectHour('sHourInput', h)\">\n {{ h }}\n </li>\n </ul>\n }\n </div>\n\n <!-- End Hour -->\n <div class=\"eventsForm__col\" style=\"position: relative\">\n @if (fHourInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control timepicker-trigger\"\n readonly\n autocomplete=\"off\"\n [placeholder]=\"fHourInput.placeholder\"\n [formControlName]=\"fHourInput.name!\"\n (click)=\"openTimepicker('fHourInput', $event)\"\n />\n <span class=\"icon-right corp-color timepicker-trigger\"\n (click)=\"openTimepicker('fHourInput', $event)\">\n <i class=\"icon-100\"></i>\n </span>\n </div>\n\n @if (!fHourInput.valid()) {\n <span class=\"form-error\">{{ fHourInput.error }}</span>\n }\n\n <ul class=\"puro-timepicker\"\n *ngIf=\"activeTimepicker === 'fHourInput'\">\n <li *ngFor=\"let h of hours\"\n (click)=\"selectHour('fHourInput', h)\">\n {{ h }}\n </li>\n </ul>\n }\n </div>\n </div>\n\n <!-- Mensaje info -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (infoTextarea) {\n <div class=\"form__group no-dot\">\n <textarea class=\"form__control\"\n [placeholder]=\"infoTextarea.placeholder\"\n [formControlName]=\"infoTextarea.name!\">\n </textarea>\n </div>\n }\n </div>\n </div>\n\n </div>\n\n <!-- SECTION 3 -->\n <div class=\"eventsForm__section\">\n @if (howTitle) {\n <span class=\"eventsForm__section--title\">{{ howTitle }}</span>\n }\n\n <!-- Dropdown -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (othersDropdown) {\n <div class=\"form__group withIcon\">\n <select class=\"form__control\"\n formControlName=\"othersDropdown\">\n <option value=\"\">\n {{ othersDropdown.placeholder }}\n </option>\n @for (option of othersDropdown.options; track $index) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right corp-color\">\n <svg width=\"15\" height=\"8\"><use href=\"#select-arrow\"></use></svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <!-- Textarea -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (howTextarea) {\n <div class=\"form__group no-dot\">\n <textarea class=\"form__control\"\n [placeholder]=\"howTextarea.placeholder\"\n [formControlName]=\"howTextarea.name!\">\n </textarea>\n </div>\n }\n </div>\n </div>\n\n <!-- Checkboxes -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n <div class=\"block-checkbox\">\n\n @if (requiredLabel) {\n <span class=\"required-label\">{{ requiredLabel }}</span>\n }\n\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg width=\"9\" height=\"7\"><use href=\"#checkbox-tick\"></use></svg>\n </span>\n <span [innerHTML]=\"conditionsLink\"></span>\n </label>\n }\n\n @if (others) {\n <label class=\"form__checkbox\">\n <input type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"others\"\n />\n <span class=\"box\">\n <svg width=\"9\" height=\"7\"><use href=\"#checkbox-tick\"></use></svg>\n </span>\n <span>{{ others }}</span>\n </label>\n }\n\n </div>\n </div>\n </div>\n\n <!-- Bot\u00F3n -->\n <div class=\"btn__group\">\n @if (applyButton) {\n <button\n type=\"submit\"\n class=\"btn btn__primary--outline btn__events-form\"\n [attr.aria-label]=\"applyButton.label\"\n [disabled]=\"form.invalid\"\n (click)=\"submitForm()\"\n >\n <span>{{ applyButton.label }}</span>\n </button>\n }\n </div>\n\n </div>\n </form>\n\n }\n </div>\n\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }, { kind: "directive", type: PuroDatepickerDirective, selector: "[puroDatepicker]" }, { kind: "component", type: PuroPrefixSelectComponent, selector: "lib-puro-prefix-select", inputs: ["options", "placeholder"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
3502
3583
|
}
|
|
3503
3584
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroEventsFormComponent, decorators: [{
|
|
3504
3585
|
type: Component,
|
|
@@ -3511,7 +3592,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
3511
3592
|
AutoImageZoomWrapperDirective,
|
|
3512
3593
|
PuroLinkTypeDirective,
|
|
3513
3594
|
PuroDatepickerDirective,
|
|
3514
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"eventsForm generalMargin\" [id]=\"identifier ?? 'EventsForm'\">\n <div class=\"eventsForm__inner\">\n\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"eventsForm__title corp-color\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n\n <!-- Imagen -->\n <div class=\"eventsForm__graphic\">\n <div class=\"eventsForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"eventsForm__graphicInner--img\"\n decoding=\"async\"\n />\n }\n </div>\n </div>\n\n <div class=\"eventsForm__content\">\n\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"eventsForm__title corp-color\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n\n @if (description) {\n <div class=\"eventsForm__paragraph\" [innerHTML]=\"description\"></div>\n }\n\n @if (formReady$()) {\n\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\" >\n\n <!-- SECTION 1 -->\n <div class=\"eventsForm__section\">\n @if (ciTitle) {\n <span class=\"eventsForm__section--title\">{{ ciTitle }}</span>\n }\n\n <!-- Nombre + Apellidos -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"nameInput.placeholder\"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"inputChange($event, nameInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"18\" height=\"20\"><use href=\"#user\"></use></svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{ nameInput.error }}</span>\n }\n }\n </div>\n\n <div class=\"eventsForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"surnameInput.placeholder\"\n [formControlName]=\"surnameInput.name!\"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"inputChange($event, surnameInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"18\" height=\"20\"><use href=\"#user\"></use></svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{ surnameInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Prefijo + Tel\u00E9fono -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <select class=\"form__control\" formControlName=\"prefix\">\n @if (prefix.placeholder) {\n <option value=\"\">\n {{ prefix.placeholder }}\n </option>\n }\n @for (item of prefix.options || []; track $index) {\n <option [value]=\"item.code\">{{ item.name }}</option>\n }\n </select>\n <span class=\"icon-right corp-color\">\n <svg width=\"15\" height=\"8\"><use href=\"#select-arrow\"></use></svg>\n </span>\n </div>\n }\n </div>\n\n <div class=\"eventsForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input type=\"tel\"\n class=\"form__control\"\n [placeholder]=\"phoneInput.placeholder\"\n formControlName=\"phone\"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"inputChange($event, phoneInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"17\" height=\"17\"><use href=\"#phone\"></use></svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{ phoneInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Email -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input type=\"email\"\n class=\"form__control\"\n [placeholder]=\"emailInput.placeholder\"\n formControlName=\"email\"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"inputChange($event, emailInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"17\" height=\"17\"><use href=\"#email\"></use></svg>\n </span>\n </div>\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{ emailInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Empresa -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (companyNameInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"companyNameInput.placeholder\"\n [formControlName]=\"companyNameInput.name!\"\n (blur)=\"validateInput(companyNameInput)\"\n (input)=\"inputChange($event, companyNameInput)\"\n />\n <span class=\"icon-right corp-color\">\n <i class=\"icon-99\"></i>\n </span>\n </div>\n @if (!companyNameInput.valid()) {\n <span class=\"form-error\">{{ companyNameInput.error }}</span>\n }\n }\n </div>\n </div>\n\n </div>\n\n <!-- SECTION 2 -->\n <div class=\"eventsForm__section\">\n @if (dTitle) {\n <span class=\"eventsForm__section--title\">{{ dTitle }}</span>\n }\n\n <!-- Dropdown N\u00BA personas -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n <!-- @if (neDropdown) {\n <div class=\"form__group withIcon\">\n <select class=\"form__control\" formControlName=\"neDropdown\">\n <option value=\"\">{{ neDropdown.placeholder }}</option>\n @for (option of neDropdown.options; track $index) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right corp-color\">\n <svg width=\"15\" height=\"8\"><use href=\"#select-arrow\"></use></svg>\n </span>\n </div>\n } -->\n @if (typeEventInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"typeEventInput.placeholder\"\n [formControlName]=\"typeEventInput.name!\"\n (blur)=\"validateInput(typeEventInput)\"\n (input)=\"inputChange($event, typeEventInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"22\" height=\"22\"><use href=\"#events-type\"></use></svg>\n </span>\n </div>\n <!-- @if (!typeEventInput.valid()) {\n <span class=\"form-error\">{{ typeEventInput.error }}</span>\n } -->\n }\n </div>\n </div>\n\n <!-- N\u00BA personas + Fecha -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (npInput) {\n <div class=\"form__group withIcon\">\n <input type=\"number\"\n class=\"form__control\"\n [placeholder]=\"npInput.placeholder\"\n [formControlName]=\"npInput.name!\"\n (blur)=\"validateInput(npInput)\"\n (input)=\"inputChange($event, npInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"18\" height=\"20\"><use href=\"#user\"></use></svg>\n </span>\n </div>\n @if (!npInput.valid()) {\n <span class=\"form-error\">{{ npInput.error }}</span>\n }\n }\n </div>\n\n <div class=\"eventsForm__col\">\n @if (dateInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"dateInput.placeholder\"\n [formControlName]=\"dateInput.name!\"\n puroDatepicker\n />\n <span class=\"icon-right corp-color\">\n <i class=\"icon-89\"></i>\n </span>\n </div>\n @if (!dateInput.valid()) {\n <span class=\"form-error\">{{ dateInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Horas -->\n <div class=\"eventsForm__row\">\n\n <!-- Start Hour -->\n <div class=\"eventsForm__col\" style=\"position: relative\">\n @if (sHourInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control timepicker-trigger\"\n readonly\n autocomplete=\"off\"\n [placeholder]=\"sHourInput.placeholder\"\n [formControlName]=\"sHourInput.name!\"\n (click)=\"openTimepicker('sHourInput', $event)\"\n />\n <span class=\"icon-right corp-color timepicker-trigger\"\n (click)=\"openTimepicker('sHourInput', $event)\">\n <i class=\"icon-100\"></i>\n </span>\n </div>\n\n @if (!sHourInput.valid()) {\n <span class=\"form-error\">{{ sHourInput.error }}</span>\n }\n\n <ul class=\"puro-timepicker\"\n *ngIf=\"activeTimepicker === 'sHourInput'\">\n <li *ngFor=\"let h of hours\"\n (click)=\"selectHour('sHourInput', h)\">\n {{ h }}\n </li>\n </ul>\n }\n </div>\n\n <!-- End Hour -->\n <div class=\"eventsForm__col\" style=\"position: relative\">\n @if (fHourInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control timepicker-trigger\"\n readonly\n autocomplete=\"off\"\n [placeholder]=\"fHourInput.placeholder\"\n [formControlName]=\"fHourInput.name!\"\n (click)=\"openTimepicker('fHourInput', $event)\"\n />\n <span class=\"icon-right corp-color timepicker-trigger\"\n (click)=\"openTimepicker('fHourInput', $event)\">\n <i class=\"icon-100\"></i>\n </span>\n </div>\n\n @if (!fHourInput.valid()) {\n <span class=\"form-error\">{{ fHourInput.error }}</span>\n }\n\n <ul class=\"puro-timepicker\"\n *ngIf=\"activeTimepicker === 'fHourInput'\">\n <li *ngFor=\"let h of hours\"\n (click)=\"selectHour('fHourInput', h)\">\n {{ h }}\n </li>\n </ul>\n }\n </div>\n </div>\n\n <!-- Mensaje info -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (infoTextarea) {\n <div class=\"form__group no-dot\">\n <textarea class=\"form__control\"\n [placeholder]=\"infoTextarea.placeholder\"\n [formControlName]=\"infoTextarea.name!\">\n </textarea>\n </div>\n }\n </div>\n </div>\n\n </div>\n\n <!-- SECTION 3 -->\n <div class=\"eventsForm__section\">\n @if (howTitle) {\n <span class=\"eventsForm__section--title\">{{ howTitle }}</span>\n }\n\n <!-- Dropdown -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (othersDropdown) {\n <div class=\"form__group withIcon\">\n <select class=\"form__control\"\n formControlName=\"othersDropdown\">\n <option value=\"\">\n {{ othersDropdown.placeholder }}\n </option>\n @for (option of othersDropdown.options; track $index) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right corp-color\">\n <svg width=\"15\" height=\"8\"><use href=\"#select-arrow\"></use></svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <!-- Textarea -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (howTextarea) {\n <div class=\"form__group no-dot\">\n <textarea class=\"form__control\"\n [placeholder]=\"howTextarea.placeholder\"\n [formControlName]=\"howTextarea.name!\">\n </textarea>\n </div>\n }\n </div>\n </div>\n\n <!-- Checkboxes -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n <div class=\"block-checkbox\">\n\n @if (requiredLabel) {\n <span class=\"required-label\">{{ requiredLabel }}</span>\n }\n\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg width=\"9\" height=\"7\"><use href=\"#checkbox-tick\"></use></svg>\n </span>\n <span [innerHTML]=\"conditionsLink\"></span>\n </label>\n }\n\n @if (others) {\n <label class=\"form__checkbox\">\n <input type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"others\"\n />\n <span class=\"box\">\n <svg width=\"9\" height=\"7\"><use href=\"#checkbox-tick\"></use></svg>\n </span>\n <span>{{ others }}</span>\n </label>\n }\n\n </div>\n </div>\n </div>\n\n <!-- Bot\u00F3n -->\n <div class=\"btn__group\">\n @if (applyButton) {\n <button\n type=\"submit\"\n class=\"btn btn__primary--outline btn__events-form\"\n [attr.aria-label]=\"applyButton.label\"\n [disabled]=\"form.invalid\"\n (click)=\"submitForm()\"\n >\n <span>{{ applyButton.label }}</span>\n </button>\n }\n </div>\n\n </div>\n </form>\n\n }\n </div>\n\n </div>\n</section>\n" }]
|
|
3595
|
+
PuroPrefixSelectComponent
|
|
3596
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"eventsForm generalMargin\" [id]=\"identifier ?? 'EventsForm'\">\n <div class=\"eventsForm__inner\">\n\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"eventsForm__title corp-color\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n\n <!-- Imagen -->\n <div class=\"eventsForm__graphic\">\n <div class=\"eventsForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"eventsForm__graphicInner--img\"\n decoding=\"async\"\n />\n }\n </div>\n </div>\n\n <div class=\"eventsForm__content\">\n\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"eventsForm__title corp-color\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n\n @if (description) {\n <div class=\"eventsForm__paragraph\" [innerHTML]=\"description\"></div>\n }\n\n @if (formReady$()) {\n\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\" >\n\n <!-- SECTION 1 -->\n <div class=\"eventsForm__section\">\n @if (ciTitle) {\n <span class=\"eventsForm__section--title\">{{ ciTitle }}</span>\n }\n\n <!-- Nombre + Apellidos -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"nameInput.placeholder\"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"inputChange($event, nameInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"18\" height=\"20\"><use href=\"#user\"></use></svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{ nameInput.error }}</span>\n }\n }\n </div>\n\n <div class=\"eventsForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"surnameInput.placeholder\"\n [formControlName]=\"surnameInput.name!\"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"inputChange($event, surnameInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"18\" height=\"20\"><use href=\"#user\"></use></svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{ surnameInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Prefijo + Tel\u00E9fono -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <lib-puro-prefix-select\n formControlName=\"prefix\"\n [options]=\"prefix.options\"\n [placeholder]=\"prefix.placeholder\">\n </lib-puro-prefix-select>\n </div>\n }\n </div>\n\n <div class=\"eventsForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input type=\"tel\"\n class=\"form__control\"\n [placeholder]=\"phoneInput.placeholder\"\n formControlName=\"phone\"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"inputChange($event, phoneInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"17\" height=\"17\"><use href=\"#phone\"></use></svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{ phoneInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Email -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input type=\"email\"\n class=\"form__control\"\n [placeholder]=\"emailInput.placeholder\"\n formControlName=\"email\"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"inputChange($event, emailInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"17\" height=\"17\"><use href=\"#email\"></use></svg>\n </span>\n </div>\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{ emailInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Empresa -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (companyNameInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"companyNameInput.placeholder\"\n [formControlName]=\"companyNameInput.name!\"\n (blur)=\"validateInput(companyNameInput)\"\n (input)=\"inputChange($event, companyNameInput)\"\n />\n <span class=\"icon-right corp-color\">\n <i class=\"icon-99\"></i>\n </span>\n </div>\n @if (!companyNameInput.valid()) {\n <span class=\"form-error\">{{ companyNameInput.error }}</span>\n }\n }\n </div>\n </div>\n\n </div>\n\n <!-- SECTION 2 -->\n <div class=\"eventsForm__section\">\n @if (dTitle) {\n <span class=\"eventsForm__section--title\">{{ dTitle }}</span>\n }\n\n <!-- Dropdown N\u00BA personas -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n <!-- @if (neDropdown) {\n <div class=\"form__group withIcon\">\n <select class=\"form__control\" formControlName=\"neDropdown\">\n <option value=\"\">{{ neDropdown.placeholder }}</option>\n @for (option of neDropdown.options; track $index) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right corp-color\">\n <svg width=\"15\" height=\"8\"><use href=\"#select-arrow\"></use></svg>\n </span>\n </div>\n } -->\n @if (typeEventInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control\"\n [placeholder]=\"typeEventInput.placeholder\"\n [formControlName]=\"typeEventInput.name!\"\n (blur)=\"validateInput(typeEventInput)\"\n (input)=\"inputChange($event, typeEventInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"22\" height=\"22\"><use href=\"#events-type\"></use></svg>\n </span>\n </div>\n <!-- @if (!typeEventInput.valid()) {\n <span class=\"form-error\">{{ typeEventInput.error }}</span>\n } -->\n }\n </div>\n </div>\n\n <!-- N\u00BA personas + Fecha -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (npInput) {\n <div class=\"form__group withIcon\">\n <input type=\"number\"\n class=\"form__control\"\n [placeholder]=\"npInput.placeholder\"\n [formControlName]=\"npInput.name!\"\n (blur)=\"validateInput(npInput)\"\n (input)=\"inputChange($event, npInput)\"\n />\n <span class=\"icon-right corp-color\">\n <svg width=\"18\" height=\"20\"><use href=\"#user\"></use></svg>\n </span>\n </div>\n @if (!npInput.valid()) {\n <span class=\"form-error\">{{ npInput.error }}</span>\n }\n }\n </div>\n\n <div class=\"eventsForm__col\">\n @if (dateInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"dateInput.placeholder\"\n [formControlName]=\"dateInput.name!\"\n puroDatepicker\n />\n <span class=\"icon-right corp-color\">\n <i class=\"icon-89\"></i>\n </span>\n </div>\n @if (!dateInput.valid()) {\n <span class=\"form-error\">{{ dateInput.error }}</span>\n }\n }\n </div>\n </div>\n\n <!-- Horas -->\n <div class=\"eventsForm__row\">\n\n <!-- Start Hour -->\n <div class=\"eventsForm__col\" style=\"position: relative\">\n @if (sHourInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control timepicker-trigger\"\n readonly\n autocomplete=\"off\"\n [placeholder]=\"sHourInput.placeholder\"\n [formControlName]=\"sHourInput.name!\"\n (click)=\"openTimepicker('sHourInput', $event)\"\n />\n <span class=\"icon-right corp-color timepicker-trigger\"\n (click)=\"openTimepicker('sHourInput', $event)\">\n <i class=\"icon-100\"></i>\n </span>\n </div>\n\n @if (!sHourInput.valid()) {\n <span class=\"form-error\">{{ sHourInput.error }}</span>\n }\n\n <ul class=\"puro-timepicker\"\n *ngIf=\"activeTimepicker === 'sHourInput'\">\n <li *ngFor=\"let h of hours\"\n (click)=\"selectHour('sHourInput', h)\">\n {{ h }}\n </li>\n </ul>\n }\n </div>\n\n <!-- End Hour -->\n <div class=\"eventsForm__col\" style=\"position: relative\">\n @if (fHourInput) {\n <div class=\"form__group withIcon\">\n <input type=\"text\"\n class=\"form__control timepicker-trigger\"\n readonly\n autocomplete=\"off\"\n [placeholder]=\"fHourInput.placeholder\"\n [formControlName]=\"fHourInput.name!\"\n (click)=\"openTimepicker('fHourInput', $event)\"\n />\n <span class=\"icon-right corp-color timepicker-trigger\"\n (click)=\"openTimepicker('fHourInput', $event)\">\n <i class=\"icon-100\"></i>\n </span>\n </div>\n\n @if (!fHourInput.valid()) {\n <span class=\"form-error\">{{ fHourInput.error }}</span>\n }\n\n <ul class=\"puro-timepicker\"\n *ngIf=\"activeTimepicker === 'fHourInput'\">\n <li *ngFor=\"let h of hours\"\n (click)=\"selectHour('fHourInput', h)\">\n {{ h }}\n </li>\n </ul>\n }\n </div>\n </div>\n\n <!-- Mensaje info -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (infoTextarea) {\n <div class=\"form__group no-dot\">\n <textarea class=\"form__control\"\n [placeholder]=\"infoTextarea.placeholder\"\n [formControlName]=\"infoTextarea.name!\">\n </textarea>\n </div>\n }\n </div>\n </div>\n\n </div>\n\n <!-- SECTION 3 -->\n <div class=\"eventsForm__section\">\n @if (howTitle) {\n <span class=\"eventsForm__section--title\">{{ howTitle }}</span>\n }\n\n <!-- Dropdown -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (othersDropdown) {\n <div class=\"form__group withIcon\">\n <select class=\"form__control\"\n formControlName=\"othersDropdown\">\n <option value=\"\">\n {{ othersDropdown.placeholder }}\n </option>\n @for (option of othersDropdown.options; track $index) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right corp-color\">\n <svg width=\"15\" height=\"8\"><use href=\"#select-arrow\"></use></svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <!-- Textarea -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n @if (howTextarea) {\n <div class=\"form__group no-dot\">\n <textarea class=\"form__control\"\n [placeholder]=\"howTextarea.placeholder\"\n [formControlName]=\"howTextarea.name!\">\n </textarea>\n </div>\n }\n </div>\n </div>\n\n <!-- Checkboxes -->\n <div class=\"eventsForm__row\">\n <div class=\"eventsForm__col\">\n <div class=\"block-checkbox\">\n\n @if (requiredLabel) {\n <span class=\"required-label\">{{ requiredLabel }}</span>\n }\n\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg width=\"9\" height=\"7\"><use href=\"#checkbox-tick\"></use></svg>\n </span>\n <span [innerHTML]=\"conditionsLink\"></span>\n </label>\n }\n\n @if (others) {\n <label class=\"form__checkbox\">\n <input type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"others\"\n />\n <span class=\"box\">\n <svg width=\"9\" height=\"7\"><use href=\"#checkbox-tick\"></use></svg>\n </span>\n <span>{{ others }}</span>\n </label>\n }\n\n </div>\n </div>\n </div>\n\n <!-- Bot\u00F3n -->\n <div class=\"btn__group\">\n @if (applyButton) {\n <button\n type=\"submit\"\n class=\"btn btn__primary--outline btn__events-form\"\n [attr.aria-label]=\"applyButton.label\"\n [disabled]=\"form.invalid\"\n (click)=\"submitForm()\"\n >\n <span>{{ applyButton.label }}</span>\n </button>\n }\n </div>\n\n </div>\n </form>\n\n }\n </div>\n\n </div>\n</section>\n" }]
|
|
3515
3597
|
}], ctorParameters: () => [{ type: i1$3.FormBuilder }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }], propDecorators: { identifier: [{
|
|
3516
3598
|
type: Input
|
|
3517
3599
|
}], title: [{
|
|
@@ -8821,7 +8903,7 @@ class PuroProjectsFormComponent {
|
|
|
8821
8903
|
}
|
|
8822
8904
|
}
|
|
8823
8905
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroProjectsFormComponent, deps: [{ token: i1$3.FormBuilder }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8824
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroProjectsFormComponent, isStandalone: true, selector: "lib-puro-projects-form", inputs: { identifier: "identifier", title: "title", description: "description", ydTitle: "ydTitle", npDropdown: "npDropdown", tbDropdown: "tbDropdown", emDropdown: "emDropdown", bpDropdown: "bpDropdown", plannedOpeningInput: "plannedOpeningInput", addressInput: "addressInput", sizeInput: "sizeInput", whyTextarea: "whyTextarea", aiTitle: "aiTitle", nameInput: "nameInput", surnameInput: "surnameInput", prefix: "prefix", phoneInput: "phoneInput", emailInput: "emailInput", confirmEmailInput: "confirmEmailInput", icTitle: "icTitle", ppTextarea: "ppTextarea", waTextarea: "waTextarea", dTitle: "dTitle", hbpDropdown: "hbpDropdown", materialsInput: "materialsInput", others: "others", requiredLabel: "requiredLabel", img: "img", conditionsLink: "conditionsLink", applyButton: "applyButton", seeAllButton: "seeAllButton" }, outputs: { submitFormValue: "submitFormValue" }, ngImport: i0, template: "<section class=\"projectsForm generalMargin\" [id]=\"identifier ?? 'ProjectsForm'\">\n <div class=\"projectsForm__inner\">\n @if (title) {\n <span class=\"projectsForm__title\">{{ title }}</span>\n }\n <div class=\"projectsForm__graphic\">\n <div class=\"projectsForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"projectsForm__graphicInner--img\"\n priority\n />\n }\n </div>\n </div>\n <div class=\"projectsForm__content\">\n @if (title) {\n <span class=\"projectsForm__title\">{{ title }}</span>\n }\n @if (description) {\n <div class=\"projectsForm__paragraph\">\n {{ description }}\n </div>\n }\n @if (formReady$()) {\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\">\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (ydTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ ydTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (npDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"npDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ npDropdown.placeholder }}\n </option>\n @for (\n option of npDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (tbDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"tbDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ tbDropdown.placeholder }}\n </option>\n @for (\n option of tbDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (plannedOpeningInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Size\"\n id=\"Size\"\n [placeholder]=\"\n plannedOpeningInput.placeholder\n \"\n [formControlName]=\"plannedOpeningInput.name!\"\n (blur)=\"validateInput(plannedOpeningInput)\"\n (input)=\"\n inputChange($event, plannedOpeningInput)\n \"\n />\n <span class=\"icon-right corp-color\">\n <i class=\"icon-89\"></i>\n </span>\n </div>\n @if (!plannedOpeningInput.valid()) {\n <span class=\"form-error\">{{\n plannedOpeningInput.error\n }}</span>\n }\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (emDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"emDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ emDropdown.placeholder }}\n </option>\n @for (\n option of emDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (bpDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"bpDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ bpDropdown.placeholder }}\n </option>\n @for (\n option of bpDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (addressInput && addressInput.name) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Address\"\n id=\"Address\"\n [placeholder]=\"\n addressInput.placeholder\n \"\n [formControlName]=\"\n addressInput.name!\n \"\n (blur)=\"validateInput(addressInput)\"\n (input)=\"\n inputChange(\n $event,\n addressInput\n )\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-62\"></i>\n </div>\n </span>\n </div>\n @if (!addressInput.valid()) {\n <span class=\"form-error\">{{\n addressInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (sizeInput && sizeInput.name) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Size\"\n id=\"Size\"\n [placeholder]=\"\n sizeInput.placeholder\n \"\n [formControlName]=\"sizeInput.name!\"\n (blur)=\"validateInput(sizeInput)\"\n (input)=\"\n inputChange($event, sizeInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"19\"\n >\n <use href=\"#size\"></use>\n </svg>\n </span>\n </div>\n @if (!sizeInput.valid()) {\n <span class=\"form-error\">{{\n sizeInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (whyTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n whyTextarea.placeholder\n \"\n [formControlName]=\"\n whyTextarea.name!\n \"\n ></textarea>\n </div>\n }\n </div>\n </div>\n </div>\n\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (aiTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ aiTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Name\"\n id=\"Name\"\n [placeholder]=\"\n nameInput.placeholder\n \"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"\n inputChange($event, nameInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{\n nameInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Apellidos\"\n id=\"apellidos\"\n [placeholder]=\"\n surnameInput.placeholder\n \"\n [formControlName]=\"\n surnameInput.name!\n \"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"\n inputChange(\n $event,\n surnameInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{\n surnameInput.error\n }}</span>\n }\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n name=\"Prefijo\"\n formControlName=\"prefix\"\n >\n @if (prefix.placeholder) {\n <option\n value=\"\"\n disabled\n selected\n >\n {{ prefix.placeholder }}\n </option>\n }\n @for (\n item of prefix.options || [];\n track $index\n ) {\n <option [value]=\"item.code\">\n {{ item.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"phone\"\n id=\"phone\"\n [placeholder]=\"\n phoneInput.placeholder\n \"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"\n inputChange($event, phoneInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#phone\"></use>\n </svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{\n phoneInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"email\"\n [placeholder]=\"\n emailInput.placeholder\n \"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"\n inputChange($event, emailInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{\n emailInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (confirmEmailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"confirmEmail\"\n [placeholder]=\"\n confirmEmailInput.placeholder\n \"\n (blur)=\"\n validateInput(confirmEmailInput)\n \"\n (input)=\"\n inputChange(\n $event,\n confirmEmailInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (\n confirmEmailInput &&\n !confirmEmailInput.valid()\n ) {\n <span class=\"form-error\">{{\n confirmEmailInput.error\n }}</span>\n }\n }\n </div>\n </div>\n @if (\n confirmEmailInput &&\n form.hasError('emailsDontMatch') &&\n form.get(confirmEmailInput.name!)?.touched\n ) {\n <span class=\"form-error\"\n >Los emails no coinciden.</span\n >\n }\n </div>\n\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (icTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ icTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (ppTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n ppTextarea.placeholder\n \"\n [formControlName]=\"ppTextarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (waTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n waTextarea.placeholder\n \"\n [formControlName]=\"waTextarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n </div>\n\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (dTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ dTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (hbpDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"hbpDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ hbpDropdown.placeholder }}\n </option>\n @for (\n option of hbpDropdown.options;\n track $index\n ) {\n @if (option) {\n <option\n [value]=\"option.code\"\n >\n {{ option.name }}\n </option>\n }\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (materialsInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"file\"\n class=\"form__control\"\n name=\"Materials\"\n id=\"Materials\"\n [placeholder]=\"materialsInput.label\"\n (input)=\"\n inputChange(\n $event,\n materialsInput\n )\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-98\"></i>\n </div>\n </span>\n </div>\n @if (!materialsInput.valid()) {\n <span class=\"form-error\">{{\n materialsInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (\n materialsNames && materialsNames.length > 0\n ) {\n @for (\n name of materialsNames;\n track $index\n ) {\n <span class=\"file-name\">{{\n name\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n <div class=\"block-checkbox\">\n @if (requiredLabel) {\n <span class=\"required-label\">{{\n requiredLabel\n }}</span>\n }\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n checked\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span [innerHTML]=\"conditionsLink\">\n </span>\n </label>\n }\n @if (others) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"others\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span>{{ others }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n\n <div class=\"btn__group\">\n @if (applyButton) {\n <button\n class=\"btn btn__primary--outline\"\n type=\"submit\"\n [attr.aria-label]=\"applyButton.label\"\n [disabled]=\"!form.valid\"\n (click)=\"submitForm()\"\n >\n <span>{{ applyButton.label }}</span>\n </button>\n }\n <!-- @if (seeAllButton) {\n <button\n class=\"btn btn__primary--outline js-active-modal\"\n data-modal_name=\"thankyou\"\n [attr.aria-label]=\"seeAllButton.label\"\n >\n <span>{{ seeAllButton.label }}</span>\n </button>\n } -->\n </div>\n </div>\n </form>\n }\n </div>\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
8906
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroProjectsFormComponent, isStandalone: true, selector: "lib-puro-projects-form", inputs: { identifier: "identifier", title: "title", description: "description", ydTitle: "ydTitle", npDropdown: "npDropdown", tbDropdown: "tbDropdown", emDropdown: "emDropdown", bpDropdown: "bpDropdown", plannedOpeningInput: "plannedOpeningInput", addressInput: "addressInput", sizeInput: "sizeInput", whyTextarea: "whyTextarea", aiTitle: "aiTitle", nameInput: "nameInput", surnameInput: "surnameInput", prefix: "prefix", phoneInput: "phoneInput", emailInput: "emailInput", confirmEmailInput: "confirmEmailInput", icTitle: "icTitle", ppTextarea: "ppTextarea", waTextarea: "waTextarea", dTitle: "dTitle", hbpDropdown: "hbpDropdown", materialsInput: "materialsInput", others: "others", requiredLabel: "requiredLabel", img: "img", conditionsLink: "conditionsLink", applyButton: "applyButton", seeAllButton: "seeAllButton" }, outputs: { submitFormValue: "submitFormValue" }, ngImport: i0, template: "<section class=\"projectsForm generalMargin\" [id]=\"identifier ?? 'ProjectsForm'\">\n <div class=\"projectsForm__inner\">\n @if (title) {\n <span class=\"projectsForm__title\">{{ title }}</span>\n }\n <div class=\"projectsForm__graphic\">\n <div class=\"projectsForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"projectsForm__graphicInner--img\"\n priority\n />\n }\n </div>\n </div>\n <div class=\"projectsForm__content\">\n @if (title) {\n <span class=\"projectsForm__title\">{{ title }}</span>\n }\n @if (description) {\n <div class=\"projectsForm__paragraph\">\n {{ description }}\n </div>\n }\n @if (formReady$()) {\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\">\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (ydTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ ydTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (npDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"npDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ npDropdown.placeholder }}\n </option>\n @for (\n option of npDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (tbDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"tbDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ tbDropdown.placeholder }}\n </option>\n @for (\n option of tbDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (plannedOpeningInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Size\"\n id=\"Size\"\n [placeholder]=\"\n plannedOpeningInput.placeholder\n \"\n [formControlName]=\"plannedOpeningInput.name!\"\n (blur)=\"validateInput(plannedOpeningInput)\"\n (input)=\"\n inputChange($event, plannedOpeningInput)\n \"\n />\n <span class=\"icon-right corp-color\">\n <i class=\"icon-89\"></i>\n </span>\n </div>\n @if (!plannedOpeningInput.valid()) {\n <span class=\"form-error\">{{\n plannedOpeningInput.error\n }}</span>\n }\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (emDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"emDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ emDropdown.placeholder }}\n </option>\n @for (\n option of emDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (bpDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"bpDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ bpDropdown.placeholder }}\n </option>\n @for (\n option of bpDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (addressInput && addressInput.name) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Address\"\n id=\"Address\"\n [placeholder]=\"\n addressInput.placeholder\n \"\n [formControlName]=\"\n addressInput.name!\n \"\n (blur)=\"validateInput(addressInput)\"\n (input)=\"\n inputChange(\n $event,\n addressInput\n )\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-62\"></i>\n </div>\n </span>\n </div>\n @if (!addressInput.valid()) {\n <span class=\"form-error\">{{\n addressInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (sizeInput && sizeInput.name) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Size\"\n id=\"Size\"\n [placeholder]=\"\n sizeInput.placeholder\n \"\n [formControlName]=\"sizeInput.name!\"\n (blur)=\"validateInput(sizeInput)\"\n (input)=\"\n inputChange($event, sizeInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"19\"\n >\n <use href=\"#size\"></use>\n </svg>\n </span>\n </div>\n @if (!sizeInput.valid()) {\n <span class=\"form-error\">{{\n sizeInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (whyTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n whyTextarea.placeholder\n \"\n [formControlName]=\"\n whyTextarea.name!\n \"\n ></textarea>\n </div>\n }\n </div>\n </div>\n </div>\n\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (aiTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ aiTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Name\"\n id=\"Name\"\n [placeholder]=\"\n nameInput.placeholder\n \"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"\n inputChange($event, nameInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{\n nameInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Apellidos\"\n id=\"apellidos\"\n [placeholder]=\"\n surnameInput.placeholder\n \"\n [formControlName]=\"\n surnameInput.name!\n \"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"\n inputChange(\n $event,\n surnameInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{\n surnameInput.error\n }}</span>\n }\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <lib-puro-prefix-select\n formControlName=\"prefix\"\n [options]=\"prefix.options\"\n [placeholder]=\"prefix.placeholder\">\n </lib-puro-prefix-select>\n </div>\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"phone\"\n id=\"phone\"\n [placeholder]=\"\n phoneInput.placeholder\n \"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"\n inputChange($event, phoneInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#phone\"></use>\n </svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{\n phoneInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"email\"\n [placeholder]=\"\n emailInput.placeholder\n \"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"\n inputChange($event, emailInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{\n emailInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (confirmEmailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"confirmEmail\"\n [placeholder]=\"\n confirmEmailInput.placeholder\n \"\n (blur)=\"\n validateInput(confirmEmailInput)\n \"\n (input)=\"\n inputChange(\n $event,\n confirmEmailInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (\n confirmEmailInput &&\n !confirmEmailInput.valid()\n ) {\n <span class=\"form-error\">{{\n confirmEmailInput.error\n }}</span>\n }\n }\n </div>\n </div>\n @if (\n confirmEmailInput &&\n form.hasError('emailsDontMatch') &&\n form.get(confirmEmailInput.name!)?.touched\n ) {\n <span class=\"form-error\"\n >Los emails no coinciden.</span\n >\n }\n </div>\n\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (icTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ icTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (ppTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n ppTextarea.placeholder\n \"\n [formControlName]=\"ppTextarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (waTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n waTextarea.placeholder\n \"\n [formControlName]=\"waTextarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n </div>\n\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (dTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ dTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (hbpDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"hbpDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ hbpDropdown.placeholder }}\n </option>\n @for (\n option of hbpDropdown.options;\n track $index\n ) {\n @if (option) {\n <option\n [value]=\"option.code\"\n >\n {{ option.name }}\n </option>\n }\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (materialsInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"file\"\n class=\"form__control\"\n name=\"Materials\"\n id=\"Materials\"\n [placeholder]=\"materialsInput.label\"\n (input)=\"\n inputChange(\n $event,\n materialsInput\n )\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-98\"></i>\n </div>\n </span>\n </div>\n @if (!materialsInput.valid()) {\n <span class=\"form-error\">{{\n materialsInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (\n materialsNames && materialsNames.length > 0\n ) {\n @for (\n name of materialsNames;\n track $index\n ) {\n <span class=\"file-name\">{{\n name\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n <div class=\"block-checkbox\">\n @if (requiredLabel) {\n <span class=\"required-label\">{{\n requiredLabel\n }}</span>\n }\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n checked\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span [innerHTML]=\"conditionsLink\">\n </span>\n </label>\n }\n @if (others) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"others\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span>{{ others }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n\n <div class=\"btn__group\">\n @if (applyButton) {\n <button\n class=\"btn btn__primary--outline\"\n type=\"submit\"\n [attr.aria-label]=\"applyButton.label\"\n [disabled]=\"!form.valid\"\n (click)=\"submitForm()\"\n >\n <span>{{ applyButton.label }}</span>\n </button>\n }\n <!-- @if (seeAllButton) {\n <button\n class=\"btn btn__primary--outline js-active-modal\"\n data-modal_name=\"thankyou\"\n [attr.aria-label]=\"seeAllButton.label\"\n >\n <span>{{ seeAllButton.label }}</span>\n </button>\n } -->\n </div>\n </div>\n </form>\n }\n </div>\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }, { kind: "component", type: PuroPrefixSelectComponent, selector: "lib-puro-prefix-select", inputs: ["options", "placeholder"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
8825
8907
|
}
|
|
8826
8908
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroProjectsFormComponent, decorators: [{
|
|
8827
8909
|
type: Component,
|
|
@@ -8831,7 +8913,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
8831
8913
|
ReactiveFormsModule,
|
|
8832
8914
|
NgOptimizedImage,
|
|
8833
8915
|
AutoImageZoomWrapperDirective,
|
|
8834
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"projectsForm generalMargin\" [id]=\"identifier ?? 'ProjectsForm'\">\n <div class=\"projectsForm__inner\">\n @if (title) {\n <span class=\"projectsForm__title\">{{ title }}</span>\n }\n <div class=\"projectsForm__graphic\">\n <div class=\"projectsForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"projectsForm__graphicInner--img\"\n priority\n />\n }\n </div>\n </div>\n <div class=\"projectsForm__content\">\n @if (title) {\n <span class=\"projectsForm__title\">{{ title }}</span>\n }\n @if (description) {\n <div class=\"projectsForm__paragraph\">\n {{ description }}\n </div>\n }\n @if (formReady$()) {\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\">\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (ydTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ ydTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (npDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"npDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ npDropdown.placeholder }}\n </option>\n @for (\n option of npDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (tbDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"tbDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ tbDropdown.placeholder }}\n </option>\n @for (\n option of tbDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (plannedOpeningInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Size\"\n id=\"Size\"\n [placeholder]=\"\n plannedOpeningInput.placeholder\n \"\n [formControlName]=\"plannedOpeningInput.name!\"\n (blur)=\"validateInput(plannedOpeningInput)\"\n (input)=\"\n inputChange($event, plannedOpeningInput)\n \"\n />\n <span class=\"icon-right corp-color\">\n <i class=\"icon-89\"></i>\n </span>\n </div>\n @if (!plannedOpeningInput.valid()) {\n <span class=\"form-error\">{{\n plannedOpeningInput.error\n }}</span>\n }\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (emDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"emDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ emDropdown.placeholder }}\n </option>\n @for (\n option of emDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (bpDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"bpDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ bpDropdown.placeholder }}\n </option>\n @for (\n option of bpDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (addressInput && addressInput.name) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Address\"\n id=\"Address\"\n [placeholder]=\"\n addressInput.placeholder\n \"\n [formControlName]=\"\n addressInput.name!\n \"\n (blur)=\"validateInput(addressInput)\"\n (input)=\"\n inputChange(\n $event,\n addressInput\n )\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-62\"></i>\n </div>\n </span>\n </div>\n @if (!addressInput.valid()) {\n <span class=\"form-error\">{{\n addressInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (sizeInput && sizeInput.name) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Size\"\n id=\"Size\"\n [placeholder]=\"\n sizeInput.placeholder\n \"\n [formControlName]=\"sizeInput.name!\"\n (blur)=\"validateInput(sizeInput)\"\n (input)=\"\n inputChange($event, sizeInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"19\"\n >\n <use href=\"#size\"></use>\n </svg>\n </span>\n </div>\n @if (!sizeInput.valid()) {\n <span class=\"form-error\">{{\n sizeInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (whyTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n whyTextarea.placeholder\n \"\n [formControlName]=\"\n whyTextarea.name!\n \"\n ></textarea>\n </div>\n }\n </div>\n </div>\n </div>\n\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (aiTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ aiTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Name\"\n id=\"Name\"\n [placeholder]=\"\n nameInput.placeholder\n \"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"\n inputChange($event, nameInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{\n nameInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Apellidos\"\n id=\"apellidos\"\n [placeholder]=\"\n surnameInput.placeholder\n \"\n [formControlName]=\"\n surnameInput.name!\n \"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"\n inputChange(\n $event,\n surnameInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{\n surnameInput.error\n }}</span>\n }\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n name=\"Prefijo\"\n formControlName=\"prefix\"\n >\n @if (prefix.placeholder) {\n <option\n value=\"\"\n disabled\n selected\n >\n {{ prefix.placeholder }}\n </option>\n }\n @for (\n item of prefix.options || [];\n track $index\n ) {\n <option [value]=\"item.code\">\n {{ item.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"phone\"\n id=\"phone\"\n [placeholder]=\"\n phoneInput.placeholder\n \"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"\n inputChange($event, phoneInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#phone\"></use>\n </svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{\n phoneInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"email\"\n [placeholder]=\"\n emailInput.placeholder\n \"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"\n inputChange($event, emailInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{\n emailInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (confirmEmailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"confirmEmail\"\n [placeholder]=\"\n confirmEmailInput.placeholder\n \"\n (blur)=\"\n validateInput(confirmEmailInput)\n \"\n (input)=\"\n inputChange(\n $event,\n confirmEmailInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (\n confirmEmailInput &&\n !confirmEmailInput.valid()\n ) {\n <span class=\"form-error\">{{\n confirmEmailInput.error\n }}</span>\n }\n }\n </div>\n </div>\n @if (\n confirmEmailInput &&\n form.hasError('emailsDontMatch') &&\n form.get(confirmEmailInput.name!)?.touched\n ) {\n <span class=\"form-error\"\n >Los emails no coinciden.</span\n >\n }\n </div>\n\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (icTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ icTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (ppTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n ppTextarea.placeholder\n \"\n [formControlName]=\"ppTextarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (waTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n waTextarea.placeholder\n \"\n [formControlName]=\"waTextarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n </div>\n\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (dTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ dTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (hbpDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"hbpDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ hbpDropdown.placeholder }}\n </option>\n @for (\n option of hbpDropdown.options;\n track $index\n ) {\n @if (option) {\n <option\n [value]=\"option.code\"\n >\n {{ option.name }}\n </option>\n }\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (materialsInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"file\"\n class=\"form__control\"\n name=\"Materials\"\n id=\"Materials\"\n [placeholder]=\"materialsInput.label\"\n (input)=\"\n inputChange(\n $event,\n materialsInput\n )\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-98\"></i>\n </div>\n </span>\n </div>\n @if (!materialsInput.valid()) {\n <span class=\"form-error\">{{\n materialsInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (\n materialsNames && materialsNames.length > 0\n ) {\n @for (\n name of materialsNames;\n track $index\n ) {\n <span class=\"file-name\">{{\n name\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n <div class=\"block-checkbox\">\n @if (requiredLabel) {\n <span class=\"required-label\">{{\n requiredLabel\n }}</span>\n }\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n checked\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span [innerHTML]=\"conditionsLink\">\n </span>\n </label>\n }\n @if (others) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"others\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span>{{ others }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n\n <div class=\"btn__group\">\n @if (applyButton) {\n <button\n class=\"btn btn__primary--outline\"\n type=\"submit\"\n [attr.aria-label]=\"applyButton.label\"\n [disabled]=\"!form.valid\"\n (click)=\"submitForm()\"\n >\n <span>{{ applyButton.label }}</span>\n </button>\n }\n <!-- @if (seeAllButton) {\n <button\n class=\"btn btn__primary--outline js-active-modal\"\n data-modal_name=\"thankyou\"\n [attr.aria-label]=\"seeAllButton.label\"\n >\n <span>{{ seeAllButton.label }}</span>\n </button>\n } -->\n </div>\n </div>\n </form>\n }\n </div>\n </div>\n</section>\n" }]
|
|
8916
|
+
PuroPrefixSelectComponent
|
|
8917
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"projectsForm generalMargin\" [id]=\"identifier ?? 'ProjectsForm'\">\n <div class=\"projectsForm__inner\">\n @if (title) {\n <span class=\"projectsForm__title\">{{ title }}</span>\n }\n <div class=\"projectsForm__graphic\">\n <div class=\"projectsForm__graphicInner\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n [alt]=\"img.alt\"\n width=\"467\"\n height=\"551\"\n class=\"projectsForm__graphicInner--img\"\n priority\n />\n }\n </div>\n </div>\n <div class=\"projectsForm__content\">\n @if (title) {\n <span class=\"projectsForm__title\">{{ title }}</span>\n }\n @if (description) {\n <div class=\"projectsForm__paragraph\">\n {{ description }}\n </div>\n }\n @if (formReady$()) {\n <form [formGroup]=\"form\" class=\"form\" (ngSubmit)=\"submitForm()\">\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (ydTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ ydTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (npDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"npDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ npDropdown.placeholder }}\n </option>\n @for (\n option of npDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (tbDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"tbDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ tbDropdown.placeholder }}\n </option>\n @for (\n option of tbDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (plannedOpeningInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Size\"\n id=\"Size\"\n [placeholder]=\"\n plannedOpeningInput.placeholder\n \"\n [formControlName]=\"plannedOpeningInput.name!\"\n (blur)=\"validateInput(plannedOpeningInput)\"\n (input)=\"\n inputChange($event, plannedOpeningInput)\n \"\n />\n <span class=\"icon-right corp-color\">\n <i class=\"icon-89\"></i>\n </span>\n </div>\n @if (!plannedOpeningInput.valid()) {\n <span class=\"form-error\">{{\n plannedOpeningInput.error\n }}</span>\n }\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (emDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"emDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ emDropdown.placeholder }}\n </option>\n @for (\n option of emDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (bpDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"bpDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ bpDropdown.placeholder }}\n </option>\n @for (\n option of bpDropdown.options;\n track $index\n ) {\n <option [value]=\"option.code\">\n {{ option.name }}\n </option>\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (addressInput && addressInput.name) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Address\"\n id=\"Address\"\n [placeholder]=\"\n addressInput.placeholder\n \"\n [formControlName]=\"\n addressInput.name!\n \"\n (blur)=\"validateInput(addressInput)\"\n (input)=\"\n inputChange(\n $event,\n addressInput\n )\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-62\"></i>\n </div>\n </span>\n </div>\n @if (!addressInput.valid()) {\n <span class=\"form-error\">{{\n addressInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (sizeInput && sizeInput.name) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Size\"\n id=\"Size\"\n [placeholder]=\"\n sizeInput.placeholder\n \"\n [formControlName]=\"sizeInput.name!\"\n (blur)=\"validateInput(sizeInput)\"\n (input)=\"\n inputChange($event, sizeInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"19\"\n >\n <use href=\"#size\"></use>\n </svg>\n </span>\n </div>\n @if (!sizeInput.valid()) {\n <span class=\"form-error\">{{\n sizeInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (whyTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n whyTextarea.placeholder\n \"\n [formControlName]=\"\n whyTextarea.name!\n \"\n ></textarea>\n </div>\n }\n </div>\n </div>\n </div>\n\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (aiTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ aiTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (nameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Name\"\n id=\"Name\"\n [placeholder]=\"\n nameInput.placeholder\n \"\n [formControlName]=\"nameInput.name!\"\n (blur)=\"validateInput(nameInput)\"\n (input)=\"\n inputChange($event, nameInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!nameInput.valid()) {\n <span class=\"form-error\">{{\n nameInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (surnameInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"Apellidos\"\n id=\"apellidos\"\n [placeholder]=\"\n surnameInput.placeholder\n \"\n [formControlName]=\"\n surnameInput.name!\n \"\n (blur)=\"validateInput(surnameInput)\"\n (input)=\"\n inputChange(\n $event,\n surnameInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"18\"\n height=\"20\"\n >\n <use href=\"#user\"></use>\n </svg>\n </span>\n </div>\n @if (!surnameInput.valid()) {\n <span class=\"form-error\">{{\n surnameInput.error\n }}</span>\n }\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (prefix) {\n <div class=\"form__group withIcon\">\n <lib-puro-prefix-select\n formControlName=\"prefix\"\n [options]=\"prefix.options\"\n [placeholder]=\"prefix.placeholder\">\n </lib-puro-prefix-select>\n </div>\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (phoneInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"text\"\n class=\"form__control\"\n name=\"phone\"\n id=\"phone\"\n [placeholder]=\"\n phoneInput.placeholder\n \"\n (blur)=\"validateInput(phoneInput)\"\n (input)=\"\n inputChange($event, phoneInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#phone\"></use>\n </svg>\n </span>\n </div>\n @if (!phoneInput.valid()) {\n <span class=\"form-error\">{{\n phoneInput.error\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (emailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"email\"\n [placeholder]=\"\n emailInput.placeholder\n \"\n (blur)=\"validateInput(emailInput)\"\n (input)=\"\n inputChange($event, emailInput)\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (!emailInput.valid()) {\n <span class=\"form-error\">{{\n emailInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (confirmEmailInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"email\"\n class=\"form__control\"\n name=\"confirmEmail\"\n [placeholder]=\"\n confirmEmailInput.placeholder\n \"\n (blur)=\"\n validateInput(confirmEmailInput)\n \"\n (input)=\"\n inputChange(\n $event,\n confirmEmailInput\n )\n \"\n />\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"17\"\n height=\"17\"\n >\n <use href=\"#email\"></use>\n </svg>\n </span>\n </div>\n @if (\n confirmEmailInput &&\n !confirmEmailInput.valid()\n ) {\n <span class=\"form-error\">{{\n confirmEmailInput.error\n }}</span>\n }\n }\n </div>\n </div>\n @if (\n confirmEmailInput &&\n form.hasError('emailsDontMatch') &&\n form.get(confirmEmailInput.name!)?.touched\n ) {\n <span class=\"form-error\"\n >Los emails no coinciden.</span\n >\n }\n </div>\n\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (icTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ icTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (ppTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n ppTextarea.placeholder\n \"\n [formControlName]=\"ppTextarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (waTextarea) {\n <div class=\"form__group no-dot\">\n <textarea\n class=\"form__control\"\n [placeholder]=\"\n waTextarea.placeholder\n \"\n [formControlName]=\"waTextarea.name!\"\n ></textarea>\n </div>\n }\n </div>\n </div>\n </div>\n\n <div class=\"projectsForm__section\">\n <div class=\"form__group\">\n @if (dTitle) {\n <span\n class=\"projectsForm__section--title form__group __subHeading\"\n >\n {{ dTitle }}\n </span>\n }\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (hbpDropdown) {\n <div class=\"form__group withIcon\">\n <select\n class=\"form__control\"\n formControlName=\"hbpDropdown\"\n >\n <option value=\"\" disabled selected>\n {{ hbpDropdown.placeholder }}\n </option>\n @for (\n option of hbpDropdown.options;\n track $index\n ) {\n @if (option) {\n <option\n [value]=\"option.code\"\n >\n {{ option.name }}\n </option>\n }\n }\n </select>\n <span class=\"icon-right\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"15\"\n height=\"8\"\n >\n <use href=\"#select-arrow\"></use>\n </svg>\n </span>\n </div>\n }\n </div>\n </div>\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n @if (materialsInput) {\n <div class=\"form__group withIcon\">\n <input\n type=\"file\"\n class=\"form__control\"\n name=\"Materials\"\n id=\"Materials\"\n [placeholder]=\"materialsInput.label\"\n (input)=\"\n inputChange(\n $event,\n materialsInput\n )\n \"\n />\n <span class=\"icon-right\">\n <div>\n <i class=\"icon-98\"></i>\n </div>\n </span>\n </div>\n @if (!materialsInput.valid()) {\n <span class=\"form-error\">{{\n materialsInput.error\n }}</span>\n }\n }\n </div>\n <div class=\"projectsForm__col\">\n @if (\n materialsNames && materialsNames.length > 0\n ) {\n @for (\n name of materialsNames;\n track $index\n ) {\n <span class=\"file-name\">{{\n name\n }}</span>\n }\n }\n </div>\n </div>\n\n <div class=\"projectsForm__row\">\n <div class=\"projectsForm__col\">\n <div class=\"block-checkbox\">\n @if (requiredLabel) {\n <span class=\"required-label\">{{\n requiredLabel\n }}</span>\n }\n @if (conditionsLink) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n checked\n class=\"checkbox\"\n formControlName=\"conditions\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span [innerHTML]=\"conditionsLink\">\n </span>\n </label>\n }\n @if (others) {\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"others\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use\n href=\"#checkbox-tick\"\n ></use>\n </svg>\n </span>\n <span>{{ others }}</span>\n </label>\n }\n </div>\n </div>\n </div>\n\n <div class=\"btn__group\">\n @if (applyButton) {\n <button\n class=\"btn btn__primary--outline\"\n type=\"submit\"\n [attr.aria-label]=\"applyButton.label\"\n [disabled]=\"!form.valid\"\n (click)=\"submitForm()\"\n >\n <span>{{ applyButton.label }}</span>\n </button>\n }\n <!-- @if (seeAllButton) {\n <button\n class=\"btn btn__primary--outline js-active-modal\"\n data-modal_name=\"thankyou\"\n [attr.aria-label]=\"seeAllButton.label\"\n >\n <span>{{ seeAllButton.label }}</span>\n </button>\n } -->\n </div>\n </div>\n </form>\n }\n </div>\n </div>\n</section>\n" }]
|
|
8835
8918
|
}], ctorParameters: () => [{ type: i1$3.FormBuilder }, { type: i0.ChangeDetectorRef }], propDecorators: { identifier: [{
|
|
8836
8919
|
type: Input
|
|
8837
8920
|
}], title: [{
|