@rededor/site-front-end-lib 20.0.11 → 20.0.13

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.
@@ -10,6 +10,7 @@ declare class ErrorComponent implements OnInit, OnDestroy {
10
10
  private logService;
11
11
  private seoService;
12
12
  private serverResponse;
13
+ private ssrResponse;
13
14
  private readonly platformId;
14
15
  readonly theme: _angular_core.InputSignal<Themes>;
15
16
  readonly type: _angular_core.InputSignal<Errors>;
package/core/index.d.ts CHANGED
@@ -1997,6 +1997,28 @@ declare class ServerResponseService implements IServerResponseService {
1997
1997
  }
1998
1998
  type HttpCacheDirective = 'public' | 'private' | 'no-store' | 'no-cache' | 'must-revalidate' | 'no-transform' | 'proxy-revalidate';
1999
1999
 
2000
+ interface ISsrResponseService {
2001
+ setStatus(code: number, message?: string): this;
2002
+ setNotFound(message?: string): this;
2003
+ setError(message?: string): this;
2004
+ setRedirect(params?: {
2005
+ statusCode?: number;
2006
+ url?: string;
2007
+ }): this;
2008
+ }
2009
+ declare class SsrResponseService implements ISsrResponseService {
2010
+ private readonly responseInit;
2011
+ setStatus(code: number, message?: string): this;
2012
+ setNotFound(message?: string): this;
2013
+ setError(message?: string): this;
2014
+ setRedirect(params?: {
2015
+ statusCode?: number;
2016
+ url?: string;
2017
+ }): this;
2018
+ static ɵfac: i0.ɵɵFactoryDeclaration<SsrResponseService, never>;
2019
+ static ɵprov: i0.ɵɵInjectableDeclaration<SsrResponseService>;
2020
+ }
2021
+
2000
2022
  declare class SiteBackendService {
2001
2023
  private httpClientService;
2002
2024
  private libConfig;
@@ -2022,5 +2044,5 @@ declare class SiteBackendService {
2022
2044
  static ɵprov: i0.ɵɵInjectableDeclaration<SiteBackendService>;
2023
2045
  }
2024
2046
 
2025
- export { AbstractModalComponent, AbstractModalDrawerComponent, EnumDoencaTaxonomy, EnumDoencaTaxonomyCat, ErrorInterceptor, ErrorService, FilterType, GeolocService, GeolocationPermissions, HttpClientService, LIB_CONFIG, LogInterceptor, LogService, MapBoxService, ModalDrawerService, ModalService, PhoneService, PrivacyToolsService, REQUEST, RESPONSE, RdsiteLinkDirective, RdsiteModalComponentStyle, RdsiteModalDrawerComponentStyle, RdsitePhoneModalDirective, SeoService, ServerResponseService, SiteBackendService, TransferStateUrlInterceptor, checkSafariAgent, djb2Hash, executeWithRetry, formatPhone, getCircularReplacer, getSiteUrl, removeHtmlTags };
2026
- export type { Address, AlgoliaConfig, AlgoliaMultipleResults, AlgoliaOption, AlgoliaResult, AlgoliaSearchParams, BreadcrumbsItems, BreadcrumbsJsonItem, CentroEstudosBackendMedico, CentroMedico, CheckboxGroupFilterConfig, CheckboxGroupFilterSection, Content, ContentBanner, CtaWrapper, CustomFilterConfig, CustomFilterSection, DoencaBackend, DoencaTaxonomy, EspecialidadeBackend, EspecialidadeGrupoBackend, ExameApiDados, ExameBackend, Excerpt, FeaturedMedia, FeaturedMediaDetails, FilterAction, FilterControl, FilterControlValue, FilterEvent, FilterOption, FilterPlanosConvenios, FilterPlanosConveniosChange, FilterPlanosConveniosCobertura, FilterSection, FilterSectionBase, FlexibleContent, Geolocation, Guid, HomeSlideshow, HttpCacheDirective, IServerResponseService, InputFilterConfig, InputFilterSection, LibConfig, Links, MapBoxGeocodingParams, MapBoxReverseGeocodingParams, MedicoCv, MenuCta, MenuDeUnidade, MenuDeUnidadesItem, MenuItem, MenuItemDestaque, MenuPorEstado, MenuSocialMedia, Meta, PrivacyToolsConfigOptions, PrivacyToolsCookieBanner, RDSLCobertura, RDSLCoberturaParams, RDSLConvenio, RDSLConvenioParams, RDSLEspecialidade, RDSLEspecialidadesParams, RDSLGrupoEspecialidade, RDSLGrupoEspecialidadeParams, RDSLPlano, RDSLPlanoParams, RDSLUnidade, RDSLUnidadesParams, RadioGroupFilterConfig, RadioGroupFilterSection, RadioGroupValue, RdsiteImage, RdslAlgoliaMultipleIndex, RdslAlgoliaSearchParams, RdslPostCategory, SectionNavigationConfig, SectionNavigationData, SelectFilterConfig, SelectFilterSection, SeoData, SeoUnidade, SocialMetaProperties, TaxonomiasDoencasList, Title, UnidadeCta, UnidadeEmergencia, UnidadeEspecialidadeProcurada, UnidadeEstiloWhatsapp, UnidadeExamesProcurados, UnidadeInfo, UnidadeNossasMarcas, UnidadeOptions, UnidadePhoneModal, UnifiedMenu, WpAuthorQueryParams, WpCategory, WpCategoryQueryParams, WpCommonQueryParams, WpCommonResponse, WpCustomPost, WpDoenca, WpEnvelopeResponse, WpGlobalQueryParams, WpGlobalResponse, WpHttpParams, WpPage, WpPageQueryParams, WpPaginationQueryParams, WpPost, WpPostQueryParams, WpPublishingQueryParams, WpPublishingResponse, WpUnidadeOnco, WpUnidadeSite, WpUnidadeSiteDetalhe, WpYoastResponse, YoastData, YoastHeadJson, YoastMeta };
2047
+ export { AbstractModalComponent, AbstractModalDrawerComponent, EnumDoencaTaxonomy, EnumDoencaTaxonomyCat, ErrorInterceptor, ErrorService, FilterType, GeolocService, GeolocationPermissions, HttpClientService, LIB_CONFIG, LogInterceptor, LogService, MapBoxService, ModalDrawerService, ModalService, PhoneService, PrivacyToolsService, REQUEST, RESPONSE, RdsiteLinkDirective, RdsiteModalComponentStyle, RdsiteModalDrawerComponentStyle, RdsitePhoneModalDirective, SeoService, ServerResponseService, SiteBackendService, SsrResponseService, TransferStateUrlInterceptor, checkSafariAgent, djb2Hash, executeWithRetry, formatPhone, getCircularReplacer, getSiteUrl, removeHtmlTags };
2048
+ export type { Address, AlgoliaConfig, AlgoliaMultipleResults, AlgoliaOption, AlgoliaResult, AlgoliaSearchParams, BreadcrumbsItems, BreadcrumbsJsonItem, CentroEstudosBackendMedico, CentroMedico, CheckboxGroupFilterConfig, CheckboxGroupFilterSection, Content, ContentBanner, CtaWrapper, CustomFilterConfig, CustomFilterSection, DoencaBackend, DoencaTaxonomy, EspecialidadeBackend, EspecialidadeGrupoBackend, ExameApiDados, ExameBackend, Excerpt, FeaturedMedia, FeaturedMediaDetails, FilterAction, FilterControl, FilterControlValue, FilterEvent, FilterOption, FilterPlanosConvenios, FilterPlanosConveniosChange, FilterPlanosConveniosCobertura, FilterSection, FilterSectionBase, FlexibleContent, Geolocation, Guid, HomeSlideshow, HttpCacheDirective, IServerResponseService, ISsrResponseService, InputFilterConfig, InputFilterSection, LibConfig, Links, MapBoxGeocodingParams, MapBoxReverseGeocodingParams, MedicoCv, MenuCta, MenuDeUnidade, MenuDeUnidadesItem, MenuItem, MenuItemDestaque, MenuPorEstado, MenuSocialMedia, Meta, PrivacyToolsConfigOptions, PrivacyToolsCookieBanner, RDSLCobertura, RDSLCoberturaParams, RDSLConvenio, RDSLConvenioParams, RDSLEspecialidade, RDSLEspecialidadesParams, RDSLGrupoEspecialidade, RDSLGrupoEspecialidadeParams, RDSLPlano, RDSLPlanoParams, RDSLUnidade, RDSLUnidadesParams, RadioGroupFilterConfig, RadioGroupFilterSection, RadioGroupValue, RdsiteImage, RdslAlgoliaMultipleIndex, RdslAlgoliaSearchParams, RdslPostCategory, SectionNavigationConfig, SectionNavigationData, SelectFilterConfig, SelectFilterSection, SeoData, SeoUnidade, SocialMetaProperties, TaxonomiasDoencasList, Title, UnidadeCta, UnidadeEmergencia, UnidadeEspecialidadeProcurada, UnidadeEstiloWhatsapp, UnidadeExamesProcurados, UnidadeInfo, UnidadeNossasMarcas, UnidadeOptions, UnidadePhoneModal, UnifiedMenu, WpAuthorQueryParams, WpCategory, WpCategoryQueryParams, WpCommonQueryParams, WpCommonResponse, WpCustomPost, WpDoenca, WpEnvelopeResponse, WpGlobalQueryParams, WpGlobalResponse, WpHttpParams, WpPage, WpPageQueryParams, WpPaginationQueryParams, WpPost, WpPostQueryParams, WpPublishingQueryParams, WpPublishingResponse, WpUnidadeOnco, WpUnidadeSite, WpUnidadeSiteDetalhe, WpYoastResponse, YoastData, YoastHeadJson, YoastMeta };
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { inject, PLATFORM_ID, input, HostBinding, Component } from '@angular/core';
3
3
  import { isPlatformServer } from '@angular/common';
4
- import { ErrorService, LogService, SeoService, ServerResponseService, RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';
4
+ import { ErrorService, LogService, SeoService, ServerResponseService, SsrResponseService, RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';
5
5
  import { CuraApiService } from '@rededor/site-front-end-lib/cura/api';
6
6
  import { CtaWrapperComponent } from '@rededor/site-front-end-lib/components/cta-wrapper';
7
7
  import { BreadcrumbsComponent } from '@rededor/site-front-end-lib/components/breadcrumbs';
@@ -19,6 +19,7 @@ class ErrorComponent {
19
19
  this.logService = inject(LogService);
20
20
  this.seoService = inject(SeoService);
21
21
  this.serverResponse = inject(ServerResponseService);
22
+ this.ssrResponse = inject(SsrResponseService);
22
23
  this.platformId = inject(PLATFORM_ID);
23
24
  this.theme = input(Themes.REDE, ...(ngDevMode ? [{ debugName: "theme" }] : []));
24
25
  this.type = input.required(...(ngDevMode ? [{ debugName: "type" }] : []));
@@ -78,6 +79,7 @@ class ErrorComponent {
78
79
  if (type === Errors.NOT_FOUND) {
79
80
  this.responseText = 'A página que você acessou não existe mais ou foi movida para outra URL';
80
81
  if (isPlatformServer(this.platformId)) {
82
+ this.ssrResponse.setNotFound();
81
83
  this.serverResponse.setNotFound();
82
84
  }
83
85
  this.logService.log404(this.component());
@@ -86,6 +88,7 @@ class ErrorComponent {
86
88
  else if (type === Errors.SERVER_RESPONSE) {
87
89
  this.responseText = 'Recomendamos atualizar a página ou tentar novamente mais tarde.';
88
90
  if (isPlatformServer(this.platformId)) {
91
+ this.ssrResponse.setError();
89
92
  this.serverResponse.setError();
90
93
  }
91
94
  this.logService.log500(this.component());
@@ -1 +1 @@
1
- {"version":3,"file":"rededor-site-front-end-lib-components-error.mjs","sources":["../../../projects/site-front-end-lib/components/error/error.component.ts","../../../projects/site-front-end-lib/components/error/error.component.html","../../../projects/site-front-end-lib/components/error/rededor-site-front-end-lib-components-error.ts"],"sourcesContent":["import { Component, HostBinding, OnDestroy, OnInit, PLATFORM_ID, input, inject } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { isPlatformServer } from '@angular/common';\nimport {\n LogService,\n SeoService,\n ServerResponseService,\n RdsiteLinkDirective,\n BreadcrumbsItems,\n CtaWrapper,\n ErrorService,\n} from '@rededor/site-front-end-lib/core';\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\nimport { CtaWrapperComponent } from '@rededor/site-front-end-lib/components/cta-wrapper';\nimport { BreadcrumbsComponent } from '@rededor/site-front-end-lib/components/breadcrumbs';\nimport { Errors, Themes } from '@rededor/site-front-end-lib/enums';\nimport { CuraLabelComponent } from '@rededor/site-front-end-lib/cura/forms/cura-label';\nimport { CuraHeadingComponent } from '@rededor/site-front-end-lib/cura/texts/cura-heading';\nimport { CuraParagraphComponent } from '@rededor/site-front-end-lib/cura/texts/cura-paragraph';\nimport { CuraButtonComponent } from '@rededor/site-front-end-lib/cura/buttons/cura-button';\nimport { CuraButtonOutlineComponent } from '@rededor/site-front-end-lib/cura/buttons/cura-button-outline';\n\n@Component({\n selector: 'rdsite-error',\n imports: [\n CtaWrapperComponent,\n RdsiteLinkDirective,\n BreadcrumbsComponent,\n CuraLabelComponent,\n CuraHeadingComponent,\n CuraParagraphComponent,\n CuraButtonComponent,\n CuraButtonOutlineComponent,\n ],\n templateUrl: './error.component.html',\n styleUrl: './error.component.scss',\n})\nexport class ErrorComponent implements OnInit, OnDestroy {\n private errorService = inject(ErrorService);\n private curaApiService = inject(CuraApiService);\n private logService = inject(LogService);\n private seoService = inject(SeoService);\n private serverResponse = inject(ServerResponseService);\n private readonly platformId = inject(PLATFORM_ID);\n\n readonly theme = input<Themes>(Themes.REDE);\n readonly type = input.required<Errors>();\n readonly returnRoute = input<string>('');\n readonly returnLabel = input<string>('');\n readonly pageTitle = input('Default component');\n readonly component = input('DefaultComponent');\n readonly breadcrumbsItems = input<BreadcrumbsItems[]>([]);\n\n ctasSubscription!: Subscription;\n ctasContent!: CtaWrapper;\n responseText = '';\n\n backgroundColor: string = '';\n backgroundColorBadge: string = '';\n breadcrumbFontWeight: string = '';\n labelColor: string = '';\n labelTextColor: string = '';\n curaButtonColor: string = '';\n curaButtonOutlineColor: string = '';\n ctasBorderColor: string = '';\n ctasIconColor: string = '';\n public error = Errors;\n\n @HostBinding('style') get style() {\n switch (this.theme()) {\n case Themes.REDE:\n return {\n '--backgroundColor': this.curaApiService.theme.colors.getColor('neutral-white'),\n '--labelColor': this.curaApiService.theme.colors.getColor('primary-lighter'),\n };\n case Themes.ONCO:\n return {\n '--backgroundColor': this.curaApiService.theme.colors.getColor('neutral-pale'),\n '--labelColor': this.curaApiService.theme.colors.getColor('success-lighter'),\n };\n case Themes.MATERNIDADE:\n return {\n '--backgroundColor': this.curaApiService.theme.colors.getColor('accent-lighter'),\n '--labelColor': this.curaApiService.theme.colors.getColor('primary-light'),\n };\n case Themes.RICHET:\n return {\n '--backgroundColor': this.curaApiService.theme.colors.getColor('neutral-white'),\n '--labelColor': this.curaApiService.theme.colors.getColor('primary-lighter'),\n };\n case Themes.STAR:\n return {\n '--backgroundColor': this.curaApiService.theme.colors.getColor('secondary-lighter'),\n '--labelColor': this.curaApiService.theme.colors.getColor('secondary-light'),\n };\n default:\n return {\n '--backgroundColor': this.curaApiService.theme.colors.getColor('neutral-white'),\n '--labelColor': this.curaApiService.theme.colors.getColor('primary-lighter'),\n };\n }\n }\n\n ngOnInit(): void {\n const type = this.type();\n if (type === Errors.NOT_FOUND) {\n this.responseText = 'A página que você acessou não existe mais ou foi movida para outra URL';\n if (isPlatformServer(this.platformId)) {\n this.serverResponse.setNotFound();\n }\n this.logService.log404(this.component());\n this.seoService.set404Title(this.pageTitle());\n } else if (type === Errors.SERVER_RESPONSE) {\n this.responseText = 'Recomendamos atualizar a página ou tentar novamente mais tarde.';\n if (isPlatformServer(this.platformId)) {\n this.serverResponse.setError();\n }\n this.logService.log500(this.component());\n this.seoService.set500Title(this.pageTitle());\n }\n this.ctasSubscription = this.errorService.ctas.subscribe((ctas) => {\n this.ctasContent = ctas;\n });\n this.setTheme(this.theme());\n }\n\n setTheme(theme: Themes) {\n switch (theme) {\n case Themes.REDE:\n this.labelTextColor = 'primary-dark';\n this.curaButtonColor = 'primary';\n this.curaButtonOutlineColor = 'primary';\n this.ctasBorderColor = 'primary-darker';\n this.ctasIconColor = 'primary-darker';\n break;\n case Themes.ONCO:\n this.labelTextColor = 'primary-dark';\n this.backgroundColorBadge = 'success-lighter';\n this.curaButtonColor = 'accent';\n this.curaButtonOutlineColor = 'accent';\n this.ctasBorderColor = 'accent-base';\n this.ctasIconColor = 'primary-dark';\n this.breadcrumbFontWeight = '700';\n break;\n case Themes.MATERNIDADE:\n this.labelTextColor = 'accent-base';\n this.curaButtonColor = 'accent';\n this.curaButtonOutlineColor = 'accent';\n this.ctasBorderColor = 'accent-base';\n this.ctasIconColor = 'accent-base';\n break;\n case Themes.RICHET:\n this.labelTextColor = 'primary-dark';\n this.curaButtonColor = 'primary';\n this.curaButtonOutlineColor = 'primary';\n this.ctasBorderColor = 'primary-darker';\n this.ctasIconColor = 'primary-darker';\n break;\n case Themes.STAR:\n this.labelTextColor = 'secondary-dark';\n this.curaButtonColor = 'secondary';\n this.curaButtonOutlineColor = 'secondary';\n this.ctasBorderColor = 'secondary-base';\n this.ctasIconColor = 'secondary-darker';\n break;\n }\n }\n\n reloadPage() {\n if (window !== undefined) {\n window.location.reload();\n }\n }\n\n ngOnDestroy(): void {\n this.ctasSubscription?.unsubscribe();\n }\n}\n","<div class=\"rdsite-error\">\n @if (ctasIconColor && breadcrumbsItems().length) {\n <rdsite-breadcrumbs [breadcrumbs]=\"breadcrumbsItems()\" [labelIconColor]=\"ctasIconColor\" [fontWeight]=\"breadcrumbFontWeight\"></rdsite-breadcrumbs>\n }\n <div class=\"rdsite-error-container\">\n @if (labelTextColor) {\n <cura-label [color]=\"labelTextColor\">\n {{ type() === 'server-response' ? '500' : '404' }}\n </cura-label>\n }\n\n <cura-heading color=\"neutral-black\" size=\"medium\" weight=\"bold\"> Algo deu errado :( </cura-heading>\n\n @if (responseText) {\n <cura-paragraph color=\"neutral-black\" size=\"large\">\n {{ responseText }}\n </cura-paragraph>\n }\n\n @if (type() === error.NOT_FOUND && returnRoute() && returnLabel()) {\n <cura-button\n rdsitelink\n [href]=\"returnRoute()\"\n size=\"medium\"\n type=\"button\"\n [color]=\"curaButtonColor\"\n fontColor=\"light\"\n iconName=\"arrowLeft\"\n target=\"_self\"\n >\n Voltar para {{ returnLabel() }}\n </cura-button>\n }\n\n @if (type() === error.SERVER_RESPONSE) {\n @if (curaButtonColor) {\n <cura-button size=\"medium\" type=\"button\" (click)=\"reloadPage()\" [color]=\"curaButtonColor\" fontColor=\"light\" iconName=\"reload\" target=\"_self\">\n Atualizar página novamente\n </cura-button>\n }\n\n @if (returnLabel() && returnRoute()) {\n <cura-paragraph color=\"neutral-black\" size=\"large\">ou</cura-paragraph>\n @if (curaButtonOutlineColor) {\n <cura-button-outline\n rdsitelink\n [href]=\"returnRoute()\"\n size=\"medium\"\n type=\"button\"\n [color]=\"curaButtonOutlineColor\"\n iconName=\"arrowLeft\"\n target=\"_self\"\n >\n Voltar para {{ returnLabel() }}\n </cura-button-outline>\n }\n }\n }\n @if (ctasContent.ctas!.length > 0 && ctasBorderColor && ctasIconColor) {\n <cura-paragraph class=\"wrapper-text\" color=\"neutral-black\" size=\"large\"> Você pode também: </cura-paragraph>\n\n <rdsite-cta-wrapper [content]=\"ctasContent\" [showTitleAndText]=\"false\" [colors]=\"{ border: ctasBorderColor, icon: ctasIconColor }\"></rdsite-cta-wrapper>\n }\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-error.mjs","sources":["../../../projects/site-front-end-lib/components/error/error.component.ts","../../../projects/site-front-end-lib/components/error/error.component.html","../../../projects/site-front-end-lib/components/error/rededor-site-front-end-lib-components-error.ts"],"sourcesContent":["import { Component, HostBinding, OnDestroy, OnInit, PLATFORM_ID, input, inject } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { isPlatformServer } from '@angular/common';\nimport {\n LogService,\n SeoService,\n ServerResponseService,\n SsrResponseService,\n RdsiteLinkDirective,\n BreadcrumbsItems,\n CtaWrapper,\n ErrorService,\n} from '@rededor/site-front-end-lib/core';\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\nimport { CtaWrapperComponent } from '@rededor/site-front-end-lib/components/cta-wrapper';\nimport { BreadcrumbsComponent } from '@rededor/site-front-end-lib/components/breadcrumbs';\nimport { Errors, Themes } from '@rededor/site-front-end-lib/enums';\nimport { CuraLabelComponent } from '@rededor/site-front-end-lib/cura/forms/cura-label';\nimport { CuraHeadingComponent } from '@rededor/site-front-end-lib/cura/texts/cura-heading';\nimport { CuraParagraphComponent } from '@rededor/site-front-end-lib/cura/texts/cura-paragraph';\nimport { CuraButtonComponent } from '@rededor/site-front-end-lib/cura/buttons/cura-button';\nimport { CuraButtonOutlineComponent } from '@rededor/site-front-end-lib/cura/buttons/cura-button-outline';\n\n@Component({\n selector: 'rdsite-error',\n imports: [\n CtaWrapperComponent,\n RdsiteLinkDirective,\n BreadcrumbsComponent,\n CuraLabelComponent,\n CuraHeadingComponent,\n CuraParagraphComponent,\n CuraButtonComponent,\n CuraButtonOutlineComponent,\n ],\n templateUrl: './error.component.html',\n styleUrl: './error.component.scss',\n})\nexport class ErrorComponent implements OnInit, OnDestroy {\n private errorService = inject(ErrorService);\n private curaApiService = inject(CuraApiService);\n private logService = inject(LogService);\n private seoService = inject(SeoService);\n private serverResponse = inject(ServerResponseService);\n private ssrResponse = inject(SsrResponseService);\n private readonly platformId = inject(PLATFORM_ID);\n\n readonly theme = input<Themes>(Themes.REDE);\n readonly type = input.required<Errors>();\n readonly returnRoute = input<string>('');\n readonly returnLabel = input<string>('');\n readonly pageTitle = input('Default component');\n readonly component = input('DefaultComponent');\n readonly breadcrumbsItems = input<BreadcrumbsItems[]>([]);\n\n ctasSubscription!: Subscription;\n ctasContent!: CtaWrapper;\n responseText = '';\n\n backgroundColor: string = '';\n backgroundColorBadge: string = '';\n breadcrumbFontWeight: string = '';\n labelColor: string = '';\n labelTextColor: string = '';\n curaButtonColor: string = '';\n curaButtonOutlineColor: string = '';\n ctasBorderColor: string = '';\n ctasIconColor: string = '';\n public error = Errors;\n\n @HostBinding('style') get style() {\n switch (this.theme()) {\n case Themes.REDE:\n return {\n '--backgroundColor': this.curaApiService.theme.colors.getColor('neutral-white'),\n '--labelColor': this.curaApiService.theme.colors.getColor('primary-lighter'),\n };\n case Themes.ONCO:\n return {\n '--backgroundColor': this.curaApiService.theme.colors.getColor('neutral-pale'),\n '--labelColor': this.curaApiService.theme.colors.getColor('success-lighter'),\n };\n case Themes.MATERNIDADE:\n return {\n '--backgroundColor': this.curaApiService.theme.colors.getColor('accent-lighter'),\n '--labelColor': this.curaApiService.theme.colors.getColor('primary-light'),\n };\n case Themes.RICHET:\n return {\n '--backgroundColor': this.curaApiService.theme.colors.getColor('neutral-white'),\n '--labelColor': this.curaApiService.theme.colors.getColor('primary-lighter'),\n };\n case Themes.STAR:\n return {\n '--backgroundColor': this.curaApiService.theme.colors.getColor('secondary-lighter'),\n '--labelColor': this.curaApiService.theme.colors.getColor('secondary-light'),\n };\n default:\n return {\n '--backgroundColor': this.curaApiService.theme.colors.getColor('neutral-white'),\n '--labelColor': this.curaApiService.theme.colors.getColor('primary-lighter'),\n };\n }\n }\n\n ngOnInit(): void {\n const type = this.type();\n if (type === Errors.NOT_FOUND) {\n this.responseText = 'A página que você acessou não existe mais ou foi movida para outra URL';\n if (isPlatformServer(this.platformId)) {\n this.ssrResponse.setNotFound();\n this.serverResponse.setNotFound();\n }\n this.logService.log404(this.component());\n this.seoService.set404Title(this.pageTitle());\n } else if (type === Errors.SERVER_RESPONSE) {\n this.responseText = 'Recomendamos atualizar a página ou tentar novamente mais tarde.';\n if (isPlatformServer(this.platformId)) {\n this.ssrResponse.setError();\n this.serverResponse.setError();\n }\n this.logService.log500(this.component());\n this.seoService.set500Title(this.pageTitle());\n }\n this.ctasSubscription = this.errorService.ctas.subscribe((ctas) => {\n this.ctasContent = ctas;\n });\n this.setTheme(this.theme());\n }\n\n setTheme(theme: Themes) {\n switch (theme) {\n case Themes.REDE:\n this.labelTextColor = 'primary-dark';\n this.curaButtonColor = 'primary';\n this.curaButtonOutlineColor = 'primary';\n this.ctasBorderColor = 'primary-darker';\n this.ctasIconColor = 'primary-darker';\n break;\n case Themes.ONCO:\n this.labelTextColor = 'primary-dark';\n this.backgroundColorBadge = 'success-lighter';\n this.curaButtonColor = 'accent';\n this.curaButtonOutlineColor = 'accent';\n this.ctasBorderColor = 'accent-base';\n this.ctasIconColor = 'primary-dark';\n this.breadcrumbFontWeight = '700';\n break;\n case Themes.MATERNIDADE:\n this.labelTextColor = 'accent-base';\n this.curaButtonColor = 'accent';\n this.curaButtonOutlineColor = 'accent';\n this.ctasBorderColor = 'accent-base';\n this.ctasIconColor = 'accent-base';\n break;\n case Themes.RICHET:\n this.labelTextColor = 'primary-dark';\n this.curaButtonColor = 'primary';\n this.curaButtonOutlineColor = 'primary';\n this.ctasBorderColor = 'primary-darker';\n this.ctasIconColor = 'primary-darker';\n break;\n case Themes.STAR:\n this.labelTextColor = 'secondary-dark';\n this.curaButtonColor = 'secondary';\n this.curaButtonOutlineColor = 'secondary';\n this.ctasBorderColor = 'secondary-base';\n this.ctasIconColor = 'secondary-darker';\n break;\n }\n }\n\n reloadPage() {\n if (window !== undefined) {\n window.location.reload();\n }\n }\n\n ngOnDestroy(): void {\n this.ctasSubscription?.unsubscribe();\n }\n}\n","<div class=\"rdsite-error\">\n @if (ctasIconColor && breadcrumbsItems().length) {\n <rdsite-breadcrumbs [breadcrumbs]=\"breadcrumbsItems()\" [labelIconColor]=\"ctasIconColor\" [fontWeight]=\"breadcrumbFontWeight\"></rdsite-breadcrumbs>\n }\n <div class=\"rdsite-error-container\">\n @if (labelTextColor) {\n <cura-label [color]=\"labelTextColor\">\n {{ type() === 'server-response' ? '500' : '404' }}\n </cura-label>\n }\n\n <cura-heading color=\"neutral-black\" size=\"medium\" weight=\"bold\"> Algo deu errado :( </cura-heading>\n\n @if (responseText) {\n <cura-paragraph color=\"neutral-black\" size=\"large\">\n {{ responseText }}\n </cura-paragraph>\n }\n\n @if (type() === error.NOT_FOUND && returnRoute() && returnLabel()) {\n <cura-button\n rdsitelink\n [href]=\"returnRoute()\"\n size=\"medium\"\n type=\"button\"\n [color]=\"curaButtonColor\"\n fontColor=\"light\"\n iconName=\"arrowLeft\"\n target=\"_self\"\n >\n Voltar para {{ returnLabel() }}\n </cura-button>\n }\n\n @if (type() === error.SERVER_RESPONSE) {\n @if (curaButtonColor) {\n <cura-button size=\"medium\" type=\"button\" (click)=\"reloadPage()\" [color]=\"curaButtonColor\" fontColor=\"light\" iconName=\"reload\" target=\"_self\">\n Atualizar página novamente\n </cura-button>\n }\n\n @if (returnLabel() && returnRoute()) {\n <cura-paragraph color=\"neutral-black\" size=\"large\">ou</cura-paragraph>\n @if (curaButtonOutlineColor) {\n <cura-button-outline\n rdsitelink\n [href]=\"returnRoute()\"\n size=\"medium\"\n type=\"button\"\n [color]=\"curaButtonOutlineColor\"\n iconName=\"arrowLeft\"\n target=\"_self\"\n >\n Voltar para {{ returnLabel() }}\n </cura-button-outline>\n }\n }\n }\n @if (ctasContent.ctas!.length > 0 && ctasBorderColor && ctasIconColor) {\n <cura-paragraph class=\"wrapper-text\" color=\"neutral-black\" size=\"large\"> Você pode também: </cura-paragraph>\n\n <rdsite-cta-wrapper [content]=\"ctasContent\" [showTitleAndText]=\"false\" [colors]=\"{ border: ctasBorderColor, icon: ctasIconColor }\"></rdsite-cta-wrapper>\n }\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,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, inject, DOCUMENT, Injectable, signal, PLATFORM_ID, ElementRef, model, HostListener, Directive, input, makeStateKey, TransferState } from '@angular/core';
2
+ import { InjectionToken, inject, DOCUMENT, Injectable, signal, PLATFORM_ID, ElementRef, model, HostListener, Directive, input, makeStateKey, TransferState, RESPONSE_INIT } from '@angular/core';
3
3
  import { isPlatformBrowser, Location, isPlatformServer } from '@angular/common';
4
4
  import { Router } from '@angular/router';
5
5
  import { DeviceDetectorService } from 'ngx-device-detector';
@@ -1752,9 +1752,59 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
1752
1752
  }]
1753
1753
  }] });
1754
1754
 
1755
+ class SsrResponseService {
1756
+ constructor() {
1757
+ this.responseInit = inject(RESPONSE_INIT, { optional: true });
1758
+ }
1759
+ setStatus(code, message) {
1760
+ if (this.responseInit) {
1761
+ this.responseInit.status = code;
1762
+ if (message !== undefined) {
1763
+ this.responseInit.statusText = message;
1764
+ }
1765
+ }
1766
+ return this;
1767
+ }
1768
+ setNotFound(message = 'Não encontrado') {
1769
+ if (this.responseInit) {
1770
+ this.responseInit.status = 404;
1771
+ this.responseInit.statusText = message;
1772
+ }
1773
+ return this;
1774
+ }
1775
+ setError(message = 'Erro interno de servidor') {
1776
+ if (this.responseInit) {
1777
+ this.responseInit.status = 500;
1778
+ this.responseInit.statusText = message;
1779
+ }
1780
+ return this;
1781
+ }
1782
+ setRedirect(params = {
1783
+ statusCode: 301,
1784
+ url: undefined,
1785
+ }) {
1786
+ if (this.responseInit && params.url) {
1787
+ this.responseInit.status = params.statusCode ?? 301;
1788
+ this.responseInit.statusText = params.statusCode === 302 ? 'Found' : 'Moved Permanently';
1789
+ const existingHeaders = this.responseInit.headers ? new Headers(this.responseInit.headers) : new Headers();
1790
+ existingHeaders.set('Location', params.url);
1791
+ this.responseInit.headers = existingHeaders;
1792
+ }
1793
+ return this;
1794
+ }
1795
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: SsrResponseService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1796
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: SsrResponseService, providedIn: 'root' }); }
1797
+ }
1798
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: SsrResponseService, decorators: [{
1799
+ type: Injectable,
1800
+ args: [{
1801
+ providedIn: 'root',
1802
+ }]
1803
+ }] });
1804
+
1755
1805
  /**
1756
1806
  * Generated bundle index. Do not edit.
1757
1807
  */
1758
1808
 
1759
- export { AbstractModalComponent, AbstractModalDrawerComponent, EnumDoencaTaxonomy, EnumDoencaTaxonomyCat, ErrorInterceptor, ErrorService, FilterType, GeolocService, GeolocationPermissions, HttpClientService, LIB_CONFIG, LogInterceptor, LogService, MapBoxService, ModalDrawerService, ModalService, PhoneService, PrivacyToolsService, REQUEST, RESPONSE, RdsiteLinkDirective, RdsiteModalComponentStyle, RdsiteModalDrawerComponentStyle, RdsitePhoneModalDirective, SeoService, ServerResponseService, SiteBackendService, TransferStateUrlInterceptor, checkSafariAgent, djb2Hash, executeWithRetry, formatPhone, getCircularReplacer, getSiteUrl, removeHtmlTags };
1809
+ export { AbstractModalComponent, AbstractModalDrawerComponent, EnumDoencaTaxonomy, EnumDoencaTaxonomyCat, ErrorInterceptor, ErrorService, FilterType, GeolocService, GeolocationPermissions, HttpClientService, LIB_CONFIG, LogInterceptor, LogService, MapBoxService, ModalDrawerService, ModalService, PhoneService, PrivacyToolsService, REQUEST, RESPONSE, RdsiteLinkDirective, RdsiteModalComponentStyle, RdsiteModalDrawerComponentStyle, RdsitePhoneModalDirective, SeoService, ServerResponseService, SiteBackendService, SsrResponseService, TransferStateUrlInterceptor, checkSafariAgent, djb2Hash, executeWithRetry, formatPhone, getCircularReplacer, getSiteUrl, removeHtmlTags };
1760
1810
  //# sourceMappingURL=rededor-site-front-end-lib-core.mjs.map