@rededor/site-front-end-lib 20.0.39 → 20.1.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/algolia-search/index.d.ts +1 -1
- package/components/filters/filter-generic/index.d.ts +3 -3
- package/components/filters/filter-planos-convenios/index.d.ts +3 -2
- package/components/footer/index.d.ts +1 -1
- package/components/header/index.d.ts +1 -1
- package/core/index.d.ts +3 -4
- package/fesm2022/rededor-site-front-end-lib-components-algolia-search.mjs +4 -4
- package/fesm2022/rededor-site-front-end-lib-components-algolia-search.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-banner.mjs +5 -5
- package/fesm2022/rededor-site-front-end-lib-components-banner.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-breadcrumbs.mjs +2 -2
- package/fesm2022/rededor-site-front-end-lib-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-cards.mjs +6 -6
- package/fesm2022/rededor-site-front-end-lib-components-cards.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-carousels.mjs +2 -2
- package/fesm2022/rededor-site-front-end-lib-components-carousels.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-cta-wrapper.mjs +2 -2
- package/fesm2022/rededor-site-front-end-lib-components-cta-wrapper.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-error.mjs +6 -6
- package/fesm2022/rededor-site-front-end-lib-components-error.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-filter-letter-and-terms.mjs +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-filter-letter-and-terms.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-filters-filter-generic.mjs +13 -13
- package/fesm2022/rededor-site-front-end-lib-components-filters-filter-generic.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-filters-filter-planos-convenios.mjs +14 -14
- package/fesm2022/rededor-site-front-end-lib-components-filters-filter-planos-convenios.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-footer.mjs +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-footer.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-header-components-action.mjs +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-header-components-action.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-header-components-auxiliar.mjs +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-header-components-auxiliar.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-header-components-main.mjs +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-header-components-main.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-header-components-side.mjs +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-header-components-side.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-header.mjs +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-header.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-load-screen.mjs +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-load-screen.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-modal-drawer.mjs +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-modal-drawer.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-modal.mjs +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-modal.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-page-header.mjs +2 -2
- package/fesm2022/rededor-site-front-end-lib-components-page-header.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-pagination.mjs +2 -2
- package/fesm2022/rededor-site-front-end-lib-components-pagination.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-search.mjs +3 -3
- package/fesm2022/rededor-site-front-end-lib-components-search.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-section-navigation.mjs +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-section-navigation.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-side-ctas.mjs +2 -2
- package/fesm2022/rededor-site-front-end-lib-components-side-ctas.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-sidebar-navigation.mjs +3 -3
- package/fesm2022/rededor-site-front-end-lib-components-sidebar-navigation.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-sticky-navigation.mjs +3 -3
- package/fesm2022/rededor-site-front-end-lib-components-sticky-navigation.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-components-whatsapp.mjs +2 -2
- package/fesm2022/rededor-site-front-end-lib-components-whatsapp.mjs.map +1 -1
- package/fesm2022/rededor-site-front-end-lib-core.mjs +1 -0
- package/fesm2022/rededor-site-front-end-lib-core.mjs.map +1 -1
- package/package.json +2 -133
- package/cura/accordion/index.d.ts +0 -120
- package/cura/api/index.d.ts +0 -359
- package/cura/badges/cura-badge-counter/index.d.ts +0 -38
- package/cura/badges/cura-badge-distance/index.d.ts +0 -21
- package/cura/badges/cura-badge-dot/index.d.ts +0 -29
- package/cura/badges/cura-badge-pill/index.d.ts +0 -42
- package/cura/badges/index.d.ts +0 -5
- package/cura/buttons/cura-button/index.d.ts +0 -90
- package/cura/buttons/cura-button-outline/index.d.ts +0 -90
- package/cura/buttons/cura-button-select/index.d.ts +0 -39
- package/cura/buttons/cura-button-transparent/index.d.ts +0 -87
- package/cura/buttons/index.d.ts +0 -15
- package/cura/cards/cura-card/index.d.ts +0 -49
- package/cura/feedback/cura-alert/index.d.ts +0 -55
- package/cura/feedback/cura-modal/index.d.ts +0 -97
- package/cura/feedback/cura-toast/index.d.ts +0 -104
- package/cura/forms/cura-checkbox/index.d.ts +0 -160
- package/cura/forms/cura-input-text/index.d.ts +0 -236
- package/cura/forms/cura-label/index.d.ts +0 -47
- package/cura/forms/cura-radio/index.d.ts +0 -148
- package/cura/forms/cura-select/index.d.ts +0 -154
- package/cura/forms/cura-select-option/index.d.ts +0 -54
- package/cura/forms/cura-select-state/index.d.ts +0 -72
- package/cura/forms/cura-switch/index.d.ts +0 -113
- package/cura/forms/cura-textarea/index.d.ts +0 -113
- package/cura/forms/index.d.ts +0 -20
- package/cura/icons/cura-icon/index.d.ts +0 -46
- package/cura/loaders/cura-loader-bar/index.d.ts +0 -22
- package/cura/loaders/cura-loader-circle/index.d.ts +0 -24
- package/cura/texts/cura-display/index.d.ts +0 -54
- package/cura/texts/cura-heading/index.d.ts +0 -65
- package/cura/texts/cura-paragraph/index.d.ts +0 -54
- package/cura/texts/index.d.ts +0 -7
- package/fesm2022/rededor-site-front-end-lib-cura-accordion.mjs +0 -252
- package/fesm2022/rededor-site-front-end-lib-cura-accordion.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-api.mjs +0 -643
- package/fesm2022/rededor-site-front-end-lib-cura-api.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-badges-cura-badge-counter.mjs +0 -90
- package/fesm2022/rededor-site-front-end-lib-cura-badges-cura-badge-counter.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-badges-cura-badge-distance.mjs +0 -55
- package/fesm2022/rededor-site-front-end-lib-cura-badges-cura-badge-distance.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-badges-cura-badge-dot.mjs +0 -66
- package/fesm2022/rededor-site-front-end-lib-cura-badges-cura-badge-dot.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-badges-cura-badge-pill.mjs +0 -91
- package/fesm2022/rededor-site-front-end-lib-cura-badges-cura-badge-pill.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-badges.mjs +0 -4
- package/fesm2022/rededor-site-front-end-lib-cura-badges.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button-outline.mjs +0 -170
- package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button-outline.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button-select.mjs +0 -135
- package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button-select.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button-transparent.mjs +0 -161
- package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button-transparent.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button.mjs +0 -170
- package/fesm2022/rededor-site-front-end-lib-cura-buttons-cura-button.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-buttons.mjs +0 -13
- package/fesm2022/rededor-site-front-end-lib-cura-buttons.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-cards-cura-card.mjs +0 -72
- package/fesm2022/rededor-site-front-end-lib-cura-cards-cura-card.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-feedback-cura-alert.mjs +0 -90
- package/fesm2022/rededor-site-front-end-lib-cura-feedback-cura-alert.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-feedback-cura-modal.mjs +0 -105
- package/fesm2022/rededor-site-front-end-lib-cura-feedback-cura-modal.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-feedback-cura-toast.mjs +0 -198
- package/fesm2022/rededor-site-front-end-lib-cura-feedback-cura-toast.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-checkbox.mjs +0 -262
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-checkbox.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-input-text.mjs +0 -586
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-input-text.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-label.mjs +0 -82
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-label.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-radio.mjs +0 -243
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-radio.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-select-option.mjs +0 -89
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-select-option.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-select-state.mjs +0 -123
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-select-state.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-select.mjs +0 -365
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-select.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-switch.mjs +0 -182
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-switch.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-textarea.mjs +0 -209
- package/fesm2022/rededor-site-front-end-lib-cura-forms-cura-textarea.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-forms.mjs +0 -21
- package/fesm2022/rededor-site-front-end-lib-cura-forms.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-icons-cura-icon.mjs +0 -88
- package/fesm2022/rededor-site-front-end-lib-cura-icons-cura-icon.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-loaders-cura-loader-bar.mjs +0 -44
- package/fesm2022/rededor-site-front-end-lib-cura-loaders-cura-loader-bar.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-loaders-cura-loader-circle.mjs +0 -49
- package/fesm2022/rededor-site-front-end-lib-cura-loaders-cura-loader-circle.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-texts-cura-display.mjs +0 -84
- package/fesm2022/rededor-site-front-end-lib-cura-texts-cura-display.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-texts-cura-heading.mjs +0 -104
- package/fesm2022/rededor-site-front-end-lib-cura-texts-cura-heading.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-texts-cura-paragraph.mjs +0 -89
- package/fesm2022/rededor-site-front-end-lib-cura-texts-cura-paragraph.mjs.map +0 -1
- package/fesm2022/rededor-site-front-end-lib-cura-texts.mjs +0 -4
- package/fesm2022/rededor-site-front-end-lib-cura-texts.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rededor-site-front-end-lib-components-page-header.mjs","sources":["../../../projects/site-front-end-lib/components/page-header/page-header.component.ts","../../../projects/site-front-end-lib/components/page-header/page-header.component.html","../../../projects/site-front-end-lib/components/page-header/rededor-site-front-end-lib-components-page-header.ts"],"sourcesContent":["import { Component, HostBinding, input, inject } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BreadcrumbsItems } from '@rededor/site-front-end-lib/core';\r\nimport { CuraApiService } from '@rededor/
|
|
1
|
+
{"version":3,"file":"rededor-site-front-end-lib-components-page-header.mjs","sources":["../../../projects/site-front-end-lib/components/page-header/page-header.component.ts","../../../projects/site-front-end-lib/components/page-header/page-header.component.html","../../../projects/site-front-end-lib/components/page-header/rededor-site-front-end-lib-components-page-header.ts"],"sourcesContent":["import { Component, HostBinding, input, inject } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BreadcrumbsItems } from '@rededor/site-front-end-lib/core';\r\nimport { CuraApiService } from '@rededor/cura-angular/api';\r\nimport { BreadcrumbsComponent } from '@rededor/site-front-end-lib/components/breadcrumbs';\r\nimport { CuraParagraphComponent } from '@rededor/cura-angular/texts/cura-paragraph';\r\nimport { ImageComponent } from '@rededor/site-front-end-lib/components/image';\r\n\r\n@Component({\r\n selector: 'rdsite-page-header',\r\n imports: [CommonModule, BreadcrumbsComponent, CuraParagraphComponent, ImageComponent],\r\n templateUrl: './page-header.component.html',\r\n styleUrls: ['./page-header.component.scss'],\r\n})\r\nexport class PageHeaderComponent {\r\n private readonly curaApiService = inject(CuraApiService);\r\n\r\n readonly preTitle = input<string>('');\r\n readonly pageTitle = input<string>('');\r\n readonly pageHeaderText = input<string>('');\r\n readonly hasPadding = input<boolean>(false);\r\n readonly breadcrumbs = input<BreadcrumbsItems[]>([]);\r\n readonly bgColor = input<string>('primary-base');\r\n readonly imgUrl = input<string>('');\r\n readonly imgMimeType = input<any>('');\r\n readonly imgAlt = input<string>('Imagem do header');\r\n readonly imgTitle = input<string>('Imagem do header');\r\n readonly starTheme = input<boolean>(false);\r\n readonly breadcrumbsLabelIconColor = input<string>('neutral-purewhite');\r\n\r\n @HostBinding('style') get style() {\r\n return {\r\n '--bg-color': this.starTheme() ? '#F7F5F1' : this.curaApiService.theme.colors.getColor(this.bgColor()),\r\n '--neutral-purewhite': this.curaApiService.theme.colors.getColor('neutral-purewhite'),\r\n '--neutral-black': this.curaApiService.theme.colors.getColor('neutral-black'),\r\n '--primary-lighter': this.curaApiService.theme.colors.getColor('primary-lighter'),\r\n '--secondary-darker': this.curaApiService.theme.colors.getColor('secondary-darker'),\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n };\r\n }\r\n}\r\n","<div class=\"page-header\" [ngClass]=\"{ 'more-padding': hasPadding(), starTheme: starTheme() }\">\r\n <div class=\"page-header-container\">\r\n @if (breadcrumbs().length) {\r\n <rdsite-breadcrumbs [labelIconColor]=\"breadcrumbsLabelIconColor()\" [breadcrumbs]=\"breadcrumbs()\"></rdsite-breadcrumbs>\r\n }\r\n <div class=\"page-header-content\">\r\n @if (imgUrl()) {\r\n <rdsite-image [imageDefaultSrc]=\"imgUrl()\" [mimeType]=\"imgMimeType()\" [alt]=\"imgAlt()\" [title]=\"imgTitle()\" loading=\"eager\"></rdsite-image>\r\n }\r\n\r\n <div class=\"page-header-content-info\">\r\n @if (preTitle()) {\r\n <h2>{{ preTitle() }}</h2>\r\n }\r\n @if (pageTitle()) {\r\n <h1>{{ pageTitle() }}</h1>\r\n }\r\n @if (pageHeaderText()) {\r\n <cura-paragraph [color]=\"starTheme() ? 'neutral-black' : 'neutral-purewhite'\" marginBlock=\"0\">{{ pageHeaderText() }}</cura-paragraph>\r\n }\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\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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"}
|
|
@@ -2,8 +2,8 @@ import * as i1 from '@angular/common';
|
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
4
|
import { inject, input, output, HostBinding, Component } from '@angular/core';
|
|
5
|
-
import { CuraApiService } from '@rededor/
|
|
6
|
-
import { CuraIconComponent } from '@rededor/
|
|
5
|
+
import { CuraApiService } from '@rededor/cura-angular/api';
|
|
6
|
+
import { CuraIconComponent } from '@rededor/cura-angular/icons/cura-icon';
|
|
7
7
|
|
|
8
8
|
class PaginationComponent {
|
|
9
9
|
constructor() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rededor-site-front-end-lib-components-pagination.mjs","sources":["../../../projects/site-front-end-lib/components/pagination/pagination.component.ts","../../../projects/site-front-end-lib/components/pagination/pagination.component.html","../../../projects/site-front-end-lib/components/pagination/rededor-site-front-end-lib-components-pagination.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\r\nimport { Component, HostBinding, input, output, inject } from '@angular/core';\r\nimport { CuraApiService } from '@rededor/
|
|
1
|
+
{"version":3,"file":"rededor-site-front-end-lib-components-pagination.mjs","sources":["../../../projects/site-front-end-lib/components/pagination/pagination.component.ts","../../../projects/site-front-end-lib/components/pagination/pagination.component.html","../../../projects/site-front-end-lib/components/pagination/rededor-site-front-end-lib-components-pagination.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\r\nimport { Component, HostBinding, input, output, inject } from '@angular/core';\r\nimport { CuraApiService } from '@rededor/cura-angular/api';\r\nimport { CuraIconComponent } from '@rededor/cura-angular/icons/cura-icon';\r\n\r\n@Component({\r\n selector: 'rdsite-pagination',\r\n imports: [CommonModule, CuraIconComponent],\r\n templateUrl: './pagination.component.html',\r\n styleUrl: './pagination.component.scss',\r\n})\r\nexport class PaginationComponent {\r\n private readonly curaApiService = inject(CuraApiService);\r\n\r\n readonly totalPages = input.required<number>();\r\n readonly activePage = input.required<number>();\r\n readonly perPage = input<number>(10);\r\n readonly perPageOptions = input([10, 30, 50]);\r\n readonly customStyle = input<{\r\n [key: string]: string;\r\n }>({});\r\n readonly containerClass = input(true);\r\n readonly darkMode = input(false);\r\n\r\n readonly pageChange = output<number>();\r\n readonly perPageChange = output<number>();\r\n\r\n @HostBinding('style') styleBinding = {\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n '--primary-base': this.curaApiService.theme.colors.getColor('primary-base'),\r\n '--primary-lighter': this.curaApiService.theme.colors.getColor('primary-lighter'),\r\n '--neutral-purewhite': this.curaApiService.theme.colors.getColor('neutral-purewhite'),\r\n '--neutral-light': this.curaApiService.theme.colors.getColor('neutral-light'),\r\n '--neutral-dark': this.curaApiService.theme.colors.getColor('neutral-dark'),\r\n };\r\n\r\n next() {\r\n if (this.activePage() < this.totalPages()) {\r\n this.pageChange.emit(this.activePage() + 1);\r\n }\r\n }\r\n\r\n prev() {\r\n if (this.activePage() > 1) {\r\n this.pageChange.emit(this.activePage() - 1);\r\n }\r\n }\r\n}\r\n","<div\r\n class=\"rdsite-pagination\"\r\n [ngClass]=\"{ 'rdsite-container': containerClass, 'dark-mode': darkMode() }\"\r\n [style]=\"customStyle()\"\r\n data-testid=\"_rdsite-rdsite-pagination\"\r\n>\r\n @if (totalPages() && totalPages() > 1) {\r\n <nav class=\"rdsite-pagination-nav\" aria-label=\"Pagination nav\">\r\n <button (click)=\"prev()\" type=\"button\" title=\"Página anterior\" class=\"button-link\" [attr.disabled]=\"activePage() === 1 ? true : null\">\r\n <cura-icon\r\n name=\"arrowLeftCircle\"\r\n size=\"24\"\r\n [color]=\"activePage() === 1 ? (darkMode() ? 'primary-base' : 'neutral-dark') : darkMode() ? 'neutral-purewhite' : 'primary-base'\"\r\n >\r\n </cura-icon>\r\n </button>\r\n\r\n <span>Página {{ activePage() }} - {{ totalPages() }}</span>\r\n\r\n <button (click)=\"next()\" type=\"button\" title=\"Próxima página\" class=\"button-link\" [attr.disabled]=\"activePage() === totalPages() ? true : null\">\r\n <cura-icon\r\n name=\"arrowRightCircle\"\r\n size=\"24\"\r\n [color]=\"activePage() === totalPages() ? (darkMode() ? 'primary-base' : 'neutral-dark') : darkMode() ? 'neutral-purewhite' : 'primary-base'\"\r\n >\r\n </cura-icon>\r\n </button>\r\n </nav>\r\n }\r\n\r\n @if (perPageOptions().length) {\r\n <div class=\"rdsite-pagination-pp-options\" data-testid=\"_rdsite-rdsite-pagination-pp-options\">\r\n <span>Resultados por página</span>\r\n\r\n <div class=\"rdsite-pagination-pp-options-controls\" data-testid=\"_rdsite-rdsite-pagination-pp-options-controls\">\r\n @for (option of perPageOptions(); let i = $index; track option) {\r\n <button\r\n type=\"button\"\r\n (click)=\"perPageChange.emit(option)\"\r\n [attr.disabled]=\"option === perPage() ? true : null\"\r\n title=\"Exibir {{ option }} resultados por página.\"\r\n class=\"button-link\"\r\n >\r\n {{ option }}\r\n @if (i < perPageOptions().length - 1) {\r\n <span class=\"bar\">|</span>\r\n }\r\n </button>\r\n }\r\n </div>\r\n </div>\r\n }\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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"}
|
|
@@ -6,9 +6,9 @@ import * as i2 from '@angular/forms';
|
|
|
6
6
|
import { UntypedFormControl, ReactiveFormsModule } from '@angular/forms';
|
|
7
7
|
import { DeviceDetectorService } from 'ngx-device-detector';
|
|
8
8
|
import { debounceTime } from 'rxjs';
|
|
9
|
-
import { CuraApiService } from '@rededor/
|
|
10
|
-
import { CuraIconComponent } from '@rededor/
|
|
11
|
-
import { CuraLoaderCircleComponent } from '@rededor/
|
|
9
|
+
import { CuraApiService } from '@rededor/cura-angular/api';
|
|
10
|
+
import { CuraIconComponent } from '@rededor/cura-angular/icons/cura-icon';
|
|
11
|
+
import { CuraLoaderCircleComponent } from '@rededor/cura-angular/loaders/cura-loader-circle';
|
|
12
12
|
|
|
13
13
|
class SearchComponent {
|
|
14
14
|
constructor() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rededor-site-front-end-lib-components-search.mjs","sources":["../../../projects/site-front-end-lib/components/search/search.component.ts","../../../projects/site-front-end-lib/components/search/search.component.html","../../../projects/site-front-end-lib/components/search/rededor-site-front-end-lib-components-search.ts"],"sourcesContent":["import { CommonModule, isPlatformBrowser } from '@angular/common';\r\nimport { AfterViewInit, Component, ElementRef, HostBinding, OnDestroy, OnInit, PLATFORM_ID, input, output, viewChild, inject, effect } from '@angular/core';\r\nimport { ReactiveFormsModule, UntypedFormControl } from '@angular/forms';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { debounceTime, Subscription } from 'rxjs';\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 { CuraLoaderCircleComponent } from '@rededor/site-front-end-lib/cura/loaders/cura-loader-circle';\r\n\r\n@Component({\r\n selector: 'rdsite-search',\r\n imports: [CommonModule, ReactiveFormsModule, CuraIconComponent, CuraLoaderCircleComponent],\r\n templateUrl: './search.component.html',\r\n styleUrl: './search.component.scss',\r\n})\r\nexport class SearchComponent implements OnInit, OnDestroy, AfterViewInit {\r\n private deviceService = inject(DeviceDetectorService);\r\n private curaApiService = inject(CuraApiService);\r\n private platformId = inject(PLATFORM_ID);\r\n\r\n readonly searchControl = input(new UntypedFormControl(''));\r\n readonly showSearchButtonMobile = input(true);\r\n readonly debounceTime = input(300);\r\n readonly label = input<string>('');\r\n readonly canClean = input(false);\r\n readonly controlBlur = output();\r\n readonly controlFocus = output();\r\n readonly controlReset = output();\r\n readonly termChange = output<string>();\r\n readonly enterPress = output<string>();\r\n\r\n readonly enable = input(true);\r\n readonly loading = input(false);\r\n\r\n readonly setFocus = input(false);\r\n focus = false;\r\n\r\n controlSubscription: Subscription | null = null;\r\n\r\n readonly searchInput = viewChild<ElementRef<HTMLInputElement>>('searchInput');\r\n\r\n @HostBinding('style') style = {\r\n '--color': this.curaApiService.theme.colors.getColor('neutral-black'),\r\n };\r\n\r\n constructor() {\r\n effect(() => {\r\n this.setControlState();\r\n });\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n if (this.setFocus()) this.setInitialFocus();\r\n }\r\n\r\n ngOnInit() {\r\n this.controlSubscription = this.searchControl()\r\n .valueChanges.pipe(debounceTime(this.debounceTime()))\r\n .subscribe((term) => this.onChange(term));\r\n }\r\n\r\n setInitialFocus() {\r\n if (isPlatformBrowser(this.platformId)) {\r\n // Usar setTimeout para evitar mudanças de expressão após verificação\r\n setTimeout(() => {\r\n this.searchInput()?.nativeElement?.focus();\r\n this.onFocus();\r\n }, 10);\r\n }\r\n }\r\n\r\n onChange(term: string) {\r\n this.termChange.emit(term);\r\n }\r\n\r\n onFocus() {\r\n this.focus = true;\r\n this.controlFocus.emit();\r\n }\r\n\r\n onBlur() {\r\n this.focus = false;\r\n this.controlBlur.emit();\r\n }\r\n\r\n onSubmit($event: any) {\r\n if (this.searchControl().value) {\r\n this.enterPress.emit($event.target.value);\r\n if (this.deviceService.isMobile() && this.showSearchButtonMobile()) {\r\n this.focus = false;\r\n $event.target.blur();\r\n }\r\n }\r\n }\r\n\r\n onSubmitByClick() {\r\n const searchControl = this.searchControl();\r\n if (searchControl.value) {\r\n this.enterPress.emit(searchControl.value);\r\n if (this.deviceService.isMobile() && this.showSearchButtonMobile()) {\r\n this.focus = false;\r\n }\r\n }\r\n }\r\n\r\n setControlState() {\r\n if (this.enable()) {\r\n this.searchControl().enable();\r\n } else {\r\n this.searchControl().disable();\r\n }\r\n }\r\n\r\n clean() {\r\n this.searchControl().setValue('');\r\n this.controlReset.emit();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.controlSubscription?.unsubscribe();\r\n }\r\n}\r\n","<div class=\"rdsite-search-control\" [ngClass]=\"{ disabled: !enable || !searchControl().enabled, focus: focus }\">\r\n <label class=\"label-hidden\">{{ label() }}</label>\r\n <input\r\n #searchInput\r\n class=\"rdsite-search-control-input\"\r\n [type]=\"'text'\"\r\n name=\"term\"\r\n autocomplete=\"off\"\r\n [placeholder]=\"label()\"\r\n [formControl]=\"searchControl()\"\r\n (focus)=\"onFocus()\"\r\n (blur)=\"onBlur()\"\r\n (keyup.enter)=\"onSubmit($event)\"\r\n enterkeyhint=\"search\"\r\n (search)=\"onSubmit($event)\"\r\n />\r\n\r\n <div class=\"rdsite-search-control-icon\">\r\n <cura-icon\r\n name=\"closeCircle\"\r\n size=\"20\"\r\n color=\"primary-base\"\r\n (click)=\"clean()\"\r\n class=\"close\"\r\n [ngClass]=\"{ active: (searchControl().value || canClean()) && !loading() }\"\r\n ></cura-icon>\r\n <cura-icon name=\"search\" size=\"20\" color=\"primary-base\" (click)=\"onSubmitByClick()\" class=\"search\" [ngClass]=\"{ active: !loading() }\"></cura-icon>\r\n @if (loading()) {\r\n <cura-loader-circle color=\"primary\" size=\"small\"></cura-loader-circle>\r\n }\r\n </div>\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
|
+
{"version":3,"file":"rededor-site-front-end-lib-components-search.mjs","sources":["../../../projects/site-front-end-lib/components/search/search.component.ts","../../../projects/site-front-end-lib/components/search/search.component.html","../../../projects/site-front-end-lib/components/search/rededor-site-front-end-lib-components-search.ts"],"sourcesContent":["import { CommonModule, isPlatformBrowser } from '@angular/common';\r\nimport { AfterViewInit, Component, ElementRef, HostBinding, OnDestroy, OnInit, PLATFORM_ID, input, output, viewChild, inject, effect } from '@angular/core';\r\nimport { ReactiveFormsModule, UntypedFormControl } from '@angular/forms';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { debounceTime, Subscription } from 'rxjs';\r\nimport { CuraApiService } from '@rededor/cura-angular/api';\r\nimport { CuraIconComponent } from '@rededor/cura-angular/icons/cura-icon';\r\nimport { CuraLoaderCircleComponent } from '@rededor/cura-angular/loaders/cura-loader-circle';\r\n\r\n@Component({\r\n selector: 'rdsite-search',\r\n imports: [CommonModule, ReactiveFormsModule, CuraIconComponent, CuraLoaderCircleComponent],\r\n templateUrl: './search.component.html',\r\n styleUrl: './search.component.scss',\r\n})\r\nexport class SearchComponent implements OnInit, OnDestroy, AfterViewInit {\r\n private deviceService = inject(DeviceDetectorService);\r\n private curaApiService = inject(CuraApiService);\r\n private platformId = inject(PLATFORM_ID);\r\n\r\n readonly searchControl = input(new UntypedFormControl(''));\r\n readonly showSearchButtonMobile = input(true);\r\n readonly debounceTime = input(300);\r\n readonly label = input<string>('');\r\n readonly canClean = input(false);\r\n readonly controlBlur = output();\r\n readonly controlFocus = output();\r\n readonly controlReset = output();\r\n readonly termChange = output<string>();\r\n readonly enterPress = output<string>();\r\n\r\n readonly enable = input(true);\r\n readonly loading = input(false);\r\n\r\n readonly setFocus = input(false);\r\n focus = false;\r\n\r\n controlSubscription: Subscription | null = null;\r\n\r\n readonly searchInput = viewChild<ElementRef<HTMLInputElement>>('searchInput');\r\n\r\n @HostBinding('style') style = {\r\n '--color': this.curaApiService.theme.colors.getColor('neutral-black'),\r\n };\r\n\r\n constructor() {\r\n effect(() => {\r\n this.setControlState();\r\n });\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n if (this.setFocus()) this.setInitialFocus();\r\n }\r\n\r\n ngOnInit() {\r\n this.controlSubscription = this.searchControl()\r\n .valueChanges.pipe(debounceTime(this.debounceTime()))\r\n .subscribe((term) => this.onChange(term));\r\n }\r\n\r\n setInitialFocus() {\r\n if (isPlatformBrowser(this.platformId)) {\r\n // Usar setTimeout para evitar mudanças de expressão após verificação\r\n setTimeout(() => {\r\n this.searchInput()?.nativeElement?.focus();\r\n this.onFocus();\r\n }, 10);\r\n }\r\n }\r\n\r\n onChange(term: string) {\r\n this.termChange.emit(term);\r\n }\r\n\r\n onFocus() {\r\n this.focus = true;\r\n this.controlFocus.emit();\r\n }\r\n\r\n onBlur() {\r\n this.focus = false;\r\n this.controlBlur.emit();\r\n }\r\n\r\n onSubmit($event: any) {\r\n if (this.searchControl().value) {\r\n this.enterPress.emit($event.target.value);\r\n if (this.deviceService.isMobile() && this.showSearchButtonMobile()) {\r\n this.focus = false;\r\n $event.target.blur();\r\n }\r\n }\r\n }\r\n\r\n onSubmitByClick() {\r\n const searchControl = this.searchControl();\r\n if (searchControl.value) {\r\n this.enterPress.emit(searchControl.value);\r\n if (this.deviceService.isMobile() && this.showSearchButtonMobile()) {\r\n this.focus = false;\r\n }\r\n }\r\n }\r\n\r\n setControlState() {\r\n if (this.enable()) {\r\n this.searchControl().enable();\r\n } else {\r\n this.searchControl().disable();\r\n }\r\n }\r\n\r\n clean() {\r\n this.searchControl().setValue('');\r\n this.controlReset.emit();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.controlSubscription?.unsubscribe();\r\n }\r\n}\r\n","<div class=\"rdsite-search-control\" [ngClass]=\"{ disabled: !enable || !searchControl().enabled, focus: focus }\">\r\n <label class=\"label-hidden\">{{ label() }}</label>\r\n <input\r\n #searchInput\r\n class=\"rdsite-search-control-input\"\r\n [type]=\"'text'\"\r\n name=\"term\"\r\n autocomplete=\"off\"\r\n [placeholder]=\"label()\"\r\n [formControl]=\"searchControl()\"\r\n (focus)=\"onFocus()\"\r\n (blur)=\"onBlur()\"\r\n (keyup.enter)=\"onSubmit($event)\"\r\n enterkeyhint=\"search\"\r\n (search)=\"onSubmit($event)\"\r\n />\r\n\r\n <div class=\"rdsite-search-control-icon\">\r\n <cura-icon\r\n name=\"closeCircle\"\r\n size=\"20\"\r\n color=\"primary-base\"\r\n (click)=\"clean()\"\r\n class=\"close\"\r\n [ngClass]=\"{ active: (searchControl().value || canClean()) && !loading() }\"\r\n ></cura-icon>\r\n <cura-icon name=\"search\" size=\"20\" color=\"primary-base\" (click)=\"onSubmitByClick()\" class=\"search\" [ngClass]=\"{ active: !loading() }\"></cura-icon>\r\n @if (loading()) {\r\n <cura-loader-circle color=\"primary\" size=\"small\"></cura-loader-circle>\r\n }\r\n </div>\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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"}
|
|
@@ -3,7 +3,7 @@ import { inject, signal, viewChild, viewChildren, input, output, effect, HostBin
|
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import { RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';
|
|
6
|
-
import { CuraApiService } from '@rededor/
|
|
6
|
+
import { CuraApiService } from '@rededor/cura-angular/api';
|
|
7
7
|
import { BehaviorSubject, debounceTime } from 'rxjs';
|
|
8
8
|
import { Router } from '@angular/router';
|
|
9
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rededor-site-front-end-lib-components-section-navigation.mjs","sources":["../../../projects/site-front-end-lib/components/section-navigation/section-navigation.component.ts","../../../projects/site-front-end-lib/components/section-navigation/section-navigation.component.html","../../../projects/site-front-end-lib/components/section-navigation/rededor-site-front-end-lib-components-section-navigation.ts"],"sourcesContent":["import {\r\n Component,\r\n Input,\r\n signal,\r\n effect,\r\n OnInit,\r\n ElementRef,\r\n HostBinding,\r\n HostListener,\r\n OnDestroy,\r\n input,\r\n output,\r\n viewChild,\r\n viewChildren,\r\n inject,\r\n} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RdsiteLinkDirective, SectionNavigationData, SectionNavigationConfig } from '@rededor/site-front-end-lib/core';\r\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\r\nimport { BehaviorSubject, debounceTime, Subscription } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'nav[rdsite-section-navigation]',\r\n imports: [CommonModule, RdsiteLinkDirective],\r\n templateUrl: './section-navigation.component.html',\r\n styleUrls: ['./section-navigation.component.scss'],\r\n})\r\nexport class SectionNavigationComponent implements OnInit, OnDestroy {\r\n private curaApiService = inject(CuraApiService);\r\n private router = inject(Router);\r\n\r\n readonly sections = signal<SectionNavigationData[]>([]);\r\n readonly config = signal<SectionNavigationConfig | undefined>(undefined);\r\n readonly activeSection = signal<string>('');\r\n\r\n isMobile: boolean = window.innerWidth < 768;\r\n\r\n scrollToMenuAnchorSubscription: Subscription | null = null;\r\n scrollToMenuAnchorSubject: BehaviorSubject<string> = new BehaviorSubject('');\r\n\r\n readonly containerEl = viewChild.required<ElementRef<HTMLDivElement>>('containerEl');\r\n readonly anchorsEl = viewChildren<ElementRef<HTMLAnchorElement>>('anchorEl');\r\n\r\n @HostListener('window:resize')\r\n onWindowResize(): void {\r\n this.isMobile = window.innerWidth < 768;\r\n }\r\n\r\n @HostListener('window:scroll')\r\n onWindowScroll(): void {\r\n this.windowScroll();\r\n }\r\n readonly padding = input(0);\r\n readonly headerClass = input('.page-header');\r\n\r\n @Input({ required: true })\r\n set navigationSections(value: SectionNavigationData[]) {\r\n if (!value?.length) {\r\n throw new Error('O SectionNavigationComponent requer pelo menos uma seção.');\r\n }\r\n this.sections.set(value);\r\n\r\n if (!this.activeSection()) {\r\n this.activeSection.set(value[0].id);\r\n }\r\n }\r\n\r\n @Input()\r\n set navigationConfig(value: SectionNavigationConfig) {\r\n this.config.set(value);\r\n }\r\n\r\n readonly ariaLabel = input('Navegação da página');\r\n readonly anchorAdjustment = input(0);\r\n\r\n readonly sectionChange = output<SectionNavigationData>();\r\n\r\n @HostBinding('style') styleBinding = {\r\n '--neutral-purewhite': this.curaApiService.theme.colors.getColor('neutral-purewhite'),\r\n '--neutral-dark': this.curaApiService.theme.colors.getColor('neutral-dark'),\r\n '--neutral-black': this.curaApiService.theme.colors.getColor('neutral-black', 0.16),\r\n '--color-base': this.curaApiService.theme.colors.getColor('primary-base'),\r\n '--font-size': this.curaApiService.theme.fonts.getSize(),\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n };\r\n\r\n readonly navigationMenu = viewChild.required<ElementRef<HTMLUListElement>>('navigationMenu');\r\n\r\n constructor() {\r\n effect(() => {\r\n const sections = this.sections();\r\n if (sections.length && !this.activeSection()) {\r\n this.activeSection.set(sections[0].id);\r\n }\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n const sections = this.sections();\r\n if (!sections.length) {\r\n throw new Error('O SectionNavigationComponent requer pelo menos uma seção.');\r\n }\r\n\r\n if (!this.activeSection()) {\r\n this.activeSection.set(sections[0].id);\r\n }\r\n\r\n // Usado para evitar multiplos calculos desnecessários enquanto scrolla\r\n const TIME_TO_AVOID_UNECESSARY_CALCULATIONS = 50;\r\n this.scrollToMenuAnchorSubscription = this.scrollToMenuAnchorSubject.pipe(debounceTime(TIME_TO_AVOID_UNECESSARY_CALCULATIONS)).subscribe((anchorId) => {\r\n this.scrollToMenuAnchor(anchorId);\r\n });\r\n }\r\n\r\n private windowScroll(): void {\r\n const navHeight = document.querySelector<HTMLElement>('.rdsite-section-navigation')?.getBoundingClientRect().top || 0;\r\n const pageHeaderHeight = document.querySelector<HTMLElement>(this.headerClass())?.getBoundingClientRect().top || 0;\r\n let selectedIndex = -1;\r\n this.sections()?.forEach((section, index) => {\r\n const menuTop = document.querySelector<HTMLElement>(`#${section.id}`)?.getBoundingClientRect().top || 0;\r\n if (menuTop) {\r\n const calc = window.scrollY - menuTop + navHeight + pageHeaderHeight + this.padding();\r\n if (calc >= 0) {\r\n selectedIndex = index;\r\n if (this.sections()?.[selectedIndex]) {\r\n this.activeSection.set(this.sections()?.[selectedIndex]?.id);\r\n }\r\n }\r\n }\r\n });\r\n\r\n if (this.sections()?.[selectedIndex]) {\r\n this.scrollToMenuAnchorSubject.next(this.sections()?.[selectedIndex]?.id);\r\n }\r\n }\r\n\r\n scrollToMenuAnchor(anchorId: string): void {\r\n const anchor = this.anchorsEl().find((anchor) => anchor.nativeElement.id == `anchor-${anchorId}`);\r\n if (!anchor) return;\r\n const distanceFromTheCenterOfTheAnchor = (anchor.nativeElement.offsetLeft + anchor.nativeElement.offsetLeft + anchor?.nativeElement.offsetWidth) / 2;\r\n const containerEl = this.containerEl();\r\n const centerOfContainerEl = containerEl?.nativeElement.clientWidth / 2;\r\n const left = distanceFromTheCenterOfTheAnchor - centerOfContainerEl;\r\n containerEl.nativeElement.scrollTo({\r\n left: left,\r\n behavior: 'smooth',\r\n });\r\n }\r\n\r\n getPath(sectionId: string): string {\r\n return `${this.router.url}#${sectionId}`;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.scrollToMenuAnchorSubscription?.unsubscribe();\r\n }\r\n}\r\n","<nav class=\"rdsite-section-navigation\" [attr.aria-label]=\"ariaLabel()\" [style.top.px]=\"config()?.offsetTop || 0\">\r\n <ul #containerEl class=\"rdsite-section-navigation-menu\" role=\"menubar\">\r\n @for (section of sections(); track section.id) {\r\n @if (section.title) {\r\n <li role=\"none\">\r\n <a\r\n #anchorEl\r\n id=\"anchor-{{ section.id }}\"\r\n role=\"menuitem\"\r\n [href]=\"getPath(section.id)\"\r\n rdsitelink\r\n [anchorAdjustment]=\"anchorAdjustment()\"\r\n [attr.aria-current]=\"activeSection() === section.id ? 'page' : null\"\r\n [attr.aria-label]=\"'Navegar para ' + section.title\"\r\n [ngClass]=\"{ active: activeSection() === section.id }\"\r\n >\r\n {{ section.title }}\r\n </a>\r\n </li>\r\n }\r\n }\r\n </ul>\r\n</nav>\r\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-section-navigation.mjs","sources":["../../../projects/site-front-end-lib/components/section-navigation/section-navigation.component.ts","../../../projects/site-front-end-lib/components/section-navigation/section-navigation.component.html","../../../projects/site-front-end-lib/components/section-navigation/rededor-site-front-end-lib-components-section-navigation.ts"],"sourcesContent":["import {\r\n Component,\r\n Input,\r\n signal,\r\n effect,\r\n OnInit,\r\n ElementRef,\r\n HostBinding,\r\n HostListener,\r\n OnDestroy,\r\n input,\r\n output,\r\n viewChild,\r\n viewChildren,\r\n inject,\r\n} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RdsiteLinkDirective, SectionNavigationData, SectionNavigationConfig } from '@rededor/site-front-end-lib/core';\r\nimport { CuraApiService } from '@rededor/cura-angular/api';\r\nimport { BehaviorSubject, debounceTime, Subscription } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'nav[rdsite-section-navigation]',\r\n imports: [CommonModule, RdsiteLinkDirective],\r\n templateUrl: './section-navigation.component.html',\r\n styleUrls: ['./section-navigation.component.scss'],\r\n})\r\nexport class SectionNavigationComponent implements OnInit, OnDestroy {\r\n private curaApiService = inject(CuraApiService);\r\n private router = inject(Router);\r\n\r\n readonly sections = signal<SectionNavigationData[]>([]);\r\n readonly config = signal<SectionNavigationConfig | undefined>(undefined);\r\n readonly activeSection = signal<string>('');\r\n\r\n isMobile: boolean = window.innerWidth < 768;\r\n\r\n scrollToMenuAnchorSubscription: Subscription | null = null;\r\n scrollToMenuAnchorSubject: BehaviorSubject<string> = new BehaviorSubject('');\r\n\r\n readonly containerEl = viewChild.required<ElementRef<HTMLDivElement>>('containerEl');\r\n readonly anchorsEl = viewChildren<ElementRef<HTMLAnchorElement>>('anchorEl');\r\n\r\n @HostListener('window:resize')\r\n onWindowResize(): void {\r\n this.isMobile = window.innerWidth < 768;\r\n }\r\n\r\n @HostListener('window:scroll')\r\n onWindowScroll(): void {\r\n this.windowScroll();\r\n }\r\n readonly padding = input(0);\r\n readonly headerClass = input('.page-header');\r\n\r\n @Input({ required: true })\r\n set navigationSections(value: SectionNavigationData[]) {\r\n if (!value?.length) {\r\n throw new Error('O SectionNavigationComponent requer pelo menos uma seção.');\r\n }\r\n this.sections.set(value);\r\n\r\n if (!this.activeSection()) {\r\n this.activeSection.set(value[0].id);\r\n }\r\n }\r\n\r\n @Input()\r\n set navigationConfig(value: SectionNavigationConfig) {\r\n this.config.set(value);\r\n }\r\n\r\n readonly ariaLabel = input('Navegação da página');\r\n readonly anchorAdjustment = input(0);\r\n\r\n readonly sectionChange = output<SectionNavigationData>();\r\n\r\n @HostBinding('style') styleBinding = {\r\n '--neutral-purewhite': this.curaApiService.theme.colors.getColor('neutral-purewhite'),\r\n '--neutral-dark': this.curaApiService.theme.colors.getColor('neutral-dark'),\r\n '--neutral-black': this.curaApiService.theme.colors.getColor('neutral-black', 0.16),\r\n '--color-base': this.curaApiService.theme.colors.getColor('primary-base'),\r\n '--font-size': this.curaApiService.theme.fonts.getSize(),\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n };\r\n\r\n readonly navigationMenu = viewChild.required<ElementRef<HTMLUListElement>>('navigationMenu');\r\n\r\n constructor() {\r\n effect(() => {\r\n const sections = this.sections();\r\n if (sections.length && !this.activeSection()) {\r\n this.activeSection.set(sections[0].id);\r\n }\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n const sections = this.sections();\r\n if (!sections.length) {\r\n throw new Error('O SectionNavigationComponent requer pelo menos uma seção.');\r\n }\r\n\r\n if (!this.activeSection()) {\r\n this.activeSection.set(sections[0].id);\r\n }\r\n\r\n // Usado para evitar multiplos calculos desnecessários enquanto scrolla\r\n const TIME_TO_AVOID_UNECESSARY_CALCULATIONS = 50;\r\n this.scrollToMenuAnchorSubscription = this.scrollToMenuAnchorSubject.pipe(debounceTime(TIME_TO_AVOID_UNECESSARY_CALCULATIONS)).subscribe((anchorId) => {\r\n this.scrollToMenuAnchor(anchorId);\r\n });\r\n }\r\n\r\n private windowScroll(): void {\r\n const navHeight = document.querySelector<HTMLElement>('.rdsite-section-navigation')?.getBoundingClientRect().top || 0;\r\n const pageHeaderHeight = document.querySelector<HTMLElement>(this.headerClass())?.getBoundingClientRect().top || 0;\r\n let selectedIndex = -1;\r\n this.sections()?.forEach((section, index) => {\r\n const menuTop = document.querySelector<HTMLElement>(`#${section.id}`)?.getBoundingClientRect().top || 0;\r\n if (menuTop) {\r\n const calc = window.scrollY - menuTop + navHeight + pageHeaderHeight + this.padding();\r\n if (calc >= 0) {\r\n selectedIndex = index;\r\n if (this.sections()?.[selectedIndex]) {\r\n this.activeSection.set(this.sections()?.[selectedIndex]?.id);\r\n }\r\n }\r\n }\r\n });\r\n\r\n if (this.sections()?.[selectedIndex]) {\r\n this.scrollToMenuAnchorSubject.next(this.sections()?.[selectedIndex]?.id);\r\n }\r\n }\r\n\r\n scrollToMenuAnchor(anchorId: string): void {\r\n const anchor = this.anchorsEl().find((anchor) => anchor.nativeElement.id == `anchor-${anchorId}`);\r\n if (!anchor) return;\r\n const distanceFromTheCenterOfTheAnchor = (anchor.nativeElement.offsetLeft + anchor.nativeElement.offsetLeft + anchor?.nativeElement.offsetWidth) / 2;\r\n const containerEl = this.containerEl();\r\n const centerOfContainerEl = containerEl?.nativeElement.clientWidth / 2;\r\n const left = distanceFromTheCenterOfTheAnchor - centerOfContainerEl;\r\n containerEl.nativeElement.scrollTo({\r\n left: left,\r\n behavior: 'smooth',\r\n });\r\n }\r\n\r\n getPath(sectionId: string): string {\r\n return `${this.router.url}#${sectionId}`;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.scrollToMenuAnchorSubscription?.unsubscribe();\r\n }\r\n}\r\n","<nav class=\"rdsite-section-navigation\" [attr.aria-label]=\"ariaLabel()\" [style.top.px]=\"config()?.offsetTop || 0\">\r\n <ul #containerEl class=\"rdsite-section-navigation-menu\" role=\"menubar\">\r\n @for (section of sections(); track section.id) {\r\n @if (section.title) {\r\n <li role=\"none\">\r\n <a\r\n #anchorEl\r\n id=\"anchor-{{ section.id }}\"\r\n role=\"menuitem\"\r\n [href]=\"getPath(section.id)\"\r\n rdsitelink\r\n [anchorAdjustment]=\"anchorAdjustment()\"\r\n [attr.aria-current]=\"activeSection() === section.id ? 'page' : null\"\r\n [attr.aria-label]=\"'Navegar para ' + section.title\"\r\n [ngClass]=\"{ active: activeSection() === section.id }\"\r\n >\r\n {{ section.title }}\r\n </a>\r\n </li>\r\n }\r\n }\r\n </ul>\r\n</nav>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { inject, HostBinding, Component, input, output } from '@angular/core';
|
|
3
3
|
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { CuraApiService } from '@rededor/
|
|
4
|
+
import { CuraApiService } from '@rededor/cura-angular/api';
|
|
5
5
|
import { RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';
|
|
6
|
-
import { CuraIconComponent } from '@rededor/
|
|
6
|
+
import { CuraIconComponent } from '@rededor/cura-angular/icons/cura-icon';
|
|
7
7
|
import { WhatsappComponent } from '@rededor/site-front-end-lib/components/whatsapp';
|
|
8
8
|
|
|
9
9
|
class SideCtasComponent {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rededor-site-front-end-lib-components-side-ctas.mjs","sources":["../../../projects/site-front-end-lib/components/side-ctas/side-ctas.component.ts","../../../projects/site-front-end-lib/components/side-ctas/side-ctas.component.html","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-bottom/side-ctas-bottom.component.ts","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-bottom/side-ctas-bottom.component.html","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-right-bottom/side-ctas-right-bottom.component.ts","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-right-bottom/side-ctas-right-bottom.component.html","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-right-middle/side-ctas-right-middle.component.ts","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-right-middle/side-ctas-right-middle.component.html","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-right-top/side-ctas-right-top.component.ts","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-right-top/side-ctas-right-top.component.html","../../../projects/site-front-end-lib/components/side-ctas/rededor-site-front-end-lib-components-side-ctas.ts"],"sourcesContent":["import { Component, HostBinding, inject } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\r\n\r\n@Component({\r\n selector: 'rdsite-side-ctas',\r\n imports: [CommonModule],\r\n templateUrl: './side-ctas.component.html',\r\n styleUrl: './side-ctas.component.scss',\r\n})\r\nexport class SideCtasComponent {\r\n private curaApiService = inject(CuraApiService);\r\n\r\n @HostBinding('style') style = {\r\n '--color-right': this.curaApiService.theme.colors.getColor('primary-darker'),\r\n };\r\n}\r\n","<div class=\"rdsite-side-ctas-right\">\r\n <div class=\"rdsite-side-ctas-right-top\">\r\n <ng-content select=\"rdsite-side-ctas-right-top\"></ng-content>\r\n </div>\r\n <div class=\"rdsite-side-ctas-right-middle\">\r\n <ng-content select=\"rdsite-side-ctas-right-middle\"></ng-content>\r\n </div>\r\n <div class=\"rdsite-side-ctas-right-bottom\">\r\n <ng-content select=\"rdsite-side-ctas-right-bottom\"></ng-content>\r\n </div>\r\n</div>\r\n\r\n<div class=\"rdsite-side-ctas-bottom\">\r\n <div class=\"rdsite-side-ctas-bottom-container\">\r\n <ng-content select=\"rdsite-side-ctas-bottom\"></ng-content>\r\n </div>\r\n</div>\r\n","import { Component, HostBinding, output, inject, input } from '@angular/core';\r\nimport { RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';\r\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\r\nimport { SideCta } from '../../models/SideCta.model';\r\nimport { CuraIconComponent } from '@rededor/site-front-end-lib/cura/icons/cura-icon';\r\n\r\n@Component({\r\n selector: 'rdsite-side-ctas-bottom',\r\n imports: [RdsiteLinkDirective, CuraIconComponent],\r\n templateUrl: './side-ctas-bottom.component.html',\r\n styleUrl: './side-ctas-bottom.component.scss',\r\n})\r\nexport class SideCtasBottomComponent {\r\n private curaApiService = inject(CuraApiService);\r\n\r\n readonly ctas = input<SideCta[]>([]);\r\n readonly sideCtaBottomItemClick = output<Event>();\r\n\r\n @HostBinding('style') style = {\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n '--font-color': this.curaApiService.theme.colors.getColor('neutral-black'),\r\n '--bg-color': this.curaApiService.theme.colors.getColor('primary-dark'),\r\n '--bg-cta-color': this.curaApiService.theme.colors.getColor('accent-base'),\r\n '--bg-cta-hover-color': this.curaApiService.theme.colors.getColor('accent-dark'),\r\n '--bg-cta-active-color': this.curaApiService.theme.colors.getColor('accent-darker'),\r\n };\r\n\r\n sideCtaBottomItemClicked(event: Event) {\r\n this.sideCtaBottomItemClick.emit(event);\r\n }\r\n}\r\n","@if (ctas().length) {\r\n @for (cta of ctas(); track cta.text) {\r\n <a [href]=\"cta.url\" rdsitelink (click)=\"sideCtaBottomItemClicked($event)\">\r\n <cura-icon [name]=\"cta.icon\" size=\"20\" color=\"neutral-black\"></cura-icon>\r\n <span>{{ cta.text }}</span>\r\n </a>\r\n }\r\n}\r\n","import { Component, input, output } from '@angular/core';\r\nimport { WhatsappComponent } from '@rededor/site-front-end-lib/components/whatsapp';\r\n\r\n@Component({\r\n selector: 'rdsite-side-ctas-right-bottom',\r\n imports: [WhatsappComponent],\r\n templateUrl: './side-ctas-right-bottom.component.html',\r\n styleUrl: './side-ctas-right-bottom.component.scss',\r\n})\r\nexport class SideCtasRightBottomComponent {\r\n readonly link = input<string>('');\r\n readonly imgUrl = input<string>('');\r\n readonly text = input<string>('');\r\n readonly bgColor = input<string>('#1DCD52');\r\n readonly bgHover = input<string>('#016720');\r\n readonly borderTop = input<boolean>(false);\r\n\r\n readonly sideCtaRightBottomItemClick = output<Event>();\r\n\r\n whatsappClicked(event: Event) {\r\n this.sideCtaRightBottomItemClick.emit(event);\r\n }\r\n}\r\n","@if (link() && imgUrl()) {\r\n <rdsite-whatsapp\r\n [link]=\"link()\"\r\n [imgUrl]=\"imgUrl()\"\r\n [text]=\"text()\"\r\n [bgColor]=\"bgColor()\"\r\n [bgHover]=\"bgHover()\"\r\n [borderTop]=\"borderTop()\"\r\n (whatsappClick)=\"whatsappClicked($event)\"\r\n ></rdsite-whatsapp>\r\n}\r\n","import { Component, HostBinding, output, inject, input } from '@angular/core';\r\nimport { RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';\r\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\r\nimport { SideCta } from '../../models/SideCta.model';\r\nimport { CuraIconComponent } from '@rededor/site-front-end-lib/cura/icons/cura-icon';\r\n\r\n@Component({\r\n selector: 'rdsite-side-ctas-right-middle',\r\n imports: [RdsiteLinkDirective, CuraIconComponent],\r\n templateUrl: './side-ctas-right-middle.component.html',\r\n styleUrl: './side-ctas-right-middle.component.scss',\r\n})\r\nexport class SideCtasRightMiddleComponent {\r\n private curaApiService = inject(CuraApiService);\r\n\r\n readonly ctas = input<SideCta[]>([]);\r\n readonly sideCtaRightMiddleItemClick = output<Event>();\r\n\r\n @HostBinding('style') style = {\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n '--icon-bg-color': this.curaApiService.theme.colors.getColor('primary-base'),\r\n '--font-color': this.curaApiService.theme.colors.getColor('primary-lighter'),\r\n '--font-hover': this.curaApiService.theme.colors.getColor('neutral-white'),\r\n '--font-active': this.curaApiService.theme.colors.getColor('primary-light'),\r\n };\r\n\r\n sideCtaRightMiddleItemClicked(event: Event) {\r\n this.sideCtaRightMiddleItemClick.emit(event);\r\n }\r\n}\r\n","@if (ctas().length) {\r\n @for (cta of ctas(); track cta.text) {\r\n <a class=\"right-middle-cta\" [href]=\"cta.url\" rdsitelink (click)=\"sideCtaRightMiddleItemClicked($event)\">\r\n <div class=\"right-middle-cta-icon\">\r\n <cura-icon [name]=\"cta.icon\" size=\"24\" color=\"neutral-purewhite\"></cura-icon>\r\n </div>\r\n <span>{{ cta.text }}</span>\r\n </a>\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'rdsite-side-ctas-right-top',\r\n imports: [],\r\n templateUrl: './side-ctas-right-top.component.html',\r\n styleUrl: './side-ctas-right-top.component.scss',\r\n})\r\nexport class SideCtasRightTopComponent {}\r\n","<ng-content></ng-content>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;MAUa,iBAAiB,CAAA;AAN9B,IAAA,WAAA,GAAA;AAOU,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;AAEzB,QAAA,IAAA,CAAA,KAAK,GAAG;AAC5B,YAAA,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC;SAC7E;AACF,IAAA;+GANY,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,YAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECV9B,2oBAiBA,EAAA,MAAA,EAAA,CAAA,+zCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDXY,YAAY,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAIX,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAN7B,SAAS;+BACE,kBAAkB,EAAA,OAAA,EACnB,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,2oBAAA,EAAA,MAAA,EAAA,CAAA,+zCAAA,CAAA,EAAA;;sBAOtB,WAAW;uBAAC,OAAO;;;MEDT,uBAAuB,CAAA;AANpC,IAAA,WAAA,GAAA;AAOU,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;AAEtC,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAY,EAAE,gDAAC;QAC3B,IAAA,CAAA,sBAAsB,GAAG,MAAM,EAAS;AAE3B,QAAA,IAAA,CAAA,KAAK,GAAG;AAC5B,YAAA,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;AAC9D,YAAA,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC;AAC1E,YAAA,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;AACvE,YAAA,gBAAgB,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC;AAC1E,YAAA,sBAAsB,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC;AAChF,YAAA,uBAAuB,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC;SACpF;AAKF,IAAA;AAHC,IAAA,wBAAwB,CAAC,KAAY,EAAA;AACnC,QAAA,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC;IACzC;+GAjBW,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,YAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECZpC,mTAQA,EAAA,MAAA,EAAA,CAAA,uuBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDAY,mBAAmB,8HAAE,iBAAiB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,MAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAIrC,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBANnC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,yBAAyB,EAAA,OAAA,EAC1B,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,EAAA,QAAA,EAAA,mTAAA,EAAA,MAAA,EAAA,CAAA,uuBAAA,CAAA,EAAA;;sBAUhD,WAAW;uBAAC,OAAO;;;METT,4BAA4B,CAAA;AANzC,IAAA,WAAA,GAAA;AAOW,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAS,EAAE,gDAAC;AACxB,QAAA,IAAA,CAAA,MAAM,GAAG,KAAK,CAAS,EAAE,kDAAC;AAC1B,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAS,EAAE,gDAAC;AACxB,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAAS,SAAS,mDAAC;AAClC,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAAS,SAAS,mDAAC;AAClC,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAU,KAAK,qDAAC;QAEjC,IAAA,CAAA,2BAA2B,GAAG,MAAM,EAAS;AAKvD,IAAA;AAHC,IAAA,eAAe,CAAC,KAAY,EAAA;AAC1B,QAAA,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC;IAC9C;+GAZW,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAA5B,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,2BAAA,EAAA,6BAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECTzC,uTAWA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDNY,iBAAiB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,QAAA,EAAA,MAAA,EAAA,SAAA,EAAA,SAAA,EAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAIhB,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBANxC,SAAS;+BACE,+BAA+B,EAAA,OAAA,EAChC,CAAC,iBAAiB,CAAC,EAAA,QAAA,EAAA,uTAAA,EAAA;;;MEOjB,4BAA4B,CAAA;AANzC,IAAA,WAAA,GAAA;AAOU,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;AAEtC,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAY,EAAE,gDAAC;QAC3B,IAAA,CAAA,2BAA2B,GAAG,MAAM,EAAS;AAEhC,QAAA,IAAA,CAAA,KAAK,GAAG;AAC5B,YAAA,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;AAC9D,YAAA,iBAAiB,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;AAC5E,YAAA,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC;AAC5E,YAAA,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC;AAC1E,YAAA,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC;SAC5E;AAKF,IAAA;AAHC,IAAA,6BAA6B,CAAC,KAAY,EAAA;AACxC,QAAA,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC;IAC9C;+GAhBW,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,2BAAA,EAAA,6BAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,YAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECZzC,wZAUA,EAAA,MAAA,EAAA,CAAA,uuBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDFY,mBAAmB,8HAAE,iBAAiB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,MAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAIrC,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBANxC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,+BAA+B,EAAA,OAAA,EAChC,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,EAAA,QAAA,EAAA,wZAAA,EAAA,MAAA,EAAA,CAAA,uuBAAA,CAAA,EAAA;;sBAUhD,WAAW;uBAAC,OAAO;;;MEVT,yBAAyB,CAAA;+GAAzB,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,sFCRtC,+BACA,EAAA,MAAA,EAAA,CAAA,uFAAA,CAAA,EAAA,CAAA,CAAA;;4FDOa,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBANrC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,4BAA4B,WAC7B,EAAE,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,uFAAA,CAAA,EAAA;;;AEJb;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"rededor-site-front-end-lib-components-side-ctas.mjs","sources":["../../../projects/site-front-end-lib/components/side-ctas/side-ctas.component.ts","../../../projects/site-front-end-lib/components/side-ctas/side-ctas.component.html","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-bottom/side-ctas-bottom.component.ts","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-bottom/side-ctas-bottom.component.html","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-right-bottom/side-ctas-right-bottom.component.ts","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-right-bottom/side-ctas-right-bottom.component.html","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-right-middle/side-ctas-right-middle.component.ts","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-right-middle/side-ctas-right-middle.component.html","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-right-top/side-ctas-right-top.component.ts","../../../projects/site-front-end-lib/components/side-ctas/components/side-ctas-right-top/side-ctas-right-top.component.html","../../../projects/site-front-end-lib/components/side-ctas/rededor-site-front-end-lib-components-side-ctas.ts"],"sourcesContent":["import { Component, HostBinding, inject } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CuraApiService } from '@rededor/cura-angular/api';\r\n\r\n@Component({\r\n selector: 'rdsite-side-ctas',\r\n imports: [CommonModule],\r\n templateUrl: './side-ctas.component.html',\r\n styleUrl: './side-ctas.component.scss',\r\n})\r\nexport class SideCtasComponent {\r\n private curaApiService = inject(CuraApiService);\r\n\r\n @HostBinding('style') style = {\r\n '--color-right': this.curaApiService.theme.colors.getColor('primary-darker'),\r\n };\r\n}\r\n","<div class=\"rdsite-side-ctas-right\">\r\n <div class=\"rdsite-side-ctas-right-top\">\r\n <ng-content select=\"rdsite-side-ctas-right-top\"></ng-content>\r\n </div>\r\n <div class=\"rdsite-side-ctas-right-middle\">\r\n <ng-content select=\"rdsite-side-ctas-right-middle\"></ng-content>\r\n </div>\r\n <div class=\"rdsite-side-ctas-right-bottom\">\r\n <ng-content select=\"rdsite-side-ctas-right-bottom\"></ng-content>\r\n </div>\r\n</div>\r\n\r\n<div class=\"rdsite-side-ctas-bottom\">\r\n <div class=\"rdsite-side-ctas-bottom-container\">\r\n <ng-content select=\"rdsite-side-ctas-bottom\"></ng-content>\r\n </div>\r\n</div>\r\n","import { Component, HostBinding, output, inject, input } from '@angular/core';\r\nimport { RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';\r\nimport { CuraApiService } from '@rededor/cura-angular/api';\r\nimport { SideCta } from '../../models/SideCta.model';\r\nimport { CuraIconComponent } from '@rededor/cura-angular/icons/cura-icon';\r\n\r\n@Component({\r\n selector: 'rdsite-side-ctas-bottom',\r\n imports: [RdsiteLinkDirective, CuraIconComponent],\r\n templateUrl: './side-ctas-bottom.component.html',\r\n styleUrl: './side-ctas-bottom.component.scss',\r\n})\r\nexport class SideCtasBottomComponent {\r\n private curaApiService = inject(CuraApiService);\r\n\r\n readonly ctas = input<SideCta[]>([]);\r\n readonly sideCtaBottomItemClick = output<Event>();\r\n\r\n @HostBinding('style') style = {\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n '--font-color': this.curaApiService.theme.colors.getColor('neutral-black'),\r\n '--bg-color': this.curaApiService.theme.colors.getColor('primary-dark'),\r\n '--bg-cta-color': this.curaApiService.theme.colors.getColor('accent-base'),\r\n '--bg-cta-hover-color': this.curaApiService.theme.colors.getColor('accent-dark'),\r\n '--bg-cta-active-color': this.curaApiService.theme.colors.getColor('accent-darker'),\r\n };\r\n\r\n sideCtaBottomItemClicked(event: Event) {\r\n this.sideCtaBottomItemClick.emit(event);\r\n }\r\n}\r\n","@if (ctas().length) {\r\n @for (cta of ctas(); track cta.text) {\r\n <a [href]=\"cta.url\" rdsitelink (click)=\"sideCtaBottomItemClicked($event)\">\r\n <cura-icon [name]=\"cta.icon\" size=\"20\" color=\"neutral-black\"></cura-icon>\r\n <span>{{ cta.text }}</span>\r\n </a>\r\n }\r\n}\r\n","import { Component, input, output } from '@angular/core';\r\nimport { WhatsappComponent } from '@rededor/site-front-end-lib/components/whatsapp';\r\n\r\n@Component({\r\n selector: 'rdsite-side-ctas-right-bottom',\r\n imports: [WhatsappComponent],\r\n templateUrl: './side-ctas-right-bottom.component.html',\r\n styleUrl: './side-ctas-right-bottom.component.scss',\r\n})\r\nexport class SideCtasRightBottomComponent {\r\n readonly link = input<string>('');\r\n readonly imgUrl = input<string>('');\r\n readonly text = input<string>('');\r\n readonly bgColor = input<string>('#1DCD52');\r\n readonly bgHover = input<string>('#016720');\r\n readonly borderTop = input<boolean>(false);\r\n\r\n readonly sideCtaRightBottomItemClick = output<Event>();\r\n\r\n whatsappClicked(event: Event) {\r\n this.sideCtaRightBottomItemClick.emit(event);\r\n }\r\n}\r\n","@if (link() && imgUrl()) {\r\n <rdsite-whatsapp\r\n [link]=\"link()\"\r\n [imgUrl]=\"imgUrl()\"\r\n [text]=\"text()\"\r\n [bgColor]=\"bgColor()\"\r\n [bgHover]=\"bgHover()\"\r\n [borderTop]=\"borderTop()\"\r\n (whatsappClick)=\"whatsappClicked($event)\"\r\n ></rdsite-whatsapp>\r\n}\r\n","import { Component, HostBinding, output, inject, input } from '@angular/core';\r\nimport { RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';\r\nimport { CuraApiService } from '@rededor/cura-angular/api';\r\nimport { SideCta } from '../../models/SideCta.model';\r\nimport { CuraIconComponent } from '@rededor/cura-angular/icons/cura-icon';\r\n\r\n@Component({\r\n selector: 'rdsite-side-ctas-right-middle',\r\n imports: [RdsiteLinkDirective, CuraIconComponent],\r\n templateUrl: './side-ctas-right-middle.component.html',\r\n styleUrl: './side-ctas-right-middle.component.scss',\r\n})\r\nexport class SideCtasRightMiddleComponent {\r\n private curaApiService = inject(CuraApiService);\r\n\r\n readonly ctas = input<SideCta[]>([]);\r\n readonly sideCtaRightMiddleItemClick = output<Event>();\r\n\r\n @HostBinding('style') style = {\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n '--icon-bg-color': this.curaApiService.theme.colors.getColor('primary-base'),\r\n '--font-color': this.curaApiService.theme.colors.getColor('primary-lighter'),\r\n '--font-hover': this.curaApiService.theme.colors.getColor('neutral-white'),\r\n '--font-active': this.curaApiService.theme.colors.getColor('primary-light'),\r\n };\r\n\r\n sideCtaRightMiddleItemClicked(event: Event) {\r\n this.sideCtaRightMiddleItemClick.emit(event);\r\n }\r\n}\r\n","@if (ctas().length) {\r\n @for (cta of ctas(); track cta.text) {\r\n <a class=\"right-middle-cta\" [href]=\"cta.url\" rdsitelink (click)=\"sideCtaRightMiddleItemClicked($event)\">\r\n <div class=\"right-middle-cta-icon\">\r\n <cura-icon [name]=\"cta.icon\" size=\"24\" color=\"neutral-purewhite\"></cura-icon>\r\n </div>\r\n <span>{{ cta.text }}</span>\r\n </a>\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'rdsite-side-ctas-right-top',\r\n imports: [],\r\n templateUrl: './side-ctas-right-top.component.html',\r\n styleUrl: './side-ctas-right-top.component.scss',\r\n})\r\nexport class SideCtasRightTopComponent {}\r\n","<ng-content></ng-content>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { inject, PLATFORM_ID, DOCUMENT, signal, input, viewChildren, output, HostBinding, HostListener, Input, Component } from '@angular/core';
|
|
3
3
|
import { RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';
|
|
4
|
-
import { CuraCardComponent } from '@rededor/
|
|
5
|
-
import { CuraParagraphComponent } from '@rededor/
|
|
6
|
-
import { CuraApiService } from '@rededor/
|
|
4
|
+
import { CuraCardComponent } from '@rededor/cura-angular/cards/cura-card';
|
|
5
|
+
import { CuraParagraphComponent } from '@rededor/cura-angular/texts/cura-paragraph';
|
|
6
|
+
import { CuraApiService } from '@rededor/cura-angular/api';
|
|
7
7
|
import { Router } from '@angular/router';
|
|
8
8
|
import { Location, isPlatformBrowser } from '@angular/common';
|
|
9
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rededor-site-front-end-lib-components-sidebar-navigation.mjs","sources":["../../../projects/site-front-end-lib/components/sidebar-navigation/sidebar-navigation.component.ts","../../../projects/site-front-end-lib/components/sidebar-navigation/sidebar-navigation.component.html","../../../projects/site-front-end-lib/components/sidebar-navigation/rededor-site-front-end-lib-components-sidebar-navigation.ts"],"sourcesContent":["import {\r\n Component,\r\n ElementRef,\r\n Input,\r\n signal,\r\n HostListener,\r\n HostBinding,\r\n inject,\r\n input,\r\n output,\r\n viewChildren,\r\n DOCUMENT,\r\n PLATFORM_ID,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { RdsiteLinkDirective, SectionNavigationConfig, SectionNavigationData } from '@rededor/site-front-end-lib/core';\r\nimport { CuraCardComponent } from '@rededor/site-front-end-lib/cura/cards/cura-card';\r\nimport { CuraParagraphComponent } from '@rededor/site-front-end-lib/cura/texts/cura-paragraph';\r\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\r\nimport { Router } from '@angular/router';\r\nimport { isPlatformBrowser, Location } from '@angular/common';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'nav[rdsite-sidebar-navigation]',\r\n imports: [RdsiteLinkDirective, CuraCardComponent, CuraParagraphComponent],\r\n templateUrl: './sidebar-navigation.component.html',\r\n styleUrl: './sidebar-navigation.component.scss',\r\n})\r\nexport class SidebarNavigationComponent implements AfterViewInit {\r\n private readonly curaApiService = inject(CuraApiService);\r\n private router = inject(Router);\r\n private location = inject(Location);\r\n private platformId = inject(PLATFORM_ID);\r\n private document = inject<Document>(DOCUMENT);\r\n\r\n readonly sections = signal<SectionNavigationData[]>([]);\r\n readonly config = signal<SectionNavigationConfig | undefined>(undefined);\r\n readonly activeSection = signal<string>('');\r\n public selectedIndex = signal<number>(0);\r\n public defaultAnchorAdjustment = signal(0);\r\n readonly isStarTheme = input(false);\r\n\r\n private menuHeaderHeight = 0;\r\n\r\n readonly anchorAdjustment = input(0);\r\n readonly title = input('Nesta página');\r\n readonly ariaLabel = input('Navegação da página');\r\n readonly padding = input(-50);\r\n\r\n @Input({ required: true })\r\n set navigationSections(value: SectionNavigationData[]) {\r\n if (!value?.length) {\r\n throw new Error('O SectionNavigationComponent requer pelo menos uma seção.');\r\n }\r\n this.sections.set(value);\r\n\r\n if (!this.activeSection()) {\r\n this.activeSection.set(value[0].id);\r\n }\r\n }\r\n\r\n @Input()\r\n set navigationConfig(value: SectionNavigationConfig) {\r\n this.config.set(value);\r\n }\r\n\r\n readonly anchorsEl = viewChildren<ElementRef<HTMLAnchorElement>>('anchorEl');\r\n readonly sectionChange = output<SectionNavigationData>();\r\n\r\n @HostListener('window:scroll')\r\n onWindowScroll(): void {\r\n this.windowScroll();\r\n }\r\n\r\n @HostBinding('style') styleBinding = {\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n '--primary-base': this.curaApiService.theme.colors.getColor('primary-base'),\r\n };\r\n\r\n ngAfterViewInit(): void {\r\n if (isPlatformBrowser(this.platformId)) {\r\n setTimeout(() => {\r\n this.menuHeaderHeight = this.document.querySelector<HTMLElement>('header[sl-hdr]')?.offsetHeight || 0;\r\n this.defaultAnchorAdjustment.set(this.menuHeaderHeight + (this.padding() - 1));\r\n }, 200);\r\n }\r\n }\r\n\r\n private windowScroll(): void {\r\n this.selectedIndex.set(-1);\r\n\r\n this.sections()?.forEach((section, index) => {\r\n const element = document.querySelector<HTMLElement>(`#${section.id}`);\r\n if (!element) return;\r\n\r\n const elementTop = element.getBoundingClientRect().top + window.scrollY;\r\n const currentScroll = window.scrollY + this.menuHeaderHeight + this.padding();\r\n if (currentScroll >= elementTop) {\r\n this.selectedIndex.set(index);\r\n if (this.sections()?.[this.selectedIndex()]) {\r\n this.activeSection.set(this.sections()?.[this.selectedIndex()]?.id);\r\n }\r\n }\r\n });\r\n }\r\n\r\n getBasePath(): string {\r\n const base = this.location.prepareExternalUrl('');\r\n const normalized = base.replace(/\\/$/, '');\r\n\r\n return normalized === '' || normalized === '/' ? '' : normalized;\r\n }\r\n\r\n getPath(sectionId: string): string {\r\n return `${this.getBasePath()}${this.router.url}#${sectionId}`;\r\n }\r\n\r\n onSectionClick(event: SectionNavigationData) {\r\n this.sectionChange.emit(event);\r\n }\r\n}\r\n","<nav class=\"rdsite-sidebar-navigation\" [class.starTheme]=\"isStarTheme()\" [attr.aria-label]=\"ariaLabel()\" [style.top.px]=\"config()?.offsetTop || 0\">\r\n <cura-card\r\n class=\"only-mobile\"\r\n [type]=\"isStarTheme() ? 'transparent' : 'solid'\"\r\n [hasPadding]=\"isStarTheme() ? false : true\"\r\n marginBlock=\"8px\"\r\n [hasShadow]=\"false\"\r\n type=\"solid\"\r\n colorMode=\"light\"\r\n target=\"_self\"\r\n >\r\n @if (title()) {\r\n <cura-paragraph size=\"small\" color=\"neutral-black\" marginBlock=\"8px\">\r\n <b>{{ title() }}</b>\r\n </cura-paragraph>\r\n }\r\n <ul role=\"menubar\">\r\n @for (section of sections(); track section.id) {\r\n <li role=\"none\">\r\n <cura-paragraph size=\"xsmall\" marginBlock=\"8px\" [color]=\"activeSection() === section.id ? 'neutral-black' : 'primary-base'\">\r\n <a\r\n #anchorEl\r\n id=\"anchor-{{ section.id }}\"\r\n class=\"rdsite-sidebar-link\"\r\n role=\"menuitem\"\r\n [href]=\"getPath(section.id)\"\r\n (click)=\"onSectionClick({ id: section.id, title: section.title })\"\r\n rdsitelink\r\n [anchorAdjustment]=\"anchorAdjustment() || defaultAnchorAdjustment()\"\r\n [attr.aria-current]=\"activeSection() === section.id ? 'page' : null\"\r\n [attr.aria-label]=\"'Navegar para ' + section.title\"\r\n >\r\n <b>\r\n {{ section.title }}\r\n </b>\r\n </a>\r\n </cura-paragraph>\r\n </li>\r\n }\r\n </ul>\r\n </cura-card>\r\n</nav>\r\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-sidebar-navigation.mjs","sources":["../../../projects/site-front-end-lib/components/sidebar-navigation/sidebar-navigation.component.ts","../../../projects/site-front-end-lib/components/sidebar-navigation/sidebar-navigation.component.html","../../../projects/site-front-end-lib/components/sidebar-navigation/rededor-site-front-end-lib-components-sidebar-navigation.ts"],"sourcesContent":["import {\r\n Component,\r\n ElementRef,\r\n Input,\r\n signal,\r\n HostListener,\r\n HostBinding,\r\n inject,\r\n input,\r\n output,\r\n viewChildren,\r\n DOCUMENT,\r\n PLATFORM_ID,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { RdsiteLinkDirective, SectionNavigationConfig, SectionNavigationData } from '@rededor/site-front-end-lib/core';\r\nimport { CuraCardComponent } from '@rededor/cura-angular/cards/cura-card';\r\nimport { CuraParagraphComponent } from '@rededor/cura-angular/texts/cura-paragraph';\r\nimport { CuraApiService } from '@rededor/cura-angular/api';\r\nimport { Router } from '@angular/router';\r\nimport { isPlatformBrowser, Location } from '@angular/common';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'nav[rdsite-sidebar-navigation]',\r\n imports: [RdsiteLinkDirective, CuraCardComponent, CuraParagraphComponent],\r\n templateUrl: './sidebar-navigation.component.html',\r\n styleUrl: './sidebar-navigation.component.scss',\r\n})\r\nexport class SidebarNavigationComponent implements AfterViewInit {\r\n private readonly curaApiService = inject(CuraApiService);\r\n private router = inject(Router);\r\n private location = inject(Location);\r\n private platformId = inject(PLATFORM_ID);\r\n private document = inject<Document>(DOCUMENT);\r\n\r\n readonly sections = signal<SectionNavigationData[]>([]);\r\n readonly config = signal<SectionNavigationConfig | undefined>(undefined);\r\n readonly activeSection = signal<string>('');\r\n public selectedIndex = signal<number>(0);\r\n public defaultAnchorAdjustment = signal(0);\r\n readonly isStarTheme = input(false);\r\n\r\n private menuHeaderHeight = 0;\r\n\r\n readonly anchorAdjustment = input(0);\r\n readonly title = input('Nesta página');\r\n readonly ariaLabel = input('Navegação da página');\r\n readonly padding = input(-50);\r\n\r\n @Input({ required: true })\r\n set navigationSections(value: SectionNavigationData[]) {\r\n if (!value?.length) {\r\n throw new Error('O SectionNavigationComponent requer pelo menos uma seção.');\r\n }\r\n this.sections.set(value);\r\n\r\n if (!this.activeSection()) {\r\n this.activeSection.set(value[0].id);\r\n }\r\n }\r\n\r\n @Input()\r\n set navigationConfig(value: SectionNavigationConfig) {\r\n this.config.set(value);\r\n }\r\n\r\n readonly anchorsEl = viewChildren<ElementRef<HTMLAnchorElement>>('anchorEl');\r\n readonly sectionChange = output<SectionNavigationData>();\r\n\r\n @HostListener('window:scroll')\r\n onWindowScroll(): void {\r\n this.windowScroll();\r\n }\r\n\r\n @HostBinding('style') styleBinding = {\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n '--primary-base': this.curaApiService.theme.colors.getColor('primary-base'),\r\n };\r\n\r\n ngAfterViewInit(): void {\r\n if (isPlatformBrowser(this.platformId)) {\r\n setTimeout(() => {\r\n this.menuHeaderHeight = this.document.querySelector<HTMLElement>('header[sl-hdr]')?.offsetHeight || 0;\r\n this.defaultAnchorAdjustment.set(this.menuHeaderHeight + (this.padding() - 1));\r\n }, 200);\r\n }\r\n }\r\n\r\n private windowScroll(): void {\r\n this.selectedIndex.set(-1);\r\n\r\n this.sections()?.forEach((section, index) => {\r\n const element = document.querySelector<HTMLElement>(`#${section.id}`);\r\n if (!element) return;\r\n\r\n const elementTop = element.getBoundingClientRect().top + window.scrollY;\r\n const currentScroll = window.scrollY + this.menuHeaderHeight + this.padding();\r\n if (currentScroll >= elementTop) {\r\n this.selectedIndex.set(index);\r\n if (this.sections()?.[this.selectedIndex()]) {\r\n this.activeSection.set(this.sections()?.[this.selectedIndex()]?.id);\r\n }\r\n }\r\n });\r\n }\r\n\r\n getBasePath(): string {\r\n const base = this.location.prepareExternalUrl('');\r\n const normalized = base.replace(/\\/$/, '');\r\n\r\n return normalized === '' || normalized === '/' ? '' : normalized;\r\n }\r\n\r\n getPath(sectionId: string): string {\r\n return `${this.getBasePath()}${this.router.url}#${sectionId}`;\r\n }\r\n\r\n onSectionClick(event: SectionNavigationData) {\r\n this.sectionChange.emit(event);\r\n }\r\n}\r\n","<nav class=\"rdsite-sidebar-navigation\" [class.starTheme]=\"isStarTheme()\" [attr.aria-label]=\"ariaLabel()\" [style.top.px]=\"config()?.offsetTop || 0\">\r\n <cura-card\r\n class=\"only-mobile\"\r\n [type]=\"isStarTheme() ? 'transparent' : 'solid'\"\r\n [hasPadding]=\"isStarTheme() ? false : true\"\r\n marginBlock=\"8px\"\r\n [hasShadow]=\"false\"\r\n type=\"solid\"\r\n colorMode=\"light\"\r\n target=\"_self\"\r\n >\r\n @if (title()) {\r\n <cura-paragraph size=\"small\" color=\"neutral-black\" marginBlock=\"8px\">\r\n <b>{{ title() }}</b>\r\n </cura-paragraph>\r\n }\r\n <ul role=\"menubar\">\r\n @for (section of sections(); track section.id) {\r\n <li role=\"none\">\r\n <cura-paragraph size=\"xsmall\" marginBlock=\"8px\" [color]=\"activeSection() === section.id ? 'neutral-black' : 'primary-base'\">\r\n <a\r\n #anchorEl\r\n id=\"anchor-{{ section.id }}\"\r\n class=\"rdsite-sidebar-link\"\r\n role=\"menuitem\"\r\n [href]=\"getPath(section.id)\"\r\n (click)=\"onSectionClick({ id: section.id, title: section.title })\"\r\n rdsitelink\r\n [anchorAdjustment]=\"anchorAdjustment() || defaultAnchorAdjustment()\"\r\n [attr.aria-current]=\"activeSection() === section.id ? 'page' : null\"\r\n [attr.aria-label]=\"'Navegar para ' + section.title\"\r\n >\r\n <b>\r\n {{ section.title }}\r\n </b>\r\n </a>\r\n </cura-paragraph>\r\n </li>\r\n }\r\n </ul>\r\n </cura-card>\r\n</nav>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { inject, PLATFORM_ID, DOCUMENT, signal, input, viewChildren, output, HostBinding, HostListener, Input, Component } from '@angular/core';
|
|
3
3
|
import { RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';
|
|
4
|
-
import { CuraApiService } from '@rededor/
|
|
5
|
-
import { CuraParagraphComponent } from '@rededor/
|
|
6
|
-
import { CuraIconComponent } from '@rededor/
|
|
4
|
+
import { CuraApiService } from '@rededor/cura-angular/api';
|
|
5
|
+
import { CuraParagraphComponent } from '@rededor/cura-angular/texts/cura-paragraph';
|
|
6
|
+
import { CuraIconComponent } from '@rededor/cura-angular/icons/cura-icon';
|
|
7
7
|
import { Router } from '@angular/router';
|
|
8
8
|
import { Location, isPlatformBrowser } from '@angular/common';
|
|
9
9
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rededor-site-front-end-lib-components-sticky-navigation.mjs","sources":["../../../projects/site-front-end-lib/components/sticky-navigation/sticky-navigation.component.ts","../../../projects/site-front-end-lib/components/sticky-navigation/sticky-navigation.component.html","../../../projects/site-front-end-lib/components/sticky-navigation/rededor-site-front-end-lib-components-sticky-navigation.ts"],"sourcesContent":["import {\r\n Component,\r\n ElementRef,\r\n Input,\r\n signal,\r\n HostListener,\r\n HostBinding,\r\n inject,\r\n input,\r\n output,\r\n viewChildren,\r\n PLATFORM_ID,\r\n DOCUMENT,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { RdsiteLinkDirective, SectionNavigationConfig, SectionNavigationData } from '@rededor/site-front-end-lib/core';\r\nimport { CuraApiService } from '@rededor/site-front-end-lib/cura/api';\r\nimport { CuraParagraphComponent } from '@rededor/site-front-end-lib/cura/texts/cura-paragraph';\r\nimport { CuraIconComponent } from '@rededor/site-front-end-lib/cura/icons/cura-icon';\r\nimport { Router } from '@angular/router';\r\nimport { isPlatformBrowser, Location } from '@angular/common';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'nav[rdsite-sticky-navigation]',\r\n imports: [RdsiteLinkDirective, CuraParagraphComponent, CuraIconComponent],\r\n templateUrl: './sticky-navigation.component.html',\r\n styleUrl: './sticky-navigation.component.scss',\r\n})\r\nexport class StickyNavigationComponent implements AfterViewInit {\r\n private curaApiService = inject(CuraApiService);\r\n private router = inject(Router);\r\n private location = inject(Location);\r\n private platformId = inject(PLATFORM_ID);\r\n private document = inject<Document>(DOCUMENT);\r\n\r\n public readonly sections = signal<SectionNavigationData[]>([]);\r\n readonly config = signal<SectionNavigationConfig | undefined>(undefined);\r\n readonly activeSection = signal<string>('');\r\n readonly isOpen = signal<boolean>(false);\r\n public selectedIndex = signal<number>(0);\r\n public defaultAnchorAdjustment = signal(0);\r\n\r\n private menuHeaderHeight = 0;\r\n private menuStickyClosedHeight = 0;\r\n\r\n readonly anchorAdjustment = input(0);\r\n readonly title = input('Nesta página');\r\n readonly ariaLabel = input('Navegação da página');\r\n readonly padding = input(20);\r\n\r\n @Input({ required: true })\r\n set navigationSections(value: SectionNavigationData[]) {\r\n if (!value?.length) {\r\n throw new Error('O SectionNavigationComponent requer pelo menos uma seção.');\r\n }\r\n this.sections.set(value);\r\n\r\n if (!this.activeSection()) {\r\n this.activeSection.set(value[0].id);\r\n }\r\n }\r\n\r\n @Input()\r\n set navigationConfig(value: SectionNavigationConfig) {\r\n this.config.set(value);\r\n }\r\n\r\n readonly anchorsEl = viewChildren<ElementRef<HTMLAnchorElement>>('anchorEl');\r\n readonly sectionChange = output<SectionNavigationData>();\r\n\r\n @HostListener('window:scroll')\r\n onWindowScroll(): void {\r\n this.windowScroll();\r\n }\r\n\r\n @HostBinding('style') styleBinding = {\r\n '--neutral-purewhite': this.curaApiService.theme.colors.getColor('neutral-purewhite'),\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n };\r\n\r\n ngAfterViewInit(): void {\r\n if (isPlatformBrowser(this.platformId)) {\r\n setTimeout(() => {\r\n this.menuHeaderHeight = this.document.querySelector<HTMLElement>('header[sl-hdr]')?.offsetHeight || 0;\r\n this.menuStickyClosedHeight = this.document.querySelector<HTMLElement>('nav[rdsite-sticky-navigation]')?.offsetHeight || 0;\r\n }, 200);\r\n }\r\n }\r\n\r\n private windowScroll(): void {\r\n this.sections()?.forEach((section, index) => {\r\n const element = this.document.querySelector<HTMLElement>(`#${section.id}`);\r\n if (!element) return;\r\n\r\n const elementTop = element.getBoundingClientRect().top + window.scrollY;\r\n const currentScroll = window.scrollY + this.menuHeaderHeight + this.menuStickyClosedHeight + this.padding();\r\n\r\n if (currentScroll >= elementTop) {\r\n this.selectedIndex.set(index);\r\n if (this.sections()?.[this.selectedIndex()]) {\r\n this.activeSection.set(this.sections()?.[this.selectedIndex()]?.id);\r\n }\r\n }\r\n });\r\n }\r\n\r\n getBasePath(): string {\r\n const base = this.location.prepareExternalUrl('');\r\n const normalized = base.replace(/\\/$/, '');\r\n\r\n return normalized === '' || normalized === '/' ? '' : normalized;\r\n }\r\n\r\n getPath(sectionId: string): string {\r\n return `${this.getBasePath()}${this.router.url}#${sectionId}`;\r\n }\r\n\r\n onSectionClick(event: SectionNavigationData) {\r\n this.sectionChange.emit(event);\r\n this.isOpen.update((value) => !value);\r\n }\r\n\r\n toggleOpen(): void {\r\n this.isOpen.update((value) => !value);\r\n if (isPlatformBrowser(this.platformId) && this.isOpen() && !this.anchorAdjustment()) {\r\n setTimeout(() => {\r\n // Utilizo o timeout para pegar a altura do elemento depois dele aberto\r\n const menuStickyOpenedHeight = this.document.querySelector<HTMLElement>('nav[rdsite-sticky-navigation]')?.offsetHeight || 0;\r\n this.defaultAnchorAdjustment.set(menuStickyOpenedHeight + this.menuHeaderHeight);\r\n }, 100);\r\n }\r\n }\r\n}\r\n","<nav class=\"rdsite-sticky-navigation\" [attr.aria-label]=\"ariaLabel()\" [style.top.px]=\"config()?.offsetTop || 0\">\r\n @if (title()) {\r\n <div class=\"title-bar\" (click)=\"toggleOpen()\" [attr.aria-expanded]=\"isOpen()\" role=\"button\" tabindex=\"0\" (keydown.enter)=\"toggleOpen()\">\r\n <cura-paragraph size=\"small\" [color]=\"isOpen() ? 'neutraldark' : 'primary-base'\" marginBlock=\"8px\">\r\n <b>{{ title() }}</b>\r\n </cura-paragraph>\r\n <cura-icon [name]=\"isOpen() ? 'up' : 'down'\" size=\"16\" [color]=\"isOpen() ? 'neutraldark' : 'primary-base'\"></cura-icon>\r\n </div>\r\n @if (sections().length && !isOpen()) {\r\n <cura-paragraph size=\"xsmall\" marginBlock=\"8px\" color=\"neutral-black\">\r\n <b>{{ sections()[selectedIndex()].title }}</b>\r\n </cura-paragraph>\r\n }\r\n }\r\n\r\n @if (isOpen()) {\r\n <ul class=\"menu\" [class.open]=\"isOpen()\" role=\"menubar\">\r\n @for (section of sections(); track section.id) {\r\n <li role=\"none\">\r\n <cura-paragraph size=\"xsmall\" marginBlock=\"8px\" [color]=\"activeSection() === section.id ? 'neutral-black' : 'primary-base'\">\r\n <a\r\n id=\"anchor-mobile-{{ section.id }}\"\r\n class=\"rdsite-sticky-link\"\r\n role=\"menuitem\"\r\n [href]=\"getPath(section.id)\"\r\n rdsitelink\r\n (click)=\"onSectionClick({ id: section.id, title: section.title })\"\r\n [anchorAdjustment]=\"anchorAdjustment() || defaultAnchorAdjustment()\"\r\n [attr.aria-current]=\"activeSection() === section.id ? 'page' : null\"\r\n [attr.aria-label]=\"'Navegar para ' + section.title\"\r\n >\r\n <b>{{ section.title }}</b>\r\n </a>\r\n </cura-paragraph>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n</nav>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;MA6Ba,yBAAyB,CAAA;AAPtC,IAAA,WAAA,GAAA;AAQU,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;AACvC,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACvB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC3B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;AAChC,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAW,QAAQ,CAAC;AAE7B,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAA0B,EAAE,oDAAC;AACrD,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAsC,SAAS,kDAAC;AAC/D,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAS,EAAE,yDAAC;AAClC,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAU,KAAK,kDAAC;AACjC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAS,CAAC,yDAAC;AACjC,QAAA,IAAA,CAAA,uBAAuB,GAAG,MAAM,CAAC,CAAC,mEAAC;QAElC,IAAA,CAAA,gBAAgB,GAAG,CAAC;QACpB,IAAA,CAAA,sBAAsB,GAAG,CAAC;AAEzB,QAAA,IAAA,CAAA,gBAAgB,GAAG,KAAK,CAAC,CAAC,4DAAC;AAC3B,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,cAAc,iDAAC;AAC7B,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAC,qBAAqB,qDAAC;AACxC,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAAC,EAAE,mDAAC;AAmBnB,QAAA,IAAA,CAAA,SAAS,GAAG,YAAY,CAAgC,UAAU,qDAAC;QACnE,IAAA,CAAA,aAAa,GAAG,MAAM,EAAyB;AAOlC,QAAA,IAAA,CAAA,YAAY,GAAG;AACnC,YAAA,qBAAqB,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC;AACrF,YAAA,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;SAC/D;AAsDF,IAAA;IAlFC,IACI,kBAAkB,CAAC,KAA8B,EAAA;AACnD,QAAA,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE;AAClB,YAAA,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC;QAC9E;AACA,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;AAExB,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE;AACzB,YAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC;IACF;IAEA,IACI,gBAAgB,CAAC,KAA8B,EAAA;AACjD,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;IACxB;IAMA,cAAc,GAAA;QACZ,IAAI,CAAC,YAAY,EAAE;IACrB;IAOA,eAAe,GAAA;AACb,QAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACtC,UAAU,CAAC,MAAK;AACd,gBAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAc,gBAAgB,CAAC,EAAE,YAAY,IAAI,CAAC;AACrG,gBAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAc,+BAA+B,CAAC,EAAE,YAAY,IAAI,CAAC;YAC5H,CAAC,EAAE,GAAG,CAAC;QACT;IACF;IAEQ,YAAY,GAAA;QAClB,IAAI,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,KAAI;AAC1C,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAc,CAAA,CAAA,EAAI,OAAO,CAAC,EAAE,CAAA,CAAE,CAAC;AAC1E,YAAA,IAAI,CAAC,OAAO;gBAAE;AAEd,YAAA,MAAM,UAAU,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO;AACvE,YAAA,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,OAAO,EAAE;AAE3G,YAAA,IAAI,aAAa,IAAI,UAAU,EAAE;AAC/B,gBAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;AAC7B,gBAAA,IAAI,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE;AAC3C,oBAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrE;YACF;AACF,QAAA,CAAC,CAAC;IACJ;IAEA,WAAW,GAAA;QACT,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACjD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;AAE1C,QAAA,OAAO,UAAU,KAAK,EAAE,IAAI,UAAU,KAAK,GAAG,GAAG,EAAE,GAAG,UAAU;IAClE;AAEA,IAAA,OAAO,CAAC,SAAiB,EAAA;AACvB,QAAA,OAAO,CAAA,EAAG,IAAI,CAAC,WAAW,EAAE,CAAA,EAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAA,CAAA,EAAI,SAAS,EAAE;IAC/D;AAEA,IAAA,cAAc,CAAC,KAA4B,EAAA;AACzC,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;AAC9B,QAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC;IACvC;IAEA,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC;AACrC,QAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE;YACnF,UAAU,CAAC,MAAK;;AAEd,gBAAA,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAc,+BAA+B,CAAC,EAAE,YAAY,IAAI,CAAC;gBAC3H,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,CAAC;YAClF,CAAC,EAAE,GAAG,CAAC;QACT;IACF;+GAvGW,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,orCC7BtC,83DAuCA,EAAA,MAAA,EAAA,CAAA,koBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDdY,mBAAmB,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,uBAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,sBAAsB,gJAAE,iBAAiB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,MAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAI7D,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAPrC,SAAS;AAEE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,+BAA+B,WAChC,CAAC,mBAAmB,EAAE,sBAAsB,EAAE,iBAAiB,CAAC,EAAA,QAAA,EAAA,83DAAA,EAAA,MAAA,EAAA,CAAA,koBAAA,CAAA,EAAA;;sBA0BxE,KAAK;uBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;;sBAYxB;4DAKgE,UAAU,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,eAAA,CAAA,EAAA,CAAA,EAAA,cAAA,EAAA,CAAA;sBAG1E,YAAY;uBAAC,eAAe;;sBAK5B,WAAW;uBAAC,OAAO;;;AE5EtB;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"rededor-site-front-end-lib-components-sticky-navigation.mjs","sources":["../../../projects/site-front-end-lib/components/sticky-navigation/sticky-navigation.component.ts","../../../projects/site-front-end-lib/components/sticky-navigation/sticky-navigation.component.html","../../../projects/site-front-end-lib/components/sticky-navigation/rededor-site-front-end-lib-components-sticky-navigation.ts"],"sourcesContent":["import {\r\n Component,\r\n ElementRef,\r\n Input,\r\n signal,\r\n HostListener,\r\n HostBinding,\r\n inject,\r\n input,\r\n output,\r\n viewChildren,\r\n PLATFORM_ID,\r\n DOCUMENT,\r\n AfterViewInit,\r\n} from '@angular/core';\r\nimport { RdsiteLinkDirective, SectionNavigationConfig, SectionNavigationData } from '@rededor/site-front-end-lib/core';\r\nimport { CuraApiService } from '@rededor/cura-angular/api';\r\nimport { CuraParagraphComponent } from '@rededor/cura-angular/texts/cura-paragraph';\r\nimport { CuraIconComponent } from '@rededor/cura-angular/icons/cura-icon';\r\nimport { Router } from '@angular/router';\r\nimport { isPlatformBrowser, Location } from '@angular/common';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'nav[rdsite-sticky-navigation]',\r\n imports: [RdsiteLinkDirective, CuraParagraphComponent, CuraIconComponent],\r\n templateUrl: './sticky-navigation.component.html',\r\n styleUrl: './sticky-navigation.component.scss',\r\n})\r\nexport class StickyNavigationComponent implements AfterViewInit {\r\n private curaApiService = inject(CuraApiService);\r\n private router = inject(Router);\r\n private location = inject(Location);\r\n private platformId = inject(PLATFORM_ID);\r\n private document = inject<Document>(DOCUMENT);\r\n\r\n public readonly sections = signal<SectionNavigationData[]>([]);\r\n readonly config = signal<SectionNavigationConfig | undefined>(undefined);\r\n readonly activeSection = signal<string>('');\r\n readonly isOpen = signal<boolean>(false);\r\n public selectedIndex = signal<number>(0);\r\n public defaultAnchorAdjustment = signal(0);\r\n\r\n private menuHeaderHeight = 0;\r\n private menuStickyClosedHeight = 0;\r\n\r\n readonly anchorAdjustment = input(0);\r\n readonly title = input('Nesta página');\r\n readonly ariaLabel = input('Navegação da página');\r\n readonly padding = input(20);\r\n\r\n @Input({ required: true })\r\n set navigationSections(value: SectionNavigationData[]) {\r\n if (!value?.length) {\r\n throw new Error('O SectionNavigationComponent requer pelo menos uma seção.');\r\n }\r\n this.sections.set(value);\r\n\r\n if (!this.activeSection()) {\r\n this.activeSection.set(value[0].id);\r\n }\r\n }\r\n\r\n @Input()\r\n set navigationConfig(value: SectionNavigationConfig) {\r\n this.config.set(value);\r\n }\r\n\r\n readonly anchorsEl = viewChildren<ElementRef<HTMLAnchorElement>>('anchorEl');\r\n readonly sectionChange = output<SectionNavigationData>();\r\n\r\n @HostListener('window:scroll')\r\n onWindowScroll(): void {\r\n this.windowScroll();\r\n }\r\n\r\n @HostBinding('style') styleBinding = {\r\n '--neutral-purewhite': this.curaApiService.theme.colors.getColor('neutral-purewhite'),\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n };\r\n\r\n ngAfterViewInit(): void {\r\n if (isPlatformBrowser(this.platformId)) {\r\n setTimeout(() => {\r\n this.menuHeaderHeight = this.document.querySelector<HTMLElement>('header[sl-hdr]')?.offsetHeight || 0;\r\n this.menuStickyClosedHeight = this.document.querySelector<HTMLElement>('nav[rdsite-sticky-navigation]')?.offsetHeight || 0;\r\n }, 200);\r\n }\r\n }\r\n\r\n private windowScroll(): void {\r\n this.sections()?.forEach((section, index) => {\r\n const element = this.document.querySelector<HTMLElement>(`#${section.id}`);\r\n if (!element) return;\r\n\r\n const elementTop = element.getBoundingClientRect().top + window.scrollY;\r\n const currentScroll = window.scrollY + this.menuHeaderHeight + this.menuStickyClosedHeight + this.padding();\r\n\r\n if (currentScroll >= elementTop) {\r\n this.selectedIndex.set(index);\r\n if (this.sections()?.[this.selectedIndex()]) {\r\n this.activeSection.set(this.sections()?.[this.selectedIndex()]?.id);\r\n }\r\n }\r\n });\r\n }\r\n\r\n getBasePath(): string {\r\n const base = this.location.prepareExternalUrl('');\r\n const normalized = base.replace(/\\/$/, '');\r\n\r\n return normalized === '' || normalized === '/' ? '' : normalized;\r\n }\r\n\r\n getPath(sectionId: string): string {\r\n return `${this.getBasePath()}${this.router.url}#${sectionId}`;\r\n }\r\n\r\n onSectionClick(event: SectionNavigationData) {\r\n this.sectionChange.emit(event);\r\n this.isOpen.update((value) => !value);\r\n }\r\n\r\n toggleOpen(): void {\r\n this.isOpen.update((value) => !value);\r\n if (isPlatformBrowser(this.platformId) && this.isOpen() && !this.anchorAdjustment()) {\r\n setTimeout(() => {\r\n // Utilizo o timeout para pegar a altura do elemento depois dele aberto\r\n const menuStickyOpenedHeight = this.document.querySelector<HTMLElement>('nav[rdsite-sticky-navigation]')?.offsetHeight || 0;\r\n this.defaultAnchorAdjustment.set(menuStickyOpenedHeight + this.menuHeaderHeight);\r\n }, 100);\r\n }\r\n }\r\n}\r\n","<nav class=\"rdsite-sticky-navigation\" [attr.aria-label]=\"ariaLabel()\" [style.top.px]=\"config()?.offsetTop || 0\">\r\n @if (title()) {\r\n <div class=\"title-bar\" (click)=\"toggleOpen()\" [attr.aria-expanded]=\"isOpen()\" role=\"button\" tabindex=\"0\" (keydown.enter)=\"toggleOpen()\">\r\n <cura-paragraph size=\"small\" [color]=\"isOpen() ? 'neutraldark' : 'primary-base'\" marginBlock=\"8px\">\r\n <b>{{ title() }}</b>\r\n </cura-paragraph>\r\n <cura-icon [name]=\"isOpen() ? 'up' : 'down'\" size=\"16\" [color]=\"isOpen() ? 'neutraldark' : 'primary-base'\"></cura-icon>\r\n </div>\r\n @if (sections().length && !isOpen()) {\r\n <cura-paragraph size=\"xsmall\" marginBlock=\"8px\" color=\"neutral-black\">\r\n <b>{{ sections()[selectedIndex()].title }}</b>\r\n </cura-paragraph>\r\n }\r\n }\r\n\r\n @if (isOpen()) {\r\n <ul class=\"menu\" [class.open]=\"isOpen()\" role=\"menubar\">\r\n @for (section of sections(); track section.id) {\r\n <li role=\"none\">\r\n <cura-paragraph size=\"xsmall\" marginBlock=\"8px\" [color]=\"activeSection() === section.id ? 'neutral-black' : 'primary-base'\">\r\n <a\r\n id=\"anchor-mobile-{{ section.id }}\"\r\n class=\"rdsite-sticky-link\"\r\n role=\"menuitem\"\r\n [href]=\"getPath(section.id)\"\r\n rdsitelink\r\n (click)=\"onSectionClick({ id: section.id, title: section.title })\"\r\n [anchorAdjustment]=\"anchorAdjustment() || defaultAnchorAdjustment()\"\r\n [attr.aria-current]=\"activeSection() === section.id ? 'page' : null\"\r\n [attr.aria-label]=\"'Navegar para ' + section.title\"\r\n >\r\n <b>{{ section.title }}</b>\r\n </a>\r\n </cura-paragraph>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n</nav>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,8 @@ import { inject, input, output, HostBinding, Component } from '@angular/core';
|
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import { RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';
|
|
6
|
-
import { CuraApiService } from '@rededor/
|
|
7
|
-
import { CuraIconComponent } from '@rededor/
|
|
6
|
+
import { CuraApiService } from '@rededor/cura-angular/api';
|
|
7
|
+
import { CuraIconComponent } from '@rededor/cura-angular/icons/cura-icon';
|
|
8
8
|
|
|
9
9
|
class WhatsappComponent {
|
|
10
10
|
constructor() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rededor-site-front-end-lib-components-whatsapp.mjs","sources":["../../../projects/site-front-end-lib/components/whatsapp/whatsapp.component.ts","../../../projects/site-front-end-lib/components/whatsapp/whatsapp.component.html","../../../projects/site-front-end-lib/components/whatsapp/rededor-site-front-end-lib-components-whatsapp.ts"],"sourcesContent":["import { Component, HostBinding, input, output, inject } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';\r\nimport { CuraApiService } from '@rededor/
|
|
1
|
+
{"version":3,"file":"rededor-site-front-end-lib-components-whatsapp.mjs","sources":["../../../projects/site-front-end-lib/components/whatsapp/whatsapp.component.ts","../../../projects/site-front-end-lib/components/whatsapp/whatsapp.component.html","../../../projects/site-front-end-lib/components/whatsapp/rededor-site-front-end-lib-components-whatsapp.ts"],"sourcesContent":["import { Component, HostBinding, input, output, inject } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RdsiteLinkDirective } from '@rededor/site-front-end-lib/core';\r\nimport { CuraApiService } from '@rededor/cura-angular/api';\r\nimport { CuraIconComponent } from '@rededor/cura-angular/icons/cura-icon';\r\n\r\n@Component({\r\n selector: 'rdsite-whatsapp',\r\n imports: [CommonModule, RdsiteLinkDirective, CuraIconComponent],\r\n templateUrl: './whatsapp.component.html',\r\n styleUrl: './whatsapp.component.scss',\r\n})\r\nexport class WhatsappComponent {\r\n private curaApiService = inject(CuraApiService);\r\n\r\n readonly link = input<string>('');\r\n readonly imgUrl = input<string>('');\r\n readonly text = input<string>('Agende por Whatsapp');\r\n readonly bgColor = input<string>('#1DCD52');\r\n readonly bgHover = input<string>('#016720');\r\n readonly borderTop = input<boolean>(false);\r\n\r\n readonly whatsappClick = output<Event>();\r\n\r\n active: boolean = false;\r\n\r\n @HostBinding('style') style = {\r\n '--font-family': this.curaApiService.theme.fonts.getFamily(''),\r\n '--border-top-color': this.curaApiService.theme.colors.getColor('primary-light'),\r\n '--bg-color': this.curaApiService.theme.colors.getColor('primary-darker'),\r\n '--bg-button': this.bgColor(),\r\n '--bg-button-hover': this.bgHover(),\r\n '--color-button': this.curaApiService.theme.colors.getColor('neutral-black'),\r\n '--color-button-hover': this.curaApiService.theme.colors.getColor('neutral-white'),\r\n };\r\n\r\n whatsappClicked(event: Event) {\r\n this.whatsappClick.emit(event);\r\n }\r\n}\r\n","@if (link()) {\r\n <a\r\n class=\"rdsite-whatsapp\"\r\n [ngClass]=\"{ 'border-top': borderTop() }\"\r\n [href]=\"link()\"\r\n rdsitelink\r\n (mouseenter)=\"active = true\"\r\n (mouseleave)=\"active = false\"\r\n (click)=\"whatsappClicked($event)\"\r\n >\r\n @if (imgUrl()) {\r\n <div class=\"image\" [ngStyle]=\"{ 'background-image': imgUrl() }\"></div>\r\n }\r\n <div class=\"icon\" [ngClass]=\"{ active: active }\">\r\n <cura-icon name=\"whatsapp\" size=\"16\" color=\"neutral-purewhite\"></cura-icon>\r\n </div>\r\n\r\n <div class=\"rdsite-whatsapp-animation\" [ngClass]=\"{ active: active }\">\r\n <cura-icon name=\"whatsapp\" size=\"16\" color=\"neutral-purewhite\"></cura-icon>\r\n <span>{{ text() }}</span>\r\n </div>\r\n </a>\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -141,6 +141,7 @@ var RdsiteModalComponentStyle;
|
|
|
141
141
|
RdsiteModalComponentStyle["FILTER"] = "filter";
|
|
142
142
|
RdsiteModalComponentStyle["FILTERDOENCAS"] = "filter-doencas";
|
|
143
143
|
RdsiteModalComponentStyle["PHOTOGALLERY"] = "photo-gallery";
|
|
144
|
+
RdsiteModalComponentStyle["COMBOEXAMS"] = "combo-exams";
|
|
144
145
|
})(RdsiteModalComponentStyle || (RdsiteModalComponentStyle = {}));
|
|
145
146
|
|
|
146
147
|
const formatPhone = (phone) => {
|