@rededor/site-front-end-lib 20.0.0-alpha.0 → 20.0.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cura/badges/cura-badge-pill/index.d.ts +0 -5
- package/cura/cards/cura-card/index.d.ts +0 -4
- package/cura/forms/cura-label/index.d.ts +0 -4
- package/fesm2022/rededor-site-front-end-lib-components-footer.mjs +2 -2
- package/fesm2022/rededor-site-front-end-lib-components-footer.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-cura-badges-cura-badge-pill.mjs +17 -22
- package/fesm2022/rededor-site-front-end-lib-cura-badges-cura-badge-pill.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-cura-cards-cura-card.mjs +4 -23
- package/fesm2022/rededor-site-front-end-lib-cura-cards-cura-card.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-label.mjs +9 -15
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-label.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -33,11 +33,6 @@ declare class CuraBadgePillComponent {
|
|
|
33
33
|
borderRadius: _angular_core.InputSignal<string>;
|
|
34
34
|
colorBackground: _angular_core.Signal<string>;
|
|
35
35
|
colorBase: _angular_core.Signal<string>;
|
|
36
|
-
colorBackgroundDisabled: _angular_core.Signal<string>;
|
|
37
|
-
colorOutlineDisabled: _angular_core.Signal<string>;
|
|
38
|
-
baseSpacing: _angular_core.Signal<string>;
|
|
39
|
-
fontFamily: _angular_core.Signal<string>;
|
|
40
|
-
fontSize: _angular_core.Signal<string>;
|
|
41
36
|
containerClasses: _angular_core.Signal<string>;
|
|
42
37
|
symbolColor: _angular_core.Signal<string>;
|
|
43
38
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CuraBadgePillComponent, never>;
|
|
@@ -5,7 +5,6 @@ type CardColorMode = 'light' | 'dark';
|
|
|
5
5
|
type CardTarget = '_self' | '_blank' | '_parent' | '_top';
|
|
6
6
|
|
|
7
7
|
declare class CuraCardComponent {
|
|
8
|
-
private curaApi;
|
|
9
8
|
/**
|
|
10
9
|
* Determines whether the card should have padding.
|
|
11
10
|
* @default true
|
|
@@ -43,9 +42,6 @@ declare class CuraCardComponent {
|
|
|
43
42
|
target: _angular_core.InputSignal<CardTarget>;
|
|
44
43
|
containerClasses: _angular_core.Signal<string>;
|
|
45
44
|
isLink: _angular_core.Signal<boolean>;
|
|
46
|
-
cardStyles: _angular_core.Signal<{
|
|
47
|
-
[key: string]: string;
|
|
48
|
-
}>;
|
|
49
45
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CuraCardComponent, never>;
|
|
50
46
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CuraCardComponent, "cura-card", never, { "hasPadding": { "alias": "hasPadding"; "required": false; "isSignal": true; }; "hasShadow": { "alias": "hasShadow"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "colorMode": { "alias": "colorMode"; "required": false; "isSignal": true; }; "href": { "alias": "href"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, {}, never, ["*", "*"], true, never>;
|
|
51
47
|
}
|
|
@@ -38,10 +38,6 @@ declare class CuraLabelComponent {
|
|
|
38
38
|
* Default to 'none'
|
|
39
39
|
*/
|
|
40
40
|
textOverflow: _angular_core.InputSignal<TextOverflow>;
|
|
41
|
-
weights: _angular_core.Signal<any>;
|
|
42
|
-
fontSizeBase: _angular_core.Signal<string>;
|
|
43
|
-
fontFamily: _angular_core.Signal<string>;
|
|
44
|
-
linkColor: _angular_core.Signal<string>;
|
|
45
41
|
bodyColor: _angular_core.Signal<string>;
|
|
46
42
|
containerClasses: _angular_core.Signal<string>;
|
|
47
43
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CuraLabelComponent, never>;
|
|
@@ -136,11 +136,11 @@ class FooterComponent {
|
|
|
136
136
|
this.footerCookieClick.emit(event);
|
|
137
137
|
}
|
|
138
138
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: FooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
139
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.2", type: FooterComponent, isStandalone: true, selector: "footer[sl-ftr]", inputs: { project: { classPropertyName: "project", publicName: "project", isSignal: true, isRequired: false, transformFunction: null }, theme: { classPropertyName: "theme", publicName: "theme", isSignal: true, isRequired: false, transformFunction: null }, disclaimer: { classPropertyName: "disclaimer", publicName: "disclaimer", isSignal: true, isRequired: false, transformFunction: null }, linkPrivacyFooter: { classPropertyName: "linkPrivacyFooter", publicName: "linkPrivacyFooter", isSignal: true, isRequired: false, transformFunction: null }, logo: { classPropertyName: "logo", publicName: "logo", isSignal: true, isRequired: false, transformFunction: null }, partnerLogo: { classPropertyName: "partnerLogo", publicName: "partnerLogo", isSignal: true, isRequired: false, transformFunction: null }, phone: { classPropertyName: "phone", publicName: "phone", isSignal: true, isRequired: false, transformFunction: null }, socialMenu: { classPropertyName: "socialMenu", publicName: "socialMenu", isSignal: true, isRequired: false, transformFunction: null }, logoWidth: { classPropertyName: "logoWidth", publicName: "logoWidth", isSignal: true, isRequired: false, transformFunction: null }, footerMenu: { classPropertyName: "footerMenu", publicName: "footerMenu", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { footerPrivacyClick: "footerPrivacyClick", footerCookieClick: "footerCookieClick", footerSocialMediaClick: "footerSocialMediaClick", footerMenuItemClick: "footerMenuItemClick" }, ngImport: i0, template: "<div class=\"sl-ftr-content\">\n <div>\n <div class=\"sl-ftr-contact\">\n @if (logo()) {\n <div class=\"logo\">\n <img [src]=\"logo()?.url\" [alt]=\"logo()?.alt\" [title]=\"logo()?.title\" loading=\"lazy\" fetchpriority=\"low\" />\n </div>\n }\n @if (partnerLogo()) {\n <div class=\"partner-logo\">\n <img [src]=\"partnerLogo()?.url\" [alt]=\"partnerLogo()?.alt\" [title]=\"partnerLogo()?.title\" loading=\"lazy\" fetchpriority=\"low\" />\n </div>\n }\n @if (phone()) {\n <div class=\"phone\">\n <a rdsitelink href=\"tel:{{ phone() }}\">\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#phone'\"></use>\n </svg>\n {{ phone() }}\n </a>\n </div>\n }\n </div>\n\n <nav class=\"sl-ftr-medias\">\n <ul>\n @for (social of socialMenu(); track social.title) {\n <li>\n <a [href]=\"social.link\" rdsitelink [title]=\"social.title\" (click)=\"footerSocialMediaClicked($event)\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#' + social.icon\"></use>\n </svg>\n </a>\n </li>\n }\n </ul>\n </nav>\n </div>\n\n <div class=\"content-menu\">\n @if (footerMenu().length) {\n <div class=\"sl-ftr-menu\">\n <nav>\n <ul class=\"sl-ftr-menu-list\">\n @for (menu of footerMenu(); track menu.title) {\n <li class=\"sl-ftr-menu-list-item\">\n @if (menu.title) {\n <div class=\"sl-ftr-menu-item\" [ngClass]=\"{ 'have-children': menu.children?.length }\" (click)=\"toggleSubMenu($event, menu)\">\n <a\n class=\"sl-ftr-menu-item-link\"\n [href]=\"menu.url\"\n rdsitelink\n [title]=\"menu.title\"\n (click)=\"toggleSubMenu($event, menu); footerMenuItemClicked($event)\"\n >\n {{ menu.title }}\n </a>\n\n @if (menu.children?.length) {\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#' + (menu.active ? 'up' : 'down')\"></use>\n </svg>\n }\n </div>\n\n @if (menu.children?.length) {\n <ul class=\"sl-ftr-menu-item-children\" [ngClass]=\"{ closed: !menu.active }\">\n @for (submenu of menu.children; track submenu.title) {\n <li class=\"sl-ftr-menu-item-children-item\">\n <div class=\"sl-ftr-menu-item alt\">\n <a class=\"sl-ftr-menu-item-link\" [href]=\"submenu.url\" rdsitelink [title]=\"submenu.title\" (click)=\"footerMenuItemClicked($event)\">\n {{ submenu.title }}\n </a>\n </div>\n </li>\n }\n </ul>\n }\n }\n </li>\n }\n </ul>\n </nav>\n </div>\n }\n </div>\n</div>\n\n<div class=\"sl-ftr-disc\">\n <div class=\"disc-content\">\n <div class=\"disc-content-copy\">\u00A9{{ currentYear }} {{ disclaimer() }}</div>\n <ul class=\"disc-content-links\">\n <li>\n <a [href]=\"linkPrivacyFooter() || '#'\" target=\"_blank\" data-testid=\"_avisoPrivacidade\" (click)=\"footerPrivacyClicked($event)\"> Aviso de Privacidade </a>\n </li>\n <li>\n <a (click)=\"privacyTools.openCookieBanner(); footerCookieClicked($event)\" data-testid=\"_avisoCookies\"> Aviso de Cookies </a>\n </li>\n </ul>\n </div>\n</div>\n", styles: ["footer[sl-ftr]{min-height:530px;background-color:var(--ftr-bg-color);display:grid!important;grid-template-areas:\". . .\" \". content .\" \". . .\" \"disc disc disc\";grid-template-columns:minmax(10%,1fr) minmax(auto,1229.4px) minmax(10%,1fr);grid-template-rows:48px 1fr 48px auto}footer[sl-ftr] *{font-family:Gotham,Arial,Helvetica,sans-serif!important}footer[sl-ftr] svg{stroke:#fff;stroke-width:2.25px;fill:none}footer[sl-ftr] .sl-ftr-content{grid-area:content;display:flex;flex-direction:column;align-items:flex-start;gap:32px}footer[sl-ftr] .sl-ftr-content .content-menu{width:100%}footer[sl-ftr] .sl-ftr-disc{grid-area:disc}@media only screen and (min-width: 1024px){footer[sl-ftr]{grid-template-columns:minmax(5%,1fr) minmax(auto,1229.4px) minmax(5%,1fr)}footer[sl-ftr] .sl-ftr-content{flex-direction:row;gap:44px}}.sl-ftr-menu{display:flex;flex-direction:column;padding-top:20px}.sl-ftr-menu nav{width:100%;height:auto;flex:auto;column-count:unset}@media only screen and (min-width: 1024px){.sl-ftr-menu{flex-direction:row}.sl-ftr-menu nav{flex:3 1 0;column-count:3}}a.sl-ftr-menu-item-link{text-align:left;padding:8px 0;text-decoration:none;font-style:normal}.sl-ftr-menu-list{list-style:none}.sl-ftr-menu-list .sl-ftr-menu-item{display:flex;align-items:center;justify-content:space-between;background-color:transparent;width:auto;cursor:pointer}.sl-ftr-menu-list .sl-ftr-menu-item a.sl-ftr-menu-item-link{color:var(--ftr-color);font-size:14px;font-weight:500;line-height:16px;min-height:35px;letter-spacing:.56px}.sl-ftr-menu-list .sl-ftr-menu-item:hover a{color:var(--ftr-menu-hover-color)}.sl-ftr-menu-list .sl-ftr-menu-item:hover svg{stroke:var(--ftr-menu-hover-color)!important}.sl-ftr-menu-list .sl-ftr-menu-item:active a{color:var(--ftr-menu-active-color)}.sl-ftr-menu-list .sl-ftr-menu-item:active svg{stroke:var(--ftr-menu-active-color)!important}.sl-ftr-menu-list .sl-ftr-menu-item.alt a.sl-ftr-menu-item-link{color:var(--ftr-alt-color);font-size:12px;font-weight:300}.sl-ftr-menu-list .sl-ftr-menu-item.alt:hover a{color:var(--ftr-menu-alt-hover-color)}.sl-ftr-menu-list .sl-ftr-menu-item.alt:hover svg{stroke:var(--ftr-menu-alt-hover-color)!important}.sl-ftr-menu-list .sl-ftr-menu-item.alt:active a{color:var(--ftr-menu-alt-active-color)}.sl-ftr-menu-list .sl-ftr-menu-item.alt:active svg{stroke:var(--ftr-menu-alt-active-color)!important}.sl-ftr-menu-list .sl-ftr-menu-item.have-children{width:100%}.sl-ftr-menu-list .sl-ftr-menu-item svg{display:inline}.sl-ftr-menu-list .sl-ftr-menu-item-children{list-style:none}.sl-ftr-menu-list .sl-ftr-menu-item-children.closed{display:none}.sl-ftr-menu-list .sl-ftr-menu-item-children-item{margin:0 0 0 12px}@media only screen and (min-width: 1024px){.sl-ftr-menu-list .sl-ftr-menu-item svg{display:none}.sl-ftr-menu-list .sl-ftr-menu-item.have-children{width:auto}.sl-ftr-menu-list .sl-ftr-menu-item-children.closed{display:block}.sl-ftr-menu-list .sl-ftr-menu-item-children-item{margin:0 0 0 12px}}.sl-ftr-contact{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:20px 16px;margin-bottom:20px;width:100%;min-height:77px}.sl-ftr-contact img{width:var(--logo-width, 72px);height:50px;object-fit:contain}.sl-ftr-contact .logo{display:contents}.sl-ftr-contact .logo:after{content:\"\";width:1px;height:60px;background-color:var(--ftr-color)}.sl-ftr-contact .partner-logo{display:contents}.sl-ftr-contact .phone a{display:flex;justify-content:center;align-items:center;gap:12px;font-size:17px;font-weight:500;color:var(--ftr-color);text-decoration:none}@media only screen and (min-width: 361px){.sl-ftr-contact{width:280px}.sl-ftr-contact .phone a{font-size:19px}}@media only screen and (min-width: 1024px){.sl-ftr-contact{gap:20px 24px;width:328px}}nav.sl-ftr-medias ul{list-style:none;display:flex;gap:16px 0px;flex-wrap:wrap;width:100%}nav.sl-ftr-medias ul li{display:flex;justify-content:center;align-items:center;border-radius:100%;border:1px solid #ffffff;width:36px;height:36px;margin-right:12px}nav.sl-ftr-medias ul li a{display:flex;justify-content:center;align-items:center;border-radius:100%;width:36px;height:36px;text-decoration:none}@media only screen and (min-width: 361px){nav.sl-ftr-medias ul li{margin-right:15px}}@media only screen and (min-width: 1024px){nav.sl-ftr-medias ul{flex-wrap:nowrap}}.sl-ftr-disc{background-color:var(--ftr-disc-bg-color);display:grid!important;grid-template-areas:\". disc-content .\";grid-template-columns:minmax(5%,1fr) minmax(auto,1229.4px) minmax(5%,1fr);grid-template-rows:auto}.sl-ftr-disc .disc-content{grid-area:disc-content;height:auto;padding:12px 0;display:flex;align-items:flex-start;justify-content:flex-start;gap:8px;flex-direction:column}.sl-ftr-disc .disc-content-copy{font-size:12px;font-style:normal;font-weight:500;text-transform:uppercase;color:var(--ftr-disc-color)}.sl-ftr-disc .disc-content-links{list-style:none;display:flex;flex-direction:row;align-items:flex-start;flex-wrap:wrap;gap:0px 36px}.sl-ftr-disc .disc-content-links li a{font-size:12px;font-style:normal;font-weight:500;color:var(--ftr-disc-alt-color);text-decoration:none;cursor:pointer}@media only screen and (min-width: 1024px){.sl-ftr-disc .disc-content{height:40px;padding:0;align-items:center;flex-direction:row;gap:36px}.sl-ftr-disc .disc-content-links{gap:36px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RdsiteLinkDirective, selector: "[rdsitelink]", inputs: ["anchorAdjustment", "anchorExtraAdjustment", "phonemodal"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
139
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.2", type: FooterComponent, isStandalone: true, selector: "footer[sl-ftr]", inputs: { project: { classPropertyName: "project", publicName: "project", isSignal: true, isRequired: false, transformFunction: null }, theme: { classPropertyName: "theme", publicName: "theme", isSignal: true, isRequired: false, transformFunction: null }, disclaimer: { classPropertyName: "disclaimer", publicName: "disclaimer", isSignal: true, isRequired: false, transformFunction: null }, linkPrivacyFooter: { classPropertyName: "linkPrivacyFooter", publicName: "linkPrivacyFooter", isSignal: true, isRequired: false, transformFunction: null }, logo: { classPropertyName: "logo", publicName: "logo", isSignal: true, isRequired: false, transformFunction: null }, partnerLogo: { classPropertyName: "partnerLogo", publicName: "partnerLogo", isSignal: true, isRequired: false, transformFunction: null }, phone: { classPropertyName: "phone", publicName: "phone", isSignal: true, isRequired: false, transformFunction: null }, socialMenu: { classPropertyName: "socialMenu", publicName: "socialMenu", isSignal: true, isRequired: false, transformFunction: null }, logoWidth: { classPropertyName: "logoWidth", publicName: "logoWidth", isSignal: true, isRequired: false, transformFunction: null }, footerMenu: { classPropertyName: "footerMenu", publicName: "footerMenu", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { footerPrivacyClick: "footerPrivacyClick", footerCookieClick: "footerCookieClick", footerSocialMediaClick: "footerSocialMediaClick", footerMenuItemClick: "footerMenuItemClick" }, ngImport: i0, template: "<div class=\"sl-ftr-content\">\n <div>\n <div class=\"sl-ftr-contact\">\n @if (logo()) {\n <div class=\"logo\">\n <img [src]=\"logo()?.url\" [alt]=\"logo()?.alt\" [title]=\"logo()?.title\" loading=\"lazy\" fetchpriority=\"low\" />\n </div>\n }\n @if (partnerLogo()) {\n <div class=\"partner-logo\">\n <img [src]=\"partnerLogo()?.url\" [alt]=\"partnerLogo()?.alt\" [title]=\"partnerLogo()?.title\" loading=\"lazy\" fetchpriority=\"low\" />\n </div>\n }\n @if (phone()) {\n <div class=\"phone\">\n <a rdsitelink href=\"tel:{{ phone() }}\">\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#phone'\"></use>\n </svg>\n {{ phone() }}\n </a>\n </div>\n }\n </div>\n\n <nav class=\"sl-ftr-medias\">\n <ul>\n @for (social of socialMenu(); track social.title) {\n <li>\n <a [href]=\"social.link\" rdsitelink [title]=\"social.title\" (click)=\"footerSocialMediaClicked($event)\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#' + social.icon\"></use>\n </svg>\n </a>\n </li>\n }\n </ul>\n </nav>\n </div>\n\n <div class=\"content-menu\">\n @if (footerMenu().length) {\n <div class=\"sl-ftr-menu\">\n <nav>\n <ul class=\"sl-ftr-menu-list\">\n @for (menu of footerMenu(); track menu.title) {\n <li class=\"sl-ftr-menu-list-item\">\n @if (menu.title) {\n <div class=\"sl-ftr-menu-item\" [ngClass]=\"{ 'have-children': menu.children?.length }\" (click)=\"toggleSubMenu($event, menu)\">\n <a\n class=\"sl-ftr-menu-item-link\"\n [href]=\"menu.url\"\n rdsitelink\n [title]=\"menu.title\"\n (click)=\"toggleSubMenu($event, menu); footerMenuItemClicked($event)\"\n >\n {{ menu.title }}\n </a>\n\n @if (menu.children?.length) {\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#' + (menu.active ? 'up' : 'down')\"></use>\n </svg>\n }\n </div>\n\n @if (menu.children?.length) {\n <ul class=\"sl-ftr-menu-item-children\" [ngClass]=\"{ closed: !menu.active }\">\n @for (submenu of menu.children; track submenu.title) {\n <li class=\"sl-ftr-menu-item-children-item\">\n <div class=\"sl-ftr-menu-item alt\">\n <a class=\"sl-ftr-menu-item-link\" [href]=\"submenu.url\" rdsitelink [title]=\"submenu.title\" (click)=\"footerMenuItemClicked($event)\">\n {{ submenu.title }}\n </a>\n </div>\n </li>\n }\n </ul>\n }\n }\n </li>\n }\n </ul>\n </nav>\n </div>\n }\n </div>\n</div>\n\n<div class=\"sl-ftr-disc\">\n <div class=\"disc-content\">\n <div class=\"disc-content-copy\">\u00A9{{ currentYear }} {{ disclaimer() }}</div>\n <ul class=\"disc-content-links\">\n <li>\n <a [href]=\"linkPrivacyFooter() || '#'\" target=\"_blank\" data-testid=\"_avisoPrivacidade\" (click)=\"footerPrivacyClicked($event)\"> Aviso de Privacidade </a>\n </li>\n <li>\n <button (click)=\"privacyTools.openCookieBanner(); footerCookieClicked($event)\" data-testid=\"_avisoCookies\">Aviso de Cookies</button>\n </li>\n </ul>\n </div>\n</div>\n", styles: ["footer[sl-ftr]{min-height:530px;background-color:var(--ftr-bg-color);display:grid!important;grid-template-areas:\". . .\" \". content .\" \". . .\" \"disc disc disc\";grid-template-columns:minmax(10%,1fr) minmax(auto,1229.4px) minmax(10%,1fr);grid-template-rows:48px 1fr 48px auto}footer[sl-ftr] *{font-family:Gotham,Arial,Helvetica,sans-serif!important}footer[sl-ftr] svg{stroke:#fff;stroke-width:2.25px;fill:none}footer[sl-ftr] .sl-ftr-content{grid-area:content;display:flex;flex-direction:column;align-items:flex-start;gap:32px}footer[sl-ftr] .sl-ftr-content .content-menu{width:100%}footer[sl-ftr] .sl-ftr-disc{grid-area:disc}@media only screen and (min-width: 1024px){footer[sl-ftr]{grid-template-columns:minmax(5%,1fr) minmax(auto,1229.4px) minmax(5%,1fr)}footer[sl-ftr] .sl-ftr-content{flex-direction:row;gap:44px}}.sl-ftr-menu{display:flex;flex-direction:column;padding-top:20px}.sl-ftr-menu nav{width:100%;height:auto;flex:auto;column-count:unset}@media only screen and (min-width: 1024px){.sl-ftr-menu{flex-direction:row}.sl-ftr-menu nav{flex:3 1 0;column-count:3}}a.sl-ftr-menu-item-link{text-align:left;padding:8px 0;text-decoration:none;font-style:normal}.sl-ftr-menu-list{list-style:none}.sl-ftr-menu-list .sl-ftr-menu-item{display:flex;align-items:center;justify-content:space-between;background-color:transparent;width:auto;cursor:pointer}.sl-ftr-menu-list .sl-ftr-menu-item a.sl-ftr-menu-item-link{color:var(--ftr-color);font-size:14px;font-weight:500;line-height:16px;min-height:35px;letter-spacing:.56px}.sl-ftr-menu-list .sl-ftr-menu-item:hover a{color:var(--ftr-menu-hover-color)}.sl-ftr-menu-list .sl-ftr-menu-item:hover svg{stroke:var(--ftr-menu-hover-color)!important}.sl-ftr-menu-list .sl-ftr-menu-item:active a{color:var(--ftr-menu-active-color)}.sl-ftr-menu-list .sl-ftr-menu-item:active svg{stroke:var(--ftr-menu-active-color)!important}.sl-ftr-menu-list .sl-ftr-menu-item.alt a.sl-ftr-menu-item-link{color:var(--ftr-alt-color);font-size:12px;font-weight:300}.sl-ftr-menu-list .sl-ftr-menu-item.alt:hover a{color:var(--ftr-menu-alt-hover-color)}.sl-ftr-menu-list .sl-ftr-menu-item.alt:hover svg{stroke:var(--ftr-menu-alt-hover-color)!important}.sl-ftr-menu-list .sl-ftr-menu-item.alt:active a{color:var(--ftr-menu-alt-active-color)}.sl-ftr-menu-list .sl-ftr-menu-item.alt:active svg{stroke:var(--ftr-menu-alt-active-color)!important}.sl-ftr-menu-list .sl-ftr-menu-item.have-children{width:100%}.sl-ftr-menu-list .sl-ftr-menu-item svg{display:inline}.sl-ftr-menu-list .sl-ftr-menu-item-children{list-style:none}.sl-ftr-menu-list .sl-ftr-menu-item-children.closed{display:none}.sl-ftr-menu-list .sl-ftr-menu-item-children-item{margin:0 0 0 12px}@media only screen and (min-width: 1024px){.sl-ftr-menu-list .sl-ftr-menu-item svg{display:none}.sl-ftr-menu-list .sl-ftr-menu-item.have-children{width:auto}.sl-ftr-menu-list .sl-ftr-menu-item-children.closed{display:block}.sl-ftr-menu-list .sl-ftr-menu-item-children-item{margin:0 0 0 12px}}.sl-ftr-contact{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:20px 16px;margin-bottom:20px;width:100%;min-height:77px}.sl-ftr-contact img{width:var(--logo-width, 72px);height:50px;object-fit:contain}.sl-ftr-contact .logo{display:contents}.sl-ftr-contact .logo:after{content:\"\";width:1px;height:60px;background-color:var(--ftr-color)}.sl-ftr-contact .partner-logo{display:contents}.sl-ftr-contact .phone a{display:flex;justify-content:center;align-items:center;gap:12px;font-size:17px;font-weight:500;color:var(--ftr-color);text-decoration:none}@media only screen and (min-width: 361px){.sl-ftr-contact{width:280px}.sl-ftr-contact .phone a{font-size:19px}}@media only screen and (min-width: 1024px){.sl-ftr-contact{gap:20px 24px;width:328px}}nav.sl-ftr-medias ul{list-style:none;display:flex;gap:16px 0px;flex-wrap:wrap;width:100%}nav.sl-ftr-medias ul li{display:flex;justify-content:center;align-items:center;border-radius:100%;border:1px solid #ffffff;width:36px;height:36px;margin-right:12px}nav.sl-ftr-medias ul li a{display:flex;justify-content:center;align-items:center;border-radius:100%;width:36px;height:36px;text-decoration:none}@media only screen and (min-width: 361px){nav.sl-ftr-medias ul li{margin-right:15px}}@media only screen and (min-width: 1024px){nav.sl-ftr-medias ul{flex-wrap:nowrap}}.sl-ftr-disc{background-color:var(--ftr-disc-bg-color);display:grid!important;grid-template-areas:\". disc-content .\";grid-template-columns:minmax(5%,1fr) minmax(auto,1229.4px) minmax(5%,1fr);grid-template-rows:auto}.sl-ftr-disc .disc-content{grid-area:disc-content;height:auto;padding:12px 0;display:flex;align-items:flex-start;justify-content:flex-start;gap:8px;flex-direction:column}.sl-ftr-disc .disc-content-copy{font-size:12px;font-style:normal;font-weight:500;text-transform:uppercase;color:var(--ftr-disc-color)}.sl-ftr-disc .disc-content-links{list-style:none;display:flex;flex-direction:row;align-items:flex-start;flex-wrap:wrap;gap:0px 36px}.sl-ftr-disc .disc-content-links li a,.sl-ftr-disc .disc-content-links li button{font-size:12px;font-style:normal;font-weight:500;color:var(--ftr-disc-alt-color);text-decoration:none;cursor:pointer;background:transparent}@media only screen and (min-width: 1024px){.sl-ftr-disc .disc-content{height:40px;padding:0;align-items:center;flex-direction:row;gap:36px}.sl-ftr-disc .disc-content-links{gap:36px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: RdsiteLinkDirective, selector: "[rdsitelink]", inputs: ["anchorAdjustment", "anchorExtraAdjustment", "phonemodal"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
140
140
|
}
|
|
141
141
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: FooterComponent, decorators: [{
|
|
142
142
|
type: Component,
|
|
143
|
-
args: [{ selector: 'footer[sl-ftr]', imports: [CommonModule, RdsiteLinkDirective], encapsulation: ViewEncapsulation.None, template: "<div class=\"sl-ftr-content\">\n <div>\n <div class=\"sl-ftr-contact\">\n @if (logo()) {\n <div class=\"logo\">\n <img [src]=\"logo()?.url\" [alt]=\"logo()?.alt\" [title]=\"logo()?.title\" loading=\"lazy\" fetchpriority=\"low\" />\n </div>\n }\n @if (partnerLogo()) {\n <div class=\"partner-logo\">\n <img [src]=\"partnerLogo()?.url\" [alt]=\"partnerLogo()?.alt\" [title]=\"partnerLogo()?.title\" loading=\"lazy\" fetchpriority=\"low\" />\n </div>\n }\n @if (phone()) {\n <div class=\"phone\">\n <a rdsitelink href=\"tel:{{ phone() }}\">\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#phone'\"></use>\n </svg>\n {{ phone() }}\n </a>\n </div>\n }\n </div>\n\n <nav class=\"sl-ftr-medias\">\n <ul>\n @for (social of socialMenu(); track social.title) {\n <li>\n <a [href]=\"social.link\" rdsitelink [title]=\"social.title\" (click)=\"footerSocialMediaClicked($event)\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#' + social.icon\"></use>\n </svg>\n </a>\n </li>\n }\n </ul>\n </nav>\n </div>\n\n <div class=\"content-menu\">\n @if (footerMenu().length) {\n <div class=\"sl-ftr-menu\">\n <nav>\n <ul class=\"sl-ftr-menu-list\">\n @for (menu of footerMenu(); track menu.title) {\n <li class=\"sl-ftr-menu-list-item\">\n @if (menu.title) {\n <div class=\"sl-ftr-menu-item\" [ngClass]=\"{ 'have-children': menu.children?.length }\" (click)=\"toggleSubMenu($event, menu)\">\n <a\n class=\"sl-ftr-menu-item-link\"\n [href]=\"menu.url\"\n rdsitelink\n [title]=\"menu.title\"\n (click)=\"toggleSubMenu($event, menu); footerMenuItemClicked($event)\"\n >\n {{ menu.title }}\n </a>\n\n @if (menu.children?.length) {\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#' + (menu.active ? 'up' : 'down')\"></use>\n </svg>\n }\n </div>\n\n @if (menu.children?.length) {\n <ul class=\"sl-ftr-menu-item-children\" [ngClass]=\"{ closed: !menu.active }\">\n @for (submenu of menu.children; track submenu.title) {\n <li class=\"sl-ftr-menu-item-children-item\">\n <div class=\"sl-ftr-menu-item alt\">\n <a class=\"sl-ftr-menu-item-link\" [href]=\"submenu.url\" rdsitelink [title]=\"submenu.title\" (click)=\"footerMenuItemClicked($event)\">\n {{ submenu.title }}\n </a>\n </div>\n </li>\n }\n </ul>\n }\n }\n </li>\n }\n </ul>\n </nav>\n </div>\n }\n </div>\n</div>\n\n<div class=\"sl-ftr-disc\">\n <div class=\"disc-content\">\n <div class=\"disc-content-copy\">\u00A9{{ currentYear }} {{ disclaimer() }}</div>\n <ul class=\"disc-content-links\">\n <li>\n <a [href]=\"linkPrivacyFooter() || '#'\" target=\"_blank\" data-testid=\"_avisoPrivacidade\" (click)=\"footerPrivacyClicked($event)\"> Aviso de Privacidade </a>\n </li>\n <li>\n <
|
|
143
|
+
args: [{ selector: 'footer[sl-ftr]', imports: [CommonModule, RdsiteLinkDirective], encapsulation: ViewEncapsulation.None, template: "<div class=\"sl-ftr-content\">\n <div>\n <div class=\"sl-ftr-contact\">\n @if (logo()) {\n <div class=\"logo\">\n <img [src]=\"logo()?.url\" [alt]=\"logo()?.alt\" [title]=\"logo()?.title\" loading=\"lazy\" fetchpriority=\"low\" />\n </div>\n }\n @if (partnerLogo()) {\n <div class=\"partner-logo\">\n <img [src]=\"partnerLogo()?.url\" [alt]=\"partnerLogo()?.alt\" [title]=\"partnerLogo()?.title\" loading=\"lazy\" fetchpriority=\"low\" />\n </div>\n }\n @if (phone()) {\n <div class=\"phone\">\n <a rdsitelink href=\"tel:{{ phone() }}\">\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#phone'\"></use>\n </svg>\n {{ phone() }}\n </a>\n </div>\n }\n </div>\n\n <nav class=\"sl-ftr-medias\">\n <ul>\n @for (social of socialMenu(); track social.title) {\n <li>\n <a [href]=\"social.link\" rdsitelink [title]=\"social.title\" (click)=\"footerSocialMediaClicked($event)\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#' + social.icon\"></use>\n </svg>\n </a>\n </li>\n }\n </ul>\n </nav>\n </div>\n\n <div class=\"content-menu\">\n @if (footerMenu().length) {\n <div class=\"sl-ftr-menu\">\n <nav>\n <ul class=\"sl-ftr-menu-list\">\n @for (menu of footerMenu(); track menu.title) {\n <li class=\"sl-ftr-menu-list-item\">\n @if (menu.title) {\n <div class=\"sl-ftr-menu-item\" [ngClass]=\"{ 'have-children': menu.children?.length }\" (click)=\"toggleSubMenu($event, menu)\">\n <a\n class=\"sl-ftr-menu-item-link\"\n [href]=\"menu.url\"\n rdsitelink\n [title]=\"menu.title\"\n (click)=\"toggleSubMenu($event, menu); footerMenuItemClicked($event)\"\n >\n {{ menu.title }}\n </a>\n\n @if (menu.children?.length) {\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#' + (menu.active ? 'up' : 'down')\"></use>\n </svg>\n }\n </div>\n\n @if (menu.children?.length) {\n <ul class=\"sl-ftr-menu-item-children\" [ngClass]=\"{ closed: !menu.active }\">\n @for (submenu of menu.children; track submenu.title) {\n <li class=\"sl-ftr-menu-item-children-item\">\n <div class=\"sl-ftr-menu-item alt\">\n <a class=\"sl-ftr-menu-item-link\" [href]=\"submenu.url\" rdsitelink [title]=\"submenu.title\" (click)=\"footerMenuItemClicked($event)\">\n {{ submenu.title }}\n </a>\n </div>\n </li>\n }\n </ul>\n }\n }\n </li>\n }\n </ul>\n </nav>\n </div>\n }\n </div>\n</div>\n\n<div class=\"sl-ftr-disc\">\n <div class=\"disc-content\">\n <div class=\"disc-content-copy\">\u00A9{{ currentYear }} {{ disclaimer() }}</div>\n <ul class=\"disc-content-links\">\n <li>\n <a [href]=\"linkPrivacyFooter() || '#'\" target=\"_blank\" data-testid=\"_avisoPrivacidade\" (click)=\"footerPrivacyClicked($event)\"> Aviso de Privacidade </a>\n </li>\n <li>\n <button (click)=\"privacyTools.openCookieBanner(); footerCookieClicked($event)\" data-testid=\"_avisoCookies\">Aviso de Cookies</button>\n </li>\n </ul>\n </div>\n</div>\n", styles: ["footer[sl-ftr]{min-height:530px;background-color:var(--ftr-bg-color);display:grid!important;grid-template-areas:\". . .\" \". content .\" \". . .\" \"disc disc disc\";grid-template-columns:minmax(10%,1fr) minmax(auto,1229.4px) minmax(10%,1fr);grid-template-rows:48px 1fr 48px auto}footer[sl-ftr] *{font-family:Gotham,Arial,Helvetica,sans-serif!important}footer[sl-ftr] svg{stroke:#fff;stroke-width:2.25px;fill:none}footer[sl-ftr] .sl-ftr-content{grid-area:content;display:flex;flex-direction:column;align-items:flex-start;gap:32px}footer[sl-ftr] .sl-ftr-content .content-menu{width:100%}footer[sl-ftr] .sl-ftr-disc{grid-area:disc}@media only screen and (min-width: 1024px){footer[sl-ftr]{grid-template-columns:minmax(5%,1fr) minmax(auto,1229.4px) minmax(5%,1fr)}footer[sl-ftr] .sl-ftr-content{flex-direction:row;gap:44px}}.sl-ftr-menu{display:flex;flex-direction:column;padding-top:20px}.sl-ftr-menu nav{width:100%;height:auto;flex:auto;column-count:unset}@media only screen and (min-width: 1024px){.sl-ftr-menu{flex-direction:row}.sl-ftr-menu nav{flex:3 1 0;column-count:3}}a.sl-ftr-menu-item-link{text-align:left;padding:8px 0;text-decoration:none;font-style:normal}.sl-ftr-menu-list{list-style:none}.sl-ftr-menu-list .sl-ftr-menu-item{display:flex;align-items:center;justify-content:space-between;background-color:transparent;width:auto;cursor:pointer}.sl-ftr-menu-list .sl-ftr-menu-item a.sl-ftr-menu-item-link{color:var(--ftr-color);font-size:14px;font-weight:500;line-height:16px;min-height:35px;letter-spacing:.56px}.sl-ftr-menu-list .sl-ftr-menu-item:hover a{color:var(--ftr-menu-hover-color)}.sl-ftr-menu-list .sl-ftr-menu-item:hover svg{stroke:var(--ftr-menu-hover-color)!important}.sl-ftr-menu-list .sl-ftr-menu-item:active a{color:var(--ftr-menu-active-color)}.sl-ftr-menu-list .sl-ftr-menu-item:active svg{stroke:var(--ftr-menu-active-color)!important}.sl-ftr-menu-list .sl-ftr-menu-item.alt a.sl-ftr-menu-item-link{color:var(--ftr-alt-color);font-size:12px;font-weight:300}.sl-ftr-menu-list .sl-ftr-menu-item.alt:hover a{color:var(--ftr-menu-alt-hover-color)}.sl-ftr-menu-list .sl-ftr-menu-item.alt:hover svg{stroke:var(--ftr-menu-alt-hover-color)!important}.sl-ftr-menu-list .sl-ftr-menu-item.alt:active a{color:var(--ftr-menu-alt-active-color)}.sl-ftr-menu-list .sl-ftr-menu-item.alt:active svg{stroke:var(--ftr-menu-alt-active-color)!important}.sl-ftr-menu-list .sl-ftr-menu-item.have-children{width:100%}.sl-ftr-menu-list .sl-ftr-menu-item svg{display:inline}.sl-ftr-menu-list .sl-ftr-menu-item-children{list-style:none}.sl-ftr-menu-list .sl-ftr-menu-item-children.closed{display:none}.sl-ftr-menu-list .sl-ftr-menu-item-children-item{margin:0 0 0 12px}@media only screen and (min-width: 1024px){.sl-ftr-menu-list .sl-ftr-menu-item svg{display:none}.sl-ftr-menu-list .sl-ftr-menu-item.have-children{width:auto}.sl-ftr-menu-list .sl-ftr-menu-item-children.closed{display:block}.sl-ftr-menu-list .sl-ftr-menu-item-children-item{margin:0 0 0 12px}}.sl-ftr-contact{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:20px 16px;margin-bottom:20px;width:100%;min-height:77px}.sl-ftr-contact img{width:var(--logo-width, 72px);height:50px;object-fit:contain}.sl-ftr-contact .logo{display:contents}.sl-ftr-contact .logo:after{content:\"\";width:1px;height:60px;background-color:var(--ftr-color)}.sl-ftr-contact .partner-logo{display:contents}.sl-ftr-contact .phone a{display:flex;justify-content:center;align-items:center;gap:12px;font-size:17px;font-weight:500;color:var(--ftr-color);text-decoration:none}@media only screen and (min-width: 361px){.sl-ftr-contact{width:280px}.sl-ftr-contact .phone a{font-size:19px}}@media only screen and (min-width: 1024px){.sl-ftr-contact{gap:20px 24px;width:328px}}nav.sl-ftr-medias ul{list-style:none;display:flex;gap:16px 0px;flex-wrap:wrap;width:100%}nav.sl-ftr-medias ul li{display:flex;justify-content:center;align-items:center;border-radius:100%;border:1px solid #ffffff;width:36px;height:36px;margin-right:12px}nav.sl-ftr-medias ul li a{display:flex;justify-content:center;align-items:center;border-radius:100%;width:36px;height:36px;text-decoration:none}@media only screen and (min-width: 361px){nav.sl-ftr-medias ul li{margin-right:15px}}@media only screen and (min-width: 1024px){nav.sl-ftr-medias ul{flex-wrap:nowrap}}.sl-ftr-disc{background-color:var(--ftr-disc-bg-color);display:grid!important;grid-template-areas:\". disc-content .\";grid-template-columns:minmax(5%,1fr) minmax(auto,1229.4px) minmax(5%,1fr);grid-template-rows:auto}.sl-ftr-disc .disc-content{grid-area:disc-content;height:auto;padding:12px 0;display:flex;align-items:flex-start;justify-content:flex-start;gap:8px;flex-direction:column}.sl-ftr-disc .disc-content-copy{font-size:12px;font-style:normal;font-weight:500;text-transform:uppercase;color:var(--ftr-disc-color)}.sl-ftr-disc .disc-content-links{list-style:none;display:flex;flex-direction:row;align-items:flex-start;flex-wrap:wrap;gap:0px 36px}.sl-ftr-disc .disc-content-links li a,.sl-ftr-disc .disc-content-links li button{font-size:12px;font-style:normal;font-weight:500;color:var(--ftr-disc-alt-color);text-decoration:none;cursor:pointer;background:transparent}@media only screen and (min-width: 1024px){.sl-ftr-disc .disc-content{height:40px;padding:0;align-items:center;flex-direction:row;gap:36px}.sl-ftr-disc .disc-content-links{gap:36px}}\n"] }]
|
|
144
144
|
}], ctorParameters: () => [] });
|
|
145
145
|
|
|
146
146
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rededor-site-front-end-lib-components-footer.mjs","sources":["../../../projects/site-front-end-lib/components/footer/helpers/footerTheme.func.ts","../../../projects/site-front-end-lib/components/footer/footer.component.ts","../../../projects/site-front-end-lib/components/footer/footer.component.html","../../../projects/site-front-end-lib/components/footer/rededor-site-front-end-lib-components-footer.ts"],"sourcesContent":["import { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\r\nimport { FooterTheme } from '../models/FooterTheme.model';\r\n\r\nexport const getFooterTheme = (project: string = 'site', themeStyle: string = 'default', curaApiService: CuraApiService) => {\r\n const theme: FooterTheme = {\r\n ftr: {},\r\n 'ftr-disc': {},\r\n 'ftr-menu': {},\r\n 'ftr-social': {},\r\n };\r\n\r\n const [primaryLighter, primaryLight, primaryBase, primaryDarker] = [\r\n curaApiService.theme.colors.getColor('primary-lighter'),\r\n curaApiService.theme.colors.getColor('primary-light'),\r\n curaApiService.theme.colors.getColor('primary-base'),\r\n curaApiService.theme.colors.getColor('primary-darker'),\r\n ];\r\n const [accentLight, accentBase] = [curaApiService.theme.colors.getColor('accent-light'), curaApiService.theme.colors.getColor('accent-base')];\r\n const [neutralPurewhite, neutralWhite, neutralBlack] = [\r\n curaApiService.theme.colors.getColor('neutral-purewhite'),\r\n curaApiService.theme.colors.getColor('neutral-white'),\r\n curaApiService.theme.colors.getColor('neutral-black'),\r\n ];\r\n\r\n switch (project) {\r\n case 'site':\r\n if (themeStyle === 'default') {\r\n theme.ftr = {\r\n 'bg-color': primaryDarker,\r\n color: neutralWhite,\r\n 'alt-color': primaryLighter,\r\n };\r\n theme['ftr-disc'] = {\r\n 'bg-color': neutralPurewhite,\r\n color: neutralBlack,\r\n 'alt-color': primaryBase,\r\n };\r\n theme['ftr-menu'] = {\r\n 'hover-color': accentLight,\r\n 'active-color': accentBase,\r\n 'alt-hover-color': primaryLight,\r\n 'alt-active-color': primaryBase,\r\n };\r\n theme['ftr-social'] = {\r\n color: neutralWhite,\r\n };\r\n } else {\r\n theme.ftr = {\r\n 'bg-color': primaryDarker,\r\n color: neutralWhite,\r\n 'alt-color': primaryLighter,\r\n };\r\n theme['ftr-disc'] = {\r\n 'bg-color': neutralPurewhite,\r\n color: neutralBlack,\r\n 'alt-color': primaryBase,\r\n };\r\n theme['ftr-menu'] = {\r\n 'hover-color': accentLight,\r\n 'active-color': accentBase,\r\n 'alt-hover-color': primaryLight,\r\n 'alt-active-color': primaryBase,\r\n };\r\n theme['ftr-social'] = {\r\n color: neutralWhite,\r\n };\r\n }\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n\r\n return theme;\r\n};\r\n","import { Component, ElementRef, AfterViewInit, ViewEncapsulation, input, output, inject, effect, computed } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PrivacyToolsService, LIB_CONFIG, LibConfig, RdsiteLinkDirective, MenuItem, MenuSocialMedia } from '@rededor/site-front-end-lib/core';\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\nimport { FooterTheme } from './models/FooterTheme.model';\nimport { getFooterTheme } from './helpers/footerTheme.func';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'footer[sl-ftr]',\n imports: [CommonModule, RdsiteLinkDirective],\n encapsulation: ViewEncapsulation.None,\n templateUrl: './footer.component.html',\n styleUrl: './footer.component.scss',\n})\nexport class FooterComponent implements AfterViewInit {\n public privacyTools = inject(PrivacyToolsService);\n private curaApiService = inject(CuraApiService);\n private elementRef = inject(ElementRef);\n\n project = input<string>('site');\n theme = input<string>('default');\n disclaimer = input<string>('');\n linkPrivacyFooter = input<string>('');\n logo = input<any>(null);\n partnerLogo = input<any>(null);\n phone = input<string>('');\n socialMenu = input<MenuSocialMedia[]>([]);\n logoWidth = input<number>(72);\n footerMenu = input<MenuItem[]>([]);\n\n footerPrivacyClick = output<Event>();\n footerCookieClick = output<Event>();\n footerSocialMediaClick = output<Event>();\n footerMenuItemClick = output<Event>();\n\n currentYear: number = new Date().getFullYear();\n\n // Computed signals\n public assetsPath = computed(() => this.curaApiService.localAssetsPath());\n\n constructor() {\n effect(() => {\n this.updateFooterTheme();\n });\n\n effect(() => {\n this.updateLogoWidth();\n });\n }\n\n ngAfterViewInit() {\n this.updateFooterTheme();\n }\n\n private updateLogoWidth() {\n this.elementRef.nativeElement.style.setProperty('--logo-width', `${this.logoWidth()}px`);\n }\n\n private updateFooterTheme() {\n const footerTheme: FooterTheme = getFooterTheme(this.project(), this.theme(), this.curaApiService);\n Object.entries(footerTheme).forEach(([key, value]) => {\n Object.entries(value).forEach(([prop, val]) => {\n const cssVar = `--${key}-${prop}`;\n this.elementRef.nativeElement.style.setProperty(cssVar, val as string);\n });\n });\n }\n\n footerSocialMediaClicked(event: Event) {\n this.footerSocialMediaClick.emit(event);\n }\n\n toggleSubMenu(event: Event, menu: Partial<MenuItem>) {\n event.stopPropagation();\n menu.active = !menu.active;\n }\n\n footerMenuItemClicked(event: Event) {\n this.footerMenuItemClick.emit(event);\n }\n\n footerPrivacyClicked(event: Event) {\n this.footerPrivacyClick.emit(event);\n }\n\n footerCookieClicked(event: Event) {\n this.footerCookieClick.emit(event);\n }\n}\n","<div class=\"sl-ftr-content\">\n <div>\n <div class=\"sl-ftr-contact\">\n @if (logo()) {\n <div class=\"logo\">\n <img [src]=\"logo()?.url\" [alt]=\"logo()?.alt\" [title]=\"logo()?.title\" loading=\"lazy\" fetchpriority=\"low\" />\n </div>\n }\n @if (partnerLogo()) {\n <div class=\"partner-logo\">\n <img [src]=\"partnerLogo()?.url\" [alt]=\"partnerLogo()?.alt\" [title]=\"partnerLogo()?.title\" loading=\"lazy\" fetchpriority=\"low\" />\n </div>\n }\n @if (phone()) {\n <div class=\"phone\">\n <a rdsitelink href=\"tel:{{ phone() }}\">\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#phone'\"></use>\n </svg>\n {{ phone() }}\n </a>\n </div>\n }\n </div>\n\n <nav class=\"sl-ftr-medias\">\n <ul>\n @for (social of socialMenu(); track social.title) {\n <li>\n <a [href]=\"social.link\" rdsitelink [title]=\"social.title\" (click)=\"footerSocialMediaClicked($event)\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#' + social.icon\"></use>\n </svg>\n </a>\n </li>\n }\n </ul>\n </nav>\n </div>\n\n <div class=\"content-menu\">\n @if (footerMenu().length) {\n <div class=\"sl-ftr-menu\">\n <nav>\n <ul class=\"sl-ftr-menu-list\">\n @for (menu of footerMenu(); track menu.title) {\n <li class=\"sl-ftr-menu-list-item\">\n @if (menu.title) {\n <div class=\"sl-ftr-menu-item\" [ngClass]=\"{ 'have-children': menu.children?.length }\" (click)=\"toggleSubMenu($event, menu)\">\n <a\n class=\"sl-ftr-menu-item-link\"\n [href]=\"menu.url\"\n rdsitelink\n [title]=\"menu.title\"\n (click)=\"toggleSubMenu($event, menu); footerMenuItemClicked($event)\"\n >\n {{ menu.title }}\n </a>\n\n @if (menu.children?.length) {\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#' + (menu.active ? 'up' : 'down')\"></use>\n </svg>\n }\n </div>\n\n @if (menu.children?.length) {\n <ul class=\"sl-ftr-menu-item-children\" [ngClass]=\"{ closed: !menu.active }\">\n @for (submenu of menu.children; track submenu.title) {\n <li class=\"sl-ftr-menu-item-children-item\">\n <div class=\"sl-ftr-menu-item alt\">\n <a class=\"sl-ftr-menu-item-link\" [href]=\"submenu.url\" rdsitelink [title]=\"submenu.title\" (click)=\"footerMenuItemClicked($event)\">\n {{ submenu.title }}\n </a>\n </div>\n </li>\n }\n </ul>\n }\n }\n </li>\n }\n </ul>\n </nav>\n </div>\n }\n </div>\n</div>\n\n<div class=\"sl-ftr-disc\">\n <div class=\"disc-content\">\n <div class=\"disc-content-copy\">©{{ currentYear }} {{ disclaimer() }}</div>\n <ul class=\"disc-content-links\">\n <li>\n <a [href]=\"linkPrivacyFooter() || '#'\" target=\"_blank\" data-testid=\"_avisoPrivacidade\" (click)=\"footerPrivacyClicked($event)\"> Aviso de Privacidade </a>\n </li>\n <li>\n <a (click)=\"privacyTools.openCookieBanner(); footerCookieClicked($event)\" data-testid=\"_avisoCookies\"> Aviso de Cookies </a>\n </li>\n </ul>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rededor-site-front-end-lib-components-footer.mjs","sources":["../../../projects/site-front-end-lib/components/footer/helpers/footerTheme.func.ts","../../../projects/site-front-end-lib/components/footer/footer.component.ts","../../../projects/site-front-end-lib/components/footer/footer.component.html","../../../projects/site-front-end-lib/components/footer/rededor-site-front-end-lib-components-footer.ts"],"sourcesContent":["import { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\r\nimport { FooterTheme } from '../models/FooterTheme.model';\r\n\r\nexport const getFooterTheme = (project: string = 'site', themeStyle: string = 'default', curaApiService: CuraApiService) => {\r\n const theme: FooterTheme = {\r\n ftr: {},\r\n 'ftr-disc': {},\r\n 'ftr-menu': {},\r\n 'ftr-social': {},\r\n };\r\n\r\n const [primaryLighter, primaryLight, primaryBase, primaryDarker] = [\r\n curaApiService.theme.colors.getColor('primary-lighter'),\r\n curaApiService.theme.colors.getColor('primary-light'),\r\n curaApiService.theme.colors.getColor('primary-base'),\r\n curaApiService.theme.colors.getColor('primary-darker'),\r\n ];\r\n const [accentLight, accentBase] = [curaApiService.theme.colors.getColor('accent-light'), curaApiService.theme.colors.getColor('accent-base')];\r\n const [neutralPurewhite, neutralWhite, neutralBlack] = [\r\n curaApiService.theme.colors.getColor('neutral-purewhite'),\r\n curaApiService.theme.colors.getColor('neutral-white'),\r\n curaApiService.theme.colors.getColor('neutral-black'),\r\n ];\r\n\r\n switch (project) {\r\n case 'site':\r\n if (themeStyle === 'default') {\r\n theme.ftr = {\r\n 'bg-color': primaryDarker,\r\n color: neutralWhite,\r\n 'alt-color': primaryLighter,\r\n };\r\n theme['ftr-disc'] = {\r\n 'bg-color': neutralPurewhite,\r\n color: neutralBlack,\r\n 'alt-color': primaryBase,\r\n };\r\n theme['ftr-menu'] = {\r\n 'hover-color': accentLight,\r\n 'active-color': accentBase,\r\n 'alt-hover-color': primaryLight,\r\n 'alt-active-color': primaryBase,\r\n };\r\n theme['ftr-social'] = {\r\n color: neutralWhite,\r\n };\r\n } else {\r\n theme.ftr = {\r\n 'bg-color': primaryDarker,\r\n color: neutralWhite,\r\n 'alt-color': primaryLighter,\r\n };\r\n theme['ftr-disc'] = {\r\n 'bg-color': neutralPurewhite,\r\n color: neutralBlack,\r\n 'alt-color': primaryBase,\r\n };\r\n theme['ftr-menu'] = {\r\n 'hover-color': accentLight,\r\n 'active-color': accentBase,\r\n 'alt-hover-color': primaryLight,\r\n 'alt-active-color': primaryBase,\r\n };\r\n theme['ftr-social'] = {\r\n color: neutralWhite,\r\n };\r\n }\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n\r\n return theme;\r\n};\r\n","import { Component, ElementRef, AfterViewInit, ViewEncapsulation, input, output, inject, effect, computed } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PrivacyToolsService, LIB_CONFIG, LibConfig, RdsiteLinkDirective, MenuItem, MenuSocialMedia } from '@rededor/site-front-end-lib/core';\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\nimport { FooterTheme } from './models/FooterTheme.model';\nimport { getFooterTheme } from './helpers/footerTheme.func';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'footer[sl-ftr]',\n imports: [CommonModule, RdsiteLinkDirective],\n encapsulation: ViewEncapsulation.None,\n templateUrl: './footer.component.html',\n styleUrl: './footer.component.scss',\n})\nexport class FooterComponent implements AfterViewInit {\n public privacyTools = inject(PrivacyToolsService);\n private curaApiService = inject(CuraApiService);\n private elementRef = inject(ElementRef);\n\n project = input<string>('site');\n theme = input<string>('default');\n disclaimer = input<string>('');\n linkPrivacyFooter = input<string>('');\n logo = input<any>(null);\n partnerLogo = input<any>(null);\n phone = input<string>('');\n socialMenu = input<MenuSocialMedia[]>([]);\n logoWidth = input<number>(72);\n footerMenu = input<MenuItem[]>([]);\n\n footerPrivacyClick = output<Event>();\n footerCookieClick = output<Event>();\n footerSocialMediaClick = output<Event>();\n footerMenuItemClick = output<Event>();\n\n currentYear: number = new Date().getFullYear();\n\n // Computed signals\n public assetsPath = computed(() => this.curaApiService.localAssetsPath());\n\n constructor() {\n effect(() => {\n this.updateFooterTheme();\n });\n\n effect(() => {\n this.updateLogoWidth();\n });\n }\n\n ngAfterViewInit() {\n this.updateFooterTheme();\n }\n\n private updateLogoWidth() {\n this.elementRef.nativeElement.style.setProperty('--logo-width', `${this.logoWidth()}px`);\n }\n\n private updateFooterTheme() {\n const footerTheme: FooterTheme = getFooterTheme(this.project(), this.theme(), this.curaApiService);\n Object.entries(footerTheme).forEach(([key, value]) => {\n Object.entries(value).forEach(([prop, val]) => {\n const cssVar = `--${key}-${prop}`;\n this.elementRef.nativeElement.style.setProperty(cssVar, val as string);\n });\n });\n }\n\n footerSocialMediaClicked(event: Event) {\n this.footerSocialMediaClick.emit(event);\n }\n\n toggleSubMenu(event: Event, menu: Partial<MenuItem>) {\n event.stopPropagation();\n menu.active = !menu.active;\n }\n\n footerMenuItemClicked(event: Event) {\n this.footerMenuItemClick.emit(event);\n }\n\n footerPrivacyClicked(event: Event) {\n this.footerPrivacyClick.emit(event);\n }\n\n footerCookieClicked(event: Event) {\n this.footerCookieClick.emit(event);\n }\n}\n","<div class=\"sl-ftr-content\">\n <div>\n <div class=\"sl-ftr-contact\">\n @if (logo()) {\n <div class=\"logo\">\n <img [src]=\"logo()?.url\" [alt]=\"logo()?.alt\" [title]=\"logo()?.title\" loading=\"lazy\" fetchpriority=\"low\" />\n </div>\n }\n @if (partnerLogo()) {\n <div class=\"partner-logo\">\n <img [src]=\"partnerLogo()?.url\" [alt]=\"partnerLogo()?.alt\" [title]=\"partnerLogo()?.title\" loading=\"lazy\" fetchpriority=\"low\" />\n </div>\n }\n @if (phone()) {\n <div class=\"phone\">\n <a rdsitelink href=\"tel:{{ phone() }}\">\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#phone'\"></use>\n </svg>\n {{ phone() }}\n </a>\n </div>\n }\n </div>\n\n <nav class=\"sl-ftr-medias\">\n <ul>\n @for (social of socialMenu(); track social.title) {\n <li>\n <a [href]=\"social.link\" rdsitelink [title]=\"social.title\" (click)=\"footerSocialMediaClicked($event)\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#' + social.icon\"></use>\n </svg>\n </a>\n </li>\n }\n </ul>\n </nav>\n </div>\n\n <div class=\"content-menu\">\n @if (footerMenu().length) {\n <div class=\"sl-ftr-menu\">\n <nav>\n <ul class=\"sl-ftr-menu-list\">\n @for (menu of footerMenu(); track menu.title) {\n <li class=\"sl-ftr-menu-list-item\">\n @if (menu.title) {\n <div class=\"sl-ftr-menu-item\" [ngClass]=\"{ 'have-children': menu.children?.length }\" (click)=\"toggleSubMenu($event, menu)\">\n <a\n class=\"sl-ftr-menu-item-link\"\n [href]=\"menu.url\"\n rdsitelink\n [title]=\"menu.title\"\n (click)=\"toggleSubMenu($event, menu); footerMenuItemClicked($event)\"\n >\n {{ menu.title }}\n </a>\n\n @if (menu.children?.length) {\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" preserveAspectRatio=\"xMidYMid meet\">\n <use [attr.xlink:href]=\"assetsPath() + '/icons/iconset-default.svg#' + (menu.active ? 'up' : 'down')\"></use>\n </svg>\n }\n </div>\n\n @if (menu.children?.length) {\n <ul class=\"sl-ftr-menu-item-children\" [ngClass]=\"{ closed: !menu.active }\">\n @for (submenu of menu.children; track submenu.title) {\n <li class=\"sl-ftr-menu-item-children-item\">\n <div class=\"sl-ftr-menu-item alt\">\n <a class=\"sl-ftr-menu-item-link\" [href]=\"submenu.url\" rdsitelink [title]=\"submenu.title\" (click)=\"footerMenuItemClicked($event)\">\n {{ submenu.title }}\n </a>\n </div>\n </li>\n }\n </ul>\n }\n }\n </li>\n }\n </ul>\n </nav>\n </div>\n }\n </div>\n</div>\n\n<div class=\"sl-ftr-disc\">\n <div class=\"disc-content\">\n <div class=\"disc-content-copy\">©{{ currentYear }} {{ disclaimer() }}</div>\n <ul class=\"disc-content-links\">\n <li>\n <a [href]=\"linkPrivacyFooter() || '#'\" target=\"_blank\" data-testid=\"_avisoPrivacidade\" (click)=\"footerPrivacyClicked($event)\"> Aviso de Privacidade </a>\n </li>\n <li>\n <button (click)=\"privacyTools.openCookieBanner(); footerCookieClicked($event)\" data-testid=\"_avisoCookies\">Aviso de Cookies</button>\n </li>\n </ul>\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -42,21 +42,21 @@ class CuraBadgePillComponent {
|
|
|
42
42
|
this.colorBase = computed(() => {
|
|
43
43
|
return this.curaApi.theme.colors.getColor(`${this.color()}-dark`);
|
|
44
44
|
}, ...(ngDevMode ? [{ debugName: "colorBase" }] : []));
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
45
|
+
// colorBackgroundDisabled = computed(() => {
|
|
46
|
+
// return this.curaApi.theme.colors.getColor('neutral-pale');
|
|
47
|
+
// });
|
|
48
|
+
// colorOutlineDisabled = computed(() => {
|
|
49
|
+
// return this.curaApi.theme.colors.getColor('neutral-medium');
|
|
50
|
+
// });
|
|
51
|
+
// baseSpacing = computed(() => {
|
|
52
|
+
// return this.curaApi.theme.spacing.getSpacing();
|
|
53
|
+
// });
|
|
54
|
+
// fontFamily = computed(() => {
|
|
55
|
+
// return this.curaApi.theme.fonts.getFamily();
|
|
56
|
+
// });
|
|
57
|
+
// fontSize = computed(() => {
|
|
58
|
+
// return this.curaApi.theme.fonts.getSize();
|
|
59
|
+
// });
|
|
60
60
|
this.containerClasses = computed(() => {
|
|
61
61
|
const classes = [];
|
|
62
62
|
classes.push('badge-container');
|
|
@@ -72,20 +72,15 @@ class CuraBadgePillComponent {
|
|
|
72
72
|
}, ...(ngDevMode ? [{ debugName: "symbolColor" }] : []));
|
|
73
73
|
}
|
|
74
74
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: CuraBadgePillComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
75
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.2", type: CuraBadgePillComponent, isStandalone: true, selector: "cura-badge-pill", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, iconName: { classPropertyName: "iconName", publicName: "iconName", isSignal: true, isRequired: false, transformFunction: null }, iconset: { classPropertyName: "iconset", publicName: "iconset", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, iconOnly: { classPropertyName: "iconOnly", publicName: "iconOnly", isSignal: true, isRequired: false, transformFunction: null }, borderRadius: { classPropertyName: "borderRadius", publicName: "borderRadius", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.--border-radius": "borderRadius() || \"2px\"", "style.--
|
|
75
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.2", type: CuraBadgePillComponent, isStandalone: true, selector: "cura-badge-pill", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, iconName: { classPropertyName: "iconName", publicName: "iconName", isSignal: true, isRequired: false, transformFunction: null }, iconset: { classPropertyName: "iconset", publicName: "iconset", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, iconOnly: { classPropertyName: "iconOnly", publicName: "iconOnly", isSignal: true, isRequired: false, transformFunction: null }, borderRadius: { classPropertyName: "borderRadius", publicName: "borderRadius", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.--border-radius": "borderRadius() || \"2px\"", "style.--color-background": "colorBackground()", "style.--color-base": "colorBase()" } }, ngImport: i0, template: "<div [class]=\"containerClasses()\">\r\n @if (iconName()) {\r\n <cura-icon [name]=\"iconName()\" [iconset]=\"iconset()\" size=\"micro\" [color]=\"symbolColor()\"> </cura-icon>\r\n }\r\n <cura-label size=\"xsmall\" lineHeight=\"117%\" [color]=\"symbolColor()\">\r\n <ng-content></ng-content>\r\n </cura-label>\r\n</div>\r\n", styles: [":host{display:inline-block}:host .badge-container{display:flex;align-items:center;justify-content:center;gap:calc(var(--cura-spacing-base) * 1px);padding:calc(var(--cura-spacing-base) * 1px);border-radius:var(--border-radius);font-family:var(--cura-font-body);font-size:var(--cura-font-size);position:relative;box-sizing:border-box;width:fit-content;height:calc(var(--cura-spacing-base) * 5px);min-width:calc(var(--cura-spacing-base) * 5px);background-color:var(--color-background)}:host .badge-container:before{content:\"\";width:100%;height:100%;position:absolute;left:0;top:0;box-sizing:border-box;border:1px solid transparent;border-radius:var(--border-radius);pointer-events:none}:host .badge-container.icon-only cura-label{display:none!important}:host .badge-container.disabled{background-color:#e9e9e9}:host .badge-container.outline{background-color:transparent}:host .badge-container.outline:before{border:1px solid var(--color-base)}:host .badge-container.outline.disabled:before{border:1px solid rgb(146,146,146)}:host .badge-container.transparent{background-color:transparent}:host .badge-container.transparent:before{border:1px solid transparent}:host .badge-container.transparent.disabled{background-color:transparent}:host .badge-container cura-icon{display:flex}\n"], dependencies: [{ kind: "component", type: CuraIconComponent, selector: "cura-icon", inputs: ["name", "color", "size", "iconset", "disabled"] }, { kind: "component", type: CuraLabelComponent, selector: "cura-label", inputs: ["size", "weight", "spotColor", "color", "marginBlock", "lineHeight", "textOverflow"] }] }); }
|
|
76
76
|
}
|
|
77
77
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: CuraBadgePillComponent, decorators: [{
|
|
78
78
|
type: Component,
|
|
79
79
|
args: [{ selector: 'cura-badge-pill', imports: [CuraIconComponent, CuraLabelComponent], host: {
|
|
80
80
|
'[style.--border-radius]': 'borderRadius() || "2px"',
|
|
81
|
-
'[style.--base-spacing]': 'baseSpacing()',
|
|
82
|
-
'[style.--font-family]': 'fontFamily()',
|
|
83
|
-
'[style.--font-size]': 'fontSize()',
|
|
84
81
|
'[style.--color-background]': 'colorBackground()',
|
|
85
82
|
'[style.--color-base]': 'colorBase()',
|
|
86
|
-
|
|
87
|
-
'[style.--color-outline-disabled]': 'colorOutlineDisabled()',
|
|
88
|
-
}, template: "<div [class]=\"containerClasses()\">\r\n @if (iconName()) {\r\n <cura-icon [name]=\"iconName()\" [iconset]=\"iconset()\" size=\"micro\" [color]=\"symbolColor()\"> </cura-icon>\r\n }\r\n <cura-label size=\"xsmall\" lineHeight=\"117%\" [color]=\"symbolColor()\">\r\n <ng-content></ng-content>\r\n </cura-label>\r\n</div>\r\n", styles: [":host{display:inline-block}:host .badge-container{display:flex;align-items:center;justify-content:center;gap:calc(var(--cura-spacing-base) * 1px);padding:calc(var(--cura-spacing-base) * 1px);border-radius:var(--border-radius);font-family:var(--font-family);font-size:var(--font-size);position:relative;box-sizing:border-box;width:fit-content;height:calc(var(--cura-spacing-base) * 5px);min-width:calc(var(--cura-spacing-base) * 5px);background-color:var(--color-background)}:host .badge-container:before{content:\"\";width:100%;height:100%;position:absolute;left:0;top:0;box-sizing:border-box;border:1px solid transparent;border-radius:var(--border-radius);pointer-events:none}:host .badge-container.icon-only cura-label{display:none!important}:host .badge-container.disabled{background-color:var(--color-background-disabled)}:host .badge-container.outline{background-color:transparent}:host .badge-container.outline:before{border:1px solid var(--color-base)}:host .badge-container.outline.disabled:before{border:1px solid var(--color-outline-disabled)}:host .badge-container.transparent{background-color:transparent}:host .badge-container.transparent:before{border:1px solid transparent}:host .badge-container.transparent.disabled{background-color:transparent}:host .badge-container cura-icon{display:flex}\n"] }]
|
|
83
|
+
}, template: "<div [class]=\"containerClasses()\">\r\n @if (iconName()) {\r\n <cura-icon [name]=\"iconName()\" [iconset]=\"iconset()\" size=\"micro\" [color]=\"symbolColor()\"> </cura-icon>\r\n }\r\n <cura-label size=\"xsmall\" lineHeight=\"117%\" [color]=\"symbolColor()\">\r\n <ng-content></ng-content>\r\n </cura-label>\r\n</div>\r\n", styles: [":host{display:inline-block}:host .badge-container{display:flex;align-items:center;justify-content:center;gap:calc(var(--cura-spacing-base) * 1px);padding:calc(var(--cura-spacing-base) * 1px);border-radius:var(--border-radius);font-family:var(--cura-font-body);font-size:var(--cura-font-size);position:relative;box-sizing:border-box;width:fit-content;height:calc(var(--cura-spacing-base) * 5px);min-width:calc(var(--cura-spacing-base) * 5px);background-color:var(--color-background)}:host .badge-container:before{content:\"\";width:100%;height:100%;position:absolute;left:0;top:0;box-sizing:border-box;border:1px solid transparent;border-radius:var(--border-radius);pointer-events:none}:host .badge-container.icon-only cura-label{display:none!important}:host .badge-container.disabled{background-color:#e9e9e9}:host .badge-container.outline{background-color:transparent}:host .badge-container.outline:before{border:1px solid var(--color-base)}:host .badge-container.outline.disabled:before{border:1px solid rgb(146,146,146)}:host .badge-container.transparent{background-color:transparent}:host .badge-container.transparent:before{border:1px solid transparent}:host .badge-container.transparent.disabled{background-color:transparent}:host .badge-container cura-icon{display:flex}\n"] }]
|
|
89
84
|
}] });
|
|
90
85
|
|
|
91
86
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rededor-site-front-end-lib-cura-badges-cura-badge-pill.mjs","sources":["../../../projects/site-front-end-lib/cura/badges/cura-badge-pill/cura-badge-pill.component.ts","../../../projects/site-front-end-lib/cura/badges/cura-badge-pill/cura-badge-pill.component.html","../../../projects/site-front-end-lib/cura/badges/cura-badge-pill/rededor-site-front-end-lib-cura-badges-cura-badge-pill.ts"],"sourcesContent":["import { Component, inject, input, computed } from '@angular/core';\r\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\r\nimport { CuraIconComponent } from '@rededor/site-front-end-lib/cura/icons/cura-icon';\r\nimport { CuraLabelComponent } from '@rededor/site-front-end-lib/cura/forms/cura-label';\r\nimport { BadgeType, BadgeColor } from '@rededor/site-front-end-lib/cura/badges';\r\n\r\n@Component({\r\n selector: 'cura-badge-pill',\r\n imports: [CuraIconComponent, CuraLabelComponent],\r\n templateUrl: './cura-badge-pill.component.html',\r\n styleUrls: ['./cura-badge-pill.component.scss'],\r\n host: {\r\n '[style.--border-radius]': 'borderRadius() || \"2px\"',\r\n '[style.--
|
|
1
|
+
{"version":3,"file":"rededor-site-front-end-lib-cura-badges-cura-badge-pill.mjs","sources":["../../../projects/site-front-end-lib/cura/badges/cura-badge-pill/cura-badge-pill.component.ts","../../../projects/site-front-end-lib/cura/badges/cura-badge-pill/cura-badge-pill.component.html","../../../projects/site-front-end-lib/cura/badges/cura-badge-pill/rededor-site-front-end-lib-cura-badges-cura-badge-pill.ts"],"sourcesContent":["import { Component, inject, input, computed } from '@angular/core';\r\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\r\nimport { CuraIconComponent } from '@rededor/site-front-end-lib/cura/icons/cura-icon';\r\nimport { CuraLabelComponent } from '@rededor/site-front-end-lib/cura/forms/cura-label';\r\nimport { BadgeType, BadgeColor } from '@rededor/site-front-end-lib/cura/badges';\r\n\r\n@Component({\r\n selector: 'cura-badge-pill',\r\n imports: [CuraIconComponent, CuraLabelComponent],\r\n templateUrl: './cura-badge-pill.component.html',\r\n styleUrls: ['./cura-badge-pill.component.scss'],\r\n host: {\r\n '[style.--border-radius]': 'borderRadius() || \"2px\"',\r\n '[style.--color-background]': 'colorBackground()',\r\n '[style.--color-base]': 'colorBase()',\r\n },\r\n // '[style.--base-spacing]': 'baseSpacing()',\r\n // '[style.--font-family]': 'fontFamily()',\r\n // '[style.--font-size]': 'fontSize()',\r\n // '[style.--color-background-disabled]': 'colorBackgroundDisabled()',\r\n // '[style.--color-outline-disabled]': 'colorOutlineDisabled()',\r\n})\r\nexport class CuraBadgePillComponent {\r\n private curaApi = inject(CuraApiService);\r\n\r\n /**\r\n * Badge type: solid | outline | transparent\r\n */\r\n type = input<BadgeType>('solid');\r\n\r\n /**\r\n * Color base from color scheme. Default: primary\r\n */\r\n color = input<BadgeColor>('primary');\r\n\r\n /**\r\n * Name of the icon to be used from iconset\r\n */\r\n iconName = input<string>('');\r\n\r\n /**\r\n * Custom iconset if needed\r\n */\r\n iconset = input<string>('default');\r\n\r\n /**\r\n * Disabled state. Boolean\r\n */\r\n disabled = input<boolean>(false);\r\n\r\n /**\r\n * Set badge to icon only. Boolean\r\n */\r\n iconOnly = input<boolean>(false);\r\n\r\n /**\r\n * Set border-radius.\r\n */\r\n borderRadius = input<string>('2px');\r\n\r\n // Computed signals\r\n colorBackground = computed(() => {\r\n return this.curaApi.theme.colors.getColor(`${this.color()}-lighter`);\r\n });\r\n\r\n colorBase = computed(() => {\r\n return this.curaApi.theme.colors.getColor(`${this.color()}-dark`);\r\n });\r\n\r\n // colorBackgroundDisabled = computed(() => {\r\n // return this.curaApi.theme.colors.getColor('neutral-pale');\r\n // });\r\n\r\n // colorOutlineDisabled = computed(() => {\r\n // return this.curaApi.theme.colors.getColor('neutral-medium');\r\n // });\r\n\r\n // baseSpacing = computed(() => {\r\n // return this.curaApi.theme.spacing.getSpacing();\r\n // });\r\n\r\n // fontFamily = computed(() => {\r\n // return this.curaApi.theme.fonts.getFamily();\r\n // });\r\n\r\n // fontSize = computed(() => {\r\n // return this.curaApi.theme.fonts.getSize();\r\n // });\r\n\r\n containerClasses = computed(() => {\r\n const classes = [];\r\n\r\n classes.push('badge-container');\r\n classes.push(this.type());\r\n\r\n if (this.iconOnly()) classes.push('icon-only');\r\n if (this.disabled()) classes.push('disabled');\r\n\r\n return classes.join(' ');\r\n });\r\n\r\n symbolColor = computed(() => {\r\n return this.disabled() ? 'neutral-medium' : `${this.color()}-dark`;\r\n });\r\n}\r\n","<div [class]=\"containerClasses()\">\r\n @if (iconName()) {\r\n <cura-icon [name]=\"iconName()\" [iconset]=\"iconset()\" size=\"micro\" [color]=\"symbolColor()\"> </cura-icon>\r\n }\r\n <cura-label size=\"xsmall\" lineHeight=\"117%\" [color]=\"symbolColor()\">\r\n <ng-content></ng-content>\r\n </cura-label>\r\n</div>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import * as i1 from '@angular/common';
|
|
2
|
+
import { input, computed, Component } from '@angular/core';
|
|
4
3
|
import { CommonModule } from '@angular/common';
|
|
5
|
-
import { CuraApiService } from '@rededor/site-front-end-lib/cura/api';
|
|
6
4
|
|
|
7
5
|
class CuraCardComponent {
|
|
8
6
|
constructor() {
|
|
9
|
-
|
|
7
|
+
// private curaApi = inject(CuraApiService);
|
|
10
8
|
/**
|
|
11
9
|
* Determines whether the card should have padding.
|
|
12
10
|
* @default true
|
|
@@ -57,30 +55,13 @@ class CuraCardComponent {
|
|
|
57
55
|
this.isLink = computed(() => {
|
|
58
56
|
return !!this.href();
|
|
59
57
|
}, ...(ngDevMode ? [{ debugName: "isLink" }] : []));
|
|
60
|
-
// Computed signal
|
|
61
|
-
this.cardStyles = computed(() => {
|
|
62
|
-
const styles = {};
|
|
63
|
-
styles['--base-spacing'] = this.curaApi.theme.spacing.getSpacing();
|
|
64
|
-
styles['--neutral-purewhite'] = this.curaApi.theme.colors.getColor('neutral-purewhite');
|
|
65
|
-
styles['--neutral-white'] = this.curaApi.theme.colors.getColor('neutral-white');
|
|
66
|
-
styles['--neutral-base'] = this.curaApi.theme.colors.getColor('neutral-base');
|
|
67
|
-
styles['--neutral-dark'] = this.curaApi.theme.colors.getColor('neutral-dark');
|
|
68
|
-
styles['--neutral-black'] = this.curaApi.theme.colors.getColor('neutral-black');
|
|
69
|
-
styles['--neutral-black-shadow'] = this.curaApi.theme.colors.getColor('neutral-black', 0.16);
|
|
70
|
-
styles['--primary-lighter'] = this.curaApi.theme.colors.getColor('primary-lighter');
|
|
71
|
-
styles['--primary-base'] = this.curaApi.theme.colors.getColor('primary-base');
|
|
72
|
-
styles['--font-size'] = this.curaApi.theme.fonts.getSize();
|
|
73
|
-
styles['--font-family'] = this.curaApi.theme.fonts.getFamily();
|
|
74
|
-
styles['--font-weight-medium'] = this.curaApi.theme.fonts.getWeights().medium;
|
|
75
|
-
return styles;
|
|
76
|
-
}, ...(ngDevMode ? [{ debugName: "cardStyles" }] : []));
|
|
77
58
|
}
|
|
78
59
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: CuraCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
79
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.2", type: CuraCardComponent, isStandalone: true, selector: "cura-card", inputs: { hasPadding: { classPropertyName: "hasPadding", publicName: "hasPadding", isSignal: true, isRequired: false, transformFunction: null }, hasShadow: { classPropertyName: "hasShadow", publicName: "hasShadow", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, colorMode: { classPropertyName: "colorMode", publicName: "colorMode", isSignal: true, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: true, isRequired: false, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (isLink()) {\r\n <a [class]=\"containerClasses()\" [ngStyle]=\"cardStyles()\" [target]=\"target()\" [href]=\"href()\">\r\n <ng-content></ng-content>\r\n </a>\r\n} @else {\r\n <div [class]=\"containerClasses()\" [ngStyle]=\"cardStyles()\">\r\n <ng-content></ng-content>\r\n </div>\r\n}\r\n", styles: [":host{display:block;box-sizing:border-box;font-size:var(--font-size);font-family:var(--font-
|
|
60
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.2", type: CuraCardComponent, isStandalone: true, selector: "cura-card", inputs: { hasPadding: { classPropertyName: "hasPadding", publicName: "hasPadding", isSignal: true, isRequired: false, transformFunction: null }, hasShadow: { classPropertyName: "hasShadow", publicName: "hasShadow", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, colorMode: { classPropertyName: "colorMode", publicName: "colorMode", isSignal: true, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: true, isRequired: false, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (isLink()) {\r\n <!-- <a [class]=\"containerClasses()\" [ngStyle]=\"cardStyles()\" [target]=\"target()\" [href]=\"href()\"> -->\r\n <a [class]=\"containerClasses()\" [target]=\"target()\" [href]=\"href()\">\r\n <ng-content></ng-content>\r\n </a>\r\n} @else {\r\n <!-- <div [class]=\"containerClasses()\" [ngStyle]=\"cardStyles()\"> -->\r\n <div [class]=\"containerClasses()\">\r\n <ng-content></ng-content>\r\n </div>\r\n}\r\n", styles: [":host{display:block;box-sizing:border-box;font-size:var(--cura-font-size);font-family:var(--cura-font-body)}a::ng-deep>*,div::ng-deep>*{display:flex;align-items:center;justify-content:center;font-size:var(--cura-font-size);font-family:var(--cura-font-body)}a{display:block;text-decoration:none!important;color:inherit}.solid{background-color:#fff;border:2px solid rgb(183,183,183);border-radius:12px;overflow:hidden;padding:0;box-shadow:none}.solid ::ng-deep>*{border-radius:0}.solid.hasPadding{padding:20px}.solid.hasPadding ::ng-deep>*{border-radius:4px!important}.solid.hasShadow{border:2px solid rgb(183,183,183);box-shadow:0 1px 4px 0 var(rgba(38, 38, 38, .16), rgba(38, 38, 38, .16))}.solid.cardLink{background-color:#fff;border:2px solid var(--cura-color-primary-500);border-radius:12px;padding:0;box-shadow:none;cursor:pointer}.solid.cardLink ::ng-deep>*{border-radius:0}.solid.cardLink:hover{border:2px solid var(--cura-color-primary-100)!important}.solid.cardLink.hasPadding{padding:20px}.solid.cardLink.hasPadding ::ng-deep>*{border-radius:4px!important}.solid.cardLink.hasPadding:hover{border:2px solid var(--cura-color-primary-100)!important}.solid.cardLink.hasShadow{border:2px solid var(--cura-color-primary-500);box-shadow:0 4px 8px 0 var(rgba(38, 38, 38, .16), rgba(38, 38, 38, .16))}.solid.cardLink:not(.hasPadding).hasShadow ::ng-deep>*{border-radius:12px!important}.solid.cardLink.dark{background-color:#fff;border:2px solid rgb(255,255,255)}.solid.cardLink.dark:hover{border:2px solid var(--cura-color-primary-100)}.transparent{background-color:transparent;border:0;border-radius:12px;padding:0;overflow:hidden}.transparent ::ng-deep>*{border-radius:12px}.transparent.hasPadding{padding:20px}.transparent.hasPadding ::ng-deep>*{border-radius:4px}.transparent.cardLink{background-color:transparent;border:2px solid var(--cura-color-primary-500);overflow:hidden;border-radius:12px;padding:0;box-shadow:none}.transparent.cardLink ::ng-deep>*{border-radius:0!important}.transparent.cardLink:hover{border:2px solid var(--cura-color-primary-100)!important}.transparent.cardLink.light{background-color:#fff;border:2px solid var(--cura-color-primary-500)}.transparent.cardLink.light ::ng-deep>*{border-radius:12px!important}.transparent.cardLink.light:hover{border-color:var(--cura-color-primary-100)!important}.transparent.cardLink.dark{background-color:transparent;border:2px solid rgb(255,255,255)}.transparent.cardLink.dark:hover{border:0}.transparent.cardLink.hasPadding{padding:20px}.transparent.cardLink.hasPadding ::ng-deep>*{border-radius:4px!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
|
|
80
61
|
}
|
|
81
62
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: CuraCardComponent, decorators: [{
|
|
82
63
|
type: Component,
|
|
83
|
-
args: [{ selector: 'cura-card', imports: [CommonModule], template: "@if (isLink()) {\r\n <a [class]=\"containerClasses()\" [ngStyle]=\"cardStyles()\" [target]=\"target()\" [href]=\"href()\">\r\n <ng-content></ng-content>\r\n </a>\r\n} @else {\r\n <div [class]=\"containerClasses()\" [ngStyle]=\"cardStyles()\">\r\n <ng-content></ng-content>\r\n </div>\r\n}\r\n", styles: [":host{display:block;box-sizing:border-box;font-size:var(--font-size);font-family:var(--font-
|
|
64
|
+
args: [{ selector: 'cura-card', imports: [CommonModule], template: "@if (isLink()) {\r\n <!-- <a [class]=\"containerClasses()\" [ngStyle]=\"cardStyles()\" [target]=\"target()\" [href]=\"href()\"> -->\r\n <a [class]=\"containerClasses()\" [target]=\"target()\" [href]=\"href()\">\r\n <ng-content></ng-content>\r\n </a>\r\n} @else {\r\n <!-- <div [class]=\"containerClasses()\" [ngStyle]=\"cardStyles()\"> -->\r\n <div [class]=\"containerClasses()\">\r\n <ng-content></ng-content>\r\n </div>\r\n}\r\n", styles: [":host{display:block;box-sizing:border-box;font-size:var(--cura-font-size);font-family:var(--cura-font-body)}a::ng-deep>*,div::ng-deep>*{display:flex;align-items:center;justify-content:center;font-size:var(--cura-font-size);font-family:var(--cura-font-body)}a{display:block;text-decoration:none!important;color:inherit}.solid{background-color:#fff;border:2px solid rgb(183,183,183);border-radius:12px;overflow:hidden;padding:0;box-shadow:none}.solid ::ng-deep>*{border-radius:0}.solid.hasPadding{padding:20px}.solid.hasPadding ::ng-deep>*{border-radius:4px!important}.solid.hasShadow{border:2px solid rgb(183,183,183);box-shadow:0 1px 4px 0 var(rgba(38, 38, 38, .16), rgba(38, 38, 38, .16))}.solid.cardLink{background-color:#fff;border:2px solid var(--cura-color-primary-500);border-radius:12px;padding:0;box-shadow:none;cursor:pointer}.solid.cardLink ::ng-deep>*{border-radius:0}.solid.cardLink:hover{border:2px solid var(--cura-color-primary-100)!important}.solid.cardLink.hasPadding{padding:20px}.solid.cardLink.hasPadding ::ng-deep>*{border-radius:4px!important}.solid.cardLink.hasPadding:hover{border:2px solid var(--cura-color-primary-100)!important}.solid.cardLink.hasShadow{border:2px solid var(--cura-color-primary-500);box-shadow:0 4px 8px 0 var(rgba(38, 38, 38, .16), rgba(38, 38, 38, .16))}.solid.cardLink:not(.hasPadding).hasShadow ::ng-deep>*{border-radius:12px!important}.solid.cardLink.dark{background-color:#fff;border:2px solid rgb(255,255,255)}.solid.cardLink.dark:hover{border:2px solid var(--cura-color-primary-100)}.transparent{background-color:transparent;border:0;border-radius:12px;padding:0;overflow:hidden}.transparent ::ng-deep>*{border-radius:12px}.transparent.hasPadding{padding:20px}.transparent.hasPadding ::ng-deep>*{border-radius:4px}.transparent.cardLink{background-color:transparent;border:2px solid var(--cura-color-primary-500);overflow:hidden;border-radius:12px;padding:0;box-shadow:none}.transparent.cardLink ::ng-deep>*{border-radius:0!important}.transparent.cardLink:hover{border:2px solid var(--cura-color-primary-100)!important}.transparent.cardLink.light{background-color:#fff;border:2px solid var(--cura-color-primary-500)}.transparent.cardLink.light ::ng-deep>*{border-radius:12px!important}.transparent.cardLink.light:hover{border-color:var(--cura-color-primary-100)!important}.transparent.cardLink.dark{background-color:transparent;border:2px solid rgb(255,255,255)}.transparent.cardLink.dark:hover{border:0}.transparent.cardLink.hasPadding{padding:20px}.transparent.cardLink.hasPadding ::ng-deep>*{border-radius:4px!important}\n"] }]
|
|
84
65
|
}] });
|
|
85
66
|
|
|
86
67
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rededor-site-front-end-lib-cura-cards-cura-card.mjs","sources":["../../../projects/site-front-end-lib/cura/cards/cura-card/cura-card.component.ts","../../../projects/site-front-end-lib/cura/cards/cura-card/cura-card.component.html","../../../projects/site-front-end-lib/cura/cards/cura-card/rededor-site-front-end-lib-cura-cards-cura-card.ts"],"sourcesContent":["import { Component,
|
|
1
|
+
{"version":3,"file":"rededor-site-front-end-lib-cura-cards-cura-card.mjs","sources":["../../../projects/site-front-end-lib/cura/cards/cura-card/cura-card.component.ts","../../../projects/site-front-end-lib/cura/cards/cura-card/cura-card.component.html","../../../projects/site-front-end-lib/cura/cards/cura-card/rededor-site-front-end-lib-cura-cards-cura-card.ts"],"sourcesContent":["import { Component, input, computed } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n// import { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\nimport { CardType, CardColorMode, CardTarget } from './cura-cards.definitions';\n\n@Component({\n selector: 'cura-card',\n imports: [CommonModule],\n templateUrl: './cura-card.component.html',\n styleUrls: ['./cura-card.component.scss'],\n})\nexport class CuraCardComponent {\n // private curaApi = inject(CuraApiService);\n\n /**\n * Determines whether the card should have padding.\n * @default true\n */\n hasPadding = input<boolean>(true);\n\n /**\n * Determines whether the card should have a shadow effect.\n * @default false\n */\n hasShadow = input<boolean>(false);\n\n /**\n * Sets the type of the card background.\n * - 'solid': A solid background.\n * - 'transparent': A transparent background.\n * @default 'solid'\n */\n type = input<CardType>('solid');\n\n /**\n * Sets the color mode of the card.\n * - 'light': Light mode for the card.\n * - 'dark': Dark mode for the card.\n * @default 'light'\n */\n colorMode = input<CardColorMode>('light');\n\n /**\n * The URL that the card should link to (if set).\n * If not set, the card acts as a normal card.\n */\n href = input<string>('');\n\n /**\n * The target attribute for the link.\n * Applicable only if `href` is set.\n * @default '_self'\n */\n target = input<CardTarget>('_self');\n\n containerClasses = computed(() => {\n const classes = [];\n\n classes.push(this.type());\n classes.push(this.colorMode());\n\n if (this.href()) classes.push('cardLink');\n if (this.hasPadding()) classes.push('hasPadding');\n if (this.hasShadow()) classes.push('hasShadow');\n\n return classes.join(' ');\n });\n\n isLink = computed(() => {\n return !!this.href();\n });\n\n // // Computed signal\n // cardStyles = computed(() => {\n // const styles: { [key: string]: string } = {};\n\n // styles['--base-spacing'] = this.curaApi.theme.spacing.getSpacing();\n // styles['--neutral-purewhite'] = this.curaApi.theme.colors.getColor('neutral-purewhite');\n // styles['--neutral-base'] = this.curaApi.theme.colors.getColor('neutral-base');\n // styles['--neutral-black-shadow'] = this.curaApi.theme.colors.getColor('neutral-black', 0.16);\n // styles['--primary-lighter'] = this.curaApi.theme.colors.getColor('primary-lighter');\n // styles['--primary-base'] = this.curaApi.theme.colors.getColor('primary-base');\n // styles['--font-size'] = this.curaApi.theme.fonts.getSize();\n // styles['--font-family'] = this.curaApi.theme.fonts.getFamily();\n // styles['--font-weight-medium'] = this.curaApi.theme.fonts.getWeights().medium;\n\n // return styles;\n // });\n}\n","@if (isLink()) {\r\n <!-- <a [class]=\"containerClasses()\" [ngStyle]=\"cardStyles()\" [target]=\"target()\" [href]=\"href()\"> -->\r\n <a [class]=\"containerClasses()\" [target]=\"target()\" [href]=\"href()\">\r\n <ng-content></ng-content>\r\n </a>\r\n} @else {\r\n <!-- <div [class]=\"containerClasses()\" [ngStyle]=\"cardStyles()\"> -->\r\n <div [class]=\"containerClasses()\">\r\n <ng-content></ng-content>\r\n </div>\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,7 @@ class CuraLabelComponent {
|
|
|
19
19
|
* Apply design system color to interactive elements like <a> and <abbr> inside the text.
|
|
20
20
|
* Values: Color from design system scheme. Default to 'accent-dark'.
|
|
21
21
|
*/
|
|
22
|
-
this.spotColor = input('accent-dark', ...(ngDevMode ? [{ debugName: "spotColor" }] : []));
|
|
22
|
+
this.spotColor = input('accent-dark', ...(ngDevMode ? [{ debugName: "spotColor" }] : [])); // Desativado em nosso projeto, mas funcional no projeto cura.
|
|
23
23
|
/**
|
|
24
24
|
* Text color.
|
|
25
25
|
* Values: Color from design system scheme. Default to the font color from the theme.
|
|
@@ -41,12 +41,12 @@ class CuraLabelComponent {
|
|
|
41
41
|
*/
|
|
42
42
|
this.textOverflow = input('none', ...(ngDevMode ? [{ debugName: "textOverflow" }] : []));
|
|
43
43
|
// Computed signals
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
44
|
+
// weights = computed(() => this.curaApi.theme.fonts.getWeights());
|
|
45
|
+
// fontSizeBase = computed(() => this.curaApi.theme.fonts.getSize());
|
|
46
|
+
// fontFamily = computed(() => this.curaApi.theme.fonts.getFamily('body'));
|
|
47
|
+
// linkColor = computed(() => {
|
|
48
|
+
// return this.curaApi.theme.colors.getColor(this.spotColor());
|
|
49
|
+
// });
|
|
50
50
|
this.bodyColor = computed(() => {
|
|
51
51
|
if (this.color()) {
|
|
52
52
|
return this.curaApi.theme.colors.getColor(this.color());
|
|
@@ -64,20 +64,14 @@ class CuraLabelComponent {
|
|
|
64
64
|
}, ...(ngDevMode ? [{ debugName: "containerClasses" }] : []));
|
|
65
65
|
}
|
|
66
66
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: CuraLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
67
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.2", type: CuraLabelComponent, isStandalone: true, selector: "cura-label", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, weight: { classPropertyName: "weight", publicName: "weight", isSignal: true, isRequired: false, transformFunction: null }, spotColor: { classPropertyName: "spotColor", publicName: "spotColor", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, marginBlock: { classPropertyName: "marginBlock", publicName: "marginBlock", isSignal: true, isRequired: false, transformFunction: null }, lineHeight: { classPropertyName: "lineHeight", publicName: "lineHeight", isSignal: true, isRequired: false, transformFunction: null }, textOverflow: { classPropertyName: "textOverflow", publicName: "textOverflow", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.--
|
|
67
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.2", type: CuraLabelComponent, isStandalone: true, selector: "cura-label", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, weight: { classPropertyName: "weight", publicName: "weight", isSignal: true, isRequired: false, transformFunction: null }, spotColor: { classPropertyName: "spotColor", publicName: "spotColor", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, marginBlock: { classPropertyName: "marginBlock", publicName: "marginBlock", isSignal: true, isRequired: false, transformFunction: null }, lineHeight: { classPropertyName: "lineHeight", publicName: "lineHeight", isSignal: true, isRequired: false, transformFunction: null }, textOverflow: { classPropertyName: "textOverflow", publicName: "textOverflow", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.--line-height": "lineHeight()", "style.--color-body": "bodyColor()" } }, ngImport: i0, template: "<p [class]=\"containerClasses()\">\r\n <ng-content></ng-content>\r\n</p>\r\n", styles: [":host{display:block;font-size:var(--cura-font-size)}:host p{font-family:var(--cura-font-body);font-size:1.143em;font-weight:500;color:var(--color-body);line-height:var(--line-height);margin-block:0px;letter-spacing:.32px}:host p.bold-weight{font-weight:700}:host p.large{font-size:1.357em;line-height:calc(var(--line-height) - 4%);letter-spacing:0px}:host p.small{font-size:1em;line-height:calc(var(--line-height) - 4%);letter-spacing:.56px}:host p.xsmall{font-size:.857em;line-height:calc(var(--line-height) - 17%);letter-spacing:.72px}:host p.textoverflow-single{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host p ::ng-deep b,:host p ::ng-deep strong,:host p ::ng-deep u{font-weight:700}:host p ::ng-deep a{font-weight:700;color:rgba(var(--cura-color-accent-700));text-underline-offset:10%}:host p ::ng-deep u{text-underline-offset:10%}:host p ::ng-deep abbr{color:rgba(var(--cura-color-accent-700));text-decoration:underline dashed 1px rgba(var(--cura-color-accent-700));text-underline-offset:10%;cursor:default}\n"] }); }
|
|
68
68
|
}
|
|
69
69
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: CuraLabelComponent, decorators: [{
|
|
70
70
|
type: Component,
|
|
71
71
|
args: [{ selector: 'cura-label', host: {
|
|
72
|
-
'[style.--margin-block]': 'marginBlock()',
|
|
73
|
-
'[style.--font-size-base]': 'fontSizeBase()',
|
|
74
72
|
'[style.--line-height]': 'lineHeight()',
|
|
75
73
|
'[style.--color-body]': 'bodyColor()',
|
|
76
|
-
|
|
77
|
-
'[style.--font-weight-medium]': 'weights().medium',
|
|
78
|
-
'[style.--font-weight-bold]': 'weights().bold',
|
|
79
|
-
'[style.--color-link]': 'linkColor()',
|
|
80
|
-
}, template: "<p [class]=\"containerClasses()\">\r\n <ng-content></ng-content>\r\n</p>\r\n", styles: [":host{display:block;font-size:var(--font-size-base)}:host p{font-family:var(--font-family);font-size:1.143em;font-weight:var(--font-weight-medium);color:var(--color-body);line-height:var(--line-height);margin-block:var(--margin-block);letter-spacing:.32px}:host p.bold-weight{font-weight:var(--font-weight-bold)}:host p.large{font-size:1.357em;line-height:calc(var(--line-height) - 4%);letter-spacing:0px}:host p.small{font-size:1em;line-height:calc(var(--line-height) - 4%);letter-spacing:.56px}:host p.xsmall{font-size:.857em;line-height:calc(var(--line-height) - 17%);letter-spacing:.72px}:host p.textoverflow-single{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host p ::ng-deep b,:host p ::ng-deep strong,:host p ::ng-deep u{font-weight:var(--font-weight-bold)}:host p ::ng-deep a{font-weight:var(--font-weight-bold);color:var(--color-link);text-underline-offset:10%}:host p ::ng-deep u{text-underline-offset:10%}:host p ::ng-deep abbr{color:var(--color-link);text-decoration:underline dashed 1px var(--color-link);text-underline-offset:10%;cursor:default}\n"] }]
|
|
74
|
+
}, template: "<p [class]=\"containerClasses()\">\r\n <ng-content></ng-content>\r\n</p>\r\n", styles: [":host{display:block;font-size:var(--cura-font-size)}:host p{font-family:var(--cura-font-body);font-size:1.143em;font-weight:500;color:var(--color-body);line-height:var(--line-height);margin-block:0px;letter-spacing:.32px}:host p.bold-weight{font-weight:700}:host p.large{font-size:1.357em;line-height:calc(var(--line-height) - 4%);letter-spacing:0px}:host p.small{font-size:1em;line-height:calc(var(--line-height) - 4%);letter-spacing:.56px}:host p.xsmall{font-size:.857em;line-height:calc(var(--line-height) - 17%);letter-spacing:.72px}:host p.textoverflow-single{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host p ::ng-deep b,:host p ::ng-deep strong,:host p ::ng-deep u{font-weight:700}:host p ::ng-deep a{font-weight:700;color:rgba(var(--cura-color-accent-700));text-underline-offset:10%}:host p ::ng-deep u{text-underline-offset:10%}:host p ::ng-deep abbr{color:rgba(var(--cura-color-accent-700));text-decoration:underline dashed 1px rgba(var(--cura-color-accent-700));text-underline-offset:10%;cursor:default}\n"] }]
|
|
81
75
|
}] });
|
|
82
76
|
|
|
83
77
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rededor-site-front-end-lib-cura-forms-cura-label.mjs","sources":["../../../projects/site-front-end-lib/cura/forms/cura-label/cura-label.component.ts","../../../projects/site-front-end-lib/cura/forms/cura-label/cura-label.component.html","../../../projects/site-front-end-lib/cura/forms/cura-label/rededor-site-front-end-lib-cura-forms-cura-label.ts"],"sourcesContent":["import { Component, inject, input, computed } from '@angular/core';\r\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\r\nimport { LabelSize, LabelWeight, TextOverflow } from '@rededor/site-front-end-lib/cura/forms';\r\n\r\n@Component({\r\n selector: 'cura-label',\r\n templateUrl: './cura-label.component.html',\r\n styleUrls: ['./cura-label.component.scss'],\r\n host: {\r\n '[style.--
|
|
1
|
+
{"version":3,"file":"rededor-site-front-end-lib-cura-forms-cura-label.mjs","sources":["../../../projects/site-front-end-lib/cura/forms/cura-label/cura-label.component.ts","../../../projects/site-front-end-lib/cura/forms/cura-label/cura-label.component.html","../../../projects/site-front-end-lib/cura/forms/cura-label/rededor-site-front-end-lib-cura-forms-cura-label.ts"],"sourcesContent":["import { Component, inject, input, computed } from '@angular/core';\r\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\r\nimport { LabelSize, LabelWeight, TextOverflow } from '@rededor/site-front-end-lib/cura/forms';\r\n\r\n@Component({\r\n selector: 'cura-label',\r\n templateUrl: './cura-label.component.html',\r\n styleUrls: ['./cura-label.component.scss'],\r\n host: {\r\n '[style.--line-height]': 'lineHeight()',\r\n '[style.--color-body]': 'bodyColor()',\r\n },\r\n // '[style.--margin-block]': 'marginBlock()',\r\n // '[style.--font-weight-medium]': 'weights().medium',\r\n // '[style.--font-weight-bold]': 'weights().bold',\r\n // '[style.--font-size-base]': 'fontSizeBase()',\r\n // '[style.--font-family]': 'fontFamily()',\r\n // '[style.--color-link]': 'linkColor()',\r\n})\r\nexport class CuraLabelComponent {\r\n private curaApi = inject(CuraApiService);\r\n\r\n /**\r\n * Set size of body text.\r\n * Values: medium (default) | large | small | xsmall.\r\n */\r\n size = input<LabelSize>('medium');\r\n\r\n /**\r\n * Label font weight. It is possible to use regular HTML tags like <b> or <strong> as well.\r\n * Values: regular (default) | bold.\r\n */\r\n weight = input<LabelWeight>('regular');\r\n\r\n /**\r\n * Apply design system color to interactive elements like <a> and <abbr> inside the text.\r\n * Values: Color from design system scheme. Default to 'accent-dark'.\r\n */\r\n spotColor = input<string>('accent-dark'); // Desativado em nosso projeto, mas funcional no projeto cura.\r\n\r\n /**\r\n * Text color.\r\n * Values: Color from design system scheme. Default to the font color from the theme.\r\n */\r\n color = input<string>('');\r\n\r\n /**\r\n * CSS margin-block property values.\r\n * Default to '0'\r\n */\r\n marginBlock = input<string>('0');\r\n\r\n /**\r\n * CSS line-height property values.\r\n * Default to '125%'\r\n */\r\n lineHeight = input<string>('125%');\r\n\r\n /**\r\n * Apply text-overflow ellipsis definitions.\r\n * Default to 'none'\r\n */\r\n textOverflow = input<TextOverflow>('none');\r\n\r\n // Computed signals\r\n // weights = computed(() => this.curaApi.theme.fonts.getWeights());\r\n // fontSizeBase = computed(() => this.curaApi.theme.fonts.getSize());\r\n // fontFamily = computed(() => this.curaApi.theme.fonts.getFamily('body'));\r\n\r\n // linkColor = computed(() => {\r\n // return this.curaApi.theme.colors.getColor(this.spotColor());\r\n // });\r\n\r\n bodyColor = computed(() => {\r\n if (this.color()) {\r\n return this.curaApi.theme.colors.getColor(this.color());\r\n }\r\n return this.curaApi.theme.fonts.getColor() || this.curaApi.theme.colors.getColor('neutral-darker');\r\n });\r\n\r\n containerClasses = computed(() => {\r\n const classes = [];\r\n\r\n classes.push(this.size().toLowerCase());\r\n classes.push(`${this.weight().toLowerCase()}-weight`);\r\n\r\n if (this.textOverflow() === 'single') {\r\n classes.push('textoverflow-single');\r\n }\r\n\r\n return classes.join(' ');\r\n });\r\n}\r\n","<p [class]=\"containerClasses()\">\r\n <ng-content></ng-content>\r\n</p>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;MAmBa,kBAAkB,CAAA;AAf/B,IAAA,WAAA,GAAA;AAgBU,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC;AAExC;;;AAGG;AACH,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAY,QAAQ,gDAAC;AAEjC;;;AAGG;AACH,QAAA,IAAA,CAAA,MAAM,GAAG,KAAK,CAAc,SAAS,kDAAC;AAEtC;;;AAGG;AACH,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAS,aAAa,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,WAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC,CAAC;AAEzC;;;AAGG;AACH,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAS,EAAE,iDAAC;AAEzB;;;AAGG;AACH,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CAAS,GAAG,uDAAC;AAEhC;;;AAGG;AACH,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAS,MAAM,sDAAC;AAElC;;;AAGG;AACH,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAe,MAAM,wDAAC;;;;;;;;AAW1C,QAAA,IAAA,CAAA,SAAS,GAAG,QAAQ,CAAC,MAAK;AACxB,YAAA,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE;AAChB,gBAAA,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACzD;YACA,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC;AACpG,QAAA,CAAC,qDAAC;AAEF,QAAA,IAAA,CAAA,gBAAgB,GAAG,QAAQ,CAAC,MAAK;YAC/B,MAAM,OAAO,GAAG,EAAE;YAElB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACvC,YAAA,OAAO,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAA,OAAA,CAAS,CAAC;AAErD,YAAA,IAAI,IAAI,CAAC,YAAY,EAAE,KAAK,QAAQ,EAAE;AACpC,gBAAA,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC;YACrC;AAEA,YAAA,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;AAC1B,QAAA,CAAC,4DAAC;AACH,IAAA;8GAzEY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,kkCCnB/B,+EAGA,EAAA,MAAA,EAAA,CAAA,0gCAAA,CAAA,EAAA,CAAA,CAAA;;2FDgBa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAf9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,EAAA,IAAA,EAGhB;AACJ,wBAAA,uBAAuB,EAAE,cAAc;AACvC,wBAAA,sBAAsB,EAAE,aAAa;AACtC,qBAAA,EAAA,QAAA,EAAA,+EAAA,EAAA,MAAA,EAAA,CAAA,0gCAAA,CAAA,EAAA;;;AEXH;;AAEG;;;;"}
|